- 积分
- 170
- 最后登录
- 2021-10-8
- 精华
- 0
- 阅读权限
- 20
- 主题
- 57
- UID
- 4113735
- 帖子
- 425
- PB币
- 51
- 威望
- 0
- 贡献
- 0
- 技术
- 4
- 活跃
- 730
- UID
- 4113735
- 帖子
- 425
- PB币
- 51
- 贡献
- 0
- 技术
- 4
- 活跃
- 730
|
发表于 2016-4-6 14:23:09
IP属地美国
|显示全部楼层
本帖最后由 tanpengsccd 于 2016-4-9 02:15 编辑
概述:
此教程教程需要一定基础,不懂请善用论坛搜索。
方法1:dsdt注入相似白果相似LPC ID(推荐)
方法2:修改AppleLPC.kext驱动加入黑果主板LPC ID
以上2种都需要都需要知道自己的LPC的设备 id。
-----------------------
1.0 获取自己主板的LPC id(以我的ASUS P5Q 的原LPC id 3a16仿冒为3a18为例子)
在windows 系统 的设备管理球 获取LPC 设备ID 一般 4位 如“3a 16”,“8c50”等
在MAC系统里 使用IORegisryExplorer 搜索 LPC 也可以找到(前提是使用未修 改过的DSDT,或者没使用DSDT)
-------------------------
2.1 dsdt注入相似白果相似LPC ID(推荐)
2.1.1 选择需要的仿冒的LPC id
这一步需要先在/System/Library/Extensions/AppleLPC.kext/Contents/ 的Info.plist 找到原生支持的id,这里列举一下10.11.4原生支持的id
<dict>
<key>AppleLPC</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.apple.driver.AppleLPC</string>
<key>IOClass</key>
<string>AppleLPC</string>
<key>IONameMatch</key>
<array>
<string>pci8086,2811</string>
<string>pci8086,2815</string>
<string>pci8086,27b9</string>
<string>pci8086,27bd</string>
<string>pci8086,2670</string>
<string>pci8086,8119</string>
<string>pci8086,2916</string>
<string>pci8086,3a18</string>
<string>pci8086,3b00</string>
<string>pci8086,3b01</string>
<string>pci8086,3b02</string>
<string>pci8086,3b09</string>
<string>pci8086,1e44</string>
<string>pci10de,aac</string>
<string>pci10de,aae</string>
<string>pci10de,aaf</string>
<string>pci10de,d80</string>
<string>pci10de,d81</string>
<string>pci10de,d82</string>
<string>pci10de,d83</string>
</array>
<key>IOProbeScore</key>
<integer>1000</integer>
<key>IOProviderClass</key>
<string>IOPCIDevice</string>
<key>LCTL_Offset</key>
<integer>424</integer>
</dict>
我原LPC的id 为3a16 ,选择仿冒的id是列表中的 3a18 (红色标出),判断依据 是 id前三位 字母尽量相同
2.1.2 使用MaciASL 打开自己主板的无错DSDT,搜索 0x001F0000 ,
在 Name (_ADR, 0x001F0000) 的下一行插入 (注意要删除我的注释(红色),不然可能 编译出错)
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
Store (Package (0x06)
{
"device-id",
Buffer (0x04)
{
0x18, 0x3a, 0x00, 0x00 //若 id 是 3a 18 则该填18 3a
},
"name",
Buffer (0x0D)
{
“pci8086,3a18" //直接输入 3a18
},
"compatible",
Buffer (0x0D)
{
“pci8086,3a18" //直接输入 3a18
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
如:(已经插入好自己需要仿冒LPC id 3a18,红色部分)
……..
Device (SBRG)
{
Name (_ADR, 0x001F0000) // _ADR: Address
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
Store (Package (0x06)
{
"device-id",
Buffer (0x04)
{
0x18, 0x3a, 0x00, 0x00
},
"name",
Buffer (0x0D)
{
"pci8086,3a18"
},
"compatible",
Buffer (0x0D)
{
"pci8086,3a18"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
Device (IELK)
{
………..
关于id 倒序:
因为intel的X86 使用的是小端,而Mac 是大端,所以在Mac上就得转换一下,简单说上就是倒一下顺序。所以如果id 为 3a 18,则DSDT 上要注入的是 18 3a,(注意不是81 a3,因为16进制是2位 表示一个数字)
-------------------------------------
2.2:修改AppleLPC.kext驱动加入黑果主板LPC ID (不推荐,升级系统可能会失效)
/System/Library/Extensions/AppleLPC.kext/Contents/
在 上述的路径 中找到 Info.plist,添加 于自己相近的 LPC id
我原LPC的id 为3a16 ,找到最相近的id是列表中的 3a18 (红色标出),判断依据 是 id前三位 字母尽量相同。
在3a18 下一行加入 自己的 id 我的是3a16(绿色标注)
这里是10.11.4 的LPC id列表
<dict>
<key>AppleLPC</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.apple.driver.AppleLPC</string>
<key>IOClass</key>
<string>AppleLPC</string>
<key>IONameMatch</key>
<array>
<string>pci8086,2811</string>
<string>pci8086,2815</string>
<string>pci8086,27b9</string>
<string>pci8086,27bd</string>
<string>pci8086,2670</string>
<string>pci8086,8119</string>
<string>pci8086,2916</string>
<string>pci8086,3a18</string>
<string>pci8086,3a16</string>
<string>pci8086,3b00</string>
<string>pci8086,3b01</string>
<string>pci8086,3b02</string>
<string>pci8086,3b09</string>
<string>pci8086,1e44</string>
<string>pci10de,aac</string>
<string>pci10de,aae</string>
<string>pci10de,aaf</string>
<string>pci10de,d80</string>
<string>pci10de,d81</string>
<string>pci10de,d82</string>
<string>pci10de,d83</string>
</array>
<key>IOProbeScore</key>
<integer>1000</integer>
<key>IOProviderClass</key>
<string>IOPCIDevice</string>
<key>LCTL_Offset</key>
<integer>424</integer>
</dict>
使用 Kext Utility 修复权限缓存
3.0 重启
仿冒成功的标志
1是 节能器 出现 断电后自动重启 的选项。
2 IORegistryExplorer 搜索LPC 可以看到自己仿冒的 LPC id未成功的话是自己原LPC id
3 关于本机-系统报告-功能扩展-找到 AppleLPC 已载入 为 “是”
需要的软件 请自己搜索,本人另发的帖子大部分软件都有,请点击我的头像下的帖子后再选主题。
|
-
1
查看全部评分
-
|