home *** CD-ROM | disk | FTP | other *** search
/ kermit.columbia.edu / kermit.columbia.edu.tar / kermit.columbia.edu / test / pdp11 / krthlp.hlp < prev    next >
Text File  |  1996-10-17  |  210KB  |  5,255 lines

  1. Y03.63-49 19-Feb-96
  2. 1 ?
  3.  
  4.  The question mark used as an argument dumps the dispatch
  5.  table for that command, thus listing all things possible:
  6.  
  7.     Kermit-11>?           ; display available commands
  8.     Kermit-11>SET ?        ; show all possible sets
  9.     Kermit-11>SET FILE ?   ; list all valid options
  10.  
  11. 1 @
  12.  
  13.  Open an indirect file for command input.  Same as TAKE.
  14.  If no device is specified the logicals TAK, KRT, DK and
  15.  SY will be tried, in that order.  Either "!" or ";" may
  16.  be used as a comment delimiter in Kermit-11 TAKE files.
  17.  All Kermit commands  except  control characters are ok,
  18.  and EXIT may be used in place of ^Z.   The maximum line
  19.  length is 132. bytes.
  20.  
  21.     Kermit-11>@ file    ; default type is .COM
  22.     Kermit-11>@file     ; RT-11 syntax is ok
  23.  
  24. 1 ASCII-Set
  25.  
  26.     Table of Octal, Decimal and Hex values for ASCII characters
  27.  
  28.  Char Key Oct Dec Hex    Ch Oct Dec Hex    Ch Oct Dec Hex    Ch Oct Dec Hex
  29.  ---- --- --- --- ---    -- --- --- ---    -- --- --- ---    -- --- --- ---
  30.  NUL  ^SP 000  0.  0     SP 040 32. 20     @  100 64. 40     `  140  96. 60
  31.  SOH  ^A  001  1.  1     !  041 33. 21     A  101 65. 41     a  141  97. 61
  32.  STX  ^B  002  2.  2     "  042 34. 22     B  102 66. 42     b  142  98. 62
  33.  ETX  ^C  003  3.  3     #  043 35. 23     C  103 67. 43     c  143  99. 63
  34.  EOT  ^D  004  4.  4     $  044 36. 24     D  104 68. 44     d  144 100. 64
  35.  ENQ  ^E  005  5.  5     %  045 37. 25     E  105 69. 45     e  145 101. 65
  36.  ACK  ^F  006  6.  6     &  046 38. 26     F  106 70. 46     f  146 102. 66
  37.  BEL  ^G  007  7.  7     '  047 39. 27     G  107 71. 47     g  147 103. 67
  38.  
  39.  BS   ^H  010  8.  8     (  050 40. 28     H  110 72. 48     h  150 104. 68
  40.  HT   ^I  011  9.  9     )  051 41. 29     I  111 73. 49     i  151 105. 69
  41.  LF   ^J  012 10.  A     *  052 42. 2A     J  112 74. 4A     j  152 106. 6A
  42.  VT   ^K  013 11.  B     +  053 43. 2B     K  113 75. 4B     k  153 107. 6B
  43.  FF   ^L  014 12.  C     ,  054 44. 2C     L  114 76. 4C     l  154 108. 6C
  44.  CR   ^M  015 13.  D     -  055 45. 2D     M  115 77. 4D     m  155 109. 6D
  45.  SO   ^N  016 14.  E     .  056 46. 2E     N  116 78. 4E     n  156 110. 6E
  46.  SI   ^O  017 15.  F     /  057 47. 2F     O  117 79. 4F     o  157 111. 6F
  47.  
  48.  DLE  ^P  020 16. 10     0  060 48. 30     P  120 80. 50     p  160 112. 70
  49.  DC1  ^Q  021 17. 11     1  061 49. 31     Q  121 81. 51     q  161 113. 71
  50.  DC2  ^R  022 18. 12     2  062 50. 32     R  122 82. 52     r  162 114. 72
  51.  DC3  ^S  023 19. 13     3  063 51. 33     S  123 83. 53     s  163 115. 73
  52.  DC4  ^T  024 20. 14     4  064 52. 34     T  124 84. 54     t  164 116. 74
  53.  NAK  ^U  025 21. 15     5  065 53. 35     U  125 85. 55     u  165 117. 75
  54.  SYN  ^V  026 22. 16     6  066 54. 36     V  126 86. 56     v  166 118. 76
  55.  ETB  ^W  027 23. 17     7  067 55. 37     W  127 87. 57     w  167 119. 77
  56.  
  57.  CAN  ^X  030 24. 18     8  070 56. 38     X  130 88. 58     x  170 120. 78
  58.  EM   ^Y  031 25. 19     9  071 57. 39     Y  131 89. 59     y  171 121. 79
  59.  SUB  ^Z  032 26. 1A     :  072 58. 3A     Z  132 90. 5A     z  172 122. 7A
  60.  ESC  ^[  033 27. 1B     ;  073 59. 3B     [  133 91. 5B     {  173 123. 7B
  61.  FS   ^\  034 28. 1C     <  074 60. 3C     \  134 92. 5C     |  174 124. 7C
  62.  GS   ^]  035 29. 1D     =  075 61. 3D     ]  135 93. 5D     }  175 125. 7D
  63.  RS   ^~  036 30. 1E     >  076 62. 3E     ^  136 94. 5E     ~  176 126. 7E
  64.  US   ^?  037 31. 1F     ?  077 63. 3F     _  137 95. 5F    DEL 177 127. 7F
  65.  
  66. 1 ASSIGN
  67.  
  68.  Like that of RT-11, except only DK (the default disk) is supported.
  69.  This specifies what Kermit will use as its default disk, it doesn't
  70.  modify the monitor's assignment for DK.
  71.  
  72.     Kermit-11>ASS LD0 DK
  73.  
  74. 1 Binary-Files
  75.  
  76.  Binary files include task or save images and other special types
  77.  requiring all eight bits in each byte.  Text  files like program
  78.  sources normally  only  use  the lower seven bits.  Binary files
  79.  should be transferred on an eight-bit line, which on most PDP-11
  80.  systems is the default.  Under RT-11 Kermit-11 defaults to space
  81.  parity as its handlers are 7-bit devices, and 8-bit quoting will
  82.  be required to transfer binary data.  This adds a byte for every
  83.  one with the high bit set and thus increases the transfer time.
  84.  
  85.   Various Kermits are at different stages of  development.  Some
  86.   may NOT handle binary files automatically thus the command SET
  87.   FILE FIXED must be done on BOTH before a binary file transfer.
  88.   Versions 2.16 and up of Kermit-11 do automatically switch into
  89.   the binary mode.  Under RT-11 the file type must be defined in
  90.   sending Kermit's binary types list (see HELP SET BINARY) prior
  91.   to transmission.
  92.  
  93.  Binary files are best exchanged using CRC error checking.  This
  94.  isn't the default and may need to be SET on the other Kermit if
  95.  it can't recover yours from the init packet.
  96.  
  97.  Note that transferring a text file with one or both Kermits set
  98.  to binary mode may result in an unusable file due to the chance
  99.  of including embedded record control information.  If this does
  100.  occur KED may be used (open the file and then immediately EXIT)
  101.  to strip the hi bits from it.
  102.  
  103.  Prior to Version 2.21 Kermit-11 didn't support 8-bit prefixing.
  104.  Before V2.23, repeat character encoding wasn't supported.
  105.  
  106.    A problem was discovered with  attribute  packet  processing
  107.    in versions of Kermit-11  prior to  3.49.  This implies that
  108.    versions 3.49 or later of Kermit-11 will not  be  completely
  109.    compatible  with older versions.   The best workaround until
  110.    a copy of ver 3.49 or later can be obtained  is  to  disable
  111.    attribute packet processing with the SET NOATTR command then
  112.    SET FILE FIXED on BOTH ends before transferring binary data.
  113.  
  114. 1 BUG
  115.  
  116.  Displays where to get help should one encounter a bug in this program.
  117.  
  118. 1 BYE
  119.  
  120.  Synonym for LOGOUT.
  121.  
  122. 1 CD
  123.  
  124.  Makes the specified device the default disk, directing to it
  125.  file operations for which no device is explicitly specified.
  126.  This only modifies Kermit, the monitor remains unchanged and
  127.  you'll be back where you started after exiting the program.
  128.  
  129.  If no device/directory is given some Kermits, including this
  130.  one and C-Kermit, will default to the home (login) directory.
  131.  
  132. 1 Character-Sets
  133.  
  134.  RT-11 stores all files transparently thus no character set
  135.  conversion is necessary for files received by or sent from
  136.  this Kermit.
  137.  
  138. 1 CLS
  139.  
  140.  CLear Screen, with numerous resets for VT-100 terminal.
  141.  CLX does the same, then enables the reverse video mode.
  142.  
  143. 1 CLX
  144.  
  145.  Clears a VT-100 screen ala CLS, then sets the reverse video mode.
  146.  
  147. 1 Common-Problems
  148.  
  149.  Can't talk to the modem:
  150.  
  151.  Check modem control signals.  If all else fails, put a breakout box in
  152.  the line and  observe  what  signals are present.  Some modems require
  153.  DTR to be high even to accept local commands (while not connected to a
  154.  remote system).  It may be necessary to first SET DTR to get the modem
  155.  ready.  Some "Hayes" style modems will only accept upper case in their
  156.  command strings.  It may be necessary to increase the time allowed for
  157.  carrier detection, particularly when MNP, PEP or V.42 error control is
  158.  being used, perhaps on BOTH ends.  See HELP SET DIAL TIME for this one
  159.  and consult the manager of the system you're calling.
  160.  
  161.  If you are using the XL/XC handler and an interface whose speed is set
  162.  via hardware switches or wire wrap be sure it's correct.  It should be
  163.  set for 8 data bits and no parity as well.  If you need to look at the
  164.  board to check it, the system MUST be powered down before removing and
  165.  reinstalling it.
  166.  
  167.  File transfer fails:
  168.  
  169.  If the file transfer aborts on retries immediately,  there  may  be  a
  170.  parity  problem.  If the problem shows up on binary files, try the SET
  171.  PARITY SPACE command on BOTH Kermits, which forces  8-bit  data  to be
  172.  prefixed into seven bits.  If you instead get a retry about once every
  173.  10 seconds, the other Kermit is not  responding  and  your  Kermit  is
  174.  timing out.  Check to see if your connection is still present.
  175.  
  176.  Under RT-11 the default is SPACE parity, you may need to set the other
  177.  Kermit to conform.
  178.  
  179.  If you are sending binary data between unlike Kermits, you  will  most
  180.  likely have to give the proper command to each to prepare them for it.
  181.  For Kermit-11 use SET FILE BIN or SET FILE FIX, many other Kermits use
  182.  the syntax SET FILE TYPE BIN.  CRC error detection should also be used
  183.  which is done via SET BLO 3 on both ends.
  184.  
  185.  If your Kermit's packets are being echoed back, try a SET  SEND  START
  186.  value  command for your Kermit, and a SET REC START same-value for the
  187.  other Kermit.  This will force Kermit to ignore any echoed packets  as
  188.  they  won't  have  the default start of packet character (a CONTROL A,
  189.  octal 1).
  190.  
  191.  If you are calling into a TSX+ system, you may need to first:
  192.  
  193.     .SET TT 8BIT
  194.  
  195.  at the monitor to transfer binary files.  You may also need to:
  196.  
  197.     .SET TT BITS=8
  198.  
  199.  however this is a hardware function and thus should be done from a
  200.  primary line ONLY first, before any subprocess that may run Kermit
  201.  is spawned.  Doing this from a subprocess may write garbage in the
  202.  line-parameters word, rendering it useless.
  203.  
  204. 1 CONNECT
  205.  
  206.  Attaches your terminal  to  the  device that has been SET LINE.
  207.  To exit and reconnect your terminal to the local system running
  208.  Kermit type the  "escape sequence,"  which by default is Ctrl-\
  209.  (an "escape character" used to prefix local commands when using
  210.  this terminal emulator, see HELP SET ESCAPE) followed by a "C".
  211.  
  212.  Note well that  "escape"  as used here is _NOT_ the same as the
  213.  ESC key commonly found on keyboards (unless it has been defined
  214.  to be the same char via SET ESCAPE).
  215.  
  216.  The following commands are available by prefixing them with the
  217.  currently defined escape character:
  218.  
  219.     B    Send a break to the remote
  220.     C    Connect back to the local Kermit
  221.     H    Print this message
  222.     I    Drop DTR for 0.5 sec (hang up), then restore it
  223.     Q    Suspend CONSOLE logging
  224.     R    Resume CONSOLE logging
  225.     S    CONSOLE logging status
  226.     X    Reset flow control (XOFF/XON or RTS/CTS as SET)
  227.     Z    Zap the handler, 100% hose & unhang if possible
  228.     ^x    Send control char "x" to remote using A..Z[\]~?
  229.     RUBOUT    Send a break to the remote
  230.     ? or /    Print this message
  231.  
  232.  Once the escape key has been struck or if between keys for the
  233.  control character command a 5 second timer is started.  Should
  234.  it expire before another key is pressed, the command is tossed
  235.  and the terminal emulator resumed.  If data are being received
  236.  when the escape is typed an XOFF may occur, after which a char
  237.  sent via the ^x facility may not be accepted at the other end.
  238.  A received flow control hold will cause each character entered
  239.  thereafter at the terminal to ring its bell and then overwrite
  240.  the char previously held in the input buffer.  The "X" and "Z"
  241.  commands above may be used to attempt to clear a hung line.
  242.  
  243.  Under TSX-Plus CONNECT allows local window processing.  If you
  244.  prefer emulating operation of SET HOST/PORT in that ^W/^B will
  245.  be passed to the remote and local window buffering (if then in
  246.  use) suspended, see HELP SET VLSWCH.  When VLSWCH is LOCAL one
  247.  may type two ^Ws which will pass the second one to the remote.
  248.  TSX passes all other chars to the remote (including line feed)
  249.  except XOFF and XON (^S,^Q).  If using the KM handler AND your
  250.  terminal is fast enough to not XOFF, you may SET TT NOPAGE and
  251.  pass ^S and ^Q as well.
  252.  
  253.  If a modem is on-line and DTR is dropped (via the "I" command)
  254.  while connected, the modem will be reinitialized (as it resets
  255.  many modems) on exiting CONNECT.   This may cause a noticeable
  256.  delay depending on the length of the init string and the speed
  257.  at which it may be sent (the last speed set will be used).
  258.  
  259.  SET CONSOLE alters terminal emulator parameters.  SET TERMINAL
  260.  modifies items associated with the actual terminal itself.
  261.  
  262. 1 Control-Chars
  263.  
  264.   Ctrl-C - Aborts the process currently running and returns to the
  265.        main command line.  When the program is not waiting for
  266.        input from the keyboard TWO ^Cs must be typed.  When it
  267.        involves stopping a remote system's packets the bell is
  268.        rung to acknowledge the abort, at which one should wait
  269.        for this to complete.  This is necessary to avoid chaos
  270.        between systems and maintain return paths.  Further ^Cs
  271.        will lead to an unconditional abort and transmission of
  272.        an error packet which usually stops the remote cleanly.
  273.        While waiting for keyboard input, ^C resets the command
  274.        recall pointer in SL to the last command entered.
  275.  
  276.   Ctrl-Z - Exit a command level, or to the monitor if none left.
  277.  
  278.   Ctrl-\ - Default  "escape"  character for the terminal emulator.
  279.        Used to prefix local commands.  See HELP SET ESCAPE for
  280.        additional information.  This is NOT the ESC key on the
  281.        typical keyboard (unless you SET it to be the same).
  282.  
  283.  During the exchange of packets (GET/SEND files, REMOTE cmds) these
  284.  are checked at the end of each DATA packet, and may involve a wait
  285.  until the current data packet is handled.  Before data have begun,
  286.  Ctrl-C is the only abort possible:
  287.  
  288.   Ctrl-A - Prints the current byte count sent or received
  289.   Ctrl-E - Sends an error packet, aborting asap
  290.   Ctrl-X - Skip the current file, begin transferring the next one
  291.   Ctrl-Z - Skips the entire group of files, aborts
  292.  
  293. 1 COPY
  294.  
  295.  Creates a copy of the input file.  Wildcards are not supported,
  296.  and it is more efficient to use COPY from the monitor.  You may
  297.  move a single file retaining the input file name with:
  298.  
  299.     Kermit-11>COP file dev:
  300.  
  301. 1 CWD
  302.  
  303.  Synonym for CD.
  304.  
  305. 1 DATE
  306.  
  307.  Displays today's date.  This program supports dates through 31-Dec-2099.
  308.  
  309. 1 DAYTIME
  310.  
  311.  Displays the current date and time.
  312.  
  313. 1 Debugging
  314.  
  315.  Various debug options are available.  See HELP SET DEBUG for
  316.  in depth information.  Try HELP SET RANDOM regarding a means
  317.  to deliberately force errors to test recovery from them, and
  318.  HELP EXAMINE for info about looking at data in memory.
  319.  
  320.      Logging to TT  (independent of any disk based logging)
  321.     Files, Packets, States        SET DEB [NO]TT
  322.     Packet data as received        SET DEB [NO]RPACK
  323.  
  324.      Logging to a file:            LOG file debug-mode
  325.     CONNECT terminal logging    SET DEB CONSOLE file
  326.     Packets/Files/States        SET DEB PACKET file
  327.     CONN + Packets/Files/States SET DEB ON file
  328.     Raw packet I/O            SET DEB RAW file
  329.  
  330.      Off disk based debugging       LOG
  331.      Stop ALL debugging, incl. TT   SET DEB NONE
  332.  
  333.  Logging during CONNECT may be controlled by typing the escape
  334.  character followed by a Q to suspend or an R to resume.
  335.  
  336. 1 DELETE
  337.  
  338.  Deletes a single specified file.  Wildcards are not supported.
  339.  The entire command name "DELETE" must be used (no substring is
  340.  acceptable) as some small protection against accidents.
  341.  
  342. 1 DIAL
  343.  
  344.  Attempts to get an attached modem to dial the number specified.  One
  345.  must first SET LINE and SET MODEM appropriately.  If the line you're
  346.  calling is busy you may REDIAL, which retries up to 65,535 times, or
  347.  less if specified in an argument to it.  When the call succeeds your
  348.  terminal will be connected to the remote system.
  349.  
  350.  Phone numbers may be defined and then referenced via symbolic names.
  351.  See HELP SET PHONE NUMBER for details.
  352.  
  353.  The following demonstrates using a generic Hayes modem with TSX-Plus
  354.  by attaching CL0 to TSX line #9:
  355.  
  356.     Kermit-11>SET CL0 LINE 9    }
  357.     Kermit-11>SET SPEED 2400    }
  358.     Kermit-11>SET PHONE XMODE 4    } these may be in KRT.INI
  359.     Kermit-11>SET MODEM HAYES    }
  360.     Kermit-11>SET PHONE TONE    }
  361.     Kermit-11>SET PH NU BP 837-0892 }
  362.     Kermit-11>DIAL BP
  363.     AT X4 DT 837-0892
  364.     RING
  365.     CONNECT 2400
  366.     Connecting to CL0:  DTE Speed:  2400
  367.     Type ^\C to return to your local machine
  368.         .
  369.         .
  370.         . ^\C
  371.  
  372.     Kermit-11>HANGUP
  373.  
  374.  Dialing may be aborted by striking  any  key after the process has
  375.  begun, as long as that's before actually connecting to the remote.
  376.  DTR is dropped for 0.5 second then, as this can reset many modems,
  377.  the modem is reinitialized, which may result in a noticeable delay
  378.  depending on the length and speed of the init string.
  379.  
  380.  SET DIAL TIME-OUT n (in seconds) can modify the time spent waiting
  381.  for a response before assuming the call has failed.  It is usually
  382.  30 ~ 45 secs.   Please note only this and SET DIAL SETTLE-TIME are
  383.  usable with a pre-defined modem (anything besides the USER-DEFINED
  384.  modem itself).  For modems which recognize a busy signal the cycle
  385.  time will be as fast as it's reported.
  386.  
  387.  If you are using a Hayes style modem, which falls back to a slower
  388.  speed when it can't connect  at  the speed used to place the call,
  389.  under TSX-Plus with the CL handler Kermit saves the initial speed,
  390.  drops down to the connected speed, then restores it before dialing
  391.  the next call, unless it's manually set otherwise in the interim.
  392.  
  393.  If a modem response string for RING has been defined and the modem
  394.  can detect same, the call is considered to have failed after seven
  395.  rings.  Consult your modem's documentation then see HELP SET PHONE
  396.  XMODE regarding enabling the appropriate extended response mode.
  397.  
  398. 1 DIRECTORY
  399.  
  400.  Displays the default device directory, or that of a specified device.
  401.  Wildcarding is  implicit  regardless of how the monitor has been set.
  402.  Switches (/opt) are not implemented.
  403.  
  404.   Kermit-11>DIR           ; all files on DK: (default device)
  405.   Kermit-11>DIR .MAC       ; all files of type .MAC (same as *.MAC)
  406.   Kermit-11>DIR KRT*.MAC   ; all beginning with KRT of type .MAC
  407.   Kermit-11>DIR LD0:.MAC   ; all files of type .MAC on LD0:
  408.   Kermit-11>DIR EDIT.       ; file name must be just EDIT with no type
  409.   Kermit-11>DIR EDIT%       ; 5 chars, first 4 are EDIT, any type
  410.   Kermit-11>DIR .MAP,.SAV  ; comma delimits, see HELP SET FILE CSI
  411.  
  412. 1 DISCONNECT
  413.  
  414.  Synonym for HANGUP.
  415.  
  416. 1 DISMOUNT
  417.  
  418.  Deassigns the specified logical disk, under TSX V6.2 and up.
  419.  
  420.     Kermit-11>DIS LD0
  421.  
  422.  Note that here it is not necessary to first dismount a logical
  423.  disk before mounting something new using the same unit number.
  424.  
  425. 1 EXAMINE
  426.  
  427.  Format and print global read/write data to the terminal:
  428.  
  429.     Kermit-11>EXA PACKET    ; dump packet buffer to TT
  430.     Kermit-11>EXA *        ; all defined variables
  431.     Kermit-11>EXA 44    ; address of your choice
  432.  
  433.  Please  note  attempting  to  examine  an illegal address
  434.  will crash the program.  The .MAP file for the Kermit you
  435.  are using may be used to locate addresses not included in
  436.  the internal symbol table.  Some overlays are permanently
  437.  loaded (refer to the link command file for the version in
  438.  use) but most are not, and these most likely will be gone
  439.  by the time one has returned to Kermit's command line.
  440.  
  441. 1 EXIT
  442.  
  443.  Terminates Kermit-11 and exits to the monitor, resetting the link
  444.  device and modem if same were assigned from within the program.
  445.  
  446. 1 File-Format-Info
  447.  
  448.  The general format of a PDP-11 file name is:
  449.  
  450.    NODE::DEVICE:[DIRECTORY]NAME.TYPE;VERSION
  451.  
  452.  "Node" refers to the DECNET node name, for instance HIHO::, if in use.
  453.  "Device", if present, refers to the physical device or logical name of
  454.  that on which the file resides.  Two colons "::" delimit the node name
  455.  and a single colon ":" delimits the device name.  A named directory is
  456.  delimited by enclosing it within "[]" brackets.
  457.  
  458.  In the case of RSX-11M/M+ and RT-11, the device name can be  either  a
  459.  physical name, such as DU0:, or a logical name which will translate to
  460.  a physical device name, such as LB:.
  461.  
  462.  For RSTS/E "device" can be a physical device such as DB0: or DU1: or a
  463.  user or system logical name which  may  include both a physical device
  464.  and a directory.  Logical  names  are  composed of 1 to 9 alphanumeric
  465.  characters including "$", as in DISK$ONE:, LB: and so on.  For example
  466.  the DCL system command:
  467.  
  468.     $ ASS/SYS DB1:[200,210] SRC$DIR
  469.  
  470.  associates both the device DB1: and directory [200,210] with SRC$DIR:.
  471.  An explicitly specified directory overrides any named directory within
  472.  in a logical name.  Names longer than 9 chars will be truncated.
  473.  
  474.  Named directories are not used in RT-11, which uses logical disks (see
  475.  HELP MOUNT) instead.
  476.  
  477.  On RSTS/E and RSX-11M/M+ the [directory] is a UIC (user identification
  478.  code) or PPN (project,programmer number) of the format [NNN,MMM].  All
  479.  users are assigned a UIC or PPN when the account is created.  It's the
  480.  number you give to LOGIN to log into the system, and also your default
  481.  UIC or PPN.   Micro-RSX and P/OS may have directories in either UIC or
  482.  named directory format, such as [1,12] or [KERMIT].  P/OS will default
  483.  to [USERFILES].
  484.  
  485.  The NAME field is the primary identifier for the file.  The  name  can
  486.  be  one  to  nine  characters  for RSX-11M/M+ and P/OS, and one to six
  487.  characters for RSTS/E, RT-11 and TSX+.  The TYPE field is usually used
  488.  to  group  files  according  to some convention.  For example, EDI.FTN
  489.  refers to a Fortran-77 source file, CALEND.C to a "C" source file, and
  490.  K11POS.TSK refers to a task image.  The TYPE may be 0 to 3 characters.
  491.  
  492.  The version field is only used by RSX and defaults to the highest then
  493.  available.  Version numbers may range up to 32,767.
  494.  
  495.  All systems mentioned support some sort of file name wildcarding,  the
  496.  flexibility of which varies by executive.  All  support the use of "*"
  497.  to represent either a fully wildcarded NAME or TYPE.  RSTS/E  supports
  498.  the use of "?" to match any single character, whereas the others use a
  499.  "%" to match any single character.   The  RSTS/E  Kermit  server  will
  500.  translate "%" to "?" internally for GET and REM DIR commands, and this
  501.  modified Kermit-11 translates "?" to "%" when necessary.
  502.  
  503.         Examples of wildcarded file names:
  504.  
  505.     *.B2S        match any file with a TYPE of B2S
  506.     K11%%%.MAC    match any file starting with K11, followed by
  507.             one to three characters, with a TYPE of MAC
  508.     K11???.MAC    same as above, but for RSTS/E
  509.     XYZ.*;*        all versions of files with a NAME of XYZ with
  510.             any TYPE (RSX-11M/M+ and P/OS only)
  511.  
  512.          File formats (binary and text):
  513.  
  514.  RT-11 and TSX-Plus
  515.  
  516.  RT-11 treats all files as a contiguous stream of characters.  There is
  517.  no information stored in the directory to tell the system (or program)
  518.  that a file is readable text (source program, runoff document, ...) or
  519.  binary data (executable program, object modules, etc).  An application
  520.  program like Kermit-11 needs to know what type of file to expect, thus
  521.  the presence of the SET FILE TYPE command (discussed below).  The only
  522.  real convention is that text files are streams of 7-bit data with each
  523.  record terminated by a carriage-return/line-feed, and binary files use
  524.  the file TYPE (.SAV, .SYS, ..) to identify them as such.  This is what
  525.  Kermit checks to determine if a file should be sent as text or binary.
  526.  See HELP SET BINARY for detailed info.
  527.  
  528.  RSTS/E, P/OS and RSX-11M/M+
  529.  
  530.  These systems can support a large number of file attributes via FCS-11
  531.  (RSX-11M/M+) or RMS-11 (all).  Text files are  normally  either STREAM
  532.  format (FB$STM) or VARIABLE with implied carriage control (FB$VAR  and
  533.  FB$CR).  RSTS/E has historically defaulted to STREAM,  whereas the RSX
  534.  based systems use VARIABLE.  Kermit-11 uses the defaults when creating
  535.  files if the sending Kermit doesn't supply attribute data.  Conversion
  536.  of the internal data format to one which can be transmitted to another
  537.  Kermit is transparent for these file types.  Both attributes  and  the
  538.  file TYPE are examined by Kermit-11 to determine if a file needs to be
  539.  sent as a text (default) or binary file.  On RSTS/E Kermit also checks
  540.  the protection code as there bit 6 is used to flag an executable file.
  541.  
  542.      Saving files on the PDP-11 from your microcomputer:
  543.  
  544.  If the other Kermit doesn't adequately support attribute exchange then
  545.  one must SET FILE TYPE FIXED on both (local and remote) Kermits to get
  546.  or send non-text files correctly.  When Kermit-11 is thus put into its
  547.  binary mode, all data are read from or written to the file without any
  548.  translation or internal record control information.  Any attributes in
  549.  the file's directory entry are ignored and data are read or written in
  550.  unformatted 512 byte blocks.  Thus it is indeed  possible  to transfer
  551.  files like task images and object libraries.  Detailed info concerning
  552.  the capabilities of this modified Kermit-11 is in HELP SET ATTRIBUTES.
  553.  
  554.  Never try to do a wildcarded send with mixed  binary  and  text  files
  555.  while the file type is set FIXED.  The result could be unusable as not
  556.  all systems store text data in the same internal format.  For example,
  557.  if the binary mode is forced on under RSX (SET FILE TYPE FIXED) a file
  558.  with implied carriage control (normal for RSX text files) will be sent
  559.  as (for each line) two bytes containing the record length, followed by
  560.  the actual data null padded to an even length.  This is not incorrect,
  561.  rather, it is EXACTLY how the data are stored on the disk.
  562.  
  563.  In general, avoid sending anything other than unformatted binary files
  564.  and  text  files  to  unlike  systems.  For example, requesting an RMS
  565.  indexed file from the PDP-11 to be sent to a PC would cause  Kermit-11
  566.  to send it as a binary file,  but the file's attributes would be lost.
  567.  Sending such a file back to the PDP-11 would  result  in  an  unusable
  568.  file unless you could reconstruct the attribute information.
  569.  
  570. 1 FINISH
  571.  
  572.  Tells the remote Kermit server to stop and then, as this does not
  573.  actually log out the remote session, CONNECTs back to the remote.
  574.  
  575. 1 GET
  576.  
  577.  Requests a remote Kermit server to send the specified file or group of
  578.  files.  This command can only be used when Kermit-11 is local, while a
  579.  Kermit server is running on the other end of the link specified by SET
  580.  LINE.  This means you must have CONNECTed to the other  system, logged
  581.  in, run  Kermit  there, issued the SERVER command, and escaped back to
  582.  your local machine.
  583.  
  584.  If you are trying to receive binary files from a Kermit which does not
  585.  support attribute transmission SET FILE TYPE FIXED and SET BLOCK-CHECK
  586.  on BOTH ends first, or the transmission may appear fine while all high
  587.  bits are actually being tossed.
  588.  
  589.  When receiving text files from a non RT-11 system this Kermit will add
  590.  25% to the received file size as record terminators are often excluded
  591.  from what is reported, or are of a different size (Unix).  Files close
  592.  to the maximum free space may be accommodated by SET FILE CREATE-SIZE,
  593.  which overrides any passed size attribute, or by explicitly specifying
  594.  a size with the FILENAME[size] syntax where "size" is the desired size
  595.  expressed as a decimal number of blocks.  See HELP SET FILE CREATE for
  596.  further info.
  597.  
  598.     Kermit-11>GET ABC.FILE XYZ.DAT[100]  ; xyz.dat will be 100 blks
  599.  
  600.  The remote filespec may be anything that's legal at the remote system,
  601.  it is not  parsed  or validated locally.  Both "!" and ";" are sent to
  602.  the remote from the keyboard though they're comment delimiters in TAKE
  603.  files.  Lower case alpha may be used (see HELP SET FILE NAMING), space
  604.  (command argument delimiter) and non-printing chars are only available
  605.  by typing them in at the remote Kermit's command line.
  606.  
  607.  If a file arrives that you don't really want, you can try to cancel it
  608.  by typing Ctrl-X which sends the request to the remote Kermit.  If the
  609.  remote understands it (some Kermits may not) it will comply, otherwise
  610.  it will continue to send.  If a file group is being sent, you can bomb
  611.  the entire group by typing Ctrl-Z.  These control chars are checked at
  612.  the end of each DATA packet.  Use Ctrl-C to abort when the need arises
  613.  before receiving the beginning of the first file.
  614.  
  615.  If the remote Kermit is not capable of server functions, then you must
  616.  CONNECT to it, use the SEND command, escape back here and use RECEIVE.
  617.  Note that file(s) must be specified at the SEND end as RECEIVE expects
  618.  to find the name in the send file init packet.
  619.  
  620.             GET Command Summary:
  621.  
  622.     Tells a remote Kermit server to send a file or group of files.
  623.     Wildcards, ppns, etc, may be used.  Wildcarded renaming is not
  624.     supported, except an optional output device (only) may be used
  625.     to place a single file where desired.
  626.  
  627.     Kermit-11>GET *.MAC        ; gets all .MAC files
  628.     Kermit-11>GET afile dev:    ; put afile on dev:
  629.     Kermit-11>GET afile asfile    ; rename to asfile
  630.     Kermit-11>GET afile,b*,cfile    ; comma delimits file names
  631.  
  632. 1 HANGUP
  633.  
  634.  Drops DTR for 0.5 sec then restores it.  This only available under CL
  635.  from TSX+ V6.0 or above, KM (RT-11 V4.0/TSX+ V5.0 + up) or XL/XC from
  636.  RT-11 V5.2 or above.  If a modem is on-line it is presumed a DTR drop
  637.  requires reinitializing it.  This is done immediately after restoring
  638.  DTR and may slightly increase the time required to complete.
  639.  
  640.  Your modem MUST be able to disconnect when DTR is lowered for this to
  641.  actually dump the telephone connection.
  642.  
  643. 1 HELP
  644.  
  645.  Entering HELP alone prints the list of available topics.
  646.  For detailed information about a specific function:
  647.  
  648.     Kermit-11>HELP topic [subtopic] ..
  649.  
  650.  Should one prefer the printed page, this dumps help text
  651.  to LP to produce a handy reference:
  652.  
  653.     Kermit-11>HPRINT topic [subtopic] ..
  654.  
  655.  See HELP HPRINT and HELP PRINT for printing other than to
  656.  LP.   HELP and HPRINT also support wildcarding, as in:
  657.  
  658.     Kermit-11>H *        ; everything
  659.     Kermit-11>H SET *    ; all sets
  660.     Kermit-11>H SET FIL *    ; all file types
  661.  
  662.  This modified Kermit-11 contains an internal index to its
  663.  help text file.  If KRTHLP.HLP is modified Kermit must be
  664.  rebuilt.  See KRTHLP.MAC for instructions.
  665.  
  666. 1 HOME
  667.  
  668.  Resets the default device to the home directory.
  669.  This is, if not set otherwise, DK when Kermit-11
  670.  was started.  SHOW displays current assignments.
  671.  
  672. 1 HPRINT
  673.  
  674.  Like HELP but also dumps text to LP to produce a handy reference:
  675.  
  676.     Kermit-11>HPRINT topic [subtopic] ..
  677.     Kermit-11>HPRINT *
  678.  
  679.  You may ASSIGN xx LP under RT-11 (where xx is a disk) then run KRT
  680.  and use HPRINT to create a disk file of the text formatted as it's
  681.  displayed by the program.  The file name KRTHLP.OUT will be used.
  682.  
  683.  LP is the only printer device name Kermit supports and HPRINT does
  684.  not support a device name argument.  You may ASSIGN something else
  685.  as LP from the monitor before starting Kermit.
  686.  
  687.     .ASSIGN LS LP        ! have Kermit print to LS
  688.     .K11            ! run program, do printing
  689.     .DEASSIGN LP        ! then clean-up when done
  690.  
  691. 1 Installation-Notes
  692.  
  693.  This program will run under RT-11 or TSX-Plus.  The system clock must be
  694.  running.  As distributed KRT is built to run on a non-EIS CPU and KRTTSX
  695.  is built for EIS processors.  These monitors and handlers are supported:
  696.  
  697.   RT-11SJ   V5.0 + up   TT  KM  XL    ; SYSGEN for TIMER support
  698.   RT-11FB   V4.0 + up   TT  KM  XL    ; SYSGEN for..
  699.   RT-11XM   V5.1 + up   TT  KM  XC  XL    ;  ..SPCPS support
  700.   RT-11..   V5.6 (all)  TT  KM  XC  XL    ; including separate I&D space
  701.   TSX-Plus  V5.0 + up   TT  CL  KM  XL    ; see HELP INSTALL TSX
  702.  
  703.   NOTE:  XL first appeared in RT-11 V5.1.  Prior releases must use either
  704.   TT (the console terminal port) or KM (a "Kermit Modem" handler supplied
  705.   with this program) for communicating with the outside world.
  706.  
  707.  KRTTSX.SAV uses extended memory overlays for XB,XM,ZB,ZM,TSX and KRT.SAV
  708.  low memory overlays for  FB,SB,SJ,TSX  to accommodate small systems.  FB
  709.  is the ONLY RT-11 V4 monitor which can run this program.  VBGEXE or VRUN
  710.  may be used under mapped RT-11 monitors.  It's best to load any handlers
  711.  required first, even for a background task.  KRT's maximum packet-length
  712.  is 600., KRTTSX's is 1920., this is determined by the NONEIS conditional
  713.  code for MAXLNG in KRTMAC.MAC.
  714.  
  715.  KRTTSX requires 167kb of memory to load, KRT only needs 41kb.  Under TSX
  716.  it's 173kb and 47kb for V6.5 or 172kb and 46kb with V6.4.  KRT increases
  717.  disk I/O as its overlays are not kept resident.
  718.  
  719.  If you already have some form of Kermit on your system, you may try this
  720.  one out by copying to a disk containing no other Kermit files, assigning
  721.  that disk DK, deassigning HLP, INI and KRT, and running the new program.
  722.  Assuming LD0 is a scratch disk and you have an 8" floppy:
  723.  
  724.     .COP DY0:*.(SAV,HLP,INI) LD0:
  725.     .ASS LD0 DK
  726.     .DEA HLP
  727.     .DEA INI
  728.     .DEA KRT
  729.     .SET USR SWAP    ! if running RT-11
  730.     .RU KRTTSX    ! use KRT if KRTTSX won't load
  731.  
  732.  To dial out, edit the copy of  KRT.INI  on  LD0 as needed for your site.
  733.  It is not necessary to use a command file for such things as attaching a
  734.  CL unit to a TSX line before running this Kermit - everything may now be
  735.  easily handled during its initialization.  At this point it is suggested
  736.  you use the running Kermit to read through its own HELP,  especially the
  737.  SET LINE and SET CL topics.  If you opt to use any sort of indirect .COM
  738.  file to actually run  KRT/KRTTSX,  please  note that under TSX using the
  739.  ^>R KRT.. option to force command file input to the running program will
  740.  cause the test for TT input during the strike any key abort when dialing
  741.  to hang and you won't be able to dial out from the command file.  Kermit
  742.  does process indirect command (TAKE) files as well as arguments from the
  743.  command line used to run it, either of which may be used instead of ^>R:
  744.  
  745.     .KRTTSX DIAL TOMMY  ! dials number defined in init as "tommy"
  746.     .KRTTSX TAKE TOMMY  ! runs the indirect command file tommy.com
  747.  
  748.  You may also have to force arguments for the program to it when run from
  749.  a command file under TSX:
  750.  
  751.     R KRTTSX ^1 ^2 ^3   ! as needed, up to 6 args
  752.  
  753.  There is an additional problem when forcing command line input to Kermit
  754.  in that comment delimiters "!" and ";" are processed as normal chars and
  755.  will cause errors.  This allows them to be passed to a remote system for
  756.  RSX/VMS version numbers and the like.  They are treated as delimiters in
  757.  Kermit's internal command file processing, thus the best procedure is to
  758.  dump the "^>R KERMIT" line from such files and treat them as Kermit TAKE
  759.  files.  If typing in arguments when starting Kermit is a problem one may
  760.  use a separate command file run from the monitor containing only:
  761.  
  762.     R KRTTSX TAKE TOMMY
  763.  
  764.  This allows tommy.com to contain comments without crashing when run.
  765.  
  766.  If it's decided to permanently install this program all old Kermit files
  767.  (K*.HLP, K*.INI, K*.SAV, etc) should be backed up then replaced by those
  768.  from this package.  Dialing from a command file (if in use) will need to
  769.  be treated per the above.
  770.  
  771.  After ensuring RT-11 or TSX requirements are met patch KRT.INI (examples
  772.  follow) for your site, then copy these to SY:
  773.  
  774.  KRTTSX.SAV  -  or KRT.SAV, the executable image, rename as desired
  775.  KRTHLP.HLP  -  HELP text file, may also be on HLP, KRT or DK
  776.  
  777.  and this to the logical INI, KRT or a default disk of your choice:
  778.  
  779.  KRT.INI  -  initialization command file
  780.  
  781.  When started  KRT/KRTTSX  will  check  INI,  KRT,  DK and SY for KRT.INI.
  782.  Keeping it off SY allows others to use a different init file, and permits
  783.  the program to be easily run in the remote mode by callers to the system.
  784.  Or, one may SET LINE TT to accomplish the same thing.  For multiple users
  785.  sharing a group of lines check HELP SET CL before editing KRT.INI.
  786.  
  787.  The HELP text file search (for KRTHLP.HLP) path is HLP, KRT, SY and DK.
  788.  
  789.  KRT.SAV/KRTTSX.SAV may be  renamed  as  is convenient (K11 or KERMIT) but
  790.  KRT.INI  and  KRTHLP.HLP are called (by these names) by Kermit,  and thus
  791.  must not be renamed.  If the HELP text (KRTHLP.HLP) is altered in any way
  792.  Kermit must be rebuilt.  See KRTHLP.PRE for details.
  793.  
  794.  Kermit is then run by its name, and an initial command line may be passed
  795.  to it as argument(s) to the KMON command:
  796.  
  797.     .K11        ! run Kermit
  798.     .K11 DIAL DEC    ! run Kermit, dialing number set in init file
  799.  
  800.  Also check the specific info for your operating system if Kermit will not
  801.  be the only task running.
  802.  
  803. 2 Files-Required
  804.  
  805.  The following files comprise everything required for KRT/KRTTSX:
  806.  
  807.  KRT   .BWR    "Beware" file, known bugs and possible things to come..
  808.  KRT   .COM    Links low memory overlays image, KRT.SAV
  809.  KRT   .DOC    Installation and Release Notes
  810.  KRT   .IND    Bob Schor's Kermit-11 init file manipulator, an IND process
  811.  KRT   .INI    Sample initialization file
  812.  KRT   .MAP    Link map of low memory overlays image, KRT.SAV
  813.  KRT   .SAV    Low memory overlays image, for RT-11FB,SB,SJ and TSX+
  814.  KRTAIL.MAC    Tailgating protection for TSX+ V6.31 and below
  815.  KRTASM.COM    Assembles all source modules for an EIS CPU
  816.  KRTASM.NON    Assemble all sources for a non-EIS CPU using macros in KRTNHD
  817.  KRTATR.MAC    Attribute packet processing
  818.  KRTCDF.MAC    Command macro definition .INCLUDE file
  819.  KRTCMD.MAC    Main program loop, commands calling APR4
  820.  KRTCM1.MAC    APR4 overlay for the rest of the commands
  821.  KRTCOM.MAC    Main loop commands data table
  822.  KRTCON.MAC    CONNECT terminal emulator
  823.  KRTCVT.MAC    File name conversion routines
  824.  KRTDAT.MAC    Global read/write data
  825.  KRTDEB.MAC    EXAMINE command, display memory by symbol or address
  826.  KRTDEF.MAC    Packet definition .INCLUDE file
  827.  KRTDIA.MAC    DIAL command, also SET MODEM and SHOW DIAL
  828.  KRTDIR.MAC    Directory operations
  829.  KRTDSP.MAC    I/O dispatching to handler or terminal
  830.  KRTEDI.MAC    SL command line editor
  831.  KRTERM.MAC    I/O support for the controlling terminal line (TT)
  832.  KRTERR.MAC    Error messages
  833.  KRTHLP.HLP    HELP text file
  834.  KRTHLP.MAC    HELP command processor
  835.  KRTIDX.BAS    Builds KRTIDX.MAC from KRTHLP.HLP
  836.  KRTIDX.MAC    HELP text file index for high speed lookups
  837.  KRTINI.MAC    Initialization, packet logging
  838.  KRTKM .MAC    "Kermit Modem" handler
  839.  KRTLNK.COM    Links extended memory overlays image, KRTTSX.SAV
  840.  KRTMAC.MAC    Macro definitions .INCLUDE file
  841.  KRTMDM.MAC    Pre-defined modems database
  842.  KRTNHD.MAC    MUL, DIV, SOB, ASH macros for non-EIS CPU
  843.  KRTOID.COM    Link for RT-11 V5.6 separate I&D space, low memory overlays
  844.  KRTOSI.MAC    One-shot initialization at program start
  845.  KRTPAK.MAC    Low level packet processing
  846.  KRTREC.MAC    Incoming file protocol processing
  847.  KRTRMS.MAC    File access, RMS emulation
  848.  KRTSEN.MAC    Outgoing file protocol processing
  849.  KRTSER.MAC    Server support
  850.  KRTSHO.MAC    SHOW, COPY, DELETE, PRINT, RENAME commands
  851.  KRTSJ .CND    RT-11FB,SB,SJ conditional assembly file for KM handler
  852.  KRTSJ .MAC    Root module for low memory overlays image
  853.  KRTSTD.MAC    SET command data table
  854.  KRTST0.MAC    SET command overlay 0
  855.  KRTST1.MAC    SET command overlay 1
  856.  KRTSUB.MAC    Misc common utility routines
  857.  KRTSV4.COM    Build KM handler under RT-11 V4
  858.  KRTSYS.COM    Build KM handler under RT-11 V5
  859.  KRTTRA.MAC    TRANSMIT command
  860.  KRTTSX.CND    TSX conditional assembly file for KM handler
  861.  KRTTSX.MAP    Link map for extended memory overlays image, KRTTSX.SAV
  862.  KRTTSX.SAV    Extended memory overlays image, for RT-11XB,XM,ZB,ZM and TSX+
  863.  KRTUTL.MAC    Misc utility routines, mount for TSX+
  864.  KRTVID.COM    Link for RT-11 V5.6 sep I&D space, extended memory overlays
  865.  KRTXL .MAC    I/O support for CL, KM, XC and XL
  866.  KRTXM .CND    XM conditional assembly file for KM handler
  867.  KRTXM .MAC    Root module for extended memory overlays image
  868.  KRTXMO.MAC    XMODEM, also SEND command processor
  869.  
  870. 2 KM
  871.  
  872.  KM is a "Kermit Modem" communications handler provided to support
  873.  TSX-Plus features not otherwise available under RT-11, as well as
  874.  older releases of TSX that preceded its CL handler.   KM combines
  875.  the best of both worlds, including the following under RT-11:
  876.  
  877.     o  Works with DL(V), Falcon and PRO serial interfaces
  878.     o  Speed may be SET and SHOWn from within Kermit
  879.     o  Automatic fallback to the connected speed
  880.     o  An eight-bit data path
  881.     o  Selectable hardware (RTS/CTS) flow control
  882.     o  Emulation of TSX's CLCLR (flush pending I/O)
  883.     o  DTR toggling to support Kermit's HANGUP command
  884.     o  Usable with RT-11 V4.0 and up, and TSX-Plus V5.0 and up
  885.  
  886.  To use KM you must first edit the appropriate conditional assembly
  887.  files for the serial line interface in your system:
  888.  
  889.     KRTSJ .CND  -  for RT-11FB, RT-11SB, and RT-11SJ
  890.     KRTXM .CND  -  for RT-11XB, RT-11XM, RT-11ZB and RT-11ZM
  891.     KRTTSX.CND  -  for TSX-Plus
  892.  
  893.  Then assemble and link using KRTSYS.COM if being done under RT-11
  894.  V5.0 or above, or KRTSV4.COM if using any RT-11 V4 release.  This
  895.  will create KM.SYS, KMX.SYS and KM.TSX, which should be copied to
  896.  your system device (SY) where they may be INSTALLed and LOADed as
  897.  needed.  Note that KRTKM.MAC (the handler source file) must be on
  898.  the default disk for this assembly.  Under TSX you'll have to use
  899.  TSXMOD to add a definition for KM as shown below, or define it in
  900.  TSGEN.MAC and rebuild the system.  In either case you must reboot
  901.  as it only loads handlers when started.  KM may be mapped to save
  902.  low memory.
  903.  
  904.     DEVDEF    <KM>,MAPH
  905.  
  906.  WARNING:   Earlier versions of RT-11 may choke on the "dma=no" in
  907.  the .drdef macro.  If it causes an error your system doesn't need
  908.  it and it should be dumped to allow successful assembly.
  909.  
  910.  KM supports the following SET commands from the monitor (KMON):
  911.  
  912.     SET KM CSR=octal-address    ! except on the PRO for
  913.     SET KM VECTOR=octal-address    ! which these are fixed
  914.  
  915.  Hardware flow control REQUIRES pins 4 and 5 be carried through in
  916.  the modem cable, 4 to 4 (RTS) and 5 to 5 (CTS), DTE (the port) to
  917.  DCE (the modem), in addition to those otherwise normally present.
  918.  See HELP SET FLOW-CONTROL for info about its use.
  919.  
  920.  The port should be set up for 8 data bits and NO parity as Kermit
  921.  does parity in software.
  922.  
  923.  WARNING:  If the interface provides selectable interrupt priority
  924.  and your max speed will be greater than 4800 you will likely have
  925.  to use BIRQ 5 to avoid dropping chars.
  926.  
  927.  NOTE:  This handler does NOT support VTCOM, nor is it intended to
  928.  be used with anything other than KRT V03.62 or future releases.
  929.  
  930.  WARNING:  Because it's  impossible  to  bomb  an outstanding read
  931.  completion routine once KM has been assigned the  link  the  only
  932.  way to deassign KM is to exit Kermit.
  933.  
  934.  See the top of KRTKM.MAC for detailed installation instructions.
  935.  
  936. 2 KRT.INI-Examples
  937.  
  938.  ! Multiple users under TSX-Plus with possibly assorted modems
  939.  ! This seeks the first available line/port from those specified
  940.  ! May be installed on SY to be shared by all users, see HELP SET CL
  941.  SET CL PORTS 9/19200/T25/3 11/2400/H/6 8/2400/H/4
  942.  SET CL UNITS 2 1 0
  943.  SET CL PRIORITY 71    ! don't drop chars at high speeds
  944.  SET CL LINE *    ! search for first available combination of the above
  945.  ! For efficiency's sake, the above may be reduced to:
  946.  !SET CL POR 9/19200/T25/3 11/2400/H/6 8/2400/H/4,UNI 2 1 0,PRI 71,LIN *
  947.  SET VLSWCH REMOTE    ! emulate SET HOST/PORT if needed
  948.   ... other items as required ...
  949.  
  950.  ! Single user under TSX-Plus
  951.  SET CL0 LINE 9        ! includes "SET LINE CL0," unneeded by PRO-series
  952.  SET SPE 2400        ! CL or KM only, others must do from monitor
  953.  SET PHO XMODE 4    ! enable CONNECT/speed messages for fall back
  954.  SET MOD HAYES
  955.  ...
  956.  
  957.  ! Generic RT-11 ..
  958.  SET LINE KM        ! to call out..
  959.  SET FLOW-CONTROL RTS    ! if preferred, must be enabled in hardware too
  960.  SET MOD HAYES
  961.   ...
  962.  
  963.  ! System-independent items
  964.  SET LONG ON        ! enable long packets
  965.  SET SL ON,KED        ! turn on SL editor, enable its KED mode
  966.  SET PHONE TONE
  967.  SET PROMPT "Kermit-11> "
  968.  SET PHO NUM DECUS 1 800 521-8950    ! Username: INFORMATION for info..
  969.  
  970.  By default init file commands and informational responses to them are not
  971.  echoed to the screen.  After the init completes the default terminal mode
  972.  becomes NOQUIET, unless set in said file, which overrides these defaults.
  973.  If you wish to display the entire init process, make SET TT NOQ the first
  974.  line in KRT.INI.  A file may be tested by running it as a TAKE file:
  975.  
  976.     Kermit-11>@dev:KRT.INI
  977.  
  978.  SHOW FILE to check the name of the init file Kermit-11 used at start-up.
  979.  
  980. 2 Modems
  981.  
  982.  Generally, connecting a modem requires an appropriate interface such
  983.  as a DLV-11E which supports DTR and software speed selection.  It is
  984.  possible to get by without such things, however (and particularly on
  985.  TSX) this may pose a security risk in that the system has no control
  986.  signals with which to log out a disconnected job.
  987.  
  988.  Keeping the above in mind, note that if your modem requires  DTR  to
  989.  be present, you must use an interface that asserts it, force it high
  990.  internally in the modem, or build a cable to force it high.  Without
  991.  an appropriate interface HANGUP will not function and TSX is open to
  992.  serious security problems if incoming calls are allowed.
  993.  
  994.   WARNING:  If the interface provides selectable interrupt priority
  995.   and your max speed will be greater than 4800 you will likely have
  996.   to use BIRQ 5 to avoid dropping chars.  The port should be set up
  997.   for 8 data bits and NO parity as Kermit does parity in software.
  998.  
  999.  The modem cable must at a minimum carry through pins 2 and 3 (data),
  1000.  7 (ground), 8 (DCD) and 20 (DTR).  Under TSX the modem may be set to
  1001.  answer the line (pin 22, the ring indicator, must also be connected)
  1002.  then when Kermit is started if a CL unit is attached to the line and
  1003.  a modem set Kermit retains control of it all until dropping the line
  1004.  or exiting the program,  when the modem and line will be restored to
  1005.  their idle (auto-answer) state.
  1006.  
  1007.  The SET MODEM command is used to establish the type of modem you are
  1008.  using for the DIAL command.  Enter SET MODEM ? for a current list of
  1009.  of pre-defined modem types.  See HELP SET DIAL for information about
  1010.  entering a USER-DEFINED modem structure.
  1011.  
  1012.  This Kermit is capable of matching the DTE (system) speed to that of
  1013.  the DCE (modem) in response to a message by the modem (CONNECT nnnn)
  1014.  only if using the CL or KM handler.  Currently the generic Hayes and
  1015.  Telebit T2500/T3000 modem definitions support this.  Under XL/XC the
  1016.  speed can't be changed after Kermit is running, it must be done from
  1017.  the monitor first otherwise the queue will be lost.  The DCE must be
  1018.  locked to the same speed, which must be at least the highest desired
  1019.  carrier speed.  The MNP and V.42 versions of the above support this.
  1020.  If this is not suitable, a USER-DEFINED modem structure may be used.
  1021.  
  1022.  Be aware that file transfers FROM this Kermit via a modem whose DCE
  1023.  speed is greater than the connected speed (with the distant system)
  1024.  will require XOFF flow control, and servicing the interrupts caused
  1025.  by it may substantially increase the cpu's loading.  If the maximum
  1026.  connected speed possible is 2400 or less, dropping the DTE speed to
  1027.  9600 (when same must be locked for MNP/V.42) is a good idea.  Using
  1028.  the KM handler's hardware flow control is another option.
  1029.  
  1030.  NOTE:  This program toggles DTR to reset the modem thus this option
  1031.  must be enabled as part of the modem's default configuration.
  1032.  
  1033.   The following examples have been taken from actual daily use with
  1034.   this program to both dial in and out under TSX-Plus.  Note the S7
  1035.   register (wait time to connect) is set to 255 when Kermit inits a
  1036.   modem to dial out so Kermit's SET DIAL TIME-OUT takes precedence.
  1037.  
  1038. 3 Anchor
  1039.  
  1040.     Anchor Automation "Signalman Lightning 24" Model MK24:
  1041.  
  1042.                 CONFIGURATION
  1043.  
  1044.    S00=002    S01=000    S02=128    S03=013  NOTE: S0=2 here because this
  1045.    S04=010    S05=008    S06=002    S07=020  modem occasionally glitches
  1046.    S08=002    S09=006    S10=005    S11=040  DCD when answering the first
  1047.    S12=050    S13=000    S14=044    S15=000  ring, which TSX will catch &
  1048.    S16=000    S17=000    S18=000    S19=000  then hang up on when it's not
  1049.    S20=000    S21=016    S22=118    S23=054  there 0.5 second later..
  1050.    S24=000    S25=005    S26=000    S27=000
  1051.    S28=000    S29=000    S30=000    S31=255
  1052.    S32=001    S33=000    S34=000    S35=001
  1053.  
  1054.    B=0  Y=0  &M=0   &D=2   &C=1  &J=0  &T=0
  1055.    X=4  M=1   F=1    E=0    Q=1   V=1
  1056.  
  1057.    DIAL=TONE    SPEED=2400     PARITY=NONE
  1058.  
  1059.    The Anchor modem will save all of the above, including its "S" registers
  1060.    in RAM (backed up with a lithium battery), via AT&W.  Then one need only
  1061.    send ATZ to restore its auto-answer operation, which this Kermit will do
  1062.    when exiting.  SET PHONE XMODE 4 for all result codes, and use the HAYES
  1063.    modem type (SET MODEM HAYES).  Note that because this modem restores its
  1064.    time-out (S7) when reset it is set to 20 secs for answering which allows
  1065.    for a more timely response following a failed call.  If using MNP modems
  1066.    on the same system, S7 should be set to 40 seconds.  If you have the MNP
  1067.    model of this modem, stick with the HAYES definition as there is not any
  1068.    provision for locking the DTE speed.
  1069.  
  1070.    Configuration switches:
  1071.  
  1072.    1 - as req'd, ON for RJ-12/13 busy support
  1073.    2 - ON   DCD/DSR follow detected carrier signal
  1074.    3 - ON   DTR from the computer controls modem (manual says OFF, in error..)
  1075.    4 - OFF  remote digital loopback
  1076.    5 - OFF  enables command recognition by modem
  1077.    6 - OFF  no CTS support
  1078.    7 - unused
  1079.    8 - unused
  1080.  
  1081. 3 Hayes-MNP
  1082.  
  1083.  This is provided for use with Hayes style MNP modems which need the
  1084.  DTE speed locked to support same.  As almost every one is different
  1085.  no specific modem configuration data are listed here.  Hayes-MNP is
  1086.  intended for use when it is NOT desired to change speed in response
  1087.  to a CONNECT nnnn message, or for any other reason.
  1088.  
  1089. 3 Telebit-T2500
  1090.  
  1091.  Three Telebit T2500 definitions are provided.  T2500 is intended for
  1092.  use without MNP or V.42 LAP-M error correction.  It uses the modem's
  1093.  connect messages to match the DTE speed to that of the data path and
  1094.  that requires using either the CL or KM handler.  Set up the T2500's
  1095.  default profile in the "enhanced" command mode as shown below:
  1096.  
  1097.  E0 F1 M0 Q3 T V1 W1 X3 Y0 &P0 &T5     Version GF7.00-T2500SA
  1098.  S00:001 S01=000 S02:128 S03=013 S04=010 S05=008 S06=002 S07=040 S08=002
  1099.  S09=006
  1100.  S10=007 S11:050 S12=050 S18=000 S25=005 S26=000 S38=000
  1101.  S41=000 S45=000 S47=004 S48:001 S49=000
  1102.  S50=000 S51=255 S52:002 S54:002 S55=000 S56=017 S57=019 S58=003 S59=000
  1103.  S61=150 S62=003 S63=001 S64=000 S65=000 S66=000 S67=000 S68=255 S69=000
  1104.  S90=000 S91=000 S92=000 S93=008 S94=001 S95=000 S96=001 S97=000 S98=003
  1105.  S100=000 S101=000 S102=000 S104=000 S105=001 S106=000 S107=020
  1106.  S110=255 S111=255 S112=001
  1107.  S121=000 S130=002 S131:001
  1108.  S150=000 S151=004 S152=001 S153=001 S154=000 S155=000 S157=000 S158=000
  1109.  S160=010 S161=020 S162=002 S163=003 S164=007 S169=000 S255=000
  1110.  
  1111.  Then, when MNP operation is desired, set the DTE port (via SET SPEED
  1112.  if using TSX's CL handler) to 9600 or 19.2kb if your cpu can keep up
  1113.  with it, then SET MODEM T2500MNP.  This enables MNP only as attempts
  1114.  at a V.42 connection first with some MNP modems appear to leave them
  1115.  in a state where nothing following works.  When an MNP link can't be
  1116.  established operation falls back to the normal mode.
  1117.  
  1118.  V.42 and LAP-M facilities are enabled by setting the modem T2500V.42
  1119.  which operation is just like that of the MNP only above, except V.42
  1120.  is tried first, then MNP, and then normal operation if an error free
  1121.  path can not be established.  Negotiation of these protocols can add
  1122.  considerably to the time needed to connect.
  1123.  
  1124.  All of this should be done on the same  default  profile with which
  1125.  the modem will  automatically  answer  incoming calls to ensure the
  1126.  modem will be properly reset to  its auto-answer state when exiting
  1127.  Kermit-11 to the monitor.  The "enhanced" command mode is suggested
  1128.  because the "conventional" mode does not allow XOFF flow control in
  1129.  its command mode.  While this is not normally a problem with result
  1130.  messages it does make listing the modem's status impossible at high
  1131.  speeds.
  1132.  
  1133.  Under RT-11 either the T2500MNP to T2500V.42 definitions may be used
  1134.  to work around XL/XC's inability to modify its speed as is necessary
  1135.  for the T2500.  Both will connect normally if error correction isn't
  1136.  supported by the remote system.  The KM handler may also be used.
  1137.  
  1138.  SET PHONE XMODE 3 to enable all possible result messages, or use 14
  1139.  to force display of the carrier speed and protocol in all cases ala
  1140.  a real Hayes modem.
  1141.  
  1142.  If by accident the modem is sent something at an unwanted speed and
  1143.  becomes stuck there, toggle DTR (HANGUP or SET DTR) to reset it.
  1144.  
  1145.  If you are using PEP/MNP/V.42 Telebit's Kermit protocol spoofing is
  1146.  the fastest of all possible options even though it only uses normal
  1147.  94 byte packets between modems.  It is set in the above to run when
  1148.  requested by the other end.  To force it on first SHO LINE to check
  1149.  the DTE speed (if a fallback speed is shown then one must first SET
  1150.  SPEED 9600 or 19200 if using a mode where the DTE speed is locked),
  1151.  then CONNECT and issue the command ATS111=n, when "n" is one of:
  1152.  
  1153.     0    No protocol supported
  1154.     10   Kermit protocol with no parity
  1155.     11   Kermit and odd parity
  1156.     12   Kermit and even parity
  1157.     13   Kermit and mark parity
  1158.     14   Kermit and space parity
  1159.     20   XMODEM/YMODEM protocol
  1160.     255  Use protocol specified by other end
  1161.  
  1162.  Then, disable long packets (SET NOLONG will suffice), so the modems
  1163.  run most efficiently, and proceed with the transaction.
  1164.  
  1165. 3 Telebit-T3000
  1166.  
  1167.  Three Telebit T3000 definitions are provided.  T3000 is for disabling
  1168.  MNP/V.42 error correction.  It checks the modem's connect messages to
  1169.  match the DTE speed to that of the carrier.  T3000V.42 enables V.42 &
  1170.  MNP modes and locks the speed.  Set up the T3000's defaults as listed
  1171.  below.  This definition  (T3000V.42)  is for use with hardware  (RTS)
  1172.  flow control.  This is ONLY available under the KM handler, where you
  1173.  have an option to SET FLOW-CONTROL RTS before setting the modem-type.
  1174.  
  1175.  WorldBlazer - SA - Version LA5.00W- Configuration A
  1176.   B1  E0  L1  M0  Q1  T   V1  X12  Y0
  1177.  &C1 &D2 &G0 &J0 &L0 &Q0 &R3 &S0 &T5 &X0
  1178.  S000=0   S001=0   S002:0   S003=13  S004=10  S005=8   S006=2   S007:255
  1179.  S008=2   S009=6   S010=14  S011=70  S012=50  S018=0   S025=5   S026=1
  1180.  S038=0   S041=0   S045=0   S046=0   S047=4   S048:1   S050=0   S051=255
  1181.  S056=17  S057=19  S058:2   S059:15  S060=0   S061:0   S062=15  S063:1
  1182.  S064=0   S068=255 S069=0   S090=0   S092=0   S093=8   S094=1   S100=0
  1183.  S104=0   S105=1   S111=255 S112=1   S151=4   S155=0   S180=2   S181=1
  1184.  S183=25  S190=1   S191=7   S253=10
  1185.  
  1186.  The T3000 does NOT do XOFF flow control in the command mode even when
  1187.  it's enabled and functioning for data between modems unless S48=0 and
  1188.  this of course kills an 8-bit data path.  A third modem definition is
  1189.  provided (T3000X.42) which enables XOFF rtesraint - Kermit quotes the
  1190.  8-bit counterparts of XOFF and XON so this will only be a problem for
  1191.  binary data transfers using the Xmodem protocol.  This defintion will
  1192.  force S48 to 0 and enable XOFF restraint when initializing the modem.
  1193.  
  1194.  See HELP INSTALL MODEMS Telebit-T2500 for more info on Telebit modems.
  1195.  
  1196. 3 US-Robotics
  1197.  
  1198.  US Robotics "Courier" 2400/2400e:
  1199.  
  1200.    C1  E0  F1  M1  Q1  V1  X6
  1201.    BAUD=02400  PARITY=N  WORDLEN=8
  1202.    DIAL=HUNT   ON HOOK  TIMER
  1203.  
  1204.    &A1  &B0  &H0  &I0  &M0
  1205.    &N0  &R1  &S0  &Y1
  1206.  
  1207.    S00=001  S01=000  S02=043  S03=013
  1208.    S04=010  S05=008  S06=002  S07=030
  1209.    S08=002  S09=006  S10=007  S11=070
  1210.    S12=050  S13=032  S14=252  S15=000
  1211.    S16=000  S17=000  S18=000  S19=000
  1212.    S20=000
  1213.  
  1214.    Configuration switches:
  1215.  
  1216.     1 - UP    DTR controls modem
  1217.     2 - UP    verbal result messages
  1218.     3 - UP    quiet mode, for auto-answer
  1219.     4 - DOWN  don't echo local commands, for auto-answer
  1220.     5 - UP    enable auto-answer, modem answers on the first ring
  1221.     6 - UP    DCD on pin 8 follows action of received carrier
  1222.     7 - as req'd, DOWN for RJ-12/13 busy support
  1223.     8 - UP    to recognize "AT" command set
  1224.     9 - UP    drop phone connection when escape code received
  1225.    10 - UP    load power-on defaults from NVRAM
  1226.    QUAD - as req'd for your system and modem cable..
  1227.  
  1228.  Use the Hayes modem type (SET MODEM HAYES).  Set the "&" registers per
  1229.  the above and save them with AT&W.  The "S" registers aren't preserved
  1230.  so ONTIM and TIMIN must = 60. (TSGEN.MAC)  if incoming calls are being
  1231.  accepted (auto-answer enabled) under TSX-Plus.  If wish to use the MNP
  1232.  version, lock the DTE speed as desired to at least 4800 (AT&B5&W) then
  1233.  SET MODEM Hayes-MNP.
  1234.  
  1235.  US Robotics modems such as the Courier 2400 or 2400e will occasionally
  1236.  glitch when answering the phone and start a TSX port at 19.2kb instead
  1237.  of 2400.  This is more likely to happen when the modem is not properly
  1238.  cooled.  Replacing its rubber feet with some that hold it higher above
  1239.  the surface on which it resides may help.  Setting the modem to answer
  1240.  after the first ring (that is, on the second) may also help.  Starting
  1241.  with TSX V6.5, 2400 is tried first, before 19200, which also may help.
  1242.  
  1243.  SET PHONE XMODE 6 enables all possible result messages from the modem.
  1244.  
  1245. 2 RT-11
  1246.  
  1247.  The RT-11 FB,XB,XM,ZB,ZM monitors must include .SPCPS support if you want
  1248.  ^C to abort anything in the program without actually stopping the program
  1249.  itself.  If KRT is not the only job running it should be FRUNed to ensure
  1250.  it will be able to process incoming data from the remote system.  RT-11SB
  1251.  and SJ must be sysgenned for .mrkt and .twait (TIMER) support.
  1252.  
  1253.  If you are using RT-11 V4, the ONLY monitor which can run KRT is RT-11FB.
  1254.  
  1255.  SET USR SWAP if it is not already there, this program needs the space.
  1256.  
  1257.  RT-11 multi-terminal support has been pulled to keep the size reasonable.
  1258.  Only a handler, or the controlling terminal line, may be used to exchange
  1259.  files with the outside world.  Use XL with RT-11, XC with PRO/RT.  KM may
  1260.  be used with either, it adds speed fallback and support for TSX functions
  1261.  that make life with Kermit more enjoyable.
  1262.  
  1263.  As distributed KRTTSX has just enough buffer to load the KM handler built
  1264.  for a DLV11-E in a PDP-11 system.  This may be altered by the extend size
  1265.  (octal number of bytes) specified in KRTLNK.COM:
  1266.  
  1267.  krttsx,krttsx=krtxm/t/e:3010//    ! APR0, the root   extending HNBUFF
  1268.  
  1269.  WARNING:   Because it's impossible to bomb an outstanding read completion
  1270.  routine once KM/XC/XL has been assigned the link the only way to deassign
  1271.  it is to exit Kermit.
  1272.  
  1273.  WARNING:   Any SET from KMON on KM/XC/XL while its interrupts are enabled
  1274.  will OVERWRITE THE QUEUE and hose any data then in it.
  1275.  
  1276.  Note XC/XL is NOT an eight-bit device thus Kermit's parity will be forced
  1277.  to SPACE under RT-11.  If you have hacked it into handling 8-bits you may
  1278.  SET PARITY NONE either in the init file or from the keyboard after Kermit
  1279.  is running and AFTER you have SET LINE XL or XC.
  1280.  
  1281.  HANGUP (DTR control) isn't available unless XL is from RT-11 V5.2 and up,
  1282.  or the KM handler is used.
  1283.  
  1284.                 = = = = =
  1285.  
  1286.    To operate properly at high speeds (2400 and up) and with Kermits
  1287.    not supporting XOFF flow control the XL or XC device handler MUST
  1288.    be modified to increase the internal buffer size and repress XOFF
  1289.    transmission within a packet.  This is very easy to do.
  1290.  
  1291.    First copy XM.MAC, XL.MAC, XM.ANS, SYSGEN.COM and for the PRO/300
  1292.    series XC.MAC from the RT-11  distribution  to DK, ASSIGN DK SRC,
  1293.    and then in the copy of the file XL.MAC change the line:
  1294.  
  1295.     from:    BUFSIZ    = 64.
  1296.     to:    BUFSIZ    = 256.
  1297.  
  1298.    Then IND SYSGEN and tell it to use the saved answer file XM.ANS.
  1299.    When SYSGEN exits, it  will  have created, among other things, a
  1300.    file called XM.CND which is needed for the driver assembly.  For
  1301.    the PRO/300 series substitute XC for XL in the following command
  1302.    procedure to build the handler:
  1303.  
  1304.     .COPY SY:XLX.SYS SY:XLX.OLD        ! save a copy
  1305.     .REN/NOPRO SY:XLX.SYS SY:XLX.SYS    ! unprotect file
  1306.     .UNLOAD XL                ! unload handler
  1307.     .REMOVE XL                ! and remove it
  1308.     .MACRO/OBJ:XLX (XM,XM.CND,XL)        ! assemble new
  1309.     .LINK/EXE:SY:XLX.SYS XLX        ! RT V4, handler on SY
  1310.     .LINK/NOBIT/EXE:SY:XLX.SYS XLX        ! if RT V5, do this
  1311.     .INSTALL XL                ! install it and
  1312.     .LOAD XL                ! load into memory
  1313.  
  1314.                 = = = = =
  1315.  
  1316.  To use a handler, you must have an DL-11/DLV-11 interface (in addition to
  1317.  the console interface).  The XL handler supports two DCL commands:
  1318.  
  1319.         .SET XL CSR=n
  1320.         .SET XL VECTOR=m
  1321.  
  1322.  Where "n" is the address of the CSR (control status register)  and "m" is
  1323.  the  interrupt  vector address.  The defaults are 176500 for the CSR, and
  1324.  300 for the interrupt vector.  The DLV-11 speed is set with wire wrapping
  1325.  and it's not settable on the XL handler.  If you have a DLV-11E XL may be
  1326.  built with XL$DVE=1 and the speed set from KMON as with XC.
  1327.  
  1328.  The XC handler is a special version of XL for the PRO/300 series, its CSR
  1329.  is 173300 and vector is 210(8).  You must SET XC SPEED=nn from KMON prior
  1330.  to running  Kermit  to  change XC's 1200 baud default.  You may also need
  1331.  to UNLOAD XC before Kermit can be FRUN:
  1332.  
  1333.     .UNLOAD XC
  1334.     .FRUN KRTTSX.SAV/PAUSE
  1335.     .LOAD XC=KRTTSX
  1336.     .RESUME
  1337.  
  1338.  Also, when running in the foreground
  1339.  
  1340.         Kermit-11>SET TT QUIET
  1341.  
  1342.  allows one to work in the background during file transfers.
  1343.  
  1344.  Last, but not least, if there is no way to get an  additional  interface
  1345.  into your system (perhaps you have a four slot Q-bus backplane), you can
  1346.  force Kermit to use the console.  This implies, of course, that it won't
  1347.  be possible to dial out from the RT-11 system - it may only be used with
  1348.  the remote Kermit connected via the console port.  Kermit-11 defaults to
  1349.  TT as its link device and sets the packet length to 60 bytes.  Otherwise
  1350.  the command
  1351.  
  1352.         Kermit-11>SET LINE TT
  1353.  
  1354.  does the same thing.  You may increase the packet size if larger packets
  1355.  will work, or modify RT-11's default SPACE parity, AFTER the SET LINE is
  1356.  done.
  1357.  
  1358. 2 TSX-Plus
  1359.  
  1360.  One may communicate via TT when calling in,  and  use CL0 to CL7, KM or XL
  1361.  when calling out.  The CL handler is suggested as it's more efficient with
  1362.  TSX-Plus.  See HELP SET CL for details.   On PRO-300 series systems Kermit
  1363.  will try to assign CL0 or CL1 to TSX Line #3 at startup.
  1364.  
  1365.  If there is any chance of swapping on your system use TSX's MEMLOCK option
  1366.  when running the program.  This is easily done via the INSTALL facility.
  1367.  
  1368.  WARNING:  If you build XL with XL$DVE (set speed) enabled be advised under
  1369.    TSX-Plus (as of V6.5) the KMON command SET XL SPEED=nnnn will modify the
  1370.    hardware port which XL is serving instead of the handler itself and thus
  1371.    fail to produce the expected result.  And regardless, if you must use XL
  1372.    see HELP INSTALL RT-11 regarding this handler's limitations.  Mapping it
  1373.    is recommended to save low memory.
  1374.  
  1375.  KRTTSX uses  217.  blocks  in the  TSX  PLAS  swap file.  The TSGEN/TSXMOD
  1376.  parameter  determining  its size is SEGBLK.  If modified, TSX must then be
  1377.  restarted to create the new swap file.
  1378.  
  1379.  In the CONNECT mode 11.  activation  characters  are declared so the TSGEN
  1380.  parameter MXSPAC must be => 11.
  1381.  
  1382.  Under TSX one must SET IO ABORT so errors won't cause waits for the I/O to
  1383.  rundown.  In  TSGEN  this may be accomplished by making IOABT = 1.  It may
  1384.  also be done as a keyboard command.
  1385.  
  1386.  XOFF operation without dropping characters in the CONNECT mode at 2400 and
  1387.  up may require enlarging TSX's silo and input buffer on lines to which the
  1388.  CL units are attached.
  1389.  
  1390.     BUFSIZ    1024.,1024.
  1391.     SILO    255.,64.,16.
  1392.  
  1393.  in the LINDEF does the job though this is a bit big if 2400 is the fastest
  1394.  speed used.  Kermit also can raise its priority when actually talking to a
  1395.  CL unit so as not to drop chars at high speeds, see HELP SET CL.
  1396.  
  1397.  The above also applies to file transfers via the controlling terminal line
  1398.  (TT).   When sending to a TSX system you may also need to set its priority
  1399.  below any other interactive job and use TSX's /HIGHEFF switch when running
  1400.  Kermit-11 to avoid excessive degradation of response time for other users.
  1401.  This is due to the overhead involved in processing input by TSX's terminal
  1402.  handler, and is not a problem when sending output from a TSX system.  Note
  1403.  this only concerns I/O via TT - comm handlers (CL, XL, etc) are no problem
  1404.  in either direction.
  1405.  
  1406.  Binary file transfers  via  TT  might require you to SET TT 8BIT.  You may
  1407.  also need to SET TT BITS=8 but this is a hardware function and thus should
  1408.  ONLY be done from a primary line first, before any subprocess that may run
  1409.  Kermit is spawned.  Setting this via a subprocess may write garbage in the
  1410.  line-parameters word.
  1411.  
  1412.  TERMINAL privilege is required to assign a CL unit to a time-sharing line.
  1413.  
  1414.                 = = = = =
  1415.  
  1416.  Modem control is an extremely significant system security issue under TSX.
  1417.  The problem is if a dial-in user's phone connection fails that job must be
  1418.  killed before a following call can be answered and connected to it, and to
  1419.  the still-logged-on session of the previous caller.
  1420.  
  1421.  Beginning with V6.4 TSX was given improved modem control, with which these
  1422.  "tailgating" incidents are easily prevented.  The following parameters are
  1423.  suggested for MNP/V.42 auto-answer operation (modem time-out = 40 secs):
  1424.  
  1425.  .SH MODEM
  1426.  PHONE=1    Other modem control parameters (in 0.5 sec):
  1427.   ONTIM=80 OFFTIM=1 TIMIN=80 TIMLOC=1 TIMOUT=1
  1428.  
  1429.  When no error correction is in use, ONTIM and TIMIN may be halved, and the
  1430.  modem's wait time for carrier (S7 register in Hayes-style units) set to 20
  1431.  seconds.  If the modem's wait time is not settable such that it's restored
  1432.  when reset (ala ATZ), then ONTIM and TIMIN must be set to match the modem.
  1433.  OFFTIM, TIMLOC and TIMOUT must = 1 (the minimum, don't use zero) to ensure
  1434.  the job is logged off immediately.  The $PHONE flag must be defined in the
  1435.  LINDEF (in TSGEN.MAC) for any line connected to an auto-answer modem.  And
  1436.  above all, the modem MUST be configured to hang up when DTR is dropped for
  1437.  any of this to be effective.
  1438.  
  1439.  One then includes this in the start-up command files for "phone" lines:
  1440.  
  1441.  SET ERROR FATAL
  1442.  !ACCESS SY:CLEAR.COM/READ        ! add if other access limited here
  1443.  SET LOGOFF FILE=SY:CLEAR.COM        ! add this..
  1444.  SET TT 8BIT,BITS=8            ! ..and this for Kermit
  1445.  ...                    ! other necessary items
  1446.  R LOGON
  1447.  
  1448.  and CLEAR.COM contains:
  1449.  
  1450.  SET ERROR NONE
  1451.  SET PRIO 70                ! be sure this runs before next call
  1452.  SET TT NOPAGE,NODTR,PHONE,AUTO,XON
  1453.  ...                    ! anything else needed should follow
  1454.  
  1455.  This may seem a bit extreme on the SET TT end of things, but it definitely
  1456.  gets the job done, even after in and out buffers are overflowed, XOFF'd in
  1457.  both directions (deadlocked) and the caller has to hang up.  The rationale
  1458.  for the various options used above is:
  1459.  
  1460.     NOPAGE    ensures possible noise induced XOFF on DTR drop is harmless
  1461.     NODTR    resets the modem
  1462.     PHONE    ensures port is not in local mode, just in case..
  1463.     AUTO    ensures port not stuck at any particular speed
  1464.     XON    resets any XOFF which may have snuck through..
  1465.  
  1466.  Note that TERMINAL privilege is required for the above to drop DTR.  As of
  1467.  TSX V6.5 installing a .COM file with TERM privilege doesn't work, the user
  1468.  must be given it or DTR will not be dropped and the phone line may not get
  1469.  hung up.
  1470.  
  1471.  If your version of TSX-Plus is earlier than 6.4 and you must allow dial-in
  1472.  operation there is a program named NOTAIL which runs as a detached job and
  1473.  provides the same protection against tailgating.  See KRTAIL.MAC, included
  1474.  with this Kermit's distribution.
  1475.  
  1476.  It's also a good idea when using a Hayes-style modem to disable its escape
  1477.  character means of invoking the modem's command mode.  If one phones in to
  1478.  a TSX system and then uses another line on it to call out or talks to some
  1479.  one such that the other person's data are going into the modem (the one at
  1480.  the TSX system, to which your local system is connected) via its DCE port,
  1481.  there's no other way to prevent someone from using the escape sequence and
  1482.  taking control of that modem, after which they've got your phone line..
  1483.  
  1484. 1 Introduction
  1485.  
  1486.  The Kermit file transfer protocol is  intended  for  use  in  an
  1487.  environment where there may be a diverse mixture of computers --
  1488.  micros, personal computers, workstations, laboratory  computers,
  1489.  timesharing  systems  --  from  a variety of manufacturers.  All
  1490.  these systems need have in common is the ability to  communicate
  1491.  in ASCII over ordinary serial telecommunication lines.
  1492.  
  1493.  Kermit was originally designed at Columbia  University  to  meet
  1494.  the need for  file  transfer  between their DECSYSTEM-20 and IBM
  1495.  370-series mainframes and various microcomputers.  It turned out
  1496.  that the diverse characteristics of these three kinds of systems
  1497.  resulted in a design that was general enough to fit  almost  any
  1498.  system.   The  IBM mainframe, in particular, strains most common
  1499.  assumptions about how computers communicate.
  1500.  
  1501.  The   Kermit   protocol    is    specifically    designed    for
  1502.  character-oriented  transmission  over  serial telecommunication
  1503.  lines.  The design allows for the restrictions and peculiarities
  1504.  of the medium and the requirements of diverse operating environ-
  1505.  ments -- buffering, duplex, parity, character set, file  organi-
  1506.  zation,  etc.  The protocol is carried out by Kermit programs on
  1507.  each end of the serial connection  sending  "packets"  back  and
  1508.  forth:  the  sender  transmits file names, contents, and control
  1509.  information and the receiver acknowledges (either positively  or
  1510.  negatively) each packet.
  1511.  
  1512.  The packets have a layered design, in keeping with the ANSI  and
  1513.  ISO  philosophies,  with  the  outermost fields used by the data
  1514.  link layer to verify data integrity, the  next  by  the  session
  1515.  layer  to verify continuity, and the data itself at the applica-
  1516.  tion level.
  1517.  
  1518.  Connections between systems  are  established  by  the  ordinary
  1519.  user.    In   a   typical  case,  the  user  runs  Kermit  on  a
  1520.  microcomputer, enters a terminal emulation, connects to a remote
  1521.  host  computer  (perhaps by dialing it), logs in, runs Kermit on
  1522.  the remote host, and then issues  commands  to  that  Kermit  to
  1523.  start  a  file transfer, "escapes" back to the micro, and issues
  1524.  commands to that Kermit to start its side of the file  transfer.
  1525.  Files may be transferred individually or in groups.
  1526.  
  1527.  Basic Kermit provides only file transfer, and that  is  provided
  1528.  for sequential files only, though the protocol attempts to allow
  1529.  for various types of sequential files.  Microcomputer  implemen-
  1530.  tations  of  Kermit are also expected to provide terminal emula-
  1531.  tion, to facilitate the initial connection.
  1532.  
  1533.  More advanced implementations simplify the user interface  some-
  1534.  what  by  allowing  the  Kermit  on  the remote host to run as a
  1535.  "server," which can transfer  files  in  either  direction  upon
  1536.  command from  the  local  "client"  Kermit.  The server can also
  1537.  provide  additional  functionality,  such  as  file  management,
  1538.  messages,  mail,  and  so  forth.   Other optional features also
  1539.  exist, including a variety of block check types, a mechanism for
  1540.  passing  8-bit data through a 7-bit communication path, a way to
  1541.  compress a sequence of repeated characters, and so forth.
  1542.  
  1543.  As local area networks become  more  popular,  inexpensive,  and
  1544.  standardized,  the  demand  for Kermit and similar protocols may
  1545.  dwindle, but will never wither away entirely.  Unlike  hardwired
  1546.  networks,  Kermit gives the ordinary user the power to establish
  1547.  reliable error-free connections between any two computers.  This
  1548.  may always be necessary for one-shot or long-haul connections.
  1549.  
  1550.  Recommended reading:
  1551.  
  1552.  "Kermit, A File Transfer Protocol"  by Frank da Cruz, 1987
  1553.  Digital Press, order number: EY-6705E-DP  (in USA phone: 800 343-8321)
  1554.  DP ISBN 0-932376-88-6, PH ISBN 0-13-514753-0
  1555.  
  1556. 1 Local-vs-Remote
  1557.  
  1558.  Kermit-11 by default assumes that all file transfers will be done over
  1559.  the terminal line you are currently logged in on (TT).  This is called
  1560.  the  REMOTE  mode (the PDP-11 is the remote system) and is the desired
  1561.  case if you are running Kermit on a microcomputer and using the PDP-11
  1562.  through it.  However, if you want to call out from the PDP-11, perhaps
  1563.  on an auto-dial modem, you'll need something besides TT to communicate
  1564.  with the modem.  This is called the LOCAL mode since the PDP-11 is now
  1565.  the local system.  The link device with which Kermit talks to the out-
  1566.  side world is modified with the SET LINE command.
  1567.  
  1568.  An implicit SET LINE CL will be done on the PRO-series under TSX-Plus
  1569.  if the handler is found when Kermit is started.
  1570.  
  1571.      Under TSX-Plus attaching a CL unit to a line requires TERMINAL
  1572.      privilege, and ALLOCATE privilege is necessary for use of a CL
  1573.      line in any case.  You may have to talk to your system manager
  1574.      to get access to an outgoing terminal line.
  1575.  
  1576.      Once you're connected to another system by a modem, some means
  1577.      must exist for the phone connection to be broken if the remote
  1578.      doesn't drop it when logging out.  If your line provides modem
  1579.      control (DLV-11E, DZV-11, etc) the HANGUP command may be used,
  1580.      otherwise your connection may not be hung up, and could run up
  1581.      a tidy phone bill.
  1582.  
  1583. 1 LOGFILE
  1584.  
  1585.  Creates the debug and session logging file.  One may optionally specify
  1586.  a debug mode as an additional argument following the desired file name,
  1587.  or must later select something to be written into the file, such as SET
  1588.  DEBUG CONSOLE to log a session with a remote system.  When a logfile is
  1589.  closed all disk based debug modes are reset (turned off).  If file size
  1590.  is a consideration it may be specified via SET FILE CREATE-SIZE or with
  1591.  the syntax FILENAME[siz] where "siz" is the desired size expressed as a
  1592.  decimal number of blocks.
  1593.  
  1594.     Kermit-11>LOG TMP CON     ; default type is .LOG, logs CONNECT
  1595.     Kermit-11>LOG ABC[99] CON ; ABC.LOG will be 99 blocks
  1596.     Kermit-11>LOG LP: ALL     ; LP MUST be spooled, or very fast..
  1597.     Kermit-11>LOG             ; close file, off disk based debugging
  1598.  
  1599.  Check HELP Debug for a brief list or HELP SET DEBUG for detailed
  1600.  descriptions of debugging modes.  See HELP PRINT for info on use
  1601.  of other print devices.
  1602.  
  1603. 1 LOGOUT
  1604.  
  1605.  Tells a remote server to log out your process on the remote system.
  1606.  If the remote doesn't hang up the phone the HANGUP command will, if
  1607.  the interface permits, cause the line to be dropped.
  1608.  
  1609. 1 Long-Packets
  1610.  
  1611.  Kermit-11 supports the use of packet lengths greater than 94.  This is
  1612.  particularly useful in file transfers over links with delays exceeding
  1613.  one second,  or whenever transmission errors are sufficiently low that
  1614.  time saved in ACK packets (as opposed to time lost in resending longer
  1615.  data packets) improves efficiency.  The main restriction on the packet
  1616.  size is the link, a given circuit may not pass a given number of chars
  1617.  in a single packet.  Also, BOTH Kermits must support this extension to
  1618.  the protocol, it is always negotiated before any file transfer.
  1619.  
  1620.  Long packets are enabled by setting the  receive  packet length on the
  1621.  Kermit which will be receiving the transfer:
  1622.  
  1623.     Kermit>SET RECEIVE PACKET-LENGTH nnnn    ; use max packets
  1624.     Kermit>SET BLO 3            ; CRC error checking
  1625.  
  1626.  Here the above may also be accomplished in one command with:
  1627.  
  1628.     Kermit-11>SET LONG ON        ; max packets, CRC error tests
  1629.  
  1630.  It is highly recommended you use the CRC block check,  as the default
  1631.  type one checksum is inadequate for such packet lengths.  Please note
  1632.  it may be necessary to preset this on both sides, before invoking the
  1633.  server.  The maximum packet size possible here may be determined with
  1634.  SHOW PARAMETERS.
  1635.  
  1636.  You may disable long packets at this end via SET NOLONG.
  1637.  
  1638.  When talking to VMS Kermit or C-Kermit you will probably need to
  1639.  also SET SEN PAC nnnn on them before long packets will function.
  1640.  
  1641. 1 MILNET-TAC
  1642.  
  1643.  The following conditions must be met to successfully use Kermit-11 on
  1644.  a MILNET Terminal Access Controller.
  1645.  
  1646. 2 Binary-Files
  1647.  
  1648.  The TAC (which implements the DDN Telnet Protocol) normally provides
  1649.  just a 7-bit path.  To pass 8-bit data enable the binary mode in the
  1650.  TAC:
  1651.  
  1652.     @Binary Input Start    (@b i s)
  1653.     @Binary Output Start   (@b o s)
  1654.  
  1655.  Some hosts allow engaging the binary mode from the host.  The binary
  1656.  mode has the side effects of disabling the intercept character means
  1657.  of controlling the TAC, and XOFF flow control.  Refer to HELP MILNET
  1658.  Flow-Control for additional info.
  1659.  
  1660.  Eight-bit prefixing in Kermit may also be used to move 8-bit data in
  1661.  a 7-bit path.  This is enabled via SET PARITY SPACE on both Kermits.
  1662.  
  1663. 2 Flow-Control
  1664.  
  1665.  The buffer size (a configurable parameter) for a terminal port on a TAC
  1666.  is typically about 64 bytes.  Since the default packet length in Kermit
  1667.  is usually 94 bytes it is quite likely that buffer overflow will occur.
  1668.  There are two possible solutions.
  1669.  
  1670.  1.  Enable flow control on the TAC by giving it these commands:
  1671.  
  1672.     @Flow Input Start      (@f i s)
  1673.     @Flow Output Start     (@f o s)
  1674.  
  1675.  Note flow control isn't compatible with binary mode.  It is possible to
  1676.  set binary mode in only one direction.  For example you can set Inbound
  1677.  binary and retain flow control in the opposite direction.  You probably
  1678.  won't need Outbound (input to Kermit-11) flow control at 2400 or below.
  1679.  
  1680.  2.  Make the Kermit packet length small enough to not overflow the TAC:
  1681.  
  1682.     Kermit-11>SET REC PAC 60
  1683.  
  1684.  You will  probably  get  the best throughput for ASCII files by keeping
  1685.  the packet size as large as possible and using flow control.
  1686.  
  1687.  This Kermit also provides a means to wake up the TAC by sending two ^Qs
  1688.  to it when the CONNECT command is given:
  1689.  
  1690.     Kermit-11>SET CONSOLE [NO]MILNET
  1691.  
  1692. 2 Intercept-Character
  1693.  
  1694.  The default TAC intercept character is "@", which is also used by Kermit,
  1695.  so one of the following must be done or Kermit packets won't pass through
  1696.  the TAC.
  1697.  
  1698.  1. Change the TAC's intercept character:
  1699.  
  1700.     @Intercept <decimal-ASCII-value>
  1701.  
  1702.  For example, "@I 6" sets the intercept character to ^F.
  1703.  
  1704.  2.  Use the TAC's Binary mode, which has the side effect of disabling the
  1705.  intercept character.
  1706.  
  1707. 2 Time-Outs
  1708.  
  1709.  When going through satellite hops or multiple gateways the occasional very
  1710.  long delay may result in Kermit timing out waiting for a packet.  See HELP
  1711.  SET REC TIME-OUT or HELP SET SEND TIME-OUT as appropriate.
  1712.  
  1713. 1 Modems
  1714.  
  1715.  Check HELP SET MODEM for pre-defined modem types and HELP SET DIAL
  1716.  for information about entering your own USER-DEFINED modem type.
  1717.  
  1718.  SET MODEM ? provides a brief list of pre-defined modems.  See HELP
  1719.  Install Modems for hardware and cabling information.
  1720.  
  1721. 1 MOUNT
  1722.  
  1723.  Logical disks are used to partition a physical device into smaller
  1724.  units which can  themselves  be  treated  as  directory structured
  1725.  devices.  To access the contents of a logical disk, one must first
  1726.  mount it:
  1727.  
  1728.     Kermit-11>MOU LDn file       ; .DSK,.DEV are default types
  1729.     Kermit-11>MOU LDn dev:file   ; file is not on DK (default)
  1730.     Kermit-11>MOU LDn file DK    ; makes LDn the default disk
  1731.  
  1732.  It's then referred to by its logical name LDn: where n=unit number.
  1733.  Up to eight (LD0-LD7) logical disks may be mounted at any one time.
  1734.  Any new mount overwrites an existing mount for any particular unit.
  1735.  Nested logical disks can  only  be mounted in ascending unit number
  1736.  order.  The only logical assignment supported is DK (default disk).
  1737.  
  1738.  MOUNT within Kermit is only available under TSX-Plus V6.2 and up.
  1739.  
  1740. 1 Parity
  1741.  
  1742.  Sometimes what appears to be valid packet is constantly rejected.
  1743.  This usually happens when the requesting Kermit asks a server for
  1744.  a file and then rejects the server's first packet until the retry
  1745.  limit is reached.  This may  be caused by parity being introduced
  1746.  somewhere, as when a modem is generating parity,  or by a private
  1747.  or public net.  If the  communications  link is at fault a simple
  1748.  fix is to SET PARITY SPACE on each Kermit, forcing removal of bit
  1749.  seven from the incoming data.  Normally this will not stop binary
  1750.  transfers since most Kermits can do eight bit prefixing, a method
  1751.  of sending  eight  bit  data over a seven bit link.  You MUST use
  1752.  parity (even if MARK or SPACE)  when using Kermit-11 with the IBM
  1753.  CMS Series/1 or 7171 3270 emulator.  See HELP SET PARITY for info
  1754.  about specific options.
  1755.  
  1756.  If you are calling into a TSX+ system, you may need to:
  1757.  
  1758.     .SET TT 8BIT
  1759.  
  1760.  to be able to transfer binary files to your local system  without
  1761.  incurring the overhead of the Kermit protocol known as  eight bit
  1762.  prefixing.  You may also need to SET TT BITS=8, however this is a
  1763.  hardware function and should  ONLY  be  done from a primary line,
  1764.  otherwise garbage might be written into the line-parameters word,
  1765.  rendering it useless.
  1766.  
  1767.  If this isn't a solution because something in the path or the far
  1768.  end requires parity, then SET PARITY SPACE on both Kermits.
  1769.  
  1770.  Under RT-11 parity will default to SPACE.  If need be you may SET
  1771.  PARITY NONE in the init file or from the keyboard after Kermit is
  1772.  running and AFTER a link device has been set.
  1773.  
  1774. 1 PRINT
  1775.  
  1776.  Copies a single (non-wildcarded) file to LP.  This device name is
  1777.  hard-coded in Kermit, but you may assign anythng you'd like as LP
  1778.  from the monitor before starting Kermit.  Attempting to print via
  1779.  any other device direct (such as LS) may cause Kermit to hang, so
  1780.  you should ASSIGN xxx LP (where xxx is the desired print handler)
  1781.  from RT-11 or TSX first.  LP is the only print device name Kermit
  1782.  supports.
  1783.  
  1784. 1 PWD
  1785.  
  1786.  Displays the current default device (DK), home directory and, if
  1787.  running under TSX-Plus V6.2 or above, mounted logical disks.
  1788.  
  1789. 1 QUIT
  1790.  
  1791.  Synonym for EXIT.
  1792.  
  1793. 1 RECEIVE
  1794.  
  1795.  The RECEIVE command tells Kermit-11 to receive a file  or  file  group
  1796.  from  the  other  system.  File names are taken from the incoming file
  1797.  headers - that is, files to be sent are specified  on the other system
  1798.  with its SEND command (wildcarding may be used if sender supports it):
  1799.  
  1800.     Kermit>SEND afile    ; a single file
  1801.     Kermit>SEND *.MAC    ; all .MAC files
  1802.  
  1803.  Then one escapes back to one's local machine and initiates receive:
  1804.  
  1805.     Kermit-11>RECEIVE    ; note no file name argument is used
  1806.  
  1807.  As files are created, their names will be displayed on your screen.
  1808.  
  1809.  If a file arrives that you don't really want, you can try to cancel it
  1810.  by typing Ctrl-X which sends the request to the remote Kermit.  If the
  1811.  remote understands it (some Kermits may not) it will comply, otherwise
  1812.  it will continue to send.  If a file group is being sent, you can bomb
  1813.  the entire group by typing Ctrl-Z.  These control chars are checked at
  1814.  the end of each DATA packet.  Use Ctrl-C to abort when the need arises
  1815.  before receiving the beginning of the first file.
  1816.  
  1817.  If the first file arrives too soon, use SET DELAY on the sending side.
  1818.  
  1819.  If an incoming file has the same name as an existing file Kermit-11 by
  1820.  default will create a new file.  To preserve existing files check HELP
  1821.  SET FILE PROTECT.
  1822.  
  1823.  When receiving text files from a non RT-11 system this Kermit will add
  1824.  25% to the received file size as record terminators are often excluded
  1825.  from what is reported, or are of a different size (Unix).  Files close
  1826.  to the maximum free space may be accommodated by SET FILE CREATE-SIZE,
  1827.  which overrides any passed size attribute.
  1828.  
  1829.  If you are trying to receive binary files from a Kermit which does not
  1830.  support attribute transmission SET FILE TYPE FIXED and SET BLOCK-CHECK
  1831.  on BOTH ends first, or the transmission may appear fine while all high
  1832.  bits are actually being tossed.
  1833.  
  1834.  Normally it is much easier to run the remote Kermit as a SERVER.  When
  1835.  that isn't possible, the RECEIVE command is useful.
  1836.  
  1837. 1 REDIAL
  1838.  
  1839.  After having dialed a number, if the phone you're calling is busy,
  1840.  doesn't answer or whatever the problem, you may REDIAL n where "n"
  1841.  is the number of retries desired, up to 65,535 - which is also the
  1842.  default when "n" is omitted.  When the call succeeds your terminal
  1843.  will be connected to the remote system automatically.  REDIAL only
  1844.  acts on the last phone number DIALed.  This number may be seen via
  1845.  SHOW PHONE (if it exists).
  1846.  
  1847.  Dialing may be aborted by striking  any  key after the process has
  1848.  begun, as long as that's before actually connecting to the remote.
  1849.  
  1850.  SET DIAL TIME-OUT n (in seconds) determines the time spent waiting
  1851.  for a response before assuming the call has failed.  It is usually
  1852.  set 30 to 45 seconds in the modem definition.  On modems which can
  1853.  detect a busy signal, retries will occur as fast as it's reported.
  1854.  
  1855.  The generic Hayes modem definition here supports extended response
  1856.  modes, see HELP SET PHONE XMODE.   Please  note these are the only
  1857.  parameters  settable for pre-defined modem types (those selectable
  1858.  by SET MODEM as opposed to SET DIAL) as well as the USER-DEFINED.
  1859.  
  1860. 1 Release-Notes
  1861.  
  1862.  Kermit-11 for RT-11/TSX-Plus  V03.62-8  27-Jul-93
  1863.  
  1864.        [See KRTNEW.NEW for data regarding KRT Y03.63-49, 19-Feb-96]
  1865.  
  1866.  The following work was done primarily to support the use of Kermit-11 on
  1867.  a public bulletin board system under TSX-Plus, and then expanded to make
  1868.  a reliable, general purpose comm program.  Numerous bugs have been fixed
  1869.  and several new routines added.  All major differences between this work
  1870.  and Kermit-11 T3.60 are listed by module in the following extracts, from
  1871.  the edit history in KRTCMD.MAC.  Check HELP Binary-Files for information
  1872.  regarding compatibility with previous Kermit-11s and other Kermits.  See
  1873.  KRT.DOC Appendix A for an in-depth discussion of modifications made.
  1874.  
  1875. 2 KRT.COM
  1876.  
  1877.  Edit 61:
  1878.  link command file to build minimum memory version of this
  1879.  program.  KRT.SAV is disk overlaid, uses 51kb..
  1880.  
  1881. 2 KRTAIL
  1882.  
  1883.  add automatic 50Hz clock rate detection and support for watching
  1884.  more than 34. lines, just in case anyone ever achieves this..
  1885.  
  1886. 2 KRTASM
  1887.  
  1888.  Edit 61:
  1889.  created KRTASM.NON, assembles Kermit modules for a non-EIS CPU
  1890.  
  1891. 2 KRTATR
  1892.  
  1893.  Edit 62:
  1894.  add 25% to rec'd length for text files from non RT-11/TSX systems
  1895.  
  1896.  Edit 61:
  1897.  modified rx.cdt,sn.cdt to do the "#" date/time attribute
  1898.  hosed unused stuff, added rx.pro,sn.pro for protected file attribute
  1899.  
  1900.  added support for date/time/prot file attributes
  1901.  patched open, close and I/O data table to support it..
  1902.  
  1903.  modified w$attr to send all attributes in a single packet
  1904.  rx.xle result in at$len no longer overwritten by rx.len
  1905.  added send exact file length in bytes
  1906.  call binary files "BINARY" not "IMAGE" so MS-Kermit is happy
  1907.  
  1908. 2 KRTCM1
  1909.  
  1910.  Edit 62:
  1911.  make type append a LF to CR if CR not followed by one
  1912.  hose hi bit and type anyway for VT100 and below in c$type
  1913.  
  1914.  Edit 61:
  1915.  c$type defaults to .LST, error handling improved, does wildcards
  1916.  also sped up, types any size record, binary file filtering added
  1917.  
  1918.  c$set - error handling fixed
  1919.  c$who, c$pwd, c$cls, c$clx, c$xmodem added..
  1920.  c$take parses file name, checks for/disallows wildcards, etc.
  1921.  c$conn - disallow connect to TT (since one is there already..)
  1922.  mount/dismount logical disks command interface, calls TSX emts
  1923.  added RT-11 style assign default device, for DK only
  1924.  remote disk_usage passes optional device argument
  1925.  make default take file type ".COM"
  1926.  reinit modem when exiting if DTR dropped during CONNECT
  1927.  added SET CLn LINE x support for TSX-Plus, see HELP SET CL
  1928.  added search path for take files
  1929.  move sho$line here, added modem type, TSX line # and DCD status
  1930.  added call to c$idle in c$exit to reset modem on exit to monitor
  1931.  c$set now does multiple args, separated by commas
  1932.  
  1933. 2 KRTCMD
  1934.  
  1935.  Edit 61:
  1936.  dumped ttysav/ttyset from opentt - these killed single char
  1937.  input under TSX, thus things like the ^A stats didn't work.
  1938.  t.ttysav is now part of the init at startup, then ttyrst is
  1939.  called as needed.  ttyini no longer turns things on which
  1940.  ttysav would have to turn off.  also, with 6 char labels,
  1941.  %.ttysav = %.ttyset = the same thing under the present system
  1942.  of dispatching I/O with "%." prefixing routine names..
  1943.  
  1944.  xmode flag used to clean up xreply display by suppressing packet
  1945.  log display when either side's blo <>1 forces a send file init
  1946.  
  1947.  send file asfile error handling improved, get file asfile now
  1948.  shares some of the above code.  one may GET/SEND [DEV:]FILE DEV:
  1949.  to send/receive a single file to/on a device other than the
  1950.  default.  wildcards are otherwise not allowed whilst renaming.
  1951.  
  1952.  readcmd now displays prompt and input strings for getmcr
  1953.  also enables take file echo if/after krt.ini has run
  1954.  and will allow ";" and "!" comment delimiters anywhere in
  1955.  a line in a command file, not just the first column..
  1956.  
  1957.  modified getcm0's response to "?" argument to dump commands
  1958.  in 4 columns across the screen ala VMS help
  1959.  
  1960.  ^C handler in KRTRMS modified, thus cctrap here is unneeded..
  1961.  CONNECT automatically if FINISH succeeds..
  1962.  ring the bell at the end of RECEIVE, so one will know it's done
  1963.  fixed GET/SEND file asfile to handle node names
  1964.  patched to accept "@COMMAND" for take file, ala RT-11
  1965.  fixed init/take file error handling in readcmd
  1966.  add a "BUG" command ala C-Kermit
  1967.  GET/SEND now handle multiple file names delimited by commas
  1968.  use DEC method of version numbering
  1969.  
  1970. 2 KRTCON
  1971.  
  1972.  Edit 62:
  1973.  correct comments to indicate r3 is not preserved between tasks
  1974.  fixed error handling for suspend/resume CONSOLE logging
  1975.  added handling for logfile errors
  1976.  move senbrk here
  1977.  speed up keyboard input processing at high data rates
  1978.  
  1979.  Edit 61:
  1980.  this module has been extensively modified and will now run fine
  1981.  under any monitor including SJ if it's built with TIMER support
  1982.  
  1983.  pulled RT-11 multi-terminal and sj monitor w/o twait stuff..
  1984.  
  1985.  set/reset a list of "activation" chars under TSX which
  1986.  allows non-printing chars input at the terminal, such as ^O,
  1987.  to be passed to the remote system during the connect mode
  1988.  
  1989.  display handler speed (fixed for 19.2k too) when connecting
  1990.  display escape sequence when entering CONNECT
  1991.  disallow typing TSX lead-in char to TT when running under TSX
  1992.  allow suppression of sign-on text, for use with k11tra
  1993.  skip TT input routine once done flag is set
  1994.  TT input now uses con8bit ala TT output
  1995.  added MILNET option to wakeup (XON) MILNET TACs
  1996.  added send a control char via esc_char "^x" ala VTCOM
  1997.  added esc_char "Z" command to hose/refresh handler
  1998.  
  1999. 2 KRTCVT
  2000.  
  2001.  Edit 62:
  2002.  increase size of fixfil stack buffer to SVID limit
  2003.  
  2004.  Edit 61:
  2005.  added useful RT-11/TSX+ binary file types
  2006.  modified chkext to handle file types of less than 3 chars
  2007.  fixfil - parse a device name in filespec, fixed termination bug
  2008.  namcvt now catches unix "/" and pc "\" directory delimiters
  2009.  fixed namcvt to not output a "." on a null file name input
  2010.  
  2011. 2 KRTDAT
  2012.  
  2013.  Edit 62:
  2014.  use erbfsiz to size errtxt buffer
  2015.  add pkrate buffer
  2016.  
  2017.  Edit 61:
  2018.  added a general use buffer, some flags and variables
  2019.  SL editor insert mode default is set on here in edists
  2020.  
  2021. 2 KRTDEB
  2022.  
  2023.  Edit 62:
  2024.  use erbfsiz to size errtxt buffer
  2025.  
  2026.  Edit 61:
  2027.  added new variables to data displayable with EXAMINE
  2028.  display ascii chars when dumping byte values
  2029.  fixed error handling
  2030.  fixed addressing bug in pint (displays word values)
  2031.  
  2032. 2 KRTDIA
  2033.  
  2034.  Edit 62:
  2035.  add support for call back modems, SET DIAL/PHONE [NO]ANSWER
  2036.  
  2037.  add a one-tick pacing delay in DODIAL's loop at 50$ (when modem
  2038.  doesn't echo commands) to match what was done for echoing modems
  2039.  
  2040.  fix SHO MODEM for changes to SET DIAL [NO]ECHO and [NO]INIT-ONCE
  2041.  add initiate_prompt, dial_ack, confirm_ack, [no]binary_response
  2042.  
  2043.  added x.result (default "Hayes" xmode) and time.settle defaults,
  2044.  and in "Hayes" and Telebit modem definitions
  2045.  
  2046.  if DCD is high when exiting program, hang up modem
  2047.  add support for 38.4kb
  2048.  add Telebit T3000 modem def, needs KM handler and SET FLOW-CONTROL RTS
  2049.  
  2050.  double the settle_time value for the wait after dropping DTR,
  2051.  as some modems (like the T3000) need more time to recover
  2052.  
  2053.  Edit 61:
  2054.  set$mo now won't write bad modem name into modem: and will try
  2055.  to init (killing auto-answer) when set if a line and speed have
  2056.  been set first
  2057.  
  2058.  if DIAL/REDIAL succeeds jump to CONNECT automatically
  2059.  set linksts when dialing so ^C abort will catch correct ttname
  2060.  findmodem now does not try to process an empty string in modem:
  2061.  added c$idle, call to reset modem to idle (answer) mode
  2062.  findmodem/findnumber will match on partial input string
  2063.  added %X format effector for Hayes extended response modes
  2064.  added Telebit T2500 modem definitions
  2065.  
  2066.  redial loop moved to c$dial, runs faster without initializing
  2067.  the modem's lun every pass through the loop, reduces cpu usage too
  2068.  
  2069.  load buffer with defmsg after displaying RING, to not overwrite
  2070.  the default message with call status stuff
  2071.  
  2072.  if DIAL can't translate an alias, say so then die (instead of
  2073.  prompting to continue with an empty number buffer)
  2074.  
  2075.  added xredial flag word, for keeping return path straight when
  2076.  connecting after a successful REDIAL. speed up redial process for
  2077.  modems which define init.once by not initting before every retry.
  2078.  init.once and mready (status flag) were added to support all this..
  2079.  
  2080.  while waiting for a response after dialing modem, check for
  2081.  input from keyboard, allowing an easy abort
  2082.  
  2083.  .default patched to get/set handler speed from modem response,
  2084.  old speed is saved and restored, unless set different after..
  2085.  Hayes definition completed and moved to it.  this also renders
  2086.  Hayes responses displayable via SHO MODEM.
  2087.  
  2088.  diatmo from SET DIAL TIME-OUT gets written into dial.time(r4)
  2089.  when either c$dial or sho$dial is called.  it's now usable with
  2090.  any modem type (not just user-defined) by setting the modem's
  2091.  internal timer to the max (ATS7=255 etc) then letting Kermit's
  2092.  timer take action first.
  2093.  
  2094.  modified waitfor to test for keyboard input, allowing a "strike
  2095.  any char" abort during dialing, now including the init string.
  2096.  DTR is dropped to ensure the modem will actually abort the call.
  2097.  
  2098.  SHO MODEM expanded to display everything
  2099.  result message must match from 1st byte to avoid embedded strings
  2100.  save modem init status to drop unnecessary inits
  2101.  SET MODEM now inits same, if a line (and speed) have been set
  2102.  echo everything from modem (if it echoes) during DIAL
  2103.  add CONNECT/nnnn for Hayes to alter DTE speed w/TSX and CL
  2104.  
  2105.  add Concord Data Systems 224 Auto-dial modem and make dialer echo
  2106.  modem output byte by byte so "..." call progress stuff is echo'd
  2107.  
  2108.  moved SET DTR code here, and reinit modem after DTR drop if one
  2109.  was on-line before it
  2110.  
  2111. 2 KRTDIR
  2112.  
  2113.  Edit 62:
  2114.  reorganized and substantially sped up
  2115.  added .csispc comma delimiter parsing
  2116.  fixed wildcard "%" match to no longer match on blanks
  2117.  moved buffil here, has to be if not in root for getcr0 @sdodir..
  2118.  make hd$fir=:6 so badly initted disks don't crash DIR
  2119.  
  2120.  Edit 61:
  2121.  this module has been extensively modified, please refer to it..
  2122.  add TSX+ create time, date slug, prot status, summary lines, etc
  2123.  corrected bugs in error handling
  2124.  added d$cvtnum for file sizes/sums larger than 32767.
  2125.  "DK" now uses defdir, not op system DK, needs fparse in krtrms
  2126.  ascdat patched for RT-11 V5.5, now also used for cvtdat
  2127.  add dirflg to control embedded blanks in file name
  2128.  getnth used to reread until context=diridx, now context saves it
  2129.  added summary only flag, for use with SPACE and REM SPACE
  2130.  force USR to re-read dir segment, allowing one to swap floppies..
  2131.  
  2132. 2 KRTDSP
  2133.  
  2134.  Edit 62:
  2135.  leave comm handler chans open after assigning it as the link device
  2136.  
  2137.  Edit 61:
  2138.  this module has been extensively modified
  2139.  
  2140.  moved kbread here, one copy is sufficient, cleaned up also
  2141.  streamlined jsw/nowait/single_char modes/setting/resetting/etc
  2142.  added writ1char routine - writes a single character to TT
  2143.  add entry for inqdtr, only works with CL handler
  2144.  assdev patched for new mapxl in krtxl
  2145.  made packet buffer length = $ALLSIZ to match checkpacket buffer
  2146.  ttyrst - resume TSX window processing, as after packets, connect
  2147.  added cl.dump to clean up CL stuff when exiting/modifying the line
  2148.  inqbuf patched to use MAXLNG for TSX+, MAXPAK for RT-11
  2149.  added inqcd
  2150.  
  2151.  moved binread here so CONNECT can share it and XL can be left
  2152.  open under TSX and RT-11SJ where there is no hope of closing it
  2153.  
  2154.  I/O is now dispatched this way:
  2155.   1) if via the controlling terminal line, use routines in KRTERM
  2156.      regardless of operating system.  that is, the t.tty... calls
  2157.   2) if via a handler, use routines in KRTXL.  that is, the
  2158.      x.tty... calls for CL, XC or XL
  2159.   3) RT-11 multi-terminal I/O has been pulled
  2160.  
  2161.  moved set$line here, patched to reset modem to idle state and release
  2162.  a TSX CL line after SET LINE TT if same was acquired within Kermit
  2163.  
  2164.  set$line won't write bad device to ttname
  2165.  SET LINE TT now reverts to remote mode
  2166.  
  2167. 2 KRTEDI
  2168.  
  2169.  Edit 62:
  2170.  add bells: up arrow when nothing saved yet, down arrow at end
  2171.  
  2172.  Edit 61:
  2173.  up/dn arrow command scrolling fixed
  2174.  command dispatch table patched for VT-100 keypad (KED equivs)
  2175.  dup cmds now not saved even when < max cmds are currently stored
  2176.  extended keypad for adv, bkup, word, char, line, delete, undelete
  2177.  added check for SS3 for VT-220 keypad
  2178.  cleaned up various odds and ends..
  2179.  WARNING:  If LN$MAX is made greater than 127., fix sxt stuff here
  2180.  
  2181. 2 KRTERM
  2182.  
  2183.  Edit 61:
  2184.  this module has been extensively modified, please refer to it
  2185.  added SET TT XON (TSX) emt to t.ttxon, uses tsxsav for lnum
  2186.  add dummy routines for inqdtr, inqcd
  2187.  ttyini - suspend TSX window processing, as in connect, packets
  2188.  added support for vlflag under TSX+ to ttyini
  2189.  
  2190.  drop TSX hi eff term mode and declare a list of activation chars
  2191.  instead, allowing single char input (so packets can be longer
  2192.  than TSX's internal I/O buffers) whilst offing ^B, ^T, ^W, etc
  2193.  so line noise doesn't trigger various annoying things as when
  2194.  using the server via TT, also allows passing to remote when in
  2195.  the connect mode
  2196.  
  2197. 2 KRTERR
  2198.  
  2199.  Edit 62:
  2200.  add error message for logfile problems
  2201.  
  2202.  Edit 61:
  2203.  moved error message prefix routine here from KRTPAK
  2204.  moved all system error messages here, from various modules
  2205.  
  2206. 2 KRTHLP
  2207.  
  2208.  Edit 62:
  2209.  fix a few very small typos and errors
  2210.  expand and enhance help text for SET DIAL, particularly its commands
  2211.  add dummy file name for HPRINT via RT-11 V5.2/TSX V6.0 LP/LS
  2212.  display all subtopic text when wildcarding through nested text
  2213.  
  2214.  Edit 61:
  2215.  kill extra LF after listing subtopics
  2216.  hfind - fixed wildcarding when no subtopics exist for a topic
  2217.  help text file updated to reflect mods/additions/omissions
  2218.  hindex - display sped up, prompting after it now uses full text,
  2219.  also handles topic names greater than 18 bytes ala VMS help
  2220.  added fake RMS stuff for RT-11/TSX, and did a general cleanup..
  2221.  path for KRTHLP.HLP is now HLP, KRT, SY and DK
  2222.  modified to check for correct copy of KRTHLP.HLP
  2223.  on topic error nest in as far as possible instead of from the top
  2224.  added HPRINT, dumps help text to LP
  2225.  
  2226. 2 KRTINI
  2227.  
  2228.  Edit 62:
  2229.  dump FILLOG, as PRINTM now does this
  2230.  provide for logfile errors
  2231.  add current_block_pointer/size_of file to ^A stats display
  2232.  
  2233.  check packet length in dskdmp, don't trap to 4 writing past end
  2234.  of buffer due to line noise and/or modems retraining
  2235.  
  2236.  major cleanup and maintenance update
  2237.  
  2238.  Edit 61:
  2239.  prompt set to KRT
  2240.  
  2241.  call to an .INI file now tries INI, KRT then DK and finally
  2242.  SY.  take file echo is disabled if krt.ini is found, then
  2243.  enabled when the init file is closed (in readcmd, in krtcmd)
  2244.  name of init file (if found) is displayed while reading same..
  2245.  
  2246.  recdsp table fixed to call recvt1 (instead of senvt1 .. ) for
  2247.  terminals >VT100
  2248.  
  2249.  added warning message when 8-bit quoting is first forced on and
  2250.  init stuff in fixchk so the need for 8-bit quoting is tested on
  2251.  each xfr, thus one need not exit/restart Kermit to turn it off
  2252.  
  2253.  packet length display in log files now accommodates four digit
  2254.  numbers, as the max. packet is now 1024. bytes
  2255.  
  2256.  allow debugging to TT even with no disk file open..
  2257.  reset parity found while set NONE warning before each transaction
  2258.  fixed warning messages for unsupported/disabled long packets
  2259.  dkname used to home, here it's init'd to physical DK at start-up
  2260.  
  2261. 2 KRTLNK
  2262.  
  2263.  Edit 62:
  2264.  move krtstd back to apr6 as apr1 was over the edge..
  2265.  fixed virtual segment 1 size in non-EIS version
  2266.  
  2267.  Edit 61:
  2268.  segments have been combined where possible to reduce memory and
  2269.  mapping requirements
  2270.  
  2271. 2 KRTMAC
  2272.  
  2273.  Edit 62:
  2274.  move dispatch macro to KRTSER
  2275.  move erbfsiz here from KRTPAK
  2276.  condense logging (debug) modes
  2277.  increase efficiency of incm64 macro
  2278.  increase MAXLNG (long-packet size) to 1920.
  2279.  reduce MAXLNG to 600. for NONEIS assembly, so pgm loads under FB..
  2280.  ditto for ALSIZE (phone # buffer) and LN$CNT (SL # of lines saved)
  2281.  
  2282.  Edit 61:
  2283.  modified message macro to call .newline instead of saving CR/LF
  2284.  and null for each new line, knocking 1042. bytes off the size
  2285.  of this version..  also changed ".print" emulation to wrtall,
  2286.  for a similar savings in compiled program size.
  2287.  
  2288.  dump raw I/O logging from log$al (SET DEB ALL) - too confusing
  2289.  also pulled log$rp out and made it a completely separate item..
  2290.  
  2291.  added a couple upper case macros
  2292.  
  2293. 2 KRTNHD
  2294.  
  2295.  Edit 61:
  2296.  made divide macro double precision
  2297.  
  2298. 2 KRTOSI
  2299.  
  2300.  Edit 62:
  2301.  check for indirect command file running program, for error handling
  2302.  dump unused BUFDEF stuff
  2303.  add Jim Whitlock's VBGEXE fetch pointer fixes
  2304.  
  2305.  Edit 61:
  2306.  "pic" code dumped
  2307.  if TSX, line number saved in tsxsav during init, for t.ttxon
  2308.  store clock rate (50/60 Hz) in clkflg, use elsewhere for timers
  2309.  add init for TSX activation char list
  2310.  call assdev when PRO-350 tries to automatically assign CL or XC
  2311.  .SERR is set here and then left on forever..
  2312.  VT200 now sets con8bit
  2313.  cleaned up init code
  2314.  increase ALSIZE to 1024. (user-defined modem and ph numb buffer)
  2315.  under RT-11 display memory free for handlers at sign-on
  2316.  
  2317. 2 KRTPAK
  2318.  
  2319.  Edit 62:
  2320.  move erbfsiz to KRTMAC
  2321.  patch PRINTM to also write to a logfile, when same is in use
  2322.  add logfile error handler and provide for logfile errors
  2323.  write error messages to logfile
  2324.  include file spec in getnxt error messages
  2325.  add individual packet exchange duration timer, for debugging
  2326.  make BUFFIL limit test max-0 (was max-4), allows bigger packets
  2327.  don't log bogus data for timout
  2328.  make ERROR send an error packet, use PRINTM elsewhere
  2329.  don't modify SET time-out value
  2330.  add/enforce SET SEND PACKET-LEN limit
  2331.  move bufpak to KRTSER, no one else uses it
  2332.  move buffil to KRTSEN, ditto..
  2333.  move bufemp to KRTREC
  2334.  add passed buffer length to rpack$
  2335.  
  2336.  Edit 61:
  2337.  added lun.ld == 12 for TSX logical disk support
  2338.  added lun.at == 5 for file attributes support
  2339.  prefixing error messages with the prompt string moved to KRTERR
  2340.  waitsoh - ^Z abort changed to ^C abort, thus not killing the pgm
  2341.  
  2342.  spack$ packet length test fixed to determine the true length of
  2343.  a packet near or equal to 94 bytes when long packets are used.
  2344.  it was possible to generate a "normal" packet with an out-of-
  2345.  range LENGTH character (using all eight bits) when reaching the
  2346.  the EOF produced a last packet in a long packet series close to
  2347.  94 bytes, as the routine filling the packet data input buffer
  2348.  is still looking for enough to make a long packet, with no
  2349.  consideration for the added SEQ and TYP bytes nor the checksum
  2350.  size (up to three more bytes with CRC block checking)..
  2351.  
  2352.  rpakst patched to hose link device whenever the "T" (time-out)
  2353.  packet count is incremented, or when a NAK xxx NAK series
  2354.  (indicating resonating packets) occurs.  this is very helpful
  2355.  when telephone line noise crashes/hangs the handler..
  2356.  
  2357.  space padding between elements of an error message moved from
  2358.  error: to the err msgs themselves as printm doesn't do it, and
  2359.  it's too confusing otherwise..
  2360.  
  2361.  incsta patched to compensate for crossing midnight, as long as
  2362.  there's less than 24 hours between calls to it, thus 32-bit
  2363.  time data from incsta are thought to be sufficient here
  2364.  note: the display routine in krtsho limits max to 18.2 hours..
  2365.  
  2366.  patched bufemp to not output the lead-in char to TT under TSX
  2367.  
  2368.  moved RPACK debug stuff to rawio: as when it was in rpakrd: it
  2369.  missed the SOH, which is handled by waitsoh: (both call rawio)..
  2370.  also cleaned up display at the EOL and added display of TIMOUTs
  2371.  
  2372.  fixed non-init'd repeat count reg bug in bufunpack
  2373.  
  2374. 2 KRTREC
  2375.  
  2376.  Edit 62:
  2377.  dump FILLOG, as PRINTM now does this
  2378.  use log$packets for state logging
  2379.  provide for logfile errors
  2380.  modify to not NAK unknown packets (noise)
  2381.  display any possible contents of "X" packet, for Unix and C-Kermit
  2382.  
  2383.  Edit 61:
  2384.  rfil.x: put "Remote server response:" here so it displays even
  2385.  when blo <>1.  also set image=binary here so typing 8-bit
  2386.  files doesn't die on checksum error when clrpar hoses hi bits
  2387.  
  2388.  rfil.f: check asname here (instead of rfil.d), also fixed so
  2389.  VMS filespecs longer than 66. bytes don't write past end of the
  2390.  scratch buffer.  also namcvt strips VMS node::dev:[dir] here..
  2391.  
  2392.  kill debug to TT if not running as a local Kermit
  2393.  add support for INCOMPLETE-FILE-DISPOSITION
  2394.  
  2395. 2 KRTRMS
  2396.  
  2397.  Edit 62:
  2398.  save created (.enter) file size in sizeof entry in data table
  2399.  make filtyp entry in same global
  2400.  reset SET FILE CREATE-SIZE on successful file open
  2401.  moved LOGFIL name buffer here
  2402.  dropped NONAME.TMP for a nfs .enter, return "bad file name" error
  2403.  move most of ccast to mainline code in KRTCMD.MAC
  2404.  moved GETREC here, so HELP via PF2 can't ever crash..
  2405.  
  2406.  Edit 61:
  2407.  iswild modified to catch implicit wildcarding
  2408.  error mapping tables augmented to accommodate new routines
  2409.  .rctrlo added to file close routine
  2410.  chkdev added, used for bbs device access restriction
  2411.  limits: (activation char list for TSX) lives here, also vlflag
  2412.  added prewind routine to fake RMS stuff when reading help text
  2413.  add er$dev at end of faterr: table to catch non-init'd device lookup
  2414.  
  2415.  suspend: patched to wait in one tick increments, allowing ^C to
  2416.  abort - also now uses clkflg to accommodate 50 or 60 Hz..
  2417.  
  2418.  fixed fparse handling of device name, also disallow a leading
  2419.  comma in the arg string, as this will do a nfs lookup..
  2420.  
  2421.  ccast - now does trouble-free aborts from anywhere you'd need it
  2422.  when talking to the handler or when something is running which
  2423.  if aborted would leave virtual addressing in a mess, the bell
  2424.  will be rung acknowledging the abort, at which point it's best
  2425.  to wait for the program to do it, which it will as soon as it
  2426.  can.  further ^C's will ring the bell up to CC$MAX times, then
  2427.  a complete abort and return to the main command line via .spcps
  2428.  occurs.  if necessary an error packet will be sent, however this
  2429.  may not be as effective as using ^E, which waits for the packet
  2430.  in progress to complete first..
  2431.  
  2432.  added getmcr routine to get arg(s) from KMON passed to chain
  2433.  area when Kermit is started.  owing to the way RT-11/TSX+ parse
  2434.  the "@" (causes KMON to try to open the file and read the
  2435.  first line of it into the command buffer, including the chain
  2436.  area) the syntax "KERMIT @TAKEFILE" is not usable under RT/TSX.
  2437.  "KERMIT TAKE TAKEFILE" is a poor but functional substitute..
  2438.  any other command and args may be passed, ie; .kermit dial tommy
  2439.  
  2440.  add fixwild, translates "?" to "%" in file names
  2441.  fixed error handling in file close routine
  2442.  added getdk, gets physical name of "DK"
  2443.  
  2444.  moved direr$ here, moved error messages from various modules to
  2445.  krterr, and added calls to them via direrr..
  2446.  
  2447. 2 KRTSEN
  2448.  
  2449.  Edit 62:
  2450.  dump FILLOG, as PRINTM now does this
  2451.  use log$packets for state logging
  2452.  provide for logfile errors
  2453.  modified to wait through bad ack packets, noise, etc..
  2454.  recpkt buffer back to normal size, now passes same to rpack
  2455.  
  2456.  Edit 61:
  2457.  increased size of recpkt buffer to $allsiz to avoid writing past
  2458.  eob (causing trap to 4 in rpack$ which crashes the program) when
  2459.  packets are out of sync and a long packet arrives where an ack
  2460.  is expected, or line noise "extends" otherwise ok data..
  2461.  
  2462.  kill debug to TT if not running as a local Kermit
  2463.  modified to (w/KRTATR) send all attributes in a single packet
  2464.  ensure directory search channel is closed on errors/aborts
  2465.  
  2466.  display abort message when file skipped due to SET FILE PROTECT
  2467.  (by an "X" or "Z" in the ACK packet) on the other Kermit
  2468.  
  2469. 2 KRTSER
  2470.  
  2471.  Edit 62:
  2472.  allow server to talk through the comm handler too..
  2473.  move dispatch macro here
  2474.  add newline in log file at each new process
  2475.  
  2476.  Edit 61:
  2477.  gen.t filespec more carefully tested, defaults to .LST type
  2478.  double prompt on server exit killed by hosing ^M in FIN packet
  2479.  remget - now uses srcnam for input file
  2480.  no args to server command allowed under RT/TSX
  2481.  input file name to serv.r checked by fparse
  2482.  gen.c inserts colon after device name if necessary
  2483.  gen.w - remote who via xreply added
  2484.  upcase incoming remote command args, so mskerm is happy
  2485.  gen.d checks for valid device before initiating any output,
  2486.  defaults to DK if no arg given, as from MSKermit
  2487.  modified gen.u to use krtdir
  2488.  remspa accepts optional device argument, gen.u passes to krtdir
  2489.  remfin returns error status in r0, to CONNECT if FINISH succeeds
  2490.  disallow running server unless link device is TT
  2491.  
  2492. 2 KRTSHO
  2493.  
  2494.  Edit 62:
  2495.  added SHO BAUD, DTR, DUPLEX, END-OF-LINE, FLOW-CONTROL, HOME, LD:,
  2496.  LOCAL-ECHO, LOGFILE, LONG-PACKETS, RANDOM, RECEIVE, SEED, SEND, SPEED
  2497.  cleanup, condense logging (debug) modes display
  2498.  display current_block_number and size_of logfile in SHO DEBUG
  2499.  conform to major sinit stuff update in KRTINI.MAC
  2500.  include last number dialed in SH PHONE
  2501.  add SHOW CL, EOF
  2502.  
  2503.  Edit 61:
  2504.  SHOW command with no args displays assigns ala RT-11
  2505.  sho$all - shortened up
  2506.  added sho$attributes
  2507.  added sho$devices - displays the bbs access permission list only
  2508.  added sho$submounts, using TSX emts
  2509.  added sho$vl - displays status of vlswch under TSX+
  2510.  add DEC-Multinational type to sho$file
  2511.  moved release notes to the help text file
  2512.  sho$packet - display "^A" notation in addition to octal numbers
  2513.  also lists long-packets max length, set length, rec'd length
  2514.  add xtime for spiffier transfer time display, other small fixes
  2515.  sho$file - indicate if file name conversion disabled, lower case on
  2516.  added home directory to sho$default
  2517.  fixed display formatting for sho$phone_numbers
  2518.  sho$params indicates if SET LONG OFF or SET NOLONG
  2519.  added MILNET to SHO CONSOLE
  2520.  added c$print
  2521.  moved sho$line to krtcm1
  2522.  added SHO TERMINAL
  2523.  added SHO RETRY, TIME-OUT, made PACKET do parameters, not stats
  2524.  add SHOW INCOMPLETE-FILE-DISPOSITION
  2525.  add SHO MEMORY, display remaining handler free space under RT-11
  2526.  add SHO SL, SHO UPDATE, added LOCAL-ECHO, BREAK to SHO CONSOLE
  2527.  add SHO REPEAT-CHAR, SERVER
  2528.  pass file date/time/prot to COPY output file
  2529.  added SHOW commands for everything else possible..
  2530.  SHO VERSION uses DEC method of version numbering
  2531.  
  2532. 2 KRTST0
  2533.  
  2534.  Edit 62:
  2535.  add support for call back modems, SET DIAL/PHONE [NO]ANSWER
  2536.  report file size (blocks free) when opening a log file
  2537.  set binary flag instead of close/reopen file for raw I/O debug
  2538.  fix typo causing a new logfile of same name not to get opened
  2539.  combine FILE, STATE and PACKET into one DEBUG mode (ON)
  2540.  redo SET DIAL ECHO and INIT-ONCE as [NO]ECHO and [NO]INIT-ONCE
  2541.  SET SETTLE-TIME is now SET DIAL SETTLE-TIME
  2542.  drop SET HAND XON, as RT-11 and TSX eat same..
  2543.  drop SET DIAL INFO, as any undefined message defaults to it
  2544.  
  2545.  rename SET DIAL PROMPT to WAKE-ACK, add BLIND, PULSE, TONE, DIAL-ACK,
  2546.  INITIATE-PROMPT, CONFIRM-ACK, [NO]BINARY-RESPONSE (were missing)..
  2547.  
  2548.  Edit 61:
  2549.  set$pa - fixed display bug with "?" arg
  2550.  enhanced set$speed error handling
  2551.  added SET PHONE XMODE n for Hayes extended response mode support
  2552.  cleaned up all debug code, allowing debug to TT w/o a disk file
  2553.  moved set$line to KRTDSP, so it can call c$idle in an adjacent overlay
  2554.  make SET DEBUG NONE off ALL debugging, including TT
  2555.  add separate parameter for retrying initial_connection ala VMS Kermit
  2556.  add SET INCOMPLETE-FILE-DISPOSITION
  2557.  add SET SL
  2558.  move [SET] LOGFILE here, integrate with SET DEBUG..
  2559.  make logfile default type .LOG, ask before overwriting an existing file
  2560.  allow LP as the logfile, please SPOOL this in the op system!
  2561.  add optional debug mode to LOGFILE, file name to SET DEBUG mode
  2562.  LOGFILE sans args closes an open logfile
  2563.  add SET SETTLE-TIME to allow for modem's reset processing time
  2564.  add SET SL ON,OFF,[NO]KED
  2565.  
  2566.  added SET DIAL RINGING, CONnnnn for supported speeds, ABORT, COMMENT,
  2567.  IDLE, PROMPT and INIT.ONCE for user-defined modem
  2568.  
  2569. 2 KRTST1
  2570.  
  2571.  Edit 62:
  2572.  moved BREAK, CREATE-SIZE and [NO]VOLUME-VERIFY here ..
  2573.  conform sinit-related SETs to major update of KRTINI.MAC
  2574.  move SET TIME-OUT to SET RECEIVE TIME-OUT and SET SEND TIME-OUT
  2575.  add SET CONSOLE PRIORITY for KM/XC/XL under TSX
  2576.  add SET FLOW-CONTROL to support RTS/CTS and KM handler
  2577.  
  2578.  Edit 61:
  2579.  HOME uses dkname:
  2580.  set$df - now calls c$cwd
  2581.  set$sn - clear r0 after printing error message, avoid dupe msg
  2582.  sts$pl - corrected packet length max test to 94. (maxpak)
  2583.  set$attributes - fixed so "?" arg doesn't set to last displayed
  2584.  added set ld empty, using TSX emts
  2585.  sf$typ - patched to pass proper arg to any routine it calls ..
  2586.  added warn message to str$pl if CRC block checking not enabled
  2587.  str$pl re-enables long packets if set >94., warns if CRC not on
  2588.  set$file - added SET FILE NAMING [NO]LOWER-CASE, for Unix
  2589.  SET LONG ON now also does SET REC PAC 1204 and SET BLO 3
  2590.  con8bit set/cleared as appropriate by set$tt
  2591.  time-out may now be set as low as 1 second
  2592.  added SET CL PORTS, UNITS for auto line assign under TSX+
  2593.  added SET CONSOLE [NO]MILNET to force 2 XONs when CONNECTing
  2594.  cleaned up SET FILE code, see HELP SET FILE for details
  2595.  
  2596.  set$bi - modified to be augmented by new entries, not trashed,
  2597.  to allow dependence on it for selection of filtering for the
  2598.  new improved type routine in KRTCM1, supports types <3 chars
  2599.  
  2600.  st$nlp - clr senlng, which is now used to ensure a packet of
  2601.  almost or equal to 94 bytes in a long-packet xfr will get the
  2602.  correct header.  command dispatch table also patched for this
  2603.  
  2604.  added set$vl - sets action on vlswch char ^W and print window
  2605.  char ^B in the CONNECT mode under TSX+  see HELP SET VLSWCH
  2606.  
  2607.  moved SET [NO]QUIET here, made it SET TT [NO]QUIET, added tests
  2608.  for it where missing..
  2609.  
  2610. 2 KRTSUB
  2611.  
  2612.  Edit 61:
  2613.  added a couple upper case routines
  2614.  moved itoa here
  2615.  add support for non-EIS CPUs
  2616.  
  2617. 2 KRTTRA
  2618.  
  2619.  Edit 61:
  2620.  after each byte sent the response from the receiver is echo'd
  2621.  this makes it handy for reading text files into a called system's
  2622.  message editor, etc..  speed is locked at 1 byte/tick, which is
  2623.  600 baud in 60Hz land
  2624.  
  2625.  added code to echo last char(s) from remote after EOF is reached
  2626.  modified action on EOF to reconnect to the remote system, also
  2627.  suppresses CONNECT's sign-on message for a cleaner return
  2628.  
  2629. 2 KRTUTL
  2630.  
  2631.  Edit 62:
  2632.  modify asctim to output ticks, restored optional time value pointer
  2633.  move various items here from root to save space
  2634.  
  2635.  Edit 61:
  2636.  added logical disk mount using TSX+ emts
  2637.  getrec patched to accept passed buffer_length
  2638.  50/60Hz test added to asctim
  2639.  cleaned up the delete, rename and copy subroutines..
  2640.  move copy file name checking to c$copy, now shared with PRINT
  2641.  try to mount .DEV logical disk if .DSK default fails
  2642.  fix COPY error handling when out file is too small
  2643.  
  2644. 2 KRTXL
  2645.  
  2646.  Edit 62:
  2647.  corrected suggested XL BUFSIZ to 256.
  2648.  keep XL open even for XM, to accommodate RT-11 V5.6
  2649.  add support for KM handler
  2650.  add version testing to support RT-11 V4
  2651.  add DCDTST for status during file transfers
  2652.  skip .ABTIO for XC/XL under ALL RT-11 V5.6 monitors to avoid hang/race/?
  2653.  
  2654.  Edit 61:
  2655.  DTR drop sped up to a 0.5 second interval..
  2656.  dumped waitti as multiple byte reads accomplish the same thing
  2657.  CLHOSE defined for use in clearing CL handler, uses spfun 265
  2658.  CLSTAT defined and inqdtr added, for CL lines only..
  2659.  enhanced set$speed error handling
  2660.  mapxl now allocates the handler under TSX
  2661.  added inqcd
  2662.  SET SPEED reinits modem if one was on-line
  2663.  
  2664.  mapxl now uses .cstat to get physical name from logical name
  2665.  one may ASS CL0 PHN then run Kermit and SET LINE PHN within it
  2666.  
  2667.  dropped TSX hi-eff term mode when data are going through a handler
  2668.  allowing use of ^A and etc during transfers under TSX
  2669.  
  2670.  allow LFOUT operation of CL handler.  under TSX return is made
  2671.  an activation character, thus no LF is appended..
  2672.  
  2673. 2 KRTXM
  2674.  
  2675.  Edit 61:
  2676.  added equivalent of SETSIZ KRTTSX/T:64., helps on some TSX systems..
  2677.  
  2678. 2 KRTXMO
  2679.  
  2680.  Edit 61:
  2681.  added xmodem..  this is currently send only from here via the
  2682.  connected terminal line (no handler support)
  2683.  
  2684. 1 REMOTE
  2685.  
  2686.  Send the specified command to a Kermit server.  If the server can not
  2687.  execute the command (these are all optional features of Kermit) it'll
  2688.  reply with a error message, otherwise the returned data are displayed
  2689.  on your screen.
  2690.  
  2691.  Note that any arguments given will be converted to upper case or left
  2692.  as input according to the state of SET FILE NAMING [NO]LOWER-CASE.
  2693.  
  2694.     Kermit-11>REM command [argument(s)]
  2695.  
  2696. 2 CD
  2697.  
  2698.  Makes the specified directory the default for the remote server.
  2699.  If no device/directory is given some Kermits, including this one
  2700.  and C-Kermit, will default to the home (login) directory.
  2701.  
  2702. 2 COPY
  2703.  
  2704.  The server is asked to make a copy of the specified file within its
  2705.  own system.  Both file specs must be correct for the remote system.
  2706.  Kermit-11 doesn't parse or validate the file names.  Leading spaces
  2707.  will be stripped.  Case conversion is controlled by SET FILE NAMING
  2708.  [NO]LOWER-CASE.  Wildcards are unsupported under RT-11 or TSX-Plus.
  2709.  
  2710.  Note this command  simply  provides  for  copying a file within the
  2711.  server's system - it does not cause a file to be transferred.
  2712.  
  2713.     Kermit-11>REM COPY filespec newfilespec
  2714.  
  2715. 2 CWD
  2716.  
  2717.  Synonym for REMOTE CD.
  2718.  
  2719. 2 DELETE
  2720.  
  2721.  Tells the server to delete the specified file.
  2722.  The entire command name "DELETE" must be given
  2723.  as some small protection against accidents.
  2724.  
  2725. 2 DIRECTORY
  2726.  
  2727.  The names of the files that match a given file specification
  2728.  will be displayed on your screen, perhaps with size and date
  2729.  info for each.   If no file specification is given all files
  2730.  in the current directory will be listed.
  2731.  
  2732.     Kermit-11>REM DIR *.MAC
  2733.  
  2734. 2 HELP
  2735.  
  2736.  List commands the server can execute.
  2737.  
  2738. 2 HOST
  2739.  
  2740.  Pass the given command to the server's  host  command  processor,
  2741.  and  display the resulting output on your screen.  Not all Kermit
  2742.  servers support this function.  In the case of Kermit-11 only the
  2743.  RSTS/E server can execute a REMOTE HOST command.
  2744.  
  2745. 2 LOGIN
  2746.  
  2747.  Ask a remote server to log into a different account or username.
  2748.  The support  for  this  command  is  rarely  implemented as many
  2749.  systems layer  login/logout  support over the executive.  Of the
  2750.  various PDP-11 operating systems only RSTS/E V9.0 or above makes
  2751.  the necessary system calls available.
  2752.  
  2753.     Kermit-11>REM LOG username [optional-password]
  2754.  
  2755. 2 RENAME
  2756.  
  2757.  Renames a file on the remote system.  Both file specifications
  2758.  must be valid on the remote system, they are not checked here.
  2759.  
  2760.     Kermit-11>REM RENAME oldname newname
  2761.  
  2762. 2 SPACE
  2763.  
  2764.  Returns a summary of the amounts of space available and in use
  2765.  on the remote host.  A device or files argument is optional.
  2766.  
  2767. 2 TYPE
  2768.  
  2769.  Types a file from a remote Kermit server.  This Kermit doesn't
  2770.  support wildcards for this method of typing files.
  2771.  
  2772.     Kermit-11>REM TY FUBAR.MAC
  2773.  
  2774. 2 WHO
  2775.  
  2776.  Returns a list of who's logged on the remote system.  Arguments
  2777.  are passed to the remote and may be used if the remote supports
  2778.  them.
  2779.  
  2780. 1 RENAME
  2781.  
  2782.  Renames a single, local (only) file.
  2783.  
  2784.     Kermit-11>RENAME oldname newname
  2785.  
  2786. 1 SEND
  2787.  
  2788.  Sends a file or group of files to the other system.   Wildcards may be
  2789.  used, in which case files are sent in order of their directory entries
  2790.  in the device containing them.  If you're SENDing on Kermit-11 running
  2791.  in its remote mode,  SET DELAY governs the time allowed to escape back
  2792.  to one's local Kermit to initiate the RECEIVE mode (default = 6 secs).
  2793.  If you miss the first packet Kermit will retry it after timing out.
  2794.  
  2795.  If you're running Kermit-11 locally, for instance dialing out from the
  2796.  PDP-11 to another system, you must first run Kermit on the remote then
  2797.  issue either a RECEIVE or SERVER command and escape back to Kermit-11.
  2798.  Once you give the SEND command the name of each file will be displayed
  2799.  on your screen as its transfer begins.  As  the transaction progresses
  2800.  packet statistics are updated and displayed.  See the SET TERMINAL and
  2801.  SET UPDATE commands for more information.
  2802.  
  2803.  Once the actual data transfer has begun, you may type Ctrl-X to cancel
  2804.  the current file, Ctrl-Z to  bomb  the  whole file group, or Ctrl-E to
  2805.  abort the transfer by sending an  "error"  packet to the other Kermit.
  2806.  If you have a problem BEFORE the first data packet can be sent, Ctrl-C
  2807.  is the only abort possible.
  2808.  
  2809.  If the automatic binary file select is on (SET FILE AUTO, the default)
  2810.  the transmission mode is determined by searching the binary types list
  2811.  for each file.   If it is not possible to exchange attributes you will
  2812.  need to SET FILE TYPE  and  SET BLOCK-CHECK  as required on both sides
  2813.  before starting.
  2814.  
  2815.  If parity is in use (see HELP SET PARITY) Kermit-11 will ask the other
  2816.  Kermit to use a special kind of "prefixing" notation for binary files.
  2817.  This is an advanced feature and not all Kermits have it.  If the other
  2818.  Kermit can't accommodate this feature,  binary  files  can not be sent
  2819.  correctly.  This includes executable programs, object modules, and any
  2820.  text file containing characters with the high bit set.
  2821.  
  2822.  Kermit-11 will also check the other side for a special prefix encoding
  2823.  for repeated characters.  If supported, files with long strings of the
  2824.  same character will be transmitted very  efficiently.   Columnar data,
  2825.  highly indented text and binary files are the primary beneficiaries of
  2826.  this technique.
  2827.  
  2828.             SEND Command Summary:
  2829.  
  2830.     Sends files to another Kermit.  If that Kermit isn't a server the
  2831.     transmission begins after the number of seconds  specified by SET
  2832.     DELAY.  This allows  time to escape back to your local Kermit and
  2833.     issue a receive command.  The server is far easier to use, unless
  2834.     your Kermit can't do remote commands.  Wildcarded renaming is not
  2835.     supported, except an optional output device (only) may be used to
  2836.     place a single file where desired.
  2837.  
  2838.     Kermit-11>SEND *.MAC
  2839.     Kermit-11>SEND afile dev:    ; put afile on dev:
  2840.     Kermit-11>SEND afile asfile    ; rename to asfile
  2841.     Kermit-11>SEND afile,b*,cfile    ; comma delimits file names
  2842.  
  2843. 1 SERVER
  2844.  
  2845.  The SERVER command puts a remote Kermit into a server mode, so that it
  2846.  expects further commands as packets from your own local client Kermit,
  2847.  allowing various things to be done at the remote without the bother of
  2848.  first connecting back to it.  This Kermit-11 when run as a server will
  2849.  handle these commands:  BYE, CD, COPY, DELETE, DIRECTORY, FINISH, GET,
  2850.  HELP, RENAME, SEND, SPACE and TYPE.
  2851.  
  2852.  If Kermit-11 is in the local mode, the server will connect to the comm
  2853.  handler.  The speed will be the last used, including possible fallback
  2854.  to accommodate a called system.  However, Kermit-11 doesn't attempt to
  2855.  determine if such a session remains active before starting the server.
  2856.  If the speed reported is not what you need you must exit and reset it.
  2857.  Upon exiting, the server returns control to the terminal which ran it.
  2858.  Under TSX-Plus access and privileges will be those of the job starting
  2859.  Kermit-11.  The normal logon security is NOT present, and care must be
  2860.  taken regarding who can access the other end of the line.
  2861.  
  2862.  Kermit-11 will use the client's block check scheme,  packet length and
  2863.  such as long as nothing affecting any of that has been shut off before
  2864.  invoking the server.  The BINARY-TYPE list will be used to select text
  2865.  or image mode when sending unless specific file type has been set.  If
  2866.  your local Kermit doesn't support exchanging attributes, SET FILE TYPE
  2867.  and SET BLOCK-CHECK as needed on BOTH ends before running the server.
  2868.  
  2869.  When running in local mode, Kermit-11 allows you to send a broad range
  2870.  of commands to a remote Kermit server.  There is no guarantee that the
  2871.  remote server can process them, since they are all  optional  features
  2872.  of the protocol.  Commands for servers include the standard SEND, GET,
  2873.  BYE and FINISH as well as REMOTE versions of many local commands.  See
  2874.  HELP REMOTE for details.
  2875.  
  2876.         SERVER Command Summary:
  2877.  
  2878.     BYE        Logs  off  the  system
  2879.     REMOTE COPY    Copy a file to another
  2880.     REMOTE CWD    Changes server default
  2881.     REMOTE DELETE    Erases specified  file
  2882.     REMOTE DIR    Prints   a   directory
  2883.     FINISH        Exit server, reconnect
  2884.     GET        Send file(s) to remote
  2885.     REMOTE HELP    Prints this  help text
  2886.     REMOTE RENAME    Rename old file to new
  2887.     SEND        Send file(s) to server
  2888.     REMOTE SPACE    Shows blocks used/free
  2889.     REMOTE TYPE    Types a specified file
  2890.  
  2891. 1 SET
  2892.  
  2893.  The SET command is used to modify various parameters in Kermit.
  2894.  Multiple arguments, including spaces between them, for the same
  2895.  parameter may be delimited with commas.
  2896.  
  2897.     Kermit-11>SET parameter keyword[, key words-1, keyword-2, ..]
  2898.  
  2899. 2 ATTRIBUTES
  2900.  
  2901.  Part of the  Kermit  protocol  is  the  support  of  file  attributes.
  2902.  Connected Kermits that support this can send information to each other
  2903.  about size, date/time of creation, protection and other useful things.
  2904.  
  2905.  Due to potential problems with incompatible implementations attributes
  2906.  may be disabled.  In this case, Kermit will not send them, even though
  2907.  the receiver may have indicated that it supports them.  The default is
  2908.  attributes enabled.
  2909.  
  2910.     Kermit-11>SET ATTR OFF
  2911.     Kermit-11>SET ATTR ON
  2912.  
  2913.  You may also exercise control over each attribute individually, all of
  2914.  which are documented in the following subtopics.  For example:
  2915.  
  2916.     Kermit-11>SET ATTR TYPE OFF
  2917.     Kermit-11>SET ATTR TYPE ON
  2918.  
  2919.  ATTRIBUTES (overall control) must be set ON (the default), regardless
  2920.  of their individual settings, before anything is actually processed.
  2921.  
  2922.  Note the determination of whether to send a file in the image mode is
  2923.  by the state of SET FILE, and it may be necessary to select something
  2924.  specific (besides AUTO, which defaults to text) for it when disabling
  2925.  ATTRIBUTES processing.
  2926.  
  2927.  When receiving text files from a non RT-11 system this Kermit will add
  2928.  25% to the received file size as record terminators are often excluded
  2929.  from what is reported, or are of a different size (Unix).  Files close
  2930.  to the maximum free space may be accommodated by SET FILE CREATE-SIZE,
  2931.  which overrides any passed size attribute.
  2932.  
  2933. 3 ALL
  2934.  
  2935.  Provides simultaneous control of the DATE, EXACT-LENGTH, LENGTH,
  2936.  PROTECTION, SYSTEM-ID, SYSTEM-INFO and TYPE attributes.
  2937.  
  2938. 3 DATE
  2939.  
  2940.  The "#" (oct 43) date attribute.  Creation dates from 1972 to 2099 only.
  2941.  Versions of RT-11 prior to V5.5 limit the maximum date to 2034, or 1999.
  2942.  Under TSX the time is included, which is truncated to TSX's three second
  2943.  resolution.
  2944.  
  2945. 3 EXACT-LENGTH
  2946.  
  2947.  The "1" (oct 61) exact file length in bytes attribute.  Useful to move
  2948.  a file of an odd number of blocks length in a hole of exactly the same
  2949.  size.
  2950.  
  2951. 3 LENGTH
  2952.  
  2953.  The "!" (oct 41) file length in 1kb blocks attribute.
  2954.  
  2955. 3 OFF
  2956.  
  2957.  Disables all attribute processing regardless of each's individual status.
  2958.  Does not alter the state of any individual attribute control flag.
  2959.  
  2960. 3 ON
  2961.  
  2962.  Enables attribute processing for those which have been individually selected.
  2963.  Does not alter the state of any individual attribute control flag.
  2964.  
  2965. 3 PROTECTION
  2966.  
  2967.  The "-" (oct 55) file protection attribute.  Used here within RT-11's
  2968.  limits.  That is, a file is considered protected when it has no write,
  2969.  append or delete access.
  2970.  
  2971. 3 SYSTEM-ID
  2972.  
  2973.  The "." (oct 56) machine and operating system of origin attribute.
  2974.  
  2975. 3 SYSTEM-INFO
  2976.  
  2977.  The "0" (oct 60) special system-dependent parameters attribute.
  2978.  Here this carries the '"' (oct 42) file type attribute extended
  2979.  to include DEC-Multinational (8-bit text) files.
  2980.  
  2981. 3 TYPE
  2982.  
  2983.  The '"' (oct 42) file type (ASCII, Binary, Image) attribute.
  2984.  
  2985. 2 BAUD
  2986.  
  2987.  Synonym for SET SPEED.
  2988.  
  2989. 2 BINARY-TYPE
  2990.  
  2991.  Kermit-11 maintains a list of file types that's scanned to decide
  2992.  if a file should be sent in the binary mode.   This list includes
  2993.  commonly used binary file types, may be displayed with SHO BINARY
  2994.  and appended up to 31 total types, one type per command line.
  2995.  
  2996.     Kermit-11>SET BIN xyz
  2997.  
  2998.  The state of SET FILE determines whether the binary list test will
  2999.  be used to control the transmission mode for files.  Use SHOW FILE
  3000.  to display it.
  3001.  
  3002. 2 BLOCK-CHECK-TYPE
  3003.  
  3004.  Determines the block checking scheme to be used during transmission to
  3005.  to detect errors.  There are three types available:  the one character
  3006.  checksum (default), the two character checksum and the three character
  3007.  CRC (cyclic redundancy check).   Both Kermits involved in the transfer
  3008.  must agree on the block check type.   Kermit-11 will request the block
  3009.  check set by this command be used for a transfer.  If the other Kermit
  3010.  can't recover this from the init packet then the block check type must
  3011.  be manually set on BOTH sides, otherwise the single character checksum
  3012.  will be used.  Binary files should be sent with CRC block checking.
  3013.  
  3014.     Kermit-11>SET BLO 1    ; one char checksum
  3015.     Kermit-11>SET BLO 2    ; two char checksum
  3016.     Kermit-11>SET BLO 3    ; three char CRC
  3017.  
  3018. 2 CL:
  3019.  
  3020.  You may attach a CL unit to a port known to TSX-Plus using the
  3021.  same syntax as when doing it from the monitor:
  3022.  
  3023.     Kermit-11>SET CL1 LINE 12
  3024.  
  3025.  Here this also allocates the device and assigns it as the link
  3026.  used for file transfers (as if you SET LINE CL1).  If the line
  3027.  has an auto-answer modem on it, one should SET SPEED if needed
  3028.  and SET MODEM immediately afterwards  to make sure an incoming
  3029.  call is not answered when TSX can't respond.  The CL handler's
  3030.  default speed is 9600.
  3031.  
  3032.  Under TSX when data are actually passing though the CL handler
  3033.  priority may be raised to avoid dropping chars by performing a
  3034.  SET CL PRIORITY nn command from within Kermit.  This is better
  3035.  than from the monitor as priority is only elevated when really
  3036.  necessary, and is otherwise restored to its original value.  A
  3037.  suggested starting point is 71 for 9600 on a moderately loaded
  3038.  system.  Be aware placing Kermit into the real-time mode isn't
  3039.  nice to other users, nor should it ever be needed (80 or above
  3040.  when using TSX's defaults).
  3041.  
  3042.  The cross-connection may be released, the TSX line restored to
  3043.  its normal state and the CL unit deallocated by:
  3044.  
  3045.     Kermit-11>SET CL1 LINE 0
  3046.  
  3047.  This includes placing the modem on said port back in its idle,
  3048.  auto-answer state if you had SET MODEM earlier (taking it off-
  3049.  line) in the session.  After assigning a CL unit to a TSX line
  3050.  the above and SET LINE TT are functionally equivalent, and any
  3051.  other line assignment made from within Kermit resets any prior
  3052.  arrangement if it's successful, with the exception that if you
  3053.  did not attach to a TSX port from Kermit then that will not be
  3054.  dropped.  The device is deallocated in all cases.
  3055.  
  3056.  Under TSX on a PRO/3xx Kermit-11 will try to assign CL0 or CL1
  3057.  to Line 3.  On other hardware you may define lists of CL units
  3058.  and ports then have Kermit scan through them seeking the first
  3059.  available combination:
  3060.  
  3061.     Kermit-11>SET CL PORTS 11 9 8 7 6
  3062.     Kermit-11>SET CL UNITS 0 1 2
  3063.     Kermit-11>SET CL LINE *        ; assign from the above
  3064.  
  3065.  Placing it all on the same command line is more efficient when
  3066.  doing this from the initialization (KRT.INI) file:
  3067.  
  3068.     Kermit-11>SET CL POR 11 9 8 7 6,UNI 0 1 2,LIN *
  3069.  
  3070.  Port (TSX time-sharing and/or CL line) numbers may be 2 to 40.
  3071.  Only CL units 0 to 7 are supported here.
  3072.  
  3073.  Additionally, one may specify a SPEED, MODEM-TYPE and XMODE to
  3074.  be set for each port, should one be successfully acquired:
  3075.  
  3076.     Example>> SET CL PORTS TSX-LINE#/SPEED/MODEM-TYPE/XMODE
  3077.     Kermit-11>SET CL PORTS 9/19200/T25/3 11/2400/H/6,UNI ..
  3078.  
  3079.  Here as parameters are nested, each requires everything before
  3080.  it, though everything after any particular item (to its right)
  3081.  may be omitted.   The "/" is used as a parameter delimiter and
  3082.  space separates the individual argument for each port.  Speeds
  3083.  and Hayes-style extended result code option (XMODE, the number
  3084.  following "X" in its command string) values must be entered in
  3085.  full.  Modems need specify only the minimum chars necessary to
  3086.  render the string non-ambiguous.  See HELP SET MODEM, HELP SET
  3087.  PHONE XMODE and HELP SET SPEED for detailed info about exactly
  3088.  what is currently supported by this Kermit.
  3089.  
  3090.  This is best done in a system-wide init file, allowing several
  3091.  users to access modems without any worry about details such as
  3092.  which  are  currently  in use.  If KRT.INI can't be shared the
  3093.  individual initialization files may include the above.  With a
  3094.  rotary (hunt group) the PORTS are usually best done in reverse
  3095.  order of how incoming calls are handled, and dialing done from
  3096.  a TAKE file wherein the line is set just before dialing.  This
  3097.  minimizes  the potential for an incoming call arriving between
  3098.  grabbing the port and actually going off-hook.
  3099.  
  3100.  Ports and units are tried in the order specified.  Up to eight
  3101.  CL units and 128 bytes of PORTS data may be defined.  SHOW  CL
  3102.  displays the current contents of these strings.
  3103.  
  3104.  A complete reset of everything engaged from within Kermit will
  3105.  be done when exiting the program, except the CL unit is always
  3106.  deallocated regardless of how or when it was allocated.
  3107.  
  3108.  SHOW LINE displays the current status of CL, when it's in use.
  3109.  
  3110. 2 CONSOLE
  3111.  
  3112.  This pertains to Kermit's terminal emulator (the CONNECT mode).
  3113.  Use SET TERMINAL to alter your terminal parameters.
  3114.  
  3115.  SHOW CONSOLE to display the status of all these except priority,
  3116.  which is part of SHOW LINE.
  3117.  
  3118. 3 7-BIT
  3119.  
  3120.  The default mode is 7-bit unless the terminal is detected or set
  3121.  as a VT-200, in which case one may need to set the 7-bit mode to
  3122.  avoid displaying extraneous hi-bit data.
  3123.  
  3124.     Kermit-11>SET CON 7    ; strips hi bits
  3125.  
  3126. 3 8-BIT
  3127.  
  3128.  Useful only under TSX-Plus or with the KM handler.
  3129.  
  3130.     Kermit-11>SET CON 8    ; pass data with hi bits intact
  3131.  
  3132. 3 BREAK
  3133.  
  3134.  Break length may be set SHORT (.283 sec, the default) or LONG (3 secs).
  3135.  
  3136. 3 MILNET
  3137.  
  3138.  If you are working with a MILNET Terminal Access Controller or
  3139.  other device which needs XONs to wake it up, Kermit may be set
  3140.  to send a couple automatically when CONNECTing:
  3141.  
  3142.     Kermit-11>SET CON MILNET  ; send wakeup XONs
  3143.     Kermit-11>SET CON NOMIL   ; don't XON, the default
  3144.  
  3145. 3 PRIORITY
  3146.  
  3147.  Under TSX when data are actually passing though a non-multiplexed
  3148.  serial line interface (one which generates an interrupt for every
  3149.  character) priority may be raised to avoid dropping characters by
  3150.  using KRT's SET CONSOLE PRIORITY nn command.  This is better than
  3151.  doing it from the keyboard monitor as KRT's priority will only be
  3152.  elevated when actually necessary and otherwise is returned to its
  3153.  original value.
  3154.  
  3155.  A suggested starting point is 65 for 9600 and a moderately loaded
  3156.  system (if the normal priority remains the default 50).  Be aware
  3157.  placing Kermit into the real-time mode isn't nice to other users,
  3158.  nor is it ever necessary for this type of problem.
  3159.  
  3160. 2 CONTROL-CHARACTER
  3161.  
  3162.  The purpose of the SET CONTROL UNPREFIX command is to UNILATERALLY configure
  3163.  Kermit  to  skip  prefixing  and  printable  encoding  of  selected  control
  3164.  characters to achieve  higher  performance when sending files.  This feature
  3165.  takes advantage of the fact that  most  Kermit programs  will accept control
  3166.  characters within packet data-fields literally, provided they get through at
  3167.  all, and provided they don't have a special meaning to the receiving Kermit.
  3168.  
  3169.  There is no automatic negotiation between Kermits to determine a safe set of
  3170.  control characters because often some of the info needed won't be available.
  3171.  For example, there might be a terminal server or PAD between  them  that  is
  3172.  sensitive to a particular control character, even though the two Kermits are
  3173.  not.
  3174.  
  3175.  If you SET CONTROL UNPREFIXED one or more control characters that are unsafe
  3176.  any of several things may happen:
  3177.  
  3178.   1. Transfer of any file containing these characters will fail.
  3179.  
  3180.   2. The receiving Kermit program might be interrupted or halted.
  3181.  
  3182.   3. Your connection might become hung, stuck or broken.  For instance
  3183.      a particular control character might cause a PAD, terminal server
  3184.      or similar device to go from its on-line mode to a command mode.
  3185.  
  3186.  The set of safe control characters depends on the two Kermit programs,  their
  3187.  settings,  the  host  operating systems and their settings, communication and
  3188.  flow control methods, and all the devices,  drivers,  and  protocols that lie
  3189.  between  the  two  Kermit  programs.  The optimal safe set must be determined
  3190.  experimentally.  Create a short file containing  all  256  possible  bytes in
  3191.  in sequence and also in pairs,  as well as several text strings surrounded by
  3192.  CR-LF pairs - for example, run the following BASIC program:
  3193.  
  3194.  1 OPEN "DK:KRTTST.DAT" FOR OUTPUT AS FILE #1
  3195.  2 PRINT #1,"256-byte singles test pattern:"
  3196.  3 FOR X=0 TO 255 \ PRINT #1,CHR$(X); \ NEXT X
  3197.  4 PRINT #1,"256-byte doubles test pattern:"
  3198.  5 FOR X=0 TO 255 \ PRINT #1,CHR$(X)+CHR$(X); \ NEXT X
  3199.  6 PRINT #1,"End of test patterns" \ CLOSE #1
  3200.  
  3201.  To send the test file to MS-DOS Kermit from KRT the following chars are the
  3202.  minimum requiring prefixing - you may need to add to this:
  3203.  
  3204.     Kermit-11>SET CONT UNP ALL   ; Off all prefixing but NULL, XOFF/XON
  3205.     Kermit-11>SET CONT PRE 1     ; Turn it back on for packet-start char
  3206.     Kermit-11>SET CONT PRE 129   ; and 8-bit version thereof
  3207.  
  3208.  Or to send the test file to KRT Kermit, the other Kermit must at least:
  3209.  
  3210.     Kermit>SET CON U ALL         ; Turn prefixing off for all chars
  3211.     Kermit>SET CON P 0           ; If NUL was off'd, turn it back on
  3212.     Kermit>SET CON P 3           ; and for Ctrl-C
  3213.     Kermit>SET CON P 131         ; as well as Ctrl-C + parity bit
  3214.  
  3215.   Note well that all character values for the SET CONTROL-CHAR command must
  3216.   be specified as DECIMAL numbers (delimited by spaces) or the word ALL may
  3217.   be used to specify the entire range of values (1-31, 127-159, 255).
  3218.  
  3219.  Try to send the test file in the BINARY mode.  If it works, fine.  If not try
  3220.  prefixing some of the other likely control characters (see below).  Some care
  3221.  is necessary if you are running the KRT server from an RT-11 system's console
  3222.  port, as it is not possible to disable special character processing, but this
  3223.  is no problem under TSX-Plus.   Once you've found the minimum set of prefixed
  3224.  control characters for the test file, it's likely they will also work for any
  3225.  other file.  Try sending a large binary file to confirm all is well.
  3226.  
  3227.  If the mininum set doesn't work, this list of control characters and problems
  3228.  they are apt to cause may help to more efficiently determine what's possible:
  3229.  
  3230.  set con p 0   ; Ctrl-@ = NUL, internal string terminator in Kermit
  3231.                ;          Also, often discarded as padding
  3232.  set con p 1   ; Ctrl-A = Packet-start character
  3233.  set con p 3   ; Ctrl-C = Packet breakout for remote-mode C-Kermit, MS-Kermit
  3234.                ;          and above all, for KRT Kermit too!
  3235.  set con p 13  ; Ctrl-M = Carriage return, always prefix on TELNET connections
  3236.  set con p 14  ; Ctrl-N = Shift Out of graphics mode
  3237.  set con p 15  ; Ctrl-O = Shift In to graphics mode, or abort TT output
  3238.  set con p 16  ; Ctrl-P = Commonly-used X.25/X.3 PAD escape character
  3239.  set con p 17  ; Ctrl-Q = XON   ) must prefix with
  3240.  set con p 19  ; Ctrl-S = XOFF  ) XOFF flow control
  3241.  set con p 27  ; Ctrl-[ = ESC, prefix if transiting some kind of ANSI device
  3242.  set con p 28  ; Ctrl-\ = CONNECT-mode escape for KRT Kermit
  3243.  set con p 29  ; Ctrl-] = CONNECT-mode escape for Unix TELNET
  3244.  set con p 30  ; Ctrl-^ = Cisco terminal server escape, MultiNet telnet escape
  3245.  set con p 127 ; Ctrl-? = DEL, often discarded as padding
  3246.                ;          Also becomes TELNET IAC if parity bit is added
  3247.  set con p 128 ; NUL    + 128  }
  3248.  set con p 129 ; Ctrl-A + 128  } these four should track
  3249.  set con p 131 ; Ctrl-C + 128  } their 7-bit counterparts
  3250.  set con p 141 ; CR     + 128  }
  3251.  set con p 145 ; XON    + 128  ) must prefix with
  3252.  set con p 147 ; XOFF   + 128  ) XOFF flow control
  3253.  set con p 255 ; TELNET IAC, prefix on TCP/IP TELNET connections
  3254.  
  3255.  NOTES:  1 and 129 need not be prefixed when sending files to KRT Kermit,  but
  3256.  must be prefixed when sending files to MS-DOS Kermit.  13 normally needn't be
  3257.  prefixed when sending files to either C-Kermit or MS-DOS Kermit,  except on a
  3258.  TELNET connection (because TELNET servers are likely to change CR-LF into CR)
  3259.  or with VMS where C-Kermit can not be made to ignore CR as the EOL character.
  3260.  
  3261.  Kermit  will  not  let you unprefix  XON (17),  XOFF (19),  XON+128 (145), or
  3262.  XOFF+128 (147)  if  its  FLOW-CONTROL  setting  is  XOFF/XON.  If you want to
  3263.  unprefix these, make sure  *both*  Kermits have been told to SET FLOW RTS/CTS
  3264.  (or NONE) and  that  XOFF  flow  control  is not in effect anywhere along the
  3265.  communication path between the two Kermits.  NUL (0) should always prefixed.
  3266.  
  3267.  When sending files to C-Kermit,  you should normally SET CONTROL PREFIX 3 131
  3268.  because C-Kermit (by default) takes two Ctrl-Cs in a row as a cancellation of
  3269.  packet-mode.  You can  UNPREFIX  these if the files to be sent do not contain
  3270.  two Ctrl-Cs in a row.  Or, you may tell C-Kermit to SET TRANSFER CANCELLATION
  3271.  OFF,  or SET TRANSFER CANCELLATION ON <char> <numb> when you know that <numb>
  3272.  copies of <char> do not occur in a row in the data.
  3273.  
  3274. 3 PREFIXED
  3275.  
  3276.  Use to restore prefixing for the control characters specified or the argument
  3277.  ALL may be used.  Multiple arguments must be delimited by spaces.  By default
  3278.  all control characters (0-31, 127-159, and 255) are prefixed.
  3279.  
  3280.  See HELP SET CONTROL-CHARACTER for detailed information.
  3281.  
  3282. 3 UNPREFIXED
  3283.  
  3284.  Causes Kermit to transmit the specified control characters literally, without
  3285.  the usual prefixing and translation to a printable value.  Characters must be
  3286.  speficied as decimal numbers separated by spaces (1-31, 127-159, 255 or ALL).
  3287.  
  3288.     Kermit-11>SET CONTROL UNPREFIXED ALL
  3289.     Kermit-11>SET CONTROL UNPREFIXED 2 4 5 18 20
  3290.  
  3291.  See HELP SET CONTROL-CHARACTER for detailed instructions and information.
  3292.  
  3293. 2 DEBUG
  3294.  
  3295.  Used to specify the type and level of debugging written to a disk
  3296.  file, which must first have been created via the LOGFILE command,
  3297.  or may be optionally specified as an additional argument for this
  3298.  command.  There are also options to display debugging data on the
  3299.  terminal with or without writing to a disk file.   When a logfile
  3300.  is closed all disk based debug modes are reset (turned off).
  3301.  
  3302.     Kermit-11>SET DEBUG mode [logfile]
  3303.  
  3304. 3 ALL
  3305.  
  3306.  Synonym for SET DEBUG ON.
  3307.  
  3308. 3 CONSOLE
  3309.  
  3310.  Turns on logging for input received from the remote in the
  3311.  CONNECT mode to the disk file specified by LOGFILE.  While
  3312.  you're actually CONNECTed logging may be controlled by the
  3313.  escape character followed by Q to suspend, or R to enable.
  3314.  Cancels any other disk based debug option(s) then in use.
  3315.  
  3316. 3 CONNECT
  3317.  
  3318.  Synonym for SET DEBUG CONSOLE.
  3319.  
  3320. 3 NONE
  3321.  
  3322.  Turns off ALL debugging, including TT, RPACK and disk based,
  3323.  and closes the logfile.   Individual items are controlled by
  3324.  SET DEBUG ON, CONSOLE, PACKET, RAW, OFF, [NO]RPACK, [NO]TT.
  3325.  
  3326. 3 NORPACK
  3327.  
  3328.  Turns off the display of received packet chars on the terminal.
  3329.  Note this is a completely separate function from DEBUG's PACKET
  3330.  routine, which delivers a similar display but with headers.  It
  3331.  is also independent of SET DEBUG TT.
  3332.  
  3333. 3 NOTERMINAL
  3334.  
  3335.  Turns off debugging display on the terminal.  This is completely
  3336.  separate from any disk based logging, as well as received packet
  3337.  data displayed via the RPACK option.
  3338.  
  3339. 3 NOTT:
  3340.  
  3341.  Synonym for SET DEBUG NOTERMINAL.
  3342.  
  3343. 3 OFF
  3344.  
  3345.  Turns off all disk based debugging,  and closes the logfile.
  3346.  To turn off RPACK logging SET DEBUG NORPACK.  Debugging sent
  3347.  to TT may be offed via SET DEBUG NOTT.   The entire world of
  3348.  debugging may be dumped with SET DEBUG NONE.
  3349.  
  3350. 3 ON
  3351.  
  3352.  Enables CONSOLE and PACKET logging to the disk file specified
  3353.  by the LOGFILE command.
  3354.  
  3355. 3 PACKET
  3356.  
  3357.  Logs all packets sent and received to the file specified with LOGFILE
  3358.  using headers indicating packet number, type and length.  An asterisk
  3359.  "*" displayed as the packet type indicates a received checksum error.
  3360.  If the type itself is bad (not A-Z) a "?" is substituted.  The packet
  3361.  data are saved to the logfile as-is, that is for binary files or when
  3362.  control chars are unprefixed a text editor may be more convenient for
  3363.  viewing the result.
  3364.  
  3365.  REC.SW = STA.DAT  Data
  3366.  <<< RPACK - Paknum  54    Type  *    Length    82
  3367.      40!100!200>,curatr; hose bits 0,2,5 and unused biuc 6,7#M#J#Ibeq#I10$#M#
  3368.      J#Iclr#Ipr
  3369.  BAD Checksum: RCV,CALC =  24670,  3312
  3370.  >>> SPACK - Paknum  54    Type  N    Length     0
  3371.  TOD 18:53:07.05  60Hz   Elapsed-Time: 00:00:00.33
  3372.  
  3373.  Numeric overflow is indicated by a "*" (in the most significant digit's
  3374.  column) preceding the remainder of the value,  which is also displayed.
  3375.  Received and calculated values of bad checksums are displayed following
  3376.  any data present in the packet.  The current time of day along with the
  3377.  time used to process the packet is included at the end of the entry for
  3378.  each in hours, minutes, seconds and ticks.
  3379.  
  3380.  Severe telephone line noise and/or retraining of modems may cause a bad
  3381.  packet length value, in which case data logged are truncated to fit the
  3382.  maximum available ($ALLSIZ-2) buffer space.
  3383.  
  3384.  Selecting this option cancels any other disk based debug option(s) then
  3385.  in use.
  3386.  
  3387. 3 RAW
  3388.  
  3389.  Logs all packet chars received and sent as 8-bit data to a binary logfile.
  3390.  This option is mutually exclusive of all other disk based debug functions.
  3391.  
  3392. 3 RPACK
  3393.  
  3394.  Dumps each received packet character to the local terminal,
  3395.  independently of all other debug functions.  May be enabled
  3396.  while anything or even everything else is selected but it's
  3397.  best used on its own.  All chars except the current SOH and
  3398.  EOL (and TSLICH if running TSX+) are passed directly to the
  3399.  terminal.  TIMOUTs are also displayed as they occur.
  3400.  
  3401.  SET DEBUG NORPACK turns this off.
  3402.  
  3403.  Note that SET DEBUG TT is a different routine, if both are
  3404.  used at the same time packets will be displayed twice.
  3405.  
  3406.  RPACK types out each character to your terminal immediately
  3407.  as received.  PACKET decodes the SEQ, TYP and LEN then adds
  3408.  a newline after each 72. bytes of packet data displayed.
  3409.  
  3410. 3 TERMINAL
  3411.  
  3412.  Enables display on the terminal of the PACKET option.  It  is
  3413.  not necessary to open a logfile first unless one wishes these
  3414.  same data saved in one, in which case it'll also be necessary
  3415.  to SET DEBUG PACKET.
  3416.  
  3417.   SET DEB NOTERM to turn off this debugging display.  This is
  3418.   completely separate from any disk based logging, as well as
  3419.   received packet data displayed via the RPACK option.
  3420.  
  3421. 3 TT:
  3422.  
  3423.  Synonym for SET DEBUG TERMINAL.
  3424.  
  3425. 2 DEFAULT
  3426.  
  3427.  Makes the specified device the default disk, directing to it
  3428.  file operations for which no device is explicitly specified.
  3429.  
  3430. 2 DELAY
  3431.  
  3432.  Sets the number of seconds to wait before beginning sending a file
  3433.  while in the remote mode.  This is the time allowed to escape back
  3434.  to your local Kermit and issue a RECEIVE command.
  3435.  
  3436.     Kermit-11>SET DELAY number-of-seconds
  3437.  
  3438. 2 DIAL
  3439.  
  3440.  Kermit-11 contains operating parameters for several of the more common
  3441.  auto-dial modems.  To find out if your modem is directly supported use
  3442.  the SET MODEM ? command.  If it is not, you'll need to use SET DIAL to
  3443.  load the data used to control the modem and implement the various DIAL
  3444.  routines.  These involve formatting commands to the modem, and what to
  3445.  expect in the way of modem responses.  As an example the Vadic VA212PA
  3446.  modem is awakened from an idle state by the character sequence (octal)
  3447.  
  3448.     005 015
  3449.  
  3450.  which is Ctrl-E followed by carriage return.  The modem responds with
  3451.  
  3452.     HELLO: I'M READY
  3453.     *
  3454.  
  3455.  Thus Kermit needs to know when it sends the wakeup sequence it should
  3456.  wait for the asterisk to be returned by the modem, after which it may
  3457.  presumed the modem is awaiting further commands, such as that to dial
  3458.  a phone number.
  3459.  
  3460.  Suppose we had to tell Kermit about the Racal Vadic VA212PA (though in
  3461.  reality Kermit already knows this modem).  Checking the owner's manual
  3462.  for it, we find that:
  3463.  
  3464.      To wake the modem up, we type a Ctrl-E followed by a return.
  3465.  
  3466.      To dial a number, we type the letter D  followed by a return.  At
  3467.      this point, the modem prints a NUMBER? prompt and we then type in
  3468.      the desired number.  The number  is  then reprinted and the modem
  3469.      waits for a return from us to confirm it's correct.
  3470.  
  3471.      When it completes dialing it will print "ON LINE" or "ONLINE" for
  3472.      a successful call, otherwise it may return "BUSY", "FAILED CALL",
  3473.      "NO DIAL",  "VOICE"  or  "TIME OUT".  While it is waiting for its
  3474.      call to be answered it may print the line "RINGING" several times
  3475.      to tell you it's working on the call.
  3476.  
  3477.  The Kermit commands required would be:
  3478.  
  3479.     Kermit-11>SET DIAL WAKE-STRING \005\015
  3480.     Kermit-11>SET DIAL ECHO
  3481.     Kermit-11>SET DIAL WAKE-ACK *
  3482.     Kermit-11>SET DIAL INITIATE D\015
  3483.     Kermit-11>SET DIAL FORMAT %P%S\015
  3484.     Kermit-11>SET DIAL DIAL-PAUSE 9K
  3485.     Kermit-11>SET DIAL CONFIRM \015
  3486.     Kermit-11>SET DIAL SUCCESS ONLINE
  3487.     Kermit-11>SET DIAL SUCCESS ON LINE
  3488.     Kermit-11>SET DIAL RINGING RINGING
  3489.     Kermit-11>SET DIAL FAILURE BUSY
  3490.     Kermit-11>SET DIAL FAILURE FAILED CALL
  3491.     Kermit-11>SET DIAL FAILURE NO DIAL
  3492.     Kermit-11>SET DIAL FAILURE TIME OUT
  3493.     Kermit-11>SET DIAL FAILURE VOICE
  3494.  
  3495.  The notation "\005\015" indicates a Ctrl-E followed by a return.  5 is
  3496.  octal for Ctrl-E,  15 is octal for return.   Octal numbers may also be
  3497.  specified by placing the value inside of  inequality  characters as in
  3498.  SET DIAL WAKE <005><015> though the former is preferred.  Octal values
  3499.  may be obtained from HELP ASCII.  If for any reason you need to pass a
  3500.  "\" or "<" to your modem, simply prefix the character with another "\"
  3501.  or "<" as in "\\" or "<<".
  3502.  
  3503.  "%P%S\015" indicates the phone number from the  DIAL  command is to be
  3504.  followed by a return.  "%S" is  a format effector for the phone number
  3505.  string itself,  which causes it to be inserted in the dial string sent
  3506.  to the modem.   "%P" inserts the dial pause string, as in this case we
  3507.  need to dial 9 and wait for a second dial tone.  The "K" is the  Racal
  3508.  Vadic  code to get the modem to pause.  If you are dialing on a direct
  3509.  line or your modem supports pausing via something embedded in the dial
  3510.  string itself, the DIAL-PAUSE command is unneeded.
  3511.  
  3512.  Many modems require only WAKEUP, WAKE-ACK, FORMAT and result strings.
  3513.  The Digital DF112 is a good example.  Its definition would look like:
  3514.  
  3515.     Kermit-11>SET DIAL WAKEUP \002
  3516.     Kermit-11>SET DIAL WAKE-ACK READY
  3517.     Kermit-11>SET DIAL FORMAT %S#
  3518.     Kermit-11>SET DIAL SUCCESS ATTACHED
  3519.     Kermit-11>SET DIAL FAILURE BUSY
  3520.     Kermit-11>SET DIAL FAILURE DISCONNECTED
  3521.     Kermit-11>SET DIAL FAILURE ERROR
  3522.     Kermit-11>SET DIAL FAILURE NO ANSWER
  3523.  
  3524.  Any undefined result string is considered informational only thus this
  3525.  class of response does not need to be expressly defined.
  3526.  
  3527.  If you are using a "Hayes" style modem, its extended response mode may
  3528.  be set by using the %X format effector in the WAKE-STRING.  The number
  3529.  desired is then specified by SET PHONE XMODE n, where n is 0 to 14, or
  3530.  "OFF" to disable it.  %X may also be used in the FORMAT (dial) string,
  3531.  allowing modification without re-initializing the modem.
  3532.  
  3533.  Here's a sample Hayes definition:
  3534.  
  3535.     Kermit-11>SET PHONE TONE,XMODE 4
  3536.     Kermit-11>SET DIAL COMMENT Generic Hayes Command Set
  3537.     Kermit-11>SET DIAL TIME-OUT 45
  3538.     Kermit-11>SET DIAL WAKE-ACK OK
  3539.     Kermit-11>SET DIAL WAKE-STRING AT E1 Q0 V1 S0=0 S7=255 %X \015
  3540.     Kermit-11>SET DIAL ECHO
  3541.     Kermit-11>SET DIAL INIT-ONCE
  3542.     Kermit-11>SET DIAL FORMAT AT %X %A D%M %S \015
  3543.     Kermit-11>SET DIAL ABORT \015
  3544.     Kermit-11>SET DIAL CON19200 CONNECT 19200
  3545.     Kermit-11>SET DIAL CON19200 CONNECT 14400
  3546.     Kermit-11>SET DIAL CON9600 CONNECT 9600    ; fallback only works with
  3547.     Kermit-11>SET DIAL CON4800 CONNECT 4800    ; the CL or KM handlers..
  3548.     Kermit-11>SET DIAL CON2400 CONNECT 2400
  3549.     Kermit-11>SET DIAL CON1200 CONNECT 1200
  3550.     Kermit-11>SET DIAL CON9600 CONNECT FAST
  3551.     Kermit-11>SET DIAL CON300 CONNECT       ; embedded, must be last!
  3552.     Kermit-11>SET DIAL FAILURE BUSY
  3553.     Kermit-11>SET DIAL FAILURE ERROR
  3554.     Kermit-11>SET DIAL FAILURE NO ANSWER
  3555.     Kermit-11>SET DIAL FAILURE NO CARRIER
  3556.     Kermit-11>SET DIAL FAILURE NO DIALTONE
  3557.     Kermit-11>SET DIAL FAILURE NO DIAL TONE
  3558.     Kermit-11>SET DIAL FAILURE VOICE
  3559.     Kermit-11>SET DIAL RINGING RING        ; includes RINGING
  3560.     Kermit-11>SET DIAL RINGING RRING    ; Telebit style..
  3561.     Kermit-11>SET DIAL PULSE P
  3562.     Kermit-11>SET DIAL TONE T
  3563.     Kermit-11>SET DIAL ANSWER S0=1
  3564.     Kermit-11>SET DIAL NOANSWER S0=0
  3565.     Kermit-11>SET DIAL IDLE AT Z \015
  3566.  
  3567.  Some modems are unable to accept data at the line speed, in which case
  3568.  one must employ SET DIAL WAKERATE and SET DIAL DIAL-RATE.   These two
  3569.  functions accept a delay time in clock ticks,  which  are 1/50 or 1/60
  3570.  second units depending on where in the world this program is running.
  3571.  
  3572.  If your modem has a settable timer it should be either disabled or set
  3573.  to the maximum possible (example: the Hayes wakeup string contains S7=
  3574.  255) to allow Kermit-11's internal TIME-OUT to prevail.
  3575.  
  3576.  If your modem hangs, see HELP SET DIAL SETTLE-TIME.  This and TIME-OUT
  3577.  are two special parameters here in that they are global, and used even
  3578.  with Kermit's internal modem definitions.  However, default values are
  3579.  loaded by SET MODEM, thus these must be altered AFTERWARDS, except for
  3580.  the USER-DEFINED modem where what is set BECOMES the default.  This is
  3581.  also the case for SET PHONE XMODE.
  3582.  
  3583.  NOTE:  This program toggles DTR to reset the modem thus the modem must
  3584.  have this option enabled in its default configuration.
  3585.  
  3586.  If the modem echoes command strings sent to it SET DIAL ECHO to enable
  3587.  display of anything output by it.
  3588.  
  3589.  Once all pertinent data have been entered, it is then necessary to SET
  3590.  Kermit's modem-type:
  3591.  
  3592.     Kermit-11>SET MODEM USER-DEFINED
  3593.  
  3594.  If a line (and speed if necessary) has been previously set this causes
  3595.  Kermit to try initializing the modem, the result of which is reported.
  3596.  If successful, you may then use the DIAL command to call out.
  3597.  
  3598. 3 ABORT
  3599.  
  3600.  Defines a string to force the modem to stop dialing.  This is passed
  3601.  to the modem by the strike-any-key abort function of Kermit-11 while
  3602.  waiting for a dialed  call  to complete.  Non-printing chars must be
  3603.  specified in octal notation.
  3604.  
  3605.     Kermit-11>SET DIAL ABORT \003    ; use ^C to stop modem
  3606.  
  3607. 3 ANSWER
  3608.  
  3609.  Defines a string the %A format effector will insert in the dial FORMAT
  3610.  string when it contains said %A effector and you have SET PHONE ANSWER
  3611.  to allow answering a call back from a security modem requiring it.
  3612.  
  3613.     Kermit-11>SET DIAL ANSWER S0=1    ; Hayes does it thusly
  3614.  
  3615.  SHOW MODEM to display its current setting and status.
  3616.  
  3617. 3 BINARY-RESPONSE
  3618.  
  3619.  If your modem responds with single character result messages (sans any
  3620.  terminator ala a return) set this so Kermit will as well.  The default
  3621.  may be restored with SET DIAL NOBINARY-RESPONSE, which enables testing
  3622.  of strings of more than one character.
  3623.  
  3624. 3 BLIND
  3625.  
  3626.  Defines a string to force the modem to dial regardless of its detecting
  3627.  a dial tone or recognizing tone dialing capability on the line.  Actual
  3628.  use of this string in dialing is enabled by SET PHONE BLIND.
  3629.  
  3630.     Kermit-11>SET DIAL BLIND string
  3631.  
  3632. 3 COMMENT
  3633.  
  3634.  Specifies a brief description of the modem definition which is included
  3635.  in the SHOW MODEM display.  Embedded blanks are ok, but multiple spaces
  3636.  will be reduced to a single blank.
  3637.  
  3638.     Kermit-11>SET DIAL COMMENT Hayes-MNP with DTE speed locked
  3639.  
  3640. 3 CON300
  3641.  
  3642.  Define a message from the modem which, as a result of a dialed call
  3643.  will cause Kermit-11 to set its DCE port (ONLY when using the CL or
  3644.  KM handler) to 300 baud and then CONNECT to it:
  3645.  
  3646.     Kermit-11>SET DIAL CON300 CONNECT  ; Hayes defaults to 300
  3647.  
  3648. 3 CON1200
  3649.  
  3650.  Define a message from the modem which, as a result of a dialed call
  3651.  will cause Kermit-11 to set its DCE port (ONLY when using the CL or
  3652.  KM handler) to 1200 baud and then CONNECT to it:
  3653.  
  3654.     Kermit-11>SET DIAL CON1200 CONNECT 1200
  3655.  
  3656. 3 CON2400
  3657.  
  3658.  Define a message from the modem which, as a result of a dialed call
  3659.  will cause Kermit-11 to set its DCE port (ONLY when using the CL or
  3660.  KM handler) to 2400 baud and then CONNECT to it:
  3661.  
  3662.     Kermit-11>SET DIAL CON2400 CONNECT 2400
  3663.  
  3664. 3 CON4800
  3665.  
  3666.  Define a message from the modem which, as a result of a dialed call
  3667.  will cause Kermit-11 to set its DCE port (ONLY when using the CL or
  3668.  KM handler) to 4800 baud and then CONNECT to it:
  3669.  
  3670.     Kermit-11>SET DIAL CON4800 CONNECT 4800
  3671.  
  3672. 3 CON9600
  3673.  
  3674.  Define a message from the modem which, as a result of a dialed call
  3675.  will cause Kermit-11 to set its DCE port (ONLY when using the CL or
  3676.  KM handler) to 9600 baud and then CONNECT to it:
  3677.  
  3678.     Kermit-11>SET DIAL CON9600 CONNECT 9600    ; Hayes
  3679.     Kermit-11>SET DIAL CON9600 CONNECT FAST    ; Telebit
  3680.  
  3681. 3 CON19200
  3682.  
  3683.  Define a message from the modem which, as a result of a dialed call
  3684.  will cause Kermit-11 to set its DCE port (ONLY when using the CL or
  3685.  KM handler) to 19,200 baud and then CONNECT to it:
  3686.  
  3687.     Kermit-11>SET DIAL CON19200 CONNECT 19200
  3688.     Kermit-11>SET DIAL CON19200 CONNECT 14400
  3689.  
  3690. 3 CON38400
  3691.  
  3692.  Define a message from the modem which, as a result of a dialed call
  3693.  will cause Kermit-11 to set its DCE port (ONLY when using the CL or
  3694.  KM handler) to 38,400 baud and then CONNECT to it:
  3695.  
  3696.     Kermit-11>SET DIAL CON38400 CONNECT 38400
  3697.  
  3698. 3 CONFIRM
  3699.  
  3700.  Some modems use a command syntax wherein the number to be dialed is
  3701.  echoed back to the user, after which the user must confirm it is ok
  3702.  by returning an appropriate string:
  3703.  
  3704.     Kermit-11>SET DIAL CONFIRM \015   ; usually just a return
  3705.  
  3706. 3 CONFIRM-ACKNOWLEDGE
  3707.  
  3708.  If your modem issues some sort of confirmation to the DIAL CONFIRM
  3709.  sent to it, and there is  some  reason  to  test that in fact said
  3710.  confirmation has actually been received by Kermit, you may specify
  3711.  what to expect thusly:
  3712.  
  3713.     Kermit-11>SET DIAL CONFIRM-ACK string
  3714.  
  3715.  For example, older Vadic modems would say "DIALING" here.
  3716.  
  3717. 3 DIAL-ACKNOWLEDGE
  3718.  
  3719.  Specifies a string issued by the modem to acknowledge it is dialing.
  3720.  Use of this may be  required  for  error  detection  with some older
  3721.  modems, but it's normally not necessary.
  3722.  
  3723.     Kermit-11>SET DIAL DIAL-ACK \015   ; usually just a return
  3724.  
  3725. 3 DIAL-PAUSE
  3726.  
  3727.  Defines the string for dial tone pause, which string is passed to the
  3728.  modem by placing the %P format effector in the actual dialing string,
  3729.  which in turn is defined with the SET DIAL FORMAT command.
  3730.  
  3731.     Kermit-11>SET DIAL DIAL-PAUSE string
  3732.  
  3733.  If you are dialing on a direct line or your modem supports pausing via
  3734.  something embedded in the dial string itself the DIAL-PAUSE command is
  3735.  unnecessary.  As long as the first char is numeric, commas and similar
  3736.  tokens will be passed to the modem as part of the number from the DIAL
  3737.  command.
  3738.  
  3739. 3 DIAL-RATE
  3740.  
  3741.  Allows pacing of chars in the dial string sent to the modem.  There is
  3742.  an inherent wait of one clock tick (1/50 or 1/60 second, per your LTC)
  3743.  to ensure an echo is not missed.  If this remains too fast for a modem
  3744.  additional delay between each char may be specified in ticks:
  3745.  
  3746.     Kermit-11>SET DIAL DIAL-RATE 3
  3747.  
  3748. 3 ECHO
  3749.  
  3750.  If the modem echoes command strings, SET DIAL ECHO causes the display
  3751.  during DIALing to be driven directly from the modem's output.  If the
  3752.  modem doesn't support this, SET DIAL NOECHO forces display of what is
  3753.  sent, regardless of what may be received from the modem.
  3754.  
  3755. 3 FAILURE
  3756.  
  3757.  Define a message from the modem which, as a result of a dialed call,
  3758.  indicates failure to complete the connection.  More than one message
  3759.  may be defined if necessary to include all possibilities.
  3760.  
  3761.     Kermit-11>SET DIAL FAILURE BUSY
  3762.     Kermit-11>SET DIAL FAILURE NO ANSWER
  3763.  
  3764. 3 FORMAT
  3765.  
  3766.  This defines the actual DIAL string sent to the modem.  In  addition
  3767.  to specifying the entire thing verbatim several format effectors are
  3768.  provided to make life easier.  Most notable of these is %S, which is
  3769.  the number to dial taken from the argument to the DIAL command.  See
  3770.  HELP SET DIAL Format-effectors for detailed info.
  3771.  
  3772.     Kermit-11>SET DIAL FORMAT %P%S\015
  3773.     Kermit-11>SET DIAL FORMAT AT %X D%M %S \015
  3774.  
  3775.  Most modems will require %S be the last item in the list (other than
  3776.  the return as an input terminator), as otherwise a following command
  3777.  will be taken as a request to abort dialing.  If blanks are embedded
  3778.  they will be passed to the modem, although contiguous blanks will be
  3779.  reduced to a single space.
  3780.  
  3781. 3 Format-effectors
  3782.  
  3783.  FORMAT (dialing) string format effectors supported:
  3784.  
  3785.     %A - SET PHONE [NO]ANSWER string
  3786.     %B - Dial blind
  3787.     %M - Mode, pulse or tone
  3788.     %P - Insert pause string
  3789.     %S - Phone number string, passed by DIAL command
  3790.     %X - Insert Hayes xmode string, unless set off
  3791.  
  3792.  WAKE-STRING (initialization) string format effector supported:
  3793.  
  3794.     %X - Insert Hayes xmode string, unless set off
  3795.  
  3796.  See  HELP SET DIAL ANSWER, NOANSWER PULSE, TONE  and  HELP SET PHONE *
  3797.  for info concerning exactly what each of these does.
  3798.  
  3799.  If you are using a "Hayes" style modem, its extended response mode may
  3800.  be set into the init string via SET PHONE XMODE n, where n is a number
  3801.  between 0 and 14, or the word "OFF".  The  format  effector  for XMODE
  3802.  is %X.  It may also be used in the dial string, allowing modifications
  3803.  without re-initializing the modem.
  3804.  
  3805.  Strings to be inserted will be displayed in SHOW MODEM when the format
  3806.  effectors (SET PH BLIND,PULSE,TONE,XMODE) for them are enabled, except
  3807.  for the phone number string, which is not built until DIALing.
  3808.  
  3809. 3 IDLE
  3810.  
  3811.  Defines the string used to return the modem to idle state, which is
  3812.  sent to the modem upon exiting Kermit-11 or dropping the connection
  3813.  (ala SET LINE) to it.  If the modem was preset to auto-answer, this
  3814.  restores it to that state.
  3815.  
  3816.     Kermit-11>SET DIAL IDLE ATZ \015
  3817.  
  3818. 3 Important-Notes!
  3819.  
  3820.  The SUCCESS, CONnnnn, RINGING  and  FAILURE fields are built as linked
  3821.  lists thus you can have as many as necessary.  At least one SUCCESS or
  3822.  CONnnnn message must be defined or any call is going to fail!
  3823.  
  3824.  NOTE: Where a modem response string (SUCCESS, CONN, FAILURE) is a sub-
  3825.  string of another response string the substring MUST FOLLOW the string
  3826.  containing it as the comparison scheme used here ignores the return at
  3827.  the end of the result string from the modem.  Thus, when you are using
  3828.  CONNECT 1200 and CONNECT, "CONNECT 1200" MUST be defined first, BEFORE
  3829.  "CONNECT" on its own.  All tests are done without respect to case.
  3830.  
  3831.  Use of CONNECT messages to conform the speed of the DCE port (the one
  3832.  on the PDP-11) to that of the modem (DTE port) is only possible using
  3833.  the CL (TSX-Plus) or KM (RT-11/TSX-Plus) handlers.  These are for use
  3834.  with modems which alter the speed of their data port to the connected
  3835.  (telephone port) speed.  The old speed will be restored when the next
  3836.  call is placed, unless SET otherwise first.  See HELP SET DIAL CONnn,
  3837.  where nn=300 ,1200 ,2400 ,4800 ,9600 ,19200 or 38400.
  3838.  
  3839.  Once you have  established  a  working set of parameters for your user
  3840.  defined modem,  you  may  include  them  in  KRT.INI, Kermit's startup
  3841.  initialization command file.  If memory runs out before everything you
  3842.  need can be entered, increase the value of ALSIZE in KRTMAC.MAC.  This
  3843.  same buffer is used to store phone numbers.  Also note malloc as it is
  3844.  here does not deallocate anything, thus while re-entering data updates
  3845.  pointers to them the superseded data's memory is NOT recovered.
  3846.  
  3847.  The following pseudo code was extracted from the dialer source module,
  3848.  with the hope of clarifying the functions of and relationships between
  3849.  the seemingly excessive number of parameters available here.  Anything
  3850.  that can modified by SET DIAL is shown in UPPER CASE.  Items listed as
  3851.  optional should only be used when really necessary, or performance may
  3852.  not remain as fast as it could be.
  3853.  
  3854.  format_dial_string        ; build the modem's dial_command_string
  3855.    using FORMAT string and
  3856.      %B BLIND dial string    ; if set phone blind has also been done
  3857.      %M PULSE or TONE string    ; set phone pulse,tone selects which
  3858.      %P DIAL-PAUSE string    ; used if defined
  3859.      %S the_phone_number    ; as passed by the dial command
  3860.      %X XMODE            ; depending on set phone xmode
  3861.  
  3862.  call tty_initialize        ; open the link device
  3863.  call fix_speed            ; restore set speed (b4speed) if need be
  3864.  
  3865.  test INIT-ONCE            ; need to re-init modem?
  3866.    if <>, goto do_dial
  3867.     send WAKE-STRING    ; ya, send it an init string
  3868.     pace WAKE-RATE ticks    ; pause between chars if <>
  3869.     call check_abort    ; check strike any key to abort loop
  3870.     wait_for WAKE-PROMPT    ; now wait 2 secs for an ack
  3871.      on error, loop a maximum of three times then give up
  3872.  
  3873.  do_dial:            ; try to dial a number
  3874.     ; these two are optional and only for modems which need them
  3875.     send INITIATE        ; dump the string to initiate dialing out
  3876.     wait_for INITIATE-PROMPT; if defined, wait up to 4 secs for a response
  3877.    send dial_command_string    ; this is from FORMAT, et.al. above
  3878.    pace DIAL-RATE ticks        ; pause between chars if not zero
  3879.    test DIAL-ECHO        ; does it echo?  if not, Kermit will do it
  3880.    call check_abort        ; strike any key to abort loop
  3881.     ; these three are optional and only for modems which need them
  3882.     wait_for DIAL-ACK    ; wait up to 4 secs for numb to echo perhaps
  3883.     send CONFIRM        ; stuff a confirm
  3884.     wait_for CONFIRM-ACK    ; if defined, wait up to 5 secs for the string
  3885.  
  3886.  get_response:            ; get the modem's response
  3887.    wait_for SUCCESS ,RINGING ,FAILED ,CON300..CON19200
  3888.    test BINARY-RESPONSE        ; exit loop on a single character?
  3889.    call check_abort        ; strike any key to abort loop
  3890.    wait_until TIME-OUT secs
  3891.  
  3892.  call_fails_or_was_aborted:
  3893.    send ABORT            ; get the modem to STOP
  3894.    wait SETTLE            ; let modem recover from abort!
  3895.  
  3896.  call_succeeds:
  3897.     ; if under TSX-Plus with CL handler and a CONnnnn result message
  3898.     call b4speed        ; save speed before fallback..
  3899.     call set_speed        ; then set it to what modem wants it to be
  3900.    jump c$connect        ; and connect automatically..
  3901.  
  3902. 3 INITIATE
  3903.  
  3904.  Some modems use a command syntax wherein the number to be dialed must be
  3905.  preceded by a command to first initiate the dial mode itself.   Normally
  3906.  these modems will also require using a DIAL CONFIRM string after sending
  3907.  the number string.
  3908.  
  3909.     Kermit-11>SET DIAL INITIATE D\015
  3910.  
  3911. 3 INITIATE-PROMPT
  3912.  
  3913.  If after use of the DIAL INITIATE option for some obscure reason you
  3914.  find it necessary to check for proper response to it from your modem
  3915.  the desired string may be specified thusly:
  3916.  
  3917.     Kermit-11>SET DIAL INITIATE-PROMPT string
  3918.  
  3919. 3 INIT-ONCE
  3920.  
  3921.  If once initialized your modem remains in that state (some such as the
  3922.  Concord 224 will time out and return to an idle mode) you may skip any
  3923.  further unnecessary and time consuming inits by calling this function.
  3924.  This is tested when dialing, and will speed up the redial looping time
  3925.  if your modem allows its use.
  3926.  
  3927.     Kermit-11>SET DIAL INIT-ONCE
  3928.  
  3929.  To restore Kermit-11's default operation where the modem is re-initted
  3930.  before trying anything and everything else SET DIAL NOINIT-ONCE.
  3931.  
  3932. 3 NOANSWER
  3933.  
  3934.  Defines a string the %A format effector will insert in the dial FORMAT
  3935.  string when it contains said %A effector and you've SET PHONE NOANSWER
  3936.  to disable the modem from answering an incomming call.
  3937.  
  3938.     Kermit-11>SET DIAL NOANSWER S0=0  ; Hayes does it thusly
  3939.  
  3940.  SHOW MODEM to display its current setting and status.
  3941.  
  3942. 3 NOBINARY-RESPONSE
  3943.  
  3944.  Enables testing modem result messages consisting of strings greater than
  3945.  one character.  If your modem responds via single character result codes
  3946.  SET DIAL BINARY-RESPONSE so Kermit will as well.
  3947.  
  3948. 3 NOECHO
  3949.  
  3950.  If the modem echoes command strings, SET DIAL ECHO causes the display
  3951.  during DIALing to be driven directly from the modem's output.  If the
  3952.  modem doesn't echo, SET DIAL NOECHO will force Kermit to display what
  3953.  is sent to the modem in place of what would be echoed back.
  3954.  
  3955. 3 NOINIT-ONCE
  3956.  
  3957.  If your modem, once initialized for dialing out, doesn't remain in such
  3958.  a state, particularly after a dial out call fails, SET DIAL NOINIT-ONCE
  3959.  will force Kermit-11 to re-initialize the modem before each dial/redial
  3960.  attempt.  This is the default operation.
  3961.  
  3962. 3 PULSE
  3963.  
  3964.  Defines a string to force the modem to use pulse dialing regardless of its
  3965.  recognizing tone dialing capability on the line.  This string is passed to
  3966.  the modem by the %M format effector (which must in the DIAL FORMAT string)
  3967.  when one has SET PHONE PULSE to enable it.
  3968.  
  3969.     Kermit-11>SET DIAL PULSE P    ; "Hayes" uses this
  3970.  
  3971. 3 RINGING
  3972.  
  3973.  Defines a ring response, as returned by the modem to report the status of
  3974.  a call in progress.  Kermit-11 maintains a count of received RINGS, after
  3975.  seven of which the call will be considered failed due to no reply.
  3976.  
  3977.     Kermit-11>SET DIAL RINGING RING   ; "RING" includes "RINGING"
  3978.     Kermit-11>SET DIAL RINGING RRING  ; Telebit style..
  3979.  
  3980.  Multiple messages may be defined as required to cover all possibilities.
  3981.  
  3982. 3 SETTLE-TIME
  3983.  
  3984.  Allows modifying the delay between sending a reset string to a modem and
  3985.  dumping the handler connected to it, which also drops DTR.  If the modem
  3986.  doesn't recover in time to resume its auto-answer mode, increase this to
  3987.  something beyond the 20 tick default by setting a new value as a decimal
  3988.  number of ticks.  One tick is 1/50 or 1/60 second (hardware dependent).
  3989.  
  3990.     Kermit-11>SET DIAL SETTLE 30
  3991.  
  3992.  IMPORTANT NOTE:  This is a global function effective for ANY modem type,
  3993.  not just USER-DEFINED, but for KRT's built-in modem types this will only
  3994.  prevail when this is done AFTER setting the MODEM-TYPE.
  3995.  
  3996. 3 SUCCESS
  3997.  
  3998.  Define a message from the modem which, as a result of a dialed call,
  3999.  indicates successful completion and a data path has been established
  4000.  between modems, and which will force Kermit to CONNECT your terminal
  4001.  to it.  More than one message may be defined if necessary to include
  4002.  all possible responses.
  4003.  
  4004.     Kermit-11>SET DIAL SUCCESS CONNECT
  4005.     Kermit-11>SET DIAL SUCCESS ON LINE
  4006.  
  4007.   NOTE:  This particular function neither checks nor changes speed.
  4008.   If this is something you need, see HELP SET DIAL Important-Notes.
  4009.  
  4010. 3 TIME-OUT
  4011.  
  4012.  Defines the period in seconds after which if there is no conclusive
  4013.  response (excluding informational messages) from the modem the call
  4014.  will be considered to have failed.
  4015.  
  4016.     Kermit-11>SET DIAL TIME-OUT 60    ; for overseas calling..
  4017.  
  4018.  IMPORTANT NOTE:  This is a global function effective for ANY modem type,
  4019.  not just USER-DEFINED, but for KRT's built-in modem types this will only
  4020.  prevail when done AFTER setting the MODEM-TYPE, and the modem's internal
  4021.  time out is set to something greater than the desired time period here.
  4022.  
  4023. 3 TONE
  4024.  
  4025.  Defines a string to enable the modem to use tone dialing regardless of its
  4026.  recognizing tone dialing capability on the line.  This string is passed to
  4027.  the modem by the %M format effector (which must in the DIAL FORMAT string)
  4028.  when one has SET PHONE TONE to enable it.
  4029.  
  4030.     Kermit-11>SET DIAL TONE T    ; "Hayes" uses this
  4031.  
  4032. 3 WAKE-ACKNOWLEDGE
  4033.  
  4034.  Defines the expected response to the WAKE-STRING (initialization to dial
  4035.  out) sent to the modem.  This is tested three times over a period of six
  4036.  seconds, after which the init will be considered to have failed.
  4037.  
  4038.     Kermit-11>SET DIAL WAKE-ACK *
  4039.     Kermit-11>SET DIAL WAKE-ACK OK
  4040.  
  4041. 3 WAKE-RATE
  4042.  
  4043.  Allows pacing of chars in the init string sent to the modem.  There is
  4044.  an inherent wait of one clock tick (1/50 or 1/60 second, per your LTC)
  4045.  to ensure an echo is not missed.  If this remains too fast for a modem
  4046.  additional delay between each char may be specified in ticks:
  4047.  
  4048.     Kermit-11>SET DIAL WAKE-RATE 5
  4049.  
  4050. 3 WAKE-STRING
  4051.  
  4052.  Defines the wakeup (initialization) string sent to the modem to place
  4053.  it in the ready-to-dial-out state:
  4054.  
  4055.     Kermit-11>SET DIAL WAKE-STRING \005\015
  4056.     Kermit-11>SET DIAL WAKE-STRING AT E1 Q0 S0=0 S7=255 V1 %X \015
  4057.  
  4058. 2 DTR
  4059.  
  4060.  Synonym for HANGUP.  May also be used to raise DTR.
  4061.  
  4062. 2 DUPLEX
  4063.  
  4064.  Permits local echo in the CONNECT mode, which is useful when the system
  4065.  to which you're connected doesn't return what's typed at it (not likely
  4066.  in the present era).  The options here are HALF (local echo on) or FULL
  4067.  (echo from the remote, the default).  SHOW CONSOLE displays its status.
  4068.  
  4069. 2 END-OF-LINE
  4070.  
  4071.  The END-OF-LINE parameter is the ASCII character used as a
  4072.  line terminator for all packets sent to and  received from
  4073.  the other Kermit.  This is normally not changed.  See HELP
  4074.  ASCII for octal values.
  4075.  
  4076.     Kermit-11>SET END octal-value-of-char
  4077.  
  4078. 2 EOF
  4079.  
  4080.  Determines action taken at the end of a command file, or when an error
  4081.  occurs after Kermit-11 has been run with UCL.  SET EOF EXIT terminates
  4082.  Kermit-11 and exits to the monitor, and NOEXIT (the default) keeps the
  4083.  program active.  SET EOF is ignored for the init (KRT.INI) file.
  4084.  
  4085. 2 ESCAPE
  4086.  
  4087.  This sets the escape character used to prefix commands while in the
  4088.  CONNECT mode.  The default is Ctrl-\ (octal 34).  It is a good idea
  4089.  to set this to something which is not used (at least not very much)
  4090.  on the system to which you'll be connecting.  Check  HELP ASCII for
  4091.  a list of octal values.
  4092.  
  4093.     Kermit-11>SET ESC octal-value-of-char
  4094.  
  4095. 2 FILE-TYPE
  4096.  
  4097.  When it's started Kermit-11 defaults to automatically getting a file
  4098.  type from the BINARY-TYPE list when sending  or  incoming attributes
  4099.  if receiving.   Some Kermits may not accommodate this, in which case
  4100.  it's necessary to manually SET a particular FILE-TYPE, and match the
  4101.  BLOCK-CHECK as well, on both Kermits before continuing.
  4102.  
  4103.  The file type ASCII should be used to for text files which are to be
  4104.  used as text files.  The file type BINARY should  be used for binary
  4105.  files, such as save images, in which bit 7 must not be stripped when
  4106.  transferred.  The file type  DEC-Multinational  may be used for text
  4107.  files containing 8-bit chars if it is supported on the other end.
  4108.  
  4109.  RT-11 text uses the <cr><lf> line terminator which makes it possible
  4110.  to set the binary mode on KRT and text mode on the foreign Kermit so
  4111.  8-bit text may be exchanged.  A file with unexpected 8-bit data will
  4112.  make itself known when the first packet containing it is NAKed until
  4113.  the transfer fails.
  4114.  
  4115.  HELP Binary-Files contains additional useful info of a more general
  4116.  nature.
  4117.  
  4118.  Once a FILE-TYPE is SET that aspect of exchanging file attributes is
  4119.  superseded by the designated type  regardless of whatever remains on
  4120.  with the rest of attribute processing.  SET FILE AUTO to restore the
  4121.  default.  SHOW FILE displays the current type.
  4122.  
  4123.     Kermit-11>SET FILE ASCII
  4124.     Kermit-11>SET FILE BINARY
  4125.     Kermit-11>SET FILE DEC-MULTINATIONAL
  4126.     Kermit-11>SET FILE AUTO
  4127.  
  4128. 3 ASCII
  4129.  
  4130.  Force the file type to ASCII, for 7-bit text files.  For
  4131.  text files containing 8-bit chars use DEC-MULTINATIONAL,
  4132.  if supported by the other Kermit, or if not, use BINARY.
  4133.  You must explicitly set the text mode on the other end.
  4134.  
  4135.  SET FILE AUTO restores automatic ASCII/Binary selection.
  4136.  
  4137. 3 AUTO
  4138.  
  4139.  Decide if a file should be sent in the binary mode as determined
  4140.  from an internal list of binary file types and use any type data
  4141.  found in an incoming file's attributes.
  4142.  
  4143.  Setting the FILE-TYPE to any particular value overrides both the
  4144.  send and receive automatic type selection.
  4145.  
  4146. 3 BINARY
  4147.  
  4148.  Force the file type to BINARY, for non-text files.  If parity is set to
  4149.  anything besides NONE, the other Kermit must support eight bit quoting.
  4150.  
  4151.  SET FILE AUTO restores automatic ASCII/Binary selection.
  4152.  
  4153. 3 CREATE-SIZE
  4154.  
  4155.  The largest file RT-11 can open without specifying a particular size
  4156.  is half the biggest piece of contiguous free space.  When talking to
  4157.  a Kermit that doesn't support passing the file size with attributes,
  4158.  SET CREATE-SIZE may be used to get a file that otherwise wouldn't be
  4159.  possible.  If your largest free space is 3000 blocks and you need to
  4160.  get a 2499 block file:
  4161.  
  4162.     Kermit-11>SET FIL CRE 2499
  4163.  
  4164.  Note that a SET size supersedes a received attribute value.
  4165.  
  4166.     Kermit-11>SET FIL CRE 0    ; default, restores size attribute
  4167.  
  4168.  This parameter is cleared (reset to its default) after the next open
  4169.  (.enter) of ANY kind, and thus may also be used to set the size of a
  4170.  log file.  Conversely, if meant to be used otherwise it shouldn't be
  4171.  be set until AFTER a log file has been opened.
  4172.  
  4173.  One may also explicitly specify a size via the FILENAME[size] syntax
  4174.  where "size" is expressed as a decimal number of blocks.  This takes
  4175.  precedence over a SET FILE CREATE value, which will still be cleared
  4176.  on the next open regardless if it is then ignored because the CSISPC
  4177.  parameter was passed and used instead.
  4178.  
  4179.     Kermit-11>LOG TST[77] PACK   ; allocates 77 blocks to TST.LOG
  4180.  
  4181. 3 CSI-PARSING
  4182.  
  4183.  Determines whether multiple file specs provided to the local GET and
  4184.  SEND commands delimited by commas are parsed by the real CSISPC call
  4185.  (limit is six arguments) or by a software emulation (limited only by
  4186.  command line length) useful when the other Kermit chokes on commas.
  4187.  
  4188.     Kermit-11>SET FILE CSI EMULATED
  4189.     Kermit-11>SET FILE CSI REAL    ; the default
  4190.  
  4191.  Directory listings and remote file name strings are always parsed by
  4192.  the real RT-11 Command String Interpreter.
  4193.  
  4194. 3 DEC-MULTINATIONAL
  4195.  
  4196.  Under RT-11 this is functionally the same as the BINARY type, and is
  4197.  provided here for compatibility with other systems where it serves a
  4198.  useful purpose.  DEC-Multinational is for text files (using carriage
  4199.  control) with 8-bit records.
  4200.  
  4201.  SET FILE AUTO restores automatic ASCII/Binary selection.
  4202.  
  4203. 3 FIXED
  4204.  
  4205.  Synonym for SET FILE BINARY.
  4206.  
  4207. 3 IMAGE
  4208.  
  4209.  Synonym for SET FILE BINARY under RT-11.
  4210.  
  4211. 3 NAMING
  4212.  
  4213.  Determines the action taken on received and sent file names with
  4214.  respect to node names, devices and directories contained in them.
  4215.  This includes upper case conversion for REMOTE command arguments.
  4216.  
  4217. 4 CONVERTED
  4218.  
  4219.  Allows removal of node names, devices and directories from file names
  4220.  so as not to bomb when receiving files from VMS, Unix, networks, etc,
  4221.  and also strips the same from a name sent.  This is the default.
  4222.  
  4223. 4 FULL
  4224.  
  4225.  Pass entire file specification, including node names and directories.
  4226.  It's not a good idea to use this mode when connected to a VMS or Unix
  4227.  system due to the relatively limited nature of RT-11 file names.
  4228.  
  4229. 4 LOWER-CASE
  4230.  
  4231.  Pass file names to the remote system exactly as typed, sans conversion
  4232.  of alphabetic characters to upper case only, including  REMOTE command
  4233.  arguments.  This is most useful when it's Unix on the other end.
  4234.  
  4235. 4 NOLOWER-CASE
  4236.  
  4237.  Convert all alphabetic characters in file names passed to the called
  4238.  system to upper case (the default).  This is provided to restore the
  4239.  default operation after having SET FILE NAMING LOWER-CASE.  Includes
  4240.  arguments to REMOTE commands.
  4241.  
  4242. 3 NOPROTECT
  4243.  
  4244.  Allows Kermit-11 to accept files regardless if the file then exists
  4245.  on the receiving system, the default.  See HELP SET FILE PROTECT if
  4246.  you wish to retain existing files.  In no case will Kermit ever zap
  4247.  a file protected via PIP (rename/protect).
  4248.  
  4249. 3 NOREPLACE
  4250.  
  4251.  Synonym for SET FILE PROTECT.
  4252.  
  4253. 3 NOVOLUME-VERIFY
  4254.  
  4255.  Normally Kermit-11 checks the directory header of a disk to verify it
  4256.  most likely contains a valid file structure before trying to read the
  4257.  directory.  If for some reason your disk doesn't contain the standard
  4258.  data at offset 760 in the header, Kermit will not read the directory.
  4259.  SET FILE NOVOL bypasses this test.
  4260.  
  4261. 3 PROTECT
  4262.  
  4263.  Forces Kermit-11 to bomb a incoming file  when one of the same name
  4264.  then exists.   The main use of this is to resume getting a group of
  4265.  files (as in KRT*.*) having lost the connection  after transferring
  4266.  some of them.  If protection is set, any files already gotten won't
  4267.  be again.  This assumes the sending Kermit can reject a single file
  4268.  in a possible group.  When using long packets be advised the create
  4269.  is not attempted until the first data packet has been received, and
  4270.  this may take several seconds at slower speeds.  Files protected by
  4271.  PIP (ren/prot) can not be deleted by Kermit.
  4272.  
  4273.  SHOW FILE displays the status of Kermit's file protection.
  4274.  
  4275. 3 REPLACE
  4276.  
  4277.  Synonym for SET FILE NOPROTECT.
  4278.  
  4279. 3 TEXT
  4280.  
  4281.  Synonym for SET FILE ASCII.
  4282.  
  4283. 3 TYPE
  4284.  
  4285.  SET FILE TYPE xxx is the same as the SET FILE xxx, the keyword TYPE
  4286.  is ignored but provides compatibility with other implementations of
  4287.  Kermit.
  4288.  
  4289. 3 VOLUME-VERIFY
  4290.  
  4291.  Check the directory header of a disk to verify that it contains a
  4292.  valid RT-11 file structure before trying to read it (the default).
  4293.  DECRT11 and DECVMSEX are acceptable headers, otherwise you may SET
  4294.  FILE NOVOL to disable this check (for "foreign" floppies).
  4295.  
  4296. 3 WILDCARDS
  4297.  
  4298.  This does not alter the operating system parameter of the same name,
  4299.  but does control how Kermit evaluates file names, and is provided to
  4300.  allow getting files having names with a leading dot as are common in
  4301.  Unix.  In particular this permits renaming such files, by specifying
  4302.  an output file name in the GET command.  Example -
  4303.  
  4304.     Kermit-11>GET .bash_profile bash.pro
  4305.     ?KERMIT-11-E-Multiple files or wildcarding not supported here
  4306.     ?KERMIT-11-E-Syntax is GET file.typ [dev:][asfile.new]
  4307.     Kermit-11>SET WILDCARDS EXPLICIT
  4308.     Kermit-11>GET .bash_profile bash.pro
  4309.     Kermit: X.BASH_PROFILE renamed to BASH.PRO
  4310.     [...]
  4311.     Kermit-11>SET WILDCARDS IMPLICIT  ; restore the default
  4312.  
  4313. 2 FLOW-CONTROL
  4314.  
  4315.  Ordinarily RT-11 does not support hardware flow control, however it
  4316.  has been added to (and is available ONLY with) the KM handler.  You
  4317.  then have two choices:
  4318.  
  4319.     Kermit-11>SET FLOW-CONTROL RTS/CTS    ; do it in hardware
  4320.     Kermit-11>SET FLOW-CONTROL XOFF        ; do it in software
  4321.     Kermit-11>SHOW LINE            ; display what it is
  4322.  
  4323.  Selecting software flow control forces on control character quoting
  4324.  for ^Q, ^S and their 8-bit counterparts.
  4325.  
  4326.  Note: Your modem, port and cable must all accommodate AND be set up
  4327.  to actually use which ever type of flow control is selected.
  4328.  
  4329. 2 HANDSHAKE
  4330.  
  4331.  One may use a quoted literal character, as in SET HAN '?
  4332.  or SET HAN "?,  or select one of the following options.
  4333.  
  4334.  See HELP SEND XON if you need to prefix outgoing packets
  4335.  with a ^Q.
  4336.  
  4337. 3 CR
  4338.  
  4339.  Use the carriage return as the handshaking character.
  4340.  
  4341. 3 NONE
  4342.  
  4343.  Cancels any active handshaking.
  4344.  
  4345. 2 HOME
  4346.  
  4347.  Modifies the home directory name to the specified device.
  4348.  
  4349. 2 INCOMPLETE-FILE-DISPOSITION
  4350.  
  4351.  Allows determination of what is done with a file that is not completely
  4352.  received.  If the disposition is KEEP, all files received will be kept,
  4353.  even if only some fraction of the file is received.  If the disposition
  4354.  is DISCARD (the default) anything not completely received is discarded.
  4355.  If the other Kermit supports the  "D"  (discard)  byte in the "Z" (EOF)
  4356.  packet, a file skipped or aborted when sending from this Kermit will be
  4357.  treated according to this parameter as SET on the OTHER Kermit.
  4358.  
  4359.     Kermit-11>SET INCOMPLETE-FILE-DISPOSITION action
  4360.  
  4361.  Where 'action' is either DISCARD or KEEP.
  4362.  
  4363. 2 LD:
  4364.  
  4365.  The only option available is SET LD EMPTY, which dismounts all
  4366.  mounted logical disks, under TSX-Plus V6.3 and above only.
  4367.  
  4368. 2 LINE
  4369.  
  4370.  Selects a default device for transfers and CONNECT.  SET LINE TT
  4371.  places Kermit-11 in its Remote Mode where packet I/O will be via
  4372.  the controlling terminal line.
  4373.  
  4374.  Besides TT only the following physical devices or an assigned or
  4375.  equivalent logical name, such as CL vs. CL0, are supported:
  4376.  
  4377.   CL0, CL1, CL2, CL3, CL4, CL5, CL6, CL7, KM, XC, XL
  4378.  
  4379.  Under RT-11 you should LOAD the handler before running Kermit.
  4380.  
  4381.  WARNING:  It is impossible to bomb a KM, XC or XL read completion
  4382.  routine, so once it has been assigned as the link the only way to
  4383.  deassign KM, XC or XL is to exit Kermit.
  4384.  
  4385.  The PRO/3xx with TSX-Plus attempts to attach CL0 or CL1 to Line 3
  4386.  when Kermit is started.
  4387.  
  4388.  Check HELP SET CL for a detailed description of using CL units on
  4389.  other hardware, particularly in a multi-user environment.
  4390.  
  4391.  If you intend to use a modem on the line you should SET SPEED and
  4392.  SET MODEM immediately afterwards so as to init the modem and stop
  4393.  it from answering a possible incoming call.   It will be restored
  4394.  to its idle state when exiting Kermit or modifying the line.
  4395.  
  4396. 2 LOCAL-ECHO
  4397.  
  4398.  Synonym for SET DUPLEX.  You may SET LOCAL-ECHO ON if the
  4399.  remote system won't echo what you type while CONNECTed to
  4400.  it.  SET LOCAL-ECHO OFF restores the default operation.
  4401.  
  4402. 2 LOGFILE
  4403.  
  4404.  Synonym for the LOGFILE command.
  4405.  
  4406. 2 LONG-PACKETS
  4407.  
  4408.  Options are ON, OFF, or you may SET NOLONG-PACKETS.  This  may be used
  4409.  to disable use of long packets regardless of packet length set locally
  4410.  or received  from  a remote system.  Setting the packet length greater
  4411.  than 94 on this end restores long packet operation if set off via this
  4412.  command.
  4413.  
  4414.  In the past, SET LONG ON merely restored use of long packets if they'd
  4415.  first been enabled by SET REC PAC nnn, and wouldn't in itself actually
  4416.  alter the packet length.  Here, it has been enhanced to accomplish and
  4417.  is equivalent to this:
  4418.  
  4419.     Kermit-11>SET BLOCK-CHECK-TYPE 3
  4420.     You may need to SET BLO 3 on the other Kermit
  4421.     Kermit-11>SET RECEIVE PACKET-LENGTH max-possible
  4422.  
  4423.  See HELP Long-Packets for more info.  SHOW PACKET to check the maximum
  4424.  available buffer length.
  4425.  
  4426. 2 MODEM-TYPE
  4427.  
  4428.  The SET MODEM command is used to establish the type of modem you are
  4429.  using for the DIAL command.  Enter SET MODEM ? for a current list of
  4430.  of pre-defined modem types.  See HELP SET DIAL for information about
  4431.  entering a USER-DEFINED modem structure.
  4432.  
  4433.  If a link device has been set first Kermit-11 will try to initialize
  4434.  the modem, taking it out of the auto-answer mode so it remains ready
  4435.  for calling out whilst Kermit is running.  This may involve a slight
  4436.  delay if the init string is long and/or the speed is slow, up to six
  4437.  seconds spanning three retries after which it times out.  If for any
  4438.  reason DTR is dropped while a modem is on-line Kermit-11 will reinit
  4439.  the modem immediately afterwards (except in the CONNECT mode when it
  4440.  waits until exiting) to preclude answering a possible incoming call.
  4441.  
  4442. 2 NOATTRIBUTES
  4443.  
  4444.  Disables automatic exchange of file attributes during transfers.
  4445.  Does not alter the state of any individual attribute control flag.
  4446.  
  4447. 2 NODEBUG
  4448.  
  4449.  Turns off all disk based debugging,  and closes the logfile.
  4450.  To turn off RPACK logging SET DEBUG NORPACK.  Debugging sent
  4451.  to TT may be offed via SET DEBUG NOTT.
  4452.  
  4453.  SET DEBUG NONE dumps ALL debugging.
  4454.  
  4455. 2 NOLONG-PACKETS
  4456.  
  4457.  Disables use of packets longer than 94 bytes.
  4458.  
  4459. 2 NOREPEAT-QUOTING
  4460.  
  4461.  Disables compression of repeated characters during file transfers.
  4462.  
  4463. 2 NOUPDATE
  4464.  
  4465.  Disables displaying packet statistics during transfers.  You'll
  4466.  need to do this if you've FRUNed Kermit and want do to any work
  4467.  in the background during file transfers.
  4468.  
  4469. 2 PARITY
  4470.  
  4471.  Specifies the type of parity on the remote link.  It  defaults to
  4472.  NONE and can also be ODD, EVEN, MARK or SPACE.  Parity generation
  4473.  is  done  via  software,  no  special hardware is used.  Software
  4474.  parity generation is restricted to 8-bit links only.  The format,
  4475.  if parity is set to anything besides NONE, will be 7 bits of data
  4476.  with the high bit set or cleared per the parity scheme in use.
  4477.  
  4478.  SPACE parity is essentially nothing in the hi bit and thus may be
  4479.  used to work around bottlenecks such as XL (a 7-bit handler).
  4480.  
  4481.  When parity (other than NONE) is used Kermit-11 will be forced to
  4482.  use 8-bit prefixing for binary files,  which  increases  transfer
  4483.  time.  This modified Kermit checks the need to prefix before each
  4484.  transaction, so one need not exit the program to turn it off.
  4485.  
  4486.  See HELP Parity for application info.
  4487.  
  4488. 2 PAUSE
  4489.  
  4490.  Specifies number of seconds to wait before each packet is sent.
  4491.  This may be useful under situations of heavy system load.
  4492.  
  4493. 2 PHONE
  4494.  
  4495.  Sets various parameters concerning dialing out via a modem.
  4496.  SHOW MODEM to display parameters other than phone numbers.
  4497.  
  4498. 3 ANSWER
  4499.  
  4500.  Causes the %A format effector to insert in the dial FORMAT string
  4501.  the command string to cause the modem to answer an incomming call
  4502.  as is required when call back security is in use at the remote.
  4503.  
  4504.  %A is included in the Hayes and Telebit modem definitions and may
  4505.  be used in the USER-DEFINED modem along with SET DIAL [NO]ANSWER.
  4506.  The other pre-defined modems here either revert to the idle state
  4507.  when carrier is lost, or the idle command must be issued manually
  4508.  from the terminal emulator (it can't be preset).
  4509.  
  4510.  When done SET PHONE NOASNWER will restore the default and prevent
  4511.  Kermit from inadvertently answering an incomming call.
  4512.  
  4513. 3 BLIND
  4514.  
  4515.  May be used if an appropriate dial formatting string and character
  4516.  sequence for selecting BLIND dialing are present in the definition
  4517.  for the modem in use.  The format effector for BLIND is %B.  Check
  4518.  SHOW MODEM to see if it's present.  This is cleared when the modem
  4519.  type is set, and thus must be (re-)enabled AFTERWARDS.
  4520.  
  4521. 3 NOANSWER
  4522.  
  4523.  Causes the %A format effector to insert in the dial FORMAT string
  4524.  a command string to prevent the modem from answering an incomming
  4525.  call.  Use to restore this default after having SET PHONE ANSWER.
  4526.  
  4527.  If you have a modem on-line when issuing this command Kermit will
  4528.  then re-initialize the modem so it actually becomes effective.
  4529.  
  4530. 3 NUMBER
  4531.  
  4532.  The SET PHONE NUMBER command allows you to associate a phone number
  4533.  with a symbolic name  for  later  use with the DIAL command.  These
  4534.  definitions may be placed in KRT.INI, and then referenced later:
  4535.  
  4536.     Kermit-11>SET PHONE NUMBER WORK 537-4411
  4537.  
  4538.  This allows Kermit to associate a tag name with a phone number for
  4539.  the DIAL command, as in the above example:
  4540.  
  4541.     Kermit-11>DIAL WORK
  4542.  
  4543.  This would cause Kermit to translate WORK to 537-4411, then dial it.
  4544.  Tag names must not begin with a 0 to 9 digit.  The  number buffer is
  4545.  shared with the USER-DEFINED modem.   If memory is insufficient, the
  4546.  value of ALSIZE in KRTMAC.MAC may be increased.
  4547.  
  4548.  SHOW PHONE displays a list of numbers set with this command.
  4549.  
  4550. 3 PULSE
  4551.  
  4552.  May be used if the required dial formatting effector and character
  4553.  sequence for selecting PULSE dialing are present in the definition
  4554.  for the modem in use.  The  format effector  for PULSE/TONE is %M.
  4555.  Check SHOW MODEM to determine its status.  SET MODEM-TYPE will NOT
  4556.  alter this (as it's expected this depends on the site) but it must
  4557.  be also included in the modem's definition or for the USER-DEFINED
  4558.  specified via SET DIAL PULSE <string>.
  4559.  
  4560. 3 TONE
  4561.  
  4562.  May be used if the required dial formatting effector and character
  4563.  sequence for selecting TONE dialing are  present in the definition
  4564.  for the modem in use.  The  format effector  for PULSE/TONE is %M.
  4565.  Check SHOW MODEM to determine its status.  SET MODEM-TYPE will NOT
  4566.  alter this (as it's expected this depends on the site) but it must
  4567.  be also included in the modem's definition or for the USER-DEFINED
  4568.  specified via SET DIAL TONE <string>.
  4569.  
  4570. 3 XMODE
  4571.  
  4572.  If you are using a "Hayes" style modem, its extended response mode may
  4573.  be altered or disabled via SET PHONE XMODE n, where n is a number from
  4574.  0 to 14 (or the word OFF), corresponding to the extended mode desired.
  4575.  The format effector for XMODE is %X.  SHOW  MODEM displays its current
  4576.  status if enabled.
  4577.  
  4578.  IMPORTANT NOTE:  This is a global function effective for ANY modem type
  4579.  but for the built-in modem types (as opposed to USER-DEFINED) this will
  4580.  only prevail when done AFTER setting the MODEM-TYPE.
  4581.  
  4582. 2 PROMPT
  4583.  
  4584.  Useful if you are using two Kermit-11s to talk to each other.
  4585.  By using the SET PROMPT command, you can change the prompt on
  4586.  either or both Kermits to something indicative of the systems
  4587.  in use.  The prompt string also prefixes error messages, sans
  4588.  the last byte if it is a ">".  Prompts may be up to 30 chars.
  4589.  
  4590.  A trailing space may be embedded by quoting the prompt string.
  4591.  
  4592.     Kermit-11>SET PROMPT "Kermit-11> "
  4593.  
  4594. 2 RANDOM
  4595.  
  4596.  Allows Kermit-11 to randomly generate checksum errors for testing
  4597.  error recovery of an attached Kermit.  SET SEED value  is used to
  4598.  start  the  pseudo  random number generator at a different point.
  4599.  This is used for debugging only.
  4600.  
  4601.     Kermit-11>SET SEED 1234
  4602.     Kermit-11>SET RANDOM ON
  4603.     Kermit-11>SET RANDOM OFF
  4604.  
  4605. 2 RECEIVE
  4606.  
  4607.  Alters various parameters concerning receiving packets.
  4608.  
  4609.     Kermit-11>SET REC parameter value
  4610.  
  4611. 3 PACKET-LENGTH
  4612.  
  4613.  This serves two purposes.  The first is to reduce incoming packet length
  4614.  in the event normal sized Kermit packets can  not  be passed through the
  4615.  communications circuit.  There could be, perhaps, some "black box" some-
  4616.  where in the link that has a very small buffer size.  This command would
  4617.  be used to reduce the size that the SENDING Kermit will use.
  4618.  
  4619.  Long-packets are also enabled by setting the receive packet length.  See
  4620.  HELP LONG-PACKETS for specific operational information.
  4621.  
  4622. 3 START-OF-PACKET
  4623.  
  4624.  Modifies the character used for the RECEIVE (only) start of packet
  4625.  to the specified octal-value from the default Ctrl-A.  Both  sides
  4626.  must support the new value as it can't be negotiated in transfers.
  4627.  
  4628.  The only reasons this should ever be changed are some piece of gear
  4629.  somewhere between the two Kermit programs will not pass through the
  4630.  Ctrl-A, or something similarly placed is echoing its input.  In the
  4631.  latter case, the  recipient  can  change the packet outbound packet
  4632.  prefix to be different from that of arriving  packets  so  the echo
  4633.  will be ignored.  See HELP ASCII for octal values.
  4634.  
  4635. 3 TIME-OUT
  4636.  
  4637.  This is the wait in seconds for a packet from the other Kermit, after
  4638.  which it will be considered missing and appropriate action taken.  If
  4639.  system loads are high or you are using a MNP protocol you may need to
  4640.  increase this (and the SEND TIME-OUT on the other Kermit).
  4641.  
  4642.  To disable SET RECEIVE TIME-OUT 0 (actually 65535. ticks).
  4643.  
  4644. 2 REPEAT-QUOTING
  4645.  
  4646.  One may SET REPEAT OFF or ON (default) to control character compression
  4647.  during packet transmission.  This might be necessary with older Kermits
  4648.  that do not support this part of the protocol.
  4649.  
  4650. 2 RETRY
  4651.  
  4652.  Sets the maximum number of times Kermit will try to send specific
  4653.  packets.  There are  two  retry  parameters,  one for the initial
  4654.  connection (the SEND-INIT or REC-INIT), the other comes into play
  4655.  after this init succeeds, governing all further data packets.
  4656.  
  4657.  The default value for the initial connection is 5, and 16 for all
  4658.  other packets.
  4659.  
  4660.     Kermit-11>SET RETRY type nn
  4661.  
  4662.  Where "type" is either INITIAL-CONNECTION (for initial connection
  4663.  packet) or PACKET (for all other packets), and "nn" is the number
  4664.  of retries (decimal) to attempt.  Legal values are 3 to 30.  SHOW
  4665.  RETRY to check the current settings.
  4666.  
  4667. 2 SEED
  4668.  
  4669.  Seeds a random number generator used to create packet errors for debugging.
  4670.  
  4671.     Kermit-11>SET SEED 4321  ; decimal number from 1 to 32767
  4672.  
  4673. 2 SEND
  4674.  
  4675.  Alter various parameters concerning packets sent.
  4676.  
  4677.     Kermit-11>SET SEND parameter value
  4678.  
  4679. 3 NOXON
  4680.  
  4681.  Disables prefixing packets with a ^Q (the default).
  4682.  
  4683. 3 PACKET-LENGTH
  4684.  
  4685.  This command may be used to reduce packet lengths in the event that
  4686.  normal sized Kermit packets will not pass through the data circuit.
  4687.  When Kermit-11 is started it defaults to the maximum possible size.
  4688.  Once set, it limits sent packets to the specified length regardless
  4689.  of what the other Kermit may request.  SHOW PACKET displays its SET
  4690.  or default value.
  4691.  
  4692.  LONG-PACKET operation is a completely separate function and must be
  4693.  enabled at and requested by the receiving Kermit.  More information
  4694.  is available via HELP LONG-PACKETS.
  4695.  
  4696. 3 PADCHARACTER
  4697.  
  4698.  The character used to delay the beginning of actual packet data.
  4699.  See also SET SEND PADDING.  See HELP ASCII for octal values.
  4700.  
  4701.     Kermit-11>SET SEN PADCHAR <octal-value>
  4702.  
  4703. 3 PADDING
  4704.  
  4705.  The number of pad characters used to delay the beginning of each
  4706.  packet sent.  One must first SET SEN PADCHAR <octal-value>.
  4707.  
  4708.     Kermit-11>SET SEN PADDING <decimal-#-of-pad-chars>
  4709.  
  4710. 3 START-OF-PACKET
  4711.  
  4712.  Modifies the character used for the SEND (only) start of packet to
  4713.  the specified  octal-value  from the default Ctrl-A.  Both Kermits
  4714.  must support the new value as it can't be negotiated in transfers.
  4715.  
  4716.  The only reasons this should ever be changed are some piece of gear
  4717.  somewhere between the two Kermit programs will not pass through the
  4718.  Ctrl-A, or something similarly placed is echoing its input.  In the
  4719.  latter case, the  recipient  can  change the packet outbound packet
  4720.  prefix to be different from that of arriving  packets  so  the echo
  4721.  will be ignored.  See HELP ASCII for octal values.
  4722.  
  4723. 3 TIME-OUT
  4724.  
  4725.  This is the wait in seconds for a result from the other Kermit, after
  4726.  which it will be considered missing and appropriate action taken.  If
  4727.  system loads are high or you are using a MNP protocol you may need to
  4728.  increase this (and the RECEIVE TIME-OUT on the other Kermit).  When a
  4729.  slow speed and long packets are in use be aware that the timer starts
  4730.  after the write is queued, which may be a few seconds before the last
  4731.  byte of data is actually shipped out.  A longer time-out value should
  4732.  be used if this presents a problem.
  4733.  
  4734.  To disable SET SEND TIME-OUT 0 (actually 65535. ticks).
  4735.  
  4736. 3 XON
  4737.  
  4738.  Prefixes packets with ^Q.  SET SEN NOXON returns to non-prefixed operation.
  4739.  
  4740. 2 SERVER
  4741.  
  4742.  Controls the period at which an idle server times out and sends a NAK.
  4743.  
  4744.     Kermit-11>SET SER TIME-OUT secs    ; default is 60 secs, max is 1092
  4745.     Kermit-11>SET SER NOTIME-OUT    ; the max, 21.8/18.2 mins at 50/60Hz
  4746.  
  4747. 2 SL
  4748.  
  4749.  Allows control of the Single-Line Editor:
  4750.  
  4751.     Kermit-11>SET SL ON,KED    ; turns SL on, enables Keypad mode
  4752.     Kermit-11>SET SL NOKED    ; offs Keypad mode
  4753.     Kermit-11>SET SL OFF    ; turns SL off
  4754.  
  4755.  See HELP SL-Editor for operational details.
  4756.  
  4757. 2 SPEED
  4758.  
  4759.  Sets the line speed for the device specified with the SET LINE command if
  4760.  the hardware allows it, but is supported only via the CL and KM handlers.
  4761.  If a modem is on-line when the speed is altered,  Kermit will then try to
  4762.  re-initialize the modem at the new speed, unless a carrier is present, in
  4763.  which case no further action is taken.
  4764.  
  4765.  Supported speeds (hardware dependent): 75, 110, 134 ,150, 300 ,600, 1200,
  4766.  1800, 2000, 2400, 3600, 4800, 7200, 9600, 19200, 38400.
  4767.  
  4768.     Kermit-11>SET SPEED 2400
  4769.  
  4770. 2 START-OF-PACKET
  4771.  
  4772.  Modifies the start-of-packet to the specified octal-value from the
  4773.  default Ctrl-A for BOTH send and receive operations.  Both Kermits
  4774.  must support the new value as it can't be negotiated in transfers.
  4775.  Send and receive SOHs may also be SET individually.
  4776.  
  4777. 2 TERMINAL
  4778.  
  4779.  Controls display formatting.  Kermit checks RT-11 for its SET TT
  4780.  [NO]SCOPE status or TSX-Plus for a terminal type and uses it for
  4781.  the default terminal.  This may be changed from Kermit's command
  4782.  line:
  4783.  
  4784.     Kermit-11>SET TT NOSCOPE  ; printing terminal
  4785.     Kermit-11>SET TT TTY      ; tube terminal, but not a VT-xxx
  4786.     Kermit-11>SET TT VT100      ; itself
  4787.     Kermit-11>SET TT SCOPE      ; here same as VT100
  4788.     Kermit-11>SET TT VT200      ; itself
  4789.  
  4790.  SET CONSOLE alters terminal emulator (the CONNECT mode) parameters.
  4791.  
  4792.  Informational messages may be offed by SET TERM QUIET.  The default
  4793.  is NOQUIET, allowing everything to be displayed.  See also HELP SET
  4794.  UPDATE.
  4795.  
  4796.  An init file is not usually echoed.  Check HELP INSTALL if you wish
  4797.  to change this.
  4798.  
  4799. 2 TT:
  4800.  
  4801.  Synonym for SET TERMINAL.
  4802.  
  4803. 2 UPDATE
  4804.  
  4805.  Controls the frequency at which the packet count display is updated.
  4806.  The default is 1, displaying each packet.  SET UPDATE 0 will disable
  4807.  all packet count logging, whereas  SET UPDATE n  updates the display
  4808.  every "n" packets.  SET NOUPDATE is a synonym for SET UPDATE 0.  Use
  4809.  this when Kermit is FRUNed and you want to work in the background.
  4810.  
  4811. 2 VLSWCH
  4812.  
  4813.  Determines the operation of ^W during the CONNECT mode under TSX-Plus.
  4814.  SET VLSWCH LOCAL to control one's own machine (the default), or REMOTE
  4815.  to pass ^W as a normal character, and suspend local window processing.
  4816.  The TSX-Plus print window key (^B) will track the operation of ^W.
  4817.  
  4818. 1 SHOW
  4819.  
  4820.  The SHOW command will display the parameters Kermit uses to interpret
  4821.  and process commands and data, some of which are modifiable with SET.
  4822.  
  4823.     Kermit-11>SHOW parameter
  4824.     Kermit-11>SHOW        ; defaults to "SHOW ASSIGNS"
  4825.  
  4826. 2 ALL
  4827.  
  4828.  As the name implies, displays everything that can be shown.
  4829.  
  4830. 2 ASSIGNS
  4831.  
  4832.  Displays the current home directory and default device.
  4833.  
  4834. 2 ATTRIBUTES
  4835.  
  4836.  Displays the current status of attribute packet processing.
  4837.  Note that ATTRIBUTES must be set ON (default) regardless of
  4838.  the individual status of each before they will be processed
  4839.  by this program, including their display here.
  4840.  
  4841. 2 BAUD
  4842.  
  4843.  Synonym for SHOW LINE, which includes the baud rate when available.
  4844.  
  4845. 2 BINARY-TYPE
  4846.  
  4847.  Lists file types which are considered to be binary (8-bit).
  4848.  
  4849. 2 BLOCK-CHECK-TYPE
  4850.  
  4851.  Displays the type of checksum in use.
  4852.  
  4853. 2 CL:
  4854.  
  4855.  Displays current contents of PORTS and UNITS strings.
  4856.  SHOW LINE displays the current status of CL, if it is
  4857.  then in use.
  4858.  
  4859. 2 CONSOLE
  4860.  
  4861.  Displays parameters asscoiated with Kermit's terminal emulator
  4862.  (the CONNECT mode).  Use  SHOW  TERMINAL  to see your terminal
  4863.  parameters.
  4864.  
  4865. 2 CONTROL-PREFIXING
  4866.  
  4867.  Displays the current control prefix and a table of all control-character
  4868.  values showing 1 for each that will be prefixed and 0 for each that will
  4869.  not.
  4870.  
  4871. 2 DATE
  4872.  
  4873.  Displays today's date.  This program supports dates through 31-Dec-2099.
  4874.  
  4875. 2 DAYTIME
  4876.  
  4877.  Displays the current date and time.
  4878.  
  4879. 2 DEBUG
  4880.  
  4881.  Shows debugging and logging status, and random error generation parameters.
  4882.  
  4883. 2 DEFAULT
  4884.  
  4885.  Displays the default disk device.
  4886.  
  4887. 2 DELAY
  4888.  
  4889.  Displays the number of seconds delay before
  4890.  SEND begins when invoked in the remote mode.
  4891.  
  4892. 2 DIAL
  4893.  
  4894.  Displays the modem type selected and its associated parameters.
  4895.  Unused or unset options aren't listed which renders the display
  4896.  easier to behold.
  4897.  
  4898.  Dial or wakeup string format effectors may be included, current
  4899.  strings for which (if enabled) are displayable via SHO MODEM:
  4900.  
  4901.     %A - SET PHONE [NO]ANSWER string
  4902.     %B - Dial blind
  4903.     %M - Mode, pulse or tone
  4904.     %P - Insert pause string
  4905.     %S - Phone number string, passed by DIAL command
  4906.     %X - Insert Hayes xmode string, unless set off
  4907.  
  4908. 2 DTR
  4909.  
  4910.  Synonym for SHOW LINE, which includes DTR status when available.
  4911.  
  4912. 2 DUPLEX
  4913.  
  4914.  Synonym for SHOW CONSOLE, which includes local echo status.
  4915.  
  4916. 2 END-OF-LINE
  4917.  
  4918.  Synonym for SHOW PARAMETERS, which includes the EOL chars.
  4919.  
  4920. 2 EOF
  4921.  
  4922.  Displays action taken at the end of a command file, or when an error
  4923.  occurs after Kermit-11 has been run with UCL.  HELP SET EOF explains
  4924.  the available options.
  4925.  
  4926. 2 ESCAPE
  4927.  
  4928.  Shows the escape character used to prefix commands when in the CONNECT mode.
  4929.  
  4930. 2 FILE-TYPE
  4931.  
  4932.  Show the current file mode (ASCII, AUTO or BINARY) and various file options.
  4933.  
  4934. 2 FLOW-CONTROL
  4935.  
  4936.  Synonym for SHOW LINE, which includes the flow control type when available.
  4937.  
  4938. 2 HANDSHAKE
  4939.  
  4940.  Displays the current handshaking character.
  4941.  
  4942. 2 HOME
  4943.  
  4944.  Synonym for SHOW DEFAULTS, which includes the home disk.
  4945.  
  4946. 2 INCOMPLETE-FILE-DISPOSITION
  4947.  
  4948.  Shows what will be done with an arriving file when the transfer fails
  4949.  before finishing.  When this Kermit is the remote your  local  Kermit
  4950.  must support the "D" (discard) byte in the "Z" (EOF) packet if a file
  4951.  skipped or aborted there is to be actually discarded when this is set
  4952.  to discard here.
  4953.  
  4954. 2 LD:
  4955.  
  4956.  Synonym for SHOW SUBMOUNTS (TSX-Plus V6.2 and up only).
  4957.  
  4958. 2 LINE
  4959.  
  4960.  Displays operating parameters for the current link device.
  4961.  If the current SET speed has been modified (as might occur
  4962.  via fallback) it's listed as CURRENT/SET, as in 2400/9600.
  4963.  The SET speed is restored if another call is initiated.
  4964.  
  4965. 2 LOCAL-ECHO
  4966.  
  4967.  Synonym for SHOW CONSOLE, which includes the local echo status.
  4968.  
  4969. 2 LOGFILE
  4970.  
  4971.  Synonym for SHOW DEBUG, which includes the log file status.
  4972.  
  4973. 2 LONG-PACKETS
  4974.  
  4975.  Synonym for SHOW PACKETS, which includes long packets parameters.
  4976.  
  4977. 2 MEMORY
  4978.  
  4979.  Display amount of memory free to load handlers under RT-11.
  4980.  
  4981. 2 MODEM-TYPE
  4982.  
  4983.  Synonym for SHOW DIAL.  Note that SET DIAL is for a USER-DEFINED
  4984.  modem type, and SET MODEM selects from a pre-defined database.
  4985.  
  4986. 2 PACKETS
  4987.  
  4988.  Displays current SOH, EOL and packet lengths.
  4989.  
  4990. 2 PARAMETERS
  4991.  
  4992.  Displays various send, receive and packet parameters.
  4993.  
  4994. 2 PARITY
  4995.  
  4996.  Shows the software parity scheme in use.
  4997.  
  4998. 2 PAUSE
  4999.  
  5000.  Displays the pause time before sending each packet.
  5001.  
  5002. 2 PHONE
  5003.  
  5004.  Displays the current list of numbers entered via SET PHONE NUMBER,
  5005.  and the last number dialed (if one exists).
  5006.  
  5007.  Other SET PHONE parameters may be displayed via SHOW DIAL, as they
  5008.  are all modem-related.
  5009.  
  5010. 2 RANDOM
  5011.  
  5012.  Synonym for SHOW DEBUG, which includes the random error generator status.
  5013.  
  5014. 2 RECEIVE
  5015.  
  5016.  Synonym for SHOW PARAMETERS, which includes receive data.
  5017.  
  5018. 2 REPEAT-QUOTING
  5019.  
  5020.  Displays the current status of repeated character quoting.
  5021.  
  5022. 2 RETRY
  5023.  
  5024.  Lists the current INITIAL-CONNECTION and PACKET retry limits.
  5025.  
  5026. 2 SEED
  5027.  
  5028.  Synonym for SHOW DEBUG, which includes the 16-bit seed.
  5029.  
  5030. 2 SEND
  5031.  
  5032.  Synonym for SHOW PARAMETERS, which includes send data.
  5033.  
  5034. 2 SERVER
  5035.  
  5036.  Displays the current server time-out.
  5037.  
  5038. 2 SL
  5039.  
  5040.  Displays the SL (Single Line, the command line) editor status.
  5041.  
  5042. 2 SPEED
  5043.  
  5044.  Synonym for SHOW LINE, which includes the speed when available.
  5045.  
  5046. 2 START-OF-PACKET
  5047.  
  5048.  Displays the current SOH (start-of-packet) character.
  5049.  
  5050. 2 SUBMOUNTS
  5051.  
  5052.  Lists currently mounted logical devices, under TSX-Plus V6.2 and up only.
  5053.  
  5054. 2 TERMINAL
  5055.  
  5056.  Displays the current Kermit terminal type and associated parameters.
  5057.  Use SHOW CONSOLE for terminal emulator (CONNECT mode) details.
  5058.  
  5059. 2 TIME
  5060.  
  5061.  Displays the current time of day as hours, minutes, seconds and ticks past
  5062.  midnight.  This program supports either 50Hz or 60Hz clock rates, and will
  5063.  include which it thinks is in use immediately following the time.
  5064.  
  5065. 2 TIME-OUTS
  5066.  
  5067.  Displays the current packet time-out in seconds.
  5068.  
  5069. 2 TT:
  5070.  
  5071.  Synonym for SHOW TERMINAL.
  5072.  
  5073. 2 UPDATE
  5074.  
  5075.  Displays number of packets between display updates of counts of same.
  5076.  
  5077. 2 VERSION
  5078.  
  5079.  Displays current version and edit of this program.
  5080.  
  5081. 2 VLSWCH
  5082.  
  5083.  Displays the operation of ^W during the CONNECT mode under TSX-Plus.
  5084.  See HELP SET VLSWCH for details of its use.
  5085.  
  5086. 1 SL-Editor
  5087.  
  5088.  A basic Single Line Editor is available at the command line.  Most
  5089.  operations require a VT-100 terminal, although  SL  may be enabled
  5090.  regardless of terminal type.
  5091.  
  5092.     Kermit-11>SET SL ON,KED    ; turns SL on, enables Keypad mode
  5093.     Kermit-11>SET SL NOKED    ; offs Keypad mode
  5094.     Kermit-11>SET SL OFF    ; turns SL off
  5095.  
  5096.  The last 10 command lines are stored.  This editor flips direction
  5097.  when hitting either end of the line.  Note the  undelete-word  and
  5098.  undelete-line routines share a common buffer, and with the non-EIS
  5099.  assembly the number of stored commands is limited to 3.
  5100.  
  5101.  A list of currently defined function keys is available at any time
  5102.  during entry of a command via  the  PF2  key,  and the contents of
  5103.  your command line buffer will be restored and retyped afterwards.
  5104.  
  5105. 2 Function-Keys
  5106.  
  5107.     Left arrow   =    cursor left
  5108.     Right arrow  =    cursor right
  5109.     Up arrow     =    recall previous command lines
  5110.     Down arrow   =    move back after up arrow use
  5111.     Delete         =    delete char to left of cursor
  5112.     Line Feed    =  delete word to left of cursor
  5113.     PF1          =  prefix to undelete char, word, or line
  5114.     PF2          =  prints this list then retypes command line
  5115.     PF4          =  delete line, from cursor to end
  5116.     Ctrl-A       =  toggle insert mode off/on
  5117.     Ctrl-B       =  recall previous command lines
  5118.     Ctrl-C         =    cancel command
  5119.     Ctrl-D       =  cursor left
  5120.     Ctrl-E       =  recall previous command lines
  5121.     Ctrl-F       =  cursor right
  5122.     Ctrl-R         =    retype line
  5123.     Ctrl-U         =    delete line, from top to char left of cursor
  5124.     Ctrl-V       =  move back after up arrow/^B/^E use
  5125.     Ctrl-W       =  retype line
  5126.  
  5127. 2 KED-Mode-Functions
  5128.  
  5129.     Left arrow   =    cursor left
  5130.     Right arrow  =    cursor right
  5131.     Up arrow     =    recall previous command lines
  5132.     Down arrow   =    move back after up arrow use
  5133.     Tab         =    toggle insert mode off/on
  5134.     Backspace    =    delete char to left of cursor
  5135.     Delete         =    delete char to left of cursor
  5136.     Keypad Enter =    return
  5137.     Keypad 0     =    goto start of line
  5138.     Keypad 1     =  move one word
  5139.     Keypad 2     =    goto end of line
  5140.     Keypad 3     =  move one char
  5141.     Keypad 4     =  set ADVANCE mode
  5142.     Keypad 5     =  set BACKUP mode (default)
  5143.     Keypad ,     =  delete char
  5144.     Keypad -     =  delete word starting from cursor
  5145.     Line Feed    =  delete word to left of cursor
  5146.     PF1          =  prefix to undelete char, word, or line
  5147.     PF2          =  prints this list then retypes command line
  5148.     PF4          =  delete line, from cursor to end
  5149.     Ctrl-C         =    resets recall pointer
  5150.     Ctrl-R         =    retype line
  5151.     Ctrl-U         =    delete line, from top to char left of cursor
  5152.  
  5153. 1 SPACE
  5154.  
  5155.  Shows a summary of used and free disk space available.
  5156.  A device or files argument is optional.
  5157.  
  5158. 1 STATUS
  5159.  
  5160.  Displays packet transaction statistics.  Packet types are -
  5161.  
  5162.  A = Attributes                     K = Kermit (remote) command
  5163.  B = Break transmission (EOT)       N = Negative acknowledgment (NAK)
  5164.  C = Host (remote) command          R = Receive file init
  5165.  D = Data packet                    S = Send file init
  5166.  E = Error                          T = Time out (internal)
  5167.  F = File header (name)             X = Extended reply
  5168.  G = Generic (remote) command       Y = Acknowledgment (ACK)
  5169.  I = Server init                    Z = End of file (EOF)
  5170.  
  5171. 1 TAKE
  5172.  
  5173.  The TAKE command tells Kermit-11 to execute commands from the specified
  5174.  file.  The RT-11 syntax "@file" may also be used:
  5175.  
  5176.     Kermit-11>TAKE file
  5177.     Kermit-11>@file
  5178.  
  5179.  "File" is any normal RT-11 file specification.  The default type is .COM
  5180.  and if no device is given the logicals TAK, KRT, DK and SY will be tried
  5181.  in that order.  "!" or ";" may prefix comments in Kermit TAKE files, and
  5182.  all commands except control characters are supported.   Maximum  command
  5183.  line length is 132. bytes.
  5184.  
  5185. 1 TIME
  5186.  
  5187.  Displays the current time of day as hours, minutes, seconds and ticks past
  5188.  midnight.  This program supports either 50Hz or 60Hz clock rates, and will
  5189.  include which it thinks is in use immediately following the time.
  5190.  
  5191. 1 TRANSMIT
  5192.  
  5193.  Sends a file sans any protocol byte by byte, and echoes response to each.
  5194.  Speed is locked at 1 byte/tick.  This is useful to upload text files into
  5195.  a called  system's  message  editor.  Line feeds (which cause an unwanted
  5196.  newline as most systems append one to a return) are not sent.  When done,
  5197.  if the file was successfully transmitted Kermit reconnects to the remote,
  5198.  at which time the bell sounds but CONNECT's sign-on message is suppressed
  5199.  in order to leave the display and cursor position intact.
  5200.  
  5201. 1 TYPE
  5202.  
  5203.  Types files to your terminal.  Switches (/opt) are not implemented.
  5204.  When typing a binary file most non-printing characters are filtered
  5205.  to prevent  possible  interference  with one's terminal attributes.
  5206.  If the terminal type is VT100 or lower, the hi bit will be stripped
  5207.  from everything typed.  Use VT200 to see all eight bits.
  5208.  
  5209.     Kermit-11>TY GUIDE   ; default type is .LST
  5210.     Kermit-11>TY .MAC    ; type all .MAC files
  5211.     Kermit-11>TY *         ; type all .LST files
  5212.     Kermit-11>TY *.*     ; types the world..
  5213.  
  5214. 1 Upgrades
  5215.  
  5216.  This special version of Kermit-11 (for RT-11 and TSX-Plus) may be from
  5217.  time to time updated/upgraded, or various bugs may be found and fixed.
  5218.  New versions may be obtained from kermit.columbia.edu by anonymous ftp
  5219.  (kermit/b/krt*.*) or by calling the system on which the work is done:
  5220.  
  5221.     Host:             Billy's Place, Culver City, California
  5222.     Available:        24 hours, 3 lines, immediate access
  5223.     Phone:            +1.310.837.0892
  5224.     Logon (username): 1000
  5225.     Password:         moving_target
  5226.     Modem speeds:     9600 (V.32) and down, or PEP (modems are T-2500s)
  5227.     Protocols:        Kermit, VTCOM/TRANSF, Xmodem
  5228.  
  5229.  Access is free other than whatever it costs to place the call.  Any bug
  5230.  found will be fixed.  Please leave mail regarding same to account #1 on
  5231.  the above.  Also on-line here are the complete Kermit-11 T3.60 sources,
  5232.  along with a massive amount of RT-11 SIG and other public domain/gratis
  5233.  software.  Mail to youdelman@eisner.decus.org or billy@mix.com may also
  5234.  be used to report bugs.
  5235.  
  5236. 1 XMODEM
  5237.  
  5238.  Xmodem here supports either checksum or CRC error detection, however it
  5239.  only does so one file at a time, using 128 byte blocks, under TSX-Plus.
  5240.  Transmission is presently only on the controlling terminal (this Kermit
  5241.  must be the remote system) and is also SEND-only from here to the other
  5242.  system, because the TSX-Plus terminal handler does not pass nulls (zero
  5243.  bytes) to a running program.
  5244.  
  5245.  The Xmodem protocol requires an 8-bit path.  If this isn't the system's
  5246.  default, you must from KMON issue the command SET TT 8BIT,BITS=8 before
  5247.  running Kermit.  "BITS=8" is a hardware parameter and must be done on a
  5248.  primary line only.  Setting it on a subprocess may write garbage in the
  5249.  line-parameters word, rendering the line useless.
  5250.  
  5251.  Xmodem doesn't work under RT-11 because RT strips all terminal I/O data
  5252.  of the high order (parity) bit, thus preventing an 8-bit data path from
  5253.  being used.
  5254.  
  5255.