home *** CD-ROM | disk | FTP | other *** search
/ kermit.columbia.edu / kermit.columbia.edu.tar / kermit.columbia.edu / cdccompass / cybker.gen < prev    next >
Text File  |  1988-08-15  |  8KB  |  203 lines

  1. Overview of Cyber (NOS) Kermit.
  2.  
  3. Programmer         A. V. Le Blanc
  4. Language           COMPASS 3.6-587
  5. Documentation      A. V. Le Blanc
  6. Date               March 1986
  7. Operating System   NOS 2.2 at PSR level 596
  8. Field length       2,922  (decimal)  words, including I/O buffers and
  9.                    system text
  10.  
  11. Cyber Kermit capabilities at a glance:
  12.  
  13. Remote operation                 Yes
  14. Local operation                  No
  15. Transfer text files              Yes
  16. Transfer binary files            Yes
  17. Wildcard send                    No
  18. File transfer interruption       Yes
  19. Filename collisions avoided      Yes
  20. Can time out                     No
  21. 8th bit prefixing                Yes (required for binary transfers)
  22. Repeat count prefixing           Yes
  23. Alternate block checks           No
  24. Long packets                     No
  25. Terminal emulation               No
  26. Communication settings           Yes (where practical)
  27. Transaction logging              Yes
  28. Debug logging                    Yes
  29. Packet logging                   Yes
  30. Acts as a server                 Yes
  31. Advanced server functions        Some
  32. Local file management            No
  33. Command/Init files               Yes (coded format)
  34. File attribute packets           No
  35. Command macros                   No
  36.  
  37. Note:  The value of parity must be selected at  compile  time.   Only
  38.        one-character checksums are supported.   Because of the diffi-
  39.        culty  of  appropriate  error recovery,  Cyber Kermit does not
  40.        allow Remote Host commands;  however, packets of this type are
  41.        accepted and used for remote status inquiry and for the remote
  42.        selection of file types.   A further departure  from  Kermit's
  43.        'official' definition is that the error count is reset to zero
  44.        after each packet rather than after each file.
  45.  
  46.  
  47.  
  48. Files.
  49.  
  50. In addition to the present file, I am supplying three files:
  51.  
  52. (1)  The source code (in COMPASS).
  53.  
  54. (2)  A CCL procedure which creates  the structured help file required
  55.      by the program.
  56.  
  57. (3)  Our Manchester user manual in line printer format (column 1 con-
  58.      trol characters, but no underscores, italics, or bold print).
  59.  
  60.  
  61. All files except the source code are ASCII 6/12 files; if you receive
  62. the source in ASCII and convert it to 6-bit display code using
  63.  
  64.   $FCOPY,P=asciisource,N=sixbitsource,PC=ASCII,NC=DIS,R.
  65.  
  66. the source will be ready  to generate conditional code appropriate to
  67. 64-character or 63-character sites.  Before compiling the program you
  68. must select one of the available parities, the one which accords best
  69. with the default parity selected at your site.   At this time you may
  70. alter the following assembly constants by editing the  following  EQU
  71. statements which occur near the start of the source code:
  72.  
  73.    PARIT    EQU    2           parity: 0 = zero, 1 = odd, 2 = even
  74.    TBUFL    EQU    301B        buffer length for terminal files
  75.    WBUFL    EQU    501B        buffer length for mass storage files
  76.    LBUFL    EQU    301B        buffer length for log file
  77.    DEFPLEN  EQU    94          default packet length to request
  78.    DEFESCA  EQU    3           default (ASCII code) local escape char
  79.    DEFTIME  EQU    20          default timeout to request in seconds
  80.    DEFRETR  EQU    5           default retries allowed per packet
  81.  
  82. The mass storage buffer  WBUFL may be increased slightly if you wish,
  83. but the buffers are rather small to reduce the time needed to get the
  84. program back into memory when it is swapped out.  The constant called
  85. ILLEGIT limits the values to which the local escape character and the
  86. packet marker may be set;  instructions for changing these values can
  87. be found in the preceding comment.
  88.  
  89. If your site has access to the system  OPL,  attach it under the name
  90. OPL and give the command
  91.  
  92.   $COMPASS,I=sixbitsource,B=KERMBIN,L=KERLIST.
  93.  
  94. If your site does not have access to the system  OPL,  delete the six
  95. XTEXT lines (two at the start and four at the end of the source), re-
  96. place the first line with the line
  97.  
  98.           IDENT   KERMIT
  99.  
  100. and delete the line 'ABS'.  Then you can compile a relocatable binary
  101. with the command
  102.  
  103.   $COMPASS,I=sixbitsource,B=KERMBIN,L=KERLIST,S=NOSTEXT,S=PSSTEXT.
  104.  
  105. and produce an absolute binary with LOAD command and the NOGO option.
  106. On our system the binary (45 PRU's in length) is stored as KERMBIN in
  107. the user name LIBRARY.  If the source is named KERMITC, the following
  108. procedure will extract its internal or external documentation:
  109.  
  110.  
  111. .PROC,KERDOCS*I,
  112. TYP[Type of documentation]=(INT,EXT),
  113. FLN[File name]=(*F,*N=KERDOC).
  114.   $RETURN(FLN,ZZZDOC)
  115. .IF,FILE(KERMITC,.NOT.LO),GETIT.
  116.   $GET(KERMITC)
  117. .ENDIF,GETIT.
  118.   $DOCMENT(I=ZZZZPRD,S=KERMITC,L=ZZZDOC,T=TYP)
  119. $REVERT(NOLIST)
  120. .DATA,ZZZZPRD.
  121.  KERMIT -- FILE TRANSFER UTILITY
  122.  
  123.  
  124.  
  125.  
  126. Cyber Kermit will not run unless there is a local file named ZZZKHLP.
  127. This multi-record file contains long help messages.  Since it is dif-
  128. ficult to transfer structured files on non-CDC equipment, I have pre-
  129. pared  a  simple-minded CCL procedure which contains the text of this
  130. file and writes appropriate ends-of-record when executed.  If needed,
  131. changes should be made to this file before executing  the  procedure.
  132. Changes  will probably be unnecessary if no assembly constants except
  133. parity are changed.  Those help messages which can be sent to a micro
  134. when Cyber Kermit is in server mode are 38 columns wide;  others  are
  135. 61 columns wide.  In our system the help file is stored as KERHELP in
  136. the user name LIBRARY.  The help file contains the following informa-
  137. tion specific to the Manchester implementation: default constants are
  138. 94 (packet length),  CTRL-C (escape character), 20 (requested timeout
  139. interval), and 5 (retries per packet); the Manchester commands  DSAVE
  140. and  DEPLACE  are mentioned; the escape character and the sync marker
  141. may not be set to CONTROL with any of the following letters: H, J, M,
  142. P, Q, S, T, or X.
  143.  
  144. The User Manual may be rather less useful since it contains much that
  145. is peculiar to our system in Manchester.  The manual does not mention
  146. the possibility of saving SET options in a file.  Simply SET whatever
  147. variables you wish and stop execution with the PUSH command.  ZZZKDAT
  148. is the local file which contains (in coded form) the options you have
  149. selected.  Simply SAVE this (using another name if you wish) and then
  150. GET it before starting the program.
  151.  
  152. Cyber Kermit writes a log file whenever it runs.  Since this log file
  153. is a structured 6-12 file,  one can list all or part of it.   In Man-
  154. chester this is done by the Kermit CCL procedure on a system library.
  155. This procedure appears as follows when various site-specific elements
  156. are removed:
  157.  
  158.  
  159.  
  160. .PROC,KERMIT*I
  161. ,ACT[Action]=(ALL,LOG,*N=RUN,LOCAL,*S3(ABCDEFGHIJKLMNOPQRSTUVWXYZ)).
  162. .HELP,,NOLIST
  163.   Procedure  KERMIT  is designed to help you run Kermit and view your
  164.   Kermit logfile.  It will also print your Kermit logfile.
  165.  
  166.   Format:  KERMIT          Run the Kermit file transfer program.
  167.            KERMIT,LOG      List the last part of your Kermit logfile.
  168.            KERMIT,ALL      List all of your Kermit logfile.
  169.            KERMIT,printer  Print your Kermit logfile on the specified
  170.                            printer; for example, type  KERMIT,MBS  to
  171.                            print your logfile on the MBS printer.
  172. .ENDHELP
  173. .IF,$ACT$=$RUN$,WHATNOW.
  174. .IF,FILE(ZZZZKER,PM).AND.FILE(ZZZKHLP,PM),ITSHERE.
  175. .EX.  ZZZZKER.
  176. .ELSE,ITSHERE.
  177.   $ATTACH,ZZZZKER=KERMBIN,ZZZKHLP=KERHELP/UN=LIBRARY,PN=0.
  178.   $SETFS,ZZZZKER,ZZZKHLP/FS=NAD.
  179.   $REVERT,EX.  ZZZZKER.
  180. .ENDIF,ITSHERE.
  181. .ELSE,WHATNOW.
  182. .IF,FILE(ZZZKLOG,MS),WHATNOW.
  183. .IF,$ACT$=$LOG$,WHATA.
  184.   $CSET,ASCII.
  185.   $SKIPEI,ZZZKLOG.
  186.   $BKSP,ZZZKLOG,1.
  187.   $COPYBR,ZZZKLOG.
  188. .ELSE,WHATA.
  189. .IF,$ACT$=$ALL$,WHATA.
  190.   $CSET,ASCII.
  191.   $REWIND,ZZZKLOG.
  192.   $COPYBF,ZZZKLOG.
  193. .ELSE,WHATA.
  194.   $RETURN,ZZZZJOB.
  195.   $REWIND,ZZZKLOG.
  196.   $FCOPY,P=ZZZKLOG,N=ZZZZJOB,PC=ASCII,NC=ASCII8.
  197.   $ROUTE,ZZZKLOG,DC=PR,UN=ACT,EC=A9,UJN=ZZZKLOG.
  198. .ENDIF,WHATA.
  199. $REVERT(NOLIST)
  200. .ELSE,WHATNOW.
  201.   $REVERT,ABORT. LOG FILE ZZZKLOG IS MISSING.
  202. .ENDIF,WHATNOW.
  203.