-
Notifications
You must be signed in to change notification settings - Fork 19
DVMT
修改DVMT可以让HDMI更好的工作。
-
DVMT Pre-Allocated变量偏移值查找 利用UEFITool和IRFExtractor工具提取BIOS Setup菜单变量文档(XiaoxinPro bios IFR.txt),查找DVMT Pre-Allocated变量的信息,具体方法可参考https://www.misonsky.cn/115.html
-
提取有用的信息:
DVMT Pre-Allocated, VarStoreInfo: 0x107, VarStore: 0x2
DefaultId: 0x0, Value: 0x1
其中,VarStore:0x2 指明了该变量所在的空间(表格),VarStoreInfo:0x107 指明了该变量在表格中的偏移地址,DefaultId:0x0, Value:0x1 指明了该变量的初始值,通过下表可知,0x1代表32M,我们需要的64M对应的值为0x2;
-
通过查找高级菜单(Advanced)所在的表单,找出该变量所在变量空间(0x2)的名称
-
从图可知,0x2对应的变量空间名称为SaSetup,大小为:0x22B
-
总结:修改DVMT Pre-Allocated的值需要在BIOS变量中找到名为SaSetup的空间,并把偏移量为0x107的数值由0x1改成0x2。
-
打开InsydeH2OUVE文件夹,先以管理员身份运行WDFInst.exe安装工具驱动
-
以管理员身份运行H2OUVE-W-GUIx64.exe程序
-
选择File – Load runtime读取当前BIOS状态
-
选择左侧Variable菜单,获取当前BIOS变量
-
找到名称为SaSetup的空间(双击后可看到该空间内的所有变量,可根据最后一个变量所在的偏移地址得出空间大小,与步骤0中的空间大小比对,从而确定找到的空间是正确的),并找到偏移量为0x107的数值(可与步骤0中的初始值比对,进一步确认是否需要修改的变量)。
-
修改该数值为02,并保存数据(保存前确认该空间被选中——前方的√打上)
-
看到提示保存变量成功的提示后,说明已修改成功,此时可重启电脑让其生效。
-
以管理员身份运行CMD或PowerShell,进入InsydeH2OUVE所在目录,运行WDFInst.exe安装工具驱动
-
提取命名为SaSetup的变量列表到一个txt文件,输入
.\H2OUVE-W-CONSOLEx64.exe -gv sasetup.txt -n SaSetup
-
打开提取到的sasetup.txt文件(可通过空间名称,空间大小确认所修改变量空间正确),找到偏移量为0x107的变量
-
把偏移量为0x107的变量01改成02,文件另存为
sasetup-64.txt
(原文件可作为备份文件)
- 回到CMD或PowerShell界面,输入
.\H2OUVE-W-CONSOLEx64.exe -sv sasetup-64.txt -n SaSetup
把sasetup-64.txt写入BIOS
- 看到
Variable Index[001]: Set successfully!
后,说明已修改成功,此时可重启电脑让其生效。