File KERMIT.UPD MS-DOS KERMIT 3.0 UPDATES January 1990 This file lists and briefly describes the features that are new to version 3.0 of MS-DOS Kermit, January 1990. The previous release of MS-DOS Kermit was 2.32/A, January 1989. The user manual for MS-DOS Kermit 3.0 is "Using MS-DOS Kermit", by Christine M. Gianone, published by Digital Press, Bedford, MA, 1990, order number EY-C204E-DP, and includes a 5.25-inch MS-DOS Kermit 3.0 diskette. Call 1-800-343-8321 (toll free, USA) to order. The technical reference by Professor Joe R. Doupnik is in preparation. NEW FEATURES OF MS-DOS KERMIT 3.0 1. Emulation of most features of the DEC VT320 terminal, plus many features of the VT340. 2. International character sets in terminal emulation and file transfer. 3. Sliding window packet protocol. 4. Expanded support for local area networks. 5. Enhanced graphics commands in the Tektronix emulator, suitable for use with mainframe WordPerfect versions 5 and 4.2. 6. Many other improvements. 1. VT320/VT340 EMULATION MS-DOS Kermit 3.0 emulates the DEC VT320 terminal, international model, with many features of the more advanced VT340/330 text/graphics terminals thrown in. VT320 is the default terminal type for MS-DOS Kermit 3.0. Kermit continues to offer emulations for the DEC VT52, Heath/Zenith-19, and DEC VT100/102 terminals, as well as of Tektronix graphics terminals. Kermit's VT320/340 emulation offers many capabilities beyond the VT102, including: . A selection of character sets, with the ability to switch among them. . Translation of the above sets to/form any of the five Code Pages. . User-defined soft function keys, downloadable by the host. . Tektronix 4010/4014 graphics with many extensions, including color, "sixel" graphics, rectangle fill with various patterns, and more. . Support of the DEC LK250 keyboard, a DEC LK201 keyboard for IBM-PCs (via a special driver, LK250.*). A new mechanism is provided for switching between 80 and 132 columns when your display adapter supports this. Create two files, COLS80.BAT and COLS132.BAT, in your current disk and directory or anywhere in your DOS PATH. These files should contain the DOS commands required to put your particular display adapter into 80-column and 132-column mode, respectively. They will be invoked automatically if the host sends the VT100/200/300 escape sequences to change screen width (for example if you SET TERMINAL /WIDTH=132 in VAX/VMS). Several EGA boards known to Kermit will be switched automatically without these files. You may also change the screen width manually by running these batch programs either outside of Kermit or from within Kermit by using Kermit's RUN command. Graphics screens may now be saved to disk files in uncompressed Aldus/Microsoft TIFF 5.0 format (approximately 110K per EGA screen) by invoking the keyboard verb \kdump (initially assigned to Ctrl-End) when the graphic is on the screen, for importation into applications such as WordPerfect 5.0, Pagemaker, Ventura Publisher, PC Paint, and Gem Paint. The file names are TEKPLT01.TIF, TEKPLT02.TIF, etc. MS-DOS Kermit 3.0 VT320/340 emulation lacks the following features: . Smooth scrolling . True double-width, double-height characters (these are simulated) . Downloadable soft character fonts . ReGis graphics (VT340/330) . Dual sessions in split screens (VT340/330) . A setup screen (use SET TERMINAL commands instead) . Split speeds . Local screen editing and block transmission (for security reasons) . Answerback (also for security reasons) . Selective erasure (a character attribute, used with formatted screens) . And many of the exotic and rarely known features of the DEC VT340/330 series: mostly formatted screen and graphics operations highly specialized to DEC hardware. 2. INTERNATIONAL CHARACTER SET SUPPORT MS-DOS Kermit 3.0 supports translation between the PC's local character set (Code Page) and ISO Latin Alphabet 1 (ISO 8859-1) during file transfer. The relevant new commands are: SET TRANSFER CHARACTER-SET { TRANSPARENT, LATIN1 } SET FILE CHARACTER-SET { CP437, CP850, CP860, CP863, CP865 } The default transfer character set is TRANSPARENT (that is, no translation is done) for compatibility with previous releases of MS-DOS Kermit. The default file character set is your PC's current code page, such as CP437, and that is detected automatically. These new commands allow you to transfer files containing accented and other special characters with Kermit programs on computers that represent these same characters using different codes, such as VAX/VMS, UNIX, Macintosh, IBM mainframes, etc, when the Kermit programs on these computers also support international text file transfer; new versions of C-Kermit for UNIX and VAX/VMS, Macintosh Kermit, IBM mainframe Kermit, and others which support this feature are in preparation. International file transfer is also useful between two PCs that use different code pages. The introduction of this new capability requires for the first time that MS-DOS Kermit distinguish between text files (which MIGHT need translation) and binary files (which should not be translated) during file transfer. This is done using the new command: SET FILE TYPE { BINARY, TEXT } TEXT is the default. Remember to SET FILE TYPE BINARY before transferring any binary files. Various host-based international character sets are also supported during VT320 terminal emulation, including 8-bit ISO Latin Alphabet 1, the DEC 8-bit Multinational Character Set, 12 different 7-bit National Replacement Character (NRC) Sets, and several others. The command to select your terminal character set is: SET TERMINAL CHARACTER-SET xxx where xxx is the desired name (for a list, type ? in place of xxx). LATIN1 and DEC-MCS are 8-bit character sets, intended primarily for use in the 8-bit environment, meaning that the host uses 8 data bits, no parity. In MS-DOS Kermit, you must SET PARITY NONE and SET DISPLAY 8 in order to operate in this environment. In 7-bit-with-parity environments, MS-DOS Kermit will respond to shift-in/shift-out codes for displaying 8-bit characters, but the method for transmitting 8-bit characters to the host is host-dependent. Normally, NRC sets are used in the 7-bit environment. Kermit automatically translates incoming characters from the current terminal character set (SET TERMINAL CHARACTER-SET) to the current PC code page, and it automatically translates keystrokes from the current code page to terminal character set. The default terminal character set is LATIN1 (Latin Alphabet 1). SET KEY assignments take precedence on a per-key basis. 3. SLIDING WINDOW PACKET PROTOCOL For increased efficiency during file transfer across long-distance, long-delay communication links such as public data networks, MS-DOS Kermit 3.0 includes sliding window packet protocol. This means that Kermit does not have to wait for an acknowledgement for the current packet before sending the next packet. The number of packets that may be sent before acknowledgements arrive is called the "window size", and this may range from 1 to 31. A sufficiently large window size allows transmission of packets to be continuous, and makes maximum effective use of the transmission channel. The command to select the window size is: SET WINDOW n where n is a number from 1 to 31. The default window size is 1 for Kermit's normal stop-and-wait operation. Window sizes greater than 1 can be used only with other Kermit programs that support this option, including PRIME Kermit, C-Kermit 5A or later (still in preparation), certain commercial programs, or another copy of MS-DOS Kermit 3.0. Sliding windows may be used in conjunction with long packets. The product of the packet size and the window size may not exceed 2000. 4. LOCAL AREA NETWORK SUPPORT MS-DOS Kermit 3.0 for the IBM PC, PS/2, and compatibles supports the following local area networks and protocols: . Netbios via SET PORT NETBIOS for PC-to-PC file transfers. Requires a Netbios-based PC network (like IBM PC Network or IBM Token Ring) and accompanying hardware and drivers. . Netbios via SET PORT NETBIOS for PC to AT&T Unix systems over StarGroup (formerly StarLAN) and for PC-to-host file transfer across any NetBios compatible system. Requires a Netbios driver for your network interface. . Novell Terminal Emulation Service (TES) via SET PORT BIOSx. Requires Novell TES BIOS-Level COMx driver (e.g. COM1, COM2) that intercepts BIOS interrupt 14H and controls the network interface, and a host VAX running NetWare/VMS. . Novell NASI/NACS V2 and compatible asynchronous communication servers, via SET PORT NOVELL. Requires Novell or compatible network. . DECnet-DOS, both LAT and CTERM interfaces, via SET PORT DECNET. Requires installation of DECnet-DOS or DECnet PCSA. . Ungermann-Bass Net/One Int 6BH via SET PORT UB-NET1. Requires an Ethernet board with U-B Net/One drivers or compatibles. . Intel OpenNET via SET PORT OPENNET, a NetBios implementation. . IBM asynchronous communication servers accessed through IBM EBIOS, via SET PORT BIOSx. Requires EBIOS Int 14H interceptor. Needs testing. . 3COM Bridge Application Program Interace (BAPI) to asynchronous communication servers via SET PORT BIOSx. Requires 3COM Int 14H interceptor. . 3COM BAPI, newer version which uses higher-numbered BIOS interrupts particular to that interface, via SET PORT 3COM(BAPI). . TCP/IP Telnet via SET PORT BIOSx. Requires vendor's Int 14H interceptor to execute Telnet protocol, for example FTP Software's PC/TCP v2.04 (TNGLASS dated 6 Dec 1989 or later), or Interlan's TCP/IP Gateway for Novell Networks. Use ? in the SET PORT command to learn about additional fields such as node names and passwords. Connections established with SET PORT NOVELL can be controlled by invoking the new Kermit keyboard verb \Knethold. First assign this verb to a key using SET KEY (for example, "SET KEY \315 \Knethold" to assign it to the F1 key), then press the key during terminal emulation. This will invoke a Novell menu to select connections, select modem speeds, keep sessions on hold while starting more sessions, and resume old sessions. 5. TEKTRONIX GRAPHICS The name Tektronix may no longer be adequate to describe the new features drawn from DEC VT340/330 and HDS 2000/3000 graphics terminals. Principle additions are: . Rectangle (border only) and pattern filled rectangle drawing commands. . More preprogrammed line patterns, many rectangle fill patterns, both include several host definable patterns. Fill patterns are tiling kinds synchronized to the screen boundaries, for smooth joinery and easy pattern overlaying operations. . Host control of destructive space and backspace. . User control of opaque or transparent character writing. . Control of pixel basic operations such as write absolute, OR, XOR with existing colors, including DEC VT340 ORing of color palette numbers. . DEC Sixel graphics commands. . Screen dumping in TIFF v 5.0 formats (class B for B/W, class P palette for EGA and VGA screens), uncompressed. One file for each screen capture. . Support of most common cursor steering and line/screen erasure escape sequences of ANSI text terminals, scaled to the text terminal's screen shape, so that text, Tektronix, and Sixel graphics can be mingled. . Automatic switching from text terminal to graphics terminal upon receipt of a Sixel Device Control String. . Presence, use, and reporting of the 16 color and b/w palettes of the DEC VT340/330 terminals. DEC characteristic of black always writes absolutely. . Coloring commands acceptable in ANSI ESC [ 3x; 4x m format and in Device Control Strings for both RBG and HLS (hue, lightness, saturation) systems. . Reporting of the graphics screen size and number of colors upon host request, an MS-DOS Kermit escape sequence in DEC private format. . Support for mainframe WordPerfect 5.0 and 4.2 to view and edit figures (pictures) and pages in graphics mode while preparing documents in text mode. TIFF files from MS-DOS Kermit screens are directly readable into WordPerfect (and several other packages). . Terminal identification response of VT300 with Sixel and other attributes. . Recognition of 8-bit control sequences, but truncation of other 8-bit characters to 7-bit form. For this, parity must be NONE and DISPLAY 8-bits. . Recognition of the ESC [ ? 34 h and l TerminalS and TerminalR MS-DOS Kermit macro invokation sequences from the host. 6. OTHER IMPROVEMENTS * Communications . Support for advanced features of the PS/2's National Semiconductor 16550A UART (serial communications) chip for improved performance. . New SET DUPLEX { HALF, FULL } command includes support for RTS/CTS handshake for use with half duplex modems, radio transmitters, etc. RTS/CTS is used if DUPLEX is set to HALF and the DSR signal is present. * Terminal Emulation (in addition to VT320/340 and Tektronix features listed above): . Expanded storage for rollback screens. If memory is available, Kermit will allocate room for about 10 screens. More is available via the new DOS environment variable, KERMIT: SET KERMIT=ROLLBACK 120, memory permitting. . Screen rollback is now instantaneous. . New REPLAY command to replay a Kermit session log through the terminal emulators. . Transparent print now works properly in the presence of parity. . New SET TERMINAL KEYPAD { APPLICATION, NUMERIC } command gives users explicit control over VT terminal keypad mode. Formerly the keypad mode could be changed only by escape sequences sent from the host. . Visual bell for deaf users (SET TERMINAL BELL VISUAL) during terminal emulation. . Support for additional monitors and display adapters: - Wyse-700 (graphics in several high resolution dimensions) - ATT EGA VDC600 (automatic recognition of 80/132 column mode) - STB VGA/EM, VGA/EM-15 boards (automatic recognition of 80/132 column mode) - Other boards to or from 80/132 columns via COLS80.BAT and COLS132.BAT. * Kermit Protocol (in addition to international character sets and sliding windows, described above): . Maximum file transfer packet size increased from 1000 to 2000 bytes. . New server security features, including login/password, available via DISABLE, ENABLE, and SET SERVER commands. . Redirection of output of REMOTE commands to file or printer via DOS redirection symbol (>), e.g. REMOTE DIRECTORY > PRN. . Non-control versions of single-character file transfer interrupt commands (X,Z,E,C) are now available. . Many new options for SET ATTRIBUTES command, to control attributes individually, for example SET ATTRIBUTES DATE OFF. Attributes now include date and time, file size, file type, and transfer character set. . MS-DOS Kermit server now recognizes REMOTE KERMIT SET commands. . New REMOTE SET command, used to change settings on remote Kermit server. Also supported by MS-DOS Kermit server. This is a new Kermit protocol feature, as yet unsupported by other Kermit programs, but will be in future releases of C-Kermit, IBM mainframe Kermit, etc. * Miscellaneous Features and Commands: . Space for macro names expanded from 500 to 1000 bytes. Space for macro definitions was formerly 3000. Now it's dynamically allocated and will use as much memory as can be found. . SHOW commands added for many types of things (file, protocol, terminal, memory, modem, statistics, etc). . Keyboard verbs (like \Kexit) can now be embedded within keyboard definition text strings and mixed with other keyboard verbs. . New WRITE command to annotate log files. may be SESSION, PACKET, TRANSACTION, or SCREEN. may be TIME, DATE, PATH, TEXT, etc (use ? to see all options). . New IF statements for arithmetic comparison: IF <, IF >, IF =, for example: IF < %\1 3 echo Argument is less than 3. . New numeric variables, can be used with IF <, etc, and WRITE: - ARGC Number of words in a macro invocation - COUNT Loop counter (set via SET COUNT) - ERRORLEVEL Error level (set via SET ERRORLEVEL) - VERSION Program version (built in, 3.0 = 300) Note: ARGC allows construction of macros that can test for the presence of arguments and supply defaults, without being confused by leftover parameters from previous macro invocations. . ASK command now operational, and allows backslash codes in prompt. ASK prints prompt, stores what user types in variable. . New ASKQ command, like ASK but does not echo what the user types, useful for passwords. . Allow ECHO string and ASK prompt string to contain backslash codes for the PC's 8-bit characters, so that fancy effects and international characters can be displayed. . New controls and options for TRANSMIT command (SET TRANSMIT ?). . New command SET FILE WARNING { ON, OFF, NO-SUPERSEDE }. ON and OFF are like previous SET WARNING command. NO-SUPERSEDE option can be used for continuing interrupted wildcard file reception, skipping over files that already exist. . A patch mechanism for applying corrections to the binary executable program image. 7. COMPATIBILITY MS-DOS Kermit 3.0 is upwards compatible in most respects with the previous release, MS-DOS Kermit 2.32/A of January 1989. Old initialization and command files should still work, and script programs written for 2.32/A should continue to work. Obviously, commands that are new to version 3.0 will not work in earlier versions. To ease compatibility issues in future releases, MS-DOS Kermit now has a built-in read-only VERSION variable, whose value is 300 for version 3.0, and will be increased in subsequent releases (for example, 3.01 would be 301, 3.10 would be 310, 4.0 would be 400, etc). Script programs written for new releases can test this variable before attempting to execute any new commands. Incompatibilities between 3.0 and 2.32/A are: . The default terminal type is VT320 rather than VT102. VT102 can be selected manually via SET TERMINAL VT102 or within a Take file such as MSKERMIT.INI. The VT320 is a superset of the VT102, and so Kermit's VT320 terminal emulation can be used with a host that thinks it is communicating with a VT100 or VT102 (or for that matter, with a VT200). . The default terminal character set in VT320 mode is ISO Latin-1, which means that 8-bit characters received from the host (when parity is NONE and DISPLAY is 8) are translated rather displayed as-is. You may restore Kermit's previous behavior by giving the command SET TERMINAL CHARACTER-SET TRANSPARENT. . The default timeout interval while waiting for a file transfer packet has been reduced from 13 seconds to 5 seconds. This interval may be changed with the command SET RECEIVE TIMEOUT. . Handling blockage of sending by the arrival of an XOFF flow control character differs. Previously Kermit waited as much as the packet receive timeout interval for an XON and then broke through anyway, and the timeout was ignored if SET TIMER OFF had been given. In version 3.0 the timeout value is fixed at 15 seconds and does not depend on the SET TIMER command. In both cases the timeout is present to break possible standoffs if an XON gets lost (or if an XOFF arrived by accident, such as by typing a binary file, and there is no XON). None of this applies if FLOW is set to NONE.