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

Getting-Started-With-ACPI/SSDT-EC-USBX-DESKTOP.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-EC-USBX-DESKTOP.aml

奔腾,1,2,3,4,5代酷睿处理器,SSDT-EC-DESKTOP

Getting-Started-With-ACPI/SSDT-EC-DESKTOP.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-EC-DESKTOP.aml

笔记本老规矩,6789,10代和AMD,SSDT-EC-USBX-LAPTOP

https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-EC-USBX-LAPTOP.aml​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-EC-USBX-LAPTOP.aml

笔记本奔腾,1,2,3,4,5代酷睿处理器,SSDT-EC-LAPTOP

Getting-Started-With-ACPI/SSDT-EC-LAPTOP.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-EC-LAPTOP.aml


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

Getting-Started-With-ACPI/SSDT-PLUG-DRTNIA.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-PLUG-DRTNIA.aml

SSDT-CPUR,适用于上面写到需要用到的AMD芯片,B550和A520芯片组的。

Getting-Started-With-ACPI/SSDT-CPUR.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-CPUR.aml


AWAC/ RTC

解决主板的系统时钟问题。

英特尔HEDT平台的主板,X99和X299主板用这个:SSDT-RTC0-RANGE-HEDT

Getting-Started-With-ACPI/SSDT-RTC0-RANGE-HEDT.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-RTC0-RANGE-HEDT.aml

其它有列到需要AWAC的:SSDT-AWAC

Getting-Started-With-ACPI/SSDT-AWAC.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-AWAC.aml


NVRAM

约等于断电不丢数据的ram,总之有比没有好。

SSDT-PMC

支持的主板:

  • B360
  • B365
  • H310
  • H370 (HM370不需要)
  • Z390

所有的true 300系列,除去Z370都能用。

上面搬来的表里面提到的笔记本也是用这个。

https://github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-PMC.aml​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-PMC.aml


USB

400系主板使用。笔记本需要的也是它。

某些OEM厂商把USB搞砸了,这玩意能把它修好。

SSDT-RHUB

Getting-Started-With-ACPI/SSDT-RHUB.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-RHUB.aml


HEDT的PCI

SSDT-UNC

X99,X79,C602,C612主板需要。关闭了一些不需要的设备,防止kernel panic。

Getting-Started-With-ACPI/SSDT-UNC.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-UNC.aml


笔记本专用

CPU, EC, AWAC, USB, NVRAM上面都有讲到过。

backlight键盘背光

修复键盘背光灯的问题,没灯的可以跳过。与GPU有关,需要whatevergreen,所以用CPU硬解开机的勇士请忽略。

Clarksfield~Kaby

使用SSDT-PNLF

Getting-Started-With-ACPI/SSDT-PNLF.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-PNLF.aml

Coffee Lake(8代)及以后请用SSDT-PNLF-CFL

Getting-Started-With-ACPI/SSDT-PNLF-CFL.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-PNLF-CFL.aml

缺点:极少一部分机型可能不好用。如果你的显卡没问题肯定好用,但是背光一旦出错就说明你的显卡可能。。。。。。

I2C Trackpad触摸板

Haswell及更新的CPU需要。

SSDT-XOSI(就是你看到的那个SSDT-GPI0)让我们电脑以为它在启动Windows。但是这有可能导致windows无法正常启动,所以双系统慎用。

Getting-Started-With-ACPI/SSDT-XOSI.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-XOSI.aml

SSDT-IMEI

这个文件有点膨胀,OpenCore建议还是自己手工制作,因为它会拖慢开机。

Getting-Started-With-ACPI/SSDT-IMEI.aml at master · dortania/Getting-Started-With-ACPI​github.com/dortania/Getting-Started-With-ACPI/blob/master/extra-files/compiled/SSDT-IMEI.aml

IRQ

奔腾,12345代酷睿笔记本需要解决IRQ冲突问题。

没有“作业”可抄,需要自己按照官网说法搞。

SSDTs: The easy way

这个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文件夹中。