Fitting Big Disks to G3s and G4s

joevt

Tinkerer
Mar 5, 2023
350
136
43
I don't know of any reason why any Mac with an IDE connector can't support LBA-48 except for the drivers. Drivers can be replaced.

The Open Firmware driver needs to be updated for Mac OS X to load "BootX" unless it's on a helper partition (setup by XPostFacto for example).

The Open Firmware driver needs to be updated for Mac OS 9 only for New World Macs to load the "Mac OS ROM" file. I don't think OS 9 has a helper partition concept which would allow "Mac OS ROM" to be loaded from a reachable partition but have the rest of the system on a different partition. But "Mac OS ROM" has Open Firmware code that can be modified, so maybe it's possible?

One can load a newer Open Firmware driver from a reachable partition. I've done this for Beige G3 with Open Firmware 2.4.

BootX loads a Mac OS X driver. For OHare and Heathrow and Paddington IDE (also CMD646 IDE), the Mac OS X driver needs to be replaced. I've created the replacement kext but haven't tested it yet.

For partitioning large disks, I would use Mac OS X Leopard which still has the "Install Mac OS 9 Drivers" option.

https://github.com/dingusdev/dingusppc/issues/177#issuecomment-4417830475
https://forums.macrumors.com/threads/cant-boot-from-firewire-drive.2478368/post-34454141
https://tinkerdifferent.com/threads/bondi-blue-imac-restoration.5481/post-48786

For testing, the drive should be partitioned on a computer that supports LBA-48. Then you have to see if the older computer can access all the partitions in Open Firmware, Mac OS 9, and Mac OS X.

Macs with OHare (can boot Mac OS X with XPostFacto?)
- Alchemy: 5400, 6400
- Gazelle: 5500, 6500, TAM

Macs with Heathrow:
- Gossamer: Beige G3
- Lombard G3

Macs with Padington:
- iMac Bondi Blue
- Yosemite B&W G3, G4 Yikes

Macs with CMD646:
- Yosemite B&W G3, G4 Yikes

How to verify that LBA 48 is supported? I'm not sure. You could try writing the block number to every block of a disk, then read them back. That is the surest way.

Third party IDE controllers may have LBA-28 limit. Some may have a LBA-48 patch (some Sonnet cards). If they don't have source code, then it would difficult to update them yourself.
 

phipli

Active Tinkerer
Sep 23, 2021
376
254
63
I don't know of any reason why any Mac with an IDE connector can't support LBA-48 except for the drivers. Drivers can be replaced.

The Open Firmware driver needs to be updated for Mac OS X to load "BootX" unless it's on a helper partition (setup by XPostFacto for example).

The Open Firmware driver needs to be updated for Mac OS 9 only for New World Macs to load the "Mac OS ROM" file. I don't think OS 9 has a helper partition concept which would allow "Mac OS ROM" to be loaded from a reachable partition but have the rest of the system on a different partition. But "Mac OS ROM" has Open Firmware code that can be modified, so maybe it's possible?

One can load a newer Open Firmware driver from a reachable partition. I've done this for Beige G3 with Open Firmware 2.4.

BootX loads a Mac OS X driver. For OHare and Heathrow and Paddington IDE (also CMD646 IDE), the Mac OS X driver needs to be replaced. I've created the replacement kext but haven't tested it yet.

For partitioning large disks, I would use Mac OS X Leopard which still has the "Install Mac OS 9 Drivers" option.

https://github.com/dingusdev/dingusppc/issues/177#issuecomment-4417830475
https://forums.macrumors.com/threads/cant-boot-from-firewire-drive.2478368/post-34454141
https://tinkerdifferent.com/threads/bondi-blue-imac-restoration.5481/post-48786

For testing, the drive should be partitioned on a computer that supports LBA-48. Then you have to see if the older computer can access all the partitions in Open Firmware, Mac OS 9, and Mac OS X.

Macs with OHare (can boot Mac OS X with XPostFacto?)
- Alchemy: 5400, 6400
- Gazelle: 5500, 6500, TAM

Macs with Heathrow:
- Gossamer: Beige G3
- Lombard G3

Macs with Padington:
- iMac Bondi Blue
- Yosemite B&W G3, G4 Yikes

Macs with CMD646:
- Yosemite B&W G3, G4 Yikes

How to verify that LBA 48 is supported? I'm not sure. You could try writing the block number to every block of a disk, then read them back. That is the surest way.
Thank you Joevt, although I'm slightly confused as I think you've misinterpreted my post a little. I wasn't having problems, I was documenting ways to solve / manage the problems. You seem to have replied to my comments about how to get a LBA 48 supporting driver onto a disk in Classic Mac OS on an affected machine, by telling me to do some experiments to see if I can install an LBA 48 supporting driver on a disk for Classic using another operating system, possibly running on another computer. 🤣 Perhaps I've misunderstood.
Third party IDE controllers may have LBA-28 limit. Some may have a LBA-48 patch (some Sonnet cards). If they don't have source code, then it would difficult to update them yourself.
A number of products present to the OS as a SCSI interface as I mentioned in my post, circumventing the issue to my understanding.
 
Last edited:

joevt

Tinkerer
Mar 5, 2023
350
136
43
Thank you Joevt, although I'm slightly confused as I think you've misinterpreted my post a little. I wasn't having problems, I was documenting ways to solve / manage the problems. You seem to have replied to my comments about how to get a LBA 48 supporting driver onto a disk in Classic Mac OS on an affected machine, by telling me to do some experiments to see if I can install an LBA 48 supporting driver on a disk for Classic using another operating system, possibly running on another computer. 🤣 Perhaps I've misunderstood.
Your solutions to the problem basically amount to avoiding the problem - either by not using LBA 48 disks to their full potential or by not using the affected IDE controllers.

I was just saying that the problem (drive size limits, etc) is not hardware related but firmware or software related and therefore can be eliminated.

Actually, one of your solutions involved using software from Intech Software. I wonder if they rewrote the Mac OS X Heathrow ATA driver from scratch or just modified it from Apple source like I did. Anyway, their solution doesn't include an Open Firmware fix for the Open Firmware part of the boot process. Need to look at their kexts to see what devices they work for.

The note I made about testing was for describing a method to detect if the problem exists. The other computer is necessary if you don't have a solution for the vintage computer to partition the entire LBA 48 hard disk.

I think classic (Mac OS 9) has drivers that already support LBA 48? If not for booting, then at least for file storage.
 

phipli

Active Tinkerer
Sep 23, 2021
376
254
63
Actually, one of your solutions involved using software from Intech Software.
Which gets you 95% of the way there by giving you everything other than the ability to boot partitions beyond 128GB. I also mentioned formatting the disk in their Mac OS 9 utility which gives you their hard disk driver in Classic Mac OS. (Actually, how does that work on Power PC macs - if the 68k emulator is resident on the disk in the ROM File, how is it loaded to interpret the 68k portions of the disk driver? Guess it must load the ROM File using generic Open Firmware drivers prior to loading the more "Macintosh" driver from the disk).
I think classic (Mac OS 9) has drivers that already support LBA 48? If not for booting, then at least for file storage.
Hum, not sure where the issue lies, but I've had problems even formatting disks bigger than 128GB on a Beige G3, and also I think my Pismo under OS 9.x.
Anyway, their solution doesn't include an Open Firmware fix for the Open Firmware part of the boot process.
I'd be happy to add a link once you've written and validated a fix for the Open Firmware and provide a way for a beginner user to apply it without having to compile it or dig into the depths of Open Firmware.
Your solutions to the problem basically amount to avoiding the problem
Avoiding a problem sounds like a solution to me 🤣 - I was giving options, some of which were for the built in interface, others which were to use an alternative interface. Sil3112 based cards have a lot of advantages and can still be found for good prices if you hunt around. Even if there was a Firmware fix, for many people it would still be the best answer as it opens the door for faster disk speeds, cheaper disks, bigger disks, newer disks...
 
Last edited: