diff options
Diffstat (limited to 'src/mess/includes/gb.h')
-rw-r--r-- | src/mess/includes/gb.h | 148 |
1 files changed, 74 insertions, 74 deletions
diff --git a/src/mess/includes/gb.h b/src/mess/includes/gb.h index 42b5c7758e3..a43ba759713 100644 --- a/src/mess/includes/gb.h +++ b/src/mess/includes/gb.h @@ -21,22 +21,22 @@ #endif /* Cartridge types */ -#define CART_RAM 0x01 /* Cartridge has RAM */ -#define BATTERY 0x02 /* Cartridge has a battery to save RAM */ -#define TIMER 0x04 /* Cartridge has a real-time-clock (MBC3 only) */ -#define RUMBLE 0x08 /* Cartridge has a rumble motor (MBC5 only) */ -#define SRAM 0x10 /* Cartridge has SRAM */ -#define UNKNOWN 0x80 /* Cartridge is of an unknown type */ +#define CART_RAM 0x01 /* Cartridge has RAM */ +#define BATTERY 0x02 /* Cartridge has a battery to save RAM */ +#define TIMER 0x04 /* Cartridge has a real-time-clock (MBC3 only) */ +#define RUMBLE 0x08 /* Cartridge has a rumble motor (MBC5 only) */ +#define SRAM 0x10 /* Cartridge has SRAM */ +#define UNKNOWN 0x80 /* Cartridge is of an unknown type */ -#define DMG_FRAMES_PER_SECOND 59.732155 -#define SGB_FRAMES_PER_SECOND 61.17 +#define DMG_FRAMES_PER_SECOND 59.732155 +#define SGB_FRAMES_PER_SECOND 61.17 #define MAX_ROMBANK 512 #define MAX_RAMBANK 256 -#define _NR_GB_VID_REGS 0x40 +#define _NR_GB_VID_REGS 0x40 struct layer_struct { UINT8 enabled; @@ -52,28 +52,28 @@ struct layer_struct { }; struct gb_lcd_t { - int window_lines_drawn; + int window_lines_drawn; - UINT8 gb_vid_regs[_NR_GB_VID_REGS]; - UINT8 bg_zbuf[160]; + UINT8 gb_vid_regs[_NR_GB_VID_REGS]; + UINT8 bg_zbuf[160]; - UINT16 cgb_bpal[32]; /* CGB current background palette table */ - UINT16 cgb_spal[32]; /* CGB current sprite palette table */ + UINT16 cgb_bpal[32]; /* CGB current background palette table */ + UINT16 cgb_spal[32]; /* CGB current sprite palette table */ - UINT8 gb_bpal[4]; /* Background palette */ - UINT8 gb_spal0[4]; /* Sprite 0 palette */ - UINT8 gb_spal1[4]; /* Sprite 1 palette */ + UINT8 gb_bpal[4]; /* Background palette */ + UINT8 gb_spal0[4]; /* Sprite 0 palette */ + UINT8 gb_spal1[4]; /* Sprite 1 palette */ /* Things used to render current line */ - int current_line; /* Current line */ - int cmp_line; /* Compare line */ - int sprCount; /* Number of sprites on current line */ - int sprite[10]; /* References to sprites to draw on current line */ - int previous_line; /* Previous line we've drawn in */ - int start_x; /* Pixel to start drawing from (inclusive) */ - int end_x; /* Pixel to end drawing (exclusive) */ - int mode; /* Keep track of internal STAT mode */ - int state; /* Current state of the video state machine */ + int current_line; /* Current line */ + int cmp_line; /* Compare line */ + int sprCount; /* Number of sprites on current line */ + int sprite[10]; /* References to sprites to draw on current line */ + int previous_line; /* Previous line we've drawn in */ + int start_x; /* Pixel to start drawing from (inclusive) */ + int end_x; /* Pixel to end drawing (exclusive) */ + int mode; /* Keep track of internal STAT mode */ + int state; /* Current state of the video state machine */ int lcd_irq_line; int triggering_line_irq; int line_irq; @@ -87,20 +87,20 @@ struct gb_lcd_t { int pal_locked; int hdma_enabled; int hdma_possible; - struct layer_struct layer[2]; + struct layer_struct layer[2]; emu_timer *lcd_timer; int gbc_mode; - memory_region *gb_vram; /* Pointer to VRAM */ - memory_region *gb_oam; /* Pointer to OAM memory */ - UINT8 *gb_vram_ptr; - UINT8 *gb_chrgen; /* Character generator */ - UINT8 *gb_bgdtab; /* Background character table */ - UINT8 *gb_wndtab; /* Window character table */ - UINT8 gb_tile_no_mod; - UINT8 *gbc_chrgen; /* CGB Character generator */ - UINT8 *gbc_bgdtab; /* CGB Background character table */ - UINT8 *gbc_wndtab; /* CGB Window character table */ + memory_region *gb_vram; /* Pointer to VRAM */ + memory_region *gb_oam; /* Pointer to OAM memory */ + UINT8 *gb_vram_ptr; + UINT8 *gb_chrgen; /* Character generator */ + UINT8 *gb_bgdtab; /* Background character table */ + UINT8 *gb_wndtab; /* Window character table */ + UINT8 gb_tile_no_mod; + UINT8 *gbc_chrgen; /* CGB Character generator */ + UINT8 *gbc_bgdtab; /* CGB Background character table */ + UINT8 *gbc_wndtab; /* CGB Window character table */ }; @@ -121,21 +121,21 @@ public: UINT8 m_sgb_window_mask; UINT8 m_sgb_hack; //gb_state driver_data; - UINT8 m_gb_io[0x10]; + UINT8 m_gb_io[0x10]; /* Timer related */ - UINT16 m_divcount; - UINT8 m_shift; - UINT16 m_shift_cycles; - UINT8 m_triggering_irq; - UINT8 m_reloading; + UINT16 m_divcount; + UINT8 m_shift; + UINT16 m_shift_cycles; + UINT8 m_triggering_irq; + UINT8 m_reloading; /* Serial I/O related */ - UINT32 m_SIOCount; /* Serial I/O counter */ - emu_timer *m_gb_serial_timer; + UINT32 m_SIOCount; /* Serial I/O counter */ + emu_timer *m_gb_serial_timer; /* SGB variables */ - UINT8 m_sgb_atf_data[4050]; /* (SGB) Attributes files */ + UINT8 m_sgb_atf_data[4050]; /* (SGB) Attributes files */ INT8 m_sgb_packets; UINT8 m_sgb_bitcount; UINT8 m_sgb_bytecount; @@ -147,31 +147,31 @@ public: UINT32 m_sgb_atf; /* Cartridge/mapper */ - UINT16 m_MBCType; /* MBC type: 0 for none */ - UINT8 m_CartType; /* Cartridge type (battery, ram, rtc, etc) */ - UINT8 *m_ROMMap[MAX_ROMBANK]; /* Addresses of ROM banks */ - UINT16 m_ROMBank; /* Index of ROM bank currently used at 4000-7fff */ - UINT16 m_ROMBank00; /* Index of ROM bank currently used at 0000-3fff */ - UINT8 m_ROMMask; /* Mask for the ROM bank number */ - UINT16 m_ROMBanks; /* Total number of ROM banks */ - UINT8 *m_RAMMap[MAX_RAMBANK]; /* Addresses of RAM banks */ - UINT8 m_RAMBank; /* Number of RAM bank currently used */ - UINT8 m_RAMMask; /* Mask for the RAM bank number */ - UINT8 m_RAMBanks; /* Total number of RAM banks */ - UINT8 m_MBC1Mode; /* MBC1 ROM/RAM mode */ - UINT8 *m_MBC3RTCData; /* MBC3 RTC data */ - UINT8 m_MBC3RTCMap[5]; /* MBC3 RTC banks */ - UINT8 m_MBC3RTCBank; /* MBC3 RTC bank */ - UINT8 *m_GBC_RAMMap[8]; /* (CGB) Addresses of internal RAM banks */ - UINT8 m_GBC_RAMBank; /* (CGB) Current CGB RAM bank */ - UINT8 m_gbTama5Memory[32]; - UINT8 m_gbTama5Byte; - UINT8 m_gbTama5Address; - UINT8 m_gbLastTama5Command; - UINT8 *m_gb_cart; - UINT8 *m_gb_cart_ram; - UINT8 *m_gb_dummy_rom_bank; - UINT8 *m_gb_dummy_ram_bank; + UINT16 m_MBCType; /* MBC type: 0 for none */ + UINT8 m_CartType; /* Cartridge type (battery, ram, rtc, etc) */ + UINT8 *m_ROMMap[MAX_ROMBANK]; /* Addresses of ROM banks */ + UINT16 m_ROMBank; /* Index of ROM bank currently used at 4000-7fff */ + UINT16 m_ROMBank00; /* Index of ROM bank currently used at 0000-3fff */ + UINT8 m_ROMMask; /* Mask for the ROM bank number */ + UINT16 m_ROMBanks; /* Total number of ROM banks */ + UINT8 *m_RAMMap[MAX_RAMBANK]; /* Addresses of RAM banks */ + UINT8 m_RAMBank; /* Number of RAM bank currently used */ + UINT8 m_RAMMask; /* Mask for the RAM bank number */ + UINT8 m_RAMBanks; /* Total number of RAM banks */ + UINT8 m_MBC1Mode; /* MBC1 ROM/RAM mode */ + UINT8 *m_MBC3RTCData; /* MBC3 RTC data */ + UINT8 m_MBC3RTCMap[5]; /* MBC3 RTC banks */ + UINT8 m_MBC3RTCBank; /* MBC3 RTC bank */ + UINT8 *m_GBC_RAMMap[8]; /* (CGB) Addresses of internal RAM banks */ + UINT8 m_GBC_RAMBank; /* (CGB) Current CGB RAM bank */ + UINT8 m_gbTama5Memory[32]; + UINT8 m_gbTama5Byte; + UINT8 m_gbTama5Address; + UINT8 m_gbLastTama5Command; + UINT8 *m_gb_cart; + UINT8 *m_gb_cart_ram; + UINT8 *m_gb_dummy_rom_bank; + UINT8 *m_gb_dummy_ram_bank; UINT8 m_mmm01_bank_offset; UINT8 m_mmm01_reg1; @@ -268,9 +268,9 @@ void gb_timer_callback(lr35902_cpu_device *device, int cycles); /* -- Super Game Boy specific -- */ -#define SGB_BORDER_PAL_OFFSET 64 /* Border colours stored from pal 4-7 */ -#define SGB_XOFFSET 48 /* GB screen starts at column 48 */ -#define SGB_YOFFSET 40 /* GB screen starts at row 40 */ +#define SGB_BORDER_PAL_OFFSET 64 /* Border colours stored from pal 4-7 */ +#define SGB_XOFFSET 48 /* GB screen starts at column 48 */ +#define SGB_YOFFSET 40 /* GB screen starts at row 40 */ /* -- Megaduck specific -- */ |