aboutsummaryrefslogtreecommitdiff
path: root/sdk-modifications/include/ds2_timer.h
diff options
context:
space:
mode:
authorNebuleon Fumika2013-02-03 04:19:11 -0500
committerNebuleon Fumika2013-02-03 04:19:11 -0500
commit8693ae1bd880a758eb2efec4fccd32f89593855d (patch)
tree660b7ceed1789fc904332b96a2a4006b0e4cc6b8 /sdk-modifications/include/ds2_timer.h
parent02f8184fe07d99cceb85f4abd3ef0e5e3765b5ea (diff)
downloadsnes9x2005-8693ae1bd880a758eb2efec4fccd32f89593855d.tar.gz
snes9x2005-8693ae1bd880a758eb2efec4fccd32f89593855d.tar.bz2
snes9x2005-8693ae1bd880a758eb2efec4fccd32f89593855d.zip
Add SDK modifications by BassAceGold as of 2011-04-14, as well as modified DMA functions as of 2013-01-29.
Diffstat (limited to 'sdk-modifications/include/ds2_timer.h')
-rw-r--r--sdk-modifications/include/ds2_timer.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/sdk-modifications/include/ds2_timer.h b/sdk-modifications/include/ds2_timer.h
new file mode 100644
index 0000000..3e5c3bc
--- /dev/null
+++ b/sdk-modifications/include/ds2_timer.h
@@ -0,0 +1,50 @@
+#ifndef __DS2_TIMER_H__
+#define __DS2_TIMER_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+* Function: register a timer interruptting periodly
+* channel: timer id, from 0 to 1
+* period: interrupt period, unit is us, period < 2.5s
+* handle: interrupt handle, if handle = NULL, the timer will not generate interrupt
+* arg: argument to the interrupt handle
+*/
+extern int initTimer(unsigned int channel, unsigned int period, void (*handle)(unsigned int), int arg);
+
+/*
+* Function: set the timer run
+*/
+extern void runTimer(unsigned int channel);
+
+/*
+* Function: stop timer
+*/
+extern void stopTimer(unsigned int channel);
+
+/*
+* Function: reset timer
+*/
+extern void resetTimer(unsigned int channel);
+
+/*
+* Function: read value of timer
+*/
+extern unsigned int readTimer(unsigned int channel);
+
+
+#define SYSTIME_UNIT 42667
+/*
+* Function: get the elapsed time since DS2 started
+* it's uint is 42.667us, it will overflow after 50.9 horus since DS2 started
+*/
+extern unsigned int getSysTime(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //__DS2_TIMER_H__
+