DIY “Open Hardware” Module From 1985 - Build It Yourself!
Update! There is now a GitHub repository covering all of the below and much, much more. The original text remains below for reference.
I’ve been looking into overclocking my 1981 IBM 5150 PC - after all, the performance of that 4.77MHz 8088 CPU isn’t great by anyone’s standards. But as anyone who’s read my previous ramblings on the subject will understand, I’m only interested in period correct solutions. I’d still like it to be a 5150 at heart!
I’ve already swapped the CPU for an NEC V20 - an 8088 clone that added optimizations and even implemented the 80186 instruction set. This results in up to 30% performance increase in a lot of applications. The great thing is that the V20 was released in 1982 and was a common upgrade for the 5150, so it meets my vague criteria of “period correctness”. It was also used in some PC compatibles, perhaps most notably the excellent Tandy 1000.
Another advantage of the V20 is that it can run at up to 10MHz, making it ripe for overclocking. So I started researching options and came across a design for a “freeware” DIY board called the PC-SPRINT released by Doug Severson in 1985 - an early example of Open Hardware!
How It Works
The 5150 uses a 14.318MHz crystal feeding an Intel 8284 oscillator IC to generate its system clock. The 8284 divides that frequency by 33.3% and uses that to clock the CPU giving 4.77MHz. It is possible to drop in a faster crystal but this messes up other timings, notably the video card.
Douglas’s design adds a second 8284 connected to a faster-clocked crystal, used to clock the CPU, while the original 8284 and crystal are left unaltered to clock the rest of the system as IBM intended. The result is this board that fits into the original 8284 socket:
Image credit: VCFed user Retro Canada
Nobody is currently manufacturing the PC-SPRINT but a user called “Retro Canada” on the Vintage Computer Federation forums re-drew the PCB design in KiCAD and built their own. They then very kindly offered up the CAD drawings and Gerber files for free on the above link (which I’ll mirror here just in case).
So I took it upon myself to get 20 of these boards manufactured at PCBWay, and then sourced the components on ebay. Of course I have no need for 20 of the things but it was one of those cases where it was essentially the same price for 20 as it was for 1, so I’m hoping to get Retro Canada’s blessing to sell the extras. The total cost assembled is around £5.60 per board excluding the crystals - the original specified a 22.11MHz for a 7.37MHz CPU clock but Retro Canada reported instability at this speed, so I’ll experiment.
My first foray into PCB manufacturing - and while it isn’t my design, it’s still all very exciting! This post is the beginning of a series of posts on upgrading and improving the IBM 5150, and there will also be accompanying YouTube videos, so watch this space.
This overclock is not compatible with the original 8088 CPU (Intel and AMD variants). It requires at least an 8088-2 or compatible clone such as the NEC V20. If an 8087 co-processor is fitted, that must also be a version capable or the higher clock speed (e.g. 8087-1 / 8087-2).
Downloads And Other Resources
I have mirrored these files locally because, after reading around old websites and resources and coming across a lot of dead links, I decided to make an effort to preserve these. This being Open Hardware (but with no corresponding modern license attached), I hope that this is OK with everyone involved.
- 1985 PC-SPRINT README (PDF) - as released in 1985 by Doug Severson
- 1985 PC-SPRINT Files - as released in 1985 by Doug Severson
- Modern KiCAD / Gerber Files - by VCFed user “Retro Canada”
- Intel 8088 Datasheet (PDF) - datasheet for the Intel 8088 CPU
- Intel 8284A Datasheet (PDF) - datasheet for the Intel 8284A clock generator