Gigabyte GA-EX58-UD4 (Award) PCI ROM replacement, fixing the checksum?

Hi

I’m trying to mod the last BIOS for Gigabyte GA-EX58-UD4 (rev. 1.0). Unfortunately the classic checksum problem is present.

Following this guide as far as i could:
[Guide] How I got my GA-970A-D3 Award BIOS successfully modded

Opened the BIOS file and replaced the PCI-ROM module (correct vendor and device IDs) for the onboard Realtec rtegrom.lom with my own module using the CBROM_155.EXE. Unfortunately the custom PCI ROM is smaller, leading to checksum errors when trying to flash by Freedos or qflash. I understand that i need to preserve the offsets, add a dummyfile of the correct size and fix the checksum-8 to avoid this.

Generated a dummy file as OP did, and checked that the compressed size is correct compared to the size difference between PCI ROMs(hex 7442)

Basically im stuck at steps 5 and 6:

5) I then used HxD to copy (from the test file) the compressed (3.3.2.0) ahci.BIN, (F3 v?.??) RTEGPXE.LOM where they were intially (one after the other), then pasted DUMMY4.bmp between RTEGPXE.LOM and DBIOS.BMP in the final F13b bios (using an unmodded copy, not the test version mentioned previously), such that ahci.BIN started at the original ahci.BIN offset and DUMMY4.bmp ended where the original RTEGPXE.LOM used to end (right before DBIOS.BMP).

6) To fix the checksum-8, I used CBROM198fixed.exe to extract and re-add LOGO Bitmap 2011.BMP which was at the end of the file and more importantly, after the location-sensitive MEMINIT.BIN.

Original layout of the BIOS EX58UD4P.14P:


Modded temporary layout:



In this case the dummy file should reside between no 15 and 16 to preserve the offsets. I cant find the offset HEX values in HxD (never used this tool before). Any pointers from the more experienced modders?

@Theproblem :
Welcome at Win-RAID Forum!

Which HEX values of which module do you mean?

Regards
Dieter (alias Fernando)

Try on this modded bios you posted, open it with HxD. Use search function in HxD to find text “rtegrom”, cut it from bios(using GO TO OFFSET( ctrl+G) function to select correct module size- 00E8F.(To find first byte of module look for “lh5” before rtegrom, looks like this: $Й-lh5-…RTEGROM.LOM, so must put cursor before “$” in “$Й-lh5”). Cut confirming file size change and save it to a new file. Then search for “jmb59”, put cursor at its start and go to offset 04479 - so cursor goes to modules end. And there just paste (ctrl+v) from file you saved rtegrom in hex, also confirming file change. Then do the same to Dummy.bmp, but put it after dbios.bmp(logo1). Check in cbrom if rtegrom is located after jmb59. Must work if you made correct calculations. Also you can copy Hex data from this modded bios to original bios( replacing rtegrom and putting dummy logo1 after logo2)…

But maybe i’m wrong…anyway this method will help to determine start and end of rom module…



Thanks! I think i managed to do it.



Cannot download the Award-tool though to verify the new file. Are there any other links than mydigitallife.info?


Fernando: I was trying to explain that i didnt know how to find the exact positions (start/end) for each PCI ROM module and LOGO2.

Which Award-tool do you mean?

Ok, but thanks to vreduru’s post you obviously know it now. I am sorry, but I cannot give you more/better informations.

Which Award-tool do you mean?

Ok, but thanks to vreduru’s post you obviously know it now. I am sorry, but I cannot give you more/better informations.





This tool. It was referenced in the other thread for checking that the BIOS file was good:
https://forums.mydigitallife.info/thread…on-Modification

Apparently the site requires registration, and they figured i was a spammer, so my email was blocked when trying to register…

Maybe i dont need to check before flashing(?), the board has dual BIOS.

Andyp’s PhoenixTool is fine, but I don’t offer any download link, because the tool can be used for doing SLIC modifications and I don’t want any trouble with Microsoft.

Hey, glad it worked. You can check cheksum in HxD in "analise-checksums" (choose checksum-8) and if its "00", then its ok. I flashed modded bios via standart gigabyte windows @bios, and had checksum errors, every time bios was restored by dual bios.
And why not to use another email to register mydigitallife??

Yes, this is valid for Option ROM modules. The checksum-8 of EFI modules may be "F8". Look here:

BIOS module checksum-8.png


You should ask the MDL team and not me.

Hi, Fernando. I wrote previous post to answer theproblem guy and regarding his award bios, only forgot to quote his questions. So please, you may delete this message as offtop



Checked it with HxD and i got 00 checksum. Flashed the new BIOS and everything is working as expected. Thanks to the both of you for pointers!