如果仅限于制作一份可以进入黑苹果安装界面的EFI文件,大家只要稍作了解即可。喜欢折腾的朋友可以自己动手试试。主要设置部分我都会在图中加红圈说明。
==========================================================================
想要详细了解的朋友就要认真研究了,这将花费你大量的时间和精力。我也将我所知道的部分加以详细说明,以方便您的学习。也希望您可以将您所知道的而我并没有写到的部分留言告诉我。好让我们一起来完善这份学习资料。==========================================================================
注:如上面所示,在2排等号间的文件适合有一定基础并且喜欢钻研的朋友阅读,新手朋友可以跳过,不用阅读。
现在。我将开始为大家演示一下如何制作一份用于系统安装的EFI文件。
这需要一台白果或者黑果,一份EFI文件,还有一款软件。EFI文件,最好找到一个同型号电脑的EFI文件,直接使用,这样可以使你少走些弯路。软件名为Clover Configurator,用来在MAC系统下配置config.plist。其实它也有windows版本,只是不如MAC版本好用而已。
好了。不说废话了,现在开始
1、在MAC下打开Clover Configurator
点击窗口左侧Mount EFI菜单。
点击 右侧下方 Mount Partition 按钮 挂载分区。
在弹出窗口中输入当前账户密码,容许程序加载ESP分区。
点击 Open Partition 按钮 打开ESP分区。
现在大家看到的这个名为EFI的文件夹就是我的电脑当前所使用的clover引导文件。将其复制到桌面后把窗口关闭。这样我就获得了一份EFI文件。
2、删减文件
打开桌面EFI文件夹,如下图所示:
图中 APPLE文件夹为我当前电脑的系统引导文件,对其他电脑无用,将其删除。如果你所得的EFI文件夹中还有Microsoft文件夹、UBUNTU文件夹,请都将其删除。
只保留最基本的CLOVER文件现在我们继续双击打开clover文件夹
打开驱动文件夹KEXTS
==========================================================================
Clover 文件夹结构:(不研究的朋友可以不看,直接看下一页面设置)
ACPIORIGIN: 保存提取到的原始DSDT文件。ACPIPATCHED: 存放修改好的用户DSDT.aml和SSDT.aml 。CLOVERX64.efi: 64位CLOVER的主启动文件 。config.plist: CLOVER配置文件。DOC: CLOVER的帮助文档 。DRIVERS64UEFI: 使用UEFI模式加载64位CLOVER所需要的驱动文件。KEXTS: 使用驱动注入时,CLOVER加载的驱动文件的存放位置。MISC: 存放CLOVER环境下的截图文件。OEM: 分文件夹存放ACPI、config.plist等文件。用以加载,实现单个U盘引导多个黑苹果系统。ROM: 保存提取到的显卡ROM文件。THEMES: CLOVER主题存放位置。TOOLS: EFI Shell存放位置,放置用于进入shell环境的.efi文件,不可用于引导OSX,但可运行一些.efi程序。==========================================================================
这里如有其他文件夹都可删除,只保留OTHER文件夹,双击打开
这里就是电脑开机加载的驱动文件,遵守最简原则,只保留必须的,其余删除。特别注意:如果你的EFI是相同机型电脑提取的完美clover文件,一定要注意备份,后期还要使用。
因为我们要安装的是笔记本电脑,所以我保留以上驱动。ACPIBatteryManager.kext 电池电量驱动。FakeSMC.kext 骗MAC系统我是合法的,嘿嘿。USBInjectAll.kext USB驱动。VoodooPS2Controller.kext PS2接口驱动,我的触控版需要。如果安装台式机的话,电池和PS2驱动都可以删除。
我们再返回到clover目录下
打开 ACPI 文件夹
这里有2个文件夹:origin 和 patchedorigin保存提取到的原始DSDT文件,patched保存修正后的DSDT文件。你得到的这些文件都不是你自己本机的,所以请清空这2个目录。
注:笔记本电脑若型号完全相同的,可将整个EFI文件完整备份供安装后使用。
3、配置config.plist文件
现在我们打开桌面EFICLOVERconfig.plist文件,对其修改
点击窗口左侧SYSTEM PARAMETERS选项页:
系统参数 选项页面,保持如图所示即可。
其实就是在红色圈处通过下拉菜单将注入驱动参数值改为自动。
其数值YES=开启,NO=关闭,Detect=自动
这里注入的驱动就是ESP分区下EFICLOVERKEXTSOTHER下的那些驱动文件。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
CustomUUID选项为自定义UUID,可在CLOVER启动时显示,或在硬件信息中显示。Generate New 按钮为随机生成新的UUID。Get it from system 按钮为从系统中获取UUID。
BacklightLevel 选项是笔记本亮度调节。其数值 0XFFFF 最亮,默认 0X0501,台式机请忽略。
Inject Kexts 为注入驱动方式。其数值YES=开启,NO=关闭,Detect=自动。
No Caches 选项为忽略缓存。ExposeSysVariables选项为显示系统变量。Inject System ID选项为注入系统ID。NvidiaWeb选项为Nvidia显卡Web驱动,使用独立NVIDIA显卡安装驱动后请勾选,A卡和核显用户请忽略。
==========================================================================
点击窗口左侧SMBIOS选项页:
设置仿冒苹果机型 选项页面,根据自己电脑CPU的型号在红色圈所示下拉菜单中选择最为接近的白苹果机型。有时候无法正常安装系统和驱动就跟您所选机型有关。
这块也可以不用设置,对于clover,它会自动设置它认为适合你电脑配置的机型。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
Product Name : 产品名称,苹果电脑型号。Family : 家庭, 苹果电脑所属系列。Manufacturer : 制造商名称,Apple Inc 即苹果公司。Bios Version:主板Bios 版本号。Bios Release Date :主板Bios发布日期。Bios Vendor :主板Bios提供商 。Chassis Manufacturer : 机箱制造商Location In Chassis:机箱位置。Chassis Asset Tag:机箱资产标签。Chassis Type : 机箱类型。Board Type :主板类型。Board-ID:主板ID。Board Manufacturer :主板制造商信息。Board Version : 主板版本。Board Serial Number : 主板序列号。Serial Number :电脑序列号。Generate New :随机获取新的序列号。SmUUID: 格式应为“
00000000-0000-1000-8000-xxxxxxxxxx”其中“xxxxxxxxxxxx”为你的网卡MAC值。Mobile:移动。若为移动平台,请勾选。Trust :托管。和内置自定义的smbios table相关,如果你的内存侦测存在问题请取消勾选试试。Firmware Features:固件特征。Firmware Features Mask:固件特征掩码。Platform Features :平台功能。Version :固件版本,这里为1.0版。
注:我们常说的白果三码就是上面的:Board Serial Number、Serial Number和RT VARIABLES选项页中的ROM。我们将获取到的白苹果三码写入上述位置就可以正常使用imessage等软件。
上图中Memory处为内存信息注入:Slot* :插槽位置,值可为整形,也可为字符型,值0~24。Size* :内存大小,通用有:512、1024、2048、4096、8192等。Frequency(MHz): 内存频率。常见:1333、1600、2133、2400等。
Vendor :制造商信息,如:Kingston等。Type :内存条类型,如:DDR2、DDR3、DDR4。
Channels :内存通道数,现在一般主板是双通道,即数值为2。SlotCount:内存插槽数,根据主板实际个数填写,最大可支持24个。
上图中Slots AAPL injections 处为内存AAPL注入:Device:设备。 ID:ID。 Name*:名称。
==========================================================================
点击窗口左侧RT VARIABLES选项页:
这应该是显示当前所配置机型的一些参数。
我们无需设置,如图所示保持不变即可。值得注意的是图中画红色圈部分是有关
开启或关闭SIP的参数,默认值应该为:0x67。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
ROM参数值为12位十六进制。这个参数一般会从 smbios 中获取,一般不管。此项设置有关网卡的 mac 地址。此值可随机。
MLB和主板 serial number 相关,17位数。其设置无规则。最好的设置是 sm+五个随机数,12位系列号加5个数随你选择。在以前可解决 imessage 登入后重启退出无法再次登入的的问题。
BooterConfig :booter配置,默认值为:0x28 。猜测与启动相关,具体意义本人未知,请懂的朋友赐教。
CsrActiveConfig :CSR状态配置,值为:0x67。此选项用于开启或关闭SIP,其值为0x13时,关闭SIP。这个参数改完要把苹果分区根目录下的nvram.plist删除不然不生效。
注:苹果系统启用了名为System Integrity Protection (SIP)的系统完整性保护技术。受此影响,未经签名的第三方驱动及经过修改的原版驱动将无法正常加载,大部分系统文件即使在root用户下也无法直接进行修改。
==========================================================================
点击窗口左侧KERNEL AND KEXT PATCHES选项页:
给驱动文件打补丁 选项页面
红色矩形框中显示已打补丁,通过点击红色圈所示处的减号按钮将其全部清除。
矩形框上方选项只勾选 Apple RTC,其余选项均不用勾选。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
ATIConnectorsData:ATI显卡原始参数。 要修改的AMD显卡驱动的原始数据。ATIConnectorsPatch:ATI显卡修正补丁。为修改后适合你AMD显卡驱动的参数。
Kernel CPU:CPU内核补丁。为内核不支持的CPU打补丁,如 Atom,Ivy,Pentium4等,通过 打补丁来绕开Kernel Panics,推荐更换相对应的内核。
Apple RTC: 为防止 cmos 重置和启动时出现的有关 AppleRTC 的错误打补丁。
Kernel LAPIC : LAPIC内核补丁。为解决HP笔记本的Kernel LAPIC问题,或者也可以在启动参数上加入“cpus=1”选项来解决。
AppleintelCPUPM:苹果英特尔CPU PM内核补丁。
KernelPm:PM内核补丁。因Haswell平台锁定了MSR,开启此参数可避免无限重启。
DellSMBIOSPatch:DELL电脑主板BIOS专用补丁,非DELL主板请勿勾选。
KernelXCPM:XCPM内核补丁。
Debug:调试模式。 CLOVER启动调试,一般不开启。
ATIConnectorsController:ATI显卡控制器。要修改的AMD显卡驱动名称。规则如下:5系列的AMD显卡驱动就要在ATIConnectorsController定义50006系列的AMD显卡驱动就要在ATIConnectorsController定义60007系列的AMD显卡驱动就要在ATIConnectorsController定义7000
FakeCPUID:仿冒CPU ID。可根据自己的CPU平台型号在下拉菜单中选择。
KextsToPatch:驱动补丁。KernelToPatch:内核补丁。BootPatches:引导补丁。ForceKextsToLoad:强制加载的驱动路径。
上图中红色矩形框中内容为所打补丁,通过点击+/-按钮来增加或者删除。Name:驱动名称。
Find:查找数值(十六进制)。Replace*:替换数值(十六进制)。Comment:补丁描述。MatchOS:匹配MAC系统版本。MatchBuild:匹配构建。Disabled:禁用。勾选后该条补丁失效。InfoPlistPatch:InfoPlist补丁。勾选后使用此条InfoPlist补丁。
最下方 List Of Patches 为常用修补程序列表。
==========================================================================
点击窗口左侧GRAPHICS选项页:
图形 选项页面(个人理解为显卡选项)
我的本本是INTEL核显,只需勾选红圈处2项:inject intel 注入英特显卡,ig-platform-id 注入特定ID,安装时用0x12345678,以后要改为正确对应您核显的ID.
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
Custom EDID:自定义显示器EDID(十六进制)。EDID: Extended Display Identification Data(扩展显示标识数据)是一种VESA 标准数据格式,其中包含有关监视器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串。 这些信息保存在 display 节中,用来通过一个 DDC(Display Data Channel)与系统进行通信,这是在显示器和 PC 图形适配器之间进行的。最新版本的 EDID 可以在 CRT、LCD 以及将来的显示器类型中使用,这是因为 EDID 提供了几乎所有显示参数的通用描述。
获取EDID和正确CLOVER配置能让有些安装了显卡的黑苹果解决进入系统黑屏的问题,避免走更多的歪路浪费时间,配置CLOVER中的EDID值还可以让您的电脑启动界面更像黑苹果,它会完全匹配您的显示器最佳分辨率值。
InjectEDID :注入EDID。Vender ID :即厂家标识。Product ID :即产品标识。
Horizontal Sync Pulse Width: 水平同步脉冲宽度。好像和连接显示器后所获得最大分辨率有关,本人不是很确定。
Video Input Signal:视频输入信号。具体数值、作用均不清楚,求告知,谢谢!
DualLink 选项:双链路。 0为关闭,1为启用。这个值开启可以解决某些高分屏花屏,黑边的问题。但有些卡必须设为0,否则进入mac可能见到4个桌面重叠显示。
FBName 选项:AMD显卡config值,其值要和你修改FB使用参数相对应。NVCAP 选项:不是必要参数,可以不用设置,Clover会自动加载默认的值,当NV显卡输出等有问题时,可能需要这个参数。VRAM 选项:设置显卡的显存大小。VideoPorts 选项:显卡输出端口数。Display-cfg 选项:NVIDIA独立显卡的参数,一般不用设定。ig-platform-id 选项:Interl CPU核心显卡ID。
Load VBios 选项:使用提取的显卡rom,A卡特有信息。Patch VBios 选项:使得 Clover 在引导界面找到合适的分辨率。但不一定可以支持。当你在引导界面的分辨率不对时,可以在clover下加载驱动:CsmVideoDxe-64.这个驱动只支持UEFI BIOS。Clover的图形界面显示驱动,是基于 UEFI BIOS 的 CSM module 模组,CSM 必须设置为 Enabled ,否则无法生效。但CSM 设置为 Enabled ,clover可能会无法启动,也可能会发生系统唤醒问题。使用时,请多加注意。Inject intel 选项:启用英特核心显卡自动识别功能 。Inject ATI 选项:启用AMD显卡自动识别功能 。Inject NVidia 选项: 启用NVIDIA显卡自动识别功能 。NvidiaGeneric 选项:Nvidia显卡通用参数。NvidiaSingle 选项:Nvidia显卡单一信号。NvidiaNoEFI 选项:Nvidia显卡非EFI模式引导。RadeonDelinit 选项:启用ATI显卡防黑屏。
PatchVBios:修正显卡BIOS。Find:查找数值(十六进制)。
Replace:替换数值(十六进制)。
==========================================================================
点击窗口左侧GUI选项页:
启动相关 选项页面 保持如图所示即可。
几乎不需要我们设置什么。稍稍值得注意的地方是图中红圈勾选处,这是CLOVER启动时主界面的分辨率。我们的RBOOK屏幕为高分屏,分辨率:2560×1440,其他朋友需要根据你的显示器分辨率情况而加以修改。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
MOUSE 选项:鼠标调节。Double Click:鼠标双击速度,图中值为500。Speed:鼠标移动跟进速度,值越大移动越快,值为2~8。Enabled:激活鼠标控制。Mirror: 翻转鼠标指针方向,类似镜像效果。
SCAN 选项:扫描选项。Entries 使用,勾选后使用启动项扫描检测,有2种扫描方式可供选择AUTO=YES 为自动扫描。由CLOVER自动处理。CUSTOM为用户自定义模式:TOOL: 勾选后CLOVER启动时可选择使用EFI程序。Legacy:勾选后CLOVER启动时可加载硬盘上以传统BIOS方式引导的WINDOWS系统kernel:勾选后CLOVER启动时可加载Linux系统内核。Linux:勾选后CLOVER启动时可加载硬盘上的Linux操作系统。
LANGUAGE 选项:语言选项。SCREEN RESOLUTION 选项:CLOVER界面分辨率。Console Mode:控制台模式。THEME 选项:CLOVER引导主界面所用主题。Custom Icons:自定义图标。Text Only:仅启用文本界面。ShowOptimus:界面优化。
HIDE VOLUME 选项:隐藏的启动文件和分区。通过+/-按钮来增加/删除 需要隐藏的启动文件和分区。一般添加Recovery和Preboot分区。
Custom Entries:自定义启动项。用以控制MAC分区。
Custom Legacy:自定义传统启动项。用以控制WINDOWS分区。Volume:卷标。
Title/FullTitle:标题/完整标题。Hotkey:快捷键。Disable:禁用。Ignore:忽略。Type:系统类型。
Custom Tool:自定义工具,用以控制SHELL。Volume:卷标。
Path:路径。Arguments:参数。Title/FullTitle*:标题/完整标题。Hotkey:快捷键。Hidden:隐藏。Disable:禁用。Ignore:忽略。
==========================================================================
点击窗口左侧DISABLE DRIVERS选项页:
屏蔽相关驱动 选项页面 。
禁止 EFI 驱动,消除进入 Mac 后 EFI 驱动的影响。
我们没什么要屏蔽的,保持如图所示即可。在这里加入的驱动,不会生效。
点击窗口左侧DISABLE DRIVERS选项页:
设备 选项页面 保持如图所示即可。
这主要是增加一些设备的额外功能。
如下图,红色矩形框中如果有数据请将其删除。
点击红圈所示处的减号按钮删除右方红色矩形框内的“特性”设置。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
FAKE ID 选项:仿冒ID。在注入该某些设备的属性的同时,我们希望注入不是该设备本身固有的id,已达到我们所希望的功能
USB 选项: USB相关INJECT 选项:使 USB 键盘、鼠标能唤醒 MAC系统。ADD ClockID 选项:唤醒MAC系统备份后USB设备依旧正常工作。USBFIXOWNERSHIP 选项:修复 USB 在 UEFI 模式引导时的所有权问题。HIGHCURRENT 选项:提高USB接口电压,用于充电。
AUDIO 选项:仿冒声卡选项。Audio声卡注入, 其值一般是:detect(自动侦测),也可手动输入你要的值。如声卡为ALC887,假设在0x0C(12)时工作,则直接填写12或0x0c。有关仿冒声卡的layout -id,要自己搜索相关型号的仿冒声卡或教程。不是说启用这个功能声卡就可以工作。
==========================================================================
点击窗口左侧CPU选项页:
CPU 相关 选项页面, 保持如图所示即可。
CPU 可自动识别,这里几乎不用设置。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
Frequency MHz:频率,设置CPU频率。Bus SpeedkHz :总线速度,可设置外频。Latency:延迟,设置C3 State延迟。QPI :QPI总线,设置CPU的互联速度。Type :类型,设置CPU类型。TDP:热设计功耗。SavingMode:节能模式。C2 / C4 / C6 :设置开启或关闭C2 / C4 / C6 ,均用于启用CPU的变频功能。QEMU:模拟处理器。TurboDisable:禁用CPU睿频。
HWPValue:HWP值。HWPENABLE:启用HWP管理。USERARTFREQUENCY:使用ART频率。
注:HWP是Hardware Work Package的简称,翻译过来叫做:硬件标准部件在macOS下,HWP是指Intel SpeedShift,开启全功率的电源管理。
==========================================================================
点击窗口左侧BOOT GRAPHICS 选项页:
引导图形 选项页面
几乎没什么用,保持默认就好。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
DefaultBackroundColor:默认背景颜色。EFILoginHIDPL:EFI模式登录时使用画面缩放。flagstate:变量状态。UIScale:UI比例,自适应系统界面。
==========================================================================
点击窗口左侧BOOT选项页:
CLOVER引导 选项页面
主要设置红圈所示部分选项
VERBOSE(-V) 所谓的啰嗦模式,显示所有调试日志,含错误信息。
DEBUG=0X100 遇错不自动重启计算机,配合-V模式便于排错。
DEFAULT BOOT VOLUME 指定默认启动分区名称,可以是卷标,也可以是UUID
时间,设置0为默进系统,不显示任何CLOVER信息,设置-1 使用图形界面,不自动加载系统,设置5为暂停时间,设置位1或者2,CLOVER图形主界面,无操作时的停留时间,方便你用键盘选择启动项。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
Verbose(-V) 所谓的啰嗦模式,显示所有调试日志,含错误信息。arch=i386 以32位内核模式启动。arch=X86_64 以64位内核模式启动。npci=0x2000 解决独立显卡PCIconfiguration begin卡住不动。npci=0x3000 解决独立显卡PCIconfiguration begin卡住不动。darkwake 开启针对特定机型的深度睡眠的问题。slide=0 只适用于Mac OS 10.8.x版本,安装与引导时识别内核。-xcpm 在IvyBridge系统里强制xcpm使用系统以实现CPU原生电源管理cpus=1 使用单核模式。dart=0 修复因开启 VT-d 导致系统启动时SMC五国错误,系统安装不能正常进行时采用,安装后成功必须关闭。debug=0x100 遇错不自动重启计算机。-gux_defer_usb2 修复使用 GenericUSBXHCI.kext 导致的睡眠问题。Intel 7系列适用。-gux_no_idle 终止 Intel 芯片上的一些空闲模式(idle-mode)功能。-gux_nosleep 强迫睡眠适用 Shudown/Reset 方法。-gux_nomsi 强迫使用中断(interrupt),而不使用MSI。nvda_drv=1 此参数可以让系统安装 Nvidia 官方 WebDricer 显卡驱动,需将SMBIOS设置为MAC PRO机型。nv_disable=1 禁止 Nvidia 独显驱动加载。nv_spanmodepolicy=1keepsyms=1 clover引导时,图像停到出错位置,配合debug=0x100使用。kext-dev-mode=1 启用第三方驱动。rootless=0 从10.11 DB5/PB3版开始,这个启动参数已经被废除,请不要再使用。kextiog=0xffff-alcoff 屏蔽applealc驱动。-shikoff 屏蔽shik驱动。-disablegfxfirmware clover引导时,报IGPU错误的时候可以添加这个启动参数。
Custom Flags:自定义启动参数。可在下方直接输入启动命令。
DEFAULT BOOT VOLUME :默认启动卷DEFAULT LOADER:默认启动文件Legacy:传统BIOS开机方式。LegacyBiosDefaultEntry:UEFI开机方式。
time:时间选项设置0为默进系统,不显示任何CLOVER信息。设置1或者2,CLOVER图形主界面,无操作时的停留时间,单位为秒。勾选-1 使用图形界面,不自动加载系统。
Fast:快速。此参数类似于设置 Time=0,但有下区别:nvarm.plist 文件只在设置后的第一次启动时被检测存储,后续开机则跳过检测,以加快开机速度。不侦测最佳显示模式。不加在图形界面主题。不扫描内存 SPD。不能选择进入 GUI 图形界面。
Debug:调试。
XMPDetection=YES /NO 1 2此参数只适用于 DDR3 XMP 内存。XMPDetection=YES,当检测到 XMP 内存时读取最佳预设参数,可选预设最佳参数1或者参数2。XMPDetection=NO,禁止检测 XMP 内存。注:英特尔XMP(Xtreme Memory Profile)认证的内存,SPD中有两个或更多频率设定档案,只要在主板中启用这些预设的XMP档案,即可将内存条自动超频到1600或更高值(根据档案设定而定)。
NoEarlyProgress:不显示CLOVER主界面启动前欢迎信息。CustomLogo:自定义Logo。DisableCloverHotkeys:禁用CLOVER快捷键。NeverDoRecovery:禁用恢复卷。StrictHibernate:严格休眠。NeverHibernate:禁用休眠。SkipHibernateTimeout:跳过休眠超时等待。HibernateFixup:睡眠修复。RtcHibernateAware:唤醒时启用RTC内存擦除。SignatureFixup:签名修复。
Secure Boot:安全启动。Whitelist:安全启动白名单列表,通过+/-按钮来增加/删除。Blacklist:安全启动黑名单列表,通过+/-按钮来增加/删除。
Secure 项通过鼠标勾选完成设置。不勾选,所有Secure Boot 参数设置无效。
==========================================================================
点击窗口左侧ACPI选项页:
DSDT修补 选项页面 。不是很懂,本着不明白就不勾选的原则,我们将所有选项取消勾选。
注意图中显示数字为1、2的地方。点击2按钮后页面会有所变化,我们同样将所有选项取消勾选。
==========================================================================
其他参数说明:(不研究的朋友可以不看,直接看下一页面设置)
黑苹果系统由于硬件兼容性问题,经常通过使用修改DSDT的方法来解决一些问题。那什么是DSDT呢,我们先需要了解一下它。
先了解一些基本术语:
ACPI:它是Hewlett-Packard, Intel, Microsoft, Phoenix, 和Toshiba共同制定的一个开放的行业规范。是The Advanced Configuration and Power Interface的缩写,也就是“电源管理模式和配置管理的接口规范”。从名字可以看出主要是“电源管理”和“配置”。
它主要涵盖的功能包括:System power management(系统电源管理)Device power management(设备电源管理)Processor power management(处理器电源管理)Device and processor performance management(设备及处理器性能管理)Configuration / Plug and Play(配置/即插即用)System Events(系统事件)Battery management(电池管理)Thermal management(温度管理)Embedded Controller([嵌入式控制器]SMBus Controller(SMBus控制器)
在计算机应用,ACPI越来越重要。ACPI由很多表组成,包括:RSDP,SDTH,RSDT,FADT,FACS,DSDT,SSDT,MADT,SBST,XSDT,ECDT,SLIT,SRAT等。其中DSDT就是它的一个重要的描述表。
DSDT:它是The Differentiated System Description Table的简写。字面上就可以知道它是一个描述系统不同信息的表。它包含了所有除基本系统以外所有不同设备的信息,也就是每台计算机设备的基本系统是相同的,而不相同的设备用DSDT来描述。DSDT表代码为ACPI Machine Language (AML)。
Mac OS X系统不完整支持ACPI规范,仅支持它的子集DSDT。
用户通过修改DSDT可以得到更好的硬件支持。最简单的理解就是DSDT是描述硬件的。MAC的驱动是被动驱动,需要让系统知道存在这个硬件且知道硬件位置。
修改DSDT的主要目的就是让MAC系统识别到这个硬件并告诉MAC系统你的硬件位置,以便让MAC系统内置的驱动来驱动硬件工作。
FIX参数说明:
在上图中数字1按钮(OLD WAY)中的参数:AddDTGP 在DSDT中加入Method(DTGP)参数,修复DSDT必备参数。FixIPIC 从DSDT的IPIC项中删除移除中断语句(IRQ(2)),以解决电源键问题。FixUSB 注入USB装置并设置它们的属性,如USB1、USB2、USB3,帮助内建USB。FixDarwin 提供一组修正的DSDT,使你系统内更多的APCI设备能在“windows 2001”这种APCI系统模式下工作。FixSBUS 增加 SMBusControlle 到设备树种,可修复因缺失 SBUS 控制而在系统 log 中出现的警告。FixLAN 注入有线网卡设备和设置它们的属性,帮助网卡内建。如果有未知的子设备也可以设置FAKEID来识别。Fixshutdown 关机修复,主要是添加 _PTS 函数,判断寄存器 arg0 值是否为 5。这个补丁适用一些解决华硕主板的关机问题。FixDISPLAY 对显卡非常有用的补丁,增加 了GFX0和 HDMI 音频设置 HADU。如果设置了 FAKEID 也会自动增加到这里。FixAirport 为支持 Airport 的无线网卡注入属性,以开启 Airport 功能。如果有未知的子设备也可以设置FAKEID来识别。AddMCHC 这个功能是在 dsdt 中添加一装置。具体是 DveiceID=0X0044,匹配 Intel Clarkdale 平台。有些芯片需要这个装置来解决 PCI 的电源管理问题。FixIDE 修复IDE接口硬盘补丁,适用于非SATA硬盘,修复在五国出现的 AppleIntelPIIXATA 错误。FixHDA 重命名“AZAL”为“ HDEF”或者“ HDAU”,增加缺少的 layout -id 和 MaximumBootBeepVolume 设备属性,修复导致声卡不正常工作的问题。FixHPET 修复HPET ,添加 IRQ(0、8、11),强制加载原生电源管理。FixSATA 内建磁盘,用 ICH6 的 ID 匹配,解决橙色磁盘问题。这个现在已经过时了,目前比较好的方法是对驱动打二进制补丁。FakeLPC 仿冒 LPC,为非标LPC设备注入ID,一般 Clover 会自动注入合适的芯片参数到 dsdt 中,来达到加载 AppleLPC.kext 的目的。对于Intel and NForce 芯片,建议勾选。特别是芯片组比较老的如:ICH7,ICH9等白苹果都没有的主板芯片组。FixFIREWIRE 在DSDT设备中加入火线控制装置的设备属性,修复没有FIREWIRE设备产生的安全警告。
在上图中数字2按钮(NEW WAY)中的参数:FixDarwin7 这项补丁只有Darwin OS(Darwin 是MacOSX 操作环境的操作系统成份。苹果电脑于2000年把Darwin 释出给开放原始码社群。现在的Darwin皆可以在苹果电脑的PowerPC 架构和X86 架构下执行,而后者的架构只有有限的[驱动程序]支援。)系统识别。FixRTC 从RTC装置中删除IRQ(0),作用貌似与patch里的防RTC重置类似。FixTMR 从TMR装置中删除IRQ(8),适用于较早的dos设备,现代新的计算机不需要补丁,这个问题只是以前没发现。AddIMEI 这个设置用于intelHDxxx集成显卡,解决完美注入。这项也需要开启FAKEID-> IMEI。FixIntelGfx 开启对IntelGFX显卡的新补丁设置,不开启则补丁不会生效(配合imei)。FixWAK 这个补丁主要是消除警告,如在method_WAK下缺少返回语句则加入Return(Package(0))。DeleteUnuse 从DSDT中删除没有使用的设备,如软盘驱动器,打印机端口和其他没用的设备。FixADP1 将“ AC0 ”设备 重命名为“ ADP1”设备。AddPNLF 添加一个非常实用的调节亮度设置代码。这个补丁也会对系统良好的睡眠/唤醒作用。FixS3D 修正了 _S3Dmethods函数,也解决了一些睡眠/唤醒的问题。FixACST ACST项含义对于苹果和华硕意义不同,对于华硕是AC适配器状态,而苹果是一个替代_cst,c-states table(CPU 闲置休眠状态的功能)。如果要没有冲突就要将其重名为其他名称的东西。AddHDMI 修复HDMI音频输出问题(无需修改AppleHDA)FixRegions 因为BIOS当中的一些内容改变了。这个浮动的区域导致无法使用自定义DSDT(custom DSDT),因为这个区域可移动且不符合当前的状态。这个补丁的目的是找到BIOS中所有这样的区域并在自定义DSDT中加以修正。所以现在你可以生成有错误区域的自定义DSDT然后使用这个补丁FixHeaders MACH reboot修复。
Drop OEM_DSM选项中:ATI AMD显卡修复。USB USB控制器修复。IntelGFX 英特核心显卡修复。Firewire 火线控制器修复。Nvidia Nvidia 显卡修复。IDE 传统硬盘修复。HDA 音频修复。SATA 串口硬盘修复。HDMI HDMI修复。LPC Low Pin Count 总线修复。LAN 有线网卡修复。SmBUS System Management Bus(系统管理总线)修复。WIFI 无线网卡修复。
Debug 选项:调试模式,一般不启用。ReuseFFFF 选项:一些OEM DSDT中包含一些名为_adr和0XFFFF的设备。SuspendOverride 选项:休眠覆写。影响Fixshutdown_0004的DSDT补丁,并扩展到从状态5到3,4和5状态(睡眠和休眠)。Rtc8Allowed 选项:一些用户声称RTC长度可以是8字节,CMOS不会重置。但是另一些用户声称会重置。对于那些想要字节长度为8的用户应该勾选此选项。默认为不勾选。SipSmiAtWake 选项:在每次唤醒时加入SLP_SMI_EN=0的参数。它可以帮助解决UEFI引导模式下的睡眠和关机的问题。
DSDT Name: dsdt.aml的名称
Drop Tables相关选项:DMAR: 未知MCFG: 未知
SSDT相关选项:DoubleFirstState:Ivy Bridge专用。ivy一般可勾选,作用是与cpu功耗有关。其他cpu可不选。DropOem :获取内建SSDT表单。clover可以自动获取,当然也可以将SSDT放到EFI/OEM//ACPI/patched目录下。GenerateCStates:勾选后,可开启c-state功能,修复启动时(ACPI_SMC_PlatformPlugin)GeneratePStates::勾选后,开启p-state功能。
PluginType 值为0,则使用ACPI_SMC_PlatformPlugin;值为1时用X86PlatformPlugin(for ivy)。PLimitDict: 限制cpu频率。值0,1,2。0不开启。UnderVoltStep: 限制CPU功率,只针对core2,对i系列CPU无效。可设为0,1,2。
MinMultiplier 设置最小变频数。MaxMultiplier 设置最大变频数
PatchAPIC (Yes/No, default: No)
Fix NMI in APIC table. 在ACPI表单中NMI丢失时,mac启动可能五国,启动是要用
CPUS=1。所以这个可以起到这个作用。没有这个问题的可以忽略。
smartUPS 若启用,则在系统概述的”电源“项中”UPS已安装“显示为”是“。只起修饰作用。
Halt Enabler (Yes/No, default: No)
ResetAddress: (should be: 0x64) Restart addressResetValue: (should be: 0xFE) Restart address(以上两个值可保留,可删。如果你重启的时候有问题(重启不断电),可按照FACP.aml中值更改。
==========================================================================
config.plist文件设置完成后,点击顶部菜单栏的FILE(文件)选项,在弹出的下拉菜单中选择SAVE(保存)选项以保存文件。