Home

Computer Cooling

nVidia Driver Rant

GadgetBuilder's Guide to Flashing BIOS with WinFlash

The following pertains to flashing a Phoenix-Award BIOS on the Chaintech VNF4 using WinFlash but the info here may be helpful with other mobo's as well.


NOTE: As of 25 August 05, the V5 BIOS for the VNF4 causes a BAD FLASH on some VNF4's -- it would be prudent to use the V4 BIOS (4/27/05) until this problem is resolved.
That is, DO NOT use WinFlash with the V5 BIOS for the VNF4 -- note that there is no warning about this problem on the Chaintech site.


What is BIOS?

BIOS means Basic Input Output System. BIOS is actually firmware -- it is programmed into a flash type PROM (Programmable Read-Only Memory) chip located on the motherboard of a computer. BIOS is the program that runs first at power up -- BIOS detects the hardware configuration, runs the initial Power-On Self-Test (POST) of the computer, initializes circuits, loads the boot program from the boot disk, and handles low-level I/O to peripheral controllers such as keyboard and display, allowing the user to adjust certain settings from within BIOS.


The BIOS is stored in a flash PROM so that it can be updated (re-flashed) if the need arises. Mobo manufacturers are very careful when programming the BIOS so flashing to repair programming errors is uncommon. More common is flashing to add new features, e.g. fan speed control based on temperature or additional memory settings.


"If it ain't broke don't fix it" applies to BIOS flashing. Flashing BIOS should not be undertaken lightly. BIOS is a key part of the mobo and if the flash is not successful then the result is usually a dead system. Only flash BIOS if it will provide a needed new feature or will fix a problem known to affect your mobo.


Flashing generally goes smoothly, assuming you update with the correct BIOS version for your mobo. However, things can go awry so recovery from a Bad Flash is covered in some detail below; you can skip all this and go directly to "Flashing an Award BIOS with WinFlash", just remember that recovery is covered here if you need it. It is worthwhile to scan the section detailing reasons a bad flash might occur so you know what to watch for.


What is Flash Memory and How Does it Hold BIOS?

A PROM is a Programmable Read Only Memory (An oxy-moron because it clearly isn't read only). Flash PROM differs from older type PROM in that it can be erased and rewritten without removing it from the circuit. The flash used to store BIOS is typically erasable in 64kbyte blocks; it is writable on a byte by byte basis.

One common configuration for BIOS storage is a flash memory with 8 blocks of 64kbytes each for a total of 512kb. With this setup, one 64kb block is normally dedicated as a "Boot Block" and holds a special recovery program which can read a BIOS from floppy and store it in flash. The other 7 blocks of 64kb hold the actual BIOS (often in compressed form). Thus, it is important to NOT write the Boot Block when updating BIOS since if a "Bad Flash" occurs the Boot Block recovery mechanism would likely be lost.


What Causes a Bad-Flash?


Recovering from a Bad-Flash

Because a bad-flash can disable your mobo (and ruin your day) it is prudent to have a bad-flash recovery procedure before flashing. Mobo manufacturers provide a default bad-flash recovery scheme which will recover most problems but it requires some prior setup (or after-the-bad-flash access to another computer) to produce a recovery floppy (or CD if you don't have a floppy).

This default recovery procedure relies on the BIOS "Boot Block" area remaining intact through the bad-flash; the Boot Block is usually unscathed by a bad-flash so if a recovery disk has been accurately prepared before attempting to flash then recovery is accomplished by inserting the recovery floppy and booting the system; the BIOS should be restored in a couple of minutes. The details of preparing a recovery disk using AWDflash are described here and AWDflash is here. If the Boot Block area of BIOS was damaged in the bad-flash you're stuck... but keep reading.

Note that after a bad flash it is unlikely that video will work so the recovery floppy should have a batch file that executes and flashes BIOS automatically when it is booted. Mark this floppy carefully and keep it in a safe place -- it WILL flash your BIOS if you boot with it in the floppy drive.

An alternative designed to allow recovering from a bad flash quickly is "BIOS Savior", a hardware gadget which installs in the BIOS socket. The existing BIOS chip is inserted into the BIOS Savior. A switch is used to select the original BIOS chip or a second flash chip inside the unit. This internal flash can be programmed with a copy of the BIOS so that flipping the switch and rebooting gets the system back up and allows re-trying the flash without disturbing the good copy of BIOS. Google "Bios Savior" for details and/or see here. The Chaintech VNF4 uses a SST 49LF004A/3.3V PROM; the BIOS Savior model RD1-8X is listed as compatible with this but I was unable to flash its internal Intel 82802AB PROM in my VNF4 with any flash software (and I tried several). I replaced it with a RD1-PMC4 which seems to work fine with the VNF4. The RD1-PMC4 was purchased from ParagonCA for $27.90 delivered and arrived two days later (I was very happy with the speedy response).

Two further alternatives to recover from a bad-flash are hot-flashing or purchasing a new BIOS chip from the mobo manufacturer or one of the organizations which specializes in supplying these chips -- use Google to find what you need if you go this route after a bad-flash. Here is an inexpensive source with good eBay feedback - I can't personally vouch for him but the price is reasonable (the chip cost is $2 plus labor/mailing is $8).

Finally, the ultimate recovery mechanism for a bad flash is a PROM programmer - this is how the flash chip is originally written at the factory. These programmers were very expensive but the Enhanced Universal Willem EPROM Programmer is available for about $50 on eBay; some models are designed to handle the common types of BIOS flash chips. (Haven't tried this so can't say how well it works.)


Flashing an Award BIOS using WinFlash

Get copies of WinFlash and AWDflash if needed.

WinFlash flashes the BIOS under Windows (rather than DOS) from a file stored on the hard disk. This avoids the first two problems listed as common reasons for a bad flash but the other reasons remain, so make a recovery disk using AWDflash. WinFlash can help to make a recovery disk by writing a file containing the BIOS currently in the flash PROM (A BIOS which you know works) in case you don't have this already.

When WinFlash is unzipped it will normally be in a new folder. By default WinFlash will look in the folder it is run from for BIOS bin files to load so it is convenient to place these bin files in this folder.

A "How to Use WinFlash" pdf is included with the program but it doesn't answer some of the common questions a first time user might have. WinFlash Help doesn't help, but the WinFlash program works well anyway.

Prior to running WinFlash, locate a copy of the BIOS bin file you intend to flash and copy it to the folder which holds WinFlash. Be absolutely certain it is the correct BIOS for the mobo -- using a wrong BIOS is one of the common ways to disable a mobo and require a bad-flash recovery. When a new BIOS becomes available consider waiting until others have proven its worth; generally, BIOS changes add minor new features so only in special situations is it worth the (possible) trouble to be first kid on the block with the new BIOS.


NOTE: WinFlash expects to flash your BIOS and then restart your system. WinFlash v1.75 has a BUG which affects your system if you exit WinFlash without flashing BIOS: WinFlash will appear to shut down but will actually continue to run and will consume considerable CPU -- use Task Manager to shut it down. If you start WinFlash multiple times then there will be multiple instances running in the background. I noticed this because WinFlash running in the background raised the CPU temperature so I heard the CPU fan. (I haven't tried flashing with one of these WinFlash "ghosts" running in the background because I suspect it might lead to a bad flash... it is clearly a non-essential Windows application that might lead to a bad flash, as mentioned below.)


Run WinFlash to make a backup file, if needed, for use on your recovery floppy ( File/Save old BIOS). Complete building (or updating) the recovery diskette before proceeding to flash with WinFlash.

This image shows the setup of Winflash with options selected for a normal flash session (with my hints in red). Note that the Boot Block is NOT selected and DMI is selected plus Clear CMOS is selected. Also note that the graphic of the flash memory in the center of the screen shows the Boot Block in green and the remainder in blue. If you have placed the bin file in the folder with WinFlash, then pressing the "GO button" will allow selection of that bin file followed by an option to "Flash/Quit".

Winflash is nicely behaved in that you can test various things right up to flashing and then avoid flashing at the last instant via the "Quit" button; this allows the new user to become familiar with WinFlash's operation without wreaking havoc.

Flashing with WinFlash takes 1 to 2 minutes on the VNF4 -- as shown via a progress bar.

Don't write the Boot Block unless required for a specific BIOS revision; as explained above, leaving the Boot Block as-is provides the default bad-flash recovery. (There are questions about whether WinFlash will write the Boot Block regardless... this isn't easily and safely verified by mere mortals).

Reboot after flashing. Enter BIOS and make any needed adjustments.

It seems simple and it is if all goes normally (as it usually does). The recovery procedures discussed above provide a measure of security should something go awry.


About BIOS as seen in WinFlash

Based on several hours research on the net, the basic BIOS setup (as seen from WinFlash) is:

The Boot Block area holds a small program able to boot off floppy. In addition, the unpacker for the Main area resides in the Boot Block. It is hard to say whether the Boot Block area can actually be re-written; some sources indicate it is permanent, others say it can be written, others say it can be written if a jumper is set properly or a BIOS switch is set. Probably depends on the mobo so there may be different setups on different boards. Best to avoid attempting to write to the Boot Block area. Some details about Boot Block Flash.

The key is the Main block. This holds the real BIOS code, probably in packed form.

Always clear CMOS when changing to a new BIOS. The old CMOS data may be at a different address than the new BIOS expects and may be mis-interpreted because of this causing strange, possibly serious, problems.

Best guess is DMI and ESCD are actually areas of CMOS (not flash) which get filled in automatically on the first boot with CMOS clear. They retain info describing the hardware configuration to speed up subsequent boots after the first. DMI = DeskTop Management Interface ESCD = External System Configuration Data -- During the first boot after clearing CMOS the PnP devices are located and the pertinent info is stored in CMOS to speed future boots.


WinFlash Error Messages

"BIOS ID error" " Are you sure to program" (sic)

Be careful if you see this, it generally means you are about to write the wrong BIOS to your board!!!


"Flash Block Verify error"

The new BIOS was not written to flash correctly. Sometimes this means it wasn't written at all so it will boot the old BIOS normally. Sometimes attempting to flash it again will work correctly. Avoid turning the power off or rebooting until you determine what happened since your BIOS may no longer boot properly.


AWDflash Error Messages

"Unknown Flash Type"

The flash chip type was not recognized so the program cannot write to it.


Example AUTOEXEC.BAT file (only two lines)for boot block recovery:

@ECHO OFF

Awdflash.exe VN210427.bin /cks9d20 /sn /cc /cd /cp /r /py


VN210427.bin is V4.0 BIOS for the VNF4 -- substitute as needed.


A Few Comments on VNF4 BIOS Releases


Links to BIOS Flashing Resources

The latest versions of AWDflash and Winflash

Info about making an emergency re-flash disk

A good explanation of the switches in AWDflash and how to use AWDflash. This is the most complete explanation of AWDflash that I've found.

Info on flashing from HD or CD.

The Uniflash program doesn't work with NF2/3/4 systems, at least through June 2005 and probably later. nVidia doesn't provide info so programmer can't accommodate these chips, much as he would like to.

For good measure, here's a review of AMIflash which has a link to download the latest version. Reportedly, it will flash an AWARD bios and some users like the interface better.


Some Comments on the State of Programs Used for Flashing

Flashing my VNF4 to v4.0 BIOS using WinFlash went very smoothly, giving a false impression of the difficulties which can be encountered. However, attempting to program the internal flash chip in a RD1-8X in the VNF4 was a major eye opener on flashing and the programs used.

Each flash program has people who swear by it and others who swear it trashed their BIOS and therefore think that flash program is trash. Having tried several of the available flash programs while (unsuccessfully) attempting to flash the BIOS Savior's internal PROM, I think most all the programs are poorly done and VERY poorly documented, especially considering their ability to disable a mobo if anything goes wrong.

All of the flash programs by AWD and AMI are distributed with insufficient documentation for the user to confidently and successfully flash a PROM. Nor do they come with any explanation of the terse error messages they produce, not even a list of the possible messages.

An unintended commentary on the state of flash programs is provided by Tyan. Note how different versions of the same flash program are used on different mobo's from the manufacturer. It is surprising to me that the latest version of the particular flash program isn't used for all mobo's that use that flash program.

The Uniflash program is written by an independent programmer who has produced better documentation and arguably a better program than the major vendors, AWD and AMI. Unfortunately, he doesn't have enough clout to get chip specifications which would allow him to extend Uniflash to handle NF2/NF3/NF4 based mobo's -- mainly because nVidia won't respond to him.


This page was last modified   by John Moran, HTML tweaker.    If you have a comment on this site or its contents or would just like to chat, click here, scroll down and click again. Using this single link point reduces my spam.

Home