Index of /Documentation/Other/516-TSS
Name Last modified Size Description
Parent Directory -
516-1-516-DOCUMENTAT..> 2020-11-19 01:59 40K
516-3-DDP-516-PRICE-..> 2020-11-19 02:01 12K
516-4-Disk-Layout.pdf 2020-11-18 22:28 71K
516-5-System-Table-F..> 2020-11-18 22:37 96K
516-6-Segment-Format..> 2020-11-18 22:39 99K
516-7-DMA-Mnemonics.pdf 2020-11-18 22:41 11K
516-8-Disk-Hole-Form..> 2020-11-18 22:44 64K
516-9-Addresses.pdf 2020-11-18 22:42 44K
516-10-11-12-Ring-Fo..> 2020-11-18 22:49 437K
516-12-Specification..> 2020-11-18 22:52 138K
516-13-Trac-Characte..> 2020-11-18 23:04 59K
516-14-GMAP-Assemble..> 2020-11-18 23:07 288K
516-15-A-Suggested-G..> 2020-11-19 00:47 386K
516-16-516-Assembler..> 2020-11-18 23:09 210K
516-18-Format-For-Ri..> 2020-11-18 22:54 57K
516-19-Thread-Save-B..> 2020-11-18 23:12 57K
516-20-Card-Reader-B..> 2020-11-19 01:41 197K
516-21-Octal-Package..> 2020-11-19 00:20 104K
516-22-A-Repeater-Fo..> 2020-11-18 22:55 166K
516-23-CLEAR-CORE-CA..> 2020-11-19 01:42 24K
516-24-SOROBAN-CARD-..> 2020-11-19 01:40 106K
516-25-IO-Table.pdf 2020-11-18 23:13 32K
516-26-Disk-DMA-Queu..> 2020-11-18 23:14 52K
516-27-GE-Disc-Files..> 2020-11-18 23:10 37K
516-27-Thread-Table.pdf 2020-11-18 23:15 53K
516-28-IO-Ring-Devic..> 2020-11-18 22:57 54K
516-29-Five-Bit-Char..> 2020-11-18 23:16 22K
516-30-Text-Editor.pdf 2020-11-19 00:24 200K
516-31-Relocatable-S..> 2020-11-19 00:21 77K
516-32-ASCII-Charact..> 2020-11-18 23:17 24K
516-34-Display-List-..> 2020-11-19 00:50 537K
516-35-Internal-Mega..> 2020-11-18 23:19 153K
516-36-Node-Modem-In..> 2020-11-18 23:00 360K
516-38-P8SYS.pdf 2020-11-19 01:44 140K
516-39-Resource-Moni..> 2020-11-18 23:21 98K
516-40-SNAP-Time-Sha..> 2020-11-19 02:04 83K
516-41-516-Segment-A..> 2020-11-18 23:28 325K
516-42-Memory-Servic..> 2020-11-18 23:33 32K
516-43-GEBKUP-and-FL..> 2020-11-19 00:17 95K
516-44-FSNAP-Floatin..> 2020-11-19 00:27 74K
516-45-516-316-Assem..> 2020-11-18 23:32 433K
516-46-CALC-A-Desk-C..> 2020-11-19 02:03 42K
516-47-Remote-Data-P..> 2020-11-19 00:11 616K
516-48-CODING-FOR-GL..> 2020-11-19 00:59 538K
516-49-516-Segment-A..> 2020-11-18 23:30 120K
516-50-Use-Of-The-51..> 2020-11-18 23:24 293K
516-51-FSNAP-Users-G..> 2020-11-19 00:33 857K
516-52-DESK-A-Desk-C..> 2020-11-19 00:44 152K
516-53-FSEOF-Flag-En..> 2020-11-19 00:29 20K
516-54-Context-Editi..> 2020-11-19 00:25 130K
516-55-One-Card-Core..> 2020-11-19 01:43 43K
516-56-PRIME-An-Inte..> 2020-11-19 02:07 43K
516-57-Format-For-Th..> 2020-11-18 23:37 68K
516-58-Calling-Proce..> 2020-11-18 23:26 94K
516-59-INITIALIZATIO..> 2020-11-19 01:39 492K
516-60-SORT-SUBR-FOR..> 2020-11-19 01:57 559K
516-61-516-TSS-SYSTE..> 2020-11-19 01:49 550K
516-63-Display-Contr..> 2020-11-19 00:54 96K
516-64-FSNAP-Designe..> 2020-11-19 00:39 856K
516-65-SOME-DIGITAL-..> 2020-11-19 02:06 130K
516-66-TSS-516-GE-Co..> 2020-11-19 00:07 363K
516-67-Node-Format-F..> 2020-11-19 01:46 60K
516-68-DFILE-N-A-Pro..> 2020-11-19 02:02 29K
516-69-GLANCE-G-COMM..> 2020-11-19 00:55 33K
516-70-Routines-to-P..> 2020-11-19 00:40 131K
516-71-FSNAP-Debuggi..> 2020-11-19 00:41 66K
516-72-Node-Test.pdf 2020-11-18 23:02 76K
516-73-Node-IO-Softw..> 2020-11-18 23:03 74K
516-75-Display-Text-..> 2020-11-19 01:03 604K
516-76-LOCAL-DATA-PL..> 2020-11-19 01:05 54K
516-77-GLANCE-PLOTTI..> 2020-11-19 01:15 1.5M
516-77-V2-GLANCE-PLO..> 2020-11-19 01:32 1.5M
516-78-DUMP.pdf 2020-11-19 02:08 13K
516-79-New-File-Feat..> 2020-11-19 00:43 51K
516-81-OPTION-CHANGI..> 2020-11-19 01:34 153K
516-86-MODIFICATIONS..> 2020-11-19 01:35 20K
DDP-516-Instruction-..> 2020-11-19 02:11 493K
DDP-516-PROGRAMMERS-..> 2020-11-19 02:14 3.3M
Index.pdf 2020-11-18 22:21 157K
516-TSS is a little-known but groundbreaking and influential operating system
that was developed at Bell Telephone Laboratories. I came across this system
because Carl Christensen and later Heinz Lycklama were major contributors to
it, and they were also advisors for the Bell Labs Explorer Scout Post at
Murray Hill. I was a member of that post which allowed us to play with
computers on Monday evenings, and 516-TSS was what most of us used. Through
a series of amazingly lucky events, I ended up working as a summer student
for Carl and Heinz and got to contribute to the system. Long before the term
"code spelunking" was coined Carl and Heinz taught us both code and spelunking.
This is not a complete set of 516-TSS documents, it's a couple of notebooks
that I found in a box in the basement. Probably my ancient work-at-home copy.
I don't know enough history to know if it was the first, but 516-TSS was an
early department-level time-sharing system. It was built around a Honeywell
DDP-516. While other time-sharing systems predate 516-TSS, they weren't
systems that one's department could afford. CTSS certainly came earlier,
but it used a monster IBM 7090 mainframe. In round numbers, a 7090 cost
$3,000,000 dollars, a DDP-516 cost $50,000.
516-TSS was also a virtual memory system; again not the first but a rarity
in that era. My recollection is that it used the 516's index register as
the base address register, and there was some complicated mucking around
that a program had to do if it needed to use the index register including
disabling interrupts and eventually restoring the register from .PRESB
(present base address), one of those weird things stuck in my memory from
long ago.
I believe that the system's development predated UNIX although I remember
our department getting a PDP-11/45 running UNIX Version 3 in the summer of
1973. This machine was acquired so that Doug Bayer and Heinz Lycklama could
develop the MERT operating system.
The 516 was a testbed for a lot of novel technologies. It had a local area
network called the ring which was later made to work on PDP-11s including
Ken and Dennis's machine up in the attic of building 2. It was also used
to develop the GLANCE graphics terminals. My recollection is that one of
the main drivers behind getting the ring to work on PDP-11s and UNIX was so
that Ken could get a GLANCE-G terminal for playing chess. Sandy Fraser's
Spider network was developed there. It supported a number of novel
applications including Dick Hause's DTE graphics editor; way ahead of its
time. I remember that one GLANCE terminal was fitted with an array of LEDs
and photodiodes to make an early version of a touch screen.
While it wasn't exactly work related, a number of the people in the department
had purchased property up in Vermont for ski cabins. An important use of the
516-TSS system and GLANCE-G terminals was to figure out survey closures. The
property surveys were ancient, of the "from the big rock to the left of the
tree that's no longer there" sorts of things, so figuring out the actual
property lines was an interesting problem.
The 516 also had a wide area network which consisted of picking up the phone
and calling the computer center. It had a monster GE-635 or maybe 645 left
over from the Multics project. It may have been renamed to be a Honeywell
6070 with Honeywell's acquisition of GE's computer business. The computer
center kept department costs down by hoarding all of the really expensive
peripherals. For example, we didn't have a card punch; that was effectively
done via remote job entry. We didn't have a graphics printer either, so when
I was working on GPLOT I'd submit remote jobs to the computer center for
printing. Matter of fact, I don't think that we even had a printer in our
department; we sent stuff up to the computer center for printing. Although,
in those days many terminals used paper. The 516 console was an ASR-33.
There was also the ability to send jobs to the computer center and have it
call back with results. This early approach to a WAN showed up as the tss
command in UNIX.
One of the missions of the department was the development of an all-digital
telephone exchange which is why some of the documents describe programs that
assist with digital filter design. Both Jim Kaiser and Hal Alles were in the
department. One of the side-effects of all this was Hal figuring out how to
use the filter hardware connected to a LSI-11/03 to make sound, followed by
Dave Hagelbarger building a very interesting keyboard for it, culminating in
a visit by Stevie Wonder trailed by a large number of screaming secretaries.
No sexism intended, it was a different world back then. The LSI-11 was one
of the motivations for Heinz to create the LSX operating system.
My recollection is that on Dave's keyboard each key was an antenna, and that
there was strip of ribbon cable underneath where each wire was driven by a
different bit on a binary counter. This allowed the position of each key to
be determined which I think was way ahead of its time. I don't think that
any commercially available keyboards did this at the time, they were all just
on/off. Dave also designed the GLANCE keyboard which spoiled me for life.
I don't remember how he did it, but the keys had a really good feel where once
they got pushed past a certain point they snapped down. I do recall that there
was a small solenoid mounted on the circuit board so that the keys gave a
satisfying click that you could feel in your fingers. Another of Dave's gizmos
was the chess board that he made for Ken. My recollection is that there was a
tuned circuit in the base of each chess piece and an antenna grid in the board
so that the PDP-11 could read the position of each piece.
Some of the success of the 516 system was that other departments used it. I
spent some time working an a 516-based integrated circuit test system where
the test equipment stations were on the ring. Seems really dumb now, it's hard
to believe that there was a time in which a computer cost more than a wafer
stepper.
In addition to his work on 516-TSS, Carl Christensen was one of the people who
interviewed Ken Thompson for a job at the labs and gave a thumbs up.
The 516-TSS documents don't have author names, just initials. Here's who they
are to the best of my recollection.
ADH Dick Hause
CC Carl Christensen
DJB Doug Bayer
DRW Dave Weller
EPR ?
HL Heinz Lycklama
JCS John Schwartzwelder
JES Jon Steinhart
JFK Jim Kaiser
JHC Joe Condon
JVC John Camlet
LIS ?
MAS ?
RFG Rudy Garcia
There is one mysterious document in the collection about a "memory service unit".
I had this filed under "zapper". To the best of my recollection it was the PROM
programmer that we used to burn the microcode PROMs for the GLANCE terminals.
Jon Steinhart, 11/20/2020