////////////////////////////////////////////////////////////////
// File - cmos_date.c
//
// This application reads the date directly from the CMOS
// chip on the motherboard.
//
////////////////////////////////////////////////////////////////
#include "cmos_lib.h"
#include <stdio.h>
enum {
OFFSET_Seconds = 0,
OFFSET_Minutes = 2,
OFFSET_Hours = 4,
OFFSET_Day = 7,
OFFSET_Month = 8,
OFFSET_Year = 9,
} CMOS_REGISTER_OFFSETS;
int main(int argc, char *argv[])
{
CMOS_HANDLE hCMOS = NULL;
printf ("CMOS diagnostic utility.\n");
printf ("Application accesses hardware using " WD_PROD_NAME ".\n");
if (!CMOS_Open(&hCMOS))
{
printf("error while opening CMOS:\n");
printf("%s", CMOS_ErrorString);
return 0;
}
printf("Date and Time read directly from CMOS:\n");
printf("Time: %x:%02x:%02x\n",
CMOS_Read(hCMOS, OFFSET_Hours),
CMOS_Read(hCMOS, OFFSET_Minutes),
CMOS_Read(hCMOS, OFFSET_Seconds));
printf("Date: %x/%02x/%02x\n",
CMOS_Read(hCMOS, OFFSET_Month),
CMOS_Read(hCMOS, OFFSET_Day),
CMOS_Read(hCMOS, OFFSET_Year));
CMOS_Close(hCMOS);
return 0;
}