summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/srumbler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/srumbler.cpp')
-rw-r--r--src/mame/drivers/srumbler.cpp68
1 files changed, 35 insertions, 33 deletions
diff --git a/src/mame/drivers/srumbler.cpp b/src/mame/drivers/srumbler.cpp
index b92b611254e..58717afdd1c 100644
--- a/src/mame/drivers/srumbler.cpp
+++ b/src/mame/drivers/srumbler.cpp
@@ -81,39 +81,41 @@ to the page register.
Ignore the warnings about writing to unmapped memory.
*/
-ADDRESS_MAP_START(srumbler_state::srumbler_map)
- AM_RANGE(0x0000, 0x1dff) AM_RAM /* RAM (of 1 sort or another) */
- AM_RANGE(0x1e00, 0x1fff) AM_RAM AM_SHARE("spriteram")
- AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(background_w) AM_SHARE("backgroundram")
- AM_RANGE(0x4008, 0x4008) AM_READ_PORT("SYSTEM") AM_WRITE(bankswitch_w)
- AM_RANGE(0x4009, 0x4009) AM_READ_PORT("P1") AM_WRITE(_4009_w)
- AM_RANGE(0x400a, 0x400a) AM_READ_PORT("P2")
- AM_RANGE(0x400b, 0x400b) AM_READ_PORT("DSW1")
- AM_RANGE(0x400c, 0x400c) AM_READ_PORT("DSW2")
- AM_RANGE(0x400a, 0x400d) AM_WRITE(scroll_w)
- AM_RANGE(0x400e, 0x400e) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
- AM_RANGE(0x5000, 0x5fff) AM_ROMBANK("5000") AM_WRITE(foreground_w) AM_SHARE("foregroundram") /* Banked ROM */
- AM_RANGE(0x6000, 0x6fff) AM_ROMBANK("6000") /* Banked ROM */
- AM_RANGE(0x6000, 0x6fff) AM_WRITENOP /* Video RAM 2 ??? (not used) */
- AM_RANGE(0x7000, 0x7fff) AM_ROMBANK("7000") /* Banked ROM */
- AM_RANGE(0x7000, 0x73ff) AM_DEVWRITE("palette", palette_device, write8) AM_SHARE("palette")
- AM_RANGE(0x8000, 0x8fff) AM_ROMBANK("8000") /* Banked ROM */
- AM_RANGE(0x9000, 0x9fff) AM_ROMBANK("9000") /* Banked ROM */
- AM_RANGE(0xa000, 0xafff) AM_ROMBANK("a000") /* Banked ROM */
- AM_RANGE(0xb000, 0xbfff) AM_ROMBANK("b000") /* Banked ROM */
- AM_RANGE(0xc000, 0xcfff) AM_ROMBANK("c000") /* Banked ROM */
- AM_RANGE(0xd000, 0xdfff) AM_ROMBANK("d000") /* Banked ROM */
- AM_RANGE(0xe000, 0xefff) AM_ROMBANK("e000") /* Banked ROM */
- AM_RANGE(0xf000, 0xffff) AM_ROMBANK("f000") /* Banked ROM */
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(srumbler_state::srumbler_sound_map)
- AM_RANGE(0x0000, 0x7fff) AM_ROM
- AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ym1", ym2203_device, write)
- AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ym2", ym2203_device, write)
- AM_RANGE(0xc000, 0xc7ff) AM_RAM
- AM_RANGE(0xe000, 0xe000) AM_DEVREAD("soundlatch", generic_latch_8_device, read)
-ADDRESS_MAP_END
+void srumbler_state::srumbler_map(address_map &map)
+{
+ map(0x0000, 0x1dff).ram(); /* RAM (of 1 sort or another) */
+ map(0x1e00, 0x1fff).ram().share("spriteram");
+ map(0x2000, 0x3fff).ram().w(this, FUNC(srumbler_state::background_w)).share("backgroundram");
+ map(0x4008, 0x4008).portr("SYSTEM").w(this, FUNC(srumbler_state::bankswitch_w));
+ map(0x4009, 0x4009).portr("P1").w(this, FUNC(srumbler_state::_4009_w));
+ map(0x400a, 0x400a).portr("P2");
+ map(0x400b, 0x400b).portr("DSW1");
+ map(0x400c, 0x400c).portr("DSW2");
+ map(0x400a, 0x400d).w(this, FUNC(srumbler_state::scroll_w));
+ map(0x400e, 0x400e).w("soundlatch", FUNC(generic_latch_8_device::write));
+ map(0x5000, 0x5fff).bankr("5000").w(this, FUNC(srumbler_state::foreground_w)).share("foregroundram"); /* Banked ROM */
+ map(0x6000, 0x6fff).bankr("6000"); /* Banked ROM */
+ map(0x6000, 0x6fff).nopw(); /* Video RAM 2 ??? (not used) */
+ map(0x7000, 0x7fff).bankr("7000"); /* Banked ROM */
+ map(0x7000, 0x73ff).w(m_palette, FUNC(palette_device::write8)).share("palette");
+ map(0x8000, 0x8fff).bankr("8000"); /* Banked ROM */
+ map(0x9000, 0x9fff).bankr("9000"); /* Banked ROM */
+ map(0xa000, 0xafff).bankr("a000"); /* Banked ROM */
+ map(0xb000, 0xbfff).bankr("b000"); /* Banked ROM */
+ map(0xc000, 0xcfff).bankr("c000"); /* Banked ROM */
+ map(0xd000, 0xdfff).bankr("d000"); /* Banked ROM */
+ map(0xe000, 0xefff).bankr("e000"); /* Banked ROM */
+ map(0xf000, 0xffff).bankr("f000"); /* Banked ROM */
+}
+
+void srumbler_state::srumbler_sound_map(address_map &map)
+{
+ map(0x0000, 0x7fff).rom();
+ map(0x8000, 0x8001).w("ym1", FUNC(ym2203_device::write));
+ map(0xa000, 0xa001).w("ym2", FUNC(ym2203_device::write));
+ map(0xc000, 0xc7ff).ram();
+ map(0xe000, 0xe000).r("soundlatch", FUNC(generic_latch_8_device::read));
+}
static INPUT_PORTS_START( srumbler )