Help with 890GPA-UD3H v2.1 Award BIOS mod for AM3+ CPU-s

Hi

I could use some help in modding AWARD BIOS for my Gigabyte 890GPA-UD3H version 2.1.If possible of course.

I am trying to make the Gigabyte 890GPA-UD3H ready for new FX CPU-s.Had a bad experience with a 970A-UD3 so i will not spent money on a AM3+ board again to soon.

It s version 2.1 of the 890GPA-UD3 ,and in spite of the white socket ,will take a FX AM3+ CPU and has received in 2011 2 Bulldozer ready beta BIOS-es.

Practically they have released 2 beta BIOS-es ,one was FGc and one called FGf ,for which Gigabyte stated Bulldozer ready ,then ,after a while they have removed the statement and finally the beta BIOS-es as well :slight_smile: (as they put on the market a version 3.1 of the board :slight_smile: ).

This beta BIOS-es for version 2.1 ,due to limited CMOS space (8 megs bios chips) have 2 things removed ,the LAN ROM and the capability of unlocking for Phenom 2 CPU-s.I don t mind not having them as going to FX no unlocking is available and never used the LAN ROM boot anyway.

I want to buy a FX 6300 to replace my Phenom 2 X4 975BE (lower heat ,better performance and even lower power consumption in idle or web browsing ),i really need latest AGESA in there to be able to use a newer FX with it.


Now there are 2 possibilities that i think of.

Either i change the Agesa/CPU code in the FGc or FGf BIOS files ,that were meant for version 2.1 ,or i remove something in the latest beta BIOS for version 3.1 of the 890GPA-UD3 ,board that has only one thing changed it seems ,the Realtek audio chip.
But even if i remove something from the 3.1 version BIOS i would still need to update AGESA for FX Vishera to work properly and maybe do some other tricks to be able to flash it .In spite of the newer AGESA on the 3.1 i am not sure this one will properly work with the second generation of FX.

So is it possible to update the AGESA on the 890GPA-UD3H 2.1 beta BIOS-es ?!
If yes from where should i get the updated CPU codes from

I have tried on a XP installation to use the CBROM 1.98 with the /D command ,but it always refused to open BIOS files i tried ,saying file not found.Tried the bios files both with initial file extension and with .bin.
So i wonder if this BIOS-es are really moddable.

This are the beta BIOS files for Gigabyte 890GPA-UD3H 2.1 that should support FX/AM3+ :

FGc → http://www.sendspace.com/file/95yk0p
FGf → http://www.sendspace.com/file/xskyzu

890GPA-UD3H 2.1 page → http://www.gigabyte.com/products/product…spx?pid=3516#sp

I have played in the past with both nvidia and ATI VGA BIOS-es so i am not a total noob in BIOS editing. :slight_smile:

@ Jumbix:
Welcome at Win-RAID Forum!

Generally it is possible to update each BIOS module, if you have the appropriate BIOS modding tool. The question is, if the modded BIOS will work with your system. I don’t know the answer.

I am not able to help you with this, because I only have some experience with PCI ROM and SataDriver modules.

Then you have done something wrong (CBROM and BIOS file in different folders or typo while editing the BIOS file name).
I had no problem to open the newest .FF BIOS for your Gigabyte mainboard. Look here:

CBROM opens Gigabyte 89GPAD32.FF BIOS.png



Regards
Fernando

Thanks for the reply Fernando.

I have tried to open those betas that i gave download links for and not the FF.
It would be of much help to tell me if those can be opened as well and the beta of the 3.1 version.
Maybe instead of the FX 6300 i could have get FX 8120 with full support as version 3.1 seems to have.

The files are archives as i have downloaded them from Gigabyte so they should be clean ,in case someone else needs them.
They were checked against virus total before uploading.
I tend to put BIOS files at safe as manufacturers like Gigabyte have the habit to delete them so you buy new boards that have weak BIOS support as well . :slight_smile:

I will see if the FF can be opened ,to see if the tool works at least.

I just tested the BIOS of your first link (89GPAD32.FGc) and CBROM works fine with it.

I have finally used the cmd properly and started opening them :slight_smile:

I have opened the 890GPA-UD3 v2.1 :FF BIOS ,FGc and FGf beta BIOS-es
I have also opened the latest beta for 890GPA-UD3 v3.1 the F5h and the 990FXA-UD3 F9.

There is something that puzzles me ,practically i should replace the NCPUCODE (?!) ,but it seems that the FF (official 890GPA-UD3 2.1) has the same NCPUcode as the 990 FXA bios that has AM3+ support up to date ,while the beta BIOS-es of the 890GPA-UD3h 2.1 have a totally different one ?!
So what should it be done if the old 890GPA-UD3 2.1 FF has the same NCPUCODE as the newer 990FXA.
What is the module that has the AGESA ?! :slight_smile:

890GPA-UD3 2.1 Fgf



890GPA-UD3 2.1 FGc and a part of 990FXA


possible donor 890GPA-UD3 3.1 F5h

So there are this modules :

NCPUCode
GV3 -> Agesa CPU
Hole4 -> Agesa20
Hole5 -> Agesa30

Should the NCPUCode be replaced along the GV3.
Could the GV3 be the unlocking feature as it does not show up in the betas for the 2.1 ?!

I have no idea what could be replaced ,what module should be replaced for CPU compatibility :slight_smile:

You can easily verify, if both NCPUCODE modules are identic or not.
Do the following:
1. Extract both modules (name them different to prevent, that the files overwrite each other).
2. Open the first (anyone) module with HxD.
3. Hit the menu bar option “Analysis” > choose “File Comparison” > choose “Compare with” > navigate to the second module.

Warning: An update of the NCPUCODE is much more dangerous than an update of any PCI ROM module! I am not even sure, that you will be able to get it updated at all.

I have tried to extract different modules ,and they did come out , but NCPUCODE does not want to :slight_smile:

tried /cpucode Extract and /nc_cpucode Extract
With the last one i get a "Free address [someletters] of the BIOS" message ,the first one doesn t do anything

Then i ve tried what some guy was saying on a BIOS modding forum in the hope i will force the module out
"cbrom195 "Your Bios".bin /nc_cpucode ncpucode.bin"
The guy was saying that this is the command to replace the NCPUCODE, if you already have the module ,but it might also generate/extract the code as well.
Unfortunately nothing happened ,i have also made a dummy file from a text file to see what happens.So on the BIOS i was testing the command cbrom removed the NCPUCODE alltogether instead of replacing it with the dummy file ,but the original module was not saved anyhere :slight_smile:
Is there a way to extract the CPUCODE with the cbrom ,a trick or only the HEX Editor can do it ?!

Nevertheless i find this cbrom stuff entertaining ,to bad i have not discovered it sooner :slight_smile: I had some cheap boards over time that i could of played with. :slight_smile:
Maybe i ll replace some AHCI ROM-s too in this BIOS sooner or later :slight_smile:

So any trick with the NCPUCODE ,could it be other module that has the AM3+ FX recognition stuff ?! I see that the beta BIOS-es have 0 kilobytes in the NCPUCODE module and some guys used the 890GPA-UD3 FGf beta BIOS with X6 Phenom 2 CPU-s with issues only on overclocking capability.

Yes, read >this<.

Hehe

Exactly that one i was reading.I have taken the file and i have managed to extract this module from the 990FX BIOS (has 14 kiloes) ,from the beta of the 890GPA-UD3h 2.1 FGf (it has 1Kb and it s empty as i see with some hex editor ?!) and from the 890GPA-UD3h FF BIOS.The later one FF BIOS NCPU module seems to have same size as the 990FX one and looks identical to me :).
The one in the beta seems a dummy one ?!

Now i am looking and comparing the FGf beta BIOS of the 890GPA-UD3h 2.1 and the 890GPA-UD3h 3.1.
I see that in each of them there along the NCPUCODE there are 2 HOLE-s called AGESA with different suffixes though.
Could this hold the info.
Are this the AGESA CPU codes maybe.This 2 Agesa HOLE modules are not present in the FF BIOS of 2.1.
Maybe the NCPUCODE can be combined with other modules for CPU compatibility ?!

Fernando thanks once again for the feedback !

This are the HOLE files named AGESA in FGf for 890GPA-UD3 2.1 and F5 for version 3.1.
At extraction they all had the same name ,"tempdrive.rom"
The pictures show the HOLE-s nicely in the BIOS-es.

Took a look at them with HexEdit4 and in the FGf i found that one HOLE refers to AGESA 0…0.7.5 and the other Hole has a list of CPU-s
One of the other 2 Holes refers to AGESA 1.2.0.2 somewhere in there ,strangely there is also some path to a drive D in there .The other HOLOE refers to Orochi ,which is the code for FX first generation.

This are the NCPUCODES .FGf and FGc seem to have dummy NCPUCODES
As we can see the 990FXA F9 donor board has the exact same file as the 890GPA-UD3H 2.1 with old official (non AM3+ compatible) FF BIOS


NCPUCODE FGf http://www.sendspace.com/file/y5dnry

NCPUCODE 89GPAFF http://www.sendspace.com/file/r35tnr

NCPUCODE 99FXAF9 http://www.sendspace.com/file/mirqpo


At a first glance i would say i would need to replace the HOLE4 and Hole5 in the beta BIOS with the HOLES from 890GPA-UD3H 3.1 (that state the Orochi name)But which HOLE from the donor should be which in the FGf beta BIOS ?!
I will research more BIOS-es to find those 2 holes maybe newer .At least ,even if i only use the AGESA-s in the donor 890GPA-UD3H 3.1 i should still be able to use fully use first FX generation which is not bad (even if Vishera AGESA 1.5.0.0 would be the target).

Could it be that the NCPUDCODE is no more used in this BIOS-es or it s combined with the AGESA stuff or some content in other modules ?!
The 990FXA BIOS does not have AGESA file except the GV3 module that most probable is the unlocking core stuff.As the NCPUCODE seems to be identical to older one i would say they are putting the CPU code in some other module ?!

I took a look at another board and look at the BIOS download page http://ee.gigabyte.com/products/page/mb/…1/download/bios
As we can see there are 2 AGESA usually it seems ,in older mobos (as the AMD 990 chipset based seem to be using a different approach).
In this case BIOS F4 has 2 AGESA updated.
One AGESA is for AM3 and another for AM3+.Opening this bioses showed 2 Holes ,named 4 and 5 again with the name AGESA.They change size and suffixes with BIOS releases that state AGESA updates.

So in my mobo BIOS-es one Hole module is for AM3 and another for AM3+(FX).So theoretically i should replace only 1 ,the one with AM3+ ?!


Edit :

I think i have found a donor for the 2 AGESA modules (HOLE 4 and HOLE 5) .:slight_smile:
In my country they are still selling this one :http://www.gigabyte.com/products/product…x?pid=4305#bios
As we can see the BIOS-es are still AWARD and the latest one has Update CPU AGESA 1.5.0.0
Opened them and they have the modules.



Now the question is if by replacing them in the FGf of my board i will really have full AM3+ compatibility and if other modifications are needed (maybe replacing the NCPUCODE as well).

So what do you think Fernando ?!

In your case I am no supporter, but just an observer, because I don’t have any own experience in what you are trying to do.

I understand that ,but from your experience as we are talking about replacing the HOLE modules ,is there a need to modify something at hex level after replacing this modules ?!
When you are replacing the SATA modules is it needed to make other modifications except replacing the modules needed ?!
Having in mind the new modules are usually of different size…
Does the CBROM puts them properly and the adjust any checksums needed ?!

By the way it seems that HOLE5 module looks to have 200+ kiloes while after extraction it has much less.Is it extracted fully or the space shown in cbrom information is just the maximum reserved space ?!Or maybe it s extracted compressed ?!

When i replace them do i have to give them the exact names as they are shown in the cbrom info on the right or with the name they come out <tempdrive.rom>?!

It depends on the module. Since I have never tried to update any BIOS module regarding the CPU code, I cannot answer your question. If the related hardware of both modules (old and new) is exactly the same, there will be no need to change the hex code of the new module (e.g. by customizing the DeviceID entries).
By the way: After the replacement any modification of the module is useless.

What do you mean with "SATA modules"? The PCI ROM modules like the Intel RAID ROM can be replaced without any additional modification. They should be just renamed according the name, which is shown by the CBROM overview (command: cbrom <biosname.xyz> /D).

The tool CBROM automaticly will adjust everything during the integration resp. replacement process.
Nevertheless it is possible, that the user gets a checksum error message. If you get it during the modding procedure, you have tried to integrate a modified, checksum sensitive module (PCI ROM modules are not checksum sensitive at all!). If you get a checksum error while trying to flash the BIOS, the mainboard manfacturer has added an internal checksum control system to prevent any BIOS modification done by the user (Gigabyte has done it some years ago with Award/Phonix BIOSes).

I dont know it for sure.

I always gave them the name, which is shown by CBROM on the right side as file name.

Thanks for the reply.

I have played a little with the modules.
While HOLE4 gets extracted on the size that you get in CBROM info ,HOLE5 doesn t.

So every time i am extracting "HOLE5" ,the second AGESA module ,the biggest from both ,it always gets smaller.
In the BIOS CBROM shows it around 200K while the extracted stuff is lower ,20-40K.
Something seems wrong here.
Ignoring this i have extracted from the AMD780 chipset based board the AGESA modules and replaced them into the beta FGf…
They both get replaced ,but the HOLE5 stays small a extracted ,it seems that HOLE5 it s not extracted completely or if it s compressed at extraction it stays like this.

So practically successfully I can replace only HOLE4 :frowning:

After each insertion a message from CBROM says "<filename> doesn t compress" i presume it s normal?!



It was exactly what i meant to say with the SATA modules :).I have done exactly as instructed.

Thanks again for the feedback.

Here we can see the HOLE5 before and after replacement.The module was 40K before insertion.

I think i have accidentally did something here :slight_smile:

I took the hex editor and opened the DONOR 78LTUB34.F4 (the AMD 780 chipset based board bios)
Then i took the HOLE4 files that seem to extract properly and opened it in another page
Then opened the HOLE5 strange file as a space to copy stuff on it.

Once i had all opened i have started searching for the modules.

No wonder that at the very beginning of the donor BIOS file there seems to be the HOLE4 ,same letter and codes as in the HOLE4 CBROM extracted :slight_smile:

Then took the cursor scrolled down untill the FFFFFF started to appear.
Then after the FFFFFFFF guess what ,another AGESA stuff and CPU Names took the first line and underlined it until the FFFFFFF showed up pasted it over the HOLE5 page replacing all in there.
Saved the thing and voila the resulted file has 297K as the CBROM shows for the HOLE5 :slight_smile:
Could it be that i have extracted exactly what i needed ?! :slight_smile:


HOLE4 and HOLE5 would be the files to insert in the FGf BIOS.

Can anyone check if what i did is correct ?!

Although I don’t have any experience with that kind of BIOS modules, I will check it tomorrow.

Thanks Fernando ,i ll wait for results.

I tried to insert the file ,but definitely , even if it s the right content , it needs some more info inserted to be considered as a module.
Tried to insert it to see what happens (It s fun :slight_smile: ) CBROM popped up a message and refused (as i was expecting in fact ,real hex experience is needed ). :slight_smile:

Did you check the "Read only" option in the "Properties" of the ncpucode.bin file you tried to insert (see "Step 2" of the guide I gave you the link)?