diff options
Diffstat (limited to 'src/mame/drivers/deco156.cpp')
-rw-r--r-- | src/mame/drivers/deco156.cpp | 58 |
1 files changed, 32 insertions, 26 deletions
diff --git a/src/mame/drivers/deco156.cpp b/src/mame/drivers/deco156.cpp index 908102486bd..bd0b384eb85 100644 --- a/src/mame/drivers/deco156.cpp +++ b/src/mame/drivers/deco156.cpp @@ -29,27 +29,22 @@ class deco156_state : public driver_device { public: deco156_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_maincpu(*this, "maincpu"), - m_deco_tilegen1(*this, "tilegen1"), - m_oki1(*this, "oki1"), - m_oki2(*this, "oki2"), - m_sprgen(*this, "spritegen"), - m_palette(*this, "palette") + : driver_device(mconfig, type, tag) + , m_maincpu(*this, "maincpu") + , m_deco_tilegen1(*this, "tilegen1") + , m_oki1(*this, "oki1") + , m_oki2(*this, "oki2") + , m_sprgen(*this, "spritegen") + , m_palette(*this, "palette") { } - /* devices */ - required_device<arm_cpu_device> m_maincpu; - required_device<deco16ic_device> m_deco_tilegen1; - optional_device<okim6295_device> m_oki1; - optional_device<okim6295_device> m_oki2; - optional_device<decospr_device> m_sprgen; - required_device<palette_device> m_palette; + DECLARE_DRIVER_INIT(hvysmsh); + DECLARE_DRIVER_INIT(wcvol95); - /* memory */ - uint16_t m_pf1_rowscroll[0x800/2]; - uint16_t m_pf2_rowscroll[0x800/2]; - std::unique_ptr<uint16_t[]> m_spriteram; + void hvysmsh(machine_config &config); + void wcvol95(machine_config &config); + +protected: DECLARE_WRITE32_MEMBER(hvysmsh_eeprom_w); DECLARE_READ32_MEMBER(pf1_rowscroll_r); DECLARE_READ32_MEMBER(pf2_rowscroll_r); @@ -58,18 +53,29 @@ public: DECLARE_WRITE32_MEMBER(pf2_rowscroll_w); DECLARE_WRITE32_MEMBER(spriteram_w); DECLARE_WRITE32_MEMBER(hvysmsh_oki_0_bank_w); - DECLARE_DRIVER_INIT(hvysmsh); - DECLARE_DRIVER_INIT(wcvol95); virtual void video_start() override; uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); INTERRUPT_GEN_MEMBER(deco32_vbl_interrupt); void descramble_sound( const char *tag ); DECO16IC_BANK_CB_MEMBER(bank_callback); DECOSPR_PRIORITY_CB_MEMBER(pri_callback); - void hvysmsh(machine_config &config); - void wcvol95(machine_config &config); + void hvysmsh_map(address_map &map); void wcvol95_map(address_map &map); + +private: + /* devices */ + required_device<arm_cpu_device> m_maincpu; + required_device<deco16ic_device> m_deco_tilegen1; + optional_device<okim6295_device> m_oki1; + optional_device<okim6295_device> m_oki2; + optional_device<decospr_device> m_sprgen; + required_device<palette_device> m_palette; + + /* memory */ + uint16_t m_pf1_rowscroll[0x800/2]; + uint16_t m_pf2_rowscroll[0x800/2]; + std::unique_ptr<uint16_t[]> m_spriteram; }; @@ -612,8 +618,8 @@ ROM_START( wcvol95 ) // ROM_LOAD( "93c46.3k", 0x00, 0x80, CRC(88f8e270) SHA1(cb82203ad38e0c12ea998562b7b785979726afe5) ) ROM_REGION( 0x200, "gals", 0 ) - ROM_LOAD( "GAL16V8B.10J.bin", 0x000, 0x117, CRC(06bbcbd5) SHA1(f7adb4bca13bb799bc42411eb178edfdc11a76c7) ) - ROM_LOAD( "GAL16V8B.5D.bin", 0x000, 0x117, CRC(117784f0) SHA1(daf3720740621fc3af49333c96795718b693f4d2)) + ROM_LOAD( "gal16v8b.10j.bin", 0x000, 0x117, CRC(06bbcbd5) SHA1(f7adb4bca13bb799bc42411eb178edfdc11a76c7) ) + ROM_LOAD( "gal16v8b.5d.bin", 0x000, 0x117, CRC(117784f0) SHA1(daf3720740621fc3af49333c96795718b693f4d2)) ROM_END @@ -635,8 +641,8 @@ ROM_START( wcvol95x ) ROM_LOAD( "mbx-03.13j", 0x00000, 0x200000, CRC(061632bc) SHA1(7900ac56e59f4a4e5768ce72f4a4b7c5875f5ae8) ) ROM_REGION( 0x200, "gals", 0 ) - ROM_LOAD( "GAL16V8B.10J.bin", 0x000, 0x117, CRC(06bbcbd5) SHA1(f7adb4bca13bb799bc42411eb178edfdc11a76c7) ) - ROM_LOAD( "GAL16V8B.5D.bin", 0x000, 0x117, CRC(117784f0) SHA1(daf3720740621fc3af49333c96795718b693f4d2)) + ROM_LOAD( "gal16v8b.10j.bin", 0x000, 0x117, CRC(06bbcbd5) SHA1(f7adb4bca13bb799bc42411eb178edfdc11a76c7) ) + ROM_LOAD( "gal16v8b.5d.bin", 0x000, 0x117, CRC(117784f0) SHA1(daf3720740621fc3af49333c96795718b693f4d2)) ROM_END |