diff options
Diffstat (limited to 'src/mame/drivers/ultrsprt.cpp')
-rw-r--r-- | src/mame/drivers/ultrsprt.cpp | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/src/mame/drivers/ultrsprt.cpp b/src/mame/drivers/ultrsprt.cpp index 8ae6b10c297..3c8cc7b7bbb 100644 --- a/src/mame/drivers/ultrsprt.cpp +++ b/src/mame/drivers/ultrsprt.cpp @@ -148,28 +148,30 @@ READ16_MEMBER(ultrsprt_state::upd2_r) /*****************************************************************************/ -ADDRESS_MAP_START(ultrsprt_state::ultrsprt_map) - AM_RANGE(0x00000000, 0x0007ffff) AM_RAMBANK("vram") - AM_RANGE(0x70000000, 0x70000003) AM_READWRITE8(eeprom_r, eeprom_w, 0xff000000) - AM_RANGE(0x70000020, 0x70000023) AM_READ16(upd1_r, 0xffffffff) - AM_RANGE(0x70000040, 0x70000043) AM_READ16(upd2_r, 0xffffffff) - AM_RANGE(0x70000080, 0x7000008f) AM_DEVREADWRITE8("k056800", k056800_device, host_r, host_w, 0xffffffff) - AM_RANGE(0x700000c0, 0x700000cf) AM_WRITENOP // Written following DMA interrupt - unused int ack? - AM_RANGE(0x700000e0, 0x700000e3) AM_WRITE(int_ack_w) - AM_RANGE(0x7f000000, 0x7f01ffff) AM_RAM AM_SHARE("workram") - AM_RANGE(0x7f700000, 0x7f703fff) AM_RAM_DEVWRITE("palette", palette_device, write32) AM_SHARE("palette") - AM_RANGE(0x7f800000, 0x7f9fffff) AM_MIRROR(0x00600000) AM_ROM AM_REGION("program", 0) -ADDRESS_MAP_END +void ultrsprt_state::ultrsprt_map(address_map &map) +{ + map(0x00000000, 0x0007ffff).bankrw("vram"); + map(0x70000000, 0x70000000).rw(this, FUNC(ultrsprt_state::eeprom_r), FUNC(ultrsprt_state::eeprom_w)); + map(0x70000020, 0x70000023).r(this, FUNC(ultrsprt_state::upd1_r)); + map(0x70000040, 0x70000043).r(this, FUNC(ultrsprt_state::upd2_r)); + map(0x70000080, 0x7000008f).rw(m_k056800, FUNC(k056800_device::host_r), FUNC(k056800_device::host_w)); + map(0x700000c0, 0x700000cf).nopw(); // Written following DMA interrupt - unused int ack? + map(0x700000e0, 0x700000e3).w(this, FUNC(ultrsprt_state::int_ack_w)); + map(0x7f000000, 0x7f01ffff).ram().share("workram"); + map(0x7f700000, 0x7f703fff).ram().w(m_palette, FUNC(palette_device::write32)).share("palette"); + map(0x7f800000, 0x7f9fffff).mirror(0x00600000).rom().region("program", 0); +} /*****************************************************************************/ -ADDRESS_MAP_START(ultrsprt_state::sound_map) - AM_RANGE(0x00000000, 0x0001ffff) AM_ROM - AM_RANGE(0x00100000, 0x00101fff) AM_RAM - AM_RANGE(0x00200000, 0x0020000f) AM_DEVREADWRITE8("k056800", k056800_device, sound_r, sound_w, 0xffff) - AM_RANGE(0x00400000, 0x004002ff) AM_DEVREADWRITE8("k054539", k054539_device, read, write, 0xffff) -ADDRESS_MAP_END +void ultrsprt_state::sound_map(address_map &map) +{ + map(0x00000000, 0x0001ffff).rom(); + map(0x00100000, 0x00101fff).ram(); + map(0x00200000, 0x0020000f).rw(m_k056800, FUNC(k056800_device::sound_r), FUNC(k056800_device::sound_w)); + map(0x00400000, 0x004002ff).rw("k054539", FUNC(k054539_device::read), FUNC(k054539_device::write)); +} /*****************************************************************************/ |