This is a remake of the 1975 PDP-11/70, the very first computer you could buy a unix for.
It uses the same approach as my PiDP-8, using a modified simh on a Pi, hiding behind a replica front panel. Thanks to simh, it runs everything: From Unix v6 to Ultrix to 2.11BSD to RSX-11, multi-user and all.
This time, CAD and injection molding provided my learning curve; to reproduce the iconic PDP-11 in spirit, the replica had to have a case with the same slanted, white panel frame. Custom-made switches were also part of the Challenge. Couldn't do without.
Project status: hardware completed, now it's about improving firmware & software 'museum'
In terms of electronics and software, the PiDP-11 is similar to my PiDP-8. The PiDP-11 turned out more costly to make, because of the custom case (injection molding!). I hit the upper limit of the design goal: to stay under $250.
The molds for switches and case will hopefully be useful for other PDP-11 projects as well. The idea is to have these parts available as 'open-source molds'. If such a concept exists. :)
(update - in fact, a plug-in FPGA board for the PiDP-11 is being worked on as part of the PDP2011 project, in case simh on a Pi does not meet your needs)
Raspberry Pi +/2/3/3+
5mm LEDs, red
UDN2981A or equivalent
Interface and IO ICs / Peripheral Drivers and Actuators
I just updated the firmware to support the new Pi 4, which has a slightly different way of enabling the internal pull-up resistors on the GPIO.
So... where the Pi 3B+ was 6 times faster than the real 11/70 at 7241 dhrystones/second, versus 1250 for the 1975 original... you can now enjoy a 12x speed boost versus 1975. For those who like to be as authentic as possible, use a Pi 2! Or use the 'set throttle' configuration to slow down the Pi 4. Or run multiple 11/70s in parallel. At least the Pi 4 shows there's still progress in computing and 2.11BSD unix feels like lightning :)
The other nice thing of the Pi 4 is that you can use one HDMI display for a faithful CRT display (using cool-retro-term) and a second one for the very cool Tektronixvector tube simulation, which really uses the 4K resolution of the Pi 4:
Beige-O-Vision just made a very nice 4-part Youtube movie showing how to build the PiDP-11. Worth mentioning here, as it surely will save builders a lot of time. Since nobody reads written Building Instructions anymore these days...
[Rene] wrote a very pretty emulator for the Tektronix 4010 vector graphics display. And got everything set up inside 2.11BSD so you can actually use it. It's a great step forward: not only can the PiDP-11 now do vector graphics on BSD, but the C libraries are included as well! It turns out that making cool graphics takes only a tiny bit of C...
We already had BSD unix networked on the PiDP-11, so this is becoming a pretty top-of-the line scientific minicomputing setup ;)
One of the next challenges is to get uucp going on Unix v7, as a bridge between the Pi and the PDP-11 sides of the PiDP-11... nontrivial.
The new software (and software museum) distribution is currently in beta stage. Use your PiDP-11 with RSX-11 as a web server, surf the internet with 2.11BSD, play lunar lander on a simulated vector display, follow the Lions Commentary on a real Unix v6... things are developing rapidly at the moment.
That is also why the manual is in .odt format. It's being added to constantly. Best opened in MS Word, but LibreOffice on the Pi is OK too. Have a look:
First comes a software update with polished-up boot disk images for unix v5, v6, v7, 2.11 BSD and Ultrix, hopefully next week. Got to do it before January 1st, Unix's 50th birthday!
Then, Jörg has released the UniBone card. This thing lets Linux drive the old Unibus directly. It is possible to have a software CPU simulation run inside an old, potentially dead, PDP-11 and let it use its real core memory as well as any real PDP-11 disks... this needs hooking up to the PiDP :)
Lastly, many thanks to PJ Evans for publishing this article in the latest MagPi edition! Hopefully that gets new people sucked into the dark world of PDP-11 computing.
(note - MagPi is a truly Open Source publication, Creative Commons (BY-SA-NC 3.0))
Well, today was a great day - the day that the 600th PiDP-11 saw the light of day! I'll celebrate this weekend at the Vintage Computer Festival Zürich (vcfe.ch, that's a shameless plug...)
But there are hardware developments too. Soon, we'll have the PDP2011, Sytse's FPGA version of the PDP-11, as a plug-in module. So you can choose whether you like a Raspberry Pi simulating inside, or a FPGA hardware version to blink the front panel.
And Jörg is cranking out the first production UniBones - a reasonably mad device that can plug in to a real DEC Unibus. Either to emulate any storage peripheral for a real PDP-11, or to hook up any real PDP-11 hardware onto the simh running inside the PiDP-11. Yes, you will be able to connect an RK-05 to the PiDP-11... who'd have thought that two years ago!
Here, somewhere at the end of the last row, is PiDP-11 #600 waiting for the postman. One more grainy late-night picture:
Ouch - the last update here was almost a year ago to the day.
As it turns out, injection molding is not for noobs. Many thanks for all the help I got from here, including the massively helpful final check before the mold was made. It only took me 350 revisions of the CAD model, and 30 more from others... And it took custom-made brass inserts to hold the bolts in the case. So Iearned a lot, but it can be summarised: if you consider injection molding for a hobby, don't.
But! The first 20 PiDP-11 kits went out to beta testers, and other than a slightly too-short hex spacer, no problems during the final shake-out! So here it is, the brand-new PiDP-11/70:
Over the last few weeks, I've made a web site for the kit, and a Google Group is live as well. Now, the focus shifts to polishing up the (currently pre-alpha) software, and kits will go out from next month. Here are the kit contents:
Stupidly I forgot to put the back panel of the case in the picture, but it's on my site anyway. That back panel taught me about laser cutting (press-out slots for connectors etc), and after injection molding, that is the way to go for any following project. Easy, low-cost and very precise results.
I'll post some more updates in the coming weeks. As the PiDP-11 is a simhBlinkenBone device, I just wrapped up a virtual PiDP-11 with Jörg's virtual 11/70 front panel. That'll add to the fun as we go about building a right proper PDP-11 Software Museum into the software. From RT-11 to Unix v5/6/7 via Ultrix to 2.11BSD to RSX-11M Plus with networking, it should all be there of course!
It's been a good few months without an update. Real Life interfered, as it does. But also, I had lots of trouble getting the CAD design ready for injection molding. Stuff you don't think about: selecting brass inserts for screws, and how they should fit in the plastic. Controlling cost by ensuring a hobbyist can mount the inserts himself...
Hopefully, a professional checkup on the CAD file means it is now good to go. One more 3D printed prototype to check these inserts, and then the case should be done.
About time, the rest of the project was done 6 months ago. I'm curious if at the end of this I feel injection molding is just a horrible idea for hobbyists, or whether I just was slow climbing the learning curve. We'll see.
Today was a great day - after 10 months, all the parts were fitted together for the first time. As a 3D printed prototype of the case just arrived.
Excuse the bad photo quality, late at night again and I still have a low-tech camera that can't deal with dim lighting conditions. But actually, grainy pictures are a Good Thing because there's a lot of finer detail still to be done. The new case is just dropped over my prototype like a hood - not even screwed together yet.
Still, a fiiiiine day for the project. The PiDP-11 will be pretty, now I know for sure :)