[net.micro.mac] Macintosh Internet Protocols

tim@k.cs.cmu.edu (Tim Maroney) (11/26/85)

I have posted the sources and binaries for the Macintosh Internet Protocols
to net.sources.mac .  The sources run about 12,000 lines of code, and
another few thousand lines of binhex'd binaries.  The source and binaries
are stored in twelve shell archive files; note that "sh" and not "csh"
should be used to unpack the archives, and that you should do the unpacking
in a new, clean directory.  The first archive file absolutely must be
unpacked first; after that, the order doesn't matter.

The Internet Protocols are network communication protocols defined by the
Department of Defense, in wide use around the world.  The Macintosh versions
run on Appletalk, the low-cost local area network for the Macintosh computer
(and, using a Centram board, for the IBM PC).  They are meant not so much
for Macintosh to Macintosh communication as for high-speed, error-checked
communication with minicomputers and mainframes, such as VAXen and TOPS-20
systems.  Some form of Seagate-compatible router will be needed in order to
use these programs as they are intended to be used.  (Seagate, the Stanford
Ethernet Appletalk Gateway, is a family of routers defined by compatible
software; the Seagate source code may be retrieved by FTP from SUMEX, in the
INFO-MAC archives.  Those of you who are not able to FTP should send mail to
Bill Croft, su-safe!croft, for information on the tape distribution.)

The programs included are TFTP (simple file transfer), TELNET (remote
terminal emulation), CUST (to customize your Macintosh's IP address and so
on), and SFMTEST, a test program provided as an illustration of the multiple
file "Get File" dialog.  Both sources and binaries are provided for all
these programs.

The sources may be of interest even to people who have no use for Appletalk,
because they contain software for emulating DEC vt100 terminal graphics,
error reporting to the user, running multiple tasks simultaneously (actually
synchronously) within an application, setting timers at a higher level than
direct manipulation of the vertical retrace queue, and an extended
"SFGetFile" (standard file package "Get File" dialog) that can be interfaced
to from any language without translating the source code, and which allows
multiple files to be selected.  The sources are in Lisa Pascal, but Lisa
Pascal can readily be transliterated into any of the Mac C compilers.

The code originated with the MIT PCIP network package for the IBM PC,
written in C.  Initial translation was done by Mark Sherman of Dartmouth; I
continued this work.  The final product is far more than a translation,
being thoroughly integrated into the weird and wonderful Macintosh
environment, and incorporating a set of, oh, roughly aleph-null bug fixes
and major extensions.

Second draft user-level documentation may be found in the file "user" in the
first file of the twelve files in the posting.  Better documentation is
currently being written; by someone else, since I have moved on to other
projects, such as LaserWriter print spooling on a UNIX machine.  There is
currently no external documentation of the source files, though they are
reasonably well commented.
-=-
Tim Maroney, Professional Heretic, CMU Center for Art and Technology
tim@k.cs.cmu.edu       | uucp: {seismo,decwrl,ucbvax,etc.}!k.cs.cmu.edu!tim
CompuServe: 74176,1360 | God is not dead; he just smells funny.