 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

