• Hello Guest! We're hosting a challenge to welcome vintage Intel macs to the MLA during the month of July! See this thread for more information.

How to: upgrade a 520/540 to a 550c ROM

I just wanted to show how I've upgraded the ROMs on a regular PowerBook 520 CPU card with a couple of 29F1610 chips, programmed with the 550c ROM.

Now, why would you want to do this? Well, you might have acquired a 550c that's been upgraded with a PPC chip, but wish to revert it to its stock configuration. However, you can't just install a common 520/540 CPU card, it won't work. Genuine 550c '040 cards are basically unobtainable.

The 29F1610 chips are the correct specification and almost fully pin compatible with the mask ROMs they replace, but differ in that they have a couple of programming pins (#1 and #44) where the mask ROM's are NC. A single bodge wire is needed over each chip to pull pin 1 (WE#) high.

This particular card now just needs a full 040 swapped in, and it'll be functionally equivalent to an original 550c card. The good thing is that it'll still work in a 520/540.

I'm attaching high and low split binaries to make it easier for anyone who wants to try this, since splitting the ROM correctly was a... splitting headache. 29F1610 are out of production but plenty of NOS chips can still be found, just beware of fakes.

IMG_1776.JPG

Here's how Tattletech reports the ROM before and after the upgrade. The sub-version changes from $30F1 to $30F2, so it's essentially Rev A. vs Rev B.

Picture1.jpg


A couple of declaration ROMs are updated.

Picture2.jpgPicture3.jpg
 

Attachments

Last edited:
Thanks croissant - never knew the CPU cards were not interchangeable. Must have been Apple's ploy to not allow non- Japanese customers to not part out the LCD and CPU card to other markets.
 
Thanks croissant - never knew the CPU cards were not interchangeable. Must have been Apple's ploy to not allow non- Japanese customers to not part out the LCD and CPU card to other markets.
I don't think it's anything cynical. To clarify, you can run a 550c CPU in an earlier model, but not the other way round. The 550c/30F2 ROM has a special driver to run the larger display.

Curious, with a CPU card with this ROM installed in a 520/540 does the OS (7.1.1) see it as a 550?
I tried it, just for you. It sees it as a 520/540.
Digging into this a bit further, I wonder if a 550c would actually show as a 520/540 under System 7.1.1? Because both types of machine have the same gestalt id (72) so how could it differentiate? Also, if you look inside the PowerBook 500 series enabler with resedit, there is only a string for 'PowerBook 520/540'.
Maybe it checks to see if there is an FPU, but this card doesn't have one (yet).
Perhaps someone with an actual 550c could confirm what it shows under 7.1.1.

How exciting! I really need to get this done for my prototype PowerBook 550c 😉
;)
 
Last edited:
Awesome! Yes we could skip the memory test and also get a ROM disk in there. A quick look shows there are at least three resources labeled as 'free' that could probably be patched into a ROM disk driver.
How much trial and error would it likely need? Because if you wanted to try some of those edits I could burn them to a couple of spare chips over here to test them out.

We should use the 550c ROM as a base, of course, since it will work in all 500 series models.
 
How much trial and error would it likely need? Because if you wanted to try some of those edits I could burn them to a couple of spare chips over here to test them out.
I bet the challenge would be soldering them on the daughtercard, discovering issues de-soldering, etc etc right?

I haven't looked any deeper into this yet, but I wonder if the 550c ROM could boot any other machine, such as a Quadra 700? Maybe I'll poke at this the next couple days. If we could get a Quadra type machine to at least boot, then we can work out all the bugs pretty easily.

Also emulation. I don't do a whole lot of emulation, outside of Basilisk II and Mini vMac. The last time I tied I couldn't get either to work with a 2048MB ROM. Is there an emulation tool that will work using the 550c ROM?
 
I bet the challenge would be soldering them on the daughtercard, discovering issues de-soldering, etc etc right?

I haven't looked any deeper into this yet, but I wonder if the 550c ROM could boot any other machine, such as a Quadra 700? Maybe I'll poke at this the next couple days. If we could get a Quadra type machine to at least boot, then we can work out all the bugs pretty easily.

Also emulation. I don't do a whole lot of emulation, outside of Basilisk II and Mini vMac. The last time I tied I couldn't get either to work with a 2048MB ROM. Is there an emulation tool that will work using the 550c ROM?

I have a concept in mind for a mezzanine adapter board that could take something like a pair of MX29F1615 chips. I’ll knock out a prototype if you’re interested in working together on this.
 
I have a concept in mind for a mezzanine adapter board that could take something like a pair of MX29F1615 chips. I’ll knock out a prototype if you’re interested in working together on this.
That's pretty darn clever. So you're thinking something along the lines of an adapter with like Killy clips that would clip on and program the chips on the card? I'd be totally into working on that with you.

I'm going through my files and I don't have a schematic for the 5XX daughtercard. Do you have one? One thing we should probably confirm is the right number of address lines going into the ICs so we could address the entire 4MB.
 
Back
Top