]> Shamusworld >> Repos - virtualjaguar/blobdiff - src/event.h
UI cleanups, added RAM randomization for main RAM & GPU local RAM.
[virtualjaguar] / src / event.h
index 35f84468240984c090f50ea230e2dea3878a3267..ff976c966f83c81d96ba145706dc0373616b4e49 100644 (file)
@@ -1,28 +1,32 @@
 //
 // EVENT.H: System timing support functionality
 //
-// by James L. Hammons
+// by James Hammons
 //
 
 #ifndef __EVENT_H__
 #define __EVENT_H__
 
-#include "types.h"
+enum { EVENT_MAIN, EVENT_JERRY };
 
-// Note that these are NTSC timings:
+//NTSC Timings...
+#define RISC_CYCLE_IN_USEC        0.03760684198
+#define M68K_CYCLE_IN_USEC        (RISC_CYCLE_IN_USEC * 2)
+//PAL Timings
+#define RISC_CYCLE_PAL_IN_USEC         0.03760260812
+#define M68K_CYCLE_PAL_IN_USEC         (RISC_CYCLE_PAL_IN_USEC * 2)
 
-#define RISC_CYCLE_IN_USEC     0.03760684198
-#define M68K_CYCLE_IN_USEC     (RISC_CYCLE_IN_USEC * 2)
-#define HORIZ_PERIOD_IN_USEC   63.5555
+#define HORIZ_PERIOD_IN_USEC_NTSC 63.555555555
+#define HORIZ_PERIOD_IN_USEC_PAL  64.0
 
-#define USEC_TO_RISC_CYCLES(u) (uint32)(((u) / RISC_CYCLE_IN_USEC) + 0.5)
-#define USEC_TO_M68K_CYCLES(u) (uint32)(((u) / M68K_CYCLE_IN_USEC) + 0.5)
+#define USEC_TO_RISC_CYCLES(u) (uint32_t)(((u) / RISC_CYCLE_IN_USEC) + 0.5)
+#define USEC_TO_M68K_CYCLES(u) (uint32_t)(((u) / M68K_CYCLE_IN_USEC) + 0.5)
 
 void InitializeEventList(void);
-void SetCallbackTime(void (* callback)(void), double time);
+void SetCallbackTime(void (* callback)(void), double time, int type = EVENT_MAIN);
 void RemoveCallback(void (* callback)(void));
 void AdjustCallbackTime(void (* callback)(void), double time);
-double GetTimeToNextEvent(void);
-void HandleNextEvent(void);
+double GetTimeToNextEvent(int type = EVENT_MAIN);
+void HandleNextEvent(int type = EVENT_MAIN);
 
 #endif // __EVENT_H__