home *** CD-ROM | disk | FTP | other *** search
- Creating a runnable Kermit from the distribution kit:
-
- You will need two of the .HEX files from the distribution kit: CP4KER.HEX
- (the system-independent module) and one of the system-dependent overlay
- modules. The name of the system-dependent overlay may be obtained from
- table 1 below. For systems which require an external terminal as console,
- the distribution kit overlays use the generic "crt" selection; after getting
- Kermit running, you may wish to reconfigure it to make use of your specific
- terminal.
-
- For purposes of illustration, we will assume the system-dependent overlay is
- called "foo.hex". The two hex files may be combined in two ways: if you do
- not have MLOAD (a public-domain enhanced version of LOAD), you will have to
- use DDT, as follows:
- A>ddt cp4ker.hex
- NEXT PC
- 3500 0100
- -ifoo.hex
- -r
- NEXT PC
- xxxx 0000
- -^C
- A>save dd kermit40.com
- The page count ("dd") used in the SAVE command is calculated from the last
- address ("xxxx") given by DDT in response to the R command: divide this
- number by 100 hex, rounding up, then convert to decimal: 384F becomes 39
- hex, which is 57 decimal; but 3700 becomes 37 hex, or 55 decimal.
- Be careful not to overwrite your running Kermit, if any, with this new
- version until you've tested it.
-
- If you do have MLOAD, the process is simpler:
- A>mload ker403=cp4ker,foo
- This produces ker403.com, which may be run directly.
-
- Test your new Kermit by running it. If it gives you a prompt, it might be
- OK. (don't delete your old one yet...). Instead of a prompt, you could get
- one of two messages indicating that the configuration information is invalid:
- ?Kermit has not been configured for a target system
- or
- ?Consistency check on configuration failed
- Of course, neither of these messages should appear if you're building Kermit
- from the distribution kit. The first message indicates that the overlay was
- not found where the system-independent module expected to find it, probably
- because the overlay address is incorrect; the second indicates that the version
- of CP4LNK used in the system-dependent module is incompatible with the system-
- independent module.
-
-
- Table 1
- Systems supported by Kermit-80
-
- Symbol Filename System
- ap6551 cp4apl Apple II with Z80 Softcard and 6551 ACIA in serial interface
- apmmdm cp4apm Apple II with Z80 Softcard and Micromodem II in slot 2
- bbII cp4bb2 BigBoard II (terminal required)
- brain cp4brn Intertec SuperBrain.
- cpm3 cp4cp3 "generic": CP/M 3.0 (CP/M Plus) systems (terminal required)
- delphi cp4del Digicomp Delphi 100 (terminal required)
- dmII cp4dm2 DECMATE II
- gener cp4gen "generic": CPM 2.2 systems supporting IOBYTE (terminal required)
- heath cp4h89 Heath/Zenith H89.
- kpII cp4kpr Kaypro-II (and 4; probably supports all Kaypro systems)
- mdI cp4mdi Morrow Decision I (terminal required)
- mikko cp4mik MikroMikko
- mmdI cp4udi Morrow Micro Decision I (terminal required)
- osbrn1 cp4osb Osborne 1
- osi cp4osi Ohio Scientific
- robin cp4rob DEC VT180
- telcon cp4tel TELCON Zorba portable
- trs80lb cp4tlb TRS-80 model II with Lifeboat 2.25C CP/M Display
- trs80pt cp4tpt TRS-80 model II with Pickles + Trout CP/M Display
- vector cp4vec Vector Graphics.
- z100 cp4z00 Z-100 under CP/M-85
-
- Table 2
- Terminals known to Kermit-80
- Symbol Terminal description
- crt Basic CRT, no cursor positioning
- adm3a Adm3a Display or lookalike
- smrtvd Netronics Smartvid-80
- tvi925 TVI925, Freedom 100
- vt52 VT52 or VT52 emulator such as Heath H19, H29, etc.
- vt100 VT100 or emulator (most ANSI terminals should work)
-
-
-
- Assembling Kermit-80 from the sources:
-
- Kermit-80 is built in two pieces from the following 12 files:
- The system-independent files:
- CP4KER.ASM - header file
- CP4DEF.ASM - definitions for both KERMIT and KERSYS
- CP4MIT.ASM - initialization, main loop, miscellaneous commands
- (BYE, EXIT, LOG, SET, SHOW, STATUS, and VERSION)
- CP4PKT.ASM - the KERMIT protocol handler (SEND, RECEIVE, LOGOUT,
- and FINISH commands)
- CP4TT.ASM - the transparent commands (TRANSMIT, CONNECT)
- CP4CPM.ASM - CP/M commands (DIR, ERA)
- CP4WLD.ASM - the wildcard handler
- CP4CMD.ASM - the command parser
- CP4UTL.ASM - utility routines and data
- CP4LNK.ASM - linkage area description
- The system-dependent files:
- CP4TYP.ASM - system selection
- CP4SYS.ASM - system-specific code
-
- The system-independent module contains all of the system-independent files
- except for CP4LNK.ASM, which is assembled into the system-dependent module
- to provide the structures needed to connect the two modules. As distributed,
- the system-independent module is named CP4KER.HEX.
-
- The system-dependent module consists of CP4TYP.ASM, CP4DEF.ASM, CP4LNK.ASM,
- and CP4SYS.ASM. One copy of the system-dependent module is supplied already
- assembled for each supported system; the filename may be obtained from table
- 1.
-
- After assembling the two pieces separately, they are combined with DDT or
- MLOAD into a system-specific Kermit.
-
- If you want to rebuild the system-independent module, the only change you
- may need to make is to select the assembler to be used, in CP4KER.ASM.
- Define one of MAC80, M80, or LASM to TRUE to select it as the assembler;
- the others should be defined FALSE.
-
- Assuming you have the Microsoft Macro Assembler package (M80/L80), you'll
- need to do the following:
- A>m80 cp4ker=cp4ker.asm
- A>l80 /p:100,cp4ker,cp4ker/n/e
- This will produce CP4KER.COM.
-
- If you are using LASM instead, do this:
- A>lasm cp4ker
- LASM will generate CP4KER.HEX.
-
- If you have access to a TOPS-10 or TOPS-20 system, you can cross-assemble
- Kermit there with MAC80, producing CP4KER.HEX:
- .run mac80
- *=cp4ker.asm
-
- If you want to generate a system-dependent overlay for a particular system,
- you'll need to check three areas in CP4TYP.ASM:
-
- First, the overlay start address. The symbol "ovladr" is EQUated to the
- address of "lnkflg" in the system-independent module, as the starting
- address of the overlay (3400H for version 4.03). You'll need this if you're
- building the overlay with M80/L80. (you won't normally need to change this
- value)
-
- Second, the assembler being used. Again, define one of MAC80, M80, and LASM
- to be TRUE to select it, and define the others to be FALSE. The two modules
- (system-independent and system-dependent) do not need to be built with the
- same assembler.
-
- Third, the system configuration. Locate your system in table 1, then define
- the appropriate symbol TRUE, and the rest FALSE. If the system comes with a
- builtin console terminal, define all the terminal switches FALSE. If the
- system uses an external terminal as the console, locate the terminal in table
- 2 and define the appropriate symbol TRUE, and the remainder FALSE. If the
- terminal is not listed in table 2, use the CRT switch; in this case, VT52
- emulation is not supported.
-
- In addition, there are a few general and system-specific symbols which may
- be altered to fit your system:
-
- apslot For Apple with 6551 ACIA, defines the slot number of the serial card
- cpuspd Processor speed in units of 100KHz (currently used only for bbII and
- kpII for timing loops)
- tac For users connecting through ARPAnet TACs: set to TRUE if you wish
- the default TACTRAP status to be ON. (This may be overridden with
- the SET TACTRAP command). If you're not connecting through a TAC,
- set tac to FALSE and ignore tacval.
- tacval For ARPANET TAC users: defines the default TAC intercept character
- (may be overridden with the SET TACTRAP command)
-
- If you are just assembling an existing configuration, you'll need to edit
- CP4TYP.ASM only. If you are adding support for a new system, you should not
- modify CP4DEF.ASM or CP4LNK.ASM; if you do, you'll have to change the system-
- independent module also. Eventually, CP4SYS.ASM will be split into separate
- files, each of which will generate one or more related systems. When this
- happens, you'll want to pick the one closest to your system to use as a
- starting point.
-
- After editing CP4TYP.ASM as necessary, assemble and link the overlay as follows:
- With M80 (where "xxxx" is the hex value of ovladr from CP4LNK.ASM):
- A>m80 cp4typ=cp4typ.asm
- A>l80 /p:xxxx,cp4typ,cp4typ/n/x/e
- With LASM:
- A>lasm cp4typ
- With MAC80 on TOPS-10 or TOPS-20:
- @run mac80
- *=cp4typ.asm
-
- The overlay (cp4typ.hex) may then be merged with the system-independent
- module as described above (Creating a runnable Kermit from the distribution
- kit).
-
- If you have a TOPS-10 or TOPS-20 system and already have a running
- Kermit-80 v3.9 or later, you can merge the two .HEX files into a .COM
- file with LINK80, and transfer the new .COM file to your micro with Kermit:
- TOPS-20:
- .COPY KERNEW.HEX=CP4KER.HEX,CP4TYP.HEX
- .LINK80 KERNEW
- TOPS-20:
- @APPEND (SOURCE FILE) CP4KER.HEX,CP4TYP.HEX (TO) KERNEW.HEX
- @LINK80 KERNEW
- producing KERNEW.COM. If LINK80 says "?Data overlaid", you have an old
- version of LINK80, and will have to transfer the .HEX files to the micro
- and merge them there.
-
-
- Adding support for your system to Kermit:
- To be supplied. Basically, you'll only need to add a switch it CP4TYP.ASM
- to select your system, and add the system-dependent code to CP4SYS.ASM (I
- hope I've put enough hooks to allow this to be done easily).
-
-
- Adding new features to Kermit:
- To be supplied. If you're feeling industrious, I've got this list of
- pending requests...
-