An Entire PDP-11 On Your Bench

A PDP-11 at The National Museum Of Computing, Bletchley, UK.
A PDP-11 at The National Museum Of Computing, Bletchley, UK.

The DEC PDP series of minicomputers occupy a special place in computing history for us, because as the workhorses of commercial computing from the 1960s through to some time in the 1990s they provided the bedrock upon which so many of the computing technologies we take for granted today were built. If we think of any PDP, the chances are we’ll be imagining fridge-sized units with panels of blinkenlights that have become iconic in their own right. But that wasn’t the sum of PDP hardware, for at the end of the series of machines there were produced PDP-11s containing what had previously needed those fridge-sized units on a single chip-sized module. [Peter Schranz] had one of these modules, a DCJ11 that he’d salvaged in the 1990s, and he set to with it in making a modern desktop version of a PDP-11.

The PDP-11/hack is a PDP-11 as a set of daughter cards on a lightly modified Q-bus backplane. The DCJ11 and its memory sit on one, an emulated disc controller on another, and finally a multifunction board brings together clock and serial functions. Where the original would have had acres of 74 logic the PDP-11/hack uses more modern CPLDs and microcontrollers to provide glue logic and to emulate now-obsolete components. Given a serial terminal it will boot and run PDP operating systems and software, though it lacks a set of blinkenlights to display its status.

This isn’t the first PDP-11 using this chip we’ve shown you.

A PDP Laptop, For Various Definitions Of A Laptop

Digital Equipment Corp.’s PDP-11 is one of the most important computers in history. It’s the home of Unix, although that’s arguable, and it’s still being used in every application, from handling nuclear control rods to selling Ed Sheeran tickets on Ticketmaster. As the timeline of PDP-11 machines progressed, the hardware did as well, and by the time the PDP was eclipsed by the VAXxen, there were PDP-11s on a single chip. The Eastern Bloc took notice and produced their own PDP-11 on a chip. This is the 1801-series CPU, and like most soviet electronics from the Cold War, they’re readily available on eBay.

[SHAOS] has an interesting project in mind for this PDP-on-a-chip. It’s a standalone computer built around the Soviet re-implementation of the PDP-11, built into a form factor that could be described as a single board computer.

This project is the outgrowth of [SHAOS]’ project for last year’s Hackaday Prize, the PDPii. This was a computer built around a backplane that replicated the PDP-11 using a KR1801VM2 CPU, the Soviet not-a-clone clone of the PDP-11. This project is basically a PDP-11/03 system, except it was made in this century, and you can put it in any computer case, with bonus points awarded for RGB lighting and liquid cooling.

This year’s project, the PDPjr, eschews standardization to something that is far more unique. This build is more or less a single board computer with a character LCD display and a real keyboard. Think of this as the PDP-11 equivalent of the TRS-80 Model 100, a machine widely regarded as being the first laptop.

There’s still a lot of work to go, but [SHAOS] has written a ‘Hello World’ for this chip, and is getting those words to display on the character LCD. That’s a great first step and we can’t wait to see where this project ends up.

Adding Linux To A PDP-11

The UNIBUS architecture for DEC’s PDPs and Vaxxen was a stroke of genius. If you wanted more memory in your minicomputer, just add another card. Need a drive? Plug it into the backplane. Of course, with all those weird cards, these old UNIBUS PDPs are hard to keep running. The UniBone is the solution to this problem. It puts Linux on a UNIBUS bridge, allowing this card to serve as a memory emulator, a test console, a disk emulator, or any other hardware you can think of.

The key to this build is the BeagleBone, everyone’s second-favorite single board computer that has one feature the other one doesn’t: PRUs, or a programmable real-time unit, that allows you to blink a lot of pins very, very fast. We’ve seen the BeagleBone be used as Linux in a terminal, as the rest of the computer for an old PDP-10 front panel and as the front end for a PDP-11/03.

In this build, the Beaglebone’s PRU takes care of interfacing to the UNIBUS backplane, sending everything to a device emulator running as an application. The UniBone can be configured as memory or something boring, but one of these can emulate four RL02 drives, giving a PDP-11 an amazing forty megabytes of storage. The real killer app of this implementation is giving these emulated drives a full complement of glowing buttons for load, ready, fault, and write protect, just like the front of a real RL02 drive. This panel is controlled over the I2C bus on the Beaglebone, and it’s a work of art. Of course, emulating the drive means you can’t use it as the world’s largest thumb drive, but that’s a small price to pay for saving these old computers.

A Mini-ITX PDP-11

The PDP-11 is perhaps the most important computer in history. This was the king of all minicomputers, and once you get past the amazing front panels of the 11/20, 11/40, and 11/70, you’ll find PDP-11s everywhere. Heathkit sold one. It was the smallest computer that could run Unix. There were desktop versions sold as DEC Professionals. I have been told Ticketmaster — the entire backend of all event ticket sales in the United States — still runs on PDP-11s.

One of the interesting bits of the PDP-11 is the miniaturization that happened over the course of its development. Over time, the Unibus processor cards of the earlier models were shrunk down into a single chip. This PDP-on-a-chip was then cloned by the Soviets, and like most vintage Eastern European electronics, they’re all readily available on eBay.

For his Hackaday Prize entry, [SHAOS] is taking one of these chips and turning it into a modern machine. The PDPii is a project to bring the PDP-11 back to life in the form of an Open Source motherboard with a Mini-ITX motherboard. Is it game-changing? No, not really; you could buy a desktop PDP-11 thirty years ago. This project, though, is taking new old stock chips you can buy for ten dollars and turning it into something resembling a modern system. Finally, Ticketmaster can upgrade.

The design of this project doesn’t quite meet the spec for the Mini-ITX form factor; it’s based off the RC2014 backplane Z80 computer, but desktop computer cases are cheap, as are power supplies, and I’m sure someone out there knows how to fit an eight inch floppy in a five and a quarter inch hole.

The key feature for this Mini-ITX backplane PDP-11 is a redesign of the Q-bus found in later PDPs to something that’s a bit smaller, a bit cheaper to manufacture, and still has all the relevant pins accessible. With some reconfiguring of the baroque DEC standards, [SHAOS] came up with the Bread-Board Friendly Q-bus Extended, or BBQ-Bus+. The next step for this project is gathering up a few PDP-11 compatible Russian КР1801ВМ2 CPUs and going to town on the architecture of what is probably the most replicated computer design ever.

A Modern Day PDP-11 Front End

Hands up if you feel your spiritual home is in front of a terminal with a “DIGITAL” logo on it.  It’s a name that has long ago been subsumed into first Compaq and then by extension HP, but it’s one with a lot of history when it comes to computing.

From the start of the electronic computing age, there were the computers we’d probably now describe as mainframes. Big computers that cost the GDP of a small country, filled an entire floor of a building, and could only be found in government departments, universities, and large companies. By the 1960s, the technologies existed to build computers that broke this mould, could be bought within the budget of a smaller organisation, and for which you didn’t need a huge air-conditioned basement to house. These so-called minicomputers were the great revolution of that era because they bought the fruits of computing into everyday business, and probably the most successful of the companies that produced them was the Maynard, Massachusetts-based Digital Equipment Corporation, or DEC.

DEC produced a succession of minicomputers in their PDP line, of which the most successful was their PDP-11 series. These were 16-bit minicomputers that remained in their product line from their launch in 1970 through to the early 1990s, and were available in a succession of configurations and physical form factors. The famous view of a PDP-11 is of a set of floor-to-ceiling racks, but there were also standalone terminal models, and desktop models. One of these, a PDP-11/03 from 1975, has come into the hands of [Joerg], and he’s used it to craft his LSIbox, the PDP11/03 card frame packaged with a BeagleBone for access via a modern-day interface. It’s a build in the vein of modern tube audio amplifiers that feature the retro hardware on the top of their cases, the card frame is exposed as a feature on top of a white case that is featureless except for a genuine PDP-11/03 front panel.

You might ask why anyone would do this in order to run PDP-11 software when the BeagleBone could almost certainly emulate the vintage hardware much faster than the real thing. But to take that view is to miss the point; the PDP-11 series are a seminal part of computing history, and to have genuine PDP-11 hardware on your desk is quite an achievement.

We’ve shown you a few PDP-11 projects in the past. There was this minimalist PDP-11 implementation using one of the later integrated PDP-11 processors, and we’ve seen a faithful reproduction of an earlier PDP-11 front panel powered by a Raspberry Pi.

A PDP-11 On A Chip

If you entered the world of professional computing sometime in the 1960s or 1970s there is a high probability that you would have found yourself working on a minicomputer. These were a class of computer smaller than the colossal mainframes of the day, with a price tag that put them within the range of medium-sized companies and institutions rather than large corporations or government-funded entities. Physically they were not small machines, but compared to the mainframes they did not require a special building to house them, or a high-power electrical supply.

A PDP-11 at The National Museum Of Computing, Bletchley, UK.
A PDP-11 at The National Museum Of Computing, Bletchley, UK.

One of the most prominent among the suppliers of minicomputers was Digital Equipment Corporation, otherwise known as DEC. Their PDP line of machines dominated the market, and can be found in the ancestry of many of the things we take for granted today. The first UNIX development in 1969 for instance was performed on a DEC PDP-7.

DEC’s flagship product line of the 1970s was the 16-bit PDP-11 series, launched in 1970 and continuing in production until sometime in the late 1990s. Huge numbers of these machines were sold, and it is likely that nearly all adults reading this have at some time or other encountered one at work even if we are unaware that the supermarket till receipt, invoice, or doctor’s appointment slip in our hand was processed on it.

During that over-20-year lifespan of course DEC did not retain the 74 logic based architecture of the earliest model. Successive PDP-11 generations featured ever greater integration of their processor, culminating by the 1980s in the J-11, a CMOS microprocessor implementation of a PDP-11/70. This took the form of two integrated circuits mounted on a large 60-pin DIP ceramic wafer. It was one of these devices that came the way of [bhilpert], and instead of retaining it as a curio he decided to see if he could make it work.

The PDP-11 processors had a useful feature: a debugging console built into their hardware. This means that it should be a relatively simple task to bring up a PDP-11 processor like the J-11 without providing the rest of the PDP-11 to support it, and it was this task that he set about performing. Providing a 6402 UART at the address expected of the console with a bit of 74 glue logic, a bit more 74 for an address latch, and a couple of  6264 8K by 8 RAM chips gave him a very simple but functional PDP-11 on a breadboard. He found it would run with a clock speed as high as 11MHz, but baulked at a 14MHz crystal. He suggests that the breadboard layout may be responsible for this. Hand-keying a couple of test programs, he was able to demonstrate it working.

We’ve seen a lot of the PDP-11 on these pages over the years. Of note are a restoration of a PDP-11/04, this faithful reproduction of a PDP-11 panel emulated with the help of a Raspberry Pi, and an entire PDP-11 emulated on an AVR microcontroller. We have indeed come a long way.

Thanks [BigEd] for the tip.

Turning A Pi Into A PDP

There’s no better way to learn how to program a computer than assembly, and there’s no better way to do assembly than with a bunch of blinkenlights and switches. Therefore, the best way to learn programming is with a PDP-11. It’s a shame these machines are locked up in museums and the garages of very cool people, but you can build your own PDP-11 with a Raspberry Pi and just a few extra components.

[jonatron] built his own simulated version of the PDP-11 with a lot of LEDs, a ton of switches, and a few 16-bit serial to parallel ICs. Of course the coolest part of any blinkenlight simulator are the front panel graphics, and here [jonatron] didn’t skimp. He put those switches and LEDs on a piece of laser cut acrylic with a handsome PDP11 decal. The software comes with a load of compiler warnings and doesn’t run anything except for very simple machine code programs. That’s really all you can do with a bunch of toggle switches and lights, though.

If this project looks familiar, your memory does not deceive you. The PiDP-8/I was an entry in this year’s Hackaday Prize and ended up being one of the top projects in the Best Product category. We ran into [Oscar], the creator of the PiDP-8, a few times this year. The most recent was at the Hackaday SuperConferece where he gave a talk. He’s currently working on a replica of the king of PDPs, the PDP-11/70.

Video below.

Continue reading “Turning A Pi Into A PDP”