Back in mid-January, I posted a note saying:
> TL; DR. I'm trying to find the best possible home for some dead trees. ...
A lot (far too much, IMNSHO!) has happened since then. In any case, I thought folks here might appreciate an update. In brief, Iain Maoileoin offered to pay for shipping a largely unknown amount of technical (mostly computer-related) books to his repurposed missile sile (!) near Inverness, Scotland.
Early this Fall, I packed up 16 cardboard boxes (designated 0-F, of course :-) and the shippers hauled them off. Dunno when they'll arrive, let alone in what condition, but trying to save them from recycling seemed worth the effort. FYI, the total weight was a bit over a ton.
Meanwhile, my spouse and I gave away and/or packed up the rest of our things and drove ourselves and five cats up to Seattle, WA, USA. Somewhere in a shipping container, there is still a cubic foot or so of historical Unix papers from Jim Joyce; when it surfaces, I'll post again about rehoming it.
Well, it's a very rainy day and since COVID is keeping me home I just
fed my 516-TSS notebooks into the scanner. It's about 17MB of stuff.
Not sure what to do with it since I don't have a place to serve it and
since they're scanned images they're too big to post. Here's the list
of documents; email me if you're wanting something in a hurry while the
archive stuff is figured out. Note that the smell of mildew wasn't
preserved in the scanning process.
> From: "Theodore Y. Ts'o"
> was there anything that had similar functionality which pre-dated Bill
> Joy and termcap in late 70's?
Is your question purely in Unix, or more general?
If the latter, there's the terminal-independent support of video terminals in
ITS; that dates to the mid-1970's (i.e. circa V5 or so). User programs output
device-independent display control codes (I have this memory that they were
called P-Codes, but that could be my memory failing), and the OS translated
them to the appropriate screen-control characters.
One additional hack was that the number of terminal types supported in the OS
was limited; there was however a protocol called SUPDUP which sent (basically)
those device-independent codes over a remote login (originally over NCP) frm
the server machine to the client. The User SUPDUP client supported a lot more
terminal types; so people with odd-ball terminals used to log in, SUPDUP
_back_ to their machine, and away they went.
I know I have asked this before, but I am curious about any new replies or
insight. How did package management start? Were sites keeping track of
packages installed in a flat file that you could grep (as god intended)
somewhere, or were upgrades and additions simply done without significant
announcement? At what point did someone decide, 'Hey, we need to have a
central way to track additional software"?
I know of DEC's setld and SGI's inst in the latter half of the '80s. What
was the mechanism before that?
> On Mon, Nov 23, 2020 at 12:28 PM Erik E. Fair <fair-tuhs(a)netbsd.org> wrote:
> The Honeywell DDP-516 was the computer (running specialized software
> written by Bolt, Bernanek & Newman (BBN)) which was the initial model of
> the ARPANET Interface Message Processors (IMP).
The IMPs had a lot of custom interface hardware; sui generis serial
interlocked host interfaces (so-called 1822), and also the high-speed modem
interfaces. I think there was also a watchdog time, IIRC (this is all from
memory, but the ARPANET papers from JCC cover it all).
These are in Warren's hands now and he'll let us know where their permanent
home ends up being. Since these are pretty much uncirculated unlike the UNIX
documents I wrote a README to go along with them which Heinz reviewed so it's
the best that two aging sets of memories can do. Here it is:
- - -
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
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
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
HL Heinz Lycklama
JCS John Schwartzwelder
JES Jon Steinhart
JFK Jim Kaiser
JHC Joe Condon
JVC John Camlet
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
While cleaning up a few shelves of old USENIX proceedings, I found a
mysterious manila envelope full of xeroxed copies of all the original
UNIX NEWS newsletters from 1975 thru 1977. It was renamed to ;login:
in 1977 and has continued publication to this day. The envelope also
contained ;login: issues v2n6 thru v3n8 (1977-1978).
I scanned those all in today and put them up on my website, here:
These have not been OCR'd, and many of the pages were rotated by 90
degrees in the original publication, to fit two pages of typewritten
correspondence (or recipient address lists) into one page of newsletter.
Still, in a quick web search I was unable to find copies of these
anywhere else, so I invested a few hours to scan them in and post them
for historical interest. As an example, Sixth Edition (v6) UNIX was
announced in issue number 1.
These are all free to publish nowadays. USENIX was one of the first
technical organizations to establish an Open Access policy for its
publications, a step which distinguishes them from ACM and many academic
publishers who favor revenue for themselves over the progress of
science. (I voted for this policy decades ago when I was a USENIX board
member.) This page, for example, says:
"USENIX is committed to Open Access to the research presented at our
events. Papers and proceedings are freely available to everyone once
the event begins. Any video, audio, and/or slides that are posted
after the event are also free and open to everyone."
The ;login: archives at USENIX.org are complete from October 1997 to today:
Also, most but not all issues of ;login: from 1983 to 1997 have been
scanned by USENIX and uploaded to the Internet Archive here:
The USENIX Association apparently has paper copies of the stuff I
scanned in today, but they are still trying to locate ;login: issues
from 1979 and parts of 1980 and 1981. In addition, they are backlogged
on scanning in their old materials (including copies of ;login: between
1978/09 and 1983/02). If you have old copies of ;login: that you don't
see visible in these places, please scan them, or offer them to USENIX.
Also, if you have old proceedings of USENIX conferences, there are still
three that the USENIX staff do not have any copy of:
XFree86 Technical Conference
5th Annual Linux Showcase & Conference
If you have any of these three, please let <info(a)usenix.org> know. They
also lack about twenty more for which they have posted the academic
papers, but don't have the covers or front-matter, so if you have other
proceedings from between 1989 and 2004 that you'd be willing to part
with or scan, also let them know. Thanks!
A couple of my friends from UC Berkeley were musing on another email
thread. The question from one of them came up: *"I'm teaching the
undergrad OS course this semester ... Mention where ~ comes."*
This comment begets a discussion among the 4 of us at where it showed up in
the UNIX heritage and it if was taken from somewhere else.
Using the tilde character as a short cut for $HOME was purely a userspace
convention and not part of the nami() kernel routine when it came into
being. We know that it was supported by Mike Lesk in UUCP and by Bill Joy
in cshell. The former was first widely released as part of Seventh Edition
but was working on V6 before that inside of BTL. Joy's cshell came out as
part of 2BSD (which was V7 based), but he had released "ashell" before that
and included it in the original BSD (*a.k.a.* 1BSD) which was for V6 [what
I don't remember is if it supported the convention and I can not easily un-
ar(1) the cont.a files in the 1BSD tar image in Warren's archives.
In our exchange, someone observed suggested that Joy might have picked it
up because the HOME key was part of the tilde key on the ADM3A, which were
popular at UCB [*i.e.* the reason hjkl are the movement keys on vi is the
were embossed on the top of those keys on the ADM3A]. It also was noted
that the ASR-33 lacks a ~ key on its keyboard. But Lesk definitely needed
something to represent a remote user's home directory because each system
was different, so he was forced to use something.
It was also noted that there was plenty of cross-pollination going on as
students and researchers moved from site to site, so it could have been BTL
to UCB, vice-versa, or some other path altogether.
So two questions for this august body are:
1. Where did the ~ as $HOME convention come to UNIX?
2. Did UNIX create the idiom, or was there an earlier system such as
CTSS, TENEX, ITS, MTS, TSS, or the like supported it?