Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Award v4.50G Bios eprom Y2K fix

176 views
Skip to first unread message

u1061771156

unread,
Jan 12, 2000, 3:00:00 AM1/12/00
to
(Repost attempt to just this newsgroup).

I'm one of the people who discovered that their Award Bios won't
stay at the year 2000, but pops forward at each reboot to 2094. Ugh.
A little web searching shows this is a well known "feature" of the
Award v4.50G bios. :-(

There's a "fix" on the phoenix website, but it sounds pretty ugly
involving a piece of code in the master boot record. So I decided to
fix my eprom properly instead. Here are my findings, for those other
people out there that have access to an Eprom programmer and wish to
apply the fix:

Many hours disassembly over Saturday reveals a little table containing
minimum values for the cmos registers, seconds through century, for
my particular Bios it's at address 093A. The values are:
00,00,00,01,01,94,19 (all in hex)
the exact address of this table will probably vary slightly between
Bioses for different motherboards, but it oughtn't to be hard to
search for it.

So the fix is to change the 94 into 00. The whole eprom contains a
checksum, so you need to also add 94 (hex) to the last byte in
the eprom. So the total change was:
093F: was 94 change to 00
FFFF: mine was 2D so changed to C1
It then only took a few minutes to read the old eprom on my eprom
programmer, update the bytes, and program a new eprom. Setting the
date to 2000 then results in it staying at 2000!

For reference, here is a fuller disassembly of the relevant routine:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; Address and Max value pairs for some CMOS registers
0092C DB 80,59,82,59,84,23,87,31,88,12,89,99,B2,20
; Min values for them too
0093A DB 00,00,00,01,01,94,19
; Junk
00941 DB 87,DB,90
; TEST CMOS VALUES AGAINST TABLE OF LIMITS
VFY_CMOS CLI
00945 MOV SI,092C ;max table
00948 MOV DI,093A ;min table
more_tst CMP SI,093A ;end of table
0094F JZ 0981=chk_done ;finished
00951 CALL 09D7=CHK_UPD
00954 JB 097B=chk_next ;update in progress, skip test
00956 CS: MOV AX,[SI] ;AL=regaddr AH=maxvalue
00959 CALL E98A=CMOS_RD
0095C CMP AL,AH
0095E JA 096D=badvalue ;J if too big
00960 CS: MOV BL,[DI] ;BL=minvalue
00963 CMP AL,BL
00965 JB 096D=badvalue ;J if too small
00967 AND AL,0F
00969 CMP AL,09
0096B JBE 097B=chk_next ;J if valid BCD
badvalue CALL 09D7=CHK_UPD ;Check for no update in progress
00970 JB 097B=chk_next ;Was an update, let it off the error
00972 CS: MOV AL,[SI] ;addr of register
00975 CS: MOV AH,[DI] ;min value
00978 CALL E99B=CMOS_WR ;set to the min value
chk_next ADD SI,0002
0097E INC DI
0097F JMP 094B=more_tst
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Purists might wish to change the 20 as well, but personally I don't
expect to see the end of this century. ;-)

Hope this proves useful to someone...

Best Regards,
Mike.


Henry Helgen

unread,
Jan 18, 2000, 3:00:00 AM1/18/00
to
In article <slrn87q314.l...@csi.com>, u1061...@csi.com
(u1061771156) writes:

>I'm one of the people who discovered that their Award Bios won't
>stay at the year 2000, but pops forward at each reboot to 2094. Ugh.
>A little web searching shows this is a well known "feature" of the
>Award v4.50G bios. :-(
>
>There's a "fix" on the phoenix website, but it sounds pretty ugly
>involving a piece of code in the master boot record. So I decided to
>fix my eprom properly instead. Here are my findings, for those other
>people out there that have access to an Eprom programmer and wish to
>apply the fix:
>

Actually, I just installed the free Award BIOS test fix utility on a 486
running Windows 3.1 with Award BIOS 4.50G. It was a simple download, extract
the files, and then run the RUNME program. The program reboots the computer
three times and prompts you to install the fix driver. Everything worked
smoothly. Here are the links.
Test fix tool http://www.phoenix.com/year2000/tf-utility.html
Test fix FAQ http://www.phoenix.com/year2000/test-fix-faq.html
Award statement http://www.phoenix.com/year2000/award.html

However, before I installed the fix, this machine lost track of the hard drive
and diskette drive. I just pressed the DEL key during power on to enter the
CMOS setup menu. I reset the date and time, selected the correct floppy drive,
and autodetected the hard drive.

Henry Helgen, Owner
Helgen Computer Consulting, Inc.
USA Phone: 218-730-0012
Email: h...@helgen.net
Web: http://helgen.net


Henry Helgen, Owner
Helgen Computer Consulting, Inc.
USA Phone: 218-730-0012
Email: h...@helgen.net
Web: http://helgen.net


0 new messages