notaz.gp2x.de
/
cyclone68000.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
pass jumptable ptr from C
[cyclone68000.git]
/
Cyclone.h
diff --git
a/Cyclone.h
b/Cyclone.h
index
fdcff59
..
f3c1835
100644
(file)
--- a/
Cyclone.h
+++ b/
Cyclone.h
@@
-19,6
+19,8
@@
extern "C" {
\r
extern int CycloneVer; // Version number of library
\r
\r
\r
extern int CycloneVer; // Version number of library
\r
\r
+extern long CycloneJumpTab[65536]; // default jump table
\r
+
\r
struct Cyclone
\r
{
\r
unsigned int d[8]; // [r7,#0x00]
\r
struct Cyclone
\r
{
\r
unsigned int d[8]; // [r7,#0x00]
\r
@@
-55,10
+57,14
@@
struct Cyclone
};
\r
\r
// Initialize. Used only if Cyclone was compiled with compressed jumptable, see config.h
\r
};
\r
\r
// Initialize. Used only if Cyclone was compiled with compressed jumptable, see config.h
\r
-void CycloneInit(void);
\r
+#define CycloneInit() \
\r
+ CycloneInitJT(CycloneJumpTab)
\r
+void CycloneInitJT(void *jt);
\r
\r
// Reset
\r
\r
// Reset
\r
-void CycloneReset(struct Cyclone *pcy);
\r
+#define CycloneReset(pcy) \
\r
+ CycloneResetJT(pcy, CycloneJumpTab)
\r
+void CycloneResetJT(struct Cyclone *pcy, void *jt);
\r
\r
// Run cyclone. Cycles should be specified in context (pcy->cycles)
\r
void CycloneRun(struct Cyclone *pcy);
\r
\r
// Run cyclone. Cycles should be specified in context (pcy->cycles)
\r
void CycloneRun(struct Cyclone *pcy);
\r
@@
-78,7
+84,9
@@
void CyclonePack(const struct Cyclone *pcy, void *save_buffer);
void CycloneUnpack(struct Cyclone *pcy, const void *save_buffer);
\r
\r
// genesis: if 1, switch to normal TAS handlers
\r
void CycloneUnpack(struct Cyclone *pcy, const void *save_buffer);
\r
\r
// genesis: if 1, switch to normal TAS handlers
\r
-void CycloneSetRealTAS(int use_real);
\r
+#define CycloneSetRealTAS(use_real) \
\r
+ CycloneSetRealTAS_JT(use_real, CycloneJumpTab)
\r
+void CycloneSetRealTAS_JT(int use_real, void *jt);
\r
\r
\r
// These values are special return values for IrqCallback.
\r
\r
\r
// These values are special return values for IrqCallback.
\r