I got a BIOS image, but it won't flash because the board IDs don't match. My BIOS says I have a G73 p345, but the BIOS I was sent is a p501. The board ids are 0123 and 1901 respectively.
The email they sent me said, "This is a windows based BIOS so you will not need to use a floppy." At that point I hoped that it was a Windows flashing tool and a separate BIOS image so I could use FreeDOS and nvflash. Unfortunately it was just one blob exe. I sent back a reply immediately that I needed a separate rom file rather than a Windows-only executable, since I don't have Windows.
I haven't received a reply yet, but I'm impatient, so I decided to try to extract the ROM from the executable. It wasn't packed in the usual ways, so I dumped my VGA BIOS to a file (dd if=/dev/mem of=vgabios bs=1 skip=786432 count=64k) and looked at the first bytes using od to see if I could find a signature. The first bytes were 0x55AA, and there was only one instance of this in the executable, so I gave it a shot. I dumped 64k starting at that point and opened it in NiBiTor (running under Wine), and looked at the expected BIOS size. I then truncated the image to that size and the checksum matched and NiBiTor said it was a valid BIOS.
At this point, however, I was concerned that this is not the right card because the Product string doesn't match, the Board IDs don't match, and the boot screen says G73 P501 SKU 0007 VGA BIOS. Mine is a G73 p345, not a p501. Also, the GPU core clock was set to 900 (should be 500 for this XFX 7600GS)! I also noticed that the voltage in my card's BIOS was 1.05, rather than 1.1 (although, AFAIK, 1.1V is the expected voltage). Everything else looked normal, though. I set the core down to 500 and saved it and decided to give it a shot (I have a PCI video card in case something goes wrong).
I booted into FreeDOS via a USB stick, dumped my BIOS to a file, and then loaded the image temporarily into RAM using VGABIOS. That worked fine, so I rebooted and tried to flash the image, but it wouldn't let me because the board IDs don't match. At this point I'm not sure what to do.