Use generic date conversion module.

This commit is contained in:
leo 1997-02-26 12:26:36 +00:00
parent 2d43c4a079
commit 5e2ca8918d
2 changed files with 16 additions and 29 deletions

View File

@ -1,5 +1,5 @@
#
# $NetBSD: files.atari,v 1.29 1997/01/21 09:39:20 thorpej Exp $
# $NetBSD: files.atari,v 1.30 1997/02/26 12:26:36 leo Exp $
#
maxpartitions 16
@ -17,6 +17,7 @@ file arch/atari/dev/event.c event
device clock
attach clock at mainbus
file dev/clock_subr.c
file arch/atari/dev/clock.c
# keyboard

View File

@ -1,4 +1,4 @@
/* $NetBSD: clock.c,v 1.17 1996/12/20 12:49:35 leo Exp $ */
/* $NetBSD: clock.c,v 1.18 1997/02/26 12:26:44 leo Exp $ */
/*
* Copyright (c) 1988 University of Utah.
@ -48,6 +48,9 @@
#include <sys/device.h>
#include <sys/uio.h>
#include <sys/conf.h>
#include <dev/clock_subr.h>
#include <machine/psl.h>
#include <machine/cpu.h>
#include <machine/iomap.h>
@ -402,23 +405,12 @@ resettodr()
return;
}
static char dmsize[12] =
{
31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
};
static char ldmsize[12] =
{
31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31
};
static u_long
gettod()
{
int i, sps;
u_long new_time = 0;
char *msize;
mc_todregs clkregs;
int sps;
mc_todregs clkregs;
struct clock_ymdhms dt;
sps = splhigh();
MC146818_GETTOD(RTC, &clkregs);
@ -436,21 +428,15 @@ gettod()
return(0);
if(clkregs[MC_YEAR] > (2000 - GEMSTARTOFTIME))
return(0);
clkregs[MC_YEAR] += GEMSTARTOFTIME;
for(i = BSDSTARTOFTIME; i < clkregs[MC_YEAR]; i++) {
if(is_leap(i))
new_time += 366;
else new_time += 365;
}
dt.dt_year = clkregs[MC_YEAR] + GEMSTARTOFTIME;
dt.dt_mon = clkregs[MC_MONTH];
dt.dt_day = clkregs[MC_DOM];
dt.dt_hour = clkregs[MC_HOUR];
dt.dt_min = clkregs[MC_MIN];
dt.dt_sec = clkregs[MC_SEC];
msize = is_leap(clkregs[MC_YEAR]) ? ldmsize : dmsize;
for(i = 0; i < (clkregs[MC_MONTH] - 1); i++)
new_time += msize[i];
new_time += clkregs[MC_DOM] - 1;
new_time *= SECS_DAY;
new_time += (clkregs[MC_HOUR] * 3600) + (clkregs[MC_MIN] * 60);
return(new_time + clkregs[MC_SEC]);
return(clock_ymdhms_to_secs(&dt));
}
/***********************************************************************
* RTC-device support *