Skip to content
/ grubmod Public

Tool that lets you view and modify hidden BIOS/UEFI variables via the GRUB bootloader, with a graphical interface that auto-generates and applies change scripts.

License

Notifications You must be signed in to change notification settings

NZK95/grubmod

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

grubmod

Downloads

Disclaimer

The author is not responsible for any possible damage caused to hardware as a result of using this project.
This software does not guarantee any increase in performance and is intended for enthusiasts only.
You use this program at your own risk.

Features

  • Displays all BIOS/UEFI variables, including hidden ones, along with their data.
  • Convenient filters for viewing and analyzing parameters.
  • Modify variables and apply changes through GRUB.
  • Import and export configs.
  • Built-in presets with various configurations.
  • Script generation and execution for automating changes.
  • Error tracking via logging.

Known Issues

  • As far as known, it doesn’t work on AMD systems.
  • Some parameters don’t have all possible values.
  • Some parameters names are invalid.

Requirements

  • BIOS image
  • Last version of grubmod from releases
  • USB drive

Usage

1. Preparing working files

  1. Download the latest release of grubmod.
  2. Download the current version of your BIOS firmware and place it in your working folder.
  3. Open the firmware file in UEFIToolNE in the files folder.
  4. In the window that opens, press Ctrl + F.
  5. Select the Text section and type any parameter name, for example: ASPM.

  1. After the search, go to the Setup/PE32 image section entry.
  2. Right-click the PE32 image section in the Setup section.
  3. Select Extract as is.

  1. Save the file in files folder.
  2. Open CLI in the files folder, and insert the command:
ifrextractor.exe "extracted_file_name.sct"
  1. Open the saved file in grubmod using the Import file button.

2. Preparing the USB drive

  1. Format your USB drive as FAT32.
  2. Download a UEFI shell file from one of these sources:
  3. Rename the downloaded UEFI file to BOOTX64.EFI and place it at: USB:\EFI\BOOT
  4. Place setup_var.efi and setupvar-script.nsh in the root of the USB drive.

3. Script execution

  1. Boot from the USB drive via your motherboard’s boot menu (check your model’s key combo online).
  2. In the UEFI shell, identify your USB drive:
    • Check the displayed Mapping Table (to re-display it, type map). Most likely, it’ll be FS0.
  3. Run the script with:
    .\setupvar-script.nsh
  4. Wait until the script finishes execution.
  5. Power off your PC using the physical power button to apply the changes.

Config Syntax

If you want to create/load a custom config, follow this syntax:
If a parameter is missing or incorrect, it will be ignored.

PARAMETER NAME | DESIRED VALUE

If you want a max/last value:

PARAMETER NAME | Max

The config file must have a .txt extension, and the filename must contain the word config.
Examples: my-config.txt, Configtest.txt.

Keyboard shortcuts

Shortcut Action
Enter Search
Ctrl + C Clear
Ctrl + G Google
Ctrl + E Export script
Ctrl + L Load config

Troubleshooting

If you encounter errors or bugs, please report them via the issue tracker.
Sometimes, after changing BIOS parameters, the system might not boot. To reset BIOS to defaults, clear the CMOS or remove the battery.

Resources & Credits

UEFI-Editor by BoringBoredom
grub-mod-setup_var by datasone
setup_var.efi
UEFI

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Tool that lets you view and modify hidden BIOS/UEFI variables via the GRUB bootloader, with a graphical interface that auto-generates and applies change scripts.

Topics

Resources

License

Stars

Watchers

Forks

Languages