[Coco] Questions about the Coco3 GIME Timer

Robert Gault robert.gault at worldnet.att.net
Tue Feb 13 10:27:30 EST 2007


  I've been involved with testing the operation of the Coco3 timer. The 
results are unexpected and seem to contradict previously available 
information. I would appreciate interested readers attempting to confirm 
or disprove the following information.
  Don't respond if you just think something is one way, have read 
something is one way, or quote the service manual. Respond only with 
test results based on software or test equipment measurements.

  I've always thought that by default the timer was turned off, and 
required a value sent to $FF94 to start. That is not the results of my 
tests.
  My tests indicate that the timer cannot be turned off (although 
interrupts from it can be blocked), the default value is $FFFF (based on 
the 32K ROM code), and - since it is always on - it is sufficient to 
just send a value to $FF95 to change the timed interval.
  What I have not determined is when the new 12-bit value becomes 
effective if only $FF95 is changed. Is the change immediate or does it 
take place on the next count down.

  The answers to these questions become important if the timer is used 
to measure a single interval. It will be important to know whether the 
timer can be loaded with a 16-bit register or whether two 8-bit loads 
are required, $FF95 then $FF94.
  When the timer is used to synchronize a program to a specific 
frequency, these questions are academic. A very large number of count 
downs will occur and if the first is not the same length as all the 
rest, it would hardly matter.

  Since exact knowledge of the timer operation is needed both for Coco 
emulators or any Coco4 designs, these questions are significant if 
arcane. Useful feedback will be appreciated.



More information about the Coco mailing list