Home » CEEFAX disks » telesoftware2.adl » INTRO

INTRO

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » CEEFAX disks » telesoftware2.adl
Filename: INTRO
Read OK:
File size: 47DF bytes
Load address: 0000
Exec address: 0000
File contents



                           A BRIEF OVERVIEW OF KERMIT
                           ==========================


  This guide  provides a brief description of the Kermit file transfer system:
  it explains what Kermit is,  what it does, and how it does it.  The document
  has  been  adapted from a  user  manual  written  by  Dave Morriss  and  Joe
  Angelosanto of Heriot-Watt University, Edinburgh, Scotland.





  1. INTRODUCTION


  KERMIT  is the name of  a  file  transfer  protocol  developed  at  Columbia
  University Center for Computing Activities  (CUCCA) in New York.  The object
  of such a protocol  is  to  transfer files between two computers with little
  regard  to  the  type of machines  engaging  in  the  transfer.  KERMIT  was
  designed to allow  the transfer of files between mainframe computers and the
  numerous microcomputers that are  to  be  found today in Universities and in
  the commercial world.  The link between  the  two  machines  need  only be a
  standard  asynchronous  communications  line,  of  the  kind that is used to
  attach a terminal to a central computer.

  CUCCA have published full information about KERMIT (reference 1), but retain
  the copyright.  Anyone may implement  KERMIT  on their own machine, but this
  must not be done for  commercial  purposes.   Many  people  have implemented
  versions  of  KERMIT  on  many  different  machines;  micro-computer,  mini-
  computer and mainframe versions have been written.




  2. BASIC PRINCIPLES


  The components required to transfer a  file  between  two  computers,  using
  KERMIT,  are the two computers,  each  with their own KERMIT program,  and a
  data communications line joining them both together.

  One of the KERMIT programs  will  run  on the local machine under the direct
  control of the user.  This machine will normally be a microcomputer, and its
  KERMIT program will have some form of terminal emulation capability to allow
  it to log-on to, and interact with the other machine - the remote computer.

  The remote machine,  usually a  mainframe  or mini,  will also have a KERMIT
  program,  to which you can type commands  from your micro using its terminal
  emulation facility.

  The communication link between the  two  computers  can  be more or less any
  asynchronous  (terminal)  line.  Kermit requires that a CONTROL-A  character
  can get through the communications equipment,  so you may need to adjust the
  characteristics of the line to allow this.


  An Introduction to Kermit                                             Page 1





  A typical KERMIT session would consist of the following steps:

  1.  The local (micro) KERMIT program  is  entered  in  the same way that any
      other program is initiated.

  2.  Any required local configuration is carried out, for example setting the
      line speed for the terminal emulator.

  3.  The terminal emulator is entered, usually with the command CONNECT.

  4.  Using the emulator,  the remote computer is accessed in an identical way
      to the use of a normal terminal and an interactive session is begun.

  5.  The KERMIT program on the remote  host  computer  is  entered,  and  any
      necessary configuration commands issued.

  6.  A file transfer command is issued  to  the  remote KERMIT,  depending on
      whether you intend to send a file to the  remote  computer (in this case
      you tell the remote KERMIT to RECEIVE), or ask it to send a file to your
      local computer (in which case you tell the remote KERMIT to SEND).

  7.  The terminal emulator on the  local  KERMIT  is  then exited by use of a
      'local  escape'   character  sequence.  This puts the local program back
      into the command mode originally entered in step 1.

  8.  A local file transfer command  is  issued.  This will be SEND or RECEIVE
      depending  on the direction the transfer is to  take.  (Naturally,  this
      command will be the opposite of that issued to the remote machine.)

  9.  The file transfer will proceed  under  the  control  of  the  two KERMIT
      programs  until  the  file  has  been completely transferred (or a fatal
      error has occurred).  The local KERMIT will then return to command mode.

  10. Using the terminal emulator part  of  the  local  KERMIT,  the  host  is
      accessed, and the remote KERMIT closed down.  The interactive session is
      then ended and the  local  KERMIT terminated;  the KERMIT session is now
      complete.

  If there are several files  to  be  transferred  between  the local and host
  computers steps 6 to 9 above will have to be repeated.

  Every time a control command is to be issued to the remote KERMIT, the local
  KERMIT must be switched into its terminal emulation mode. To streamline this
  process,  some remote KERMITs can  be  run  in SERVER mode.  A KERMIT server
  will accept commands sent by the local KERMIT across the communications link
  without the local KERMIT having to switch to  terminal emulation mode.  This
  means  that the remote KERMIT can be controlled by  commands  given  to  the
  local KERMIT.

  Not all KERMIT programs offer the same facilities, so the appropriate manual
  should always be checked to  find out what facilities the KERMITs being used
  have.  It is no good, for example,  putting a remote KERMIT into server mode
  if the local KERMIT is not capable of controlling a KERMIT server.







  An Introduction to Kermit                                             Page 2





  3. AN OUTLINE OF THE PROTOCOL


  When information is being transferred  between KERMIT programs it is sent in
  blocks or packets.  A KERMIT packet consists  of  a  sequence  of characters
  comprising  a  header,  followed  by the actual data being communicated, and
  terminated with a trailer.  The header contains  fields  which  define  such
  things as the packet length and packet type.  The trailer contains  a  check
  sequence  which  is  used  by  the receiving KERMIT to determine whether the
  contents of the packet have arrived intact. Further details of the structure
  of a KERMIT packet can be found in Reference 1.

  As each  packet is received  from  the  sending KERMIT it is checked, and if
  correct  the  receiver  sends an  acknowledgment (ACK) packet  to  tell  the
  sender that the packet has been received and that it was intact. Otherwise a
  negative acknowledgment (NAK) packet  is   sent to indicate  a  transmission
  failure, and this prompts the sender to re-transmit the packet.

  The rest of this  section  describes  how  the  KERMITs  go about the actual
  transmission of data. This information may be useful for simple debugging. A
  more detailed look at the structure of a packet is given in appendix A.


  (a) Send-Receive Environment


  When a KERMIT file transmission  is  started,  the  local and remote KERMITs
  exchange initialisation packets.   The packet that starts a file transfer is
  called a 'send-init' packet.  The initialisation packets contain information
  about the facilities that each  KERMIT supports.  The initiator will 'offer'
  its own facilities to the other KERMIT which can either agree, or reply with
  an initialisation packet containing some restrictions.  This  negotiation is
  used   to  determine  such  details  as  the  maximum   packet   size,   the
  start-of-packet  and  end-of-packet  marker  characters,  the  type of check
  sequence, and so forth.

  Once both ends are in agreement  about  the  parameters of the transfer, the
  requested  file  or  files can be transferred (multiple file  transfers  are
  catered for by the protocol). Before any data is sent over the link the name
  of the file must be established.   A file header packet defines the filename
  (and optionally some of the other attributes of the file).   The filename is
  generated by the sender,  often using its own filename syntax.  This name is
  used  by the receiver to construct a filename according to  its  own  syntax
  rules, though  the  KERMIT  user  can  usually  define  the  target filename
  explicitly.  Various  strategies may be used by the receiver to  handle  the
  situation where the  destination  file already exists - data may be appended
  to the file,  it may  over-write the file, or the filename may be altered so
  as to avoid the clash.


  Once the file header packet has been accepted,  the data transfer can begin.
  This  will  proceed  one packet at a  time,  each  packet  being  positively
  acknowledged if received intact,  or negatively acknowledged if corrupted in
  some way.  Multiple consecutive failures will  usually  cause  the  transfer
  to  be  aborted  and an  error  packet to be transmitted,  on the assumption
  that the communications medium is unreliable.  Packets may be re-transmitted
  if acknowledgment is not received within a time limit - a condition known as
  a time-out.  If everything  progresses well,  the transfer will end when the


  An Introduction to Kermit                                             Page 3





  file has been sent.  The  end  of  the  file  is signalled by an end-of-file
  packet  and,  if  there  are no more files to send,  an  end-of-transmission
  packet is sent.  Most KERMIT implementations will allow a series of files to
  be sent in a single transaction,  and the two types of end packet are needed
  for this purpose.


  (b) Server Mode


  The order and type of  packets  sent  during  a  KERMIT  session is slightly
  altered  if the remote KERMIT has been put into server mode.  For  instance,
  the local KERMIT might want to send a command to the remote KERMIT, possibly
  to change some parameter.  This would be done by sending a command packet to
  the server.  However,  the  local and  remote KERMITs may not have exchanged
  information such as packet length, end-of-packet character,  check sequence,
  etc.  (and  even  if  they  had,  some  parameters   might   change  between
  transactions).  To  overcome this potential problem, an init-info  packet is
  sent to the  server  prior  to  most  transactions.  This  type of packet is
  exactly like the initialisation packet and is acknowledged in the  same way,
  but does not cause the server to think that it is about to be sent a file.

  When a local KERMIT,  which  is in  control  of a  remote KERMIT,  wishes to
  receive  a  file (usually achieved by issuing the  GET  command to the local
  KERMIT) it sends an init-info packet then,  once that has been acknowledged,
  an R type packet.  The  R  packet  will indicate to the server that it is to
  send a file,  the name of which will be in the data field of the packet. The
  remote KERMIT will respond to this request in one of two ways.  If it cannot
  find or access the requested file, it will send an  error  packet which will
  contain  an  appropriate  message, otherwise, if all is well, it will send a
  send-init packet and the transfer will continue as in (a) above.

  For the case when the  local  KERMIT  wants  to  SEND a file to a server the
  transfer proceeds as in (a) above without the need for the init-info packet.

  Once a remote KERMIT is  in  server  mode  it  will  only receive packets as
  input, so, in order to reconnect to the remote computer to  end the session,
  it will be necessary to shut down the server first.   This is done by typing
  the  FINISH command to the local KERMIT, which forces a command packet to be
  sent to the remote KERMIT telling it to shut down the server.




















  An Introduction to Kermit                                             Page 4





  APPENDIX A: A CLOSER LOOK AT PACKETS


  This appendix has been included  in order to show what packets actually look
  like, and to offer some sort of starting  point for debugging.  Most KERMITs
  offer  some  sort of debug facility, the output from  which  will  be  in  a
  similar form to  the  example  shown  below.  Reference  1  will give a more
  detailed description of the structure of a packet than will be given here.

  The example used here was  carried  out  between  a mini and a micro system.
  The  mini KERMIT was  put  into server mode and, after escaping  back to the
  micro, the file transfer was initiated by the command,

         GET KERMTEST1

  This command is a request to the mini KERMIT to send the file KERMTEST1.

  The packets were recorded during  the  transfer  by  the micro KERMIT  debug
  facility,  which  outputs the contents of all packets, sent and received, to
  the printer. Each packet is prefixed with either TX: or RX: when sent to the
  printer to indicate whether the packet is being transmitted or received.

  The packets sent were as follows:

  (a)    TX:+ I~> @-`&18<OD>
  (b)    RX:, Yn% @-`&1~_<OD>

  (c)    TX:, RKERMTEST1[<OD>
  (d)    RX:, Sn% @-`&1~Y<OD>
  (e)    TX:+ Y~> @-`&1H<OD>

  (f)    RX:+!FKERMTEST!<OD>
  (g)    TX:`!Y?<OD>

  (h)    RX:z"Dthis is a test file to show`M`Jwhat packets look like when`M`J
         data is being transmitted(<OD>
  (i)    TX:`"Y@<OD>

  (j)    RX:6`D by `M`JKERMIT.`M`JM<OD>
  (k)    TX:``YA<OD>

  (l)    RX:`$ZC<OD>
  (m)    TX:`$YB<OD>

  (n)    RX:`%B,<OD>
  (o)    TX:`%YC<OD>

  (p)    TX:$ GF4<OD>
  (q)    RX:` Y><OD>



  The first three characters of  each  packet  make up the header and indicate
  the size of the packet, the packet number,  and  the  type  of  the  packet,
  respectively.  The  <OD>  at  the  end  of  each packet is the end-of-packet
  indicator (in this case a carriage return). The character immediately before
  the  <OD>  is  a  checksum character.  (The algorithm  used  for  coding the
  checksum can be found in reference 1.)


  An Introduction to Kermit                                             Page 5





  The characters between the header  and  the  checksum  character make up the
  data field.

  The packet types used in this transfer,  indicated by the third character of
  the packet, were as follows:

         I   init-info.
         Y   acknowledgment
         R   R type
         S   send-init.
         F   file header
         D   data
         Z   end-of-file
         B   end-of-transfer
         G   KERMIT command


  Packet (a), an init-info packet,  was sent by the micro prior to sending the
  request for a file.  The mini acknowledged this packet in the usual way. The
  exchange of these two packets is necessary to establish what facilities each
  KERMIT has.

  Packet (c) was the request from the micro to the mini for the file KERMTEST1
  and is an R type packet.  The mini  initiated  the file  transfer by sending
  a send-init packet, packet (d), which the micro in turn acknowledged. (Note:
  packets (a) and (b) are very similar  to packets (d) and (e).  In both cases
  information was being exchanged about the facilities that each KERMIT had to
  offer.  See reference 1 for more details.)

  From packet (f) to packet  (o) the pattern of 'receive data then acknowledge
  it'  was repeated until the transfer  was  complete.  Packets  (h)  and  (j)
  contain the actual contents of the file being transferred. The '#M#J' string
  in the  data  field of these packets indicate the carriage returns  and line
  feeds in the file.  The  reason  for  this representation is that the KERMIT
  protocol  only  allows  printable  characters to be used  in  packets  (i.e.
  characters with ASCII values between 32 and 126 inclusive).

  Prior to the start of  the  file  transfer  (packets (a) to (c)), the packet
  number  remained  at  0  (represented by a space).  After this however,  the
  packet  number  was  incremented  by 1 for each packet that was successfully
  transferred.  The acknowledgment packets from the micro have the same packet
  number as the packet that was being acknowledged. The packet number is coded
  into a single character,  based  on ASCII values, according to the algorithm
  set down in reference 1.


  Packets (l) and (n) were sent to signify the end-of-file and end-of-transfer
  respectively and contain no data.

  Packet (p) was not part  of  the  file  transfer,  but  was a KERMIT command
  packet,  which  resulted  from the FINISH command given to the micro KERMIT.
  The data field of  the  KERMIT  command  packet  contained  a  single letter
  command, in this case an F, indicating to the mini KERMIT  that  it  was  to
  shut  down  its  server.   Packet (q) was an acknowledgment to this command.
  Note that the packet number  was  set back to 0 since these two packets were
  not part of the file transfer.




  An Introduction to Kermit                                             Page 6





  APPENDIX B : REFERENCES


  [1]  KERMIT Protocol Manual (Sixth  Edition).  Frank da Cruz, Columbia
       University Center for Computing Activities New York, N.Y. 10027.

       The same information is covered in a more informal way, with far more
       in the way of explanation and example, in

       "Kermit : A File Transfer Protocol" by Frank da Cruz (pub. Digital Press)




  APPENDIX C : WHERE TO GET KERMIT


  Kermit programs are available on  many  bulletin board systems and from user
  groups.  There are a few centres that can provide all known implementations,
  as follows:

  a. World-Wide Distribution

                 Kermit Distribution
                 Columbia University Center for Computing Activities
                 7th Floor
                 612 West 115th Street
                 New York
                 NY 10025
                 United States

  b. Distribution in the UK and Ireland only

                 Kermit Distribution
                 Department of Computing
                 Computer Centre
                 Lancaster University
                 Lancaster LA1 4YW
                 United Kingdom





















  An Introduction to Kermit                                             Page 7




00000000  0d 0a 0d 0a 0d 0a 0d 0a  20 20 20 20 20 20 20 20  |........        |
00000010  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000020  20 20 20 41 20 42 52 49  45 46 20 4f 56 45 52 56  |   A BRIEF OVERV|
00000030  49 45 57 20 4f 46 20 4b  45 52 4d 49 54 0d 0a 20  |IEW OF KERMIT.. |
00000040  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000050  20 20 20 20 20 20 20 20  20 20 3d 3d 3d 3d 3d 3d  |          ======|
00000060  3d 3d 3d 3d 3d 3d 3d 3d  3d 3d 3d 3d 3d 3d 3d 3d  |================|
00000070  3d 3d 3d 3d 0d 0a 0d 0a  0d 0a 20 20 54 68 69 73  |====......  This|
00000080  20 67 75 69 64 65 20 20  70 72 6f 76 69 64 65 73  | guide  provides|
00000090  20 61 20 62 72 69 65 66  20 64 65 73 63 72 69 70  | a brief descrip|
000000a0  74 69 6f 6e 20 6f 66 20  74 68 65 20 4b 65 72 6d  |tion of the Kerm|
000000b0  69 74 20 66 69 6c 65 20  74 72 61 6e 73 66 65 72  |it file transfer|
000000c0  20 73 79 73 74 65 6d 3a  0d 0a 20 20 69 74 20 65  | system:..  it e|
000000d0  78 70 6c 61 69 6e 73 20  77 68 61 74 20 4b 65 72  |xplains what Ker|
000000e0  6d 69 74 20 69 73 2c 20  20 77 68 61 74 20 69 74  |mit is,  what it|
000000f0  20 64 6f 65 73 2c 20 61  6e 64 20 68 6f 77 20 69  | does, and how i|
00000100  74 20 64 6f 65 73 20 69  74 2e 20 20 54 68 65 20  |t does it.  The |
00000110  64 6f 63 75 6d 65 6e 74  0d 0a 20 20 68 61 73 20  |document..  has |
00000120  20 62 65 65 6e 20 20 61  64 61 70 74 65 64 20 66  | been  adapted f|
00000130  72 6f 6d 20 61 20 20 75  73 65 72 20 20 6d 61 6e  |rom a  user  man|
00000140  75 61 6c 20 20 77 72 69  74 74 65 6e 20 20 62 79  |ual  written  by|
00000150  20 20 44 61 76 65 20 4d  6f 72 72 69 73 73 20 20  |  Dave Morriss  |
00000160  61 6e 64 20 20 4a 6f 65  0d 0a 20 20 41 6e 67 65  |and  Joe..  Ange|
00000170  6c 6f 73 61 6e 74 6f 20  6f 66 20 48 65 72 69 6f  |losanto of Herio|
00000180  74 2d 57 61 74 74 20 55  6e 69 76 65 72 73 69 74  |t-Watt Universit|
00000190  79 2c 20 45 64 69 6e 62  75 72 67 68 2c 20 53 63  |y, Edinburgh, Sc|
000001a0  6f 74 6c 61 6e 64 2e 0d  0a 0d 0a 0d 0a 0d 0a 0d  |otland..........|
000001b0  0a 0d 0a 20 20 31 2e 20  49 4e 54 52 4f 44 55 43  |...  1. INTRODUC|
000001c0  54 49 4f 4e 0d 0a 0d 0a  0d 0a 20 20 4b 45 52 4d  |TION......  KERM|
000001d0  49 54 20 20 69 73 20 74  68 65 20 6e 61 6d 65 20  |IT  is the name |
000001e0  6f 66 20 20 61 20 20 66  69 6c 65 20 20 74 72 61  |of  a  file  tra|
000001f0  6e 73 66 65 72 20 20 70  72 6f 74 6f 63 6f 6c 20  |nsfer  protocol |
00000200  20 64 65 76 65 6c 6f 70  65 64 20 20 61 74 20 20  | developed  at  |
00000210  43 6f 6c 75 6d 62 69 61  0d 0a 20 20 55 6e 69 76  |Columbia..  Univ|
00000220  65 72 73 69 74 79 20 43  65 6e 74 65 72 20 66 6f  |ersity Center fo|
00000230  72 20 43 6f 6d 70 75 74  69 6e 67 20 41 63 74 69  |r Computing Acti|
00000240  76 69 74 69 65 73 20 20  28 43 55 43 43 41 29 20  |vities  (CUCCA) |
00000250  69 6e 20 4e 65 77 20 59  6f 72 6b 2e 20 20 54 68  |in New York.  Th|
00000260  65 20 6f 62 6a 65 63 74  0d 0a 20 20 6f 66 20 73  |e object..  of s|
00000270  75 63 68 20 61 20 70 72  6f 74 6f 63 6f 6c 20 20  |uch a protocol  |
00000280  69 73 20 20 74 6f 20 20  74 72 61 6e 73 66 65 72  |is  to  transfer|
00000290  20 66 69 6c 65 73 20 62  65 74 77 65 65 6e 20 74  | files between t|
000002a0  77 6f 20 63 6f 6d 70 75  74 65 72 73 20 77 69 74  |wo computers wit|
000002b0  68 20 6c 69 74 74 6c 65  0d 0a 20 20 72 65 67 61  |h little..  rega|
000002c0  72 64 20 20 74 6f 20 20  74 68 65 20 20 74 79 70  |rd  to  the  typ|
000002d0  65 20 6f 66 20 6d 61 63  68 69 6e 65 73 20 20 65  |e of machines  e|
000002e0  6e 67 61 67 69 6e 67 20  20 69 6e 20 20 74 68 65  |ngaging  in  the|
000002f0  20 20 74 72 61 6e 73 66  65 72 2e 20 20 4b 45 52  |  transfer.  KER|
00000300  4d 49 54 20 20 77 61 73  0d 0a 20 20 64 65 73 69  |MIT  was..  desi|
00000310  67 6e 65 64 20 74 6f 20  61 6c 6c 6f 77 20 20 74  |gned to allow  t|
00000320  68 65 20 74 72 61 6e 73  66 65 72 20 6f 66 20 66  |he transfer of f|
00000330  69 6c 65 73 20 62 65 74  77 65 65 6e 20 6d 61 69  |iles between mai|
00000340  6e 66 72 61 6d 65 20 63  6f 6d 70 75 74 65 72 73  |nframe computers|
00000350  20 61 6e 64 20 74 68 65  0d 0a 20 20 6e 75 6d 65  | and the..  nume|
00000360  72 6f 75 73 20 6d 69 63  72 6f 63 6f 6d 70 75 74  |rous microcomput|
00000370  65 72 73 20 74 68 61 74  20 61 72 65 20 20 74 6f  |ers that are  to|
00000380  20 20 62 65 20 20 66 6f  75 6e 64 20 74 6f 64 61  |  be  found toda|
00000390  79 20 69 6e 20 55 6e 69  76 65 72 73 69 74 69 65  |y in Universitie|
000003a0  73 20 61 6e 64 20 69 6e  0d 0a 20 20 74 68 65 20  |s and in..  the |
000003b0  63 6f 6d 6d 65 72 63 69  61 6c 20 77 6f 72 6c 64  |commercial world|
000003c0  2e 20 20 54 68 65 20 6c  69 6e 6b 20 62 65 74 77  |.  The link betw|
000003d0  65 65 6e 20 20 74 68 65  20 20 74 77 6f 20 20 6d  |een  the  two  m|
000003e0  61 63 68 69 6e 65 73 20  20 6e 65 65 64 20 20 6f  |achines  need  o|
000003f0  6e 6c 79 20 62 65 20 61  0d 0a 20 20 73 74 61 6e  |nly be a..  stan|
00000400  64 61 72 64 20 20 61 73  79 6e 63 68 72 6f 6e 6f  |dard  asynchrono|
00000410  75 73 20 20 63 6f 6d 6d  75 6e 69 63 61 74 69 6f  |us  communicatio|
00000420  6e 73 20 20 6c 69 6e 65  2c 20 20 6f 66 20 20 74  |ns  line,  of  t|
00000430  68 65 20 20 6b 69 6e 64  20 74 68 61 74 20 69 73  |he  kind that is|
00000440  20 75 73 65 64 20 74 6f  0d 0a 20 20 61 74 74 61  | used to..  atta|
00000450  63 68 20 61 20 74 65 72  6d 69 6e 61 6c 20 74 6f  |ch a terminal to|
00000460  20 61 20 63 65 6e 74 72  61 6c 20 63 6f 6d 70 75  | a central compu|
00000470  74 65 72 2e 0d 0a 0d 0a  20 20 43 55 43 43 41 20  |ter.....  CUCCA |
00000480  68 61 76 65 20 70 75 62  6c 69 73 68 65 64 20 66  |have published f|
00000490  75 6c 6c 20 69 6e 66 6f  72 6d 61 74 69 6f 6e 20  |ull information |
000004a0  61 62 6f 75 74 20 4b 45  52 4d 49 54 20 28 72 65  |about KERMIT (re|
000004b0  66 65 72 65 6e 63 65 20  31 29 2c 20 62 75 74 20  |ference 1), but |
000004c0  72 65 74 61 69 6e 0d 0a  20 20 74 68 65 20 63 6f  |retain..  the co|
000004d0  70 79 72 69 67 68 74 2e  20 20 41 6e 79 6f 6e 65  |pyright.  Anyone|
000004e0  20 6d 61 79 20 69 6d 70  6c 65 6d 65 6e 74 20 20  | may implement  |
000004f0  4b 45 52 4d 49 54 20 20  6f 6e 20 74 68 65 69 72  |KERMIT  on their|
00000500  20 6f 77 6e 20 6d 61 63  68 69 6e 65 2c 20 62 75  | own machine, bu|
00000510  74 20 74 68 69 73 0d 0a  20 20 6d 75 73 74 20 6e  |t this..  must n|
00000520  6f 74 20 62 65 20 64 6f  6e 65 20 66 6f 72 20 20  |ot be done for  |
00000530  63 6f 6d 6d 65 72 63 69  61 6c 20 20 70 75 72 70  |commercial  purp|
00000540  6f 73 65 73 2e 20 20 20  4d 61 6e 79 20 20 70 65  |oses.   Many  pe|
00000550  6f 70 6c 65 20 20 68 61  76 65 20 69 6d 70 6c 65  |ople  have imple|
00000560  6d 65 6e 74 65 64 0d 0a  20 20 76 65 72 73 69 6f  |mented..  versio|
00000570  6e 73 20 20 6f 66 20 20  4b 45 52 4d 49 54 20 20  |ns  of  KERMIT  |
00000580  6f 6e 20 20 6d 61 6e 79  20 20 64 69 66 66 65 72  |on  many  differ|
00000590  65 6e 74 20 20 6d 61 63  68 69 6e 65 73 3b 20 20  |ent  machines;  |
000005a0  6d 69 63 72 6f 2d 63 6f  6d 70 75 74 65 72 2c 20  |micro-computer, |
000005b0  20 6d 69 6e 69 2d 0d 0a  20 20 63 6f 6d 70 75 74  | mini-..  comput|
000005c0  65 72 20 61 6e 64 20 6d  61 69 6e 66 72 61 6d 65  |er and mainframe|
000005d0  20 76 65 72 73 69 6f 6e  73 20 68 61 76 65 20 62  | versions have b|
000005e0  65 65 6e 20 77 72 69 74  74 65 6e 2e 0d 0a 0d 0a  |een written.....|
000005f0  0d 0a 0d 0a 0d 0a 20 20  32 2e 20 42 41 53 49 43  |......  2. BASIC|
00000600  20 50 52 49 4e 43 49 50  4c 45 53 0d 0a 0d 0a 0d  | PRINCIPLES.....|
00000610  0a 20 20 54 68 65 20 63  6f 6d 70 6f 6e 65 6e 74  |.  The component|
00000620  73 20 72 65 71 75 69 72  65 64 20 74 6f 20 74 72  |s required to tr|
00000630  61 6e 73 66 65 72 20 61  20 20 66 69 6c 65 20 20  |ansfer a  file  |
00000640  62 65 74 77 65 65 6e 20  20 74 77 6f 20 20 63 6f  |between  two  co|
00000650  6d 70 75 74 65 72 73 2c  20 20 75 73 69 6e 67 0d  |mputers,  using.|
00000660  0a 20 20 4b 45 52 4d 49  54 2c 20 20 61 72 65 20  |.  KERMIT,  are |
00000670  74 68 65 20 74 77 6f 20  63 6f 6d 70 75 74 65 72  |the two computer|
00000680  73 2c 20 20 65 61 63 68  20 20 77 69 74 68 20 74  |s,  each  with t|
00000690  68 65 69 72 20 6f 77 6e  20 4b 45 52 4d 49 54 20  |heir own KERMIT |
000006a0  70 72 6f 67 72 61 6d 2c  20 20 61 6e 64 20 61 0d  |program,  and a.|
000006b0  0a 20 20 64 61 74 61 20  63 6f 6d 6d 75 6e 69 63  |.  data communic|
000006c0  61 74 69 6f 6e 73 20 6c  69 6e 65 20 6a 6f 69 6e  |ations line join|
000006d0  69 6e 67 20 74 68 65 6d  20 62 6f 74 68 20 74 6f  |ing them both to|
000006e0  67 65 74 68 65 72 2e 0d  0a 0d 0a 20 20 4f 6e 65  |gether.....  One|
000006f0  20 6f 66 20 74 68 65 20  4b 45 52 4d 49 54 20 70  | of the KERMIT p|
00000700  72 6f 67 72 61 6d 73 20  20 77 69 6c 6c 20 20 72  |rograms  will  r|
00000710  75 6e 20 20 6f 6e 20 74  68 65 20 6c 6f 63 61 6c  |un  on the local|
00000720  20 6d 61 63 68 69 6e 65  20 75 6e 64 65 72 20 74  | machine under t|
00000730  68 65 20 64 69 72 65 63  74 0d 0a 20 20 63 6f 6e  |he direct..  con|
00000740  74 72 6f 6c 20 6f 66 20  74 68 65 20 75 73 65 72  |trol of the user|
00000750  2e 20 20 54 68 69 73 20  6d 61 63 68 69 6e 65 20  |.  This machine |
00000760  77 69 6c 6c 20 6e 6f 72  6d 61 6c 6c 79 20 62 65  |will normally be|
00000770  20 61 20 6d 69 63 72 6f  63 6f 6d 70 75 74 65 72  | a microcomputer|
00000780  2c 20 61 6e 64 20 69 74  73 0d 0a 20 20 4b 45 52  |, and its..  KER|
00000790  4d 49 54 20 70 72 6f 67  72 61 6d 20 77 69 6c 6c  |MIT program will|
000007a0  20 68 61 76 65 20 73 6f  6d 65 20 66 6f 72 6d 20  | have some form |
000007b0  6f 66 20 74 65 72 6d 69  6e 61 6c 20 65 6d 75 6c  |of terminal emul|
000007c0  61 74 69 6f 6e 20 63 61  70 61 62 69 6c 69 74 79  |ation capability|
000007d0  20 74 6f 20 61 6c 6c 6f  77 0d 0a 20 20 69 74 20  | to allow..  it |
000007e0  74 6f 20 6c 6f 67 2d 6f  6e 20 74 6f 2c 20 61 6e  |to log-on to, an|
000007f0  64 20 69 6e 74 65 72 61  63 74 20 77 69 74 68 20  |d interact with |
00000800  74 68 65 20 6f 74 68 65  72 20 6d 61 63 68 69 6e  |the other machin|
00000810  65 20 2d 20 74 68 65 20  72 65 6d 6f 74 65 20 63  |e - the remote c|
00000820  6f 6d 70 75 74 65 72 2e  0d 0a 0d 0a 20 20 54 68  |omputer.....  Th|
00000830  65 20 72 65 6d 6f 74 65  20 6d 61 63 68 69 6e 65  |e remote machine|
00000840  2c 20 20 75 73 75 61 6c  6c 79 20 61 20 20 6d 61  |,  usually a  ma|
00000850  69 6e 66 72 61 6d 65 20  20 6f 72 20 6d 69 6e 69  |inframe  or mini|
00000860  2c 20 20 77 69 6c 6c 20  61 6c 73 6f 20 68 61 76  |,  will also hav|
00000870  65 20 61 20 4b 45 52 4d  49 54 0d 0a 20 20 70 72  |e a KERMIT..  pr|
00000880  6f 67 72 61 6d 2c 20 20  74 6f 20 77 68 69 63 68  |ogram,  to which|
00000890  20 79 6f 75 20 63 61 6e  20 74 79 70 65 20 63 6f  | you can type co|
000008a0  6d 6d 61 6e 64 73 20 20  66 72 6f 6d 20 79 6f 75  |mmands  from you|
000008b0  72 20 6d 69 63 72 6f 20  75 73 69 6e 67 20 69 74  |r micro using it|
000008c0  73 20 74 65 72 6d 69 6e  61 6c 0d 0a 20 20 65 6d  |s terminal..  em|
000008d0  75 6c 61 74 69 6f 6e 20  66 61 63 69 6c 69 74 79  |ulation facility|
000008e0  2e 0d 0a 0d 0a 20 20 54  68 65 20 63 6f 6d 6d 75  |.....  The commu|
000008f0  6e 69 63 61 74 69 6f 6e  20 6c 69 6e 6b 20 62 65  |nication link be|
00000900  74 77 65 65 6e 20 74 68  65 20 20 74 77 6f 20 20  |tween the  two  |
00000910  63 6f 6d 70 75 74 65 72  73 20 20 63 61 6e 20 20  |computers  can  |
00000920  62 65 20 6d 6f 72 65 20  6f 72 20 6c 65 73 73 20  |be more or less |
00000930  61 6e 79 0d 0a 20 20 61  73 79 6e 63 68 72 6f 6e  |any..  asynchron|
00000940  6f 75 73 20 20 28 74 65  72 6d 69 6e 61 6c 29 20  |ous  (terminal) |
00000950  20 6c 69 6e 65 2e 20 20  4b 65 72 6d 69 74 20 72  | line.  Kermit r|
00000960  65 71 75 69 72 65 73 20  74 68 61 74 20 61 20 43  |equires that a C|
00000970  4f 4e 54 52 4f 4c 2d 41  20 20 63 68 61 72 61 63  |ONTROL-A  charac|
00000980  74 65 72 0d 0a 20 20 63  61 6e 20 67 65 74 20 74  |ter..  can get t|
00000990  68 72 6f 75 67 68 20 74  68 65 20 63 6f 6d 6d 75  |hrough the commu|
000009a0  6e 69 63 61 74 69 6f 6e  73 20 65 71 75 69 70 6d  |nications equipm|
000009b0  65 6e 74 2c 20 20 73 6f  20 79 6f 75 20 6d 61 79  |ent,  so you may|
000009c0  20 6e 65 65 64 20 74 6f  20 61 64 6a 75 73 74 20  | need to adjust |
000009d0  74 68 65 0d 0a 20 20 63  68 61 72 61 63 74 65 72  |the..  character|
000009e0  69 73 74 69 63 73 20 6f  66 20 74 68 65 20 6c 69  |istics of the li|
000009f0  6e 65 20 74 6f 20 61 6c  6c 6f 77 20 74 68 69 73  |ne to allow this|
00000a00  2e 0d 0a 0d 0a 0d 0a 20  20 41 6e 20 49 6e 74 72  |.......  An Intr|
00000a10  6f 64 75 63 74 69 6f 6e  20 74 6f 20 4b 65 72 6d  |oduction to Kerm|
00000a20  69 74 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |it              |
00000a30  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000a40  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 50  |               P|
00000a50  61 67 65 20 31 0d 0a 0d  0a 0d 0a 0d 0a 0d 0a 0d  |age 1...........|
00000a60  0a 20 20 41 20 74 79 70  69 63 61 6c 20 4b 45 52  |.  A typical KER|
00000a70  4d 49 54 20 73 65 73 73  69 6f 6e 20 77 6f 75 6c  |MIT session woul|
00000a80  64 20 63 6f 6e 73 69 73  74 20 6f 66 20 74 68 65  |d consist of the|
00000a90  20 66 6f 6c 6c 6f 77 69  6e 67 20 73 74 65 70 73  | following steps|
00000aa0  3a 0d 0a 0d 0a 20 20 31  2e 20 20 54 68 65 20 6c  |:....  1.  The l|
00000ab0  6f 63 61 6c 20 28 6d 69  63 72 6f 29 20 4b 45 52  |ocal (micro) KER|
00000ac0  4d 49 54 20 70 72 6f 67  72 61 6d 20 20 69 73 20  |MIT program  is |
00000ad0  20 65 6e 74 65 72 65 64  20 20 69 6e 20 20 74 68  | entered  in  th|
00000ae0  65 20 73 61 6d 65 20 77  61 79 20 74 68 61 74 20  |e same way that |
00000af0  61 6e 79 0d 0a 20 20 20  20 20 20 6f 74 68 65 72  |any..      other|
00000b00  20 70 72 6f 67 72 61 6d  20 69 73 20 69 6e 69 74  | program is init|
00000b10  69 61 74 65 64 2e 0d 0a  0d 0a 20 20 32 2e 20 20  |iated.....  2.  |
00000b20  41 6e 79 20 72 65 71 75  69 72 65 64 20 6c 6f 63  |Any required loc|
00000b30  61 6c 20 63 6f 6e 66 69  67 75 72 61 74 69 6f 6e  |al configuration|
00000b40  20 69 73 20 63 61 72 72  69 65 64 20 6f 75 74 2c  | is carried out,|
00000b50  20 66 6f 72 20 65 78 61  6d 70 6c 65 20 73 65 74  | for example set|
00000b60  74 69 6e 67 20 74 68 65  0d 0a 20 20 20 20 20 20  |ting the..      |
00000b70  6c 69 6e 65 20 73 70 65  65 64 20 66 6f 72 20 74  |line speed for t|
00000b80  68 65 20 74 65 72 6d 69  6e 61 6c 20 65 6d 75 6c  |he terminal emul|
00000b90  61 74 6f 72 2e 0d 0a 0d  0a 20 20 33 2e 20 20 54  |ator.....  3.  T|
00000ba0  68 65 20 74 65 72 6d 69  6e 61 6c 20 65 6d 75 6c  |he terminal emul|
00000bb0  61 74 6f 72 20 69 73 20  65 6e 74 65 72 65 64 2c  |ator is entered,|
00000bc0  20 75 73 75 61 6c 6c 79  20 77 69 74 68 20 74 68  | usually with th|
00000bd0  65 20 63 6f 6d 6d 61 6e  64 20 43 4f 4e 4e 45 43  |e command CONNEC|
00000be0  54 2e 0d 0a 0d 0a 20 20  34 2e 20 20 55 73 69 6e  |T.....  4.  Usin|
00000bf0  67 20 74 68 65 20 65 6d  75 6c 61 74 6f 72 2c 20  |g the emulator, |
00000c00  20 74 68 65 20 72 65 6d  6f 74 65 20 63 6f 6d 70  | the remote comp|
00000c10  75 74 65 72 20 69 73 20  61 63 63 65 73 73 65 64  |uter is accessed|
00000c20  20 69 6e 20 61 6e 20 69  64 65 6e 74 69 63 61 6c  | in an identical|
00000c30  20 77 61 79 0d 0a 20 20  20 20 20 20 74 6f 20 74  | way..      to t|
00000c40  68 65 20 75 73 65 20 6f  66 20 61 20 6e 6f 72 6d  |he use of a norm|
00000c50  61 6c 20 74 65 72 6d 69  6e 61 6c 20 61 6e 64 20  |al terminal and |
00000c60  61 6e 20 69 6e 74 65 72  61 63 74 69 76 65 20 73  |an interactive s|
00000c70  65 73 73 69 6f 6e 20 69  73 20 62 65 67 75 6e 2e  |ession is begun.|
00000c80  0d 0a 0d 0a 20 20 35 2e  20 20 54 68 65 20 4b 45  |....  5.  The KE|
00000c90  52 4d 49 54 20 70 72 6f  67 72 61 6d 20 6f 6e 20  |RMIT program on |
00000ca0  74 68 65 20 72 65 6d 6f  74 65 20 20 68 6f 73 74  |the remote  host|
00000cb0  20 20 63 6f 6d 70 75 74  65 72 20 20 69 73 20 20  |  computer  is  |
00000cc0  65 6e 74 65 72 65 64 2c  20 20 61 6e 64 20 20 61  |entered,  and  a|
00000cd0  6e 79 0d 0a 20 20 20 20  20 20 6e 65 63 65 73 73  |ny..      necess|
00000ce0  61 72 79 20 63 6f 6e 66  69 67 75 72 61 74 69 6f  |ary configuratio|
00000cf0  6e 20 63 6f 6d 6d 61 6e  64 73 20 69 73 73 75 65  |n commands issue|
00000d00  64 2e 0d 0a 0d 0a 20 20  36 2e 20 20 41 20 66 69  |d.....  6.  A fi|
00000d10  6c 65 20 74 72 61 6e 73  66 65 72 20 63 6f 6d 6d  |le transfer comm|
00000d20  61 6e 64 20 69 73 20 69  73 73 75 65 64 20 20 74  |and is issued  t|
00000d30  6f 20 20 74 68 65 20 20  72 65 6d 6f 74 65 20 4b  |o  the  remote K|
00000d40  45 52 4d 49 54 2c 20 20  64 65 70 65 6e 64 69 6e  |ERMIT,  dependin|
00000d50  67 20 6f 6e 0d 0a 20 20  20 20 20 20 77 68 65 74  |g on..      whet|
00000d60  68 65 72 20 79 6f 75 20  69 6e 74 65 6e 64 20 74  |her you intend t|
00000d70  6f 20 73 65 6e 64 20 61  20 66 69 6c 65 20 74 6f  |o send a file to|
00000d80  20 74 68 65 20 20 72 65  6d 6f 74 65 20 20 63 6f  | the  remote  co|
00000d90  6d 70 75 74 65 72 20 28  69 6e 20 74 68 69 73 20  |mputer (in this |
00000da0  63 61 73 65 0d 0a 20 20  20 20 20 20 79 6f 75 20  |case..      you |
00000db0  74 65 6c 6c 20 74 68 65  20 72 65 6d 6f 74 65 20  |tell the remote |
00000dc0  4b 45 52 4d 49 54 20 74  6f 20 52 45 43 45 49 56  |KERMIT to RECEIV|
00000dd0  45 29 2c 20 6f 72 20 61  73 6b 20 69 74 20 74 6f  |E), or ask it to|
00000de0  20 73 65 6e 64 20 61 20  66 69 6c 65 20 74 6f 20  | send a file to |
00000df0  79 6f 75 72 0d 0a 20 20  20 20 20 20 6c 6f 63 61  |your..      loca|
00000e00  6c 20 63 6f 6d 70 75 74  65 72 20 28 69 6e 20 77  |l computer (in w|
00000e10  68 69 63 68 20 63 61 73  65 20 79 6f 75 20 74 65  |hich case you te|
00000e20  6c 6c 20 74 68 65 20 72  65 6d 6f 74 65 20 4b 45  |ll the remote KE|
00000e30  52 4d 49 54 20 74 6f 20  53 45 4e 44 29 2e 0d 0a  |RMIT to SEND)...|
00000e40  0d 0a 20 20 37 2e 20 20  54 68 65 20 74 65 72 6d  |..  7.  The term|
00000e50  69 6e 61 6c 20 65 6d 75  6c 61 74 6f 72 20 6f 6e  |inal emulator on|
00000e60  20 74 68 65 20 20 6c 6f  63 61 6c 20 20 4b 45 52  | the  local  KER|
00000e70  4d 49 54 20 20 69 73 20  20 74 68 65 6e 20 65 78  |MIT  is  then ex|
00000e80  69 74 65 64 20 62 79 20  75 73 65 20 6f 66 20 61  |ited by use of a|
00000e90  0d 0a 20 20 20 20 20 20  27 6c 6f 63 61 6c 20 20  |..      'local  |
00000ea0  65 73 63 61 70 65 27 20  20 20 63 68 61 72 61 63  |escape'   charac|
00000eb0  74 65 72 20 20 73 65 71  75 65 6e 63 65 2e 20 20  |ter  sequence.  |
00000ec0  54 68 69 73 20 70 75 74  73 20 74 68 65 20 6c 6f  |This puts the lo|
00000ed0  63 61 6c 20 70 72 6f 67  72 61 6d 20 62 61 63 6b  |cal program back|
00000ee0  0d 0a 20 20 20 20 20 20  69 6e 74 6f 20 74 68 65  |..      into the|
00000ef0  20 63 6f 6d 6d 61 6e 64  20 6d 6f 64 65 20 6f 72  | command mode or|
00000f00  69 67 69 6e 61 6c 6c 79  20 65 6e 74 65 72 65 64  |iginally entered|
00000f10  20 69 6e 20 73 74 65 70  20 31 2e 0d 0a 0d 0a 20  | in step 1..... |
00000f20  20 38 2e 20 20 41 20 6c  6f 63 61 6c 20 66 69 6c  | 8.  A local fil|
00000f30  65 20 74 72 61 6e 73 66  65 72 20 63 6f 6d 6d 61  |e transfer comma|
00000f40  6e 64 20 20 69 73 20 20  69 73 73 75 65 64 2e 20  |nd  is  issued. |
00000f50  20 54 68 69 73 20 77 69  6c 6c 20 62 65 20 53 45  | This will be SE|
00000f60  4e 44 20 6f 72 20 52 45  43 45 49 56 45 0d 0a 20  |ND or RECEIVE.. |
00000f70  20 20 20 20 20 64 65 70  65 6e 64 69 6e 67 20 20  |     depending  |
00000f80  6f 6e 20 74 68 65 20 64  69 72 65 63 74 69 6f 6e  |on the direction|
00000f90  20 74 68 65 20 74 72 61  6e 73 66 65 72 20 69 73  | the transfer is|
00000fa0  20 74 6f 20 20 74 61 6b  65 2e 20 20 28 4e 61 74  | to  take.  (Nat|
00000fb0  75 72 61 6c 6c 79 2c 20  20 74 68 69 73 0d 0a 20  |urally,  this.. |
00000fc0  20 20 20 20 20 63 6f 6d  6d 61 6e 64 20 77 69 6c  |     command wil|
00000fd0  6c 20 62 65 20 74 68 65  20 6f 70 70 6f 73 69 74  |l be the opposit|
00000fe0  65 20 6f 66 20 74 68 61  74 20 69 73 73 75 65 64  |e of that issued|
00000ff0  20 74 6f 20 74 68 65 20  72 65 6d 6f 74 65 20 6d  | to the remote m|
00001000  61 63 68 69 6e 65 2e 29  0d 0a 0d 0a 20 20 39 2e  |achine.)....  9.|
00001010  20 20 54 68 65 20 66 69  6c 65 20 74 72 61 6e 73  |  The file trans|
00001020  66 65 72 20 77 69 6c 6c  20 70 72 6f 63 65 65 64  |fer will proceed|
00001030  20 20 75 6e 64 65 72 20  20 74 68 65 20 20 63 6f  |  under  the  co|
00001040  6e 74 72 6f 6c 20 20 6f  66 20 20 74 68 65 20 20  |ntrol  of  the  |
00001050  74 77 6f 20 4b 45 52 4d  49 54 0d 0a 20 20 20 20  |two KERMIT..    |
00001060  20 20 70 72 6f 67 72 61  6d 73 20 20 75 6e 74 69  |  programs  unti|
00001070  6c 20 20 74 68 65 20 20  66 69 6c 65 20 20 68 61  |l  the  file  ha|
00001080  73 20 20 62 65 65 6e 20  63 6f 6d 70 6c 65 74 65  |s  been complete|
00001090  6c 79 20 74 72 61 6e 73  66 65 72 72 65 64 20 28  |ly transferred (|
000010a0  6f 72 20 61 20 66 61 74  61 6c 0d 0a 20 20 20 20  |or a fatal..    |
000010b0  20 20 65 72 72 6f 72 20  68 61 73 20 6f 63 63 75  |  error has occu|
000010c0  72 72 65 64 29 2e 20 20  54 68 65 20 6c 6f 63 61  |rred).  The loca|
000010d0  6c 20 4b 45 52 4d 49 54  20 77 69 6c 6c 20 74 68  |l KERMIT will th|
000010e0  65 6e 20 72 65 74 75 72  6e 20 74 6f 20 63 6f 6d  |en return to com|
000010f0  6d 61 6e 64 20 6d 6f 64  65 2e 0d 0a 0d 0a 20 20  |mand mode.....  |
00001100  31 30 2e 20 55 73 69 6e  67 20 74 68 65 20 74 65  |10. Using the te|
00001110  72 6d 69 6e 61 6c 20 65  6d 75 6c 61 74 6f 72 20  |rminal emulator |
00001120  70 61 72 74 20 20 6f 66  20 20 74 68 65 20 20 6c  |part  of  the  l|
00001130  6f 63 61 6c 20 20 4b 45  52 4d 49 54 2c 20 20 74  |ocal  KERMIT,  t|
00001140  68 65 20 20 68 6f 73 74  20 20 69 73 0d 0a 20 20  |he  host  is..  |
00001150  20 20 20 20 61 63 63 65  73 73 65 64 2c 20 61 6e  |    accessed, an|
00001160  64 20 74 68 65 20 72 65  6d 6f 74 65 20 4b 45 52  |d the remote KER|
00001170  4d 49 54 20 63 6c 6f 73  65 64 20 64 6f 77 6e 2e  |MIT closed down.|
00001180  20 20 54 68 65 20 69 6e  74 65 72 61 63 74 69 76  |  The interactiv|
00001190  65 20 73 65 73 73 69 6f  6e 20 69 73 0d 0a 20 20  |e session is..  |
000011a0  20 20 20 20 74 68 65 6e  20 65 6e 64 65 64 20 61  |    then ended a|
000011b0  6e 64 20 74 68 65 20 20  6c 6f 63 61 6c 20 20 4b  |nd the  local  K|
000011c0  45 52 4d 49 54 20 74 65  72 6d 69 6e 61 74 65 64  |ERMIT terminated|
000011d0  3b 20 20 74 68 65 20 4b  45 52 4d 49 54 20 73 65  |;  the KERMIT se|
000011e0  73 73 69 6f 6e 20 69 73  20 6e 6f 77 0d 0a 20 20  |ssion is now..  |
000011f0  20 20 20 20 63 6f 6d 70  6c 65 74 65 2e 0d 0a 0d  |    complete....|
00001200  0a 20 20 49 66 20 74 68  65 72 65 20 61 72 65 20  |.  If there are |
00001210  73 65 76 65 72 61 6c 20  66 69 6c 65 73 20 20 74  |several files  t|
00001220  6f 20 20 62 65 20 20 74  72 61 6e 73 66 65 72 72  |o  be  transferr|
00001230  65 64 20 20 62 65 74 77  65 65 6e 20 20 74 68 65  |ed  between  the|
00001240  20 6c 6f 63 61 6c 20 61  6e 64 20 68 6f 73 74 0d  | local and host.|
00001250  0a 20 20 63 6f 6d 70 75  74 65 72 73 20 73 74 65  |.  computers ste|
00001260  70 73 20 36 20 74 6f 20  39 20 61 62 6f 76 65 20  |ps 6 to 9 above |
00001270  77 69 6c 6c 20 68 61 76  65 20 74 6f 20 62 65 20  |will have to be |
00001280  72 65 70 65 61 74 65 64  2e 0d 0a 0d 0a 20 20 45  |repeated.....  E|
00001290  76 65 72 79 20 74 69 6d  65 20 61 20 63 6f 6e 74  |very time a cont|
000012a0  72 6f 6c 20 63 6f 6d 6d  61 6e 64 20 69 73 20 74  |rol command is t|
000012b0  6f 20 62 65 20 69 73 73  75 65 64 20 74 6f 20 74  |o be issued to t|
000012c0  68 65 20 72 65 6d 6f 74  65 20 4b 45 52 4d 49 54  |he remote KERMIT|
000012d0  2c 20 74 68 65 20 6c 6f  63 61 6c 0d 0a 20 20 4b  |, the local..  K|
000012e0  45 52 4d 49 54 20 6d 75  73 74 20 62 65 20 73 77  |ERMIT must be sw|
000012f0  69 74 63 68 65 64 20 69  6e 74 6f 20 69 74 73 20  |itched into its |
00001300  74 65 72 6d 69 6e 61 6c  20 65 6d 75 6c 61 74 69  |terminal emulati|
00001310  6f 6e 20 6d 6f 64 65 2e  20 54 6f 20 73 74 72 65  |on mode. To stre|
00001320  61 6d 6c 69 6e 65 20 74  68 69 73 0d 0a 20 20 70  |amline this..  p|
00001330  72 6f 63 65 73 73 2c 20  20 73 6f 6d 65 20 72 65  |rocess,  some re|
00001340  6d 6f 74 65 20 4b 45 52  4d 49 54 73 20 63 61 6e  |mote KERMITs can|
00001350  20 20 62 65 20 20 72 75  6e 20 20 69 6e 20 53 45  |  be  run  in SE|
00001360  52 56 45 52 20 6d 6f 64  65 2e 20 20 41 20 4b 45  |RVER mode.  A KE|
00001370  52 4d 49 54 20 73 65 72  76 65 72 0d 0a 20 20 77  |RMIT server..  w|
00001380  69 6c 6c 20 61 63 63 65  70 74 20 63 6f 6d 6d 61  |ill accept comma|
00001390  6e 64 73 20 73 65 6e 74  20 62 79 20 74 68 65 20  |nds sent by the |
000013a0  6c 6f 63 61 6c 20 4b 45  52 4d 49 54 20 61 63 72  |local KERMIT acr|
000013b0  6f 73 73 20 74 68 65 20  63 6f 6d 6d 75 6e 69 63  |oss the communic|
000013c0  61 74 69 6f 6e 73 20 6c  69 6e 6b 0d 0a 20 20 77  |ations link..  w|
000013d0  69 74 68 6f 75 74 20 74  68 65 20 6c 6f 63 61 6c  |ithout the local|
000013e0  20 4b 45 52 4d 49 54 20  68 61 76 69 6e 67 20 74  | KERMIT having t|
000013f0  6f 20 73 77 69 74 63 68  20 74 6f 20 20 74 65 72  |o switch to  ter|
00001400  6d 69 6e 61 6c 20 65 6d  75 6c 61 74 69 6f 6e 20  |minal emulation |
00001410  6d 6f 64 65 2e 20 20 54  68 69 73 0d 0a 20 20 6d  |mode.  This..  m|
00001420  65 61 6e 73 20 20 74 68  61 74 20 74 68 65 20 72  |eans  that the r|
00001430  65 6d 6f 74 65 20 4b 45  52 4d 49 54 20 63 61 6e  |emote KERMIT can|
00001440  20 62 65 20 63 6f 6e 74  72 6f 6c 6c 65 64 20 62  | be controlled b|
00001450  79 20 20 63 6f 6d 6d 61  6e 64 73 20 20 67 69 76  |y  commands  giv|
00001460  65 6e 20 20 74 6f 20 20  74 68 65 0d 0a 20 20 6c  |en  to  the..  l|
00001470  6f 63 61 6c 20 4b 45 52  4d 49 54 2e 0d 0a 0d 0a  |ocal KERMIT.....|
00001480  20 20 4e 6f 74 20 61 6c  6c 20 4b 45 52 4d 49 54  |  Not all KERMIT|
00001490  20 70 72 6f 67 72 61 6d  73 20 6f 66 66 65 72 20  | programs offer |
000014a0  74 68 65 20 73 61 6d 65  20 66 61 63 69 6c 69 74  |the same facilit|
000014b0  69 65 73 2c 20 73 6f 20  74 68 65 20 61 70 70 72  |ies, so the appr|
000014c0  6f 70 72 69 61 74 65 20  6d 61 6e 75 61 6c 0d 0a  |opriate manual..|
000014d0  20 20 73 68 6f 75 6c 64  20 61 6c 77 61 79 73 20  |  should always |
000014e0  62 65 20 63 68 65 63 6b  65 64 20 74 6f 20 20 66  |be checked to  f|
000014f0  69 6e 64 20 6f 75 74 20  77 68 61 74 20 66 61 63  |ind out what fac|
00001500  69 6c 69 74 69 65 73 20  74 68 65 20 4b 45 52 4d  |ilities the KERM|
00001510  49 54 73 20 62 65 69 6e  67 20 75 73 65 64 0d 0a  |ITs being used..|
00001520  20 20 68 61 76 65 2e 20  20 49 74 20 69 73 20 6e  |  have.  It is n|
00001530  6f 20 67 6f 6f 64 2c 20  66 6f 72 20 65 78 61 6d  |o good, for exam|
00001540  70 6c 65 2c 20 20 70 75  74 74 69 6e 67 20 61 20  |ple,  putting a |
00001550  72 65 6d 6f 74 65 20 4b  45 52 4d 49 54 20 69 6e  |remote KERMIT in|
00001560  74 6f 20 73 65 72 76 65  72 20 6d 6f 64 65 0d 0a  |to server mode..|
00001570  20 20 69 66 20 74 68 65  20 6c 6f 63 61 6c 20 4b  |  if the local K|
00001580  45 52 4d 49 54 20 69 73  20 6e 6f 74 20 63 61 70  |ERMIT is not cap|
00001590  61 62 6c 65 20 6f 66 20  63 6f 6e 74 72 6f 6c 6c  |able of controll|
000015a0  69 6e 67 20 61 20 4b 45  52 4d 49 54 20 73 65 72  |ing a KERMIT ser|
000015b0  76 65 72 2e 0d 0a 0d 0a  0d 0a 0d 0a 0d 0a 0d 0a  |ver.............|
000015c0  0d 0a 0d 0a 20 20 41 6e  20 49 6e 74 72 6f 64 75  |....  An Introdu|
000015d0  63 74 69 6f 6e 20 74 6f  20 4b 65 72 6d 69 74 20  |ction to Kermit |
000015e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00001600  20 20 20 20 20 20 20 20  20 20 20 20 50 61 67 65  |            Page|
00001610  20 32 0d 0a 0d 0a 0d 0a  0d 0a 0d 0a 0d 0a 20 20  | 2............  |
00001620  33 2e 20 41 4e 20 4f 55  54 4c 49 4e 45 20 4f 46  |3. AN OUTLINE OF|
00001630  20 54 48 45 20 50 52 4f  54 4f 43 4f 4c 0d 0a 0d  | THE PROTOCOL...|
00001640  0a 0d 0a 20 20 57 68 65  6e 20 69 6e 66 6f 72 6d  |...  When inform|
00001650  61 74 69 6f 6e 20 69 73  20 62 65 69 6e 67 20 74  |ation is being t|
00001660  72 61 6e 73 66 65 72 72  65 64 20 20 62 65 74 77  |ransferred  betw|
00001670  65 65 6e 20 4b 45 52 4d  49 54 20 70 72 6f 67 72  |een KERMIT progr|
00001680  61 6d 73 20 69 74 20 69  73 20 73 65 6e 74 20 69  |ams it is sent i|
00001690  6e 0d 0a 20 20 62 6c 6f  63 6b 73 20 6f 72 20 70  |n..  blocks or p|
000016a0  61 63 6b 65 74 73 2e 20  20 41 20 4b 45 52 4d 49  |ackets.  A KERMI|
000016b0  54 20 70 61 63 6b 65 74  20 63 6f 6e 73 69 73 74  |T packet consist|
000016c0  73 20 20 6f 66 20 20 61  20 20 73 65 71 75 65 6e  |s  of  a  sequen|
000016d0  63 65 20 20 6f 66 20 63  68 61 72 61 63 74 65 72  |ce  of character|
000016e0  73 0d 0a 20 20 63 6f 6d  70 72 69 73 69 6e 67 20  |s..  comprising |
000016f0  20 61 20 20 68 65 61 64  65 72 2c 20 20 66 6f 6c  | a  header,  fol|
00001700  6c 6f 77 65 64 20 20 62  79 20 74 68 65 20 61 63  |lowed  by the ac|
00001710  74 75 61 6c 20 64 61 74  61 20 62 65 69 6e 67 20  |tual data being |
00001720  63 6f 6d 6d 75 6e 69 63  61 74 65 64 2c 20 61 6e  |communicated, an|
00001730  64 0d 0a 20 20 74 65 72  6d 69 6e 61 74 65 64 20  |d..  terminated |
00001740  77 69 74 68 20 61 20 74  72 61 69 6c 65 72 2e 20  |with a trailer. |
00001750  20 54 68 65 20 68 65 61  64 65 72 20 63 6f 6e 74  | The header cont|
00001760  61 69 6e 73 20 20 66 69  65 6c 64 73 20 20 77 68  |ains  fields  wh|
00001770  69 63 68 20 20 64 65 66  69 6e 65 20 20 73 75 63  |ich  define  suc|
00001780  68 0d 0a 20 20 74 68 69  6e 67 73 20 61 73 20 74  |h..  things as t|
00001790  68 65 20 70 61 63 6b 65  74 20 6c 65 6e 67 74 68  |he packet length|
000017a0  20 61 6e 64 20 70 61 63  6b 65 74 20 74 79 70 65  | and packet type|
000017b0  2e 20 20 54 68 65 20 74  72 61 69 6c 65 72 20 63  |.  The trailer c|
000017c0  6f 6e 74 61 69 6e 73 20  20 61 20 20 63 68 65 63  |ontains  a  chec|
000017d0  6b 0d 0a 20 20 73 65 71  75 65 6e 63 65 20 20 77  |k..  sequence  w|
000017e0  68 69 63 68 20 20 69 73  20 20 75 73 65 64 20 20  |hich  is  used  |
000017f0  62 79 20 20 74 68 65 20  72 65 63 65 69 76 69 6e  |by  the receivin|
00001800  67 20 4b 45 52 4d 49 54  20 74 6f 20 64 65 74 65  |g KERMIT to dete|
00001810  72 6d 69 6e 65 20 77 68  65 74 68 65 72 20 74 68  |rmine whether th|
00001820  65 0d 0a 20 20 63 6f 6e  74 65 6e 74 73 20 6f 66  |e..  contents of|
00001830  20 74 68 65 20 70 61 63  6b 65 74 20 68 61 76 65  | the packet have|
00001840  20 61 72 72 69 76 65 64  20 69 6e 74 61 63 74 2e  | arrived intact.|
00001850  20 46 75 72 74 68 65 72  20 64 65 74 61 69 6c 73  | Further details|
00001860  20 6f 66 20 74 68 65 20  73 74 72 75 63 74 75 72  | of the structur|
00001870  65 0d 0a 20 20 6f 66 20  61 20 4b 45 52 4d 49 54  |e..  of a KERMIT|
00001880  20 70 61 63 6b 65 74 20  63 61 6e 20 62 65 20 66  | packet can be f|
00001890  6f 75 6e 64 20 69 6e 20  52 65 66 65 72 65 6e 63  |ound in Referenc|
000018a0  65 20 31 2e 0d 0a 0d 0a  20 20 41 73 20 65 61 63  |e 1.....  As eac|
000018b0  68 20 20 70 61 63 6b 65  74 20 69 73 20 72 65 63  |h  packet is rec|
000018c0  65 69 76 65 64 20 20 66  72 6f 6d 20 20 74 68 65  |eived  from  the|
000018d0  20 20 73 65 6e 64 69 6e  67 20 4b 45 52 4d 49 54  |  sending KERMIT|
000018e0  20 69 74 20 69 73 20 63  68 65 63 6b 65 64 2c 20  | it is checked, |
000018f0  61 6e 64 20 69 66 0d 0a  20 20 63 6f 72 72 65 63  |and if..  correc|
00001900  74 20 20 74 68 65 20 20  72 65 63 65 69 76 65 72  |t  the  receiver|
00001910  20 20 73 65 6e 64 73 20  61 6e 20 20 61 63 6b 6e  |  sends an  ackn|
00001920  6f 77 6c 65 64 67 6d 65  6e 74 20 28 41 43 4b 29  |owledgment (ACK)|
00001930  20 70 61 63 6b 65 74 20  20 74 6f 20 20 74 65 6c  | packet  to  tel|
00001940  6c 20 20 74 68 65 0d 0a  20 20 73 65 6e 64 65 72  |l  the..  sender|
00001950  20 74 68 61 74 20 74 68  65 20 70 61 63 6b 65 74  | that the packet|
00001960  20 68 61 73 20 62 65 65  6e 20 72 65 63 65 69 76  | has been receiv|
00001970  65 64 20 61 6e 64 20 74  68 61 74 20 69 74 20 77  |ed and that it w|
00001980  61 73 20 69 6e 74 61 63  74 2e 20 4f 74 68 65 72  |as intact. Other|
00001990  77 69 73 65 20 61 0d 0a  20 20 6e 65 67 61 74 69  |wise a..  negati|
000019a0  76 65 20 61 63 6b 6e 6f  77 6c 65 64 67 6d 65 6e  |ve acknowledgmen|
000019b0  74 20 28 4e 41 4b 29 20  70 61 63 6b 65 74 20 20  |t (NAK) packet  |
000019c0  69 73 20 20 20 73 65 6e  74 20 74 6f 20 69 6e 64  |is   sent to ind|
000019d0  69 63 61 74 65 20 20 61  20 20 74 72 61 6e 73 6d  |icate  a  transm|
000019e0  69 73 73 69 6f 6e 0d 0a  20 20 66 61 69 6c 75 72  |ission..  failur|
000019f0  65 2c 20 61 6e 64 20 74  68 69 73 20 70 72 6f 6d  |e, and this prom|
00001a00  70 74 73 20 74 68 65 20  73 65 6e 64 65 72 20 74  |pts the sender t|
00001a10  6f 20 72 65 2d 74 72 61  6e 73 6d 69 74 20 74 68  |o re-transmit th|
00001a20  65 20 70 61 63 6b 65 74  2e 0d 0a 0d 0a 20 20 54  |e packet.....  T|
00001a30  68 65 20 72 65 73 74 20  6f 66 20 74 68 69 73 20  |he rest of this |
00001a40  20 73 65 63 74 69 6f 6e  20 20 64 65 73 63 72 69  | section  descri|
00001a50  62 65 73 20 20 68 6f 77  20 20 74 68 65 20 20 4b  |bes  how  the  K|
00001a60  45 52 4d 49 54 73 20 20  67 6f 20 61 62 6f 75 74  |ERMITs  go about|
00001a70  20 74 68 65 20 61 63 74  75 61 6c 0d 0a 20 20 74  | the actual..  t|
00001a80  72 61 6e 73 6d 69 73 73  69 6f 6e 20 6f 66 20 64  |ransmission of d|
00001a90  61 74 61 2e 20 54 68 69  73 20 69 6e 66 6f 72 6d  |ata. This inform|
00001aa0  61 74 69 6f 6e 20 6d 61  79 20 62 65 20 75 73 65  |ation may be use|
00001ab0  66 75 6c 20 66 6f 72 20  73 69 6d 70 6c 65 20 64  |ful for simple d|
00001ac0  65 62 75 67 67 69 6e 67  2e 20 41 0d 0a 20 20 6d  |ebugging. A..  m|
00001ad0  6f 72 65 20 64 65 74 61  69 6c 65 64 20 6c 6f 6f  |ore detailed loo|
00001ae0  6b 20 61 74 20 74 68 65  20 73 74 72 75 63 74 75  |k at the structu|
00001af0  72 65 20 6f 66 20 61 20  70 61 63 6b 65 74 20 69  |re of a packet i|
00001b00  73 20 67 69 76 65 6e 20  69 6e 20 61 70 70 65 6e  |s given in appen|
00001b10  64 69 78 20 41 2e 0d 0a  0d 0a 0d 0a 20 20 28 61  |dix A.......  (a|
00001b20  29 20 53 65 6e 64 2d 52  65 63 65 69 76 65 20 45  |) Send-Receive E|
00001b30  6e 76 69 72 6f 6e 6d 65  6e 74 0d 0a 0d 0a 0d 0a  |nvironment......|
00001b40  20 20 57 68 65 6e 20 61  20 4b 45 52 4d 49 54 20  |  When a KERMIT |
00001b50  66 69 6c 65 20 74 72 61  6e 73 6d 69 73 73 69 6f  |file transmissio|
00001b60  6e 20 20 69 73 20 20 73  74 61 72 74 65 64 2c 20  |n  is  started, |
00001b70  20 74 68 65 20 20 6c 6f  63 61 6c 20 61 6e 64 20  | the  local and |
00001b80  72 65 6d 6f 74 65 20 4b  45 52 4d 49 54 73 0d 0a  |remote KERMITs..|
00001b90  20 20 65 78 63 68 61 6e  67 65 20 69 6e 69 74 69  |  exchange initi|
00001ba0  61 6c 69 73 61 74 69 6f  6e 20 70 61 63 6b 65 74  |alisation packet|
00001bb0  73 2e 20 20 20 54 68 65  20 70 61 63 6b 65 74 20  |s.   The packet |
00001bc0  74 68 61 74 20 73 74 61  72 74 73 20 61 20 66 69  |that starts a fi|
00001bd0  6c 65 20 74 72 61 6e 73  66 65 72 20 69 73 0d 0a  |le transfer is..|
00001be0  20 20 63 61 6c 6c 65 64  20 61 20 27 73 65 6e 64  |  called a 'send|
00001bf0  2d 69 6e 69 74 27 20 70  61 63 6b 65 74 2e 20 20  |-init' packet.  |
00001c00  54 68 65 20 69 6e 69 74  69 61 6c 69 73 61 74 69  |The initialisati|
00001c10  6f 6e 20 70 61 63 6b 65  74 73 20 63 6f 6e 74 61  |on packets conta|
00001c20  69 6e 20 69 6e 66 6f 72  6d 61 74 69 6f 6e 0d 0a  |in information..|
00001c30  20 20 61 62 6f 75 74 20  74 68 65 20 66 61 63 69  |  about the faci|
00001c40  6c 69 74 69 65 73 20 74  68 61 74 20 65 61 63 68  |lities that each|
00001c50  20 20 4b 45 52 4d 49 54  20 73 75 70 70 6f 72 74  |  KERMIT support|
00001c60  73 2e 20 20 54 68 65 20  69 6e 69 74 69 61 74 6f  |s.  The initiato|
00001c70  72 20 77 69 6c 6c 20 27  6f 66 66 65 72 27 0d 0a  |r will 'offer'..|
00001c80  20 20 69 74 73 20 6f 77  6e 20 66 61 63 69 6c 69  |  its own facili|
00001c90  74 69 65 73 20 74 6f 20  74 68 65 20 6f 74 68 65  |ties to the othe|
00001ca0  72 20 4b 45 52 4d 49 54  20 77 68 69 63 68 20 63  |r KERMIT which c|
00001cb0  61 6e 20 65 69 74 68 65  72 20 61 67 72 65 65 2c  |an either agree,|
00001cc0  20 6f 72 20 72 65 70 6c  79 20 77 69 74 68 0d 0a  | or reply with..|
00001cd0  20 20 61 6e 20 69 6e 69  74 69 61 6c 69 73 61 74  |  an initialisat|
00001ce0  69 6f 6e 20 70 61 63 6b  65 74 20 63 6f 6e 74 61  |ion packet conta|
00001cf0  69 6e 69 6e 67 20 73 6f  6d 65 20 72 65 73 74 72  |ining some restr|
00001d00  69 63 74 69 6f 6e 73 2e  20 20 54 68 69 73 20 20  |ictions.  This  |
00001d10  6e 65 67 6f 74 69 61 74  69 6f 6e 20 69 73 0d 0a  |negotiation is..|
00001d20  20 20 75 73 65 64 20 20  20 74 6f 20 20 64 65 74  |  used   to  det|
00001d30  65 72 6d 69 6e 65 20 20  73 75 63 68 20 20 64 65  |ermine  such  de|
00001d40  74 61 69 6c 73 20 20 61  73 20 20 74 68 65 20 20  |tails  as  the  |
00001d50  6d 61 78 69 6d 75 6d 20  20 20 70 61 63 6b 65 74  |maximum   packet|
00001d60  20 20 20 73 69 7a 65 2c  20 20 20 74 68 65 0d 0a  |   size,   the..|
00001d70  20 20 73 74 61 72 74 2d  6f 66 2d 70 61 63 6b 65  |  start-of-packe|
00001d80  74 20 20 61 6e 64 20 20  65 6e 64 2d 6f 66 2d 70  |t  and  end-of-p|
00001d90  61 63 6b 65 74 20 20 6d  61 72 6b 65 72 20 20 63  |acket  marker  c|
00001da0  68 61 72 61 63 74 65 72  73 2c 20 20 74 68 65 20  |haracters,  the |
00001db0  20 74 79 70 65 20 6f 66  20 63 68 65 63 6b 0d 0a  | type of check..|
00001dc0  20 20 73 65 71 75 65 6e  63 65 2c 20 61 6e 64 20  |  sequence, and |
00001dd0  73 6f 20 66 6f 72 74 68  2e 0d 0a 0d 0a 20 20 4f  |so forth.....  O|
00001de0  6e 63 65 20 62 6f 74 68  20 65 6e 64 73 20 61 72  |nce both ends ar|
00001df0  65 20 69 6e 20 61 67 72  65 65 6d 65 6e 74 20 20  |e in agreement  |
00001e00  61 62 6f 75 74 20 20 74  68 65 20 20 70 61 72 61  |about  the  para|
00001e10  6d 65 74 65 72 73 20 6f  66 20 74 68 65 20 74 72  |meters of the tr|
00001e20  61 6e 73 66 65 72 2c 20  74 68 65 0d 0a 20 20 72  |ansfer, the..  r|
00001e30  65 71 75 65 73 74 65 64  20 20 66 69 6c 65 20 20  |equested  file  |
00001e40  6f 72 20 20 66 69 6c 65  73 20 63 61 6e 20 62 65  |or  files can be|
00001e50  20 74 72 61 6e 73 66 65  72 72 65 64 20 28 6d 75  | transferred (mu|
00001e60  6c 74 69 70 6c 65 20 66  69 6c 65 20 20 74 72 61  |ltiple file  tra|
00001e70  6e 73 66 65 72 73 20 20  61 72 65 0d 0a 20 20 63  |nsfers  are..  c|
00001e80  61 74 65 72 65 64 20 66  6f 72 20 62 79 20 74 68  |atered for by th|
00001e90  65 20 70 72 6f 74 6f 63  6f 6c 29 2e 20 42 65 66  |e protocol). Bef|
00001ea0  6f 72 65 20 61 6e 79 20  64 61 74 61 20 69 73 20  |ore any data is |
00001eb0  73 65 6e 74 20 6f 76 65  72 20 74 68 65 20 6c 69  |sent over the li|
00001ec0  6e 6b 20 74 68 65 20 6e  61 6d 65 0d 0a 20 20 6f  |nk the name..  o|
00001ed0  66 20 74 68 65 20 66 69  6c 65 20 6d 75 73 74 20  |f the file must |
00001ee0  62 65 20 65 73 74 61 62  6c 69 73 68 65 64 2e 20  |be established. |
00001ef0  20 20 41 20 66 69 6c 65  20 68 65 61 64 65 72 20  |  A file header |
00001f00  70 61 63 6b 65 74 20 64  65 66 69 6e 65 73 20 74  |packet defines t|
00001f10  68 65 20 66 69 6c 65 6e  61 6d 65 0d 0a 20 20 28  |he filename..  (|
00001f20  61 6e 64 20 6f 70 74 69  6f 6e 61 6c 6c 79 20 73  |and optionally s|
00001f30  6f 6d 65 20 6f 66 20 74  68 65 20 6f 74 68 65 72  |ome of the other|
00001f40  20 61 74 74 72 69 62 75  74 65 73 20 6f 66 20 74  | attributes of t|
00001f50  68 65 20 66 69 6c 65 29  2e 20 20 20 54 68 65 20  |he file).   The |
00001f60  66 69 6c 65 6e 61 6d 65  20 69 73 0d 0a 20 20 67  |filename is..  g|
00001f70  65 6e 65 72 61 74 65 64  20 62 79 20 74 68 65 20  |enerated by the |
00001f80  73 65 6e 64 65 72 2c 20  20 6f 66 74 65 6e 20 75  |sender,  often u|
00001f90  73 69 6e 67 20 69 74 73  20 6f 77 6e 20 66 69 6c  |sing its own fil|
00001fa0  65 6e 61 6d 65 20 73 79  6e 74 61 78 2e 20 20 54  |ename syntax.  T|
00001fb0  68 69 73 20 6e 61 6d 65  20 69 73 0d 0a 20 20 75  |his name is..  u|
00001fc0  73 65 64 20 20 62 79 20  74 68 65 20 72 65 63 65  |sed  by the rece|
00001fd0  69 76 65 72 20 74 6f 20  63 6f 6e 73 74 72 75 63  |iver to construc|
00001fe0  74 20 61 20 66 69 6c 65  6e 61 6d 65 20 61 63 63  |t a filename acc|
00001ff0  6f 72 64 69 6e 67 20 74  6f 20 20 69 74 73 20 20  |ording to  its  |
00002000  6f 77 6e 20 20 73 79 6e  74 61 78 0d 0a 20 20 72  |own  syntax..  r|
00002010  75 6c 65 73 2c 20 74 68  6f 75 67 68 20 20 74 68  |ules, though  th|
00002020  65 20 20 4b 45 52 4d 49  54 20 20 75 73 65 72 20  |e  KERMIT  user |
00002030  20 63 61 6e 20 20 75 73  75 61 6c 6c 79 20 20 64  | can  usually  d|
00002040  65 66 69 6e 65 20 20 74  68 65 20 20 74 61 72 67  |efine  the  targ|
00002050  65 74 20 66 69 6c 65 6e  61 6d 65 0d 0a 20 20 65  |et filename..  e|
00002060  78 70 6c 69 63 69 74 6c  79 2e 20 20 56 61 72 69  |xplicitly.  Vari|
00002070  6f 75 73 20 20 73 74 72  61 74 65 67 69 65 73 20  |ous  strategies |
00002080  6d 61 79 20 62 65 20 75  73 65 64 20 62 79 20 74  |may be used by t|
00002090  68 65 20 72 65 63 65 69  76 65 72 20 74 6f 20 20  |he receiver to  |
000020a0  68 61 6e 64 6c 65 20 20  74 68 65 0d 0a 20 20 73  |handle  the..  s|
000020b0  69 74 75 61 74 69 6f 6e  20 77 68 65 72 65 20 74  |ituation where t|
000020c0  68 65 20 20 64 65 73 74  69 6e 61 74 69 6f 6e 20  |he  destination |
000020d0  20 66 69 6c 65 20 61 6c  72 65 61 64 79 20 65 78  | file already ex|
000020e0  69 73 74 73 20 2d 20 64  61 74 61 20 6d 61 79 20  |ists - data may |
000020f0  62 65 20 61 70 70 65 6e  64 65 64 0d 0a 20 20 74  |be appended..  t|
00002100  6f 20 74 68 65 20 66 69  6c 65 2c 20 20 69 74 20  |o the file,  it |
00002110  6d 61 79 20 20 6f 76 65  72 2d 77 72 69 74 65 20  |may  over-write |
00002120  74 68 65 20 66 69 6c 65  2c 20 6f 72 20 74 68 65  |the file, or the|
00002130  20 66 69 6c 65 6e 61 6d  65 20 6d 61 79 20 62 65  | filename may be|
00002140  20 61 6c 74 65 72 65 64  20 73 6f 0d 0a 20 20 61  | altered so..  a|
00002150  73 20 74 6f 20 61 76 6f  69 64 20 74 68 65 20 63  |s to avoid the c|
00002160  6c 61 73 68 2e 0d 0a 0d  0a 0d 0a 20 20 4f 6e 63  |lash.......  Onc|
00002170  65 20 74 68 65 20 66 69  6c 65 20 68 65 61 64 65  |e the file heade|
00002180  72 20 70 61 63 6b 65 74  20 68 61 73 20 62 65 65  |r packet has bee|
00002190  6e 20 61 63 63 65 70 74  65 64 2c 20 20 74 68 65  |n accepted,  the|
000021a0  20 64 61 74 61 20 74 72  61 6e 73 66 65 72 20 63  | data transfer c|
000021b0  61 6e 20 62 65 67 69 6e  2e 0d 0a 20 20 54 68 69  |an begin...  Thi|
000021c0  73 20 20 77 69 6c 6c 20  20 70 72 6f 63 65 65 64  |s  will  proceed|
000021d0  20 20 6f 6e 65 20 70 61  63 6b 65 74 20 61 74 20  |  one packet at |
000021e0  61 20 20 74 69 6d 65 2c  20 20 65 61 63 68 20 20  |a  time,  each  |
000021f0  70 61 63 6b 65 74 20 20  62 65 69 6e 67 20 20 70  |packet  being  p|
00002200  6f 73 69 74 69 76 65 6c  79 0d 0a 20 20 61 63 6b  |ositively..  ack|
00002210  6e 6f 77 6c 65 64 67 65  64 20 69 66 20 72 65 63  |nowledged if rec|
00002220  65 69 76 65 64 20 69 6e  74 61 63 74 2c 20 20 6f  |eived intact,  o|
00002230  72 20 6e 65 67 61 74 69  76 65 6c 79 20 61 63 6b  |r negatively ack|
00002240  6e 6f 77 6c 65 64 67 65  64 20 69 66 20 63 6f 72  |nowledged if cor|
00002250  72 75 70 74 65 64 20 69  6e 0d 0a 20 20 73 6f 6d  |rupted in..  som|
00002260  65 20 77 61 79 2e 20 20  4d 75 6c 74 69 70 6c 65  |e way.  Multiple|
00002270  20 63 6f 6e 73 65 63 75  74 69 76 65 20 66 61 69  | consecutive fai|
00002280  6c 75 72 65 73 20 77 69  6c 6c 20 20 75 73 75 61  |lures will  usua|
00002290  6c 6c 79 20 20 63 61 75  73 65 20 20 74 68 65 20  |lly  cause  the |
000022a0  20 74 72 61 6e 73 66 65  72 0d 0a 20 20 74 6f 20  | transfer..  to |
000022b0  20 62 65 20 20 61 62 6f  72 74 65 64 20 20 61 6e  | be  aborted  an|
000022c0  64 20 61 6e 20 20 65 72  72 6f 72 20 20 70 61 63  |d an  error  pac|
000022d0  6b 65 74 20 74 6f 20 62  65 20 74 72 61 6e 73 6d  |ket to be transm|
000022e0  69 74 74 65 64 2c 20 20  6f 6e 20 74 68 65 20 61  |itted,  on the a|
000022f0  73 73 75 6d 70 74 69 6f  6e 0d 0a 20 20 74 68 61  |ssumption..  tha|
00002300  74 20 74 68 65 20 63 6f  6d 6d 75 6e 69 63 61 74  |t the communicat|
00002310  69 6f 6e 73 20 6d 65 64  69 75 6d 20 69 73 20 75  |ions medium is u|
00002320  6e 72 65 6c 69 61 62 6c  65 2e 20 20 50 61 63 6b  |nreliable.  Pack|
00002330  65 74 73 20 6d 61 79 20  62 65 20 72 65 2d 74 72  |ets may be re-tr|
00002340  61 6e 73 6d 69 74 74 65  64 0d 0a 20 20 69 66 20  |ansmitted..  if |
00002350  61 63 6b 6e 6f 77 6c 65  64 67 6d 65 6e 74 20 69  |acknowledgment i|
00002360  73 20 6e 6f 74 20 72 65  63 65 69 76 65 64 20 77  |s not received w|
00002370  69 74 68 69 6e 20 61 20  74 69 6d 65 20 6c 69 6d  |ithin a time lim|
00002380  69 74 20 2d 20 61 20 63  6f 6e 64 69 74 69 6f 6e  |it - a condition|
00002390  20 6b 6e 6f 77 6e 20 61  73 0d 0a 20 20 61 20 74  | known as..  a t|
000023a0  69 6d 65 2d 6f 75 74 2e  20 20 49 66 20 65 76 65  |ime-out.  If eve|
000023b0  72 79 74 68 69 6e 67 20  20 70 72 6f 67 72 65 73  |rything  progres|
000023c0  73 65 73 20 77 65 6c 6c  2c 20 20 74 68 65 20 74  |ses well,  the t|
000023d0  72 61 6e 73 66 65 72 20  77 69 6c 6c 20 65 6e 64  |ransfer will end|
000023e0  20 77 68 65 6e 20 74 68  65 0d 0a 0d 0a 0d 0a 20  | when the...... |
000023f0  20 41 6e 20 49 6e 74 72  6f 64 75 63 74 69 6f 6e  | An Introduction|
00002400  20 74 6f 20 4b 65 72 6d  69 74 20 20 20 20 20 20  | to Kermit      |
00002410  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002430  20 20 20 20 20 20 20 50  61 67 65 20 33 0d 0a 0d  |       Page 3...|
00002440  0a 0d 0a 0d 0a 0d 0a 0d  0a 20 20 66 69 6c 65 20  |.........  file |
00002450  68 61 73 20 62 65 65 6e  20 73 65 6e 74 2e 20 20  |has been sent.  |
00002460  54 68 65 20 20 65 6e 64  20 20 6f 66 20 20 74 68  |The  end  of  th|
00002470  65 20 20 66 69 6c 65 20  20 69 73 20 73 69 67 6e  |e  file  is sign|
00002480  61 6c 6c 65 64 20 62 79  20 61 6e 20 65 6e 64 2d  |alled by an end-|
00002490  6f 66 2d 66 69 6c 65 0d  0a 20 20 70 61 63 6b 65  |of-file..  packe|
000024a0  74 20 20 61 6e 64 2c 20  20 69 66 20 20 74 68 65  |t  and,  if  the|
000024b0  72 65 20 20 61 72 65 20  6e 6f 20 6d 6f 72 65 20  |re  are no more |
000024c0  66 69 6c 65 73 20 74 6f  20 73 65 6e 64 2c 20 20  |files to send,  |
000024d0  61 6e 20 20 65 6e 64 2d  6f 66 2d 74 72 61 6e 73  |an  end-of-trans|
000024e0  6d 69 73 73 69 6f 6e 0d  0a 20 20 70 61 63 6b 65  |mission..  packe|
000024f0  74 20 69 73 20 73 65 6e  74 2e 20 20 4d 6f 73 74  |t is sent.  Most|
00002500  20 4b 45 52 4d 49 54 20  69 6d 70 6c 65 6d 65 6e  | KERMIT implemen|
00002510  74 61 74 69 6f 6e 73 20  77 69 6c 6c 20 61 6c 6c  |tations will all|
00002520  6f 77 20 61 20 73 65 72  69 65 73 20 6f 66 20 66  |ow a series of f|
00002530  69 6c 65 73 20 74 6f 0d  0a 20 20 62 65 20 73 65  |iles to..  be se|
00002540  6e 74 20 69 6e 20 61 20  73 69 6e 67 6c 65 20 74  |nt in a single t|
00002550  72 61 6e 73 61 63 74 69  6f 6e 2c 20 20 61 6e 64  |ransaction,  and|
00002560  20 74 68 65 20 74 77 6f  20 74 79 70 65 73 20 6f  | the two types o|
00002570  66 20 65 6e 64 20 70 61  63 6b 65 74 20 61 72 65  |f end packet are|
00002580  20 6e 65 65 64 65 64 0d  0a 20 20 66 6f 72 20 74  | needed..  for t|
00002590  68 69 73 20 70 75 72 70  6f 73 65 2e 0d 0a 0d 0a  |his purpose.....|
000025a0  0d 0a 20 20 28 62 29 20  53 65 72 76 65 72 20 4d  |..  (b) Server M|
000025b0  6f 64 65 0d 0a 0d 0a 0d  0a 20 20 54 68 65 20 6f  |ode......  The o|
000025c0  72 64 65 72 20 61 6e 64  20 74 79 70 65 20 6f 66  |rder and type of|
000025d0  20 20 70 61 63 6b 65 74  73 20 20 73 65 6e 74 20  |  packets  sent |
000025e0  20 64 75 72 69 6e 67 20  20 61 20 20 4b 45 52 4d  | during  a  KERM|
000025f0  49 54 20 20 73 65 73 73  69 6f 6e 20 69 73 20 73  |IT  session is s|
00002600  6c 69 67 68 74 6c 79 0d  0a 20 20 61 6c 74 65 72  |lightly..  alter|
00002610  65 64 20 20 69 66 20 74  68 65 20 72 65 6d 6f 74  |ed  if the remot|
00002620  65 20 4b 45 52 4d 49 54  20 68 61 73 20 62 65 65  |e KERMIT has bee|
00002630  6e 20 70 75 74 20 69 6e  74 6f 20 73 65 72 76 65  |n put into serve|
00002640  72 20 6d 6f 64 65 2e 20  20 46 6f 72 20 20 69 6e  |r mode.  For  in|
00002650  73 74 61 6e 63 65 2c 0d  0a 20 20 74 68 65 20 6c  |stance,..  the l|
00002660  6f 63 61 6c 20 4b 45 52  4d 49 54 20 6d 69 67 68  |ocal KERMIT migh|
00002670  74 20 77 61 6e 74 20 74  6f 20 73 65 6e 64 20 61  |t want to send a|
00002680  20 63 6f 6d 6d 61 6e 64  20 74 6f 20 74 68 65 20  | command to the |
00002690  72 65 6d 6f 74 65 20 4b  45 52 4d 49 54 2c 20 70  |remote KERMIT, p|
000026a0  6f 73 73 69 62 6c 79 0d  0a 20 20 74 6f 20 63 68  |ossibly..  to ch|
000026b0  61 6e 67 65 20 73 6f 6d  65 20 70 61 72 61 6d 65  |ange some parame|
000026c0  74 65 72 2e 20 20 54 68  69 73 20 77 6f 75 6c 64  |ter.  This would|
000026d0  20 62 65 20 64 6f 6e 65  20 62 79 20 73 65 6e 64  | be done by send|
000026e0  69 6e 67 20 61 20 63 6f  6d 6d 61 6e 64 20 70 61  |ing a command pa|
000026f0  63 6b 65 74 20 74 6f 0d  0a 20 20 74 68 65 20 73  |cket to..  the s|
00002700  65 72 76 65 72 2e 20 20  48 6f 77 65 76 65 72 2c  |erver.  However,|
00002710  20 20 74 68 65 20 20 6c  6f 63 61 6c 20 61 6e 64  |  the  local and|
00002720  20 20 72 65 6d 6f 74 65  20 4b 45 52 4d 49 54 73  |  remote KERMITs|
00002730  20 6d 61 79 20 6e 6f 74  20 68 61 76 65 20 65 78  | may not have ex|
00002740  63 68 61 6e 67 65 64 0d  0a 20 20 69 6e 66 6f 72  |changed..  infor|
00002750  6d 61 74 69 6f 6e 20 73  75 63 68 20 61 73 20 70  |mation such as p|
00002760  61 63 6b 65 74 20 6c 65  6e 67 74 68 2c 20 65 6e  |acket length, en|
00002770  64 2d 6f 66 2d 70 61 63  6b 65 74 20 63 68 61 72  |d-of-packet char|
00002780  61 63 74 65 72 2c 20 20  63 68 65 63 6b 20 73 65  |acter,  check se|
00002790  71 75 65 6e 63 65 2c 0d  0a 20 20 65 74 63 2e 20  |quence,..  etc. |
000027a0  20 28 61 6e 64 20 20 65  76 65 6e 20 20 69 66 20  | (and  even  if |
000027b0  20 74 68 65 79 20 20 68  61 64 2c 20 20 73 6f 6d  | they  had,  som|
000027c0  65 20 20 70 61 72 61 6d  65 74 65 72 73 20 20 20  |e  parameters   |
000027d0  6d 69 67 68 74 20 20 20  63 68 61 6e 67 65 20 20  |might   change  |
000027e0  62 65 74 77 65 65 6e 0d  0a 20 20 74 72 61 6e 73  |between..  trans|
000027f0  61 63 74 69 6f 6e 73 29  2e 20 20 54 6f 20 20 6f  |actions).  To  o|
00002800  76 65 72 63 6f 6d 65 20  74 68 69 73 20 70 6f 74  |vercome this pot|
00002810  65 6e 74 69 61 6c 20 70  72 6f 62 6c 65 6d 2c 20  |ential problem, |
00002820  61 6e 20 69 6e 69 74 2d  69 6e 66 6f 20 20 70 61  |an init-info  pa|
00002830  63 6b 65 74 20 69 73 0d  0a 20 20 73 65 6e 74 20  |cket is..  sent |
00002840  74 6f 20 74 68 65 20 20  73 65 72 76 65 72 20 20  |to the  server  |
00002850  70 72 69 6f 72 20 20 74  6f 20 20 6d 6f 73 74 20  |prior  to  most |
00002860  20 74 72 61 6e 73 61 63  74 69 6f 6e 73 2e 20 20  | transactions.  |
00002870  54 68 69 73 20 20 74 79  70 65 20 6f 66 20 70 61  |This  type of pa|
00002880  63 6b 65 74 20 69 73 0d  0a 20 20 65 78 61 63 74  |cket is..  exact|
00002890  6c 79 20 6c 69 6b 65 20  74 68 65 20 69 6e 69 74  |ly like the init|
000028a0  69 61 6c 69 73 61 74 69  6f 6e 20 70 61 63 6b 65  |ialisation packe|
000028b0  74 20 61 6e 64 20 69 73  20 61 63 6b 6e 6f 77 6c  |t and is acknowl|
000028c0  65 64 67 65 64 20 69 6e  20 74 68 65 20 20 73 61  |edged in the  sa|
000028d0  6d 65 20 77 61 79 2c 0d  0a 20 20 62 75 74 20 64  |me way,..  but d|
000028e0  6f 65 73 20 6e 6f 74 20  63 61 75 73 65 20 74 68  |oes not cause th|
000028f0  65 20 73 65 72 76 65 72  20 74 6f 20 74 68 69 6e  |e server to thin|
00002900  6b 20 74 68 61 74 20 69  74 20 69 73 20 61 62 6f  |k that it is abo|
00002910  75 74 20 74 6f 20 62 65  20 73 65 6e 74 20 61 20  |ut to be sent a |
00002920  66 69 6c 65 2e 0d 0a 0d  0a 20 20 57 68 65 6e 20  |file.....  When |
00002930  61 20 6c 6f 63 61 6c 20  4b 45 52 4d 49 54 2c 20  |a local KERMIT, |
00002940  20 77 68 69 63 68 20 20  69 73 20 69 6e 20 20 63  | which  is in  c|
00002950  6f 6e 74 72 6f 6c 20 20  6f 66 20 61 20 20 72 65  |ontrol  of a  re|
00002960  6d 6f 74 65 20 4b 45 52  4d 49 54 2c 20 20 77 69  |mote KERMIT,  wi|
00002970  73 68 65 73 20 74 6f 0d  0a 20 20 72 65 63 65 69  |shes to..  recei|
00002980  76 65 20 20 61 20 20 66  69 6c 65 20 28 75 73 75  |ve  a  file (usu|
00002990  61 6c 6c 79 20 61 63 68  69 65 76 65 64 20 62 79  |ally achieved by|
000029a0  20 69 73 73 75 69 6e 67  20 74 68 65 20 20 47 45  | issuing the  GE|
000029b0  54 20 20 63 6f 6d 6d 61  6e 64 20 74 6f 20 74 68  |T  command to th|
000029c0  65 20 6c 6f 63 61 6c 0d  0a 20 20 4b 45 52 4d 49  |e local..  KERMI|
000029d0  54 29 20 69 74 20 73 65  6e 64 73 20 61 6e 20 69  |T) it sends an i|
000029e0  6e 69 74 2d 69 6e 66 6f  20 70 61 63 6b 65 74 20  |nit-info packet |
000029f0  74 68 65 6e 2c 20 20 6f  6e 63 65 20 74 68 61 74  |then,  once that|
00002a00  20 68 61 73 20 62 65 65  6e 20 61 63 6b 6e 6f 77  | has been acknow|
00002a10  6c 65 64 67 65 64 2c 0d  0a 20 20 61 6e 20 52 20  |ledged,..  an R |
00002a20  74 79 70 65 20 70 61 63  6b 65 74 2e 20 20 54 68  |type packet.  Th|
00002a30  65 20 20 52 20 20 70 61  63 6b 65 74 20 20 77 69  |e  R  packet  wi|
00002a40  6c 6c 20 69 6e 64 69 63  61 74 65 20 74 6f 20 74  |ll indicate to t|
00002a50  68 65 20 73 65 72 76 65  72 20 74 68 61 74 20 69  |he server that i|
00002a60  74 20 69 73 20 74 6f 0d  0a 20 20 73 65 6e 64 20  |t is to..  send |
00002a70  61 20 66 69 6c 65 2c 20  20 74 68 65 20 6e 61 6d  |a file,  the nam|
00002a80  65 20 6f 66 20 77 68 69  63 68 20 77 69 6c 6c 20  |e of which will |
00002a90  62 65 20 69 6e 20 74 68  65 20 64 61 74 61 20 66  |be in the data f|
00002aa0  69 65 6c 64 20 6f 66 20  74 68 65 20 70 61 63 6b  |ield of the pack|
00002ab0  65 74 2e 20 54 68 65 0d  0a 20 20 72 65 6d 6f 74  |et. The..  remot|
00002ac0  65 20 4b 45 52 4d 49 54  20 77 69 6c 6c 20 72 65  |e KERMIT will re|
00002ad0  73 70 6f 6e 64 20 74 6f  20 74 68 69 73 20 72 65  |spond to this re|
00002ae0  71 75 65 73 74 20 69 6e  20 6f 6e 65 20 6f 66 20  |quest in one of |
00002af0  74 77 6f 20 77 61 79 73  2e 20 20 49 66 20 69 74  |two ways.  If it|
00002b00  20 63 61 6e 6e 6f 74 0d  0a 20 20 66 69 6e 64 20  | cannot..  find |
00002b10  6f 72 20 61 63 63 65 73  73 20 74 68 65 20 72 65  |or access the re|
00002b20  71 75 65 73 74 65 64 20  66 69 6c 65 2c 20 69 74  |quested file, it|
00002b30  20 77 69 6c 6c 20 73 65  6e 64 20 61 6e 20 20 65  | will send an  e|
00002b40  72 72 6f 72 20 20 70 61  63 6b 65 74 20 77 68 69  |rror  packet whi|
00002b50  63 68 20 77 69 6c 6c 0d  0a 20 20 63 6f 6e 74 61  |ch will..  conta|
00002b60  69 6e 20 20 61 6e 20 20  61 70 70 72 6f 70 72 69  |in  an  appropri|
00002b70  61 74 65 20 20 6d 65 73  73 61 67 65 2c 20 6f 74  |ate  message, ot|
00002b80  68 65 72 77 69 73 65 2c  20 69 66 20 61 6c 6c 20  |herwise, if all |
00002b90  69 73 20 77 65 6c 6c 2c  20 69 74 20 77 69 6c 6c  |is well, it will|
00002ba0  20 73 65 6e 64 20 61 0d  0a 20 20 73 65 6e 64 2d  | send a..  send-|
00002bb0  69 6e 69 74 20 70 61 63  6b 65 74 20 61 6e 64 20  |init packet and |
00002bc0  74 68 65 20 74 72 61 6e  73 66 65 72 20 77 69 6c  |the transfer wil|
00002bd0  6c 20 63 6f 6e 74 69 6e  75 65 20 61 73 20 69 6e  |l continue as in|
00002be0  20 28 61 29 20 61 62 6f  76 65 2e 0d 0a 0d 0a 20  | (a) above..... |
00002bf0  20 46 6f 72 20 74 68 65  20 63 61 73 65 20 77 68  | For the case wh|
00002c00  65 6e 20 74 68 65 20 20  6c 6f 63 61 6c 20 20 4b  |en the  local  K|
00002c10  45 52 4d 49 54 20 20 77  61 6e 74 73 20 20 74 6f  |ERMIT  wants  to|
00002c20  20 20 53 45 4e 44 20 61  20 66 69 6c 65 20 74 6f  |  SEND a file to|
00002c30  20 61 20 73 65 72 76 65  72 20 74 68 65 0d 0a 20  | a server the.. |
00002c40  20 74 72 61 6e 73 66 65  72 20 70 72 6f 63 65 65  | transfer procee|
00002c50  64 73 20 61 73 20 69 6e  20 28 61 29 20 61 62 6f  |ds as in (a) abo|
00002c60  76 65 20 77 69 74 68 6f  75 74 20 74 68 65 20 6e  |ve without the n|
00002c70  65 65 64 20 66 6f 72 20  74 68 65 20 69 6e 69 74  |eed for the init|
00002c80  2d 69 6e 66 6f 20 70 61  63 6b 65 74 2e 0d 0a 0d  |-info packet....|
00002c90  0a 20 20 4f 6e 63 65 20  61 20 72 65 6d 6f 74 65  |.  Once a remote|
00002ca0  20 4b 45 52 4d 49 54 20  69 73 20 20 69 6e 20 20  | KERMIT is  in  |
00002cb0  73 65 72 76 65 72 20 20  6d 6f 64 65 20 20 69 74  |server  mode  it|
00002cc0  20 20 77 69 6c 6c 20 20  6f 6e 6c 79 20 72 65 63  |  will  only rec|
00002cd0  65 69 76 65 20 70 61 63  6b 65 74 73 20 61 73 0d  |eive packets as.|
00002ce0  0a 20 20 69 6e 70 75 74  2c 20 73 6f 2c 20 69 6e  |.  input, so, in|
00002cf0  20 6f 72 64 65 72 20 74  6f 20 72 65 63 6f 6e 6e  | order to reconn|
00002d00  65 63 74 20 74 6f 20 74  68 65 20 72 65 6d 6f 74  |ect to the remot|
00002d10  65 20 63 6f 6d 70 75 74  65 72 20 74 6f 20 20 65  |e computer to  e|
00002d20  6e 64 20 74 68 65 20 73  65 73 73 69 6f 6e 2c 0d  |nd the session,.|
00002d30  0a 20 20 69 74 20 77 69  6c 6c 20 62 65 20 6e 65  |.  it will be ne|
00002d40  63 65 73 73 61 72 79 20  74 6f 20 73 68 75 74 20  |cessary to shut |
00002d50  64 6f 77 6e 20 74 68 65  20 73 65 72 76 65 72 20  |down the server |
00002d60  66 69 72 73 74 2e 20 20  20 54 68 69 73 20 69 73  |first.   This is|
00002d70  20 64 6f 6e 65 20 62 79  20 74 79 70 69 6e 67 0d  | done by typing.|
00002d80  0a 20 20 74 68 65 20 20  46 49 4e 49 53 48 20 63  |.  the  FINISH c|
00002d90  6f 6d 6d 61 6e 64 20 74  6f 20 74 68 65 20 6c 6f  |ommand to the lo|
00002da0  63 61 6c 20 4b 45 52 4d  49 54 2c 20 77 68 69 63  |cal KERMIT, whic|
00002db0  68 20 66 6f 72 63 65 73  20 61 20 63 6f 6d 6d 61  |h forces a comma|
00002dc0  6e 64 20 70 61 63 6b 65  74 20 74 6f 20 62 65 0d  |nd packet to be.|
00002dd0  0a 20 20 73 65 6e 74 20  74 6f 20 74 68 65 20 72  |.  sent to the r|
00002de0  65 6d 6f 74 65 20 4b 45  52 4d 49 54 20 74 65 6c  |emote KERMIT tel|
00002df0  6c 69 6e 67 20 69 74 20  74 6f 20 73 68 75 74 20  |ling it to shut |
00002e00  64 6f 77 6e 20 74 68 65  20 73 65 72 76 65 72 2e  |down the server.|
00002e10  0d 0a 0d 0a 0d 0a 0d 0a  0d 0a 0d 0a 0d 0a 0d 0a  |................|
*
00002e30  0d 0a 0d 0a 0d 0a 0d 0a  0d 0a 20 20 41 6e 20 49  |..........  An I|
00002e40  6e 74 72 6f 64 75 63 74  69 6f 6e 20 74 6f 20 4b  |ntroduction to K|
00002e50  65 72 6d 69 74 20 20 20  20 20 20 20 20 20 20 20  |ermit           |
00002e60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002e80  20 20 50 61 67 65 20 34  0d 0a 0d 0a 0d 0a 0d 0a  |  Page 4........|
00002e90  0d 0a 0d 0a 20 20 41 50  50 45 4e 44 49 58 20 41  |....  APPENDIX A|
00002ea0  3a 20 41 20 43 4c 4f 53  45 52 20 4c 4f 4f 4b 20  |: A CLOSER LOOK |
00002eb0  41 54 20 50 41 43 4b 45  54 53 0d 0a 0d 0a 0d 0a  |AT PACKETS......|
00002ec0  20 20 54 68 69 73 20 61  70 70 65 6e 64 69 78 20  |  This appendix |
00002ed0  68 61 73 20 62 65 65 6e  20 69 6e 63 6c 75 64 65  |has been include|
00002ee0  64 20 20 69 6e 20 6f 72  64 65 72 20 74 6f 20 73  |d  in order to s|
00002ef0  68 6f 77 20 77 68 61 74  20 70 61 63 6b 65 74 73  |how what packets|
00002f00  20 61 63 74 75 61 6c 6c  79 20 6c 6f 6f 6b 0d 0a  | actually look..|
00002f10  20 20 6c 69 6b 65 2c 20  61 6e 64 20 74 6f 20 6f  |  like, and to o|
00002f20  66 66 65 72 20 73 6f 6d  65 20 73 6f 72 74 20 6f  |ffer some sort o|
00002f30  66 20 73 74 61 72 74 69  6e 67 20 20 70 6f 69 6e  |f starting  poin|
00002f40  74 20 66 6f 72 20 64 65  62 75 67 67 69 6e 67 2e  |t for debugging.|
00002f50  20 20 4d 6f 73 74 20 4b  45 52 4d 49 54 73 0d 0a  |  Most KERMITs..|
00002f60  20 20 6f 66 66 65 72 20  20 73 6f 6d 65 20 20 73  |  offer  some  s|
00002f70  6f 72 74 20 6f 66 20 64  65 62 75 67 20 66 61 63  |ort of debug fac|
00002f80  69 6c 69 74 79 2c 20 74  68 65 20 6f 75 74 70 75  |ility, the outpu|
00002f90  74 20 66 72 6f 6d 20 20  77 68 69 63 68 20 20 77  |t from  which  w|
00002fa0  69 6c 6c 20 20 62 65 20  20 69 6e 20 20 61 0d 0a  |ill  be  in  a..|
00002fb0  20 20 73 69 6d 69 6c 61  72 20 66 6f 72 6d 20 74  |  similar form t|
00002fc0  6f 20 20 74 68 65 20 20  65 78 61 6d 70 6c 65 20  |o  the  example |
00002fd0  20 73 68 6f 77 6e 20 20  62 65 6c 6f 77 2e 20 20  | shown  below.  |
00002fe0  52 65 66 65 72 65 6e 63  65 20 20 31 20 20 77 69  |Reference  1  wi|
00002ff0  6c 6c 20 67 69 76 65 20  61 20 6d 6f 72 65 0d 0a  |ll give a more..|
00003000  20 20 64 65 74 61 69 6c  65 64 20 64 65 73 63 72  |  detailed descr|
00003010  69 70 74 69 6f 6e 20 6f  66 20 74 68 65 20 73 74  |iption of the st|
00003020  72 75 63 74 75 72 65 20  6f 66 20 61 20 70 61 63  |ructure of a pac|
00003030  6b 65 74 20 74 68 61 6e  20 77 69 6c 6c 20 62 65  |ket than will be|
00003040  20 67 69 76 65 6e 20 68  65 72 65 2e 0d 0a 0d 0a  | given here.....|
00003050  20 20 54 68 65 20 65 78  61 6d 70 6c 65 20 75 73  |  The example us|
00003060  65 64 20 68 65 72 65 20  77 61 73 20 20 63 61 72  |ed here was  car|
00003070  72 69 65 64 20 20 6f 75  74 20 20 62 65 74 77 65  |ried  out  betwe|
00003080  65 6e 20 20 61 20 6d 69  6e 69 20 61 6e 64 20 61  |en  a mini and a|
00003090  20 6d 69 63 72 6f 20 73  79 73 74 65 6d 2e 0d 0a  | micro system...|
000030a0  20 20 54 68 65 20 20 6d  69 6e 69 20 4b 45 52 4d  |  The  mini KERM|
000030b0  49 54 20 77 61 73 20 20  70 75 74 20 20 69 6e 74  |IT was  put  int|
000030c0  6f 20 73 65 72 76 65 72  20 6d 6f 64 65 20 61 6e  |o server mode an|
000030d0  64 2c 20 61 66 74 65 72  20 65 73 63 61 70 69 6e  |d, after escapin|
000030e0  67 20 20 62 61 63 6b 20  74 6f 20 74 68 65 0d 0a  |g  back to the..|
000030f0  20 20 6d 69 63 72 6f 2c  20 74 68 65 20 66 69 6c  |  micro, the fil|
00003100  65 20 74 72 61 6e 73 66  65 72 20 77 61 73 20 69  |e transfer was i|
00003110  6e 69 74 69 61 74 65 64  20 62 79 20 74 68 65 20  |nitiated by the |
00003120  63 6f 6d 6d 61 6e 64 2c  0d 0a 0d 0a 20 20 20 20  |command,....    |
00003130  20 20 20 20 20 47 45 54  20 4b 45 52 4d 54 45 53  |     GET KERMTES|
00003140  54 31 0d 0a 0d 0a 20 20  54 68 69 73 20 63 6f 6d  |T1....  This com|
00003150  6d 61 6e 64 20 69 73 20  61 20 72 65 71 75 65 73  |mand is a reques|
00003160  74 20 74 6f 20 74 68 65  20 6d 69 6e 69 20 4b 45  |t to the mini KE|
00003170  52 4d 49 54 20 74 6f 20  73 65 6e 64 20 74 68 65  |RMIT to send the|
00003180  20 66 69 6c 65 20 4b 45  52 4d 54 45 53 54 31 2e  | file KERMTEST1.|
00003190  0d 0a 0d 0a 20 20 54 68  65 20 70 61 63 6b 65 74  |....  The packet|
000031a0  73 20 77 65 72 65 20 72  65 63 6f 72 64 65 64 20  |s were recorded |
000031b0  64 75 72 69 6e 67 20 20  74 68 65 20 20 74 72 61  |during  the  tra|
000031c0  6e 73 66 65 72 20 20 62  79 20 20 74 68 65 20 6d  |nsfer  by  the m|
000031d0  69 63 72 6f 20 4b 45 52  4d 49 54 20 20 64 65 62  |icro KERMIT  deb|
000031e0  75 67 0d 0a 20 20 66 61  63 69 6c 69 74 79 2c 20  |ug..  facility, |
000031f0  20 77 68 69 63 68 20 20  6f 75 74 70 75 74 73 20  | which  outputs |
00003200  74 68 65 20 63 6f 6e 74  65 6e 74 73 20 6f 66 20  |the contents of |
00003210  61 6c 6c 20 70 61 63 6b  65 74 73 2c 20 73 65 6e  |all packets, sen|
00003220  74 20 61 6e 64 20 72 65  63 65 69 76 65 64 2c 20  |t and received, |
00003230  74 6f 0d 0a 20 20 74 68  65 20 70 72 69 6e 74 65  |to..  the printe|
00003240  72 2e 20 45 61 63 68 20  70 61 63 6b 65 74 20 69  |r. Each packet i|
00003250  73 20 70 72 65 66 69 78  65 64 20 77 69 74 68 20  |s prefixed with |
00003260  65 69 74 68 65 72 20 54  58 3a 20 6f 72 20 52 58  |either TX: or RX|
00003270  3a 20 77 68 65 6e 20 73  65 6e 74 20 74 6f 20 74  |: when sent to t|
00003280  68 65 0d 0a 20 20 70 72  69 6e 74 65 72 20 74 6f  |he..  printer to|
00003290  20 69 6e 64 69 63 61 74  65 20 77 68 65 74 68 65  | indicate whethe|
000032a0  72 20 74 68 65 20 70 61  63 6b 65 74 20 69 73 20  |r the packet is |
000032b0  62 65 69 6e 67 20 74 72  61 6e 73 6d 69 74 74 65  |being transmitte|
000032c0  64 20 6f 72 20 72 65 63  65 69 76 65 64 2e 0d 0a  |d or received...|
000032d0  0d 0a 20 20 54 68 65 20  70 61 63 6b 65 74 73 20  |..  The packets |
000032e0  73 65 6e 74 20 77 65 72  65 20 61 73 20 66 6f 6c  |sent were as fol|
000032f0  6c 6f 77 73 3a 0d 0a 0d  0a 20 20 28 61 29 20 20  |lows:....  (a)  |
00003300  20 20 54 58 3a 2b 20 49  7e 3e 20 40 2d 60 26 31  |  TX:+ I~> @-`&1|
00003310  38 3c 4f 44 3e 0d 0a 20  20 28 62 29 20 20 20 20  |8<OD>..  (b)    |
00003320  52 58 3a 2c 20 59 6e 25  20 40 2d 60 26 31 7e 5f  |RX:, Yn% @-`&1~_|
00003330  3c 4f 44 3e 0d 0a 0d 0a  20 20 28 63 29 20 20 20  |<OD>....  (c)   |
00003340  20 54 58 3a 2c 20 52 4b  45 52 4d 54 45 53 54 31  | TX:, RKERMTEST1|
00003350  5b 3c 4f 44 3e 0d 0a 20  20 28 64 29 20 20 20 20  |[<OD>..  (d)    |
00003360  52 58 3a 2c 20 53 6e 25  20 40 2d 60 26 31 7e 59  |RX:, Sn% @-`&1~Y|
00003370  3c 4f 44 3e 0d 0a 20 20  28 65 29 20 20 20 20 54  |<OD>..  (e)    T|
00003380  58 3a 2b 20 59 7e 3e 20  40 2d 60 26 31 48 3c 4f  |X:+ Y~> @-`&1H<O|
00003390  44 3e 0d 0a 0d 0a 20 20  28 66 29 20 20 20 20 52  |D>....  (f)    R|
000033a0  58 3a 2b 21 46 4b 45 52  4d 54 45 53 54 21 3c 4f  |X:+!FKERMTEST!<O|
000033b0  44 3e 0d 0a 20 20 28 67  29 20 20 20 20 54 58 3a  |D>..  (g)    TX:|
000033c0  60 21 59 3f 3c 4f 44 3e  0d 0a 0d 0a 20 20 28 68  |`!Y?<OD>....  (h|
000033d0  29 20 20 20 20 52 58 3a  7a 22 44 74 68 69 73 20  |)    RX:z"Dthis |
000033e0  69 73 20 61 20 74 65 73  74 20 66 69 6c 65 20 74  |is a test file t|
000033f0  6f 20 73 68 6f 77 60 4d  60 4a 77 68 61 74 20 70  |o show`M`Jwhat p|
00003400  61 63 6b 65 74 73 20 6c  6f 6f 6b 20 6c 69 6b 65  |ackets look like|
00003410  20 77 68 65 6e 60 4d 60  4a 0d 0a 20 20 20 20 20  | when`M`J..     |
00003420  20 20 20 20 64 61 74 61  20 69 73 20 62 65 69 6e  |    data is bein|
00003430  67 20 74 72 61 6e 73 6d  69 74 74 65 64 28 3c 4f  |g transmitted(<O|
00003440  44 3e 0d 0a 20 20 28 69  29 20 20 20 20 54 58 3a  |D>..  (i)    TX:|
00003450  60 22 59 40 3c 4f 44 3e  0d 0a 0d 0a 20 20 28 6a  |`"Y@<OD>....  (j|
00003460  29 20 20 20 20 52 58 3a  36 60 44 20 62 79 20 60  |)    RX:6`D by `|
00003470  4d 60 4a 4b 45 52 4d 49  54 2e 60 4d 60 4a 4d 3c  |M`JKERMIT.`M`JM<|
00003480  4f 44 3e 0d 0a 20 20 28  6b 29 20 20 20 20 54 58  |OD>..  (k)    TX|
00003490  3a 60 60 59 41 3c 4f 44  3e 0d 0a 0d 0a 20 20 28  |:``YA<OD>....  (|
000034a0  6c 29 20 20 20 20 52 58  3a 60 24 5a 43 3c 4f 44  |l)    RX:`$ZC<OD|
000034b0  3e 0d 0a 20 20 28 6d 29  20 20 20 20 54 58 3a 60  |>..  (m)    TX:`|
000034c0  24 59 42 3c 4f 44 3e 0d  0a 0d 0a 20 20 28 6e 29  |$YB<OD>....  (n)|
000034d0  20 20 20 20 52 58 3a 60  25 42 2c 3c 4f 44 3e 0d  |    RX:`%B,<OD>.|
000034e0  0a 20 20 28 6f 29 20 20  20 20 54 58 3a 60 25 59  |.  (o)    TX:`%Y|
000034f0  43 3c 4f 44 3e 0d 0a 0d  0a 20 20 28 70 29 20 20  |C<OD>....  (p)  |
00003500  20 20 54 58 3a 24 20 47  46 34 3c 4f 44 3e 0d 0a  |  TX:$ GF4<OD>..|
00003510  20 20 28 71 29 20 20 20  20 52 58 3a 60 20 59 3e  |  (q)    RX:` Y>|
00003520  3c 4f 44 3e 0d 0a 0d 0a  0d 0a 0d 0a 20 20 54 68  |<OD>........  Th|
00003530  65 20 66 69 72 73 74 20  74 68 72 65 65 20 63 68  |e first three ch|
00003540  61 72 61 63 74 65 72 73  20 6f 66 20 20 65 61 63  |aracters of  eac|
00003550  68 20 20 70 61 63 6b 65  74 20 20 6d 61 6b 65 20  |h  packet  make |
00003560  75 70 20 74 68 65 20 68  65 61 64 65 72 20 61 6e  |up the header an|
00003570  64 20 69 6e 64 69 63 61  74 65 0d 0a 20 20 74 68  |d indicate..  th|
00003580  65 20 73 69 7a 65 20 6f  66 20 74 68 65 20 70 61  |e size of the pa|
00003590  63 6b 65 74 2c 20 74 68  65 20 70 61 63 6b 65 74  |cket, the packet|
000035a0  20 6e 75 6d 62 65 72 2c  20 20 61 6e 64 20 20 74  | number,  and  t|
000035b0  68 65 20 20 74 79 70 65  20 20 6f 66 20 20 74 68  |he  type  of  th|
000035c0  65 20 20 70 61 63 6b 65  74 2c 0d 0a 20 20 72 65  |e  packet,..  re|
000035d0  73 70 65 63 74 69 76 65  6c 79 2e 20 20 54 68 65  |spectively.  The|
000035e0  20 20 3c 4f 44 3e 20 20  61 74 20 20 74 68 65 20  |  <OD>  at  the |
000035f0  20 65 6e 64 20 20 6f 66  20 20 65 61 63 68 20 70  | end  of  each p|
00003600  61 63 6b 65 74 20 69 73  20 74 68 65 20 65 6e 64  |acket is the end|
00003610  2d 6f 66 2d 70 61 63 6b  65 74 0d 0a 20 20 69 6e  |-of-packet..  in|
00003620  64 69 63 61 74 6f 72 20  28 69 6e 20 74 68 69 73  |dicator (in this|
00003630  20 63 61 73 65 20 61 20  63 61 72 72 69 61 67 65  | case a carriage|
00003640  20 72 65 74 75 72 6e 29  2e 20 54 68 65 20 63 68  | return). The ch|
00003650  61 72 61 63 74 65 72 20  69 6d 6d 65 64 69 61 74  |aracter immediat|
00003660  65 6c 79 20 62 65 66 6f  72 65 0d 0a 20 20 74 68  |ely before..  th|
00003670  65 20 20 3c 4f 44 3e 20  20 69 73 20 20 61 20 20  |e  <OD>  is  a  |
00003680  63 68 65 63 6b 73 75 6d  20 63 68 61 72 61 63 74  |checksum charact|
00003690  65 72 2e 20 20 28 54 68  65 20 61 6c 67 6f 72 69  |er.  (The algori|
000036a0  74 68 6d 20 20 75 73 65  64 20 20 66 6f 72 20 20  |thm  used  for  |
000036b0  63 6f 64 69 6e 67 20 74  68 65 0d 0a 20 20 63 68  |coding the..  ch|
000036c0  65 63 6b 73 75 6d 20 63  61 6e 20 62 65 20 66 6f  |ecksum can be fo|
000036d0  75 6e 64 20 69 6e 20 72  65 66 65 72 65 6e 63 65  |und in reference|
000036e0  20 31 2e 29 0d 0a 0d 0a  0d 0a 20 20 41 6e 20 49  | 1.)......  An I|
000036f0  6e 74 72 6f 64 75 63 74  69 6f 6e 20 74 6f 20 4b  |ntroduction to K|
00003700  65 72 6d 69 74 20 20 20  20 20 20 20 20 20 20 20  |ermit           |
00003710  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00003730  20 20 50 61 67 65 20 35  0d 0a 0d 0a 0d 0a 0d 0a  |  Page 5........|
00003740  0d 0a 0d 0a 20 20 54 68  65 20 63 68 61 72 61 63  |....  The charac|
00003750  74 65 72 73 20 62 65 74  77 65 65 6e 20 74 68 65  |ters between the|
00003760  20 68 65 61 64 65 72 20  20 61 6e 64 20 20 74 68  | header  and  th|
00003770  65 20 20 63 68 65 63 6b  73 75 6d 20 20 63 68 61  |e  checksum  cha|
00003780  72 61 63 74 65 72 20 6d  61 6b 65 20 75 70 20 74  |racter make up t|
00003790  68 65 0d 0a 20 20 64 61  74 61 20 66 69 65 6c 64  |he..  data field|
000037a0  2e 0d 0a 0d 0a 20 20 54  68 65 20 70 61 63 6b 65  |.....  The packe|
000037b0  74 20 74 79 70 65 73 20  75 73 65 64 20 69 6e 20  |t types used in |
000037c0  74 68 69 73 20 74 72 61  6e 73 66 65 72 2c 20 20  |this transfer,  |
000037d0  69 6e 64 69 63 61 74 65  64 20 62 79 20 74 68 65  |indicated by the|
000037e0  20 74 68 69 72 64 20 63  68 61 72 61 63 74 65 72  | third character|
000037f0  20 6f 66 0d 0a 20 20 74  68 65 20 70 61 63 6b 65  | of..  the packe|
00003800  74 2c 20 77 65 72 65 20  61 73 20 66 6f 6c 6c 6f  |t, were as follo|
00003810  77 73 3a 0d 0a 0d 0a 20  20 20 20 20 20 20 20 20  |ws:....         |
00003820  49 20 20 20 69 6e 69 74  2d 69 6e 66 6f 2e 0d 0a  |I   init-info...|
00003830  20 20 20 20 20 20 20 20  20 59 20 20 20 61 63 6b  |         Y   ack|
00003840  6e 6f 77 6c 65 64 67 6d  65 6e 74 0d 0a 20 20 20  |nowledgment..   |
00003850  20 20 20 20 20 20 52 20  20 20 52 20 74 79 70 65  |      R   R type|
00003860  0d 0a 20 20 20 20 20 20  20 20 20 53 20 20 20 73  |..         S   s|
00003870  65 6e 64 2d 69 6e 69 74  2e 0d 0a 20 20 20 20 20  |end-init...     |
00003880  20 20 20 20 46 20 20 20  66 69 6c 65 20 68 65 61  |    F   file hea|
00003890  64 65 72 0d 0a 20 20 20  20 20 20 20 20 20 44 20  |der..         D |
000038a0  20 20 64 61 74 61 0d 0a  20 20 20 20 20 20 20 20  |  data..        |
000038b0  20 5a 20 20 20 65 6e 64  2d 6f 66 2d 66 69 6c 65  | Z   end-of-file|
000038c0  0d 0a 20 20 20 20 20 20  20 20 20 42 20 20 20 65  |..         B   e|
000038d0  6e 64 2d 6f 66 2d 74 72  61 6e 73 66 65 72 0d 0a  |nd-of-transfer..|
000038e0  20 20 20 20 20 20 20 20  20 47 20 20 20 4b 45 52  |         G   KER|
000038f0  4d 49 54 20 63 6f 6d 6d  61 6e 64 0d 0a 0d 0a 0d  |MIT command.....|
00003900  0a 20 20 50 61 63 6b 65  74 20 28 61 29 2c 20 61  |.  Packet (a), a|
00003910  6e 20 69 6e 69 74 2d 69  6e 66 6f 20 70 61 63 6b  |n init-info pack|
00003920  65 74 2c 20 20 77 61 73  20 73 65 6e 74 20 62 79  |et,  was sent by|
00003930  20 74 68 65 20 6d 69 63  72 6f 20 70 72 69 6f 72  | the micro prior|
00003940  20 74 6f 20 73 65 6e 64  69 6e 67 20 74 68 65 0d  | to sending the.|
00003950  0a 20 20 72 65 71 75 65  73 74 20 66 6f 72 20 61  |.  request for a|
00003960  20 66 69 6c 65 2e 20 20  54 68 65 20 6d 69 6e 69  | file.  The mini|
00003970  20 61 63 6b 6e 6f 77 6c  65 64 67 65 64 20 74 68  | acknowledged th|
00003980  69 73 20 70 61 63 6b 65  74 20 69 6e 20 74 68 65  |is packet in the|
00003990  20 75 73 75 61 6c 20 77  61 79 2e 20 54 68 65 0d  | usual way. The.|
000039a0  0a 20 20 65 78 63 68 61  6e 67 65 20 6f 66 20 74  |.  exchange of t|
000039b0  68 65 73 65 20 74 77 6f  20 70 61 63 6b 65 74 73  |hese two packets|
000039c0  20 69 73 20 6e 65 63 65  73 73 61 72 79 20 74 6f  | is necessary to|
000039d0  20 65 73 74 61 62 6c 69  73 68 20 77 68 61 74 20  | establish what |
000039e0  66 61 63 69 6c 69 74 69  65 73 20 65 61 63 68 0d  |facilities each.|
000039f0  0a 20 20 4b 45 52 4d 49  54 20 68 61 73 2e 0d 0a  |.  KERMIT has...|
00003a00  0d 0a 20 20 50 61 63 6b  65 74 20 28 63 29 20 77  |..  Packet (c) w|
00003a10  61 73 20 74 68 65 20 72  65 71 75 65 73 74 20 66  |as the request f|
00003a20  72 6f 6d 20 74 68 65 20  6d 69 63 72 6f 20 74 6f  |rom the micro to|
00003a30  20 74 68 65 20 6d 69 6e  69 20 66 6f 72 20 74 68  | the mini for th|
00003a40  65 20 66 69 6c 65 20 4b  45 52 4d 54 45 53 54 31  |e file KERMTEST1|
00003a50  0d 0a 20 20 61 6e 64 20  69 73 20 61 6e 20 52 20  |..  and is an R |
00003a60  74 79 70 65 20 70 61 63  6b 65 74 2e 20 20 54 68  |type packet.  Th|
00003a70  65 20 6d 69 6e 69 20 20  69 6e 69 74 69 61 74 65  |e mini  initiate|
00003a80  64 20 20 74 68 65 20 66  69 6c 65 20 20 74 72 61  |d  the file  tra|
00003a90  6e 73 66 65 72 20 62 79  20 73 65 6e 64 69 6e 67  |nsfer by sending|
00003aa0  0d 0a 20 20 61 20 73 65  6e 64 2d 69 6e 69 74 20  |..  a send-init |
00003ab0  70 61 63 6b 65 74 2c 20  70 61 63 6b 65 74 20 28  |packet, packet (|
00003ac0  64 29 2c 20 77 68 69 63  68 20 74 68 65 20 6d 69  |d), which the mi|
00003ad0  63 72 6f 20 69 6e 20 74  75 72 6e 20 61 63 6b 6e  |cro in turn ackn|
00003ae0  6f 77 6c 65 64 67 65 64  2e 20 28 4e 6f 74 65 3a  |owledged. (Note:|
00003af0  0d 0a 20 20 70 61 63 6b  65 74 73 20 28 61 29 20  |..  packets (a) |
00003b00  61 6e 64 20 28 62 29 20  61 72 65 20 76 65 72 79  |and (b) are very|
00003b10  20 73 69 6d 69 6c 61 72  20 20 74 6f 20 70 61 63  | similar  to pac|
00003b20  6b 65 74 73 20 28 64 29  20 61 6e 64 20 28 65 29  |kets (d) and (e)|
00003b30  2e 20 20 49 6e 20 62 6f  74 68 20 63 61 73 65 73  |.  In both cases|
00003b40  0d 0a 20 20 69 6e 66 6f  72 6d 61 74 69 6f 6e 20  |..  information |
00003b50  77 61 73 20 62 65 69 6e  67 20 65 78 63 68 61 6e  |was being exchan|
00003b60  67 65 64 20 61 62 6f 75  74 20 74 68 65 20 66 61  |ged about the fa|
00003b70  63 69 6c 69 74 69 65 73  20 74 68 61 74 20 65 61  |cilities that ea|
00003b80  63 68 20 4b 45 52 4d 49  54 20 68 61 64 20 74 6f  |ch KERMIT had to|
00003b90  0d 0a 20 20 6f 66 66 65  72 2e 20 20 53 65 65 20  |..  offer.  See |
00003ba0  72 65 66 65 72 65 6e 63  65 20 31 20 66 6f 72 20  |reference 1 for |
00003bb0  6d 6f 72 65 20 64 65 74  61 69 6c 73 2e 29 0d 0a  |more details.)..|
00003bc0  0d 0a 20 20 46 72 6f 6d  20 70 61 63 6b 65 74 20  |..  From packet |
00003bd0  28 66 29 20 74 6f 20 70  61 63 6b 65 74 20 20 28  |(f) to packet  (|
00003be0  6f 29 20 74 68 65 20 70  61 74 74 65 72 6e 20 6f  |o) the pattern o|
00003bf0  66 20 27 72 65 63 65 69  76 65 20 64 61 74 61 20  |f 'receive data |
00003c00  74 68 65 6e 20 61 63 6b  6e 6f 77 6c 65 64 67 65  |then acknowledge|
00003c10  0d 0a 20 20 69 74 27 20  20 77 61 73 20 72 65 70  |..  it'  was rep|
00003c20  65 61 74 65 64 20 75 6e  74 69 6c 20 74 68 65 20  |eated until the |
00003c30  74 72 61 6e 73 66 65 72  20 20 77 61 73 20 20 63  |transfer  was  c|
00003c40  6f 6d 70 6c 65 74 65 2e  20 20 50 61 63 6b 65 74  |omplete.  Packet|
00003c50  73 20 20 28 68 29 20 20  61 6e 64 20 20 28 6a 29  |s  (h)  and  (j)|
00003c60  0d 0a 20 20 63 6f 6e 74  61 69 6e 20 74 68 65 20  |..  contain the |
00003c70  61 63 74 75 61 6c 20 63  6f 6e 74 65 6e 74 73 20  |actual contents |
00003c80  6f 66 20 74 68 65 20 66  69 6c 65 20 62 65 69 6e  |of the file bein|
00003c90  67 20 74 72 61 6e 73 66  65 72 72 65 64 2e 20 54  |g transferred. T|
00003ca0  68 65 20 27 23 4d 23 4a  27 20 73 74 72 69 6e 67  |he '#M#J' string|
00003cb0  0d 0a 20 20 69 6e 20 74  68 65 20 20 64 61 74 61  |..  in the  data|
00003cc0  20 20 66 69 65 6c 64 20  6f 66 20 74 68 65 73 65  |  field of these|
00003cd0  20 70 61 63 6b 65 74 73  20 69 6e 64 69 63 61 74  | packets indicat|
00003ce0  65 20 74 68 65 20 63 61  72 72 69 61 67 65 20 72  |e the carriage r|
00003cf0  65 74 75 72 6e 73 20 20  61 6e 64 20 6c 69 6e 65  |eturns  and line|
00003d00  0d 0a 20 20 66 65 65 64  73 20 69 6e 20 74 68 65  |..  feeds in the|
00003d10  20 66 69 6c 65 2e 20 20  54 68 65 20 20 72 65 61  | file.  The  rea|
00003d20  73 6f 6e 20 20 66 6f 72  20 20 74 68 69 73 20 72  |son  for  this r|
00003d30  65 70 72 65 73 65 6e 74  61 74 69 6f 6e 20 69 73  |epresentation is|
00003d40  20 74 68 61 74 20 74 68  65 20 4b 45 52 4d 49 54  | that the KERMIT|
00003d50  0d 0a 20 20 70 72 6f 74  6f 63 6f 6c 20 20 6f 6e  |..  protocol  on|
00003d60  6c 79 20 20 61 6c 6c 6f  77 73 20 20 70 72 69 6e  |ly  allows  prin|
00003d70  74 61 62 6c 65 20 20 63  68 61 72 61 63 74 65 72  |table  character|
00003d80  73 20 74 6f 20 62 65 20  75 73 65 64 20 20 69 6e  |s to be used  in|
00003d90  20 20 70 61 63 6b 65 74  73 20 20 28 69 2e 65 2e  |  packets  (i.e.|
00003da0  0d 0a 20 20 63 68 61 72  61 63 74 65 72 73 20 77  |..  characters w|
00003db0  69 74 68 20 41 53 43 49  49 20 76 61 6c 75 65 73  |ith ASCII values|
00003dc0  20 62 65 74 77 65 65 6e  20 33 32 20 61 6e 64 20  | between 32 and |
00003dd0  31 32 36 20 69 6e 63 6c  75 73 69 76 65 29 2e 0d  |126 inclusive)..|
00003de0  0a 0d 0a 20 20 50 72 69  6f 72 20 74 6f 20 74 68  |...  Prior to th|
00003df0  65 20 73 74 61 72 74 20  6f 66 20 20 74 68 65 20  |e start of  the |
00003e00  20 66 69 6c 65 20 20 74  72 61 6e 73 66 65 72 20  | file  transfer |
00003e10  20 28 70 61 63 6b 65 74  73 20 28 61 29 20 74 6f  | (packets (a) to|
00003e20  20 28 63 29 29 2c 20 74  68 65 20 70 61 63 6b 65  | (c)), the packe|
00003e30  74 0d 0a 20 20 6e 75 6d  62 65 72 20 20 72 65 6d  |t..  number  rem|
00003e40  61 69 6e 65 64 20 20 61  74 20 20 30 20 20 28 72  |ained  at  0  (r|
00003e50  65 70 72 65 73 65 6e 74  65 64 20 62 79 20 61 20  |epresented by a |
00003e60  73 70 61 63 65 29 2e 20  20 41 66 74 65 72 20 74  |space).  After t|
00003e70  68 69 73 20 68 6f 77 65  76 65 72 2c 20 20 74 68  |his however,  th|
00003e80  65 0d 0a 20 20 70 61 63  6b 65 74 20 20 6e 75 6d  |e..  packet  num|
00003e90  62 65 72 20 20 77 61 73  20 20 69 6e 63 72 65 6d  |ber  was  increm|
00003ea0  65 6e 74 65 64 20 20 62  79 20 31 20 66 6f 72 20  |ented  by 1 for |
00003eb0  65 61 63 68 20 70 61 63  6b 65 74 20 74 68 61 74  |each packet that|
00003ec0  20 77 61 73 20 73 75 63  63 65 73 73 66 75 6c 6c  | was successfull|
00003ed0  79 0d 0a 20 20 74 72 61  6e 73 66 65 72 72 65 64  |y..  transferred|
00003ee0  2e 20 20 54 68 65 20 61  63 6b 6e 6f 77 6c 65 64  |.  The acknowled|
00003ef0  67 6d 65 6e 74 20 70 61  63 6b 65 74 73 20 66 72  |gment packets fr|
00003f00  6f 6d 20 74 68 65 20 6d  69 63 72 6f 20 68 61 76  |om the micro hav|
00003f10  65 20 74 68 65 20 73 61  6d 65 20 70 61 63 6b 65  |e the same packe|
00003f20  74 0d 0a 20 20 6e 75 6d  62 65 72 20 61 73 20 74  |t..  number as t|
00003f30  68 65 20 70 61 63 6b 65  74 20 74 68 61 74 20 77  |he packet that w|
00003f40  61 73 20 62 65 69 6e 67  20 61 63 6b 6e 6f 77 6c  |as being acknowl|
00003f50  65 64 67 65 64 2e 20 54  68 65 20 70 61 63 6b 65  |edged. The packe|
00003f60  74 20 6e 75 6d 62 65 72  20 69 73 20 63 6f 64 65  |t number is code|
00003f70  64 0d 0a 20 20 69 6e 74  6f 20 61 20 73 69 6e 67  |d..  into a sing|
00003f80  6c 65 20 63 68 61 72 61  63 74 65 72 2c 20 20 62  |le character,  b|
00003f90  61 73 65 64 20 20 6f 6e  20 41 53 43 49 49 20 76  |ased  on ASCII v|
00003fa0  61 6c 75 65 73 2c 20 61  63 63 6f 72 64 69 6e 67  |alues, according|
00003fb0  20 74 6f 20 74 68 65 20  61 6c 67 6f 72 69 74 68  | to the algorith|
00003fc0  6d 0d 0a 20 20 73 65 74  20 64 6f 77 6e 20 69 6e  |m..  set down in|
00003fd0  20 72 65 66 65 72 65 6e  63 65 20 31 2e 0d 0a 0d  | reference 1....|
00003fe0  0a 0d 0a 20 20 50 61 63  6b 65 74 73 20 28 6c 29  |...  Packets (l)|
00003ff0  20 61 6e 64 20 28 6e 29  20 77 65 72 65 20 73 65  | and (n) were se|
00004000  6e 74 20 74 6f 20 73 69  67 6e 69 66 79 20 74 68  |nt to signify th|
00004010  65 20 65 6e 64 2d 6f 66  2d 66 69 6c 65 20 61 6e  |e end-of-file an|
00004020  64 20 65 6e 64 2d 6f 66  2d 74 72 61 6e 73 66 65  |d end-of-transfe|
00004030  72 0d 0a 20 20 72 65 73  70 65 63 74 69 76 65 6c  |r..  respectivel|
00004040  79 20 61 6e 64 20 63 6f  6e 74 61 69 6e 20 6e 6f  |y and contain no|
00004050  20 64 61 74 61 2e 0d 0a  0d 0a 20 20 50 61 63 6b  | data.....  Pack|
00004060  65 74 20 28 70 29 20 77  61 73 20 6e 6f 74 20 70  |et (p) was not p|
00004070  61 72 74 20 20 6f 66 20  20 74 68 65 20 20 66 69  |art  of  the  fi|
00004080  6c 65 20 20 74 72 61 6e  73 66 65 72 2c 20 20 62  |le  transfer,  b|
00004090  75 74 20 20 77 61 73 20  61 20 4b 45 52 4d 49 54  |ut  was a KERMIT|
000040a0  20 63 6f 6d 6d 61 6e 64  0d 0a 20 20 70 61 63 6b  | command..  pack|
000040b0  65 74 2c 20 20 77 68 69  63 68 20 20 72 65 73 75  |et,  which  resu|
000040c0  6c 74 65 64 20 20 66 72  6f 6d 20 74 68 65 20 46  |lted  from the F|
000040d0  49 4e 49 53 48 20 63 6f  6d 6d 61 6e 64 20 67 69  |INISH command gi|
000040e0  76 65 6e 20 74 6f 20 74  68 65 20 6d 69 63 72 6f  |ven to the micro|
000040f0  20 4b 45 52 4d 49 54 2e  0d 0a 20 20 54 68 65 20  | KERMIT...  The |
00004100  64 61 74 61 20 66 69 65  6c 64 20 6f 66 20 20 74  |data field of  t|
00004110  68 65 20 20 4b 45 52 4d  49 54 20 20 63 6f 6d 6d  |he  KERMIT  comm|
00004120  61 6e 64 20 20 70 61 63  6b 65 74 20 20 63 6f 6e  |and  packet  con|
00004130  74 61 69 6e 65 64 20 20  61 20 20 73 69 6e 67 6c  |tained  a  singl|
00004140  65 20 6c 65 74 74 65 72  0d 0a 20 20 63 6f 6d 6d  |e letter..  comm|
00004150  61 6e 64 2c 20 69 6e 20  74 68 69 73 20 63 61 73  |and, in this cas|
00004160  65 20 61 6e 20 46 2c 20  69 6e 64 69 63 61 74 69  |e an F, indicati|
00004170  6e 67 20 74 6f 20 74 68  65 20 6d 69 6e 69 20 4b  |ng to the mini K|
00004180  45 52 4d 49 54 20 20 74  68 61 74 20 20 69 74 20  |ERMIT  that  it |
00004190  20 77 61 73 20 20 74 6f  0d 0a 20 20 73 68 75 74  | was  to..  shut|
000041a0  20 20 64 6f 77 6e 20 20  69 74 73 20 20 73 65 72  |  down  its  ser|
000041b0  76 65 72 2e 20 20 20 50  61 63 6b 65 74 20 28 71  |ver.   Packet (q|
000041c0  29 20 77 61 73 20 61 6e  20 61 63 6b 6e 6f 77 6c  |) was an acknowl|
000041d0  65 64 67 6d 65 6e 74 20  74 6f 20 74 68 69 73 20  |edgment to this |
000041e0  63 6f 6d 6d 61 6e 64 2e  0d 0a 20 20 4e 6f 74 65  |command...  Note|
000041f0  20 74 68 61 74 20 74 68  65 20 70 61 63 6b 65 74  | that the packet|
00004200  20 6e 75 6d 62 65 72 20  20 77 61 73 20 20 73 65  | number  was  se|
00004210  74 20 62 61 63 6b 20 74  6f 20 30 20 73 69 6e 63  |t back to 0 sinc|
00004220  65 20 74 68 65 73 65 20  74 77 6f 20 70 61 63 6b  |e these two pack|
00004230  65 74 73 20 77 65 72 65  0d 0a 20 20 6e 6f 74 20  |ets were..  not |
00004240  70 61 72 74 20 6f 66 20  74 68 65 20 66 69 6c 65  |part of the file|
00004250  20 74 72 61 6e 73 66 65  72 2e 0d 0a 0d 0a 0d 0a  | transfer.......|
00004260  0d 0a 0d 0a 20 20 41 6e  20 49 6e 74 72 6f 64 75  |....  An Introdu|
00004270  63 74 69 6f 6e 20 74 6f  20 4b 65 72 6d 69 74 20  |ction to Kermit |
00004280  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000042a0  20 20 20 20 20 20 20 20  20 20 20 20 50 61 67 65  |            Page|
000042b0  20 36 0d 0a 0d 0a 0d 0a  0d 0a 0d 0a 0d 0a 20 20  | 6............  |
000042c0  41 50 50 45 4e 44 49 58  20 42 20 3a 20 52 45 46  |APPENDIX B : REF|
000042d0  45 52 45 4e 43 45 53 0d  0a 0d 0a 0d 0a 20 20 5b  |ERENCES......  [|
000042e0  31 5d 20 20 4b 45 52 4d  49 54 20 50 72 6f 74 6f  |1]  KERMIT Proto|
000042f0  63 6f 6c 20 4d 61 6e 75  61 6c 20 28 53 69 78 74  |col Manual (Sixt|
00004300  68 20 20 45 64 69 74 69  6f 6e 29 2e 20 20 46 72  |h  Edition).  Fr|
00004310  61 6e 6b 20 64 61 20 43  72 75 7a 2c 20 43 6f 6c  |ank da Cruz, Col|
00004320  75 6d 62 69 61 0d 0a 20  20 20 20 20 20 20 55 6e  |umbia..       Un|
00004330  69 76 65 72 73 69 74 79  20 43 65 6e 74 65 72 20  |iversity Center |
00004340  66 6f 72 20 43 6f 6d 70  75 74 69 6e 67 20 41 63  |for Computing Ac|
00004350  74 69 76 69 74 69 65 73  20 4e 65 77 20 59 6f 72  |tivities New Yor|
00004360  6b 2c 20 4e 2e 59 2e 20  31 30 30 32 37 2e 0d 0a  |k, N.Y. 10027...|
00004370  0d 0a 20 20 20 20 20 20  20 54 68 65 20 73 61 6d  |..       The sam|
00004380  65 20 69 6e 66 6f 72 6d  61 74 69 6f 6e 20 69 73  |e information is|
00004390  20 63 6f 76 65 72 65 64  20 69 6e 20 61 20 6d 6f  | covered in a mo|
000043a0  72 65 20 69 6e 66 6f 72  6d 61 6c 20 77 61 79 2c  |re informal way,|
000043b0  20 77 69 74 68 20 66 61  72 20 6d 6f 72 65 0d 0a  | with far more..|
000043c0  20 20 20 20 20 20 20 69  6e 20 74 68 65 20 77 61  |       in the wa|
000043d0  79 20 6f 66 20 65 78 70  6c 61 6e 61 74 69 6f 6e  |y of explanation|
000043e0  20 61 6e 64 20 65 78 61  6d 70 6c 65 2c 20 69 6e  | and example, in|
000043f0  0d 0a 0d 0a 20 20 20 20  20 20 20 22 4b 65 72 6d  |....       "Kerm|
00004400  69 74 20 3a 20 41 20 46  69 6c 65 20 54 72 61 6e  |it : A File Tran|
00004410  73 66 65 72 20 50 72 6f  74 6f 63 6f 6c 22 20 62  |sfer Protocol" b|
00004420  79 20 46 72 61 6e 6b 20  64 61 20 43 72 75 7a 20  |y Frank da Cruz |
00004430  28 70 75 62 2e 20 44 69  67 69 74 61 6c 20 50 72  |(pub. Digital Pr|
00004440  65 73 73 29 0d 0a 0d 0a  0d 0a 0d 0a 0d 0a 20 20  |ess)..........  |
00004450  41 50 50 45 4e 44 49 58  20 43 20 3a 20 57 48 45  |APPENDIX C : WHE|
00004460  52 45 20 54 4f 20 47 45  54 20 4b 45 52 4d 49 54  |RE TO GET KERMIT|
00004470  0d 0a 0d 0a 0d 0a 20 20  4b 65 72 6d 69 74 20 70  |......  Kermit p|
00004480  72 6f 67 72 61 6d 73 20  61 72 65 20 61 76 61 69  |rograms are avai|
00004490  6c 61 62 6c 65 20 6f 6e  20 20 6d 61 6e 79 20 20  |lable on  many  |
000044a0  62 75 6c 6c 65 74 69 6e  20 62 6f 61 72 64 20 73  |bulletin board s|
000044b0  79 73 74 65 6d 73 20 61  6e 64 20 66 72 6f 6d 20  |ystems and from |
000044c0  75 73 65 72 0d 0a 20 20  67 72 6f 75 70 73 2e 20  |user..  groups. |
000044d0  20 54 68 65 72 65 20 61  72 65 20 61 20 66 65 77  | There are a few|
000044e0  20 63 65 6e 74 72 65 73  20 74 68 61 74 20 63 61  | centres that ca|
000044f0  6e 20 70 72 6f 76 69 64  65 20 61 6c 6c 20 6b 6e  |n provide all kn|
00004500  6f 77 6e 20 69 6d 70 6c  65 6d 65 6e 74 61 74 69  |own implementati|
00004510  6f 6e 73 2c 0d 0a 20 20  61 73 20 66 6f 6c 6c 6f  |ons,..  as follo|
00004520  77 73 3a 0d 0a 0d 0a 20  20 61 2e 20 57 6f 72 6c  |ws:....  a. Worl|
00004530  64 2d 57 69 64 65 20 44  69 73 74 72 69 62 75 74  |d-Wide Distribut|
00004540  69 6f 6e 0d 0a 0d 0a 20  20 20 20 20 20 20 20 20  |ion....         |
00004550  20 20 20 20 20 20 20 20  4b 65 72 6d 69 74 20 44  |        Kermit D|
00004560  69 73 74 72 69 62 75 74  69 6f 6e 0d 0a 20 20 20  |istribution..   |
00004570  20 20 20 20 20 20 20 20  20 20 20 20 20 20 43 6f  |              Co|
00004580  6c 75 6d 62 69 61 20 55  6e 69 76 65 72 73 69 74  |lumbia Universit|
00004590  79 20 43 65 6e 74 65 72  20 66 6f 72 20 43 6f 6d  |y Center for Com|
000045a0  70 75 74 69 6e 67 20 41  63 74 69 76 69 74 69 65  |puting Activitie|
000045b0  73 0d 0a 20 20 20 20 20  20 20 20 20 20 20 20 20  |s..             |
000045c0  20 20 20 20 37 74 68 20  46 6c 6f 6f 72 0d 0a 20  |    7th Floor.. |
000045d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000045e0  36 31 32 20 57 65 73 74  20 31 31 35 74 68 20 53  |612 West 115th S|
000045f0  74 72 65 65 74 0d 0a 20  20 20 20 20 20 20 20 20  |treet..         |
00004600  20 20 20 20 20 20 20 20  4e 65 77 20 59 6f 72 6b  |        New York|
00004610  0d 0a 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00004620  20 20 20 4e 59 20 31 30  30 32 35 0d 0a 20 20 20  |   NY 10025..   |
00004630  20 20 20 20 20 20 20 20  20 20 20 20 20 20 55 6e  |              Un|
00004640  69 74 65 64 20 53 74 61  74 65 73 0d 0a 0d 0a 20  |ited States.... |
00004650  20 62 2e 20 44 69 73 74  72 69 62 75 74 69 6f 6e  | b. Distribution|
00004660  20 69 6e 20 74 68 65 20  55 4b 20 61 6e 64 20 49  | in the UK and I|
00004670  72 65 6c 61 6e 64 20 6f  6e 6c 79 0d 0a 0d 0a 20  |reland only.... |
00004680  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00004690  4b 65 72 6d 69 74 20 44  69 73 74 72 69 62 75 74  |Kermit Distribut|
000046a0  69 6f 6e 0d 0a 20 20 20  20 20 20 20 20 20 20 20  |ion..           |
000046b0  20 20 20 20 20 20 44 65  70 61 72 74 6d 65 6e 74  |      Department|
000046c0  20 6f 66 20 43 6f 6d 70  75 74 69 6e 67 0d 0a 20  | of Computing.. |
000046d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000046e0  43 6f 6d 70 75 74 65 72  20 43 65 6e 74 72 65 0d  |Computer Centre.|
000046f0  0a 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00004700  20 20 4c 61 6e 63 61 73  74 65 72 20 55 6e 69 76  |  Lancaster Univ|
00004710  65 72 73 69 74 79 0d 0a  20 20 20 20 20 20 20 20  |ersity..        |
00004720  20 20 20 20 20 20 20 20  20 4c 61 6e 63 61 73 74  |         Lancast|
00004730  65 72 20 4c 41 31 20 34  59 57 0d 0a 20 20 20 20  |er LA1 4YW..    |
00004740  20 20 20 20 20 20 20 20  20 20 20 20 20 55 6e 69  |             Uni|
00004750  74 65 64 20 4b 69 6e 67  64 6f 6d 0d 0a 0d 0a 0d  |ted Kingdom.....|
00004760  0a 0d 0a 0d 0a 0d 0a 0d  0a 0d 0a 0d 0a 0d 0a 0d  |................|
*
00004780  0a 0d 0a 0d 0a 0d 0a 20  20 41 6e 20 49 6e 74 72  |.......  An Intr|
00004790  6f 64 75 63 74 69 6f 6e  20 74 6f 20 4b 65 72 6d  |oduction to Kerm|
000047a0  69 74 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |it              |
000047b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000047c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 50  |               P|
000047d0  61 67 65 20 37 0d 0a 0d  0a 0d 0a 0d 0a 0d 0a     |age 7..........|
000047df
INTRO.m0
INTRO.m1
INTRO.m2
INTRO.m4
INTRO.m5