【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

我们必须搞明白一点,macOS与windows不一样的是,macOS对显存非常敏感。一旦少于64MB的显存,无论怎么打补丁都进不了系统。尤其是一些比较老的核显,如HD4XXX 5XXX。我们一定要保证从BIOS就分配出来必要的显存,在这里我强烈建议至少128MB,才能保证1080P的分辨率。如果上2K或者4K屏,那么256MB预分配显存是必须,当然越大越好。但很不幸的是,很多笔记本品牌的BIOS,甚至品牌台式机的BIOS,很残忍地不让修改DVMT显存,这就有点尴尬了。遇到这样的,要么放弃安装黑苹果,老实用回windows。要么,就直接暴力修改BIOS然后刷新,但这个技术要求高,搞不好变砖,风险很高。要么就可以试下我下面讲的用EFI Shell命令工具修改BIOS设置。但是,这种方法也有不完美的,就是BIOS一旦恢复出厂了,又要重新再弄一次,幸好,我们记住了数值的话,一切将变得简单。

目的

如果你有不能在BIOS里修改DVMT显存的笔记本(绝大多数),并且是InsydeH20 bios的,想要安装macOS,则需要设置显存大于64MB,最好为128MB。通常来说,目前主流的BIOS都会将默认值设置为128MB,但实际分配仍可能低于128MB,这属于一种BIOS的欺诈。所以,我们需要128到256MB的显存,这是我们首要目的。

准备工具

  1. 为防止出现的不可预料的问题,最好准备另一台电脑。
  2. U盘一个,大小无所谓,128MB都可以了。
  3. 你的机子的BIOS文件,这个怎么来呢,我建议直接上官网下面一个,很多BIOS下载之后是EXE文件,通常可以直接用WINRAR解压,BIOS的ROM文件后缀都比较奇怪,一般是BIN,ROM,但记住一点,文件大小最大那个一般就是BIOS文件了。
  4. 下载本教程最下面的文件,里面有EFI Shell,Phoenixtool,Universal IFR Extractor和UEFITool。

制作一个EFI Shell启动U盘

首先,将U盘插进电脑,将其格式化成MBR FAT32格式。
解压EFI Shell,将里面的BOOT文件夹复制到U盘根目录。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

提取BIOS文件

  1. 到自己笔记本的官网,搜自己的机子的专属技术支持页面,一般能找到BIOS文件下载,将BIOS下载到本机,本文以外星人M17XR4为例,下载的BIOS文件是M17xR4.exe。

  2. 点击M17xR4.exe,右键点解压(什么,你连解压工具都没有?)
    【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

  3. 在解压出来的文件中,会到看这些文件,其中isflash.bin就是BIOS镜像。 除了这个,其它文件都可以删掉。【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

提取BIOS SETUP ROM

1,解压缩Phoenixtool256

2,打开PhoenixTool.exe
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

3,在工具的Original框中点一下右边的小按钮,选择BIOS文件,打开。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

4,之后出来几个提示,都点确定。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

5,加载完后,点下面的Structure按钮
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

6,打开EFI BIOS结构,找到DXE Core结构中的DXE Core - DxeMain项下面的PE32+ image section,选中它。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

7,勾选右边的Decompress Extracted Modules,然后点下面的Extract按钮,点了之后并不会有什么提示,不要觉得卡死了,可以直接关掉软件。

8,这时在BIOS文件的目录下会生成一个DUMP的文件夹。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

9,我们将看到一大堆文件,不要觉得头痛。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

10,需要找到一个FE3542FE开头的,在本文示例中一共有三个文件。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

11,其中,1KB的直接忽略,600多KB的就是我们要找的UEFI ROM了,但是,每个BIOS可能不一样,但FE3542FE开头的一般都会有。好了,除了这一个,其它全部删掉!
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

将UEFI ROM导出为文本

1,现在可以使用Universal-IFR-Extractor.exe工具提取您的UEFI ROM。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

2,打开刚提取到的FE3542FE开头的UEFI ROM文件,ProtOClo会让Unknown变为绿色的UEFI,这时再点Extract,导出为文本TXT。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

3,打开提取到的TXT文本,搜索DVMT.
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

4,定位到DVMT Pre-AllOCated项,在这里,我们就能清晰看到,显存大小的具体数值。
【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

5,记住,两个参数,一是设置项,这里看到DVMT的设置项值是0x198,二是显存参数项,例如128MB是0x4,1024MB是0x11。如果我们需要设为128MB,就记下0x1980x4就可以了。【黑苹果教学】利用EFI Shell命令修改DVMT显存,适合BIOS中没有设置显存选项的笔记本

U盘引导EFI Shell工具

  1. 将刚才制作好的EFI Shell引导U盘插到电脑中,重启用Legacy Mode传统引导U盘。
  2. 进入EFI Shell命令行后,我们只需要输入
  3. setup_var 0x198 0x4
  4. 然后回车,就己经设置成128MB
  5. 之后输入EXIT退出EFI Shell,电脑一般会重新启动。

检查设置是否生效

进入WINDOWS后,用设备管理器或者其它硬件检测工具检查显存是否生效。

结论

当然,显存DVMT只是黑苹果必要条件之一,你仍将需要设置其它的clover引导配置,使核显能正常工作。

工具下载

https://pan.baidu.com/s/1zOoxPJscmDovdHt-1HyPNg
密码:ib69