You've already forked Microtransactions64
mirror of
https://github.com/Print-and-Panic/Microtransactions64.git
synced 2026-01-21 10:17:19 -08:00
72 lines
2.2 KiB
C
72 lines
2.2 KiB
C
|
|
/*---------------------------------------------------------------------
|
||
|
|
Copyright (C) 1997, 1998 Nintendo.
|
||
|
|
|
||
|
|
File rtc.h
|
||
|
|
Coded by Shigeo Kimura. Oct 14, 1997.
|
||
|
|
Modified by Koji Mitsunari. Jan 22, 2001.
|
||
|
|
Comments Real Time Clock Library
|
||
|
|
---------------------------------------------------------------------*/
|
||
|
|
#ifndef _rtc_h_
|
||
|
|
#define _rtc_h_
|
||
|
|
|
||
|
|
/*-----------------------------------------------------------------------
|
||
|
|
* Macro & constant definitions
|
||
|
|
*-----------------------------------------------------------------------*/
|
||
|
|
/* Controller type */
|
||
|
|
#define CONT_TYPE_RTC 0x1000 /* from os.h */
|
||
|
|
#define RTC_WAIT 300
|
||
|
|
|
||
|
|
/* RTC status signed 32bits */
|
||
|
|
#define RTC_NG_NOTHING 0x8000
|
||
|
|
#define RTC_NG_WRITE 0x0100
|
||
|
|
#define RTC_NG_ADDR 0x0200
|
||
|
|
#define RTC_STATUS_BUSY 0x0080
|
||
|
|
#define RTC_STATUS_DDOWN 0x0002
|
||
|
|
#define RTC_STATUS_BDOWN 0x0001
|
||
|
|
|
||
|
|
/* RTC Error Code */
|
||
|
|
#define CONT_ERR_RTC_BUSY 16
|
||
|
|
#define CONT_ERR_RTC_BDOWN 17
|
||
|
|
#define CONT_ERR_RTC_DDOWN 18
|
||
|
|
#define CONT_ERR_RTC_BDDOWN 19
|
||
|
|
|
||
|
|
/* RTC bit status */
|
||
|
|
#define RTC_EALM 0x80
|
||
|
|
#define RTC_ALM 0x20
|
||
|
|
#define RTC_WPB1 0x02
|
||
|
|
#define RTC_WPB0 0x01
|
||
|
|
#define RTC_MOD 0x04
|
||
|
|
#define RTC_CHLD 0x02
|
||
|
|
#define RTC_ADJ 0x01
|
||
|
|
|
||
|
|
#define RTC_ADDR_FLAG 0
|
||
|
|
#define RTC_ADDR_RAM 1
|
||
|
|
#define RTC_ADDR_TIME 2
|
||
|
|
|
||
|
|
typedef struct{
|
||
|
|
u8 sec; /* second 0-59 */
|
||
|
|
u8 min; /* minute 0-59 */
|
||
|
|
u8 hour; /* hour 0-23 */
|
||
|
|
u8 day; /* day 1-31 */
|
||
|
|
u8 week; /* week 0-6(sun,mon,..,sat) */
|
||
|
|
u8 month; /* month 1-12 */
|
||
|
|
u16 year; /* year 1901-2099 */
|
||
|
|
} OSRTCTime;
|
||
|
|
|
||
|
|
/*-----------------------------------------------------------------------
|
||
|
|
* externs
|
||
|
|
*-----------------------------------------------------------------------*/
|
||
|
|
|
||
|
|
extern s32 osRTCInit( OSMesgQueue *mq);
|
||
|
|
extern s32 osRTCReadData( OSMesgQueue *mq, u8 *);
|
||
|
|
extern s32 osRTCWriteData( OSMesgQueue *mq, u8 *);
|
||
|
|
extern s32 osRTCGetTime( OSMesgQueue *mq, OSRTCTime *);
|
||
|
|
extern s32 osRTCSetTime( OSMesgQueue *mq, OSRTCTime *);
|
||
|
|
extern u32 osRTCGetIntervalTime(OSRTCTime *, OSRTCTime *);
|
||
|
|
extern s32 osRTCGetLaterTime(OSMesgQueue *mq, u32, OSRTCTime *);
|
||
|
|
extern s32 osRTCSetAlarm( OSMesgQueue *mq, u8, u8);
|
||
|
|
extern s32 osRTCGetAlarmStat(OSMesgQueue *mq, u8 *, u8 *, int *);
|
||
|
|
extern s32 osRTCProbe( OSMesgQueue *mq);
|
||
|
|
|
||
|
|
#endif /* _rtc_h_ */
|