- Joined
- Jun 5, 2010
- Messages
- 100
- Motherboard
- Gigabyte Z490 AORUS Elite
- CPU
- i9-10850K
- Graphics
- RX 6900 XT
- Mobile Phone
I did not find a guide for this motherboard for Mountain Lion, so here is the one I have put together. This board is one that I originally installed OS 10.6.3 on (eventually updated to 10.6.8) and it has been stable to the point that I am only now updating to ML because application support for SL is starting to be cut-off.
The things that I have tested and are working are:
This install was done with the (at the time) latest versions of the software. These were:
There is an edit required to have sleep work correctly. Instructions are in this guide.
Lets get started.
I followed the above steps to install 10.8.5 before the ‘Supplemental Update’ was created for the OS. In checking, it looks like the update was rolled into the 10.8.5 installer. If so, I don’t expect it will change the steps presented here.
I based the Radeon 6xxx workaround steps on ReneKnaake’s prior posting.
I based the DSDT workaround (putting it in Extras on the install USB stick) on kurosagi’s prior post. Also an example of the combined Radeon/DSDT fix by kurosagi is further down in the thread, which I used as well.
I based the darkwake setting to fix sleep on posted research by NeXTguy. In my testing there was no noticeable difference between using a value of 8, 9, 10, or 11. I chose 8 as it has the most overlap with the setting used on prior OS’ (10.7, 10.6.)
This setup has one issue where booting with -x flag (safe mode) requires extra steps due to the 6xxx issue. With the ATI6000 kext files installed, booting with -x causes the system to boot to a grey screen. In this mode I was able to reboot the computer using Command-Control-Power Button indicating some or most of the OS is working. (I have a keyboard with a ‘Power’ button that is recognized by the OS.) I did not determine a solution to this, but to boot in safe mode it will probably require first booting to a different partition, removing the file “ATI6000Controller.kext” from the System/Library/Extensions folder of the partition you want to boot in safe mode, booting the partition in safe mode, then once you are done, put the extension back in place.
Sleep is working almost as well as it did for me in 10.6.8. In my testing I was able to put the computer to sleep using the Apple menu item or selecting sleep using the power key menu. Wake always brought the system up fully functional in 1 or 2 seconds with either a single wired mouse click, a Bluetooth Mighty Mouse click, or a keyboard key press. Multiple sleep and wake cycles produced no problems. The one “sub-optimal” functioning is automatic sleep due to inactivity. In my testing the monitors go to sleep exactly after the amount of idle time configured. However, the computer takes longer to shut down than configured. This is variable and the shutdown seems to be held up by background processes that are running. I also observed that the computer would enter a state where the OS thinks it is in sleep mode, requiring a key press to wake the monitors but with the computer still running (fans powered up.) Every once in a while, it will be in a mode where a keypress will wake the computer, it accepts input and performs actions, then it suddenly goes to sleep. I got as far as checking for background processes and determining this is not a strictly hackintosh issue (sorry can’t locate the page.)
Normally the Radeon 6850 cards use the Duckweed framebuffer. I previously found a post with a link to the code Chameleon uses to set the framebuffer. The code is using the Subsystem Vendor ID and Subsystem ID to set the framebuffer. For this card the numbers are Subsystem Vendor ID of 0x1458 and Subsystem ID of 0x21f8. (These are different values than the Vendor and Device ID seen in the System Report. The System Report has a Vendor of x1002 for ‘ATI’ and Device ID x6739 for ‘Radeon 6850’. I believe the Subsystem Vendor ID for this card represents ‘Gigabyte’ and Subsystem ID represents ‘GV-R685OC-1GD’.) In the code I saw, for every other combination of Subsytem numbers for the ATI 6850 the frambuffer assigned is Duckweed. However for this card it is Bulrushes. I didn’t create a bookmark to either page when I found them, but instead rebooted and tested the ‘AtiConfig=Duckweed’ setting on my test ML install, and haven’t been able to find the posts again, so can’t refer to them. The other thing about this card from when I originally chose to purchase it, the reports were that only the DVI ports were working in SL. With a SL point rev (some 10.6.x release) it became one DVI port and the DisplayPort were functional. This is the way I used the card, and continued to use it. At some point after I last updated it on my system (prior to the ML install) Chameleon was changed for this card to use the Bulrushes framebuffer (probably to try and support HDMI) in that the only way I can use the current Chameleon with 10.6.8 is to specify ‘AtiConfig=Duckweed’ on boot. This is mostly speculation on my part.
The Mountain Lion installer has a bug (in my opinion) involving at least some of the ATI kext files. When the above steps are followed, after ML has been installed the ATI6000 kext file is then installed to S/L/E using a tool. The installer (KextBeast) handles the fact that there is already a file there. However, if before you replace it you look in the S/L/E ATI6000Controller Contents folder you would see that there is neither an Info.plist nor version.plist present. (These ATI Controller kexts always have these two plist files present.) I found this when I was unable to get ML to install and run and tracked the source of this down in an effort to fix my problem. If you open the ML installer with Pacifist and then search for ATI6 you will find that there are 2 (two!) sets of ATIxxxxController.kext files present in the installer and 3 (three!) bundles of ATI files present all with some overlap (by name) in the files they contain. In examining the two ATI6000Controller kexts in the installer one has the plist files and one does not. Apparently if an ATIxxxxController file is not present on the boot media during the install, then the installer either changes the file it installs or was copying the file from the OS it was booted from and defaults to copy the wrong bundle of files when the file is not present on the boot media. (In one of the bundles none of the ATIxxxxController files has plist files.) If the correct file was installed by the ML installer it would not be necessary to reboot with GE=N after the ML install to put the file in place. Instead we could have booted with AtiConfig=Duckweed and continued on with MultiBeast run and editing boot plist file.
The things that I have tested and are working are:
- Dual monitors using the DVI-I and Display port
- Wired USB Keyboard and Mouse
- Bluetooth Magic Mouse (post installation)
- Sleep / Wake (see notes at end)
- Network
- Audio through the Analog front and rear panel
This install was done with the (at the time) latest versions of the software. These were:
Mac OS X 10.8.5 prior to release of the ‘Supplemental Update’
Unibeast 2.1.1
MultiBeast 5.5.2
The 10.8.5 release of Mountain Lion introduced some change to USB so that a DSDT file is required for USB to be available in the installer. Instructions to work around this are in this guide. I suspect this issue will apply to most 1156 and/or P55 motherboards.Unibeast 2.1.1
MultiBeast 5.5.2
There is an edit required to have sleep work correctly. Instructions are in this guide.
Lets get started.
- Use the tonymac guide through Step 2 to create your bootable USB drive with the ML installer. A couple of notes:
- Follow the link in the guide and check your BIOS settings. I went from 10.6, which supported the 32 bit HPET setting (which I had selected,) but 10.8 only supports a 64 bit HPET setting.
- Make note of your Firmware version. I had an old note with the wrong version written down.
- When selecting the options for Unibeast select both 10.8 and “Legacy USB support”. When checking Legacy USB, the 10.8 selection is unchecked.
- Download from the DSDT database the DSDT file appropriate for your Motherboard and BIOS version. It must be placed somewhere other than the drive/partition you are going to install onto. (I put it on USB in a folder ‘Tools’ retaining the full name.) You are going to need this file now and after the ML install completes.
- Download from the downloads area the latest MultiBeast. Again place it somewhere other than the drive/partition you are going to install onto. (I put it into the same directory on USB as the DSDT file.)
- Download either “KextBeast” or “Kext Wizzard” and place it into the same location as MultiBeast.
- Make a new directory ‘Extension Backup’ on USB.
- After Unibeast finishes and before rebooting and starting the install, a DSDT needs to be installed on USB in the ‘Extra’ folder. This is required to enable the USB ports when running the installer.
- Make all files visible. Open the terminal and enter the command :
Code:defaults write com.apple.Finder AppleShowAllFiles Yes
- Copy the downloaded DSDT file from where you saved it to the (now visible) ‘Extra’ folder on USB. Rename it as “DSDT.aml” (without the quotes.) You may need to use ‘Clean Up’ if one of the folders you made was placed on top of the previously hidden Extra folder.
- Make all files visible. Open the terminal and enter the command :
- In order to install ML using a Radeon 6xxx video card, the controller kext for it must be removed from the USB System/Library/Extensions folder. You must retain a copy of it (due to a ML installer bug) and place it into the system you installed after the install.
- On USB, open the System folder in a new window by pressing the Command key and double clicking the System folder. In the new window navigate to the Library folder then the Extensions folder.
- Drag the file ATI6000Controller.kext from the Extensions folder to the ‘Extension Backup’ folder in the USB window. This will remove it from the Extensions folder.
- Change the moved file to always be visible. (This saves additional steps later.) In the USB window open the ‘Extension Backup’ folder. In the terminal type the command:
Code:
chflags -R nohidden
- If you are going to retain the current OS, you can clear the unhide command. In the terminal enter the command:
Code:defaults write com.apple.Finder AppleShowAllFiles No
- Install Mountain Lion. Follow the tonymac guide Step 3. At the Chimera boot screen enter:
Code:
GraphicsEnabler=No
- After the install completes, the installer will reboot your computer. Again use an F key (F12) to select USB-HDD as your boot device. At the Chimera boot screen select Mountain Lion (or whatever you named the install disk) and enter:
Code:
GraphicsEnabler=No
- Enable full Radeon functionality by installing the saved ATI file. Use either KextBeast or Kext Wizzard to install the file.
- If using “KextBeast” - drag the file “ATI6000Controller.kext” from the folder where you saved it to your desktop. Run “KextBeast” selecting the option to rebuild the kext cache.
- If using “Kext Wizzard” – drag the file “ATI6000Controller.kext” from the folder where you saved it to the ‘Install’ window of the program. The select the System/Library/Extension option to ‘Rebuild cache’.
- Restart your computer. Again use an F key (F12) to select USB-HDD as your boot device. At the Chimera boot screen select Mountain Lion (or whatever you named the install disk) and enter:
Code:
AtiConfig=Duckweed
- Verify that QE/CI Graphics Acceleration is properly functioning (Determine Utilization section.)
- With graphics functioning and if you are adventurous, you can now run Migration Assistant to copy your user(s) over. If you select some option (I don’t know which one) you end up with an ‘Extra’ folder on you new OS drive. If you do, place it in the trash before running MultiBeast. (I make no guarantees using Migration Assistant will not move something else unique to Hackintoshes that will cause a problem.)
- With graphics functioning, use MultiBeast to install the remaining pieces then edit the Boot .plist as required.
- Copy the downloaded DSDT file from where you saved it to your desktop. Rename it as “DSDT.aml” (without the quotes.)
- Run MultiBeast. I use a minimal number of items with this motherboard:
- UserDSDT
- Drivers -> Audio -> Realtek ALC8xx -> With DSDT -> ALC889a/885
- Drivers -> Disk -> IOAHCIBlockStorageInjector
- Drivers -> Network -> Realtek – Lnx2Mac’s Realtek installer
- Bootloaders -> Chimera v2.2.1 r2248
After MultiBeast completes and before you start with Lnx2Mac’s installer (which ends with a reboot required) a few edits of the boot .plist file are required. If you end up rebooting before making the edits, use the last boot procedure entering “AtiConfig=Duckweed” at the Chimera boot screen. - In the Finder open preferences and in the General tab ‘Show these items on the desktop’ area check the ‘Hard Disks’ box. This was the only way I have found to navigate the Finder to the root of the boot disk.
- On your Mountain Lion (or whatever you named it) drive, open the ‘Extra’ folder. Edit the file org.chameleon.Boot.plist by double clicking it, which should open TextEdit.
- Locate the line with “<key>GraphicsEnabler</key>” and after the line that follows it (which should be “<string>Yes</string>”) add the 2 lines:
Code:
<key>AtiConfig</key> <string>Duckweed</string>
- Locate the line “<key>Kernel Flags</key>” and edit the line that follows it to be:
Code:
<string>darkwake=8</string>
- Save the file.
- Locate the line with “<key>GraphicsEnabler</key>” and after the line that follows it (which should be “<string>Yes</string>”) add the 2 lines:
- Close all open Finder windows (not required, just visual.)
- Complete Lnx2Mac’s Realtek install (if selected.)
- Restart (if not done by Lnx2Mac install.) If necessary use an F key to configure your BIOS to boot off the disk you just installed the Chimera bootloader on. No boot options need to be entered and your Hackintosh should be functional. If you installed Chimera on a different disk than the OS, you will have to select the disk to boot from.
- Once booted, in ‘System Preferences’ in the ‘Energy Saver’ area, make sure ‘Start up automatically after a power failure’ is checked. This is required so on wake from sleep the OS is running instead of a reboot being started. Memory says this is from an old guide somewhere.
I followed the above steps to install 10.8.5 before the ‘Supplemental Update’ was created for the OS. In checking, it looks like the update was rolled into the 10.8.5 installer. If so, I don’t expect it will change the steps presented here.
I based the Radeon 6xxx workaround steps on ReneKnaake’s prior posting.
I based the DSDT workaround (putting it in Extras on the install USB stick) on kurosagi’s prior post. Also an example of the combined Radeon/DSDT fix by kurosagi is further down in the thread, which I used as well.
I based the darkwake setting to fix sleep on posted research by NeXTguy. In my testing there was no noticeable difference between using a value of 8, 9, 10, or 11. I chose 8 as it has the most overlap with the setting used on prior OS’ (10.7, 10.6.)
This setup has one issue where booting with -x flag (safe mode) requires extra steps due to the 6xxx issue. With the ATI6000 kext files installed, booting with -x causes the system to boot to a grey screen. In this mode I was able to reboot the computer using Command-Control-Power Button indicating some or most of the OS is working. (I have a keyboard with a ‘Power’ button that is recognized by the OS.) I did not determine a solution to this, but to boot in safe mode it will probably require first booting to a different partition, removing the file “ATI6000Controller.kext” from the System/Library/Extensions folder of the partition you want to boot in safe mode, booting the partition in safe mode, then once you are done, put the extension back in place.
Sleep is working almost as well as it did for me in 10.6.8. In my testing I was able to put the computer to sleep using the Apple menu item or selecting sleep using the power key menu. Wake always brought the system up fully functional in 1 or 2 seconds with either a single wired mouse click, a Bluetooth Mighty Mouse click, or a keyboard key press. Multiple sleep and wake cycles produced no problems. The one “sub-optimal” functioning is automatic sleep due to inactivity. In my testing the monitors go to sleep exactly after the amount of idle time configured. However, the computer takes longer to shut down than configured. This is variable and the shutdown seems to be held up by background processes that are running. I also observed that the computer would enter a state where the OS thinks it is in sleep mode, requiring a key press to wake the monitors but with the computer still running (fans powered up.) Every once in a while, it will be in a mode where a keypress will wake the computer, it accepts input and performs actions, then it suddenly goes to sleep. I got as far as checking for background processes and determining this is not a strictly hackintosh issue (sorry can’t locate the page.)
Normally the Radeon 6850 cards use the Duckweed framebuffer. I previously found a post with a link to the code Chameleon uses to set the framebuffer. The code is using the Subsystem Vendor ID and Subsystem ID to set the framebuffer. For this card the numbers are Subsystem Vendor ID of 0x1458 and Subsystem ID of 0x21f8. (These are different values than the Vendor and Device ID seen in the System Report. The System Report has a Vendor of x1002 for ‘ATI’ and Device ID x6739 for ‘Radeon 6850’. I believe the Subsystem Vendor ID for this card represents ‘Gigabyte’ and Subsystem ID represents ‘GV-R685OC-1GD’.) In the code I saw, for every other combination of Subsytem numbers for the ATI 6850 the frambuffer assigned is Duckweed. However for this card it is Bulrushes. I didn’t create a bookmark to either page when I found them, but instead rebooted and tested the ‘AtiConfig=Duckweed’ setting on my test ML install, and haven’t been able to find the posts again, so can’t refer to them. The other thing about this card from when I originally chose to purchase it, the reports were that only the DVI ports were working in SL. With a SL point rev (some 10.6.x release) it became one DVI port and the DisplayPort were functional. This is the way I used the card, and continued to use it. At some point after I last updated it on my system (prior to the ML install) Chameleon was changed for this card to use the Bulrushes framebuffer (probably to try and support HDMI) in that the only way I can use the current Chameleon with 10.6.8 is to specify ‘AtiConfig=Duckweed’ on boot. This is mostly speculation on my part.
The Mountain Lion installer has a bug (in my opinion) involving at least some of the ATI kext files. When the above steps are followed, after ML has been installed the ATI6000 kext file is then installed to S/L/E using a tool. The installer (KextBeast) handles the fact that there is already a file there. However, if before you replace it you look in the S/L/E ATI6000Controller Contents folder you would see that there is neither an Info.plist nor version.plist present. (These ATI Controller kexts always have these two plist files present.) I found this when I was unable to get ML to install and run and tracked the source of this down in an effort to fix my problem. If you open the ML installer with Pacifist and then search for ATI6 you will find that there are 2 (two!) sets of ATIxxxxController.kext files present in the installer and 3 (three!) bundles of ATI files present all with some overlap (by name) in the files they contain. In examining the two ATI6000Controller kexts in the installer one has the plist files and one does not. Apparently if an ATIxxxxController file is not present on the boot media during the install, then the installer either changes the file it installs or was copying the file from the OS it was booted from and defaults to copy the wrong bundle of files when the file is not present on the boot media. (In one of the bundles none of the ATIxxxxController files has plist files.) If the correct file was installed by the ML installer it would not be necessary to reboot with GE=N after the ML install to put the file in place. Instead we could have booted with AtiConfig=Duckweed and continued on with MultiBeast run and editing boot plist file.