Name | Last Modified | Size | Type |
---|---|---|---|
../ | - | Directory | |
516-1-516-DOCUMENTATION.pdf | 2020-Nov-19 01:59:04 | 40.4K | application/pdf |
516-10-11-12-Ring-Formats.pdf | 2020-Nov-18 22:49:01 | 436.9K | application/pdf |
516-12-Specifications-For-The-Node-Modem-Interface.pdf | 2020-Nov-18 22:52:24 | 138.0K | application/pdf |
516-13-Trac-Character-Strings.pdf | 2020-Nov-18 23:04:57 | 59.5K | application/pdf |
516-14-GMAP-Assembler-for-the-Multi-Programmed-516.pdf | 2020-Nov-18 23:07:29 | 288.3K | application/pdf |
516-15-A-Suggested-Graphic-Display-with-Keyboard-for-Graphic-Terminals.pdf | 2020-Nov-19 00:47:20 | 386.2K | application/pdf |
516-16-516-Assembler-And-Post-Processor-For-Unsegmented-Programs.pdf | 2020-Nov-18 23:09:29 | 209.6K | application/pdf |
516-18-Format-For-Ring-Interrupt.pdf | 2020-Nov-18 22:54:05 | 56.8K | application/pdf |
516-19-Thread-Save-Blocks.pdf | 2020-Nov-18 23:12:23 | 57.0K | application/pdf |
516-20-Card-Reader-Bootstrap-and-Programs.pdf | 2020-Nov-19 01:41:48 | 197.1K | application/pdf |
516-21-Octal-Package.pdf | 2020-Nov-19 00:20:18 | 104.4K | application/pdf |
516-22-A-Repeater-For-The-Node-Modem.pdf | 2020-Nov-18 22:55:40 | 165.8K | application/pdf |
516-23-CLEAR-CORE-CARD.pdf | 2020-Nov-19 01:42:25 | 23.7K | application/pdf |
516-24-SOROBAN-CARD-READER-TEST-PROGRAM.pdf | 2020-Nov-19 01:40:08 | 106.1K | application/pdf |
516-25-IO-Table.pdf | 2020-Nov-18 23:13:22 | 31.9K | application/pdf |
516-26-Disk-DMA-Queue.pdf | 2020-Nov-18 23:14:29 | 51.9K | application/pdf |
516-27-GE-Disc-Files-For-516-Programming.pdf | 2020-Nov-18 23:10:54 | 37.2K | application/pdf |
516-27-Thread-Table.pdf | 2020-Nov-18 23:15:30 | 52.7K | application/pdf |
516-28-IO-Ring-Device-Codes.pdf | 2020-Nov-18 22:57:23 | 54.3K | application/pdf |
516-29-Five-Bit-Character-Codes.pdf | 2020-Nov-18 23:16:30 | 22.3K | application/pdf |
516-3-DDP-516-PRICE-LIST.pdf | 2020-Nov-19 02:01:00 | 11.6K | application/pdf |
516-30-Text-Editor.pdf | 2020-Nov-19 00:24:49 | 199.5K | application/pdf |
516-31-Relocatable-Segment-Octal-Package.pdf | 2020-Nov-19 00:21:31 | 76.8K | application/pdf |
516-32-ASCII-Character-Mnemonics.pdf | 2020-Nov-18 23:17:41 | 23.6K | application/pdf |
516-34-Display-List-For-Glance.pdf | 2020-Nov-19 00:50:56 | 537.4K | application/pdf |
516-35-Internal-Megacycle-Clock.pdf | 2020-Nov-18 23:19:22 | 153.5K | application/pdf |
516-36-Node-Modem-Interface-For-Computer-Terminals.pdf | 2020-Nov-18 23:00:30 | 360.3K | application/pdf |
516-38-P8SYS.pdf | 2020-Nov-19 01:44:56 | 140.4K | application/pdf |
516-39-Resource-Monitor-Meters.pdf | 2020-Nov-18 23:21:08 | 98.3K | application/pdf |
516-4-Disk-Layout.pdf | 2020-Nov-18 22:28:58 | 71.4K | application/pdf |
516-40-SNAP-Time-Sharing-Calculator.pdf | 2020-Nov-19 02:04:58 | 83.1K | application/pdf |
516-41-516-Segment-Assembler.pdf | 2020-Nov-18 23:28:38 | 325.0K | application/pdf |
516-42-Memory-Service-Unit-Format.pdf | 2020-Nov-18 23:33:52 | 31.8K | application/pdf |
516-43-GEBKUP-and-FLOAD.pdf | 2020-Nov-19 00:17:24 | 95.4K | application/pdf |
516-44-FSNAP-Floating-Point-Time-Sharing-Calculator.pdf | 2020-Nov-19 00:27:29 | 74.4K | application/pdf |
516-45-516-316-Assembler-and-Binder.pdf | 2020-Nov-18 23:32:37 | 433.4K | application/pdf |
516-46-CALC-A-Desk-Calculator-Program.pdf | 2020-Nov-19 02:03:34 | 41.6K | application/pdf |
516-47-Remote-Data-Plotting.pdf | 2020-Nov-19 00:11:27 | 616.2K | application/pdf |
516-48-CODING-FOR-GLANCE-G-Graphics.pdf | 2020-Nov-19 00:59:20 | 538.3K | application/pdf |
516-49-516-Segment-Assembler.pdf | 2020-Nov-18 23:30:31 | 120.0K | application/pdf |
516-5-System-Table-Formats.pdf | 2020-Nov-18 22:37:33 | 95.9K | application/pdf |
516-50-Use-Of-The-516-Segment-Assemblers-Macros-In-Application-Programs.pdf | 2020-Nov-18 23:24:49 | 292.9K | application/pdf |
516-51-FSNAP-Users-Guide.pdf | 2020-Nov-19 00:33:59 | 856.7K | application/pdf |
516-52-DESK-A-Desk-Calculator.pdf | 2020-Nov-19 00:44:39 | 152.4K | application/pdf |
516-53-FSEOF-Flag-End-Of-File.pdf | 2020-Nov-19 00:29:33 | 19.8K | application/pdf |
516-54-Context-Editing.pdf | 2020-Nov-19 00:25:52 | 129.8K | application/pdf |
516-55-One-Card-Core-Save-Program.pdf | 2020-Nov-19 01:43:01 | 43.2K | application/pdf |
516-56-PRIME-An-Integer-Factoring-Program.pdf | 2020-Nov-19 02:07:23 | 42.7K | application/pdf |
516-57-Format-For-The-516-Node-T-I-U-Spider-Interface.pdf | 2020-Nov-18 23:37:29 | 68.4K | application/pdf |
516-58-Calling-Procedures-For-Math-Routines.pdf | 2020-Nov-18 23:26:58 | 93.5K | application/pdf |
516-59-INITIALIZATION-OF-THE-516-TSS-SYSTEM.pdf | 2020-Nov-19 01:39:03 | 491.5K | application/pdf |
516-6-Segment-Format.pdf | 2020-Nov-18 22:39:28 | 99.4K | application/pdf |
516-60-SORT-SUBR-FOR-SEGMENTED-PROGRAMS.pdf | 2020-Nov-19 01:57:35 | 559.0K | application/pdf |
516-61-516-TSS-SYSTEM-BOLTED-IN-CORE-SUBROUTINES.pdf | 2020-Nov-19 01:49:22 | 550.4K | application/pdf |
516-63-Display-Controller-Glance-G.pdf | 2020-Nov-19 00:54:03 | 96.2K | application/pdf |
516-64-FSNAP-Designers-Guide.pdf | 2020-Nov-19 00:39:05 | 856.1K | application/pdf |
516-65-SOME-DIGITAL-FILTER-APPLICATION-PROGRAMS.pdf | 2020-Nov-19 02:06:23 | 130.1K | application/pdf |
516-66-TSS-516-GE-Communication.pdf | 2020-Nov-19 00:07:08 | 363.0K | application/pdf |
516-67-Node-Format-For-PDP-11.pdf | 2020-Nov-19 01:46:24 | 59.9K | application/pdf |
516-68-DFILE-N-A-Program-for-TSS-516.pdf | 2020-Nov-19 02:02:14 | 28.7K | application/pdf |
516-69-GLANCE-G-COMMUNICATION-FORMAT-TSS-516-TO-SCOPE.pdf | 2020-Nov-19 00:55:36 | 32.6K | application/pdf |
516-7-DMA-Mnemonics.pdf | 2020-Nov-18 22:41:36 | 10.9K | application/pdf |
516-70-Routines-to-Perform-Character-String-IO-in-a-FSNAP-Program.pdf | 2020-Nov-19 00:40:11 | 131.1K | application/pdf |
516-71-FSNAP-Debugging-Aids.pdf | 2020-Nov-19 00:41:38 | 66.0K | application/pdf |
516-72-Node-Test.pdf | 2020-Nov-18 23:02:20 | 76.4K | application/pdf |
516-73-Node-IO-Software.pdf | 2020-Nov-18 23:03:46 | 74.4K | application/pdf |
516-75-Display-Text-Editor-DTE.pdf | 2020-Nov-19 01:03:53 | 604.4K | application/pdf |
516-76-LOCAL-DATA-PLOTTING.pdf | 2020-Nov-19 01:05:10 | 54.3K | application/pdf |
516-77-GLANCE-PLOTTING-ROUTINES-GPLOT-GLANCE-CHRGEN.pdf | 2020-Nov-19 01:15:04 | 1.5M | application/pdf |
516-77-V2-GLANCE-PLOTTING-ROUTINES-GPLOT-GLANCE-CHRGEN.pdf | 2020-Nov-19 01:32:49 | 1.4M | application/pdf |
516-78-DUMP.pdf | 2020-Nov-19 02:08:16 | 12.8K | application/pdf |
516-79-New-File-Features-in-FSNAP.pdf | 2020-Nov-19 00:43:01 | 51.4K | application/pdf |
516-8-Disk-Hole-Format.pdf | 2020-Nov-18 22:44:17 | 63.7K | application/pdf |
516-81-OPTION-CHANGING-IN-GPLOT.pdf | 2020-Nov-19 01:34:31 | 153.1K | application/pdf |
516-86-MODIFICATIONS-TO-201-DATAPHONE-SOFTWARE.pdf | 2020-Nov-19 01:35:28 | 20.0K | application/pdf |
516-9-Addresses.pdf | 2020-Nov-18 22:42:35 | 43.8K | application/pdf |
DDP-516-Instruction-Set-Summary.pdf | 2020-Nov-19 02:11:14 | 492.8K | application/pdf |
DDP-516-PROGRAMMERS-REFERENCE-CARD.pdf | 2020-Nov-19 02:14:29 | 3.3M | application/pdf |
Index.pdf | 2020-Nov-18 22:21:51 | 157.0K | application/pdf |
README | 2020-Nov-27 03:00:06 | 6.7K | application/octet-stream |
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