DELL 600/800 g1 DM解鎖CFG LOCK、修改DVMT簡易教學

下載工具程式

grub-mod-setup_var:下載modGRUBShell.efi這個修改過GRUB sdell檔案。
UEFITool:請下載UEFITool版本。UEFITool_NE_A56_mac.zip Mac版本。
UniversalIFR-Extractor:請下載ifrextract_v0.3.6.osx.zip。BIOS的訊息轉化成文字的工具軟體
BIOS:根據你的主機板所使用的BIOS安裝檔,從官網下載。
sublime text:文字編輯工具。

winOS:下載BIOS工具

  1. 使用BIOS_Backup_TooKit.exe以獲取BIOS ROM。
  2. 使用UEFITool以開放的BIOS ROM。
  3. 搜索關鍵字(cfg鎖定,DVMT),然後提取正文。

EFITool

尋找CFG Lock的數值,打開Terminal(终端機)輸入以下執行命令。
cd ~/Desktop/CFG 
./UEFITool.app/Contents/MacOS/UEFITool /Users/電腦名稱/Desktop/XXX.bin

提取cfg lock所在的模塊

搜索cfg lock,找到file -> search… 選項,搜索”cfg lock”,雙擊下面搜索結果,會自動定位到cfglock所在的位置

  1. 右鍵Extract body導出模塊保存為cfglock.bin
  1. 輸出文件類似於Section_PE32_image_Setup_Setup_body.efi,使用IFR-Extractor和命令./ifrextract Section_PE32_image_Setup_Setup_body.efi Section_PE32_image_Setup_Setup_body.txt將其轉換為文本文件。
  2. 打開Section_PE32_image_Setup_Setup_body.txt並蒐索關鍵字(cfg鎖定,DVMT)以查找其後最接近的地址。
0xBF518                 Setting: CFG lock, Variable: 0x4A3 {05 A6 0F 02 10 02 5C 00 01 00 A3 04 10 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00}
0xBF53E                     Option: Disabled, Value: 0x0 {09 0E CC 01 00 00 00 00 00 00 00 00 00 00}
0xBF54C                     Option: Enabled, Value: 0x1 {09 0E CB 01 30 00 01 00 00 00 00 00 00 00}
0xBF55A                 End of Options {29 02}

打開剛剛轉換好的txt文件,搜索關鍵詞”cfg lock”, 可以看到Variable為0x4A3

搜索關鍵詞”DVMT Pre-Allocated”, 可以看到Variable為0x233

0xCDC94             Setting: DVMT Pre-Allocated, Variable: 0x233 {05 A6 01 05 13 05 11 01 01 00 33 02 10 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00}
0xCDCBA                 Option: 32M, Value: 0x1 {09 0E 02 05 30 00 01 00 00 00 00 00 00 00}
0xCDCC8                 Option: 64M, Value: 0x2 {09 0E 03 05 00 00 02 00 00 00 00 00 00 00}
0xCDCD6                 Option: 96M, Value: 0x3 {09 0E 04 05 00 00 03 00 00 00 00 00 00 00}
0xCDCE4                 Option: 128M, Value: 0x4 {09 0E 05 05 00 00 04 00 00 00 00 00 00 00}
0xCDCF2                 Option: 160M, Value: 0x5 {09 0E 06 05 00 00 05 00 00 00 00 00 00 00}
0xCDD00                 Option: 192M, Value: 0x6 {09 0E 07 05 00 00 06 00 00 00 00 00 00 00}
0xCDD0E                 Option: 224M, Value: 0x7 {09 0E 08 05 00 00 07 00 00 00 00 00 00 00}
0xCDD1C                 Option: 256M, Value: 0x8 {09 0E 09 05 00 00 08 00 00 00 00 00 00 00}
0xCDD2A                 Option: 288M, Value: 0x9 {09 0E 0A 05 00 00 09 00 00 00 00 00 00 00}
0xCDD38                 Option: 320M, Value: 0xA {09 0E 0B 05 00 00 0A 00 00 00 00 00 00 00}
0xCDD46                 Option: 352M, Value: 0xB {09 0E 0C 05 00 00 0B 00 00 00 00 00 00 00}
0xCDD54                 Option: 384M, Value: 0xC {09 0E 0D 05 00 00 0C 00 00 00 00 00 00 00}
0xCDD62                 Option: 416M, Value: 0xD {09 0E 0E 05 00 00 0D 00 00 00 00 00 00 00}
0xCDD70                 Option: 448M, Value: 0xE {09 0E 0F 05 00 00 0E 00 00 00 00 00 00 00}
0xCDD7E                 Option: 480M, Value: 0xF {09 0E 10 05 00 00 0F 00 00 00 00 00 00 00}
0xCDD8C                 Option: 512M, Value: 0x10 {09 0E 11 05 00 00 10 00 00 00 00 00 00 00}
0xCDD9A                 Option: 1024M, Value: 0x11 {09 0E 12 05 00 00 11 00 00 00 00 00 00 00}
0xCDDA8             End of Options {29 02}

完成了上述步驟,因此只需鍵入以下命令。

  • 禁用MSR 0xE2(即cfg鎖定) setup_var 0xDA2 0x00
  • DVMT增加到96M setup_var 0x263 0x03
  • 您可以通過鍵入以下內容來檢查值 setup_var [ADDR]

這裏也記錄了變量值的含義,我們要改的96M就是0x3

  1. 輸入GRUB Shell(使用bootx64.efibios_tools.zip要引導)
  2. 通過輸入檢查地址值 setup_var 0x263
  3. 鍵入setup_var [cfg lock address here] 0x00以禁用cfg鎖定。
  4. 鍵入setup_var [DVMT address here] 0x03以將DVMT增加到96M。