5 #include "memory.h" // For "UNKNOWN" enum
8 void JaguarReset(void);
11 uint8 JaguarReadByte(uint32 offset, uint32 who = UNKNOWN);
12 uint16 JaguarReadWord(uint32 offset, uint32 who = UNKNOWN);
13 uint32 JaguarReadLong(uint32 offset, uint32 who = UNKNOWN);
14 void JaguarWriteByte(uint32 offset, uint8 data, uint32 who = UNKNOWN);
15 void JaguarWriteWord(uint32 offset, uint16 data, uint32 who = UNKNOWN);
16 void JaguarWriteLong(uint32 offset, uint32 data, uint32 who = UNKNOWN);
18 bool JaguarInterruptHandlerIsValid(uint32 i);
19 void JaguarDasm(uint32 offset, uint32 qt);
21 void JaguarExecute(uint32 * backbuffer, bool render);
22 //For testing the new system...
23 void JaguarExecuteNew(void);
25 // Exports from JAGUAR.CPP
27 extern bool BIOSLoaded;
28 extern bool CDBIOSLoaded;
29 extern int32 jaguarCPUInExec;
30 extern uint32 jaguarMainROMCRC32, jaguarROMSize, jaguarRunAddress;
31 extern char * jaguarEepromsPath;
32 extern uint32 * backbuffer;
34 // Various clock rates
36 #define M68K_CLOCK_RATE_PAL 13296950
37 #define M68K_CLOCK_RATE_NTSC 13295453
38 #define RISC_CLOCK_RATE_PAL 26593900
39 #define RISC_CLOCK_RATE_NTSC 26590906
41 // Stuff for IRQ handling
46 // Video stuff (should go in tom.h?)
48 #define VIRTUAL_SCREEN_WIDTH 320
49 #define VIRTUAL_SCREEN_HEIGHT_NTSC 240
50 #define VIRTUAL_SCREEN_HEIGHT_PAL 256
52 //Temp debug stuff (will go away soon, so don't depend on these)
54 void DumpMainMemory(void);
55 uint8 * GetRamPtr(void);
57 #endif // __JAGUAR_H__