diff options
Diffstat (limited to 'src/mame/includes/dec8.h')
-rw-r--r-- | src/mame/includes/dec8.h | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/src/mame/includes/dec8.h b/src/mame/includes/dec8.h index 2b7c8bfd018..d6fffc24525 100644 --- a/src/mame/includes/dec8.h +++ b/src/mame/includes/dec8.h @@ -25,8 +25,7 @@ public: m_mcu(*this, "mcu"), m_spriteram(*this, "spriteram") , m_msm(*this, "msm"), - m_tilegen1(*this, "tilegen1"), - m_tilegen2(*this, "tilegen2"), + m_tilegen(*this, "tilegen%u", 1), m_spritegen_krn(*this, "spritegen_krn"), m_spritegen_mxc(*this, "spritegen_mxc"), m_gfxdecode(*this, "gfxdecode"), @@ -34,6 +33,8 @@ public: m_soundlatch(*this, "soundlatch"), m_videoram(*this, "videoram"), m_bg_data(*this, "bg_data"), + m_mainbank(*this, "mainbank"), + m_soundbank(*this, "soundbank"), m_coin_port(*this, "I8751") { } /* devices */ @@ -43,8 +44,7 @@ public: optional_device<cpu_device> m_mcu; required_device<buffered_spriteram8_device> m_spriteram; optional_device<msm5205_device> m_msm; - optional_device<deco_bac06_device> m_tilegen1; - optional_device<deco_bac06_device> m_tilegen2; + optional_device_array<deco_bac06_device, 2> m_tilegen; optional_device<deco_karnovsprites_device> m_spritegen_krn; optional_device<deco_mxc06_device> m_spritegen_mxc; required_device<gfxdecode_device> m_gfxdecode; @@ -55,9 +55,13 @@ public: required_shared_ptr<uint8_t> m_videoram; optional_shared_ptr<uint8_t> m_bg_data; + /* memory regions */ + required_memory_bank m_mainbank; + optional_memory_bank m_soundbank; + uint8_t * m_pf1_data; uint8_t * m_row; - uint16_t m_buffered_spriteram16[0x800/2]; // for the mxc06 sprite chip emulation (oscar, cobra) + std::unique_ptr<uint16_t[]> m_buffered_spriteram16; // for the mxc06 sprite chip emulation (oscar, cobra) /* video-related */ tilemap_t *m_bg_tilemap; @@ -127,17 +131,7 @@ public: DECLARE_WRITE8_MEMBER(gondo_scroll_w); DECLARE_READ8_MEMBER(csilver_adpcm_reset_r); DECLARE_DRIVER_INIT(dec8); - DECLARE_DRIVER_INIT(deco222); - DECLARE_DRIVER_INIT(meikyuh); - DECLARE_DRIVER_INIT(garyoret); - DECLARE_DRIVER_INIT(shackled); - DECLARE_DRIVER_INIT(cobracom); DECLARE_DRIVER_INIT(csilver); - DECLARE_DRIVER_INIT(ghostb); - DECLARE_DRIVER_INIT(srdarwin); - DECLARE_DRIVER_INIT(lastmisn); - DECLARE_DRIVER_INIT(gondo); - DECLARE_DRIVER_INIT(oscar); TILE_GET_INFO_MEMBER(get_cobracom_fix_tile_info); TILE_GET_INFO_MEMBER(get_ghostb_fix_tile_info); TILE_GET_INFO_MEMBER(get_oscar_fix_tile_info); @@ -158,6 +152,7 @@ public: DECLARE_VIDEO_START(oscar); DECLARE_VIDEO_START(srdarwin); DECLARE_VIDEO_START(cobracom); + void allocate_buffered_spriteram16(); uint32_t screen_update_lastmisn(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_shackled(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); uint32_t screen_update_gondo(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); |