FABIEN SANGLARD'S WEBSITE

ABOUT  CONTACT  RSS  GIVE


May 16, 2025

This article is part of the IBM PS/1 Restoration project series
IBM PS/1 2168 Restoration: Upgrading the CPU

Having pushed the L2 cache to 256 KiB, FDOOM.EXE clocked at 32 fps. The IBM PS/1 2168 was close to maxing out DOOM at 35 fps. The next upgrade was going to be the CPU.

CPU Upgrade

IBM's 2168 documentation mentioned the CPU could be upgraded. However there was no mention of which models were supported. All I managed to find online was a confirmation that it could work[1] and the following Processor Upgrade Matrix[2].


Model

CPU

Upgrade Processor

Installation Notes

2168 38C

DX2/50

P24T-63

J24: 1-2, J25: 1-2, J31: 2-3

2168 57C

DX2/66

P24T-83

J24: 1-2, J25: 1-2, J31: 2-3

2168 SR1

SX33

487SX, P23T-66, P24T-83

J24: 2-3, J25: 1-2, J31: 2-3 for P23T-66
J24: 1-2, J25: 1-2, J31: 2-3 for 487SX or P24T-83

2168 US1

DX2/50

P24T-63

J24: 1-2, J25: 1-2, J31: 2-3

2168 BB1

DX2/66

P24T-83

J24: 1-2, J25: 1-2, J31: 2-3

The 487SX indicates the Intel 487SX math coprocessor. The P24T-63 or P24T-83 indicates
the Intel Pentium Overdrive Processor (63 Mhz or 83 Mhz). Under installation notes
(Jxx: y-z), Jxx denotes a jumper and y-z denotes its position. If you receive a 2462 
Startup POST error after installing a Pentium Overdrive, you may need a BIOS chip 
upgrade (FRU 76H6938) These are the only processor upgrades supported by IBM for these 
machines.

The mode reference (2168-BB1) did not match (I have a 2168-594) but the configuration did. It seemed that a Pentium 83Mhz could work. That would open the door to softare using floating point instructions like Quake and Duke Nukem 3D.

Overdrive 101

There is an important distinction when it comes to Overdrive processors depending if the motherboard expects the new CPU to Replace or Disable the current CPU. Let's take two types of 2168 motherboards to illustrate.

In versions with a 486 SX soldered on the motherboard and an Overdrive slot next to them, the CPU is to be disabled by the Overdrive. Notice on these motherboards how the cpu slot has 169 pins instead of 168 on the lower right. In this case, the CPU must be an ODP.

If there is only one CPU slot (my case), the socket has 128 pins. This is a Replacement and the type of Overdrive CPU needed is ODPR.

The Pentium Overdrive 83Mhz

Right from its frequency we are dealing with an uncanny CPU. If you are puzzled, you are not alone. There are many discussions and debates about how this works and it that is even a superscalar processor[3][4] (answer: it is[5]!).

This uncanny beast was best summarized by mpe on Vogons.

The Pentium Overdrive is not just an adapted Pentium. It is a unique design - a modified P54C core with double L1 caches, half-size cache line size and 486 external bus.

- mpe[6]

The 83Mhz figure comes from the unusual multiplier (2.5x) applied to the system bus speed (33Mhz) resulting in 33x2.5 = 82.5 Mhz[7][8]. If you are interested in the topic, there are many good videos about this CPU[9][10].

I was quite impressed by the effort Intel had put into making Pentium broadly available (likely related to its feud with AMD over 486s). The fact that Pentium is a 3.3V core and that they managed to build something with a regulator to run on a 5V socket was pretty cool.

Attempting to use a PODP5V83

I was hopeful but also skeptical. The POD83 was released in October 1995[11] as the PODP5V83 (oem) and the BOXPODP5V83 (same but boxed). That is two years after this computer was built (Dec 1993). The documentation was promising but also mentioned having to find a custom ROM (FRU 76H6938).

There was only one way to know. I cracked open my BOXPODP5V83 and installed it (see an unboxing video here).

The "MICRO SELECT" jumpers J23, J24, and J25 (upper right) had to be adjusted
It doesn't work

After my pack-fresh PODP5V83 failed to even POST, I ordered a second one only to run into the same issue. I tried to chase down the BIOS firmware (76H6938) mentioned in the online documentation to no avail.

In the process I learned that IBM PS/1 had an EPROM (as opposite to EEPROM). This meant that the BIOS cannot be software updated, I needed a physical EPROM chip with the new firmware. With IBM having discontinued the 76H6938 several decades ago, the odds of stumbling upon one were next to zero.

The one thing that was suggested but I did not try was to run a faster chip for the BIOS. Moving from the M27C1001-70 (70ns access time) EPROM to a faster M27C1001-10 EPROM (10ns access time) would have been an option but I decided to try something else.

What about a faster 486?

All hopes of upgrading were not lost. If the PODP5V83 was too much of a stretch, perhaps something still based on a 486 architecture (but with more juice) like a DX4ODPR100[12][13][14][15] would work.

Despite its name the DX4 does not use a 4x multiplier but a 3x. On my system this gives a frequency of 99 Mhz which is rounded up to 100 Mhz for marketing reasons.

DX4 CPUs are so fast that they are prompt to instructions starvation, even on a VLB. To counter that, like the PODP5V83, Intel doubled the L1 cache of the DX4ODPR100 to reach 16 KiB.

Installing a DX4ODPR100

I also happened to have a BOXDX4ODPR100 in my collection. The back of the box suggested impressive performance. I cracked it open and the installation went well. Contrary to everything else I attempted in this restoration process it worked the first time and the machine POSTed.

But I noticed right away that something was off. The memory check was super slow. And when I started DOOM, it ran at 3fps :( !. At least we were consistent with "not working on first try".

No L1 and no L2

The culprit of the performance decrease showed up in the BIOS screen, The machine had lost both its L1 ("Internal cache") and L2 ("External cache").

Major TOM to the rescue

It turned out that someone had already run into this problem and solved it. Programmer "Major Tom" accomplished the feat by patching the existing EPROM and even published their beautiful hack.

Burning a new EPROM BIOS

I bought an empty EPROM model M27C1001 and got an UV EPROM eraser to clear.

I was not really sure which EPROM writer to buy. I ended up with a T48.

With the M27C1001 in the T48 I only had to write Major Tom's patched BIOS on it. I used the awesome minipro CLI which allowed me to write the whole EPROM with a single command.

Installing TOM 1.0

After writing the EPROM, I protected the EPROM data with copper tape.

And then it was time to replace the BIOS chip. I had to take out all the ISA cards and remove the riser card again.

Notice the newly installed DX4-100 in the upper right inserted in the Overdrive socket.

It works!

With TOM 1.0 BIOS the machine POSTed and showed the right amount of L1 and L2. Only the Processor "name" was wrong since it only showed 80486DX instead of 80486DX4.

ASTRA did recognize the correct CPU name (Intel i486DX4).

But how does it works

I emailed Major TOM to understand what magic they had done to make the cache work but they never replied. If I ever manage to find some free time this is definitely something I would like to disassemble, study and understand.

Meanwhile, there is a treasure trove of information on chipdb.org, here, here, and here where are saved gems like PentiumPro_BIOS_guide.pdf, DX4_BIOS_guide.pdf, PentiumOverdrive.pdf, and Procuring BIOS Updates.pdf.

486 DX4 100 Mhz benchmark

With the frequency nearly doubled (and L1 cache doubled to 16KiB), it was time to benchmark DOOM (sound on, screensize = 10).

CPU\Engine DOOM FDOOM
486 DX2-66  24 32
486 DX4-100 29.7 39.5

Achievement unlocked. FDOOM runs at nearly 40fps. DOOM is maxed out!

More bechmarks

With the DX4 upgrade, the 2168 was able venture into 1995 game territories. Command & Conquer (released sep '95) runs like a charm.

However to go in 1996-land and run games such as Duke 3D, Blood and Shadow Warrior, one will need a PCI bus and a Pentium[16]. I measured improvement on Duke Nuken 3D with command DNRATE. The framerate went from 14fps with the DX2-66Mhz to 20fps with the DX4-100Mhz, which was still not playable by my standards.

As for the elephant in my room, Quake, this machine would have had a shot at it with a Pentium 83Mhz but not with any 486. The best summary I ever read about that came from vogons.

486 and Quake go together like water and oil.

- appiah4[17]
The absolute MVP

During this whole time trying CPUs, I was not dealing with Zero Force Insertion socket. I had to push hard for the CPU to click into the OverDrive slot. That was scary. I was afraid to break the CPU and/or the socket.

For the removal part, it would have been a nightmware without this absolute gem of a "Removal Tool" included in the Overdrive package.

I have seen videos of people using a screwdriver but if you can find one of these, I hightly recommend it. It make the operation fast and easy.

Next

Epilogue
References

^ [ 1]PS/1 - Can I upgrade my PS/1 system with the Pentium OverDrive?
^ [ 2]PS/1 - 2168 38C/57C/BB1/US1/SR1 (SL-B) System Information
^ [ 3]Intel OverDrive Part II: Pentium OverDrive
^ [ 4]How does the Pentium Overdrive 83 work?
^ [ 5]Pentium Overdrive PODP5V83 question
^ [ 6]How does the Pentium Overdrive 83 work?
^ [ 7]Theretroweb: Intel Pentium OverDrive 83 (PODP5V83)
^ [ 8]The Perfect Pentium
^ [ 9] The Intel Pentium Overdrive CPU for 486 Systems
^ [10] Intel DX4 and Pentium Overdrive in DOS games
^ [11]Intels plans OverDrive for Pentium systems
^ [12]FastDoom - Massive Performance Gains on Slow 386 and 486 CPUs!
^ [13]The 486 Upgrade CPU Showdown!
^ [14]The Forbidden and Forgotten UMC Green 486 CPU
^ [15]The Intel Pentium Overdrive CPU for 486 Systems
^ [16]Pentium Overdrive PODP5V83 question
^ [17]486 & P4, Monkey Island and Duke 3D


*