Re: [Freedos-user] Old BIOS issue
On Sat, Oct 17, 2020 at 07:20:32PM +0200, Eric Auer wrote: > It basically says there are many ways in which hardware or > software could fail to handle the year, but you do not say > WHICH of them affect YOU. In particular, you could give it > a try and change that "19" to "20" in your CMOS memory :-) > Maybe your BIOS just fails to store the changed values. > > write register number to port 0x70 > read or write contents via port 0x71 > > register number 0x32 contains the century in BCD, e.g. 0x20 > register number 0x09 contains the year, e.g. 0x20 now ;-) > > In some cases, the century might be in another register, > so you should first check what the current contents are. > > Note that OR-ing the register number with 0x80 blocks NMI > and that immediately after port 0x70 access you should > access port 0x71, but messing with year and century will > probably be quite harmless and not time critical. So I did the following using debug: mov al,32 out 70,al in al,71 --> AX=0020 mov al,09 out 70,al in al,71 --> AX=0094 And indeed: "date" immediately after boot says "Oct 19, 2094" -- regards, Zbigniew ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
On 10/17/2020 9:33 AM, ZB wrote: Does there exist any DIY to fix "millennium bug" in old BIOS (no update available, unfortunately)? I mean "real fix, not workaround" - finding the proper cells in BIOS, modifying contents accordingly, burning... done Well, short answer: No. There are literally hundreds of different BIOS version out there, from dozens of manufacturers, so if they do not provide an updated BIOS, there simply is no chance to simply "fix the bug" in your copy of the BIOS. Where/how does that bug manifest for you? I can not remember actually to have run into this issue seriously 20 years ago, though a few applications software versions needed to be updated or did have some kind of patch/workaround available... Ralf -- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
On Sat, Oct 17, 2020 at 08:47:35PM +, Mercury Thirteen via Freedos-user wrote: > There's Y2KPatch which did the job on the dozen-or-so computers I had access > to at the time. Be warned, however, that I make absolutely no guarantees as > to how it will work on your system... I was a very young coder circa 1999, > and I haven't revised it since. > > You can find it here in the QBASIC Library: > http://mercurycoding.com/downloads.html Thanks, I'll use it carefully :) -- regards, Zbigniew ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
There's Y2KPatch which did the job on the dozen-or-so computers I had access to at the time. Be warned, however, that I make absolutely no guarantees as to how it will work on your system... I was a very young coder circa 1999, and I haven't revised it since. You can find it here in the QBASIC Library: http://mercurycoding.com/downloads.html Sent with [ProtonMail](https://protonmail.com) Secure Email. ‐‐‐ Original Message ‐‐‐ On Saturday, October 17, 2020 12:33 PM, ZB zbigniew2...@gmail.com wrote: > Does there exist any DIY to fix "millennium bug" in old BIOS (no update > available, unfortunately)? I mean "real fix, not workaround" - finding the > proper cells in BIOS, modifying contents accordingly, burning... done > --- > > regards, > Zbigniew > Freedos-user mailing list > Freedos-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/freedos-user___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
On Sat, Oct 17, 2020 at 07:31:02PM +0200, userbeit...@abwesend.de wrote: > Wow! Thanks for the link to Y2kure! This is the fix I absolutely prefer > for most of my older systems, since I deem any meddling with the BIOS > too dangerous... I just don't have the know-how to repair a possible > failure on that part. I believe your old motherboards similarly to mine properly keep track of all the "time parameters" but year alone. So it would be very easy to work the problem around by adding in AUTOEXEC.BAT the line like "date -y 2020" (if "date" utility had -y option - but it doesn't have it, so there's a need for parsing its output and creating proper date string which will be passed as parameter; or maybe for writing something directly to registers. Anyway I'll try to mess with that BIOS first -- regards, Zbigniew ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
On Sun, Oct 18, 2020 at 01:39:41AM +0800, TK Chia wrote: > I guess it cannot hurt to ask a few questions: > > 1) What does the PC say that the "current date" is, at startup? It properly keeps hour:minutes, month and day - just changes the "year" always to "2094". I came up with workaround - since the year part changes just once a year, then I can make AUTOEXEC.BAT update just year alone. But I'd prefer to fix that BIOS, if possible. > 2) What version of DOS is it running? Very old BIOS from 1996, if I'm correct (it's VLB Soyo-SiS mobo). No, there's no update available. > I am wondering if the problem is that the old PC does not have a working > real-time clock at all, which would mean it cannot keep track of the > time once the power goes off. Its clock works OK - I'm going to follow Eric's suggestion as I end my work -- regards, Zbigniew ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
Hello ZB, hello Eric, I found some basic information here: https://www.daqarta.com/y2kure.htm (I mean "BACKGROUND" paragraph), but when possible I'd like simply to modify BIOS and resolve the problem "once for always" It basically says there are many ways in which hardware or software could fail to handle the year, but you do not say WHICH of them affect YOU. In particular, you could give it a try and change that "19" to "20" in your CMOS memory :-) Maybe your BIOS just fails to store the changed values. I guess it cannot hurt to ask a few questions: 1) What does the PC say that the "current date" is, at startup? 2) What version of DOS is it running? I am wondering if the problem is that the old PC does not have a working real-time clock at all, which would mean it cannot keep track of the time once the power goes off. Thank you! -- https://github.com/tkchia ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
ZB wrote on 17th of October 2020: I found some basic information here: https://www.daqarta.com/y2kure.htm (I mean "BACKGROUND" paragraph), but when possible I'd like simply to modify BIOS and resolve the problem "once for always" Wow! Thanks for the link to Y2kure! This is the fix I absolutely prefer for most of my older systems, since I deem any meddling with the BIOS too dangerous... I just don't have the know-how to repair a possible failure on that part. A. ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
> I found some basic information here: https://www.daqarta.com/y2kure.htm > (I mean "BACKGROUND" paragraph), but when possible I'd like simply to modify > BIOS and resolve the problem "once for always" It basically says there are many ways in which hardware or software could fail to handle the year, but you do not say WHICH of them affect YOU. In particular, you could give it a try and change that "19" to "20" in your CMOS memory :-) Maybe your BIOS just fails to store the changed values. write register number to port 0x70 read or write contents via port 0x71 register number 0x32 contains the century in BCD, e.g. 0x20 register number 0x09 contains the year, e.g. 0x20 now ;-) In some cases, the century might be in another register, so you should first check what the current contents are. Note that OR-ing the register number with 0x80 blocks NMI and that immediately after port 0x70 access you should access port 0x71, but messing with year and century will probably be quite harmless and not time critical. Cheers, Eric ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
On Sat, Oct 17, 2020 at 06:44:20PM +0200, Eric Auer wrote: > Hi! In which sense do you suffer from which bug exactly? > > Does int 1a function 4 return the wrong century? Wrong > year? Wrong other date fields and function 5 fails to > let you fix it? A simple TSR could override those calls. > > I fail to remember any other BIOS function handle years > and reprogramming the BIOS would be a lot more effort, > although it should be easy to find your int 1a handler > and tune it to return other centuries. It is uploading > the changed BIOS (with ok checksum!) that takes effort. I have to update current date each time I boot my DOS up, which is becoming somewhat irritating. I found some basic information here: https://www.daqarta.com/y2kure.htm (I mean "BACKGROUND" paragraph), but when possible I'd like simply to modify BIOS and resolve the problem "once for always" -- regards, Zbigniew ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
Re: [Freedos-user] Old BIOS issue
Hi! In which sense do you suffer from which bug exactly? Does int 1a function 4 return the wrong century? Wrong year? Wrong other date fields and function 5 fails to let you fix it? A simple TSR could override those calls. I fail to remember any other BIOS function handle years and reprogramming the BIOS would be a lot more effort, although it should be easy to find your int 1a handler and tune it to return other centuries. It is uploading the changed BIOS (with ok checksum!) that takes effort. Cheers, Eric > Does there exist any DIY to fix "millennium bug" in old BIOS (no update > available, unfortunately)? I mean "real fix, not workaround" - finding the > proper cells in BIOS, modifying contents accordingly, burning... done ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user
[Freedos-user] Old BIOS issue
Does there exist any DIY to fix "millennium bug" in old BIOS (no update available, unfortunately)? I mean "real fix, not workaround" - finding the proper cells in BIOS, modifying contents accordingly, burning... done -- regards, Zbigniew ___ Freedos-user mailing list Freedos-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-user