diff options
author | 2018-03-13 07:36:43 +0100 | |
---|---|---|
committer | 2018-03-14 14:07:14 +0100 | |
commit | 115bb9936c5cd3faf955d7eb1e251a94e4744b7b (patch) | |
tree | f0230f547f6c750f9974c61479eef28cbe4ad571 /src/mame/drivers/raiden.cpp | |
parent | f155992daab88ad024cec995428a67108218b51d (diff) |
Address maps macros removal, pass 1 [O. Galibert]
Diffstat (limited to 'src/mame/drivers/raiden.cpp')
-rw-r--r-- | src/mame/drivers/raiden.cpp | 182 |
1 files changed, 95 insertions, 87 deletions
diff --git a/src/mame/drivers/raiden.cpp b/src/mame/drivers/raiden.cpp index 0d1984df510..a3beac779b7 100644 --- a/src/mame/drivers/raiden.cpp +++ b/src/mame/drivers/raiden.cpp @@ -87,105 +87,113 @@ /******************************************************************************/ -ADDRESS_MAP_START(raiden_state::main_map) - AM_RANGE(0x00000, 0x06fff) AM_RAM - AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") - AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("shared_ram") - AM_RANGE(0x0a000, 0x0a00d) AM_DEVREADWRITE8("seibu_sound", seibu_sound_device, main_r, main_w, 0x00ff) - AM_RANGE(0x0c000, 0x0c7ff) AM_WRITE(raiden_text_w) AM_SHARE("videoram") - AM_RANGE(0x0e000, 0x0e001) AM_READ_PORT("P1_P2") - AM_RANGE(0x0e002, 0x0e003) AM_READ_PORT("DSW") - AM_RANGE(0x0e004, 0x0e005) AM_WRITENOP // watchdog? - AM_RANGE(0x0e006, 0x0e007) AM_WRITE8(raiden_control_w, 0x00ff) - AM_RANGE(0x0f000, 0x0f03f) AM_WRITEONLY AM_SHARE("scroll_ram") - AM_RANGE(0xa0000, 0xfffff) AM_ROM -ADDRESS_MAP_END - -ADDRESS_MAP_START(raiden_state::sub_map) - AM_RANGE(0x00000, 0x01fff) AM_RAM - AM_RANGE(0x02000, 0x027ff) AM_RAM_WRITE(raiden_background_w) AM_SHARE("back_data") - AM_RANGE(0x02800, 0x02fff) AM_RAM_WRITE(raiden_foreground_w) AM_SHARE("fore_data") - AM_RANGE(0x03000, 0x03fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette") - AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("shared_ram") - AM_RANGE(0x07ffe, 0x07fff) AM_WRITENOP // ? - AM_RANGE(0x08000, 0x08001) AM_WRITENOP // watchdog? - AM_RANGE(0x0a000, 0x0a001) AM_WRITENOP // ? - AM_RANGE(0xc0000, 0xfffff) AM_ROM -ADDRESS_MAP_END +void raiden_state::main_map(address_map &map) +{ + map(0x00000, 0x06fff).ram(); + map(0x07000, 0x07fff).ram().share("spriteram"); + map(0x08000, 0x08fff).ram().share("shared_ram"); + map(0x0a000, 0x0a00d).rw(m_seibu_sound, FUNC(seibu_sound_device::main_r), FUNC(seibu_sound_device::main_w)).umask16(0x00ff); + map(0x0c000, 0x0c7ff).w(this, FUNC(raiden_state::raiden_text_w)).share("videoram"); + map(0x0e000, 0x0e001).portr("P1_P2"); + map(0x0e002, 0x0e003).portr("DSW"); + map(0x0e004, 0x0e005).nopw(); // watchdog? + map(0x0e006, 0x0e006).w(this, FUNC(raiden_state::raiden_control_w)); + map(0x0f000, 0x0f03f).writeonly().share("scroll_ram"); + map(0xa0000, 0xfffff).rom(); +} + +void raiden_state::sub_map(address_map &map) +{ + map(0x00000, 0x01fff).ram(); + map(0x02000, 0x027ff).ram().w(this, FUNC(raiden_state::raiden_background_w)).share("back_data"); + map(0x02800, 0x02fff).ram().w(this, FUNC(raiden_state::raiden_foreground_w)).share("fore_data"); + map(0x03000, 0x03fff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette"); + map(0x04000, 0x04fff).ram().share("shared_ram"); + map(0x07ffe, 0x07fff).nopw(); // ? + map(0x08000, 0x08001).nopw(); // watchdog? + map(0x0a000, 0x0a001).nopw(); // ? + map(0xc0000, 0xfffff).rom(); +} /******************************************************************************/ -ADDRESS_MAP_START(raiden_state::raidenu_main_map) - AM_RANGE(0x00000, 0x06fff) AM_RAM - AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") - AM_RANGE(0x08000, 0x0803f) AM_WRITEONLY AM_SHARE("scroll_ram") - AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("shared_ram") - AM_RANGE(0x0b000, 0x0b001) AM_READ_PORT("P1_P2") - AM_RANGE(0x0b002, 0x0b003) AM_READ_PORT("DSW") - AM_RANGE(0x0b004, 0x0b005) AM_WRITENOP // watchdog? - AM_RANGE(0x0b006, 0x0b007) AM_WRITE8(raiden_control_w, 0x00ff) - AM_RANGE(0x0c000, 0x0c7ff) AM_WRITE(raiden_text_w) AM_SHARE("videoram") - AM_RANGE(0x0d000, 0x0d00d) AM_DEVREADWRITE8("seibu_sound", seibu_sound_device, main_r, main_w, 0x00ff) - AM_RANGE(0xa0000, 0xfffff) AM_ROM -ADDRESS_MAP_END - -ADDRESS_MAP_START(raiden_state::raidenu_sub_map) - AM_RANGE(0x00000, 0x05fff) AM_RAM - AM_RANGE(0x06000, 0x067ff) AM_RAM_WRITE(raiden_background_w) AM_SHARE("back_data") - AM_RANGE(0x06800, 0x06fff) AM_RAM_WRITE(raiden_foreground_w) AM_SHARE("fore_data") - AM_RANGE(0x07000, 0x07fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette") - AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("shared_ram") - AM_RANGE(0x0a000, 0x0a001) AM_WRITENOP // ? - AM_RANGE(0x0c000, 0x0c001) AM_WRITENOP // watchdog? - AM_RANGE(0xc0000, 0xfffff) AM_ROM -ADDRESS_MAP_END +void raiden_state::raidenu_main_map(address_map &map) +{ + map(0x00000, 0x06fff).ram(); + map(0x07000, 0x07fff).ram().share("spriteram"); + map(0x08000, 0x0803f).writeonly().share("scroll_ram"); + map(0x0a000, 0x0afff).ram().share("shared_ram"); + map(0x0b000, 0x0b001).portr("P1_P2"); + map(0x0b002, 0x0b003).portr("DSW"); + map(0x0b004, 0x0b005).nopw(); // watchdog? + map(0x0b006, 0x0b006).w(this, FUNC(raiden_state::raiden_control_w)); + map(0x0c000, 0x0c7ff).w(this, FUNC(raiden_state::raiden_text_w)).share("videoram"); + map(0x0d000, 0x0d00d).rw(m_seibu_sound, FUNC(seibu_sound_device::main_r), FUNC(seibu_sound_device::main_w)).umask16(0x00ff); + map(0xa0000, 0xfffff).rom(); +} + +void raiden_state::raidenu_sub_map(address_map &map) +{ + map(0x00000, 0x05fff).ram(); + map(0x06000, 0x067ff).ram().w(this, FUNC(raiden_state::raiden_background_w)).share("back_data"); + map(0x06800, 0x06fff).ram().w(this, FUNC(raiden_state::raiden_foreground_w)).share("fore_data"); + map(0x07000, 0x07fff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette"); + map(0x08000, 0x08fff).ram().share("shared_ram"); + map(0x0a000, 0x0a001).nopw(); // ? + map(0x0c000, 0x0c001).nopw(); // watchdog? + map(0xc0000, 0xfffff).rom(); +} /******************************************************************************/ -ADDRESS_MAP_START(raiden_state::raidenb_main_map) - AM_RANGE(0x00000, 0x06fff) AM_RAM - AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") - AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("shared_ram") - AM_RANGE(0x0b000, 0x0b001) AM_READ_PORT("P1_P2") - AM_RANGE(0x0b002, 0x0b003) AM_READ_PORT("DSW") - AM_RANGE(0x0b004, 0x0b005) AM_WRITENOP // watchdog? - AM_RANGE(0x0b006, 0x0b007) AM_WRITE8(raidenb_control_w, 0x00ff) - AM_RANGE(0x0c000, 0x0c7ff) AM_WRITE(raiden_text_w) AM_SHARE("videoram") - AM_RANGE(0x0d000, 0x0d00d) AM_DEVREADWRITE8("seibu_sound", seibu_sound_device, main_r, main_w, 0x00ff) - AM_RANGE(0x0d040, 0x0d08f) AM_DEVREADWRITE("crtc", seibu_crtc_device, read, write) - AM_RANGE(0xa0000, 0xfffff) AM_ROM -ADDRESS_MAP_END +void raiden_state::raidenb_main_map(address_map &map) +{ + map(0x00000, 0x06fff).ram(); + map(0x07000, 0x07fff).ram().share("spriteram"); + map(0x0a000, 0x0afff).ram().share("shared_ram"); + map(0x0b000, 0x0b001).portr("P1_P2"); + map(0x0b002, 0x0b003).portr("DSW"); + map(0x0b004, 0x0b005).nopw(); // watchdog? + map(0x0b006, 0x0b006).w(this, FUNC(raiden_state::raidenb_control_w)); + map(0x0c000, 0x0c7ff).w(this, FUNC(raiden_state::raiden_text_w)).share("videoram"); + map(0x0d000, 0x0d00d).rw(m_seibu_sound, FUNC(seibu_sound_device::main_r), FUNC(seibu_sound_device::main_w)).umask16(0x00ff); + map(0x0d040, 0x0d08f).rw("crtc", FUNC(seibu_crtc_device::read), FUNC(seibu_crtc_device::write)); + map(0xa0000, 0xfffff).rom(); +} /*****************************************************************************/ -ADDRESS_MAP_START(raiden_state::raiden_sound_map) - AM_RANGE(0x0000, 0xffff) AM_DEVREAD("sei80bu", sei80bu_device, data_r) - AM_RANGE(0x2000, 0x27ff) AM_RAM - AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("seibu_sound", seibu_sound_device, pending_w) - AM_RANGE(0x4001, 0x4001) AM_DEVWRITE("seibu_sound", seibu_sound_device, irq_clear_w) - AM_RANGE(0x4002, 0x4002) AM_DEVWRITE("seibu_sound", seibu_sound_device, rst10_ack_w) - AM_RANGE(0x4003, 0x4003) AM_DEVWRITE("seibu_sound", seibu_sound_device, rst18_ack_w) - AM_RANGE(0x4007, 0x4007) AM_DEVWRITE("seibu_sound", seibu_sound_device, bank_w) - AM_RANGE(0x4008, 0x4009) AM_DEVREADWRITE("seibu_sound", seibu_sound_device, ym_r, ym_w) - AM_RANGE(0x4010, 0x4011) AM_DEVREAD("seibu_sound", seibu_sound_device, soundlatch_r) - AM_RANGE(0x4012, 0x4012) AM_DEVREAD("seibu_sound", seibu_sound_device, main_data_pending_r) - AM_RANGE(0x4013, 0x4013) AM_READ_PORT("COIN") - AM_RANGE(0x4018, 0x4019) AM_DEVWRITE("seibu_sound", seibu_sound_device, main_data_w) - AM_RANGE(0x401b, 0x401b) AM_DEVWRITE("seibu_sound", seibu_sound_device, coin_w) - AM_RANGE(0x6000, 0x6000) AM_DEVREADWRITE("oki", okim6295_device, read, write) -ADDRESS_MAP_END - -ADDRESS_MAP_START(raiden_state::raiden_sound_decrypted_opcodes_map) - AM_RANGE(0x0000, 0xffff) AM_DEVREAD("sei80bu", sei80bu_device, opcode_r) -ADDRESS_MAP_END - -ADDRESS_MAP_START(raiden_state::sei80bu_encrypted_full_map) - AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("audiocpu", 0) - AM_RANGE(0x8000, 0xffff) AM_ROMBANK("seibu_bank1") -ADDRESS_MAP_END +void raiden_state::raiden_sound_map(address_map &map) +{ + map(0x0000, 0xffff).r("sei80bu", FUNC(sei80bu_device::data_r)); + map(0x2000, 0x27ff).ram(); + map(0x4000, 0x4000).w(m_seibu_sound, FUNC(seibu_sound_device::pending_w)); + map(0x4001, 0x4001).w(m_seibu_sound, FUNC(seibu_sound_device::irq_clear_w)); + map(0x4002, 0x4002).w(m_seibu_sound, FUNC(seibu_sound_device::rst10_ack_w)); + map(0x4003, 0x4003).w(m_seibu_sound, FUNC(seibu_sound_device::rst18_ack_w)); + map(0x4007, 0x4007).w(m_seibu_sound, FUNC(seibu_sound_device::bank_w)); + map(0x4008, 0x4009).rw(m_seibu_sound, FUNC(seibu_sound_device::ym_r), FUNC(seibu_sound_device::ym_w)); + map(0x4010, 0x4011).r(m_seibu_sound, FUNC(seibu_sound_device::soundlatch_r)); + map(0x4012, 0x4012).r(m_seibu_sound, FUNC(seibu_sound_device::main_data_pending_r)); + map(0x4013, 0x4013).portr("COIN"); + map(0x4018, 0x4019).w(m_seibu_sound, FUNC(seibu_sound_device::main_data_w)); + map(0x401b, 0x401b).w(m_seibu_sound, FUNC(seibu_sound_device::coin_w)); + map(0x6000, 0x6000).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write)); +} + +void raiden_state::raiden_sound_decrypted_opcodes_map(address_map &map) +{ + map(0x0000, 0xffff).r("sei80bu", FUNC(sei80bu_device::opcode_r)); +} + +void raiden_state::sei80bu_encrypted_full_map(address_map &map) +{ + map(0x0000, 0x7fff).rom().region("audiocpu", 0); + map(0x8000, 0xffff).bankr("seibu_bank1"); +} /*****************************************************************************/ |