Guide to ATI BIOS modding and flashing

randomizer

Champion
Moderator
ATI BIOS Modding and Flashing Guide

DISCLAIMER: Don't blame me or anyone else here if you screw up your card overclocking or flashing. It is unlikely, but still possible. Always make sure you backup your original BIOS. You WILL void your warranty by flashing the BIOS, so keeping the original on hand is a good idea in case you want to send the card back ;)

This guide deals with editing and flashing the VGA BIOS on ATI video cards. This guide does not incorporate how to find your card's max stable overclock. Go to cnumartyr's overclocking guide for that. If you have not made sure that your card is stable at the clocks you want to set then stop reading and go and do that! Setting unstable clocks in the VGA BIOS may cause your card to fail to output a signal and force you to do a "blind flash," which is not alot of fun.

The flashing section applies to all ATI video cards. The editing section applies to all ATI video cards except HD2xxx and HD3xxx cards as the software for editing the cards described in this article does not yet work with these cards. These cards will be added later as there are programs available that support just these cards.

Why would you want to edit/flash your card's BIOS? A good question. Sick of having a million programs start up when loading windows and hogging all your resources? Well this will do away with the need for programs that control your cards clock speeds etc, although you will need them to find stable clocks first. Also if you aren't running windows, this is the only way to overclock your card.

Useful sites for ATI BIOS files:

MVKTech
techPowerUp

Stuff used in this article to perform the BIOS edit/flash:

Radeon BIOS Tuner (RaBiT)
ATITool v0.27 Beta 3
ATIFlash
■ Bootable floppy disc, CD or USB flash drive - your choice but this guide will mention floppies throughout.
■ An ATI card (your kidding, right?)

Important notes before you start:

If there is an error during the flash and the program did write to the BIOS, DO NOT REBOOT!! Reflash the original BIOS and make sure the new one is not corrupted. This will save you the hassles of a blind flash from a corrupted BIOS. If the program gives an error, but no write occurred (it should say if there was no write), it is safe to reboot.

If you flash a BIOS with a different device ID (for example, you used a BIOS for a different manufacturer), you MUST reinstall your drivers. If you don't, you may experience image corruption or worse. Remember, as far as windows is concerned you have a different car in there.


Step 1 - Saving your BIOS to an editable .rom or .bin file:

First thing you need to do before you can get stuck into editing your BIOS is to actually save it as an editable file. Both ATITool and RaBiT can do this.

NOTE: It doesn't matter if its a .bin or .rom file.

* ATITool: Go to Settings -> Miscellaneous and click the "Save VGA Bios to file..." button (may be slightly different in other versions). Pick where you want the file to go (desktop is good and easy to find) and name it something like original.bin or default.bin or something like that so you know its your default BIOS file.

atitool01.jpg


* RaBiT: Go to Open -> Onboard EEPROM to load the current BIOS into the program. Then go Save As -> ROM BIOS file. Pick where you want the file to go (desktop is good and easy to find) and name it something like original.rom or default.rom or something like that so you know its your default BIOS file.

rabit05.jpg


Now Make a copy of the file just in case you accidently overwrite it.

NOTE: If you are flashing another card's BIOS or a custom BIOS and not editing one yourself, skip Step 2 and go to Step 3.


Step 2 - Editing your BIOS file:

Heres where you get your hands dirty. Open the BIOS file in RaBiT by going Open -> ROM BIOS file. Verify that the program has correctly read your card's chip model in the Device tab.

rabit01.jpg


For the next few sections on clock and memory settings, it is not recommended to enable the "Realtime" checkbox, as any changes you make will be automatically set straight away. I am unsure if this alters the BIOS in realtime or if it is similar to overclocking with ATITool and ATT, so I don't use it, but may in the future. If someone could clarify this that would be great. If you do try to enable it, you will get a nice warning box so dont worry if you accidently click it.

Now go to the Clocking tab and simply change the Core and Memory clocks to whatever you want, but make sure that you KNOW thats it's stable. Bump the VDDC (core voltage) if you need to, but make sure your card doesn't already run very hot. Note that some cards do not support changing the voltage even though the BIOS has a voltage table and the option to change the voltage is here. This is a hardware level issue and cannot be resolved by software. Some manufacturers are just too lazy to remove the voltage table :lol:

rabit02.jpg


Anyway, on to the Memory tab. Here you can play around with memory timings on the card. This is the easiest way to wreck your card (thus requiring a blind flash) and is NOT recommended for most people. You may or may not be able to change your memory bus and memory size, although these should already be fine and should not require changing (unless you want to make your card slower :heink:)

rabit03.jpg


Now for the Features tab. What is enabled here depends on your BIOS and what is enabled for your card. Here you can enable/disable DVI and TV outputs if you want to, as well as VIVO. You can also play around with a few TV settings. What is of more interest is the fan settings. Assuming your card has dynamic thermally controlled fan speeds, you can set here what you want the fan to spin up to at different temps. For people who find their card constantly getting hot, you may want to set the fan to spin faster at a lower temp to keep the card cooler.

rabit04.jpg


The logging tab is not of much interest to most people, it just tells you about a bunch of BIOS related information, but is handy for debugging purposes.

And the About tab... well if you want you can donate, but other than theres nothing much to see here.

Ok now save your new BIOS settings to a new file, make sure you don't overwrite your original.


Step 3 - Preparing to Flash:

Now this is the part that everyone needs to do. Make a bootable floppy and extract ATIFlash files to the disc. Put your original BIOS and your new BIOS files on the disc and write down the names if you need to. Now make a second bootable disc and put the files on that as well, but not the new BIOS file, just the flash program and the original BIOS file. On the second disc create a text file called autoexec.txt and put this line into it (ignoring the 1. at the front of every code box, the forum adds that automatically):

Code:
atiflash.exe -f -p 0 bios.rom -scansii
The file extension is usually .rom or .bin, it doesn't matter which one you use. Note that this is only for a single video card. If you have more than one video card, you must use a different adapter number. Only one BIOS can be flashed at a time, so if you want to have two emergency flash discs (one for each card), each one will need to specify a different adapter number. For a second video card, the code would be the following:

Code:
atiflash.exe -f -p 1 bios2.rom -scansii
Again, the filename can be anything. Instead of having two discs, you can simply edit this file in windows after you flash the first card, it's up to you. You may also be able to include both lines in one file (get the BIOS filenames right for each!), but that will unnecessarily flash a working card. Now rename the file to autoexec.bat, and you have yourself an emergency reflash disc!


Step 4 - Flashing:

Stick your floppy in and reboot. Go to the BIOS (of your motherboard not your card of course) and make sure you have your floppy as your first boot device. Reboot again and DOS will load from the floppy. Next, if you only have one video card, type in:

Code:
atiflash.exe -p 0 bios.rom -scansii
You will use the filename of your new BIOS. If you are using a BIOS from another card you may get errors, and you may need to add in the extra switches to force the program to flash with a different Device/Vendor ID etc. If you have this problem use the following:

Code:
atiflash.exe -f -p 0 bios.rom -scansii

If you have more than one card, it is a good idea to first find out which card is using which number (to avoid incorrect flashes), so use the following code:
Code:
atiflash.exe -i

That will display lots of information about the adapters and should include the numbers that nvFlash will identify them with (0/1/2...). When you have determined which card is which, you can use the previous code to flash that card, remembering to change -p 0 according to which card you are flashing. Remember that if your flash goes wrong that your autoexec.bat file must include the correct adapter number or it won't fix your problem.

Once the flash is complete, reboot the PC. If you get no signal or something doesn't look right, just boot from your reflash card and go back and edit your settings to make sure everything is ok. Open up RaBiT and/or ATITool and verify that your settings have taken place (most should have, but some like voltages and fan settings may not be possible to change).


If something goes wrong!!

If something goes wrong simply stick your emergency reflash disc in and reboot, making sure you boot from floppy (or whatever you used) first, and the batch file will automatically run ATIFlash and force it to flash the original BIOS regardless of the Device/Vendor ID etc. Give it a minute or two just to make sure it's done then reboot and you are good to go.

Alternatively, if you have a PCI (not PCIe) card lying around, you can use that to get your display back up and reflash your card. Make sure you specify the correct card ID, you dont want to flash your PCI card wrong too! If nothing shows up when connected to the PCI car, remove your main card and boot up. Change the "Init Display First" (or similar) to PCI rather than AGP/PCIe, then stick your main card back in.

As a final note, there are rare occassions when reflashing the BIOS as described in this guide doesn't fix a problem with no signal. If you have exhausted all options, head over to the forum at MVKTech for advice. Grounding the EEPROM is not covered in this guide (mainly because I don't have a clue how to do it :kaola:)
 

Evilonigiri

Splendid
Jun 8, 2007
4,381
0
22,780
First paragraph, you typed "you're" instead of "your". ;)

Looks pretty good, I'll take a closer look a little later. I vote this over the old one!

PM TGGA if you want to get it sticked.
 

tato999

Distinguished
Sep 2, 2006
92
0
18,630
Hello Its possible to Flash a gonewrong flash ati videocard with a integrated chip(G33 or something)

I tried to flasj my x1800gto but i dont know what i did but i doestn even post so if i have a mobo with a integrated video can i flash my video card...
 

randomizer

Champion
Moderator

Like I said, I copied and pasted. I actually copied the preview not with all the BBCode because it's different to here. Originally that was in bold red :lol:
 

randomizer

Champion
Moderator

Are you sure it doesn't even POST? It may be that there is just no signal from the card. Does it work when you don't have the card in the slot?
 

randomizer

Champion
Moderator
Just 0. So it would look like this:

atiflash.exe -p 0 bios.rom -scansii

Of course the filename and extension could be anything, but usually it's a .rom or .bin. Looks like I need to make this less ambiguous.
 

randomizer

Champion
Moderator
I've reworded it to hopefully make more sense. I just realised that I used the term "ID" in different contexts, which would make it confusing. Please let me know of any discrepencies or ambiguity, as I can't find them all myself (some things won't be ambiguous to me).
 

I'll gladly do it if some one donated a S3 to me :lol: ;)

@OP: Nice work.
 

randomizer

Champion
Moderator
Absolutely, provided your fan has RPM monitoring and the fan control was not disabled in the BIOS (like it was on my X1950 pro, hence the greyed-out options in the pics). Just set the Fan Duty Cycle to 100% for each of the thresholds in the Environment Monitor section of the Features tab. Just don't forget your ear plugs.
 
The editing section applies to all ATI video cards except HD2xxx and HD3xxx cards as the software for editing the cards described in this article does not yet work with these cards. These cards will be added later as there are programs available that support just these cards.
Just wanted to check...
This guide has been out for ~3 months so is there a new tool out? Also what about the 4xxx cards? You might want to edit/change that to reflect the new 4xxx cards.
 

randomizer

Champion
Moderator
Yes there are programs available for those cards now but they don't all support the same features as RaBiT. Unforunately there is unlikely to be an update for RaBiT for quite a while as the developer is dealing with personal issues right now. Looks like I have some work to do now though.
 

Zerb

Distinguished
Jul 24, 2008
7
0
18,510
This is a qustion actually. I was wondering why in RivaTuner and other such VC tools that I can't adjust my fan speeds. Example in RivaTuner you can click the little customize box to access the fan adjustments but I do not have that option. Yes I am useing the most up to date RivaTuner and yes I have the latest drivers for my vc which is an ATI 4870. Please help.
Zerb
 

montyuk

Distinguished
Oct 22, 2008
708
0
19,010
looks a nice guide, especially the bit about making a blind bootdisk for fixing things when it goes wrong. could have done with that a couple of days ago - nearly bricked my 4870, not a good day!!!

the radeon bios editor on the techpowerup site is pretty good and have a nice interface for changing fan speeds and that sort of thing, well worth a look.