本帖最后由 ncy2005 于 2014-4-16 11:28 编辑
前言:两年半前第一次接触黑苹果,当时虽然安装成功了,但一直没去继续研究。当时屏幕无法调亮度,dsdt、ssdt也都不会用。这次趁着打算换新苹果系统,花了整整十天,终于把10.9.2近乎完美运行了,亮度也可以调节了,dsdt也研究了一下,比之前算是进步了一点点。
神舟A550i5已经是4年前的老配置了,估计再也没机会这么折腾它了~~
处理器 英特尔 Core i5 M520 @ 2.40GHz 双核笔记本处理器 主板 英特尔 Intel (英特尔 PM55 芯片组) 内存 4 GB ( 记忆科技 DDR31333MHz / 金士顿 DDR3 1333MHz ) 主硬盘 富士通 MJA2500BHG2 ( 500 GB ) 显卡 Nvidia GeForce GT 240M( 1 GB / 广达 ) 显示器 LG LGD7001 ( 15.3 英寸 ) 光驱 东芝-三星 CDDVDWTS-L633C DVD刻录机 声卡 瑞昱 ALC272 @ 英特尔 5Series/3400 Series Chipset 高保真音频 网卡 鈺硕 AR8131PCI-E Gigabit Ethernet Controller / 广达
目录 一、在MBR分区上安装10.9.2
二、进入系统
三、驱动安装(所有本文的下载文件都在此部分,后面部分只是总结,下载仍在此部分)
四、按照亮度调节教程添加代码后brightness最大值max、最小值min为0的成功解决
五、修改开机默认亮度值
六、使用SMBios.plist让你的机器更加接近白苹果(下载在第三部分的5中)
七、修改DSDT增加电池显示注意事项(下载在第三部分的3.20的更新中已含)
八、修改DSDT完善睡眠,usb及声音睡醒有效(下载在第三部分的3.20更新中)
九、关于神舟a550i5使用原生电源管理的问题
十、声音周期性鸣响、且有破音问题(待研究)
十一、内核日志一直在报错Sound assertion "kTypePinComplex != fType" failed in AppleHDAWidget at line 2043 goto Exit(使用不影响,暂不研究)
十二、概率性出现使用中五国,报Kernel trap at ...,type 13=general protection或者14=page fault,fault cpu:错误(待研究)
一、在MBR分区上安装10.9.21. 全新安装失败:用变色龙引导,像安装10.7.2的时候尝试了全新安装,虽然能到安装界面,但安装到一半就退出了,在安装前提示不完整,镜像我确认过是完好的
2.windows下恢复安装成功: 在网上搜了下,貌似10.9.2不支持在MBR分区上的全新安装。幸而看到了iaihc大神的最简单恢复安装方法,成功。 镜像、恢复安装工具下载及图文教程链接: https://bbs.pcbeta.com/viewthread-1482165-1-1.html 里面有一个细节没讲仔细,就是拖拉容量的位置,如图:
-------------------------------------------------------------------分割线--------------------------------------------------- 二、进入系统我使用变色龙2.2版本,需要使用easybcd建立开机启动项。 变色龙wowpc.iso:
wowpc.rar
(297.25 KB, 下载次数: 30)
1.在win7我的电脑右键->管理->磁盘管理,把系统保留分区分配一个盘符。
2.将wowoc.iso放到保留分区根目录下,我的就是K:/下 3.用easybcd建立开机启动项
4.重启,选择你新建的那个启动项
5.变色龙界面下选择安装的苹果盘分区,按回车进入系统(iaihc大神的系统镜像默认变色龙进入系统是-v –f模式,方便查看错误信息)。
6.默认神舟a550 i5会成功进入系统,不需要其他方法的帮助。
三、驱动安装安装成功后进入系统,显卡默认免驱,需要安装其他驱动了。安装驱动推荐的工具kextwizard,使用教程链接如下: https://bbs.pcbeta.com/forum.php?mod=viewthread&tid=966102
kextwizard下载:
Kext Wizard.app.zip
(144.24 KB, 下载次数: 30)
1.网卡驱动,用之前在Lion 10.7.2上的驱动成功:
Atheros ar8131 Ethernet.kext.rar
(44.11 KB, 下载次数: 27)
2.ALC272声卡驱动 (1)未使用dsdt内建声卡的情况:安装以下两个驱动到系统System/Library/Extensions文件夹下,注意一定要同时安装,只装一个都无法驱动,安装完后用kextwizard恢复权限。
sound use toghter in sle folder.rar
(2.02 MB, 下载次数: 155)
(2)使用dsdt内建声卡的情况:若使用dsdt自建声卡了,比如我的dsdt,则可以不使用上面包里的vdooooHDA.kext,另一个要用。同时使用vdooooHDA+DSDT有可能引起5国(爬文得到的别人的经验)。
3.GT240M显卡驱动,默认免驱(变色龙的GraphicsEnable选项必须是Yes,即启用才能进入系统)。此时你的系统是不能调节亮度的。
4.亮度调节问题 神舟a550i5的用户直接使用我的dsdt和ssdt即可解决调节亮度和cpu满负荷问题,而且不会出现其他人的进入亮度不正常的问题,我已经将进系统的默认亮度设置到了倒数第三档。将这两个文件放到苹果系统根目录的Extra文件夹下即可(iaihc大神的系统镜像默认变色龙会加载这两个文件,不需要修改变色龙的配置了): ssdt下载:
ssdt.zip
(1.03 KB, 下载次数: 42)
dsdt由于更新了,下载见下面更新的部分。
需要配合这个kext来使面板上的亮度调节起作用:
GenericBrightness.kext.zip
(17 KB, 下载次数: 135)
其他机型的用户可以尝试使用这个工具调节亮度,第一次使用时需要联网,之后就不用了:
改亮度要联网Shades Preferences.prefPane.rar
(2.4 MB, 下载次数: 220)
5.附上我的变色龙配置文件,放到苹果系统根目录的Extra文件夹下即可
变色龙配置文件.rar
(822 Bytes, 下载次数: 66)
-------------------------------------------------分割线,更新-------------------------------------------------------
2014.03.19更新DSDT,增加了电池电量显示,这个Unkown和windows下的显示是一样的,说明是杂牌电池(神舟省成本啊,DSDT里面有能识别三洋等正牌电池的代码):
dsdt已更新,下载20号的更新~
AppleACPIBatteryManager.kext.zip
(34.46 KB, 下载次数: 43)
2014.03.20更新DSDT,解决无法睡眠,睡眠后usb不能用问题
dsdt解决睡眠问题.zip
(23.78 KB, 下载次数: 102)
需要用kextwizard安装这个驱动解决声卡睡眠无声问题
CodecCommander.kext.zip
(9.42 KB, 下载次数: 33)
至此10.9.2安装近乎完美,以上内容伸手党放心使用~~~~~~~~~~~~~
-------------------------------------------------分割线,以下内容伸手党没用--------------------------------------- 四、按照亮度调节教程添加代码后brightness最大值max、最小值min为0的成功解决教程链接:理论上完美解决N卡亮度调节问题 https://bbs.pcbeta.com/viewthread-825117-1-3.html 1.按照上面的教程step1修改dsdt添加如下代码,成功出现了小太阳,但是出现了教程里面悲催的max为0的问题:
- Method (_DSM, 4, NotSerialized)
- {
- Store (Package (0x06)
- {
- "@0,backlight-control",
- Buffer (0x04)
- {
- 0x01, 0x00, 0x00, 0x00
- },
- "@0,built-in",
- Buffer (One)
- {
- 0x01
- },
- "@0,pwm-info",
- Buffer (0x14)
- {
- /* 0000 */ 0x01, 0x14, 0x00, 0x64, 0xA8, 0x61, 0x00, 0x00,
- /* 0008 */ 0x08, 0x52, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
- /* 0010 */ 0x00, 0x04, 0x00, 0x00
- }
- }, Local0)
- DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
- Return (Local0)
- }
复制代码
2.经过反复试验,我发现了解决问题的思路。 (1)教程里面包括紫米老师的分析,一般人的DSDT的GFX0或者PEGP代表显卡,所以这段代码都是放在显卡下。而我放在PEGP和GFX0之后,在苹果系统下用IORegistryExplorer的观察驱动ApplebacklightDisplay的是PEGP,如下图:
(2)我去查看我的dsdt代码PEGP下,是空的,而且原来的地址也不对,PEGP的地址是0xffff,我是手动改成我的显卡GFX0的地址0x00020000的。在GFX0下和PEGP下都添加了代码,重启仍然是无法调节亮度。
(3)继续爬文,在这篇文章的回复里面找到了蛛丝马迹 [求助] HD4000如何设置以调节亮度 https://bbs.pcbeta.com/viewthread-1128394-1-1.html
我的_BCL下没有这些数字,只有一个返回函数QBCL(),在附近找到类似于亮度调节的英文。
搜索上下文,果然找到了调高BRUP和调低亮度BRDN的函数,
并且也找到了类似的亮度等级数字
至此,对DSDT的亮度相关构造大致有了了解。 (4)搜索全文的“BRDN”,结果发现有两个地方出现了,一个是GFX0下面的Device(DD02)下面有
另一个有的地方是VGA下面,我的DSDT里面有两个VGA,分别是P0P2和P0P3
(5)做实验 我把step1的代码放到了这GFX0下,重启,无法调节亮度,但有小太阳,max最大值为0。 再把step1代码放到2个VGA下,重启,亮度成功调节。 3.Brightness最大值为0的解决办法 将那段代码放到含亮度调节函数的驱动设备下面。Brightness最大值为0,说明驱动的设备是错误的。 4.添加PNLF代码到Device(PWRB)上面 - Device (PNLF)
- {
- Name (_HID, EisaId ("APP0002"))
- Name (_CID, "backlight")
- Name (_UID, 0x0A)
- Name (_STA, 0x0B)
- }
复制代码
5.用kextwizard安装GenericBrightness.kext到System/Library/Extensions文件夹下 6.驱动成功后的在苹果系统下用IORegistryExplorer的观察驱动ApplebacklightDisplay,在我的电脑DSDT上起作用的是VGA0:
五、修改开机默认亮度值还记得上面的_BCL下的返回函数QBCL()吗,里面那串值的含义
第一行的值就是交流电时的默认亮度了,我的DSDT中间修改成了0x50。
2014.03.20更新,经测试修改第一个值无效,还需要再研究研究 2014.03.21更新,按照教程1楼的方法,成功 理论上完美解决N卡亮度调节问题 https://bbs.pcbeta.com/viewthread-825117-1-3.html
原文引用如下:
“把附件中的brightness 复制到/bin下
详细做法是 把brightness放到系统盘下 然后再终端中输入下列代码
(代码略)
在偏好设置-账户中添加启动项 把附件中的brgt添加进去 这样就可以开机的时候把亮度改成最中间的亮度”
------------------------------------------------
六、使用SMBios.plist让你的机器更加接近白苹果1.使用苹果原生的图像电源管理:在AppleGraphicsPowerManagement.kext下的info.plist里面找到了GT240M的ID。所以我决定将我的SMBios全部按MacBookPro6,1来设置,这样我就可以使用原生的图像电源管理了。 一个是改SMBios.plist的REV值,另一个是smc-compatable值。
2.使用ChameleonWizard修改SMBios.plist,很简单,只是选择MacBookPro6,1就行了,会自动修改SMBios.plist的SMproductname、SMfamily等信息。 3.不同机型的REV值和smc-compatable值见如下帖子:https://bbs.pcbeta.com/viewthread-1080226-2-1.html
(七到十二章节见5F)
--------------------------------分割线,以下内容其实没什么用,只是记录一下-------------------------------- 另外在摸索亮度调节的时候,顺便查看了所有与Graphics相关的苹果驱动的info.plist,其中在IOGraphicsFamily.kext的info.plist里面包含了AppleBacklightDisplay。我在底下加了IODisplayParameters->brightness->max的子项,在使用错误的PEGP驱动时,可见最大亮度值不为0,是我设置的值,但仍然无法调节亮度。当用正确的VGA驱动时,我的设置的max值不起作用,同时可以正常调整亮度。
|