home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / harris100 / h100kerdoc.txt < prev    next >
Text File  |  2020-01-01  |  14KB  |  331 lines

  1. INSTALLATION:
  2.  
  3. If you received this from HUE (Harris Users' Exchange), you should have
  4. received the following files:
  5.  
  6.   2000KERM*KERM.DOC  this documentation
  7.  
  8.   2000KERM*KERMSRV   executable Kermit Server -- rename this to
  9.                      be on the 0SYST* qualifier
  10.  
  11.   2000KERM*HARRIS    on-line help file giving a brief command summary
  12.                      (must be given Public Read access)
  13.  
  14.   2000KERM*KERM:J    jobstream used to recompile KERMSRV
  15.  
  16.   2000KERM*K:SERVE   Fortran source for main program
  17.   2000KERM*K:SEND    Fortran source for sending files (i.e. from Harris)
  18.   2000KERM*K:RECV    Fortran source for receiving files (i.e. to Harris)
  19.   2000KERM*K:COMMND  Fortran source implementing remote commands
  20.   2000KERM*K:DIRECT  Fortran source implementing directory command
  21.   2000KERM*K:UTIL    Fortran source for Kermit protocol primitives
  22.   2000KERM*K:VSUBS   Assembler source for miscellaneous subroutines
  23.  
  24. Otherwise, if you received this from Columbia University's Kermit tape or by
  25. electronic mail, you will need to compile the source code to create the
  26. KERMSRV program.  In this case you should have received the following files:
  27.  
  28.   H100KER.DOC  save this as 2000KERM*KERM.DOC
  29.   H100KER.JCL  save this as 2000KERM*KERM:J
  30.   H100KER.F77  save this as 2000KERM*K:SOURCE
  31.   H100KER.ASM  save this as 2000KERM*K:VSUBS
  32.   H100KER.HLP  save this as 2000KERM*HARRIS and give it Public Read access
  33.  
  34. Once renamed, the files are as described above.  Note that the source files
  35. K:SERVE through K:UTIL are collected together into the single file K:SOURCE.
  36. Simply type "$JS KERM:J" to compile.
  37.  
  38. ------------------------------------------------------------------------
  39.  
  40. WHAT IT DOES:
  41.  
  42.      "Kermit" programs are used to transfer files between different
  43.   computers over ordinary serial communications lines.  Kermits in
  44.   various forms exist for almost every type of computer and operating
  45.   system.  One might think of Kermit of as a mutual language by which
  46.   unlike systems can talk with each other.  In order to transfer a file,
  47.   one only needs to start a Kermit on each of the two machines and
  48.   then issue simple Kermit commands to get the transfer started.  Kermit
  49.   has mechanisms to maintain the integrity of data even over noisy phone
  50.   lines where transmissions might otherwise become garbled.
  51.  
  52.      A true Kermit has the ability to be both a "local Kermit" and a
  53.   "remote kermit".  In any Kermit session, one Kermit is local and the
  54.   other is remote.  In essence, the local Kermit tells the remote kermit
  55.   what to do and the remote kermit obeys, regardless of which direction
  56.   the file is being transferred.  In this regard, KERMSRV is not a true
  57.   Kermit.  KERMSRV operates only as a remote Kermit and thus acts on
  58.   instructions by some other local Kermit.  What consequences does this
  59.   have?  For one, Harris to Harris transfers are not possible using
  60.   KERMSRV on both ends.  For another, KERMSRV cannot be used to call up
  61.   another computer and initiate a file tranfer.  In other words, no
  62.   dial-out Kermit sessions are possible, only dial-in (or direct
  63.   terminal connection) ones.  Furthermore,  all interaction with KERMSRV
  64.   is done only through the local Kermit's "Server" commands.
  65.  
  66. HOW TO USE IT:
  67.  
  68.   To begin with, one typically connects to the Harris as if the local
  69.   computer were a terminal, using the terminal emulation capabilities of
  70.   the local Kermit to do so.  After signing on, the user invokes KERMSRV
  71.   on the Harris, whereupon the following message will be displayed:
  72.  
  73.       SERVER MODE ENABLED -- type the appropriate key
  74.       sequence to escape back to your local Kermit...
  75.  
  76.   The exact key sequence to type depends on the particular version of
  77.   (local) Kermit being used.  For instance, in the case of MS-Kermit
  78.   on the IBM PC under DOS, one would type a <ctrl>] followed by a "c"
  79.   to exit terminal emulation and return to command level of MS-Kermit.
  80.  
  81.   Once back at command level, one can SEND or GET files, or perform
  82.   various other operations using "server" commands.  To get a short
  83.   summary of the server commands which are implemented, try the
  84.   command "remote help".
  85.  
  86. ------------------------------------------------------------------------
  87.  
  88. EXAMPLE:
  89.  
  90.   To illustrate the use of KERMSRV, I will describe the procedure that
  91.   Sam, an IBM PC user, might use to transfer files.  The details when
  92.   using other Kermits will differ slightly.
  93.  
  94.       dialogue                            comments
  95.       --------                            --------
  96.  
  97. C:> mskermit                        Sam invokes the DOS version of Kermit
  98.                                     on his PC
  99.  
  100. IBM PC Kermit-MS V2.29  26 May 86
  101.  
  102. Kermit-MS> set port 1               Sam sets the characteristics of his
  103.                                     communications line with the Harris
  104. Kermit-MS> set baud 9600
  105.  
  106. Kermit-MS> set parity even
  107.  
  108. Kermit-MS> connect                  Sam begins terminal emulation
  109.                                     then signs onto the Harris
  110. ^G
  111. VOS 5.1.0  WU BIOSTATISTICS
  112. ENTER SIGN-ON
  113. 1234SQS SAMMY
  114.  
  115. ** GOOD AFTERNOON SAM, IT'S 22 SEP 1986  13:51:21
  116.  
  117. KERMSRV                             Sam invokes KERMSRV on the Harris
  118.  
  119. HARRIS KERMIT SERVER  --  version 1.02 (Sept 86) SR
  120.  
  121. [logging names of send/receive files to LO]
  122.  
  123.  
  124. SERVER MODE ENABLED -- type the appropriate key
  125. sequence to escape back to your local Kermit...
  126.  
  127. ^]c                                 Sam types control/] followed by the
  128.                                     letter "C" to get back to MSKERMIT
  129.                                     (may be different in other Kermits)
  130.  
  131. Kermit-MS> REM HELP                 Sam requests a summary of commands
  132.                                     that he can use
  133.  . . .
  134.  
  135. Kermit-MS> GET                      Sam prepares to transfer a file from
  136.                                     the Harris to the PC
  137.  Remote Source File: 1234QUAL*TEXTFILE
  138.  Local Destination File: A:TXT.FIL
  139.  
  140.    receiving: in progress
  141.  . . .
  142.    receiving: completed
  143.  
  144. Kermit-MS> SEND                     Sam prepares to tranfer a file from
  145.                                     the PC to the Harris
  146.  Local Source File: PC.FIL
  147.  Remote Destination File: HARFILE
  148.  
  149.    sending: in progress
  150.  . . .
  151.    sending: completed
  152.  
  153. Kermit-MS> REM HELP                 Sam forgot how to quit, so he asks
  154.                                     for another command summary
  155.  . . .
  156.  
  157. Kermit-MS> BYE                      Sam logs off the Harris and exits
  158.                                     back to DOS
  159. C:>
  160.  
  161.       [end of dialogue]
  162.  
  163. ------------------------------------------------------------------------
  164.  
  165. SUMMARY OF FEATURES IMPLEMENTED AND NOT IMPLEMENTED IN VERSION 1.06
  166.  
  167.       what it can do:
  168.  
  169.             remote operation
  170.             transfer 7 bit ascii (text) files
  171.             transfer file groups via wildcard send/get
  172.             on-line help
  173.             on-line directory information about files or file groups
  174.             remote shutdown or logout
  175.             debugging option to log packet traffic
  176.  
  177.       what it can't do:
  178.  
  179.             local operation
  180.             terminal emulation
  181.             8th bit prefixing
  182.             repeat count processing
  183.             extended block check types
  184.             JCL (host) commands
  185.  
  186. ------------------------------------------------------------------------
  187.  
  188. WILDCARD COMMANDS:
  189.  
  190.   the wildcard character "?" can be used in the GET and REMOTE DIR
  191.   commands to operate on groups of files.  KERMSRV will attempt to
  192.   match all disk areanames where ? replaces any substring of zero or
  193.   more characters.  For example, GET ?OO? will get the files OO,
  194.   FOO, BALOON, and any others containing "OO".  REMOTE DIR A? will
  195.   return directory information on all areanames in the current
  196.   qualifier beginning with the letter "A".
  197.  
  198. ------------------------------------------------------------------------
  199.  
  200. TECHNICAL NOTES:
  201.  
  202.   This program, KERMSRV, was born of my need to transfer files between
  203.   our aging Harris 100 and an IBM PC.  It implements the "server"
  204.   portion of the "Kermit" protocol, as described in version 3 of the
  205.   protocol manual (see reference below).
  206.  
  207.   I wrote this program especially for Harris computers which are
  208.   configured with a "MUX" as opposed to the more recent CNP or DMACP
  209.   I/O processors, since the Pascal-based Harris Kermit which was already
  210.   in existence does not accommodate such a configuration.  As such, I
  211.   have not taken advantage of many of the special features offered by
  212.   those devices (notably timeouts and buffered I/O via "hot read"),
  213.   but have opted instead for simpler, albeit less efficient, modes
  214.   of communication.  In any case, this program should work properly
  215.   on a Harris machine in any configuration.
  216.  
  217.   Specifically, incoming packets are read using symbolic input mode
  218.   rather than binary input mode.  (For details of these modes, see
  219.   the VOS I/O services manual under "TTY functions codes".)  Binary
  220.   mode would have been desirable in that it gives the ability to read
  221.   one character at a time.  However, without using "hot read" for
  222.   buffering, binary reads are not fast enough to keep up at higher
  223.   baud rates.  Since hot I/O is not available on MUX based systems,
  224.   we have to settle for the record-at-a-time symbolic input mode, and
  225.   leave the buffering to VOS.  The two biggest ramifications are
  226.   (1) abort and other control characters cannot be trapped and
  227.   processed individually, and (2) the size of the input buffer is
  228.   fixed at system generation time, and is often set to 80 characters,
  229.   regardless of the size of the buffer used in the $I/O call.
  230.  
  231.  
  232. ------------------------------------------------------------------------
  233.  
  234. REVISION HISTORY:
  235.  
  236.   This program was written using Harris Fortran 77 on a Harris H100-1
  237.   computer (VOS 4.1.1 operating system).  It was tested at up to 9600
  238.   baud against Columbia University's "MSKERMIT" version 2.27 (see below)
  239.   on an IBM PC/AT running DOS 3.0.  I wrote the first version of
  240.   KERMSRV in January, 1986
  241.  
  242.   version 1.00  Jan, 1986, by Skip Russell : initial release
  243.  
  244.   version 1.01  Feb, 1986, by S.R. :
  245.      brought up to version 5 of the protocol manual (dated April 1984)
  246.      and tested using MSKERMIT version 2.28; also implemented the
  247.      following remote commands:
  248.         -- HELP command to issue summary of available remote commands
  249.         -- LOGOUT ("bye") command to log off the Harris job
  250.         -- DIRECTORY command to issue information about a single disk
  251.            area (for now; plan to add wildcard match in future)
  252.  
  253.   version 1.02  Sept, 1986, by S.R. :
  254.      -- implemented full DIRECTORY command (wildcard character "?")
  255.      -- tested using MSKERMIT version 2.29 (dated 26 May 86)
  256.      -- moved to non-SAU Fortran 77 compiler for portablity
  257.  
  258.   version 1.03  Nov, 1986, by S.R. :
  259.      -- brought up to VOS 5.1.0 (required changes in interpretation of
  260.         file access bits in "REMOTE DIRECTORY" command handler)
  261.      -- fixed logic in RECVSW to correctly respond to error packets
  262.  
  263.   version 1.04  April, 1987, by S.R. :
  264.      -- added code to allow GETs of file groups using the "?" wildcard
  265.         character.
  266.  
  267.   version 1.05  May, 1987, by S.R. :
  268.      -- Corrected error in SWOPEN.  GETs of file groups failed in
  269.         cases where the qualifier contained trailing blanks.  The fix
  270.         consisted of enclosing the file name in quotes.
  271.  
  272.   version 1.06  June, 1987, by S.R. :
  273.      -- Added code in RDISK to distinguish between EOF and EOT.  Harris
  274.         disk areas containing embedded EOFs can now be sent without
  275.         truncating trailing records.  The EOF is sent as a record
  276.         containing the string "<EOF>".
  277.  
  278. ------------------------------------------------------------------------
  279.  
  280. BEWARES:
  281.  
  282. -- Many Harris systems treat the XOFF or control-S character as
  283.    an abort character.  If this is the case with your system, ensure
  284.    that flow control is turned off by the local Kermit before
  285.    transferring files.
  286.  
  287. -- IBM PC users using MS-Kermit version 2.29 or 2.29a should note
  288.    that when flow-control is turned off, a NULL character is
  289.    substituted for the XOFF.  Unfortunately, this is also an abort
  290.    character on many Harris systems.  Transfers can usually be made
  291.    to work by using a RAM disk (VDISK) on the PC or lower baud rates
  292.    to avoid buffer overflows, while keeping flow-control on.
  293.  
  294. -- MS-Kermit 2.29a and 2.29b (IBM PC under DOS) had a bug where packets
  295.    of 94 characters were sent despite the request by KERMSRV to limit
  296.    the packet size to 80.  The fix is to manually set the send packet-
  297.    length to 80.  (This has been fixed in MS-Kermit 2.30)
  298.  
  299. ------------------------------------------------------------------------
  300.  
  301. REFERENCES
  302.  
  303.   For a complete discussion of the Kermit design philosophy and
  304.   detailed descriptions of Kermit commands, see the "KERMIT USER'S
  305.   GUIDE" by Frank da Cruz, Daphne Tzoar, and Bill Catchings.
  306.  
  307.   For a detailed description of the Kermit protocol, see the
  308.   "KERMIT PROTOCOL MANUAL" by Frank da Cruz and Bill Catchings.
  309.  
  310.   These two documents, as well as general information about Kermit,
  311.   MSKERMIT and other implementations of Kermit for almost any type
  312.   of computer or operating system, are available for the cost of
  313.   distribution, from:
  314.  
  315.      KERMIT Distribution
  316.      Columbia University Center for Computing Activities
  317.      612 West 115th Street
  318.      7th Floor
  319.      New York, NY  10025
  320.  
  321.   or send electronic mail to: Info-Kermit-Request@CU20B.ARPA
  322.  
  323. ------------------------------------------------------------------------
  324.  
  325.   This document was last revised on February 25, 1988
  326.  
  327.   Skip Russell
  328.   Division of Biostatistics
  329.   Washington University in St. Louis
  330.   electronic mail address: c04689sr@WUVMD.BITNET
  331.