1 Kermit

 Kermit is a file transfer protocol.  It allows the transfer of  files
 over  terminal lines from a remote Kermit program to the local Kermit
 program.

 Kermit-32 can be run from SYS$SYSTEM:.  It will then prompt for input
 from SYS$COMMAND:.

 Kermit-32 can be run in either local  or  remote  modes.   In  remote
 mode,  transfers  take  place  over  the  controlling  terminal line.
 Usually, Kermit-32 is used in remote mode as a "server", meaning that
 it  will  accept  commands  from  the  other  Kermit.  In local mode,
 Kermit-32 will perform transfers over a terminal line other than  the
 controlling  terminal.  In local mode, Kermit-32 is capable of giving
 commands to a "server" Kermit.  Note that in order to  use  Kermit-32
 in  local  mode, the protection code for the terminal to be used must
 allow the user access.  This is set by the system manager.

 When Kermit-32 starts up, it will determine a default  terminal  line
 to  be  used  for  file  transfers  (and  the CONNECT command) by the
 following process.  If there  is  a  logical  name  "KER$COMM"  which
 translates  to a terminal name, the default transfer terminal will be
 that terminal.  Otherwise, Kermit-32 checks "SYS$INPUT", "SYS$OUTPUT"
 and   "SYS$COMMAND",  (in  that  order),  and  the  first  one  which
 translates to a terminal name is used as the  default.   If  none  of
 these  are  terminals, Kermit-32 will use the terminal which controls
 the job which owns the process.  If  the  process  does  not  have  a
 controlling  terminal,  or  if the terminal which was found cannot be
 allocated, Kermit-32 will not have a default terminal,  and  the  SET
 LINE  command  must  be  used  before  any commands which require the
 transfer terminal (SEND, GET,  etc.).   Kermit-32  will  type  out  a
 message indicating the default transfer terminal when it is started.
2 ASCII_Set
 Oct Char     Oct Char     Oct Char     Oct Char
 --- ----     --- ----     --- ----     --- ----
   0 NUL       40 SP       100  @       140  `  
   1 SOH       41  !       101  A       141  a  
   2 STX       42  "       102  B       142  b  
   3 ETX       43  #       103  C       143  c  
   4 EOT       44  $       104  D       144  d  
   5 ENQ       45  %       105  E       145  e  
   6 ACK       46  &       106  F       146  f  
   7 BEL       47  '       107  G       147  g  
  10 BS        50  (       110  H       150  h  
  11 HT        51  )       111  I       151  i  
  12 LF        52  *       112  J       152  j  
  13 VT        53  +       113  K       153  k  
  14 FF        54  ,       114  L       154  l  
  15 CR        55  -       115  M       155  m  
  16 SO        56  .       116  N       156  n  
  17 SI        57  /       117  O       157  o  
  20 DLE       60  0       120  P       160  p  
  21 DC1       61  1       121  Q       161  q  
  22 DC2       62  2       122  R       162  r  
  23 DC3       63  3       123  S       163  s  
  24 DC4       64  4       124  T       164  t  
  25 NAK       65  5       125  U       165  u  
  26 SYN       66  6       126  V       166  v  
  27 ETB       67  7       127  W       167  w  
  30 CAN       70  8       130  X       170  x  
  31 EM        71  9       131  Y       171  y  
  32 SUB       72  :       132  Z       172  z  
  33 ESC       73  ;       133  [       173  {  
  34 FS        74  <       134  \       174  |  
  35 GS        75  =       135  ]       175  }  
  36 RS        76  >       136  ^       176  ~  
  37 US        77  ?       137  _       177 DEL 
2 BYE

 This command will cause Kermit-32 (when in local mode)  to  tell  the
 other  Kermit  (which  should  be in server mode) to exit from Kermit
 and, if applicable, terminate  its  job  (or  process,  etc.).   When
 Kermit-32  receives  the  acknowledgement that this is being done, it
 will exit to VAX/VMS.

           Kermit-32>BYE
2 CONNECT

 The CONNECT command will  allow  you  to  connect  in  as  a  virtual
 terminal over the line that was specified by the SET LINE command, or
 to the terminal line specified in the  command.   The  terminal  line
 must  be  one  which  is accessible to the users process.  This means
 that the applicable protection code for the terminal must  have  been
 set  to allow your process to access it (done by the system manager).
 If a session log file was previously specified, a new version of  the
 file  will be created, and all type-out logged in the file.  The file
 will  be  closed  when  the  command  is  completed  (by  use  of  an
 escape-character "C" command).  The format of the CONNECT command is:

           Kermit-32>CONNECT
      or
           Kermit-32>CONNECT terminal-name

 where 'terminal-name' is the terminal line name to be used.
3 Escape_Character

 This character is  used  to  issue  a  limited  set  of  commands  to
 Kermit-32  after  using  the  CONNECT  command.  Its default value is
 CTRL-] (35 octal, ASCII GS) and can be changed  via  the  SET  ESCAPE
 command.   It  is  usually  a  good  idea  to  set  this character to
 something which is not used (or at least not used very much)  on  the
 system  to which Kermit-32 is CONNECTing.  The command that is issued
 is determined by  the  character  that  is  typed  after  the  escape
 character.   The  following  characters  are  recognized by Kermit-32
 after the escape character:

           C - Return to VAX/VMS Kermit-32
           Q - Suspend logging to session log file (if any)
           R - Resume logging to session log file (if any)
           S - Show status
           0 - Send a null
           ?  - Type this text
      CTRL-] - Send escape character

 Any other character will cause Kermit-32 to  ring  the  bell  at  the
 local   terminal.   The  escape-character  S  (show  status)  command
 displays the terminal line being used, the escape character  and  the
 settings of local echo, parity and session logging.
2 Control_Chars

 During a file transfer (GET, RECEIVE or SEND commands) with Kermit-32
 in  local mode the following control characters can be used to affect
 the transfer in progress:

           CTRL-A - Print a brief status report
           CTRL-C - Abort the protocol
           CTRL-D - Turn logging to the debugging log file on/off
           CTRL-M - (or RETURN) Force a protocol timeout
           CTRL-X - Abort the file currently being transfered
           CTRL-Z - Abort the file group currently being transfered

 The CTRL-A status report displays the protocol state and  the  number
 of NAKs sent and received.
2 EXIT

 The EXIT command will cause Kermit-32 to  return  to  command  level.
 This  command  is  the  same as the QUIT command.  An example of this
 command is:

           Kermit-32>EXIT
2 FINISH

 This command will cause Kermit-32 (when in local mode)  to  tell  the
 other  Kermit  (which  should be in server mode) to exit from Kermit.
 After  receiving  the  acknowledgement  that  this  is  being   done,
 Kermit-32 will prompt for another command.

           Kermit-32>FINISH
2 GET

 The GET command is used to have a local mode Kermit-32 request a file
 from  a  remote  Kermit server.  Kermit-32 must be running as a local
 Kermit (i.e., a SET LINE command must  have  been  done).   Kermit-32
 will  then  request the other Kermit (which must be running in server
 mode) to transfer the specified file (or set of files) to  Kermit-32.
 The  file  specification must be in the format of the system on which
 the server Kermit is running.  The format of the command is:

           Kermit-32>GET file-spec

 Where 'file-spec' is any valid file specification on  the  system  on
 which the server Kermit is running.
2 HELP

 Typing HELP alone  prints  a  brief  summary  of  Kermit-32  and  its
 commands.  You can also type

           Kermit-32>HELP topic [subtopic]...

 for any Kermit-32 command, e.g.  "help send" or "help set parity"  to
 get more detailed information about a specific command.
2 LOCAL

 This command allows the user of Kermit-32 to perform various  actions
 on  the  user's  system.   These  commands  provide  for  listing the
 contents of a directory, deleting files, typing files, displaying the
 amount of disk space used, etc.  Many of these commands are performed
 by spawning a subprocess to execute the  corresponding  DCL  command;
 therefore,  the  standard  parameters and qualifiers which DCL allows
 may be used.

           Kermit-32>LOCAL keyword arguments

 Where 'keyword' is the name of the command, and 'arguments'  are  the
 optional arguments for the command.
3 COPY

 This causes Kermit-32 to make a copy of  the  specified  file.   This
 command  uses  the  standard DCL COPY command.  Any options valid for
 DCL's COPY command may be used.

           Kermit-32>LOCAL COPY old-local-file
           New file:  new-local-file

 Where 'old-local-file' is the name of the file you wish to copy,  and
 'new-local-file' is the name for the copy.
3 CWD

 This command (short for "Change Working Directory") causes  Kermit-32
 to  change  the  default  directory that will be used for files whose
 specification does not include the directory  information.   This  is
 similar to the DCL SET DEFAULT command.  If no device or directory is
 given, the default device and directory is set back to that which was
 being used when Kermit-32 was started.

           Kermit-32>LOCAL CWD local-directory-spec
      or
           Kermit-32>LOCAL CWD

 Where 'local-directory-spec' is the device and/or  directory  portion
 of  a  standard  VAX/VMS  file specification.  It may include logical
 names, but not wild-cards.
3 DELETE

 This causes Kermit-32 to delete the specified file(s).  This uses the
 standard DCL DELETE command.

           Kermit-32>LOCAL DELETE file-spec

 Where 'file-spec' is a valid VAX/VMS file specification.
3 DIRECTORY

 This causes Kermit-32 to display a directory listing.  This uses  the
 standard DCL DIRECTORY command.

           Kermit-32>LOCAL DIRECTORY file-spec
      or
           Kermit-32>LOCAL DIRECTORY

 Where 'file-spec' is a valid VAX/VMS file specification.
3 DISK_USAGE

 This causes Kermit-32 to display the amount of disk  space  used  and
 available  for  the  given  UIC (or the user's UIC if none is given).
 This uses the standard DCL SHOW QUOTA command.

           Kermit-32>LOCAL DISK_USAGE uic
      or
           Kermit-32>LOCAL DISK_USAGE

 Where 'uic' is a UIC specification (in square brackets).  LOCAL SPACE
 is a synonym for the LOCAL DISK_USAGE command.
3 HELP

 This causes Kermit-32 to display the help message which it  sends  as
 the  reply  when  it receives a "REMOTE HELP" command in server mode.
 This describes the REMOTE commands which Kermit-32 implements.

           Kermit-32>LOCAL HELP
3 HOST

 This command requests Kermit-32 to perform the specified  command  as
 if  it  were  typed  by  the  user on a terminal.  Any results of the
 command will be printed on  the  user's  terminal.   Note  that  this
 should only be used for commands which will not require any more user
 input, since there will be no way for the user to interact  with  the
 subprocess to supply more input.  This works by spawning a subprocess
 (much like the DCL SPAWN command) to perform the command.

           Kermit-32>LOCAL HOST command

 Where 'command' is any valid DCL command.
3 RENAME

 This command causes Kermit-32 to change the name  of  a  file.   This
 uses the standard DCL RENAME command.

           Kermit-32>LOCAL RENAME old-local-file
           New file:  new-local-file

 Where 'old-local-file' is the name of the file  to  be  renamed,  and
 'new-local-file' is the new name for the file.
3 SEND_MESSAGE

 This command causes Kermit-32 to send a short (one line)  message  to
 the  given  terminal.   Because this uses the DCL REPLY command, OPER
 privilege is needed.

           Kermit-32>LOCAL SEND_MESSAGE terminal-name
           Message:  message-text

 Where  'terminal-name'  is  a  valid  name  for   a   terminal,   and
 'message-text' is the message to be sent.
3 TYPE

 This causes  Kermit-32  to  display  the  specified  file(s)  on  the
 terminal.

           Kermit-32>LOCAL TYPE file-spec

 Where 'file-spec' is a valid VAX/VMS file specification.
3 WHO

 This displays the output of a DCL SHOW SYSTEM command.

           Kermit-32>LOCAL WHO
2 LOG

 The LOG command allows the user to specify the file names to be  used
 for  the  various  log files Kermit-32 is capable of creating.  A LOG
 command without a file specification will cause no log file  of  that
 type to be created.

           Kermit-32>LOG log-type file-spec
      or
           Kermit-32>LOG log-type

 Where 'log-type' is DEBUG, SESSION, or TRANSACTION,  and  'file-spec'
 is  the  file  specification  to  use  for that type of log file.  If
 file-spec does not  specify  a  file-type  Kermit-32  will  supply  a
 default of .LOG.  If 'file-spec' is not present, that type of logging
 is disabled.
3 DEBUG
