Mountain Lion on Gigabyte GA-Z77X-D3H Tutorial
I’ve built a CustoMac, mostly based on the recommendations from TonyMacX86 – CustoMac: Buyer’s Guide 2012
I’ve chosen Z77X-D3H over the GA-Z77-DS3H, which has a supported Realtek audio card, as this one had better over-clocking capabilities (the turbo speed of the CPU can be setup to reach higher clock speeds). The cheapest Z77X board with a similar supported audio card is GA-Z77X-UD5H ($190), which is 50% more expensive than GA-Z77X-D3H while it only offers extra features which can not be used in Mountain Lion. Since this computer was aimed at being a Mac build, those extras were not needed / useful.
The build consists of the following:
- Mainboard: Gigabyte GA-Z77X-D3H
- CPU: i5 3570K ( + Zalman CNPS-9700 )
- RAM: 16 GB (2*8) Corsair Vengeance DDR3 1600MHz CL10
- Video Card: An old Gigabyte nVidia 9500GT 512MB
Pro-Tip: Ati Radeon 6870 should work, but it needs to be inserted after the installation of OS X (install OSX with the on-board graphics, and install the Ati graphics card afterwards)
- Case: Corsair Carbide 400R
- Power Supply: Corsair 430 Watt
- SSD: Corsair Force Series 3 – 60GB
I started with the following tutorial: TonyMacX86 – Unibeast Install OS-X Mountain Lion
On an existing Mac
- Purchased Mountain Lion from a Mac, downloaded it
- Downloaded the latest Mountain Lion UniBeast ( 1.5.3 at the moment of writing )
- Started Unibeast and installed ML on an 8GB USB stick (haven’t selected Legacy USB / Laptop support)
- After the Unibeast install I copied over the latest Mountain Lion MultiBeast to the USB stick in a “Kits” folder (just in case the networking might not work out of the box)
On the CustoMac
- Loaded optimized defaults in the Bios
- Plug the USB stick into a USB 2.0 port on the back (it won’t work from an USB 3.0 port)
- Boot from the USB, get the installer running (if it doesn’t start use ‘-x’, but it was not necessary for me)
- Partition the main hard-disk
- Install OSX
- Reboot, boot from the USB stick and this time choose the OSX partition to continue booting from
- Complete the OSX setup
- Run MultiBeast with the following options:
- UserDSDT or DSDT-Free Installation
- Drivers & Bootloaders > Drivers > Network > maolJ’s AtherosL1cEthernet (the ethernet worked out of the box, so installing the driver is optional)
- Customization > Identifiers > MacBook Pro 8,1 (initially I chose MacPro 5,2 and booting did not work)
After a restart you should have a functioning, bootable OSX Mountain Lion with ethernet and USB 3.0 support (only the 2 top USB 3.0 in the back work, the lower 4 USB 3.0 are not functional).
Update 3: Vinicius was not able to patch the DSDT file, so I recommended him to try installing the latest AppleHDA and see if that works. Luckily he responded back and confirmed that his audio works (he tested this on a GA-Z77X-D3H + i7, but should work on i5 just as well).
So the latest recommendation in order to setup Audio support is to install this Kext:
The steps are written on the kext download page:
- delete the voodHDA (if you have it)
- delete the AppleHDA
- and add these kexts from the zip using kext wizard,
- then reboot with -v -f e tell if the sound is recognised (according to the uploader, I personally did not need to boot with any flags setup in order to get the sound working, so test this if it doesn’t work after reboot)
Update 2: For enabling audio, there’s a trickier path to go through.
Later Edit: The following were required for a previous version of VIA VT2012/2020, now they’ve updated it to only require a patching of the AppleHDA kext. I’m leaving the original steps here though.
Update 1: At first, I went through the easy tutorial. Erased the AppleHDA.kext from /System/Library/Extentions. Opened up Kext Utility from osX86 and installed the AppleHDA.kext and the VIA2021.kext from the VIA VT2012/2020 from above.
Unfortunately this didn’t get me sound, so I had to go through the “Advanced Users” tutorial.
1. Back up AppleHDA.kext before patching.
2. Patching AppleHDA: open Terminal and type the below two commands and press enter
sudo perl -pi -e ‘s|\x84\x19\xd4\x11|\x41\x04\x06\x11|g’ /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA
sudo perl -pi -e ‘s|\x83\x19\xd4\x11|\x00\x00\x00\x00|g’ /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA
3. Enter password when prompted
4. Copy layout12.xml.zlib & Platform.xml.zlib to /System/Library/Extensions/AppleHDA.kext/Contents/Resources/
5. Run Kext utility and install VIA2021.kext and restart system
Rebooted the computer
1. Downloaded and started the DSDT Editor by olarila .
2. Go to File -> Extract DSDT
3. Patch -> New
Paste in the patch from here: http://pastebin.com/nCAya2Uu
And now the ‘funny part’ starts. There’s a ton of errors showing up when trying to IASL -> Compile, and we need to get all of them solved before this would work.
First error is the DTGP method unknown.
I’ve pasted this function above the “_WAK”: http://osxonthinkpads.wikidot.com/dsdt-edits#toc1
I had to erase a HD function (duplication error). Since there were two functions with the same name, one coming from the pastebin patch, and the other was already there. I had left the one with the DTGP (Arg0, Arg1,… call, and erased the other one.
I had to adjust the digits on a value (it required to be hex and it had ABCDEFGH as a value, while GH are invalid hex characters, so I got them replaced them with characters ABCDEF00 or ABCDEFF0), removed some functions that gave an error ‘object does not exist’ (probably referencing the duplicate function that I had to erase… did all this pretty much using my intuition. This is the hardest part from my point of view, as it might not be very clear for everybody on how to solve these errors.
I end up with this dsdt.aml
I copied it into the /Extra folder..
And rebooted again (while crossing fingers, an important aspect of the process)
… Houston, we have ignition ! The sound started.
If you’re making a build with the same main-board, do share your experience, as it might help others as well.
Later Edit: I’ve updated ML to 10.8.1 using the regular software update. All went smoothly.
Later Edit: I’ve updated ML to 10.8.2. I had to first erase AppleHDA.kext (and put back the AppleHDA.kext.backup) and VIA2021.kext as well. I ran the Kext Utility afterwards and rebooted. Then upgraded ML to 10.8.2, rebooted and the system stared up without audio (as expected). I’ve took the updated VIA VT2021/2020 kext, patched it as they required in the tutorial and installed it with Kext Utility. After a reboot I got proper sound, like before.