Date: Wed, 5 Oct 1994 16:26:21 +0500 From: hvb AT netrix DOT com To: eliz AT is DOT elta DOT co DOT il Subject: Re: accuracy of clock() Cc: DJGPP AT sun DOT soe DOT clarkson DOT edu, victor AT euler DOT berkeley DOT edu Reply-To: hvb AT netrix DOT com > > > We had to reprogram the timer chip (8253) to have a faster interrupt rate. You > > still need to call the original interrupt to have the DOS clock up to date. > > On some hardware platform, this is not achievable as the disk drive actually > > uses the chip timer output for some of its own timing!!! > > AFAIK the timer chip has 3 independent timers/counters, each of which > can be programmed individually. The first 2 are used, but the third > isn't. So, unless those disks you mention use that third timer, it > can be reprogrammed without affecting system operation in any way > whatsoever, including the luxury to not pass the interrupts to the > original Int 08 handler which maintains DOS time. Am I right? > The truth is: Timer 0 is the one that DOS uses for its real time clock interrupt. I've read somewhere that some disk hardware uses this timer 0 output to time some of its internal operation, so if we reprogram this timer, on some hardware you may have to restore it back to its original state before certain disk operation. We did not need to do this on our PC based hardware. If we had to we probably have to work on some other solutions as it is not acceptable to do so. Timer 1: is used for the RAM refresh. So it is a no no. Timer 2: is used to generate sound for the speaker. This output does not generate any interrupt to the CPU. If you just want to sample the clock timer then it is ok. Cheers, ============================================================== Hung Bui Internet: hvb AT netrix DOT com Netrix Corporation Phone: +1 703 793 1016 13595 Dulles Technology Drive Fax: +1 703 713 3805 Herndon Va 22071 ==============================================================