1
0
mirror of https://github.com/PDP-10/its.git synced 2026-02-28 17:29:10 +00:00
Commit Graph

1077 Commits

Author SHA1 Message Date
Lars Brinkhoff
9d52bc41d7 Old Apanet NIC host table.
And a TECO macro to generate HOSTS PRETTY and HOSTS INSERT.  The
latter is needed for UT (user telet).
2025-01-03 13:31:46 +01:00
Lars Brinkhoff
efcc6b5690 Add NFILE, Lispm file server. 2024-12-11 08:12:00 +01:00
Lars Brinkhoff
9af9290529 Fix MCHOKP.
If MCHOKP was called with A=0, it would mistakenly match this against
an empty MCHTAB entry and do a skip return to indicate a valid ITS
name.  To fix this, the check for an empty entry is moved up.
2024-11-22 07:08:22 +01:00
Björn Victor
4557f5dac3 Check checksum on CH11 under KLH10 2024-11-21 13:35:53 +01:00
Eric Swenson
b7fc0277e1 Added HAUNT. 2024-10-22 07:02:21 -07:00
Eric Swenson
99878e67c2 Added OPS4. 2024-10-22 07:02:21 -07:00
Björn Victor
85b2050c82 Make BUGHST, TCPGAT, DOMGAT, HDRGAT and GATHST be settable in NAMES. 2024-09-12 07:56:48 +02:00
Björn Victor
ac4087ffd6 Recompile NAMES when HOSTS3 has been updated
When NAMES would not normally need recompilation, check if SYSBIN;HOSTS3 has been updated since the last NAMES compilation and if so, recompile to get any fresh host addresses.
2024-09-07 07:31:58 +02:00
Björn Victor
5b51b6d673 Let BUGHST default to local host
Change default value of BUGHST to 0, and let that mean the same as if it is set to (one of) the address(es) of the local host.
2024-09-06 13:27:17 +02:00
Eric Swenson
23a27a5345 Updated build to make pdp10-ka-, pdp10-ks-, and pdp10-kl-based systems correctly set up IP network.
Now, KA, DB, and KL systems will set their IP address to the value of the IP make variable.
They wiil correctly define a host table entry for their machine.
They will correctly set up .mail.;names >.
They will correctly configure COMSAT for networking.

The resulting systems should allow COMSAT to come up, and with appropriate IMP configuration
in the "run" scripts to perform inbound and output IP network requests.
2024-09-03 08:07:32 -07:00
Lars Brinkhoff
63b10e09ca QR code generator.
Draw a QR code on a TV display.  A command line may specify an input
file, or else input is from the keyboard.
2024-08-26 20:49:26 +02:00
Eric Swenson
173f8220f6 Made it so that either DEBUGMODE or USERMODE could be used, and so
that both modes would not display annoying timer messages.
2024-08-23 07:13:28 -07:00
Eric Swenson
b26050f9d2 Got rid of hack of setting CAR and CDR values to T.
The old Maclisp used when SHRDLU was created allowed one to take the CAR
and CDR of atoms.  The former returned internal bits associated wih the
symbol, and the latter returned the property list of the symbol.

This was disabled in later verisons of MacLISP, but allowed to be enabled
by setting the value of CAR to T (and the value of CDR to T).

However, doing this masked coding errors that resulted from unintentionally
taking the CAR or CDR of a symbol, when a list or NUL was actually expected.

This commit removes the hack of setting CAR and CDR to T, and adds macros
to replace the use of CAR and CDR in this cases in PLNR and associated PLNR
logic.  These macros are found in the MACROS module.  Making this change,
and removing the duplicated $ reader macro from PLNR (it is already in
MACROS for the benefit of other files), required making changes to the
loader of SHRDLU and PLNR.  I removed the obsolete use of UREAD to load
interpreted files, and replaced with a new NEW-LOAD function.  UREAD was
unable to handle the (status macro $ 'thread) code that needed to be included.
2024-08-23 07:13:28 -07:00
Eric Swenson
ae5b1a31b0 Fixed issue with incorrect indefinite name when no antecedent is found.
Fixed issue with the word ISN'T being output incorrectly in a message.
2024-08-23 07:13:28 -07:00
Daniel Seagraves
82e936b504 SSIMP should use 18-bit mapping, not 16, otherwise it will fail on physical hardware. 2024-08-21 07:35:14 +02:00
Eric Swenson
229ef7449e Fixed SHRDLU issue that caused the display of an object name, when there was no object, to be "THE IL".
The LISTNAMES function needed another conditioanl clause to handle the case where it was
passed the NIL object (meaning "no object").  Now, it correctly answers "NOTHING" rather
than "THE IL".h
2024-08-17 06:40:30 -07:00
Eric Swenson
ec5971143e Fixed SHRDLU issue that was causing shapes to change into blocks when being put down. 2024-08-17 06:40:30 -07:00
Eric Swenson
37f57931e9 Fixed lots of bugs and made it so SHRDLU and PLNR can be compiled.
Now, we build SHRDLU;TS SHRDLU and SHRDLU;TS PLNR from compiled
lisp code.  This should allow it to run faster and have fewer issues
with garbage collection and running out of LIST space.

Found lots of bugs going through the compilation effort.  Also fixed
several issues that were resulting in weird/incorrect responses to
standard demo prompts.

Below is a list of prompts that I have tested:

pick up a big red block.
grasp the pyramid
find a block that is taller than the one you are holding and put it into the box.
what does the box contain?
what is the pyramid supported by?
how many blocks are not in the box?
is the red cube supported?
can the table pick up blocks?
can a pyramid be supported by a block?
can a pyramid support a pyramid?
stack up two pyramids.
stack up two red blocks.
put the green pyramid on the red cube.
which cube is sitting on the table?
is there a large block behind a pyramid?
put a small one onto the green cube that supports a pyramid.
put the littlest pyramid on top of it.
does the red cube support anything?
what color is the block that supports the green pyramid?
how many things are on top of green cubes?
had you touched any pyramid before you put the green pyramid on the little cube?
when did you pick it up?
why did you pick it up?
why did you clear off that cube?
how did you clean off the red cube?
how many objects did you touch while you were doing it?
put the blue pyramid on the block in the box.
is there anything which is bigger than every pyramid but is not as wide as the thing that supports it?
thank you.

Of course, lots more things are possible.

It is still best to do this without answering "Y" to the Type 340 display prompt at the
start.  There is either an issue with the GRAPHF module or the SLAVE module (or perhaps
with the Type 340 simulator) that is causing crashes after several successful commands
with graphic output.
2024-08-15 07:36:29 -07:00
Eric Swenson
388c05a851 Add some helpful comments. 2024-07-27 10:44:34 -07:00
Eric Swenson
68af95e63c Reformat some SHRDLU code. 2024-07-27 10:44:34 -07:00
Eric Swenson
1280fce06c Fixed various bugs with the current version of SHRDLU.
Also added some descriptive files with info about the various files
in the source directory.
2024-07-27 10:44:34 -07:00
Eric Swenson
8794a3e050 Update SHRDLU and MicroPlanner to run on newer Maclisp.
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)
2024-07-25 13:26:38 -07:00
Eric Swenson
ace4248fe8 Added SHRDLU and MicroPlanner.
These are the original, unedited files written for an old version of
Maclisp.
2024-07-25 13:26:38 -07:00
Eric Swenson
847c8eb6fb Updated SLAVE interface to Type 340 display to correct an obvious bug.
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.
2024-07-23 09:21:33 -07:00
Eric Swenson
bca0987608 Fix MCL (macsyma source compiler) to actually work. Also Fix UTMCL.
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.
2024-05-20 22:25:33 -07:00
Lars Brinkhoff
fc8f554f1b Light show.
Display various patterns on the memory indiators.
2024-05-16 07:16:07 +02:00
Lars Brinkhoff
f8c728bf33 Xoroshiro pseudo-random number generator.
This is a version of the xoroshiro PRN generator with 36-bit output.
The 2⁷²-1 period coefficients in prim.txt were graciously provided by
Sebastiano Vigna.

https://vigna.di.unimi.it/ftp/papers/ScrambledLinear.pdf
2024-05-16 07:16:07 +02:00
Eric Swenson
5bc1f3195c Updated daylight savings time calculations for the US to reflect current rules.
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.
2024-04-11 20:18:57 +02:00
Björn Victor
ed921b8f01 Use broadcast in NAMDRG
See defines at the start.
2024-03-22 11:51:20 +01:00
Björn Victor
101eb453ca Uppercase contact names in CHATST. 2024-03-22 11:51:20 +01:00
Björn Victor
5c86460007 Implement Chaosnet broadcast in user programs. 2024-03-22 11:51:20 +01:00
Björn Victor
cfa4505c90 Implement Chaosnet broadcast sending in ITS. 2024-03-22 11:51:20 +01:00
Björn Victor
5c117a677c Make CH10 pick up address from interface
just like CH11 does (see PR #2038)

Fixed mismatched bracket in SYSTEM;ITS and bumped version number.
Also bumped version number on SYSTEM;CHAOS.
2024-03-22 09:18:53 +01:00
Lars Brinkhoff
0be87a864c Add INQUIR entries for system users and directories.
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.
2024-03-10 14:46:31 +01:00
Eric Swenson
9f256775dd Add support for XGP user in INQUIR database.
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.
2024-03-08 07:27:07 -08:00
Eric Swenson
9a2c32448c The files L;STRUCT 659, SYSEN1;PWORD 2664, SYSENG;DUMP 448,
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.
2024-03-03 07:59:12 -08:00
Eric Swenson
9ace55c8c5 Add fix to ITS to ensure it doesn't hang waiting forever for TUTs to be written to disk.
Fix guarantees that TUTs will get written out when the system is shutting down.

Addresses #2220.
2024-03-01 07:26:26 -08:00
Lars Brinkhoff
d1023d1a07 Fix .TRANS in TJ6.
Must read a new character after the comma, before looping around.
2024-02-26 06:48:48 +01:00
Lars Brinkhoff
bbed2274c0 Fix conditional brackets in XQUEUE.
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.
2024-02-12 12:03:26 +01:00
Lars Brinkhoff
c5f006371d Login file for XGP. 2024-02-12 12:03:26 +01:00
Lars Brinkhoff
61925004dd Add ITS 138 source code and assemble it with MIDAS 73.
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.
2023-12-20 20:17:50 +01:00
Eric Swenson
e6745f1fd6 Fix Zork issue when opening non-functional windows.
Updated Zork to address issue with bad message when opening
non-functional windows.

Addresses this issue:  https://github.com/heasm66/mdlzork/issues/58
And this fix: https://github.com/heasm66/mdlzork/pull/59
2023-11-22 08:32:21 -06:00
Eric Swenson
df6307ee86 Updated lcf/comp.xxfile so that it doesn't fail during ACT2 build.
Seems the occasional failures during zork build can be mitigated by
breaking up some of the compiles into separate jobs.
2023-11-22 08:32:21 -06:00
Eric Swenson
7b2ff9af7f Updated DM gunner to enable autologout and disable IMP status checking.
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.
2023-11-08 13:06:17 -08:00
Lars Brinkhoff
ca108300a4 Update ITSIRP and TELSER announcement for TT. 2023-11-07 07:00:18 +01:00
Lars Brinkhoff
e7d8ec43ae HX configuration updates.
- Customize HX name announcement in TELSER.
- Configure ITS with demon support.
2023-11-07 07:00:18 +01:00
Lars Brinkhoff
be8ed5d999 BC ITS - SDF Boot Camp KA10. 2023-11-07 07:00:18 +01:00
Lars Brinkhoff
06154e001b A program to automatically run DUMP. 2023-11-06 17:04:39 +01:00
Eric Swenson
264e530dee Updated LUSER to know about HX, BC, EX, and ES.
Also provided a list of users to support these hosts.
2023-11-04 21:57:48 -07:00
Lars Brinkhoff
42b47a73d4 PT ITS for the PiDP-10.
KA10 with six DC10 disks.
2023-10-29 08:17:55 +01:00