Comprehensive How-To with links galore for novice and expert – Antonios S. Andreatos
- Introduction
- Why upgrade the BIOS?
- The normal procedure to flash new BIOS is risky
- Our method in brief
- How to find out compatible flash chips
- Flashing from Windows
- Step-by-step procedure for safe BIOS upgrade
- Final remarks/ tips
- Interesting related links
BIOS stands for Basic Input Output System. It is the code executed by the processor when the PC is powered on. It is written on a memory chip located at the first address found in the processor’s Program Counter after power-on or restart.
The BIOS is responsible for booting the PC by providing a basic set of instructions. It performs all the necessary start-up tasks, such as POST (Power-On Self Test) and booting an operating system from FDD or HDD. This article refers to DIP BIOS chips.
A BIOS upgrade is necessary in order to ensure compatibility with the latest hardware, firmware and software.
Most common reasons to upgrade your BIOS are:
- Support for new peripherals (such as large HDDs)
- New OS support (e.g. Windows Longhorn)
- Bug fixes
- New processor models support (new generations of P4, Athlon, bigger multipliers etc.)
- Improved performance (e.g. faster I/O, faster FSB frequencies, faster DDR support, WOL feature, bug fixes, new device support etc).
Nowadays, with Flash memories a BIOS update is an easy and fast job, but risky. This article helps make this job easier and safer, for mobos using DIP BIOS chips.{mospagebreak}
The usual procedure for flashing a new BIOS is briefly as follows: insert bootable floppy with Award flash software and new BIOS file in *.bin format. Run the flash utility; type the name of the BIOS file included in the diskette and hope that no power failure will happen.
The main problem with BIOS update is the unsuccessful, incomplete process. This may be caused if the process becomes interrupted somehow, e.g., due to instant power failure. Such “spikes” usually causes PCs to restart. If this happens during the flashing process, the system screws up. In this case, the proposed solutions are:
- Find a Flash programmer. Erase the old contents, get a new BIOS version via the Internet and program the chip, or
- Find an identical (or similar) mobo and follow the method described below to program your flash chip.
The proposed method allows us to perform a BIOS update without risk; the old BIOS chip remains intact. You just need another similar flash EPROM chip and (optionally) a ZIF socket. Then, program the compatible flash chip and keep yours as a spare. If the process succeeds, OK. If it fails, use your initial chip to boot and try again.
The BIOS chip is needed only during boot process; after that, it may be extracted (Of course, temporarily, otherwise the PC won’t boot anymore.) From this point of view, it resembles a car battery; it is used mainly to start-up the engine.
Here’s how it works: Boot using the bootable floppy with the flash utility and the new BIOS file, as described above. Then remove the old BIOS chip and put in a new compatible chip. Continue the process as above and flash the new BIOS into the new chip. Any failure will harm the new chip, but you have intact the old BIOS chip to boot and try again!
Using the same procedure, we can also prepare a BIOS chip for another identical or even similar mobo! This is extremely useful to re-vitalize a screwed-up mobo due to unsuccessful flashing. As before, remove the original BIOS chip after the boot process, put in the damaged (or a new) chip and run the flash utility. This will allow you to prepare a BIOS chip for an identical mobo, but will (most probably work) also for a similar mobo that uses the same chip set (hence, the same flash utility) and compatible BIOS chip (same size).
I have tried it and have programmed a BIOS for an Elite P6BAP-AP on an Elite P6BAT-AP mobo. BIOS chip was a 2 Mbit flash memory (ASD AE29F2008-12).{mospagebreak}
You need the proper flash utility (such as Awardflash – usually in “exe” format) and a special editor to open it; in there, all compatible groups of chips are written in ASCII format. You must use a hex editor to open the BIOS files. Figure 1 shows Fred editor screen displaying contents of awd77.exe:
You can find many free hex editors in the Internet – try tucows.com, downloads-zdnet.com or try some search engines.
You can also use memory or device programmer software. It usually runs even if you don’t have a programmer installed on your PC. You can find many in the Internet easily if you search for programmer manufacturers (such as Leap, Expro, Advantech, etc).
By opening “awd77.exe” in fred hex editor, I got the following list:
COMMON BIOS CHIPS
========== 1 Mbit chips ==========
AMD 29F010 /5V
ATMEL 29C010A /5V
ATMEL 49F001T /5V
CSI CAT28F001P /12V
INTEL 28F001BX-T /12V
MOSEL V29C51001T /5V
MXIC 28F1000AP /12V
MXIC 28F1000P /12V
MXIC 29F001T /5V
SST 28EE010 & 28EE011 /5V
SST 29EE010/5V
SST 39SF010 /5V
WINBOND 29EE011 /5V
========== 2 Mbit chips ==========
AMD 29F002(N)T /5V
ATMEL 49F002T /5V
ATMEL 29LV020 /3V
ATMEL 29C020 /5V
BRIGHT BM29FS020 /5V
CSI CAT28F002T /12V
EN EN29F002NT /5V
ARM35LV020
ARM35LV020
IMT IM29F002T /5V
INTEL 28F002BX-T /12V
MOSEL V29C51002T /5V
MXIC 28F2000PPC /12V
MXIC 28F2000TPC /12V
MXIC 28F002TTC /12V
MXIC 29F002(N)T /5V
MXIC 29F022(N)T /5V
PMC PM29F002T /5V
SST 29EE020 /5V
SST 29LE020 /3V
SST 39SF020 /5V
SST 39VF020 /3.3V
SST 49LF002 /3.3V (2Mb)
SGS-THOMSON M29F002T /5V
WINBOND 29C020 /5V
========== 4 Mbit chips ==========
WINBOND 49F002U /5V
WINBOND 49V002 /3.3V
AMD 29F400BT /5V
MXIC 29F004T /5V
INTEL E82802AB /3.3V(4Mb)
INTEL E82802AC /3.3V(8Mb)
INTEL E82F400B5
SST 49LF004 /3.3V
SGS-THOMSON M29F400T /5V
============-======================
MAIN BIOS FLASH MEMORY MANUFACTURERS
Prefix | Brand | Website |
AMD, Am | AMD | |
ARM | ||
ATMEL | ATMEL | |
BM | BRIGHT | |
CSI CAT | CATALYST | |
EN | EON | |
IMT | IMT | |
INTEL | INTEL | |
MOSEL | MOSEL-VITELIC | |
MXIC | MACRONIX | |
PMC | PMC-SIERRA | |
SST | SGS-THOMSON | |
WINBOND | WINBOND |
If your chip is not listed there, you may get an “Unknown Flash” message.
A more complete list of BIOS chips can be found at
btinternet.com, or
ioss.com. Additional information on specific devices and manufacturers can be found at chipdocs.com.
All these chips (and many more) conform to the related JEDEC standard (see jedec.org) and have the same standard pinout (if they have the same capacity, e.g. 2 Mbit), or similar (if they have different capacity, e.g. 1 Mbit and 4 Mbit).
Where to find BIOS chips:
- Get one from an old mobo (the easiest and cheapest solution)
- Buy from local store selling electronic components
- You can also find/order flash chips via the Internet (probably the most expensive solution) – look for instance HERE.
{mospagebreak}
Flashing a BIOS file under Windows is more risky. Although Windows BIOS flash utilities (such as winflash) are quite reliable, Windows itself is not stable norr reliable. Various processes running in parallel in the background can make things worse. DOS never hangs — unless you run out of memory, which will never happen with a BIOS flash program.
You can find complete instructions at mobo manufacturers’ sites on how to flash from Windows using their utilities:
- Award Flash
- Aflash (Asus)
- AMIFlash
- @BIOS (Gigabyte)
- LiveUpdate (Asus)
- winFlash (Elite or ECS)
For a guide to all of the above, go HERE.
Nevertheless, with our method, flashing under Windows is not risky anymore. Just make sure that you boot in the most basic setting so there are no running programs in the background (such as Norton Antivirus Update Wizard etc). {mospagebreak}
Step 1: Identify your mobo brand (e.g. Elite), model (e.g. P6BX-A+) and PCB version or revision (e.g. REV. 1.0). You can find the PCB version printed on the PCB, usually between the PCI slots or near the AGP slot (Figure 3). The version is important because different versions may use different-size flash chips (e.g. 1 or 2 Mbit). Check also your BIOS version; this may be done with one of the following ways:
1/ BIOS date and version # will appear on black screen during the start-up process (Figure 4).
2/ Check the self-stick label on the BIOS chip (Figure 5).
3/ Alternatively, you can use various applications (such as Sandra, Figure 6: SANDRA1) or utilities to identify your BIOS version such as BIOS Agent or Detect.
Step 2: Go to the mobo manufacturer’s site and download the latest BIOS version for your mobo. Usually, this may be found under “Support” or “BIOS” or “Downloads”. Download the mobo’s “bin” file from manufacturer’s site. That’s the BIOS code to be flashed. E.g. “p6bapa+13.bin”.
Step 3: Find and download the flash utility (e.g. “awdflash.exe”) recommended by the mobo manufacturer, from the manufacturer’s site or from the BIOS manufacturer’s site (award, phoenix (has acquired AWARD), ami). Note that there may be various versions, according to the model. You will probably find quite good descriptions on how to flash, step-by-step! Note that you can also find and download the manual (usually under “manual”).
Also note that some manufacturers embed the flash utility in the BIOS. In this case, it may be accessed via the start-up process (e.g. during POST) by pressing some combination of special keys, such as ALT+F2 (see Figure 4). Check the manual.
Step 4: Create a bootable DOS diskette. The boot diskette must contain plain DOS only. There are many ways to do that:
- By selecting “Create an MS-DOS startup disk” during the floppy format process, you can make a bootable diskette. (Figure 7)Figure 7: During the floppy format process, you can make a DOS start-up diskette
- Using the sys a: command from a DOS window under Windows 95/98
- You can get a bootable disk for any OS at bootdisk.com
- You may also use a utility called DrDOS 7.x, available at bootdisk.com or abitfaq
- Use a utility called Boot Disk to create a bootable floppy for FreeDos available at: esupport.com
- Go to Control Panel > add/remove programs > start-up diskette > create a start-up diskette. Note that this diskette will contain a lot of unnecessary files though, which may be removed
Note that in order to be able to see system files used in a bootable floppy, you must have enabled the following file option: Tools > Folder Options > View > Advanced Settings: Show hidden files and folders.
Figure 8: How to see hidden files and folders
The files that should be in the floppy are: autoexec.bat, command.com, ibmbio.com, ibmdos.com. Alternatively, the system files are: io.sys, msDOS.sys and command.com.
Do not use the startup diskette of Windows 9x or ME, unless you remove all unnecessary files.
{mospagebreak}
Step 5: Add the above two items on the diskette, i.e. the flash utility and the new BIOS file. We suggest putting only one bin file in the floppy to avoid mistakes.
Step 6: Test the diskette to make sure it is in good condition. Check that all necessary files are there.
Step 7: Prepare your computer to boot from the diskette. You can do that from BIOS FEATURES SETUP option.
Step 8: Shut down PC, open case and remove old BIOS chip using two flat, slim screwdrivers (Figure 9).
Use a ZIF socket to make your life easier. A ZIF (Zero Insertion Force) socket will allow you to insert and extract the chip easily. It uses a lever to lock/unlock the chip on the socket (see Figure 10).
Insert the ZIF socket and put on the old BIOS chip, taking care to the pins and the chip orientation (Figure 11).
Step 9: Enable BIOS flashing; this may be done either via a BIOS protection jumper, or via the BIOS setup (Advanced BIOS features > Firmware write protect > enable), depending on the mobo.
Step 10: Restart and boot from the diskette.
Step 11: Remove the old flash memory chip and insert the new, compatible chip. Keep the old chip aside until you finish the process successfully. Then, label it and store it in a safe place. If the process fails, no problem; put back the old chip and try again.
Step 12: Run the flash utility. From the a: prompt, type:
awdflash.exe new-BIOS.bin
where awdflash.exe is the flash utility and new-BIOS.bin is the name of the BIOS file you downloaded – for instance, vxadv12f.bin in Figure 12 (Alternatively, press the special key combination to access the embedded flash utility — see Figure 4.)
[Picture is from ecsusa.com]
Follow the instructions on screen to the letter. Don’t touch anything while flashing is in progress. Never interrupt the process for any reason; wait for the process to finish.
Step 13: At this point you can program another identical BIOS chip, or try to program a similar BIOS version for a similar mobo if you want.
Step 14: Reboot the computer when done and load the BIOS default values.
Step 15: Make sure everything works fine, then shut down once more, remove the new BIOS chip from the ZIF socket, remove the ZIF socket and put the new BIOS chip on the mobo socket, taking care not to bend any pin.
Step 16: Reset the BIOS protection jumper (or setup menu option) to protect the new BIOS from accidental overwriting. Boot once again and check BIOS version to make sure everything is fine.
Step 17: Stick a label the BIOS chip with BIOS version and date. That’s it!{mospagebreak}
- If you have an EPROM or device programmer, you can use its software to examine BIOS utility; just open (read) the flash utility (e.g. award.exe) into the programmer.
- Use a UPS during flash update, if available.
- If the flash utility asks you “Do you want to save BIOS?”, answer yes (“y”) if you want to keep the old BIOS file (and give a file name), otherwise type “n”.
- BIOS flash memories have a boot sector, and need a 5 Volt or lower single power.
- Elite mobos often use ASD AE29F2008-12 (2 Mbit) chips (not listed).
- Some mobos [such as Chaintech’s 7AJA2] have the flash utility embedded in the BIOS chip; in this case, a note appears during the boot process, reading something like this: “Press Alt+F2 to enter flash utility” (see fig.4). In order to flash a new BIOS file, you must have first downloaded it and written it on an empty [and reliable] floppy; then, the flash utility is loaded into RAM and the procedure goes on as usual. No boot files are needed in the floppy.
- The old BIOS chip model does not have to be the same as the new model, especially the last parts, e.g. /5V, /3V, LPC, FWH, etc. This can be ignored. The front part, e.g. AM, CAT, EN, etc, represents the IC manufacturer.
- The last two numbers represent access time in milliseconds; -12 or -120 = 120 ms, -90 = 90 ms. (Does not affect PC performance – RAM access time matters).
- Flash memory, on board programming
- Byte-wide data bus
- Single supply voltage: 12v, 5v, 3.3V or 3V
- JEDEC standard compatible
- JEDEC standard Package: 32-pin DIP or 48 pin PLCC (newest mobos)
Joint Electronics Devices Engineering Council
BIOS agent
Flash loaders such as Award Flash, AFlash AMI Flash, PHFlash [for Phoenix BIOS] and many related utilities such as Detect, Boot Disk [for FreeDOS], CT BIOS, Check CPU etc
how to flash guidelines
BIOS SAVIOR device
Find, Check, buy chips on-line. (must register for free)
chip catalog
BIOS chip catalog
How to flash from Windows with various utilities
List of all programmable devices
BIOS technical support [info, utilities, guidelines, FAQ’s etc.]
FLASH EPROM DATABASE sorted by voltages 12v, 5v, 3.3V, 3V
hobid.com
buy FLASH EPROM chips
chip manufacturers
Antonios S. Andreatos – Athens, Greece
Be the first to comment