;/* a2d.c - Execute me to compile me with SAS C 5.10
LC -b1 -cfis -j73 a2d.c
Blink FROM LIB:c.o,a2d.o TO a2d LIBRARY LIB:LC.lib,LIB:Amiga.lib
quit
*/
#include <exec/types.h>
#include <exec/memory.h>
#include <dos/datetime.h>
#include <devices/timer.h>
#include <clib/exec_protos.h>
#include <clib/timer_protos.h>
#include <clib/utility_protos.h>
#include <stdio.h>
LONG main(void);
struct Library *TimerBase;
struct Library *UtilityBase;
LONG main(void)
{
struct ClockData *clockdata;
struct timerequest *tr;
struct timeval *tv;
LONG seconds;
if (UtilityBase = OpenLibrary("utility.library", 37))
{
if (tr = AllocMem(sizeof(struct timerequest), MEMF_CLEAR))
{
if (tv = AllocMem(sizeof(struct timeval), MEMF_CLEAR))
{
if (clockdata = AllocMem(sizeof(struct ClockData), MEMF_CLEAR))
{
if (!(OpenDevice("timer.device", UNIT_VBLANK, (struct IORequest *)tr, 0) ))
{
TimerBase = tr->tr_node.io_device;
GetSysTime(tv);
printf("GetSysTime():\t%d %d\n", tv->tv_secs, tv->tv_micro);
Amiga2Date(tv->tv_secs, clockdata);
printf("Amiga2Date(): sec %d min %d hour %d\n", clockdata->sec,
clockdata->min, clockdata->hour);
printf(" mday %d month %d year %d wday %d\n", clockdata->mday,
clockdata->month, clockdata->year, clockdata->wday);
seconds = CheckDate(clockdata);
printf("CheckDate():\t%ld\n", seconds);
seconds = Date2Amiga(clockdata);
printf("Date2Amiga():\t%ld\n", seconds);
CloseDevice((struct IORequest *)tr);
}
FreeMem(clockdata, sizeof(struct ClockData));
}
FreeMem(tv, sizeof(struct timeval));
}
FreeMem(tr, sizeof(struct timerequest));
}
CloseLibrary(UtilityBase);
}
}