Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!mcvax!ukc!rde From: rde@ukc.ac.uk (R.D.Eager) Newsgroups: comp.sys.ibm.pc Subject: Re: Date does not change when PC is left on Message-ID: <2224@eagle.ukc.ac.uk> Date: Thu, 4-Dec-86 17:52:53 EST Article-I.D.: eagle.2224 Posted: Thu Dec 4 17:52:53 1986 Date-Received: Fri, 5-Dec-86 05:47:05 EST References: <289@rocky2.UUCP> <708@watmum.UUCP> <2763@gitpyr.gatech.EDU> Reply-To: rde@ukc.ac.uk (R.D.Eager) Organization: U of Kent at Canterbury, Canterbury, UK Lines: 31 Just to clear up a slight error in a previous article. The date rollover in DOS problem; is actually TWO problems. First, as someone said, the flag in the BIOS just says that a new day has started, not how many new days. Thus a machine that is unused for a day will 'lose' a day. Second, the IBMBIO.COM code (the BIOS interface) has a bug which is certainly present in DOS (MS and PC) version 2.xx. I am pretty sure it is fixed in 3.xx; I looked for the faulty code and it was no longer faulty. This bug is that there are *several* calls to the BIOS timer, but not all are to get the date/time for DOS (those that are work OK). The other calls are nothing to do with disk file date/time (they are done by the calls just mentioned) but with a two second timer used for disk optimisation. In a nutshell, the disk driver tries to compensate for the lack of a door latch status bit by saying that a disk can't have been changed for another if it was accessed in the last two seconds (thus allowing directory/FAT cacheing). The bozo who wrote this bit just ignored the rollover bit! Thus, if the first BIOS call after midnight is to get date/time, fine. If it is a disk access, it will almost certainly get the date wrong.... -- Bob Eager rde@ukc.UUCP rde@ukc ...!mcvax!ukc!rde Phone: +44 227 66822 ext 7589