|Aug 21, 2008, 11:39 AM||#1|
Join Date: Mar 2008
Posts: 583 (0.31/day)
Thanked 361 Times in 148 Posts
Tutorial on how to use RBE
Table of contents
0 - Table of contents
1 - Introduction - What does RBE do?
2 - Acquiring the BIOS
2.1 - Using ATIFlash
2.2 - Using WinFlash
2.3 - Using GPU-Z (most recommended)
2.4 - Using RBE/WinFlash
2.5 - Using other programs
3 - Using RBE
3.1 - Opening the BIOS file
3.2 - First steps - The information tab
3.3 - Diggin' deeper - The clock settings tab
3.4 - Something relaxing - The fan settings tab
3.4.1 - The LM63
3.4.2 - Built-in fan controller
3.4.3 - A derivative of the internal controller
3.4.4 - The ADT7473
3.5 - The additional features tab
3.5.1 - Overdrive hacking - Method one
3.5.2 - Overdrive hacking - Method two
3.5.3 - BIOS update features
3.6 - The CCC profile editor
3.7 - Other things about RBE
3.8 - Saving the modified BIOS file
4 - Flashing the BIOS onto the card
4.1 - Using WinFlash
4.2 - Using ATIFlash
4.3 - Using RBE/WinFlash
Introduction - What does RBE do?
RBE is a handy tool to modify several interesting parameters in ATI BIOS files. It focuses on fan and clock settings as these are the most important things to most users. BIOS modification is an alternative to using memory resident tweaking utilities such as RivaTuner, ATI Tray Tools or ATITool. It has several advantages such as
However, it has some disadvantages:
RBE can not only modify the settings inside the BIOS, but it also balances out the BIOS' checksum. ATI's flashing utilities (see section 4) use this checksum to compare BIOS images. If a BIOS file has a different checksum than what is inside its contents, it won't let you flash the file or you have to force the flash. This is for security reasons: ATI tries to make sure only proper BIOSes can be flashed onto the cards that way.
A BIOS tweaked using RBE will always have a proper checksum - there is no reason for the flashing program to complain about not matching checksums.
Acquiring the BIOS
In order to use RBE for any modification on the BIOS, you first have to save your BIOS off your video card. What you are getting there is a BIOS image file having a file name extension ".bin" or ".rom". The contents of .bin and .rom files are identical, it is just a naming convention.
Whatever method you used to acquire your BIOS, assume you're back in Windows now having the BIOS file(s) somewhere. The file should be about 64 kB or 128 kB in size. The first thing you should do is save a copy of that original BIOS to a secure place. You should also keep a copy of that file on your bootable device (see section 2). Have one copy of the BIOS file named something like "Sapphire 4870 - Copy for RBE.rom" so you always know this is the file you play around with. However, you don't need to change that file - you can save the modified file using a completely different name (see section 3.8), your choice.
Opening the BIOS file
There are several methods to open the file:
First steps - The information tab
You can see a screenshot of RBE after a file was loaded.
Diggin' deeper - The clock settings tab
This tab will require some thinking. First, there is a help link on the bottom right of the program. Click on it to view additional information.
The first thing you need to know is that you are tinkering directly with the PowerPlay settings here. So to use this right, you have to understand how PowerPlay works. You can change GPU clocks, RAM clocks and voltage for any of the clock infos the BIOS contains. The number of clock settings may vary. In this screenshot, there is a 4870. This card usually has 10 clock infos, 00 through 09.
At the bottom left of the window, there is a list of all voltages your card supports. You have to understand that the voltages on the card are hard-wired. There is a given number of voltages the card can select from. Only these voltages can be applied. You can use this list to figure out which voltages your card is capable of. The voltages your card is actually capable of themselves can not be changed.
The number of voltage entries may vary. There are BIOSes with only four voltage settings and also BIOSes with up to 26 different settings. If there is nothing displayed at all, your card has only one fixed voltage that is applied in every state of the card.
If entering a voltage to the PowerPlay containers above, make sure to use a voltage that is listed in the table. If you use a voltage that is not listed there, various things may happen. Consider for example there is some voltage of, say "1.023" listed in the table and the next higher voltage may be "1.084" volts. Entering a voltage of "1.025" may result is a voltage of 1.023 volts. So the voltage is aligned to the best matching voltage.
There are also cases where the maximum supported voltage value is, say "1.350" volts. Entering a voltage of "1.500" volts may cause the computer to crash, so be sure to use the values that are listed in the table only. However, there are stock BIOSes that use PowerPlay values for the voltages that deviate from the values in the table, so in most cases, not entering the exact matching value won't be too bad.
Note: When it comes to modding 5xx0-BIOSes (and possibly BIOSes of upcoming cards), changing the voltage requires more advanced BIOS work. The voltage table is empty for these cards (so this is totally normal for these cards) and changing the voltage in the PowerPlay table will possibly cause the computer to crash.
You can enter your desired clocks in the table but will have to leave the voltages in the PowerPlay table alone. Instead, you will need to use voltage register programming. See below and also this tutorial by scamps.
At the bottom right of the window, you see a box called "PowerPlay states structure". This box will help you a lot understanding how your BIOS works. Just click and hold the first entry of that list box. In this example (and for the very most BIOSes), this is state "0 - Boot". Each such state has up to three different clock info modes. The numbers of those modes are displayed right to the list box.
As you hold your mouse button, you can see that the background color of the clock info 00 boxes on the top of the tab changes. The boot state mostly, but not for all BIOSes, has only one clock info mode, mostly mode 00. Click and hold the State 1 now. In this example, it says "Power saving for notebooks..." and so on. This may differ for your BIOS. Clicking and holding state 1 in this example yields that state 1 corresponds to clockinfo 01, 02 and 03. Scroll the list box over to the right now. You may see something like "high performance" and/or "optimal performance". So, this state seems to be the mode the card usually is switched to after booting. The state has three modes, as you see. One is denoted as "low", one as "medium" and one as "high". This is a rule of thumb that might help you: Maybe the card finds itself in the "low" mode when being at the window's desktop (Windows XP). Windows Vista's aero desktop might require the card to switch to "medium". After starting a 3D application like a computer game, the card should switch to high. As you can see, for this state the "high" mode (clock info 3) has higher clock rates. To overclock the card for games, it should be a good idea to increase the settings here. For power saving in 2D mode, decrease the settings in clock info 01 in this example.
Please note that the RAM clocks should be the same for all clock infos as on the one hand, decreasing this doesn't save a lot of power and on the other hand, switching the mode (and switching the RAM clocks if they aren't all the same) will cause an annoying flickering of the screen. You understand now that ATI themselves programmed the RAM clocks to all the same values for a reason.
However, at least the GDDR5 RAM the 4870 and some future cards use is reported to consume more power, though. So it's up to you: Save power and lower the clocks or leave the clocks at high rates, waste some power but be free of any flickering on frequency switching.
Moving on in this example, state 2 (clock info 4, 5 and 6) is used for UVD, the video playback accelerator of ATI cards. You should leave those settings as they are. These are the clocks that the UVD section of the chip is running at. Usually (and also for this example, as you can see), those three clock infos are programmed the exact same values. If for some reason you decide to change those values, it might be a good idea to change those three clock infos to all the same values, at least.
State 3 (clock info 7, 8 and 9) is again high and optimal performance, as you can see scrolling the list box to the right again. So far, it is impossible to distinguish whether state 1 or state 3 is used for normal operation of the card. Just set the same settings for state 3 as for state 1 in this example.
Again, as this is very important: All this is flexible and indeed varies from card to card. So, there can't be a unique overclocking tutorial. You will have to understand how your particular card works if you want to change the PowerPlay settings.
Setting higher voltages might not work. RBE will write the settings you enter into the BIOS, but if the video card hardware doesn't support increasing (or decreasing, if you entered lower voltages) voltages so much - or not at all - RBE can't help it. A hardware volt mod (like the famous pencil mod, use google on that) is inevitable, then.
At least for cards equipped with a Volterra VT11xx voltage controller chip, there's another way: Tweaking the voltage registers directly. On bootup, the BIOS programs the chip i.e. writes values into its registers. So, those values are stored within the BIOS file and thus, can be changed using RBE. RBE automatically detects if this voltage tweak is possible. If so, the button "view/change voltage registers..." in the lower left corner of the clock settings tab (near the voltage table) is being enabled. Clicking it will open a window where you can enter new values for the four registers 0x15 through 0x18:
Here's some notes on that:
The "Locked" checkbox is a legacy from 3xx0 cards. It was used there for ensuring several clock infos were written the same values. Maybe it will be dropped in one of the future RBE versions to come.
Finally, this is the only way to overclock you card beyond the Overdrive limit by now. This is why understanding the PowerPlay system is so important: So that you can use this!
Please note one last thing: In order to make the clock settings kick in, you have to switch off Overdrive, preferably before you flash the BIOS!
Something relaxing - The fan settings tab
The first thing to understand is that RBE will display one of four different boxes here, depending on what fan controller your card uses. RBE will choose the right fan controller type automatically.
It's not so clear what cards use what controller. There is a pattern, but you'll never know what ideas video card vendors come up with. One thing is certain: If you are using a video card with a non-reference design with a non-reference cooler, it is most likely that this cooler is not controlled by the card's fan controller chip any more. Many of those coolers aren't controlled at all or control themselves using an internal heat sensor. Those cards will contain a fan controller chip anyway, because the controller is integrated into the GPU, mostly. However, changing settings here won't influence the cooler's behaviour, of course. Spoken for myself, I care of buying reference design cards only. Here I'm sure to have a not so bad cooler mostly which can be controlled by RBE.
Okay, back to the four fan control boxes mentioned. Let's discuss them one after the other:
The additional features tab
RBE offers you some more. Maybe you don't want to tinker with the PowerPlay settings to overclock your card (even if it's easier than you think, trust me). Overclocking using the Overdrive functionality of the Catalyst Control Center (CCC) is comfortable but has some disadvantages:
At least for the last disadvantage RBE offers a solution. At the beginning of this tutorial there was a digital signature mentioned protecting several settings inside the BIOS. This is mostly for protecting the Overdrive limit. You know, ATI makes a reference design of the card. Vendors can build cards referring to that design or designing a new layout, maybe with more powerful voltage tranformers and cooling.
As such, they maybe want to overclock the card more in order to have an advantage over other vendors when it comes to selling cards for profitable prices. To protect the customers from vendors playing around too much with that, ATI invented a mechanism of protecting the clocks.
The vendor builds a card and then needs a BIOS for it, of course. He makes one using a tool from ATI for that, but the BIOS built this way isn't usable yet. It needs to be sent to ATI. Guys there look into the clocks and some other things and if everything is as they like it, they add a digital signature to the BIOS and send it back to the vendor. This signature locks the default and Overdrive clock rates and therefore, vendors can't make extremely high overclocked BIOSes without ATI knowing and approving (and maybe being payed for).
RBE now offers two methods on bypassing this:
On loading a BIOS file, RBE automatically determines if there is data for using method one. If so, it offers them in this additional features tab:
In order to use the method one Overdrive hack, you can also load and save decent signature files. Consider you are using a 4850. Your maximum Overdrive headroom might be 700 MHz for the GPU. The maximum Overdrive increase signature that is saved in RBE might be 720 MHz. Now you found a BIOS that's maximum Overdrive is 750 MHz. So you can load this BIOS into RBE and save its Overdrive signature off that BIOS to your hard disk using the "Save..." button right at top of the actual settings frame. Specify a location and a file name in the window that just pops up to save the BIOS' signature. After that, you can load your card's original BIOS and, afterwards, load the signature you just saved using the "Load..." button. As you can see, the combo box shows "Custom" now and the Overdrive settings of your signature are listed in the "Increased values" frame. Saving your BIOS using these signature values will get the job done. Flash this BIOS to your card, reboot and use Overdrive for overclocking up to 750 MHz!
You can distribute the signature you extracted for other users to benefit from it here. You can also browse this thread for interesting signatures for you to use.
There are even more things for you:
Several 4870 cards have been reported to have a "spin up bug", as I call it. This bug causes the fan to spin up to almost 100% at certain conditions, stay there for a couple of seconds and drop down again, no temperature issue given. RBE automatically determines if the loaded BIOS contains the bug and offers to fix it. If this option is greyed out for you, your BIOS doesn't sufffer from that bug.
For several BIOSes, RBE can unlock superior PowerPlay functionality, saving even more power in low load modes. Additionally, it can decrease several voltages to more recommended values having the superior PowerPlay applied. It simply sets some voltages in the clock settings tab to lower values, you can convince yourself what's going on here by loading a BIOS modified that way into RBE again.
Again, RBE determines by itself if the option can be offered and if not, the option is greyed out.
The CCC profile editor
This has nothing to do with BIOS modding. It was a seperate program by me but I decided to integrate it into RBE. You can enter the CCC profile editor by clicking on "Profile editor..." at the bottom of the program at any time.
The CCC profile editor can be used to access several "hidden" features of the Catalyst Control Center profile system.
As you can see, it supports up to four video cards. Just click on "Load profile..." at the bottom left of the window. The open file dialog will automatically browse to the location the ATI CCC saves its profiles to by default. Open a profile you made by yourself or just the standard profile named "Profiles.xml". You can enter values for each card you have seperately now.
The most interesting slots seem to be "Fan speed (percent)" and the clock rates, of course. First of all, change "Fan speed algorithm" to "Manual" in order to make your changed fan speed work. Enter any fan duty you like, then. As already mentioned in section 3.5, when enabling Overdrive in the CCC, fan control doesn't work any more. With the CCC profile editor, you can at least set a fan duty you like.
The clock settings can be changed also. Please note that they are given in 10 KHz units, not MHz. However, these values can't exceed the Overdrive limit.
Other things about RBE
Whenever you get into struggle, see if there is one of the blue linked hints inside the program on the problematic topic you're into. Click and read it carefully. For any further questions, read the FAQ (frequently asked questions) first. Many questions I usually get are answered there already. To access it, simply click on the "FAQ..." button at the bottom of the program at any time.
You can easily check if there is a more recent version of RBE available (besides checking at TechPowerUp.com, where you are always welcome). Just click "Check for new RBE version..." at the bottom of the program at any time. If there is a newer version, RBE offers to open the download page directly. Please note: No information about your system or anything similar is uploaded when you click that button. It just downloads a file containing the newest version information.
To acquire the latest version of WinFlash, click "Get WinFlash!" at the bottom of the program at any time.
In the program's menu bar, just click "Tutorial on how to use RBE (websource)..." to quickly find this tutorial, by the way.
To access information on the program (and also a nice animated effect with Ruby's beautiful mouth), click "About..." at the bottom of the program at any time:
You can see a list of people who helped me developing and mostly testing the program. Thanks to all of you again!
You can also click on my eMail address if you have any questions that were not answered in this tutorial. Preferably, click on the TechPowerUp logo in RBE's main window to access the forum. You can ask questions there or read answers to questions asked before, maybe even matching your question.
You can also click on "Make a donation" to support RBE and enabling me to buy video cards for developing and testing RBE in the future.
Saving the modified BIOS file
Click on "Save BIOS..." at the bottom left of the program or press Alt+S or click "File... Save BIOS..." in the menu bar to save the BIOS. A save dialog will come up suggesting a name constructed out of several clock settings. You can accept this name or enter a new one, your choice. After pressing "save", the BIOS file is saved and ready to be flashed onto the video card.
Flashing the BIOS onto the card
You have three options here:
Using a bootable device, DOS and ATIFlash is recommended for safety reasons. Remember: If Windows crashes at the time WinFlash saves the BIOS onto the card, your BIOS is corrupted and your card will most likely show no image on the screen any more on the next boot up or even will not post any more. The card will not be damaged forever, but you will need a PCI card (to see something on the screen) to rebuild the card's BIOS in that case.
Before you decide which flashing procedure to use, be aware of one point that has come to user's attention more recently: Some cards/BIOSes need to be unlocked first. That is, there is a lock on the video card so the BIOS on it can not be overwritten accidentally. ATIFlash and WinFlash offer an option to disable this lock beforehands. To do so, you will need to figure out which device you would like to unlock (e.g. 0 in most cases, read below and/or section 2). After you know that, both ATIFlash and WinFlash need to be run using the command line parameter -unlockrom [device number], e.g. "ATIFlash -unlockrom 0". After that you can access the BIOS for writing ad continue the flash as described below. If you would like, you can re-lock the BIOS after all your flashing is done by using the command line parameter -lockrom.
There's a thread in our forum on this topic, see here.
If you really want to use WinFlash, just run the program, load the BIOS file using "Load image" (select the proper video card in case you have more than one of them) and start the flashing procedure by clicking "Program". After about 20 to 30 seconds, the program will prompt a successful flash and asks to reboot the machine. Do so only after flashing all cards you have, in case this is more than one! When you have a CrossFire setup with two identical cards it is strongly recommended to remove one card so you know exactly which card you are flashing to. If for some reason WinFlash fails with an error during flashing, do not reboot your system. Try to redo the flash several times until it works.
After rebooting Windows, your changed settings have applied. If the card is not recognized by the driver anymore (maybe, because you changed something protected by the digital signature, see section 3.5), you have to make a bootable device and flash your original BIOS back onto the card anyway.
So using DOS and ATIFlash is recommended for many reasons.
Before booting from the DOS device, write down the BIOS checksum (or all BIOSes' checksums, if you have more than one card) on a piece of paper. If RBE reports that the two checksums are not the same (see section 3.2), write down both.
Then follow the steps in section 2 to boot to DOS. Once you are at the prompt, enter "ATIFlash -i" , without the quotation marks, respectively. You will get a list of adapters. For all adapters, enter "ATIFlash -cb 0", "ATIFlash -cb 1" for each card you have, one after the other. This command will show you the BIOS checksum(s) of the BIOS(es) that is/are actually on the card(s). Compare it/them to the ones on your paper. If you forgot to write the checksums down, enter "ATIFlash -cf BIOS0.ROM", "ATIFlash -cf BIOS1.ROM" for all BIOS image files. This will show you at least one of the two described checksums for each file (see section 3.2).
You do that to make sure you flash the proper BIOS onto the proper card. For example, you have a 4850 and a 4870 in Crossfire in your system. In RBE, the one checksum for the 4870 is 0xC6BB, the other one is 0xBF00. The checksums for the 4850 are alike, both are 0x0E00.
Entering "ATIFlash -cb 0" will show you the checksum of adapter 0. Say, ATIFlash reports this checksum to be 0xBF00. In that case, you know that adapter 0 is the 4870 and you have to flash the 4870 BIOS onto that adapter. Entering "ATIFlash -cb 1" will come out 0x0E00, so this is the 4850. It is much easier however if you strip down your system to have only the card installed that you want to flash.
If you have a 4870X2, note that the both BIOSes aren't the same. There is a master and a slave BIOS. Usually, the slave BIOS is adapter 0 and the master is adapter 1. Don't get this mixed up! Use the method described above to assure yourself you're flashing the right BIOS to the right adapter.
Enter "ATIFlash -p 0 BIOS0.ROM", then. This command will flash the file called BIOS0.ROM to adapter 0. If you have more than one card, repeat this procedure followed by "ATIFlash -p 1 BIOS1.ROM" and so on. Do not reboot the machine until all BIOSes have been flashed, even if the program asks to do it!
Maybe you used ATIFlash before or you read something about it on the internet. In that case, you may know and feel tempted to use the "-f" parameter to force a flash if ATIFlash rejects a file for some reason (maybe you got the adapters mixed up). Be very suspicious in than case! Handling BIOS files modified using RBE, you will never need the force parameter! Check everything again in that rare case. Don't force a flash ever.
Once you flashed all BIOSes (flashing each card will take a few seconds), reboot your machine and enjoy your tweaked cards!
You can use RBE's WinFlash interface to flash your BIOS directly from within RBE. Please see section 2.5 for details.
Just note that in case you didn't do it already, you have to analyze the system using the "Analyze" button in the "Acquire/flash BIOS" window which is itself accessible using the "Acquire/flash BIOS..." button at the bottom of RBE's main window. After that, simply select the adapter you would like to flash the BIOS to that is actually loaded into RBE. If you consider forcing a flash, check the "Force flash" checkbox. In most of the cases, this will not be necessary. After a successful flash, RBE will offer to reboot the system immediately. Do so if there are no other BIOSes that have to be flashed. After the reboot, your new BIOS settings will kick in!
Thanks for reading this tutorial. There might be errors. Maybe just typos, maybe factual errors. However, please report them to this thread so I can fix them.
My program: TechPowerUp.com: RBE - Radeon BIOS editor Donate
CPU: Intel Core 2 Quad Q6600 (Kentsfield G0) @ 3.000 MHz/1.3 V
Mainboard: Gigabyte GA-P35-DS3L
RAM: 2 x 2.048 MB 6-6-6-18-2T dual channel (Kingston Value Edition)
Video card: MSI Radeon HD 6870
Hard disks: Samsung HD753LJ, Samsung HD403LJ
Monitors: 2 x Wortmann Terra 2430W 24.1" @ 1.920x1.200
Last edited by BAGZZlash; Nov 15, 2010 at 08:29 PM.
|Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)|
|Thread||Thread Starter||Forum||Replies||Last Post|
|Help and donate a few cents for RBE! :-)||BAGZZlash||RBE||41||Jun 1, 2011 06:08 PM|
|RBE - General information and discussion||BAGZZlash||RBE||622||Jun 25, 2010 12:20 AM|
|[GUIDE] Creating The Ultimate Windows XP Installation CD/DVD||rado354||General Software||2||Dec 2, 2007 09:29 PM|