mmccg 发表于 2020-7-18 05:04

最新关于10.15.5以上UHD 630 无DP接口的黑屏解决方案及hackintool打缓冲帧的正确方法

本帖最后由 mmccg 于 2020-7-18 13:05 编辑

前言
之前发过这样的帖子,
【UHD 630驱动回滚】祖传土方根治10.15.5正式版UHD630黑屏问题
https://bbs.pcbeta.com/viewthread-1859830-1-1.html
就是回滚到没有黑屏问题的驱动版本,但是这个方法始终治标不治本,更新系统版本后就得重新回滚驱动,而以后的big sur大版本更新也必然不能继续使用这种方法,再者DVI口再接上一个显示器后,HDMI口的显示器也会受到影响(表现为闪屏花屏,或者一直黑屏亮屏反复横跳),体验非常不好,之前只用单屏所以没发现有这个问题。所以还是必须找到一个使用原生驱动的方法。

方法就是使用跟3E9B0007相同平台ID(3E9B)的3E9B0000,这也是WEG原作者所建议的方法。(还有一点是机型我由mini8,1改成iMac19,1。至于mini8,1行不行,有待测试)


但据我当时的测试是同样黑屏或者直接重启,而那个帖子里也有网友提到是总线ID的问题(也得到了小兵的回复肯定),我更换了几乎所有可能的总线id组合,都会出现各种问题。肝了一个晚上我得出结论,3E9B0007默认的总线ID是可以用而且是唯一可以用的(我将HDMI口默认的04改成06,竟然识别到的显示器型号是之前DVI口接的显示器,HIDPI也不能选自定义的),换了其他的反而不行,不然10.15.4及之前的版本能用,为啥10.15.5之后就不行了呢。经过一晚上的排查,结合之前仿冒7代59120000的经验,得出的结论就是3E9B0007这个缓冲帧ID就是不行,问题就出在这个3E9B0007上。于是我将缓冲帧ID改成3E9B0000,接口参数照搬3E9B0007,重启成功点亮双屏(HDMI+DVI),回到了10.15.3的完美情况。


那为啥之前改3E9B0000不行呢,问题就出在hackintool这个工具打缓冲帧补丁的方法不对。下面我图文结合解释正确打缓冲帧的步骤(或者说使用跟缓冲帧ID默认接口参数不同的自定义接口参数打补丁的步骤,很绕口,换种说法就是,如果我要用3E9B0000这个不黑屏的ID,又要使用跟3E9B0007一样正确的接口参数应该怎样打补丁)


首先准备工作,备份现在正在用的config.plist文件,用clover configurator或者其他编辑器删除核显的全部设备项


然后打开hackintool,在【应用补丁】-【信息】选择3E9B0007这个id,以这个为模板进行自定义参数修改(如果直接用3E9B0000的话在接口部分修改的内容会比较多)



然后到【缓冲帧】选项卡修改参数,首先是将缓冲帧ID改为3E9B0000(系统就认这个ID),注意需要按住shift+鼠标左键点击才能修改。


然后这个是可选操作,自定义显存大小(这个操作跟后面【应用补丁】-勾选【显存2048m】这个操作一样,这里能自定义数值,最大是,的话就归零了)


这时可以先跳过【接口】,直接在【应用补丁】-【高级】选项卡里勾选需要的补丁,因为自定义完【接口】里的参数的话再勾选/取消这里的选项的话会改变在【缓冲帧】或【接口】里改的参数(这里的操作逻辑属实不够人性化),例如勾选[显存2048m]会改掉刚才改的4095M显存的设置,[将DP映射到HDMI]会将【接口】里的类型都改为HDMI,[修复热插拔重启]会将【接口】里的通道都改为18,这里先勾选一下也可以省掉在【接口】里手动输入参数的操作。
如图所示,必须要勾选的是[启动HDMI20(4K)]和[仿冒图形卡ID-3E9B],其他的可以按需勾选。(这里先不点生成补丁,我这个图是后面截的所以有补丁信息)


最后也就是最关键的一步就是自定义【接口】里的参数,这里的参数修改也是需要按住shift+鼠标单击才能修改。这里我其实并不需要修改什么参数了,因为10.15.4的时候用这个接口参数(3E9B0007)就是完美的了,(我当时是在【信息】里直接选择了3E9B0000这个ID的,需要手动把数值修改成跟3E9B0007一样,改动的地方就非常多)

关于下面那个框框里的接口也简单说一下,这个小兵博客里有解释过,我这里的实际情况就是
CON0=索引1-总线id 0x05-接口0x05(VGA接口,无效参数,忽略)
CON1=索引2-总线id 0x04-接口0x06(HDMI接口)
CON2=索引3-总线id 0x06-接口0x07(DVI接口)

注意这个接口ID跟总线ID不是一回事,接口ID是固定的无法修改,我这块主板就是第一个物理接口为0x05,第二个为0x06,第三个为0x07

最后就是这个帖子最最最最最最关键的一点!
切换到【应用补丁】-【通用】选项卡,取消勾选[自动侦测变化],这里就是是否正确注入接口信息成败的关键。
简单来说,这个选项的原意应该是剔除无用的代码,只注入需要修改的参数,但是实际使用中可能会造成各种问题。这里的”变化“指的是在【接口】里修改的参数相对于在一开始【信息】里选择的ID的”变化“,因为我的接口参数跟3E9B0007的几乎一样,也就是说hackintool不会生成跟3E9B0007默认接口参数相同的数据(例如con口顺序,索引ID和总线ID,这三个也是决定接口是否正确配置的最关键信息),而实际上的缓冲帧ID已经被我改为3E9B0000,这样注入信息到CONFIG里重启之后系统使用的还是是3E9B0000的默认接口参数(3E9B0000的索引是0、1、2、-F,3E9B0007的索引是1、2、3、-F),接口参数全部错位了,也就是说修改后参数根本没有生成也就没有写入到config(准确来说是由于con口数据对不上导致注入信息错乱)。
所以正确的操作就是取消勾选[自动侦测变化],将正确的接口参数完整地生成并注入config文件。这样才能同时使用3E9B0000这个缓冲帧id和正确的接口参数(3E9B0007)。两者生成的信息如图所示。而CON3部分由于是无用的接口所以可以删除掉。



此帖到此为止,欢迎勘误补充!




chenpengstar 发表于 2020-7-18 09:04

我现在用hackintool写入config能看到config文件变大了(说明应该是写入了数据),但是总clover configuration打开config文件时却看不到hackintool写入的数据,是什么原因呢?

Misuzu0723 发表于 2020-7-18 12:08

你这个补丁后睡眠唤醒正常吗?

Misuzu0723 发表于 2020-7-18 12:09

chenpengstar 发表于 2020-7-18 09:04 https://www.pcbeta.com/static/image/common/back.gif
我现在用hackintool写入config能看到config文件变大了(说明应该是写入了数据),但是总clover configurati ...

我前几天用hackintool,点引用补丁后,在下面的预览窗口里什么也没有出现,不知道怎么回事

Misuzu0723 发表于 2020-7-18 14:52

我用clover10.15.5之前一直都是唤醒后黑屏,但是系统是正常的,可以盲操,远程可以看见一切正常,一直不知道怎么解决,插拔也没用。
10.15.5之后启动后黑屏,需要插拔HDMI,添加igfxonln=1后不用插拔,但是唤醒后键盘灯亮,按几下就灭了,只能强关

lh503580622 发表于 2020-7-21 10:16

mark,空了试试

5wo丶 发表于 2020-7-21 20:48

学习一下,已经为630黑屏折腾好几天了

破碎永恒 发表于 2020-7-22 15:35

楼主,有dp的话 修复hdmi可以用这个缓冲帧吗

mmccg 发表于 2020-7-22 18:07

破碎永恒 发表于 2020-7-22 15:35 https://www.pcbeta.com/static/image/common/back.gif
楼主,有dp的话 修复hdmi可以用这个缓冲帧吗

可以!DP默认是没有问题的,如果HDMI有问题可以参考这个教程修改总线ID等参数,这本质上是一个hackintool的教程

641495664 发表于 2020-7-22 19:35

谢谢分享,{:5_262:}

qyga 发表于 2020-7-22 20:03

谢谢分享学习了

onlymechen 发表于 2020-7-22 22:50

收藏一下,明天试试, 一直停在10.15.4就是因为不敢升级。

641495664 发表于 2020-7-23 10:22

有好心人能麻烦提供一下10.15.6版本的原始文件么,之前覆盖没备份,不想重装,谢谢了

googlechorm 发表于 2020-7-31 15:42

不知这个笔记本的UHD630能应用不 谢谢!

破碎永恒 发表于 2020-8-6 19:47

成功按照楼主方法修复HDMI 感谢

破碎永恒 发表于 2020-8-6 20:56

哎。。又出现了新问题 现在睡眠之后 屏幕点不亮了

super29pcbeta 发表于 2020-8-6 22:21

这么详细的教程好。

破碎永恒 发表于 2020-8-7 08:58

破碎永恒 发表于 2020-8-6 20:56
哎。。又出现了新问题 现在睡眠之后 屏幕点不亮了

已经解决,谢谢楼主

boyzone8232 发表于 2020-8-7 12:50

支持楼主分享。。。前期遇到过类似的问题。。。
每个主板接口不同,缓冲帧定义不同。。。

mmccg 发表于 2020-8-7 21:56

boyzone8232 发表于 2020-8-7 12:50 https://www.pcbeta.com/static/image/common/back.gif
支持楼主分享。。。前期遇到过类似的问题。。。
每个主板接口不同,缓冲帧定义不同。。。

不同品牌主板可以参考hackintool里面的缓冲帧补丁的接口参数,这个东西解释起来很麻烦,所以没有提到
页: [1] 2 3
查看完整版本: 最新关于10.15.5以上UHD 630 无DP接口的黑屏解决方案及hackintool打缓冲帧的正确方法