forked from 0ad/0ad
26 lines
886 B
C
26 lines
886 B
C
|
/**
|
||
|
* =========================================================================
|
||
|
* File : pit.h
|
||
|
* Project : 0 A.D.
|
||
|
* Description : Timer implementation using 82C53/4 PIT
|
||
|
* =========================================================================
|
||
|
*/
|
||
|
|
||
|
// license: GPL; see lib/license.txt
|
||
|
|
||
|
#ifndef INCLUDED_PIT
|
||
|
#define INCLUDED_PIT
|
||
|
|
||
|
// note: we don't access the PIT for two reasons:
|
||
|
// - it rolls over every 55 ms (1.193 MHz, 16 bit) and would have to be
|
||
|
// read at least that often, which would require setting high thread
|
||
|
// priority (dangerous).
|
||
|
// - reading it is slow and cannot be done by two independent users
|
||
|
// (the second being QPC) since the counter value must be latched.
|
||
|
//
|
||
|
// there are enough other tick sources anway.
|
||
|
|
||
|
static const i64 PIT_FREQ = 1193182; // (= master oscillator frequency/12)
|
||
|
|
||
|
#endif // #ifndef INCLUDED_PIT
|