Note: SHRDLU only works with the visual block rendering on pdp10-ka with the
Type 340 display enabled. Even then, there is some issue that causes the
SLAVE interface to the Type 340 display to fail, with an error indicating that
the 340 is not available. This is still to be tracked down.
Without the Type 340 display, SHRDLU should work reasonably well. It fails at
some things that the DEMO apparently succeeded in doing. It is not clear why,
but likely the demo was created at one point, and the SHRDLU sources were updated
after that point, breaking some things.
SHRDLU can be invoked with :SHRDLU;SHRDLU.
Once you invoke SHRDLU, you'll see output similar to this:
SHRDLU VERSION 1000 LOADED 2024-07-21 IN BLISP 2156
REFER
COMMENTS AND QUESTIONS TO DDM
VERSION
RECONSTRUCTED BY EJS
-IF YOU ARE NEAR A DEC-340
DO YOU WANT THE DISPLAY (TYPE " Y " OR " N " )
If you are running the pdp10-ka emulator, have enabled the DPY device, and want
to see the display, answer "Y". Otherwise, answer "N".
Then, after some more output you will see:
YOU ARE NOW IN A READ-EVAL-PRINT LOOP
TYPE " GO " TO ENTER READY STATE
>>>
You are now in command mode and can type various commands, such as "SHOW".
You can also type "GO" to enter ready mode. It is in ready mode that you can
issue commands like "pick up a big red block.", to which SHRDLU should
respond "OK.". Note that commands should be ended with a period (".").
Questions should be ended with an exclamation mark ("?"). An example question
might be: "what is in the box?".
MicroPlanner can be invoked with :SHRDLU;PLNR. As a simple test of MicroPlanner,
you can enter these expressions (marked with "==>" -- don't type that). If the
(THVAL ...) form results in printing "(FALLIBLE TURING)" then you know that basic
goal reaching works.
>>> TOPLEVEL
LISTENING THVAL
==> (THASSERT (HUMAN TURING))
((HUMAN TURING))
==> (DEFPROP THEO1 (THCONSE (X) (FALLIBLE $?X) (THGOAL (HUMAN $?X))) THEOREM)
THEO1
==> (THASSERT THEO1)
THEO1
==> (THVAL (THGOAL (FALLIBLE TURING) (THTBF THTRUE)) NIL)
(FALLIBLE TURING)
The value of the timeout was getting overwritten by incorrect code.
I was seeing timeout errors while trying to write to the display from
SHRDLU. The fix seems to help a lot.
MCL is invoked with :MAXTUL;MCL and can be used to compile any
macsyma source. Of course, if you change IN-CORE sources, you'll
have to dump out a new macsyma, but for non-IN-CORE sources, you'll
get the FASL and UNFASL files in the right places, and any macros
loaded that are needed.
The original link of maxtul;.good. complr was incorrect -- it pointed
to SYS;TS COMPLR. The link is supposed to point to the dumped out
MCL image.
Also fix UTMCL. First, it is not supposed to be a link to MCL. It
is it's own dumped COMPLR image. Added source for UTMCL, and updated
macsyma.tcl to compile it and then load it into a COMPLR to dump
it to MAXTUL;TS UTMCL.
UTMCL is called by Macsyma's COMPILE_LISP_FILE function to compile
a lisp source file with the appropriate Macsyma context.
In 2017, the rules changed from a start date of the 1st Sunday in April to the 2nd Sunday in March.
The end date changed from the last Sunday in October to the 1st Sunday in November.
These entries were added, based on information from backed up LSR1
files: APPLE2, DRAGON, DRAW, GFR, GT40, MINI, PDP11, PEEK, TARAKA, and
TEACH.
In the cases where FILDI had a "@machine" part, that has been dropped.
It can interfere, e.g. with $^S DDT commands.
The INQUPD program is run in "normal" mode, such that it processes
files in the INQUIR directory with FN1 = .UPD1., and we provide such a
file with the XGP user defined. We can, of course add other users
that we wish to be "pre-loaded" in the INQUIR database.
SYSNET;TELSER 174, and SYSTEM;TTYTYP 322 were changed in a commit from
about 4 months ago, but the version numbers were not updated.
This makes it really hard for those trying to update their existing ITS
systems with changes from this repository.
Addresses #2280, #2282, #2283, #2284, and #2285.
The QUEFIL routine has been conditionalized for MIT, but the brackets
are in the wrong place. This results in the MOVEI B,DEVICE being
dropped, resulting in garbage being passed in B to RFN"PFN. XQUEUE
then writes a nonsensical file name to the .XGPR. queue file, and
XGPSPL picks this up and prints it on its console.
This is a earliest known preserved version of ITS from 1967. It ran
on the AI lab PDP-6, with five teletypes and four GE consoles.
The source code was reconstructed from Gerald Sussman's paper listing.
Also increase TTYTAB block size to accommodate those systems with more
than 25 TTY channels.
Finally, update autologout code to comment out the code that checks
for the number of sockets owned by a network job, since the logic
only worked with the DM NCP-based network implementation. This logic
needs a reworking for current internet/chaosnet networking.
This version actually works. You invoke the program with:
:EAK;BEAR <uname> [<item>] [<description]>
The user <uname> will receive annoying messages until they respond with:
:SEND BEAR <item>
^C
<item> and <description> are optional. <item> defaults to "cookie", and
<description> defaults to "A VERY HUNGRY BEAR".
The ROM is built with the default start address, which is 173000.
It appears PROM 50 is the old Maclisp PROM tool, and PROM 555 is a
newer version for Lisp machines.