黑苹果折腾第三迭代之末
通过不断调换SSDT存档,得出调查结论:
不同于以往的OS X 10.9,现在无论是BIOS还是DSDT或是SSDT屏蔽独显,都会导致核显工作不正常(闪烁、花屏乃至死机)。
独显虽无法参与工作,但也未必是个累赘。
反倒是**sensors.kext
系列让机器温度偏高。
睡眠、唤醒顺利,但是蓝牙还是容易停止工作。
USB3.0能轻松驱动。
通过不断调换SSDT存档,得出调查结论:
不同于以往的OS X 10.9,现在无论是BIOS还是DSDT或是SSDT屏蔽独显,都会导致核显工作不正常(闪烁、花屏乃至死机)。
独显虽无法参与工作,但也未必是个累赘。
反倒是**sensors.kext
系列让机器温度偏高。
睡眠、唤醒顺利,但是蓝牙还是容易停止工作。
USB3.0能轻松驱动。
此前通过折腾OSX10.9获得了一份较可靠的DSDT代码,但是在装10.11期间试过HP Install Helpler
所增补的一些不知其所以然的补丁。
两个版本各有优劣,互不相容。
僵持了一个多月后,最终决定手动模拟“二分查找”来对两份代码进行merge
操作。
DiffMerge.app
是一款直观便捷的文本比较器(不是编辑器)。
经查,防止Clover引导El Captain分区引导失败和排除关机不断电故障的关键代码如下:
OperationRegion (GNVS, SystemMemory, 0xAC5EEB98, 0x019F)
在搜索解答的过程中还发现了有用的资料库:Clover Wiki。
为调试DSDT代码,不辞辛劳地降级、升级,方才发现OSX不同版本驱动USB的方式有明显差别。
pcbeta论坛上某坛友仿冒的AppleHDA.kext
虽有扬声器音量控制不同步的bug,但总体上异常完善,填补了该领域的一大空白,且能“向上”兼容。
2015年12月勤奋刻苦的国外开发者RehabMan所编写的GenericUSBXHCI.kext
成为了驱动USB3.0端口,以及实现USB端口通信正常化的制胜关键。感激不尽。
注意去除DSDT中所注入的USB fakeID之类的值。