Source code courtesy of Palevich, who comments:
"My guess is that the SUPDUP code is a fork and extension of my
original CHAMELEON terminal emulator.
My guess is that either Leigh Klotz or Patrick Sobolvaro extended
CHAMELEON to create SUPDUP. From looking over the source code, I
see these changes from what I remember writing in Chameleon:
+ Using the paddle to scroll left/right. (I only supported using
the yellow function keys to do this.)
+ Emulating SUPAI and IMLAC. (I had already added SUPDUP support to
CHAMELEON.)
+ Removing emulation for ADM-3A."
Klotz and Sobolvaro don't remember any details. They have given their
permission to release this, should that be necesssary.
LOGIN files suggest the ITS terminal settings should be:
:tctyp soft hei 24 wid 39 +%tosai +%tolid +%tocid full +%tprsc no overwrite
The links to RAKASH NAMDRG and TVFIX were wrong due to an added
semicolon at the end of the :LINK command. This would cause the
automatic TV-11 stuffing to fail, and also not start the name dragon.
Courtesy of the author, Leigh Klotz.
Klotz wrote in https://news.ycombinator.com/item?id=23064346
> The assembler [for Apple II Logo] was already chosen, probably by
> Steve Hain or Gary Drescher. I believe it was CROSS. It annoyed me
> that I would get phase errors if I edited during the first pass
> which was like 10 or 15 minutes at night so I wrote a one-pass
> assembler in MacLisp, but it was slower to finish than the first
> pass of CROSS so I translated it to Logo and Hal said to put it on
> the utilities disk. I can't remember who added .output and .input
> but Logo had had them before the Apple II, I think 11Logo had it.
KA10 specific programs: DECtape tools, programs related to the Rubin
10-11 interface (including the Knight TV), programs using the 340
display, and programs using the PDP-6.
KL10 specific programs: microcode, frontend programs, and LSPEED.
KS10 specific programs: microcode, frontend programs, MTBOOT, and TENTH.
The 2500 bootstrap ROM expects to receive a block loader first, which
will run and recieve the actual payload which is the microcode and
font data divided into blocks.
The assembler will recieve a GC-OVERFLOW interrupt. Other TT2500
files set the GC-OVERFLOW variable to a dummy function, which seems to
appease the interrupt.
Since the TVDIS code was written before backquote was introduced to
Maclisp, it uses comma characters without quoting. To accomodate this
a call to SETSYNTAX overrides the new syntax for comma.
File names where compared against historical backup tapes, and time
stamps where listed in a text file. Before a tape image is made, all
files are updated with timestamps from the listing.
Where no historical timestamp can be determined, the latest git author
date is taken.
The script takes two file names on the command line: an old tape, and
a new tape. Any updated files are written to a new tape diffs.tap.
The intent is that diffs.tap can be extradted with a DUMP command like
LOAD CRDIR LINKS to update an ITS system.
The script tries to avoid including binary files that only differ in
the symbol table or creation time. Some false positives are expected.
Both of these are from MIT's zork-1978-01 release. MADMAN; MADADV SAVE
is from 1978-01-28 (it's madadv.save_3 there), and TAA; ZORK 3 is from
an archive dated 1978-01-27. Unfortunately this isn't the final version
of Zork -- in particular, it doesn't have the endgame.
The launcher will also work with the other 1977/78 Zork images MIT have
released, provided you copy them to MADMAN; MADADV SAVE.
Note that we already have the non-DM fake Zork in SYS3; TS ZORK, but
the real Zork was in SYS2; on DM, so the recommended ZORK^K will find it
first.
These two databases contain pure code routines that Muddle images can
refer to. We don't currently have whatever tool was used to maintain
them, so this is a MIDAS program that creates and populates them.
SAV FILE includes some stubs for functions in the LSRTNS and MUDDLE
libraries -- these are the functions that the existing Muddle 54 Zork
images need.
For the FIELD function in LSRTNS, returning FALSE is equivalent to the
user not being found. I have no idea what C-FCN in MUDDLE is for, but
very early Zork calls it after a command is entered, and seems happy
enough with it doing nothing.