The Kermit Project
Now hosted by Panix.com
New York City USA • firstname.lastname@example.org
[~] ./wermit C-Kermit 4.2(030) PRERELEASE # 2, 5 March 85, AT&T System III/System V Type ? for help C-Kermit>help Type ? for a list of commands, type 'help x' for any command x. While typing commands, use the following special characters: DEL, RUBOUT, BACKSPACE, CTRL-H: Delete the most recent character typed. CTRL-W: Delete the most recent word typed. CTRL-U: Delete the current line. CTRL-R: Redisplay the current line. ? (question mark) display help on the current command or field. ESC (Escape or Altmode) Attempt to complete the current field. \ (backslash) include the following character literally. From Unix command level, type 'kermit -h' to get help about command line args. C-Kermit>exit [~]The first release of C-Kermit, version 4.0, was announced February 5, 1985, in the Info-Kermit Digest V2 #1. Although it was called version 4.0, it was a completely new program. Its predecessor was called Unix Kermit and was not interactive at all; it was driven purely by command-line options. The last Unix Kermit version was 3.0 from 1984, and since C-Kermit was to replace it, continuity of versioning was preserved. In the screenshot above you can see some anachronisms like the reference to an "Altmode" key (that's Teletype talk) and the non-"Y2K-compliant" date.
Kermit was designed to be portable to different operating system families, but by March 1985 it ran only on a handful of 16-bit and 32-bit Unix varieties (we had about half of these in-house):
Until today, the first version of C-Kermit was lost. Now we have a complete source set for version 4.2.030, just a few weeks newer than (and not much different from) the 4.0 version. It was sent to me by Oliver Lehmann in Leverkusen, Germany, who has it on a 1987-vintage East German desktop computer called the EAW P8000 (EAW = Elektro-Apparate-Werke) running a version of AT&T System III called WEGA. Some modifications were required for C-Kermit to run on this machine but he also had the original distribution, which is now available here for software archaelogists:
FTP: ftp://ftp.kermitproject.org/kermit/archives/ck030.tarUnfortunately it can't be added to the archive at Columbia University because it was closed and frozen in 2011.
Obviously the C language and all its supporting APIs and header files and libraries have changed a lot in 30 years, so this thing won't build out of the box in most cases. A first attempt on Linux failed spectacularly. A second attempt on Solaris 9 (circa 2002) using Sun's C compliler (i.e. cc instead of gcc) was more promising. A few minor changes and it compiled, linked, and ran successfully. The biggest change was global renaming of the macro 'unchar' to 'xunchar' to avoid a conflict with header files that came out after this version of C-Kermit (naturally, this was done with C-Kermit 9.0's CHANGE command... coming soon in C-Kermit 9.0.304). Here are the diffs:
FTP: ftp://ftp.kermitproject.org/kermit/archives/ck030.diffThere's also a new 'solaris' makefile target:
#Sun Solaris 9 (this target added in January 2016). #The -Xs flag specifies K&R (not ANSI) C. solaris9 solaris: make wermit "CFLAGS = -Xs -DUXIII -DSOLARIS -i -O" "LNKFLAGS = -i"
The size of the executable is 137532 bytes (137K), compared to 2889020 (2.88MB) for C-Kermit 9.0 on the same SPARC architecture.