Menu

Home

Misc hardware and software notes


Notes on using a Rev C iMac (also applies to Rev A and B and probably Rev. D) with newer versions of OSX. The boot partition on OSX has to lie within the first 8 gigs of the start of the hard drive and the maximum hard drive size is 128 gigs. (though for some reason, while OSX only sees the first 128 gigs of the drive Linux seems to pay no attention to the 128 gig limit, more on that later). You can use a technique similar to that used by some XServe machines to get around this. What you do is have a boot helper partition, then one large partition with OSX. The easist way to do this is to install using XPostFacto. This is normally used to allow the installation of OSX onto unsupported old world boxes (prior to the iMac) but supports installation and booting using a helper disk. OSX 10.3 can be installed this way with the built in CD drive but OSX 10.4 requires a DVD drive (internal only) or the dvd copied to another hard disk. I pulled my iMac apart and temporarily replaced the standard HD cable with a PC one leaving the hard drive as master and attaching a dvd drive as slave. Next I installed OS9 creating 3 partitions, one 7 gig for OS9 (extended hfs), one 200 meg for the osxboot (extended hfs) and the rest of the space for osx (extended hfs). After installing OS9 load up and install XPostFacto4 then run it to install OSX 10.4 from the DVD specifying the osxboot partition as the helper disk and the DVD as the boot device. After going through all of the 10.4 installation, you'll get to the point where the machine wants to reboot. In my case the reboot FAILED! There seems to be a bug in XPostFacto4 that writes the Open Firmware parameters wrong for the new setup. What I do at that point is to zap pram (option apple PR while powering up the iMac) go back into os9, check the XPostFacto4 Open Firmware settings, reboot again going into Open Firmware (option apple OF) then type in the commands by hand using setenv. This works great for me. You only have to do it once unless you zap the pram again or your motherboard pram battery needs replacing. I'll post more details of the Open Firmware parameters in the near future. XPostFacto automatically sees any kernel changes and recopies them to the helper partition when you reboot (or after one boot if you've done a software update that required a reboot). For some unknown reason XpostFacto doesn't messup the Open Firmware commands when you use it to reboot from OSX.
My partition map follows:

dev:/var/log root# hdiutil pmap /dev/rdisk0
Partition List
## Dev_______ Type_______________ Name_____________ Start___ Size____ End_____
 0 disk0s1    Apple_partition_map Apple                    1       63       63
 1 disk0s2    Apple_Driver_ATA    Macintosh               64       54      117
 2 disk0s3    Apple_Driver_ATA    Macintosh              118       74      191
 3 disk0s4    Apple_Driver_IOKit  Macintosh              192      512      703
 4 disk0s5    Apple_Patches       Patch Partition        704      512     1215
 5 disk0s6    Apple_HFS           untitled              1216 15769600 15770815
 6 disk0s7    Apple_HFS           untitled 2        15770816   409600 16180415
 7 disk0s8    Apple_HFS           untitled 3        16180416 252255029 268435444
 8            Apple_Free          Extra             268435445       10 268435454
Legend
    - ... extended entry
    + ... converted entry

Type 1 partition map detected.
Block0.blockSize 0x0200
NativeBlockSize  0x0200


Options: PMEXTENDEDMODE PMSECTORIZE PMSORTMAP PMFREEGENERATE PMFREECOMBINE PMVOLSYNTH PMSKIPZEROLGH
(-options xsSgcvk)

last modified Thu, May 22, 2008