.cs 1 on
KERMIT
.sp 2
Kermit-CMS is a program that implements the KERMIT file transfer
protocol for IBM 370-series mainframes running the VM/CMS operating
system.  It allows for the transfer of files between computers over
asynchronous ASCII communications lines (attached
to a 3705-style front end, such as the COMTEN, or to a Series/1 or 4994
running the Yale ASCII Terminal Communication System, or to an IBM
7171 ASCII Device Control Unit).  For more details, see the
section SET CONTROLLER.
.sp 1
.cs 1 off
.cs 2 on
The calling format for Kermit-CMS is:
.sp 1
        +----------------------------------+
        |          |                       |
        |  KERMIT  |  [kercmd ... kercmd]  |
        |          |                       |
        +----------------------------------+
.sp 1
where kercmd is a valid Kermit-CMS command.  If no Kermit commands are
supplied, Kermit-CMS will issue a prompt and wait for instructions.
When Kermit is invoked with command line arguments, it
will exit and return to CMS after completing the
specified command or commands.  Several commands may be given on the
command line as long as they are separated by the linend character.
The command line may contain up to 130 characters.
.sp 1
.cs 2 off
.cs 3 on
Commands:
.sp 2
.of 8
SEND <fn> <ft> [<fm>] [filespec]
.sp 1
Send a file or file group from the CMS system to the Kermit on the
remote system.  The wildcard characters "*" or "%" may be used.  A "*"
matches any string of characters from the current position to the end
of the field, including no characters at all; a "%" matches any single
character.  If the input contains wildcard characters then all
matching files will be sent.  If the optional filemode is omitted,
the home disk is normally used (but see SET SEARCH-ALL).
The exact file name on the foreign Kermit system may be specified;
otherwise, Kermit-CMS will make it up out of the CMS name.
.sp 1
.of 8
RECEIVE [<fn> <ft> [<fm>]]
.sp 1
Receive a file or file group from the other system.  If the optional
filename is not included, Kermit-CMS will use the name(s) provided by
the other Kermit.  If that name is not a legal CMS file name,
Kermit-CMS will delete excessive characters from it, and will change
illegal characters to underscores.  Use the file specification to
indicate that the incoming file should be stored under a different
name.  The filespec may include a filemode to designate the
destination disk.  If none is provided, the file will be saved on the
"home" disk with filemode number 1.  If you want to use the same name
but a different filemode, specify "= = FM", where FM is the access
mode of the destination disk.  Wildcards may not be used in any field.
If the optional filespec is provided, but more than one file arrives,
the first file will be stored under the given filespec, and the
remainder will be stored under their own names on the home disk.  If,
however, "= = FM" is used, all files will be placed onto the specified
disk.
.sp 1
.of 8
TAKE <fn> <ft> [<fm>]
.sp 1
Execute Kermit commands from the specified file.  The command file may
include TAKE commands.
.sp 1
.of 8
SERVER
.sp 1
Kermit-CMS is capable of acting as a server.  In server mode,
Kermit-CMS can send and receive files, execute CP/CMS commands,
execute a restricted set of Kermit commands, and perform a variety of
generic Kermit functions.  The following list shows the typical local
Kermit commands along with the server functions they elicit.  Note
that when Kermit-CMS is talking to a Kermit server, these same
commands may be used in the other direction.
.sp
  BYE                 log out of CMS
  FINISH              exit from server mode
  GET                 send a file or files from CMS
  REMOTE COPY         copy a file or files
  REMOTE CWD          set new "home" disk
  REMOTE DIRECTORY    display file attributes
  REMOTE ERASE        delete a file or files
  REMOTE HELP         display this command summary
  REMOTE HOST         execute a CP/CMS command
  REMOTE KERMIT       execute a Kermit-CMS command
  REMOTE RENAME       rename a file or files
  REMOTE SPACE        display disk allocations
  REMOTE TYPE         display a file
  SEND                receive a file or files onto CMS
.sp
If your local Kermit does not support the REMOTE KERMIT command, you
may need to issue SET commands to select various options before typing
the SERVER command.  Once in server mode, Kermit-CMS will await all
further instructions from the user Kermit on the other end of the
connection.
.sp 1
.of 8
CWD <letter>
.sp 1
Change Working Directory - establish new default ("home") CMS disk, A
by default.
.sp 1
.of 8
SET <parameter> [<value>]
.sp 1
Establish or modify various parameters for file transfer.  You can
examine their values with the SHOW command.  Valid options are:
.sp 1
.in 8
.of 8
APPEND <ON | OFF>
.sp 0
Tells whether to append incoming files to existing files of the same name.
.sp 1
.of 8
ATOE [<num1 num2>]
.sp 0
Modify the ASCII-to-EBCDIC translate table used by Kermit-CMS to
conform to your system.  Specify the offset of the ASCII value within
the table and the new value for that location.  Both "num1" and
"num2" should be in the range 0-255 (decimal).  If "num1" and "num2"
are omitted, restore the table to its default values.  Tables ETOA,
TATOE, and TETOA may be modified in the same way.
.sp 1
.of 8
BLOCK <num>
.sp 0
Determine the type of block check used during file transfer.  Valid
options for "num" are: 1 (for a one character checksum), 2 (for a two
character checksum) and 3 (for a three character CRC).
.sp 1
.of 8
CONTROLLER <TTY | SERIES1 | GRAPHICS>
.sp 0
Kermit-CMS automatically determines whether you are connected via a
Series/1-style emulation controller or a TTY line.  This command is
provided, though, so you can change connections and because Kermit may
not be able to distinguish between Series/1 and graphics throughput
devices.  For both of those,
Kermit attempts to disable the 3270 protocol conversion function by
putting the controller into "transparent mode"; this allows Kermit
packets to pass through intact.
.sp 1
.of 8
DEBUG <ON | OFF | RAW>
.sp 0
If ON, keep a journal of all packets sent and received in the file KER
LOG A1.  If the file already exists, it is overwritten.  If OFF, stop
logging the packets.  If RAW, same as ON, but record packets "exactly"
as sent or received (without translating to EBCDIC).
.sp 1
.of 8
DELAY <num>
.sp 0
How long to wait before sending the first packet.  Use a DELAY of 0 to
suppress the extra 1-second pause for issuing the protocol-mode
greetings.
.sp 1
.of 8
DESTINATION <letter>
.sp 0
Specify "home" disk.
.sp 1
.of 8
EOF <ON | OFF>
.sp 0
ON means incoming text files are to be cut off at first Ctrl-Z
character within the data, OFF means accept incoming text files in
their entirety.
.sp 1
.of 8
FILE LRECL <num>
.sp 0
Set the logical record length for incoming files to a "num" from
1 to 65535 (64K-1).  This variable is used only for fixed format and
binary files.  The default is 80.
.sp 1
.of 8
RECFM <FIXED | VARIABLE>
.sp 0
Set the record format to use for incoming files, using "F" for fixed
format and "V" for variable format.  The default is variable.
.sp 1
.of 8
FILE TYPE <BINARY | TEXT | V-BINARY | D-BINARY>
.sp 0
If BINARY, CMS Kermit treats each character as a string of bits and
does not perform translation on the data.  Also, carriage returns are
not added to the end of outgoing records.  Incoming bytes are added to
the end of the current record which is written out when the specified
LRECL is reached.  If TEXT, CMS Kermit treats the file as plain text;
ASCII-to-EBCDIC and EBCDIC-to-ASCII translation is performed on the
data.  A carriage return-linefeed is appended to each outgoing record
and is used to determine the end of each incoming record.  V-BINARY
specifies variable-length-record binary data; like BINARY, except that
a 2-byte length field precedes each outbound record, and is assumed
for incoming records.  D-BINARY is similar, but the length field is a
5-byte ASCII decimal string.
.sp 1
.of 8
FOREIGN <PREFIX | SUFFIX> <string>
.sp 0
The specified string is added to the beginning or end of outbound filespecs.
.sp 1
.of 8
MARGIN <LEFT | RIGHT> <column>
.sp 0
The specified margin is set for restricting the width of files to be
sent.  A value of zero disables the specified margin.
.sp 1
.of 8
PARITY <MARK | NONE>
.sp 0
Transparent-mode ASCII data from a SERIES1 or GRAPHICS device will
typically have either all Mark parity (seven data bits with the eighth
bit set) or no parity (eight data bits).  Kermit-CMS must know which
kind of parity to expect in order to calculate checksums properly.
.sp 1
.of 8
PROMPT <string>
.sp 0
This command defines the character string that Kermit-CMS displays when
asking for a command.  The prompt may be any string of up to 20
characters.  The default is "Kermit-CMS>".
.sp 1
.of 8
<SEND | RECEIVE> END-OF-LINE <num>
.sp 0
If the remote system needs packets to be terminated by anything other
than carriage return, specify the decimal value of the desired ASCII
character.  "num" must be in the range 0 - 31 (decimal).
.sp 1
.of 8
<SEND | RECEIVE> PACKET-SIZE <num>
.sp 0
Use the specified "num" as the maximum length for incoming packets.
The valid range is 26-9024, where 80 is the default.  SET RECEIVE
PACKET-SIZE 95 or greater causes Kermit-CMS to negotiate reception
of extended length packets with other Kermit programs that support
this option.
.sp 1
.of 8
<SEND | RECEIVE> PAD-CHAR <num>
.sp 0
Padding character to use between packets, NUL (ASCII 0) by default.
.sp 1
.of 8
<SEND | RECEIVE> PADDING <num>
.sp 0
Number of copies of the interpacket padding character, zero by default.
.sp 1
.of 8
<SEND | RECEIVE> QUOTE <char>
.sp 0
Control character quoting prefix, normally #.
.sp 1
.of 8
<SEND | RECEIVE> START-OF-PACKET <num>
.sp 0
Control character to mark start of packet, normally Ctrl-A (ASCII 1).
.sp 1
.of 8
<SEND | RECEIVE> TIMEOUT <num>
.sp 0
Number of seconds to wait for a packet before retransmitting.
.sp 1
.of 8
RETRY <INITIAL | PACKET> <num>
.sp 0
Establish the threshold for retrying a particular packet.  The default
is 16 for initial and 5 for ordinary packets.
.sp 1
.of 8
SEARCH-ALL <ON | OFF>
.sp 0
Tells whether all disks should be searched when filemode omitted from
SEND or GET filespec, or only the "home" disk.
.sp 1
.of 8
SYSCMD <ON | OFF>
.sp 0
Determine whether non-Kermit commands are assumed to be
CP/CMS commands (and passed along to CMS or CP for execution).
.sp 1
.of 8
TABS-EXPAND <ON | OFF>
.sp 0
Controls whether tabs in incoming text files are expended to blanks.
.sp 1
.of 8
TAKE ECHO <ON | OFF>
.sp 0
Controls whether the contents of TAKE command files are echoed during
execution.
.sp 1
.of 8
TAKE ERROR-ACTION <CONTINUE | HALT>
.sp 0
Controls whether an error occuring during execution of a TAKE command
file is fatal to the execution of that file.
.sp 1
.of 8
TEST <ON | OFF>
.sp 0
Used for testing new versions, suppresses block check verification,
allows start-of-packet to be set to anything at all.
.sp 1
.of 8
TTABLE <ON | OFF>
.sp 0
Controls whether ATOE/ETOA or TATOE/TETOA are used for counteracting
the system translations on TTY lines.
.sp 1
.of 8
WARNING <ON | OFF>
.sp 0
Controls whether Kermit-CMS overwrites a file when a new file arrives
that has the same name.  If ON, Kermit-CMS attempts to fashion a new
name.
.sp 1
.of 8
8-BIT-QUOTE <ON | OFF | char>
.sp 0
Control whether eighth-bit prefixing is done and
specify the character to be used.
.sp 1
.in 0
.of 8
SHOW <option>
.sp 1
Display the values of any or all parameters that can be changed with
the SET command, except for ATOE and ETOA (see the TDUMP command).
.sp 1
.of 8
SPACE [letter]
.sp 1
Show the storage allocation on the specified CMS disk.
.sp 1
.of 8
STATUS
.sp 1
Return the status of the previous command.  The response will either
display the message "No errors", or the last error
encountered.
.sp 1
.of 8
TDUMP <table-name | NAMES>
.sp 1
Display the contents of "table-name" since it can be modified using
the SET command.  The ATOE, ETOA, TATOE, and TETOA tables can be
'dumped' (also, the list of files sent in the last transfer).
.sp 1
.of 8
GIVE <table-name> <fn> [<ft> [<fm>]]
.sp 1
Save the contents of "table-name" as a TAKE file containing SET
commands to change the default into the current arrangement.
.sp 1
.of 8
ECHO <line>
.sp 1
Display the line at your terminal.
.sp 1
XECHO <line>
.sp 1
Display the line at your Series/1 terminal in transparent mode.
.sp 1
.of 8
TYPE <fn> <ft> [<fm>]
.sp 1
Display the specified file at your terminal.
.sp 1
.of 8
XTYPE <fn> <ft> [<fm>]
.sp 1
Display the specified file at your Series/1 terminal in transparent mode.
.sp 1
.of 8
CMS     Issue a CMS command from within Kermit-CMS.
.sp 1
.of 8
CP      Issue a CP command from within Kermit-CMS.
.sp 1
.of 8
HOST    Issue a CP/CMS command from within Kermit-CMS.
.sp 1
.of 8
DIR     Same as CMS LISTFILE.
.sp 1
.of 8
SPACE   Same as CMS Q DISK (but defaults to the "home" disk).
.sp 1
.of 8
HELP    Display a message that explains Kermit-CMS commands.
.sp 1
.of 8
EXIT    Exit from KERMIT back to the host operating system.
.sp 1
.of 8
QUIT    Synonym for EXIT.
.sp 1
.of 8
?       List all legal Kermit-CMS commands.
.sp 2
.of 0
You may use the help ("?")  feature while typing Kermit-CMS commands.
A question mark typed at almost any point in a command, followed by a
carriage return, produces a brief description of what is expected or
possible at that point.
.sp 1
.of 0
Usage Notes:
.sp 1
.of 4
1.  To use CMS Kermit though a 3705-style linemode connection,
you should be sure to set the following parameters:
ECHO LOCAL (half duplex),
PARITY MARK (or whatever your system uses), FLOW-CONTROL NONE (rather
than XON/XOFF), HANDSHAKE Ctrl-Q, TIMER ON.
.sp 1
.of 4
2.  To use CMS Kermit through a Series/1-style protocol converter, use
ECHO REMOTE (full duplex), FLOW-CONTROL XON/XOFF, HANDSHAKE NONE,
TIMER ON, and PARITY to EVEN or whatever your front end requires.
.sp 1
.of 4
3.  Five CP SET parameters (MSG, IMSG, WNG, ACNT, and TIMER) are set
OFF during protocol mode (and restored afterwards).
In addition, RUN is set ON, and,
on a TTY line, the TERMINAL LINESIZE is set OFF and the
CMS user terminal translation tables are suppressed.
.sp 1
.of 4
4.  When receiving files, if the record format is fixed, any record
longer than the logical record length will be split up to as many
records as necessary.  If the record format is variable, the record
length can be as high as 64K-1.  For sending files, the maximum
record length is 64K-1.
.sp 1
.of 4
5.  The current version of Kermit-CMS does not support timeouts.  Your
local Kermit program should supply them (SET TIMER ON enables timeouts
in most microcomputer Kermits).
.sp 1
.of 4
6.  When sending packets to Kermit-CMS, the micro must use a carriage
return as the end-of-line character.  Both TTY and Series/1
connections require a carriage return to terminate a read from the
terminal; thus, if any other character is used, Kermit-CMS will never
get the packets.
.sp 0
.of 0
.cs 3 off
