This is based on a disassembly of the binary AI:SYS1;TS FACTOR; the
binary and its help file .INFO.;FACTOR ORDER are both dated 1977-09-27.
MC had an identical copy with a later date.
This assembles into a binary that's identical to the original, except
that the original version has all its symbols marked as global, and no
assembly info.
Fixes#96.
@larsbrinkhoff spotted that TS3TTY has a comment listing TTY input open
mode bits which includes:
;3.5 => CONVERT LOWER TO UPPER CASE
This mode bit isn't documented in the similar lists in BITS or CALLS
(they skip from 3.4 to 3.6), and doesn't appear to be implemented
anywhere. However, ITS 785 (circa 1973) has a test for this bit in
TTYO4:
TRNE D,10 ;SKIP ON OLD MODE OFF
IOR J,[000400,,0] ;OLD MODE INPUT -> CONVERT LOWER CASE TO UPPER
So it looks like when WUMPUS was first written, this bit was how it
handled lower-case input; at some point, ITS stopped supporting this
bit, and WUMPUS was binary-patched to handle lower-case input explicitly
instead.
This is equivalent to the binary patch that was applied to
AI:SYS1;TS WUMPUS; the original patch was:
.IOT TTYI,A ; at 50; jumped to from GETLF
CAIL A,"a-1
SUBI A,"a-"A
JUMPA T,GETLF+1
JUMPA T,GETLF+2
CAIE T,"s ; at 55; jumped to from MOVE2
CAIN T,"S
JUMPA T,MOVE2+1
JUMPA T,MOVE2+2
PATCH: ; at 61; not used
AI:SYS1;TS WUMPUS was last modified 1977-04-12 18:16. It's closely
related to SRI-NIC's version, but it's unclear which is newer, or
whether they both derive from a common source.
This assembles into a binary that's identical to TS WUMPUS, except for
jumps from GETLF and MOVE2 to two binary patches at 50 and 55 which make
input case-insensitive.
(Note that EXPL ends with a bare \r, which is encoded as \356 here for
itstar's benefit.)
Fixes#108.
Resolves#284.
Commented out uses of time-origin in maxtul; mcldmp (init) until we
can figure out why it gives arithmetic overflows under the emulators.
Updated the expect script statements in build_macsyma_portion to not
attempt to match expected strings, but simply sleep for some time
since in some cases the matching appears not to work.