吐槽 作为一个搞了三年Android开发的,对于苹果的东西,本来我是拒绝的。我原来的想法是,我宁愿花时间去学习React、Vue、Angular这些前端框架,或者node.js、Python、PHP这些后端框架,也不会去浪费时间鼓捣iOS。 然而公司突然有需求了,作为一个哪里需要哪里填的螺丝钉,再仔细想想:多学个东西,也没啥坏处,iOS虽然终归要死,但是至少没这么快,算了算了,学学吧(苹果爱好者和iOS开发者不要骂我,我躲起来了)~ 有段话说得好: PC上用Windows的,那是普通青年;Mac电脑上用MacOS的,那是文艺青年;Mac上用Windows的,那是2B青年;那么最后,PC上用MacOS的,是什么?牛逼青年!那么,作为一个爱折(zhuang)腾(bi)的好青年,黑苹果搞起来咯! 最后说一下:本文仅仅是分享一下一个小白的经验而已,而且完美度并不是100%,因为目前已经不影响自己使用了,我得赶紧学iOS开发去了。经过这一番折腾,也对苹果系统的套路有了简单的了解,学习了。大神看起来本文肯定low的很,也欢迎大神指点! 材料- 华硕K550JK笔记本电脑,集成显卡是HD4600
- 参考了一下远景前辈们的帖子:
安装过程中的一些坑- 进入系统后要记得关闭睡眠功能,否则可能无法开机(网上说的,估计是因为怕电源管理没驱动好,我暂时还没有开睡眠功能。一旦无法开机,可以使用Clover解除睡眠锁定状态即可,不可怕);
- 引导时出现错误,修改DSDT文件可能会解决问题;
- 安装时提示请插入电源,右上角始终显示0电量,未充电状态,则需要配置DSDT文件驱动电源管理;
- 各种帖子搞来的Clover的EFI,尽管型号相同,配置相同,但是也可能会出现各种问题(我就遇到了各种问题),但是至少能少踩点坑,也是个好事。如果你想直接伸手党,搞来就用,100%纯自动,那你只能跪求神明保佑了。否则还是提升自己动手能力比较靠谱~
Clover config特别配置:SSDT DropOEM true 不配置这个貌似无法生效SSDT里的一些改动(改了白改,我就被坑了)。 DSDT- 从Windows10导出原始文件,用MaciASL打开
- Fix ADBG
- Fix PARSEOP_ZERO
- Remove _DSM methods
- Rename B0D3 to HDAU
SSDT- Remove _DSM methods
- unexpected $end and premature End-Of-File
- 2错误解决不了了,所以只好不进行1操作(2操作是1操作引起的,本来是无错的)
- Remove _DSM methods
- Rename GFX0 to IGPU
- Rename B0D3 to HDAU
- Brightness Fix (Haswell)
- haswell显卡补丁
- Remove _DSM methods
- Rename GFX0 to IGPU补丁
- 编译会有syntax error,Unexpected PARSEOP_NAMESEG, expecting“(”的错误,删除后面的MUID REVI SFNC XRG0即可解决编译问题。
下面开始屏蔽独立显卡zhangyipengdeMacBook-Pro:dslwin zhangyipeng$ grep -l Method.*_INI *.dsldsdt.dslssdt4.dslssdt5.dslssdt6.dslzhangyipengdeMacBook-Pro:dslwin zhangyipeng$ grep -l Method.*_OFF *.dslssdt5.dslssdt6.dslzhangyipengdeMacBook-Pro:dslwin zhangyipeng$ grep -l GFX0 *.dsldsdt.dslssdt4.dslssdt5.dslssdt6.dslzhangyipengdeMacBook-Pro:dslwin zhangyipeng$ grep -l B0D3 *.dsldsdt.dslssdt4.dslzhangyipengdeMacBook-Pro:dslwin zhangyipeng$ grep -l -B3 _ADR.*0x00030000 *.dslssdt4.dslzhangyipengdeMacBook-Pro:dslwin zhangyipeng$ grep -l -B3 _ADR.*0x00020000 *.dslssdt4.dsl于是发现ssdt5和ssdt6这两个文件同时包含_INI和_OFF,因此根据R大大的帖子,我们知道,我们需要从这两个文件下手了; dsdt需要修改_REG,ssdt5需要修改_OFF,ssdt6需要修改_INI。具体修改方法需要参考后面链接中翻译的R大的文章; 整体编译生成aml,也可以挨个另存为ACPI Machine Language文件; 拷贝到/EFI/CLOVER/ACPI/patched; 重启,依然不行,怀疑可能是ssdt1文件所致,因为他曾经编译错误,删除之; 重启,依然不行,查到需要修改config中SSDT DropOEM true; 重启,it works!;
总结折腾的我差点怀疑了人生,不过还是整完了,完结撒花。 目前剩余的没有正常驱动的组件20170219 15:00修改了DSDT,打了Haswell的电源补丁就勉强通过了。- 电量显示问题,无法识别充电状态,无法获取电量信息。
一开始没搞定,后来基本没有时间了,况且不影响使用,暂时没有动力去搞了,过一阵子再搞~(拖延症又犯了)20170219 19:00增加了SSDT文件后,声卡貌似是完美了。更换了BCM43224,淘宝买的,免驱。20170221 03:00参考了http://www.cnblogs.com/eaglexmw/p/4908877.html 转载翻译的R大的帖子,然后结合实际情况修改DSDT和SSDT,详见上文。20170219 19:12发现config文件中配置的内存条信息中,8G的那根信息有误,修改正确重启,然而问题没有解决。挂载主硬盘的EFI分区,将Clover整体拷贝过去,更新一下EFI目录就OK了。发现并不是-v无法关闭,而是kext的Debug开关没关,所以Debug开关一共有三个,加上-v,一共四个地方。误判,挺对的,按键一切正常。驱动放了个Fn的kext驱动已经可以通过快捷键调节声音和屏幕亮度(貌似不需要Fn,直接按,这点有点奇怪,估计是因为macbook原版键盘上面就是直接的调整亮度和音量的)。确实有点蛋疼,不支持mac触摸板的各种手势,进入偏好后触摸板是白板无内容。不过我本来就是个鼠标党,可以用鼠标,所以没继续研究触摸板。后期遗留任务,慢慢搞吧~参考了http://bbs.pcbeta.com/viewthread-1723942-1-1.html 这位大哥的帖子,修改之后感觉区别不是特别大,也不知道x和y都是干啥的,为啥只修改y。后来直接去系统偏好设置里的显示器-->颜色,直接自定义颜色值效果,还可以增加个类似iOS中NightShift的颜色效果配置,挺不错的了,就算解决了。
|