]> Shamusworld >> Repos - virtualjaguar/blob - src/include/jaguar.h
ef3ea8eb3c7928df03bed382b04d2d75d0ee9714
[virtualjaguar] / src / include / jaguar.h
1 #ifndef __JAGUAR_H__
2 #define __JAGUAR_H__
3
4 #include "types.h"
5 #include "log.h"
6 #include "version.h"
7 #include "memory.h"
8 #include "m68k.h"
9 #include "tom.h"
10 #include "jerry.h"
11 #include "gpu.h"
12 #include "dsp.h"
13 #include "objectp.h"
14 #include "blitter.h"
15 #include "clock.h"
16 #include "anajoy.h"
17 #include "joystick.h"
18 #include "pcm.h"
19 #include "jagdasm.h"
20 #include "dsnd.h"
21 #include "cdrom.h"
22 #include "eeprom.h"
23 #include "cdi.h"
24 #include "cdbios.h"
25
26 extern int32 jaguar_cpu_in_exec;
27 extern uint32 jaguar_mainRom_crc32;
28 extern char * jaguar_eeproms_path;
29
30 //#ifdef __PORT__
31 //void jaguar_init(const char * filename);
32 //#else
33 void jaguar_init(void);
34 //#endif        // #ifdef __PORT__
35 void jaguar_reset(void);
36 void jaguar_reset_handler(void);
37 void jaguar_done(void);
38 void jaguar_exec(int16 * backbuffer, bool render);
39 unsigned jaguar_byte_read(unsigned int offset);
40 unsigned jaguar_word_read(unsigned int offset);
41 unsigned jaguar_long_read(unsigned int offset);
42 void jaguar_byte_write(unsigned offset, unsigned data);
43 void jaguar_word_write(unsigned offset, unsigned data);
44 void jaguar_long_write(unsigned offset, unsigned data);
45 uint32 jaguar_interrupt_handler_is_valid(uint32 i);
46 void jaguar_dasm(uint32 offset, uint32 qt);
47
48 // Some handy macros to help converting native endian to big endian (jaguar native)
49 // & vice versa
50
51 #define SET32(r, a, v)  r[a] = ((v) & 0xFF000000) >> 24, r[a+1] = ((v) & 0x00FF0000) >> 16, \
52                                                 r[a+2] = ((v) & 0x0000FF00) >> 8, r[a+3] = (v) & 0x000000FF
53 #define GET32(r, a)             ((r[a] << 24) | (r[a+1] << 16) | (r[a+2] << 8) | r[a+3])
54 #define SET16(r, a, v)  r[a] = ((v) & 0xFF00) >> 8, r[a+1] = (v) & 0xFF
55 #define GET16(r, a)             ((r[a] << 8) | r[a+1])
56
57 //Temp debug stuff
58
59 void DumpMainMemory(void);
60 uint8 * GetRamPtr(void);
61
62 #endif  // #ifndef __JAGUAR_H__