1 /* 2 * Copyright (c) 1982 Regents of the University of California. 3 * All rights reserved. The Berkeley software License Agreement 4 * specifies the terms and conditions for redistribution. 5 * 6 * @(#)clock.h 6.2 (Berkeley) 06/08/85 7 */ 8 9 /* 10 * VAX clock registers 11 */ 12 13 #define ICCS_RUN 0x00000001 14 #define ICCS_TRANS 0x00000010 15 #define ICCS_SS 0x00000020 16 #define ICCS_IE 0x00000040 17 #define ICCS_INT 0x00000080 18 #define ICCS_ERR 0x80000000 19 20 #define SECDAY ((unsigned)(24*60*60)) /* seconds per day */ 21 #define SECYR ((unsigned)(365*SECDAY)) /* per common year */ 22 /* 23 * TODRZERO is the what the TODR should contain when the ``year'' begins. 24 * The TODR should always contain a number between 0 and SECYR+SECDAY. 25 */ 26 #define TODRZERO ((unsigned)(1<<28)) 27 28 #define YRREF 1970 29 #define LEAPYEAR(year) ((year)%4==0) /* good till time becomes negative */ 30 31 /* 32 * Has the time-of-day clock wrapped around? 33 */ 34 #define clkwrap() (((unsigned)mfpr(TODR) - TODRZERO)/100 > SECYR+SECDAY) 35 36 /* 37 * Software clock is software interrupt level 8, 38 * implemented as mtpr(SIRR, 0x8) in asm.sed. 39 */ 40