目录
- 准备工作
- 删除
- 关闭 Clover 中的所有图形注入
- 禁用 Clover 对 DSDT 的修复
- 禁用 UseIntelHDMI
- 删除引导参数
- 从以下位置删除所有 IGPU 和 HDMI 条目
- 从以下位置删除任何与 IGPU 和 HDMI 相关的 SSDT 和 DSDT
- 重命名 GFX0 – > IGPU
- 编译 Lilu + WhateverGreen
- 编译有问题?
- 获取 IGPU 的设备路径
- ig-platform-id
- 我应该为我的系统使用什么 ig-platform-id?
- 例子
- 仿冒因特尔 CPU 代数
- 以下是一些推荐的帧缓冲框架
- 第 2 代:Sandy Bridge(英特尔高清显卡 2000/3000)
- 第 3 代:Ivy Bridge(英特尔高清显卡 2500/4000)
- 第 4 代:Haswell(英特尔高清显卡 4200-5200)
- 第 5 代:Broadwell(英特尔)高清显卡 5300-6300)
- 第 6 代:Skylake(英特尔高清显卡 510-580)
- 第 7 代:Kaby Lake(英特尔高清显卡 610-650)
- 第 8 代:Coffee Lake(Intel UHD Graphics 630)
- 给缓冲帧打补丁
- 您可能需要额外缓冲帧补丁的一些原因
- 帧缓冲区修补类型
- 1。任意(推荐)
- 2. 所有数据
- 3. 查找 / 替换
- 一些示例补丁
- 以下是 All Data 方法的示例
- 以下是查找 / 替换方法的示例
- 帧缓冲转储
- 调试输出
使用 Clover 中的 KextsToPatch 在 Mojave 的二进制修补帧缓冲区中进行 帧缓冲修补 不再是Mojave for Skylake 及以上版本的可行方法。现在你需要使用Lilu + WhateverGreen。
不只是对于 Mojave
这种帧缓冲修补方法不仅是 Mojave 所必需的,我们还推荐它用于所有以前和未来的 macOS 版本。
Coffee Lake 用户
请注意,新的 WhateverGreen 不适用于仿冒 Kaby Lake 平台 ID。你需要有 macOS 10.14 Beta 4(18A336e)或更新版或 macOS High Sierra 10.13.6(17G2112))。后者是一种特殊版本,仅适用于 MacBookPro15,1 或 MacBookPro15,2 主板 ID。您可以通过运行 installinstallmacos.py 来创建 macOS High Sierra 10.13.6(17G2112)安装程序。(更新:vit9696 增加了仿冒 Kaby Lake 平台 ID 的能力)Lilu + WhateverGreen WhateverGreen 将取代 Lilu 的所有其他视频补丁插件(它目前已经合并了 WhateverGreen,IntelGraphicsFixup,NvidiaGraphicsFixup,Shiki 和 CoreDisplayFixup)。其他人可能会遵循(例如 AppleALC,HibernationFixup 和 IntelGraphicsDVMTFixup)。这旨在成为视频的一体化解决方案。
准备工作
删除以下驱动
- – FakePCIID_Intel_HD_Graphics
- – IntelGraphicsFixup
- – NvidiaGraphicsFixup
- – CoreDisplayFixup
- – Shiki
关闭 Clover 中的所有图形注入
- – config.plist / Graphics / Inject / ATI = NO
- – config.plist / Graphics / Inject / Intel = NO
- – config.plist / Graphics / Inject / NVidia = NO
- – config.plist / Graphics / ig-platform-id =
- – config.plist / Devices / FakeID / IntelGFX =

禁用 Clover 对 DSDT 的修复
- – AddHDMI
- – FixDisplay
- – FixIntelGfx
- – AddIMEI
禁用 UseIntelHDMI

删除引导参数
- -disablegfxfirmware
从以下位置删除所有 IGPU 和 HDMI 条目
- – config.plist/Devices/Arbitrary
- – config.plist/Devices/Properties
- – config.plist/Devices/AddProperties
从以下位置删除任何与 IGPU 和 HDMI 相关的 SSDT 和 DSDT
- – CLOVER/ACPI/patched
重命名 GFX0 – > IGPU
- – WhateverGreen 将自动执行此操作(请参阅下面的警告)
- – 你应该意识到 WhateverGreen 不重命名 GFX0 的所有实例 – > IGPU,但在大多数情况下应该没问题
- – 您可能需要包含 Clover GFX0 – > IGPU 重命名用于其他需要它的 kexts 或 ACPI 修补
编译 Lilu + WhateverGreen
下载 WhateverGreen。在编译之前,请确保将 Lilu 的调试版本放入 WhateverGreen 的根目录中。将 Lilu 和 WhateverGreen kext 安装到通常的位置。如果要查看调试输出,请将 WhateverGreen 编译为 debug。
编译问题
如果您在编译时遇到问题,可以下载正式版本二进制文件或下载我的(不支持的)build_lilu.shshell 脚本并在文件夹中运行它以自动下载和构建 Lilu + WhateverGreen 使用 Xcode。我建议您首先尝试调试版本(将它们放入 Clover 的 EFI / Clover / kexts / Other 文件夹中)。
获取 IGPU 的设备路径
下载并使用 gfxutil 工具,如下所示:
$ ./gfxutil -f IGPU DevicePath = PciRoot(0x0)/Pci(0x2,0x0)
ig-platform-id
对于AAPL,ig-platform-id(AAPL,Sandy Bridge 的 snb-platform-id)条目 Clover 要求此值为数据格式,因此您需要反转字节。因此,如果您希望您的 platform-id 为 0x3EA50009,请首先反转字节(0900A53E),然后使用 Xcode 的 plist 编辑器将值添加到 Clover 的 config.plist 中。

我应该为我的系统使用什么 ig-platform-id?
您应该选择与您的系统最匹配的一个。我建议你在选择之前先做一些研究。有关可用选项,请参阅第 2 篇文章。
您可以通过连字符后的第一个数字来确定 CPU 的生成。
例子
- – Intel(R) Core(TM) i5-2760QM (Gen 2)
- – Intel(R) Core(TM) i7-5257U CPU @ 2.70GHz (Gen 5)
- – Intel(R) Core(TM) m3-6Y30 (Gen 6)
- – Intel(R) Core(TM) i5-8350U (Gen 8)
仿冒因特尔 CPU 代数
如果需要欺骗不同 Intel 的 CPU 代可以使用 lilucpu = N 启动标志。N 指的是以下英特尔代:
4 Sandy Bridge 5 Ivy Bridge 6 Haswell 7 Broadwell 8 Skylake 9 Kaby Lake 10 Coffee Lake
要欺骗 CPU,您需要在设备 / 属性中的 GPU 条目中为相应的英特尔生成设置有效的设备 ID。
例如。欺骗 Skylake(lilucpu = 8 引导标志,设备 ID = 0x16190000),Kaby Lake(lilucpu = 9 引导标志,设备 ID = 0x12590000)。
以下是一些推荐的 帧缓冲框架
第 2 代:Sandy Bridge(英特尔高清显卡 2000/3000)
- – S/L/E/AppleIntelSNBGraphicsFB.kext
- – 支持从 10.7.x 到 10.13.6 的系统
- – metal 不可用
- – 设备 ID: 0x0102 0x0106 0x010A 0x0112 0x0116 0x0122 0x0126
- – AAPL,snb-platform-id (台式机): 0x00030010 (预设值)
- – AAPL,snb-platform-id (笔记本): 0x00010000 (预设值)
第 3 代:Ivy Bridge(英特尔高清显卡 2500/4000)
- – S/L/E/AppleIntelFramebufferCapri.kext
- – 从 10.8.x 开始支持
- – 设备 ID: 0x0152 0x0156 0x0162 0x0166
- – AAPL,ig-platform-id (台式机): 0x0166000A (预设值), 0x01620005
- – AAPL,ig-platform-id (笔记本): 0x01660003 (预设值), 0x01660009, 0x01660004
第 4 代:Haswell(英特尔高清显卡 4200-5200)
- – S/L/E/AppleIntelFramebufferAzul.kext
- – 从 10.9.x 开始支持
- – 设备 ID: 0x0D26 0x0A26 0x0A2E 0x0D22 0x0412
- – AAPL,ig-platform-id (台式机): 0x0D220003 (预设值)
- – AAPL,ig-platform-id (笔记本): 0x0A160000 (预设值), 0x0A260005 (推荐)
注:0x0A260005 和 0x0A260006 这两个 ID 需要把 cursormemorysize 值修改为 9m,不然会有局部花屏问题,也可以选用 0x0D260007 或 0x0D26000E/0x0D26000F。
第 5 代:Broadwell(英特尔)高清显卡 5300-6300)
- – S/L/E/AppleIntelBDWGraphicsFramebuffer.kext
- – 从 10.10.2 开始支持
- – 设备 ID: 0x0BD1 0x0BD2 0x0BD3 0x1606 0x160E 0x1616 0x161E 0x1626 0x1622 0x1612 0x162B
- – AAPL,ig-platform-id (台式机): 0x16220007 (预设值)
- – AAPL,ig-platform-id (笔记本): 0x16260006 (预设值)
第 6 代:Skylake(英特尔高清显卡 510-580)
- – S/L/E/AppleIntelSKLGraphicsFramebuffer.kext
- – 从 10.11.4 开始支持
- – 设备 ID: 0x1916 0x191E 0x1926 0x1927 0x1912 0x1932 0x1902 0x1917 0x193B 0x191B
- – AAPL,ig-platform-id (台式机): 0x19120000 (预设值)
- – AAPL,ig-platform-id (笔记本): 0x19160000 (预设值)
第 7 代:Kaby Lake(英特尔高清显卡 610-650)
- – S/L/E/AppleIntelKBLGraphicsFramebuffer.kext
- – 从 10.12.6 开始支持
- – 设备 ID: 0x5912 0x5916 0x591B 0x591C 0x591E 0x5926 0x5927 0x5923 0x87C0
- – AAPL,ig-platform-id (台式机): 0x59160000 (预设值)
- – AAPL,ig-platform-id (笔记本): 0x591B0000 (预设值)
第 8 代:Coffee Lake(Intel UHD Graphics 630)
- – S/L/E/AppleIntelCFLGraphicsFramebuffer.kext
- – 从 10.13.6(17G2112)和 10.14 beta4(18A336e)版本开始支持
- – 设备 ID: 0x3E9B 0x3EA5 0x3E92 0x3E91
- – AAPL,ig-platform-id (台式机): 0x3EA50000 (预设值), 0x3E9B0007 (推荐)
- – AAPL,ig-platform-id (笔记本): 0x3EA50009 (预设值)
给缓冲帧打补丁
WhateverGreen 为您自动完成大部分工作,在大多数情况下您不需要任何额外的 Framebuffer 补丁。至少你应该选择一个 ig-platform-id 适用于您的系统并将其放在 config.plist / Devices / Properties 中, 如下所示:

您可能需要额外缓冲帧补丁的一些原因
- – 为那些无法在 BISO 中设置超过 32 MB 的人设置 DVMT(framebuffer-stolenmem / framebuffer-fbmem)
- – 为遇到图形故障的 4K 用户设置更高的 VRAM(帧缓冲)-unifiedmem)
- – 禁用 eGPU(disable-external-gpu)
- – 启用 4K 支持的像素时钟补丁(enable-hdmi20)
- – 禁用连接器以启用睡眠(framebuffer-pipecount / framebuffer-portcount / framebuffer-conX-type = -1)
- – 删除 <10.13.6 上的 eDP 笔记本电脑屏幕的 CNConnectorAlwaysConnected 标志(framebuffer-con0-flags = 0x00000090)
- – 更改连接器类型以匹配您的系统端口(framebuffer-conX-type)
帧缓冲区修补类型
我们有三种不同类型的补丁:
1。任意(推荐)
framebuffer-patch-enable (以下补丁的总开关) framebuffer-framebufferid (可选; 默认为当前平台 ID) (以下补丁皆为可选) framebuffer-mobile(mobile 值)framebuffer-pipecount(管道值)framebuffer-portcount(输出端口数)framebuffer-memorycount(memory 值)framebuffer-stolenmem(stolenmen 值,dvmt 补丁之一)framebuffer-fbmem(fbmem 值,dvmt 补丁之一)framebuffer-unifiedmem(核显最大动态显存值)framebuffer-cursormem (cursormemorysize 值,Haswell 核显专用) framebuffer-camellia(camellia 值)framebuffer-flags(标志位)framebuffer-conX-enable (conX 端口的补丁开关) framebuffer-conX-index(conX 端口的索引值)framebuffer-conX-busid(conX 端口的总线 ID)framebuffer-conX-pipe(conX 端口的管道值)framebuffer-conX-type(conX 端口的端口类型)framebuffer-conX-flags(conX 端口的标志位)
注:conX 的 X 可以是 0,1,2,3
2. 所有数据
framebuffer-conX-enable (conX 端口的补丁开关) framebuffer-conX-alldata(conX 端口的补丁数据)
3. 查找 / 替换
framebuffer-patchX-enable (补丁 X 的开关) framebuffer-patchX-framebufferid (可选; 默认为当前平台 ID) framebuffer-patchX-find(补丁 X 要查找匹配的数据)framebuffer-patchX-replace(补丁 X 要替换的数据)framebuffer-patchX-count (可选; 默认为 1)
您应该将补丁放在 Clover config.plist 中的 config.plist / Devices / Properties 中。
一些示例补丁
- – 32MB BISO,19MB 被盗(帧缓冲)9MB fbmem(光标)2048MB unifiedmem(vram)

- – 管道 / 端口数 3 至 2
- – 连接器 1 DP 至 HDMI
- – 连接器 2 禁用

以下是 All Data 方法的示例

以下是查找 / 替换方法的示例

帧缓冲转储
有两种方法可以转储帧缓冲区数据(两者都需要 WhateverGreen + Lilu 调试版本):
1. 使用 -igfxdump 引导标志将 IGPU 帧缓冲区 kext 转储到 / AppleIntelFramebuffer_X_Y(启动驱动器的根目录)
有几种方法可以读取它转储:
- – 使用 010 Editor 和 IntelFramebuffer.bt 模板
- – 使用 Hackintool 文件 – >打开菜单
2. 使用 -igfxfbdump 引导标志将本机和修补的 framebuffer 表转储到 ioreg ISOervice:/ IOResources / WhateverGreen
有几种方式读取此转储:
- – 使用 dump_platformlist.shshell 脚本
- – 使用 Hackintool 文件 – >导入 – > IOReg 转储菜单
3. 使用 Hackintool Framebuffer-> macOS 10.14 菜单
调试输出
要从 Lilu 获取调试输出,请使用 -liludbgall liludump = 60 启动标志。您将需要编译 Lilu 和 WhateverGreen 作为调试,以使这两个标志起作用。日志文件应位于/ var / log / Lilu_ *。
要查看调试,请将以下内容粘贴到终端(weglog.txt 将输出到您的主目录):
log show --predicate 'process =="kernel"AND (eventMessage CONTAINS"WhateverGreen"OR eventMessage CONTAINS"Lilu")' --style syslog --source --last boot >weglog.txt

