# define unlikely(x) (x)
#endif
+psxRegisters psxRegs;
+Rcnt rcnts[4];
+
static struct lightrec_state *lightrec_state;
static char *name = "retroarch.exe";
static bool lightrec_very_debug;
static u32 lightrec_begin_cycles;
-int stop;
-u32 cycle_multiplier;
-int new_dynarec_hacks;
-
-/* Unused for now */
-u32 event_cycles[PSXINT_COUNT];
-u32 next_interupt;
-
-void new_dyna_before_save() {}
-void new_dyna_after_save() {}
-void new_dyna_freeze(void *f, int i) {}
-
enum my_cp2_opcodes {
OP_CP2_RTPS = 0x01,
OP_CP2_NCLIP = 0x06,
lightrec_map, ARRAY_SIZE(lightrec_map),
&lightrec_ops);
- fprintf(stderr, "M=0x%lx, P=0x%lx, R=0x%lx, H=0x%lx\n",
- (uintptr_t) psxM,
- (uintptr_t) psxP,
- (uintptr_t) psxR,
- (uintptr_t) psxH);
+ // fprintf(stderr, "M=0x%lx, P=0x%lx, R=0x%lx, H=0x%lx\n",
+ // (uintptr_t) psxM,
+ // (uintptr_t) psxP,
+ // (uintptr_t) psxR,
+ // (uintptr_t) psxH);
#ifndef _WIN32
signal(SIGPIPE, exit);
lightrec_invalidate(lightrec_state, addr, size * 4);
}
+static void lightrec_plugin_notify(int note, void *data)
+{
+ /*
+ To change once proper icache emulation is emulated
+ switch (note)
+ {
+ case R3000ACPU_NOTIFY_CACHE_UNISOLATED:
+ lightrec_plugin_clear(0, 0x200000/4);
+ break;
+ case R3000ACPU_NOTIFY_CACHE_ISOLATED:
+ // Sent from psxDma3().
+ case R3000ACPU_NOTIFY_DMA3_EXE_LOAD:
+ default:
+ break;
+ }*/
+}
+
+static void lightrec_plugin_apply_config()
+{
+}
+
static void lightrec_plugin_shutdown(void)
{
lightrec_destroy(lightrec_state);
lightrec_plugin_execute,
lightrec_plugin_execute_block,
lightrec_plugin_clear,
+ lightrec_plugin_notify,
+ lightrec_plugin_apply_config,
lightrec_plugin_shutdown,
};