14 #define RTC_IRQ_NUMBER 8 15 #define CMOS_ADDRESS_PORT 0x70 16 #define CMOS_DATA_PORT 0x71 17 #define CMOS_DISABLE_NMI (1 << 7) 18 #define CMOS_BATTERY_OK 0x80 21 #define CMOS_STB_DST (1 << 0) 22 #define CMOS_STB_24HOUR (1 << 1) 23 #define CMOS_STB_BINARY (1 << 2) 24 #define CMOS_STB_SQUARE_WAVE (1 << 3) 25 #define CMOS_STB_INT_ON_UPDATE (1 << 4) 26 #define CMOS_STB_INT_ON_ALARM (1 << 5) 27 #define CMOS_STB_INT_PERIODIC (1 << 6) 28 #define CMOS_STB_UPDATE_CYCLE (1 << 7) 31 #define CMOS_STC_UF (1 << 4) 32 #define CMOS_STC_AF (1 << 5) 33 #define CMOS_STC_PF (1 << 6) 34 #define CMOS_STC_IRQF (1 << 7) 37 #define CMOS_DEFAULT_STA 0x26 38 #define CMOS_DEFAULT_STB CMOS_STB_24HOUR 41 #define CMOS_EQUIPMENT_LIST 0x6F 44 #define WRITE_CMOS_DATA(Cmos, Value) \ 45 ((Cmos).StatusRegB & CMOS_STB_BINARY) ? (Value) : BCD_TO_BINARY(Value) 47 #define READ_CMOS_DATA(Cmos, Value) \ 48 ((Cmos).StatusRegB & CMOS_STB_BINARY) ? (Value) : BINARY_TO_BCD(Value)
struct CMOS_CLOCK * PCMOS_CLOCK
enum _CMOS_REGISTERS * PCMOS_REGISTERS
enum _CMOS_REGISTERS CMOS_REGISTERS
C_ASSERT(sizeof(CMOS_MEMORY)==0x40)
VOID CmosInitialize(VOID)
DWORD RtcGetTicksPerSecond(VOID)
BOOLEAN IsNmiEnabled(VOID)
struct CMOS_MEMORY * PCMOS_MEMORY