Cosmic's

Technology & Life

Patching Award BIOS with BIOS Patcher (rom.by)

· , ,

A quick overview of patching an old Award BIOS to fix common bugs and enhance functionality.

Prereqs

Finding the EEPROM model

You may need to determine exactly which type of BIOS EPROM or EEPROM you have before using the programmer.

Usually, this is printed on underneath any BIOS manufacturer stickers.

Tip: If you care about preserving the sticker, don't use a razor blade to lift it up. You'll cut the label 100% of the time and wish you hadn't. Just accept that it's going to crease a little bit.

Process

  1. Boot the VM and make sure everything works
  2. Install Xgpro if needed, then connect the programmer
  3. Remove the BIOS chip from the socket of the mainboard
  4. Install it in the programmer
  5. Read the top of the chip and select the matching type in XDG
  6. Connect the TL866-II to a USB 2.0 port, it draws some current, so low power ports won't work
  7. Select your chip
  8. Install the chip into the programmer as shown on the display
  9. Read the chip (READ button)
  10. Save the results to a .bin and copy to USB, FTP, etc. (SAVE button)
  11. Load the .bin into the Windows 98 VM
  12. Run bp p2b.bin /m to select which patches you want
  13. Move the patched file to your TL866-II programmer and load it
  14. Write to the chip (PROG button)
  15. Reinstall into the motherboard
  16. Test

Mirror BIOS

BIOS Patcher retains a copy of the original modules as a backup. To load them instead of the patched BIOS, do either of the following:

Read the included manual

An extensive manual for BIOS Patcher (BP.EXE) exists in English in About_BP.TXT, so I won't reproduce it here.

Overview of commands

BP - BIOS Patcher

Help Syntax

 BIOS Patcher ver. 4.23.
Attention! Advanced qualification is required!


===============================================================================
To run BIOS Patcher type: "bp patch_file [options]"
Options:
/c - manual add CPU Name (will be displayed for ALL CPUs!)
/d - not delete tmp-files
/e - show extended info (like using "cbrom.exe /d", without patching)
/h - this "help-screen"
/g - skip delete BIOS CGA-font 8x8 (increase size of modul.tmp)
/k - select multiplayer for VIA C3 processor: "/k3.5"=3.5x, "/k12"=12x etc
/m - manually select items for patching (default - search/patching all puncts)
/o - change "original.tmp" to another file (N/A at the moment - in development)
/p - try add "+PCI" -option (RAM_freq > CPU_freq) to VIA 693A/694X/694T
/s - remove "backup" -key (virtual dual-BIOS feature)
/v - RAM-tweak for Pentium1/2/3 with VIA-based MB
/u - "ultrapack": packs 2Mbit/4Mbit-BIOS to 1Mbit (N/A - in development)
/x - display real frequency for AMD Athlon XP processors
Example: "bp 6130.bin /e"
         "bp 6via86p.bin /p/c/k8.5/d"
===============================================================================

if you can`t see all messages - choose 80x50 mode or run with ">report.txt".
(c)2002-2003 apple_rom, www.ROM.by

Help Syntax (From Manual)

/c - force name of CPU (it will be shown for ANY CPU PLUGGED INTO THIS BOARD)
/d - don't delete temporary files
/e - show rom file info. This is like cbrom.exe /d (only info and no patch)
/h - help
/m - manual choosing of things to patch. By default patcher fixes all errors.
/p - add "+PCI" (RAM_freq>CPU_freq) for VIA 693A/694X/694T (testing)
/s - turn off roll back
/v - overcloking (speed optimization) of memory for VIA-based motherboards P1/P2/P3 (testing)

Sample Output

C:\BIOS>bp p2b.bin /d /m
BIOS Patcher ver. 4.23.
Attention! Advanced qualification is required!

Found 2Mbit BIOS (4.5x)!

Attention! - ASUS BIOS! ;)

1. New CPU Support           :for skip this step press "s" or any another key fo
 -> fixed....
2. P3-detect error           : not found.
3. New Koeffs Support        :>for skip this step press "s" or any another key f
 -> fixed.e...
4. 32Gb-problem              : not found.
5. Some HDD detect-problem   :for skip this step press "s" or any another key fo
 -> fixed....
6. "MB"/"GB" string search   : is not needed to be fixed.
9. Error display Freq>999MHz : not found.
10.Error display Koefs>9.5x  : not found.
11.New Stepping Support      :for skip this step press "s" or any another key fo
 -> fixed....
12.Tualatin L2-init error    : not found.
13.New Freq in Setup open    : not found.
for skip this step press "s" or any another key for continue...
14.Set "Y" as default on exit:for skip this step press "s" or any another key fo
r continue...n -> fixed.

UDMA for "big"-HDD on UDMA33_only_MB fix: not found.

CBROM V2.07 (C)Award Software 2000 All Rights Reserved.
[CPUCODE] ROM is releaseCBROM V2.07 (C)Award Software 2000 All Rights Reserved.
Adding modul.tmp  25.6%
CBROM V2.07 (C)Award Software 2000 All Rights Reserved.
Adding cpucode.bin ..... 50.7%
Warning! BootBlock was changed! Flashing BIOS only WITH BootBlock!

if you can`t see all messages - choose 80x50 mode or run with ">report.txt".
(c)2002-2003 apple_rom, www.ROM.by

CBROM

Built-in help message

CBROM V2.07 (C)Award Software 2000 All Rights Reserved.
Syntax:
     C:\BIOS\CBROM.EXE InputFile [/other] [8000:0] [RomFile|Release|Extract]
     C:\BIOS\CBROM.EXE InputFile [/D|logo|vga....] [RomFile|Release|Extract]
          InputFile   : System BIOS to be added with Option ROMs
          /D          : For display all combined ROMs informations in BIOS
          /epa|epa1-7 : Add EPA LOGO BitMap to System BIOS
          /logo|logo1-7: Add OEM LOGO BitMap to System BIOS
          /oem0-7     : Add special OEM ROM to System BIOS
          /err        : Return error code after executed
          /btvga      : Add VGA ROM to Boot Rom Block Area.
          /isa        : Add ISA BIOS ROM to System BIOS.(/isa Filename [xxxx:0])
          /vga, /logo, /pci, /awdflash, /cpucode, /epa, /acpitbl, /vsa, /hpm
          /hpc, /fnt0 - 5, /ros, /nnoprom, /mib, /group

          RomFile   : File name of option ROM to add-in
          Release   : Release option ROM in current system BIOS
          Extract   : Extract option ROM to File in current system BIOS

Sample Output

CBROM V2.07 (C)Award Software 2000 All Rights Reserved.

              ********      p2b.bin BIOS component ********

 No. Item-Name         Original-Size   Compressed-Size Original-File-Name
================================================================================
  0. System BIOS       20000h(128.00K)14C3Dh(83.06K)stn.bin
  1. Other(0800:0000)  08000h(32.00K)04FCAh(19.95K)pci32.rom
  2. CPU micro code    0C062h(48.10K)060F9h(24.24K)cpucode.exe
  3. EPA pattern       00642h(1.56K)002A1h(0.66K)awardepa.epa
  4. ACPI table        01C58h(7.09K)00A64h(2.60K)ACPITBL.BIN
  5. VRS ROM           02086h(8.13K)01351h(4.83K)cav_shdw.bin

  Total compress code space  = 34C3Dh(211.06K)
  Total compressed code size = 21D56h(135.33K)
  Remain compress code space = 12EE7h(75.73K)

                          ** Micro Code Information **
Update ID  CPUID  |  Update ID  CPUID  |  Update ID  CPUID  |  Update ID  CPUID
------------------+--------------------+--------------------+-------------------
00000000 00000000      0000     0000|