Hacker News new | past | comments | ask | show | jobs | submit login

Modifiable ROM images let us do all sorts of things like add support for more memory via higher density SIMMs (Quadra / Centris 610, 650, 800), add support for non-native and not normally supported hardware, fixing bugs, and so on.

I'm considering getting one so I can have a low power, boots-straight-into-use LocalTalk to ethernet bridge with print drivers and printer sharing. Another option is network booting, since network file sharing is so incredibly easy with classic Macs.

Fun!




One interesting thing I've discovered recently is that everyone (including myself) is doing the ROM SIMM pinout slightly wrong when used in Quadras. The existing programmable SIMMs seem to work in the 610/650/800 and 700/900/950, but I think the onboard ROMs aren't being properly disabled, as someone discovered when trying one in an LC 475. I'm probably going to write a blog post about the topic soon.

Also, some exciting news is that ROM disk hacks are definitely on the way for the Quadras. It's possible to unlock the full 8 MB of ROM space in several of the Quadras. I've seen video of a Quadra booting from a 7 MB ROM disk. Too bad most of them after the 700/900/950 don't have the socket populated :-( The pads are there at least, for people who dare to add it themselves...


Apple liked to artificially cripple their machines in the ROM. I had a Mac LC as a kid that was limited to 10MB of memory because otherwise it might affect sales of the Mac II Ci. Being able to remove these artificial limits is great.


Not to say there has never been software based market segmentation, but this example is just not right.

First off the LC was in no way a threat to the Iici. The IIci had 32 bit data bus with a 25MHz 68030 and and supported a CPU cache. The LC with a 16MHz 68020 with a 16 bit bus. The Iici was conservatively twice as fast.

Second, the LC HW did not support nearly as much ram as the Iici. It shipped with 2MB soldered down (which logically you can think of 2 1MB SIMMs) and had 2 slots that each supported 4MB SIMMs, which were the highest density commonly available at the time. The (cheaper) memory controller used in the LC only supported 24 bits of physical addresses (and only in so many configurations), resulting in a maximum of ~16MB. Once you account for the soldered down two megabytes and how the slots had to be configured that left you with the ability to install 4MB into the each slot you get 10MB.

Technically speaking it was probably possible to get it to support 12MB or 16MB with a ROM patch if you desoldered the builtin memory and soldered from the address lines on the controller to some custom memory board. But as shipped with the builtin RAM and the controller chip they included 10MB was the most it could reasonably use.

The LCII did up the builtin memory to 4MB and had a software limit of 10MB like the LC (which meant if you installed 4MB SIMMs you would be missing 2MB), but I suspect that was more a result of how quickly it came to market (it was essentially just an LC with a 68030 and 4MB of ram, both of which greatly improved the experience of using the machine with System 7, which shipped after the original Mac LC).

Within a year or so after the LCII the the LCIII shipped with a completely redesigned board, and it supported 36MB of ram.

Source: I owned a Mac LC, paid for and installed a 2Mb memory upgrade to get it to 4MB, then eventually did a motherboard swap to upgrade it to an LCIII. I can even still tell you how much each of those upgrades cost ;-)


I was being a bit tongue in cheek about Apple saving the IIci. But the ROM on the machine is hardwired to only support up to 10MB of memory, even if you drop in larger sticks that would otherwise be supported. There's no real reason to do this except to protect the higher priced products. But as you noted, there wasn't really a higher end product to protect because the LC was already crippled by its slow bus and obsolete CPU.


I think you missed my point. It wasn’t just ROM limited, the ram controller they used in the LC did not have enough address lines to address more than 4MB per SIMM slot, end of story. No amount of firmware hacking can ever make it support 16MB SIMMs without what amounts to a total board redesign. Given the 2MB soldered to the board (which took the address lines for two of the slots) that meant the machine was physically limited to 10MB unless you wanted to break out a soldering iron. Yes, the ROM has a software limit, but it reflected the actual limits of the HW (and more likely was due how the ROM went about detecting the ram then any explicit intent to limit things… it is not shocking that the software only works with supported physical configurations and not board reworks).

The LCII on the other hand is a bit less excusable since it could physically hold 12MB but only 10 was usable. As I said I suspect the reason is that it was a fairly quick revision they squeezes in before the redesigned LCIII and they just didn’t rev those parts of the ROM, but it still seemed pretty bad).

If you want more info there is a pretty deep dive on this here: https://68kmla.org/bb/index.php?threads/technical-explanatio...




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: