Hello-
I hope this is the right forum. This is my first post here.
I am attempting to upgrade the BIOS on my motherboard to support the AMD FX-4130. Here are some of my current system specs:
current processor: AMD Sempron 140
motherboard: GA-MA790FXT-UD5P
current motherboard BIOS: http://download.gigabyte.ru/bios/mb_bios...d5p_f6.exe
possible donor BIOS: http://download.gigabyte.ru/bios/mb_bios...5.0_f1.exe
So far what I have tried is to modify the BIOS files myself. It seems like the tools recommended will not read the BIOS very well, namely AWBedit. I used AwardTool to extract the files from the BIOS file I downloaded. I isolated AGESACPU.rom from the F1 BIOS and attempted to insert it via AWBedit.
Although AWBedit gives me an error upon loading the file (Error etracting component! Possible BIOS Image corruption), I was able to remove the AGESACPU.rom file that was included with the F6 BIOS and replace it with the AGESACPU.rom file I extracted from the F1 BIOS.
I tried to use Q-Flash to flash the BIOS, but I got an "invalid file" error. I rebooted to Windows and tried to use @BIOS (I know). Seemed to work so I restarted my computer.
Splash screen shows up, but immediately goes to a new error "MAIN BIOS CHECKSUM ERROR" and starts to recover from the backup BIOS (F6). Computer restarts and everything is back to normal.
I don't know what, if anything, that I am doing wrong. Maybe it is not possible to do. The reason I got this particular processor was because I saw it on the CPU Support List for my board (http://www.gigabyte.com/support-download...x?pid=3005), and in my excitement, I failed to notice the final column, which read "Since BIOS Version" and "N/A". Maybe Gigabyte was working on a BIOS update but decided against it for whatever reason.
I was originally using the F8N BIOS with no issue (http://download.gigabyte.ru/bios/mb_bios...5p_f8n.exe) but the board has since reverted itself back to F6.
The FX 4150 does fit in the board just fine, but the computer will not POST. The CPU fan just kind of moves slightly, like an old engine trying to turn over.
Attached are a couple of screenshots, both from AIDA64; one of my current CPU and one of my motherboard.
CPU:
motherboard:
Any and all help would be greatly appreciated. I really hope someone with more knowledge can help me out, but I understand if it is simply not possible.
Thank you!
Mygnyl
edit: corrected processor type from 4150 to 4130
*Update: 8/29/2014*
Well I have come up with some new information/ideas since yesterday.
Here is what I have done so far:
Extracted AGESACPU.ROM file from F5A BIOS (http://www.gigabyte.com/products/product...=3833#bios)
I attempted to insert that into two versions of the BIOS for my motherboard F6 and F8N (http://www.gigabyte.com/products/product...=3005#bios)
Both of those attempts failed, with MAIN BIOS CHECKSUM ERROR
I decided to use CBROM and dig around. I think I am missing a couple of modules from the F5A BIOS:
Here is what CBROM reported for the F8N BIOS:
I think that I need the NCPUCODE.BIN file extracted from the F5A BIOS, and probably the AGESA00.BIN and AGESA01.BIN files as well. Actually, probably not because I don't see them as part of the F8N BIOS. However, I am unfamiliar with CBROM and can't figure out how to use the extract command.
So once I figure out how to extract the NCPUCODE.BIN file, I am going to insert them and run "CBROM file.name checksum" and hopefully that will fix the checksum error, plus add the support for the processor that I have.
Mygnyl
*Update: 8/30/2014*
Just a small update; thanks to ej52 for the hint.
I was able to insert the code into the F8N.F8N BIOS file successfully. I rebooted and confirmed. I tried the AMD FX 4130 CPU, but same problem. Maybe I am missing something. Originally I had thought I needed the AGESA file, maybe I do. I'm not giving up, yet. So, today I am going to try to get those files added to the BIOS ROM and if I experience no system issues with the modded ROM, then I will try the new CPU.
After I rebooted last night, the 'net didn't work as expected. I started getting SSL Cert errors after reboot. I slept on it, but when I woke up, I realized that the date/time was off. Works fine after changing that. I did revert back to F6 BIOS, because it is stable and I have no idea what I am doing.
Mygnyl
*Update: 8/21/2014*
Well I have made several more attempts, but nothing works yet. Every new BIOS I attempt to flash gives the checksum error. I have become more proficient with CBROM. The process I used to manually extract the module is as follows:
1. Make a copy of the bios.file you are using
2. Use CBROM to release the module
Example: cbrom /nc_cpucode release
If successful, CBROM should display something similar to this: Free address [ADDRESS] of the BIOS
2. Open bios.file with your hex editor
3. Go to [ADDRESS] as indicated by CBROM
4. Basic copy and paste to new file, save extracted file.
So, after the module is ready, CBROM can be used to insert the module. I am not sure if the old module will need to be released first, but I think it does. The process I used to insert the modules is as follows:
1. Use CBROM to release the desired module
Example: cbrom /nc_cpucode release
2. Use CBROM to insert the desired module
Example: cbrom /nc_cpucode checksum
At least, I think that is the process. I am going to test the theory and remove a module manually, then add it back in, and check the MD5. It should be the same, I think. From what I understand, CBROM automatically adjusts the checksum, which is 8-bit and should equal 0. I have not been able to verify this myself. Maybe I need a better hex editor. Most of what I have learned on CBROM is through reading about modding BIOS to change the logo or add RAID support for certain drives.
I did notice that AGESACPU.ROM is the GV3 module, so CBROM can be used to manipulate that as well. Same steps as above, but instead of /nc_cpucode, use /GV3.
This is all really confusing. There are many versions of CBROM. Some of them work within Windows, some do not. So I set up a DOS virtual machine so I could use some of those versions of CBROM. I think there are 4 versions that work only with Windows, and 4 versions that only work within DOS. I should probably make the distinction in my tools folder. Also, some versions of CBROM may not read the BIOS correctly. I have to use CBROM196 to successfully run: cbrom /nc_cpucode NCPUCODE.BIN checksum .
In order to get the tools to the DOS VM, I made virtual floppy disk images. However, I ran into some problems when copying the files over. Sometimes a file would copy, but would but much smaller than indicated on the floppy. I think this is because of the 00/FF lines in the BIOS. So, maybe DOS removes those. I tried the copy command with a number of different modifiers, but nothing work. I ended up using an old DOS program to split the BIOS and unsplit it on the DOS VM.
So far, I have made about a dozen different versions of the modified BIOS. There is so much that I have almost lost track of it all. I still do, however, have hope that I may be able to modify the BIOS correctly. I was able to find and download the AMD microcode for AMD15h processors. I think that is what I need. Maybe I will just try to use the /cpucode command in CBROM to add it. But, I will need to find the CPUCODE.EXE file in order to do that.
But is there really a point to all of this? The FSB of this motherboard is slower than the FX-4130, so there is one bottleneck right from the start; there are probably others as well.
I did find out that what I am doing is actually possible. There are a few other motherboards out there that have BIOS updates which make a select number of FX processors work in the AM3 boards. It's too bad none of those are AWARD BIOS. Mostly AMI.
Mygnyl
*Update 9/1/2014*
I just keep finding out more and more.
Regarding CBROM:
Some of the stuff I wrote above may be incorrect. Still not very sure, but I do know now that it is relatively easy to extract and insert modules using CBROMv1.98. I think the main command structure is similar to this:
To insert module: cbrom /
To release module: cbrom / release
To extract module: cbrom / extract -> choose file name (which is easy because CBROM tells you what to save it as)
I have tested all three of the above commands with:
/GV3 (AGESACPU.ROM)
/minit (MEMINIT.BIN)
/htinit (HT.DLL)
/2pe32 (HT32GATE.BIN)
I am currently using the following files (mobo/bios):
Possible donor: GA-970A-D3 / F8 / F12
Current mobo: GA-MA790FXT-UD5P / F6(backup) / F8N(mod)
The reason I chose the GA-970A-D3 because this board required a BIOS update in order to use the FX CPUs. This first happened in BIOS F6. However, the FX 4130 was not able to run on this board until the F8 BIOS was released. I also downloaded the F12 BIOS for comparison.
My original thought was that I needed just needed to insert the AGESACPU.ROM file from the donor BIOS to my BIOS, but I was wrong. I upgraded my HEX editor so that I could search and use file comparison. I am also using Award SLIC Mod v1.37 for general extracting, since it uses CBROM. Here is what I did:
Used awdtool.exe to extract all files from the BIOS ROM
Used hex editor to search in all the files extracted for anything to give me a hint (AMD, FX, AGESA, A!GESA)
I found references to AGESA in MEMINIT.BIN
I found F8n BIOS AGESA version: 3.7.1.0
I found F8/F12 BIOS AGESA version: 3.7.1.2
I also found something interesting (at least I think it is): The beginning of the F8/F12 BIOS files reference "$AMD" and the F8n BIOS has "$ATI....RD798M.." for the first line. So the R&D team makes the beta BIOS files I guess. Also, the F8 and F12 BIOS ROMs are 4Mb in size, whereas the F8n BIOS is 1Mb. However, the first 2Mb of the F8 and F12 is blank, with ff for each bit.
The weirdest thing that I found was the fact that the extracted NCPUCODE.BIN file from all three BIOS ROMs is the same. Exactly the same. I know there is a /cpucode command for CBROM, but I have yet to find the needed cpucode.exe file. Even awdtool.exe shows the same four microcode updates, although I don't know if they are really updates or not. I haven't found that much out about it yet.
So, I used CBROM to release the GV3 module (AGESACPU.ROM) and I inserted the extracted AGEACPU.ROM (v3.7.1.2) from the F8 BIOS into the F8n BIOS. CBROM wrote the file in, but also wrote in 3 other files: MEMINIT.BIN, HT.DLL, and HT32GATE.BIN. I extracted the files and inspected them. Sure enough, MEMINIT.BIN still referenced AGESA 3.7.1.0 . I figured the files needed replaced, so I added those in from the F8 BIOS using /minit, /htinit, and /2pe32 . I had read that CBROM works only from the top down, so I removed the files from the bottom up, then inserted from the top down. I checked the file in awdtool.exe and no checksum errors. I flashed the file with no issue. Rebooted, but checksum error again.
I need a new plan. What I am going to try this time is to remove all of the modules and then insert each one individually, in the original order. Well, not all of the modules, just modules 18-23. Hopefully this will work. If not...
Mygnyl
I hope this is the right forum. This is my first post here.
I am attempting to upgrade the BIOS on my motherboard to support the AMD FX-4130. Here are some of my current system specs:
current processor: AMD Sempron 140
motherboard: GA-MA790FXT-UD5P
current motherboard BIOS: http://download.gigabyte.ru/bios/mb_bios...d5p_f6.exe
possible donor BIOS: http://download.gigabyte.ru/bios/mb_bios...5.0_f1.exe
So far what I have tried is to modify the BIOS files myself. It seems like the tools recommended will not read the BIOS very well, namely AWBedit. I used AwardTool to extract the files from the BIOS file I downloaded. I isolated AGESACPU.rom from the F1 BIOS and attempted to insert it via AWBedit.
Although AWBedit gives me an error upon loading the file (Error etracting component! Possible BIOS Image corruption), I was able to remove the AGESACPU.rom file that was included with the F6 BIOS and replace it with the AGESACPU.rom file I extracted from the F1 BIOS.
I tried to use Q-Flash to flash the BIOS, but I got an "invalid file" error. I rebooted to Windows and tried to use @BIOS (I know). Seemed to work so I restarted my computer.
Splash screen shows up, but immediately goes to a new error "MAIN BIOS CHECKSUM ERROR" and starts to recover from the backup BIOS (F6). Computer restarts and everything is back to normal.
I don't know what, if anything, that I am doing wrong. Maybe it is not possible to do. The reason I got this particular processor was because I saw it on the CPU Support List for my board (http://www.gigabyte.com/support-download...x?pid=3005), and in my excitement, I failed to notice the final column, which read "Since BIOS Version" and "N/A". Maybe Gigabyte was working on a BIOS update but decided against it for whatever reason.
I was originally using the F8N BIOS with no issue (http://download.gigabyte.ru/bios/mb_bios...5p_f8n.exe) but the board has since reverted itself back to F6.
The FX 4150 does fit in the board just fine, but the computer will not POST. The CPU fan just kind of moves slightly, like an old engine trying to turn over.
Attached are a couple of screenshots, both from AIDA64; one of my current CPU and one of my motherboard.
CPU:
motherboard:
Any and all help would be greatly appreciated. I really hope someone with more knowledge can help me out, but I understand if it is simply not possible.
Thank you!
Mygnyl
edit: corrected processor type from 4150 to 4130
*Update: 8/29/2014*
Well I have come up with some new information/ideas since yesterday.
Here is what I have done so far:
Extracted AGESACPU.ROM file from F5A BIOS (http://www.gigabyte.com/products/product...=3833#bios)
I attempted to insert that into two versions of the BIOS for my motherboard F6 and F8N (http://www.gigabyte.com/products/product...=3005#bios)
Both of those attempts failed, with MAIN BIOS CHECKSUM ERROR
I decided to use CBROM and dig around. I think I am missing a couple of modules from the F5A BIOS:
Here is what CBROM reported for the F8N BIOS:
I think that I need the NCPUCODE.BIN file extracted from the F5A BIOS, and probably the AGESA00.BIN and AGESA01.BIN files as well. Actually, probably not because I don't see them as part of the F8N BIOS. However, I am unfamiliar with CBROM and can't figure out how to use the extract command.
So once I figure out how to extract the NCPUCODE.BIN file, I am going to insert them and run "CBROM file.name checksum" and hopefully that will fix the checksum error, plus add the support for the processor that I have.
Mygnyl
*Update: 8/30/2014*
Just a small update; thanks to ej52 for the hint.
I was able to insert the code into the F8N.F8N BIOS file successfully. I rebooted and confirmed. I tried the AMD FX 4130 CPU, but same problem. Maybe I am missing something. Originally I had thought I needed the AGESA file, maybe I do. I'm not giving up, yet. So, today I am going to try to get those files added to the BIOS ROM and if I experience no system issues with the modded ROM, then I will try the new CPU.
After I rebooted last night, the 'net didn't work as expected. I started getting SSL Cert errors after reboot. I slept on it, but when I woke up, I realized that the date/time was off. Works fine after changing that. I did revert back to F6 BIOS, because it is stable and I have no idea what I am doing.
Mygnyl
*Update: 8/21/2014*
Well I have made several more attempts, but nothing works yet. Every new BIOS I attempt to flash gives the checksum error. I have become more proficient with CBROM. The process I used to manually extract the module is as follows:
1. Make a copy of the bios.file you are using
2. Use CBROM to release the module
Example: cbrom
If successful, CBROM should display something similar to this: Free address [ADDRESS] of the BIOS
2. Open bios.file with your hex editor
3. Go to [ADDRESS] as indicated by CBROM
4. Basic copy and paste to new file, save extracted file.
So, after the module is ready, CBROM can be used to insert the module. I am not sure if the old module will need to be released first, but I think it does. The process I used to insert the modules is as follows:
1. Use CBROM to release the desired module
Example: cbrom
2. Use CBROM to insert the desired module
Example: cbrom
At least, I think that is the process. I am going to test the theory and remove a module manually, then add it back in, and check the MD5. It should be the same, I think. From what I understand, CBROM automatically adjusts the checksum, which is 8-bit and should equal 0. I have not been able to verify this myself. Maybe I need a better hex editor. Most of what I have learned on CBROM is through reading about modding BIOS to change the logo or add RAID support for certain drives.
I did notice that AGESACPU.ROM is the GV3 module, so CBROM can be used to manipulate that as well. Same steps as above, but instead of /nc_cpucode, use /GV3.
This is all really confusing. There are many versions of CBROM. Some of them work within Windows, some do not. So I set up a DOS virtual machine so I could use some of those versions of CBROM. I think there are 4 versions that work only with Windows, and 4 versions that only work within DOS. I should probably make the distinction in my tools folder. Also, some versions of CBROM may not read the BIOS correctly. I have to use CBROM196 to successfully run: cbrom
In order to get the tools to the DOS VM, I made virtual floppy disk images. However, I ran into some problems when copying the files over. Sometimes a file would copy, but would but much smaller than indicated on the floppy. I think this is because of the 00/FF lines in the BIOS. So, maybe DOS removes those. I tried the copy command with a number of different modifiers, but nothing work. I ended up using an old DOS program to split the BIOS and unsplit it on the DOS VM.
So far, I have made about a dozen different versions of the modified BIOS. There is so much that I have almost lost track of it all. I still do, however, have hope that I may be able to modify the BIOS correctly. I was able to find and download the AMD microcode for AMD15h processors. I think that is what I need. Maybe I will just try to use the /cpucode command in CBROM to add it. But, I will need to find the CPUCODE.EXE file in order to do that.
But is there really a point to all of this? The FSB of this motherboard is slower than the FX-4130, so there is one bottleneck right from the start; there are probably others as well.
I did find out that what I am doing is actually possible. There are a few other motherboards out there that have BIOS updates which make a select number of FX processors work in the AM3 boards. It's too bad none of those are AWARD BIOS. Mostly AMI.
Mygnyl
*Update 9/1/2014*
I just keep finding out more and more.
Regarding CBROM:
Some of the stuff I wrote above may be incorrect. Still not very sure, but I do know now that it is relatively easy to extract and insert modules using CBROMv1.98. I think the main command structure is similar to this:
To insert module: cbrom
To release module: cbrom
To extract module: cbrom
I have tested all three of the above commands with:
/GV3 (AGESACPU.ROM)
/minit (MEMINIT.BIN)
/htinit (HT.DLL)
/2pe32 (HT32GATE.BIN)
I am currently using the following files (mobo/bios):
Possible donor: GA-970A-D3 / F8 / F12
Current mobo: GA-MA790FXT-UD5P / F6(backup) / F8N(mod)
The reason I chose the GA-970A-D3 because this board required a BIOS update in order to use the FX CPUs. This first happened in BIOS F6. However, the FX 4130 was not able to run on this board until the F8 BIOS was released. I also downloaded the F12 BIOS for comparison.
My original thought was that I needed just needed to insert the AGESACPU.ROM file from the donor BIOS to my BIOS, but I was wrong. I upgraded my HEX editor so that I could search and use file comparison. I am also using Award SLIC Mod v1.37 for general extracting, since it uses CBROM. Here is what I did:
Used awdtool.exe to extract all files from the BIOS ROM
Used hex editor to search in all the files extracted for anything to give me a hint (AMD, FX, AGESA, A!GESA)
I found references to AGESA in MEMINIT.BIN
I found F8n BIOS AGESA version: 3.7.1.0
I found F8/F12 BIOS AGESA version: 3.7.1.2
I also found something interesting (at least I think it is): The beginning of the F8/F12 BIOS files reference "$AMD" and the F8n BIOS has "$ATI....RD798M.." for the first line. So the R&D team makes the beta BIOS files I guess. Also, the F8 and F12 BIOS ROMs are 4Mb in size, whereas the F8n BIOS is 1Mb. However, the first 2Mb of the F8 and F12 is blank, with ff for each bit.
The weirdest thing that I found was the fact that the extracted NCPUCODE.BIN file from all three BIOS ROMs is the same. Exactly the same. I know there is a /cpucode command for CBROM, but I have yet to find the needed cpucode.exe file. Even awdtool.exe shows the same four microcode updates, although I don't know if they are really updates or not. I haven't found that much out about it yet.
So, I used CBROM to release the GV3 module (AGESACPU.ROM) and I inserted the extracted AGEACPU.ROM (v3.7.1.2) from the F8 BIOS into the F8n BIOS. CBROM wrote the file in, but also wrote in 3 other files: MEMINIT.BIN, HT.DLL, and HT32GATE.BIN. I extracted the files and inspected them. Sure enough, MEMINIT.BIN still referenced AGESA 3.7.1.0 . I figured the files needed replaced, so I added those in from the F8 BIOS using /minit, /htinit, and /2pe32 . I had read that CBROM works only from the top down, so I removed the files from the bottom up, then inserted from the top down. I checked the file in awdtool.exe and no checksum errors. I flashed the file with no issue. Rebooted, but checksum error again.
I need a new plan. What I am going to try this time is to remove all of the modules and then insert each one individually, in the original order. Well, not all of the modules, just modules 18-23. Hopefully this will work. If not...
Mygnyl