How to recover ATI Radeon HD 4870 from bad BIOS flash

Author: W1zzard
Date: 2008-06-29 20:55:34


This article applies only to users who flashed their HD 4870 (GDDR5) with a 64 KB sized BIOS (created by GPU-Z, Winflash or Atiflash) and ended up with an 800 shader paperweight.

The Problem

In the past all (consumer) graphics card BIOSes were smaller than 64 KBytes. With the introduction of GDDR5 additional space was required for the memory training code. Since ATI could not fit that piece of code into the 64 KB available, they increased the BIOS size to 128 KB (1 MBit).

For an unknown reason ATI's flashing software Winflash/Atiflash does not correctly detect those extra 64 KB and forgets to save them when you dump your BIOS to a file. The same happens to GPU-Z (fixed in 0.2.5 and newer). So everybody who extracted their HD 4870 BIOS ended up with no GDDR5 microcode.

The Fix

  • Download the full 128K BIOS here.
  • Flash it to your dead card.
  • Done.
Since the dead card will not POST anymore you have to use another graphics card as your primary VGA adapter to boot from it.
Then go into DOS and find out which adapter number your dead HD 4870 has using Atiflash (download): atiflash -i. Now flash the BIOS using: atiflash -f -newbios -p [index] 4870.bin. Replace [index] with the number of your graphics card from the -i command.
Another way is using ATI Winflash (download) from Windows. Start Winflash, select the correct card and flash away.
After the flash is done, remove the second card and boot from your now working HD 4870.

Please note: RBE 1.11 works fine for these 128K BIOSes, just make sure you do not work with a broken 64K BIOS in the first place (check the file size). The HD 4850 does not have a 128K BIOS, only the HD 4870.

Thanks for helping to make this possible go out to: Dave Baumann, Golden Tiger and xMrBunglex.

Discuss this article in our forums