coderobe / VBiosFinder

Extract embedded VBIOS from (almost) any BIOS Update
GNU Affero General Public License v3.0
129 stars 21 forks source link

Seems to have worked on the Lenovo Ideacentre (310S-08ASR Type 90G9)! #46

Open CerisWhite opened 2 years ago

CerisWhite commented 2 years ago
~/work/VBiosFinder > ./vbiosfinder extract ~/BIOS.rom
Calling `DidYouMean::SPELL_CHECKERS.merge!(error_name => spell_checker)' has been deprecated. Please call `DidYouMean.correct_error(error_name, spell_checker)' instead.
Calling `DidYouMean::SPELL_CHECKERS.merge!(error_name => spell_checker)' has been deprecated. Please call `DidYouMean.correct_error(error_name, spell_checker)' instead.
output will be stored in '/home/ceris/work/VBiosFinder/tmp-vbiosfinder'
checking for ruby... yes

checking for innoextract... yes
checking for upx... no
Install 'upx' on your system (required for UPX executables)
checking for 7z... yes
trying to extract ./BIOS.rom
extracting uefi data
trying to extract ./BIOS.rom
found UEFIExtract archive
trying to extract ./mkmf.log
found UEFIExtract archive
filtering for modules...
got 6042 modules
finding vbios
1 possible candidates
checking for rom-parser... yes
Found VBIOS for device 1002:98e0!
Job done. Extracted files can be found in /home/ceris/work/VBiosFinder/tmp-vbiosfinder/../output
Cleaning up garbage

It is worth noting that I had to extract the BIOS ROM using flashmap and could not use the update .exe provided here (https://pcsupport.lenovo.com/us/en/products/desktops-and-all-in-ones/300-series/310s-08asr/90g9/downloads/driver-list/component?name=BIOS%2FUEFI). ((I suspect the updater there is not actually for my device as my device claims to be version "T5" where the updater has version "T3"?)) Once copied with flashmap, the extraction went fine and produced the following file:

~/work/VBiosFinder/output > ls -alh ./vbios_1002_98e0_1.rom
-rw-r--r-- 1 ceris ceris 63K Mar 15 18:11 ./vbios_1002_98e0_1.rom

I believe that's a wrap.