home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / sperryunivac1100p.zip / univac.ann next >
Internet Message Format  |  1984-10-04  |  5KB

  1. Date: Thu, 04 Oct 84 14:51:26 EDT   
  2. From: Edgar B. Butt <BUTT@UMD2.ARPA>
  3. To: sy.fdc@cu20b
  4. Subject: Kermit in Pascal for the Sperry 1100
  5.  
  6. Here is a Kermit implementation for the Sperry 1100 systems written 
  7. in Pascal.  It has been run successfully here at the University of Maryland,
  8. College Park, and at SUNY, Albany.  Please add it to your selection 
  9. of Kermits.  I would appreciate feedback from anyone who tries it.  
  10.  
  11. The first page of code consists of comments explaining how to   
  12. use and generate Kermit1100.
  13.  
  14. Hop someone finds it useful,
  15.  
  16. Edgar Butt (Butt@umd2.arpa) 
  17. Computer Science Center 
  18. University of Maryland  
  19. College Park, Maryland 20742
  20. (301) 454-2946  
  21.  
  22. The source for Kermit1100 version 2.0 begins on the next line.  
  23. {Kermit1100 - see first executable line in main block for version   
  24.  
  25.    KERMIT1100 is yet another Kermit written to run on the Sperry (Univac)   
  26.    1100 series of computers.  It is written in Pascal to be compiled on 
  27.    the NOSC Pascal Compiler, version 2.2 or later.  This compiler is
  28.    available from the Computer Science Center of the University of  
  29.    Maryland, College Park, for a nominal service charge.
  30.  
  31.    Kermit aficianodos may notice that the structure of this version 
  32.    differs from other versions in that packets are read and sequence
  33.    checked in the main program loop and are then dispatched to the  
  34.    proper input or output state with a single case statement.   
  35.    This structure has allowed the various state processes to be 
  36.    relatively uncluttered.  While doing this implementation I   
  37.    discovered that NAK's are like tadpole tails.  They seem like
  38.    a neat idea at first, but as the frog emerges, they serve no 
  39.    useful purpose.  Likewise, I have been unable to find a case 
  40.    in which NAK's are necessary.  Sending an ACK for the last   
  41.    good packet received is just as good.  If I'm wrong, I am sure   
  42.    that some swamp dweller out there will let me know.  
  43.    (Not to worry, I handle incoming NAK's even though they are not  
  44.    necessary.)  
  45.  
  46.    By way of a quick synopsys of features, this version of Kermit has:  
  47.  
  48.       Simple server mode - processes S and R packets
  49.       8-bit quoting (Turned on by Q-option) 
  50.       Repeat count prefixes 
  51.       Error packet generation and processing
  52.  
  53.    Kermit 1100 is called as a processor with the following control card:
  54.  
  55.       @Q*F.KERMIT,OPTIONS 1100SPEC,REMOTESPEC   
  56.  
  57.       Q*F. is the file in which the processor resides.  
  58.       1100SPEC is the 1100 file or element on which Kermit will operate.
  59.       REMOTESPEC is the file name sent to the remote Kermit(a fib of sorts) 
  60.       OPTIONS:  
  61.          B - big buffers.  Kermit1100 normally tells the remote Kermit to send
  62.              packets that will fit in 84 characters.  B-option causes it to
  63.              request the maximum size Kermit packets (which ain't as big as you
  64.              might wish)  Make sure that your communications hardware and
  65.              software will let the long packets get through.
  66.          C - assume for sending or receiving that records are to be separated
  67.              by CR instead of CR-LF 
  68.          L - log in the element KERMITLOG.MDSSS all file reads and writes and
  69.              all communication sends and receives. MDSSS is the month, day and
  70.              seconds/4 encoded base 32 (0,...,9,A,...,V). If a catalogued file
  71.              'KERMITLOG' is assignable, it is used.  Otherwise a temporary file
  72.              is created.
  73.          Q - allow eight-bit quoting for sending or receiving.  If the file 
  74.              being sent or received has 8-bit data and if the remote kermit 
  75.              is capable of 8-bit quoting, then all 8-bits of data can be
  76.              sent or received.  
  77.          R - expect to receive data.  Put the data in 1100SPEC if specified 
  78.              or in the file or element name sent from the remote Kermit.  No
  79.              transformation on the incoming name is done at present so it   
  80.              had better be good.
  81.          S - send 1100SPEC to the remote Kermit.  If REMOTESPEC is specified,
  82.              put it in the file header packet.  Otherwise put 1100SPEC in the
  83.              packet.
  84.          T - test mode.  Send (actually print on a terminal) packets as if  
  85.              an S-option had been specified without reading ACK's.
  86.          W - If the S-option is used, wait 30 seconds before starting to send
  87.  
  88. Kermit1100 tries not to exit until an EOF is received in order to process   
  89. multiple requests from the remote Kermit.   
  90.  
  91.    Happy hopping,   
  92.  
  93.       Edgar Butt  (BUTT@UMD2.ARPA)  
  94.       Computer Science Center   
  95.       University of Maryland
  96.       College Park, Maryland 20742  
  97.       Phone (301) 454-2946  
  98.  
  99. }   
  100.