- Joined
- Jul 11, 2014
- Messages
- 435
- Motherboard
- Asus A555LAB
- CPU
- i3-4005U
- Graphics
- HD 4400
- Mac
- Mobile Phone
Hello folks,
Before I start let me take a moment to thank @RehabMan as nothing would have been possible without his help.
I got this laptop as a gift and trust me when I say this, it is the most perfect hackintosh laptop you could ever think of.
Let's get started.
Working:-
- Audio
- Wifi (I have AR 9565)
- Brightness
- Sleep
- HDMI
- iMessage
- Brightness Keys
- Trackpad Multi Finger Gestures
- Power Management
- Anything else that I missed
Not working:-
- Bluetooth (And never will I guess?). If you get it working please share it here.
Also, I haven't tested ethernet. But mine is RTL811 so I know that it will work. Search for RTL8111 kext in case u need it.
Pre Installation:-
Make a macOS bootable USB by following the RehabMan's guide or, use my shell script. (It saves you from the trouble of doing things manually.)
Note: In BKit New way means createinstallmedia method while Old way means base binaries clone method.
BKit: https://github.com/Psychic-74/Bkit
BKit prompts you to install clover then only it moves on further. Want to skip it? Run it with -nc arg.
Clover Installation:-
Check "Install for UEFI booting only."
Check "Drivers64UEFI/OSXAptioFixDrv2"
Click on next.
Upon installing you need to replace the config.plist. (Thanks to RehabMan)
Copy the config.plist from your desktop to your USB's EFI/CLOVER
Download FakeSMC.kext and VoodooPS2Controller.kext and place them in EFI/CLOVER/kexts/Other
You also need a driver called HFSPlus.efi to load OS X formatted drives in clover. Here: https://github.com/JrCs/CloverGrowerPro/raw/master/Files/HFSPlus/X64/HFSPlus.efi
Copy it to EFI/CLOVER/drivers64UEFI
Note: If you fail to do this you won't see your installer USB in Clover boot menu.
BIOS Settings:-
Press F9 to load defaults.
Set DVMT to 64MB
Launch CSM to disabled.
Disable Intel Virtualization (Disabled in the config.plist)
Now, boot the installer and install macOS sierra.
Post Installation:-
Now that you have installed macOS Sierra you'll see that the machine is barely usable. We need to fix many stuffs now.
Installing bootloader:-
Open clover installer, Install to your HDD with following options:-
"Install for UEFI booting only"
"Drivers64UEFI/OSXAptioFixDrv2"
"Drivers64UEFI/EmuVariableUEFI"
"Install RC scripts on target volume"
copy the config.plist from your USB to EFI/CLOVER
Install FakeSMC.kext to /S/L/E
Let's start by Graphics.
Download FakePCIID kexts from here: https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/
Install FakePCIID.kext, FakePCIID_Intel_HD_Graphics.kext to /S/L/E using your favorite kext installer.
If you used the config.plist linked above, just reboot and you'll be good to go.
If you didn't, Add 0X04128086 in Config.plist/Devices/Fake ID/IntelGFX and 0x0a260006 in Config.plist/Graphics/ig-platform-id
Then you may reboot to see graphics working fine.
Now, let's fix the audio
Download codec commander from here: https://bitbucket.org/RehabMan/os-x-eapd-codec-commander/downloads/
Download aDummyHDA for ALC233 attached below (credits to Mirone)
Add the following patches to Config.plsit/KernelAndKextPatches/KextsToPatch
Reboot. As clover can only patch the kexts in kernel cache rebuild the cache by:-
That's all you need to do here. Rest will be there in ACPI patching section. We need to inject layout-id and aslo apply IRQ fix.
Now let's fix Keyboard and Touchpad gestures:-
Before you begin, remove VoodooPS2Controller.kext from /S/L/E
Download SmartTouchpadDriver from: http://forum.osxlatitude.com/index....and-synaptics-smart-touchpad-driver-mac-os-x/
Download AsusNBFnKeys from: http://forum.osxlatitude.com/index....key-and-als-sensor-driver-for-asus-notebooks/ (This enables extra FN keys like the media keys)
Reboot and done.
Fix for sleep and power management:-
Follow: https://www.tonymacx86.com/threads/guide-native-power-management-for-laptops.175801/
DSDT Patching for Audio, HDMI, Brightness Keys:-
Follow: https://www.tonymacx86.com/threads/guide-patching-laptop-dsdt-ssdts.152573/ to extract you native ACPI files.
Delete everything except DSDT and SSDT1 to SSDT11.
Put the files in a folder called ACPI on your desktop (I'll be using this location in this guide)
Copy refs from the linked guide and then type following in terminal:-
Now you will have decompiled files. That is what we need to work with.
Note: You need to have MaciASL and iasl binary else nothing will work. See the linked guide on how to get them.
First of all, delete the SSDT9 SSDT10 SSDT11 (Both AML and DSL). We needed them to decompile properly as our files contained references to them.
Now, open MaciASL press command+, to open preferences. Go to sources tab and add a new source
Name: RehabMan
Source: http://raw.github.com/RehabMan/Laptop-DSDT-Patch/master
Now let's start sorting our files. Create a new folder call patched on Desktop.
Copy SSDT1, SSDT2, SSDT4, SSDT5, SSDT6, SSDT7, SSDT8 (The ones with AML extension) to this patched folder from Desktop/ACPI
We need to work with SSDT3.dsl and DSDT.dsl now. You may delete all other files from Desktop/ACPI folder.
Open SSDT3.dsl file and click on patch. It contains bogus code so we need to remove that.
Apply "Remove _PSS Placeholders" patch and then, File > Save As > Select Format as ACPI Machine Language Binary and save.
Copy the generated SSDT3.aml to Desktop/patched
Now it's time to patch DSDT
Open DSDT.dsl
Click on patch and apply the following patches:-
"Battery ASUS G75VW"
"Fix Mutex with non zero sync level"
"OS Check Fix WIN 2012/8"
"IRQ Fix"
"Audio Layout 3 patch"
Apply the following patch for brightness (Only works with Smart Touchpad Driver)
Now click on compile. We will need to fix one error, "Name already exists in scope".
The code will look like this:-
Click on file and save. Save this file somewhere safe as you might need it in future.
Click on file > Save As. Select format as: ACPI Machine Language Binary and click Save.
Copy the resulting DSDT.aml to Desktop/patched
Download and install AppleSmartBatteryManager.kext from: https://bitbucket.org/RehabMan/os-x-acpi-battery-driver/downloads/
Download and install AppleBacklightInjector.kext attached below (credit: RehabMan)
Add the following patch in Config.plist/KernelAndKextPatches/KextsToPatch
Now, copy everything from Desktop/patched to your HDD's EFI/CLOVER/ACPI/patched
Reboot and everything should be working except HDMI.
I'll continue this in the post below.
Note: This guide will be updated with every macOS release as I use macOS as my daily driver.
Before I start let me take a moment to thank @RehabMan as nothing would have been possible without his help.
I got this laptop as a gift and trust me when I say this, it is the most perfect hackintosh laptop you could ever think of.
Let's get started.
Working:-
- Audio
- Wifi (I have AR 9565)
- Brightness
- Sleep
- HDMI
- iMessage
- Brightness Keys
- Trackpad Multi Finger Gestures
- Power Management
- Anything else that I missed
Not working:-
- Bluetooth (And never will I guess?). If you get it working please share it here.
Also, I haven't tested ethernet. But mine is RTL811 so I know that it will work. Search for RTL8111 kext in case u need it.
Pre Installation:-
Make a macOS bootable USB by following the RehabMan's guide or, use my shell script. (It saves you from the trouble of doing things manually.)
Note: In BKit New way means createinstallmedia method while Old way means base binaries clone method.
BKit: https://github.com/Psychic-74/Bkit
BKit prompts you to install clover then only it moves on further. Want to skip it? Run it with -nc arg.
Clover Installation:-
Check "Install for UEFI booting only."
Check "Drivers64UEFI/OSXAptioFixDrv2"
Click on next.
Upon installing you need to replace the config.plist. (Thanks to RehabMan)
Code:
cd ~/Desktop
curl -o config.plist https://raw.githubusercontent.com/RehabMan/OS-X-Clover-Laptop-Config/master/config_HD4600_4400_4200.plist
Download FakeSMC.kext and VoodooPS2Controller.kext and place them in EFI/CLOVER/kexts/Other
You also need a driver called HFSPlus.efi to load OS X formatted drives in clover. Here: https://github.com/JrCs/CloverGrowerPro/raw/master/Files/HFSPlus/X64/HFSPlus.efi
Copy it to EFI/CLOVER/drivers64UEFI
Note: If you fail to do this you won't see your installer USB in Clover boot menu.
BIOS Settings:-
Press F9 to load defaults.
Set DVMT to 64MB
Launch CSM to disabled.
Disable Intel Virtualization (Disabled in the config.plist)
Now, boot the installer and install macOS sierra.
Post Installation:-
Now that you have installed macOS Sierra you'll see that the machine is barely usable. We need to fix many stuffs now.
Installing bootloader:-
Open clover installer, Install to your HDD with following options:-
"Install for UEFI booting only"
"Drivers64UEFI/OSXAptioFixDrv2"
"Drivers64UEFI/EmuVariableUEFI"
"Install RC scripts on target volume"
copy the config.plist from your USB to EFI/CLOVER
Install FakeSMC.kext to /S/L/E
Let's start by Graphics.
Download FakePCIID kexts from here: https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/
Install FakePCIID.kext, FakePCIID_Intel_HD_Graphics.kext to /S/L/E using your favorite kext installer.
If you used the config.plist linked above, just reboot and you'll be good to go.
If you didn't, Add 0X04128086 in Config.plist/Devices/Fake ID/IntelGFX and 0x0a260006 in Config.plist/Graphics/ig-platform-id
Then you may reboot to see graphics working fine.
Now, let's fix the audio
Download codec commander from here: https://bitbucket.org/RehabMan/os-x-eapd-codec-commander/downloads/
Download aDummyHDA for ALC233 attached below (credits to Mirone)
Add the following patches to Config.plsit/KernelAndKextPatches/KextsToPatch
Code:
<dict>
<key>Comment</key>
<string>Zeroing 10ec0261 codec (patched by AppleHDA Patcher.app)</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
YQLsEA==
</data>
<key>Name</key>
<string>AppleHDA</string>
<key>Replace</key>
<data>
AAAAAA==
</data>
</dict>
<dict>
<key>Comment</key>
<string>Zeroing 10ec0262 codec (patched by AppleHDA Patcher.app)</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
YgLsEA==
</data>
<key>Name</key>
<string>AppleHDA</string>
<key>Replace</key>
<data>
AAAAAA==
</data>
</dict>
<dict>
<key>Comment</key>
<string>Zeroing 10ec0885 codec (patched by AppleHDA Patcher.app)</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
hQjsEA==
</data>
<key>Name</key>
<string>AppleHDA</string>
<key>Replace</key>
<data>
AAAAAA==
</data>
</dict>
<dict>
<key>Comment</key>
<string>Patching 11d41984 with 10ec0233 codec (patched by AppleHDA Patcher.app)</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
hBnUEQ==
</data>
<key>Name</key>
<string>AppleHDA</string>
<key>Replace</key>
<data>
MwLsEA==
</data>
</dict>
Code:
sudo kextcache -i /
Now let's fix Keyboard and Touchpad gestures:-
Before you begin, remove VoodooPS2Controller.kext from /S/L/E
Download SmartTouchpadDriver from: http://forum.osxlatitude.com/index....and-synaptics-smart-touchpad-driver-mac-os-x/
Download AsusNBFnKeys from: http://forum.osxlatitude.com/index....key-and-als-sensor-driver-for-asus-notebooks/ (This enables extra FN keys like the media keys)
Reboot and done.
Fix for sleep and power management:-
Follow: https://www.tonymacx86.com/threads/guide-native-power-management-for-laptops.175801/
DSDT Patching for Audio, HDMI, Brightness Keys:-
Follow: https://www.tonymacx86.com/threads/guide-patching-laptop-dsdt-ssdts.152573/ to extract you native ACPI files.
Delete everything except DSDT and SSDT1 to SSDT11.
Put the files in a folder called ACPI on your desktop (I'll be using this location in this guide)
Copy refs from the linked guide and then type following in terminal:-
Code:
cd ~/Desktop/ACPI
for f in $(ls ./*);
do
mv $f $f.aml;
done
pbpaste > refs.txt
iasl -da -dl -fe refs.txt *.aml
Note: You need to have MaciASL and iasl binary else nothing will work. See the linked guide on how to get them.
First of all, delete the SSDT9 SSDT10 SSDT11 (Both AML and DSL). We needed them to decompile properly as our files contained references to them.
Now, open MaciASL press command+, to open preferences. Go to sources tab and add a new source
Name: RehabMan
Source: http://raw.github.com/RehabMan/Laptop-DSDT-Patch/master
Now let's start sorting our files. Create a new folder call patched on Desktop.
Copy SSDT1, SSDT2, SSDT4, SSDT5, SSDT6, SSDT7, SSDT8 (The ones with AML extension) to this patched folder from Desktop/ACPI
We need to work with SSDT3.dsl and DSDT.dsl now. You may delete all other files from Desktop/ACPI folder.
Open SSDT3.dsl file and click on patch. It contains bogus code so we need to remove that.
Apply "Remove _PSS Placeholders" patch and then, File > Save As > Select Format as ACPI Machine Language Binary and save.
Copy the generated SSDT3.aml to Desktop/patched
Now it's time to patch DSDT
Open DSDT.dsl
Click on patch and apply the following patches:-
Code:
# Fix AC Adapter for ASUS laptops
into method label FBST code_regex If\s\(CHGS\s\(Zero\)\)[\s]+\{[\s]+Store\s\(0x02,\sLocal0\)[\s]+\}[\s]+Else[\s]+\{[\s]+Store\s\(One,\sLocal0\)[\s]+\} replaceall_matched begin
If (CHGS (Zero))\n
{\n
Store (0x02, Local0)\n
}\n
Else\n
{\n
Store (Zero, Local0)\n
}
end;
"Fix Mutex with non zero sync level"
"OS Check Fix WIN 2012/8"
"IRQ Fix"
"Audio Layout 3 patch"
Apply the following patch for brightness (Only works with Smart Touchpad Driver)
Code:
# Brightness Keys Patch Credit: me
into method label _Q0E replace_content
begin
Notify (PS2K, 0x20)\n
end;
into method label _Q0F replace_content
begin
Notify (PS2K, 0x10)\n
end;
Now click on compile. We will need to fix one error, "Name already exists in scope".
The code will look like this:-
Code:
Method (_DSM, 4, Serialized)
// Change it to
Method (XDSM, 4, Serialized)
Click on file and save. Save this file somewhere safe as you might need it in future.
Click on file > Save As. Select format as: ACPI Machine Language Binary and click Save.
Copy the resulting DSDT.aml to Desktop/patched
Download and install AppleSmartBatteryManager.kext from: https://bitbucket.org/RehabMan/os-x-acpi-battery-driver/downloads/
Download and install AppleBacklightInjector.kext attached below (credit: RehabMan)
Add the following patch in Config.plist/KernelAndKextPatches/KextsToPatch
Code:
<dict>
<key>Comment</key>
<string>change F%uT%04x to F%uTxxxx for AppleBacklightInjector.kext (credit RehabMan)</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
RiV1VCUwNHgA
</data>
<key>Name</key>
<string>com.apple.driver.AppleBacklight</string>
<key>Replace</key>
<data>
RiV1VHh4eHgA
</data>
</dict>
Now, copy everything from Desktop/patched to your HDD's EFI/CLOVER/ACPI/patched
Reboot and everything should be working except HDMI.
I'll continue this in the post below.
Note: This guide will be updated with every macOS release as I use macOS as my daily driver.