Imlac PDS-1

The Imlac PDS-1 kicked off the world of networked graphics workstations. I donated mine to the Vintage Tech Archive. Thanks to Uncle Al for the scanned docs.
fuzzy image of PDS-1 name plate

Do not suffer life to stagnate; it will grow muddy for want of motion: commit yourself again to the current of the world.
Samuel Johnson (Imlac in "Rasselas")

According to Jim Davis:

The Imlac was a minicomputer (what you'd call a workstation now) that was sort of an expanded PDP-8 with a built in vector display processor. It was programmed in assembly language. Imlac's big product was a phototypsetting system, CES, which took advantage of the raster graphics to offer a kind of WYSIWYG interface for the typesetting. This was before laser printers.

From Steve DeRose:

What, you never heard of the Imlac? That was the high-end vector display on which FRESS shone: where it could do multi-window WYSIWYG editing of text and graphical hypermedia. Perhaps its best feature was that it used a lightpen instead of a mouse. Pointing to text or menus on the screen and then stomping on the foot-pedal provided a certain catharsis unmatched by the modern mouse button. 4 huge panes full of 9-point text did tax the vector engine's ability to draw little strokes, though.

From L. Peter Deutsch:


From John Mock:

Amusing, though, i haven't heard of a gr'Imlac in decades... Deutsch's response seemed appropriate... We had three at SAIL, on at the C.S. Dept. Library on campus, one at McCarthy's house and i forget where the third on lived.

We hacked the Network Graphics Protocol which run off a GT40, on a network UNIX system at Berkeley in 1975. (Hint: That was before BSD meant anything.) 'actually ran display programs on SAIL machine remotely with little or no modification. It was kinda slow compared to setting in front of the old III displays, whose vector character seemed like they were hand-drawn. (And if the diode-ROM-based character drawing wasn't tuned up, equally illegible). The gr'Imlac (pronounced 'grim-lack') was a little more legible, but not alot. Yes, we needed that character RAM; SAIL had approximately 125 printable characters.

Imlac Facts

From the little information I've found on the web and by staring dumbly at the machine, I've found a few factoids:

Historical Perspective

Some (wrongly) consider the Xerox Alto to be the first graphics workstation. The PDS-1 preceded the Alto by a few years. There were other graphic displays contemporaneous with the PDS-1, but I don't believe any of them were fully programmable stand-alone machines like the Imlac. These included:

Imlac was important in the early days of the internet (then called the ARPAnet) when network graphics protocols were first being considered. They are mentioned in several early RFCs (see links below).

One of the first hypertext systems, FRESS (late 1960's), used an Imlac for display.

The Imlac PDS-1 was the first machine that let you get in trouble for wasting time on the net. From the X Window man page of MazeWar:

MazeWar first appeared at MIT in the early 1970s, using Imlac displays and the ArpaNet network. Legend has it that, at one point during that period, MazeWar was banned by DARPA from the ArpaNet because half of all the packets in a given month were MazeWar packets flying between Stanford and MIT.

MazeWar appeared again at the Xerox Palo Alto Research Center in the late 1970's on the Alto, the first personal computer.

GUI Timeline

State of the Machine

The system is far from working condition. It was stored for a long time in somebody's garage underneath a dryer vent. The hot damp air caused extensive rust damage, and the CRT is delaminating.


The keyboard is missing, and the CRT is in bad shape, but it hasn't imploded yet!

Computer Hardware

The backplane looks pretty clean, but there is extensive oxidation on many of the chip pins, and even some trace erosion on some of the cards. The cards plug into the backplane via a 35-pin ELCO 7021 connector. There are four racks. The top rack contains the RAM. The other three racks have 25 slots each, and hold the CPU. The table below shows the cards that comprise the CPU (the level of oxidation is shown in parentheses: 0=none, 9=total destruction).
Slot CPU Top CPU Middle CPU Bottom
1 01-11688 (S 2068) LAMP BUFFER (3) 01-1159-5 (SCH 2035) TTY TRAN & REC (5) 01-11655-2 ROM (5)
2 01-11688 (S 2068) LAMP BUFFER (6) 01-11429 ACC INP MX (3) 01-11445 MEM ADD REG (5)
3 01-11688 (S 2068) LAMP BUFFER (3) 01-11429 ACC INP MX (1) 01-11445 MEM ADD REG (5)
4 01-11688 (S 2068) LAMP BUFFER (5) 01-11429 ACC INP MX (3) 01-11445 MEM ADD REG (5)
5 N/C 01-11429 ACC INP MX (2) 01-11723 MEM ISLTR (1)
6 N/C 01-11438-3 AC 2 DET / MA A70 INDEX (3) 01-11479-1 PROG COUNTER (1)
7 01-10613-4 (S 2024) DA-M1 (9) 01-11448-1 LINK & AC0 (4) 01-11479-1 PROG COUNTER (2)
8 01-10613-4 (S 2024) DA-M1 (3) N/C 01-11479-1 PROG COUNTER (5)
9 01-11735 (S 2081) D/A CENTERING (7) 01-10504-1 3BACC & TR (8) 01-11606 (S 2033) OPEN CNTL (4)
10 01-11643 (S 2048) XAC MSB (8) 01-10504 3BACC & TR (5) 01-11477-3 (S 2019) MB REG (6)
11 01-11646 (S 2045) XAC LSB (8) N/C 01-11477-3 (S 2019) MB REG (6)
12 01-11643 (S 2048) XAC MSB (8) 01-10504 3BACC & TR (7) 01-11477-3 (S 2019) MB REG (6)
13 01-11646 (S 2045) XAC LSB (8) 01-10504 3BACC & TR (6) 01-11477-3 (S 2019) MB REG (6)
14 N/C N/C 01-11477-3 (S 2019) MB REG (6)
15 01-11633-1 (S 2043) MISC. DISP. CNTL (8) 01-10504-1 3BACC & TR (6) 01-11477-3 (S 2019) MB REG (6)
16 01-11636 (S 2044) DISP AC CNTL (7) 01-11550-3 (S 2025) AC&T CNTL (8) 01-11477-3 (S 2019) MB REG (6)
17 01-11624-1 (S 2042) DISP PC CNTL (6) 01-11550-3 (S 2025) AC&T CNTL (5) 01-11477-3 (S 2019) MB REG (6)
18 01-11634-2 (S 2036) DISP MODE CONTROL (7) 01-11443 SHT & ROT CNTL (2) 01-11439-2 SKP CNDTN (6)
19 01-11562-2 (S 2037) DISP IR & DCD (5) 01-11571-2 (S 2029) INST REG & DEC (2) 01-11432-4 PC CONTROL (6)
20 01-11558 (S 2030) BUF REG 8 (4) N/C 01-11584-4 (S 2023) B & MB & MA CNTL
21 01-11568 (S 2021) DISP MEM BUF (4) 01-11434-2 MN CCL CNTL (5) 01-11617-1 (2032) MEM CNTL (5)
22 01-11431-3 PRO COUNT & DT REG (2) 01-11602-3 (S 2039) SPEC CYC CNTL (4) N/C
23 01-11431-3 PRO COUNT & DT REG (2) 01-11433 IOT CMMND PLS (3) 01-11618-1 TIME PUL GEN (6)
24 01-11431-3 PRO COUNT & DT REG (4) 01-11430 IOT CONTROL (5) N/C
25 N/C (SPARE) 01-11817 (S 2019) ROMR N/C 01-11557-4 (2027) CLK & RUN CONT (6)


Thanks to Uncle Al for the scanned docs.





Links to Other Information

More Images