Psion 3a VT52/VT100 Terminal Emulator TermIt v1.1 User Guide Copyright Serge Shestopalov 1995 TermIt is a communication program that supports the DEC VT52 and VT100 escape sequences. It works on the Series 3a only. This product is Shareware. If you find this product useful, please register it. Registration will remove the Nag screen and sound, remove limited file size for XYmodem transmit/receive (5k), add other extension, and provide the latest version. Registration ============= To Register send a cash or check for UKP 15.00 (or USD 25.00) to ---- Serge Shestopalov Balvu 15-56 Riga, LV-1003 LATVIA EUROPE Or register on Compusrve under SWREG Number XXXX for $25 (In future, please lets me know, if it is interesting for you) After that, I will send to you your REGISTERATION CODE via e-mail (or post mail). Please send me e-mail message for faster reply. For contact =========== e-mail: dustman@stoat.riga.lv compuserve: 100526,1317 mail: Serge Shestopalov Balvu 15-56 Riga, LV-1003 LATVIA, EUROPE To Install ========== 0. If you have prvious TermIt version, remove old files, exclude "Termit.reg". 1. Create directory TERMIT under APP directory on any drive (M:,A:,B:) 2. Copy file TERMIT.APP into the \APP\TERMIT directory 4. From the system screen menu, select Apps/Install (Psion + I), press Tab key, change directory to \APP\TERMIT and select TERMIT.APP file. Files included with this release =============================== TERMIT.APP The main module TERMIT.TXT This file Character translation tables for any languages available by request. Extension for registered users =============================== Registered version have next extensions: - unlimited file size X- and Y-Modem file transfer - "Bring in" function - 4-channel communication port support - external driver support (for 3Fax modem) - clock or online timer on status line - translation table option - vt100 keypad emulation - simple script language Technical details ================= TermIt provides an 80 column and 24 line full screen emulation of the DEC VT52 and VT100 terminal. TermIt support all of the DEC VT100 futures, including: - highlighting - underline - inverse video - autowrap mode - forward and reverse scrolling - full cursor movement - line and block erase - VT102 insert/remove character extension - VT102 insert/remove line extension - ANSI insert character - clear screen and reset terminal - normal and special graphics character set - ANSI/VT52 mode - tab settings - Delete and Enter key mapping - VT100 keypad emulation - full serial port and handshake configuration - full modem configuration - xmodem and ymodem file transfer protocols - saving current configuration on exit - 3 level screen zooming - "Bring in" text data from other application - support external device driver for 3FAX modem - all input/output character translation - dialing directory with up to 6 phone numbers - device status report, device attribute, terminal parameters reports - simple script language TermIt support VT-52 commands sequences standalone, and as part of VT-100 futures. Menu description ================= File Transmit (Psion + T) Send a file using the selected protocol. The unregistered version can send file < 5 Kbytes only. Receive (Psion + R) Receive a file using the selected protocol. The unregistered version can receive file < 5 Kbytes only. Capture (Psion + C) Start capturing incoming data to a file selected from file selection dialogue. If you select existing file, it will be overwrite. When logging is on, on status line is word "Capt" and this menu is changes to "Capture off". Run/Stop Script (Psion + F) Start/Stop script file. While script is running, "Scrt" word is on status line. Edit Bring in (Psion + B) Brings onto TermIt screen text which has previously been highlighted in another application. For registered users only. This function can bring in up to 128 character only now. Connect Dial (Psion + D) You can choice dialing method from Menu Extras/Set preferences/Dial mode. Two mode available: - Direct you just enter phone number - Directory you select phone number from list. This list you can edit from Menu/Connect/Edit dial. Modem dial commands consist of: Dial prefix + Phone Number + Dial suffix Last entered phone number in Direct mode will be saved as first phone number in list. Edit dial (Psion + Shift + D) You can enter and save up to 6 phone numbers and use it for dialing in Directory dialing mode. You can choice this dialing method from Menu/Extras/Set preferences/Dial mode. HangUp (Psion + H) Hang Up modem using Settings/Modem/HangUp string. Initialize (Psion + I) Initialize modem using Settings/Modem/Initialize string. Settings Port (Psion + P) Sets the serial port options: Baud rate 50 ... 19200 Data bits 5 ... 8 Stop bits 1,2 Parity None,Event,Odd Ignore parity no / yes Channel TTY:A, TTY:B, TTY:C, TTY:D a550 driver Disable / Enable disable/enable to load device driver for using with 3Fax modem. For registered users only. The unregistered users can use channel "tty:A" only. Port settings will be display on status line. Modem (Psion + M) Sets the modem commands string: Init string determine string which will be send to modem for modem initializing. Hang Up determine string which will be send to modem for modem Hang Up. If you add "*" character in end of this string, TermIt reset comm port after Hang Up. Dial prefix determine string which will be send to modem before dialing phone number. Dial suffix determine string which will be send to modem after dialing phone number. Handshake (Psion + K) Sets the serial port handshakes: Xon/Xoff RTS/CTS DTR/DSR Terminal (Psion + N) Sets the terminal emulation options: Term Type TTY / VT52 / VT100 sets terminal type. VT100 are ANSI compatible. Local echo off / on on/off local echo function. Word wrap off / on determine cursor action after reaching the right screen edge. Incoming CR / + / determine cursor action of incoming code Incoming LF / + / determine cursor action of incoming code Destruct BS off / on determine cursor action of incoming code: BackSpace or Delete. Comm buffer (bytes) 16...254 determine incoming bufer length. You can select buffer length for faster communication. Default value is 80. Translate (Psion + A) Sets the translating for transmitted character: Enter Key / / determine which code is transmitted when the Enter key is pressed. BackSpace / determine which code are transmitted when the Delete key is pressed. Translation table off / on If you use this option, you can translate any incoming and outgoing character, using translation table. Translation table is just a file, with 256+256 character code. This option is brilliant for user, who use national code table, i.e. Scandinavian and Russian KOI-8. Now available: - for Finland language - Finish.tbl - for Russian KOI-8 - Koi8rus.tbl - for Russian ALT code - Alt_rus.tbl Any other are welcome! Table name .tbl Select file with translation table. This file extension is ".TBL". Protocol (Psion + O) Select the file transmit/receive protocol: ASCII XModem CRC XModem CRC (1k) XModem Checksum YModem YModem (1k) YModem-G YModem-G (1k) Selected protocol will be displayed on status line. Sets the default directory for file transmit: Tx dir Name Sets the default directory for file recieve: Rx dir Name Screen (Psion + S) Sets screen and cursor attributes: Cursor flashing off / on Cursor style Line / Block Bold text Enable / Disable Save Settings (Psion + Shift + S) Save current TermIt settings into selected .INI file. This file will be visible under TermIt application on System screen, and can be selected and loaded. Extras Set preferences (Psion + Q) Sets TermIt preferences: Auto Dial off / on If set to on, TermIt will dialing first saved phone number after starting. Dial mode Direct / Directory Sets dialing method. If you select Manual, you can use (and edit directly) one phone number only. If you select Directory, you can use (not edit) up to 6 predefined phone numbers. Bell off / on On/off terminal bell (after incoming char 007) PostOp Sound off / on On/off sound after long time operation (transmit, receive...) Clock off / Time / Timer Show system time or online time in the left corner of the status line. For registered users only. Reset vt100 (Psion + Shift + E) Sets the default parameters to vt100 terminal. Clear Screen (Psion + E) Clears the screen and set cursor to the left top corner. Zoom in (Psion + Z) Zoom out (Psion + Shift + Z) Increase/decrease font and window size. 6x6, 6x8 and 8x8 size available. When using big font, on status line you can see word "Zoom" You can move window corner-to-corner, using Control + Arrow key. Visible window position will be displayed on status line. Register (Psion + Shift + R) Available for unregistered users only. Registering TermIt. If you have register code just enter it and press Enter. Thank you for registering TermIt! You have file Termit.reg in your /APP/TERMIT directory now. About TermIt (Psion + Shift + A) Show "About TermIt" window. Exit (Psion + X) Leave TermIt. Current settings will be save in current .INI file in /APP/TERMIT/ directory. VT100 keypad emulation ======================== As there is no numeric keypad on the 3a, TermIt can emulate it using main keyboard. The key turns on keypad mode for one character. TermIt allow you generate keypad key with two methods: 1. Using alpha and numeric keys Ex: for generate keypad <,> key code, press , than press key. s3a keyboard VT100 keypad +-----+-----+-----+-----+ +-----+-----+-----+-----+ | | | | | | | | | | | 1 | 2 | 3 | 4 | | pf1 | pf2 | pf3 | pf4 | | | | | | | | | | | +-----+-----+-----+-----+ +-----+-----+-----+-----+ | | | | | | | | | | | q | w | e | r | | 7 | 8 | 9 | - | | | | | | | | | | | +-----+-----+-----+-----+ +-----+-----+-----+-----+ | | | | | | | | | | | a | s | d | f | | 4 | 5 | 6 | , | | | | | | | | | | | +-----+-----+-----+-----+ +-----+-----+-----+-----+ | | | | | | | | | | | z | x | c | E | | 1 | 2 | 3 | E | | | | | n | | | | | n | +-----+-----+-----+ t | +-----+-----+-----+ t | | | | e | | | | e | | Space | . | r | | 0 | . | r | | | | | | | | | +-----------+-----+-----+ +-----------+-----+-----+ 2. Using numeric and Shift+numeric keys Ex: for generate keypad <,> key code, press , than press <"> key (Shift+2). s3a keyboard VT100 keypad +-----+-----+-----+-----+ +-----+-----+-----+-----+ | | | | | | | | | | | 1 | 2 | 3 | 4 | | pf1 | pf2 | pf3 | pf4 | | | | | | | | | | | +-----+-----+-----+-----+ +-----+-----+-----+-----+ | | | | | | | | | | | 5 | 6 | 7 | 8 | | 7 | 8 | 9 | - | | | | | | | | | | | +-----+-----+-----+-----+ +-----+-----+-----+-----+ | | | S+1 | S+2 | | | | | | | 9 | 0 | or | or | | 4 | 5 | 6 | , | | | | | <"> | | | | | | +-----+-----+-----+-----+ +-----+-----+-----+-----+ | S+3 | S+4 | S+5 | S | | | | | | | or | or | or | + | | 1 | 2 | 3 | E | | <> | <$> | <%> | 6 | | | | | n | +-----+-----+-----+ | +-----+-----+-----+ t | | | S+8 | or | | | | e | | S+7 or <&>| or | | | 0 | . | r | | | | <^> | | | | | +-----------+-----+-----+ +-----------+-----+-----+ You can cancel keypad mode by again. Also, you can generate VERTICAL BAR simbol with and . Script language ================ Script is ASCII text file, with commands for TermIt terminal emulator. You can make it, using OPL editor or Word application, but you *MUST* save file with scripl as TEXT! Script commands: WAITFOR "string" This command waiting for text "string" in incoming character sequence. When "string" will be find, next script command will be executed. SEND "string" This command send text "string" to port (modem, host...). EXIT Exit script. Any other text string in script file will be skiped. * string parameters *MUST* start and finish by <"> character. Commands haven't timeout period now. If your script can't execute, because system answer is not what you want see, just stop script (Psion + f). While script is running you can enter any commands. Script example: ! UNIX login script SEND "ATDT1234567" ! Send dialing command to modem WAITFOR "login:" ! Waiting UNIX login prompt SEND "My_name" ! Send user name WAITFOR "Password:" ! Waiting UNIX password prompt SEND "My_password" " ! Send user password EXIT ! Exit script ! END UNIX login script If after command SEND "ATDT1234567" ! Send dialing command to modem you have response BUSY (phone line is BUSY), script will be BLOCKED, because it waiting string "login:". In this case you can stop script and run it again, or directly enter command ATDT1234567 to modem from keyboard. After connecting to UNIX host, script will be continued. Support ======== TermIt have support via e-mail only. Please send me messages about any bugs in TermIt. Any comments and questions are welcome. To-do ====== Add "scroll back" function. Add "brind out" function. Add Z-Modem protocol to TermIt. Important! =========== I wrote this program using OPL. Therefore: - text output to graphics screen working slow - screen scrolling working slow too - bold text output working terrible slow as result, you can see "Overflow" error in your screen. For solving this problem you must correctly sets handshakes settings (you must use the handshaking convention used by the remote computer). The RTS/CTS working faster, but XON/XOFF work perfectly. You can disable bold text attributes, for faster text output to screen, (use Settings/Screen/Bold text Enable/Disable menu). If you have previous version... =============================== Just remove old files in /APP/TERMIT/ directory, exclude "TERMIT.REG." If you have old .INI files in /APP/TERMIT direstory, you will can see warning "field not found". History ======== 20 Oct 1995 v1.0a beta release 20 Nov 1995 v1.0e first release 22 Dec 1995 v1.1a add VT52 and VT102 futures add character translation table add special graphics character sets some cursor movement bugs fixed - tested using VT100 test by Per Lindberg, Stockholm University Computing Center 30 Dec 1995 v1.1b .INI file bug fixed add simple script language add default directory for Tx/Rx add forced Hang Up command with DTR set/reset. Thanks ======= Special thanks to: - Graham P. Tappenden. - Klaus Lichtenwalder for betatesting and for many good ideas about TermIt. - Giancarlo Barbadoro for ideas and testing. - Pekka Mannerkorpi for "Translation table" idea support, and testing. ========================================================================= The autor takes no responsibility for any loss caused as a result of using this program. ========================================================================= Serge Shestopalov 3 Jan 1996.