DSDT是你黑苹果生涯必须要过的一个坎,不要觉得它很难,就是一个纸老虎,弱鸡一个,so easy
Posted 黑苹果小白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DSDT是你黑苹果生涯必须要过的一个坎,不要觉得它很难,就是一个纸老虎,弱鸡一个,so easy相关的知识,希望对你有一定的参考价值。
工欲善其事必先利其器
我们就得准备好dsdt的提取还有修改工具
iasl,maciASL,补丁源
下载完后
就可以来进行好玩的编译排错了
相信小白的话
很好玩
完成后会很有成就感!
DSDT
黑苹果飞天技巧
一、提取
一共有三种方式
在windows,Linux,mac下都可以提取
1
Windows下你可以
使用AIDA64进行提取
也可以直接采用iasl进行提取
我是直接用iasl提取的
这个软件运行后
即可直接提取dsdt和ssdt
不用做什么过多的操作
比aida64简单不少
具体操作如下
将压缩包解压在桌面
然后点击start.bat
你电脑的dsdt和ssdt便全部提取完毕
整理dsdt,ssdt的时候
记得把iasl.exe这个文件顺便和他们放在一起
反编译需要用到
2
mac可以直接在引导界面按f4进行提取
提取的dsdt和ssdt
保存在EFI/clover/acpi的文件中
Linux的我不太记得了
就不瞎BB了
提取完毕后
将所有的文件保存在同一个文件夹中
文件夹最好使用英文命名
能减少很多不必要的麻烦
二、反编译
10.15.5不知道为什么
我之前可以用的系统解锁代码失效了
所以我只能在windows下进行反编译
个人也建议在windows下编译
mac有很多人会出错
反编译失败
我们提取到的扩展名是dat的文件
是机器语言
一般的编程顺序是
先把程序语言编译为机器语言
然后在发送给机器执行
但是现在我们要除错
就必须把提取到的机器语言反编译为编程语言
才能用编程器进行修改
修改完毕后
再编译为机器语言
让机器能够正常运行
这里的机器指的就是我们电脑的硬件
dsdt还有ssdt可以起到正确引导硬件驱动的作用
这也就是我们为什么要花费时间去修改它的原因
说了这么多话
操作起来就是两句代码的事
windows键+x
调出管理员命令行
首先使用代码cd+空格+文件路径
这个代码是定位你文件的位置的
不知道文件路径的
打开命令提示符
直接把你的文件夹拖进去
路径就显示出来了
直接复制路径即可
定位到你的dsdt文件夹后
然后直接输入 .iasl -d *.dat
然后跑一会代码
你的文件夹就会多出扩展名为dsl的文件
到此反编译就完成了
咱们进入mac系统
进行排错编译
三、排错
排错需要用到一些可能需要用到一些补丁
我们先安装MACIASL
再添加补丁源
才能使用一些补丁
把它解压到文稿目录下
然后将其添加到maciasl
本来我们直接添加RehabMan的补丁源的
但是需要科学上网才能加载出来
所以不如直接下载下来作为本地源添加
file:///+补丁源路径
添加完毕
我们就可以直接本地加载补丁源了
要是不知道路径的话
也可以把补丁文件夹拖拽到终端界面
就可以显示路径了
添加好后,我们就可以正式来排错了
打开DSDT.dsl
首先点击编译
查看是否有错误
一般都是有的
错误提示是第一行有错误
显示只有一个错误
但是呢
小白白们
不要太高兴了
只有一个错误
是因为
第一行编译就出现错误了
没法继续编译下去
所有暂时只显示一个错误
先老老实实改错
才能该下一个错误
由于我没学过ACPI编程语言
所以对于这种即拉巴拉的错误
查了好多RehabMan的贴子
还是不知道该如何排错
我索性就直接注释掉了
然后就解决了
所以遇到不知道该如何解决的
先注释一下再说
万一好了呢
注释好后
变成这样
我注释完第一行
就显示第二行错误
注释完第二行
又显示第三行错误
所以我就索性把这一段全部注释了
全部注释完后
再次点击编译
出现了新的错误
看到这几个错误提示
我是很开心的
它提示名称已经存在
既然已经存在了
那么这几个就直接删除掉就行咯
注意哈
我们应该修改完一个错误就编译一次有的时候
修改完一个错误之后
错误就会发生变化
我三个错误修改下来都没有发生变化
所以我就不来费口水描述每次都说编译
3个错误修改完毕后
没有新的错误了
注意哈
我们不需要去关心这些黄色的警告⚠️
除非你学过ACPI的知识
知道上下结构的联系
否则不要理会这些警告
只会越改越乱
这个dsdt已经修改完毕
只剩下一些大于8位字节的拆分
还有需要打一些补丁
就能用了
不过由于clover configurator功能的日益强大
以前需要dsdt,ssdt解决的问题
基本可以用clover修改config.plist来完善
所以这份dsdt
对于台式机已经基本完工了
笔记本只要字节拆分即可
我们先把dsdt保存起来
再赋予aml的扩展名
好了
今天这次就说到这里了
大家可以照着图文教程
耍一耍
各位帅小伙,动一下你们的金手指吧
以上是关于DSDT是你黑苹果生涯必须要过的一个坎,不要觉得它很难,就是一个纸老虎,弱鸡一个,so easy的主要内容,如果未能解决你的问题,请参考以下文章
Android程序员生涯路:九年!从小厂到大厂,这几点经验必须要跟大家说!
蓦然回首,十余年的程序员生涯最后就只剩下了这些!希望我犯过的错误你不要再犯!
奉劝那些刚参加工作的学弟学妹们:要想学好并发编程,这些并发容器的坑是你必须要注意的!!(建议收藏)