mirror of
https://github.com/PDP-10/its.git
synced 2026-02-16 04:43:01 +00:00
KERMIT - file transfer.
This commit is contained in:
committed by
Eric Swenson
parent
686cbc12d5
commit
31e3aa5e67
105
doc/math/kermit.order
Executable file
105
doc/math/kermit.order
Executable file
@@ -0,0 +1,105 @@
|
||||
-*-Text-*-
|
||||
|
||||
This is the file INFO;KERMIT >, which documents KERMIT, a file-transfer
|
||||
program.
|
||||
|
||||
File: Kermit Node: Top Up: (DIR) Next: Simple
|
||||
|
||||
Kermit is a file transfer program which can send and receive text files
|
||||
over a terminal line. It is particularly useful for transferring files
|
||||
between an ITS and a PC or other random computer which has a modem but
|
||||
isn't connected to any network.
|
||||
|
||||
* Menu:
|
||||
|
||||
* Simple:: Basic usage.
|
||||
* Filenames:: File name syntax.
|
||||
* Parameters:: Setting internal parameters.
|
||||
|
||||
|
||||
File: Kermit Node: Simple Up: Top Next: Filenames
|
||||
|
||||
|
||||
For purposes of this presentation, I'll refer to the machine which is at
|
||||
the other end of the connection as the "PC", even though of course it
|
||||
can be any machine which runs Kermit.
|
||||
|
||||
Typical use of Kermit is as follows:
|
||||
|
||||
1. Get ahold of a terminal emulator and a kermit program for your PC.
|
||||
Often these come together in a single package. Kermit has many
|
||||
implementations, inluding versions for Unix, IBM PC (crosstalk?),
|
||||
Macintosh, VAX/VMS, and Symbolics 3600. Many of these are public
|
||||
domain. I think the MIT microcomputer store sells it. You can
|
||||
also get it from Columbia University, which is where Kermit originated.
|
||||
|
||||
2. Start the terminal emulator, dial up the ITS machine on the phone,
|
||||
and log in.
|
||||
|
||||
3. Run the Kermit server with the DDT command :KERMIT. It will inform
|
||||
you that it is entering Kermit server mode.
|
||||
|
||||
4. On the PC, run the kermit user program. This is usually a command
|
||||
processor or menu which has commands like GET, SEND, and FINISH.
|
||||
|
||||
5. Issue GET and SEND commands to receive or transmit files.
|
||||
|
||||
6. Issue a FINISH command to halt the ITS KERMIT server.
|
||||
|
||||
7. Return to the terminal emulator to get back to ITS, etc.
|
||||
|
||||
|
||||
File: Kermit Node: Filenames Up: Top Next: Parameters
|
||||
|
||||
|
||||
In order to accomodate Kermit user programs which are unable to send or
|
||||
receive filenames with spaces in them, ITS Kermit will treat a period in
|
||||
the filename as a FN1/FN2 separator. E.g., to get file FOO TXT in the
|
||||
current directory, issue the command GET FOO.TXT.
|
||||
|
||||
A second filename of LSP, LISP, TXT, or SCM will be ignored (treated
|
||||
like >). (This is controlled by the Maclisp variable
|
||||
*ITS-UNINTERESTING-TYPES*; see below.)
|
||||
|
||||
To accomodate Kermit user programs which don't like semicolons, but do
|
||||
like colons, ITS Kermit will treat FOO: as if it were FOO; (assuming
|
||||
that there is no FOO device).
|
||||
|
||||
By default, ITS Kermit will transmit version numbers for files which
|
||||
have them. E.g. if you ask to get file FOO.LSP, and there is a local
|
||||
file FOO 23, ITS Kermit will say that it is transmitting FOO.LSP.23.
|
||||
If you don't want this, you'll have to set *VERSION-NUMBERS?* to NIL
|
||||
(see below).
|
||||
|
||||
|
||||
File: Kermit Node: Parameters Up: Top
|
||||
|
||||
|
||||
Kermit is a Maclisp program. A number of interesting internal
|
||||
parameters are stored as the values of global variables, and therefore
|
||||
can be changed by using SETQ at a read-eval-print loop.
|
||||
|
||||
To get to a read-eval-print loop, type control-G. To enter Kermit
|
||||
server mode, call the function SERVE with no arguments.
|
||||
|
||||
E.g.:
|
||||
|
||||
^G
|
||||
QUIT
|
||||
(PUSH "tex" *ITS-UNINTERESTING-TYPES*)
|
||||
(...)
|
||||
(SERVE)
|
||||
Entering KERMIT server mode.
|
||||
|
||||
Here are some of the things you can set:
|
||||
|
||||
(DEFVAR *DEBUG?* NIL "T means supply debugging info as you run")
|
||||
(DEFVAR *VERSION-NUMBERS?* T "T means include version numbers in file names")
|
||||
(DEFVAR *MAX-RETRY-COUNT* 10. "times to retry a packet")
|
||||
(DEFVAR *MIN-TIMEOUT* 2 "minimum timeout interval in seconds")
|
||||
(DEFVAR *SERVER-TIMEOUT* 30 "timeout interval when in server mode")
|
||||
(DEFVAR *SERIAL-INPUT* NIL "input stream for serial line")
|
||||
(DEFVAR *SERIAL-OUTPUT* NIL "output stream for serial line")
|
||||
(DEFVAR *COMMENTARY-STREAM* *TERMINAL-IO* "stream for messages to user")
|
||||
|
||||
See the source code (AI: MATH; KERMIT >) for inspiration.
|
||||
Reference in New Issue
Block a user