Restoring A Vintage PDP-11/04 Computer

[MattisLind] spent one and a half years to complete restoration of a Digital Equipment Corporation (DEC) PDP-11/04 including peripherals like a TU60 tape drive and a LA30P Decwriter printing terminal. The computer is now able to run CAPS-11 which is a very simple operating system and also CAPS-11/BASIC. Just like the project itself, his blog post is quite long filled with interesting details. For a tl;dr version, check the video after the break.

This system originally belonged to Ericsson and [MattisLind] received it from Ericsson computer club, EDKX. He was lucky to have access to online resources which made the task easier. But it still wasn’t easy considering the number of hardware faults he had to tackle and the software challenges too. The first task was obviously looking at the Power supply. He changed the big electrolytic capacitors, and the power supply seemed to work well with his dummy load, but failed when hooked up to the backplane of the computer. Some more digging around, and a replaced thyristor later, he had it fixed. The thyristor was part of a crowbar circuit to protect the system from over-voltages should one of the main switching transistors fail.

With the power supply fixed, the CPU still wouldn’t boot. Some sleuthing around, and he pin pointed the bus receiver chip that had failed. His order of the device via a Chinese ebay seller was on the slow boat, so he just de-soldered a device from another board which improved things a bit, but it was still stuck in a loop. A replacement communications board and the system now passed diagnostics check, but failed memory testing. This turned out to be caused be a faulty DIP switch. He next tackled all the software challenges in getting the CPU board up to speed.

The tape drive used a variant of the common audio cassette format. The motor drive coupling seemed like it was missing a few non-metric screws, but the schematic said “loctite” so that got sorted. With the tapes rolling, he discovered the unit wouldn’t detect end of tape / beginning of tape. This seemed like a DEC8881 driver chip was busted, so he replaced it with a 7439 driver – and the DEC881 turned out to be the exact same chip – it had 7439 marked underneath it. His hunt for spare parts was taking him all over the world. A failed N8271 shift register was sourced from Bulgaria, Cassettes via eBay from Germany, a 7427 from a fellow Swede, another Swede helped out with a rubber wheel for the drive spindle, and some more cassette tapes from Morocco.

The final part of the restoration project was the LA30 DECwriter – an early dot matrix style printer. The print head needed some work. And the main keyboard encoder chip, KR2376 from SMC, was broken. This was replaced with an Arduino put together on perf board initially, but later replaced with a nice looking PCB. He was lucky to find sealed packs of printer ribbons and printer paper that came with the system. A test run showed some print head solenoids were not firing which called for some more damaged IC’s to be replaced. This particular printer had a parallel interface, and the PDP-11 didn’t have the requisite  M7910 or M7731/M7389 boards that would help him interface with the printer. Luckily, he managed to buy that as well, and in working condition, finally completing this whole, long drawn, renovation. The PDP-11/04 was finally running  CAPS-11 / BASIC, ready to print “HELLO WORLD”.

20 thoughts on “Restoring A Vintage PDP-11/04 Computer

  1. In the early 1970’s I worked for General Motors and I worked on an automated assembly system that used a PDP-8 minicomputer with three PDP-14 machine controllers and a PDP-11 monitoring system. The PDP-14’s had real “core” memory boards that contained the program instructions. To change the program I would physically have to rewire the cores to modify the 1’s & 0’s as required. Quite a chore by today’s standards! Thanks for the nostalgic look-back.

      1. “Back in the day” core memory used magnetic donut shaped ferrite cores. The 1’s and 0’s for binary instructions would be read by pulsing a wire and reading the resulting waveform. A 1 was generated by wire passing thru the core and a zero by wire on the outside of the core. You can search online for a more detailed explanation.

  2. Great job! The UCLA Engineering Society used one of these in 1975 or 76 at the Mardi Gras fundraiser for Unicamp. We ran a Biorhythm program (most likely written in basic) that printed out their info and charged something like a buck for it. Back then it was a real novelty to have something done on a computer.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.