home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
archives
/
hp9000basic.tar.gz
/
hp9000basic.tar
/
hpbkerdoc.txt
< prev
next >
Wrap
Text File
|
1989-06-14
|
129KB
|
3,599 lines
HP-BASIC KERMIT USER GUIDE
For The Hewlett-Packard Family 9000 Series 200 and 300 Computers
HP-BASIC WORKSTATIONS
VERSION 1.0
Andrew Campagnola
Hewlett-Packard
Measurement Systems Operation
815 SW 14 St. Loveland, Colorado 80537
Copyright (C) 1981,1988
Trustees of Columbia University in the City of New York
Permission is granted to any individual or institution to use, copy,
or redistribute this document so long as it is not sold for profit.
Kermit-RMB Table Of Contents
Section Topic
1.0 Kermit-RMB Title Block
2.0 History Of Kermit-RMB
3.0 Kermit-RMB Capability Summary
4.0 Computer System Requirements
5.0 Using Kermit-RMB
5.1 Examples of Kermit-RMB usage
5.2 Connecting HP Workstations for Kermit
5.2.1 Connecting the 98644 (9 Pin) Interface
5.2.2 Connecting the 98626/98628 Interfaces
5.2.3 Connecting to Modems
5.3 Testing the RS-232 Connection
6.0 The HP-BASIC File System
6.1 Specifying Filenames and Mass Storage
6.2 BASIC File Formats
6.3 Kermit Handling of Files
6.3.1 Sending Files
6.3.2 Receiving Files
7.0 Kermit Program Setup
7.1 The Kermit Distribution Disc
7.2 Printing the User Manual
7.3 Loading and Running Kermit
7.4 Minimizing Kermit Program Size
7.5 Kermit Initialization File HPK_INIT
7.6 Ram Disc Operation
8.0 Kermit-RMB Command Descriptions
8.1 Kermit Command Syntax Reference
8.2 Unique Commands for Kermit-RMB
8.3 General Kermit Command Groups
8.4 Program Management Commands
8.5 Local File Management Commands
8.6 Terminal Connection and Emulator Commands
8.7 File Transfer Commands
8.8 Ascii File Transmission Commands
8.9 Kermit SET Command Options
8.10 Status and Show Commands
8.11 Log and Close Commands
8.12 Macro Definitions
8.13 Kermit Server Commands (Not Implemented)
8.14 Remote Server Commands (Not Implemented)
9.0 Missing Features in Kermit-RMB
Future Enhancements
Bug Reports
Kermit-RMB 1.0 Users Manual Page 2
1. Kermit-RMB
This document is available either as an ordinary, plain DOS
text disk file, or a HP-LIF ASCII file.
Program: Andrew Campagnola - Hewlett-Packard Company
Language: Hewlett-Packard Series 200/300 BASIC (Rev. 5.x)
Version: 1.0
Release: 1 Mar 1989
2. History
This is the first full version of KERMIT for the HP BASIC
Workstation written. Keith Moore wrote a BASIC-CSUB which
implements the KERMIT send and receive protocol for ascii
files while at New Jersey Division Labs. His efforts there,
and a positive response to the availability of his KERMIT for
HP BASIC combined with the universal need for a native BASIC
terminal emulator spurred on this project.
The KERMIT file transfer protocol was developed at Columbia
University in 1981 under the direction of Frank DaCruz and
first written by Bill Catchings for CP/M at the Center for
Computing Activities. Now over 200 versions of the KERMIT
program are monitored and supported by that group.
KERMIT received its name from a muppets poster on the wall
during the conception of the protocol at Columbia in 1981.
After attempts to define K-E-R-M-I-T as an acronym failed it
was admitted that KERMIT was named after KERMIT the Frog with
Jim Henson's permission. It was later discovered that KERMIT
is a Celtic word for "free", and other justifications arose.
Like all Kermit programs, you are encouraged to use, copy, and
distribute HP-BASIC Kermit freely.
Kermit-RMB 1.0 Users Manual Page 1
3. Kermit-RMB Capabilities At A Glance:
Local operation: Yes
Remote operation: Yes Requires HP NJD REMCON BIN
Transfers text files: Yes
Transfers binary files: Yes (BDAT, ASCII, HP-UX)
Wildcard send: No
File transfer interruption: Yes
Filename collision avoidance: Yes
Can time out: Yes
8th-bit prefixing: Yes
Repeat count compression: Yes - receive only
Alternate block check types: No
Terminal emulation: VT100
Communication settings: Speed, Parity, Echo (Full duplex only)
Transmit BREAK: Yes
IBM mainframe communication: No
Transaction (Packet) logging: Yes
Session logging (raw download): Yes
Raw upload (Transmit) Yes
Act as server: No
Talk to server: No
Advanced server functions: No
Advanced commands for servers: No
Local file management: Yes
Command/init files: Yes
Command macros: Yes
Extended-length packets: No
Attribute packets: Yes
Sliding windows: No
Kermit-RMB is a program that implements the Kermit file
transfer protocol for the entire HP Series 200/300 BASIC
Workstation family of computers.
This user manual assumes that you are new to Kermit but
familiar with the operation of the HP BASIC Workstation and
ideas of data communication. A very brief overview is given
here, but for details consult the early chapters of the
Kermit User Guide, or Frank DaCruz' book:
Kermit, A File Transfer Protocol, by
Frank da Cruz
Digital Press (1987)
order number EY-6705E-DP
(phone 1-800-343-8321)
which also includes excellent background tutorials on
computers, file systems, and data communication (including
modems, cabling, etc).
Kermit-RMB 1.0 Users Manual Page 2
For further information about obtaining Kermit programs and
user documentation, write to:
Columbia University
Center for Computing Activities
Kermit Distribution
612 West 115th Street
New York, NY 10025 (USA)
4.0 System Requirements
Kermit-RMB was developed on a 9816 Workstation using BASIC
5.1. The 9816 was configured with 1Mb RAM and a 98626 Serial
Interface Card. A Memory Volume was not used.
Kermit-RMB version 1.0 runs on any Series 200/300 computer
with 1 Mb of memory. BASIC 5.x is required. The Operating
System and Kermit program will load and run in less than 1 Mb
but without the use of a Memory Volume.
Kermit will run on any HP serial interface available for the
Series 200 and 300 computers. These include the following:
98644 Built-in 25 Pin Serial Interface on the S/310
98644 Built-in 9 Pin Serial Interface on S/320 and up
98626 50 Pin Serial Interface Card fro S/200 and S/300
98628 50 Pin Datacomm Interface Card for S/200 and S/300
Kermit-RMB implements both Ascii and Binary file transfer as
well as providing a near complete Kermit user interface.
File transfer is provided using both KERMIT Protocol Packets
(SEND-RECEIVE) and raw upload and download (TRANSMIT - LOG
SESSION). Aside from the normal functions of Kermit for file
transfer, Kermit-RMB also provides useful functions such as:
ASCII file printing to screen and printer PRINT / TYPE
A Hex Editor and dump utility DUMP
VT-100 Terminal emulation CONNECT
A File Type Conversion Utility CONVERT
Kermit-RMB 1.0 Users Manual Page 3
5.0 Using Kermit-RMB
Kermit-RMB performs two major functions, terminal emulation
and file transfer. File transfer can be done using either
the Kermit file transfer protocol (SEND & RECEIVE) , or else
(without error checking), raw ASCII transmission methods. To
use Kermit for "raw" uploading or downloading of files, see
the descriptions of the TRANSMIT and LOG SESSION commands.
Two computers use the KERMIT transfer protocol to send files to
each other by running a KERMIT program on each computer. This is
an important point - Kermit running on one computer cannot send
or receive files from another computer running some other file
transfer program (ie. Xmodem, or HP Advancelink) because the
protocols (or encoding) used is not the same. Therefore one key
advantage of using Kermit is that many computers on the market
have a version of Kermit written for them. You should be aware
that many terminal emulator programs, especially for the PC
contain the capability of performing file transfers using a
variety of protocols, including Kermit. Check into this before
assuming your terminal emulator cannot support Kermit.
If you are trying to transfer files to a computer system and do
not have a Kermit program for that system you should contact
Columbia University to see if one exists.
Without Kermit running on each computer, your only other option
is to use simple ascii transmission which does not "encode" files
using any protocol. For example the Kermit Transmit command
could be used with most any PC Terminal Emulator that performs
"File Logging". The disadvantage of using this method is the
lack of binary file transfers or parity error detection.
5.1 Kermit - to - Kermit File Transfer
Once you have obtained versions of Kermit for each computer
on each end of the file transfer you are ready to begin making
the RS-232 connection and transferring files. Making the physical
connection is discussed in the next section after this overview
of using Kermit.
There are two scenarios for file transfers I'll discuss here and
give examples for. One involves transferring files between two
computers that are next to each other (let's say in the same
lab), and the other scenario of transferring files between two
computers that are remote to each other (let's say from a local
instrument controller to a remote VAX in the computer center
- or in a remote building accessed via modem). Remember -
both scenarios involve an RS-232 connection between the two
computers that must be established first.
(1) Local - to - local File Transfer
Kermit-RMB 1.0 Users Manual Page 4
Assume you have connected a Series 300 to a Personal Computer
in your lab using the HP-24542G Serial Printer Cable (This
conenection is discussed later). To transfer a file from the
Series 300 to the PC would involve the following:
A. Start each computer, load and run Kermit on each side.
Kermit comes up on each computer with its local prompt:
MS-KERMIT> may be the prompt you see on the PC - MSDOS version
and
KERMIT-RMB> is the prompt you'll see on the HP side.
B. Configure the receiver (PC) and begin the receive process:
You tell Kermit what to do by issuing commands to kermit at its
prompt the same way you issue commands to DOS or Unix.
MS-KERMIT> SET BAUD 9600 (19200 would work also)
MS-KERMIT> SET TIMER OFF (Let the sender be the timer)
MS-KERMIT> RECEIVE
Kermit on the PC will begin the receive process and you will
see the Kermit receive screen which shows you the status of the
file transfer. (The screen may vary depending on the version)
At this point the MS-Kermit is waiting to receive a "start"
signal from the sending Kermit (HP side). Normally Kermit will
wait for a signal for just so long and then "timeout" and quit
trying to receive a file if it hasn't heard from the sender.
Since we shut this off by using the SET TIMER OFF command, the
MS-Kermit will now wait indefinitely for the sender to begin.
C. Configure the sender (HP) and begin the send process:
KERMIT-RMB> SET BAUD 9600 (Baud must be identical)
KERMIT-RMB> SEND TESTDATA:,700
HP Kermit begins the sending process by displaying the send file
status screen on the crt. Before actually sending the file the HP
Kermit will do a few things like make sure the file is really
there, check the file type and size of the file so it can tell
the PC Kermit what it will be sending. Then it sends the "start"
signal that the PC kermit has been waiting for, and the file
transfer begins.
The sending Hp Kermit sends the file by "chopping" it into pieces
about 100 bytes long, putting each piece into a "packet" and
sending the packet to the receiving Kermit. The receiving Kermit
unwraps the "file data" from the packet and stores each piece of
file data into the destination file. When the entire file has
Kermit-RMB 1.0 Users Manual Page 5
been sent the sending kermit notifies the receiving end of this
andthen each side shuts down the file transfer and returns you to
the local prompt. You should also see some message to the effect
"file transfer complete" indicating a successful transfer.
At the prompt you can now issue another command, send or receive
another file, or quit by entering the "QUIT" command.
MS-KERMIT> QUIT
C:>
KERMIT-RMB> QUIT
Kermit Done.
(2) Local - to - Remote File Transfer
Local to Remote file transfer works identically the same with
one difference. You probably don't want to have to walk over
to the computer center and start Kermit there every time you
want to transfer a file. It would be alot easier if you
could "logon" to the remote computer and give it commands as
if you were sitting in front of the computer yourself. In
order to logon to a remote computer it must be a multi-user
(multi-tasking no doubt) system. Unix systems and VAXs are
probably the most familiar multi-user engineering systems
that you know of. In general, Personal Computers do not
handle remote logon and use.
To logon to a remote computer you use the terminal emulator
built into Kermit to start Kermit and a file transfer
running. The Kermit command "CONNECT" starts the terminal
emulator. Once the file transfer is running on the remote
computer you exit the terminal emulator by typing the "escape
sequence", get back to the local Kermit prompt (KERMIT-RMB>)
and begin the file transfer on the HP end.
The following example shows this process; the other computer
is a Unix system, but the method is the same with most
others. When you type a command, you terminate it with a
carriage return, which you can't see in the example. The
mysterious "^]c" is Kermit-RMB's escape sequence, which you
enter by holding down the Control (Ctrl) key and pressing "]"
(right square bracket), and then typing the letter C. This
example assumes the Kermit-RMB program is stored on disk as
the PROGram file "HPKERMIT".
Program Dialog: Explanation:
LOAD "HPKERMIT",1
HP-9000 Kermit-RMB Version 1.0 1 Mar 1989
? for help
Kermit-RMB 1.0 Users Manual Page 6
Kermit-RMB>set baud 1200 Set the right baud rate.
Kermit-RMB>connect Connect as a terminal.
You will see the terminal emulator screen on the HP system
with a "modeline" at the bottom telling you the baud and
terminal settings, and most important, the Kermit escape
sequence.
At this point you are connected to the remote system.
Type a carriage return to get its attention.
Login: andyc Login to the host.
password: xxxxxx (Passwords normally don't echo.)
% The remote system prompt
% kermit Start the remote kermit program
C-Kermit> The remote Kermit command prompt
C-Kermit> receive Start the remote receive program.
^]c Escape back to the S200/300.
Kermit-RMB>
You have now escaped out of the terminal emulator and the
local HP Kermit prompt is again active. You are still
connected and logged on to the remote computer, and the
remote Kermit program is waiting for the "start" signal from
your end.
Kermit-RMB> send DATAFILE:,700 send a file.
(The file is transferred...)
Kermit-RMB> Transfer complete, prompt reappears.
In this example, the user loads "KERMIT",1 and sees the
program's herald and its prompt, "Kermit-RMB>". Then the
appropriate communication speed ("baud rate") is set, you
connect as a terminal, and log in to your ID on the Unix
system. To start Kermit on the Unix system the command
kermit is given, and when it starts the C-Kermit prompt
appears. You tell it to receive a file by typing the RECEIVE
command, and then escape back to the S200/300, and tell
Kermit-RMB to send the file with the SEND command. After the
file is transferred, the user would normally connect back to
the Unix system, exit from the Kermit program there, and log
out:
Kermit-RMB> connect Connect again.
C-Kermit>quit
% The remote system prompt appears
% logout Logout from Unix or type Ctrl-D.
Kermit-RMB 1.0 Users Manual Page 7
^]c Escape back to the S200/300.
Kermit-RMB>
Kermit-RMB> quit
To transfer a file in the other direction, simply exchange
the "send" and "receive" commands above. That's the easiest
and quickest way to use Kermit. If you have problems getting
the file transfer to work use the Kermit STATUS command to
view the current Serial Port settings and look for any
obvious incorrect settings (port, speed, parity), fix them
with SET commands (described in Section 8), and try again.
Many problems can crop up when you attempt to connect two
unlike systems over RS-232. If all communication parameters
appear to be identical, then check the cabling between the
two systems - this is often the problem. Next is a quick
guide to RS-232 Cabling for HP Workstations:
Kermit-RMB 1.0 Users Manual Page 8
5.2 CONNECTING HP WORKSTATIONS For KERMIT
Below are instructions for connecting the HP Series 200 and
300 directly to a Personal Computer, modem, or your existing
data switch.
HP SIDE:
There are a few different serial interface connections for
the HP Workstation:
1. Built-in 98644 (9 Pin) interface on S/320,330,350,360 or
Built-in 98644 (25 Pin) on S/310.
2. 98626 Plug-in Serial I/O Card (50 Pin) for S/200/300. or
98628 Plug-in Datacomm I/O Card (50 Pin) for S/200/300.
3. Modem Connections
--------------------------------------------------------------
Note:
The following cables and pin diagrams are provided because
they are existing cable products that you may have available to
you already. The cables contain wiring which uses modem
handshake lines to manage the connection. Two computers either
local or remote can also be "direct" connected using a 3-wire
connection using pins 2,3 and 7. In this case there is no
hardware handshake, and you are responsible for manually
connecting and disconnecting.
5.2.1 To connect the S/320/330/350/360 9-Pin Port to the
Personal Computer 9-Pin COM Port, use:
HP 92221P 9-Pin Male (HP) to 9-Pin Female (PC)
|----------------| |-------|
| HP 320/330/350 | -------- HP 92221P -------- | PC |
|----------------| (9M) (9F) |-------|
Alternately,
The S/320 and on come shipped with a 9 Pin - to - 25 Pin
Serial adapter cable to provide an equivalent of the S/310 25
Pin Serial Port configuration on the other S/300 computers.
To connect the S/300 25-Pin Port to a 9 Pin Personal Computer
interface, use the Vectra PC Serial Printer Cable, or an
equivalent:
Kermit-RMB 1.0 Users Manual Page 9
HP 24542G 25-Pin Male (HP) to 9-Pin Female (PC)
|-----------| |--------|
| HP 310 | ----------- HP 24542G --------- | PC |
|-----------| (25-M) (9-F) |--------|
|-----------| 9-->25 Adapter |--------|
| HP 320,30 | <-----------------< <-HP 24542G-< | PC |
|-----------| HP 98561-61604 |--------|
or obtain an equivalent according to the pin assignment
below:
(s/300) 25 Pin Male 9 Pin Female (PC)
(1) Shell ---|
(2) TX -------> (2) RD
(3) RD <------- (3) TX
(4) RTS -------> (1) CD
/- (5) CTS <------- (4) DTR
\- (6) DSR <--|
(7) GND -------- (5) GND
(8) CD <------- (7) RTS
(9) nc (9) RI
(20)DTR -------> /-(6) DSR
|--> \-(8) CTS
(22)RI ---|
The adapter cable for the 9 Pin Built-in HP interface is
HP 98561-61604 (9 Pin male to 25 Pin female)
9 Pin Male (CPU) 25 Pin Female (equivalent to 310)
DTR (1) --------> (20) DTR
TX (2) --------> (2) TX The adaptor cable
RD (3) <-------- (3) RD just maps the 9
RTS (4) --------> (4) RTS Pin to the 25 Pin
CTS (5) <-------- (5) CTS Interface. No
DSR (6) <-------- (6) DSR jumpering is done.
GND (7) <-------> (7) GND
CD (8) <-------- (8) CD
RI (9) <-------- (22) RI
PGND (shell) ----- (shell) PGND
|---- (1) PGND
Kermit-RMB 1.0 Users Manual Page 10
CONNECTING to 25 PIN PC Interface:
The HP 13242G Printer Cable (25 Pin - 25 Pin) is used to
connect from the S/300 25 pin interface to a 25 Pin PC.
HP 13242G 25-Pin Male (HP) to 25-Pin Female (PC)
|----------------| |-------|
| HP 310 (or adp)| -------- HP 13242G -------- | PC |
|----------------| (25-M) (25-F)|-------|
The HP 92221P cable is equivalent to the combination of the
adapter (HP 98561-61604) and the 13242G Cable.
5.2.2. Connecting to the 98626 or 98628 Interface (50 Pin)
Both the 98626 and 98628 Serial Interfaces use the 50 to 25 DTE
Pin Cable (P/N 5061-4215) to provide an equivalent S/300
25 - Pin Serial Port.
Once the 50 Pin DTE Cable is used, then the HP 24542H cable
is used to finish the connection. Below is the
pin assignment for the 50 Pin and 24542H cables.
|----------------| HP 5061-4215 HP 24542H |-------|
| S/200 (50-Pin)| <-----------------> >----------< | PC |
|----------------| 50 25 25 9 |-------|
98626/98628 24542H
(50 PIN M) (25 PIN M) (25 PIN F) (PC 9 F)
TX (12) ----> (2) (2) TX -----> (2) RD
RD (42) <---- (3) (3) RD <----- (3) TX
RTS (13) ----> (4) (4) RTS -----> (1) CD P
S * CTS (44) <---- (5) /- (5) CTS <----- (4) DTR C
/ * DSR (45) <---- (6) \- (6) DSR <-|
3 DTR (14) ----> (20) (20) DTR -----> /-(6) DSR C
0 |-> \-(8) CTS O
0 * CD (46) <---- (8) (8) CD <----- (7) RTS M
|-- (9) RI
RI (9) <---- (22) (22) RI --|
Kermit-RMB 1.0 Users Manual Page 11
GND (48) ----- (7) (7) GND ------ (5) GND
Shell (24) ----- (1) (1) Shell --|
* HW Handshake Lines Used when 'SET HANDSHAKE ON' is used
5.2.3. Modem Connections
DCE
|----------------| HP 5061-4215 |-------|
| S/200 50-Pin | <-----------------> | MODEM |
|----------------| 50 25 |-------|
|----------------| HP ? |-------|
| S/300 25-Pin | <-----------------> | MODEM |
|----------------| 25 25 |-------|
|----------------| HP ? |-------|
| S/300 9-Pin | <-----------------> | MODEM |
|----------------| 9 25 |-------|
Kermit-RMB 1.0 Users Manual Page 12
5.3 TESTING THE RS-232 CONNECTION:
The best way to test the RS-232 Connection is to run the
terminal emulator on the computer at each end of the
connection. Although this verifies communication is occuring,
it does not guarantee that all parameters are set correctly.
It is safe to assume that baud rate, transmit and receive
lines, and parity are compatible. This is usually enough to
allow Kermit to send and receive files. Other issues may
involve hardware handshake lines (DTR,DSR and RTS,CTS) and
the number of data bits per frame (7 or 8).
If nothing occurs after both computers "connect" then Kermit
provides some very helpful commands for determining the
problem. Below also is a list of Kermit commands for
modifying the RS-232 parameters of the Serial Port.
KERMIT-RMB> CONNECT
This will start the terminal emulator. If successful, you
will see a flashing cursor in the upper-left corner of the
screen, and along the bottom of the screen will appear a
"modeline" showing the Kermit escape sequence, baud rate,
data bits setting, parity, and ON or OFF for parity check.
If this does not occur, then serial communications never
started - this either indicates that a hardware handshake has
been enabled and the required modem signals are not present,
or there is a problem with the serial interface - selftest,
or operation.
To correct the problem, return back to Kermit by pressing the
escape sequence: CTRL-]
You will see an 'escape options' line appear along the bottom
showing the terminal escape options. You complete the escape
option by typing one of the leters shown.
Type C to return to kermit.
At the Kermit prompt use the SET command to shut off
handshaking:
< remove the rs-232 cable attached to the serial interface>
KERMIT-RMB> SET HANDSHAKE OFF
KERMIT-RMB> SET LOCAL-ECHO ON Turn on terminal echo
KERMIT-RMB> CONNECT Try the connection again
If there is still no cursor, or echo of the keys you type,
there is possible indication of a program error - contact
Kermit-RMB 1.0 Users Manual Page 13
Kermit Distribution for assistance.
Once the local terminal emulator is running, try connecting
the two computers together - attach the rs-232 cable to both
ports, and run the status command to verify that both Kermits
are set up correctly:
1. KERMIT-RMB> STATUS
Run the status command on each computer. It will list such
parameters as Baud Rate, Data Bits, Handshake used (RTS/CTS
etc) Software flow control (XON/XOFF etc). Make sure these
parameters are identical for each side.
2. KERMIT-RMB> SHOW TERM
KERMIT-RMB> SHOW COMM
KERMIT-RMB> SHOW MODEM
These commands are similar to the status command and show
parameters related to the command - Comm, Terminal, Modem.
KERMIT COMMANDS FOR SERIAL PORT CONFIG and DEBUG
KERMIT-RMB> HELP or ?
KERMIT-RMB> STATUS
KERMIT-RMB> SHOW ? [comm, term, modem ]
KERMIT-RMB> SET ? [baud, parity, handshake, flow, echo ]
KERMIT-RMB> CLEAR (resets the serial port)
KERMIT-RMB> SET PORT ? (displays the installed cards)
Kermit-RMB 1.0 Users Manual Page 14
6.0 The HP-BASIC File System
The features of the HP-BASIC file system of greatest interest
to Kermit users are the form of the file specifications, and
the formats of the files themselves.
6.1 File Specifications
HP-BASIC file specifications are of the form
"/PATHNAME/FILENAME:,7xx,Unit" (assuming HP-IB 7 used)
If no path or Mass Storage Specifier (:,7xx,x) is provided
the current source directory or lif volume is used. The
default source and destination directories are set to the
current MSI when Kermit is run. To see the settings use the
STATUS command, and to change them use the SET SOURCE and SET
DESTINATION commands:
KERMIT-RMB> STATUS
KERMIT-RMB> SET SOURCE :,700,0
KERMIT-RMB> SET DESTINATION /KERMIT:,702,0
When Receiving files the Default DESTINATION MSI is used if
a msi is not specified as part of the filename specification.
For sending files the Default SOURCE MSI is used in a similar
way.
The device, path, name, and type fields may contain uppercase
letters, digits, and the special character underscore.
Illegal characters include all other special characters and
punctuation including period, colon, and semi-colon.
Files received with illegal filenames are converted to legal
LIF filenames by converting illegal characters to underscore,
and truncating the filename at the maximum allowable length.
This is 10 Characters for LIF Files and 14 for HFS.
In Kermit 1.0 all filenames are converted to uppercase when
kermit receives a send or receive command.
6.2 File Formats
HP-BASIC systems store files in 3 "user" file types and with
two data formats - ON and OFF. This allows much flexibility
in the use of the file system, but also introduces some
complexity as far as handling data files.
Kermit-RMB 1.0 Users Manual Page 15
The file types addresed by Kermit-RMB are HP-UX, BDAT, and
ASCII. The remaining three - SYSTM, BIN, and PROG are not
user accessable from Kermit and need to be converted to the
HP-UX file type in order to be transferred. This can be done
using the unique Kermit-RMB command Convert:
Kermit-RMB> CONVERT prog_file TO HP-UX
The CONVERT command is discussed in section 8.2 - Unique
commands for Kermit-RMB.
A brief description of the user file types may help to sort
out the complexity.
FILE TYPE Written With Written With
FORMAT ON FORMAT OFF
_____________________________________________________________
ASCII Same as Format OFF. LIF ascii undelimited records.
4-digit length fields start
each record.
Ascii will always be stored as length-header undelimited
string data regardless of number or string representations.
The FORMAT ON parameter is ignored when ASCII files are
accessed.
HP-UX Identical to DOS Text Lines and Numbers
with CR-LF delimiters use the null char
for each line. as a delimiter.
Hp-ux files are handled differently according to the file
type set in Kermit. The SET FILE TYPE [binary | ascii]
command is used to set this indication.
BDAT CR-LF delimited lines - Memory Image of data
same as hp-ux but includes with no delimiters.
a 1-sector file header. The internal data
is undelimited and only
decoded if the internal
file format is known.
Version 1.0 of Kermit cannot handle mixed intger,real,string
BDAT files written with Format OFF. To transfer a BDAT-Format
OFF file you will need to manually create a file (Format OFF)
of all integers, or all reals, or convert the file to a BDAT
Format ON file.
Kermit-RMB 1.0 Users Manual Page 16
The File Mode setting in Kermit determines whether the BDAT
data (format off) is to be converted to ascii numeric
representation before sending.
Kermit-RMB 1.0 Users Manual Page 17
6.3 Kermit-RMB handling of files
Kermit-RMB will open the specified file being sent and
determine its file type when the file is opened. Depending on
the file Mode (ASCII or BIN), the file data will be sent
accordingly:
Note: Throughout the Kermit File Handling sections reference
is made to File Type and File Mode. These two terms should be
understood clearly before reading further.
File Type - Refers to the HP BASIC File Types of ASCII, BDAT
and HP-UX. These are the three user file types
and are accessable from BASIC programs. The hp-ux
file type was just intoduced in BASIC 5.0 for
compatibility with the hp-ux and DOS operating
systems. Before the hp-ux type was introduced the
ASCII type was intended for ascii file
compatibility between differing operating
systems. BDAT (Binary Data) files allow storage
of numeric data in a form quickly accessable by
BASIC.
File Mode - Refers to the method used by Kermit when sending
files. The two Modes are ASCII and BINARY. In
ASCII Mode, all transmission is of an ascii text
representation. In BINARY Mode the transmission
is identical to file contents - which may have
been either text or unreadable binary. You will
see BINARY referred to also as BIN.
Changing File Mode
To make maters confusing, Kermit normally refers to handling
modes as "file type". The normal kermit command to change mode
is SET FILE TYPE. In Kermit-RMB the command has been changed
(aliased) to SET FILE MODE <mode>. In this and other Kermit
documentation you may see the mode and SET MODE functions
referred to as file type and SET FILE TYPE.
Kermit-RMB starts up in ascii mode and can be set this way
using the set command:
KERMIT-RMB> SET FILE MODE ASCII
To set file Mode BINARY the same Kermit command is used:
KERMIT-RMB> SET FILE MODE BIN
END-OF-FILE
Kermit-RMB 1.0 Users Manual Page 18
Some DOS files use the CP/M convention of indicating the end of
a file my marking the file with a Control-Z CHR$(26) character.
If the EOF-MODE is set to CTRL-Z then CHR$(26) will be appended
to the file as it is sent. You may want to set this flag when
sending files to a DOS PC by using the SET EOF ON command.
The EOF-MODE is ignored when receiving files - the CTRL-Z
character if sent will remain in the file and show up as a SB
special character in HP-BASIC. It can be editied out if not
needed.
To set ctrl-Z on or off use the following KERMIT command:
Kermit-RMB> SET FILE EOF CTRL-Z
Kermit-RMB> SET FILE EOF OFF
Kermit-RMB 1.0 Users Manual Page 19
6.3.1. Sending Files
+ ASCII FILE TYPE
ASCII MODE
Contents are treated as text and read from the file line by
line. A CR-LF sequence is appended to the end of each line
before the file is sent. The receiving Kermit will see
ascii text delimited with standard CR-LF (^M^J) delimiters.
BINARY MODE
ASCII Files are sent the same way regardless of File Mode.
+ HP-UX FILE TYPE
ASCII MODE
In ASCII Mode HP-UX files are read with Format-ON.
Therefore HP-UX files are expected to have CR-LF line
delimiters written with Format-ON. If the HP-UX file was
written with Format-OFF, File Mode BIN should be set prior to
sending the file.
BINARY MODE
While sending HP-UX files with BINARY mode set the file is
read as an image and no delimiters are looked for. The file
is transferred as a direct image of the file with no added
CR-LF item delimiters, or terminators.
+ BDAT FILE TYPE
For BDAT file types the Kermit File Mode (ASCII or BIN) refers
to the way the file data is transmitted, not the way the file
is read. This gives you the option to send BDAT binary image
data as either ASCII or BINARY. The Kermit SEND command has a
special optional form for BDAT files to allow this.
SEND <BdatFile> [<File Contents Specifier>]
ASCII MODE
Kermit-RMB 1.0 Users Manual Page 20
BDAT files are read according to instructions in the Kermit
SEND Command line, and the data is converted to ascii strings
and sent with CR-LF delimiters.
Kermit assumes that the file was written with Format ON unless
a special identifier is included with the SEND Command:
SEND Filename Will read the file with FORMAT-ON
SEND Filename INT Will access the file with Format OFF
and read the file as 16 bit integers.
SEND Filename REAL Will access the file with Format OFF
and read the contents as 64 Bit Reals.
It is up to the Kermit-RMB user to know if the ascii file was
created and written using a FORMAT-ON or OFF attribute.
Sending BDAT files written in binary mode (Format off) without
instructing Kermit will generate the error message, "File
Contents Not Ascii" and the file transfer will abort.
In all cases the data read from the file is sent in ascii text
form. BDAT Format-OFF data is converted (on the fly) to ascii
numeral and text data.
The 1-Sector file header on BDAT files will not be sent with
the file.
BINARY MODE
When sending a BDAT file with BINARY mode set, the contents of
the file are sent without conversion to ascii numeric
representation. If the file was written with Format OFF -
INTEGER (16 bit) or REAL (64 bit) data, then you must indicate
this in the Kermit SEND Command Line:
SEND Filename INT
SEND Filename REAL
Kermit-RMB 1.0 Users Manual Page 21
6.3.2 Receiving Files
SYNTAX:
KERMIT-RMB> RECEIVE [Filetype] [Filename] [File Len] [Recl]
A. KERMIT-RMB> RECEIVE
With no optional parameters specified, Kermit makes the
following defaults:
File type: hp-ux
File Name: given by sending Kermit
File Length: given by sending Kermit, or Default 100Kb
Recl: 256
Kermit-RMB will create an HP-UX file type by default. The
filename from the sending Kermit wil be used. If the name is
an illegal HP-BASIC name then it will be converted to a legal
name. name.
In this example Kermit will use the filename provided by the
remote Kermit, and use the default DESTINATION MSI when
creating and storing the file.
B. Filetype and Filename
Kermit-RMB> RECEIVE Creates an hp-ux file
Kermit-RMB> RECEIVE ASCII Creates an ASCII File
Kermit-RMB> RECEIVE ASCII NEWNAME
Kermit-RMB> RECEIVE BDAT Creates a BDAT File
Kermit-RMB> RECEIVE BDAT NEWNAME
Kermit-RMB will create a file with the name specified and if a
optional file type is provided that file type will be created
instead of a hp-ux type.
FILE LENGTH:
If an HFS file is specified as the destination MSI then no
filelength needs to be specified. HFS files are extensible, and
therefore Kermit needs no knowledge about the length of the
file. If the remote Kermit sends Attribute packets which inform
the receiving kermit of the current files length, then that
figure will be used in creating the destination file.
A problem arises when receiving to a LIF type disc, and neither
the local kermit user specifies filelength, nor the remote
Kermit-RMB 1.0 Users Manual Page 22
Kermit sends an attribute packet for the file length. In this
case the local kermit will create a destination file of default
length 100 Kb (if disc or ram volume size permits) and try to
accomodate the incomming file. If the incomming file is larger
than 100 Kb then a spill file will be created of 100 Kb and the
file will continue to be received. This process will continue
until the file is received, or disc space is consumed. If a
spill file cannot be created, then an Error message will be
sent to the sending Kermit which will abort the file transfer.
INCOMPLETE and DUPLICATE FILES:
Kermit provides two commands for handling incomplete and
duplicate files.
KERMIT-RMB> SET INC [KEEP | DISCARD]
Depending on the value of this parameter an aborted receive
(incomplete) file will either be erased (DISCARD) or saved in
its incomplete form on the disc (KEEP).
DUPLICATE FILE NAMES:
KERMIT-RMB> SET FILE WARN [ON | OFF]
This command instructs Kermit to either OVERWRITE a duplicate
file, or RENAME the incomming file to a unique filename. With
Filewarn ON the file will be renamed. If Filewarn is OFF,
then the existing file will be purged before the destination
file is created. Loss of data could occur if file warn is
off, and the receive file process is aborted.
Kermit-RMB starts up with FILE WARN ON (rename files) and
INComplete ON (Save aborted files).
Kermit will receive all files and store them as an identical
image of the file as it was received. The file is not changed
in any way, and End-of-line or end-of-file sequences are not
appended or stripped off. Therefore, there is no difference
in receiving files wheter file type is set to ascii or binary.
It will be up to the HP-BASIC programmer to understand the
internal contents of a file in order to understand how it must
be accessed, and with Format ON or OFF.
C. The last permutation of the receive command is
Kermit-RMB> RECEIVE BDAT , 50
Kermit-RMB 1.0 Users Manual Page 23
This instructs Kermit to use the filename being sent by the
sending kermit but override the HP-UX file type and create a
BDAT file type instead. The 50 instructs Kermit to create a
file with 50 defined records, and since no record length is
specified then default of 256 bytes will be used. The , is a
place holder for filename. You can still specify the
destination MSI by specifying it without a filename
Kermit-RMB> RECEIVE BDAT :,702,1 , 8
In this example a BDAT file with record length of 8 bytes is
created to store the received file. No file length was
specified in this example - Kermit depends on the sending
Kermit to notify the receiver of the proper file size to
create. If neither occurs then 391 sectors (100 Kb) is
created by default.
Kermit-RMB 1.0 Users Manual Page 24
7.0 Program Setup and Invocation
The HP-BASIC Kermit program can be run from any disk without
any special installation procedure. All the files start with
HPK____ to uniquely identify them on Columbia University's
distribution system. Once received you can rename them.
7.1 The Kermit Distribution Disc
The KERMIT Distribution disc contains the following files:
HPKERMIT Kermit Program File
HPK_HELP Kermit HELP File
HPK_INIT Kermit Initialization File
HPK_DOC Kermit User Manual
HPKGET_ME 'GET-ME' ASCII program file with document print
instructions
HPK_MISC Source Code for compiled sections, and Hex
editor (DUMP) utility
7.2 Printing the Kermit-RMB User Manual
To print this document (which you've probably figured out by
now) use the Kermit PRINT Command:
KERMIT-RMB> PRINT HPK_DOC:,7xx 701
Adjust the printer address and file MSI according to your
system.
To read the file on the CRT (not recommended) use the type
command:
KERMIT-RMB> TYPE RMBK_DOC:,7xx
7.3 Loading and Running Kermit-RMB
To load and run Kermit use the BASIC LOAD Command:
LOAD "HPKERMIT:,7xx",1
You will see the Kermit prompt appear and the program banner
Kermit-RMB 1.0 Users Manual Page 25
HP 9000 Kermit-RMB
Version 1.0 1 Mar 1989
? for help
Kermit-RMB>
Kermit-RMB> is the Kermit prompt at which you can type any
Kermit command.
Kermit-RMB> VERSION Kermit will echo the version
You may type Kermit commands repeatedly until
you are ready to quit the program, using the QUIT command.
7.4 Minimizing the Kermit Program Size
Kermit programs usually contain more than just send file and
receive file code. To minimize the amout of RAM required to run
Kermit, some functions (subprograms) have been removed from the
HPKERMIT program and placed in the HPK_MISC file, and the
HPK_HELP file. If you are not concerned about program size,
then these functions can be loaded with the LOADSUB command,
and connected permanently by re-storing the program again with
the RE-STORE "HPKERMIT" command. The following Subprograms
exist in these files and can be loaded:
FILE SUB NAME COMMAND Description
HPK_HELP SUB Kermit_help HELP Kermit Help Command
HPK_MISC SUB Hex_edit DUMP Debug tool to examine
files
The HPK_MISC file also contains the BASIC source code for the
Kermit Encode_packet and Decode_packet CSUBS in HPKERMIT. These
are provided in case you want to examine, edit, or recompile in
the future.
Minimizing Kermit
There are also subprograms in Kermit which you may not intend
to make use of that can be deleted from the main program.
Following is a list of subprograms and functionality you may
want to delete from HP Kermit. I suggest you backup the
HPKERMIT file before modifying it. The number of program lines
in each subprogram is noted in ().
Kermit-RMB 1.0 Users Manual Page 26
Subprogram Name Functionality
Terminal (680) VT-100 terminal for logging on to remote
computers and starting Kermit there. If
you are using kermit between local
computers only you dont need this.
Transmit (140) Raw ASCII file transmission - not
required if you are only using SEND and
RECEIVE commands
Convert (140) Used with the CONVERT command to convert
file types from ASCII, BDAT, HP-UX, and
PROG. This command is intended to be
used to convert PROG files to HP-UX, so
they can be sent by Kermit. See section
8.2 for a description of the CONVERT
command.
Phyread Used by the Convert and Dump (Hexedit)
Phywrite commands to access the disc volume
Get_vol_info directory, and disc file sectors.
Get_file_info
7.5 Kermit Initialization (HPK_INIT File)
Upon initial startup, the program looks for a file on the
system's current MSI called HPK_INIT and if found executes the
kermit commands in the file. The HPK_INIT file is a special
case of a "TAKE" file which is an ascii file containing a
Kermit Commands. See section 8.1 "Program Management Commands"
for a description of the TAKE command and writing TAKE files.
This initialization file may contain command macro
definitions, communications settings for one or more ports, or
any other Kermit-RMB commands, and you may create it using any
text editor capable of saving LIF ASCII files.
7.6 RAM Disk Operation:
If sufficient memory exists Kermit will create a RAM Disc and
use it for transfering and modifying files.
The file will first be copied to the RAM disc, and then sent
from there.
Kermit-RMB 1.0 Users Manual Page 27
Kermit-RMB 1.0 Users Manual Page 28
8.0 Kermit-RMB Command Descriptions
During interactive operation, all the edit function keys on the
keyboard are available to edit the command you are entering. The
recall key will recall previous commands executed. The command
line when recalled must stil contain the kermit prompt Kermit-RMB>
in order to be parsed correctly.
The notation used in command descriptions is as follows:
[square brackets] An optional field. This field may be
omitted.
{curly braces} A list of alternatives, separated by commas.
Choose one of the items from the list.
The following sections describe all the HP-BASIC Kermit commands.
Since some command descriptions may contain references to other
commands that haven't been explained yet, you might find that this
manual makes more sense on a second reading. Notice that some
commands can be abreiviated using the first letter of the
command, for example:
> SET BAUD 1200 > S B 1200
> SET FILE TYPE BIN > S F T BIN
> QUIT > Q
HP-BASIC Kermit supplies a good amount of the full set of
Kermit commands. Commands with asterics are unique to
Kermit-RMB and not found in other Kermits. Here's a summary:
8.1 Kermit-RMB command syntax
CLEAR Reset Serial Port Transfers
* CLS Clear Screen
CLOSE,CLO Close Log File
PACKET,PAC,P
SESSION,S,S
CONNECT,C,CON Start Terminal Emulator
* CONVERT
COPY
CD, MSI
DEFINE,DEF
DELETE,DEL
DO
CAT,DIR
* DUMP
Kermit-RMB 1.0 Users Manual Page 29
ECHO
EXIT
HELP,?
LOCAL
LOG
SESSION,SES
PACKET,PAC
OUTPUT
PRINT,TYPE
QUIT,Q
RECEIVE
ASCII,BDAT,HPUX
RENAME
SEND
SET,S
BAUD,SPEED,B
BLOCK-CHECK
DEBUG
DELAY
DESTINATION,DEFAULT,DES,DEF
DUPLEX
ON,FULL
OFF,HALF
ECHO,LOCAL-ECHO
OFF,REMOTE
ON,LOCAL
EOF
CTRL-Z,Z,ON
NONE,OFF,NO CTRL-Z
ESCAPE,ESC
FILE,F
NAME
TYPE,T
BINARY,IMAGE,B
WARNING,WARN
SUPERCEDE
FLOW-CONTROL,FLO,FC
XON,XOFF,X
ENQ,ENQ/ACK
HANDSHAKE,HS
INCOMPLETE
OFF,DISCARD
ON,KEEP,K
LINE,PORT
MARK
PARITY
RECEIVE,REMOTE
END-OF-PACKET,EOP,EOL
PACKET-LENGTH,PL
PAD-CHARACTER,PC
PADDING
PAUSE
START-OF-PACKET,SOP,MARK
Kermit-RMB 1.0 Users Manual Page 30
TIMEOUT
RETRY,RET
SEND
END-OF-PACKET,EOP,EOL
PACKET-LENGTH,PL,LEN
PAD-CHARACTER,PC
PADDING,PAD
PAUSE
PREFIX
CONTROL
8BIT
REPEAT,REP
TIMEOUT,TIM
START-OF-PACKET,SOP
TERMINAL,T
VT100
TIMER
MACRO
STATUS
TAKE
TRANSMIT
TYPE
VERSION
Commands for TAKE files
ECHO
COMMENT Comment a macro file
8.2 Unique commands for Kermit-RMB:
DUMP {filespec}
The file specified is copied to the ramdisc and dumped in
HEX/ASCII format one sector at a time. I used this to verify
that binary files were being transferred properly. The
dump utility also allows you to edit the contents of a disc
sector and write the modified sector to disc.
After the first sector is displayed the following keys ae
active:
TAB switches edit cursor from Hex to Ascii Edit
The following functions require the CTRL key to be held down
simultaneously:
Kermit-RMB 1.0 Users Manual Page 31
+ dumps next sector
- dumps previous sector
/ dumps the directory sector holding that
file's directory entry.
* returns you to the first data sector of file
# or N allows you to specify a sector to be dumped
Q quit
K convert hex number to decimal,ascii, and
Kermit representation.
P Dump Alpha Screen to Printer
H Display this Help
space bar write disc sector to disc (you will be asked
to confirm).
CONVERT filespec [TO] filetype
KERMIT-RMB> CONVERT Progfile:,702 hp-ux
The specified file is copied to the ramdisc and its
directory entry is changed to the specified filetype. The
original file is not touched unless it was already on the
ramdisc.
Caution:
This command does not convert the contents of the file! Only
the directory entry is changed to the filetype specified.
For example, converting an ASCII filetype to HP-UX will not
change the ASCII text length headers to CR-LF text delimiters.
TRANSFERRING PROG FILES
Note: The documentation for the SEND command does not indicate
the ability to send PROG type files. This capability was not
fully debugged before releasing version 1.0. However, if the
file specified with the SEND command is a PROG file, it will
be copied to the ramdisc (the original is not touched),
converted to an hp-ux file and sent to the receiving Kermit.
The reason this capability is not documented with the SEND
command is that getting the file back as a PROG file is not
100% guaranteed. (Kind of like taking off in a jet without
landing gear). On some occaisions the file when received back
would not load correctly or run.
As soon as this capability is debugged it will be included
with the next release of Kermit. I didn't want to hold up this
release any further. If you need this capability, let Columbia
Kermit-RMB 1.0 Users Manual Page 32
University, or myself know, and we'll be in touch as soon as
PROG file transfer is debugged.
Using a PC Hex Editor and the BASIC Hex editor (which was
written solely for this purpose) I've determined that the
original PROG file contents can be sent and received back
fully in tact. The problem arises in restoring the original
PROG file directory entry. It appears that the PROG
directory entry uses some other pointer than the logical
end of file in marking the file. This pointer is lost
after the file is sent, so restoring it when the file is
received is not always possible. I've used the DUMP command
to edit the PROG directory entry so that the file will load
and run correctly.
I believe that the solution may be to send the Directory entry
along with the file when it is sent, and parse it off when the
file is received again. Keep in touch.
8.3 GENERAL KERMIT COMMAND GROUPS
The Kermit Command descriptions that follow have been broken
into functional groupings under the folowing categories:
8.4 Program Management Commands
8.5 Local File Management Commands
8.6 Terminal Connection and Emulator Commands
8.7 File Transfer Commands
8.8 Ascii File Transmission Commands
8.9 Kermit SET Command Options
8.10 Status and Show Commands
8.11 Log and Close Commands
8.12 Macro Definitions
8.13 Kermit Server Commands (Not Implemented)
8.14 Remote Server Commands (Not Implemented)
Kermit-RMB 1.0 Users Manual Page 33
8.4 Program Management Commands
HELP or ?
Displays a one screen introduction to frequently used Kermit
commands and their editing keys, and suggests using the
question mark command to see the terse list of primary level
Kermit commands. Also available are HELP 1-6 screens which
are described in the general help.
VERSION
displays the Kermit-RMB program version number, which you
should know in case you are reporting bugs or seeking
technical assistance.
The EXIT Command
Syntax: EXIT or QUIT
EXIT and QUIT are synonyms for each other. From Kermit-RMB
they shutdown the program and reset defaults such as key
labels on, cursor on etc.
If you are in the Kermit shell from the terminal escape
CTRL-]K then EXIT returns you to the terminal session.
Don't use QUIT to exit the Kermit Shell.
The serial port RS-232 signals are left alone upon EXIT, so
that modem connections are not broken. Kermit-RMB may be
restarted with the connection intact. Use HANGUP to
explicitly break a modem connection; and use SHOW MODEM or
SHOW COMMUNICATIONS to view the status of modem signals
CARRIER DETECT, DATA SET (modem) READY, and CLEAR TO SEND.
The TAKE Command
Syntax: TAKE filespec
The TAKE command gives you way a to collect Kermit-RMB commands
into a single file, so that you can execute many commands by
typing a single (TAKE) command. TAKE instructs Kermit-RMB to
execute commands from the file that you specify.
Kermit-RMB>take modem_cmd
This directs Kermit-RMB to find the MODEM_CMD file, open it,
Kermit-RMB 1.0 Users Manual Page 34
execute the commands in it, close it, and return to the
Kermit-RMB> prompt when done.
To use the HP BASIC program editor to modify the file use the
BASIC GET command:
GET "HPK_INIT" Warning: Remeber this will erase the
Kermit program from memory.
The BASIC program editor may be used to create an init file by
beginning each line with a comment and saving the file as
ascii.
As an example of a KERMINIT command file:
10 !comment -- KERMINIT, HP-BASIC Kermit initialization file
20 !comment -- Don't overwrite my files!
25 !set warning on
30 !! a double !! is also a comment
40 !def HP set par odd,set loc on,set hands xon,set flo -
50 !none,set tim on ; semi-colon starts a comment
60 !def modem set port 2, set speed 1200
70 !comment -- I always start out by connecting to UNIX
80 !set port 9 ! use select code 9
90 !set speed 4800 ! a second ! starts a comment
100 !stop
INIT files are created with the following rules:
Line numbers are optional - if used start each line with a !
mark following the line number.
End the file with a STOP command.
!! and comment are comment lines
! separates a command from its comment
Only comments after the COMMENT command will be echoed to the
Kermit-RMB 1.0 Users Manual Page 35
screen when the file is executed.
The ECHO Command
Syntax: ECHO [string]
The ECHO command writes the string to the screen, without
adding a carriage return or line feed. ECHO may be used to
report progress during execution of a TAKE command file, or
to issue prompts during the execution of a script.
ECHO Part one completed...
The COMMENT Command
Syntax: COMMENT text
The COMMENT command lets you add comments to a TAKE command
file. The word COMMENT (or any unique prefix thereof) must
appear as the first word on the line. Double !! in the take
file will also act as a comment line.
8.5 Local File Management Commands
These commands are executed on your local S200/300, directly
without having to use the local command before execution.
This allows you to execute the most common file management
commands without leaving KERMIT. All file specifications
may include device and/or directory fields. The local file
management commands are:
CD , MSI {path:MSI}
Changes the current working directory to the given path and
MSI. All references to local file management commands will
refer to the current MSI. Don't confuse this with the
SET DEFAULT {MSI} which specifies the default path for SEND,
RECEIVE, TRANSMIT, and LOG commands.
DELETE , DEL , ERASE {filespec}
Deletes the specified file. No wildcards.
CAT or DIR [path:MSI]
Performs a CATalog of the current MSI or the MSI included in
the command specification.
Kermit-RMB 1.0 Users Manual Page 36
SPACE [MSI]
Tells how much space is available on the current disc, and what
the largest contiguous space is on a LIF disc. The number of
sectors fragmented on the disc is also reported.
TYPE or PRINT filespec [device]
TYPE displays the specified local file on the screen. PRINT
will print the file to the device specified - ie 1 or CRT,
701.
8.6 COMMANDS FOR TERMINAL CONNECTION
The CONNECT command connects your S200/300 as a terminal to
the remote system so that you may conduct a session there.
For completeness, the descriptions below contain copious
reference to the SET commands, which let you modify all sorts
of terminal and communication parameters (the SET commands are
described in a later section). Kermit-RMB is initially set up
with the following parameters, so that you only need to issue
SET commands for those that need to be changed:
Default Kermit Startup
PORT 9 Or the lowest serial port select code found.
if more than one port is found you will be asked to
select one.
TERMINAL VT102
SPEED 2400
PARITY None (Data Bits 8)
FLOW-CONTROL None
HANDSHAKE None
LOCAL-ECHO Off
ESCAPE Control-]
The CONNECT Command
Syntax: CONNECT , C
The CONNECT command establishes an interactive terminal
connection to the remote system using the currently selected
communications port with all settings currently in effect for
that port, emulating the currently selected type of terminal
Kermit-RMB 1.0 Users Manual Page 37
which is only VT-100 at this point.
During CONNECT, the characters you type are sent out the
communication port, and the characters that arrive at the
port are displayed on the screen. If you SET LOCAL-ECHO ON,
Kermit-RMB itself will display the characters you type on the
screen.
Before you issue the CONNECT command, be sure to set the
correct communication speed (SET SPEED) and any other
necessary communication parameters (e.g. SET PARITY, SET
| LOCAL-ECHO). If you have SET DEBUG ON, then received control
| characters will be displayed in special notation and no
| particular terminal will be emulated.
In addition characters that are sent to the screen will also
be recorded in a disk file if you have issued a LOG SESSION
command.
The CONNECT command turns your S200/300 into a terminal to
the other computer. To get back to the S200/300, type the
escape sequence followed by the letter C (for "Close
connection"). Usually the escape character is Ctrl-]
(Control-Rightbracket). That means, hold down the Ctrl key,
press "]", release both, and then type the letter C.
Kermit-RMB> C Connect to remote system.
Conduct terminal session here...
^]c Escape back to S200/300.
Kermit-RMB> Prompt reappears.
This is called "escaping back". You can use the SET ESCAPE
command to change the escape character to something besides
"^]".
Escape sequences:
When you press the escape sequence (CTRL-]) while in the
terminal emulator, a list of available sequence options is
displayed on the screen. Below is a list of these options:
CTRL-] C Cancel Terminal Emulation - return to KERMIT-RMB>
" K Invoke a Kermit Shell - use EXIT to return from
the Kermit shell to terminal mode.
" B Send a BREAK signal out the com port.
" Q Quit Session logging (raw download) if on
" R Resume Session Logging if previously
discontinued.
" M Toggle the modeline ON/OFF
" E Toggle Local-echo
Kermit-RMB 1.0 Users Manual Page 38
Escape-Level Commands
The escape character, normally Control-], is used to regain the
attention of Kermit-RMB during CONNECT (you can change the
escape character using SET ESCAPE). When you type the escape
character, Kermit-RMB waits for you to follow it with a single
character command. For instance, the single character command
"B" sends a break signal over the serial line. Typing any
other character (except the space bar, which is the "null
command") after the escape character will cause Kermit-RMB to
beep, but will do no harm.
? Help -- Lists the available single-character commands.
0 (the digit zero) Transmit a NUL (ASCII 0).
B Transmit a BREAK signal.
C Close the connection and return to Kermit-RMB prompt level.
K Create a Kermit Shell
M Toggle the mode line, i.e. turn it off if it is on or vice versa.
E Toggle Local-Echo ON/OFF
Q Temporarily quit logging the remote session.
R Resume logging the remote session.
When using Kermit to connect two S200/300s "back to back,"
SET LOCAL-ECHO ON so that when you CONNECT to the other
S200/300 you can see what you are typing. You should also
SET TERMINAL NEWLINE ON, so that that a linefeed will be
automatically supplied for each carriage return you type.
TERMINAL EMULATION
Kermit-RMB emulates a minimal VT-100 terminal, and is the
only terminal emulation provided. Any escape character
received will begin decoding of an escape sequence. If a
valid VT-100 sequence is detected it is executed - if the
sequence is unknown then the entire sequence is displayed on
the CRT. Presence of these sequences during a VT-100 terminal
session will indicate those VT-100 sequences that are not
implemented.
| The Mode Line
When you first issue the CONNECT command, a message will
display the status of the terminal line parameters such as
baud rate, parity, and escape sequence.
Esc: ^]C baud: 9600 parity: odd off
8.7 COMMANDS FOR FILE TRANSFER
Kermit-RMB 1.0 Users Manual Page 39
Kermit-RMB's SEND and RECEIVE invoke the Kermit file
transfer protocol for error-checked transmission of files
between Kermit-RMB and another Kermit program on the other
end of the connection. There are also commands for "raw"
transfer of files (no error checking) with systems that
don't have Kermit programs: LOG SESSION (for capturing text
files on your S200/300) and TRANSMIT (for uploading text
files to the remote system).
During file transfer, Kermit-RMB normally displays its
progress on the screen as shown below. The items in
the right-hand column are updated more or less at random.
File name: TESTDAT
Bytes transferred: 1460
% transferred: 10
Sending: In progress
Number of packets: 74
Number of retries: 2
Last error:
Last warning:
Kermit-RMB File Transfer Display Screen
File transfers involving floppy disks will be slow and noisy.
Hard disks are much faster (and quieter), and RAM disks
faster still (and totally silent). But if you store new
files on a RAM disk, be sure to move them to a real disk
before turning off your S200/300.
Before attempting to transfer files to the S200/300, make sure
you have enough room on the selected device. Kermit does not
provide a way for you to change disks during a file transfer.
However, the Kermit protocol will help you out a by creating
"spill files" which will hold the file data if the original
file created is too small to hold the incomming file. Kermit
will also attempt to prevent transfer of files that are too big
to fit in the available space. Kermit-RMB supports "file
attributes" exchange, and if the other Kermit supports this
option too, then the receiving program will check free disk
space before letting the transfer proceed.
Other attributes exchanged by Kermit-RMB include the file's
creation date and time, the system of origin, and the file
type. Some of these attributes are implemented.
Kermit-RMB 1.0 Users Manual Page 40
The SEND Command
Syntax: SEND filespec1 [filetype]
The SEND command causes a file or file group to be sent from
the local HP-BASIC system to the Kermit on the remote system.
Currently Kermit-RMB does not support server commands.
filespec1 may contain the wildcard characters "*" to match
zero or more characters within a field If filespec1 contains
wildcard characters then all matching files will be sent, in
the same order that HP-BASIC would show them in a directory
listing.
If the optional filetype is specified, then only files of
that filetype will be included in the list of files to be
transferred.
If the SEND command is specified by itself on the command line,
then you will be presented with a valid syntax description help
on the screen.
If a file can't be opened for read access, the message
Cannot access file - blank filename will exit
/default/file:,msi
Correct the name of the file you want to send at this time, and
press enter.
Once you give Kermit-RMB the SEND command, the name of each file
will be displayed on your screen as the transfer begins. Packet,
retry, and other counts will be displayed along with informational
| messages during the transfer, in the style specified by SET
| DISPLAY. If the file is successfully transferred, you will
| see "Complete", otherwise there will be an error message.
Several single-character commands may be given while a file
transfer is in progress:
| ^X (Control-X) Stop sending the current file and go on to
the next one, if any.
| ^Z Stop sending this file, and don't send any further files.
| ^C Return to Kermit-RMB command level immediately without
sending any kind of notification to the remote system.
(^Z or even ^E is preferable.)
Kermit-RMB 1.0 Users Manual Page 41
| ^E Like ^C, but send an Error packet to the remote Kermit in
an attempt to bring it back to server or interactive
command level.
| CR Simulate a timeout: resend the current packet, or NAK
the expected one.
Control-X, Control-Z, and Control-E send the proper protocol
messages to the remote Kermit to bring it gracefully to the
desired state. Control-C leaves the remote Kermit in
whatever state it happens to be in, possibly retransmitting
its last packet over and over, up to its retry limit. You
should only have to use Control-C in dire emergencies (the
remote Kermit is stuck, the remote system crashed, etc), or
at those times when you realize that you have given a file
transfer command to Kermit-RMB without first having told the
remote Kermit about it.
The RECEIVE Command
Syntax: RECEIVE [filespec] [filetype] [BDAT Rec Length]
The RECEIVE command tells Kermit-RMB to receive a file or
file group from the other system. The file is stored under
the name it was transmitted with, except that any illegal
characters are translated to _. Kermit-RMB passively waits
for the file to arrive; this command is not to be used when
talking to a Kermit server (use GET for that). You should
already have issued a SEND command to the remote Kermit and
escaped back to Kermit-RMB before issuing the RECEIVE
command. The RECEIVE command is intended for situations
where the file name and sending operation originates at the
other side.
If the optional filespec is provided, incoming files will be
stored under that name. The first incoming file is renamed
and any additional files either overwrite the first (if FILE
WARNING is OFF) or are renamed slightly from the filespec
(digits are added to the end of the filename) if
SET FILE WARNING ON
has been spacified. The filespec may include any
combination of the following fields:
Device MSI Store the file on the designated device,
in the current directory for that device. If no device
designator is given, store it on the current default device.
| Directory path Store the file in the designated directory on
| the current disk. If no path given, store the file in the
| current directory.
File name Store the file under the name given. If no name
Kermit-RMB 1.0 Users Manual Page 42
is given, store it under the name it was sent under,
converted, if necessary, to suit DOS conventions, and
modified, if SET WARNING ON, to avoid overwriting any file
of the same name in the same directory.
If an incoming file does not arrive in its entirety, Kermit-RMB
will normally discard it and it will not appear in your directory.
You may change this behavior by using the command SET INCOMPLETE
KEEP, which will cause as much of the file as arrived to be saved
on the disk.
The same single-character commands are available as during SEND:
| ^X Request that the remote Kermit stop sending the current
file, and proceed to the next one immediately. Since
this is an optional feature of the Kermit protocol, the
remote Kermit might not honor the request.
| ^Z Request that the remote Kermit terminate the entire
transfer; this is also an optional feature that may or
may not be supported by the remote Kermit.
^C, ^E, and CR operate in the same way as they do during
SEND. In this case, ^E should always do what ^Z is supposed
to do.
If WARNING is OFF and you type ^X or ^Z to interrupt the
transfer, you'll either get a partial new file, or else both
the old and the new file of that name will be lost,
depending on SET INCOMPLETE. In any case, when WARNING is
off, old files with the same name as incoming files will not
survive.
8.8 Commands for Raw Uploading and Downloading
Kermit-RMB can be used to send files to, or capture files
from, remote systems that do not have Kermit programs
available. No error checking or correction is done, so the
results can very likely contain corrupted characters, spurts
of noise, gaps, or extraneous system messages or prompts.
The command for uploading is TRANSMIT, and for downloading
LOG SESSION.
| To minimize loss of data during these operations, be sure to
| SET the FLOW-CONTROL and HANDSHAKE parameters to match the
| characteristics of the system on the other end.
The TRANSMIT Command
Syntax: TRANSMIT filespec
Kermit-RMB 1.0 Users Manual Page 43
The TRANSMIT command provides a basic raw upload
facility to send ASCII, BDAT, or HP-UX files to the host
without packets, error checking, or retransmissions, but
using all the currently selected communication parameters for
flow control, parity, etc. Information is read from the disk
file a line at a time, sent out the serial port. A disk file
line ends with carriage-return-linefeed (CRLF).
Typically, before using this command to upload a file, you would
start a text editor (preferably a line-oriented, rather than
full-screen, editor) on the remote host and put it into text
insertion mode. When the file has been completely transmitted,
you would manually enter the required sequence for getting the
editor out of text insertion mode, and then make any necessary
corrections by hand.
Here's an example for VAX/VMS:
Kermit-RMB>set flow xon/xoff
Kermit-RMB>connect Connect to VAX.
$ edt foo_txt Start the EDT editor.
*i Put it into "insert" mode.
^]c Escape back to Kermit-RMB.
Kermit-RMB>transmit foo_txt
Upload the file a line at a time. ... The lines are displayed on
your screen.
Kermit-RMB>connect
When done, connect back to the VAX.
^Z Type Ctrl-Z to exit EDT insert mode.
*exit Exit from EDT to save the file.
$
If transmission appears to be stuck, you can wake it up by
typing a carriage return on the keyboard. You can cancel
| the TRANSMIT command by typing a Control-C. Control-Z's or
other control characters in the file may have adverse
effects on the host. For this reason, you should use
TRANSMIT only for files that contain 7-bit printing ASCII
characters, spaces, tabs, carriage returns, linefeeds, and
possibly formfeeds.
Kermit-RMB 1.0 Users Manual Page 44
The LOG SESSION Command
Syntax: LOG SESSION [filespec]
The LOG SESSION command lets you copy the characters that
appear on your screen during CONNECT into the specified file
on the S200/300. You can use this command to download files
by displaying (usually with a command like TYPE) the file on
the remote system while logging is in effect.
Example:
Kermit-RMB>LOG SESSION :,0,0
Starts a file on the Ram Disc called SES_LOG by default. You
will need to have the terminal emulator active in order to
trap activity at the serial port.
Kermit-RMB>connect
Any activity appearing at the serial port will now be sent to
the CRT screen and to the log file SES_LOG.
If you are connected to a PC for example you can now copy the
file to the PC Serial port and capture it on the HP side:
C:\> COPY TEXTFILE COM1:
If you were using MS-KERMIT on the PC you could use the
TRANSMIT command to copy the file to the serial port:
MS-KERMIT> TRANSMIT TEXTFILE
The TRANSMIT command on the PC Kermit sends one line of the
file each time <enter> is pressed.
To stop session logging temporarily from the terminal emulator
you use the "Q" escape option:
CTRL-] Q Suspends Session Logging, but leaves the file
open.
To resume logging use the "R" option: CTRL-] R
To close the file and end session logging use the CLOSE
command at the Kermit prompt:
CTRL-] C Leave the terminal emulator
KERMIT-RMB> CLOSE SESSION and close the log file.
Kermit-RMB 1.0 Users Manual Page 45
During terminal emulation, the LOG command records all the
characters that arrive from the remote host in the specified
file, If you have SET LOCAL-ECHO ON, the characters you type
will also be recorded. Logging may be suspended and resumed
within a terminal session with the CONNECT escape-level
commands Q and R.
8.9 The SET Command
Syntax: SET parameter [parameter] value
The SET command establishes or modifies parameters for file
transfer or terminal connection. You can examine their
values with the SHOW or STATUS commands. The following SET
commands are available in Kermit-RMB:
ATTRIBUTES Controls whether Kermit-RMB uses Attribute
packets
BAUD Communications port line speed (synonym for
SPEED)
DEBUG Display packet contents during file transfer
DEFAULT-DISK Default disk drive for file i/o
DELAY Wait number seconds before Sending a file
DESTINATION Default destination device for incoming files
DISPLAY For selecting the type of file transfer display
END-OF-LINE Packet termination character
EOF Method for determining or marking end of file
ESCAPE Escape character for CONNECT
FLOW-CONTROL Enable or disable XON/XOFF
HANDSHAKE Half-duplex line turnaround option
INCOMPLETE What to do with an incompletely received file
LOCAL-ECHO Specify which computer does the echoing during
CONNECT
MODE-LINE Whether to display a mode line during terminal
emulation
PARITY Character parity to use
Kermit-RMB 1.0 Users Manual Page 46
PORT Select a communications port
PROMPT Change the "Kermit-RMB>" prompt to something
else
RECEIVE Request remote Kermit to use specified
parameters
RETRY Packet retransmission threshold
SEND Use the specified parameters during file
transfer
SPEED Communications port line speed (synonym for
BAUD)
TAKE-ECHO Control echoing of commands from TAKE files
TERMINAL Emulation and parameters
TIMER Enable/disable timeouts during file transfer
WARNING Specify how to handle filename collisions
The SET commands are now described in detail, in
alphabetical order.
SET ATTRIBUTES
| Syntax: SET ATTRIBUTES {ON, OFF}
Disables or enables use of Kermit file Attribute protocol
packets, which contain the size, time, and date of files
transferred with packets. This command is a safety feature
so that a small misunderstanding with another Kermit cannot
block transfers. SHOW FILE tells whether attributes are on
or off; they are normally ON.
SET BAUD, SPEED
Syntax: SET BAUD {baud rate}
SET DEBUG
Syntax: SET DEBUG {ON, OFF}
Kermit-RMB 1.0 Users Manual Page 47
With DEBUG PACKET, Kermit will display the actual packets on
your screen during file transfer. With the normal file
transfer display, regular-length packets sent and received
are displayed in fixed-size slots.
With DEBUG ON
control characters are
displayed in uparrow ("^") notation and characters with the
8th bit set are preceded by the tilde ("~") sign, and your
session log (if any) will record 8-bit bytes, rather than
7-bit ASCII, regardless of SET DISPLAY or SET PARITY.
SET DEBUG ON turns on both SESSION and PACKET debugging, and SET
DEBUG OFF turns them both off.
SET DEFAULT-DISK
Syntax: SET DEFAULT-DISK {MSI}
Specify the default disk drive to use for file transfer,
directory listings, and so forth. Use CD or MSI to change
the current directory for file management commands.
SET DELAY
| Syntax: SET DELAY number
Wait the specified number of seconds before starting a file
transfer. Intended for use when the other side needs appreciable
time to become ready, such as rearranging cables, changing
programs, etc.
SET END-OF-LINE
Syntax: SET SEND END-OF-LINE number
If the remote system needs packets to be terminated by anything
other than carriage return, specify the decimal value, 0-31, of
the desired ASCII character.
SET EOF
| Syntax: SET EOF {CTRL-Z, NOCTRL-Z}
Controls how the end of file is handled. CTRL-Z specifies a
Control-Z character should be appended to the end of an incoming
file.
Kermit-RMB 1.0 Users Manual Page 48
SET ESCAPE
Syntax: SET ESCAPE character
Specify the control character you want to use to "escape" from
remote connections back to Kermit-RMB. On most systems the
default is "^]" (Control- Rightbracket), which was chosen because
it is a character you would otherwise rarely type.
SET FLOW-CONTROL
Syntax: SET FLOW-CONTROL {XON/XOFF, ENQ/ACK, NONE}
Specify the full duplex flow control to be done on the
currently selected port. The options are XON/XOFF and NONE.
The specified type of flow control will be done during both
terminal emulation and file transfer. By default, XON/XOFF
flow control is selected. XON/XOFF should not be used on
half-duplex (local echo) connections, or when the other
system does not support it. If XON/XOFF is used, HANDSHAKE
should be set to NONE.
SET INCOMPLETE
Syntax: SET INCOMPLETE {DISCARD, KEEP}
Specifies what to do with files that arrive incompletely:
discard them or keep them. They are normally discarded.
SET LOCAL-ECHO
Syntax: SET LOCAL-ECHO {ON, OFF}
Specify how characters are echoed during terminal emulation
on the currently selected port. ON specifies that
characters are to be echoed by Kermit-RMB (because neither
the remote computer nor the communications circuitry has
been requested to echo), and is appropriate for half-duplex
connections. LOCAL-ECHO is OFF by default, for full-duplex,
remote echo operation.
SET PARITY
Syntax: SET PARITY {EVEN, ODD, MARK, SPACE, NONE}
Specify the character parity to be used on the currently
Kermit-RMB 1.0 Users Manual Page 49
selected port. You will need to SET PARITY to ODD, EVEN,
MARK, or possibly SPACE when communicating with a system, or
over a network, or through modems, concentrators,
multiplexers, or front ends that require or impose character
parity on the communication line. For instance, most HP
mainframe computers use EVEN or MARK parity; Telenet
normally uses MARK parity. If you neglect to SET PARITY
when the communications equipment requires it, the symptom
may be that terminal emulation works (well or maybe only
partially), but file transfer or script INPUT commands do
not work at all.
NONE means that no parity processing is done, and the 8th
bit of each character can be used for data when transmitting
binary files. If parity is other than none, then there will
be 7 data bits.
If you have set parity to ODD, EVEN, MARK, or SPACE, then
Kermit-RMB will request that binary files be transferred
using 8th-bit-prefixing. If the other Kermit knows how to
do 8th-bit-prefixing (this is an optional feature of the
Kermit protocol, and some implementations of Kermit don't
have it), then 8-bit binary files can be transmitted
successfully. If NONE is specified, 8th-bit- prefixing will
not be requested. Note that there is no advantage to using
parity. It reduces Kermit's file transfer efficiency
without providing additional error detection. The SET
PARITY command is provided only to allow Kermit to adapt to
conditions where parity is required, or 8-bit transmission
is otherwise thwarted.
| If parity is in use, then the display during terminal
| emulation, as well as any session log, will be 7-bit ASCII,
| unless you have SET DEBUG ON.
SET PORT
Syntax: SET PORT {number}
SET PROMPT
Syntax: SET PROMPT [string]
This command allows you to change the HP-BASIC Kermit program's
prompt to any other string.
SET RECEIVE
Kermit-RMB 1.0 Users Manual Page 50
Syntax: SET RECEIVE parameter value
This command lets you modify the ways in which Kermit-RMB
asks the other Kermit to behave. That is, it controls the
file transfer protocol options for packets sent to
Kermit-RMB by the other Kermit. The parameters and values
you specify in the SET RECEIVE command are sent to the other
Kermit during initial negotiations.
| END-OF-LINE number The ASCII value of terminating character
to look for on incoming packets. Normally carriage return.
Use this command if the other Kermit is terminating its
packets with some other control character.
| PADCHAR number Ask the remote Kermit to use the given
control character (expressed as a decimal number 0-31, or
127) for interpacket padding. Kermit-RMB should never
require any padding.
PADDING number Ask the remote Kermit to insert the given
number of padding characters before each packet it sends.
Kermit-RMB never needs padding, but this mechanism might be
required to keep some intervening communication equipment
happy.
START-OF-PACKET number If the remote Kermit will be marking
the beginning of packets with a control character other than
Control-A, use this command to tell Kermit-RMB about it (the
number should be the decimal ASCII value of a control
character). This will be necessary only if the hosts or
communication equipment involved cannot pass a Control-A
through as data, or if some piece of communication equipment
is echoing packets back at you.
TIMEOUT number Ask the remote Kermit to time out and
retransmit after the given number of seconds if a packet
expected from Kermit-RMB has not arrived. Use this command
to change the other Kermit's normal timeout interval.
SET RETRY
Syntax: SET RETRY number
Sets the number of times a packet is retransmitted before
the protocol gives up. The number of retries can be between
1 and 63, and is 5 by default. This is an especially useful
parameter when the communications line is noisy or the
remote host is very busy. The initial packet of a file
exchange is given three times as many retries to allow both
systems to become ready.
Kermit-RMB 1.0 Users Manual Page 51
SET SEND
Syntax: SET SEND parameter value
The SET SEND command is used primarily to override
negotiated protocol options, or to establish them before
they are negotiated.
END-OF-LINE number ASCII value of packet terminator to put
on outbound packets. Normally carriage return. Use this
command if the other Kermit needs its packets terminated
with a nonstandard control character.
PACKET-LENGTH number Use this as the maximum length for
outbound packets, regardless of what the other Kermit asks
for. Normally, you would use this command only to send
shorter packets than the other Kermit requests, because you
know something the other Kermit doesn't know, e.g. there's
a device on the communication path with small buffers.
PADCHAR number Use the specified control character for
interpacket padding. Some hosts may require some padding
characters (normally NUL or DEL) before a packet, and
certain front ends or other communication equipment may need
certain control characters to put them in the right modes.
The number is the ASCII decimal value of the padding
character, (0 - 31, or 127).
PADDING number How many copies of the pad character to send
before each packet, normally zero.
PAUSE number How many milliseconds to pause before sending
each packet, 0-127, normally zero. This may help
half-duplex or slow systems prepare for reception of our
packet. Padding characters are sent only after the time
limit expires.
QUOTE number Use the indicated printable character for
prefixing (quoting) control characters and other prefix
characters. The only reason to change this would be for
sending a very long file that contains very many "#"
characters (the normal control prefix) as data.
START-OF-PACKET number Mark the beginning of outbound
packets with some control character other than Control-A.
This will be necessary if the remote host or the
communication channel cannot accept a Control-A as data, or
if it echoes back your packets. The remote host must have
been given the corresponding SET RECEIVE START-OF-PACKET
command.
TIMEOUT number Change Kermit-RMB's normal timeout interval;
this command is effective only if TIMER is set to be ON; it
Kermit-RMB 1.0 Users Manual Page 52
is normally ON, with a default interval of 13 seconds.
SET SPEED
Syntax: SET SPEED rate
Set the transmission speed (in bits per second, commonly
called baud) of the currently selected terminal
communications port to 300, 1200, 1800, 2400, 4800, 9600.
19200 baud has not been tested.
Kermit-RMB appears to log packets at an effective rate of
1200 baud. Transfers to a 2048 byte buffer allow baud rates
of about any speed, but the packet decoding will proceed at
about 1200 baud. (uncompiled BASIC).
SET BAUD is a synonym for SET SPEED.
SET TAKE-ECHO
| Syntax: SET TAKE-ECHO {ON, OFF}
Specifies whether screen display should occur during
implicit or explicit TAKE operations on KERMINIT or other
Kermit-RMB command files, and during evaluation of macro
definitions by the DO command. Handy for finding errors in
TAKE files or macro definitions.
SET TERMINAL
Syntax: SET TERMINAL {type}
VT-100 is the only terminal available with rev. 1.0
| NEWLINE-MODE {ON, OFF}
ON sends a carriage-return-linefeed combination (CRLF) when
you type carriage return (CR) during terminal emulation.
OFF (default) just sends a CR when you type CR. Useful in
conjunction with SET LOCAL-ECHO ON when CONNECTing two
S200/300's back-to-back.
SET TIMER
Syntax: SET TIMER {ON, OFF}
This command enables or disables the timer that is used
Kermit-RMB 1.0 Users Manual Page 53
during file transfer to break deadlocks that occur when
expected packets do not arrive. By default, the timer is
ON. If the other Kermit is providing timeouts, you can
safely turn the timer OFF to avoid unnecessary
retransmissions that occur when two timers go off
simultaneously.
SET WARNING
Syntax: SET WARNING {ON, OFF}
Specify what to do when an incoming file is about to be
stored under the same name as an existing file in the target
device and directory. If ON, Kermit will warn you when an
incoming file has the same name as an existing file, and
automatically rename the incoming file (as indicated in the
warning message) so as not to destroy (overwrite) any
existing one. If OFF, the pre-existing file is destroyed,
even if the incoming file does not arrive completely.
WARNING is ON by default as a safety measure, and the
| current setting may be observed in the SHOW FILE display.
The new name is formed by adding numbers starting at the
last character of the name.
8.10 The STATUS and SHOW Commands
Syntax: STATUS
The STATUS command displays the values of all the current
SET options. There are currently no operands for the STATUS
| command. Use the SHOW command to see logically-grouped
| settings, e.g. SHOW COMMUNICATIONS, SHOW TERMINAL.
| The SHOW Command
Syntax: SHOW option
Most parameters that may be altered with SET commands are
displayed by the STATUS command. The SHOW command is used
for displaying macro definitions, key redefinitions, file
transfer statistics, translations, and other common
groupings.
SHOW COMMUNICATIONS displays the settings of the current
serial port (port, speed, parity, echo, etc) and the status
of modem signals Carrier Detect, Data Set (modem) Ready, and
Clear To Send.
SHOW FILE displays the file transfer control settings, such
Kermit-RMB 1.0 Users Manual Page 54
as the current path, file discard, attributes packets
on/off, warning, end-of-file convention, etc.
SHOW KEY allows you to determine a key's identification code
and what it will send in CONNECT mode, most useful for
obtaining the identification of a key when SET KEY commands
will be placed in a TAKE file. This command can be done
only interactively (use a ? to see all defined keys).
Refer to the SET KEY description for details.
SHOW LOGGING Displays the names of the session, packet, and
transaction logs, and tells whether logging is in effect.
SHOW MACROS [macroname] displays the definitions of all
currently defined macros, as well as the amount of space
left for new macro definitions. A macro name, or
abbreviation, can be included to restrict the list, e.g.
SHOW MACRO HP will display the definition of the HP macro,
and SHOW MACRO X will list the definitions of all macros
whose names begin with X.
SHOW MODEM displays the status of the modem signals DSR
(dataset ready, modem tells the S200/300 that it is turned
on and in data mode), CTS (clear to send, modem grants the
S200/300 permission to send data), and CD (carrier detect,
local modem tells the S200/300 that it is connected to the
remote modem). The results may be misleading if your
asynchronous adapter, or the connector or cable that is
attached to it, is strapped to supply these modem signals
itself.
SHOW PROTOCOL displays the values of the Kermit
protocol-related parameters, including all the SET SEND and
SET RECEIVE parameters, plus whether the timer, attribute
packets, and logging are enabled.
SHOW SCRIPTS displays the script-related variables.
SHOW SERVER displays which server functions are enabled and
disabled.
SHOW STATISTICS displays counts of characters sent and
received during file transfers, for both the most recent
transfer and the entire session, and an estimate of the
average baud rate while sending and listening.
SHOW TERMINAL displays the terminal settings, which terminal
is being emulated, the tab stops, etc.
SHOW TRANSLATION displays the entries in the 256 byte input
translation table. Values are expressed numerically to
avoid confusion with different display adapters, and the
command shows only entries for which input and output codes
differ.
Kermit-RMB 1.0 Users Manual Page 55
8.11 The LOG and CLOSE Commands
Syntax: LOG {PACKET, SESSION} [Filespec]
CLOSE {PACKET, SESSION,}
The LOG comman tells Kermit-RMB to record the terminal
session, or the file transfer protocol packets themselves in
a log file. Open log files may be closed (and the
associated logging disabled) using the CLOSE command. Open
log files are also closed when you EXIT from Kermit.
LOG SESSION is used to record your terminal emulation
typescript. It was described above, in the section on file
transfer.
The LOG PACKETS Command
Syntax: LOG PACKETS [filespec]
The packet log is for diagnostic purposes and records each
Kermit protocol packet sent and received in printable
format. Control characters are written as caret-letter and
characters with the high bit set are shown as their 7-bit
part preceeded by a tilde. The default filename is
PKT_LOG. If you experience difficulty with file
transfers the packet log is valuable in discovering who said
what to whom, even though a copy of the Kermit book is
needed to unravel the meaning of each character in a packet.
8.12 Macro Definitions
Like TAKE files, macros provide a way of collecting many
commands into a single command. The difference between a
macro and a TAKE file is that Kermit keeps all its macro
definitions in memory, and can execute them as many times as
you like, without having to look them up on disk, whereas
every time you issue a TAKE command, Kermit has to access a
disk. But... you can have as many TAKE command files as
you like, and they can be as long as you want, whereas
Kermit-RMB's memory for storing macro definitions is
limited. You can put macro definitions and DO commands for
them in TAKE files, or for that matter, you can put TAKE
| commands in macro definitions. There is a limit of 25
defined macros at a time.
The DEFINE Command
Kermit-RMB 1.0 Users Manual Page 56
Syntax: DEFINE macro-name [command [, command [, ...]]]
Kermit-RMB command macros are constructed with the DEFINE
command. Any Kermit-RMB commands may be included. Example:
define telenet set parity zero, set baud 1200, connect
A macro can be undefined by typing an empty DEFINE command
for it, like
define telenet
| A macro definition may be up to 255 character long. Use a
hyphen to continue lines longer than 80 characters.
The DO Command
Syntax: DO macro-name [parameters...]
A Kermit-RMB macro is invoked using the DO command. For
instance:
Kermit-RMB> DEF TEST SET BAUD 2400 , LOG PACKET , SEND HEX
Kermit-RMB> DO TEST
8.13 Kermit Server Commands
Kermit Server capability is not implemented in version 1.0
8.14 Commands for Controlling Remote Kermit Servers
Kermit Client capability is not implemented in version 1.0
This functionality in some Kermit programs allows users to
send commands to the remote computer's operating system for
execution.
Kermit-RMB 1.0 Users Manual Page 57
9.0 Future Enhancements, Missing Features and Reporting Bugs
The most important missing feature in Kermit-RMB is the Server
and Client capability. The Server operation allows a "client"
kermit process to request file send and receive from a remote
Kermit without having to interact each time to execute the
Kermit SEND or RECEIVE command. Instead, the remote Kermit is
issued the SERVER command once after which the GET and RECEIVE
commands are used to initiate file transfers.
The REMOTE command group allows you to issue Kermit
configuration commands to a remote Kermit without having to be
physically at the remote computer.
The HOST command group is a set of commands which enable you
to execute operating systems commands, such as file
management, on the remote host.
The following functions in version 1.0 of Kermit-RMB have been
implemented, but could be more fully implemented in future
revisions of the program -
- More complete VT-100 emulator
- Server/Client Packets (GET, I)
- More complete HELP facility
- Complete implementation of the SET SEND and SET RECEIVE
commands.
- Implement half-duplex communication with flow control
Reporting Bugs
If you want to report bugs, or more importantly, if you would
like to submit bug fixes, or enhancements you've made to
Kermit-RMB you should contact Columbia University Kermit
Distribution at the Center for Computing Activities, and
myself at the address on the cover of the users manual or in
the header of the HPKERMIT program file.
I'll also request your help in distributing the program and
documentation to any HP-BASIC users that you know of.
Kermit-RMB 1.0 Users Manual Page 58