2016/11/10

取得 AMI BIOS ROM 並修改DVMT Pre-Allocated選項為例

在修改BIOS ROM之前得先確認要修改的主機板架構屬於哪間公司和架構
這邊所要修改的AMI UEFI的主機板,不過因為是廠商所提供的主機板板所以確切型號並不知道是什麼

首先準備大於1G的隨身碟一隻,接著先下載「Rufus」和「AMIBIOS and Aptio AMI Firmware Update Utility」並且使用「Rufus」為我們格式化隨身碟

格式為:FAT32
並建立成FreeDos開機碟



AMIBIOS and Aptio AMI Firmware Update Utility應該也下載好了,找到\afu\afudos\AfuDos.rar解壓縮檔案內的AFUDOS.exe複製到隨身碟內



複製後將其插入要取得BIOS電腦並用Legacy開啟讀取該支隨身碟

接著輸入:
AFUDOS.EXE 存檔名稱.ROM /O



存檔後就可以將隨身碟在插回來原來電腦上


下載「UEFITool_NE_A32_win.zip」並用這隻程式開啟剛剛存好的ROM

按下Ctrl + F,選擇Text輸入「Setup」找到Text為「Setup」的項目,將其展開對「PE32 image section」按右鍵選擇「Extract as is」並存檔就可以關到這隻程式了



再來下載「Universal-IFR-Extractor」並用Universal-IFR-Extractor將剛儲存的Setup_PE32_image_section.sct讀取近來



點擊「Extract」將檔案儲存下來

接著用記事本打開剛剛所儲存的檔案可以很清楚看到BIOS內的功能有哪些選項可以選擇
假設我現在要將DVMT Pre-Allocated修改為480M,就應該要知道DVMT Pre-Allocated在記憶體哪個位置,選項的值為多少
這張板子DVMT Pre-Allocated存在於0x1E3,480M值則是0xF



下載「EFI Shell」,接著將隨身碟重新格式化為fat32格式並在隨身碟內建立EFI資料夾


將下載好的EFI Shell內的BOOT資料夾複製到隨身碟內的EFI資料夾內



接著透過UEFI開啟該支隨身碟,並輸入以下指令就可以將DVMT Pre-Allocated修改為480M了
setup_var 0x1E3 0xF






如果要重新開機就輸入下方指令就好了
reboot

在操作時請小心,輸入錯位置會很嗨


Macan do it.


參考資料:
https://www.firewolf.science/2015/04/guide-intel-hd-graphics-5500-on-os-x-yosemite-10-10-3/
https://github.com/LongSoft/UEFITool/releases/tag/A32
https://github.com/donovan6000/Universal-IFR-Extractor
https://ami.com/download-license-agreement/?DownloadFile=AMIBIOS_and_Aptio_AMI_Firmware_Update_Utility.zip