本帖最后由 laoyao 于 2012-1-16 19:51 编辑
昨天晚上学习了论坛上 zlxdike 的 DSDT修改(提取和软件使用篇)大作,原帖链接如下:
https://bbs.pcbeta.com/viewthread-914564-1-1.html
深受启发,决定动手来编译我自己的Asus M50VC本本的dsdt文件,我选择的是Mac版本的DSDT Editor软件,。
经过几个小时的奋斗,在排除错误方面拜读了WOWPC论坛的lansantoumei的帖子:本人的处女秀,dsdt修改教程,实现了仅一个警告的较满意状态。原帖子地址:
http://www.wowpc.cn/thread-18432-1-1.html
然后就是按照 zlxdike 提供的0.6版本和0.7版本的patch包进行patch,一边patch一边编译。还好,基础性的错误,比如变量没有定义之类的还是能自己果断修复。就是patch包太多,不甚明白,按照葫芦画瓢,比如找了一个usb内建的,比如sleep之类的,当中还参考了论坛上 威廉第三 的大作:
[教程] 威廉第三的MAC系列教程(一) ——使用ACPI Patcher制作DSDT补丁
https://bbs.pcbeta.com/viewthread-484842-1-1.html
里面,照葫芦画瓢补了三个patch。
编译还是一个警告,忽视后生成了dsdt.aml文件,放入到mac盘的Extra目录下面,还修复了一下硬盘权限后重新启动。
启动出现了五国,心凉,心想我原来都声卡显卡驱动了,现在搞一个dsdt反而五国了,不死心,强制关机再启,论坛上有仁兄说曾遇到过启动一次五国再启动一次正常的情况,但是貌似我没有这个运气,第二次启动还是五国。查看了一下代码,貌似是VoodoHDA的声卡问题,于是再启动,采用-x -v -f的模式,结果进入了桌面。到S/L/E目录下面把VoodoHDA.kext文件备份后,删除该驱动,更新kext后,重启。进入了桌面状态。唯独一个声卡不对,查看了硬件信息,显示的是IntelHDA音频,应该可以确定是dsdt文件告诉了系统我的电脑上是存在intelHDA音频设备,导致原有驱动五国,也无新驱动。其余的一切正常。当然睡眠还是无效,长睡不醒,鼠标,USB拔插,光驱弹开,电源按钮,键盘,均无法唤醒。查看了系统硬件信息,USB均为内建。至此我的dsdt研究第一阶段结束。
个人感觉貌似加载了dsdt文件,整个系统的速度反而不如以前快了,不知道是不是机器破的缘故?
现在就是想请问一下各位对dsdt有研究和心得的前辈是否能指点一二:
附图1:
1、附图中这个警告是否可以修正,我看到是一个返回zero的代码,如果想修正这个警告,应该是采用什么方法。有大神们说一个警告不影响使用,此言应对,但是我还是想是否可以完美一些。
2、想请教一下,如何patch自己需要的或者适合自己的补丁包?是不是自己机器内的所有硬件(比如SD读卡器等等)全部要信息完善后的dsdt文件才能起到效果?因为那些patch都是英文,有些尚能领会,有些则是完全不明白。那些patch是必须要打的(适合所有的笔记本机器)?那些patch是针对性的或者对应功能性的(比如usb内建是哪些,那些是睡眠的,那些是唤醒的等等)?我想搜寻一下patch包中的那些patch各表示什么意思,但是没有这样的综合性叙述的帖子。比如我现在只需要睡眠完美,那么需要patch那些补丁??
3、如何判别我生成的dsdt.aml文件起到了作用?或者是否存在全部起作用或者局域代码起作用的可能?有没有可能patch得不对头,它放在extra目录下面其实是没起到作用?从那里可以辨别出来。就比如说我可以从任务栏透明确定我的显卡驱动生效了这样的佐证。目前我所了解的是usb内建这个,其余的就不知了,诚意请教。
4、dsdt生效后,是否需要对原系统里面的某些kext删除,我试图理解为:比如dsdt文件告知了系统的原生硬件信息,但是kext里面存在仿冒或者替代的信息,那么系统会按照哪一个为准?谁的优先权高?或者同时存在有问题(最简单的就是前面我所说的声卡kext导致五国的情况)。对这方面的知识缺乏,我只是从个人理解的角度来描述,表述不正确的地方还请指出。
小白诚意请教,还请各位方家指点,不胜感激!
|