Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!rutgers!bellcore!faline!thumper!tr From: tr@thumper.bellcore.com (tom reingold) Newsgroups: comp.sys.ibm.pc Subject: Enclosed is MS-Kermit document (part 4 of 7) Message-ID: <896@thumper.bellcore.com> Date: 31 Dec 87 13:15:49 GMT Organization: Bellcore, Morristown, Noo Joizy Lines: 706 @@@@@@@@@@@@@@@@@@@@ Cut and concatenate here. @@@@@@@@@@@@@@@@@@@@ Specify any half-duplex line turnaround handshake character for the currently selected port. The CODE number form allows any ASCII character to be specified by its decimal ASCII code. The specified handshaking is done during file transfer only. Handshake is NONE by default; if set to other than NONE, then FLOW-CONTROL should be set to NONE. In operation the handshake character is sought at the end of each received packet, following the normal END-OF-LINE character, but is not sent for outgoing packets. SET INCOMPLETE Syntax: SET INCOMPLETE {DISCARD, KEEP} Specifies what to do with files that arrive incompletely: discard them or keep them. They are normally discarded. SET INPUT Syntax: SET INPUT {CASE, DEFAULT-TIMEOUT, ECHO, TIMEOUT-ACTION} SET INPUT controls the behavior of the script INPUT command (see the section on scripts for more information): SET INPUT CASE {IGNORE, OBSERVE} Says whether or not to distinguish upper and lower case letters when doing a matchup in the INPUT command. OBSERVE causes up- per and lower case letters to be distinguished. The default is to IGNORE case distinctions. SET INPUT DEFAULT-TIMEOUT seconds Changes the waiting time from 1 second to this new value. SET INPUT ECHO {ON, OFF}: Show on the screen characters read from the serial port during the script operation, or not. Default is ON, show them. SET INPUT TIMEOUT-ACTION {PROCEED, QUIT} Determines whether or not the current script file is to be con- tinued or exited if a timeout occurs. PROCEED is the default and means that timeouts are ignored. QUIT causes the current script file to be exited and control passed to either the next higher level script file (if there is one) or to Kermit's main prompt. SET KEY Syntax: SET KEY {[key-specifier [key-definition]], ON, OFF, CLEAR} WARNING: The format and functions of this command have changed substan- tially since version 2.29B and earlier. The changes were made in order to allow key redefinition to work on a wider variety of systems and keyboards without customization of the program source code for each configuration. See section 1.10 for further details. The SET KEY command is one of the most useful -- and confusing -- features of MS-Kermit. Typical uses: - You're used to having the ESC key in the upper left corner of the keyboard, but your new PC keyboard has an accent grave ("`") there. You can use SET KEY to make the accent key transmit an ESC, and you can assign accent grave to some other key. - You send a lot of electronic mail, and always sign it the same way. You can put your "signature" on a single key to save yourself a lot of repetitive typing. - You must set up your PC's function keys or numeric keypad to work properly with a host application. The SET KEY command does these things and more, and SHOW KEY gives us assis- tance. A key can be defined to: - send a single character other than what it would normally send, - send a string of multiple characters, - invoke a CONNECT-mode Kermit action verb, - send itself again. SET KEY specifies that when the designated key is struck during terminal emula- tion, the specified character or string is sent or the specified Kermit action verb is performed. Key definitions operate only during CONNECT, not at Kermit-MS> or DOS command level. The key-specifier is the identification of the key expressed in system-depend- ent terms. This can be a letter, such as Q for the key which emits an upper case Q, or the numeric ASCII value of the letter in backslash notation (e.g. "\81"), or else the numerical "scan code" observed by the system when the key is pressed (e.g. "\3856" for Ctrl-Alt-Q on an IBM PC). Material printed on keycaps is not necessarily a guide to what the key-specifier should be. When the word CLEAR is used in place of a key-specifier, all key definitions are cleared and then any built-in definitions are restored. A string definition is one or more characters, including 8-bit values expressed in backslash form, such as SET KEY \315 top \13 list\13 IBM F1 key sends "top list" SET KEY S L S key sends upper case L SET KEY T \27[m T key sends three bytes ESC [ m The string begins with the first non-spacing character following the key iden- tification and continues until the end of line, exclusive of any trailing spaces. If a semicolon comment is used and the definition is given in a TAKE file, the line ends at the last non-spacing character before the semicolon. Curly braces, {...}, can be use to delimit the string in case you want the definition to include trailing spaces. All text after the closing bracket is ignored. SET KEY \315 {login } this extra text is ignored This manual does not contain a list of all the scan codes for all the keys on all the keyboards on all the PCs supported by MS-Kermit -- that would be a manual in itself. Rather, in order to obtain the key-specifier for the SET KEY command, you must type a SHOW KEY command and press the desired key or key com- bination. This will report a scan code that you can use as the key specifier in a SET KEY command. To do this for many keys is a laborious process, so you should collect all your SET KEY commands into a file, which you can TAKE, or put them in your MSKERMIT.INI file. If you enter SET KEY by itself, with no key specifier, the command will prompt you to press the selected key and again for the definition string. Certain characters, like ESC and CR, may not be entered literally into the string, but can be included by inserting escape codes of the form \nnn, a backslash fol- lowed by a 1- to 4-digit number corresponding to the ASCII value of the desired character. Where an ASCII digit follows directly after a backslash number, confusion can be avoided by placing curly braces {} around the backslashed num- ber; thus, \{27}5 represents the two ASCII characters ESC 5. Here is an example of the use of SET KEY to assign ESC (ASCII 27) to the accent grave key. First the user gets the key-specifier for the key: Kermit-MS>show key Push key to be shown (? shows all): ` ASCII char: ` \96 decimal is defined as Self, no translation. Free space: 145 keys and 96 string definitions, 894 string characters. The free space report says that 145 more keys may be redefined, and up to 96 of them may have multi-character strings assigned to them (as opposed to single characters), and that there are 984 bytes left for these strings, in total. Confident that there is enough space left for a new key definition, the user proceeds: Kermit-MS>set key Push key to be defined: ` Enter new definition: \27 Once a key definition is constructed and tested, it may be entered on a single line in a command file (such as MSKERMIT.INI): set key \96 \27 To prevent accidents, SET KEY shows the current definition before asking for a new one; enter a Control-C to keep the current definition, or a carriage return to undefine the key, or a query mark (?) to see available choices. A more exact definition of SET KEY follows these construction rules: SET KEY [] where is: - a single ordinary printable ASCII character, or - the numerical equivalent of an ASCII character (ESC is \27), or - a scan code written as a backslashed number (e.g. \3856 for Ctrl-Alt-Q), or - keyword SCAN followed by a backslashed scan code number (obsolete), or - keyword CLEAR which removes all current key definitions and then restores any built-in definitions. - ? (a question mark), which displays a help message. Scan codes, non-printing ASCII characters, 8-bit characters, and other bi- nary codes are written in backslash form (see Table 1-1 for ASCII codes): \123 a decimal number (decimal is the default number base) \d789 a decimal number (also \D) \o177 an octal number (also \O) \x0d a hexadecimal number (also \X) \{b###} braces around material following the slash, where the numerical base letter b is d, o, x, or absent. is one or more spaces and or tabs. is: missing altogether which "undefines" a key. \number (a number in backslash notation between 0 and 255 decimal) - assigns a character with the corresponding 8-bit value. \Kverb for a Kermit action verb; upper or lower case K is OK. \{Kverb} Same. Verb is the name of an action verb. text a string with allowed embedded whitespace and embedded bi- nary chars as above. This kind of string may not commence with sequences \K or \{K. The string begins with the first non-whitespace character and ends at the end of the line (exclusive of trailing spaces and comments). {text} string confined to material within but excluding the braces. Note, where the number of opening braces exceeds the number of closing braces the end of line terminates the string: {ab{}{{c}d ==> ab{}{{c}d but {ab}{{c}d ==> ab ? Displays help message and lists all action verbs. Control-C Quits the Set Key command without making changes. Curly braces can be used to separate backslash numbers from regular ASCII text, such as when we want to send the two bytes ESC 8 (ESC is decimal 27): SET KEY T \{27}8 T key sends ESC 8 SET KEY L {words \{27}8 more words} trailing junk to be ignored If a string begins with a left curly brace then Kermit counts them and ends the string on the matching right curly brace (or end of line); the SET KEY L ex- ample above relies on brace matching to omit the trailing comment. The outer curly brace delimiters are not sent but the inner ones are; for example: SET KEY U {a {b}\{27}8} sends the 7 bytes "a {b}ESC8" SET KEY U a{ {b}\{27}8} sends the 9 bytes "a{ {b}ESC8}" SET KEY U a{ {b}\{{27}}8} sends the 15 bytes "a{ {b}\{{27}}8}" A definition is removed, that is a key is defined as itself, by giving an empty definition: SET KEY q q key sends q again SET KEY \331 IBM left arrow key is undefined. The keyboard can be restored to its startup state, that is all redefinitions removed and all built-in defitions restored, by using the keyword CLEAR in place of the key identification: SET KEY CLEAR Undefined keys which do not send ASCII characters are trapped by the keyboard translator and are rejected; a beep results from using an undefined non-ASCII key. SET KEY OFF disables the key definition mechanism entirely, but leaves the cur- rent definitions in place. SET KEY OFF also directs MS-Kermit to read keycodes from DOS, rather than BIOS, so that console drivers like ANSI.SYS that operate at the DOS level, may be used during Kermit CONNECT sessions. This would also apply to any special keyboards that come with DOS-level drivers. SET KEY ON turns key definition back on, and returns Kermit to processing keystrokes at the BIOS level. Kermit Action Verbs: An action verb is the shorthand expression for a named Kermit procedure, such as "generate the proper sequence for a left arrow," "show status," "send a BREAK," and others; verbs are complex actions and each verb has a name. In a key definition the verb name is preceeded by backslash K (\K) to avoid being confused with a string. Verbs and strings cannot be used together on a key. SET KEY \331 \Klfarr SET KEY \2349 \Kexit makes the IBM keyboard left arrow key execute the verb named lfarr which sends the proper escape sequence for a VT102 left arrow key (which changes depending on the internal state of the VT102). The leading \K identifies the definition as a Kermit verb, so no string can start as \K or as \{K in upper or lower case (use \92K). The second example has Alt-X invoking the Leave-Connect-Mode verb "exit" (same as Kermit escape character "^]" followed by C). Each system has its own list of verbs and predefined keys. Table 1-3 shows those available for the IBM PC family (there are also some additional verbs for reassigning Heath or VT100 function keys, see section 1.15.1). The SET KEY command shows the list of available verbs when a query mark (?) is given as a definition. SHOW KEY displays all currently defined keys or individually selected ones; SHOW KEY can be executed only interactively. ------------------------------------------------------------------------------- Verb Meaning \Kupscn Roll up (back) to previous screen \Kdnscn Roll down (forward) to next screen \Khomscn Roll up to top of screen memory \Kendscn Roll down to end of screen memory (current position) \Kupone Roll screen up one line \Kdnone Roll screen down one line \Kprtscn Print the current screen \Kdump Append the current screen to dump file \Klogoff Turn off session logging \Klogon Turn on session logging \Ktermtype Toggle terminal type \Kreset Reset terminal emulator to initial state \Kmodeline Toggle modeline off/on \Kbreak Send a BREAK signal \Klbreak Send a "long BREAK" signal \Khangup Drop DTR so modem will hang up phone \Knull Send a null (ASCII 0) \Kdos "Push" to DOS \Khelp Display CONNECT help message \Kstatus Display STATUS message \Kexit Escape back from CONNECT mode \Kgold,\Kpf1 VT102 keypad function key PF1 \Kpf2..\Kpf4 VT102 keypad function keys \Kkp0..\Kkp9 VT102 keypad numeric keys \Kkpdot,\Kkpminus,\Kkpcoma,\Kkpenter Other VT102 keypad keys \Kuparr,\Kdnarr,\Klfarr,\Krtarr VT102 cursor (arrow) keys Table 1-3: Kermit-MS Verbs for the IBM PC Family ------------------------------------------------------------------------------- Some systems have preset key definitions when Kermit first begins (those for the IBM PC are shown in section 1.15.1). You can find out what they are on your system by typing SHOW KEY, and then question mark on the next line. You may supplement or change the predefined keys with SET KEY commands typed inter- actively or in MSKERMIT.INI or other command files. The MS-Kermit CONNECT command may be used in conjunction with certain console drivers that do their own key redefinitions. Since MS-Kermit intercepts keystrokes at the BIOS level, drivers like ANSI.SYS which work at the DOS level will have no effect during CONNECT, even though they work at MS-Kermit command level. Other drivers, like SuperKey and ProKey, work at the BIOS level, and their key assignments will remain effective during Kermit terminal sessions, and additional Kermit SET KEY assignments may be made "on top" of them. SET LOCAL-ECHO Syntax: SET LOCAL-ECHO {ON, OFF} Specify how characters are echoed during terminal emulation on the currently selected port. ON specifies that characters are to be echoed by Kermit-MS (because neither the remote computer nor the communications circuitry will be echoing), and is appropriate for half-duplex connections. LOCAL-ECHO is OFF by default, for full-duplex, remote echo operation. SET MODE-LINE Syntax: SET MODE-LINE {ON, OFF} On systems, like the IBM PC family, which are capable of displaying a status, or "mode" line on the 25th line during terminal connection, disable or enable this function. This command has no effect on systems that do not display a mode line during connect. The mode line shows several important facts about the connection, like which port is being used, the baud rate and parity, the current escape character, etc. When the mode line is enabled, it may be turned on and off using the CON- NECT escape-level command M or the Kermit verb "modeline". The mode line occupies the 25th line of those systems that have such a thing, and is not affected by scrolling (on some systems that have large screens, the mode line should appear on whatever the bottom line is, e.g. the 43rd). When emulating a VT102 or Heath-19, Kermit will allow the host to address the 25th line directly using cursor positioning commands. If this happens, Kermit will remove its mode line and relinquish control of the 25th line to the host (as if you had typed SET MODE OFF). When no terminal is being emulated, the 25th line (if any) is available for scrolling. If the mode line is disabled by an ap- plication or by the command SET MODE OFF then the only way to revive Kermit's mode line display is to give the command SET MODE ON. On IBM systems support- ing different length displays, the host needs to address the bottom line ex- plicitly. Also, note the line is saved and restored when CONNECT mode is exited and reentered so an old "fossil" mode line may reappear unexpectedly. If this happens, you can escape back to the Kermit prompt, say SET MODE ON, CONNECT, and toggle it off ("^]M") to clear the line. SET PARITY Syntax: SET PARITY {EVEN, ODD, MARK, SPACE, NONE} Specify the character parity to be used on the currently selected port. NONE means no parity processing is done, and the 8th bit of each character can be used for data when transmitting binary files. This is the normal case. If parity is other than none, then there will be 7 data bits (use of parity with 8 data bits is not supported). You will need to SET PARITY to ODD, EVEN, MARK, or possibly SPACE when com- municating with a system, or over a network, or through modems, concentrators, multiplexers, or front ends that require or impose character parity on the com- munication line. For instance, Telenet normally uses MARK parity. If you neglect to SET PARITY when the communications equipment requires it, the symptom may be that terminal emulation works (well or maybe only partially), but file transfer or script INPUT commands do not work at all. If parity is in use, then the display during terminal emulation, as well as any session log, will be 7-bit ASCII, unless you have SET DEBUG ON (q.v.). There may be situations in which you require 7-bit ASCII with no parity during terminal emulation, but still want to force 8th bit prefixing during file transfer. To accomplish this, SET PARITY SPACE. The INPUT and TRANSMIT commands use 7 or 8 bits if parity is NONE, according to the SET DISPLAY command, and this may upset recognition of received characters when the host unexpectedly sends them with its own parity. If you have set parity to ODD, EVEN, MARK, or SPACE, then Kermit-MS will re- quest that binary files be transferred using 8th-bit-prefixing. If the other Kermit knows how to do 8th-bit-prefixing (this is an optional feature of the Kermit protocol, and some implementations of Kermit don't have it), then binary files can be transmitted successfully. If NONE is specified, 8th-bit-prefixing will not be requested. Note that there is no advantage to using parity. It reduces Kermit's file transfer efficiency without providing additional error detection. The SET PARITY command is provided only to allow Kermit to adapt to conditions where parity is required, or 8-bit transmission is otherwise thwarted. SET PORT Syntax: SET PORT {number, COM1, COM2, NET [nodename]} On machines with more than one communications port, select the port to use for file transfer and CONNECT. This command lets you use a different asynchronous adapter, or switch between two or more simultaneous remote sessions. Sub- sequent SET BAUD, PARITY, HANDSHAKE, FLOW, and LOCAL-ECHO commands will apply to this port only -- each port remembers its own parameters, so that you may set them for each port and then switch between ports conveniently with the SET PORT command. SET PORT 1 selects COM1, SET PORT 2 selects COM2. All versions default to port 1, except for the IBM PCjr, which uses port 2 if its internal modem is in- stalled. Additionally, COM3 and COM4 are supported for IBM PC's if the system is informed of their presence (as explained in section 1.16.5). In "generic" MS-DOS Kermit, the following alternate forms allow you to experi- ment with device names or numbers until you find the communication port: SET PORT {DEVICE, FILE-HANDLE} Just type a carriage return after either of these commands, and you will be prompted for a device name or a numeric port-handle. Keep trying till you find one that works. File-handle 3, the system auxillary device, is conventional on many machines, as are device names COM1, COM2, and AUX. MS-Kermit for the IBM PC family is able to operate over local area networks through the NetBios interface. The command SET PORT NET [nodename] redirects communications the LAN board installed in the local computer and the associated NetBios emulator software, if active, rather than the serial port or the COM device driver. It installs a unique Kermit node name in the local LAN, so that other nodes can refer to it when files are transferred or terminal emulation is done. This name is displayed when you give the SET PORT NET com- mand. Both the regular serial port and a network connection can be kept alive simul- taneously; clearly, only one can be used at a time under MS-DOS. MS-DOS 3.x is not required for Kermit network usage, but most LANS do need DOS 3.1 or later for conventional file server work. Kermit needs only the NetBios emulator net- work software. SET PROMPT Syntax: SET PROMPT [string] This command allows you to change the MS-DOS Kermit program's prompt. The string may be enclosed in curly braces. Control characters like ESC can be in- cluded as backslashed numbers like "(\27)". ANSI.SYS and similar console drivers can be programmed through this command. The string must be less than 128 characters. If the string is omitted (missing) Kermit's original prompt of "Kermit-MS>" is restored. SET RECEIVE Syntax: SET RECEIVE parameter value This command lets you modify the ways in which MS-Kermit asks the other Kermit to behave. That is, it controls the file transfer protocol options for packets sent to MS-Kermit by the other Kermit. The parameters and values you specify in the SET RECEIVE command are sent to the other Kermit during initial negotia- tions. END-OF-LINE number ASCII value of packet terminator to look for on incoming packets. Nor- mally carriage return. Use this command if the other Kermit is ter- minating its packets with some other control character. PACKET-LENGTH number Ask the remote Kermit to use the specified maximum length for packets that it sends to Kermit-MS. The normal length is 94 bytes. Use this command to shorten packets if the communication line is noisy or ter- minal buffers somewhere along the path are too small. Shorter packets decrease the probability that a particular packet will be corrupted, and will reduce the retransmission overhead when corruption occurs, but will increase the protocol overhead. If a length greater than 94 is specified, a protocol option called "long packets" will be used, provided the other Kermit also supports it. Kermit-MS handles extended-length packets up to 1000 bytes long. Long Packets can improve efficiency by reducing the per-packet overhead for a file, but they will not be used unless you issue this command. Before using this option, ensure that the equipment on the communica- tions pathway can absorb a long packet, and that the connection is clean (retransmission of long packets is expensive!). You should also SET BLOCK-CHECK 2 or 3 for more reliable error checking. PADCHAR number Ask the remote Kermit to use the given control character (expressed as a decimal number 0-31, or 127) for interpacket padding. Kermit-MS should never require any padding. PADDING number Ask the remote Kermit to insert the given number of padding characters before each packet it sends. MS-Kermit never needs padding, but this mechanism might be required to keep some intervening communication equipment happy. START-OF-PACKET number If the remote Kermit will be marking the beginning of packets with a control character other than Control-A, use this command to tell Kermit-MS about it (the number should be the decimal ASCII value of a control character). This will be necessary only if the hosts or com- munication equipment involved cannot pass a Control-A through as data, or if some piece of communication equipment is echoing packets back at you. TIMEOUT number Ask the remote Kermit to time out after the given number of seconds if a packet expected from Kermit-MS has not arrived. Use this command to change the other Kermit's normal timeout interval. SET REMOTE Syntax: SET REMOTE {ON, OFF} SET REMOTE ON removes the file transfer display (as if you had given the com- mand SET DISPLAY QUIET). It should be used when you are running Kermit-MS in remote mode when coming in from another PC through the Kermit-MS's "back port", to which the console has been reassigned using the DOS CTTY command, e.g. CTTY COM1 It is necessary to issue the SET REMOTE ON command because (a) Kermit-MS has no way of knowing that its console has been redirected, and (b) when the console is the same as the port, the file transfer display will interfere with the file transfer itself. SET REMOTE OFF returns the file transfer display to its preferred style (REGULAR or SERIAL). When you SET REMOTE ON, you might also want to SET DELAY 5 or thereabouts, to allow yourself time to escape back to the local system before MS-Kermit starts sending packets. WARNING: During CTTY console redirection, many programs still output to the real screen and require input from the real keyboard and will hang the system until keyboard requests are satisfied. On the IBM PC, CTTY CON returns control to the normal keyboard and screen (other systems may use other device names). See section 1.16.7 for further details about remote operation. SET RETRY Syntax: SET RETRY number Sets the number of times a packet is retransmitted before the protocol gives up. The number of retries can be between 1 and 63, and is 5 by default. This is an especially useful parameter when the communications line is noisy or the remote host is very busy. The initial packet of a file exchange is given three times as many retries to allow both systems to become ready. SET SEND Syntax: SET SEND parameter value The SET SEND command is used primarily to override negotiated protocol options, or to establish them before they are negotiated. END-OF-LINE number ASCII value of packet terminator to put on outbound packets. Normally carriage return. Use this command if the other Kermit needs its pack- ets terminated with a nonstandard control character. PACKET-LENGTH number Use this as the maximum length for outbound packets. Normally, you would use this command only to send shorter packets than the other Ker- mit requests, because you know something the other Kermit doesn't know, e.g. there's a device on the communication path with small buffers. PADCHAR number Use the specified control character for interpacket padding. Some hosts may require some padding characters (normally NUL or DEL) before a packet, and certain front ends or other communication equipment may need certain control characters to put them in the right modes. The number is the ASCII decimal value of the padding character, (0 - 31, or 127). PADDING number How many copies of the pad character to send before each packet, nor- mally zero. PAUSE number How many milliseconds to pause before sending each packet, 0-127, nor- mally zero. This helps half-duplex systems prepare for reception of our packet. Padding characters are sent only after the time limit ex- pires. QUOTE number Use the indicated printable character for prefixing (quoting) control characters and other prefix characters. The only reason to change this would be for sending a very long file that contains very many "#" characters (the normal control prefix) as data. START-OF-PACKET number Mark the beginning of outbound packets with some control character other than Control-A. This will be necessary if the remote host or the communication channel cannot accept a Control-A as data, or if it echoes back your packets. The remote host must have been given the corresponding SET SEND START-OF-PACKET command. TIMEOUT number Change Kermit-MS's normal timeout interval; this command is effective only if TIMER is set to be ON; it is normally ON so that both Kermits can control timeouts. When the timer is ON, the default interval is 13 seconds. SET SPEED Syntax: SET SPEED rate Same as SET BAUD, q.v. SET TAKE-ECHO Syntax: SET TAKE-ECHO {ON, OFF} Specifies whether screen display should occur during implicit or explicit TAKE operations on MSKERMIT.INI or other Kermit-MS command files, and during evalua- tion of macro definitions by the DO command. Handy for finding errors. SET TERMINAL Syntax: SET TERMINAL parameter [value] This command controls most aspects of terminal emulation. Most of the parameters are only settable (or meaningful) on the IBM PC family and com- patibles. (Programmers who are proficient on other MS-DOS systems are invited to fill in these functions for those systems and send the results back to Columbia.) On systems, built-in setup modes or DOS commands can be used to ac- complish the same functions. The first group of parameters tells which kind of terminal to emulate. When Kermit-MS uses its built-in software for emulation, incoming characters are ex- amined for screen control commands (escape sequences) specific to that ter- minal, and if encountered, the commands are executed on the PC screen. NONE Act as a dumb terminal. All incoming characters will be sent to the screen "bare", as-is, through DOS. If you have loaded a device driver into DOS for the CON device, such as ANSI.SYS, then that driver will be able to interpret the codes itself. Many non-IBM systems have their own screen control code interpreter built into DOS or firmware, or available as a loadable device driver. VT52 The DEC VT-52 terminal. HEATH The Heath/Zenith-19 terminal (H19), which supports all the VT52 com- mands, plus line and character insert/delete editing functions, an ANSI mode, and a 25th line. VT102 The DEC VT102 (ANSI) terminal, which is the same as a VT100 but also supports line/character insert/delete editing functions and ANSI printer controls. TEK A Tektronix 4010 graphics terminal. Currently only available on IBM, TI, and Victor PCs. On the IBM family, Kermit automatically senses and adapts to the CGA, EGA, or Hercules color board. The specific escape sequences supported by Kermit for each of these terminal types are listed in section 1.15. Note that when a Kermit program includes Tektronix emulation, it is invoked automatically while in character mode (VT102, VT52, or Heath emulation) when the emulator receives the escape se- quence ESC Ctrl-L. The emulator returns to character mode upon receipt of Ctrl-X. On color systems, foreground and background screen colors during Tektronix emulation obey the SET TERMINAL COLOR settings. If sufficient memory is available on the graphics board, the graphics screen will be preserved across CONNECT sessions. The remaining SET TERMINAL commands specify setup options for the selected ter- minal: CHARACTER-SET {UK, US} UK displays "#" (ASCII 35, number sign) as a pound sterling sign, US displays "#" as "#". This command applies during VT100/102 emulation. COLOR number [, number [, number]] Several numbers, applied in left to right sequence, separated by commas @@@@@@@@@@@@@@@@@@@@ Cut and concatenate here. @@@@@@@@@@@@@@@@@@@@ -- Tom Reingold INTERNET: tr@bellcore.bellcore.com Bell Communications Research UUCP: rutgers!bellcore!tr 435 South St room 2L350 SOUNDNET: (201) 829-4622 [work] Morristown, NJ 07960 (201) 287-2345 [home]