How?
- Research.
- AWARD
Boot-Block BIOS.
- Hot-Swapping.
- Use Another
Mobo's BIOS.
- Chip
Programmer.
1. Research
I did a lot of searching and reading in
newsgroups like alt.comp.periphs.mainboard.aopen
thru www.deja.com, and websites like The Unofficial
GA-586HX Homepage and Wim's BIOS
page.
I also browsed the AOpen Tech Support Webpage and downloaded everything related to my AP5T
Rev 3.1 mobo. I found out that there are many
different revisions of the AP5T. There are AP5T Rev 2
(AP5T-2) and AP5T Rev 3 (AP5T-3) and their various minor
revisions (3.1, 3.4, etc).
I downloaded these items :-
AOpen releases their BIOS in a executable
format called AOpen Easy Flash BIOS. This
combines the BIOS and flasher program into one executable file.
This is supposed to make flashing easy (hence the name), but as
you'll see later on, it turned out to be a problem.
2. AWARD Boot-Block
BIOS
Newer Award BIOS have a special section
that is not overwritten during normal flashing. It is call the
Boot-Block BIOS. With this Boot-Block BIOS, it may be possible to
boot a mobo even if the main BIOS has been corrupted.
This the procedure I obtained from my
research :-
- Plug in a ISA graphics card. The
Boot-block BIOS cannot display thru a PCI card.
- Prepare a MSDOS 6.22 boot diskette
that contains the BIOS file, BIOS flasher, and a
AUTOEXEC.BAT file that contains the command to run the
flasher with the BIOS file. This is because Boot-block
BIOS can only boot from a floppy diskette and execute the
AUTOEXEC.BAT file in it.
This is what I did :-
- I dug out my old Trident 1MB ISA
graphics card (a relic from my 386DX-33 days!) and
installed it on the AP5T.
- I created a
AUTOEXEC.BAT file that contained one command : "A:\AP5T180.EXE".
- Copied the
AUTOEXEC.BAT and AP5T180.EXE files into the diskette and
connected the floppy drive to my AP5T.
So theoretically, I should have been able
to boot using the Boot-Block BIOS , but it failed and
nothing happened. Evidently the CIH virus even corrupts
the boot-block BIOS. Perhaps this technique can work for those
cases where BIOS was damaged by flashing errors instead of the
CIH virus.
3. Hot-Swapping
This is probably the most dangerous
and fun technique. Also know as Hot-Flashing,
it involves extracting and inserting the BIOS chip while the
system is on! This technique requires another mobo that is
working, and the willing-ness to put it at risk.
In general, the procedure is this :-
- On the working mobo, set the System
BIOS Cacheable setting to ENABLED.
- Boot up the working mobo to DOS.
- With the system still on, carefully
extract the working BIOS chip.
- Extract the corrupted BIOS chip from
the non-functioning mobo.
- Insert the corrupted BIOS chip into
the working mobo.
- Flash the corrupted BIOS chip with the
BIOS of the non-functioning mobo.
- After successful flashing, switch off
the working mobo.
- Extract the newly flashed (formerly
corrupted) BIOS chip from the working mobo.
- Insert it into the non-functioning
mobo and try to boot up.
This is what I did :-
- The Hacked GA-586HX mobo would be my
working mobo, the the AP5T the non-functioning one.
- Prepared a bootable MSDOS 6.22
diskette with BIOS files and BIOS flashers. In the
diskette I put BIOS files for the GA-586HX, hx28.zip (95.1KB), and AP5T : ap5t180exe.zip (119KB), and flashers like af535a.zip and awdflash.zip.
- Connected up the GA-586HX, extracted
the BIOS chip and re-inserted it without inserting fully.
This means that the legs of the BIOS chip are in contact
with the BIOS socket, but the chip can be extracted
easily. This is shown in the diagram below. When the BIOS chip is partially inserted, its legs are just in contact with the BIOS chip socket.
- Set System BIOS Cacheable to ENABLED,
and booted the GA-586HX with the diskette.
- With the GA-586HX still on, I
carefully removed the GA-586HX BIOS chip. This was done
with a long-nose plier, being careful not to touch any of
the contacts or legs.
- Extracted the corrupted BIOS chip from
the CIH-ed AP5T mobo.
- With the GA-586HX still on, I
carefully inserted the corrupted AP5T BIOS chip. I did
this without inserting it fully.
- I tried to flash the AP5T BIOS v1.80
by running the AP5T180.EXE file, but it failed.
The AOpen Easy Flash program just hanged for a while and
then quit to DOS prompt. This is the problem I mentioned
earlier. I also realised I could not use the AF535A.EXE
or AWDFLASH.EXE programs because the AOpen BIOS file is
not in a binary (BIN) format.
- With a desperate sense of hope, I went
back to the AOpen website to look for such a BIOS file.
There was no such thing to be found! All of
AOpen's BIOS files are in the Easy Flash format.
This is a problem for anyone who wants
to use hot-swapping or even a chip programmer to flash
their BIOS chip. :(
- I sent an email to AOpen Tech Support
to request the BIN version of the AP5T BIOS and at the
same time searched the Web. Luckily, I
found the BIN version of v1.70 on a German FTP site. I
used the popular Lycos FAST FTP Search v4.0 website. To be fair, I must say that a
couple of days later AOpen replied my email with the
v1.80 BIOS BIN file : ap5t180bin.zip
(109KB).
- Using the AWDFLASH.EXE
program, I tried to flash the v1.80 BIOS into the
corrupted BIOS chip. It failed again!
This time, AWDFLASH.EXE gave an error message that the
BIOS was not meant for that mobo. Evidently, it checked
the existing BIOS that was in memory and compared this
with the one I was trying to flash. In other words, the
flasher refused to allow the flashing because the BIOS in
memory was the GA-586HX v2.8. The same problem occurred
with AOpen's old flasher AOFLASH.EXE.
- However, I didn't give up. I tried it
using the AF535A.EXE and it flashed
successfully! This flasher also showed a warning
about the discrepancy between the existing and new BIOS,
but allowed me to flash anyway.
- After that, I switched off the
GA-586HX mobo and extracted the newly flashed BIOS chip.
- I inserted the newly flashed BIOS chip
into my AP5T and booted up.
It worked!! :^)
4. Use Another Mobo's
BIOS
This is an interesting topic. Although it
is not a BIOS recovery or flashing technique, I include it here
because it may be a solution for solving BIOS bugs and
instability. In addition, it could be used to take advantage of
new features in the other mobo's BIOS that may be lacking in the
original one. For example, support for newer CPUs like the AMD
K6-2 and K6-III.
The idea is to find and use a compatible
mobo's BIOS instead of the original one. In general, the
compatible mobo should have the exact same Chipset (HX, TX, etc),
Super I/O Controller and if possible, Keyboard Controller.
However, meeting these criteria does not guarantee that it will
work. This is because each mobo and BIOS is designed differently.
This is what I did :-
- I browsed the MR BIOS website for
their list of supported Intel Triton Based Motherboards. I used this list because it gives the
Chipset and Super I/O Controller, so I can find a
compatible mobo easily. Unfortunately, the list does not
give the Keyboard Controller info. If anyone
knows of a more comprehensive list, please email me at
hackedmobo@yahoo.com.
- Using this list, I decided to try the
Tyan S1570 mobo because both it and AP5T share the same
Chipset (430TX) and Super I/O Controller (SMC 669).
- Using the Hot-Swap technique described
above, I flashed the S1570 BIOS into the AP5T BIOS chip.
- I inserted the newly flashed BIOS chip
into the AP5T mobo and booted up. It entered Win95 and
there were no problems initially. The only problem was
when I tried to access the floppy drive. It
failed to detect the floppy drive. Other basic
functions like hard disk access, graphics, and
serial mouse worked fine.
This is definitely not the end of my
experiments with other mobos' BIOS. The most tedious part is
finding a compatible mobo, since hot-swapping is almost
second-nature to me now. ;^)
5. Chip Programmer
Chip Programmers or Burners are hardware
devices which can be standalone or installed in a PC. Most people
without access to one of these babies would think that it is the ultimate
solution to their BIOS flashing problems. I'm one of the
"lucky" people that have access to one (I don't own it
... just have access ;^)), and I must say that I find
Hot-Swapping easier!
The programmer I have access to is the Data I/O 3900. I did the following :-
- Installed the DOS-based 3900 terminal
software into a PC.
- Connected the 3900 to the PC via a
serial cable.
- Attached the correct socket adaptor to
the 3900. There are different socket adaptors to support
different device packages like DIP and PLCC.
- Booted the 3900 with its boot diskette
(Yes, it has its own floppy diskette drive).
- In the 3900 terminal, selected the
BIOS chip device type. This required me to insert the
corresponding algorithm diskette into the 3900, because
each device has its own algo.
- Inserted the diskette containing the
BIOS BIN file into the 3900 and loaded it.
- Programmed the BIOS into the chip.
- Inserted the newly flashed chip into
the AP5T and booted up.
Naturally it worked, but
somehow it didn't give as much satisfaction as Hot-Swapping!
Disclaimer
Adrian
Last revised: October 29, 2000.