- Joined
- Apr 7, 2018
- Messages
- 93
- Motherboard
- Asus ROG Strix Z390-I Gaming
- CPU
- i7-8700K
- Graphics
- Vega 56
- Mac
- Mobile Phone
Hey guys,
In this guide I will guide you through the installation process of Mac OS High Sierra based on my experience. This guide is mentioned for people who have a MSI G45 Z87 motherboard build but maybe others will have benefit from this too.
My Build
Create bootable USB
DSDT and SSDT patching
P.S I want to thank you @RehabMan and @toleda for the great support and guides.
In this guide I will guide you through the installation process of Mac OS High Sierra based on my experience. This guide is mentioned for people who have a MSI G45 Z87 motherboard build but maybe others will have benefit from this too.
My Build
- Motherboard: MSI G45 Z87 Gaming;
- Processor: Intel core I5 4670K;
- Graphics: EVGA GTX 970 FTW;
- Memory: Corsair Vengeance 1600MHz LP 4 x 4GB (total 16GB RAM);
- SSD1: Samsung 850 evo (250GB), used for Mac OS;
- SSD2: Sandisk SSD plus 240GB, used for Windows;
- HDD: Western Digital (1 terabyte);
- WIFI: TP-Link TL-WDN4800;
- PSU: Corsair CX500 watt;
- Case: Bitfenix Pandora ATX with LCD;
- Mouse: Logitech G500;
- Keyboard: Corsair STRAFE
Create bootable USB
Requirements:
Steps:
10. Copy the above code in MaciASL and change \_SB.PCI0.PEG0.PEGP text to your ACPI path;
11. Click compile and be sure there are zero errors;
12. Click file in menu bar and in select save as;
13. In Save As field type SSDT-DiscreteSpoof.aml and select ACPI Machine Language Binary as File Format;
14. Copy the generated SSDT-DiscreteSpoof.aml file to your USB /EFI/CLOVER/ACPI/patched.
15. Open your config.plist with Clover Configurator once again;
16. Select Acpi and under Patches section add this patch:
Bios pmpatch- Real Mac or Hackintosh;
- USB (minimum 8GB);
- UniBeast (latest) -> https://www.tonymacx86.com/resources/categories/tonymacx86-downloads.3/;
- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/;
- MaciASL -> https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/.
- Open Mac App Store;
- Download MacOS High Sierra (5GB+ installer). Note: If you only get the 19.x mb installer first try to update your system to the latest and try again;
- High Sierra installer will appear in /Applications;
- Insert your USB stick into your PC;
- Open /Applications/Utilities/Disk Utility;
- Select inserted USB drive in left column and click erase button;
- Type USB in name field;
- Select Mac OS Extended (Journaled) in format field;
- Select GUID Partition Map in Scheme field;
- Click erase then done;
- Open UniBeast;
- Click continue until you can select a destination;
- Select your USB and continue;
- Select UEFI Boot Mode and continue;
- At graphics configuration be sure all check boxes are unchecked and continue;
- Verify installation and click continue and then install;
- Open Clover Configurator;
- Select Mount EFI in left column and mount EFI from your USB stick;
- Go to EFI/CLOVER/ and open config.plist with Clover Configurator;
- Select Boot in left column and check Verbose(-v) and dart=0 under arguments;
- Select Devices and set intelGFX to 0x04128086 under Fake ID, select audio to 1 under audio;
- Select Graphics and check inject Intel;
- Select Rt Variables and set BooterConfig to 0x28 and CsrActiveConfig to 0x67;
- Select SMBIOS and be sure product name is Imac14,2;
- Select System Parameters and be sure inject Kexts = Yes and inject System ID is checked;
- Safe config and exit.
Steps:
- Boot into Windows (I used Windows 10);
- Open Device manager;
- Under display adapters right click on your dedicated graphics card and select properties;
- Go to tab details and select BIOS device name in property list.
- Copy the value, for example my value was \_SB.PCI0.PEG0.PEGP;
- Now we know the ACPI path of our dedicated graphics card and we are able to create a custom SSDT file to disable it.
- Open MaciASL and go to Preferences;
- Click iASL tab and be sure ACPI 6.0 is checked;
- Click file in menu bar and select new to create a new file;
Code:
// save as SSDT-DiscreteSpoof.aml
DefinitionBlock ("", "SSDT", 2, "hack", "spoof", 0)
{
Method(\_SB.PCI0.PEG0.PEGP._DSM, 4)
{
If (!Arg2) { Return (Buffer() { 0x03 } ) }
Return (Package()
{
"name", Buffer() { "#display" },
"IOName", "#display",
"class-code", Buffer() { 0xFF, 0xFF, 0xFF, 0xFF },
})
}
}
10. Copy the above code in MaciASL and change \_SB.PCI0.PEG0.PEGP text to your ACPI path;
11. Click compile and be sure there are zero errors;
12. Click file in menu bar and in select save as;
13. In Save As field type SSDT-DiscreteSpoof.aml and select ACPI Machine Language Binary as File Format;
14. Copy the generated SSDT-DiscreteSpoof.aml file to your USB /EFI/CLOVER/ACPI/patched.
15. Open your config.plist with Clover Configurator once again;
16. Select Acpi and under Patches section add this patch:
Code:
Comment: Rename _DSM to XDSM
Find: 5F44534D
Replace: 5844534D
Steps:
Bios settings- First you will need to patch your bios with pmpatch;
- Search in google for pmpatch and patch your latest bios or download the already patched 1.9 version below;
- After patching update your bios.
Settings/Advanced/Integrated Peripherals
Mac OS InstallationOnboard LAN Controller: Enabled;
LAN Option ROM: Disabled;
Network stack: Disabled;
Sata Mode: AHCI Mode;
HD Audio Controller: Enabled;
HPET: Enabled.
Settings/Advanced/Integrated Graphics ConfigurationLAN Option ROM: Disabled;
Network stack: Disabled;
Sata Mode: AHCI Mode;
HD Audio Controller: Enabled;
HPET: Enabled.
Virtual Technology: Disabled;
Initiate Graphic Adapter: IGD -> Note: This is only needed during the Mac OS installation process. This will activate the onboard graphics. Don't forget to connect your monitor to the HDMI/DVI connector of your motherboard and NOT your dedicated video card. After installation set this to PEG to use your dedicated videocard again;
IGD Multi-Monitor: Disabled.
Settings/Advanced/Intel(R) Rapid Start TechnologyInitiate Graphic Adapter: IGD -> Note: This is only needed during the Mac OS installation process. This will activate the onboard graphics. Don't forget to connect your monitor to the HDMI/DVI connector of your motherboard and NOT your dedicated video card. After installation set this to PEG to use your dedicated videocard again;
IGD Multi-Monitor: Disabled.
Intel(R) Rapid Start Technology: Disabled.
Settings/Advanced/USB Configuration
USB Controller: Enabled;
XHCI Hand-off: Enabled;
EHCI Hand-off: Enabled;
Legacy USB Support: Enabled.
Settings/Advanced/Intel(R) Smart connect ConfigurationXHCI Hand-off: Enabled;
EHCI Hand-off: Enabled;
Legacy USB Support: Enabled.
Intel(R) Smart connect Technology: Enabled.
Settings/Advanced/Windows 8/8.1 Configuration
Windows 8/8.1 Feature: Disabled;
MSI Fast Boot: Disabled.
Settings/Advanced/Wake Up Event Setup -> Note: optional, if you want to wake from sleep with keyboard or mouseMSI Fast Boot: Disabled.
Wake Up Event By: BIOS;
Resume From S3/S4/S5 by USB Device: Enabled.
Resume From S3/S4/S5 by USB Device: Enabled.
Steps:
Install CLOVER bootloader- Insert your USB stick and boot UEFI;
- In CLOVER menu select your USB and boot the installer;
- If you have problems during installer boot, be sure to read the above instructions once again;
- After you reach the installer go to Disk Utility;
- Select target drive format to Mac OS Extended (Journaled) or APFS Note: Only use APFS if you have compatible SSD hardware/firmware compatibility;
- Exit Disk Utility and follow steps in installer to install High Sierra on target SSD/HDD.
Requirements:
Power Management- CLOVER bootloader -> https://sourceforge.net/projects/cloverefiboot/files/latest/download
- Open clover bootloader installer;
- Next, Next;
- Change location to target SSD/HDD;
- Click customize button;
- Check Install For UEFI booting only;
- Check Install Clover in the ESP;
- Select a theme you prefer in Themes;
- Check OsxAptioFix2Drv-64 and check OsxFatBinaryDrv-64 under Drivers64UEFI;
- Click install and reboot.
Requirements:
Steps:
3. Then Navigate in terminal to ssdtPRGen.sh-Beta folder;
4. Execute these commands:
5. Navigate to ~/Library/ssdtPRGen/SSDT.aml;
6. Mount EFI with Clover Configurator and copy SSDT.aml to /EFI/CLOVER/ACPI/patched;
7. Reboot.
Configure SMBIOS- ssdtPRGen.sh script -> https://github.com/Piker-Alpha/ssdtPRGen.sh;
- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/.
Steps:
- Open Terminal;
- Execute these commands to disable hibernation:
Code:
sudo pmset -a hibernatemode 0
sudo rm /var/vm/sleepimage
sudo mkdir /var/vm/sleepimage
sudo pmset -a standby 0
sudo pmset -a autopoweroff 0
4. Execute these commands:
Code:
chmod +x ./ssdtPRGen.sh
./ssdtPRGen.sh
6. Mount EFI with Clover Configurator and copy SSDT.aml to /EFI/CLOVER/ACPI/patched;
7. Reboot.
Follow this guide to configure your SMBIOS correctly -> https://www.tonymacx86.com/threads/guide-how-to-configure-your-systems-smbios-correctly.198155/ Note: Use iMac14,2 as SMBIOS.
DSDT and SSDT patching
Requirements:
Steps:
14. Open button patch and go in the left column to RehabMan Laptop repo;
15. Select [syn] Fix PARSEOP_ZERO Error and click apply and close;
16. If you now hit button compile it says zero errors;
17. Also apply these patches:
19. Add Return(0) to it like this:
20. Click file in menu bar and in select save as;
21. In Save As field type DSDT.aml and select ACPI Machine Language Binary as File Format;
22. Copy the generated DSDT.aml file to your /EFI/CLOVER/ACPI/patched.
23. Open SSDT-3-SaSsdt.dsl with MaciASL;
24. Apply these patches:
26. Click file in menu bar and in select save as;
27. In Save As field type SSDT-3-SaSsdt.aml and select ACPI Machine Language Binary as File Format;
28. Copy the generated SSDT-3-SaSsdt.aml file to your /EFI/CLOVER/ACPI/patched.
29. Open SSDT-4-IsctTabl.dsl with MaciASL;
30. Apply this patch:
32. In Save As field type SSDT-4-IsctTabl.aml and select ACPI Machine Language Binary as File Format;
33. Copy the generated SSDT-4-IsctTabl.aml file to your /EFI/CLOVER/ACPI/patched.
34. Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
35. Select ACPI and add these patches under DSDT Patches:
36. Also check Drop OEM under SSDT;
37. Save config.plist;
38. Reboot.
Fixing Nvidia Graphics- MaciASL -> https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/;
- iasl -> https://bitbucket.org/RehabMan/acpica/downloads/;
- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/.
Steps:
- Reboot your system and boot Clover Menu;
- Hit f4 to extract original APCI files;
- Boot into Mac OS;
- Open Clover configurator and go to Mount EFI;
- Mount EFI and open partition;
- Go to EFI/CLOVER/ACPI/ and copy origin folder to desktop;
- Open terminal and cp to iasl location and execute sudo cp iasl /usr/bin;
- Open terminal and cp to /Desktop/origin;
- Execute command iasl -da -dl DSDT.aml SSDT*.aml to disassemble files;
- Exit terminal and go to folder origin;
- Copy all *.dsl files to a new folder called patched;
- Open DSDT.dsl with MaciASL;
- Click patch button and copy paste this code and hit apply and then close;
Code:
# Maintained by: PJALM ([email protected]) for: http://pjalm.com/repos/
# These patches are the registered property of PJALM.COM and can not be
# redistributed or modified without the written consent of PJALM.COM.
# Links to these patches are allowed. All material is protected under the DMCA.
# Last Updated : 10/12/2015
# Patch Name : MSI-Z87-G45 GAMING
# Patch Version : 1.0
#External Fixes
into_all all code_regex \/\*\sExternal\sreference\s\*\/\s+ removeall_matched;
into definitionblock code_regex ,\sUnknownObj removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG0\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG0.PEGP\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG1\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG2\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEGP\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEGP.GFX0\)\s+ removeall_matched;
# Add the DTGP method
into method label DTGP remove_entry;
into definitionblock code_regex . insert begin
Method (DTGP, 5, NotSerialized)\n
{\n
If (LEqual (Arg0, Buffer (0x10)\n
{\n
/* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,\n
/* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B\n
}))\n
{\n
If (LEqual (Arg1, One))\n
{\n
If (LEqual (Arg2, Zero))\n
{\n
Store (Buffer (One) { 0x03 }, Arg4)\n
Return (One)\n
}\n
If (LEqual (Arg2, One))\n
{\n
Return (One)\n
}\n
}\n
}\n
Store (Buffer (One) { 0x00 }, Arg4)\n
Return (Zero)\n
}
end;
# Add Darwin to the supported operating systems
into method label _INI code_regex (\s+)(If\s\(_OSI\s\("Windows\s2001"\)\)) replace_matched begin \n
If (_OSI ("Darwin"))\n
{\n
Store (0x2710, OSYS)\n
}\n
\n
$2
end;
#MSI Haswell Additional Fixes
into_all all code_regex _T_([0-6]) replaceall_matched begin T_%1 end;
into device label EC0 set_label begin EC end;
into_all all code_regex EC0 replaceall_matched begin EC end;
into method label _REG parent_label EC remove_entry;
into device label COPR set_label begin MATH end;
into_all all code_regex COPR replaceall_matched begin MATH end;
into_all all code_regex 0x000EC00 replaceall_matched begin 0x000EC000 end;
into_all all code_regex 0xFEC0000 replaceall_matched begin 0xFEC00000 end;
into_all all code_regex (Name\s\(_HID,\s"ABCDEFGH") replace_matched begin Name (_HID, EisaId ("PNP0C15") end;
into device label SIO1 code_regex 0x00(,\s+//\s+L) replaceall_matched begin 0x01%1 end;
into_all all code_regex (Acquire\s\(MUT0,\s0x)....\) replace_matched begin %1FFFF) end;
into_all all code_regex pnp0c14 replaceall_matched begin PNP0C14 end;
into method label _CRS parent_label PCI0 code_regex CreateDWordField\s\(BUF0,\s\\_SB.PCI0._Y0F._LEN,\sMSLN\) replace_matched begin CreateQWordField (BUF0, \\_SB.PCI0._Y0F._LEN, MSLN) end;
into_all all code_regex (Return\s\(Package\s\()0x00(\)\s\{\}\)) replace_matched begin %1Zero%2 end;
into_all all code_regex (Name\s\(XMPT,\sBuffer\s\()0x0000(\)\s\{\}\)) replace_matched begin %1Zero%2 end;
into method label RDGI parent_label _SB insert begin Return (Zero) end;
into method label RDGP parent_label _SB insert begin Return (Zero) end;
into method label SPL1 insert begin Return (Zero) end;
into method label _DEP parent_label PRT1 code_regex (Return\s\(Package\s\()0x00(\)\s\{\}\)) replace_matched begin %1Zero%2 end;
into method label _HID parent_label _SB.TPM code_regex (Return\s\(Zero\)\s*) removeall_matched;
into method label _HID parent_label _SB.TPM insert begin Return (Zero) end;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG0\) removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG1\) removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG2\) removeall_matched;
into method label _DEP parent_label XHC remove_entry;
#into method label PR2S parent_label XHC remove_entry;
into method label _PS0 parent_label XHC remove_entry;
into method label _PS3 parent_label XHC remove_entry;
into method label _E1E parent_label _GPE insert begin Return (Zero) end;
#into method label RDGI parent_label _SB code_regex Return\s\(Zero\) remove_matched;
#into method label RDGP parent_label _SB code_regex Return\s\(Zero\) remove_matched;
into method label ADBG parent_label PRT1 code_regex (Return\s\(Package\s\()0x00(\)\s\{\}\)) remove_matched;
into method label ADBG replace_content begin
If (CondRefOf (MDBG))\n
{\n
Return (MDBG)\n
}\n
Return (Zero)\n
end;
into device label SAT0 set_label begin SATA end;
into_all all code_regex SAT0 replaceall_matched begin SATA end;
into device label SAT1 remove_entry;
into method label _DSM parent_label SATA remove_entry;
into device label SATA insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x08) {\n
"AAPL,slot-name", "Built In",\n
"name", "Intel AHCI Controller",\n
"model", Buffer (0x2D) {"Intel 8 Series Chipset Family SATA Controller"},\n
"device_type", Buffer (0x0F) {"AHCI Controller"},\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
# Fix HDEF device for the Realtek ALC892 audio codec
into method label _DSM parent_label HDEF remove_entry;
into device label HDEF insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x10) {\n
"AAPL,slot-name", "Built In",\n
"name", "Realtek Audio Controller",\n
"model", Buffer () {"Realtek ALC892 Audio Controller"},\n
"device_type", Buffer (0x10) {"Audio Controller"},\n
"layout-id", Buffer (0x04) {0x01,0x00,0x00,0x00},\n
"PinConfigurations", Buffer (Zero) {},\n
"MaximumBootBeepVolume", Buffer(One) {0x40},\n
"hda-gfx", Buffer (0x0A) {"onboard-1"}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
# Fixes 'Built-in' status for Intel Gigabit Ethernet
into method label _DSM parent_label GLAN remove_entry;
into device label GLAN insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x0C) {\n
"AAPL,slot-name", "Built In",\n
"name", "Intel Ethernet Controller",\n
"model", "Intel I217-V Gigabit Network Controller",\n
"device_type", Buffer (0x13) {"Ethernet Controller"},\n
"built-in", Buffer (One) {0x01},\n
"location", Buffer (0x02) {"1"}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
# Patches the Intel USB3 on Intel 8 Series chipsets to allow more power output
#Fix EHC1
into method label _DSM parent_label EHC1 remove_entry;
into device label EHC1 insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x15) {\n
"AAPL,slot-name", "Built In",\n
"name", "Intel EHCI Controller",\n
"model", Buffer(0x3E) {"Intel 8 Series Chipset Family USB Enhanced Host Controller #1"},\n
"device_type", Buffer (0x0E) {"USB Controller"},\n
"AAPL,current-available", 0x0834,\n
"AAPL,current-extra", 0x0A8C,\n
"AAPL,current-in-sleep", 0x03E8,\n
"AAPL,current-extra-in-sleep", 0x0834,\n
"AAPL,max-port-current-in-sleep", 0x0A8C,\n
"AAPL,device-internal", 0x02,\n
Buffer (One) {0x00}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
#Fix EHC2
into method label _DSM parent_label EHC2 remove_entry;
into device label EHC2 insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x15) {\n
"AAPL,slot-name", "Built In",\n
"name", "Intel EHCI Controller",\n
"model", Buffer (0x3E) {"Intel 8 Series Chipset Family USB Enhanced Host Controller #2"},\n
"device_type", Buffer (0x0E) {"USB Controller"},\n
"AAPL,current-available", 0x0834,\n
"AAPL,current-extra", 0x0A8C,\n
"AAPL,current-in-sleep", 0x03E8,\n
"AAPL,current-extra-in-sleep", 0x0834,\n
"AAPL,max-port-current-in-sleep", 0x0A8C,\n
"AAPL,device-internal", 0x02,\n
Buffer (One) {0x00}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
#Fix XHC1
into method label _DSM parent_label XHC remove_entry;
into device label XHC insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x15) {\n
"AAPL,slot-name", "Built In",\n
"name", "Intel XHCI Controller",\n
"model", Buffer (0x37) {"Intel 8 Series Chipset Family USB xHCI Host Controller"},\n
"device_type", Buffer (0x0E) {"USB Controller"},\n
"AAPL,current-available", 0x0834,\n
"AAPL,current-extra", 0x0A8C,\n
"AAPL,current-in-sleep", 0x03E8,\n
"AAPL,current-extra-in-sleep", 0x0834,\n
"AAPL,max-port-current-in-sleep", 0x0A8C,\n
"AAPL,device-internal", 0x02,\n
Buffer (One) {0x00}\n
}, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end;
14. Open button patch and go in the left column to RehabMan Laptop repo;
15. Select [syn] Fix PARSEOP_ZERO Error and click apply and close;
16. If you now hit button compile it says zero errors;
17. Also apply these patches:
"Fix _WAK Arg0 v2"
"HPET Fix"
"SMBUS Fix"
"RTC Fix"
"OS Check Fix (Windows 8)"
"Fix Mutex with non-zero SyncLevel"
"Add IMEI"
"Rename PCI0.GFX0 to PCI0.IGPU"
"Rename GFX0 to IGPU"
"Rename B0D3 to HDAU"
18. Hit Command + f and search for XWAK method;"HPET Fix"
"SMBUS Fix"
"RTC Fix"
"OS Check Fix (Windows 8)"
"Fix Mutex with non-zero SyncLevel"
"Add IMEI"
"Rename PCI0.GFX0 to PCI0.IGPU"
"Rename GFX0 to IGPU"
"Rename B0D3 to HDAU"
19. Add Return(0) to it like this:
Code:
Method (XWAK, 0, Serialized)
{
Return(0)
If (LOr (LEqual (XUSB, One), LEqual (XRST, One)))
{
XSEL ()
}
}
21. In Save As field type DSDT.aml and select ACPI Machine Language Binary as File Format;
22. Copy the generated DSDT.aml file to your /EFI/CLOVER/ACPI/patched.
23. Open SSDT-3-SaSsdt.dsl with MaciASL;
24. Apply these patches:
"Rename GFX0 to IGPU"
"Rename B0D3 to HDAU"
25. Compile to check for errors;"Rename B0D3 to HDAU"
26. Click file in menu bar and in select save as;
27. In Save As field type SSDT-3-SaSsdt.aml and select ACPI Machine Language Binary as File Format;
28. Copy the generated SSDT-3-SaSsdt.aml file to your /EFI/CLOVER/ACPI/patched.
29. Open SSDT-4-IsctTabl.dsl with MaciASL;
30. Apply this patch:
"Rename PCI0.GFX0 to PCI0.IGPU"
31. Click file in menu bar and in select save as;32. In Save As field type SSDT-4-IsctTabl.aml and select ACPI Machine Language Binary as File Format;
33. Copy the generated SSDT-4-IsctTabl.aml file to your /EFI/CLOVER/ACPI/patched.
34. Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
35. Select ACPI and add these patches under DSDT Patches:
Code:
Comment: Rename _OSI to XOSI
Find: 5F4F5349
Replace: 584F5349
Code:
Comment: Rename _DSM to XDSM
Find: 5F44534D
Replace: 5844534D
37. Save config.plist;
38. Reboot.
Requirements:
Steps:
Fixing Onboard Graphics- Nvidia driver -> https://www.tonymacx86.com/nvidia-drivers/;
- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/;
- NvidiaGraphicsFixup.kext -> https://sourceforge.net/projects/nvidiagraphicsfixup/;
- Lilu.kext -> https://github.com/vit9696/Lilu/releases.
Steps:
- Download the Nvidia driver which correspond with your OS version;
- Open driver setup and follow steps until installation is completed;
- Open EFI with Clover Configurator;
- Navigate to /EFI/CLOVER/Kexts/Other/ and copy NvidiaGraphicsFixup.kext and Lilu.kext to it;
- Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Click System Parameters in left column and check NvidiaWeb and Inject System ID;
- Also select Yes for inject Kexts;
- Click Boot and under arguments uncheck nada_drv=1;
- Click Graphics and uncheck Inject intel and inject Nvidia;
- Reboot and check if graphics is working.
Requirements:
Fixing Audio- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/;
- intelgraphicsfixup.kext -> https://sourceforge.net/projects/intelgraphicsfixup/;
- FakePCIID.kext -> https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/;
- FakePCIID_Intel_HD_Graphics.kext -> https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/;
- Lilu.kext -> https://github.com/vit9696/Lilu/releases.
- Open EFI with Clover Configurator;
- Navigate to /EFI/CLOVER/Kexts/Other/ and copy intelgraphicsfixup.kext, FakePCIID.kext, FakePCIID_Intel_HD_Graphics.kext and Lilu.kext to it;
- Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Select Graphics in left column and check Inject intel;
- Reboot and check if graphics is working.
Requirements:
Steps:
Fixing HDMI audio via dedicated graphics- audio_cloverALC-130.command.zip
Steps:
- go to this page https://github.com/toleda/audio_CloverALC and click Clone Or Download button and Download ZIP.
- Go to Audio_CloverALC-master folder and copy audio_cloverALC-130.command.zip to desktop;
- Unzip audio_cloverALC-130.command.zip;
- Open terminal and cp to /Desktop;
- Execute ./audio_cloverALC-130_v0.5.command;
- Enter your password;
- Confirm Realtek ALC1150 (y/n) -> y and enter;
- Clover Audio ID Injection (y/n) -> y and enter;
- Use Audio ID: 1 (y/n) -> y and enter;
- Wait for script to succeed;
- Reboot and check if audio is working.
Requirements:
Steps:
Fixing HDMI audio via onboard graphics- audio_cloverHDMI-130.command.zip;
- EFI is mounted.
Steps:
- go to this page https://github.com/toleda/audio_CloverHDMI and click Clone Or Download button and Download ZIP.
- Go to audio_CloverHDMI-master folder and copy audio_cloverHDMI-130.command.zip to desktop;
- Unzip audio_cloverHDMI-130.command.zip;
- Open terminal and cp to /Desktop;
- Execute ./audio_cloverHDMI-130_v0.8.command;
- Enter your password;
- No HDMI audio codec(s) detected, continue (y/n) -> y and enter;
- Wait for script to succeed;
- Reboot and check if HDMI audio is working.
Requirements:
Steps:
5. Reboot and check if HDMI audio is working.
Fixing USB 2.0 and 3.0- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/.
- FakePCIID.kext -> https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/
- FakePCIID_Intel_HDMI_Audio.kext -> https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/
Steps:
- Open Clover Configurator and mount EFI partition;
- Go to /EFI/CLOVER/kexts/Other/ and copy FakePCIID.kext and FakePCIID_Intel_HDMI_Audio.kext to it;
- Go to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Select Kernel And Kext Patches and add this patch to KextsToPatch:
Code:
Name: com.apple.driver.AppleIntelFramebufferAzul
Find: 02040A00 00040000 87000000
Replace: 02041200 00080000 87000000
Comment: HDMI-audio, port 0204(12), 0x0d220003, 0x0a2e000a, 0x0a26000a
Requirements:
Steps:
5. Save config.plist;
6. Reboot.
USB Power property injection- FakePCIID_XHCIMux.kext -> https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/;
- FakePCIID.kext -> https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/;
- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/.
Steps:
- Mount EFI via Clover Configurator;
- Go to /EFI/CLOVER/kexts/Other/ and copy FakePCIID.kext and FakePCIID_XHCIMux.kext to it;
- Go to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Select ACPI and add these patches under DSDT Patches:
Code:
Comment: Rename EHC1 to EH01
Find: 45484331
Replace: 45483031
Code:
Comment: Rename EHC2 to EH02
Find: 45484332
Replace: 45483032
Code:
Comment: Rename XHCI to XHC
Find: 58484349
Replace: 5848435F
6. Reboot.
Requirements:
Steps:
4. Save config.plist;
5. Open MaciASL and create new file;
6. Paste this code in the new file:
7. Compile to check for errors;
8. Click file in menu bar and in select save as;
9. In Save As field type SSDT-EC.aml and select ACPI Machine Language Binary as File Format;
10. Copy the generated SSDT-EC.aml file to your /EFI/CLOVER/ACPI/patched.
11. Reboot.
Wifi TP-Link TL-WDN4800 regdomain fix- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/;
- MaciASL -> https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/.
Steps:
- Mount EFI via Clover Configurator;
- Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Select ACPI and add this patch under DSDT Patches:
Code:
Comment: Rename H_EC to EC
Find: 485F4543
Replace: 45435F5F
5. Open MaciASL and create new file;
6. Paste this code in the new file:
Code:
// Inject Fake EC device
DefinitionBlock("", "SSDT", 2, "hack", "EC", 0)
{
Device(_SB.EC)
{
Name(_HID, "EC000000")
}
}
//EOF
7. Compile to check for errors;
8. Click file in menu bar and in select save as;
9. In Save As field type SSDT-EC.aml and select ACPI Machine Language Binary as File Format;
10. Copy the generated SSDT-EC.aml file to your /EFI/CLOVER/ACPI/patched.
11. Reboot.
Requirements:
4. Save config.plist;
5. Reboot.
Enable Trim for SSD- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/;
- Mount EFI via Clover Configurator;
- Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Go to Kernel and Kext Patches and add these patches to KextsToPatch:
Code:
Name: com.apple.driver.AirPort.Atheros40
Find: 83BB2008 00000674 64
Replace: 83BB2008 000006EB 36
Comment: Override regdomain (1 of 2)
Code:
Name: com.apple.driver.AirPort.Atheros40
Find: 66C78316 09000043 0066B843 00
Replace: 66C78316 09000000 0066B800 00
Comment: Override regdomain (2 of 2)
5. Reboot.
Requirements:
4. Save config.plist;
5. Reboot.
Fix Wake from Keyboard black screen- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/.
- Mount EFI via Clover Configurator;
- Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Go to Kernel and Kext Patches and add these patches to KextsToPatch:
Code:
Name: IOAHCIBlockStorage
Find: 00415050 4C452053 534400
Replace: 00000000 00000000 000000
Comment: Trim Patch
5. Reboot.
Requirements:
Done! Happy hacking.- Clover configurator -> https://www.tonymacx86.com/resources/clover-configurator.335/.
- Mount EFI via Clover Configurator;
- Navigate to /EFI/CLOVER/ and open config.plist with Clover Configurator;
- Go to Boot and under arguments use Darkwake=8;
- Save config.plist;
- Reboot.
P.S I want to thank you @RehabMan and @toleda for the great support and guides.
Attachments
Last edited: