home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
c
/
qk3ker.doc
< prev
next >
Wrap
Text File
|
2020-01-01
|
45KB
|
1,075 lines
QK-KERMIT 3.1
---------------------------------------------------------------------------
SCRIPT/VS 3.2.0: DEVICE 1403QUCS CHARS MONO
INTRODUCTION
____________
Kermit is a protocol for transferring files between com-
puters over telecommunication lines. It does packetizing,
checksumming, and retransmission to ensure data integrity.
Microcomputer implementations of Kermit also provide termi-
nal connection at any speed allowed by both the micro and
the host. Kermit is like many other such protocols, but
with several differences:
y It's free.
y It's documented.
y It's well tested and in wide use.
y Implementations exist for many different systems, in-
cluding DEC and IBM mainframes and many microcomputers.
Each implementation is written in the language best
suited for a particular machine or operating system.
Kermit was developed at the Columbia University Center for
Computing Activities primarily to facilitate offline storage
of DECSYSTEM-20 files on microcomputer floppy disks. The
Kermit specification has since served as the basis for many
implementations of Kermits on a wide variety of systems.
Any Kermit can communicate with any other Kermit.
Kermit does not rely on any host system software or servers.
All actions are initiated explicitly by the user. Typi-
cally, the user:
y starts Kermit on a microcomputer,
y "connects" through Kermit to the remote host,
y logs on,
y starts Kermit on the remote host,
y "escapes" back to the micro,
y and issues SEND and RECEIVE commands to send files back
and forth between the two systems.
Kermit can transfer files singly or in wildcard groups.
QK-Kermit is a version of Kermit for MS-DOS and CP/M systems
written at Queen's University in Turbo-PASCAL. The CP/M
versions provide ADM3A terminal emulation; the MS-DOS ver-
sion emulates a VT-100 terminal. When using the MS-DOS ver-
sion with Queen's VM/CMS system, specify terminal type
IBMPC. For the KAYPRO version, specify terminal type
KAYPROK; for Apple IIe specify APPLE2E.
Version 3.0 is for MsDos systems only. For CP/M systems use
version 2.8
1
KERMIT
--------------------------------------------------------------------|
------->|-- Connect ----------------------|
| |-- <set options> --|
|-- Wait -------------------------|
|-- SENd <local-filespec>
-----------------------------------------|
| |-- AS
remote-filespec>----------------|
| |--
AW --| |
|-- RECeive <remote-filespec>
-------------------------------------|
| |-- AS <local-filespec>
-------------|
| |--
EPLACE --|
|-- SET
-----------------------------------------------------------|
| |-- <300|1200|2400|4800|9600> -----------|
| |-- <Even|Odd|Mark|None> ----------------|
| |-- <Full|Half> -------------------------|
| |-- <STandard|IBM-Xon|NoEcho>------------|
| |-- <A:|B:|C:|D:> -----------------------|
| |-- <One|TWo> ---------------------------|
| |-- <DIsk|PRinter> ----------------------|
| |-- <PACketsize> ------------------------|
| |-- <TImeout> -----| |
| |-- <NUmpad> ------| |
| |-- <PAdchar> -----| |
| |-- <STartchar> ---|-- <decimal digit> --|
| |-- <ENdchar> -----| |
| |-- <CNtrlquote> --| |
| | |
| |-- <BIt8quote> ---|-- <ASCII Char> -----|
| |-- <CHecktype> ---|
| |-- <Repchar> -----|
|-- STatus
--------------------------------------------------------|
|-- DIrectory
-----------------------------------------------------|
| |-- <local-filespec> --|
|-- Erase <local-filespec>
----------------------------------------|
|-- REName <local-filespec> <local-newfilespec>
-------------------|
|-- TYpe <local-filespec>
-----------------------------------------|
|-- RUn <local-filespec>
------------------------------------------|
|-- MKdir -- <Directory name>
-------------------------------------|
|-- CHdir -- <Directory name>
-------------------------------------|
|-- RMdir -- <Directory name>
-------------------------------------|
|-- REMote <any command supported by the remote Kermit>
-----------|
|-- Log
-----------------------------------------------------------|
| |-- <filespec> --|
|-- TAke ---<filespec>
--------------------------------------------|
|-- CLear
---------------------------------------------------------|
|-- INput
--<seconds>---<string>-----------------------------------|
|--
utput---<string>-----------------------------------------------|
|-- PAUse
--<seconds>----------------------------------------------|
|-- Echo
---<string>-----------------------------------------------|
|-- DEfine
--------------------------------------------------------|
| |-- <define-word> ------------------------|
| |-- <define-string> --|
|--
udio-----------------------------------------------------------|
|--
arms-----------------------------------------------------------|
|-- Quit
----------------------------------------------------------|
2
|-- Local ---|
|-- Remote --|
|-- Discon --|
|-- All -----|
3
QK-KERMIT COMMANDS
__________________
The Kermit commands may be abbreviated to the minimum number
of unique characters; i.e. CONNECT may be abbreviated to C
and STATUS may be abbreviated to ST, but SET has no abbre-
viation since there is a SEND command which also begins with
SE. Commands may be issued in a string as parameters to the
Kermit startup command to the operating system, or as
internal commands once Kermit is running.
All parameter specifications are optional. If the command
requires a parameter specification and one is not supplied,
then Kermit will prompt you for the required information.
CONNECT < option settings>
This command causes the micro to simulate a termi-
nal connected to another computer. This allows
one to sign on to the Host computer as a terminal.
The optional parameters specify the option setting
(See SET command for options).
To exit this terminal connect mode and return to
the Kermit command mode type in a CONTROL \ .
Note: When the connect command is issued, Kermit
checks the line for DSR and CTS signals and if it
does not find them it assumes the modem is not
connected. It then issues a message
Please connect modem
every few seconds until it finds the signal. It
may be, however, that your particular computer
does not detect the presence of these signals even
when the modem is connected. In this case we can
by pass the signal checking by hitting the SPACE
bar on the keyboard.
WAIT This command is similar to the CONNECT command ex-
cept in this case it waits for some to connect to
it. You may consider WAIT as answering, and the
CONNECT as originating.
SEND <local-filename> AS <remote-filename> RAW
Sends a file to the remote host system. Wild-card
characters are permitted to send multiple files.
Normally only the local filename is specified if
you do not want a different file name on the host
system.
QK-Kermit Commands 4
The RAW specification is only used if the remote
host does not have a Kermit, and we wish to send
the file as is (unpacketed).
For example:
SEND ABCD.FIL
SEND MYFILES.* AS YOURS.*
SEND A:WXYZ.DAT
Several single-character commands may be given
while a file transfer is in progress:
^Z Stop sending this file, and don't send any
further files.
^X (Control-X) Stop sending the current file and
go on to the next one, if any.
^E Like ^C, but send an Error packet to the re-
mote Kermit in an attempt to bring it back to
server or interactive command level.
^C Return to Kermit-MS command level immediately
without sending any kind of notification to
the remote system.
Control-X and Control-Z send the proper protocol
messages to the remote Kermit to bring it grace-
fully to the desired state. Control-C leaves the
remote Kermit in whatever state it happens to be
in. Control-E "aborts" any protocol that is tak-
ing place.
RECEIVE <remote-filename> as <local-filename> REPLACE
Gets a file from the remote host system and puts
it to the destination device (usually the disk).
If the local-filename is not specified then the
local filename is the same as the remote file name
with the remote filetype truncated to 3 char-
acters. If the local file name already exist the
local file name is modified with an '&'. If how-
ever the REPLACE option is specified then the old
file is replaced by the newly received file.
For example:
RECEIVE MYPROG.PASCAL
REC D:*.SCRIPT AS *.WS
Several single-character commands may be given
while a file transfer is in progress:
^Z Stop sending this file, and don't send any
further files.
^X (Control-X) Stop sending the current file and
go on to the next one, if any.
^E Like ^C, but send an Error packet to the re-
mote Kermit in an attempt to bring it back to
server or interactive command level.
QK-Kermit Commands 5
^C Return to Kermit-MS command level immediately
without sending any kind of notification to
the remote system.
Control-X and Control-Z send the proper protocol
messages to the remote Kermit to bring it grace-
fully to the desired state. Control-C leaves the
remote Kermit in whatever state it happens to be
in. Control-E "aborts" any protocol that is tak-
ing place.
SET <option settings>
Set the various operational parameters.
Baud Rate Baud rate may be any standard rate
from 300 to 9600 bps. Normal maxi-
mum baud rate for MS-DOS version is
9600, and 2400 for CP/M systems.
Parity May be Even, Odd, Mark, or None.
Use even parity for Queen's VM/CMS
system.
Use parity none for VAX systems.
Duplex May be Full or Half. Use Full du-
plex if the remote system echos the
characters, Half duplex if it does
not.
Protocol May be STANDARD, IBM-Xon, or
NoEcho. Use NoEcho for port class
VM (41), or VAX computers which do
not echo the packet characters.
use XON-XOFF for port class
VMLINE(40 or 32);
use STANDARD for computers which
echo packet characters.
Disk Drive Specify in the normal MS-DOS for-
mat, e.g. C: The default drive is
normally B:
Com Port May be either One or Two. Normally
Port One is used.
Destination May be either DISK or PRINTER.
Normally, received files go to the
disk, but they may be redirected to
the printer.
STATUS This command show the current setting of the above
option settings.
DIRECTORY display the local directory
ERASE erase a local file(s)
RENAME rename a local file(s)
TYPE display the contents of a local file
QK-Kermit Commands 6
The above four commands are similar to the MS-DOS
and CP/M commands. "Local" refers to the MS-DOS
or CP/M system which you are directly using.
MKDIR Makes a directory
CHDIR Changes the directory
RMDIR Removes a directory
(See MS-DOS Manual to see how to use the above 3 directory
commands)
RUN <file spec>
Run a program under Kermit. This is only available
on the MS-DOS system and it is not implemented in
the CP/M systems.
REMOTE <remote-commands>
Issue remote server request. Although QK-Kermit
is able to issue all the remote server request as
documented in the Kermit standards, refer to the
Kermit documentation for the particular remote
version being used for supported commands.
Used as a remote Kermit, QK-Kermit only responds
to remote SEND and RECEIVE commands.
LOG <logfile name>
This command causes all incoming data to be re-
corded in a file as specified by the logfile name.
To close the current logfile simply reissue the
LOG command. If no logfile name is specified, log-
ging is terminated. If a new logfile name is
specified then the old logfile is closed and a new
logfile is opened.
TAKE <takefilename>
This command enables a series of Kermit commands,
which are stored in a file, to be executed. For
example one might typically have to run a series
of programs which create data which one wishes to
transfer to the other computer.
RUN PROG1
SEND DATA1.FIL
RUN PROG2
SEND DATA2.FIL
etc.
CLEAR This command clears the input buffer for the IN-
PUT command after it has checked to see that the
Modem is connected.
QK-Kermit Commands 7
INPUT <seconds> <string>
This command will read the incoming characters
until it finds a match with the string specified
in the parameter. It will timeout after the num-
ber of seconds specified in the parameter.
OUTPUT <string>
This command will send the string specified in
the parameter to the serial port.
PAUSE <seconds>
This command will delay the execution for the
number of seconds specified in the parameter.
ECHO <string>
This command will display the string specified in
the parameter to the console screen.
DEFINE <define-word> <define-string>
This command enables one to define a word equal to
a string. This is useful in alleviating the
necessity of typing in long command strings or it
can be used to provide a synonyms for other com-
mands. For example:
DEFINE VM CONNECT 9600 EVEN FULL
NoEcho B: ONE DISK
DEFINE DELETE ERASE
DEFINE BYE QUIT ALL
If no define-string is specified, the specified
define-word is deleted. If DEFINE is issued with
no parameters, a list of all define-words cur-
rently in effect are displayed.
NOTE: DEFINES are initialized from a file named
KERMIT.DEF when Kermit is initiated. If any new
DEFINES are specified during the Kermit session,
then at Kermit termination Kermit will attempt to
write a new Kermit.DEF file. Note that the read-
ing and writing of this Kermit.DEF file is to the
default disk drive. As a result, for new defines
to be created, the default disk must have the
write-protect tab removed.
As distributed, the KERMIT.DEF file contains the
following define-words.
DEFINE-WORD DEFINE-STRING
VM Connect 9600 Even Full NoEcho B:
One Disk
VM1200 Connect 1200 Even Full NoEcho B:
One Disk
QK-Kermit Commands 8
PC Connect 9600 Even Full NoEcho B:
One Disk
AUDIO This is a toggle command which when it is toggled
on will provide an audiable sound with each kermit
prompt.
PARMS This is a toggle command which when it is toggled
on will display the setting of the packet parmeter
when a STATUS command is issued.
QUIT <quit-option>
terminate the local and/or remote Kermit.
QUIT LOCAL or QUIT
will terminate QK-Kermit.
QUIT REMOTE will terminate the remote Kermit.
QUIT DISCON will terminate the remote Kermit
and log off the remote host com-
puter.
QUIT ALL will terminate the remote Kermit
and log off the remote host com-
puter and then terminates the local
QK-Kermit.
NOTE: "filespec" refers to a file specification of the form
d:name.ext
where 'd' is the disk drive designation, 'name' is the first
level file name (the filename for CP/M, MS-DOS, and VM/CMS
systems), and 'ext' is the file extension (a 3 character
extension for CP/M or MS-DOS systems, the 8 character
filetype for VM/CMS systems). If 'd:' is not specified, the
default disk drive is assumed.
APL CHARACTER SET
_________________
For PC's equipped with the APL character ROM, one may use
the APL character set. To invoke APL character set send an
ESC "{" sequence. Use ESC "}" to return to normal Character
set.
QK-Kermit Commands 9
INSTALLING QK-KERMIT
____________________
QK-Kermit may be obtained on diskette from the Micro Infor-
mation Centre in Dupuis Hall.
If you have the distribution diskette, simply copy the fol-
lowing files to your working system disk:
KERMIT.EXE
KEYTABLE.DAT
KERMIT.DEF
RECOMPILING QK-KERMIT 3.0
_________________________
Compiling QK-Kermit 3.0 requires Turbo Pascal version 4.0.
QK-Kermit 3.0 consist of a main program KERMIT.PAS and 14
separately compiled units which are as follows:
1. DRIVER.PAS
2. FONTS.PAS
3. KGLOBALS.PAS
4. MODEMPRO.PAS
5. SYSFUNC.PAS
6. DEFWORDS.PAS
7. LOCAL.PAS
8. PACKETS.PAS
9. SENDRECV.PAS
10. MISCCOMM.PAS
11. REMOTEU.PAS
12. TEK4010.PAS
13. VT100.PAS
14. SETSHOW.PAS
The first 2 unit DRIVER and FONTS are from Turbo
Pascal 4.0 but are supplied as source so they both need to
be compiled into a TPU file. Before you compile the
DRIVER.PAS file you must convert the BGI files into OBJ
files, and similary before compiling the FONTS.PAS file you
must convert the CHR files into OBJ files. See the
RegisterBGIdriver and RegisterBGIfonts function in Chapter
27 of the Turbo Pascal 4.0 which describs how to compile
these two units.
Specify KERMIT.PAS as the primary file in the COMPILER menu.
And in the OPTIONS - COMPILER - MEMORY SIZE menus specify
the stack size as 32768 and the heap limit to 131072. Use
the MAKE option in the COMPILE menu to compile the kermit
into a KERMIT.EXE file.
Installing QK-Kermit 10
If you are only using 5.25 inch floppies you will find that
the source files and the compiled TPU files will not fit on
the same disk, so you will have to compile the file
seperately and move the files you need onto a floppy as you
need them.
Installing QK-Kermit 11
USING QK-KERMIT WITH KERMIT-CMS
_______________________________
The following is a suggested approach to do file transfer
between a micro and the Queen's mainframe computer.
Basic procedure:
1. Place the system disk created as above in drive A and
your data disk in drive B;
2. Type in "KERMIT" to start up QK-Kermit.
3. Type in "VM" which will configure Kermit at 9600 bps for
the VM/CMS system with files defaulting to the B: drive
and place QK-Kermit into terminal mode. The VM command
is a define-word provided in the distributed KERMIT.DEF
file.
4. Turn on the modem, and logon to the VM/CMS system as
normal. Use terminal type IBMPC.
5. After logging on, type "Kermit" on the VM/CMS system to
invoke CMS-Kermit and issue the SERVER command. This
command will automatically return you to QK-Kermit on
the micro.
6. Issue SEND or RECEIVE commands to send or get the files
desired.
7. You may also wish to issue a DIRECTORY command to see
what files you have on your floppy disk, or issue the
REMOTE DIRECTORY command to list files on the CMS sys-
tem.
8. If required, one can move back to terminal mode by issu-
ing a "Connect" command to QK-Kermit. When returning to
back to terminal mode from QK-Kermit command mode, with
Kermit-CMS still in SERVER mode, the first command you
issue is not displayed. Once the first command is exe-
cuted, Kermit-CMS returns to normal mode and all com-
mands are displayed.
9. When you are finished you can issue a QUIT ALL command
to logoff from the VM/CMS system and terminate your re-
mote Kermit.
Using QK-Kermit with Kermit-CMS 12
SOME USEFUL HINTS:
__________________
1. Create a few DEFINE words for frequently used Kermit
commands. This will allow lengthy commands to be issued
with a single word. The following are some suggestions.
DEFINE VM Connect 9600 Even Full NoEcho B:
DEFINE VMLINE Connect 9600 Even Half IBM-Xon B:
DEFINE LIST Remote Directory
DEFINE PUSH Run A:Command.Com
DEFINE BYE Set A: ; Quit All
For example, using the VM define above, you can con-
figure Kermit for the VM/CMS system and be put into
"connect" mode directly by simply issuing the command
KERMIT VM
2. The Kermit protocol is designed to recover automatically
from minor telecommunications line errors. However,
there are problems which may result in the file transfer
being "hung". If Kermit hangs up in the middle of file
transfer it may be necessary to issue several carriage
returns before one can get back the remote Kermit
prompt. It may occasionally be necessary to restart the
remote and/or local Kermit after this.
3. In the above section describing the use of QK-Kermit
with Kermit-CMS we basically issue QK-Kermit commands as
opposed to Kermit-CMS commands. If desired, one can
interact with Kermit-CMS by issuing SEND and RECEIVE
commands from Kermit-CMS instead of from QK-Kermit.
4. QK-Kermit will act as a server Kermit whenever QK-Kermit
is in the 'Connected ' mode; i.e. QK-Kermit does not re-
quire a SERVER command as does Kermit-CMS. QK-Kermit
will automatically assume there is a server request
whenever it see a SOH character.
5. QK-Kermit 3.0 has the ability to send and receive long
packets. However the default packet size is set to 94
byte packets. In order to receive long packets one must
specify a large packetsize. To set a large packetsize
one must first toggle the PARMS toggle on, then issue
the SET PACKETSIZE command. In order for QK-Kermit to
send long packets, the other Kermit must inform
QK-Kermit as to the size of packet it can receive. The
maximum length of a packet is 9024 bytes.
Some useful hints: 13
KERMIT-CMS COMMANDS
___________________
Although Kermit-CMS is documented in a separate HELP file
(type HELP KERMIT), the following summary of Kermit-CMS re-
mote server commands is included for the convenience of the
the QK-Kermit user. Although QK-Kermit is able to issue all
the remote server request as documented in the Kermit stand-
ards, only some have been implemented on the Kermit-CMS
system here at Queen's. Some of the useful commands are
listed below.
REMOTE ---- DIRECTORY
-----------------------------------------------------|
| |-- <remote-filespec> --|
|-- TYPE <remote-filespec>
----------------------------------------|
|-- ERASE <remote-filespec>
---------------------------------------|
|-- RENAME <remote-filespec>
--------------------------------------|
|-- FINISH
-------------------------------------------------------|
|-- LOGOUT
--------------------------------------------------------|
|-- HELP
----------------------------------------------------------|
where
DIRECTORY displays the VM/CMS directory
TYPE displays the contents of a VM/CMS file
ERASE erases a VM/CMS file
RENAME renames a VM/CMS file. You will be prompted
for the new filespec.
FINISH terminates Kermit-CMS
LOGOUT terminates the remote Kermit and log off
VM/CMS
HELP displays help information
Kermit-CMS commands 14
GENERAL COMMENTS
________________
QK-Kermit is written in Turbo Pascal so it is relatively
easy to understand and modify if extensions are desired.
The source code is distributed with the diskette.
VERSION 2.5 IMPROVMENTS AND ADDITIONS
_____________________________________
1. Automatic server mode. QK-Kermit will automatically en-
ter into server mode upon receipt of a SOH character.
This feature was inadvertently disabled in the 2.4 ver-
sion.
2. Insert Mode Indicator - When in insert mode the cursor
changes from a thin line to a fat block.
3. Sub directory commands - MKDIR, CHDIR and RMDIR were
added. Also Kermit allows the use of subdirectories in
the file specification.
4. Audio toggle - Kermit will now run quietly without any
audiable promp unless the audio toggle is turned on.
5. Packet parameters can now be specified at run time.
Note however that QKKERMIT will still automatically ad-
just the packet parameters to match the other Kermit it
connects with.
6. APL character set can be selected by entering a ESC {
character.
7. Fix bug-related to packet parameters when running with
VAX Kermit.
VERSION 2.6 IMPROVMENTS AND ADDITIONS
_____________________________________
1. VT100 simulation upgraded. Many of the VT100 features
that were missing in the 2.5 version have now been
added.
2. Fixed a bug which caused keyboard input to interfer with
modem data when transferring data at lower baud rates.
3. Implemented overlays for the QKTEK10 version of
QKKERMIT.
General Comments 15
4. Printer option. Enable QKKERMIT to accept an escape se-
quence which will direct the output to the printer.
i.e. one can now use the TPRINT command in CMS to direct
output to printer.
5. Enable the sending of commands for the remote Kermit the
execute. Along with changes to KERMIT-CMS this will al-
low the TRANSLATION option to be turned on and off. By
specifying an appropriate define for BINARY one can now
transmit a binary file as follows:
BINARY SEND filename.filetype or
BINARY RECEIVE filename filetype
Prior to the implementation of this feature one had to
connect to KERMIT-CMS and turn the translation off and
then go back into server mode before transferring the
file.
6. Enable the downline loading of DATE and TIME from the
host system. Two define words DATE and TIME will cause
this information to be loaded.
7. Insert Mode indicator bug (Fat cursor). Enable the Fat
cursor to appear on a variety of video boards.
8. Fix bug in RECVFILE. The disk specification in the re-
mote filename was incorrectly used in the local file
name.
VERSION 2.7 IMPROVMENTS AND ADDITIONS
_____________________________________
1. Fix miscellaneous VT100 emulation bugs.
2. Fix system calls for MS-DOS version 3.
3. Fix repeat count bug for control character.
4. Buffered disk IO for MS-DOS version.
5. Distinguish between send and receive packet parameters.
6. TEK4010 Emulation which does not require the use of
overlays or the use of the Graphic Toolbox.
General Comments 16
VERSION 2.8 IMPROVMENTS AND ADDITIONS
_____________________________________
1. Put the Tek4010 emulation code into a separate file and
create different include files for CGA, EGA and Hercules
cards.
2. Add graphics input (GIN) to the Tek4010 emulation.
3. Fix Sendfile procedure to enable it to send file from a
non-default drive.
4. Add fix and changes provided by G.W.Selke - change
PutInitPacket, closefile in abort state,range checking
for parms, MkDir/RmDir/ChDir error handling,
displaydiskstatus for non default drives, break handl-
ing, upgrade directory display.
5. Add DIR option /P to allow user to see the filesize,
date and time for each file.
VERSION 3.0 IMPROVMENTS AND ADDITIONS
_____________________________________
1. Version 3.0 takes advantage of the modularity feature of
Turbo Pascal 4.0 which enables QK-Kermit to be easily
modified and upgraded without having to recompile the
entire source code each time.
2. Version 3.0 takes advantage of the improved graphics
features of Turbo Pascal 4.0. This make the source code
for the TEK4010 portion of the code simplier and faster.
It is no longer necessary to have a separate version for
each of the various graphics card adapters. This single
version should handle the following graphics cards :
CGA,EGA,Hercules,MCGA,VGA,AT&T and PC3270.
3. Long packet size . One can now specify packet sizes up
to 9024 bytes. Note however the maximum packet size
used is also dependent on the other Kermit to which you
are transfer data with.
4. New commands add to allow the creation of "logon script
files". The new commands are CLEAR,INPUT,OUTPUT,PAUSE
and ECHO. These command can be placed into a file and
issued using the TAKE command.
General Comments 17
VERSION 3.1 IMPROVMENTS AND ADDITIONS
_____________________________________
1. Version 3.1 implements a subset of the TEK4100 escape
sequences to enable the use of color graphics output.
Most of the escape sequences produced by SASGRAPH and
DI3000 from our IBM mainframe are handled.
2. Minor fixes to improve receive file speed, to correct
directory prefix in sendfile, to handle parity NONE, and
to check for Monochrome monitor.
General Comments 18
KEYTABLE SPECIFICATIONS
_______________________
The following describs the layout of the KEYTABLE.DAT file
used by QK-KERMIT to assign the keyboard.
Each record in the file corresponds to the key position.
e.g. the escape key is the first keyposition and the data is
located in record 1.
Only columns 1 and 2 , or columns 4-5 and 6-7 contain useful
data, the rest of the record is treated as comments only.
If all the data for a key is blank then the value of the key
is send unchanged.
Column 1 and 2 may contain one or two ascii characters. If
column 1 contains a non blank ascii character then and
ESCape character is sent followed by the characters found in
columns 1 and 2. If column 1 is blank and column 2 is non
blank then only the character in column 2 is sent with no
preceding ESCape character. Thus we can specify for each
key the following possibilities:
column1 column2 Sequence sent
blank blank char of key
char1 blank ESC - char1
char1 char2 ESC - char1 - char2
blank char2 char2
Since this file was to be created by a text editor it was
impossible to place control characters in columns 1 and 2,
we allow the equivalent data character specification in hex.
So that columns 4-5 is the hex equivalence of what would be
placed in column1 and columns 6-7 the equiv- alence of col-
umn 2. e.g. If we wish to send a DEL (7F), we would place a
7F in column 6-7.
Note that if we wish to specify data in column 4-5 and 6-7
then columns 1 and 2 must be blank.
KEYTABLE Specifications 19
APPENDIX A.
____________
Code assignments for Keys specified by KEYTABLE.DAT.
KEY ASCII HEX
------- ------- ------
backspace BS 08
tab HT 09
Return CR 0D
F1 ESC 1 1B 31
F2 ESC 2 1B 32
F3 ESC 3 1B 33
F4 ESC 4 1B 34
F5 ESC 5 1B 35
F6 ESC 6 1B 36
F7 ESC 7 1B 37
F8 ESC 8 1B 38
F9 ESC 9 1B 39
F10 ESC 0 1B 30
NumLock ESC - 1B 2D
ScrollLock ESC = 1B 3D
Shift F1 ESC Q 1B 51
Shift F2 ESC W 1B 57
Shift F3 ESC E 1B 45
Shift F4 ESC R 1B 52
Shift F5 ESC T 1B 54
Shift F6 ESC Y 1B 59
Shift F7 ESC U 1B 55
Shift F8 ESC I 1B 49
Shift F9 ESC O 1B 4F
Shift F10 ESC P 1B 50
Shift NumLock ESC [ 1B 5B
Shift ScrollLock ESC \ 1B 5C
KeyPad 7 home EM 19
KeyPad 8 up arrow US 1F
KeyPad 9 PgUp ESC 7 1B 37
KeyPad - minus VT 0B
KeyPad 4 left arrow BS 08
KeyPad 5 ESC 1B
KeyPad 6 right arrow FS 1C
KeyPad + plus FF 0C
KeyPad 1 end SI 0F
KeyPad 2 down arrow LF 0A
KeyPad 3 PgDn ESC 8 1B 38
KeyPad 0 Ins GS 1D
KeyPad . Del DEL 7F
Cntl \ Escape back to Kermit
Cntl ] Send a BREAK
Appendix A. 20
Alt F9 Escape back to Kermit
Alt F10 Send a BREAK
Appendix A. 21