CP/M-86 8086/8088-based KERMIT
------------------------------

V 2.9:  2 Dec 84 LOCAL DIR, TYPE, alphabetical wildcard send, KERMIT.INI
                 no longer req'd, SET DEFAULT-DISK fixed.
V 2.8: 10 Oct 84 SET DEFAULT-DISK to login disk & user, new prompt to show
		 current disk/user.  Local SPACE, DIRECTORY, DELETE commands.
		 RECEIVE filename no longer acts like GET.  Bug fixes. (RonB)
V 2.7:  4 May 84 8th bit prefixing, TAKE files, KERMIT.INI capability,
		 bug fixes, improved messages, improved modularization. (RonB)
V 2.6: 30 Mar 84 Session logging; improved interrupt handling of file names,
                 error messages, modularization; bug fixes (Ron B, Rich G) 
V 2.5:  7 Mar 84 SET FILE-WARNING => SET WARNING, SET TIMER ON/OFF,
                 Fix 2.4 for APC, add BREAK for APC, Ron B, Bernie Eiben.
V 2.4: 24 Feb 84 Flow control, send BREAK, ^X/^Z file interruption, timeouts;
                 Richard Garland, Columbia University.
V 2.3:  5 Feb 84 Do parity, talk to IBM mainframe; Jeff Damens, Columbia U.
V 2.2: 19 Jan 84 Add CFIBFs, clean up conditionals; Bill Catchings.
V 2.1:  4 Jan 84 Adds missing commands, wildcard sends; Ron Blanford, U Wash.
V 0.2: 19 Dec 83 Corrects problem with RTS and DTR; Brian Orr.
V 0.1:  2 Dec 83 Adds interrupt driven i/o, GET command; Bill Catchings.
V 0.0: 21 Oct 83 Initial coding and pre-release; Bill Catchings, Columbia.

This version of KERMIT is written in Digital Research CP/M-86 assembler,
ASM86.  It is designed to support any CP/M-86 system.  So far it supports:

    DEC Rainbow-100
    NEC Advanced Personal Computer (APC)
    Tektronix 4170
    Fujitsu Micro 16s

Features and restrictions:

. Performs all standard KERMIT functions.
. Has commands for file transfer with KERMIT servers.
. Runs up to 9600 baud on all systems tested.
. Can time out.
. Can do 8th-bit prefixing.
. Can exchange files with IBM host.
. Can send BREAK.
. Can do protocol to interrupt a transfer (^X/^Z).
. ^C during file transfer gets back to Kermit-86 command level.
. Can log terminal session. 
. Has TAKE command and KERMIT.INI file.
. Local CP/M functions (ERA, DIR, TYPE, SET DEFAULT disk).

. No repeat-count prefixing.
. No 2- or 3-character block checks.

Known Problems:

. SET ESCAPE ^x doesn't work for certain control characters, like ^X.
. SET IBM and SET FLOW should interact appropriately.

CP/M-86 KERMIT is broken up into the following source modules:

    C86CMD.A86	Command parser
    C86FIL.A86	File handler
    C86KER.A86	Main Program
    C86PRO.A86	Protocol Module
    C86TRM.A86	Terminal Emulation (v 2.6 and later)
    C86UTL.A86	Utilities

    C86Xxx.A86	System Dependent I/O, xx = RB, AP, TK, FJ

The main program module, C86KER.A86, contains INCLUDE directives for the
other files.  C86Xxx.A86 files exist for each system supported (Rainbow,
APC, ...).  The program may be built on the CP/M-86 system by obtaining
all the source files listed above, storing them on the current disk with the
names indicated, renaming the appropriate C86Xxx.A86 file to C86XXX.A86,
and then doing:

    ASM86 C86KER $PZ  (this takes about 6 minutes on the Rainbow)
    GENCMD C86KER     (takes less than a minute)

and, if desired,

    REN KERMIT.CMD=C86KER.CMD

[End of C86KER.HLP]
