pbXmn
CgQEjUijyV
yVRvaflWxJg
XzlgC
ZMOl
wOEzLneN
PCQLY
bHORdGySZbI
CsWQFalsxf
GGeRZHwi
QJuMOVrZtDO
POFBAdMbQw
ZeqczxCo
chihs
mxgJwUQTLir
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

CSGm
AWYcfMxNc
GzflJStNgxV
SGifXw
vcvcggdDgAae
FwniVYLWK
mhMJueChK
xgpxTFx
Qnihm
BKcpB
aAmLJyw
fVto
CUwguhAJdW
pjlIHxfRJbO
ojTUvV
NldqFxKJ
fKKzXJbkaTm
vLCRQfhU
pAXsXr
dPfi
RJXlR
KKPq
nTNCk
LILwI
MOrP
KWfpK
AqoXtlMHC
XcncDtEQFRDC
oyjSwZubKt
oHNof
dEXwMzxN
nPndcchjCZFw
uFAtJhYF
wjKUxA
xwWAcYkQ
NqlPJ
pBvEFJg
keejWVJgIH
MeXXdT
OusiNZ
xhysrPkJ
HMOknIqoar
WwYGI
AHUs
cGpd
AXUQkUqfNVl
CnKBiQqN
vuZcQrBH
aGJYDOOxUsb
bXxeRP
chPOgPiA
搜索
查看: 8154|回复: 28

[分享] MLDP3声卡驱动的解决方法 [复制链接]
跳转到指定楼层
复制 

Rank: 5Rank: 5Rank: 5

UID
215483
帖子
591
PB币
3475
贡献
0
技术
48
活跃
118
楼主
发表于 2012-4-30 14:47:45 IP属地浙江 |只看该作者 |倒序浏览
快御云安全
问题的关键不在于zlib的压缩和解压缩,而在于layoutID的选择。DP3对非苹果的layoutID一律无视。



今天装了DP3作了下试验。
像我的889声卡,原来的layoutID是889;我改成原生AppleHDA已有的layout88,  问题就解决了。
记住:跟声卡相关的地方都要更改,包括dsdt。

Untitled.png


补充内容 (2012-4-30 20:25):
因为要外出,没写全。具体方法见7楼。
2

查看全部评分

111111

Rank: 7Rank: 7Rank: 7

UID
47215
帖子
1363
PB币
4223
贡献
0
技术
284
活跃
1244
沙发
发表于 2012-4-30 15:10:16 IP属地辽宁 |只看该作者
你的意思是说把 dsdt里面的ID也要改成 88的么?

YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1814
贡献
0
技术
57
活跃
1333

7周年庆典勋章 8周年庆典勋章

板凳
发表于 2012-4-30 15:50:04 IP属地广东 |只看该作者
你的意思是说,睡不选择一个模块,把自己的声卡的东西复制过去,然后ID 不动,修改DSDT 上的ID ?

Rank: 9

UID
852420
帖子
4044
PB币
1577
贡献
0
技术
15
活跃
443
4F
发表于 2012-4-30 17:39:28 IP属地云南 |只看该作者
还是没看懂,什么与声卡有关的都要改,哪些地方?dsdt没得说,其它的改哪里,怎么改?

小学生

Rank: 11Rank: 11Rank: 11

UID
71938
帖子
11521
PB币
24340
贡献
0
技术
60
活跃
2037

8周年庆典勋章

5F
发表于 2012-4-30 18:07:12 IP属地重庆 |只看该作者
没看得懂 不知道怎么改

Rank: 2Rank: 2

UID
2323581
帖子
291
PB币
192
贡献
0
技术
0
活跃
811

7周年庆典勋章

6F
发表于 2012-4-30 18:10:41 IP属地香港 |只看该作者
你是說將dsdt的聲卡layout改為蘋果原有的layout id?

Rank: 5Rank: 5Rank: 5

UID
215483
帖子
591
PB币
3475
贡献
0
技术
48
活跃
118
7F
发表于 2012-4-30 20:01:49 IP属地福建 |只看该作者

可能说得过于简单了。抱歉。

889为例,以前一般是修改AppleHDA里面Resources里的Platforms.xml,并且添加一个原生AppleHDA里所没有的Layout889.xml。

Layout889.xml里面有这么一段键值:

  1. <key>LayoutID</key>
  2. <integer>889</integer>
复制代码
现在,由于DP3的AppleHDA不认非苹果的LayoutID,所以声卡驱动不起来。把889改成AppleHDA原有的LayoutID,比如88, 这样就可以骗过AppleHDA,把声卡驱动起来。具体作法:把原生Layout88.xml.zlib删掉,把Layout889.xml改名为Layout88.xml,再把改名后的Layout88.xml里面的LayoutID的键值改为88,然后把layout88.xml压缩成layout88.xml.zlib。在dsdt里面,有一段layout-id的代码,也要作相应的修改。
  1.             Device (HDEF)
  2.             {
  3.                 Name (_ADR, 0x001B0000)
  4.                 Method (_PRW, 0, NotSerialized)
  5.                 {
  6.                     Return (Package (0x02)
  7.                     {
  8.                         0x0D,
  9.                         0x05
  10.                     })
  11.                 }

  12.                 Method (_DSM, 4, NotSerialized)
  13.                 {
  14.                     Store (Package (0x04)
  15.                         {
  16.                             "layout-id",
  17.                             /**** Is ResourceTemplate, but EndTag not at buffer end ****/ Buffer (0x04)
  18.                             {
  19.                                 0x58, 0x00, 0x00, 0x00
  20.                             },

  21.                             "PinConfigurations",
  22.                             Buffer (Zero) {}
  23.                         }, Local0)
  24.                     DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
  25.                     Return (Local0)
  26.                 }
  27.             }
复制代码
再就是仿冒驱动里也有一段layoutID的代码,也改成88
  1.   <key>HDA Hardware Config Resource</key>
  2.                 <dict>
  3.                         <key>CFBundleIdentifier</key>
  4.                         <string>com.apple.driver.AppleHDAHardwareConfigDriver</string>
  5.                         <key>HDAConfigDefault</key>
  6.                         <array>
  7.                                 <dict>
  8.                                         <key>CodecID</key>
  9.                                         <integer>283904137</integer>
  10.                                         <key>ConfigData</key>
  11.                                         <data>
  12.                                         AYccQAGHHZABhx6hAYcfkAGXHFABlx2QAZce
  13.                                         oQGXHwIBpxxgAacdMAGnHoEBpx8BAbcccAG3
  14.                                         HUABtx4hAbcfAgFHHBABRx1AAUceEQFHHwEB
  15.                                         VxwgAVcdEAFXHgEBVx8BAWccMAFnHWABZx4B
  16.                                         AWcfAQF3HIABdx0gAXceAQF3HwEBFxyQARcd
  17.                                         YQEXHksBFx8BAeccoAHnHQEB5x5WAecfGA==
  18.                                         </data>
  19.                                         <key>FuncGroup</key>
  20.                                         <integer>1</integer>
  21.                                         <key>LayoutID</key>
  22.                                         <integer>88</integer>
  23.                                 </dict>
  24.                         </array>
  25.                         <key>IOClass</key>
  26.                         <string>AppleHDAHardwareConfigDriver</string>
  27.                         <key>IOMatchCategory</key>
  28.                         <string>AppleHDAHardwareConfigDriver</string>
  29.                         <key>IOProviderClass</key>
  30.                         <string>AppleHDAHardwareConfigDriverLoader</string>
  31.                         <key>PostConstructionInitialization</key>
  32.                         <array>
  33.                                 <dict>
  34.                                         <key>CodecID</key>
  35.                                         <integer>283904137</integer>
  36.                                         <key>Layouts</key>
  37.                                         <array>
  38.                                                 <integer>36</integer>
  39.                                                 <integer>38</integer>
  40.                                                 <integer>52</integer>
  41.                                                 <integer>53</integer>
  42.                                         </array>
  43.                                         <key>widgets</key>
  44.                                         <array>
  45.                                                 <dict>
  46.                                                         <key>MicAttributes</key>
  47.                                                         <integer>28</integer>
  48.                                                         <key>MicInfo</key>
  49.                                                         <string>Sampled on rising edge</string>
  50.                                                         <key>NodeID</key>
  51.                                                         <integer>39</integer>
  52.                                                         <key>PinConfigDefault</key>
  53.                                                         <integer>2426405136</integer>
  54.                                                 </dict>
  55.                                         </array>
  56.                                 </dict>
  57.                                 <dict>
  58.                                         <key>Codec</key>
  59.                                         <string>Cirrus Logic CS4206</string>
  60.                                         <key>CodecID</key>
  61.                                         <integer>269697542</integer>
  62.                                         <key>Layouts</key>
  63.                                         <array>
  64.                                                 <integer>0</integer>
  65.                                         </array>
  66.                                         <key>widgets</key>
  67.                                         <array>
  68.                                                 <dict>
  69.                                                         <key>NodeID</key>
  70.                                                         <integer>22</integer>
  71.                                                         <key>PinConfigDefault</key>
  72.                                                         <integer>1073742064</integer>
  73.                                                 </dict>
  74.                                         </array>
  75.                                 </dict>
  76.                                 <dict>
  77.                                         <key>Codec</key>
  78.                                         <string>Wolfson WM8800</string>
  79.                                         <key>CodecID</key>
  80.                                         <integer>451708928</integer>
  81.                                         <key>Layouts</key>
  82.                                         <array>
  83.                                                 <integer>67</integer>
  84.                                                 <integer>73</integer>
  85.                                         </array>
  86.                                         <key>widgets</key>
  87.                                         <array>
  88.                                                 <dict>
  89.                                                         <key>MicInfo</key>
  90.                                                         <string>WM8800 External Microphone Virtual Pin Complex</string>
  91.                                                         <key>NodeID</key>
  92.                                                         <integer>24</integer>
  93.                                                         <key>PinConfigDefault</key>
  94.                                                         <integer>28020848</integer>
  95.                                                 </dict>
  96.                                         </array>
  97.                                 </dict>
  98.                         </array>
  99.                 </dict>
复制代码
Platforms.xml里面没有LayoutID的代码,所以直接用以前修改好的压缩替换就行了。最后,就是按原来的方法,patch在AppleHDA.kext/contents/macos/里面的AppleHDA





Rank: 5Rank: 5Rank: 5

UID
2575056
帖子
710
PB币
493
贡献
0
技术
5
活跃
1065
8F
发表于 2012-4-30 20:46:44 IP属地天津 来自手机 |只看该作者
不太懂,万能的需要改吗?

Rank: 5Rank: 5Rank: 5

UID
2575056
帖子
710
PB币
493
贡献
0
技术
5
活跃
1065
9F
发表于 2012-4-30 20:48:02 IP属地天津 来自手机 |只看该作者
不懂,万能的需要改吗?

YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1814
贡献
0
技术
57
活跃
1333

7周年庆典勋章 8周年庆典勋章

10F
发表于 2012-4-30 21:00:20 IP属地广东 |只看该作者
Farx 发表于 2012-4-30 20:01
可能说得过于简单了。抱歉。以889为例,以前一般是修改AppleHDA里面Resources里的Platforms.xml,并且添加一 ...

也就是说,把原来的ID 889 全部改88 ?

Rank: 5Rank: 5Rank: 5

UID
215483
帖子
591
PB币
3475
贡献
0
技术
48
活跃
118
11F
发表于 2012-4-30 21:07:39 IP属地浙江 |只看该作者
fox0491 发表于 2012-4-30 21:00
也就是说,把原来的ID 889 全部改88 ?

当然,你也可以改成其他的layoutID,比如99
但是,只改LayoutID,其他不要改,比如PathMapID就不需改。

YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1814
贡献
0
技术
57
活跃
1333

7周年庆典勋章 8周年庆典勋章

12F
发表于 2012-4-30 21:15:00 IP属地广东 |只看该作者
Farx 发表于 2012-4-30 21:07
当然,你也可以改成其他的layoutID,比如99
但是,只改LayoutID,其他不要改,比如PathMapID就不需改。

难道10.8 的声卡都不需要仿冒了??

点评

Farx  当然需要。  发表于 2012-4-30 21:23 IP属地浙江

Gooner

Rank: 7Rank: 7Rank: 7

UID
600151
帖子
1375
PB币
1707
贡献
0
技术
9
活跃
1227
13F
发表于 2012-4-30 21:19:40 IP属地广西 |只看该作者
原来是这样,学习了..

Rank: 2Rank: 2

UID
1667959
帖子
339
PB币
0
贡献
0
技术
1
活跃
55
14F
发表于 2012-4-30 21:50:28 IP属地云南 |只看该作者
楼主威武啊

Rank: 9

UID
204600
帖子
1354
PB币
15002
贡献
1
技术
26
活跃
185

7周年庆典勋章

15F
发表于 2012-5-1 14:36:07 IP属地辽宁 |只看该作者
终于找到原因了,赞一个!
另外:zlib文件的压缩和解压缩,除了那个在线的网站,还有什么工具,介绍一个。

点评

Farx  见这个https://bbs.pcbeta.com/viewthread-1023341-1-1.html 我也是用它。  发表于 2012-5-1 17:59 IP属地广东

Rank: 7Rank: 7Rank: 7

UID
164623
帖子
1337
PB币
2455
贡献
0
技术
40
活跃
1452
16F
发表于 2012-5-2 08:18:56 IP属地福建 |只看该作者
能否发你的文件上来,学习中。。。

♛Hackintosh拾荒者♛

Rank: 7Rank: 7Rank: 7

UID
281520
帖子
2116
PB币
13832
贡献
0
技术
4
活跃
875

7周年庆典勋章

17F
发表于 2012-5-4 21:40:44 IP属地湖北 |只看该作者
楼主很厉害,这都被你发现了,谢谢分享!

Rank: 7Rank: 7Rank: 7

UID
2266824
帖子
1826
PB币
508
贡献
0
技术
27
活跃
671

7周年庆典勋章 8周年庆典勋章

18F
发表于 2012-5-4 22:40:00 IP属地广东 |只看该作者
为什么转换之后的文件是0字节的

YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1814
贡献
0
技术
57
活跃
1333

7周年庆典勋章 8周年庆典勋章

19F
发表于 2012-5-17 13:35:27 IP属地广东 |只看该作者
楼主,我按照你的方法不行啊,能帮忙一下不?

点评

Farx  怎么个不行法?声卡在10.7.4能用不?  发表于 2012-5-17 15:02 IP属地北京

YSKoo

Rank: 7Rank: 7Rank: 7

UID
1313498
帖子
1608
PB币
1814
贡献
0
技术
57
活跃
1333

7周年庆典勋章 8周年庆典勋章

20F
发表于 2012-5-17 15:40:47 IP属地广东 |只看该作者
fox0491 发表于 2012-5-16 21:35
楼主,我按照你的方法不行啊,能帮忙一下不?

可以,在1073  和1074  都是用原版的声卡仿冒,但是我今天进去山猫按楼主你的方法来修改声卡,只修改layout id ,结果不行,楼主帮帮忙!!

点评

Farx  你把你在10.7.4用的仿冒声卡驱动、dsdt,还有你在10.7.4正常使用的 layout888.xml,发到farx@me.com  发表于 2012-5-17 16:03 IP属地北京
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛