Icon The Kermit Project   |   Now hosted by Panix.com
New York City USA   •   kermit@kermitproject.org
…since 1981

Kermit Software for the Digital Equipment Corporation PDP-10
  File Transfer for DECsystem-10 TOPS-10 and DECSYSTEM-20 TOPS-20

PDP-10 memorabilia
(Click image for a gallery)

Goto:   [ DECsystem-10 Kermit ]   [ DECSYSTEM-20 Kermit ]   [ ITS ]   [ Links ]   [ Kermit Home ]

Photo of
 KL10 CPU Digital Equipment Corporation's 36-bit PDP-10 was, arguably, the birthplace of both the Internet and the Open Source movement, and without argument, the source of many of the most influential software applications, including EMACS, TEX, ISPELL (the first spell checker), MACSYMA, SCRIBE, numerous LISP dialects, MM and other pioneering email clients, and Kermit. The first Kermit program was written for the DECSYSTEM-20 at Columbia University, and transferred its first file from one DEC-20 serial port to another on 29 April 1981.

The PDP-10 was the successor to the PDP-6, which appeared in 1964. PDP-10s came in four models: KA10, KI10, KL10, KS10. The best-known operating systems were TOPS-10, TENEX, and TOPS-20. TENEX was done at Bolt Barenek and Newman (BBN) and required modified hardware; TOPS-20 was DEC's commercial adaptation of TENEX, and the DECSYSTEM-20 was a PDP-10 (KL10) with BBN's hardware pager, orange (rather than blue) cabinets, and far fewer visible lights, switches, knobs, buttons, and dials (a jumbo version of today's featureless box). The typical PDP-10 installation included multiple full-size cabinets for CPU, memory, controllers, networking front ends, and magnetic tape, plus washing-machine sized disk drives, line printers, and so on, requiring a large machine room with serious air conditioning and a great deal of 3-phase power; the electrical bill alone ran into the thousands of dollars per month, ditto for hardware maintenance. This was typical of any mainframe of the era. Later, a single-cabinet minicomputer version was released, called the 2020, based on the KS10 processor. If I'm not mistaken, it could run on ordinary household current in regular ambient temperature. It was not noted for its speed.

Other PDP-10 operating systems included MIT's ITS, Stanford's WAITS, Tymshare's TYMCOM-X and (for the 2020, TYMCOM-XX), the version of TENEX that Xerox PARC ran on their MAXC PDP-10 clone (more or less equivalent to a KA-10 with BBN pager, and maybe some others. The PDP-10 line was canceled by DEC in 1983 and gradually faded from view in the ensuing years. Manufacturing ceased in 1988. Some machines or clones remained operational through the 1990s (and a handful even to this day as museum pieces), and then in 2001 a renaissance of PDP-10 culture began with the release of several Unix- and/or Windows-based PDP-10 emulators (see Links section).

The distinguishing feature of PDP-10 is its rich instruction set and, especially in TOPS-20, its powerful repertoire of system services. This combination made the PDP-10 more fun to program than any other computer before or since, and spawned a generation of prolific programmers ranging from Bill Gates to Richard Stallman.

Kermit software is available for TOPS-10 and TOPS-20. Photo: A portion of a DECsystem-10 showing the KL10 operator control panel.

[ DECsystem-10 ] [ DECSYSTEM-20 ]

DECsystem-10 Kermit 3(136) April 2006

DECSYSTEM-10 Kermit, or Kermit-10, was written in 1983-86 by Bob McQueen and Nick Bush at Stevens Institute of Technology, Hoboken NJ, in Common Bliss. The latest release, from Nick Bush, consolidates the patches that have accumulated over the years and fixes a few bugs. Kermit-10 shares common source with Kermit-32 (the VAX/VMS version that was retired in 1987 in favor of VMS C-Kermit) and Kermit for the long-forgotten DEC Professional (PDP-11 based) workstation with P/OS. Recognizing that most sites never did and never will have a Common Bliss compiler, MACRO-10 versions of the source files are also available, output by Bliss-36, suitable for input to MACRO-10. As of version 3(136) the Bliss and Macro files are once again synchronized and the binaries produced from either set of sources are identical.

Back in the old days I could give you a wildcard specification to pick up all these files, but today's super-friendly Web browsers don't allow that, so we must list the files separately. Transfer them in text (ASCII) mode if your browser will let you (some of these file types, such as .mac, are nowadays associated with applications that might try to play them as music or show them as movies, so you'll need to right-click on the link and then choose "Save as" or whatever):

k10.ann     Announcements
k10133.mem  Update notes
k10133.rno  Runoff source for update notes
k10com.req  Common Bliss header file
k10err.r36  Bliss-36 error number definitions
k10glb.bli  Bliss source file
k10glb.mac  Macro source file
k10mit.bwr  Kermit-10 "beware" file
k10mit.ccl  Kermit-10 link file
k10mit.ctl  Batch control file to build Kermit-10
k10mit.hlp  Kermit-10 help file
k10mit.mac  Macro source file
k10mit.rnh  Runoff source for help file
k10msg.bli  Bliss source file
k10msg.mac  Macro source file
k10sys.mac  Macro source file
k10tt.bli   Bliss source file
k10tt.mac   Macro source file
k10unv.mac  Macro source file
k10v3.mem   Kermit-10 V3 release notes Runoff source
k10v3.rno   Kermit-10 V3 release notes
k10wld.mac  Macro source file

Of course you can still FTP these files the old-fashioned way (i.e. all at once):

ftp kermit.columbia.edu
User: anonymous
Password: (your-email-address)
cd kermit/d
type ascii
mget k10*.*

As of version 3(136), we also have the Kermit-10 files available in two "tarballs":

The files listed above as a Unix tar archive of text files in Unix format. Transfer in binary mode to Unix, uncompress with gunzip, and then de-archive with "tar xvf".

The files listed above, plus the binaries, as a tape image file in PDP-10 BACKUP format. Uncompress with gunzip.

DECSYSTEM-20 Kermit 5.1.186 January 2006


DEC-20 Kermit, or Kermit-20, was written at Columbia University by Bill Catchings and Frank da Cruz in MACRO-20 assembly language. It was the first operational Kermit program and was actively developed and maintained from 1981 until 1988, and then revived in 2001 by the addition of long packets to enable faster file transfer into and out of emulated DEC-20s, which might not include ARPANET support (in the sense that they have a TCP/IP stack and FTP clients and servers), but might still be accessible to incoming Telnet connections. Long packets were never done for Kermit-20 before because the PDP-11/40 RSX20F front end could not tolerate them. Emulated DEC-20s (and DEC-20 Telnet servers), however, have no such limitation. The current version is 5.1(186), dated 6 January 2006 -- The 25th Anniversary Edition.

Since all DEC-20s come with the MACRO-20 assembler, Kermit-20 is distributed in source-code form. Here are the files you need:

The DEC-20 Kermit MACRO-20 source file. Transfer this to the DEC-20 in text mode and rename to KERMIT.MAC, LOAD KERMIT, SAVE (see k20mit.txt for details). NOTE: Your Web browser might not know what to do with a .mac file; tell it to "Save as...", otherwise it might try to play it or something.

The Kermit-20 chapter of the 1988 Kermit User Guide in plain-text form. Your Web browser will think this is a Microsoft Word document because its name ends in .DOC. Transfer in text mode, rename to KERMIT.DOC. (Plain-text files were .DOC files for decades before MS Word came along.)

The Kermit-20 chapter of the 1988 Kermit User Guide in PostScript format. This one can be transferred in either binary or text mode. Rename to KERMIT.PS.

k20mit.pdf (NEW Jan 2006)
The Kermit-20 chapter of the 1988 Kermit User Guide in PDF format. Clicking on this link in any graphical Web browser should produce the expected results if you have Adobe Acrobat Reader installed. Or transfer in binary mode.

Update notes for Kermit-20 5.1.

Or use FTP the old-fashioned way:

ftp kermit.columbia.edu
User: anonymous
Password: (your-email-address)
cd kermit/d
type ascii
mget k20*.*

Kermit for MIT's ITS Operating System

In January 2017, Lars Brinkhoff informed me of a version of Kermit in Maclisp for ITS, MIT's Incompatible Timesharing System. It was adapted in 1988 from a Common Lisp version (not sure which one yet) by Jonathan Rees of Scheme48 fame. Here are the files:

The main Kermit program

EMACS Info file for Kermit (original name: kermit.4).

Kermit dumper (needed for Maclisp)

Library of macros and subroutines for Maclisp

Lars notes, “I don't have the file AI: MATH; COMMON > which is referred to in lines 16 and 40 of kermit.170“. If anybody else has a copy, please let me know.

Kermit for Other PDP-10 Operating Systems

To my knowledge, no Kermit programs were ever written explicitly for TENEX, WAITS, or TYMCOM-X, but since Kermit programs were written in various LISP dialects, including Common Lisp, which presumably would have worked anywhere that Common Lisp was available. (The Emacs LISP version wouldn't have helped because PDP-10 EMACS was based on TECO, not LISP, and I don't think there was ever a TECO Kermit either!)


PDP-10 Kermit / Columbia University / kermit@kermitproject.org / 1 May 2015 / 14 January 2017