-*-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 STUFF in the current directory, issue the command GET FOO.STUFF. Yes, this means that you can't ask for files that have dots in their names; this is an unfortunate limitation. A second filename of LSP, LISP, TXT, or SCM will be ignored (treated like >). (This is controlled by the variable *ITS-UNINTERESTING-TYPES*; see the Parameters node.) To accomodate Kermit programs that 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.  File: Kermit Node: Parameters Up: Top Kermit is a Maclisp program. A number of interesting internal parameters are stored as the values of Lisp global variables. They can be changed by using SETQ at a read-eval-print loop or in your Kermit init file. For example, if your uname is FOO, you can put (PUSH "tex" *ITS-UNINTERESTING-TYPES*) in your Kermit init file FOO KERMIT. To get to a read-eval-print loop, type control-G. To enter Kermit server mode again, 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: Variable Default Description *DEBUG?* NIL T means supply debugging info as you run *VERSION-NUMBERS?* NIL T means include version numbers in file names, whenever possible *MAX-RETRY-COUNT* 10. Times to retry a packet *MIN-TIMEOUT* 2 Minimum timeout interval in seconds *SERVER-TIMEOUT* 30 Timeout interval when in server mode *SERIAL-INPUT* NIL Input stream for serial line *SERIAL-OUTPUT* NIL Output stream for serial line *COMMENTARY-STREAM* terminal Stream for messages to user *DEFAULT-PATHNAME-DEFAULTS* The variable *ITS-UNINTERESTING-TYPES* is a list of file types that should be treated as if they aren't there. The default value is ("LISP" "LSP" "SCM" "TXT" "lisp" "lsp" "scm" "txt" "" :UNSPECIFIC). See the source code (AI: MATH; KERMIT >) for further inspiration.