summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/nmk16.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/nmk16.h')
-rw-r--r--src/mame/includes/nmk16.h53
1 files changed, 19 insertions, 34 deletions
diff --git a/src/mame/includes/nmk16.h b/src/mame/includes/nmk16.h
index e16bde44ec8..392f388537f 100644
--- a/src/mame/includes/nmk16.h
+++ b/src/mame/includes/nmk16.h
@@ -22,18 +22,17 @@ public:
m_palette(*this, "palette"),
m_nmk004(*this, "nmk004"),
m_soundlatch(*this, "soundlatch"),
- m_nmk_bgvideoram0(*this, "nmk_bgvideoram0"),
+ m_nmk_bgvideoram(*this, "nmk_bgvideoram%u", 0),
m_nmk_txvideoram(*this, "nmk_txvideoram"),
m_mainram(*this, "mainram"),
m_gunnail_scrollram(*this, "scrollram"),
m_spriteram(*this, "spriteram"),
m_nmk_fgvideoram(*this, "nmk_fgvideoram"),
m_gunnail_scrollramy(*this, "scrollramy"),
- m_nmk_bgvideoram1(*this, "nmk_bgvideoram1"),
- m_nmk_bgvideoram2(*this, "nmk_bgvideoram2"),
- m_nmk_bgvideoram3(*this, "nmk_bgvideoram3"),
- m_afega_scroll_0(*this, "afega_scroll_0"),
- m_afega_scroll_1(*this, "afega_scroll_1"),
+ m_afega_scroll(*this, "afega_scroll_%u", 0),
+ m_tilemap_rom(*this, "tilerom"),
+ m_audiobank(*this, "audiobank"),
+ m_okibank(*this, "okibank%u", 1),
m_sprdma_base(0x8000)
{}
@@ -46,19 +45,18 @@ public:
optional_device<nmk004_device> m_nmk004;
optional_device<generic_latch_8_device> m_soundlatch;
- required_shared_ptr<uint16_t> m_nmk_bgvideoram0;
+ optional_shared_ptr_array<uint16_t, 4> m_nmk_bgvideoram;
optional_shared_ptr<uint16_t> m_nmk_txvideoram;
required_shared_ptr<uint16_t> m_mainram;
optional_shared_ptr<uint16_t> m_gunnail_scrollram;
optional_shared_ptr<uint8_t> m_spriteram;
optional_shared_ptr<uint16_t> m_nmk_fgvideoram;
optional_shared_ptr<uint16_t> m_gunnail_scrollramy;
- optional_shared_ptr<uint16_t> m_nmk_bgvideoram1;
- optional_shared_ptr<uint16_t> m_nmk_bgvideoram2;
- optional_shared_ptr<uint16_t> m_nmk_bgvideoram3;
- optional_shared_ptr<uint16_t> m_afega_scroll_0;
- optional_shared_ptr<uint16_t> m_afega_scroll_1;
-
+ optional_shared_ptr_array<uint16_t, 2> m_afega_scroll;
+
+ optional_region_ptr<uint16_t> m_tilemap_rom;
+ optional_memory_bank m_audiobank;
+ optional_memory_bank_array<2> m_okibank;
int m_sprdma_base;
int mask[4*2];
@@ -70,10 +68,7 @@ public:
int m_videoshift;
int m_bioship_background_bank;
uint8_t m_bioship_scroll[4];
- tilemap_t *m_bg_tilemap0;
- tilemap_t *m_bg_tilemap1;
- tilemap_t *m_bg_tilemap2;
- tilemap_t *m_bg_tilemap3;
+ tilemap_t *m_bg_tilemap[4];
tilemap_t *m_tx_tilemap;
tilemap_t *m_fg_tilemap;
std::unique_ptr<bitmap_ind16> m_background_bitmap;
@@ -87,27 +82,19 @@ public:
uint8_t m_coin_count[2];
uint8_t m_coin_count_frac[2];
DECLARE_WRITE16_MEMBER(nmk16_mainram_strange_w);
- DECLARE_WRITE16_MEMBER(ssmissin_sound_w);
DECLARE_WRITE8_MEMBER(ssmissin_soundbank_w);
DECLARE_WRITE16_MEMBER(tharrier_mcu_control_w);
DECLARE_READ16_MEMBER(tharrier_mcu_r);
DECLARE_WRITE16_MEMBER(macross2_sound_reset_w);
- DECLARE_WRITE16_MEMBER(macross2_sound_command_w);
DECLARE_WRITE8_MEMBER(macross2_sound_bank_w);
- DECLARE_WRITE8_MEMBER(tharrier_oki6295_bankswitch_0_w);
- DECLARE_WRITE8_MEMBER(tharrier_oki6295_bankswitch_1_w);
- DECLARE_WRITE16_MEMBER(afega_soundlatch_w);
+ template<int Chip> DECLARE_WRITE8_MEMBER(tharrier_oki6295_bankswitch_w);
DECLARE_WRITE16_MEMBER(hachamf_mainram_w);
DECLARE_WRITE16_MEMBER(tdragon_mainram_w);
DECLARE_READ16_MEMBER(vandykeb_r);
DECLARE_READ16_MEMBER(tdragonb_prot_r);
DECLARE_READ16_MEMBER(afega_unknown_r);
- DECLARE_WRITE16_MEMBER(afega_scroll0_w);
- DECLARE_WRITE16_MEMBER(afega_scroll1_w);
- DECLARE_WRITE16_MEMBER(nmk_bgvideoram0_w);
- DECLARE_WRITE16_MEMBER(nmk_bgvideoram1_w);
- DECLARE_WRITE16_MEMBER(nmk_bgvideoram2_w);
- DECLARE_WRITE16_MEMBER(nmk_bgvideoram3_w);
+ template<int Scroll> DECLARE_WRITE16_MEMBER(afega_scroll_w);
+ template<int Bank> DECLARE_WRITE16_MEMBER(nmk_bgvideoram_w);
DECLARE_WRITE16_MEMBER(nmk_fgvideoram_w);
DECLARE_WRITE16_MEMBER(nmk_txvideoram_w);
DECLARE_WRITE16_MEMBER(mustang_scroll_w);
@@ -141,13 +128,11 @@ public:
DECLARE_DRIVER_INIT(redfoxwp2a);
DECLARE_DRIVER_INIT(grdnstrmg);
DECLARE_DRIVER_INIT(bjtwin);
- TILEMAP_MAPPER_MEMBER(afega_tilemap_scan_pages);
- TILE_GET_INFO_MEMBER(macross_get_bg0_tile_info);
- TILE_GET_INFO_MEMBER(macross_get_bg1_tile_info);
- TILE_GET_INFO_MEMBER(macross_get_bg2_tile_info);
- TILE_GET_INFO_MEMBER(macross_get_bg3_tile_info);
+ DECLARE_DRIVER_INIT(atombjt);
+ TILEMAP_MAPPER_MEMBER(tilemap_scan_pages);
+ template<int Bank> TILE_GET_INFO_MEMBER(common_get_bg_tile_info);
TILE_GET_INFO_MEMBER(strahl_get_fg_tile_info);
- TILE_GET_INFO_MEMBER(macross_get_tx_tile_info);
+ TILE_GET_INFO_MEMBER(common_get_tx_tile_info);
TILE_GET_INFO_MEMBER(bjtwin_get_bg_tile_info);
TILE_GET_INFO_MEMBER(get_tile_info_0_8bit);
DECLARE_VIDEO_START(macross);