HI Guys, here is challenge. I have a EP45-DQ6. Thinking about how to upgrade its Intel AHCI rom to 1.20E, Intel Raid rom to 8.91.1002. However, CBROM 1.96 fails because there is sensitive module MINIT inside. Though ssv3 SLIC suceeds, how do we mod this type of bios? On my P5Q PRO, it's so easy. And this is a realistic question since Gigabyte didn't upgrade their option roms. Old AHCI rom causes delay in booting. Old Intel raid rom slows down the raid array and mke the rebuilt rediculous long. So any ideas? Senior?
It should be possible using cbrom196 (and cbrom 115 to extract the nocompress rom)!!! Here is the order: Code: D:\test>CBROM196.EXE ep45dq6.f12 /D CBROM196.EXE V1.96 [01/30/08] (C)Phoenix Technologies 2001-2007 ******** ep45dq6.f12 BIOS component ******** No. Item-Name Original-Size Compressed-Size Original-File-Name ================================================================================ 0. System BIOS 20000h(128.00K) 1453Bh(81.31K) ep45dq6.BIN 1. XGROUP CODE 0EFD0h(59.95K) 0A2AFh(40.67K) awardext.rom 2. ACPI table 04E70h(19.61K) 019E5h(6.47K) ACPITBL.BIN 3. EPA LOGO 0168Ch(5.64K) 0030Dh(0.76K) AwardBmp.bmp 4. GROUP ROM[18] 04CB0h(19.17K) 03392h(12.89K) ggroup.bin 5. GROUP ROM[20] 020C0h(8.19K) 018ECh(6.23K) ffgroup.bin 6. YGROUP ROM 0D740h(53.81K) 06D8Bh(27.39K) awardeyt.rom 7. GROUP ROM[22] 0F630h(61.55K) 014DBh(5.21K) tgroup.bin 8. GROUP ROM[23] 0F630h(61.55K) 026F3h(9.74K) t1group.bin 9. GROUP ROM[24] 0F630h(61.55K) 00AF0h(2.73K) t2group.bin 10. GROUP ROM[ 0] 09080h(36.13K) 032E2h(12.72K) _EN_CODE.BIN 11. PCI ROM[A] 03600h(13.50K) 0254Dh(9.33K) ICHAAHCI.BIN 12. PCI ROM(B) 07C00h(31.00K) 045B6h(17.43K) jmb10678.bin 13. MINIT 147C0h(81.94K) 147E9h(81.98K) DQ6_DDR2.BIN 14. PCI ROM[C] 10000h(64.00K) 09E3Eh(39.56K) ICHARAID.BIN 15. PCI ROM[D] 0C800h(50.00K) 079FDh(30.50K) rtegrom.lom 16. LOGO1 ROM 00B64h(2.85K) 00520h(1.28K) dbios.bmp 17. LOGO BitMap 4B30Ch(300.76K) 14B29h(82.79K) des_dq6.bmp 18. OEM5 CODE 01132h(4.30K) 009B0h(2.42K) TPMMPDRV.ROM 19. GROUP ROM[21] 00050h(0.08K) 00078h(0.12K) TCGSMI32.BIN 20. GV3 0234Dh(8.83K) 00C31h(3.05K) PPMINIT.ROM 21. OEM0 CODE 028DBh(10.21K) 01E52h(7.58K) SBF.BIN 22. NoCompress ROM 11000h(68.00K) 1103Ch(68.06K) UTS64K.BIN (SP) NCPUCODE 20800h(130.00K) 20800h(130.00K) NCPUCODE.BIN Total compress code space = E5000h(916.00K) Total compressed code size = AA0FCh(680.25K) Remain compress code space = 3AF24h(235.79K) Extract all modules using cbrom115 for the nocompresss module and for all others use 1.96 After you have extracted them, release all modules using cbrom196 last module first going upwards module by module until you have released module 11. Then insert all again, use the new modules (module 11 and module 14)..make sure you are remaining the original module order.. Extract command for nocompressrom that works: D:\test>CBROM115.EXE ep45dq6.f12 /nocompress extract Enter an extract file Name : (UTS64K.BIN) [NOCOMPRESS] ROM is extracted to UTS64K.BIN Release commands (replace 'release' with 'extract' to obtain the corresponding extract commands): D:\test>CBROM196.EXE ep45dq6.f12 /nocompress release D:\test>CBROM196.EXE ep45dq6.f12 /oem0 release D:\test>CBROM196.EXE ep45dq6.f12 /gv3 release D:\test>CBROM196.EXE ep45dq6.f12 /group21 release D:\test>CBROM196.EXE ep45dq6.f12 /oem5 release D:\test>CBROM196.EXE ep45dq6.f12 /logo release D:\test>CBROM196.EXE ep45dq6.f12 /logo1 release D:\test>CBROM196.EXE ep45dq6.f12 /pci release CBROM196.EXE V1.96 [01/30/08] (C)Phoenix Technologies 2001-2007 PCI ROM - - - [A] : ICHAAHCI.BIN PCI ROM - - - : jmb10678.bin PCI ROM - - - [C] : ICHARAID.BIN PCI ROM - - - [D] : rtegrom.lom Enter a choice [PCI-D] ROM is release D:\test>CBROM196.EXE ep45dq6.f12 /pci release CBROM196.EXE V1.96 [01/30/08] (C)Phoenix Technologies 2001-2007 PCI ROM - - - [A] : ICHAAHCI.BIN PCI ROM - - - : jmb10678.bin PCI ROM - - - [C] : ICHARAID.BIN Enter a choice:c [PCI-C] ROM is release D:\test>CBROM196.EXE ep45dq6.f12 /minit release D:\test>CBROM196.EXE ep45dq6.f12 /pci release CBROM196.EXE V1.96 [01/30/08] (C)Phoenix Technologies 2001-2007 PCI ROM - - - [A] : ICHAAHCI.BIN PCI ROM - - - : jmb10678.bin Enter a choice:b [PCI-B] ROM is release D:\test>CBROM196.EXE ep45dq6.f12 /pci release CBROM196.EXE V1.96 [01/30/08] (C)Phoenix Technologies 2001-2007 PCI ROM - - - [A] : ICHAAHCI.BIN [PCI-A] ROM is release So now you may add all the modules again starting with your updated ICHAAHCI.BIN To reinsert just use the module name and follow with the original filename. E.g. reinsert module 19: D:\test>CBROM196.EXE ep45dq6.f12 /group21 TCGSMI32.BIN This is very time consuming, but I did my first mods that way (sensitive modules) it should work.... The module's order MUST NOT change!!! Cbrom is able to correct the entry point of init modules.. cbrom196 is not able to extract that nocompress module!!!! I have used cbrom115 therefore.....that UTS64K.BIN data is used to prevent modding and AFAIK not needed at all........
AFAIK cbrom196 is able to adjust the entry point of the sensitive modules, even though the updated modules will cause a shift of offsets if you follow the steps and remain the order of the modules. Edit: AFAIK the sensitive modules will cause trouble if you release a module that's before it. The sensitive modules are MINIT and GV3 ....make sure you are able to recover..every bios may behave different....
If you want to wait..I have to go now..but will later have a look again regarding entry point. You may find the address by loading the biosfile into a hexeditor and look for ENTRYPOINT string....I want to try to verify that......if you are sure to recover you may try, otherwise I suggest to wait for my next reply....
Yeah, I am able to recover. Just short no.1 and no.8 of the bios pin, the back up bios will take action. Well, before I asked, I've tried many methods in my mind. Thanks. Will try. Edit: I'll wait for you. Since I am backing up important datas.
The first entry point /address has been corrected, the second remained at all bioses! All pointers are pointing to the same code, no matter if modded or not! So cbrom had to correct one only. Search for (the first) ENTRYPOINT string at original bios: (The second one, found at second ENTRYPOINT string remains untouched and points always to E0B2FFFF--->FFFFB2EO--->FB2E0 where is found the same code at every bios.) Code: Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 000E5560 45 4E 54 52 59 50 4F 49 4E 54 E0 3C F4 FF 08 00 ENTRYPOINTà<ôÿ.. The bytes behind are: E03CF4FF--> reverse it to get the address at EEPROM: FFF43CE0h It's a 1Mbyte bios so it points to the bios offset FFF00000h-FFF43CE0h= 43CE0h Have a look at the code there: Code: Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 00043CE0 E8 B1 F4 FF FF CB E8 72 79 FF FF CB E8 E9 EF FF è±ôÿÿËèryÿÿËèéïÿ 00043CF0 FF CB 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ÿË.............. 00043D00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ Now have a look at your ep45dq6.13M ENTRYPOINT which has the same address pointer as EP45DQ6_SLIC.13M, because the SLIC mod didn't change anything regarding DQ6_DDR2.BIN : Code: Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 000E5560 45 4E 54 52 59 50 4F 49 4E 54 E0 42 F4 FF 08 00 ENTRYPOINTàBôÿ.. E042F4FF--->FFF442E0--->bios offset : 442E0: (shift of 600h) Look at offset 442E0: Code: Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 000442E0 E8 B1 F4 FF FF CB E8 72 79 FF FF CB E8 E9 EF FF è±ôÿÿËèryÿÿËèéïÿ 000442F0 FF CB 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ÿË.............. 00044300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ points to the same code!!! Old bios 12, ENTRYPOINT: Code: Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 000E5560 45 4E 54 52 59 50 4F 49 4E 54 A0 2C F4 FF 08 00 ENTRYPOINT ,ôÿ.. A02CF4FF-->FFF42CA0--->42CA0: Code: Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F 00042CA0 E8 B1 F4 FF FF CB E8 72 79 FF FF CB E8 E9 EF FF è±ôÿÿËèryÿÿËèéïÿ 00042CB0 FF CB 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ÿË.............. 00042CC0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ same code as well. Conclusion: cbrom has corrected the entry address well! Since it points to the same code at every bios I have to assume cbrom did a good job when using as described. There are some address changes found as well at the code if you have a closer look..AFAIK these are corrections made by cbrom as well guessing it did it right.... The original code of ichaahci.bin has increased from 03600h(13.50K) to 04000h(16.00K) ...ICHARAID.BIN from 10000h(64.00K) to 13E00h(79.50K) original code size....at my (ASUS) board I never encountered an increasing of original size of code..are you sure these modules will work with your hardware? You can give it a try....you are able to recover so no problem...let me know how it went.
EP45DQ6 is a motherboard with P45+ICH10R. I have tried these two roms Intel Raid 8.9.1.1002 and AHCI1.20E on my ASUS P5Q PRO which has the same chipset setting. So if cbrom is doing it correctly, then the bios will work. What ASUS board are you using? If you are using P5Q series, please try out my Modded bios for P5Q series at extreme systems. I'll try the bios very soon. I'll keep you posted.
Yen, Hi. I tested the bios with a failure result. The machine kept rebooting itself. Nothing showed up in the screen nor initiate bios recovery. Bootblock damage I think. So this is still a challenge. Don't worry! I recovered it with manually initiating backup bios. Let's don't give up. Let's continue and make it work!
No we don't give up! I want this resolved, too... Only thing I have to go at 15th of February..check my signature please. OK, we have to go step by step to determine what's wrong...the PCI module 14 (ICHARAID.BIN) is located right after the MINIT module....you could try to replace that module only (same procedure), so the MINIT module would stay original......if it boots then we can go further....... I got a lot of ideas to try to figure what could be wrong.....e.g. to try the entire procedure without to change a module.....the sizes would be the same..anyway we could make sure cbrom doesn't have a general issue....... Btw: At my old Asus board I have updated the Silicon Image raid module several times. Award bios, NforceII chipset, no sensitive modules. It remained the original size of code every time....of course the compressed module size changed....
Yen, I've tested it. This time the machine posted but stoped at the device table. The raid bios was loaded with normal status showing. But it stop before booting into windows. Another observation is I can get into bios then it stopped (No keyboard). However, disabling raidbios, then I can get in to bios with keyboard. So I guess the board will load something into the upper memory (upper 1MB) where the raidbios is loaded to. So I'll try 8.5.0.1030 the last version with 64K size this time to test.
Yen, Bad news though 8.5.1038 can continue booting. But it's incompatible to the array. So it's even worse than 8.9.1.1002 which shows the array being normal. So we have no progress currently. Any new ideas?
From where did you get the 8.5.1038 code? AMI bios? It there a chance to obtain it from an Award bios, preferable from another Gigabyte bios?
I don't know. I think Intel distributes the codes all the same. They are just PCI roms. I have tried doing no module change, just the whole thing again, there is nothing wrong. So CBROM did something but not quite enogh.
This means cbrom is able to extract and release the modules correctly, it is also able to add them properly, if the sizes (offsets) are not changing..... We need two things to do: to find a compatible rom module to figure if cbrom is able to handle minit correctly if the offsets (sizes) are changing.... What do you want to figure? To test the second I suggest to change some bytes at 10. GROUP ROM[ 0] It's before minit as well. When you change some strings at the extracted module (no code) we can be sure the module is still working and its compressed size is chaging..this results to a shift of the offsets of all modules behind, cbrom has to handle..the size of the module code itself doesn't matter, it's the compressed size of the modified module at the bios that matters......
Hi Yen and chenxuwen, sorry to revive this old thread, but I don't see a point in starting a new one when this procedure is exactly what I'm trying to do. I'm not interested in adding SLIC to my board, but I am trying to add the newer AHCI and RAID modules. I am using a GA-EP45-DS4P, and like chenxuwen, I also have the no-keyboard issue after flashing a BIOS with the updated RAID version (v8.9.1.1002) after turning RAID on. I didn't have an OS installed when I tried it, so I'm not sure if it would have booted. Unfortunately the next thing I tried flashing was a file with both the new RAID modules and AHCI 1.20E (simply released/re-added with CBROM 1.98), and the board is now stuck in an endless reboot cycle (I haven't had any luck activating the backup BIOS chip so far). I'd love to hear any suggestions for successfully pulling off this mod. If the problem is the MINIT module, could perhaps the EPA logo be made smaller, to increase the space before the AHCI module and thus allow it to be hex edited in without moving MINIT? Yen, you mentioned that GV3 (PPMINIT.ROM) is one of the "sensitive" modules. Can you elaborate on this? Most modding tutorials I can find have not been updated since before the P45/ICH10 systems came out, and most also utilized older versions of CBROM. From reading several hundred posts, I have pieced together a mental picture of what might need to be done - but it's troubling that no one seems to have documented their own (working!) procedures.
reactivate this thread ... trying to mod bios for a Gigabyte EP45-DQ6 ... but without luck :-( any new ideas? christian
Hi daywalker2806, there doesn't appear to be much interest in this anymore, but you might want to check out bios-mods.com... After I posted there looking for help, I was provided a rebuilt BIOS to try. The replaced modules were in the correct order, so I don't know how it was done - the poster did not appear to want to share his methods. This was about 10 months ago, but I still haven't gotten around to testing it yet; having a working system* was much more important. *Be careful: Gigabyte's Dual-BIOS implementation appears to be IN the BIOS itself. This means that if certain modules/locations of the BIOS are altered, the backup chip will not activate, either automatically or by shorting pins (as you might find scattered references to). If this happens, the board will need to be physically repaired (by sending it away for service, or swapping the chips yourself, which is what I ended up doing.)