11 #define VIDEO_MODE_16BPP_CRY 0
12 #define VIDEO_MODE_24BPP_RGB 1
13 #define VIDEO_MODE_16BPP_DIRECT 2
14 #define VIDEO_MODE_16BPP_RGB 3
16 // 68000 Interrupt bit positions (enabled at $F000E0)
18 enum { IRQ_VBLANK = 0, IRQ_GPU, IRQ_OPFLAG, IRQ_TIMER, IRQ_DSP };
24 uint8 TOMReadByte(uint32 offset, uint32 who = UNKNOWN);
25 uint16 TOMReadWord(uint32 offset, uint32 who = UNKNOWN);
26 void TOMWriteByte(uint32 offset, uint8 data, uint32 who = UNKNOWN);
27 void TOMWriteWord(uint32 offset, uint16 data, uint32 who = UNKNOWN);
29 //void TOMExecScanline(int16 * backbuffer, int32 scanline, bool render);
30 void TOMExecScanline(uint16 scanline, bool render);
31 uint32 TOMGetVideoModeWidth(void);
32 uint32 TOMGetVideoModeHeight(void);
33 uint8 TOMGetVideoMode(void);
34 uint8 * TOMGetRamPointer(void);
35 uint16 TOMGetHDB(void);
36 uint16 TOMGetVDB(void);
37 //uint16 tom_get_scanline(void);
38 //uint32 tom_getHBlankWidthInPixels(void);
40 int TOMIRQEnabled(int irq);
41 uint16 TOMIRQControlReg(void);
42 void TOMSetIRQLatch(int irq, int enabled);
43 void TOMExecPIT(uint32 cycles);
44 void TOMSetPendingJERRYInt(void);
45 void TOMSetPendingTimerInt(void);
46 void TOMSetPendingObjectInt(void);
47 void TOMSetPendingGPUInt(void);
48 void TOMSetPendingVideoInt(void);
49 void TOMResetPIT(void);
51 //uint32 TOMGetSDLScreenPitch(void);
52 void TOMResetBackbuffer(uint32 * backbuffer);
56 extern uint32 tomWidth;
57 extern uint32 tomHeight;
58 extern uint8 tomRam8[];