setupvar-builder
provides a UI for building scripts that you can later run using setup_var.efi. setup_var.efi
has the ability to read and write NVRAM variables, including those not visible through the UEFI.
I am not responsible for any damage that may occur to your computer. This tool is powerful and intended for advanced users only. There is a risk of damaging your hardware by altering unknown settings, particularly those related to basic system functionality. It is your responsibility to be informed about the desired settings and their impact on the system.
- BIOS image
- UEFITool NE
- IFRExtractor-RS
- setupvar-builder
- setup_var.efi
- USB drive
-
Obtain the BIOS from the official site of your motherboard manufacturer. Ensure it is the same version that is currently flashed on your motherboard.
-
Drag and drop the BIOS file into
UEFITool NE
-
Search (CTRL + F) for a known setting, such as
Above 4G Decoding
-
Double-click the reference to
Setup/PE32 Image section
at the bottom -
Right-click on the highlighted
PE32 Image section
and clickExtract as is...
-
Move
ifrextractor.exe
to the current folder or use the full path. Open the CLI and convert the.sct
file you just extracted into human-readable text with the following command:ifrextractor.exe "Section_PE32_image_Setup_Setup.sct" verbose
-
Open
setupvar-builder.exe
-
Click on
File > Open
(CTRL + O) and select the converted IFR data -
Change the desired setting(s)
-
Click on the
Export
button in the left bottom corner (CTRL + S) and save the script file
-
Format a USB drive as
FAT32
-
Download a UEFI shell from one of the following sources:
- UEFI-Shell (
shellx64.efi
) - Official EDK2 stable releases (
ShellBinPkg > UefiShell > X64 > Shell.efi
); note that this shell might be outdated
- UEFI-Shell (
-
Rename the UEFI shell to
BOOTX64.EFI
and put it inUSB:\EFI\BOOT
-
Put
setup_var.efi
andsetupvar-script.nsh
in the root of the USB drive
-
Boot from the USB drive
-
Select your USB drive by typing its map identifier:
- Examine the Mapping Table that is displayed by default. If you have cleared the CLI, type
map
to redisplay it. - Most likely, it will be
FS0:
- Examine the Mapping Table that is displayed by default. If you have cleared the CLI, type
-
Run the script file with the following command:
.\setupvar-script.nsh
If you encounter any errors, please report the issue through the issue tracker. Consider whether your problem is covered by an existing issue; if so, follow the discussion there. Avoid commenting on existing recurring issues, as such comments do not contribute to the discussion of the issue and may be treated as spam.