ACPI就就好比人类的大脑,只不过ACPI是主板的大脑,它负责告诉各部分元件应该干什么活,所以ACPI对于黑苹果非常重要,没有ACPI就像没了大脑的人,肯定没办法行动的。由于普通电脑的ACPI和MACOS电脑并不一样,所以我们就需要往ACPI目录中放DSDT补丁,用来达到让普通主板兼容MACOS系统。
OC哪怕是现在的0.84也不能和以前的引导一样,直接把DSDT或者Kernel直接甩进EFI里面就自己跑起来。而是要导入到OC才行,具体导入方法如下:

在MacOS里面可以选择OCC进行ACPI的配置,各个机型所需的ACPI在后面有写。注意,OC的版本一样要对应上你基本EFI的版本。否则发生奇奇怪怪的事。那当然也有朋友说,我有MacOS还用得着吃黑苹果么?你这个不是脱裤子放屁?嘿嘿,那你不会用虚拟机去做么?(好吧,准备有同学抄砖头了,那么接下来说怎么在windows下面怎么用OCAT配置ACPI。

记得OCAT一定要选对你EFI的版本,OCAT可以选择多个版本,下面是操作说明

下面就是各个平台所需的ACPI文件,请查阅(ACPI所需文件转自知乎)
台式机(桌面处理器)

HEDT

笔记本电脑(两张图,别漏了)Coffee Lake有八代和九代,注意区分。


注:Sandy& Ivy Bridge需要的CPU-PM是macOS安装完成后所需的,暂时不要管。而且这个如果不装对macOS影响不大,对双系统Windows影响大(但还是最好装一下)
这些文件我们用prebuilt方法。官网说这个方法最简单,下载下来放进文件夹,结束;
但是它并不能教会你什么,而黑苹果玩的是这个过程。
而且另外一个缺点是,例如SSDT-EC-USBX-DESKTOP,它把sky lake及以后的每一代的SSDT都放了进去,所以开机一个个试过去会导致开机慢一丢丢。
不管这些,我们的重点在于亮机,好用。但是如果你需要,点击上面的官网链接跳转过去一个一个制作就行了。手动制作需要你再那台电脑上已经安装了win/ linux才行。当然,文末会讲如何手动制作,因为有一个不能按照这种方法做。
下载的aml文件是别人已经包装好了的,直接放进ACPI文件夹。
EC
一般电脑都有EC,但是跟macOS的AppleACPIEC driver不兼容,所以我们要禁用它。但是macOS启动时会寻找一个名叫EC的玩意,我们需要创建一个假的。
英特尔6,7,8,9,10代酷睿处理器,AMD受支持的处理器,SSDT-EC-USBX-DESKTOP
奔腾,1,2,3,4,5代酷睿处理器,SSDT-EC-DESKTOP
笔记本老规矩,6789,10代和AMD,SSDT-EC-USBX-LAPTOP
笔记本奔腾,1,2,3,4,5代酷睿处理器,SSDT-EC-LAPTOP
Getting-Started-With-ACPI/SSDT-EC-LAPTOP.aml at master · dortania/Getting-Started-With-ACPI
CPU
SSDT-PLUG
XNU’s CPU Power Management,比较明显,管CPU供电的,如果没有它的后果大家应该清楚的吧~
列举要用SSDT-PLUG的下载SSDT-PLUG-DRTNIA
SSDT-CPUR,适用于上面写到需要用到的AMD芯片,B550和A520芯片组的。
AWAC/ RTC
解决主板的系统时钟问题。
英特尔HEDT平台的主板,X99和X299主板用这个:SSDT-RTC0-RANGE-HEDT
其它有列到需要AWAC的:SSDT-AWAC
NVRAM
约等于断电不丢数据的ram,总之有比没有好。
SSDT-PMC
支持的主板:
- B360
- B365
- H310
- H370 (HM370不需要)
- Z390
所有的true 300系列,除去Z370都能用。
上面搬来的表里面提到的笔记本也是用这个。
USB
400系主板使用。笔记本需要的也是它。
某些OEM厂商把USB搞砸了,这玩意能把它修好。
SSDT-RHUB
HEDT的PCI
SSDT-UNC
X99,X79,C602,C612主板需要。关闭了一些不需要的设备,防止kernel panic。
笔记本专用
CPU, EC, AWAC, USB, NVRAM上面都有讲到过。
backlight键盘背光
修复键盘背光灯的问题,没灯的可以跳过。与GPU有关,需要whatevergreen,所以用CPU硬解开机的勇士请忽略。
Clarksfield~Kaby
使用SSDT-PNLF
Coffee Lake(8代)及以后请用SSDT-PNLF-CFL
缺点:极少一部分机型可能不好用。如果你的显卡没问题肯定好用,但是背光一旦出错就说明你的显卡可能。。。。。。
I2C Trackpad触摸板
Haswell及更新的CPU需要。
SSDT-XOSI(就是你看到的那个SSDT-GPI0)让我们电脑以为它在启动Windows。但是这有可能导致windows无法正常启动,所以双系统慎用。
SSDT-IMEI
这个文件有点膨胀,OpenCore建议还是自己手工制作,因为它会拖慢开机。
IRQ
奔腾,12345代酷睿笔记本需要解决IRQ冲突问题。
没有“作业”可抄,需要自己按照官网说法搞。
这个easy way其实也没有那么easy。害是有点复杂的。当然,黑苹果的乐趣就在这里。
不过,这就是我说的为什么对于老笔记本,Clover比OC简单,因为SSDT/ DSDT中哪怕只有一个按照这种方法做,都很麻烦。
具体方法看下面手工做法。
纯手工打造SSDTs
GitHub – corpnewt/SSDTTime: SSDT/DSDT hotpatch attempts.github.com/corpnewt/SSDTTime
首先你得在准备安装黑苹果的电脑上得有个Windows或者Linux,后期再删掉也行。
然后下载如下框中的这个文件:(Linux选择倒数第二个那个python文件)
*Windows的话也建议装个python

(我找了半天没找到release,回头一看,啊,居然在列表里。)
桌面新建txt纯文本文件。点开GitHub上面的那个bat全篇复制,把.txt改成.bat。(因为我没找到哪边有下载)
右键此文件,以管理员运行。先选8,dump DSDT,先备份,咱后面玩坏了只要备份还在就行。
然后就各取所需。
IRQ的问题选1. FixHPET – Patch out IRQ Conflicts。其他的会意即可,就是剩下来的那几个,如果下载了上面的文件就不需要操作。
直接在下面输入你需要的数字,然后回车。就好了。
此方法适用于老电脑,像什么USBX的都不支持。
对了,别忘了这种方法做出来的文件,一定要找到它(还是aml结尾的),然后放入ACPI文件夹。一般来说它会和你放SSDTTime的文件夹相同。
放且只放AML文件到ACPI文件夹中。