历时许久,看着不断成功的前辈由衷羡慕。不断地尝试,虽用着前辈们提供的文件,但问题依然不断。前辈们所提供的资料略少,新手们真的很难实现。我也是借助两位前辈 sun9999,zsyyyk的帮助,尤其是zsyyyk的指教,如愿以偿给积极的电脑装上了Mac OSX 10.9。其中艰辛大家必然能领会。感谢RehabMan大神提供的Haswell 重启解决方案,前期使用这个方法成功进入了安装盘。感谢Clover的开发者们。

Haswell重启问题的解决方案有三个:

  1. 用PMPATCH 破解 BIOS(由于神舟这款机子官方没有发布新的固件,这个这里就无法实现。前期其他方案没出来时最苦恼的了,好在现在有其他方案。)
  2. 使用修改内核(非AMD内核)

无法使用原生电源管理,可以结合破解的电源管理

AppleIntelPowerManagement.kext

  1. 使用Clover的KernelPm参数

本人测试可以使用内核的XCPM

以上方案最完美的莫过于刷BIOS一劳永逸了。不过条件所限,这里只能提及后两种方案。

K580C I7 D1配置详情及驱动解决途径:

核显:HD4600 使用Clover注入显卡ID即可解决,可能会有亮度不可调的问题,下附解决方案(DSDT)

声卡:ALC282  使用VoodooHDA 2.8.4驱动,有缺陷,无法自动切换。

使用AppleHDA 仿冒声卡, 有破音,可自动切换。

网卡:Realtek  RTL8111 使用官方驱动便可解决

无线网卡:原装无解,淘宝换 BCM4322解决。

变频:通过Clover的C-State和P-State配合SSDT可实现5档变频。

睡眠:暂时没解决

一、制作安装盘

黑苹果的第一步是制作安装盘,制作的安装盘又分两种:懒人版和原版。我们最期望的莫过于安装原版了。懒人版制作方法论坛里有很多,这里提供几个帖子以给大家参考:

原版:  http://bbs.pcbeta.com/viewthread-1451985-1-1.html

懒人版:http://bbs.pcbeta.com/viewthread-1350765-1-1.html

XCPM-Free 内核及内核缓存:

http://bbs.pcbeta.com/viewthread-1447530-1-1.html

Clover :http://bbs.pcbeta.com/viewthread-1424307-1-1.html

懒人版

制作懒人安装盘的方法和论坛里的没什么不同,需要注意的是不用打MBR补丁,因为我们是装在GPT硬盘上的,如果使用了补丁可能会产生”still waiting for device”的错误。制作时我们可以不用提取内核文件,直接使用修改的内核放在根目录下即可。如果需要可以将内核缓存放置到

S/L/Caches/com.apple.kext.caches/Startup 目录下。

(使用KernelPm参数不需要更换内核,根目录下存放原版内核就可以了)

内核和缓存文件的区别:

Clover中without cache选项引导将加载使用根目录下的内核(kernel),否则使用缓存(kernelcache)。

原版

原版安装盘的制作使用下面链接提供的三步法就可以了。也可以使用论坛上提供的制作好的安装包写到U盘即可。

本人使用的Clover 版本是2377,使用最新版本的Clover(r2629)同样正常。

二、引导安装

如果使用的是本人提供的DSDT、SSDT和config.plist文件,一般可以直接进入懒人版安装界面,如果正常启动无法进入可以尝试使用安全模式进入。这样还不行请确认FakeSMC是否正确放置。

想要引导原版有一个条件(针对我的机子,不知道是否具有普遍性),Clover需要一个HFSPlus.efi文件(已提供)。默认的Clover是不包含的,需要自行编译。好在网上有人放出。请将该EFI文件放到Drivers64UEFI文件夹,注意要删除vBoxhfs*.efi。缺少该驱动文件会无法正确引导原版安装盘(表现为自动返回Clover界面,闪退等)。

 

三、进入系统

进入系统的障碍主要是卡蓝牙问题,实际上是显卡驱动。需要把Geforce*、NV*、IOBluetooth*等驱动删除便可以进入安装盘。实际上可以不用删除蓝牙,但本身机子不存在蓝牙,删了也无妨。

原版无法直接删改S/L/E目录,可以先修改BaseSystem.dmg文件。但由于BaseSystem是只读包,所以可以通过磁盘管理工具转换为读写包,修改完再转换回来即可。

Snip20140223_1

 

另:原版的引导有两个kernelcache文件。一个是存放在根目录下的一个隐藏文件夹里,一个是在S/L/Caches/com.apple.kext.caches/Startup里。可以直接替换这两个内核缓存进入系统。

四、懒人版生成Recovery HD

懒人版和原版方式安装的一个主要差别就是有没有自动生成Recovery HD分区。那如果安装了懒人版还可不可以再次生成这个分区呢?答案是肯定的。感谢网友 沙漠旋风 提供的解决方案:

http://bbs.pcbeta.com/viewthread-1419274-1-1.html

感兴趣的网友可以试试,本人亲测可用。下图的Recovery HD分区就是通过工具生成的,并成功引导进入。

1

 

五、驱动解决

现成驱动

声卡、键盘、USB、触摸板和光驱 都可以通过Mutilbeast 6来解决,按下图配即可:

2

 

希望仿冒声卡的同志可以自己尝试一下。

 

解决HD4600核显亮度调节问题

有很多人遇到和我一样的问题:启动时屏幕很暗,而且无法调节屏幕亮度。睡眠后唤醒(只是显示器睡眠,并未真正进入睡眠状态)恢复亮度。并且可以随意调节。

3

 

该解决方案由RehabMan 提供,daxuexinsheng推荐,帖子:

http://bbs.pcbeta.com/viewthread-1475339-1-1.html

下面详细介绍一下修改DSDT和SSDT及打补丁的过程(DSDT和SSDT基于XXX1提供的完美版本)。

  1. 将所有DSDT和SSDT文件单独放在一个目录,使用IASL 命令反汇编成DSL文件。

命令为:iasl –e *.aml –d *.aml

该命令会生成DSDT.dsl和SSDT*.dsl文件

4

 

  1. 查找Device (GFX0)出现在哪个位置,发现在SSDT1.dsl文件里存在,将其父节点移到DSDT.dsl里即整个Scope (\_SB.PCI0) ,放在任意个Scope (_SB.PCI0)前面。再将

OperationRegion (SANV, SystemMemory, 0x90FB8D98, 0x0141)

Field (SANV, AnyAcc, Lock, Preserve)

{…}

整个移动到DSDT.dsl里(放到一群Name声明的后面就行),此时这个SSDT1.dsl就剩几个声明了。

  1. 修复错误

接着就是编译,编译DSDT.dsl时会出现很多错误。如图

5

 

对于 already exists in scope (***) 的错误,我们在DSDT中找到相应的External (**),将其删除即可。

对于 dost not exist (*) 的,我们就回SSDT1.dsl中找到相应的External (*)移动过来就可以。

修复以上错误后,剩下两个语法错误。我们定位过去看看。

6

7

 

Store的语法错误。Store应该有两个参数,而在文件头的定义中发现LGBR是一个有一个参数的函数。

8

 

找到函数,观察,发现该函数应该是个设定亮度级别的函数(结构多么像C语言的SWITCH啊):

9

 

最后的返回却是:

10

 

所以正确的代码应该是:

11

 

接下来SSDT.dsl也报了个错误。

12

 

发现三个方法,右边的注释可知,这是亮度相关的代码。其实这三个方法在移到DSDT的Device(GFX0)中也存在,参照了一下Device(DD03)的代码。觉得这几个函数删除应该不会有影响。

  1. 经过以上步骤处理后,开始打补丁。

1) 由于我们只修改包含GFX0信息的代码,所以用改名补丁对所有DSL文件进行补丁,发现,其实SSDT2-4.dsl的文件都不包含该信息,所以不需要对其重新编译,也就不需要对其进行错误修改,使用原来的AML文件即可。

2) 首先使用RnameGFX0 to IGPU 补丁,将所有的GFX0修改为IGPU(注意,这里不能使用MACiASL的查找替换功能,要用Patch功能,导入补丁文本即可)

3) 再使用Brightness fix (Haswell) 补丁,给DSDT.dsl文件打补丁。Device(IGPU)在哪个文件,就给哪个文件打补丁。补丁打完后就可以直接放到Clover中使用了。

变频

我提供的SSDT是使用ssdtPRGen生成的,可以实现11档(8、24、25、26、27、28、29、30、31、32、33)变频。Clover生成的C-State和P-State也可以实现多档变频,具体未测试。使用SSDT.aml实现变频请勾选Drop OEM,去掉Generate P-State和Generate C-State

有线网卡驱动

使用我提供的FakeSMC.kext文件内置的RTL8111.kext插件可以直接驱动。

电池电量

使用sun9999提供的电池驱动即可:

http://bbs.pcbeta.com/viewthread-1424307-1-1.html

六、总结和未解决

现在就睡眠问题尚未解决了。目前睡眠问题主要是睡眠唤醒自动重启。

七、资源下载

本帖推荐使用的FakeSMC.kext:

http://bbs.pcbeta.com/viewthread-1453436-1-2.html