summaryrefslogtreecommitdiffstats
path: root/src/mame/drivers/backfire.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/backfire.cpp')
-rw-r--r--src/mame/drivers/backfire.cpp47
1 files changed, 24 insertions, 23 deletions
diff --git a/src/mame/drivers/backfire.cpp b/src/mame/drivers/backfire.cpp
index 2882c465285..66a20a70b09 100644
--- a/src/mame/drivers/backfire.cpp
+++ b/src/mame/drivers/backfire.cpp
@@ -292,32 +292,33 @@ WRITE32_MEMBER(backfire_state::backfire_spriteram2_w)
-ADDRESS_MAP_START(backfire_state::backfire_map)
- AM_RANGE(0x000000, 0x0fffff) AM_ROM
- AM_RANGE(0x100000, 0x10001f) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf_control_dword_r, pf_control_dword_w)
- AM_RANGE(0x110000, 0x111fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf1_data_dword_r, pf1_data_dword_w)
- AM_RANGE(0x114000, 0x115fff) AM_DEVREADWRITE("tilegen1", deco16ic_device, pf2_data_dword_r, pf2_data_dword_w)
- AM_RANGE(0x120000, 0x120fff) AM_READWRITE(backfire_pf1_rowscroll_r, backfire_pf1_rowscroll_w)
- AM_RANGE(0x124000, 0x124fff) AM_READWRITE(backfire_pf2_rowscroll_r, backfire_pf2_rowscroll_w)
- AM_RANGE(0x130000, 0x13001f) AM_DEVREADWRITE("tilegen2", deco16ic_device, pf_control_dword_r, pf_control_dword_w)
- AM_RANGE(0x140000, 0x141fff) AM_DEVREADWRITE("tilegen2", deco16ic_device, pf1_data_dword_r, pf1_data_dword_w)
- AM_RANGE(0x144000, 0x145fff) AM_DEVREADWRITE("tilegen2", deco16ic_device, pf2_data_dword_r, pf2_data_dword_w)
- AM_RANGE(0x150000, 0x150fff) AM_READWRITE(backfire_pf3_rowscroll_r, backfire_pf3_rowscroll_w)
- AM_RANGE(0x154000, 0x154fff) AM_READWRITE(backfire_pf4_rowscroll_r, backfire_pf4_rowscroll_w)
- AM_RANGE(0x160000, 0x161fff) AM_DEVREADWRITE16("palette", palette_device, read16, write16, 0x0000ffff) AM_SHARE("palette")
- AM_RANGE(0x170000, 0x177fff) AM_RAM AM_SHARE("mainram")// main ram
+void backfire_state::backfire_map(address_map &map)
+{
+ map(0x000000, 0x0fffff).rom();
+ map(0x100000, 0x10001f).rw(m_deco_tilegen1, FUNC(deco16ic_device::pf_control_dword_r), FUNC(deco16ic_device::pf_control_dword_w));
+ map(0x110000, 0x111fff).rw(m_deco_tilegen1, FUNC(deco16ic_device::pf1_data_dword_r), FUNC(deco16ic_device::pf1_data_dword_w));
+ map(0x114000, 0x115fff).rw(m_deco_tilegen1, FUNC(deco16ic_device::pf2_data_dword_r), FUNC(deco16ic_device::pf2_data_dword_w));
+ map(0x120000, 0x120fff).rw(this, FUNC(backfire_state::backfire_pf1_rowscroll_r), FUNC(backfire_state::backfire_pf1_rowscroll_w));
+ map(0x124000, 0x124fff).rw(this, FUNC(backfire_state::backfire_pf2_rowscroll_r), FUNC(backfire_state::backfire_pf2_rowscroll_w));
+ map(0x130000, 0x13001f).rw(m_deco_tilegen2, FUNC(deco16ic_device::pf_control_dword_r), FUNC(deco16ic_device::pf_control_dword_w));
+ map(0x140000, 0x141fff).rw(m_deco_tilegen2, FUNC(deco16ic_device::pf1_data_dword_r), FUNC(deco16ic_device::pf1_data_dword_w));
+ map(0x144000, 0x145fff).rw(m_deco_tilegen2, FUNC(deco16ic_device::pf2_data_dword_r), FUNC(deco16ic_device::pf2_data_dword_w));
+ map(0x150000, 0x150fff).rw(this, FUNC(backfire_state::backfire_pf3_rowscroll_r), FUNC(backfire_state::backfire_pf3_rowscroll_w));
+ map(0x154000, 0x154fff).rw(this, FUNC(backfire_state::backfire_pf4_rowscroll_r), FUNC(backfire_state::backfire_pf4_rowscroll_w));
+ map(0x160000, 0x161fff).rw(m_palette, FUNC(palette_device::read16), FUNC(palette_device::write16)).umask32(0x0000ffff).share("palette");
+ map(0x170000, 0x177fff).ram().share("mainram");// main ram
// AM_RANGE(0x180010, 0x180013) AM_RAM AM_SHARE("backfire_180010") // always 180010 ?
// AM_RANGE(0x188010, 0x188013) AM_RAM AM_SHARE("backfire_188010") // always 188010 ?
- AM_RANGE(0x184000, 0x185fff) AM_READWRITE(backfire_spriteram1_r, backfire_spriteram1_w)
- AM_RANGE(0x18c000, 0x18dfff) AM_READWRITE(backfire_spriteram2_r, backfire_spriteram2_w)
- AM_RANGE(0x190000, 0x190003) AM_READ(backfire_eeprom_r)
- AM_RANGE(0x194000, 0x194003) AM_READ(backfire_control2_r)
- AM_RANGE(0x1a4000, 0x1a4003) AM_WRITE(backfire_eeprom_w)
+ map(0x184000, 0x185fff).rw(this, FUNC(backfire_state::backfire_spriteram1_r), FUNC(backfire_state::backfire_spriteram1_w));
+ map(0x18c000, 0x18dfff).rw(this, FUNC(backfire_state::backfire_spriteram2_r), FUNC(backfire_state::backfire_spriteram2_w));
+ map(0x190000, 0x190003).r(this, FUNC(backfire_state::backfire_eeprom_r));
+ map(0x194000, 0x194003).r(this, FUNC(backfire_state::backfire_control2_r));
+ map(0x1a4000, 0x1a4003).w(this, FUNC(backfire_state::backfire_eeprom_w));
- AM_RANGE(0x1a8000, 0x1a8003) AM_RAM AM_SHARE("left_priority")
- AM_RANGE(0x1ac000, 0x1ac003) AM_RAM AM_SHARE("right_priority")
+ map(0x1a8000, 0x1a8003).ram().share("left_priority");
+ map(0x1ac000, 0x1ac003).ram().share("right_priority");
// AM_RANGE(0x1b0000, 0x1b0003) AM_WRITENOP // always 1b0000
/* when set to pentometer in test mode */
@@ -325,8 +326,8 @@ ADDRESS_MAP_START(backfire_state::backfire_map)
// AM_RANGE(0x1e8000, 0x1e8003) AM_READ(backfire_wheel1_r)
// AM_RANGE(0x1e8004, 0x1e8007) AM_READ(backfire_wheel2_r)
- AM_RANGE(0x1c0000, 0x1c0007) AM_DEVREADWRITE8("ymz", ymz280b_device, read, write, 0x000000ff)
-ADDRESS_MAP_END
+ map(0x1c0000, 0x1c0007).rw("ymz", FUNC(ymz280b_device::read), FUNC(ymz280b_device::write)).umask32(0x000000ff);
+}
static INPUT_PORTS_START( backfire )