home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Columbia Kermit
/
kermit.zip
/
bin
/
gm2kerm.ws
< prev
next >
Wrap
Text File
|
2020-01-01
|
18KB
|
399 lines
Kermit-MPX
Program: L. Tate, Simulation Associates Inc.
Derived from CYBER-170 version 1.0,
Jim Knutson, University of Texas.
Language: Gould Fortran 77 4.2, with some assembler routines
Version: 2.3
Date: May 1986
Documentation: L. Tate, Simulation Associates Inc.,
Mike Niswonger, Computer Science and Applications
Kermit-MPX Capabilities at a glance:
Local operation Yes; MPX 3.2B or later
Remote operation Yes
Transfers text files Yes
Transfers binary files No
Wildcard send No
^X/^Y interruption No
Filename collision avoidance No
Can time out Yes
8th-bit prefixing No
Repeat count prefixing No
Alternate block checks No
Terminal emulation No
Communication settings No
Transmit Break Yes
IBM communication Yes
Transaction logging No
Session logging Yes
Raw upload No
Act as server Yes
Talk to server Yes
Advanced commands for servers No
Local file management No
Handle file attributes No
Command/init files Yes
Printer control No
14.1 Kermit-MPX Description
Kermit-MPX run≤ oε Gould'≤ Concep⌠ anΣ Serie≤ computer≤ runninτ MP╪ 2.╪ o≥á MP╪ ì
3.╪á operatinτá systems«á MP╪ 3.2┬ anΣ late≥ version≤ allo≈ truσá ful∞á duple° ì
termina∞á operation≤á s∩á thesσ installation≤ ma∙ usσ thσ Kermi⌠ prograφá iεá ß ì
loca∞ modσ althougΦ thσ responsσ i≤ ver∙ poor.
Thi≤á Kermi⌠á require≤ thσ usσ oµ aε eigh⌠ linσ asynchronou≤á (8LAS⌐á interfacσ ì
(sorr∙á ALI═á anΣá AD╙ users⌐ oε aε IOP«á Thi≤ interfacσá buffer≤á thσá input¼ ì
performinτá somσá rudimentar∙ translation≤ likσ lowe≥ t∩ uppe≥ casσá anΣá blocδ ì
read≤ anΣ writes«á Unfortunately¼ it'≤ efficienc∙ i≤ ver∙ poo≥ fo≥ singlσ bytσ ì
read≤á anΣ writes¼á thu≤ thσ connec⌠ mode'≤ effectivσ throughpu⌠ i≤ onl∙á abou⌠ ì
30░á baud«á T∩ makσ matter≤ worsσ wheε thσ type-aheaΣ buffe≥ i≤ ful∞á (40-12╕ ì
characters⌐á theεá thσá buffe≥ emptie≤ anΣ ß prograφá interruptioεá (break⌐á i≤ ì
generated« Als∩ ß breaδ caε bσ generateΣ b∙ recognitioε b∙ thσ 8LA╙ oµ ß 'wake-ì
upº character«á Convenien⌠ fo≥ thσ termina∞ processor¼ bu⌠ reall∙ baΣ fo≥ filσ ìètransfe≥ iµ thσ wake-u≡ characte≥ i≤ ß '?' or any other printable character.
Thi≤á Kermi⌠ ha≤ ß timeou⌠ tha⌠ function≤ a⌠ randoφ intervals«á Iµ thσá timeou⌠ ì
doesn'⌠ worδ theε sendinτ ß breaδ shoulΣ wakσ i⌠ up.
Thσ initializatioε filσ KERMIT.IN╔ ma∙ bσ useΣ t∩ initializσ Kermit«á Thσ filσ ì
mus⌠á bσ iε thσ curren⌠ director∙ wheε startinτ Kermi⌠ up«á An∙ valiΣ Kermit-ì
MP╪ commanΣ ma∙ bσ included.
14.2 Kermit-MPX Commands
Kermit-MP╪ use≤ thσ DECSYSTEM-2░ keyworΣ stylσ commanΣ language«á EacΦ keyworΣ ì
ma∙ bσ abbreviateΣ t∩ it≤ minimuφ length«á "?ó ma∙ bσ typσ t∩ reques⌠ ß men⌡ oµ ì
thσ availablσ option≤ fo≥ thσ curren⌠ fielΣ a⌠ an∙ poin⌠ iε ß command.
Kermit-MP╪ prompt≤ witΦ 'Kermit-º witΦ thσ machinσ typσ concatenateΣ oε t∩á it« ì
Fo≥ examplσ oε ß Concep⌠ 32/2╖ machine¼ thσ promp⌠ wil∞ bσ 'Kermit-27>'.
BYE
Send≤á ß messagσ t∩ thσ remotσ serve≥ t∩ loτ ou⌠ thσ remotσ Kermi⌠ anΣ ì
áááááááááexit≤ loca∞ Kermi⌠ t∩ systeφ level« Sincσ Kermit-MP╪ canno⌠ loτ itselµ ì
áááááááááoff¼ i⌠ just exits the task.
CONNECT
Ente≥á termina∞á emulatioεá mode«á Present≤á thσá illusioεá oµá beinτ ì
ááááááááádirectl∙á connecteΣ a≤ ß termina∞ t∩ thσ remotσ system«á Wheεá escapσ ì
ááááááááácharacte≥ i≤ typed¼ interpret≤ next character as follows:
0 (zero) transmits a null
B transmits a BREAK
C close a connection, return to
local Kermit
Q quit logging (if being done)
R resume logging
? show available arguments
escape character
transmits the escape character
Invalid arguments are beeped and reenters connect mode.
EXIT
Exit from local Kermit.
FINISH
Send≤ ß messagσ t∩ thσ remotσ serve≥ t∩ shu⌠ itselµ down¼á leavinτ thσ ì
áááááááááloca∞ Kermi⌠ a⌠ commanΣ level¼ anΣ thσ remote at system level.
GET remote-filename
Tells a remote Kermit to send a file.
HELP topic
Typinτá HEL╨ alonσ print≤ ß brieµ summar∙ oµ Kermi⌠ anΣ it≤á commands« ì
áááááááááYo⌡ caε als∩ type
HELP commandè
fo≥á an∙á Kermi⌠ command¼á e.g«á "HEL╨ SEND"¼á t∩á ge⌠á morσá detaileΣ ì
áááááááááinformatioε abou⌠ ß specifiπ command« Type
HELP ?
ááááááááát∩á seσá ßá lis⌠ oµ al∞ thσ availablσ hel≡ commands¼á o≥á consul⌠á thσ ì
áááááááááKermi⌠ User≤ Guide.
QUIT
Exit from local Kermit.
RECEIVE
Expects one or more files to arrive.
SEND local-filename
Sends a file to remote Kermit.
SERVER
Ac⌠á a≤ ß serve≥ fo≥ anothe≥ Kermit«á Takσ al∞ furthe≥ command≤á froφ ì
áááááááááthσá othe≥ Kermit«á Afte≥ issuinτ thi≤ command¼á escapσ bacδ t∩á you≥ ì
áááááááááloca∞ systeφ anΣ issuσ SEND¼ GET¼ BY┼ o≥ othe≥ server-orienteΣ commanΣ ì
áááááááááfroφ there« Iµ you≥ loca∞ Kermi⌠ doe≤ no⌠ havσ ß BY┼ command¼ i⌠ doe≤ ì
áááááááááno⌠á havσá thσ ful∞ abilit∙ t∩ communicatσ witΦ ßá Kermi⌠á serve≥á (iε ì
áááááááááwhicΦ casσ yo⌡ caε onl∙ usσ thσ senΣ command).
SET
EstablisΦá system-dependen⌠ parameters«á Yo⌡ caε examinσ thei≥ value≤ ì
áááááááááwitΦá thσá SHO╫á command«áá Numeriπá value≤á ma∙á bσá decimal¼á octa∞ ì
ááááááááá(postfixeΣ witΦ aε ╧ o≥ B)¼ o≥ hexadecima∞ (postfixeΣ witΦ aε H)« Thσ ì
áááááááááfollowinτ ma∙ bσ SET:
DEBUG options
Show packet traffic explicitly. Options are:
ALL Set all debug options.
LOG-FILE local-filename
Log states and packets to the specified file.
The default log-file is file L.KERMLOG
OFF Don't display debugging information. (this is
the default). If debugging was in effect, turn
it off and close any log file.
PACKETS Display each incoming and outgoing packet
(lengthy)
STATES Show Kermit state transitions and packet numbers
(brief).
LOG options
Log all inputs from remote port during connection.
Options are:
LOG-FILE local-filename
Log inputs to specified file. The default
log-file is file L.SESSION
OFF Turn off the session logging
ON Turn on the session logging
è PORT terminal-address
Set≤ thσ communicatioε port╗á t∩ whicΦ connect¼á send¼á receivσ anΣ ì
ááááááááááááserve≥á interac⌠á with«á An∙á MP╪ termina∞ addres≤á ma∙á bσá used« ì
ááááááááááááExamples║ TY7EC0¼ U17CC4¼ o≥ UT.
ááááááááááááDefault is UT.
ESCAPE number
Control character used to escape from connect mode.
Default is 29, (^])
ECHO on/off
Turns on or off the echo by Kermit during connect mode.
Echo is normally off.
DELAY number
Ho≈á man∙ second≤ t∩ wai⌠ beforσ sendinτ thσá firs⌠á packet«á Thi≤ ì
áááááááááááágive≤ yo⌡ timσ t∩ "escapeó bacδ anΣ issuσ ß RECEIV┼ command«á Dela∙ ì
áááááááááááádefault≤ t∩ ╡ seconds.
INIT-RETRY number
Se⌠áá thσá maximuφá numbe≥á oµá retrie≤á alloweΣá fo≥á thσá initia∞ ì
ááááááááááááconnectioε beforσ givinτ up«
ááááááááááááDefaul⌠ i≤ 20.
RETRY number
Se⌠ thσ maximuφ numbe≥ oµ retrie≤ alloweΣ fo≥ sendinτ ßá particula≥ ì
áááááááááááápacket«
ááááááááááááDefault≤ t∩ 5.
SEND parameter
Parameters for outgoing packets as follows:
EOLCHR number
Thσá octa∞á valuσá oµ thσ ASCI╔ characte≥ t∩ bσ useΣá a≤á ßá linσ ì
ááááááááááááááterminato≥á fo≥ packets¼á iµ onσ i≤ requireΣ b∙ thσ othe≥ system« ì
ááááááááááááááCarriagσ returε (0DH⌐ b∙ default.
PACKLEN number
Maximuφ packe⌠ lengtΦ t∩ send¼ decima∞ number¼ betweeε 2░ anΣ 94. ì
áááááááááááááá9┤ b∙ default.
PADCHR number
Character to use for padding. Default is NUL.
PADLEN number
How much padding to send before a packet.
ááááááááááááááDefault is no padding.
QUOTECHR number
Wha⌠áá printablσá characte≥á t∩á usσá fo≥á quotinτáá oµáá contro∞ ì
áááááááááááááácharacters« Thσ defaul⌠ i≤ '#º (23H)« Therσ shoulΣ bσ n∩ reasoε ì
áááááááááááááát∩ changσ this.
SYNCCHR number
Thσá contro∞á characte≥ tha⌠ mark≤ thσ beginninτ oµá thσá packet« ìèááááááááááááááNormall∙ SO╚ (Control-A¼á ASCI╔ 1)« Therσ shoulΣ bσ n∩ reasoε t∩ ì
ááááááááááááááchangσ this.
TIMEOUT number
Ho≈á man∙á second≤ thσ othe≥ Kermi⌠ want≤ beforσ beinτ askeΣá fo≥ ì
ááááááááááááááretransmission« Defaul⌠ i≤ 1░ seconds.
RECEIVE parameter
Parameters to request or expect for incoming packets, as follows:
EOLCHR number
ááááááááááááááThσá octa∞á valuσá oµ thσ ASCI╔ characte≥ t∩ bσ useΣá a≤á ßá linσ ì
ááááááááááááááterminato≥ fo≥ packets¼á iµ onσ i≤ requireΣ b∙ thσ othe≥á system« ì
ááááááááááááááCarriagσ returε (0DH⌐ b∙ default.
PACKLEN number
Maximuφ packe⌠ lengtΦ t∩ send¼ decima∞ number¼ betweeε 2░ anΣ 94. ì
áááááááááááááá9┤ b∙ default.
PADCHR number
Character to use for padding. Default is NUL.
PADLEN number
How much padding to send before a packet.
ááááááááááááááDefault is no padding.
QUOTECHR number
Wha⌠áá printablσáá characte≥á t∩á usσá fo≥á quotinτá oµáá contro∞ ì
áááááááááááááácharacters« Thσ defaul⌠ i≤ '#º (23H)« Therσ shoulΣ bσ n∩ reasoε ì
áááááááááááááát∩ changσ this.
SYNCCHR number
Thσá contro∞á characte≥ tha⌠ mark≤ thσ beginninτ oµá thσá packet« ì
ááááááááááááááNormall∙ SO╚ (Control-A¼á ASCI╔ 1)« Therσ shoulΣ bσ n∩ reasoε t∩ ì
ááááááááááááááchangσ this.
TIMEOUT number
Ho≈á man∙ second≤ thσ othe≥ Kermi⌠ want≤ beforσ beinτá askeΣá fo≥ ì
ááááááááááááááretransmission« Defaul⌠ i≤ 1░ seconds.
SHOW
Displa∙ curren⌠ SE╘ parameters¼ versioε oµ Kermit¼ anΣ othe≥ info.
STATUSááááááááá
Give statistics about the most recent file transfer.
TAKE local-filename
Read and execute Kermit commands from a local file.
X
Exit from Kermit.
14.3 Software Installation
èMPX-3.2┬á anΣá late≥ operatinτ system≤ suppor⌠ truσ ful∞ duple° TS═á terminals« ì
WitΦ thesσ operatinτ systeφ version≤ se⌠ thσ LOCALO╬ flaτ .TRUE« iε thσ includσ ì
filσ KVER.INS« Thi≤ allow≤ thσ loca∞ command≤ t∩ bσ used╗ BYE¼ CONNECT¼ FINIS╚ ì
anΣ GET« Otherwise¼ Kermit-MP╪ i≤ gooΣ a≤ ß remotσ serve≥ (whicΦ i≤ it'≤ primσ ì
functioε anyway).
The source is a series of files;
KVER.INS version include file
KDEF.INS Kermit definitions
KPROT.COM protocol common
KPACK.COM communication parameters of Kermits
KFILE.COM I/O package common data
KTIME.COM Timing of connect mode
KDBUG.COM Debug output control
KMSG.COM Prompt and version message
GM2KERM.INS Consolidated include file
(has all above files in it)
GM2KERM.F77 main Kermit code
GM2KERM.ASM assembler routines for I/O system
GM2KERM.BAT batch deck to compile, assemble
and catalog task image
Thσá smal∞ CO═ anΣ IN╙ file≤ arσ founΣ iε thσ large≥ GM2KERM.IN╙ file«á Usσá ß ì
tex⌠ edito≥ t∩ spli⌠ ou⌠ thσ smalle≥ file≤ fo≥ thσ Fortraε compile≥ t∩á access« ì
Wheε creatinτ thσ task¼ edi⌠ thσ batcΦ decδ fo≥ appropriatσ director∙ name≤ anΣ ì
filσ names«
14.4 Hardware Requirements
Thσ fron⌠ enΣ oµ ß GoulΣ caε bσ quitσ trouble-some¼ requirinτ somσ expertisσ t∩ ì
overcomσ somσ oµ thσ 8LA╙ shortcomings.
Thσá wakeu≡á characte≥á oε man∙ systeφ i≤ thσ '?'«á Thi≤á i≤á ßá valiΣá Kermi⌠ ì
character¼á bu⌠á ever∙ timσ i⌠ i≤ sent¼á i⌠ break≤ thσ termina∞ thu≤ endinτ thσ ì
packet«á T∩á avoiΣá thi≤ wσ changσ thσ wakeu≡ characte≥ t∩ ß non-valiΣá Kermi⌠ ì
characte≥ sucΦ a≤ control-┼ (05H).
Thσá connec⌠á modσ i≤ rathe≥ slow¼á havinτ aε aggregatσ ratσ oµá 30░á baud¼á iµ ì
systeφá loaΣ i≤ low«á However¼á wσ usuall∙ likσ t∩ transfe≥ a⌠ 960░á o≥á 19.2δ ì
baud«á Iε onσ installation¼á wσ se⌠ thσ bauΣ ratσ t∩ maximum« Sincσ thσ remotσ ì
systeφ i≤ sendinτ character≤ bacδ a⌠ thσ samσ higΦ rate¼á i⌠ outpace≤ thσ loca∞ ì
Kermi⌠á anΣ wσ losσ thσ buffe≥ (remembe≥ thσ break⌐ iε connec⌠ mode«á Notσ tha⌠ ì
thi≤á doe≤á no⌠ affec⌠ thσ serve≥ modσ wherσ transfer≤ occu≥á a⌠á ful∞á channe∞ ì
speed«á Logginτá iεá anΣá activatinτ thσ serve≥ doe≤ no⌠ requirσá mucΦá systeφ ì
interactioεá anΣ droppeΣ character≤ caε bσ tolerateΣ fo≥ thσ shor⌠ duratioεá oµ ì
thσá connec⌠á modσ required«á Thi≤ limitatioε oµ connec⌠ modσá emphasize≤á thσ ì
primar∙á usσá oµ Kermit-MP╪ a≤ ß filσ server¼á no⌠ a≤á aεá interactivσá connec⌠ ì
termina∞ program«
Thσ othe≥ solutioε i≤ t∩ dynamicall∙ changσ thσ bauΣ ratσ froφ 30░ t∩ 960░á anΣ ì
back« Thi≤ require≤ ß prograφ t∩ changσ thσ bauΣ ratσ dynamicall∙ anΣ ß direc⌠ ì
linkagσ betweeε computers« Thσ procedurσ i≤ t∩ loτ oε t∩ thσ remote'≤ terminal¼ ì
changσ thσ bauΣ ratσ t∩ desireΣ rate¼á closσ you≥ loca∞ connection¼á changσ thσ ìèbauΣ ratσ oµ connec⌠ port¼ theε reopeε connection.
┴á por⌠á characteristiπ changinτ prograφ wa≤ no⌠ buil⌠ int∩ Kermi⌠á becausσá oµ ì
it'≤ systeφ dependence«á Al∞ that'≤ needeΣ i≤ ß prograφ t∩ translatσ thσá por⌠ ì
characteristic≤ t∩ ß │ bytσ AC┼ codσ useΣ 8LAS«á Thi≤ ma∙ bσ sen⌠ t∩ thσá por⌠ ì
usinτá thσá M.WRIT┼ macro¼á witΦ thσ datß forma⌠ inhibi⌠ (DFI⌐ bi⌠ se⌠ anΣá thσ ì
transmi⌠á AC┼á paramete≥á bi⌠ set«á Seσ MP╪ referencσá manual¼á volumσá ╔á fo≥ ì
details« A good future enhancement.
14.5 Future Work
Install a port setting capability to Kermit.
áááááImprove CONNECT speed. Suggested alternatives could be;
Block reads with 1 sec timeouts and special character detect.
Tota∞ interrup⌠ driven«á Thi≤ require≤ assemble≥ routine¼á anΣ usσ oµ ì
áááááááááM.CAL╠ t∩ IOC╙ sincσ M.WRITE/M.REA─ doe≤ no⌠ perforφ wel∞ iε interrup⌠ ì
ááááááááádriveε environment.
Activate Kermit to get higher priority. This sounds cheap.
áááááAdded server commands for file management, particularly;
cd change directory
copy copy file
rename rename file
delete delete file
list list file
dir directory listing,
Thesσ command≤ arσ mos⌠ needeΣ sincσ it'≤ difficul⌠ t∩ usσ volumσá manage≥ ì
áááááa⌠ 960░ bauΣ connected.
Correc⌠á erro≥á reporting«á Erro≥ packet≤ arσ no⌠ displayeΣ anΣ fo≥á somσ ì
áááááreason¼ sen⌠ erro≥ packet≤ arσ no⌠ displayed by other Kermits.
14.5 Kermit-MPX Revision List
2.3 AddeΣ t∩ SERVE╥ thσ abilit∙ t∩ recognizσ thσ ╔ packet«á Thi≤ packe⌠ ì
ááááááááááái≤á useΣá b∙á advanceΣ Kermit≤ (a⌠ leas⌠ MS-Kermi⌠ 2.2╖ anΣá up⌐á t∩ ì
áááááááááááinitializσá thσá server«á ChangeΣá thσ methoΣ b∙á whicΦá nowai⌠á i≤ ì
áááááááááááestablisheΣ s∩ tha⌠ iµ ECH╧ wa≤ ofµ beforσ Kermi⌠ operation¼ theε i⌠ ì
áááááááááááwil∞ remaiε s∩ afterwards«á GooΣ fo≥ networδ operation«á CorrecteΣ ì
áááááááááááthσ erro≥ reportinτ codσ such tha⌠ thσ erro≥ message≤ arσá produced« ì
áááááááááááHowever¼á the∙á caεá bσ ver∙ cryptic«á Wha⌠ i≤ needeΣ i≤ ßá genera∞ ì
ááááááááááámethoΣá oµ handlinτ text¼á likσ hel≡ anΣ erro≥ messages¼á sucΦá tha⌠ ì
ááááááááááámemory is not filled but ready access is available.
ááááááááááá L. Tate, SAI, May 1986.
2.2 ImproveΣá receive/ge⌠ reliabilit∙ b∙ movinτ thσá termina∞á reportinτ ì
ááááááááááábeforσá thσ ACK/NA╦ i≤ sent«á Thσ probleφ seem≤ t∩ havσ beeε durinτ ì
áááááááááááthσ reportinτ time¼ thσ sendinτ floodeΣ thσ 8-linσ buffe≥ anΣ causeΣ ì
áááááááááááß break¼á losinτ data« Als∩ correcteΣ erro≥ iε print∞ routinσ whicΦ ì
áááááááááááwrotσ t∩ stdout instead of the parameter fd. èááááááááááá L. Tate, SAI, Mar. 1986.
2.1 Correc⌠ buτ iε SUDT« Wheε usσ thσ SV├ 1,X'27º whicΦ se⌠ ful∞ duple° ì
áááááááááááoε ß termina∞ i⌠ previousl∙ useΣ ß trasheΣ filσ contro∞ block« Thi≤ ì
áááááááááááhaΣá causeΣá unpredictablσ result≤ iε ß lo⌠ oµ thσ I/╧á includinτá ▓ ì
áááááááááááread≤á pendinτ a⌠ once«á Correctinτ thi≤ probleφ alloweΣ remova∞á oµ ì
áááááááááááHIOAL╠á routine«á File≤ t∩ bσ reaΣ arσ openeΣ witΦ OPENMODE='Rºá anΣ ì
áááááááááááfile≤á t∩ bσ writteε arσ openeΣ witΦ OPENMODE='U'«á Als∩ addeΣá thσ ì
áááááááááááTAK┼ command«
ááááááááááá L« Tate¼ SAI¼ Mar« 1986.
2.0 AddeΣá thσá CONNECT¼á GET¼á FINISH¼á BY┼á commands«á Thi≤á requireΣ ì
ááááááááááásignifican⌠á change≤ t∩ thσ i∩ interface«á Thσ loca∞ on/ofµá optioε ì
áááááááááááwa≤ als∩ par⌠ oµ this«
ááááááááááá L« Tate¼ SAI¼ Nov« 1985.
1.0 Thi≤á Kermi⌠ wa≤ thσ direc⌠ implementatioε oµ thσ Cyber-17░ version¼ ì
áááááááááááUniversit∙ oµ Texas«
ááááááááááá L« Tate¼ SAI¼ Sept« 1985.