diff options
Diffstat (limited to 'src/mame/drivers/datum.cpp')
-rw-r--r-- | src/mame/drivers/datum.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/mame/drivers/datum.cpp b/src/mame/drivers/datum.cpp index ffeaf62a46d..a017913cd5c 100644 --- a/src/mame/drivers/datum.cpp +++ b/src/mame/drivers/datum.cpp @@ -81,16 +81,17 @@ private: }; -ADDRESS_MAP_START(datum_state::datum_mem) - ADDRESS_MAP_UNMAP_HIGH - ADDRESS_MAP_GLOBAL_MASK (0x7fff) // A15 not used - AM_RANGE(0x0000, 0x007f) AM_RAM // inside CPU - AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0x0c00) AM_RAM // main ram 2x 2114 - AM_RANGE(0x4000, 0x4001) AM_MIRROR(0x0ffe) AM_DEVREADWRITE("acia", acia6850_device, read, write) - AM_RANGE(0x5000, 0x5003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pia2", pia6821_device, read, write) - AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pia1", pia6821_device, read, write) - AM_RANGE(0x7000, 0x77ff) AM_MIRROR(0x0800) AM_ROM AM_REGION("roms", 0) -ADDRESS_MAP_END +void datum_state::datum_mem(address_map &map) +{ + map.unmap_value_high(); + map.global_mask(0x7fff); // A15 not used + map(0x0000, 0x007f).ram(); // inside CPU + map(0x1000, 0x13ff).mirror(0x0c00).ram(); // main ram 2x 2114 + map(0x4000, 0x4001).mirror(0x0ffe).rw("acia", FUNC(acia6850_device::read), FUNC(acia6850_device::write)); + map(0x5000, 0x5003).mirror(0x0ffc).rw("pia2", FUNC(pia6821_device::read), FUNC(pia6821_device::write)); + map(0x6000, 0x6003).mirror(0x0ffc).rw(m_pia1, FUNC(pia6821_device::read), FUNC(pia6821_device::write)); + map(0x7000, 0x77ff).mirror(0x0800).rom().region("roms", 0); +} /* Input ports */ |