#include "psxcounters.h"
#include "psxbios.h"
+enum R3000Aexception {
+ R3000E_Int = 0, // Interrupt
+ R3000E_AdEL = 4, // Address error (on load/I-fetch)
+ R3000E_AdES = 5, // Address error (on store)
+ R3000E_IBE = 6, // Bus error (instruction fetch)
+ R3000E_DBE = 7, // Bus error (data load)
+ R3000E_Syscall = 8, // syscall instruction
+ R3000E_Bp = 9, // Breakpoint - a break instruction
+ R3000E_RI = 10, // reserved instruction
+ R3000E_CpU = 11, // Co-Processor unusable
+ R3000E_Ov = 12 // arithmetic overflow
+};
+
enum R3000Anote {
R3000ACPU_NOTIFY_CACHE_ISOLATED = 0,
R3000ACPU_NOTIFY_CACHE_UNISOLATED = 1,
u32 subCycle; /* interpreter cycle counting */
u32 subCycleStep;
u32 biuReg;
- u32 reserved[3];
+ u8 reserved;
+ u8 dloadSel;
+ u8 dloadReg[2];
+ u32 dloadVal[2];
// warning: changing anything in psxRegisters requires update of all
// asm in libpcsxcore/new_dynarec/
} psxRegisters;