10th September 2009

06th July 2011

Snow Leopard on Asus P5Q-E

sl hackintosh image

[Info on software updates]

This is my little help for anyone trying to install Snow Leopard OsX on P5Q-E (in fact, almost any Asus P5Q motherboard should work the same -sound apart-), whether it is a new install or an update from Leopard.

This is a continuation of my first post on installing OsX 10.5 (Leopard) on this motherboard.. Please have a look to the information posted there on how to setup the bios

A brief summary: everything works perfectly fine. Update from Leopard? check. 64 bits? check. Sleep, sound, network, graphics card? check ^ 4. I have been able also to upgrade to each release in the 10.6 version, from 10.6.1, to 10.6.8, normally with no problems or minus ones. As of 10.6.5, the only hardware not working is the second ethernet card (Marvell 88E8001)

My main information was obtained at this Generic Retail Install Guide: it draws several options, from which I chosed the option Chameleon v2 RC1 USB Bootloader with Netkas PCEFIv10.1 patched boot [by The Guru FlashGX].

In any case, please note that, for this guide:

  • even for a brand new install, it is assumed that a Os X installation (in principle, Leopard, but Tiger should be as valid) is available.
  • it requires two hard disks. One contains the Leopard installation, and another disk is used to please with the installation process, GUID partitioned.

BUT you do not need two hard disks. You can follow your own installation process, the insanelymac post gives quite a few alternatives on how to work it.

Neverthelles, even if you follow any alternative way, I think that reading how I succeeded on the installation can help you. Even just to know which are the specific KEXTS for this motherboard.

Let's go:

  • I use a second hard drive, with GUID partitioning, with two partitions:
    • A big enough partition, called SNOW, that will hold Snow Leopard, empty, formatted as Mac Os Extended (Journaled)
    • A rather small partition (<10 Gb), to copy the Snow Leopard DVD image. This partition is called SNOW_INSTALL
  • If you intend to update your existing Leopard installation:
    • Copy the Leopard partition into SNOW: that is, launch Disk Image, restore existing Leopard partition into SNOW
    • After copying the partition, it is better to remove from the SNOW partition any Hackintosh leftovers. This includes:
      • Remove the /Extra directory
      • If possible, remove the KEXTS installed in /System/Library/Extensions. Even better, if possible, replace them with the original ones. For the record, I did not remove these kexts, only removed the /Extra directory
    • You can be brave enough and perform an update on the existing Leopard partition directly. Up to you; if this is the case, SNOW refers to your existing Leopard partition.
  • Copy the DVD -Snow Leopard install- into SNOW_INSTALL (again using Disk Image)
  • Time to setup a boot drive using a USB stick. This will be the bootloader for Snow Leopard. The boot loader can be quite small (around 128 Mb, if it is still possible to find such small drives); I link below to the original files, as there could be updates. Please note that downloading them requires in some cases free registration. If you find it more convenient, I have made these files also available.
    • Format the USB stick, using Disk Imager, as Max OS X Extended (Journaled)
    • Run chameleon (RC1 r431 package) on it, no need to install any extras.
    • Remove from the USB drive the 'boot' file on the root.
    • The boot file provided in chameleon r431 package is not Snow Leopard compatible. Now, there are two options:
      • Copy the boot file (free login required) from Netkas into the root
      • Copy the boot file available from Chameleon 2.0 Rc3, r658 package. This is my preferred solution, as the Netkas's boot seems to raise kernel panics when used on a MBR partition.
    • In directory Extra/Extensions, copy the following files (all require free login):
    • Edit in the Extra directory the file com.apple.Boot.plist and provide any sensitive values. Mine is available here, but if you are upgrading from Leopard you should definitely use your original contents (the same applies for smbios.plist).
    • For your graphic card, you must ensure its support. For NVidia cards, the support is normally included directly in Os X; for this reason, I favour EFI strings over kext injections. For a Nvidia 9800GT, the required EFI string is included in this com.apple.Boot.plist file; for other cards, please google how to handle it, or use the method described on the initial Leopard installation: run EFIStudio, select your card, when supported, and dump the EFI string to com.apple.Boot.plist.
  • Restart, boot from bootloader, and select the partition SNOW_INSTALL.
  • When the installer starts, choose the SNOW partition to install there Snow Leopard. If you had copied there your Leopard partition, the install will perform automatically an update.
  • Restart, boot from bootloader, and select now the parttition SNOW. It should boot just fine, and it is not time to try the specifics of P5Q-E

Whether you used the initial guide, or this one, you should have now a working Snow Leopard installation, which can boot in 32 or 64 bits, but with the following problems:

  • No ethernet
  • No sound
  • All HD icons are orange
  • It still requires the boot USB stick. Even without this requirement, sleep will not yet work.

Now, it is needed to install Chameleon on this partition, plus the same Extra directory already installed in the boot USB stick, and, of course, the boot file.

This is the final list of kexts that are required for Asus P5Q-E (all available here):

  • IOAHCIBlockStorageInjector.kext: required to solve the orange icons (if you happen to dislike them), copy it into /Extra/Extensions
  • VoodooHDA: install this package, it will override and backup any required kexts
  • fakesmc.kext, in /Extra/Extensions
  • OpenHalRestart.kext, in /Extra/Extensions
  • NullCPUPowerManagement.kext: is NOT NEEDED, and, if present, will disable the normal Sleep.

For Ethernet to work, only the first LAN port (Marvel 88E8056) will be enabled; the second port (Marvell 88E8001) can be managed with an additional kext (skge.kext), but, as of 10.6.5, this kext seems not to work). If you can live with just one Gigabyte LAN port, better avoid this driver; otherwise, it is needed to unload/reload the driver on sleep/wakeup cycles.

To enable the first LAN port (which, of the two available ports, is the one further away from the keyboard/mouse ports), the best approach is, on every OS update, to edit the file /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleYukon2.kext/Contents/Info.plist, find the key Yukon-88E8053, and replacing it with the key name Yukon-88E8056; in the values associated to this key, update also:

  • The key IOPCIPrimaryMatch, which has value 0x436211ab should have instead value 0x436411ab
  • The key Model should be also edited to have value Yukon Gigabit Adapter 88E8056 Singleport Copper SA

After all is done, my final setup includes the Snow Leopard installation, in a GUID partition. I boot it (using still the boot loader), and then I restore it into the final MBR partition -in a hard disk with Kubuntu and Vista 64 bits-, reinstalling again Chameleon (plus specific boot file and KEXT files). Done!

Software Updates

  • 10.6.1: Performed easily using the Software Update, no problems after restarting
  • 10.6.2: Performed easily using the Software Update, no problems after restarting
  • 10.6.3: Performed easily using the Software Update, no problems after restarting
  • 10.6.4: Performed easily using the Software Update, no problems after restarting
  • 10.6.5: Performed easily using the Software Update. After restarting, I lost any networking functionality. To solve it, I directly edited the file /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleYukon2.kext/Contents/Info.plist, making the changes described above. I also updated on this release the VoodooHDA driver, replaced with version 2.7.2, which removed all errors in my log files, and enabled on the way the usage of microphone. Fantastic.
  • 10.6.6: Performed easily using the Software Update, no problems after restarting
  • 10.6.7: Using the Software Update, found a problem after restarting: sound works (headphones), but the rear line ouput doesn't. This is strange, as I am using the VoodooHDA driver, not the basic kext from Apple. After some fizzling, the problem lies on the autosensing jacks, as the output seems directed to the last sensed one. I have connected several, for subwoofer and side speakers, and everything works if the green jack (line out) is disconnected and then reconnected: not the best solution, as it must be done after any reboot or sleep cycle. Alternatively, disconnecting all jacks but the green one solves also the problem. A real, solid solution is going to require working on the DSDT or the info.plist, once I get the dump of the audio codec.
  • 10.6.8: Performed easily using the Software Update, no problems after restarting