X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libpcsxcore%2Fr3000a.h;h=a5166459a8b7b43d87b04c3f8334bd40f62532d7;hb=7a8117168d6b9ad083757e013049c0e45734f3fb;hp=32538e584849a15938f4349c5112b3772f4b12f9;hpb=163249087400935f084080127990bc762e83319c;p=pcsx_rearmed.git diff --git a/libpcsxcore/r3000a.h b/libpcsxcore/r3000a.h index 32538e58..a5166459 100644 --- a/libpcsxcore/r3000a.h +++ b/libpcsxcore/r3000a.h @@ -29,12 +29,24 @@ extern "C" { #include "psxcounters.h" #include "psxbios.h" +#ifdef ICACHE_EMULATION +enum { + R3000ACPU_NOTIFY_CACHE_ISOLATED = 0, + R3000ACPU_NOTIFY_CACHE_UNISOLATED = 1, + R3000ACPU_NOTIFY_DMA3_EXE_LOAD = 2 +}; +extern uint32_t *Read_ICache(uint32_t pc); +#endif + typedef struct { int (*Init)(); void (*Reset)(); void (*Execute)(); /* executes up to a break */ void (*ExecuteBlock)(); /* executes up to a jump */ void (*Clear)(u32 Addr, u32 Size); +#ifdef ICACHE_EMULATION + void (*Notify)(int note, void *data); +#endif void (*Shutdown)(); } R3000Acpu; @@ -184,6 +196,8 @@ typedef struct { struct { u32 sCycle, cycle; } intCycle[32]; } psxRegisters; +extern boolean writeok; + extern psxRegisters psxRegs; /* new_dynarec stuff */