clover显卡注入功能详细讲解

更新时间:2023-07-08 14:20:40 阅读: 评论:0

clover显卡注⼊功能详细讲解
13 March 2014GraphicsInjector功能源于变⾊龙,不过⽐变⾊龙更加灵活,定制性更加强⼤。Intel的显卡 GMA950, X3100,
HD300, HD4000被证实可以很好的⼯作。你仅仅只要在config.plist打开显卡侦测功能,特别是对于N卡。 在新版中显
卡参数分开:intel、ati、nv区分开来。
<key>Inject</key>
<dict>
<key>ATI</key>
<fal/>
<key>Intel</key>
<fal/>
<key>NVidia</key>
<true/>
</dict>
但是要注意⼀点,有些笔记本(⽐如我的(Ermac) Dell Inspiron 1525)进⼊就是⿊屏。这时你可以⽤睡眠的⼩窍门(意思是说睡以后重新唤醒就不会⿊屏??)或者在dsdt中删除Device(CRT) 装置。在现在的clover版本中,你可以使⽤ DsdtFixMask值修复,其值
是 0x0100即Display Fix, N卡:这是被⼴泛⽀持的显卡,其数据库由ErmaC不断更新。这是在config.plist中参数:
<key>Graphics</key>
<dict>
<key>GraphicsInjector</key>
<string>Yes</string>
<key>LoadVBios</key>
<string>No</string>
<key>VideoPorts</key>
<string>3</string>
<key>NVCAP</key>
<string>04000000000003000C0000000000000700000000</string>
<key>display-cfg</key>
<string>03010300FFFF0001</string>
</dict>
其中VideoPort为你的显卡接⼝数,nvcap值是你⾃⼰显卡的nvcap值,display-cfg⽆关紧要,默认就是这个值。 ⼀般N卡只需打开显卡注⼊功能即可即:
<key>NVidia</key>
<true/>
其他接⼝数,显卡内存什么的全部不需要. 其会⾃动侦测,并采⽤默认的nvcap和其他值,clover现在⽤的默认nvcap值就是上⾯这组:04000000000003000C0000000000000700000000
这个你可以在clover源码中找到:rEFI_UEFI—》》Platform—》NVIDIA.C中。 遇到⿊屏或⾃动重启才启⽤定制nvcap值,nvcap值可由idsdt+显卡rom,勾选⽣成显卡驱动点击开始⽣成,在运⾏信息中可以看到。Nvmaker这个软件有些机⼦⽆法运⾏。当然并不是⾮要⾃⼰获取⾃⼰显卡的nvcap值。在下表的值⼤家都可以试试。
要多屏输出可能要修改nvcap值,关于nvcap值的定义不再此累述,因为我也不清楚。更多的认为03(⼗六进制数0x03)和0C这两个位置的所在的数字在取作⽤,03是主屏,0c是扩展屏,0x03=0011,1就是打开接⼝的意思.为了不重复在主屏和扩展屏中同时打开某接⼝,可以使03所在位数值和0c数字所在位置数值加起来刚好等于F(⼗六进制)。 以下常⽤的nvcap值组合:
找到正确的nvcap值后可以把其值写⼊源码,⾃⼰编译⾃⼰的clover:N卡信息在:rEFI_UEFI—》》Platform—》》NVIDIA.C中。 当然不要那么费事,直接clover config中注⼊nvcap值即可。
关于ATI/AMD显卡
这⾥要做个特别的讨论。对以原⽣⽀持的5xxx and 6xxxA卡,在不开启显卡注⼊功能的情况下⽤共同的ATIRadeonFramebuffer可进⼊桌⾯并且opengl可⽤但并不理想,如打开DVDPlayer它会崩溃。
<key>Graphics</key>
<dict>
<key>GraphicsInjector</key>
<string>Yes</string>
<key>FBName</key>
<string>Ipomoea</string>
<key>LoadVBios</key>
<string>No</string>
<key>VideoPorts</key>
<string>3</string>
</dict>
接⼝数为三,使⽤的ati config值为Ipomoea,并修正原始的接⼝参数:
<key>KernelAndKextPatches</key>
<dict>
<key>KernelCpu</key>
<string>No</string>
<key>ATIConnectorsController</key>
<string>6000</string>
<key>ATIConnectorsData</key>
<string>000400000403000000010000120401050008000004020000000100001102040310000000100000000001000000000002</string>
侧旋球
<key>ATIConnectorsPatch</key>
<string>040000000403000000010000100001061000000010000000000100000000000100080000040200000001000012040403</string></dict>
ATIConnectorsData为原始的接⼝参数,下⽂会介绍如何获取。 ATIConnectorsPatch为修正的接⼝参数,同样下⽂会叙述如何修改。对于移动版显卡,还得设置⼀个值:
<key>LoadVBios</key>
<string>Yes</string>
具体在config中的设置请看config-sample.plist⽂件
关于intel显卡
对于HD4000,显卡注⼊打开,然后注⼊合适的ig-platform-id以下是可选的值:对于笔记本
ig-platform-id: 01660000
ig-platform-id: 01660001
ig-platform-id: 01660002
ig-platform-id: 01660003关于水的诗词
ig-platform-id: 01660004
g-platform-id: 01660008
ig-platform-id: 01660009
ig-platform-id: 0166000A
ig-platform-id: 0166000B
台式:
ig-platform-id: 01620005
ig-platform-id: 01620006
ig-platform-id: 01620007
⼀个个试,找到⾃⼰合适的。笔记本常⽤的4,a。 同时为避免因AppleIntelSNBGraphicsFB.kext使得
AppleIntelFramebufferCapri.kext加载出错(五国),要注⼊IMEI:
0x1e3a8086
即在fixes dsdt的new way勾选addIMEI。同时FAKEI的IMEI值填⼊0x1e3a8086。 同时fixes dsdt中勾选FIX INTEL GFX 和FIX
DISPlay,当然addDTGP是必须的。同时注⼊EDID开启。 如⿊屏 、重影、双分屏、花屏换ig-platform-id. 在安装的时候可以填写FAKEID的
intel GFX的值由g-platform-id替代,可以跳过intel 显卡。但要驱动intel 显卡此项只能填 HD4000: 0x01668086(笔记
本)0x01628086(台式)。HD2500是0x015280860x01568086 或不填,⽤系统⾃动侦测的。
EDID注⼊
在某些情况下你需要注⼊EDID,如某些sony本本nid为07,和笔记本内屏⿊屏的情况。你也可以⾃⼰定制EDID.
<key>InjectEDID</key>
<string>Yes</string>
你可以注⼊显⽰器官⽅的edid
<key>CustomEDID</key>
<data>AP///wAyDADfAAAAAAASAQOAIRV4CunVmVlTjigmUFQAAAABAQEBAQEBAQEBAQEBAQEB3iGgcFCEHzAgIFYAS88QAAAY3iGgcFCEHzAgIFYAS88QAA
<key>DualLink</key>
<string>1</string>
有些卡必须设置为0,如ATI HD1600,否则你将看到四个桌⾯。
ATI 显卡接⼝参数修正
⾸先,感谢bcc9提供⽅法,pcj实现这个path,dmazar使之⼯作。
MD5:3052fa7872f93a826f9e8c0867309816
对于10.8.3这个可能⽆法获取信息,试试新版:
MD5:c928fc9f01ce99c000ae54e130a2e5ad
MD5:973e0e185********a3c9457ff84fb0d
MD5:c70c2bcc48cee7f9198ba4a1f8421afe
2.在win下查看你的显卡id(设备管理,属性)或⽤system info查看。 我的DeviceID= 0x6758,这是6000系列的卡, 你的是什么系列
的?⽪卡丘的帖⼦有收集请看这:
<key>IOPCIMatch</key>
<string>0x68981002 0x68991002 0x68E01002 0x68E11002 0x68D81002 0x68C010020x68C11002 0x68D910020x68B21002 0x68B810020x68B01002 0x68B11 3.⽤ati_personality.pl或取原⽣⽀持显卡接⼝的参数信息(此步可省去直接附上:ATIFramebuffer原版参数
MD5:1e84c29b7d7723890083992dfd7dca63
10.8.3下的FB参数由xhcnb提供:10.8.3 FrameBuffer
MD5:3b8c075825d541a20f4104af5d3e5066
具体⽤法如下: 假设你把ati-personality.pl放在桌⾯,确定终端已经⽤cd命令切换⼯作⽬录到桌⾯,则运⾏如下命令:
./ati-personality.pl ATI5000Controller.kext
这个命令获取原⽣⽀持的5系列的显卡接⼝参数,请确定S/L/E下有ATI5000Controller.kext这个kext 这边已经搜集好啦5系列和6系列的接⼝参数(ATIFramebuffer原版参数上⽂已给)以上命令可免:
Kext /System/Library/Extensions//ATI5000Controller.kext/Contents/MacOS/AMD5000Controller
Personality: Douc
ConnectorInfo count in decimal: 2
Disk offt in decimal 165856
0000000 02 00 00 00 00 05 00 00 09 03 00 00 21 03 02 02
0000010 00 04 00 00 04 02 00 00 00 03 00 00 11 02 01 01
0000020
{0x68B1,0x00000000,CHIP_FAMILY_JUNIPER,"ATI Radeon HD 5770Series",kHoolock}
那么其ati config值就是Hoolock(注意去掉前⾯的字母k) so,你也可以采⽤变⾊龙推荐的ati config值,但,凡是没有绝对…… 现在我已 HD6670为例,其DevID=0x6758,采⽤aticonfig值为Ipomoea 其原始接⼝信息(搜索上⽂所给的ATIFramebuffer原版参数.rtf⽂件):
金色童年Personality: Ipomoea
ConnectorInfo count in decimal: 3
Disk offt in decimal 180112
0000000 00 04 00 00 04 03 00 00 00 01 00 00 12 04 01 05
0000010 00 08 00 00 04 02 00 00 00 01 00 00 11 02 04 03
0000020 10 00 00 00 10 00 00 00 00 01 00 00 00 00 00 02
其中
0000000 00 04 00 00 04 03 00 00 00 01 00 00 12 04 01 05
0000010 00 08 00 00 04 02 00 00 00 01 00 00 11 02 04 03
0000020 10 00 00 00 10 00 00 00 00 01 00 00 00 00 00 02
这⼀系列数⼦就是我们要更改的数据,即:
冬至节的由来
<key>ATIConnectorsData</key>
<string>*****</string>
的值 那么如何修正这组数据呢? 4.运⾏radeon_bios_decoder获取⾃⼰的显卡信息 ⾸先你得获取⾃⼰的显卡bios(显卡rom),在win下你可以⽤像GPU-Z,everest等如果你已经安装啦clover,clover也可提取
启动clover后在引导界⾯(选择启动分区界⾯)按F6后进⼊mac后你将在/EFI/misc/c0000.bin找到你的显卡rom⽂件,前提是你的EFI分区得是fat32格式。
现在假设你获取到显卡rom(命名为c0000.bin)并和radeon_bios_decoder都放在同⼀个⽂件夹,终端已经⽤cd 命令切换到该⽂件夹:
iMac:test slice$ ./radeon_bios_decode c0000.bin
ATOM BIOS Rom:
SubsystemVendorID: 0x1458 SubsystemID: 0x2557
IOBaAddress: 0xe000
Filename: R667D32I.F1
BIOS Bootup Message:
GV-R667D3-2GI/F1
PCI ID: 1002:6758
Connector at index 0
Type [@offt 44282]: HDMI-A (11)
Encoder [@offt 44286]: INTERNAL_UNIPHY2 (0x21)
i2cid [@offt 44356]: 0x92, OSX nid: 0x3
Connector at index 1
Type [@offt 44292]: DVI-D (3)
Encoder [@offt 44296]: INTERNAL_UNIPHY (0x1e)
i2cid [@offt 44383]: 0x95, OSX nid: 0x6
Connector at index 2
Type [@offt 44302]: VGA (1)
Encoder [@offt 44306]: INTERNAL_KLDSCP_DAC1 (0x15)
i2cid [@offt 44410]: 0x90, OSX nid: 0x1
iMac:test slice$
以上信息我们只需要每个接⼝的nid值:
好事多磨查找英语
DVI-D: 06
VGA: 01
HDMI: 03
以上我们知道有3个接⼝,DVI-D,VGA, HDMI,⽽Ipomoea原始接⼝信息如下:
0000000 00 04 00 00 04 03 00 00 00 01 00 00 12 04 01 05
0000010 00 08 00 00 04 02 00 00 00 01 00 00 11 02 04 03
0000020 10 00 00 00 10 00 00 00 00 01 00 00 00 00 00 02
这组数据中,绿⾊的就是描述接⼝类型的,红⾊部分就是nid值. 其中我们已经了解到不同接⼝对应的值:
0004- DP
0008 - HDMI
1000 - VGA
0400 - DVI-D
0200 - LCD - for notebooks
笔记本内屏也有写成LVDS的 ⽽由上可知该显卡只有三个接⼝DVI-D,VGA,HDMI,分别对应的描述接⼝类型的值为:
0400,1000,0008;对应的nid值分别为:06,01,03
所以0004应改为0400,对应的nid值也得修改。
修改后:
0000000 04 00 00 00 04 03 00 00 00 01 00 00 12 04 01 06 DVI-D
0000010 00 08 00 00 04 02 00 00 00 01 00 00 11 02 04 03 HDMI
0000020 10 00 00 00 10 00 00 00 00 01 00 00 00 00 00 01 VGA肌酐低
我也可以交换第三和第⼆⾏:
0000000 04  0000  00  04  03  00  00  00  01  00  00  12  04  010******** 10  00 00  00  10  00  00  00  00  01  00  00  00  00  00 010000020 00  08 00供暖标准

本文发布于:2023-07-08 14:20:40,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/1085624.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:显卡   参数   功能   打开   数字
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图