Hi guys, since this wasn't a request, I thought this thread best belonged here... move it if that's wrong. A large part of this is pasted from other posts, so forgive me if mess up any editing:
Ideally, what I am trying to do is modify my board's newest (and probably last) BIOS F9a to add the newest compatible AHCI and RAID modules (1.20E and 8.9.1.1002).
So far I have used CBROM 1.98 and done two tests:
1. BIOS with new RAID only. There were no errors, overclocking still worked, and there was no unexpected behavior until RAID was enabled. At that point once the last Option ROM module is loaded, the keyboard (on both PS2 and USB) stops functioning. Therefore can't setup CMOS, use Boot Menu, etc. The RAID array was detected normally, but there was no OS on the drives in this test, so I'm not sure if it would have booted. I found one reference to the keyboard problem here with a GA-EP45-DQ6... there was no posted solution.
2. BIOS with new AHCI and new RAID. No extra steps were taken with this file regarding sensitive files/checksums/file order, the old AHCI and RAID modules were simply released and replaced. The board is now trapped in an endless rebooting cycle, until I (hopefully) manage to activate the backup BIOS chip.
It's been a few days since that last part and I can't get it going, so I'll probably have to swap the chip out. My plan after that, is the following:
1. Overwrite (using a hex editor) the current AHCI and RAID modules with identically sized dummy modules, essentially removing the old versions without touching anything else.
2. Remove the NoCompress ROM module using the older version of CBROM (just in case), as suggested by Zen in that other thread.
3. Add new AHCI and RAID modules.
4. Add the NoCompress ROM back in using the older CBROM.
Both desired Option ROMs are bigger than their older counterparts (AHCI grows from 12.5KB to 16KB, RAID from 64KB to 79.5KB), making them awkward to insert without messing with the size/pointers/offsets of other modules. However, there appears to be plenty of space to add them without actually removing the old ones. If I understand CBROM's output correctly, this procedure should lead to a file with roughly the following layout and stats:
I notice the first size stat would be over 1000KB, would that be an issue? I'd really appreciate any alternate ideas, or the pointing out of potential pitfalls! Thanks.
Ideally, what I am trying to do is modify my board's newest (and probably last) BIOS F9a to add the newest compatible AHCI and RAID modules (1.20E and 8.9.1.1002).
So far I have used CBROM 1.98 and done two tests:
1. BIOS with new RAID only. There were no errors, overclocking still worked, and there was no unexpected behavior until RAID was enabled. At that point once the last Option ROM module is loaded, the keyboard (on both PS2 and USB) stops functioning. Therefore can't setup CMOS, use Boot Menu, etc. The RAID array was detected normally, but there was no OS on the drives in this test, so I'm not sure if it would have booted. I found one reference to the keyboard problem here with a GA-EP45-DQ6... there was no posted solution.
2. BIOS with new AHCI and new RAID. No extra steps were taken with this file regarding sensitive files/checksums/file order, the old AHCI and RAID modules were simply released and replaced. The board is now trapped in an endless rebooting cycle, until I (hopefully) manage to activate the backup BIOS chip.
It's been a few days since that last part and I can't get it going, so I'll probably have to swap the chip out. My plan after that, is the following:
1. Overwrite (using a hex editor) the current AHCI and RAID modules with identically sized dummy modules, essentially removing the old versions without touching anything else.
2. Remove the NoCompress ROM module using the older version of CBROM (just in case), as suggested by Zen in that other thread.
3. Add new AHCI and RAID modules.
4. Add the NoCompress ROM back in using the older CBROM.
Both desired Option ROMs are bigger than their older counterparts (AHCI grows from 12.5KB to 16KB, RAID from 64KB to 79.5KB), making them awkward to insert without messing with the size/pointers/offsets of other modules. However, there appears to be plenty of space to add them without actually removing the old ones. If I understand CBROM's output correctly, this procedure should lead to a file with roughly the following layout and stats:
Code:
No. Item-Name Original-Size Compressed-Size Original-File-Name
================================================================================
0. System BIOS 20000h(128.00K) 14348h(80.82K) test.BIN
1. XGROUP CODE 0EB90h(58.89K) 0A0D1h(40.20K) awardext.rom
2. ACPI table 03E96h(15.65K) 01716h(5.77K) ACPITBL.BIN
3. EPA LOGO 0168Ch(5.64K) 0030Dh(0.76K) AwardBmp.bmp
4. GROUP ROM[18] 045F0h(17.48K) 02EA9h(11.67K) ggroup.bin
5. GROUP ROM[20] 02060h(8.09K) 018C1h(6.19K) ffgroup.bin
6. YGROUP ROM 0D930h(54.30K) 07442h(29.06K) awardeyt.rom
7. GROUP ROM[22] 0F630h(61.55K) 01510h(5.27K) tgroup.bin
8. GROUP ROM[23] 0F630h(61.55K) 025EFh(9.48K) t1group.bin
9. GROUP ROM[24] 0F630h(61.55K) 00AEFh(2.73K) t2group.bin
10. GROUP ROM[ 0] 088E0h(34.22K) 02FC0h(11.94K) _EN_CODE.BIN
*11. NoCompress ROM 0254Dh(9.33K) 0254Dh(9.33K) dummy.exe*
12. MINIT 147C0h(81.94K) 147EEh(81.98K) DS4_DDR2.BIN
*13. NoCompress ROM 09E3Eh(39.56K) 09E3Eh(39.56K) dummy.exe*
14. PCI ROM[C] 0E800h(58.00K) 082D1h(32.70K) rtegrom.lom
15. LOGO1 ROM 00B64h(2.85K) 00520h(1.28K) dbios.bmp
16. LOGO BitMap 4B30Ch(300.76K) 15690h(85.64K) des_ds4.bmp
17. OEM5 CODE 01132h(4.30K) 009B0h(2.42K) TPMMPDRV.ROM
18. GROUP ROM[21] 00050h(0.08K) 00078h(0.12K) TCGSMI32.BIN
19. GV3 0234Dh(8.83K) 00C31h(3.05K) PPMINIT.ROM
20. OEM0 CODE 028DBh(10.21K) 01E52h(7.58K) SBF.BIN
*21. PCI ROM[A] 04000h(16.00K) 02B45h(10.82K) ICHAAHCI.BIN*
*22. PCI ROM[B] 13E00h(79.50K) 0BF77h(47.87K) RAID89.BIN*
23. NoCompress ROM 11000h(68.00K) 11026h(68.04K) UTS64K.BIN
(SP) NCPUCODE 20800h(130.00K) 20800h(130.00K) NCPUCODE.BIN
Total compress code space = 1011.50K
Total compressed code size = 724.32K
Remain compress code space = 191.72K
I notice the first size stat would be over 1000KB, would that be an issue? I'd really appreciate any alternate ideas, or the pointing out of potential pitfalls! Thanks.