Difference between revisions of "ITS 138"
(Initial impressions.) |
(Guessed list of UUOs.) |
||
Line 15: | Line 15: | ||
* Line printer. | * Line printer. | ||
* MAR register to trap memory accesses. | * MAR register to trap memory accesses. | ||
+ | |||
+ | ==System calls== | ||
+ | |||
+ | From the symbol table, we can guess the following UUOs are present: | ||
+ | |||
+ | * .ATTY | ||
+ | * .BREAK | ||
+ | * .CALL (further decoded from accumulator field) | ||
+ | * .CLOSE | ||
+ | * .CORE | ||
+ | * .DISMIS | ||
+ | * .DSTART | ||
+ | * .DSTOP | ||
+ | * .FDELE | ||
+ | * .IOT | ||
+ | * .IOPOP | ||
+ | * .IOPUSH | ||
+ | * .ITYIC | ||
+ | * .GETMS | ||
+ | * .LISTEN | ||
+ | * .LOGIN | ||
+ | * .OPEN | ||
+ | * .OPER (further decoded from address field) | ||
+ | * .SETMS | ||
+ | * .SLEEP | ||
+ | * .TRANAD | ||
+ | * .TRANDL | ||
+ | * .USET | ||
+ | * .VALRET | ||
+ | |||
==Source code walkthrough== | ==Source code walkthrough== |
Revision as of 09:27, 29 November 2023
Gerald Sussman has preserved a listing of ITS version 138 from around 1967-68. It was mentioned in Grant Fjermedal's 1986 book "The Tomorrow Makers". In 2023, MIT Museum staff began processing the listing, and volunteers transcribed it to machine readable files; at this point there are 25 pages out of more than 120. The TITLE statement on the first line says "ITS 1.0 3/19/67", but there is reason to believe the date has not been kept current with edits.
The format of the listing is in the output of some cross reference tool. Each line is prefixed with a line number and a symbol reference. The last three pages are a table which lists all symbols and where they are defined.
Supported hardware
- Modified TTY device that handles four more teletypes, as per AI memo 105 "Modifications to PDP-6 Teletype Logic".
- Four GE Datanet 760 CRT consoles.
- The second generation vidissector, "TVB". Mentioned in AI memo 113.
- 16K core, or (preferably) 256K moby core memory from Fabri-Tek.
- DEC Type 555 "microtapes" with data channel.
- DEC Type 340 display.
- Line printer.
- MAR register to trap memory accesses.
System calls
From the symbol table, we can guess the following UUOs are present:
- .ATTY
- .BREAK
- .CALL (further decoded from accumulator field)
- .CLOSE
- .CORE
- .DISMIS
- .DSTART
- .DSTOP
- .FDELE
- .IOT
- .IOPOP
- .IOPUSH
- .ITYIC
- .GETMS
- .LISTEN
- .LOGIN
- .OPEN
- .OPER (further decoded from address field)
- .SETMS
- .SLEEP
- .TRANAD
- .TRANDL
- .USET
- .VALRET
Source code walkthrough
Page | Description |
---|---|
1-3 | Basic definitions, accumulators, PI channel assignments, etc. |
4 | "GO" entry point, initialization. Jumps to the core job. |
5-7 | Handlers for clock, parity error, and other processor interrupts. |
8-9 | Job scheduling. |
10 | PC "losering" |
11-13 | Job switching and starting. |
... | |
116 | The system core job. |
117-118 | Various variables and END statement. |
External links
- GitHub repository with ITS 138 page photos and transcribed text.
- ITS 1.4 Reference Manual, is close in time to ITS 138.