Happy New Year!

Thanks for making the first month and a half of this blog a great success and a lot of fun! I'm so glad to help everyone out as much as I can. It's been fun to figure out solutions for some trickier issues, and to hear about your successes and trials installing and tweaking your Hackintoshes.

I'm happy to announce that the GA-P55-UD3L, the final missing Gigabyte DSDT has been edited and uploaded to the DSDT Database. Let's get working on those other boards!

Have a happy and safe New Year, and see you in 2010!

-tonymacx86

Tweaking Your System: Get Rid of PlatformUUID.kext

After establishing a working system with all components functioning, some advanced users begin to try to make their Hackintosh as 'Vanilla' as possible. This quest, an attempt to get the hard drive clean of all edited kexts is an ongoing one, especially for the new P55 boards. Besides the warm fuzzy feeling of having a cleaner more Mac-like experience, there are advantages to doing this. Theoretically you could swap out the hard drive with a real Mac, by installing Chameleon and your /Extra folder to the GUID partition format's 200mb EFI partition. This will be covered in an upcoming guide. Or you can make your system safeguarded against any potentially damaging Apple Update by removing any non-vanilla kexts. Suffice to say, a cleaner more streamlined OS X installation is attractive to most users.

So we've already begun the process of enabling all CPU functions and system components using DSDT edits. Recent tweaks of the new Chameleon 2.0 RC4 bootloader have unearthed a way to establish your system's UUID without the use of PlatformUUID.kext. Normally without this kext, you can't use Time Machine and Superduper! without getting Universal Unique Identifier disk errors. Also, every time you start iTunes it acts like you've never started it before- and gives you the EULA to agree to.

One of the latest forks of the Chameleon 2.0 RC4 bootloader by Insanelymac user rekursor establishes a hack that will let you get rid of PlatformUUID.kext once and for all.
  1. Download the edited Chameleon 2.0 RC4 source by rekursor here.
  2. Navigate to the sym folder and locate the boot file. It's 324kb.
  3. Replace the boot file at the root / of your Snow Leopard installation with this new modified one.
  4. Open Utilities/Disk Utility.
  5. Right click on your Snow Leopard installation in the left column and choose Information.
  6. Check to see what your hard drive's UUID is under Universal Unique Identifier. Mine is C0CE2600-93D7-3B41-843A-4D7C8E2C12E2. Write this number down or copy/paste it to a new text file.



  7. Open your com.apple.Boot.plist in TextEdit or Property List Editor. It should be located in /Extra.


  8. Add the SystemID key and string as shown in the above photos.
  9. Save your com.apple.Boot.plist.
  10. Remove PlatformUUID.kext from /Extra/Extensions.
  11. Rebuild your Extensions.mkext cache by dragging /Extra/Extensions to Kext Utility
  12. Reboot.
Enjoy your somewhat shorter list of extra kexts! This version of the Chameleon 2.0 RC4 incorporates some of the GraphicsEnabler features of netkas' PC-EFI 10.5 fork for more advanced cards. If you have tried RC4 without success for your graphics card, now is the time to give it another chance. For more information, check out this post. Special thanks to rekursor! Good luck!

For discussions on this and other topics, register today at tonymacx86.com!

Enable Full Graphics Card Acceleration: ATI and nVidia

When installing and tweaking your Hackintosh, one the first things to do is enablie the full power of your graphics card. Apple's OS X uses Quartz Extreme and Core Image (QE/CI) technologies as foundations in the operating system, which if aren't enabled, leave the user with graphics artifacts, mouse tearing, inability to change resolutions, and bad refresh rates. You may have graphics at boot, but here are 2 ways you can check to see if your card is fully accelerated.
  1. Open Front Row. If it opens and is functional, QE/CI are enabled.
  2. Open Dashboard and add a widget. If you see cool ripples, QE/CI are enabled.
There are 5 major ways, and probably more I don't know about, to enable full graphics acceleration on Hackintoshes. At boot time, each one will inject your card information and force OS X to identify it. Your chosen method will probably depend on what hardware you use, or what works 100% first! If you have an ultra-modern state-of-the-art graphics card, there may be additional tweaks that you have to do... the price you pay for owning the latest and greatest.

Chameleon's GraphicsEnabler=Yes
This is the simplest method to enable your graphics card. It was introduced in Chameleon 2.0, and is probably the most widely used method right now. Edit your com.apple.Boot.plist which is located in /Extra to add the below text. Sometimes it doesn't identify all of the ports on the card, but if you're looking for full acceleration for 1 monitor only, this could be the way to go. It's automatically enabled in the tonymacx86-snowleopard.zip and tonymacx86-P55BootCD.
DSDT
The cleanest and newest method favored by many OSx86 enthusiasts for it's 'vanilla' approach. You add some code to your DSDT, and it auto-identifies your graphics card. You need to view your system's information to edit NVCap values using IORegistry Editor. This tool comes with XCode and should be on your Snow Leopard Retail DVD. If you selected XCode at install, it will be in /Devloper/Applications/Utilities. For an example of the edited code, download this .dsl file, taken from an MSI GD65 motherboard.



EFI String
You can use EFIStudio application to extract your specific card information, or EFI String. Then place that information into your com.apple.Boot.plist. It is also a very clean method involving no edited or additional kexts.


Enabler Kexts
Enabler kexts, like ethernet or audio kexts, are installed either in /Extra/Extensions or /System/Library/Extensions are the oldest used method of identifying graphics cards. Older methods for Leopard included NVInject, NVKush. Lately the most widely used kexts for Snow Leopard is NVEnabler and EVOenabler which both feature 32/64 bit support. NVEnabler injects 2nd display and TV-OUT information better than any method I've used.The downside of this method is that many times Apple's updates break functionality, necessitating users to find a new solution.


Modified Kexts
For troublesome and newer cards, some users must inject device IDs directly into stock system kexts in addition to providing enablers. Specifically the ATI 48xx series and nVidia GTX 2xx cards have proved more difficult to enable. For many solutions, check out netkas' blog.

There are various ways to enable full graphics card acceleration for your Hackintosh. You can probably do 2 or 3 different methods to get to the same place. Some users will tout DSDT modifications over kexts for the sake of keeping the installation more like a real Mac. Others will argue that whatever is functional will suffice. Part of the fun is testing them all out and coming up with your own favorite solution.

If you have any solutions for specific cards, feel free to post them in the comments section. Good luck with your graphics card!

Try Searching OSx86 Sites and Forums for Information on Your Card
If you're interested in seeing what others with your graphics card are doing, type your hardware model into the searchbox below. It will return the best results incorporating specific sites that I recommend. Try it out!

tonymacx86 SEARCH ENGINE
Search across multiple OSx86 sites.

Custom Search

For discussions on this and other topics, register today at tonymacx86.com!

Chameleon 2.0 RC4 Released: P55 Supported by Default


Today, the Chameleon team released Chameleon 2.0 RC4. This is the 4th major update of the Chameleon 2.0 bootloader. The major news for us is that the Nehalem patch has now been made standard, meaning that all P55 Core i5 and Core i7 users can use Chameleon 2.0 RC4's boot file without modifications. Until now, P55 users had to patch their boot file or the system would run about 1.5x too fast.

You can read more about the various changes at the Chameleon site. New functionality has been added to hide partitions from the bootloader, and specify PCI root for your devices. You must add flags to your com.apple.Boot.plist to enable these features.

To test the new bootloader for yourself, download this Chameleon 2.0 RC4 boot file. If you have already installed Chameleon or PC-EFI, simply drop the boot file in the root of your OS X partition. You will not need to change anything else. If you need to install from scratch, use the PC-EFI 10.1 installer located in tonymacx86-snowleopard.zip. Then replace the boot file with this new one. Or you can install all of the new files manually from the Chameleon binaries using this guide.

Good luck and let me know how it goes for you!

For discussions on this and other topics, register today at tonymacx86.com!

Great OSx86 Community Software

There are a ton of great pieces of software that have been developed by the OSx86 community. Some are GUIs for simple Terminal commands, and others are 1 function scripts. The following list includes some my favorite free tools.

Kext Utility
Developer:cVaD

Installs kexts one at a time, and does 'full service' Extensions.mkext creation. The best feature of Kext Utility is its interface to create caches- you simply drag the Extensions folder directly on top of the icon in /Applications folder or Dock.

ShowAllFiles
Developer: Open source script

Handy 1 function script app. ShowAllFiles enables view in Finder of all hidden files. Very useful for locating hidden boot files, mach_kernel, etc... The latest version works in Snow Leopard.

DSDTSE
Developer:EvOSX86 Team

Code editor specifically for DSDT.dsl files. DSDTSE does full service extract/compile of DSDT.aml files. It also features a DSDT editing guide built-in, with copy/pasteable code snippets, color coding, and search functionality.

Kext Helper b7
Developer: delish

The drag n' drop kext installer Kext Helper b7 lets you install multiple kexts at once, and also repairs kext permissions and creates a script to tag cache rebuild.

OSx86Tools
Developer: PCWiz Computer

An all-in-one utility, OSx86Tools installs kexts, kernels, creates and deletes caches, automatically installs EFI boot strings, and much more. Some features such as About This Mac and CPU information editing are buggy in Snow Leopard. Not currently under development.

Pacifist

Developer: Charles Srstka

Not technically an OSx86 community project, but honorable mention goes to the shareware application Pacifist- which allows you to extract OS X Package files to show, download, change and install contents. You can also open Apple Install Discs and URLs.

If any of these pieces of software have helped you, or you have ideas for additions to this list, post in comments. Have fun!

For discussions on this and other topics, register today at tonymacx86.com!

Install OS X Snow Leopard Directly from Retail DVD Using Chameleon Boot CD for P55 Motherboards

NOTE: This guide is not current anymore: iBoot + MultiBeast is the recommended method for installation.

Using Chameleon's cdboot functionality, it's now possible to install OS X Snow Leopard using the actual OS X Snow Leopard Retail DVD! You won't need access to a working install of Mac OS X. All you need is a Chameleon Boot CD- and a SATA CD/DVD drive. The method couldn't be simpler.

STEP 1: INSTALL MAC OS X
You will need to set your BIOS for ACHI and your Boot Priority to boot from CD-ROM first. For details and screenshots, check out this previously posted USB Install Method.

  1. Download and unzip tonymacx86-P55BootCD.iso
  2. Burn to CD.
  3. Restart computer with tonymacx86-P55BootCD
  4. At Chameleon prompt, replace CD with your Mac OS X Install Retail DVD and press F5.
  5. (OPTIONAL) If you have ATI 48xx graphics, type -x. This will boot using safe mode- the only way for you to install currently.
  6. When you get to the installation screen, open Utilities/Disk Utility.
  7. Format your hard drive to Mac OS Extended (Journaled) using the OS X Installer's Disk Utility. For the purposes of this guide, name it Snow Leopard.
  8. Install Mac OS X. If you get an error message at the end of the install- this is normal. Just continue with the guide- if you can't continue, reboot, erase the drive, and try the install again.
STEP 2: MAKE YOUR SNOW LEOPARD DRIVE BOOTABLE
At this point, you have a working install, but you won't be able to boot it without the CD. To make your new installation bootable without the CD, you must install Chameleon and necessary support files to your Snow Leopard drive.
  1. Boot back into tonymacx86-P55BootCD
  2. Select Snow Leopard drive.
  3. Complete OS X Setup Routine.
  4. When you get to the desktop, open tonymacx86-P55BootCD in finder.
  5. Navigate to tonymacx86-snowleopard folder.
  6. Open Apps and open PC EFI 10.1
  7. Select Snow Leopard and click Continue.
  8. Click Install, and then type your password.
  9. Open Applications/Utilities/Terminal
  10. Type: sudo rm /Volumes/Snow\ Leopard/boot and type your password. (this deletes the boot file installed from PC EFI 10.1)
  11. Close Terminal.
  12. Open tonymacx86-snowleopard
  13. Click and drag boot, DSDT.aml, and Extra from tonymacx86-snowleopard to Snow Leopard. NOTE: Check the DSDT Database to find a system-specific DSDT.aml for your motherboard.
STEP 3: INSTALL ADDITIONAL KEXTS TO SYSTEM/LIBRARY/EXTENSIONS
There are a few kexts that you can’t use in /Extra/Extensions. These include Ethernet kexts. Also, you’ll need to create new cache files any time you remove or replace kexts. There are a few invaluable programs to allow you to do these tasks effortlessly. They are Kext Utility and Kext Helper b7. You can do all of the things in Terminal, but these apps make it easy and foolproof.
  1. Open tonymacx86-snowleopard Apps folder.
  2. Drag Kext Utility and Kext Helper b7 to your Applications folder.
  3. Open Kext Helper b7.
  4. Drag RealtekR1000SL.kext (or Intel82566MM.kext if you have an Intel Motherboard) from System – Library – Extensions into Kext Helper b7.
  5. Type your password and click EASY INSTALL.
  6. Close Kext Helper b7.
  7. Open Snow Leopard drive.
  8. Drag /Extra/Extensions folder onto Kext Utility application. (This will repair permissions on the folder, backup your cache file, and replace cache file with an updated one.)
  9. Drag /System/Library/Extensions folder onto Kext Utility application.
  10. Open Applications/Utilities/Disk Utility
  11. Highlight Snow Leopard in the left column.
  12. Click Repair Permissions. You should now have Ethernet access.
STEP 4: UPDATE TO 10.6.2
Upon the release of Mac OS X Snow Leopard 10.6.2, and the 27" Intel Core i5 and i7 iMacs, OS X Snow Leopard supports P55 based systems. The update will install the 10.2.0 Vanilla Kernel, as well as a host of security and stability fixes. Details are available on Apple’s website.
  1. Download the Mac OS X 10.6.2 Combo Update.
  2. Drag your /System/Library/Extensions folder to the desktop. You may need some of the 10.6.0 Extensions later. It’s always good to have a backup before any ‘point’ system update.
  3. Right click and rename the folder 10.6.0 Extensions.
  4. Mount MacOSXUpdCombo10.6.2.dmg
  5. Install MacOSXUpdCombo10.6.2.pkg
  6. Reboot.
You're done! You should now have a stable, fully updated, bootable OS X Snow Leopard installation booting the 64-bit kernel.

OPTIONAL INSTALLS:
The following step is optional- you may now be finished!

STEP 5: ENABLE QUARTZ EXTREME AND CORE IMAGE (QE/CI)
This step is necessary only if you don't have the full power of your graphics card already. By default, the com.apple.boot.plist has GraphicsEnabler=Yes is selected, and should work for most cards. You can test if you have QE/CI enabled by pressing F12 (Dashboard) and trying to add a widget. If you see ripples, you have QE/CI enabled.
This step allows OS X to fully recognize and enable the power of your graphics card, like a driver. If you have an nVidia graphics card, you can also use NVEnabler 64.kext which is located on the tonymacx86-snowleopard folder in System-Library-Extensions. This kext is known to solve issues with TV-out.
  1. Open tonymacx86-snowleopard.
  2. Drag NVEnabler 64.kext from System – Library – Extensions into Kext Helper b7.
  3. Type your password and click EASY INSTALL.
  4. Close Kext Helper b7.
  5. Open Snow Leopard drive.
  6. Drag /Extra/Extensions folder onto Kext Utility application.
  7. Drag /System/Library/Extensions folder onto Kext Utility application.
  8. Open Extra folder
  9. Drag com.apple.boot.plist to desktop.
  10. Double click to open in TextEdit
  11. Remove the GraphicsEnabler=yes line.
  12. Drag the edited com.apple.boot.plist back to Extra folder.
  13. Open Applications/Utilities/Disk Utility
  14. Highlight Snow Leopard in the left column.
  15. Click Repair Permissions.
  16. Restart computer.
The supplied tonymacx86-P55BootCD uses the same files as tonymacx86-snowleopard.zip. This means it has a GA-P55M-UD2 DSDT.aml, all necessary Extensions, the Qoopz 10.6 kernel, and a modified PC-EFI 10.5 cdboot for P55 motherboards. This CD will probably work fine for most P55 boards, but if you have any issues with it, use a system-specific DSDT. You can find a list of working edited DSDTs in the DSDT Database.

To roll your own Chameleon boot CD using custom files, follow these steps.
  1. Download tonymacx86-P55BootCD.iso.
  2. Create a folder in your home directory called newiso.
  3. Copy and paste all contents of tonymacx86-P55BootCD into your new folder.
  4. Navigate in your newiso folder to Preboot.dmg.
  5. Replace files in Extra with your system's DSDT.aml.
  6. Open Terminal.
  7. Type: sudo hdiutil makehybrid -o tonymacx86-P55BootCD.iso newiso/ -iso -hfs -joliet -eltorito-boot newiso/usr/standalone/i386/cdboot -no-emul-boot -hfs-volume-name "tonymacx86-P55BootCD" -joliet-volume-name "tonymacx86-P55BootCD"
There you have it- a system-specific Chameleon Boot CD that will allow you to boot and install OS X Snow Leopard directly from the Retail DVD. The easiest and best way to install OS X Snow Leopard! Props to Chameleon, netkas, Prasys, and the entire OSx86 community for all their hard work on Chameleon Boot CD development. Good luck!

-tonymacx86

PS: If you want to enable the Apple Boot Screen on startup, read this post:
http://tonymacx86.blogspot.com/2009/11/enable-apple-boot-screen.html

TROUBLESHOOTING TIPS
For troubleshooting tips and general recommendations, I've created this topic in the forum. Make sure you've reviewed all of these!
http://www.tonymacx86.com/viewtopic.php?f=3&t=524

For discussions on this and other topics, register today at tonymacx86.com!

Enable High Definition Audio on P55 Motherboards

Enabling High Definition Audio (HDEF) on your Hackintosh can be accomplished a number of different ways. My personal preference is to modify DSDT.aml with hardware-specific information, and install a LegacyHDA.kext in /Extra/Extensions. You must replace all references of AZAL in your DSDT with HDEF, then insert code that references your specific ins and outs.
Alternately, a solution that works for many people is to use HDAEnabler.kext combined with a modified AppleHDA.kext. There are drawbacks to this solution, as each time Apple pushes an update, Apple's AppleHDA.kext is overwritten, and will have to be replaced in System/Library/Extensions.
The most universal audio fix is VoodooHDA.kext- it is an enabler which at startup uses brute force to probe your system and get any kind of audio output. Most often it is not optimized, and can leave you with audio artifacts, stuttering, volume issues and popping sounds.

I added a new set of DSDT fixes to tonymacx86-DSDT-fixes.zip with instructions on how to enable the HDEF fix in DSDT.aml to use a LegacyHDA.kext. I also optimized each DSDT in the DSDT Database to include hardware-specific HDEF fixes. Good luck!

NOTE: Here are the currently recommended LegacyHDA.kexts for P55 motherboards. For use in combination with HDEF DSDT edits.
Legacy888bHDA.kext.zip
Legacy888HDA.kext.zip
Legacy889HDA.kext.zip
Legacy889aHDA.kext.zip


For discussions on this and other topics, register today at tonymacx86.com!

DSDT Database for P55 Motherboards

NOTE: The DSDT Database has been redesigned, expanded and relocated to tonymacx86.com/dsdt

For discussions on this and other topics, register today at tonymacx86.com!

Advanced DSDT Fixes: Enable Native Intel SpeedStep on P55 Motherboards

NOTE: This guide is somewhat outdated- in order to enable SpeedStep for Core i5 750 and Core i7 860, all you need to do is use iMac11,1 smbios.plist.  It's available in Multibeast.  

By adding correct SSDT.aml code to your DSDT, you can enable the native Intel SpeedStep technology of your CPU in Mac OS X. According to Wikipedia, "SpeedStep is a trademark for a series of dynamic frequency scaling technologies (including SpeedStep, SpeedStep II, and SpeedStep III) built into some Intel microprocessors that allow the clock speed of the processor to be dynamically changed by software. This allows the processor to meet the instantaneous performance needs of the operation being performed, while minimizing power draw and heat dissipation."

This is not a necessary fix, but you can gain noticeable power savings and/or performance gains. This fix may also extend the life of your hardware by enabling OS X to use advanced features that your Intel CPU was made for.

I added a new set of edits to the tonymacx86-DSDT-FIXES.dsl with speedstep information for the Core i5 750 and Core i7 860. Simply download the updated tonymacx86-DSDT-FIXES.zip, search for SpeedStep, and you'll find code additions for your CPU. You can copy and paste the CPU information from there. The example P55M-UD2 DSDT included has SpeedStep fixes, as well as every other edit that is referenced.

If you're feeling adventurous, you can check the values of your own CPU and make the edits yourself. The easiest way to view this information is to-open DSDTSE, go into the sidebar, and choose SSDT.aml, For example, the edits are made as in the pictures below. The left hand code is from the UD2 SSDT.aml, and the fixed code is on the right. You can then see the values to use when editing. Use the DSDT-FIXES guide for the rest of the code block.


You can check to see if your DSDT is working correctly by using the free application MSR Tools. In order for it to run, you must start up Snow Leopard in 32-Bit mode. Restart your computer, pause the Chameleon countdown and type arch=i386. Download it here.

WARNING: Improper use of SpeedStep code in your DSDT can cause major problems with your system including hardware damage and failure. Again, you do not need to do this fix for a stable system. If you're having any issues, take the SpeedStep code out immediately and reboot. Also, do NOT overclock with SpeedStep- it's known to cause performance decreases. Use with care!

Special thanks to the Insanelymac P55 Thread for the Core i7 edits!

SPEEDSTEP EXAMPLES: Due to popular demand, here is a zip of 2 versions of the GA-P55M-UD2 DSDT- 1 with Core i5 750 SpeedStep and the other with i7 860 SpeedStep. Use these as an example to modify your own DSDT, or if you have a GA-P55M-UD2, you can use this, but be sure to use the correct version! Have fun!
tonymacx86 DSDT-P55M-UD2 - SpeedStep

For discussions on this and other topics, register today at tonymacx86.com!

Advanced DSDT Fixes: Enable Sleep on P55 Motherboards

This guide assumes you have done the previously posted DSDT guide, Create and Modify Your DSDT.aml

If you have managed to extract and edit your own DSDT already, and have applied DGTP and CMOS Reset fixes, then you're ready for this guide. If you properly edit your DSDT to make these changes, you can:
  • Enable Sleep without the use of SleepEnabler.kext
  • Remove IOAHCIBlockStorageInjector.kext & NullCPUPowerManagement.kext from /Extra/Extensions.
  • Enable your Hackintosh to recognize your USB devices as Built-In.
  • Enable your Hackintosh to recognize your Intel SATA devices as Built-In.
If you own a GA-P55M-UD2, you're in luck! I've already made all of the edits. You can use my DSDT! The attached DSDT.aml has fixes applied for CMOS Reset, HDEF (for use with LegacyHDA_ALC888B, UHCI/EHCI, SATA, HPET, and SMBUS. I wouldn't recommend using my DSDT on your non-Gigabyte Motherboard, but the corrections that you make should be very similar in all P55 boards.

FORMAT FOR TEXT BASED FIXES
Because DSDT editing is text/code based, I created a tonymacx86-DSDT-FIXES.dsl file that you can open and copy/paste from in DSDTSE. You can also open it in any standard text editor, but you won't be able to copy/paste multiple lines. Copying from standard text files or web pages inserts hidden characters, making the DSDT.aml unable to compile.

METHOD FOR DSDT EDITING
  1. Download the latest version of DSDTSE
  2. Download tonymacx86-DSDT-FIXES.zip
  3. Open DSDTSE.
  4. Open your DSDT.aml file.
  5. Your DSDT.aml will decompile into an editable DSDT.dsl and open in the editor.
  6. Open tonymacx86-DSDT-FIXES.dsl
  7. Search for the first part of the code you're attempting to edit, i.e. _WAK or HPET.
  8. Scan down your DSDT to make changes as referenced in the each example.
  9. When you are finished making changes, click Tools and choose Compile.
  10. If you don't get any errors, click Tools and choose DSDT files folder.
  11. Your DSDT files folder (/Library/Application Support/EvOSoftware/DSDT) will open in Finder. Helpful Hint: you can pull this folder into the sidebar to bookmark it.
  12. Copy your dsdt.aml.
  13. Paste your dsdt.aml into the root / of your hard drive.
  14. Capitalize DSDT.aml
  15. Remove IOAHCIBlockStorageInjector.kext, NullCPUPowerManagement.kext from /Extra/Extensions.
  16. Drag /Extra/Extensions to Kext Utility.
  17. Make backups of your working/test DSDT and restart.
tonymacx86-DSDT-FIXES.zip includes tonymacx86-DSDT-FIXES.dsl and my latest GA-P55M-UD2 DSDT.aml utilizing all of the following fixes plus HDEF which I leave out for an upcoming guide on LegacyHDA.
  • 00 - Add DTGP (Need for all Fixes)
  • 01 - Fix CMOS reset
  • 02 - Edit USB UHCI/EHCI - Part 1 (Enables Sleep & USB Ports Built In)
  • 03 - Edit USB UHCI/EHCI - Part 2 (Enables Sleep & USB Ports Built In)
  • 04 - Edit IDE (SATA) (Enables SATA ports Built-In and Internal)
  • 05 - Edit PIC, TMR and HPET (Enables you to get rid of extra kexts)
  • 06 - Add SBUS (Need for Sleep)
A few words about DSDTSE. I've had some issues opening this program up- I've had an error come up and the program shut down on launch. Something about Nil Exception. You need to launch it from another location. Just keep trying if you get an error- it's not the program, it's the location. The reason I use it is because it's hands down the best tool out there for editing DSDTs. Got to give it up to The Evosx86 Team for making such an awesome app.

Your /Extra/Extensions folder now should only contain:
EvOReboot.kext
fakesmc.kext
JMicronATA.kext
LegacyHDA_ALC888B.kext
PlatformUUID.kext

Good luck and have fun editing! Feel free to post links to fully updated and sleep compatible DSDTs for review- it would be great to have a collection of them all in one place. I'll keep researching and doing fixes for my specific board and adding them to this site.

Special thanks to The Evosx86 Team for DSDTSE, The Insanelymac P55 Thread and Rekursor and Bansaku's GA-P55-UD3R DSDT edits.

-tonymacx86

EDIT:
To enable sleep, make sure to remove the necessary kexts and check all of the checkboxes in System Preferences/Energy Saver as shown in the picture below.



For discussions on this and other topics, register today at tonymacx86.com!

Chameleon Documentation

I can't say enough great things about the Chameleon bootloader. One thing that I had some trouble finding at first was any documentation to accompany it. A lot of valuable information is supplied in the Doc folder if you download the source code of Chameleon RC3. Mostly it tells users how to set boot flags and advanced startup options to enable different functionality.

You can use these options from the Chameleon bootloader itself when starting up your machine. Stop the Chameleon countdown and type the command at the boot prompt. If you want any of the options to be selected by default, you must enter them into your com.apple.boot.plist- in your /Extra folder. Simply drag this file to the desktop, open and edit in TextEdit, then drag back to /Extra.

The following text is taken from the Chameleon documentation provided in the source folder available on http://chameleon.osx86.hu/ I edited and clarified where necessary.

The boot: prompt waits for you to type advanced startup options. If you don't type anything, the computer continues starting up normally. It uses the kernel and configuration files on the startup device, which it also uses as the root device.

Advanced startup options use the following syntax:
[device] [arguments]

Example arguments include:
device: rd= (e.g. rd=disk0s2)
device: rd=* (e.g. rd=*/PCI0@0/CHN0@0/@0:1)
kernel: kernel name (e.g. "mach_kernel" - must be in "/" )

flags:
-v (verbose)
-s (single user mode)
-x (safe mode)
-F (ignore boot configuration file)

"Graphics Mode"="WIDTHxHEIGHTxDEPTH"
(e.g. "1024x768x32")

kernel flags
(e.g. debug=0x144)

io=0xffffffff
(defined in IOKit/IOKitDebug.h)

Example:
mach_kernel rd=disk0s1 -v "Graphics Mode"="1920x1200x32"

If the computer won't start up properly, you may be able to start it up using safe mode. Type -x to start up in safe mode, which ignores all cached driver files.

Special booter hotkeys:
F5
Rescans optical drive.

F10
Scans and displays all BIOS accessible drives.

Special booter commands:
?memory
Displays information about the computer's memory.

?video
Displays VESA video modes supported by the computer's BIOS.

?norescan
Leaves optical drive rescan mode.

Additional useful command-line options:
config=
Use an alternate Boot.plist file.

Options useful in the com.apple.Boot.plist file:
Wait=Yes|No
Prompt for a key press before starting the kernel.

"Quiet Boot"=Yes|No
Use quiet boot mode (no messages or prompt).

Timeout=8
Number of seconds to pause at the boot: prompt.

"Instant Menu"=Yes
Force displaying the partition selection menu.

"Default Partition"=hd(x,y)
Sets the default boot partition,Where 'x' is the disk number, 'y' the partition number.

GUI=No
Disable the GUI (enabled by default).

"Boot Banner"=Yes|No
Show boot banner in GUI mode (enabled by default).

"Legacy Logo"=Yes|No
Use the legacy grey apple logo (disabled by default).

GraphicsEnabler=Yes|No
Automatic device-properties generation for graphics cards.

VideoROM=
Use an alternate ROM image (default path: /NVIDIA.ROM).

VBIOS=Yes|No
Inject VBIOS to device-properties.

EthernetBuiltIn=Yes|No
Automatic "built-in"=yes device-properties generation for ethernet interfaces.

USBBusFix=Yes
Enable the EHCI and UHCI fixes (disabled by default).

EHCIacquire=Yes
Enable the EHCI fix (disabled by default).

UHCIreset=Yes
Enable the UHCI fix (disabled by default).

Wake=No
Disable wake up after hibernation (enbaled by default).

ForceWake=Yes
Force using the sleepimage (disabled by default).

WakeImage=
Use an alternate sleepimage file. (default path is /private/var/vm/sleepimage).

DropSSDT=Yes
Skip the SSDT tables while relocating the ACPI tables.

DSDT=
Use an alternate DSDT.aml file. (default path: /DSDT.aml /Extra/DSDT.aml)

SMBIOS=
Use an alternate smbios.plist file. (default path: /smbios.plist /Extra/smbios.plist bt(0,0)/Extra/smbios.plist).

SMBIOSdefaults=No
Don't use the Default values for SMBIOS overriding. If smbios.plist doesn't exist, factory values are kept.

"Scan Single Drive"=Yes|No
Scan the drive only where the booter got loaded from. Fix rescan issues when using a DVD reader in AHCI mode.

Rescan=Yes
Enable CD-ROM rescan mode.

"Rescan Prompt"=Yes
Prompts for enable CD-ROM rescan mode.

I hope this helps clear up some questions you might have had about using Chameleon!


For discussions on this and other topics, register today at tonymacx86.com!

Enable the Apple Boot Screen


By default, the installation guides on this site put the -v (verbose) boot flag into your com.apple.boot.plist that is located in /Exra. The reason I did this is so that you can watch as the system boots and debug. If you are done with tinkering with kexts, and have your system running 100%, you may want your Hackintosh to look more like a real Mac starting up. Simply drag your com.apple.boot.plist to the desktop, open it in TextEdit and remove the -v flag from the Kernel Flags string. Then put the file back into /Extra and reboot.

NOTE: By default, Chameleon uses an updated shiny Apple logo. To make the boot screen look like the above photo, insert the string Legacy Logo=Yes into your com.apple.boot.plist.

TO SET/CHANGE RESOLUTION: Add your desired resolution to your /Extra/com.apple.boot.plist:



For discussions on this and other topics, register today at tonymacx86.com!

Dual Boot Windows 7 and OS X Snow Leopard Using Chameleon

Using Chameleon as your bootloader, you can boot an infinite amount of operating systems on your PC. It's simple to use a separate hard drive for each operating system.
  1. Install multiple operating systems on separate hard drives.
  2. Go to CMOS Setup Utility and choose Advanced BIOS Features.
  3. Select Hard Disk Boot Priority.
  4. Move your Chameleon OS X hard drive to top of list.
  5. Boot into Chameleon and choose your Operating System.
The following guide will show you how to put OS X Snow Leopard and Windows 7 on the same hard drive. You can then use Chameleon to select either Snow Leopard or Windows 7 at boot time. It's a bit trickier, as the Windows installer will set itself as the active partition automatically. You have to manually set the OS X partition active at the end of the process.   UPDATE: The latest MultiBeast will take care of choosing boot0hfs instead of boot0 to automatically boot from hfs partition, even if it's inactive.  

STEP 1: PREPARING THE DRIVE
First thing to do is format and partition the hard drive. When you choose 2 partitions with a GUID Partition Table, OS X will format the drive with 3 partitions. Partition 1 is EFI, Partition 2 will be Snow Leopard and Partition 3 will be Windows 7. The EFI partition is a very small (200mb) hidden partition that holds the OS X bootloader and BIOS information on a real Mac. In a separate guide, I'll show you how to install Chameleon to the EFI partition to leave an OS X install untouched. For now, just know it's installed by default and labeled Partition 1.
  1. Boot into your existing OS X installation.
  2. Open Applications/Utilities/Disk Utility
  3. Select your hard drive in the left column.
  4. Click the Partition tab
  5. Under Volume Scheme: separate your hard drive into 2 Partitions. You can make them any size you want.
  6. Click Options... choose GUID Partition Table, then click OK.
  7. Click Untitled 1. Under Name: type Snow Leopard. Under Format: choose Mac OS Extended (Journaled).
  8. Click Untitled 2. Under Name: type Windows 7. Under Format: choose MSDOS (FAT).
  9. Click Apply and close Disk Utility.
  10. Insert Windows 7 DVD in tray.
  11. Unplug all hard drives except this one and reboot.
STEP 2: INSTALL WINDOWS 7
Now you will install Windows 7 to Partition 3. You'll have to reformat it to NTFS in the Windows 7 installer before Windows will let you install. We labeled it Windows 7 in the previous step.
  1. Wait for Windows to begin installation process.
  2. Accept license agreement.
  3. At Which type of installation do you want, choose Custom (Advanced)
  4. At Where do you want to install Windows, choose Partition 3: Windows 7.
  5. Click Drive options (advanced).
  6. Click format.
  7. Click OK.
  8. Click Next.







At this point, Windows 7 will install to Partition 3. The installer will reboot the computer a few times- just leave it until you complete the installation process and see the Windows desktop.

STEP 3: INSTALL SNOW LEOPARD
The next step is to install Snow Leopard to Partition 2.

iBoot + MultiBeast - Install OS X on any Intel-based PC

STEP 4: SET THE OS X PARTITION AS ACTIVE (NOT NECESSARY)  UPDATE: The latest MultiBeast will take care of choosing boot0hfs instead of boot0 to automatically boot from hfs partition, even if it's inactive.  

You now have to set the Snow Leopard partition so that your computer boots from it first. Therefore, Chameleon loads and you can select either Snow Leopard or Windows 7. You will have to issue a few commands to Terminal in order to accomplish this task.
  1. Open Applications/Utilities/Terminal.
  2. Type diskutil list
  3. Write down the IDENTIFIER of your Apple_HFS Snow Leopard drive. For this example: disk0s2.
  4. Type sudo -s
  5. Enter your password.
  6. Type fdisk -u /dev/rdisk0 
  7. Type y
  8. Type fdisk -e /dev/rdisk0
  9. Type p
  10. Type f 2
  11. Type w
  12. Type y
  13. Close Terminal and reboot.
Unplug all drives except the dual boot drive and restart. You should now be able to boot directly into Chameleon, stop the boot countdown and select either Snow Leopard or Windows NTFS as shown in the picture below.


Thanks for reading and I hope it worked for you! Special thanks goes out to the entire OSx86 Hackintosh community! This guide was cobbled together from various sources- I did not invent this method, and do not wish to take any credit beyond putting it into plain English. ;) As always, if you have any issues, post a comment and I'll try my best to help you out any way I can.

-tonymacx86

For discussions on this and other topics, register today at tonymacx86.com!

Create a Chameleon Boot USB Drive

A good thing to have if you're updating or changing your Hackintosh is a Chameleon boot USB drive. It is a USB drive or key that has nothing on it but the Chameleon bootloader- therefore it can be a cheap 512mb or 1gb drive! You can always boot directly from it in case your install or update doesn't work.
  1. Boot into your existing OS X Installation.
  2. Insert your USB drive.
  3. Open Applications/Utilities/Disk Utility.
  4. Highlight your USB drive in the left column.
  5. Click the Partition Tab.
  6. Click Volume Scheme- choose 1 Partition.
  7. Click Options…
  8. Select GUID Partition Table. Click OK.
  9. In the Name: field type: ChameleonBoot
  10. In Format: field select Mac OS Extended (Case Sensitive, Journaled)
  11. Click Apply, then click Partition.
  12. Close Disk Utility
  13. Download tonymacx86-snowleopard.zip
  14. Open and place tonymacx86-snowleopard folder on the desktop.
  15. Open Apps folder
  16. Open PC EFI 10.1
  17. Select ChameleonBoot and click Continue.
  18. Click Install, and then type your password.
  19. Open Terminal.
  20. Type: sudo rm /Volumes/ChameleonBoot/boot and type your password. (this deletes the boot file installed from PC EFI 10.1)
  21. Click and drag boot, DSDT.aml, and Extra from tonymacx86-snowleopard to ChameleonBoot. Or drag your own files from your existing Snow Leopard drive.
That's it- the drive is done. Just set your BIOS Hard Disk Priority to boot from USB first. Hope this helps!

For discussions on this and other topics, register today at tonymacx86.com!

How To Install Chameleon Manually From Terminal

There are various pkg installers to install Chameleon to your boot drive through a GUI. You may find it necessary to replace your Chameleon with a new version. Usually, if you have previously installed Chameleon 2.0, all you must do is replace the boot file. But if you want to replace the entire thing, or if installing for the first time, there are a few simple Terminal commands you must issue.


1. Download any Chameleon binary source (For this example: Chameleon-2.0-RC2-r640-bin)
2. Unzip the folder and place it on the desktop as shown in the picture.
2. Open Applications/Utilities/Terminal
3. Type: diskutil list
4. Locate your OS X installation partition. It will be under IDENTIFIER. Be sure to use the correct one. (For this example: disk0s2)
5. Type: cd
6. Click and drag the Chameleon folder to Terminal, creating a path to it. This is a cool trick that you can use instead of typing the whole path. The command will become: cd /Users/****/Desktop/Chameleon-2.0-RC2-r640-bin
7. Type cd i386
8. Type: sudo fdisk -f boot0 -u -y /dev/rdisk0
9. Type: sudo dd if=boot1h of=/dev/rdisk0s2 (your disk IDENTIFIER from step 4)
10. Type: sudo cp boot /

That's it! If you want to use a different boot file (like PC EFI 10.5), you must delete the installed boot file and drag the new one to the root of your drive. Here's how to do that:

1. Open Applications/Utilities/Terminal
2. Type: sudo rm /boot
3. Drag new boot file to your install drive.

I hope this helps you become more familiar with the Terminal! Good luck with your manual installation of Chameleon!


For discussions on this and other topics, register today at tonymacx86.com!

OSx86 Help Desk

Hey everyone-

Just thought I'd create a post where you can come with your questions about anything OSx86 related. Post specific issues, install problems, screenshots, etc... I'll try my best to help you out any way I can!

The OSx86 Help Desk- working to answer your questions- for free, for fun, for you!

;)

EDIT: The OSx86 Help Desk is now moved to the forum!

For discussions on this and other topics, register today at tonymacx86.com!