diff options
Diffstat (limited to 'trunk/src/emu/cpu/mips/r3000.h')
-rw-r--r-- | trunk/src/emu/cpu/mips/r3000.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/trunk/src/emu/cpu/mips/r3000.h b/trunk/src/emu/cpu/mips/r3000.h new file mode 100644 index 00000000000..d2c6789fbb3 --- /dev/null +++ b/trunk/src/emu/cpu/mips/r3000.h @@ -0,0 +1,68 @@ +/*************************************************************************** + + r3000.h + Interface file for the portable MIPS R3000 emulator. + Written by Aaron Giles + +***************************************************************************/ + +#ifndef __R3000_H__ +#define __R3000_H__ + + + +/*************************************************************************** + COMPILE-TIME DEFINITIONS +***************************************************************************/ + + +/*************************************************************************** + REGISTER ENUMERATION +***************************************************************************/ + +enum +{ + R3000_PC=1,R3000_SR, + R3000_R0,R3000_R1,R3000_R2,R3000_R3,R3000_R4,R3000_R5,R3000_R6,R3000_R7, + R3000_R8,R3000_R9,R3000_R10,R3000_R11,R3000_R12,R3000_R13,R3000_R14,R3000_R15, + R3000_R16,R3000_R17,R3000_R18,R3000_R19,R3000_R20,R3000_R21,R3000_R22,R3000_R23, + R3000_R24,R3000_R25,R3000_R26,R3000_R27,R3000_R28,R3000_R29,R3000_R30,R3000_R31 +}; + + +/*************************************************************************** + INTERRUPT CONSTANTS +***************************************************************************/ + +#define R3000_IRQ0 0 /* IRQ0 */ +#define R3000_IRQ1 1 /* IRQ1 */ +#define R3000_IRQ2 2 /* IRQ2 */ +#define R3000_IRQ3 3 /* IRQ3 */ +#define R3000_IRQ4 4 /* IRQ4 */ +#define R3000_IRQ5 5 /* IRQ5 */ + + +/*************************************************************************** + STRUCTURES +***************************************************************************/ + +typedef struct _r3000_cpu_core r3000_cpu_core; +struct _r3000_cpu_core +{ + UINT8 hasfpu; /* 1 if we have an FPU, 0 otherwise */ + size_t icache; /* code cache size */ + size_t dcache; /* data cache size */ +}; + + +/*************************************************************************** + PUBLIC FUNCTIONS +***************************************************************************/ + +DECLARE_LEGACY_CPU_DEVICE(R3000BE, r3000be); +DECLARE_LEGACY_CPU_DEVICE(R3000LE, r3000le); + +DECLARE_LEGACY_CPU_DEVICE(R3041BE, r3041be); +DECLARE_LEGACY_CPU_DEVICE(R3041LE, r3041le); + +#endif /* __R3000_H__ */ |