diff options
Diffstat (limited to 'src/mame/includes/cabal.h')
-rw-r--r-- | src/mame/includes/cabal.h | 44 |
1 files changed, 28 insertions, 16 deletions
diff --git a/src/mame/includes/cabal.h b/src/mame/includes/cabal.h index 92035066970..6bd2ff2ebcd 100644 --- a/src/mame/includes/cabal.h +++ b/src/mame/includes/cabal.h @@ -6,9 +6,6 @@ class cabal_state : public driver_device public: cabal_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), - m_spriteram(*this, "spriteram"), - m_colorram(*this, "colorram"), - m_videoram(*this, "videoram"), m_maincpu(*this, "maincpu"), m_audiocpu(*this, "audiocpu"), m_seibu_sound(*this, "seibu_sound"), @@ -17,11 +14,10 @@ public: m_msm1(*this, "msm1"), m_msm2(*this, "msm2"), m_gfxdecode(*this, "gfxdecode"), - m_palette(*this, "palette") { } - - required_shared_ptr<UINT16> m_spriteram; - required_shared_ptr<UINT16> m_colorram; - required_shared_ptr<UINT16> m_videoram; + m_palette(*this, "palette"), + m_spriteram(*this, "spriteram"), + m_colorram(*this, "colorram"), + m_videoram(*this, "videoram") { } required_device<cpu_device> m_maincpu; required_device<cpu_device> m_audiocpu; @@ -33,31 +29,47 @@ public: required_device<gfxdecode_device> m_gfxdecode; required_device<palette_device> m_palette; + required_shared_ptr<UINT16> m_spriteram; + required_shared_ptr<UINT16> m_colorram; + required_shared_ptr<UINT16> m_videoram; + tilemap_t *m_background_layer; tilemap_t *m_text_layer; int m_sound_command1; int m_sound_command2; int m_last[4]; - DECLARE_WRITE16_MEMBER(cabalbl_sndcmd_w); + + // common + DECLARE_WRITE16_MEMBER(flipscreen_w); + DECLARE_WRITE16_MEMBER(background_videoram_w); + DECLARE_WRITE16_MEMBER(text_videoram_w); + + // cabal specific DECLARE_WRITE16_MEMBER(track_reset_w); DECLARE_READ16_MEMBER(track_r); - DECLARE_WRITE16_MEMBER(cabal_sound_irq_trigger_word_w); + DECLARE_WRITE16_MEMBER(sound_irq_trigger_word_w); + + // cabalbl specific + DECLARE_WRITE16_MEMBER(cabalbl_sndcmd_w); DECLARE_WRITE16_MEMBER(cabalbl_sound_irq_trigger_word_w); DECLARE_READ8_MEMBER(cabalbl_snd2_r); DECLARE_READ8_MEMBER(cabalbl_snd1_r); DECLARE_WRITE8_MEMBER(cabalbl_coin_w); - DECLARE_WRITE16_MEMBER(cabal_flipscreen_w); - DECLARE_WRITE16_MEMBER(cabal_background_videoram16_w); - DECLARE_WRITE16_MEMBER(cabal_text_videoram16_w); DECLARE_WRITE8_MEMBER(cabalbl_1_adpcm_w); DECLARE_WRITE8_MEMBER(cabalbl_2_adpcm_w); + DECLARE_DRIVER_INIT(cabal); DECLARE_DRIVER_INIT(cabalbl2); + DECLARE_MACHINE_START(cabal); + DECLARE_MACHINE_START(cabalbl); + DECLARE_MACHINE_RESET(cabalbl); + virtual void video_start(); + TILE_GET_INFO_MEMBER(get_back_tile_info); TILE_GET_INFO_MEMBER(get_text_tile_info); - virtual void video_start(); - DECLARE_MACHINE_RESET(cabalbl); - UINT32 screen_update_cabal(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + + UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect); + void seibu_sound_bootleg(const char *cpu,int length); }; |