[进阶教程]修改DVMT
在很多黑苹果的教程中,都会要求对bios中的dvmt pre-allocated选项进行修改,调整到至少64MB以上(mac机型就是这个设置),如果无法调整,则需要配合framebuffer-stolenmem:00003001的patch来"借用"显存,但会存在4K输出的问题。
但对于很多隐藏了dvmt pre-allocated选项的笔记本来说,只能通过UEFIShell的方式来改动。
部分笔记本,修改DVMT,可以使在macOS下面开hidpi画面不掉帧卡顿,并且实现外屏4K输出
视频教程
正式步骤
1.提取BIOS文件
你可以选择去你的电脑厂商的官网处下载BIOS文件,多为bin或者rom文件,如果后缀为exe,你则需要将里面的bios文件提取出来
如果说你不想去官网下载啊,或者说找不到,就可以看下面的BIOS提取教程
在Windows中提取主板BIOS
以管理员身份打开我分享的BIOS提取工具(文末分享),如下图
点击读取,然后它就会跑进度条,有时候它可能会处于假死状态,你只需要耐心等待即可
如下图,BIOS已经提取成功
点击确定
然后点击备份,将文件放到一个你便于修改和找到的地方,我就先放到桌面了,然后退出此软件
此时我们的BIOS就提取成功啦
2.将BIOS文件输出成efi文件
打开我分享的UEFITool(文末分享),如下图
将你刚才提取出来的BIOS文件直接拖到UEFITool窗口,如下图
使用快捷键 Ctrl + F 调用出搜索,选择Test,如下图
输入DVMT然后回车
然后出现与下图类似的内容
双击它,就会被定位到PE32 image开头的选项处,如下图
右键PE32 image开头的选项,选择Extract body,如下图
将提取出来的文件放到一个你便于修改和找到的地方,我就先放到桌面了,然后选择保存,再然后退出此软件即可
如下图,efi后缀文件已经成功导出
3.将efi文件输出成txt格式
打开我分享的IRFExtractor(文末分享),如下图
然后点击那两个。。如下图
选择刚才提取出来的efi文件,然后选择Extarct,将文件放到一个你便于修改和找到的地方,我就先放到桌面了,然后选择保存,再然后退出此软件即可
如下图,txt文件已经成功提取
4.寻找DVMT的数值
使用记事本(这个就不分享了哈,系统自带)打开输出的txt文件
如下图
使用快捷键 Ctrl + F 调用出搜索,搜索DVMT,点击查找下一个,如下图
此时你会发现,会搜索出两个DVMT,这是正常现象
假如说我想把DVMT修改成64MB,则应该输入setup_var 0x76D 0x2
0x76D和0x2的位置关系如下
此时你会发现,0x2的前面正是64MB,并且0x2在0x76D的下面
依次类推,如果我想把DVMT改成60MB的话,就应该输入setup_var 0x76D 0xFE
有人会说,下面也有一个DVMT啊,里面还有128MB,256MB啊
假如我想把DVMT改成128MB,就应该输入setup_var 0x76E 0x1
0x76E和0x1的位置关系如下
看到这里,想必大家已经懂了这个关系了吧,如何把DVMT修改成自己想要的数值
5.制作U盘来修改BIOS
掏出你的U盘,插到电脑上面,
右键格式化你的U盘,选择FAT32格式,如下图
选择开始,抹掉你的U盘
然后在U盘中新建EFI→Boot文件夹,如下图
将我分享的bootx64.efi,放到boot目录下,如下图
重启电脑,引导到U盘
引导到U盘之后,输入你想修改的DVMT所对应的指令,例如我想把DVMT改成Max
setup_var 0x76E 0x3
如图所示,我已经成功把DVMT改成Max了
i CANT FIND DVMT IN MY ROM FILE
你的cpu型号是什么
You explained that adequately!
谢谢