Difference between revisions of "ITS 138"

From Computer History Wiki
Jump to: navigation, search
(Move UUO list down.)
(UUOs as per the full ITS listing.)
Line 42: Line 42:
 
==System calls==
 
==System calls==
  
From the symbol table, we can guess the following UUOs are present:
+
These are the UUO calls defined on page 19.
  
* .ATTY
+
{| class="wikitable"
* .BREAK
+
| 040 || .IOT || || .CALL 1, || .DISMIS || || .OPER 1 || .ITYI
* .CALL (further decoded from accumulator field)
+
|-
* .CLOSE
+
| 041 || .OPEN || || .CALL 2, || .TRAND || || .OPER 2 || .LISTEN
* .CORE
+
|-
* .DISMIS
+
| 042 || .OPER || || .CALL 3, || .TRANAD || || .OPER 3 || .SLEEP
* .DSTART
+
|-
* .DSTOP
+
| 043 || .CALL || || .CALL 4, || .VALRET || || .OPER 4 || .SETMSK
* .FDELE
+
|-
* .IOT
+
| 044 || .USET || || .CALL 5, || .UTRAN || || .OPER 5 || .GETMSK
* .IOPOP
+
|-
* .IOPUSH
+
| 045 || .BREAK || || .CALL 6, || .CORE || || .OPER 6 || .LOGIN
* .ITYIC
+
|-
* .GETMSK
+
| colspan="3" | || .CALL 7, || .TRNDL || || .OPER 7 || .CLOSE
* .LISTEN
+
|-
* .LOGIN
+
| colspan="3" | || .CALL 10, || .DSTART || || .OPER 10 || .UFLUSH
* .OPEN
+
|-
* .OPER (further decoded from address field)
+
| colspan="3" | || .CALL 11, || .FDELE || || .OPER 11 || .ATTY
* .SETMSK
+
|-
* .SLEEP
+
| colspan="6" | || .OPER 12 || .GBLTTY
* .TRANAD
+
|-
* .TRANDL
+
| colspan="6" | || .OPER 13 || .IPUSH
* .USET
+
|-
* .UTRAN
+
| colspan="6" | || .OPER 14 || .IPOP
* .VALRET
+
|-
 +
| colspan="6" | || .OPER 15 || .DFLUSH
 +
|-
 +
| colspan="6" | || .OPER 16 || .DSTOP
 +
|-
 +
| colspan="6" | || .OPER 17 || .RDTIME
 +
|-
 +
| colspan="6" | || .OPER 20 || .RDSW
 +
|-
 +
| colspan="6" | || .OPER 21 || .LPEN
 +
|-
 +
| colspan="6" | || .OPER 22 || .UDISMT
 +
|}
  
 
==External links==
 
==External links==

Revision as of 08:00, 14 December 2023

ITS 138 front page

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

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.

System calls

These are the UUO calls defined on page 19.

040 .IOT .CALL 1, .DISMIS .OPER 1 .ITYI
041 .OPEN .CALL 2, .TRAND .OPER 2 .LISTEN
042 .OPER .CALL 3, .TRANAD .OPER 3 .SLEEP
043 .CALL .CALL 4, .VALRET .OPER 4 .SETMSK
044 .USET .CALL 5, .UTRAN .OPER 5 .GETMSK
045 .BREAK .CALL 6, .CORE .OPER 6 .LOGIN
.CALL 7, .TRNDL .OPER 7 .CLOSE
.CALL 10, .DSTART .OPER 10 .UFLUSH
.CALL 11, .FDELE .OPER 11 .ATTY
.OPER 12 .GBLTTY
.OPER 13 .IPUSH
.OPER 14 .IPOP
.OPER 15 .DFLUSH
.OPER 16 .DSTOP
.OPER 17 .RDTIME
.OPER 20 .RDSW
.OPER 21 .LPEN
.OPER 22 .UDISMT

External links