diff options
Diffstat (limited to 'src/mame/drivers/relief.cpp')
-rw-r--r-- | src/mame/drivers/relief.cpp | 62 |
1 files changed, 32 insertions, 30 deletions
diff --git a/src/mame/drivers/relief.cpp b/src/mame/drivers/relief.cpp index fee92c40211..f2a4b5c439c 100644 --- a/src/mame/drivers/relief.cpp +++ b/src/mame/drivers/relief.cpp @@ -107,10 +107,11 @@ WRITE16_MEMBER(relief_state::audio_volume_w) } } -ADDRESS_MAP_START(relief_state::oki_map) - AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("okibank") - AM_RANGE(0x20000, 0x3ffff) AM_ROM -ADDRESS_MAP_END +void relief_state::oki_map(address_map &map) +{ + map(0x00000, 0x1ffff).bankr("okibank"); + map(0x20000, 0x3ffff).rom(); +} /************************************* @@ -119,32 +120,33 @@ ADDRESS_MAP_END * *************************************/ -ADDRESS_MAP_START(relief_state::main_map) - ADDRESS_MAP_UNMAP_HIGH - ADDRESS_MAP_GLOBAL_MASK(0x3fffff) - AM_RANGE(0x000000, 0x07ffff) AM_ROM - AM_RANGE(0x140000, 0x140003) AM_DEVWRITE8("ymsnd", ym2413_device, write, 0x00ff) - AM_RANGE(0x140010, 0x140011) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) - AM_RANGE(0x140020, 0x140021) AM_WRITE(audio_volume_w) - AM_RANGE(0x140030, 0x140031) AM_WRITE(audio_control_w) - AM_RANGE(0x180000, 0x180fff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0xff00) - AM_RANGE(0x1c0030, 0x1c0031) AM_DEVWRITE("eeprom", eeprom_parallel_28xx_device, unlock_write16) - AM_RANGE(0x260000, 0x260001) AM_READ_PORT("260000") - AM_RANGE(0x260002, 0x260003) AM_READ_PORT("260002") - AM_RANGE(0x260010, 0x260011) AM_READ(special_port2_r) - AM_RANGE(0x260012, 0x260013) AM_READ_PORT("260012") - AM_RANGE(0x2a0000, 0x2a0001) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w) - AM_RANGE(0x3e0000, 0x3e0fff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette") - AM_RANGE(0x3effc0, 0x3effff) AM_DEVREADWRITE("vad", atari_vad_device, control_read, control_write) - AM_RANGE(0x3f0000, 0x3f1fff) AM_RAM_DEVWRITE("vad", atari_vad_device, playfield2_latched_msb_w) AM_SHARE("vad:playfield2") - AM_RANGE(0x3f2000, 0x3f3fff) AM_RAM_DEVWRITE("vad", atari_vad_device, playfield_latched_lsb_w) AM_SHARE("vad:playfield") - AM_RANGE(0x3f4000, 0x3f5fff) AM_RAM_DEVWRITE("vad", atari_vad_device, playfield_upper_w) AM_SHARE("vad:playfield_ext") - AM_RANGE(0x3f6000, 0x3f67ff) AM_RAM AM_SHARE("vad:mob") - AM_RANGE(0x3f6800, 0x3f8eff) AM_RAM - AM_RANGE(0x3f8f00, 0x3f8f7f) AM_RAM AM_SHARE("vad:eof") - AM_RANGE(0x3f8f80, 0x3f8fff) AM_SHARE("vad:mob:slip") - AM_RANGE(0x3f9000, 0x3fffff) AM_RAM -ADDRESS_MAP_END +void relief_state::main_map(address_map &map) +{ + map.unmap_value_high(); + map.global_mask(0x3fffff); + map(0x000000, 0x07ffff).rom(); + map(0x140000, 0x140003).w(m_ym2413, FUNC(ym2413_device::write)).umask16(0x00ff); + map(0x140011, 0x140011).rw(m_oki, FUNC(okim6295_device::read), FUNC(okim6295_device::write)); + map(0x140020, 0x140021).w(this, FUNC(relief_state::audio_volume_w)); + map(0x140030, 0x140031).w(this, FUNC(relief_state::audio_control_w)); + map(0x180000, 0x180fff).rw("eeprom", FUNC(eeprom_parallel_28xx_device::read), FUNC(eeprom_parallel_28xx_device::write)).umask16(0xff00); + map(0x1c0030, 0x1c0031).w("eeprom", FUNC(eeprom_parallel_28xx_device::unlock_write16)); + map(0x260000, 0x260001).portr("260000"); + map(0x260002, 0x260003).portr("260002"); + map(0x260010, 0x260011).r(this, FUNC(relief_state::special_port2_r)); + map(0x260012, 0x260013).portr("260012"); + map(0x2a0000, 0x2a0001).w("watchdog", FUNC(watchdog_timer_device::reset16_w)); + map(0x3e0000, 0x3e0fff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette"); + map(0x3effc0, 0x3effff).rw(m_vad, FUNC(atari_vad_device::control_read), FUNC(atari_vad_device::control_write)); + map(0x3f0000, 0x3f1fff).ram().w(m_vad, FUNC(atari_vad_device::playfield2_latched_msb_w)).share("vad:playfield2"); + map(0x3f2000, 0x3f3fff).ram().w(m_vad, FUNC(atari_vad_device::playfield_latched_lsb_w)).share("vad:playfield"); + map(0x3f4000, 0x3f5fff).ram().w(m_vad, FUNC(atari_vad_device::playfield_upper_w)).share("vad:playfield_ext"); + map(0x3f6000, 0x3f67ff).ram().share("vad:mob"); + map(0x3f6800, 0x3f8eff).ram(); + map(0x3f8f00, 0x3f8f7f).ram().share("vad:eof"); + map(0x3f8f80, 0x3f8fff).share("vad:mob:slip"); + map(0x3f9000, 0x3fffff).ram(); +} |