.*M* HELP file for: KERMIT .*T* .*A* The invocation syntax for CP-6 KERMIT is as follows: !KERMIT [cmd-file] [,default-file] [{ON|TO|OVER|INTO} ,dest] [( options [)]] .*B* The invocation parameters have the following meaning: cmd-file - is a CP-6 file containing KERMIT commands. default-file - is a file containing KERMIT commands that will be read automatically before most other commands are executed. This file is read through the F$DEFAULTS DCB and if the file name is not specified, it defaults to :KERMIT_INI. dest - is where KERMIT will output messages that would go to the screen by default. These messages are written through the M$LO DCB. options - one or more of the options/commands, separated by semicolons, listed in this help file. Note that if any commands (other than DONT GREET, DONT PROMPT, NO DEFAULTS and SILENT MODE) are specified on the invocation line, when the last such command is completed, KERMIT will exit rather than prompt for more commands. .*B* KERMIT uses the KERMIT protocol (developed at Columbia University) to provide reliable file transfers between two computers (at least one of which is CP-6) over an asynchronous communications line. Checksums and other control information are used to ensure (with high probability) error free transfers. This version of Kermit is written in PL-6; a PL/1-like implementation language available on the Honeywell CP-6 operating system. This Kermit contains all of the "basic" Kermit features and several optional/advanced features. Some of the optional features are suggested in the Kermit User's Guide and/or Kermit Protocol Manual, while others where implemented to provide added flexibility on CP-6. The following table briefly summarizes the capabilities of this version of Kermit. .*B* Features this Kermit has or can do: Transfers text files Transfers binary files Send file groups (wildcarding) File overwrite protection Timeouts 8th-bit prefixing Repeat count prefixing Transaction logging Debugging facility Acts as a server Talks to a server (limited) Automatically reads default commands from a file Reads commands from a file Help for each of the commands Graceful handling of interrupted group transfers Features not included in this version: Advanced server commands Extended block checks (2 and 3 byte checks) Handling file attributes .*K* '!' IBEX !command .*B* Any command which may be entered from IBEX may be entered while in KERMIT by preceding the IBEX command with a ! (the IBEX prompt character). For all of these commands, with the exception of !XEQ, the user is returned to KERMIT after the command is executed. Note: This feature will NOT work on pre-C00 versions of CP-6. .*K* '?' ? Requests that the next level of HELP be displayed. This should only be issued after a HELP or ? command. See the HELP command for more information. .*K* '??' ?? Requests all remaining HELP on the most recently specified topic. This should only be issued after a HELP or ? command. See the HELP command for more information. .*K* BYE BYE Tells "the other" KERMIT (which should be running in SERVER mode) to exit and terminate the session. .*K* CG CG = comgroup_name .*B* Specifies the name of the ComGroup to be used for file transfers. This option is only meaningful when specified in conjunction with the STATION option. If either the CG or STATION options are specified without the other option then the option that was specified will be IGNORED. .*K* COPY TYPE C[OPY] sourcelist [{ON|TO|OVER|INTO} destination] [FROM fid] .*B* Causes CP-6 KERMIT to M$LINK to PCL, passing the entire COPY command to PCL. Since PCL, not KERMIT, is really doing the COPY, the command specified may have any of the options that the PCL COPY command accepts. .*K* DATE TIME { DATE | TIME } Displays the current date and time in the format: mmm dd 'yy hh:mm (month) (day) (year) (hour) (minute) .*K* DEBUG DEB[UG] [[{ON|TO|OVER|INTO}] debug-file] [( option [,option...] )] .*B* Specifies what information will be written to the debug file. The debug parameters have the following meaning: debug-file is a CP-6 file where the requested (via options) debug information will be written. If 'debug-file' is not specified on a command, any previously specified 'debug-file' name will be used. If this is the first DEBUG command issued, the file name '*DEBUG' will be used by default. option is one of the following: A[LL] - writes ALL available debug information C[OMMAND] - writes a copy of the command issued by the user. This is handy when you are DEBUGging INTO the same file (as might be done when the DEBUG command is in the :KERMIT_INI file) and you want/need to know at what point in the DEBUG file each CP-6 KERMIT session began. E[RROR] - writes unexpected monitor errors I[NFORMATION] - writes "miscellaneous" information. Currently, this just means include a copy of the CP-6 KERMIT invocation line (B$JIT.CCBUF) in the debug file. M[ICRO] - writes a debug record for each packet sent and received, timeout value change and unexpected monitor errors. This is a shorthand method of specifying the ERROR, RECEIVE, SEND and TIMEOUT options. OF[F] - Causes CP-6 KERMIT to CLOSE the debug file and cease writing debug information to it. A subsequent DEBUG command without a 'debug-file' specified will cause the previous debug file to be extended. ON - Causes CP-6 KERMIT to start/continue writing debug information to the debug file. REA[D] - writes a debug record for each record READ from a CP-6 file being transferred to "the other" computer. REC[EIVE] - writes a debug record for each packet received from "the other" computer. S[END] - writes a debug record containing packets that CP-6 KERMIT sends to "the other" computer. T[IMEOUT] - writes a debug record indicating that either a read timeout value was changed or that a timeout occurred; the text of the record indicates which occurred. W[RITE] - writes records as they were written to a CP-6 file; as a result of a RECEIVE command on CP-6 or a SEND command on "the other" computer when CP-6 KERMIT was running as a SERVER. The default is to NOT DEBUG. However, if a DEBUG command is specified with no parameters, the default is DEBUG INTO *DEBUG(MICRO). Each record written to the debug file is preceded by a 15 byte header. The first four bytes indicate what type of record it is and have the following meanings: 'Cmnd' - the record contains a KERMIT command as issued by the user. 'Info' - the record contains miscellaneous information. With this version of CP-6 KERMIT, the record will contain a copy of the KERMIT invocation line. 'Read' - the record was one READ from a CP-6 file and was eventually SENT (hopefully) to the "other" computer. 'Rcvd' - the record was RECEIVEd from the "other" computer. 'Sent' - the record was SENT to the "other" computer. 'Timo' - either a read timed out or a timeout value was changed. The remaining portion of the record (past the header) contains a message indicating what happened. 'Writ' - the record was written as a logical record to the file that was RECEIVEd from the "other" computer. The remaining 11 bytes of header is a time stamp which is provided to aid the user in finding "timing holes" which may exist between the personal computer and CP-6 versions of KERMIT. .*K* DELETE DEL [LOCAL] DEL[ETE] sourcelist [FROM fid] .*B* Causes CP-6 KERMIT to M$LINK to PCL, passing the entire DELETE command (minus the LOCAL if it was specified) to PCL. Since PCL, not CP-6 KERMIT, is really doing the DELETE, the command specified may have any of the options that the PCL DELETE command accepts. .*K* DIRECTORY DIR { DIRECTORY | DIR } [[DP#packset].account | R[ESET]] .*B* Changes the default account and optionally, the default packset. The default account and packset are the account and associated packset that are selected if an account is not supplied as part of a disk fid. Initially, the default account is the logon or running account and the packset name is nil. When used without parameters, the DIRECTORY command displays the current directory. .*K* DO DO command-to-be-passed-to-IBEX .*B* Any command which may be entered from IBEX may be entered while in KERMIT by preceding the IBEX command with 'DO '. For all of these commands, with the exception of DO XEQ, the user is returned to KERMIT after the command is executed. Note: This feature will NOT work on pre-C00 versions of CP-6. .*K* END EXIT QUIT { E[ND] | EX[IT] | X[IT] | Q[UIT] } Exits KERMIT after closing and saving any currently OPEN files. .*K* ERASE ERASE [ALL | ldevlist] .*B* ERASE deletes the accumulated output for ALL or for the specified logical devices defined for the session or job. If no parameters are specified, ALL is assumed. .*K* FINISH FIN[ISH] Tells the "other" KERMIT (which is assumed to be running in SERVER mode) to exit. Unlike the BYE command, the "other" session remains active. .*K* HELP H[ELP] [(processor)][ TOPICS ][ keyword1 ][ - ][ keyword2] .*B* HELP prints information. HELP messages have levels. Once the initial level has been printed, typing a question mark prints the next level, usually containing greater detail. Typing two question marks prints the entire message. Any processor with a standard HELP file can be read from KERMIT. The HELP can be issued at the double-bang (!!) without losing the suspended activity. Thus, one may exit a processor (such as FORTRAN) with a , query for HELP information, and then issue GO to return to FORTRAN. .*B* Parameters have the following meanings: processor - specifies a program or processor that has an associated HELP file. The default is the processor currently under control (in this case, KERMIT). TOPICS - specifies that only a list of available topics (message names) is required. The range of topics is determined by keyword1 or keyword2. keyword1 - specifies the name of the message to be printed. keyword2 - if a range is specified (by including a dash " - " or greater than ">"), keyword2 is the upper limit of the range. If a range is not specified, keyword2 is a submessage, or category within a message. .*K* LIST L L[IST] [(listopt)] [sourcelist [{ON|TO|OVER|INTO} destination]] [FROM fid] .*B* Causes KERMIT to M$LINK to PCL, passing your entire LIST command to PCL. Since PCL is really doing the LIST, the command specified may have any of the options that the PCL LIST command accepts. .*K* LOCAL LOC[AL] { CWD [[.] account] | DIR[ECTORY] [listopt] } .*B* The LOCAL commands are miscellaneous commands to be performed on the local machine; in this case CP-6. The LOCAL CWD (Change Working Directory) performs the same function as the CP-6 DIRECTORY command. The LOCAL DIRECTORY command performs the same function as the CP-6 PCL LIST command. .*K* LOG LOG [T[RANSACTIONS]] [{ON|TO|OVER|INTO}] fid .*B* LOGs information about the files transferred into the specified file. This is especially useful when CP-6 KERMIT is running as a SERVER. In SERVER mode it is difficult (at best) to get "informational" messages displayed to the user because the "other" computer is in transfer mode all the time. .*B* LOG information is written to the indicated EDIT KEYED file with the fractional portion of the EDIT key being the same for like types. The following is a summary of the various types currently generated: xxxxx.000 - Date, time and users logon account and name xxxxx.100 - A message indicating the direction (SEND or RECEIVE) of the transfer, file name, number of records and the mode (TEXT or BINARY). This record is actually written twice; once when the transfer starts (the text indicates this) and again when the transfer completes. This is the reason why this file is KEYED and makes it possible to tell if a started transfer actually finished normally. xxxxx.200 - Packet sizes used (by each side) for the transfer xxxxx.300 - Number of Data packets used and how many bytes were transferred xxxxx.600 - Elapsed time of the transfer xxxxx.700 - Error message from any error that may have prematurely stopped the transfer .*K* NO_DEFAULTS N[O] D[EFAULTS] .*B* By default, when KERMIT is invoked it looks for a file called :KERMIT_INI in the current directory. If it is NOT found, then the logon account is searched (if it is not the current account). If the file is found in either account, it is read and any KERMIT commands in it are executed. This NO DEFAULTS option suppresses this behavior if it is specified on the command line. Furthermore, if it is the only option on the command line, KERMIT will prompt the user for additional commands. Otherwise, all the commands/options on the command line are executed and then KERMIT exits. If specified, this option should appear on the invocation line. .*K* NO_GREETING { D[ONT] | N[O] } G[REETING] Causes the greeting (KERMIT 1.00 Here (01/25/87)) to be suppressed. If specified, this option should appear on the invocation line. .*K* NO_PROMPT { D[ONT] | N[O] } P[ROMPT] Causes the prompt string to be suppressed. If specified, this option should appear on the invocation line. .*K* OUTPUT OUT[PUT] [{ON|TO|OVER|INTO}] destination .*B* Directs KERMIT's primary output to the specified destination. The default is OUTPUT ON ME. .*K* PRINT PRINT [ALL | ldevlist] .*B* Causes accumulated output for the specified logical device to be released to the symbiont. If no parameters are specified, ALL is assumed. .*K* PROMPT PROM[PT] 'prompt-string' .*B* Specifies the prompt string that KERMIT will subsequently prompt with. The default is PROMPT 'CP-6 Kermit> '. .*K* READ TAKE { READ | TAKE } fid .*B* Causes subsequent KERMIT commands to be read from 'fid'. When the end of 'fid' is reached, input reverts back to the source in use prior to the READ command. READ commands may NOT be nested; that is, a file being READ cannot contain a READ command. .*K* RECEIVE REC[EIVE] [{ destfid | otherfid {ON|TO|OVER|INTO} destfid }] .*B* Instructs KERMIT to RECEIVE file(s). If no parameters are specified, the file name is taken from the file packet sent to CP-6 from "the other" computer. If destfid is specified, it overrides the name sent in the file packet. If otherfid is specified, it is ignored! .*K* SEND SEN[D] sourcefid [[AS] destfid] .*B* Causes KERMIT to SEND sourcefid to "the other" computer. If destfid is specified and sourcefid is NOT wildcarded, destfid will be sent as the file name in the File packet to "the other" computer. 'sourcefid' may be wildcarded using the question mark (?) as the wildcard character. .*K* SERVER SER[VER] .*B* Puts CP-6 KERMIT into file SERVER mode. In this mode, CP-6 KERMIT accepts its commands through packets from "the other" computer. Once this command is issued on CP-6, it can be stopped in any one of three ways: 1) If "the other" computer goes back to emulator mode on CP-6 and a carriage return(s) are entered, CP-6 KERMIT will again prompt the user for commands. 2) Issue the FINISH command on "the other" computer. This will cause CP-6 KERMIT to exit to IBEX. 3) Issue the BYE command on "the other" computer which causes CP-6 KERMIT to be exited and an !OFF command to be issued thus terminating the CP-6 session. .*K* SET The SET command allows the user to SET various options. .*B* BLOCK_CHECK CHECKSUM SET B[LOCK] [-] [C[HECK]] [=] { 1 | 2 | 3 } [CHARACTER] [CHECKSUM] Note: Only 1 is supported at the present time. .*B* KERMIT checks the validity of data in each packet via a block check. The sender of the packet computes the block check based on the other characters in the packet and the receiver recomputes it the same way. If these quantities agree, the packet is accepted and the transmission proceeds. If they disagree, the packet is rejected and transmitted again. .*B* There are three different block checks (sometimes know as checksums) that are supported in the KERMIT protocol. The first one ("1" in the option list above) is the simplest block check and is required to be supported in all versions of KERMIT. At the present time, this is the ONLY one supported by CP-6 KERMIT. This block check is only a 6-bit quantity (the low order 8 bits of the arithmetic sum folded upon itself). With only six bits of accuracy, the chances are one in 64 that an error can occur which will not be detected in the checksum, assuming that all errors are equally likely. The second block check ("2" in the option list above) is much like the first except that it is a 12-bit checksum instead of 6-bit. This reduces the chance of an undetected error to be one in 4096 but also takes another byte in the packet that otherwise could have been used for data. The third and last block check ("3" in the option list above) is a 3-character, 16-bit Cyclic Redundancy Check, CCITT format. In addition to errors in any odd number of bits, this method detects double bit errors, all error bursts of length 16 or less and more than 99.99% of all possible longer bursts. This method also uses two more bytes in the packet that could have otherwise been used for data. .*B* DELAY D[ELAY] [=] value .*B* "value" specifies the number of seconds to wait before sending the first packet to "the other" computer after a SEND command is issued to CP-6 KERMIT. The reason for this is to give you enough time to "escape" back to "the other" computer and issue a RECEIVE command. This "delay" does NOT occur when CP-6 KERMIT is in SERVER mode. The default is SET DELAY = 10. .*B* FILE SET FILE { B[INARY] EX[TENSIONS] [=] 'suffix' [,'suffix'...] | C[P] [-] [6] [F[IDS]] [P[ERMITTED]] [=] { Y[ES] | N[O] } | E[DIT] [K[EY]] [=] { Y[ES] | N[O] } | E[ND] O[F] R[ECORD] [=] dec [,dec] | I[NCOMPLETE] [=] { D[ISCARD] | K[EEP] } | M[ODE] [=] { A[UTOMATIC] | B[INARY] | T[EXT] } | N[AMES] [=] { A[S] [IS] | L[OWER] [C[ASE]] | U[PPER] [C[ASE]] } | [PC] EX[TENSIONS] [=] ( Y[ES] | N[O] } | PR[EFIX] [=] '19characters' | R[EPLACEMENT] [C[HARACTER]] [=] '1character' | SUB [DIRECTORY] C[HARACTER] [=] '1character' | SUB [DIRECTORY] [=] { ON | OFF } | W[ARNING] [=] { OFF | ON | OVER | INTO | TO } } .*B* FILE_BINARY_EXTENSIONS SET F[ILE] B[INARY] EX[TENSIONS] [=] 'suffix' [,'suffix'...] .*B* This option, when used in conjunction with SET FILE MODE=AUTOMATIC and SET FILE PC EXTENSION=YES, allows the user to specify a list of (possibly wildcarded) binary file extensions (i.e., suffixes). If the name of a file being transferred matches any of the extensions specified in this option, the file will be transferred in BINARY mode. Otherwise, the transfer will be done in TEXT mode. Each of the extensions you specify is implicitly preceded with a '?'. The default is SET FILE BINARY EXTENSIONS = '-ARC','_ARC','-COM', '_COM', '-EXE','_EXE','-LIB','_LIB'. .*B* FILE_CP6_FIDS_PERMITTED SET F[ILE] C[P] [-] [6] [F[IDS]] [P[ERMITTED]] [=] { Y[ES] | N[O] } .*B* If YES is specified, CP-6 KERMIT will expect the file names passed, in type 'F' packets, to be legal CP-6 fids. This being the case, any periods in names will be treated as CP-6 file name, account and/or password delimiters as opposed to PC name and extension separators. If NO is specified, then CP-6 KERMIT looks for illegal fid characters in the passed file names. If any are found, they are replaced with the SET FILE REPLACEMENT character, which is an underscore (_) by default. The default is SET FILE CP6 FIDS PERMITTED = NO. .*B* FILE_EDIT_KEY SET F[ILE] E[DIT] [K[EY]] [=] { Y[ES] | N[O] } .*B* If YES is specified, then RECEIVEd file will be EDIT KEYED. Otherwise, the file will be created as a CONSECutive file. The default is SET FILE EDIT KEYED = NO. .*B* FILE_END_OF_RECORD SET F[ILE] E[ND] O[F] R[ECORD] [=] dec3 [,dec3] .*B* This option allows the user to specify the "end of record" sequence that will be sent in packets to delimit logical records. The values are specified in decimal and separated with commas. The default is SET FILE END OF RECORD = 13, 10 which is CR, LF. .*B* FILE_INCOMPLETE SET F[ILE] I[NCOMPLETE] [=] { D[ISCARD] | K[EEP] } .*B* If KEEP is specified, any portion of a file transfer (to CP-6) prior to an interruption will be kept. If DISCARD is specified, only successfully transferred files will be retained. The default is SET FILE INCOMPLETE = DISCARD. .*B* FILE_MODE SET F[ILE] M[ODE] [=] { A[UTOMATIC] | B[INARY] | T[EXT] } .*B* This option controls the file transfer mode. If BINARY is specified, all records being read or written from/to a CP-6 file should be 128 bytes. All bytes are transmitted such that they will end up on "the other" machine as they were on the source machine (e.g., TAB characters will end up as TAB characters rather than an appropriate number of blanks). If TEXT is specified, each record being sent from a CP-6 file will have the END OF RECORD (see SET FILE END OF RECORD) character(s) appended to it in the packet. Similarly, packets being received will have the END OF RECORD character(s) removed from each record before the record is written to the CP-6 file. If AUTOMATIC is specified, a RECEIVE transfer will be done in BINARY mode if: 1) the SET FILE PC EXTENSIONS = YES and 2) if the name of the file being transferred matches one of those extensions in the extension list (see SET FILE BINARY EXTENSIONS). If AUTOMATIC is specified and a SEND is being done, the transfer will be done in BINARY if: 1) the CP-6 files 'TY' field equals 'BI' (as in BInary) or 2) if SET FILE PC EXTENSIONS = YES and the name of the file being transferred matches at least one of the extensions in the binary extension list (see SET FILE BINARY EXTENSIONS option). The default is SET FILE MODE AUTOMATIC. .*B* FILE_NAMES SET F[ILE] N[AMES] [=] { A[S] [IS] | L[OWER] [C[ASE]] | U[PPER] [C[ASE]] } .*B* This option controls if and how file names will be changed prior to being used on CP-6. If AS IS is specified, then the file names will be used "as is" on CP-6. If LOWERCASE is specified, then the file name will be changed to all lowercase prior to being used on CP-6. If UPPERCASE is specified, then the file name will be changed to all uppercase prior to being used on CP-6. The default is SET FILE NAMES = AS IS. .*B* FILE_PC_EXTENSIONS SET F[ILE] [PC] EX[TENSIONS] [=] { YES | NO } .*B* This option controls whether the BINARY EXTENSION list will be used to determine the MODE of file transfers. See SET FILE MODE and SET FILE BINARY EXTENSIONS options for more information. The default is SET FILE PC EXTENSIONS ON. .*B* FILE_PREFIX SET F[ILE] PR[EFIX] [=] '19characters' .*B* This option allows a CP-6 file prefix (up to 19 characters) to be specified. When a file is RECEIVEd on CP-6, this prefix will precede the file name passed from "the other" computer. When a file is SENDed from CP-6, this prefix (if present) will be removed from the file name sent to "the other" computer. This feature was added to aid, for example, those users who are using CP-6 to "backup" the files on their "other" machine (usually a micro). For instance, suppose you have a hard disk on your "other" computer that has multiple subdirectories. In several of those subdirectories is a file called 'READ.ME'. If you were to "backup" all those subdirectories into a single account on CP-6, you would end up with one READ.ME file. The file would be either from the first (if SET FILE WARNING ON) or the last (if SET FILE WARNING OFF) subdirectory you "backed-up". With this option, you could specify a different PREFIX (I.e., the subdirectory name) for each subdirectory you "backup". This would result in all of the READ.ME files ending up with unique names on CP-6. For another way to get files "restored" back to "the other" computer, see the SET FILE SUBDIRECTORY CHAR command. .*B* The default is SET FILE PREFIX = '' which effectively disables this feature. .*B* FILE_REPLACEMENT_CHARACTER SET F[ILE] R[EPLACEMENT] [C[HARACTER]] [=] '1character' .*B* If SET FILE CP-6 FIDS PERMITTED = NO is in effect, CP-6 KERMIT will check all specified CP-6 file names for illegal characters (including periods). If any are found, they are replaced with the '1character' specified on this option. The default is SET FILE REPLACEMENT CHARACTER = '_'. .*B* FILE_SUB_CHAR FILE_SUBDIRECTORY_CHAR SET F[ILE] SUB [DIRECTORY] C[HARACTER] [=] '1character' .*B* This command permits the user to simulate subdirectories (to a limited extent) on CP-6. This is done by choosing a character to represent the subdirectory separator character. This character and all characters preceding it will be removed from file names sent to the local Kermit. For example, if you type: SET FILE SUBDIRECTORY CHARACTER = ':' SEND TEST:FILE_EXT the file would be sent under the name 'FILE.EXT'. If you want to turn this feature off, simply type: SET FILE SUBDIRECTORY OFF This will disable the feature until a subsequent SET FILE SUBDIRECTORY ON command is issued. Event when this feature is disabled, the SET FILE SUBDIRECTORY CHARACTER is still retained so once specified it doesn't need to be SET again. .*B* Initially, this feature is OFF, but the character is set to ':'. This character was chosen because it can't occur in a PC filename, but it can in a CP-6 filename. This feature is mainly intended to help organize CP-6 directories which are being used as central repositories for micro software. The default is SET FILE SUBDIRECTORY CHARACTER = ':' and SET FILE SUBDIRECTORY OFF. .*B* FILE_SUB_ON_OFF FILE_SUBDIRECTORY_ON_OFF SET F[ILE] SUB[DIRECTORY] [=] { ON | OFF } .*B* When ON is specified, the feature described under the SET FILE SUBDIRECTORY CHAR command will be used. When OFF is specified said feature is disabled but the character specified in SET SUB DIRECTORY CHAR will be retained. .*B* FILE_WARNING SET F[ILE] W[ARNING] [=] { OFF | OVER | ON | TO | INTO } .*B* This option controls what happens if the file being sent to CP-6 already exists. If OFF or OVER is specified, any existing file of the same name is overwritten. If no file currently exists, a new one is created. If ON or TO is specified and a file of the same name already exists, an error is returned and the existing file remains unchanged. If INTO is specified and the file already exists, the file will be extended. If no file currently exists then one is created. The default is SET FILE WARNING ON. .*B* RETRY SET R[ETRY] [C[OUNT]] [F[OR]] { I[NITIAL] [P[ACKETS]] | P[ACKETS] } value .*B* This option sets the error retry threshold for either the Initial packet or Data packets. The defaults are SET RETRY COUNT FOR INITIAL PACKET = 10 and SET RETRY COUNT FOR PACKETS = 10. .*B* SEND SEN[D] { EI[GHT] [B[IT]] [Q[UOTING]] [C[HARACTER]] [=] '1character' | E[ND] [-] [O[F]] [-] [L[INE]] = dec3 | PACK[ET] [L[ENGTH]] [=] dec2 | PAU[SE] [=] dec | PADD[ING] [=] dec | PADC[HAR] [=] dec3 | Q[UOTE] [CTL] [=] '1character' | R[EPEAT] [C[HARACTER]] [=] '1character' | S[TART] [-] [O[F]] [-] [P[ACKET]] [=] dec3 | T[IMEOUT] [=] dec } .*B* SEND_EIGHT_BIT_QUOTING_CHAR SET SEN[D] EI[GHT] [B[IT]] [Q[UOTING]] [C[HARACTER]] [=] '1character' .*B* This option will only be used when the parity of the communications line is something other than NONE or ZERO (i.e., when the eighth bit is not available for data). When specified, this character must be "Y" or "N" or a character in the range ASCII 33-62 ("!" through ">") or 96-126 ("'" through "~"), but MUST be different from the SEND QUOTE and SEND REPT values. The value is interpreted as follows: Y CP-6 KERMIT will do 8-bit quoting if "the other" KERMIT requests it. N 8-bit quoting will NOT be done. & (or any other character in the range 33-62 or 96-126) means CP-6 KERMIT will use this character for 8-bit quoting (if "the other" KERMIT responds with a "Y" or the same character). The "&" is the recommended 8-bit quote character. .*B* SEND_END_OF_LINE SET SEN[D] E[ND] [O[F]] [L[INE]] [=] dec3 .*B* The ASCII character that will be used as the line terminator for all outgoing packets. The default value is a 13 (Carriage Return). .*B* SEND_PACKET_LENGTH SET SEN[D] PACK[ET] [L[ENGTH]] [=] dec .*B* The maximum length packet that CP-6 KERMIT wants to receive, a number in the range 7 to 94, inclusive. It is recommended that this value be 94 (the maximum) unless alot of retries are occurring in which case the value should be gradually decreased until retries only occur occasionally, if at all. The default is SET SEND PACKET LENGTH = 94. .*B* SEND_PAUSE SET SEN[D] PAU[SE] [=] dec .*B* Specifies how many seconds to pause before ACKnowledging a packet. Setting this to a nonzero value will slow down the rate at which data packets arrive, which may be necessary for systems that have "sensitive" front ends and cannot accept input at a high rate. The default is SET SEND PAUSE = 0. .*B* SEND_PADCHAR SET SEN[D] PADC[HAR] [=] dec3 .*B* This is a padding character that the "other computer" will send before each packet. The number of padding characters required is determined by the value of the SEND PADDING parameter. It is doubtful that you will ever need to set this or the SEND PADDING values. The default is SET SEND PADCHAR = 0. .*B* SEND_PADDING SET SEN[D] PADD[ING] [=] dec .*B* This indicates the number of padding characters (see SET SEND PADCHAR) that the "other computer" should send before each packet. It is doubtful that you will ever need to set this value. A value of 0 (zero) means that no padding characters are needed. The default is SET SEND PADDING = 0. .*B* SEND_QUOTE SET SEN[D] Q[UOTE] [CTL] [=] '1character' .*B* This is the printable ASCII character CP-6 KERMIT will use to quote control characters. This must be a printable character and the MUST be different from both the EIGHT BIT QUOTING CHARACTER and the REPEAT CHARACTER. The default is SET SEND QUOTE CTL = '#'. .*B* SEND_REPEAT_CHARACTER SET SEN[D] R[EP] [E[A]] [T] [C[HARACTER]] [=] '1character' .*B* This is the character that will indicate a repeated character. This can be any printable character in the range ASCII 33-62 ("!" through ">") or 96-126 ("'" through "~") but MUST be different than both the SEND QUOTE and SEND EIGHT BIT QUOTING CHARACTER. Any character outside this range indicates repeating will NOT be done. The tilde (ASCII 126, "~") is the recommended and normal repeat prefix. If "the other" KERMIT does not respond with the same character, no repeating will be done. If repeating is possible by both KERMITs, it will be used to represent 4 or more consecutive occurrences of the same character. .*B* SEND_START_OF_PACKET SET SEN[D] S[TART] [O[F]] [P[ACKET]] [=] '1character' .*B* The synchronization character that marks the beginning of the packet. This is a SOH (CTRL-A) by default but may be changed if needed. The default is SET SEND START OF PACKET = 1. .*B* SEND_TIMEOUT SET SEN[D] T[IMEOUT] [=] dec .*B* The number of seconds after which KERMIT wants "the other" KERMIT to time out while waiting for a packet from CP-6. The default is SET SEND TIMEOUT = 8. .*B* TAB_EXPANSION SET TAB EX[PANSION] [=] { OFF | ON } .*B* Indicates if received TAB characters are to be replaced with an appropriate number of spaces to move to the next "tab stop". If ON is specified, it is only honored during TEXT mode transfers (i.e., in a BINARY transfer, TABs will be sent as TAB characters). The default is SET TAB EXPANSION ON. .*B* TABS SET TABS [ dec [,dec...] ] .*B* Accepts the desired "tab stop" settings. Up to 40 values may be specified but they must be in ascending order. A value of 0 (zero) means revert back to the default. These values are only used on TEXT mode transfers and only if SET TAB EXPANSION = ON, which IS the default. The default is SET TABS 9,17,25,33,41,49,57, ... ,305,313,321. .*K* SHOW SHOW Shows the current settings for SETable items. .*K* SILENT_MODE SILE[NT] [M[ODE]] Causes KERMIT to NOT write anything through the M$LO DCB (DCB4). This may not be completely successful in some situations. If specified, this option should appear on the invocation line. .*K* STATION STATION = station_name .*B* The name of the Comgroup station to be used for file transfers. This option is only meaningful when specified in conjunction with the CG option. If either the CG or STATION is specified without the other, the option specified is IGNORED. .*K* TRANSMIT TR[ANSMIT] fid .*B* Sends 'fid' to the "other computer" raw; that is, with no protocol involved. CP-6 KERMIT will DELAY the sending of 'fid' by the number of seconds currently set for the SET DELAY option. .*K* CHANGES January, 1988 (CP-6 Kermit, version 1.00) The following are changes/additions made to CP-6 KERMIT since the original version (0.95) was sent to Columbia University in December, 1985. Many thanks to John Stewart of Carleton University, Tom Erskine of CRC, Mike Iglesias of UC Irvine and Mike Schmidt of Honeywell Bull, Canada, for their help and supplied code. Recognize ARC and LIB as default binary file extensions. Optimize code that strips parity off incoming characters. Block move of packet data to eliminate looping. Eliminate redundant checksum calculation. Handle repeat counts in file name packet. Use FSFA on file that is being received or sent. .*B* Added the ability to specify up to two EOR characters instead of assuming CR/LF. This is useful, for instance, when communicating with some software on Apples. Fixed bug that caused KERMIT to Memory Fault if a 'LIST' command was issued with no fid specified. Enhanced the SHOW command to show some of the SETable things that it didn't before (EG, Binary EXtensions) as well as values for all the new commands. The PARITY used for a transfer is now logged in the LOG file. The activation character for received packets is now included in KERMIT "debug" files. Fixed bug that prevented records with embedded CR's from being received correctly. Relaxed syntactical constraints on some commands so optional blanks are permitted. .*B* Added the SET FILE PREFIX, SET FILE SUBDIRECTORY CHAR and SET FILE SUBDIRECTORY { ON | OFF } commands. Made it possible to interrupt multiple file transfers so you can quit the current file or the entire group of files. Added the CG and STATION options to allow transfers through ComGroups.