X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Finclude%2Ftom.h;h=e521d58b334f6e862f915aa73049966179d45222;hb=c2f778cea7c1e7bc6507a5749d74267babc2a232;hp=3ed0ccdfb20e7adaaa436105659434a7c06f8abf;hpb=86bd0f2592c3cd674239532247276bd2d579a857;p=virtualjaguar diff --git a/src/include/tom.h b/src/include/tom.h index 3ed0ccd..e521d58 100644 --- a/src/include/tom.h +++ b/src/include/tom.h @@ -1,27 +1,19 @@ -////////////////////////////////////////////////////////////////////////////// // -////////////////////////////////////////////////////////////////////////////// +// TOM Header file // -// -// -// -// -// -////////////////////////////////////////////////////////////////////////////// #ifndef __TOM_H__ #define __TOM_H__ #include "jaguar.h" -#define TOM_VBLANK_DURATION_IN_SCANLINES 25 +//#define TOM_VBLANK_DURATION_IN_SCANLINES 25 #define VIDEO_MODE_16BPP_CRY 0 #define VIDEO_MODE_24BPP_RGB 1 #define VIDEO_MODE_16BPP_DIRECT 2 #define VIDEO_MODE_16BPP_RGB 3 - extern uint32 tom_width; extern uint32 tom_height; @@ -32,30 +24,30 @@ unsigned tom_byte_read(unsigned int offset); unsigned tom_word_read(unsigned int offset); void tom_byte_write(unsigned offset, unsigned data); void tom_word_write(unsigned offset, unsigned data); -void tom_exec_scanline(int16 *backbuffer, int32 scanline, int8 render); +void tom_exec_scanline(int16 * backbuffer, int32 scanline, bool render); uint32 tom_getVideoModeWidth(void); uint32 tom_getVideoModeHeight(void); uint8 tom_getVideoMode(void); -uint8 *tom_get_ram_pointer(void); +uint8 * tom_get_ram_pointer(void); uint16 tom_get_hdb(void); uint16 tom_get_vdb(void); uint16 tom_get_scanline(void); uint32 tom_getHBlankWidthInPixels(void); -////////////////////////////////////////////////////////////////////////////// -// interrupts -////////////////////////////////////////////////////////////////////////////// -#define IRQ_VBLANK 0 +// 68000 Interrupt bit positions (enabled at $F000E0) + +/*#define IRQ_VBLANK 0 #define IRQ_GPU 1 #define IRQ_HBLANK 2 #define IRQ_OPFLAG IRQ_HBLANK #define IRQ_TIMER 3 -#define IRQ_DSP 4 +#define IRQ_DSP 4*/ +enum { IRQ_VBLANK = 0, IRQ_GPU, IRQ_OPFLAG, IRQ_TIMER, IRQ_DSP }; -int tom_irq_enabled(int irq); -uint16 tom_irq_control_reg(void); -void tom_set_irq_latch(int irq, int enabled); -void tom_pit_exec(uint32 cycles); +int tom_irq_enabled(int irq); +uint16 tom_irq_control_reg(void); +void tom_set_irq_latch(int irq, int enabled); +void tom_pit_exec(uint32 cycles); void tom_set_pending_puck_int(void); void tom_set_pending_timer_int(void); void tom_set_pending_object_int(void); @@ -63,5 +55,6 @@ void tom_set_pending_gpu_int(void); void tom_set_pending_video_int(void); void tom_reset_timer(void); +uint32 TOMGetSDLScreenPitch(void); -#endif +#endif // __TOM_H__