' ... PDP-11 KERMIT ...

'          ... PDP-11 KERMIT         ...


PDP-11 KERMIT Program: Brian Nelson Language:

Macro-11 Documentation: Brian Nelson Version:

3.54 " Date: September, 1986 J Systems Supported: RSTS/E,

RSX-11M/M+, P/OS, Micro-RSX, RT-11 and TSX+ $ Kermit-11

Capabilities At A Glance: ( Local operation:

Yes( Remote operation: Yes( Transfer text files:

Yes( Transfer binary files: Yes( Wildcard send:

Yes( File transfer interruption: Yes( Filename collision avoidance: Yes( Can time out: Yes( 8th-bit prefixing: Yes( Repeat count prefixing:

Yes( Alternate block checks: Yes( LONG Packet protocol support Yes' Sliding Windows protocol support No ( Terminal emulation: Yes( Communication settings: Yes<

Transmit BREAK: Yes (depends on system)( IBM mainframe communication: Yes( Transaction logging:

Yes( Session logging: Yes( Debug logging:

Yes( Packet logging: Yes( Act as server:

Yes( Talk to server: Yes( Advanced server functions: Yes( Local file management: Yes(

Command/Init files: Yes( File attributes packets:

Yes' Command macros: No ( Raw file transmit:


F PDP-11 KERMIT Page 1-


F PDP-11 KERMIT Page 1-

3 File systems on the PDP-11 File specifications. % The general format of a file name is: +


DECNET node name, for example, FUBAR::, ifF applicable. 'Device', if present, refers to the physical device or$ logical name where the file resides. F For RSTS/E, 'device' can be a physical device, such as

DB0: or DU1:,F or it can be a user or system logical name which may include both aF physical device name and a directory name. If the device name is aF logical name, is it composed of 1 to 9 alphanumeric characters,F including '$', as in DISK$ONE:, LB: and so on. For instance, the DCL

system command ! $ ASS/SYS DB1:[200,210] SRC$DIR F would associate both the device DB1: and directory [200,210] withF SRC$DIR:.

Explicitly given directories override directory namesF imbedded in a logical name. Names longer than nine characters are truncated by the executive. F In the case of RSX-11M/M+ and RT-11, the device name can be either aF physical name, such as DU0:, or a logical name which will translate to$ a physical device name, such as LB:. F On RSTS/E and RSX-11M/M+, the [directory] is a UIC

(userF identification code) or PPN (project,programmer) number of the formatF [NNN,MMM]. All users are assigned a UIC (or PPN) when accounts areF created, this is the number you give to LOGIN to log into the system.F It is also your default UIC (or PPN). Micro-Rsx and P/OS may haveF directories in either UIC format or named directory format, such asF [1,2] or [KERMIT]. For P/OS, the default directory is

[USERFILES].# Directories are not used for RT-11. F The NAME field is the primary identifier for the file. The name canF be one to nine characters for RSX-11M/M+ and P/OS, and one to sixF characters for

RSTS/E, RT-11 and TSX+. The TYPE field is usually usedF to group files according to some convention. For example, XXX.FTNF refers to a

Fortran-77 source file, FOO.C to a 'C' source file, and" K11POS.TSK refers to a task image. F The version field is applicable ONLY to RSX type systems. The default- version is always the highest version number. F All systems mentioned support some sort of filename wildcarding, theF flexibility of which varies by executive. All support the use of '*'F to represent either a fully wildcarded NAME or

TYPE. RSTS/E supportsF the use of '?' to match any single character, whereas the others use aF '%' to match any single character. The

RSTS/E Kermit server willF translate '%' to '?' internally for the

GET and REMOTE DIR commands (see chapter on the SERVER).

F PDP-11 KERMIT Page 1-

4 File systems on the PDP-11 ! Examples of wildcarded filenames: 9

*.B2S match any file with a TYPE of B2S E K11%%%.MAC match any file starting with K11, followed by C one to three characters, with a TYPE of MAC ; K11???.MAC

Same as above, but for RSTS/E only. E XYZ.*;* All versions of files with a NAME of XYZ with < any

TYPE (RSX-11M/M+ and P/OS only). - File formats (binary and text)

RT-11 and TSX+ F RT-11 treats all files as a contiguous stream of characters. There isF no information stored in the directory to tell the system (or program)F that a file is readable text (source program, runoff document,...) orF consists of binary data (executable program, object file, .SYSF file,...). An application program like Kermit-11 needs to know whatF type of file to expect, thus the presence of the

SET FILE TYPE commandF (discussed later). The only real convention is that text files areF streams of seven bit data with each record terminated by a carriageF return/line feed character sequence and that binary files normallyF follow a filename TYPE convention. The TYPE

(.SAV, .SYS, ...) is whatF Kermit-11 will look at to decide if a file should be sent as a text or

binary file. RSTS/E, P/OS and RSX-11M/M+ F These systems can provide for a large number of file attributes forF each file by using either FCS11 (RSX-11M/M+) or RMS11 (all). TextF files are normally considered to be either STREAM format (FB$STM) orF VARIABLE with implied carriage control (FB$VAR and FB$CR). RSTS/E hasF historically defaulted to STREAM, whereas the RSX based systems useF VARIABLE. Kermit-11 follows those defaults when creating files unlessF told to do so otherwise by the presence of attribute data.

TheF conversion of the internal data representation to one that can beF transmitted to another Kermit is transparent for these types of files.F Both the file attributes and the filename TYPE are examined byF Kermit-11 to determine if a file needs to be sent as a text fileF (default) or a binary file. Additionally, on RSTS/E Kermit checks theF file protection code, as one of the bits in it is used to flag an executable file (bit 6). F In all cases, unless (at this time)

Kermit-11 is talking to anotherF Kermit-11, or if Kermit-11 can't tell if a file is consists of binaryF data, the command SET FILE TYPE

FIXED must be used to force Kermit toF either send or get a nontext file correctly. When Kermit-11 isF running in binary mode, all data is read from (or written to) the fileF without any translation or internal record control information. AnyF attribute information in the file's directory entry is ignored and theF data read (or written) in

512 byte unformatted blocks. Thus it isF indeed possible to transfer files like task images and objectF libraries. Since Kermit-11 supports a subset of a protocol featureF called 'attributes', two

Kermit-11's connected together can also

F PDP-11 KERMIT Page 1-

5 File systems on the PDP-11 F correctly transfer files other than simple text and unformatted binary- files, such as RMS indexed or relative files. 2 Saving files on the PDP-11 from your microcomputer F You can send textual files to Kermit-11 without any specialF considerations as Kermit-11 defaults to creating normal text files.F However, if you are sending a binary file (perhaps an EXE) from say,F your Rainbow under MSDOS, you would need to tell Kermit-11 to expectF binary data. This is done with the Kermit-11 command SET

FILE TYPEF FIXED. This will force Kermit-11 to write the data out exactly as itF comes, in 512 byte unformatted records. Sending the same file back toF the Rainbow would not require any special action since the file, as itF sits on the PDP-11, has the proper information in the directory entryF to tell Kermit-11 that the file is binary. As a note, for RT-11 youF would need to use a filetype that is normally considered 'binary' like' SAV or OBJ (see above notes for RT-

11). F Never try to do a wildcarded send with mixed binary and text filesF with the file type set to FIXED. The result could be unusable as notF all systems store text data in the same internal format. For example,F if Kermit-11 is forced into binary mode (via SET FIL TYP FIX) and isF requested to send a file with implied carriage control (normal for RSXF text files), it will actually send, for each line, two bytesF representing the record length, followed by the data and then followedF by a ascii NUL to pad the record to an even length. That is notA incorrect, rather, it is EXACTLY how the data was stored on disk. F In general, avoid sending anything other than unformatted binary filesF and text file to unlike systems. For example, requesting a RMSF indexed file from the PDP-11 to be sent to a PC would case Kermit-11F to send it as a binary file, but the file attributes would be lost.F Sending such a file back to the PDP-11 would result in an unusable< file unless you could reconstruct the attribute information.

F PDP-11 KERMIT Page 1-

6 Program Operation F Kermit-11's prompt is normally "Kermit-11>".

This can be changed ifF need be via the SET PROMPT command. Invoking

Kermit-11 is very site

dependent. RSTS/E F If Kermit-11 has a ccl definition, it would likely be invoked as "KER"F or "KERMIT". If not, try "RUN $KERMIT", as this is a likely placeF where Kermit-11 may have been put.

Otherwise consult your local

support staff.

RSX-11M/M+ F If Kermit-11 has been installed, it most likely will have a task nameF of ...KER which means that type "KER" should get things running. If& not, consult your local support staff.

RT-11/TSX+ F On version 5 of RT-11, programs can be run simply by typing theF filename. Thus, if there is a file SY:KERMIT.SAV, simply typeF "KERMIT". If this fails, contact your local support staff for

assistance. P/OS F Kermit-11 is generally run from DCL on P/OS.

The program is invokedF via the DCL RUN command, as in RUN K11POS or

RUN KERMIT, depending on what the task image name is. F Note that for the case where Kermit is installed (for RSTS/E andA RSX-11M/M+) that Kermit-11 can get command line arguments, as in: B $ KER

SERV Kermit starts as a server.> > KER send fubar.txt Kermit sends the file. F Otherwise, the program is run interactively from the Kermit-11> prompt. $

KERMIT Kermit-11 V2.33 > Kermit-11>SET BLO 3

Changes checksum type.< Kermit-11>SER Enter

Kermit server. F Note that whenever Kermit-11 starts up, it will always try to find aF file called KERMIT.INI in your current directory.

This file canF contain any valid Kermit command, though the usual use of this is toF place various Kermit-11 SET commands in it. If this file does NOTF exist, it will try to find it in LB:[1,2]KERMIT.INI

(excluding RT-11).F In addition to the .INI file, commands may be placed in a file and8 then executed via the Kermit-11 TAKE (or @) command.

F PDP-11 KERMIT Page 1-

7 Local and Remote operation F Kermit-11 by default assumes that all file transfers will occur overF the terminal line that you are currently logged in on (TI:, TT:, KB:).F This is known as REMOTE mode

(the PDP-11 is the remote system). ThisF would be the desired case if you are running Kermit on a microcomputerF such as a Rainbow and are currently logged into the PDP-11 through theF micro. However, if you wanted to dial out, say by an autodial modem,F from the PDP-11 to another system, you need to tell Kermit-11 to useF some other terminal line.

This would be called LOCAL mode (the PDP-11F is the local system). The line can be altered with the SET LINEF command (see section on SET and CONNECT). A SET LINE command is doneF implicitly if Kermit-11 finds itself running on a PRO/350, under either P/OS, RT-11 or

TSX+. F Since support of parity varies by both interface type (DL11 vs

DZ11)F and by operating system, Kermit-11 makes NO attempt to find out whatF the current parity of it's line is. Kermit-11 generates it's own0 parity which is set with the SET PARITY command. F There are a couple of things to point out regarding Kermit-11 and( LOCAL mode

(you did a SET LINE command). F The system manager may have lines other than your own protectedF (or owned by the system). On

RSTS/E lines are often madeF unaccessible unless your account possesses the neededF privilege(s). On RSX-11M/M+, privilege is required to alterF settings on any other terminal line. You may have to talk toD your system manager to get access to an outgoing terminal line. F Once connected to a modem through another line, a means mustF exist for the connection to be broken (if the host you areF calling won't do it). Given that your line has full or partialF modem control (DZV11, DZ11,

DH11, DHU/V11) the RSX, RT-11/TSX+F and RSTS/E Kermits have a HANGUP

(or DISCONNECT) command, whichF instructs the system to disconnect the modem. Unless this isF done, you never get disconnected and could run up a tidy phone

bill. F Kermit-11 has, as of v3.53, a rudimentary command line editor. YouF can recall previous commands with the UP-Arrow key, and exit theF command with the LEFT and RIGHT arrow keys. The

RUBOUT key, ofF course, deletes characters, while the control R key retypes the line.F Control E moves to the end of the line and control H moves to the start of the line.

F PDP-11 KERMIT Page 1-

8 Kermit-11 commands / Kermit-11 has the following commands available: @ Synonym for TAKE& BYE Logout a remote server* CONNECT Connect to a remote system' COPY

Local copy of a file(s) ) CWD Set new working directory )

DELETE Local delete of a file(s) 4 DIAL Have a connected modem dial a number' DIRECT Local directory display $

DISCONNECT Hangup a remote line" DISPLAY Internal debugging)

ERASE Local delete of a file(s) - EXIT Exit to system8 FINISH Stop a remote server without logging out2 GET

Get a file(s) from a remote server$ HANGUP Hangup a remote lineA HOST Execute system command locally (where applicable) C LOCAL Force interpretation of command to the local system ! LOGFILE Create a log file QUIT Same as EXIT7 PRINT Print a file locally (where applicable) 6

RECEIVE Receive a file(s) from a remote kermit? REMOTE

Prefix for file management commands to a server + RENAME Local rename of filename(s) 1 SEND Send a file(s) to a remote

Kermit % SERVER start a Kermit server ( SET Change

Kermit parameters) SHOW Display Kermit parameters - TAKE

Execute indirect command file 1 TYPE Local display of file on terminal > WHO Local display of logged in users (RSTS/E only)

F PDP-11 KERMIT Page 1-

9 Commands for file transfer + The SEND

Command Sending a file or files: SEND filespec F The SEND command causes a file or file group to be sent from theF PDP-11 to the other system. If filespec contains wildcard charactersF then all matching files will be sent, in alphabetical order (accordingF to the

ASCII collating sequence) by name. If filespec does notF contain any wildcard characters, then the single file specified by filespec will be sent. SEND Command General Operation: F Files will be sent with their PDP-11 file name and type (for instanceF FOO.BAR). Each file will be sent according to the record type andF attributes recorded in its file descriptor. Kermit-11 attempts toF translate all formats of text file to a format usable on any system.F Note that there is no need to set the FILE TYPE parameter for sendingF files, since

Kermit-11 always uses the information from the fileF directory entry and the filetype (extension) to determine how to send the file.

F If communication line parity is being used (see SET PARITY), Kermit-

11F will request that the other Kermit use a special kind of prefixF notation for binary files. This is an advanced feature, and not allF Kermits have it; if the other Kermit does not agree to use thisF feature, binary files cannot be sent correctly. This includesF executable programs (like .EXE files, CP/M .COM files), relocatableF object modules (.OBJ files), as well as any text file containing" characters with the eighth bit on. F Kermit-11 will also ask the other Kermit whether it can handle aF special prefix encoding for repeated characters. If it can, thenF files with long strings of repeated characters will be transmittedF very efficiently.

Columnar data, highly indented text, and binary4 files are the major beneficiaries of this technique. F If you're running Kermit-11 locally, for instance dialing out from aF PDP-11 to another system using an autodialer, you should have alreadyF run Kermit on the remote system and issued either a RECEIVE or aF SERVER command. Once you give Kermit-

11 the SEND command, the name ofF each file will be displayed on your screen as the transfer begins. AsF the transfer continues, you will get a small display of the packetF count along with the number of packets rejected. See the SET TERMINALF and SET UPDATE commands for more information. You may also typeF Control-X or Control-Z to interrupt the current file or file group.F Control-E will also abort the transfer by sending an 'error' packet to the other Kermit.d

oF PDP-11 KERMIT Page 1-

10 Commands for file transfer , The RECEIVE command Syntax: RECEIVE [filespec]v F The RECEIVE command tells

Kermit-11 to receive a file or file groupF from the other system.

The name is taken from the incoming file header. F If an incoming file has the same name as an existing file, Kermit-11F will by default create a new file. On RT-11 and RSTS/E, the old fileF will be deleted by the executive. On RSX-11M/M+ and P/OS, a new fileF with a higher version number will be created. To avoid files being3 superceded, see the SET FILE [NO]SUPERCEDE command. F Incoming files will all be stored with the prevailing file type, ASCIIF by default, which is appropriate for text files. If you are askingF Kermit-11 to receive binary files from a microcomputer or other 8-bitF system, you must first type SET

FILE TYPE FIXED. Otherwise, an errorF may occur when receiving the file.

Please note that this does NOTF apply to two Kermit-11 programs connected to each other. In that caseF the sending Kermit-11 will tell the receiving Kermit-11 to switch to binary mode if need be. F If parity is being used on the communications line, then 8thbitF prefixing will be requested. If the other side cannot do this, binary& files cannot be transferred correctly. F If you are running

Kermit-11 locally, you should already have issued aF SEND command to the remote Kermit, and then escaped back to Kermit-11.> As files arrive, their names will be displayed on your screen. F If a file arrives that you don't really want, you can attempt toF cancel it by typing

Control-X; this sends a cancellation request toF the remote Kermit. If the remote Kermit understands this request (notF all implementations of

Kermit support this feature), it will comply;F otherwise it will continue to send. If a file group is being sent,B you can request the entire group be cancelled by typing Control-Z. F Normally, one runs the remote

Kermit as a SERVER, thus the RECEIVEF command is never used, rather, the GET command, described next, is used. *

The GET command - Syntax: GET [remote-filespec] F The GET command requests a remote Kermit server to send the file orF file group specified by remote-filespec. This command can be usedF only when

Kermit-11 is local, with a Kermit server on the other end ofF the line specified by SET LINE. This means that you must haveF CONNECTed to the other system, logged in, run Kermit there, issued the/ SERVER command, and escaped back to the PDP-11.a F The remote filespec is any string that can be a legal file

oF PDP-11 KERMIT Page 1-

11 Commands for file transfer F specification for the remote system; it is not parsed or validatedF locally. Any leading spaces before the remote filespec are stripped,3 and lower case characters are raised to upper case.a F As files arrive, their names will be displayed on your screen. As inF the RECEIVE command, ^X to request that the current incoming file beE cancelled, ^Z to request that the entire incoming batch be cancelled. F If the remote Kermit is not capable of server functions, then you willF probably get an error message back from it like "Illegal packet type".F In this case, you must connect to the other Kermit, give a SEND1 command, escape back, and give a RECEIVE command.F + Server operationT F The SERVER command puts a remote Kermit-11 in "server mode", so thatF it receives all further commands in packets from the local Kermit.F The Kermit-11 server is capable (as of this writing) of executing theF following remote server commands: SEND, GET, FINISH, BYE, REMOTEF DIRECTORY,



REMOTE HOST. F Any nonstandard parameters should be selected with SET commands beforeF putting Kermit-11 into server mode, in particular the file type. TheF Kermit-11 server can send all files in the correct mannerF automatically. As noted before, if a Kermit-11 is talking to anotherF Kermit-11, they will negotiate any 'binary' parameters automatically.F However, if this is NOT the case and you need to ask Kermit-11 toF receive binary files you must issue the SET

FILE TYPE FIX commandF before putting it into server mode, and then you must only send binaryF files. You cannot send a mixture of text files and 8-bit binary filesE to a Kermit-11 server unless the files are not for use on the PDP-11.w , Command for

Servers F When running in local mode, Kermit-11 allows you to give a wide rangeF of commands to a remote Kermit server, with no guarantee the that theF remote server can process them, since they are all optional featuresF of the protocol. Commands for servers include the standard SEND, GET,4 BYE, FINISH commands, as well as the REMOTE command. The BYE command F The BYE command tells a remote server to log out of the remote system.F In addition, some remote systems will also disconnect the line forF you. If this is not the case, the

DISCONNECT command will (dependingA on your interface) cause the line to be dropped. See DISCONNECT.o The FINISH command F The FINISH command tells the remote Kermit server to exit withoutF logging out of the remote system. You can then CONNECT back to the

tF PDP-11 KERMIT Page 1-

12 Server operation system.t

REMOTE command F Send the specified command to the remote server. If the server doesF not understand the command (all of these commands are optionalF features of the Kermit protocol), it will reply with a message likeF "Unknown Kermit server command". If does understand, it will send theF results back, and they will be displayed on the screen. The REMOTE

commands are:e REMOTE COPY filespec newfilespec F Copy file.

The server is asked to make a copy of the specifiedF file. Both filespecs must be in the correct format for theF remote system.

Kermit-11 does not parse or validate the fileF specifications.

Any leading spaces will be stripped and lowerF case characters converted to upper case. Note that this commandF simply provides for copying a file within the server's system -0 it does not cause a file to be transferred. REMOTE CWD directory F Change Working

Directory. If no directory name is provided, theF server will change to the default or home directory. Kermit-11+ currently does not ask for a password. REMOTE DELETE filespec F Delete the specified file or files. The names of the files that, are deleted will appear on your screen. REMOTE DIRECTORY [filespec]u F The names of the files that match the given file specificationF will be displayed on your screen, perhaps along with size andF date information for each file. If no file specification [email protected] given, all files from the current directory will be listed.

REMOTE HELPl F The remote server will send back a list of server commands that it can execute. REMOTE HOST commande F Pass the given command to the server's host command processor,F and display the resulting output on your screen. Not all KermitF servers can do this function. In the case of Kermit-11, only theA

RSTS/E Kermit-11 server can execute the REMOTE HOST command.b REMOTE

LOGIN user password F Ask a remote server to log into a different account or username.

iF PDP-11 KERMIT Page 1-

13 Server operation F The support for this command is rarely implemented as manyF systems layer login/logout support over the executive. AF Kermit-11 server can only support this on RSTS/E, and at thatF only for version 9.0 or later. Of the various DEC PDP-11F operating systems, only RSTS/E has the support for logging in andA out built into the executive and accessible with directives. REMOTE RENAME oldfile newfile/ F

Change the name on the specified file (or files). Both file: specifications must be valid for the server's system.

REMOTE SPACE C Display information about disk usage in the current directory., REMOTE TYPE filespec ? Display the contents of the specified file on your screen.

REMOTE WHO 0 Display current status of user's logged in. " Commands for Local File Management F These commands provide some local file management capability withoutF having to leave the

Kermit-11 program. These commands are veryF similar to the REMOTE commands in function and syntax. They are allF executed locally, and are available when Kermit-11 is either local orF remote. The arguments to these commands are the same as the argumentsF expected from the user

Kermit when Kermit-11 is processing a commandF in server mode.

Additionally, these commands can be prefixed by the

LOCAL keyword. ! COPY filespec newfilespec CWD directory DELETE filespec7 DIRECTORY [filespec]

HELP HOST command- RENAME oldfile newfile

SPACEm TYPE filespecc

WHOe ConnectT F The CONNECT command will allow you to connect in as a virtual terminalF over the line that was specified by the set line command. (Using the

tF PDP-11 KERMIT Page 1-

14 The Connect command F CONNECT command before using the SET LINE command will result in anF error message) The terminal line must be one which is accessible to0 the user. The format of the CONNECT command is: ! Kermit-11>CONNECTb F The distributed RSX-11M/M+ task has been built with the /PR:0 switchF to enable the task to change other terminal settings. Additionally,F for RSX-11M/M+, the MCR command SET /SLAVE=TTnn: should be done before entering Kermit-

11. F If you are running K11POS.TSK on a PRO/350, Kermit will set the line* to XK0: and the speed to 9600 by default. F Please note that

Kermit-11 CAN NOT change the speed of a DL11 typeF interface, nor can it change the speed of a PDT-150 modem port (use

SPEED.SAV).r F The following is an example of using a Racal-Vadic

VA212 autodialingF modem to log into a remote TOPS-20 system.

There is one point atF which there is no echoing of the user input, this is following theF typing of the local 'escape sequence', which by default is control \F followed by a 'c'. The control backslash informs the terminalF emulator that the next character is a command. In this case, theF command was 'C', which means to return to the local PDP-11 system.F Control \ ? would print a help message.

All the commands prior to< the DIAL command were contained in the INI file, KERMIT.INI. $ kermit. Kermit-11 V3.46 Last edit: 21-Feb-1986! Kermit-11>SET MODEM VADIC,. Kermit-

11>SET PHO NUM CU 9K12121234567$ Kermit-11>SET LOGFILE 20.LOG!

Kermit-11>SET DEB CONSOLEi Kermit-11>SET LIN TT58:n0

Link: TT58: Speed: 9600, DTR not present Kermit-11>SET DTRl-

Kermit-11>SET SPE 1200 Kermit-11>DIAL CU Using:

9K12121234567= Connection established, type CONNECT to access remotet Kermit-11>CONx enter class 4 class 004 starte

CU20Be @log xx.abcdef i+ CU20B, TOPS-20

Monitor 5.1(5101)-2o* Job 28, TTY32, 2-Apr-84 4:15:24PM.

Previous login was 2-Apr-84 4:10:16PM .


F PDP-11 KERMIT Page 1-

15 The Connect commandl . .E

@log [Confirm] 3 Logged out Job 28, User

XX.ABCDEF , TTY 32,C9 at 2-Apr-84 16:19:34, Used 0:00:11 in

0:04:10 Kermit-11>disc& KERMIT link TT58: disconnected Kermit-11>exit $ logout SETa F The SET command is used to set various parameters in kermit. The format of the SET command is: /

Kermit-11>SET parameter keywordx

SET ATTRIBUTES F Part of the Kermit protocol is the support of file attributes.F Connected Kermits that support this can send information to each otherF about file size, time/date of creation, RMS file headers and otherF useful things. Due to potential problems with incompatibleF implementations this feature can be disabled. In this case, theF sending Kermit-11 will never try to send file attributes, even though6 the receiver may have indicated that it supports this. , Kermit-11>SET ATTRIBUTES OFF+

Kermit-11>SET ATTRIBUTES ON SET BAUD 2 This is the same as SET

SPEED. See HELP SET SPEED SET BINARY-TYPE F Kermit-11 has a default list of filetypes that are scanned to decideF if a file should be sent in binary mode in addition to checking fileF attributes for RSX,

P/OS and RSTS/E. The user can, however, overrideF this list with the this command. The default list is fairlyF inclusive, with types such as .SAV and .TSK forcing Kermit-11 into< binary transmission.

See HELP SET FIL for the default list. ' Kermit-11> SET BINARY-

TYPE .SAVc Kermit-11> SET BIN .EXEb

sF PDP-11 KERMIT Page 1-

16 The SET COMMANDh SET BLOCK-CHECKl F The SET BLOCKCHECK command is used to determine the block checkF sequence which will be used during transmission. The block checkF sequence is used to detect transmission errors. There are three typesF of block check available. These are the single character checksumF (default), the two character checksum, and the three character CRCF (cyclic redundancy check). This command does not ensure that theF desired type of block check will be used, since both Kermit's involvedF in the transfer must agree on the block check type. Kermit-11 willF request that the type of block check set by this command be used for aF transfer. If the other

Kermit has also had the same block check typeF requested, then the desired block check type will be used. Otherwise,F the single character checksum will be used. The command should beF given to BOTH

Kermits since Kermit-11, when in server mode, has no sayF about what kind of checksum it wants to use. (See Kermit protocol manual for more information.)r , Kermit-11>SET BLOCK_CHECK keyword-

Kermit-11>SET BLO 1- Kermit-11>SET BLO 2- Kermit-

11>SET BLO 3 Where keyword is one of: 8




SET CONSOLE F The SET CONSOLE command is used under P/OS to control the passing of 8F bit data to th terminal during the connect command. If you areF getting multinational characters being printed, this is a very useful( thing to set. The default is SET CON 7.

Kermit-11>SET CON 8i Kermit-11>SET CON 7o SET DEBUG

F The SET DEBUG command is used to specify the type and level ofF debugging to a disk file . This disk file must have been created by6 the SET LOGFILE command. The format for SET DEBUG is: -

Kermit-11>SET DEBUG qualifierg

F PDP-11 KERMIT Page 1-


SET DEBUG ALLc F SET DEBUG ALL will turn on logging for

CONSOLE,CONNECT,FILE,PACKET andF STATE to the disk file specified by SET

LOGFILE. This command is the- same as SET DEBUG ON. The command format is:i ' Kermit-11>SET DEBUG ALLr SET DEBUG

CONSOLEe F SET DEBUG CONSOLE will turn on logging for all i/o during a remoteF connect to the disk file specified by SET LOGFILE. This command is6 the same as SET DEBUG CONNECT. The command format is: +

Kermit-11>SET DEBUG CONSOLEa SET DEBUG CONNECT F SET DEBUG CONNECT will turn on logging for all i/o during a remoteF connect to the disk file specified by SET LOGFILE. This command is6 the same as SET

DEBUG CONSOLE. The command format is: + Kermit-11>SET


SET DEBUG FILE F SET DEBUG FILE will log all file 'opens' and

'creates' to the file1 specified by SET LOGFILE. The command format is: ( Kermit-11>SET DEBUG FILE

SET DEBUG HELP F SET DEBUG HELP gives the user a list of all qualifiers which can be( used with SET DEBUG. Command format is: (


SET DEBUG NONE F SET DEBUG NONE 'turns off' all debugging. This is the same as the SET& DEBUG OFF command. Command format is: (


SET DEBUG OFFm F SET DEBUG OFF 'turns off' all debugging. This is the same as the SET

F PDP-11 KERMIT Page 1-

18 The SET COMMANDo ' DEBUG NONE command. Command format is: '

Kermit-11>SET DEBUG OFFs

SET DEBUG ON F SET DEBUG ON will'turn on' logging for

CONSOLE,CONNECT,FILE,PACKET andF STATE to the disk file specified by SET

LOGFILE. This command is the. same as SET DEBUG ALL. The command format is: & Kermit-11>SET DEBUG ON SET DEBUG

PACKET F SET DEBUG PACKET will 'turn on' logging of all receive and transmitF packets to the disk file specified by SET LOGFILE. The command format is: * Kermit-11>SET DEBUG PACKET SET DEBUG

STATE F SET DEBUG STATE will turn on logging of all internal Kermit-11 state

transitionsl SET DELAY F The DELAY parameter is the number of seconds to wait before sendingF data after a SEND command is given.

This is used when Kermit-11 isF running in remote mode to allow the user time to escape back to the( other Kermit and give a RECEIVE command. 0 Kermit-11>SET DELAY number-of-seconds F Where number of seconds is the (decimal) number of second to wait before sending data.

SET DEFAULT F The DEFAULT parameter allows you to specify a device and

UIC (or PPN)F for all subsequent file opens (for SENDING) and file creates (for/ RECEIVING). It is disabled by typing SET HOME.y ,

Kermit-11>SET DEFAULT device3 Kermit-11>SET DEFAULT

DB2:[200,201] F This is quite useful for Kermit-11 running on a DECNET link, as youF can set the default for file operations to include node names and passwords as in: ; Kermit-11>set def orion::sys$system:[fubar]o

fF PDP-11 KERMIT Page 1-

19 The SET COMMANDr SET DIAL F Kermit-11 has knowledge built in to it of a number of the more commonF 'smart' autodial modems. To find out if your modem is directlyF supported try the command SET

MODEM ?. If your modem is not in thisF list then you need the SET DIAL command to generate the data base usedF by Kermit to control the modem.

Kermit uses this information toF implement the DIAL command. A command such as DIAL can only be doneF when Kermit knows both how to format commands to the modem, and whatF kind of text the modem will send back to it in response. As anF example, the VADIC VA212PA modem is awakened from an idle state by the character sequence (in octal)t

05 015 F which is a Control E followed by a carriage return.

In response to3 this two character string, the modem responds with: HELLO: I'M READY *S F Thus Kermit has to know that when it sends the wakeup sequence itF needs to wait for the asterisk to be sent back by the modem. At thisF point Kermit will know that the modem is in a state awaiting further. commands, such as that to dial a phone number. F It is not possible for Kermit to have knowledge of all makes of2 modems. Instead Kermit supports a command called: ( Kermit-11>SET MODEM USER_DEFINED F which then allows you to use the SET DIAL command to inform Kermit howF the modem works.

Once Kermit knows how to control the modem, you can4 use the DIAL command to initiate a call from Kermit. The SET DIAL commands are: 8

SET DIAL WAKEUP define the wakeup [email protected] SET DIAL PROMPT define the prompt the modem [email protected] SET DIAL INITIATE define a string to start dialingC SET DIAL CONFIRM define the string to confirm number C SET DIAL FORMAT define the number formatting string1B SET DIAL SUCCESS define string(s) for call completeE SET DIAL INFO define string(s) for informative text A SET DIAL FAILURE define string(s) for call failurefE SET DIAL CONFIRM define string for number confirmationlH SET DIAL WAKE_RATE set pause time between wakeup charactersD SET DIAL DIAL_RATE set pause time between number digitsA SET DIAL DIAL_PAUSE define string for dial tone pausen F Suppose we had to tell Kermit about the

Racal Vadic VA212PA modem

tF PDP-11 KERMIT Page 1-

20 The SET COMMANDs F (though in reality Kermit already knows about that kind). In checking' the owners manual for it, we find that:e F

To wake the modem up, we type a control E followed by a carriage

return. F To dial a number, we type the letter D followed by a carriageF return. At this point, the modem prints a

NUMBER? prompt, weF then type the desired number in. It reprints the number and thenF waits for a carriage return from us to confirm that its really- the correct phone number. F When it completes dialing, it will print 'ON LINE' or 'ONLINE'F for a successful call, otherwise it may display on the terminalF 'BUSY',

'FAILED CALL', 'NO DIAL', 'VOICE' or 'TIME OUT'. WhileF it is waiting for its call to be answered, it may print the lineF

'RINGING' several times in order to tell you that it is working

on it.y & The Kermit commands required would be: (


\05\015p# Kermit-11>SET DIAL PROMPT *e) Kermit-11>SET


Kermit-11>SET DIAL CONFIRM \015f) Kermit-11>SET DIAL SUCCESS






DIAL_PAUSE 9K" Kermit-11>DIAL 14195551212 F The notation

"\05\015" indicates the Control E followed by a carriageF return; 05 is octal for control E, 015 is octal for carriage return.F An alternate notation for octal numbers can be used by placing theF value inside of inequality characters, as in SET DIAL WAKE <05><015> though the former is preferred. F The notation "%P%S\015" indicates to Kermit that the phone number fromF the dial command is to be followed by a carriage return; the %S isF simply a placeholder for the phone number. The presence of the %P isF to indicate where to insert the dial pause string, in this case weF need to dial 9 and wait for a second dial tone.

The "K" is the RacalF Vadic code to get the modem to pause. If you are dialing on a directF line, the DIAL_PAUSE command is unneeded. If for any reason you needF to pass a "\" or "<" to your modem, simply prefix the character with another "\", as in "\\".

vF PDP-11 KERMIT Page 1-

21 The SET COMMANDa F Many modems require only the WAKEUP,

PROMPT, FORMAT and resultF strings. The Digital DF112 is an example of this; it's definition would look like: ( Kermit-






ANSWER F Some modems may be unable to accept data at the line speed; in thisF case we would need to use the SET DIAL WAKE_RATE and

SET DIALF DIAL_RATE. These two commands accept a delay time in milliseconds;F the actual delay will not be precise as the PDP-

11 line clockF interrupts sixty times per second. Furthermore, on RSTS/E the finestF granularity for timing is one second; thus setting delays would result# in delays of one second increments.g F In general, not all of the result fields need be specified except forF the call completed strings; Kermit will time out after a while if it, can't match a response with any definitions. F Further information can be found in the sections on SET MODEM, DIAL, REDIAL and SET PHONE. SET DTR F The SET

DTR command is very similar to the DISCONNECT (or HANGUP)F command.

SET DTR, where supported, raises DTR for a predeterminedF amount of time, whereas the DISCONNECT (or HANGUP) command drops DTR.F The SET

DTR is only functional on RSTS/E, which by default keeps DTRF low until either RING INDICATOR or CARRIER DETECT goes high. This isF opposite of the behavior on RT11 and RSX11M/M+, both of which normallyF assert DTR.

The SET DTR command raises DTR for at least 30 secondsF (depending on the version of RSTS/E) and is useful for makingF connections to front end switches (such as MICOM and GANDALF). OnF RT11, SET DTR is identical to the HANGUP command; it simply drops DTRF for two seconds.

In this case (RT11 and TSX+) this command is onlyF supported on RT11

5.2 and TSX+ 6.0 with the XL/XC and CL drivers,F respectively. This command is a no-op on RSX11M/M+ and P/OS. ForF further information on modem support, see the later section regarding such.

SET DUPLEX F The DUPLEX parameter controls whether an outgoing link

(set via theF SET LINE command) is a full duplex link (the default) or a half duplexF link. All it does for half duplex is to cause all characters typed

F PDP-11 KERMIT Page 1-

22 The SET COMMANDi / after the CONNECT command to be echoed locally.

) Kermit-11>SET DUPLEX HALFt) Kermit-

11>SET DUPLEX FULLl SET END-OF-LINEc F The END-OF-LINE parameter sets the ascii character which will be usedF as a line terminator for all packets SENT to the other KERMIT. This3 is normally not needed for most versions of KERMIT.m B Kermit-11>SET END-OF-LINE octal value of character

SET ESCAPE F This command will set the escape character for the CONNECT processing.F The command will take the octal value of the character to use as theF escape character. This is the character which is used to

"escape"F back to Kermit-11 after using the CONNECT command. It defaults toF control (octal 34). It is usually a good idea to set this characterF to something which is not used (or at least not used very much) on the. system being to which Kermit-11 is CONNECTing. 5

Kermit-11>SET ESCAPE octal-character-valuee F Where octal-charactervalue is the ASCII value of the character to use# as the escape character

(in octal).b SET FILE ? The SET FILE allows you to set various file related parameters. Kermit-11>SET FIL option SET FILE

TYPE ASCII C File type ASCII is for text files. SET FILE TYPE TEXT is the same.n SET FILE TYPE AUTO F Kermit-11 will normally try to decide if a file must be sent in binaryF mode based on the file attributes and filetype. If, for instance, theF directory entry for FUBAR.TXT showed it to be RMS (or FCS) fixedF length records, Kermit-11 will switch to binary mode and send itF verbatim. If the receiving Kermit is

Kermit-11, then the sendingF Kermit will send attribute data over also. The following file typesF also will normally be sent as binary files unless you use the SET FILE TYPE NOAUTO command. 2

*.TSK ; rsx, ias, and rsts tasks

F PDP-11 KERMIT Page 1-

23 The SET COMMANDi 3 *.SAV ; rt11 and rsts save imagesu1 *.OBJ ; compiler and mac outputm3

*.STB ; tkband link symbol tablesh< *.CRF ; tkb and link cross reference files6 *.TSD ; 'time shared dibol' for rt116 *.BAC ; rsts basic+ 'compiled' files=

*.OLB ; rsx, ias, and rsts object libraries < *.MLB ; rsx, ias, and rsts macro libraries1 *.RTS ; rsts/e run time systems ( *.EXE ; vms executable SET FILE TYPE

BINARY F File type BINARY is for non-text files. Note that binary files whichF are generated on a PDP-11 system cannot be transferred to another

(nonF PDP-11) system without losing file attributes. This means that

(forF example), an RSM11 indexed file cannot be transmitted with

Kermit-11F at this time. You can not have parity set to anything but

NONE to useF binary file transfer (see HELP SET PARITY) unless the other

Kermit canF process eight bit quoting. Two Kermit-11's connected to each otherF will use binary transmission automatically via the Kermit attributeF packets, preserving file attributes where it makes sense (ie,


and RSX only). - SET FILE TYPE DECMULTINATIONAL F PDP-11 Kermit normally strips the high bit of every character on bothF transmission and reception of files (unless the SET FILE TYPE FIXEDF command was given). The SET FIL DEC command will cause Kermit-11 toF leave all data intact but still obey the host file system when readingF or writing files. In other words, Kermit will write sequentialF implied carriage control files with eight bit data if this command is used.e SET FILE TYPE FIXEDb # This is the same as SET FIL TYP

BINK SET FILE TYPE NOAUTO F SET FILE NOAUTO disables Kermit-11 from trying to base binary1 transmission mode on file attributes or filetype.m SET FILE SUPERCEDE F SET FILE [NO]SUPERCEDE allows Kermit-

11 to accept or reject filesF received (from either the RECEIVE or GET commands) on a per fileF basis. The default is SUPERCEDE. By doing SET FILE NOSUPERCEDEF Kermit-11 will always check to see if the file to be created isF already there (independent of version number) and reject it to theF sending server if it exists. This presumes that the Kermit sendingF the file understands the protocol to reject one file of a (possibly) wildcarded group of files.F The main use of this is to resume getting a group of files, as in GET

/F PDP-11 KERMIT Page 1-

24 The SET COMMAND. F KER:K11*.* or GET KER:MS????.* having lost the connection afterF transferring some of the files. If this is set, then any files2 already transferred will not be transferred again. $ Kermit-11>SET FILE SUPERCEDE& Kermit-11>SET

FILE NOSUPERCEDE SET HOME F SET HOME resets the default device and

UIC (or PPN) to nothing, ie,F all file opens and creates use your default disk (SY:) and your UIC (or PPN).f " Kermit-


SET IBM-MODE F The SET IBM ON (or OFF) will instruct Kermit-11 to wait for an XONF following each packet sent to an IBM host. Since the default for IBMF mode may not always be appropriate for your IBM compatible system, youF can always use the SET HANDSHAKE XON and SET

DUPLEX HALF to avoid the) parity setting implied by using IBM mode. $

Kermit-11>SET IBM ON% Kermit-11>SET IBM OFF SET

LINE F The SET LINE command sets the terminal name up for use with theF connect command. To use this you must have access to that device.

OnF many systems terminal lines other than your own are protected from: access, and may require special procedures to access them.F The form of the device name is TTnnn:, where 'nnn' is a decimal numberF for

RSTS and an octal number for RSX-11M/M+. For RT-11, the deviceF name is simply the MT unit number shown by the SHO TER command, as inF '5' for DZ11 unit 0 line 4. If the system is running RT-11 version 5F you can do a SET LIN XL:. At worst case, Kermit-11 can use theF console port on RT-11. For more information see the notes later onF for RT-11 If you are running K11POS.TSK for P/OS on the

PRO/350,F Kermit-11 will set the line to XK0: and the speed to 9600 baud whenF Kermit starts. To override the line or speed, set HELP SET


(for RSTS and RSX-11M/M+)sB Kermit-11>SET LINE 5 (for

RT-11 and MT service)C Kermit-11>SET LINE XK0: (for P/OS, done implicitly)OB Kermit-11>SET LINE XL: (for RT-11 and


SPEED for moreF information. Also, for TSX+, see notes regarding TSX later in these5 notes. The RT-11 XL handler has notes later on also.

F PDP-11 KERMIT Page 1-


SET LOGFILEE F The SET LOGFILE command creates a debug dump file for you. It must beF used BEFORE any SET DEBUG commands can be used. See

HELP DEBUG for* further information about debugging modes. /

Kermit-11>SET LOGFILE MYLOG.TXTn, Created debug file


MODEM command defines the type of MODEM use for dialing out onF the line set with the SET LINE command, or, in the case of theF PRO/350, the

XC or XK port. There are only a few modems defined at this time, they are: < VADIC Generic RACAL-VADIC autodial7 VA212PA Stand alone VADIC VA212 8

VA212PAR Rack mounted VADIC VA212A VA4224

Rack mounted VADIC VA4224 .v22bisl0 HAYES Hayes smartmodem) DF100 DEC DF112y)

DF200 DEC DF224t( DF03 DEC DF03

MICROCOM F The DIAL command is then used after the SET MODEM command. For# example, on a PRO/350 running P/OS: &

Kermit-11>set pro PRO>% PRO>set modem va212pae

PRO>dial 5374411& Modem in command modem

Modem dialing > Connection made, type CONNECT to access remote PRO>cont$ Enter class ? VX785A

Class startf Username: BRIANt0 Password:

...................... and so ont SET PACKET-

LENGTHD F You can alter the default transmitted packet length with the SETF PACKET-LENGTH command. This should not normally be needed unless theE line is very noisy, at which time you should probably give up anyway. ' Kermit-11>SET PACKET 60i

fF PDP-11 KERMIT Page 1-


SET PARITY F This is used with the SET LINE and CONNECT commands to specify theF type of parity for the remote link. It defaults to NONE and can be& either ODD, EVEN, MARK or SPACE as in: )



Kermit-11>SET PARITY SPACE F All parity generation is done via software, no special hardware isF used. The use of software parity generation is restricted to 8 bitF links only. The character format, if parity is set to anything butF NONE, will be 7 bits of data followed with high bit set or cleared toF indicate the parity. If you set parity to anything but NONE (theF default), Kermit-11 will be forced to request 8bit prefixing from theF other Kermit-11, which is a method by which Kermit can 'prefix' eightF bit characters with a shift code.

You MUST use parity (even if MARKF or SPACE) when using Kermit-11 with the IBM CMS Series/1 or 7171 3270 emulator. SET PAUSEs F PAUSE tells Kermit to wait the specified number of seconds betweenF each packet being sent to the other Kermit. This may be useful underF situations of heavy system load. This may be automatically computer= by Kermit-11 in a future release as a function of line speed.f % Kermit-11>SET PAUSE 1I SET

PHONEi F The SET PHONE NUMBER command allows you to associate a phone numberF with a symbolic name for later use with the DIAL command.

TheseF definitions could be placed in your KERMIT.INI file, and then referenced later.e 2 Kermit-11>SET PHO NUM WORK

53744118 Kermit-11>SET PHO NUM MARKET 16174671234#

Kermit-11>DIAL WORKd F The other two SET PHONE options, SET PHONE

[TONE][PULSE] and SET PHONEF BLIND are not useful unless the appropiate dial formatting string andF character sequences for selecting PULSE or

TONE, and BLIND dialing areF present in the modem definition macros in K11DIA.MAC. The formatF effector for TONE/PULSE is %M and the effector for BLIND is %B.B Currently (in 3.54) only the VA4224 has entries for these options. SET POSm F The SET POS command allows options SPECIFIC to P/OS to be altered.

nF PDP-11 KERMIT Page 1-

27 The SET COMMANDt F The most useful option is the SET POS

[NO]DTE command. This allowsF Kermit-11 to use PRO/Communications version 2 for terminal emulation,F if this product has been installed on the PRO/350. Of course, if thisF option is chosen, control is returned to the PRO with the EXIT key" (F10) rather than with Control \C. %

Kermit-11>SET POS DTEw' Kermit-11>SET POS NODTEa

SET PROMPT F The SET PROMPT command is useful if you are using two

Kermit-11's toF talk to each other. By using the SET PROMPT command, you can changeF the prompt from 'Kermit-11>' on either (or both) Kermit to [email protected] that would indicate which system you are currently connected to. 4 Kermit-11>SET PROMPT KERMIT-11/1170>+

Kermit-11>SET PROMPT FUBAR> 3 Kermit-11>SET PROMPT


SET RECEIVEE F Currently the SET RECEIVE and SET SEND basically work the same in thatF they only alter the END-OF-LINE character and the


value, as in: ) Kermit-11>SET REC START 2 (

Kermit-11>SET REC END 12 A The command SET RECEIVE PACKET-LENGTH command is discussed below. SET RECEIVE END-OF-LINE, F This instructs

Kermit-11 to expect something other than the defaultF carriage return

(octal 15) at the end of a packet. Kermit-11 willF ignore packet terminators. The SET SEND END command is of more use in- conditioning outgoing packets. SET RECEIVE START-OF-PACKETr F The normal Kermit packet prefix is Control-A (1); this command changesF the prefix

Kermit-11 expects on incoming packets. The only reasonsF this should ever be changed would be: Some piece of equipmentF somewhere between the two Kermit programs will not pass through aF Control-A; or, some piece of of equipment similarly placed is echoingF its input.

In the latter case, the recipient of such an echo canF change the packet prefix for outbound packets to be different fromF that of arriving packets so that the echoed packets will be ignored.F The opposite Kermit must also be told to change the prefix for its; inbound packets and the prefix it uses on outgoing packets.. 3


nF PDP-11 KERMIT Page 1-

28 The SET COMMANDL SET RECEIVE PACKET-LENGTH> F This command has two functions. The first, and normal one, is toF reduce incoming packet lengths in the event that normal sized KermitF packets can not be passed through the communications circuit. ThereF could be, perhaps, some 'black box' somewhere in the link that has aF very small buffer size; this command could be used to reduce the size! that the SENDING

Kermit will use.h F The other use is to enable a new protocol extension to Kermit calledF 'LONG PACKETS'. The actual protocol is documented elsewhere, let'sF just say that this is a way for two Kermit's to use packet sizes farF greater than the normal ('Classic') packet size if

90 characters orF so. The main use of this feature is in file transfer over links thatF introduce considerable delay, it is not uncommon for packets to incurF an one to two second delay. The net result is a VERY slow runningF Kermit with an effective speed of perhaps 300 to 600 baud rather thanF 1200 or 2400 baud. By making the packets longer, we raise theF effective speed of such a circuit. The main restriction on the packetF size chosen is the link, a given circuit may not pass 500 characterF packets. Also, BOTH Kermits must support this extension to theF protocol, they will always negotiate it before any file transfer. See; the notes at the end of this document for more information.R ( Kermit-11>SET REC PAC 50)

Kermit-11>SET REC PAC 600h F It is HIGHLY recommended that you use the

CRC block check, as theF default type one checksum could be inadequate for such long packets, as in: # Kermit-

11>SET BLO 3s SET RECORD-FORMATD F Kermit will, by default, create

RMS11 variable length implied carriageF control records for text files.

You can override this and change itF to create stream ascii records with the SET RECORD-FORMAT STREAMF command. This is useful for

RSTS/E systems if you need file- compatability with BASIC Plus. 2


FORMAT VARIABLE F This command would be most useful in a KERMIT.INI file, which is& executed by KERMIT when Kermit starts. SET

RETRYo F SET RETRY value tells Kermit to try that many times on a NAK'ed packetF before giving up. This should only be needed if the line is extremelyF noisy or the PDP-11 host is running very slowly due to the system load.m

1F PDP-11 KERMIT Page 1-

29 The SET COMMAND & Kermit-11>SET RETRY

10 SET RSXl F The SET RSX command is intended to deal with the peculiarities oftenF found with RSX systems. There are currently three SET RSX commands, as in: C Kermit-11>SET RSX FASTIO

Default for packet reading, 7 waits for <CR>.TC Kermit-11>SET RSX CHARIO Read one char at a time forr7 packet reading.wC Kermit-11>SET RSX TC.DLU n Alters the TC.DLU setting.OC Kermit-11>SET RSX CONNECT ALT Uses a new (v2.33) connectgC driver which bypasses

TTDRVa5 flow control.cC

Kermit-11>SET RSX CONNECT DEF Use old connect code (2.32)h F The SET

RSX command is subject to change and the above options may beF removed in the future. Note the the SET RSX CHARIO may be needed whenF transfering files with parity enabled. This command alters the methodF by which a packet is read; instead of waiting for a carriage return,F Kermit reads the typeahead byte count and then issues a read for thatF many characters. This is the same method Kermit-11 ALWAYS uses under P/OS.e SET RT-11 SET RT-11 CREATE-SIZEy F The SET RT-11

CREATE value command was added to assist those RT-11F users with very small disks to be able to get files with sizes greaterF that half of the available contiguous space available. While this isF NOT a problem going from one Kermit-11 to another Kermit-11 since theF PDP-11 Kermit supports a subset of the protocol known as 'ATTRIBUTES',F other Kermits may not support the exchange of file sizes (most doF not). Thus if your largest contiguous space is 300 blocks and you* want to get a

250 block file, the command: # Kermit-11>SET RT-11 CRE

250t F would be needed, as RT-11 by default only allocates 50 percent of the available space. SET RT-11 FLOW-CONTROL F Note that for the connect command under RT-11 you will most likelyF need xon/off flow control to be generated by Kermit-11. This isF enabled with the SET

RT-11 FLOW command. This is by default NOFLOWF since the modem the author uses, a Vadic 212PA, can't handle XONs andF XOFFs while in command mode. The solution here is to escape back toF Kermit command mode after the remote system has been logged into, and

eF PDP-11 KERMIT Page 1-

30 The SET COMMANDP then type SET RT-11 FLOW.dF The effect of SET

RT-11 FLOW is for Kermit-11, when in connect mode,F to send an XOFF to the host every eight characters. When the loop inF the connect module finds no more data in the input buffer, it sends upF to 2 XON characters (in case the first XON got lost) to tell theF remote system to start sending again. The reason for doing so is thatF the RT-11 multiple terminal service is very slow about handling inputF interrupts and does not do any of it's own flow control when it'sF internal ring buffer gets full. This has been tested at line speedsF up to 4800 baud without losing data. This setting should not be' needed for use with the XC/XL handlers.eF SET RT-11 FLOW has NO effect on packet transmission, since the KermitF packet size is never mode than 96 characters, and the RT-11 input! buffer is 134 characters in size.i (

Kermit-11>SET RT-11 FLOW* Kermit-11>SET RT-11

NOFLOW F The SET RT-11 [NO]FLOW command replaces the older SET


[ON][OFF]. SET RT-11 VOLUME-VERIFY F Normally RT-11 Kermit-11 will check the directory header of a disk toF verify that it most likely contains a valid RT-11 file structureF before trying to read the directory. If for some reason your diskF does not contain the standard data at offset 760 in the header,F Kermit-11 will reject the disk. The SET RT-11 NOVOL command will( instruct Kermit-11 to bypass that check. ' Kermit-11>SET RT-11 VOLl)

Kermit-11>SET RT-11 NOVOLe SET SEND F The SET SEND command controls what Kermit-11 will be doing forF outgoing packets in that you may want to alter the packet terminatorF and/or the start of packet character (by default, 15 octal and 1 octal9 respectively. See

HELP SET RECEIVE for more information. F The only extra option for SET

SEND is SET SEND [NO]XON. If theF command SET SEND XON is give, then every packet sent will be prefixedF with an XON character. This could be useful in situations where flowF control is erratic. The actual intent of this option was to try to> circumvent a firmware bug in the DHV11 when used under RSTS/E. SET SPEEDR F SET SPEED value sets the line speed for the device specified via theF SET LINE command, and used for the CONNECT command. Changing theF speed of a terminal line requires privilege for RSTS and RSX-11M/M+.F The SET

SPEED command will only function with a DH11, DHV11, DZ11 or DZV11 multiline interface.

cF PDP-11 KERMIT Page 1-

31 The SET COMMANDa ( Kermit-11>SET SPEED

1200 B 1200 Baud would be a normal speed to use with a VA212PA or a

DF03. F Please note that Kermit-11 CAN NOT change the speed of a DL11 typeF interface, nor can it change the speed of a PDT-150 modem port.

For aF PDT-150 modem port, use a command of /M/S:nnnn. to change the speed" to nnnn for the SPEED.SAV program.

SET TIMEOUTc F The timeout value tells Kermit how long to wait to get a packet fromF the other Kermit. If system loads are high, it may be desirable to/ increase this beyond the default of 10 seconds.

SET TERMINAL F The SET TERMINAL command simply controls the way which Kermit-11F prints packet counts while send or receiving a file (or group ofF files). The simplest way is the default, SET TER TTY.

Using SET TERF VT100 will cause Kermit to display headers for the numbers printed, atF a possible cost in packet speed due to screen control overhead. OnF the PRO/350, VT100 is assumed. On RSTS/E v9.0 and later, the+ executive is queried for the terminal type.s %

Kermit-11>SET TER TTYo' Kermit-11>SET TER VT100

SET UPDATE F The SET UPDATE command controls the frequency at which the packetF count display is updated. The default is 1, displaying each packet.F A SET UPD 0 will disable all packet count logs, whereas a

SET UPD NF will update the display every N packets. The SET NOUPDATE command is the same as SET UPDATE 0.S The DIAL command F The

DIAL command is new for version 3.29 of Kermit-11. The

DIALF command is used to dial a number on an attached modem of known typeF (see SET MODEM). To find out the current known modems, use the

SETF MODEM ? command. The following example shows a RACAL-VADIC

VA212C modem connect to the XK: port on a PRO/350 running P/OS version

2.D & Kermit-11>set pro PRO>% PRO>set modem va212pan PRO>dial 5374401& Modem in command modem Modem dialingT(

Connection failed, !BUSY

F PDP-11 KERMIT Page 1-

32 The DIAL command PRO>dial 5374411&

Modem in command modem Modem dialingd>

Connection made, type CONNECT to access remote

PRO>conA$ Enter class ? VX785A Class start1 Username: BRIAN 0 Password:

...................... # See SET MODEM for more information.2

lF PDP-11 KERMIT Page 1-

33. Notes regarding options for the System Manager )

Odds and ends F There are a few odds and ends that should be made aware to the systemF manager of any PDP-11 system regarding Kermit-11.

They are asF follows, grouped by operating system. Please note that installationF instructions are in K11INS.DOC and that additional information may be# in Kermit-11's online help command.e

RESTRICTIONS A Prior to version 2.21, Kermit-11 did not support 8-bit prefixing. F Prior to version 2.23, Kermit-11 did not support repeat character encoding. F The PRO/RT-11 version of Kermit-11 will request

8-bit prefixing dueF to the fact that the XC handler does not support

8BIT data. For mostF Kermits this should not be a problem. The XC handler always stripsF bit 7 from the character being sent, so the PRO/RT-11 version ofF Kermit will request prefixing of such. It does so internally by? setting PARITY to SPACE (always clear the high bit, bit seven). F Note that this implies that a SET PARITY SPACE command will forceF Kermit-11 to request '8bit' prefixing in order to transfer binary- files across a seven bit link. P/OS F Kermit-11 will run on under P/OS on the Pro/350, the executable fileF is called

K11POS.TSK. It does NOT run from a menu, the normal way toF run it is via the RUN command in DCL. It will support the Kermit-11F attribute packets, thus a PRO/350 connected to a PDP-11 host canF transparently handle binary and other types of files. The

P/OSF Kermit-11 can be run either as a local Kermit or a Kermit server.F This has been tested under P/OS version 2 connected to both a% PDP-11/23+ and PDP-11/70 RSTS/E host. F When Kermit-11 is started on the PRO, it will automatically do a SETF LINE XK0: and a

SET SPEED 9600. You can, of course, change the speedF to whatever you need with the SET SPEED command. The line should be

left as XK0:.h F The top row function keys are mapped internally.

Kermit-11 maps F5F (break) into a true break (a space of 275 ms),

F6 (interrupt) toF control C, F10 to control Z, F11 to escape (octal

33) and F12 toF backspace (octal 10). The incoming escape sequence DECID isF intercepted to allow Kermit-11 to send back a device response of VT100. RSTS F Kermit-11 runs on version 7.2 or later of RSTS/E. Due to optionsF present in version 8, binary file transfers will not be possible underF version 7.2 of RSTS/E. This is due to the use of 8 bit mode for theF terminal link to allow all characters to be passed. The so called? '8BIT' terminal setting was new as of version 8.0-06 of RSTS/E.M

IF PDP-11 KERMIT Page 1-

34. Notes regarding options for the System Manager F Any RSTS/E system running Kermit-11 will need the sysgen option forF multiple private delimiters in the terminal driver. This special modeF is needed since the 'normal' RSTS/E binary terminal mode has aF 'feature' that disables binary mode whenever the terminal times out onF a read.

Since timeouts are essential to Kermit error recovery, binary mode can not be used for i/o.d F Certain functions of Kermit-11 require that the system managerF install Kermit with temporary privileges, these commands are theF SYSTEM, WHO and REMOTE HOST commands. Kermit-11 does NOT need these to operate correctly. F Kermit-11 can only be built (from source, not from HEX files) underF RSTS/E version 8.0 or later due to the use of RMS11 v2.0 and new assembler directives. F

Support for the server remote login is only available under

RSTS/EF 9.0 or later. Also, a REMOTE LOGIN command to a RSTS/E server willF fail unless the user has the WACNT privilege. While the LOGIN programF will skip the password lookup if WACNT is present, Kermit will require

a password.h

RSX-11M/M+ F Kermit-11 can not be installed non-checkpointable due to an apparentD RMS11 bug. In other words, don't try to install the task

'/CKP=NO'. F To use the connect command effectively, typeahead support is neededF in the terminal driver. For RSX-11M+, set the typeahead buffer sizeF high, as in SET /TYPEAHEAD=TT22:200. Also, if your connect line is6 TT22: (as above), use the mcr command SET/SLAVE=TT22: F

Kermit-11 can only be built under RSX-11M version 4.1 or later, orF under RSX-11M Plus version 2.1 or later due to the use of RMS11 v2.0 and new assembler directives. F There is a SET RSX command, see

HELP SET RSX for further information. F As a side issue, please note that the file K11POS.TSK is quite usableF under RSX, the difference being that K11RSX.TSK has DECNET support andF RMS-11 overlayed in the task image (besides which, due to the lackF author's systems running

RSX may not be up to date) linked into it,F whereas K11POS has NO Decnet support but IS linked to the RMS11F library RMSRES (v2), thus

K11POS saves disk space as well as, supporting named directories, ala VMS style. RT-11r F Kermit-11, as of version 2.20, has been tested under RT-11 versionF 5.0 under the FB and XM monitors using a

DZ11 line for the link, andF also on a PDT-150 using the modem port for the link. It hasF additionally been run under Micro-11's and the PRO/350 using the XL and XC handlers respectively.t

F PDP-11 KERMIT Page 1-

35. Notes regarding options for the System Manager F Kermit-11 requires .TWAIT support as well as multiple terminalF support

(unless the XL/XC handler is used). The use of multipleF terminal support allows Kermit-11 to use any type of interfaceF sysgened, including the DZ11 and DZV11. It is possible under versionF 5 of RT-11 to use the XL: handler instead of the multiple terminalF support.

The use of the XL: driver will result in much faster fileF transfer at high baud rates. Note that XL: must be set up at systemF startup or at some time later to set the proper speed, CSR and vector. F For those users who do not have multiple terminal support and do notF have the

XL handler, Kermit-11 will force the use of the console forF data transfers. This will require that Kermit-11 request eight bitF prefixing from any other Kermit wishing to send binary data [email protected] Additionally, you can force console mode by doing a SET LINE

TT: F Please note that the device name syntax for terminal lines follows theF MT unit numbers, thus if a SHO TER gave unit 5 for DZ11 line 0 the the device name would be:r Kermit-11>SET LINE 5 - If you use the XL handler, you would do this:c - Kermit-11>SET LINE

XL: + To force the console to be used, you would:t - Kermit-

11>SET LINE TT: F Additionally, Kermit-11 for RT-11 looks for its help file, K11HLP.HLP,6 on DK: first and then on SY: if the first one fails. F Full wildcarding is supported for RT-11, in the form *.type, name.*,6 *.* and the % character to match any single character. F

Kermit-11 can only be built on RT-11 version 5.0 or later due to the

use of new assembler directives. F Please note that for the connect command under RT-11 and the use ofF the MT service, you will most likely need xon/off flow control to beF generated by Kermit-11. This is enabled with the SET RTFLOW ONF command. This is by default OFF since the modem the author uses, aF Vadic 212P, can't handle XONs and

XOFFs while in command mode. TheF solution here is to escape back to Kermit command mode after [email protected] remote system has been logged into, and then type SET RTFLOW ON. F Due to overlaying constraints, the

RT-11 Kermit-11 will not acceptF wildcards for the RENAME and

DELETE commands and the REMOTE server

equivalents. F The executable files are K11XM.SAV for the XM system and PRO/350, and K11RT4 for the FB system.T F As a final (I hope) RT-

11 note, see the RT-11 v5.1 Release Notes page

uF PDP-11 KERMIT Page 1-

36. Notes regarding options for the System Manager F 9-2 and chapter

12. The discussion relevant here regards the use of the XL/XC handlers.lF Note that the default XL: handler vector (DL-11, DLV-11) is

300 andF the CSR is 176500. For the Micro-11, PDP-11 and LSI-11, when theF DL11/DLV11 interface is installed the field service representativeF will inform you what the CSR and VECTOR are. If they are NOT 176500F and 300, then to use the XL: handler you will need, prior to runningF Kermit-11, to set them. Suppose the DL vector is

400 and the CSR isF 176510. Then the following DCL commands would set the addresses for RT-11. .SET XL CSR=176510 .SET

XL VECTOR=400 F You SHOULD NOT ever alter these settings for XC: on the PRO/3xx.F The ONLY settings you can alter for the PRO/3xx is the speed, as inF DCL command SET XC SPEED=nnnn. Kermit-11 CAN NOT alter the

XC: speedF itself. As noted previously in this document, Kermit-11 executes theF Kermit-11 command SET LIN XC: implicitly if it finds itself running on a PRO/3xx system. F Note that if your modem requires DTR to be present, you must useF either an interface that asserts it (as does the PDT and PROF communications port), force it high internally to the modem, or build? a cable to force it high. See HELP MODEM for more information. TSX+ F While most of the above notes for RT-11 apply for TSX+, there are aF few differences of note. The first, in that TSX+ is a timesharingF system, allows the

Kermit user to log in normally from another systemF running Kermit (as in a Rainbow) and give the TSX+ Kermit the SERVERF command and commence file transfer operations from the other systemF (ie, the Rainbow). If you are dialing INTO a TSX+ system, you need to give the TSX command:

.SET TT 8BIT F to be able to transfer data to your local

(PC, other PDP-11,...)F system without incurring the overhead of the

Kermit protocol known asF eight bit prefixing. If this is not possible, due to your localF system requiring parity, or some other intervening device adds parity,( then you should give Kermit the command: " Kermit-11>SET PARITY SPACE 8 to let Kermit know that it can't send binary data as-is. F To use Kermit-11 to dial out from the TSX+ system, the followingF commands are needed. Note that TSX+ commands will be preceeded by theF normal RT-11 prompt, the ever present

DOT ('.'), whereas Kermit-11F commands will be prefixed by the default Kermit-11 prompt,


F PDP-11 KERMIT Page 1-

37. Notes regarding options for the System Manager < .SET CL

LINE=n Where 'n' is the unit number .SET CL NOLFOUT D

.SET CL SPEED=n Where 'n' is the speed for that unit

.ASS CL XL Kermit-11>SET LIN XL:w Kermit-

11>CONNECT F As of Kermit-11 version 3.44, you may use CL directly in the SET LINE command, as in:s .SET CL3 LINE=3b .R

K11XM Kermit-11>SET LIN CL3c Kermit-11>SET SPEED 1200

Kermit-11>CONNECTa ' A sample command file in actual use is:i





SH CLi F If you are running PRO/TSX+, then Kermit will make the assignment ofF LINE 3 to either CL0 or CL1 if you are running

Kermit from theF console, ie, LINE 1. The speed will default to the last

SET SPEED or the speed set at system boot.c F Lastly, TSX+ needs PLAS support to use K11XM.SAV, see the installation notes for further data.L Notes regarding modems RSTS/E version 9.x F RSTS/E does not control modems signals in the manner that RSX or VMSF does. VMS always asserts DTR whereas RSTS/E will not assert DTR untilF the terminal driver can see RCD (also known as DCD) which is pin 8F (eight) for the RS232 connection. To connect directly to a modemF (like a VADIC

212, sorry, no DEC modems here) we must do one of two things:r F (1)

Force the modem (via strapping options or whatever) to assert RCDF (DCD) pin 8, thus RSTS/E will see carrier and raise DTR (pin 20 for RS232)

F PDP-11 KERMIT Page 1-

38 MODEMS F (2) Set the terminal to LOCAL (RSTS/E V9 syntax

'SET TERF TTxx:/NODIAL/PERM') and break pin 20 (DTR) and connect pin

20 to 8 onF the modem side. This will cause the modem to be able to dial out andF allow RSTS/E to connect to it. You will also need to have the modemF assert RCD, pin 8. Keep in mind that the Kermit-11 command

DISCONNECTF (or HANGUP) will not function if a line is set to NODIAL

(INIT SET> syntax 'LOCAL'). This has been tested on a Racal Vadic

VA212. F (3) Break pin 8 (RCD) and loop DTR (pin 20) on the CPU side to RCDF (pin 8) on the CPU side. Then use the command SET DTR in

Kermit-11 toF get RSTS to raise DTR and thus loop it's DTR signal back to

RCD. See the next note regarding this.t F For those of you who have port switches such as the Gandalf type, there is one additional problem.F For Gandalf, suppose you want to connect a DZ11 line to to an

AMTB2.F You will have a problem, in that the Gandalf AMTB2 wants to see RCDF (DCD) asserted to make a connection. What you may need to do is this: ; Make a cable for the DZ11 to AMTB2 port as follows: 2

CPU side AMTB2 side 20--

|r) 8---|-----------8 )

7---------------7m) 3---------------2o)

2---------------3E 2 Note that 20 is tied to 8 on the CPU side.! Also, 2 is swapped for 3.r F Then, the Kermit-11 command

SET DTR, which forces RSTS to raise DTRF for 30 seconds, will cause the DTR signal to loop back to the RCDF (DCD) signal and thus tell

RSTS that there is carrier detect whichF will raise DTR (the chicken or egg question) and get things rolling.F The Kermit-11 HANGUP

(or DISCONNECT) command will drop DTR and force" the modem to break the connection.

RSX and Modems F While the authors experience on RSX is limited, the following notes

may be of use.F Dialing out on a LOCAL line will often require that the modem assert internally DTR.aF If a line is set REMOTE on RSX, the driver will assert DTR and RTS.F For a modem, like a VA212PAR strapped at the factory defaults, thisF will cause the modem to assert

DSR and RCD. On the VADIC inF particular, the modem will drop

RCD during a DIAL command unless theF modem is configured to assert RCD continuously. For dialing out,F ideally the modem should be able to assert RCD via an option orF internally settable strap or switch. If this is not possible, anF alternative is to break line 8 (RCD) and jumper DTR (20) to RCD (8) on

dF PDP-11 KERMIT Page 1-

39 MODEMS F the CPU side. This will force RSX to always see carrier detect andF allow a dial sequence to complete. The Kermit-11 command

DISCONNECTF (or HANGUP) will still disconnect the modem as the modem will dropF from the line when it sees DTR go low (assuming the modem is not# strapped to assert DTR internally).

nF PDP-11 KERMIT Page 1-40

Typical Kermit-11 transfer rates F Some sample timings for Kermit-11 and long packet support. The packetF size in the RSTS/E to P/OS was

500 bytes, the size from RSTS/E toF RSTS/E was 700 bytes. These sizes are somewhat arbitrary, they depend? more on the system's buffering capabilities than anything else. Host buffering capabilities: ' P/OS

500 (estimated) @ RSTS/E 9.0 or later up to 7000, given sufficient system pool8 RSX-11M+ 255 (I/D space CPU only) RSX-11M 34? RT-11 134 (could be larger with mod to XC/XL) F As it can be seen, large packets make sense only for RSTS/E, P/OS andF RSX-11M+ if one wishes to avoid XON/XOFF overhead at high speeds. ItF should be possible to run larger packets on

M+ and RT-11 at lower speeds.l F File transferred: K11POS.TSK, size 102,400 bytes (200 disk blocks)9 Actual data packet characters

AFTER prefixing was 120,857S ( Time Speed Data rate Comments

seconds baud B 1436 1200 84/sec 11/44 to PRO/350,

'Classic' Kermit0 local phone callB 1237

1200 97/sec 11/44 to PRO/350, 500 Char packets0 local phone call B 2915 1200 41/sen 11/44 to PRO/350,

'Classic' Kermit? local call, 1 second

ACK delay.eB 1492 1200 81/sec 11/44 to PRO/350, 500 Char packets? local call, 1 second ACK delay.

A 304 9600 397/sec 11/44 to 11/44, 'Classic' Kermit,nE connected locally via Gandalf switch.tA 245 9600 493/sec

11/44 to 11/44, 700 char packets, E connected locally via Gandalf switch.d F The last two timings are much lower than the line speed due to theF fact the the PDP 11/44 is running 100% busy trying to keep up withF character interrupts using a normal terminal driver. A specialF purpose driver, such as the XK driver found on P/OS, would have lower. overhead and allow somewhat faster data rates. F Long packets were chosen for Kermit-11 due to the lack of suitableF interrupt driven i/o (at this time) under one of the operatingF systems, RSTS/E. The Sliding Windows would likely function better inF those situations where the circuit delay is much higher, or when the/ circuit can not accommodate large packet sizes.e

eF PDP-11 KERMIT Page 1-

41 Common problemsb 3 Common problems in file transfert Connection fails.F F Check modem control signals. RSX needs TC.DLU set to two to talk to aF dial out modem, otherwise you will need to strap or jumper signals inF the modem to have carrier detect set high. RSTS/E also should haveF the modem assert carrier detect. If not, see the previous notes aboutF modems. If all else fails, put a breakout box in the line and observe what signals are present. File transfer fails. F If the file transfer aborts on retries immediately, there may be aF parity problem. If the problem shows up on binary files, try a SETF PAR SPACE command to Kermit; that will force eight bit data to beF prefixed into seven bits. If you instead get a retry about once everyF 10 seconds, the other Kermit is not responding and your Kermit isF timing out. Check to see if your connection is still present, and try the SET PARITY command.rF If you are sending binary data between unlike Kermits, you will mostF likely have to give the proper command to each to prepare them for theF binary data; this is the

SET FILE command; for Kermit-11 it's SET FIL> BIN (or SET FIL TYP FIX); for VMS Kermit it's SET FIL TYP FIX.F If your Kermit's packets are being echoed back, try a SET SEND STARTF value command for your Kermit, and a SET REC START samevalue for theF other Kermit. This will force Kermit to ignore any echoed packets asF they won't have the default start of packet character (a CONTROL A, octal 1).t

eF PDP-11 KERMIT Page Index-

1 Indexe % INDEX. 8 Bye, 1-11

Modems and rsx, 1-38 lC Commands for file transfer, 1-9 Notes regarding options for ther< Commands for local file system manager, 1-33 management, 1-13: Commands for servers, 1-11

Program operation, 1-6 Common problems, 1-40 0 Connect command, 1-13

Remote, 1-12 sC File formats (binary and text), Saving files on the pdp-11 fromt? 1-4 your microcomputer,

1-51: File specifications., 1-3 Server operation, 1-115 File systems on the pdp-11, 1-3 Set command, 1-15(

Finish, 1-11 e: Kermit-11 commands, 1-8 The dial command,

1-319 The get command, 1-10 = Local and remote operation, 1-7 The receive command, 1-10 9

The send command, 1-9HE Modems, 1-37 Typical kermit-11 transfer rates,h, Modems and rsts/e, 1-37 1-40

Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF