The Logic Board
In a previous article, I mentioned that I had a Quadra 605 logic board with a bad microprocessor. The 605 uses a MC68LC040RC25, a 25 MHz 68040 without a floating-point unit (FPU). It was perfectly adequate for most home users at the time, but the lack of an FPU and relatively modest clock speed limited what the machine could do.
Fortunately, I had a spare MC68040RC33; the 33 MHz version of the 68040, complete with an FPU. It is almost a drop-in replacement for the failed processor.
Almost.
Even though it works right off the bat when it’s plugged in at 25 Mhz, there are a few modifications that need to be made so the logic board can take full advantage of the faster processor.
Much of that can be done via the amazing Soft 475 Overclock Util by Phipli, but where’s the fun in that?
While I was repairing another board, I came across a set of Quadra 605 schematics online. I started looking through them, and something caught my attention: Apple had actually designed the board with multiple processor speeds in mind.
The schematic calls out a group of four resistors that configure the board for different clock speeds. There is also another resistor whose value needs to be changed depending on the processor speed, an additional resistor that needs to be moved, and finally, a clock-related chip that needs to be replaced when increasing the processor speed. Doing it via software began to sound more promising, but I stuck with it.
Fortunately, Apple had already done the hard work for me. The necessary configuration options were sitting right there in the schematic; I just had to read through it and see which ones applied to a 33 MHz processor.
And, of course, once I realized the board could be upgraded, there was really only one thing left to do: modify it.
First Things First

There are four resistor positions on the board that determine which clock configuration is used for the processor.
The schematic gives us four possible configurations:
| System Clock Speed | Install | | ------------------ | ----------- | | 20 MHz | R22 and R25 | | 25 MHz | R21 and R25 | | 33 MHz | R22 and R24 | | 40 MHz | R21 and R24 |
The schematic also specifies the resistor values:
- R21: 4.7K Ohm
- R22: 300 Ohm
- R24: 4.7K Ohm
- R25: 300 Ohm
My board was configured for 25 MHz, so it had a 4.7K Ohm resistor at R21 and a 300 Ohm resistor at R25.
For 33 MHz, those need to move to R24 and R22. So I simply moved R25 to R22 and R21 to R24.
One modification down. On to the next.
R13

R13 is located directly underneath the processor and its value also changes depending on the clock frequency.
Fortunately, the schematic makes this one pretty straightforward:
| Clock Frequency | R13/Tolerance | | --------------- | ------------: | | 20 MHz | 121 Ohm, 1% | | 25 MHz | 212 Ohm, 1% | | 33 MHz | 140 Ohm, 1% | | 40 MHz | 110 Ohm, 1% |
I thought, “Cool. I have a drawer full of surface-mount resistors. I’ll just grab a 140 Ohm one, right?”
Except 140 Ohm isn’t exactly a common value, and naturally, I didn’t have one.
No problem. There are a couple of ways to make that value.
The first is to put two resistors in series (back to back). Their values simply add together. In this case, a 120 Ohm and a 20 Ohm resistor gives us exactly 140 Ohms.
I used smaller-package 0604 resistors so I could fit both of them onto the existing 0805 sized pads. Another option would have been to stack two resistors on top of each other in parallel. The math is a little more complicated, but a 470 Ohm resistor in parallel with a 200 Ohm resistor would be close enough for this application.
That arrangement probably would have been easier to solder, but I’d already dug out the 120 Ohm and 20 Ohm resistors, so those went on the board.
R95 and R96

Next up are two resistor positions, R95 and R96. Only one is populated, depending on the clock speed.
For 20 and 25 MHz configurations, R95 is populated.
For 33 and 40 MHz configurations, R96 is populated.
My board had a resistor installed at R95, so I moved it over to R96.
At this point, the board was configured for 33 MHz.
Well, almost.
The Hard Part: U1
Right next to R95 and R96 is U1, a surface-mount clock-related chip that also needs to be changed when moving to the faster processor speeds.
The board originally had an MC88920 installed. According to the schematic, the 33 MHz and 40 MHz configurations require an MC88916 instead.
And, naturally, the MC88916 hasn’t been manufactured in decades.
The usual parts suppliers haven’t carried them for a very long time, leaving me with one option: roll the dice on eBay.
Fortunately, they were cheap enough that the gamble wasn’t particularly painful. I ordered one and, a little over a week later, had a shiny new-to-me and “never used” “MC88916” in my hands.
Now came the fun part.
I removed the battery holder and speaker connector to give me better access to the board. I also covered the processor and SCSI connector with Kapton tape to protect them from the heat i’d need to swap the chip.
With everything protected, I fired up the hot-air station and removed the old 88920 at U1. After cleaning up the pads and adding some flux, I installed the replacement MC88916.
A little reassembly later, it was time for the moment of truth.
I stuck a heat sink to the processor and applied power.
Chime

Success!
The board booted, and I was off to the races. Literally.
I started playing around with it, trying to see if I could actually tell the difference between 25 MHz and 33 MHz.
I couldn’t.
But that’s not really the point.
I had just taken a broken 25 MHz Quadra 605 board, replaced its processor with a 33 MHz 68040 with an FPU, changed the clock configuration, replaced the clock chip, and brought the whole thing back to life.
And, if nothing else, that feeling of speed made it all worthwhile.