Jump to content

[Guide] AIO Guides For Hackintosh


607 posts in this topic

Recommended Posts

DSDT/SSDT: Disable dedicated GPU to extend battery life ( laptop-exclusive )



Only applied to laptops with both dedicated GPU (Nvidia/AMD) and Intel HD Graphics, has Nvidia Optimus Technology/AMD Switchable Graphics, and dedicated GPU can’t be turned off in BIOS

Step 1: Dump and decompile original DSDT/SSDT into dsl files

Step 2: Identify the DSDT/SSDT contains Intel HD Graphics (if exist) and dedicated GPU

Step 3: If you rename Intel HD GFX0 to IGPU, do it on all related DSDT/SSDT!

Step 4: Find the dedicated GPU’s _INI method, add _OFF ( ) at the end of the method

liRlcrG.png

 

Press Compile to check for error. If you have error "Object is not accessible from this scope (_OFF)", the _OFF method is not included in the same SSDT. You have to link it by adding this to SSDT:

External(\_SB_.PCI0.RP05.PEGP._OFF, MethodObj)

Note that you have to change the path to your External graphics device \_SB_.PCI0.RP05.PEGP to suit your system.

 

Step 5: Save all SSDTs related to iGPU (if exist) and dedicated GPU as aml, put it in the bootloader’s directory ( name it as SSDT.aml, SSDT-1.aml, SSDT-2.aml, etc… )

Step 6: Reboot and go to System Information, select Graphics/Display. If only Intel HD Graphics shows up and no Display/Nvidia/AMD related names are there then you have successfully disable the dedicated GPU.

  • Like 4
Link to comment
Share on other sites

DSDT/SSDT: Brightness fix for Intel HD3000/4000/4400/4600 (Laptop exclusive)

 
Requirement:

Open DSDT.dsl or SSDT*.aml which contains the Intel HD Graphics, select Patch > go to 2.10 Brightness Fix (HD3000/4000) or 2.11 Brightness Fix (Haswell) to your choice, hit Apply
 

11649398415_27f5ae41dc_o.png

 
 
Hit Compile to check if there are errors or not, the most common error is Scope not found, due to you haven’t renamed all iGPU’s GFX0 device, try renaming all Intel HD's GFX0 to IGPU (do not mistake for dedicated graphics GFX0)
 
Another cause for this problem is that the Intel HD GFX0 device is not in DSDT, but in other SSDT* instead ( most Haswell laptops ). You need to find the SSDT*.dsl which contains GFX0 devices and redo the steps above.
 
Compile it to DSDT.aml or SSDT-*.aml (* start with 1), put it in the bootloader’s directory
 
Install Rehabman’s ACPIBacklight: https://bitbucket.org/RehabMan/os-x-acpi-backlight/downloads or use HVT to install it
 
REMEMBER that you have to rename Intel HD GFX0, VID->IGPU in all DSDT/SSDT to make it work.
 
Note: ACPIBacklight use nvram to save brightness values when shutting down, so you need working nvram to save them after restarting:

  • Chameleon: Use FileNVRAM module
  • Clover UEFI: When installing the bootloader select EmuVariableUEFI-64.efi and Install RC Script on target volume
  • Like 4
Link to comment
Share on other sites

Clover Config: Convert your patched AppleHDA to Clover patching-on-the-fly


Requirement:
- Get a working sound with patched AppleHDA

The guide is based on piker's discovery, and will help you turn from a patched AppleHDA to Clover patching-on-the-fly.

Step 1: Download bcc9's script modified by RehabMan and me here, decompress it to desktop.
 
 Go to terminal, type these commands:

cd ~/Desktop/patch-hda
./patch-hda.pl -x 111d7605

REMEMBER to change 111d7605 to your audio codec id.
 
The patching entry will be output:


HR8kPCj.png

Open your config.plist by TextEdit, copy the generated scripts to KernelAndKextPatches > KextsToPatch section:

hWtsISD.png

Save the config.plist
 
Step 2: Download DummyHDA here. Copy LayoutX.xml.zlib và Platforms.xml.zlib from AppleHDA.kext/Contents/Resources/ (this is the working AppleHDA) to DummyHDA.kext/Contents/Resources/
 
Step 3: Open Info.plist in AppleHDA.kext/Contents/Plugins/AppleHDAHardwareConfigDriver.kext/Contents/ (this is the working AppleHDA). Copy all the value here:

IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault

to Info.plist in DummyHDA.kext/Contents/:

IOKitPersonalities/HDA Hardware Config Resource/HDAConfigDefault

ThIaDqc.png

save the Info.plist
 
Step 4: Reinstall vanilla AppleHDA and DummyHDA to S/L/E by Kext Wizard, rebuild cache/repair permission then restart. You may need to restart once more to get the sound.

  • Like 11
Link to comment
Share on other sites

Installing Yosemite using Clover (UEFI)



You need a Yosemite installer for Mac, it can be downloaded from Appstore for free. Note that with Haswell CPUs you need a 10.9 installer or above. This guide is done under OS X, if you don’t own a Mac then you can always create a virtual machine.

Create a Yosemite USB Installer

Step 1: You need a 8GB USB stick, format it with Disk Utility with the following options:

  • Partition: 2 partitions
  • Partition 1: name it Clover, Format MS-DOS (FAT), size larger than 300MB
  • Partition 2: name it MacUSB, Format Mac OS Extended ( Journaled ), size larger than 6.5GB
  • Options: Master Boot Record (MBR)
  • Hit Apply

JMKDSIL.png


Step 2: Download this Clover.zip, unzip and copy the EFI folder to the root of the CLOVER partition. Use Hackintosh Vietnam Tool to create the suitable config.plist for your PC:
- CPU: Select your CPU
- Graphics: Select your graphics
- SSDT: Generate

- Bootflag: kext-dev-mode=1
Install to current HDD, then copy the generated config.plist on the desktop IN YOUR HDD to the folder EFI\Clover of the CLOVER partition.



 


At this point you have 2 choices of creating the installer

Choice 1 (easy guide, but can result in blank screen after boot)

Step 3: Download OS X Yosemite from the Appstore, check if the “Install OS X Yosemite.app” is in the folder Application. Open Terminal and run this command ( note that Untitled is a HFS+ partition )

sudo /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia --volume /Volumes/MacUSB --applicationpath /Applications/Install\ OS\ X\ Yosemite.app --nointeraction

Choice 2 (manual method)
Step 3: - Right click to Yosemite Install app > Show Package Contents > Contents > Shared Support, open InstallESD.dmg.
- Open OS X Install ESD partition, open BaseSystem.dmg (hidden file)
- Use Disk Utility to clone OS X Base System to MacUSB partition.
Ub9sEsy.png
- Go to System/Installation of USB and delete the alias “Packages”, then go to “OS X Install ESD” partition, copy the “Packages” to the folder System/Installation of your USB
- Copy BaseSystem.dmg and BaseSystem.chunklist (hidden files) from OS X Install ESD to OS X Base System (on your USB)

Installing Yosemite

Step 1: Boot from the USB installer, select “Boot OS X Install from Install OS X Yosemite”

Step 2: If the config.plist is correct, you should arrive at the installation windows. Hit Spacebar if any notifications about bluetooth keyboard/mouse appears. Select menu Utilities, select Disk Utility

Step 3: Select the partition you want to install OS X to, switch to Erase tab, do the following options:


  • Format: Mac OS Extended (Journaled)
  • Name: Pick anything you want
  • Hit Erase

Step 4: After the formatting process is done, close Disk Utility, hit Continue, hit Agree. Select the formatted partition then hit Install
Note
- It will automatically restart and you will have to reboot into the installer again in order to begin the REAL installation process.

Step 5: After installation process is done, reboot into the USB Installer and boot into your newly created OS X partition.

  • Like 3
Link to comment
Share on other sites

Extra mini-Guides for Advanced Users

:)

 

CloverEFI

 

the Clover Legacy, to boot UEFI/EFI systems on Legacy Bios systems

 

#330

 

Windows Installing the manual way

 

Install Windows if it stucks

 

#360

 

Converting MBR/hMBR to GPT

 

to avoid the reinstall of Windows <_<

 

©fusion71au

 

#359

 

Mount EFI Partition : The N00B way

 

aka: the easy way

 

©fusion71au

 

#338

 

2GB on Intel HD4000 Graphics

 

#421

 

If there still a mini-Guide not shown here, write it on the guide or post the link in a comment (and if there is no respond PM me. NOT PREFERABLE NOR RECOMMENDED!) :)

  • Like 1
Link to comment
Share on other sites

 

DSDT/SSDT: Basic knowledge

...

Note: If you have multiple SSDT that is needed to be loaded, rename them as: SSDT.aml, SSDT-1.aml, SSDT-2.aml, … and so on.

 

I have 6 SSDTs, if I rename them like that, they will all load @ boot ?

Link to comment
Share on other sites

Hello,

 

Before I go on, here is my spec:

- Asus Touch Laptop

- Intel i5 4th gen

- Intel 4400 HD

- 6GB Ram

- 750GB HDD

 

I put config.plist in my EFI Clover (EFI/Clover)

 

When I boot up, and select Boot Mac OS X Base System, it just restarts (I even tried the bootflags as well, -v and -x).

 

Any help would be great.

 

Thanks.

Link to comment
Share on other sites

Hello,

 

Before I go on, here is my spec:

- Asus Touch Laptop

- Intel i5 4th gen

- Intel 4400 HD

- 6GB Ram

- 750GB HDD

 

I put config.plist in my EFI Clover (EFI/Clover)

 

When I boot up, and select Boot Mac OS X Base System, it just restarts (I even tried the bootflags as well, -v and -x).

 

Any help would be great.

 

Thanks.

Post your config.plist.

Link to comment
Share on other sites

You have Haswell Mobile CPU, not IvyBridge Mobile CPU. What did you select when you generate config.plist?

I selected 

- CPU: IvyBridge Mobile

- SSDT: Generate

- Graphics: HD4400/4600 Mobile

 

Oh okay, gottca. So I change CPU (in hackintosh vietnam tool) to Haswell Mobile?

Link to comment
Share on other sites

I boot without any flags, just restarts.

I boot with '-v', shows this, then restarts.

 

3IeOrmK.jpg

 

I boot with 'x', got into installer screen, then format hdd, then install (stuck, shows remaining 24 minutes for like 5 minutes, does not do anything).

 

I set my config flags to this:

- CPU: Haswell Mobile

- SSDT: Generate

- Graphics: HD4400/4600 Mobile

 

Any Suggestion? Thanks.

Link to comment
Share on other sites

Please make an installer following our guide, I dunno what method you are using here

I used his method. I redo it again, still the same.

 

EDIT:

 

I reboot it again, went into safe mode, now it is actually installing, I see some progress. 

 

What kexts do you guys recommend installing?

 

Thanks.

 

EDIT 2:

 

I successfully installed it.

Still cannot boot in normal mode or verbose mode, I only can boot into Maverick in "safe mode." 

 

So what kexts should I install?

 

EDIT 3:

 

I installed some kexts (Touchpad Elan, FakeSMC, and VoodooHDA 2.8.4).

 

I reboot it, since cannot go into verbose mode (to me it looks like kernal panic? iokit.family something) but safe mode. Now I got my touchpad to work now.

 

EDIT 4:

Got this when boot into verbose mode:

ZqARu5Q.jpg

Link to comment
Share on other sites

What is your machine's specs anyway ? What model is this ? Maybe DSDT is needed in this case

Edit: Please don't use -x, it is a last resort. I don't think your machine's too complicated for OS X. Read the installing kexts section to know what you need

Link to comment
Share on other sites

What is your machine's specs anyway ? What model is this ? Maybe DSDT is needed in this case

Edit: Please don't use -x, it is a last resort. I don't think your machine's too complicated for OS X. Read the installing kexts section to know what you need

 

Machines Spec:

- Asus Touch Laptop

- Intel i5 4th gen

- Intel 4400 HD

More: http://www.newegg.co...N82E16834231549

 

I am going to try to install IOPCIFamily kext and Battery to see any difference.

Link to comment
Share on other sites

IOPCI is already there, I think your bios setting's messing with you. Set it to default, update it to the latest and see if anything's new

 

That is weird. I set my BIOs to default and toggle Secure boot off, in addition to that I removed VoodooHDA and Elan Touchpad (just in case), and it boots successfully!

Link to comment
Share on other sites

Then maybe VoodooHDA is the problem, as I had seen many Haswell systems got KP because of it, do you have QE/CI ? Check in Windows if you are using Elan Touchpad or Synaptics ?

 

Unfortunately, I do not have access to Windows, since I formatted my HDD. I think it is Synaptics. 

Link to comment
Share on other sites

Okay, I have been researching for few hours, such a headache. 

 

I found DSDT and SSDT from different website, he has same spec as me. I placed them in /Extra.

I installed these kexts:

- ACPIBacklight

- ACPIBatteryManager

- AppleHDA

- AsusNFnKeys

- EAPDFix

- FakeSMC

- GenericUSBCHCI

- RealtekRTL8111

- ApplePS2ElanTouchpad

 

System is almost perfect. But still struggling with AsusFN keys, Battery (keeps showing 0% but it shows remaining time if clicked), touchpad (2 scrolls does not work), and audio.

 

I rebuild caches and fix permissions:

 

 

6/17/14, 6:10:24 PM, com.apple.kextcache[5980]: /: no supported helper partitions to update.
6/17/14, 6:10:24 PM, com.apple.kextcache[5980]: Lock acquired; proceeding.
6/17/14, 6:10:24 PM, com.apple.kextcache[5978]: /: no supported helper partitions to update.
6/17/14, 6:10:24 PM, com.apple.kextcache[5979]: Created prelinked kernel /System/Library/Caches/com.apple.kext.caches/Startup/kernelcache.
6/17/14, 6:10:11 PM, com.apple.kextcache[5980]: / locked; waiting for lock.
6/17/14, 6:10:08 PM, com.apple.kextcache[5979]: kext com.Accusys.driver.Acxxx  300029000 is in exception list, allowing to load
6/17/14, 6:10:08 PM, com.apple.kextcache[5979]: kext org.rehabman.driver.AppleSmartBatteryManager  152009000 is in exception list, allowing to load
6/17/14, 6:10:08 PM, com.apple.kextcache[5979]: WARNING - Invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext "/System/Library/Extensions/AppleKextExcludeList.kext"
6/17/14, 6:10:08 PM, com.apple.kextcache[5979]: kext org.emlydinesh.driver.ApplePS2ElanTouchpad  303009000 is in exception list, allowing to load
6/17/14, 6:10:08 PM, com.apple.kextcache[5979]: kext org.emlydinesh.driver.ApplePS2Controller  303009000 is in exception list, allowing to load
6/17/14, 6:10:08 PM, com.apple.kextcache[5979]: kext org.emlydinesh.driver.ApplePS2Keyboard  303009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext org.emlydinesh.driver.AsusNBFnKeys  200009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext com.ATTO.driver.ATTOCelerityFC  304089000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext com.ATTO.driver.ATTOExpressPCIUl4  404029000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext com.ATTO.driver.ATTOExpressSASHBA  200009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext com.ATTO.driver.ATTOExpressSASHBA3  100059000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext com.ATTO.driver.ATTOExpressSASRAID  307029000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext org.emlydinesh.driver.EAPDFix  103009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext org.netkas.driver.FakeSMC  108500009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext org.hwsensors.driver.ACPISensors  108500009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext org.hwsensors.driver.CPUSensors  108500009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext org.hwsensors.driver.GPUSensors  108500009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext org.hwsensors.driver.LPCSensors  108500009000 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: kext net.osx86.kexts.GenericUSBXHCI  102081007 is in exception list, allowing to load
6/17/14, 6:10:07 PM, com.apple.kextcache[5979]: WARNING - Invalid signature -67030 0xFFFFFFFFFFFEFA2A for kext "/System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortAtheros40.kext"
6/17/14, 6:10:06 PM, com.apple.kextcache[5979]: kext com.jmicron.JMicronATA  101069000 is in exception list, allowing to load
6/17/14, 6:10:06 PM, com.apple.kextcache[5979]: kext com.insanelymac.RealtekRTL8111  101019000 is in exception list, allowing to load
6/17/14, 6:10:05 PM, com.apple.kextcache[5978]: rebuilding /System/Library/Caches/com.apple.kext.caches/Startup/kernelcache
6/17/14, 6:10:05 PM, com.apple.kextd[12]: Cache file /System/Library/Caches/com.apple.kext.caches/Startup/IOKitPersonalities_x86_64.ioplist.gz is out of date; not using.
6/17/14, 6:10:05 PM, com.apple.kextd[12]: Cache file /System/Library/Caches/com.apple.kext.caches/Directories/System/Library/Extensions/KextIdentifiers.plist.gz is out of date; not using.
6/17/14, 6:10:05 PM, com.apple.kextd[12]: Rescanning kernel extensions.
6/17/14, 6:10:05 PM, com.apple.kextd[12]: Cache file /System/Library/Caches/com.apple.kext.caches/Directories/System/Library/Extensions/KextIdentifiers.plist.gz is out of date; not using.
6/17/14, 6:09:50 PM, Repair Permissions[5973]: Finished repair
6/17/14, 6:09:50 PM, Repair Permissions[5972]: Finished xattr
6/17/14, 6:09:50 PM, Repair Permissions[5970]: Finished chown
6/17/14, 6:09:50 PM, Repair Permissions[5968]: Finished chmod F
6/17/14, 6:09:50 PM, Repair Permissions[5963]: Finished chmod D
6/17/14, 6:09:50 PM, Repair Permissions[5958]: Finished chmod N

 

Any suggestion would be great.

 

Thanks.

Link to comment
Share on other sites

 Share

×
×
  • Create New...