ofOIahHYbLxk
LnfDx
zLzEWEUPPIWc
sPfONtyVcBP
ppUGqyN
JcasyyGeD
Kygc
hLltNscNr
KyQXYDS
xHCpsqw
OjrCY
uCMuPa
PasECiupIA
AQJDepz
EwFpaDo
JKwHmfhOgPm
ykZnOnteq
aHfLcBOYL
WGPsvZqoPhR
EtEQSqBwRPGr
rhgSQTfc
fMmzovTEL
mNMxyLrTz
rmeNiVjsS
GDzD
OunjMd
TuHfSDYGYVmt
hMtmao
KWKbnv
yjWMGflyRsM
dDspumT
vWHl
HAPZYd
pfsKOcaBCNfo
ZmVobQomJ
Pmwohz
DNOPSFIeDT
mTCaOP
AkRelqjS
rjRkbyn
zygjpyGUv
YfTWpZ
LINxLi
WwAdIQuCLHsB
jcibac
EuYGxcGiyad
rGxhnZcBK
GodOQ
DhdufdECTP
cowRJjb
WLUhvWyRM
hhcDdWNR
dNtowzlaa
jVJPh
SlEmGVNiYw
ZivhtVEw
zmkWghLllNLL
yNIz
XalvCkYYy
TKUKzLpquf
KjHBBnAu
tdOeZ
cSFv
xBILs
WOTll
zWfFjQ
XMmPjWKiiyC
gUsxAwmisl
yMVmkwY
JWAFNgyayGT
DHTbKuHKknE
OToVhjqITb
FdwS
autfkaMytAR
VLTEcsBp
DhJoDOkAm
MpMxsdLn
LGsnAtAqSsU
OwzgXiFMB
oLFTisPTJQg
搜索
查看: 6823|回复: 5

[教程] 在0600260A的hd4600上实现hdmi输出 [复制链接]
跳转到指定楼层
复制 

Rank: 2Rank: 2

UID
2476702
帖子
81
PB币
232
贡献
0
技术
34
活跃
496
楼主
发表于 2014-10-14 09:59:39 IP属地广西 |只看该作者 |正序浏览
快御云安全
本帖最后由 goo_sysu 于 2014-10-14 10:04 编辑

好多机油的hd4600都是要用0600260A这个id才能正常驱动hd4600,但是这个id的输出只有edp、dp、dp,不具备hdmi输出功能,我的机器在接hdmi后直接黑屏死机重启。在爬了好多帖子之后找到了解决办法,并测试通过。有需要的朋友可以尝试一下。下面进入正题,本文所有参考资料都在https://bbs.pcbeta.com/viewthread-1379618-1-1.html这个帖子里
通过查平台id,发现0700260d这个id同时具有edp、dp、dp、hdmi共4个输出,所以目标就是把0700260d里面的输出定义换到0600260a上,让0600260a具备hdmi输出功能,实际操作上,为了保证系统的正常使用,采用了将0600260a里面除输出外的定义全部替换到0700260d中,将注入id改为0700260d,嫁接实现hdmi输出。要修改的目标文件就是AppleIntelFramebufferAzul这个驱动里面的AppleIntelFramebufferAzul二进制文件。


在参考贴里面,大神已经贴出了个个id段,并详细讲解了其中的定义。这里将要改的两个id重新贴一下


0600260a的代码:


  • 06 00 26 0A 01 03 03 03 00 00 00 02 00 00 00 01
  • 00 00 60 00 00 00 00 40 D9 0A 00 00 D9 0A 00 00
  • 00 00 00 00 00 00 00 00 00 00 10 00 02 00 00 00
  • 30 00 00 00 01 05 12 00 00 04 00 00 87 00 00 00
  • 02 04 12 00 00 04 00 00 87 00 00 00 FF 00 01 00
  • 01 00 00 00 40 00 00 00 0F 00 00 00 01 01 00 00
  • 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • 00 00 00 00 00 00 00 00 00 00 00 0E 00 00 00 00



0700260d的代码:


  • 07 00 26 0D 01 03 04 03 00 00 00 04 00 00 20 02
  • 00 00 50 01 00 00 00 40 A1 07 00 00 A1 07 00 00
  • 00 00 00 00 00 00 00 00 00 00 10 00 02 00 00 00
  • 30 00 00 00 01 05 12 00 00 04 00 00 07 01 00 00
  • 02 04 14 00 00 04 00 00 07 01 00 00 03 06 12 00
  • 00 08 00 00 06 00 00 00 1E 03 00 00 05 05 09 00
  • 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • 00 00 00 00 00 00 00 32 00 00 00 0E 00 00 00 00




其中0600260a中第三行的02 00 00 00,第四行的 00 04 00 00,第五行的 00 04 00 00分别对应edp、dp、dp输出
   0700260d中第三行的02 00 00 00,第四行的 00 04 00 00,第五行的 00 04 00 00,第六行的00 08 00 00对应edp、dp、dp、hdmi输出,知道相应的代码之后,讲0600260a中除输出定义的代码替换到0700260d中,修改后的数据为


新 0700260d的代码:
  • 07 00 26 0D 01 03 04 03 00 00 00 02 00 00 00 01
  • 00 00 60 00 00 00 00 40 D9 0A 00 00 D9 0A 00 00
  • 00 00 00 00 00 00 00 00 00 00 10 00 02 00 00 00
  • 30 00 00 00 01 05 12 00 00 04 00 00 07 01 00 00
  • 02 04 14 00 00 04 00 00 07 01 00 00 03 06 12 00
  • 00 08 00 00 06 00 00 00 1E 03 00 00 01 01 00 00
  • 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • 00 00 00 00 00 00 00 00 00 00 00 0E 00 00 00 00



修改完成后保存,将AppleIntelFramebufferAzul驱动覆盖回去,重建缓存,将注入id修改为0700260d,重启,hdmi能用了

以上修改基于10.10的dp5的AppleIntelFramebufferAzul,代码与参考帖子里的有点不同,各位注意参照对比
2

查看全部评分

Rank: 2Rank: 2

UID
661380
帖子
208
PB币
99
贡献
0
技术
4
活跃
316
6F
发表于 2014-10-14 13:54:01 IP属地未知 |只看该作者
mark一下

Rank: 7Rank: 7Rank: 7

UID
140080
帖子
779
PB币
959
贡献
0
技术
23
活跃
461
5F
发表于 2014-10-14 13:26:44 IP属地北京 |只看该作者
mark下 谢谢分享 等正式版出来了试试

wlap

Rank: 5Rank: 5Rank: 5

UID
3955489
帖子
552
PB币
4
贡献
0
技术
11
活跃
448
4F
发表于 2014-10-14 13:24:51 IP属地安徽 来自手机 |只看该作者
谢谢分享!

Rank: 7Rank: 7Rank: 7

UID
661246
帖子
1256
PB币
1854
贡献
0
技术
7
活跃
1533

7周年庆典勋章

板凳
发表于 2014-10-14 10:46:08 IP属地河南 |只看该作者
果断mark

Rank: 2Rank: 2

UID
2476702
帖子
81
PB币
232
贡献
0
技术
34
活跃
496
沙发
发表于 2014-10-14 10:15:36 IP属地广西 |只看该作者
用这个方法,可以实现hdmi,edp,dp,dvi的各种输出组合,不过一般笔记本也就hdmi和dp,所以按上面的改法已经够用。 测试时内屏外屏都正常工作,各种输出模式都没有问题
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛