【实战业余IT】让你的PC吃上黑苹果(四)

2024-08-12 22:14:13 18点赞 96收藏 29评论

书接上回,按照篇(三)操作,首次安装所需的EFI文件基本收集完整,这其中:

  1. ACPI文件不一定齐,如果卡代码有可能继续添加;

  2. 安装后可能还需要添加一些kext进行优化;

  3. Resources文件夹篇幅放在安装后优化部分,这部分不影响安装;

所以本篇就继续篇(三)提到的config文件编写。

认识config.plist

电脑高手都比较清楚,很多软件都会把配置文件命名为config,就像你在Windows下,按Win+R,调出运行窗口,输入msconfig,回车,可以试试看是什么。

Windows下很多配置文件会以.ini形式出现,可以用笔记本直接打开编辑;而.plist是mac的格式,对于初次在Windows下安装黑苹果的朋友,需要借助OCAT(OpenCore Auxiliary Tools)ProperTreeOpenCore Configurator编辑文件,都可以从Github发布页下载,工具有差异但原理一致。

Windows系统的朋友推荐使用OCATProperTree虽然更轻量,但是运行需要Python支持,而且界面对新手不是很友好;有苹果电脑的朋友,建议无脑选OpenCore Configurator

OCAT界面OCAT界面

下面以OCAT为例,OCAT的教程很容易找到,不废话。按Ctrl+O,打开你准备好的config.plist

OC的config文件主要分8个大项,对应OCAT左侧红色框,本篇会逐项进行编写逻辑梳理:

  1. ACPI:主板相关参数设置,我们需要在这里把上一篇下载的文件,添加到config中,才会加载;

  2. Booter:启动相关,这里设置偏底层,需要关注的不多,更重要的启动参数在第6部分;

  3. DeviceProperties(简写为DP):设备属性,核显和独显的参数注入都是在这部分;

  4. Kernel:内核相关参数设置,Kext文件夹的驱动加载,CPU仿冒,与BIOS关联的设置在这部分;

  5. Misc:杂项设置,Tools文件夹工具在这部分添加,Resources文件夹的主题在这部分添加,引导菜单,调试/安全选项在这部分;

  6. NVRAM:模拟的一个储存器,最重要的启动参数(boot-args)在这里设置;

  7. PlatformInfo(简写为PI):机型信息,需要洗白三码,登陆AppleID的朋友,小板凳准备好;

  8. UEFI:UEFI参数设置,比较抽象,Drivers文件夹的工具在这里添加。


编写config

如我们篇(三)开头所说,现在的config.plist是一个模板,模板代表整个文件现在有很多范例的内容,所以我们第一步要做的,就是先把config.plist文件进行瘦身:

OCAT删除操作示意OCAT删除操作示意
  1. ACPI大项下,Add/Patch小项包含的所有项目,全部删除(如上图示意);如果你不是SandyBridge或Ivy Bridge主板Delete小项包含的所有项目,全部删除;

  2. DeviceProperties大项下,Add小项包含的所有项目,全部删除;

  3. Kernel大项下,Add/Block/Force/Patch小项包含的所有项目,全部删除;

  4. Misc大项下,BlessOverride/Entries/Tools小项包含的所有项目,全部删除;

  5. UEFI大项下,Drivers小项包含的所有项目,除按照篇(三)保留的文件,其他删除;

  6. 请务必核对瘦身内容,不要错删,瘦身于我有强迫症之嫌,但是第一次安装你会少遇到好多因为config和补丁/驱动文件不统一带来的bug,还是挺闹心的。


【ACPI部分】

  1. Add项:瘦身后,Add部分窗口是空的,点击上一张截图右下角的加号按钮,在打开窗口全选你EFI/OC/ACPI内的文件,点打开,OCAT会自动帮你把所有文件添加到窗口,添加到窗口后,Enabled项复选框☑️true代表加载,false代表不加载,不加载的aml文件不生效,请按需设置;OCAT也支持文件拖拽,把所有文件拖进窗口,工具会自动按照文件名去重;(只要ACPI是对的,文件名和顺序不重要

  2. Delete项:如果你是SandyBridge或Ivy Bridge主板,在第1步添加了CPU-PM.aml后,这里预设的Delete CpuPm、Delete Cpu0Ist的Enabled项请设置为☑️true;其他主板直接忽略或删除;

  3. Patch项:OCATOpenCore Configurator在这一部分的热补丁是做了预制的,尽量避免手动输入,容易输错而且错了以后非常难查。举个🌰,如果你是笔记本打算黑苹果,在第1步添加了SSDT-XOSI.aml后,需要再添加Change _OSI to XOSI补丁使用,添加方法如下图。

  4. Patch项补充:如果你编写完EFI,启动时发现仍然卡代码,同类经验需要添加热补丁的,请按需添加;如果你不确认还需要热补丁,这部分编写可以到此结束;

  5. Quirks项:建议保持原样;如果卡代码,同类经验需要修改的,请按需修改;

  6. 友情提醒,这里编写的内容,系统会加载,如果内容是错的,如aml文件名称与config不一致,添加的aml文件和EFI/OC/ACPI当中的文件数量不一致,Delete的补丁和Patch的补丁参数错误等,所以涉及相关的文件改动务必慎重改动后务必更新config文件

OCAT添加预制热补丁OCAT添加预制热补丁

写到这里相信大家都理解了先收集文件,后编写config,同时不建议手动输入,这样的做法会减少很多手残带来的烦恼。


【Booter部分】

  1. MmioWhitelist项:忽略,如卡代码,确认是否需要修改;(这部分很少需要修改)

  2. Patch项:忽略,如卡代码,确认是否需要修改;(这部分很少需要修改)

  3. Quirks项:从Booter开始,config文件出现了很多Quirks部分的选项,这些选项会越来越随硬件差异而分化。回顾篇(三)提到过的手册Dortania's OpenCore Install Guide,之后的Quirks选项的True or False原则,建议按照手册建议逐项设定。

举个🌰,Z97主板,在手册左边导航栏找到 config > Intel Desktop config.plist > Haswell > Booter,点击进入该部分内容,右侧找到Quirks,手册提到的项目标记的是YES,请对应config文件该项目☑️,未提到的项目忽略。

【实战业余IT】让你的PC吃上黑苹果(四)

【DeviceProperties部分】

来到最重要的部分之一了。这一部分可以注入设备信息,实现核显的驱动,声卡ID注入,独立显卡参数优化设备内建等等,如果你遇到相关问题,就要把这部分内容认真编写。

【实战业余IT】让你的PC吃上黑苹果(四)
  1. Add部分:同样OCAT预制了一些内容,但是这个不一定保证适用于你(这里的信息确认要通过PCI信息,有兴趣的同学可以自行补课,在macOS下有万能的军刀Hackintool,我们会在优化的时候再让他跟大家见面)。Add部分的注入原则是按需,第一次安装的时候尽量按照需要注入的最小信息编写。

    1. 只驱动Intel核显的朋友,敲黑板啦,按照上图,在左侧窗格添加PciRoot(0x0)/Pci(0x2,0x0)项目,这个是核显的设备PCI路径(我至今没见过其他路径的,暂时默认如此);如果是Intel 核显 + AMD显卡,第一次安装可以不用驱动核显,放在优化的时候做;

    2. 添加后,选中PciRoot(0x0)/Pci(0x2,0x0),右侧窗格是核显驱动需要注入的信息,其中:

      1. AAPL,ig-platform-id,代表核显(iGPU)的平台ID,除了部分如UHD 630可以免驱以外,大部分Intel 核显需要注入这个参数才能正常驱动;这个参数怎么选,简单的方法是继续看手册。但是这里要注意,这里的平台选择,要以CPU为准。还是举个🌰,i7-8700 + B150主板魔改,CPU是Coffee Lake平台,主板是Skylake平台,这次要选Coffee Lake,找到config > Intel Desktop config.plist > Coffee Lake > DeviceProperties,点击进入该部分内容,右侧找到Add,按照手册的建议,这一项的参数选择最经典的 07009B3E;少部分情况这个参数驱动不了的时候,可以尝试 00009B3E;

      2. device-id,这个参数不是必选项,在注入上一个参数后,如果显卡可以正常驱动,请忽略;如果不能正常驱动,比如在我驱动 E-2176m 的时候,这个核显UHD P630,本质就是UHD 630,但是不注入 device-id 就无法正常驱动,在手册里不同的核显都会标注适用的 device-id,简单一点的办法,如果你的 AAPL,ig-platform-id 是AA BB CC DD,那device-id可以先尝试一下CC DD 00 00。实操上,E-2176m 的 AAPL,ig-platform-id 是 07009B3E,device-id 是 9B3E0000;(注入完的效果看下图)

      3. 其他的缓冲帧的注入,推荐黑果小兵的部落阁发布的教程,我们在优化环节展开;

      4. 黑苹果原生支持DP接口,HDMI需要在这里定制接口参数,不支持原生的VGA接口,我用过的微星H310m-S03主板,实测是DP转接的VGA接口,可以显示。所以装机最优选DP,如果你用HDMI启动到一半黑屏,那就说明需要定制接口;(定制HDMI接口是一件比较麻烦的工作,黑果小兵的部落阁有教程,推荐在装好系统后用Hackintool定制);

    3. 篇(三)讲了AppleALC.kext驱动(他可以帮助识别声卡型号,但同一型号的声卡也有差异),需要注入layout-id才可以正常驱动声卡(相当于选择正确的参数)。这时候就需要在Add部分左侧窗格继续添加PciRoot(0x0)/Pci(0x1F,0x3),在右侧窗口注入layout-id。不过我个人习惯在启动参数注入layout-id,所以layout-id的选择原则,在后续教程展开;

    4. 对于AMD免驱的独显,大神摸索出可以在这里注入参数提高某些型号(如RX580)性能的方式,但是实际使用效果不评价,在优化部分可以展开篇幅,国光的黑苹果安装教程收录了详细的注入方法,建议系统安装后折腾;

    5. 其余设备,如蓝牙的注入等,请按照有特殊要求设备的驱动教程操作,这一部分逻辑上应该比较清爽,比如我装过的 E3-1231v3 + Z97 组合,这一部分完全空白;

  2. Delete部分:如有特殊设备,按照设备教程操作,99%的情况,不需要改动,忽略即可。

DeviceProperties参数注入结果DeviceProperties参数注入结果

【Kernel部分】

终于来到大家最喜欢的驱动环节了,这部分编写的质量,决定了你PC机可以驱动的部件,质量越高,使用体验就会越好。

  1. Add部分,参考ACPI添加aml文件的步骤,要把你下载的kext文件全部添加进来,同时☑️true。这里的大部分信息不需要改动,必须保持与Kext文件夹内一致,只是有两处需要特殊说明:

    1. 第一,在这里kext文件的加载顺序非常重要!国际共识:Lilu排第一,VirtualSMC排第二,其余的可以随意;除了我们收集的驱动外,在我联想笔记本黑苹果时,VoodooI2C.kext一个驱动会引入很多条目,条目的顺序也会影响驱动效果;在我驱动QCNFA335网卡的时候,同样WiFi驱动的顺序不能颠倒;如果你需要利用OCLP驱动博通网卡或旧显卡时,IOSkywalkFamily.kext和IO80211FamilyLegacy.kext的顺序也不能颠倒;

    2. 第二,在每一项驱动横向参数中,都有MinKernel和MaxKernel两个参数是默认留空(并不是所有驱动都要设置这两个参数),MinKernel代表驱动加载的最小内核代码,MaxKernel代表驱动加载的最大内核代码。我们在篇(三)的时候提到过,有部分驱动(如AirportItlwm.kext)是需要与系统版本号保持一致的,或者像BrcmPatchRAM不同版本需要不同文件的,就需要用到这两个参数;

    3. 举个🌰,我需要安装macOS 11.7.10和12.7.6,我需要让博通的网卡在两个系统都驱动正常,那么:

      1. 要添加BrcmBluetoothInjector.kext,MinKernel需要设置为20.0.0(可选),MaxKernel需要设置为20.99.99(必选);

      2. 也要添加BlueToolFixup.kext,MinKernel需要设置为21.0.0(必选),MaxKernel需要设置为21.99.99(可选)。

      3. 20.0.0-20.99.99代表macOS 11.0到11.7.10的所有版本,意思是运行macOS 11的时候,加载BrcmBluetoothInjector.kext,同理运行macOS 12的时候,加载BlueToolFixup.kext,就不会产生冲突导致bug;

    4. 再举个🌰,坑爹的macOS在14.4系统的时候大改了WiFi的接口,导致macOS 14.4的AirportItlwm.kext和macOS 14.3的出现了大幅差异,并且14.4加载14.3的驱动会崩溃,因此需要给14.3的AirportItlwm.kext驱动,设置MaxKernel为23.3.99,才能顺利在线升级。

    5. 这里留一个问题,如果要安装macOS 14.5和macOS 13.6.8的双系统,要怎么设置这两个参数呢?

  2. Block部分,这部分是阻止macOS系统内核运行的,常用于第三方驱动和系统驱动冲突的时候(比如OCLP需要阻止 com.apple.iokit.IOSkywalkFamily 加载),请按照有冲突的驱动提供的教程编写,大部分的时候直接忽略;

  3. Force部分,强制加载的内容,没有特殊需求直接忽略;

  4. Patch部分,没有特殊需求直接忽略;

  5. Emulate部分,仿冒CPU,对应Clover的FakeCPUID功能。macOS只使用了Intel一部分CPU,针对每一个CPU开发了电源管理,这个是以CPU ID(查询CPU ID推荐CPU World)白名单的形式写在系统中的,而不在这个白名单的CPU,会因为系统无法识别而崩溃,所以我们只能通过伪造ID的方法骗OC你的CPU在白名单中,实现黑苹果安装:

    • 仿冒的规则是通过Intel官方查询的CPU ID格式为A0655,补齐到0x0A0655,转换为55 06 0A 00(转换规则感兴趣的果友可以自行补课)作为Cpuid1Data修改参数,Cpuid1Data占用的修改位,对应Cpuid1Mask用FF标记,其余用0填充,共32位;以OpenCore官方Configuration文件(OpenCore官方包Docs文件夹下)信息举例:

    • Haswell-E(0x0306F2)建议仿冒 Haswell(0x0306C3):

      Cpuid1Data: C3 06 03 00 00 00 00 00 00 00 00 00 00 00 00 00

      Cpuid1Mask: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00

    • Broadwell-E(0x0406F1)建议仿冒 Broadwell(0x0306D4):

      Cpuid1Data: D4 06 03 00 00 00 00 00 00 00 00 00 00 00 00 00

      Cpuid1Mask: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00

    • Comet Lake U62(0x0A0660)建议仿冒 Comet Lake U42(0x0806EC):

      Cpuid1Data: EC 06 08 00 00 00 00 00 00 00 00 00 00 00 00 00

      Cpuid1Mask: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00

    • Rocket Lake(0x0A0670)建议仿冒 Comet Lake(0x0A0655):

      Cpuid1Data: 55 06 0A 00 00 00 00 00 00 00 00 00 00 00 00 00

      Cpuid1Mask: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00

    • Alder Lake(0x090672)建议仿冒 Comet Lake(0x0A0655):

      Cpuid1Data: 55 06 0A 00 00 00 00 00 00 00 00 00 00 00 00 00

      Cpuid1Mask: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00

    • 上述建议包含了时代以上的Intel CPU仿冒十代CPU的建议,感兴趣的朋友可以尝试仿冒八代等,电源管理合适才是最佳方案;

    • 奔腾和赛扬系列只能通过仿冒Ivy Bridge(0x0306A9)实现,因为这个模型禁用了电源管理,而我用G5400T实测,0x0306A9 和 0x0306A0 两个ID都可以安装Big Sur:

      Cpuid1Data: A9 06 03 00 00 00 00 00 00 00 00 00 00 00 00 00

      Cpuid1Mask: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00

    • 赛扬系列还可以尝试:

      Cpuid1Data: E0 06 01 00 00 00 00 00 00 00 00 00 00 00 00 00

      Cpuid1Mask: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00

    • 奔腾和赛扬还需要☑️DummyPowerManagement和下面讲解的AppleXcpmForceBoost。

  6. Quirks部分,这里同样建议按照Booter的Quirks部分过一遍手册,因为不同主板设置可能不同,单拎出来几个聊聊:

    1. AppleCpuPmCfgLock,比Broadwell更老的主板☑️,否则忽略;

    2. AppleCpuCfgLock,CFG锁选项,☑️代表通过OC绕过CFG锁,这一点在BIOS设置时有用,第一次安装务必☑️;

    3. AppleXcpmForceBoost,强制CPU保持高主频,亲测有效,按需☑️;

    4. CustomSMBIOSGuid,Dell品牌机,或装双系统的时候有用,按需☑️;

    5. DissableMapper,绕过VT-d,第一次安装务必☑️;

    6. XhciPortLimit,macOS限制每个主板最多15个USB口(有可能你插U盘的USB口会被屏蔽),☑️这一项可以打破15个的限制,第一次安装务必☑️,同时配合USBInjectAll.kext

    7. 其他部分,建议按照手册建议设置。

  7. Scheme部分,KernelArch选择x86_64,其他保持原样。

Kernel部分非常重要,编写的变化也非常多,手册里有非常详细的建议,但是按照手册建议不一定能解决100%的问题,尤其是Add部分,会有很多未收录的kext。对于首次安装,逻辑上加Lilu、VirtualSMC和WhateverGreen,就足够引导安装,只是没驱动的硬件不工作而已。


【Misc部分】

OC引导界面展示OC引导界面展示
  1. Boot部分,这里是对于引导页面的参数设置:

    1. PickerMode:篇(三)Drivers部分提到的OpenCanopy.efi是可视化引导界面的前提,如果你喜欢上面这可视化的引导界面,这一项要选External;如果不需要,选Builtin即可;

    2. PickerAttributes:建议设置为17,后续可以自行优化;

    3. ShowPicker:☑️后会出现引导菜单,否则直接引导进入默认启动项,第一次安装建议☑️,后续按需调整;(单macOS系统稳定使用时可以不勾选,双系统时保持☑️)

    4. Timeout:在ShowPicker☑️后,这里是设置引导菜单停留时间的;ShowPicker不勾选,这里的设置不生效;

    5. HideAuxiliary:☑️这一项后,Recovery、Reset NVRAM、Toggle SIP等会隐藏,需要按空格键才显示,第一次安装建议不勾选,稳定使用后建议☑️;

    6. PickerVariant:这里是选择主题的位置,后续在美化的时候展开篇幅;

    7. 其他部分按照手册建议设置,OCAT也提供了更直观的设置选项;

  2. Debug部分,回顾篇(二)开篇提到的OpenCore-DEBUG版本,如果你使用的是DEBUG版本:

    1. 第一次安装时,Target填67,☑️DisableWatchDog、AppleDebug、ApplePanic三项;

    2. 稳定使用后,Target填0,取消勾选DisableWatchDog、AppleDebug、ApplePanic三项;

  3. Security部分

    1. ScanPolicy的值改为0,否则有可能在安装界面看不到你的硬盘;

    2. Vault的值改为Optional;

    3. SecureBootModel的值默认选Default,如果卡代码,改为Disabled;(macOS 14之前大部分机型用Default都OK,14有部分机型设为Disabled才能正常启动);

    4. 其他选项按照手册建议设置。

  4. Serial部分,我没研究过,忽略即可,有需要按照其他教程修改;

  5. BlessOverride部分,在OC扫描不到其他系统的引导程序时,手动指定引导程序,用于多系统引导,但是鉴于OC引导其他系统有局限性,清空忽略即可;

  6. Entries部分,用于添加启动项,同样建议清空忽略;

  7. Tools部分,这里就是Tools文件内容引入config的位置,引入方式参考ACPI部分的aml文件,没有需求,清空忽略即可;


【NVRAM部分】

  1. Add部分

    1. 如果你在跑码或走进度条的过程中,文字/图标会变小一次(原因是分辨率变化,像我就会遇到1080P变成4K)。如果你想保持前后分辨率一致,那么在4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14项右侧窗口中,添加UIScale项,数值为2

    2. 第一次安装,如果你希望安装界面是中文,则在7C436110-AB2A-4BBB-A880-FE41995C9F82项右侧的窗口中,添加prev-lang:kbd项目(Data类型),数值为7A682D48616E773A323532;(啰嗦一句,如果你改了这里,遇到安装界仍然面是俄语,记得回到启动界面,做一次Reset NVRAM);

    3. 如果你使用了Intel网卡或者CSR8510 A10,安装了macOS 12以上的系统,在Kernel加载了篇(三)收集的驱动后,还需要在7C436110-AB2A-4BBB-A880-FE41995C9F82项右侧的窗口中添加两项(按照不同网卡,前两条选一条即可):

      • 【非AX200/201】bluetoothInternalControllerInfo(Data类型),数值:00000000 00000000 00000000 0000;

      • 【AX200/201】bluetoothInternalControllerInfo(Data类型),数值:00000000 00000000 89653A55 2EFD;

      • bluetoothExternalDongleFailed(Data类型),数值:00;

    4. 找到7C436110-AB2A-4BBB-A880-FE41995C9F82项右侧的窗口中的boot-args项目;

      1. 第一次安装的时候,如果你使用的是DEBUG版本的OC,并且打开了Misc > Debug部分的开关,需要在这里添加几条参数-v keepsyms=1 debug=0x100,每一条参数中间用空格隔开;

      2. 在DeviceProperties部分提过,声卡除了添加AppleALC.kext驱动,还需要注入参数,在boot-args的值里添加alcid=X,X的值需要从AppleALC的Github页寻找答案。(首先确保你用AIDA64查出你的声卡型号)举个🌰,我的主力机,Z370m-S01主板,声卡型号Realtek ALC892,在AppleALC的Github页面点击进入Resources文件夹,进入新页面后,找到ALC892文件夹下的Info.plist点击,在右侧的窗格中会有ALC892不同ID对应的主板型号,如果你可以找到你主板型号,那么恭喜你,选对应的数字就好;如果找不到,我的经验是去官网去看一下图片,同品牌的主板里,哪一个型号的音频输出口跟你的一致,就选哪一个型号的数字,我最终选择的alcid=18。当然最笨的办法,搜索AppleALC ID,有很多资料已经把每一个声卡型号可用的Layout-id全部整理好了,你可以一个一个试到最好的一个为止(我第一次就是这么干的,第一次的声卡是ALC887,接近20个可用ID,改一次重启一次,蠢哭了【实战业余IT】让你的PC吃上黑苹果(四));

      3. 除了注入声卡Layout-id外,如果你用的是博通的无线网卡,添加了AirportBrcmFixup.kext驱动,需要在这里添加一条参数brcmfx-country=#a,这样可以提高博通网卡的网速;(按需)

      4. 如果你使用的是RX5000以上的AMD免驱显卡,添加了WEG驱动,需要在这里添加一条参数 agdpmod=pikera,防止启动跑码或走进度条过程中黑屏;(按需)

      5. 如果你使用的是HDMI,添加了WEG驱动,需要在这里添加一条参数-cdfon,开启HDMI 2.0,我也不知道有没有实际效果;

      6. 如果你不是一体机或笔记本,需要添加一条参数igfxonln=1,强制显示在线,好像是防止拔掉信号线后,在插上没有显示输出;

      7. 如果你是用笔记本安装,你的机器上有独立显卡,且添加了WEG驱动,需要在这里添加一条参数-wegnoegpu,屏蔽独立显卡;(按需)

      8. 如果你是用11代以上的Intel CPU安装,添加了WEG驱动,需要在这里添加一条参数-wegnoigpu,屏蔽核心显卡;(按需)

      9. 如果你安装的是macOS 14,希望使用在线升级功能,且添加了RestrictEvents.kext驱动,需要添加一条参数revpatch=auto,sbvmm,asset,添加后即可收到系统更新;(这一条无毒无害,建议保持在启动参数)

      10. 如果你想尝试最新的Beta系统,比如最近的macOS Sequoia Beta,需要在这里添加一条参数-lilubetaall;(按需)

      11. X79和X99也需要注入参数修复PCI错误,请自行搜索教程,没有实践过不废话。

      12. 上述所有参数注入完后,应该是这种状态(只是示范一下,不需要的参数不要无脑加):-v keepsyms=1 debug=0x100 alcid=18 brcmfx-country=#a agdpmod=pikera -cdfon igfxonln=1 -wegnoegpu -wegnoigpu revpatch=auto,sbvmm,asset -lilubetaall;

  2. Delete部分,直接忽略,后续按需修改;

  3. LegacySchema部分,直接忽略,后续按需修改;

【实战业余IT】让你的PC吃上黑苹果(四)查找Layout-id示意查找Layout-id示意

【PlatformInfo部分】

这一部分是选择机型和生成三码的位置,macOS系统内记录的机型、序列号、ROM这些信息都是从这里读取,用OCAT可以自动生成,简化很多工作;同时这些信息的录入逻辑上是不影响安装引导的,可以放到安装完成后在macOS优化。

  1. 找到Generic这一项,只修改这一项的内容;

  2. 在窗格中找到SystemProductName,下拉菜单中有很多苹果产品机型,以及该型号使用的CPU,你可以按照你产品的形态选择CPU接近的机型,然后点旁边的生成按钮。比如i7-9500H的笔记本,可以选择MacBookPro16,1。送你几条简化原则:

    1. 只有核显的Intel或AMD,比如很多NUC,Dell/HP/NEC/联想小主机,ChromeBox等,机型选Macmini8,1;

    2. 只有AMD或NVdia独显,比如E3-1231v3 + RX590,机型选iMacPro1,1或MacPro7,1;

    3. Intel 核显 + AMD 独显,比如i9-9900K + RX5500,机型选iMac20,2;

    4. 笔记本电脑,按照CPU接近的型号选择MacbookPro或MacbookAir;

  3. 找到ROM一项,你在上一步点击生成后,页面内只有ROM信息没有变,所以单独生成一次ROM;

  4. 如果你是Dell/联想主机,或者你需要安装双系统,那UpdateSMBIOSMode这一项要选为Custom,同时Kernel > Quirks > CustomSMBIOSGuid这一项需要☑️,这是一组搭配参数,作用是在Windows下,保持原始硬件信息;如果你不在乎Windows下显示电脑为Macmini8,1可以忽略,但是Dell/联想主机如果遇到问题必选;

  5. SpoofVendor这一项,如果你装Windows双系统,不想制造商信息显示Acidanthera的话,就取消勾选这一项;(这是大神给自己刷存在感吗【实战业余IT】让你的PC吃上黑苹果(四)

  6. 这里有一个ProcessorType参数,是macOS在“关于本机”显示CPU信息的代码;

    1. 如果值是0,macOS会默认读取CPU本身的信息;

    2. 但是对于ES的CPU,“关于本机”会显示未知,所以强迫症如我会给这里填上1801,代表“六核Intel Core i7”;

    3. 如果你想测(zhuang)试(bi)一下其他型号,请搜索“黑苹果CPU重命名”教程;

  7. 其他内容请忽略,有兴趣的朋友依旧可以看一下手册的建议。


【UEFI部分】

  1. 按照ACPI添加aml文件的方式,把你的Drivers文件夹内的所有文件都添加到config文件中来,同时Enabeld☑️true;

  2. 其他选项按照手册建议,调整一遍,这一部分的改动幅度不大。


config文件校验

OCAT集成了config文件校验的功能,如果你是严格按照流程制作到此,应该校验出错的点不会很多。OCAT的一个缺点就是更新比较慢,你从本篇开头的截图就可以看到,截至发稿,OC的最新版本是1.0.1,OCAT支持的版本才到0.8.8,因此如果OCAT报出OCS: No schema for这类错误,直接忽略就好。其他错误,OCAT能检测出来的基本都是低级错误,找到提示项目仔细检查吧。


一不小心9000多字了,阅读起来可能会有点啰嗦,但是考虑完整性不得已,还望海涵。

此篇终了,EFI文件编写的全过程就全部梳理完了,但是不代表EFI文件不会遇到问题,所以接下来,就要真刀真枪的进入到安装环节,来检验EFI文件成色了。

【下一篇重点讲解安装盘的制作和BIOS设置】

声明:本教程意在学习交流,请勿用于商用,涉及的资源请自行在互联网搜索,作者无任何立场,无任何商业推广,有想交流的朋友欢迎留言。喜欢苹果产品的朋友建议支持官方正品,尤其是M系列的MacBook Pro,产品力不是黑苹果笔记本能比的。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起
29评论

  • 精彩
  • 最新
  • 折腾过,也折腾好了,最后发现也还是上上网看看电影,就是个精致的花瓶,还得是win系统用起来更香

    校验提示文案

    提交
    当是青春的纪念吧,我是折腾完对windows无爱了,尤其是父母自己用,一段时间以后电脑就装满了垃圾软件

    校验提示文案

    提交
    你好 请教一下4代i7装哪个版本的mac比较合适(综合考虑性能和软件适用性)

    校验提示文案

    提交
    还有7条回复
    收起所有回复
  • 看完了,很硬的技术贴,也很全面 [张小草_点赞] [张小草_点赞] [张小草_点赞] 目前第一次正在折腾黑苹果,非常痛苦 [喷血] [喷血] [喷血]

    校验提示文案

    提交
    什么配置,我看看你有多痛苦 [龇牙]

    校验提示文案

    提交
    收起所有回复
  • 四年前QTB1想搞到现在也没搞起来,显卡买了半年了 [喜极而泣]

    校验提示文案

    提交
    QTB1应该很容易搞啊

    校验提示文案

    提交
    收起所有回复
  • 能给搞一套吗,买

    校验提示文案

    提交
    想要什么配置

    校验提示文案

    提交
    满足日常使用就行,不打游戏

    校验提示文案

    提交
    收起所有回复
  • 黑苹果的尽头是白苹果,想用mac系统买个 m系列cpu的mac mini 不要没事给自己找罪受折腾黑苹果

    校验提示文案

    提交
    有没有一种可能,拆腾熟了就不痛苦了呢 [邪恶] 三分钟写个EFI,想装哪个版本装哪个版本,想用多大内存用多大内存,想换CPU就换CPU,某种程度上可能比被苹果QJ更快乐 [龇牙]

    校验提示文案

    提交
    黑白苹果都有,最后用的还是白的以前黑的还有性价比,现在m系列的cpu吊打黑苹果

    校验提示文案

    提交
    还有3条回复
    收起所有回复
  • 全篇文章都是精华,纯小白22年开始接触黑苹果为了体验mac系统,看过小兵的教程,看过国光的教程,看过官方文档,现在再来看这篇文章豁然开朗了很多,你这哪是业余it选手,妥妥大神 [惊喜]

    校验提示文案

    提交
    集众家所长而已,踩的坑多了长点经验,希望对喜欢黑苹果的朋友有帮助,写出OC的才是大神 [高兴]

    校验提示文案

    提交
    收起所有回复
  • nuc11i5能不能搞个黑苹果??

    校验提示文案

    提交
    看CPU,10代以上搞不了

    校验提示文案

    提交
    收起所有回复
  • 先赏后看,

    校验提示文案

    提交
  • 夸张哦,一知半解

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
96
扫一下,分享更方便,购买更轻松