- Joined
- Oct 22, 2020
- Messages
- 55 (0.03/day)
This topic present a new tool to parse & visualize NVIDIA VBIOS .rom files
Latest supported GPUs are Ada RTX40x0 series, the oldest are Kepler GTX6x0.
The tree visualization is implemented as a pattern file/script for ImHex hex editor.
This is just visualizer aimed as a starting point for VBIOS researches - it will NOT help in editing Pascal+ VBIOSes since they are signed.
It is not complete in any way - but overall structure is calculated, and some (say 10-20%) of tables are parsed.
For example the "supported memory variants" table, that is also parsed by GPU-Z, see screenshot
Latest supported GPUs are Ada RTX40x0 series, the oldest are Kepler GTX6x0.
The tree visualization is implemented as a pattern file/script for ImHex hex editor.
Usage
- Get ImHex (huge thanks to author of ImHex project - this parser would never be created without it!)
- I'm not sure in 100% forward version compatibility, so it surely should work with ImHex 1.33.2
(github releases link, if in doubt - scroll to the bottom and get "Windows-Portable-NoGPU-x86_64" )
- I'm not sure in 100% forward version compatibility, so it surely should work with ImHex 1.33.2
- Get attached archive and extract kepler-ada-nvidia-vbios-visualizer-2024_05.hexpat from it
- Its usage is visualizing the VBIOS with ImHex - but it is a human-readable source code file that can be edited/enhanced - so it is opensource!
- Get the .rom VBIOS you want to visualize - save via GPU-Z, download from TechPowerUp, etc
- Run ImHex, use File->Open File to select the .rom file
- Then select File->Import->Pattern file -> "Browse..." and select the extracted kepler-ada-nvidia-vbios-visualizer-2024_05.hexpat
- All done!
- the Pattern Data pane shows the expandable tree of parsed VBIOS data with corresponding parts interactively highlighting in the Hex view
- the Console pane shows the overall parsing result,
This is just visualizer aimed as a starting point for VBIOS researches - it will NOT help in editing Pascal+ VBIOSes since they are signed.
It is not complete in any way - but overall structure is calculated, and some (say 10-20%) of tables are parsed.
For example the "supported memory variants" table, that is also parsed by GPU-Z, see screenshot
Attachments
Last edited: