aboutsummaryrefslogtreecommitdiff
path: root/sdk-modifications/include/ds2_cpu.h
diff options
context:
space:
mode:
authorNebuleon Fumika2013-02-05 01:33:39 -0500
committerNebuleon Fumika2013-02-05 01:33:39 -0500
commitdfa2d3cc68616ddc7e5c5fd1bb9f250fa44cd2fd (patch)
treeda3305b41ea030084bd15437b947cac4fb3518d0 /sdk-modifications/include/ds2_cpu.h
parentd1a7bf5eb558e7db4a1a27e15ebedb02e6b7f804 (diff)
downloadsnes9x2005-dfa2d3cc68616ddc7e5c5fd1bb9f250fa44cd2fd.tar.gz
snes9x2005-dfa2d3cc68616ddc7e5c5fd1bb9f250fa44cd2fd.tar.bz2
snes9x2005-dfa2d3cc68616ddc7e5c5fd1bb9f250fa44cd2fd.zip
Add include files from BassAceGold's library, release 2 fix 2.2.
Diffstat (limited to 'sdk-modifications/include/ds2_cpu.h')
-rwxr-xr-xsdk-modifications/include/ds2_cpu.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/sdk-modifications/include/ds2_cpu.h b/sdk-modifications/include/ds2_cpu.h
new file mode 100755
index 0000000..d4b7144
--- /dev/null
+++ b/sdk-modifications/include/ds2_cpu.h
@@ -0,0 +1,57 @@
+#ifndef __DS2_CPU_H__
+#define __DS2_CPU_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+//exception handle
+
+
+//cache operationr
+//invalidate instruction cache
+extern void __icache_invalidate_all(void);
+
+//invalidate data cache
+extern void __dcache_invalidate_all(void);
+
+//data cache writeback
+extern void __dcache_writeback_all(void);
+
+//data cache writeback and invalidate
+extern void _dcache_wback_inv(unsigned long addr, unsigned long size);
+
+
+//interruption operation
+//clear CPU's interrupt state and enable global interrupt
+extern void sti(void);
+
+//disable global interrupt
+extern void cli(void);
+
+//disable global interrupt and store the global interrupt state
+//return: interrupt state
+extern unsigned int spin_lock_irqsave(void);
+
+//restore global interrupt state
+extern void spin_unlock_irqrestore(unsigned int val);
+
+
+//CPU frequence
+//There are 14 levels, 0 to 13, 13 level have the highest clock frequence
+extern int ds2_setCPUclocklevel(unsigned int num);
+
+//print colock frequence CPU
+extern void printf_clock(void);
+
+//delay n us
+extern void udelay(unsigned int usec);
+
+//delay n ms
+extern void mdelay(unsigned int msec);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //__DS2_CPU_H__