summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/abcbus/lux21046.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/abcbus/lux21046.cpp')
-rw-r--r--src/devices/bus/abcbus/lux21046.cpp38
1 files changed, 20 insertions, 18 deletions
diff --git a/src/devices/bus/abcbus/lux21046.cpp b/src/devices/bus/abcbus/lux21046.cpp
index ee8f19c20cd..cecbf5a396e 100644
--- a/src/devices/bus/abcbus/lux21046.cpp
+++ b/src/devices/bus/abcbus/lux21046.cpp
@@ -137,30 +137,32 @@ const tiny_rom_entry *luxor_55_21046_device::device_rom_region() const
// ADDRESS_MAP( luxor_55_21046_mem )
//-------------------------------------------------
-ADDRESS_MAP_START(luxor_55_21046_device::luxor_55_21046_mem)
- ADDRESS_MAP_UNMAP_HIGH
- ADDRESS_MAP_GLOBAL_MASK(0x3fff)
- AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION(Z80_TAG, 0x2000) // A13 pull-up
- AM_RANGE(0x2000, 0x3fff) AM_RAM
-ADDRESS_MAP_END
+void luxor_55_21046_device::luxor_55_21046_mem(address_map &map)
+{
+ map.unmap_value_high();
+ map.global_mask(0x3fff);
+ map(0x0000, 0x1fff).rom().region(Z80_TAG, 0x2000); // A13 pull-up
+ map(0x2000, 0x3fff).ram();
+}
//-------------------------------------------------
// ADDRESS_MAP( luxor_55_21046_io )
//-------------------------------------------------
-ADDRESS_MAP_START(luxor_55_21046_device::luxor_55_21046_io)
- ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x0c, 0x0c) AM_MIRROR(0xff03) AM_READ(out_r)
- AM_RANGE(0x1c, 0x1c) AM_MIRROR(0xff03) AM_WRITE(inp_w)
- AM_RANGE(0x2c, 0x2c) AM_MIRROR(0xff03) AM_WRITE(_4b_w)
- AM_RANGE(0x3c, 0x3c) AM_MIRROR(0xff03) AM_WRITE(_9b_w)
- AM_RANGE(0x4c, 0x4c) AM_MIRROR(0xff03) AM_WRITE(_8a_w)
- AM_RANGE(0x58, 0x58) AM_MIRROR(0x0007) AM_SELECT(0xff00) AM_READ(_9a_r)
- AM_RANGE(0x68, 0x6b) AM_MIRROR(0xff00) AM_DEVREAD(SAB1793_TAG, fd1793_device, read)
- AM_RANGE(0x78, 0x7b) AM_MIRROR(0xff00) AM_DEVWRITE(SAB1793_TAG, fd1793_device, write)
- AM_RANGE(0x80, 0x80) AM_MIRROR(0xff77) AM_DEVREADWRITE(Z80DMA_TAG, z80dma_device, read, write)
-ADDRESS_MAP_END
+void luxor_55_21046_device::luxor_55_21046_io(address_map &map)
+{
+ map.unmap_value_high();
+ map(0x0c, 0x0c).mirror(0xff03).r(this, FUNC(luxor_55_21046_device::out_r));
+ map(0x1c, 0x1c).mirror(0xff03).w(this, FUNC(luxor_55_21046_device::inp_w));
+ map(0x2c, 0x2c).mirror(0xff03).w(this, FUNC(luxor_55_21046_device::_4b_w));
+ map(0x3c, 0x3c).mirror(0xff03).w(this, FUNC(luxor_55_21046_device::_9b_w));
+ map(0x4c, 0x4c).mirror(0xff03).w(this, FUNC(luxor_55_21046_device::_8a_w));
+ map(0x58, 0x58).mirror(0x0007).select(0xff00).r(this, FUNC(luxor_55_21046_device::_9a_r));
+ map(0x68, 0x6b).mirror(0xff00).r(SAB1793_TAG, FUNC(fd1793_device::read));
+ map(0x78, 0x7b).mirror(0xff00).w(SAB1793_TAG, FUNC(fd1793_device::write));
+ map(0x80, 0x80).mirror(0xff77).rw(Z80DMA_TAG, FUNC(z80dma_device::read), FUNC(z80dma_device::write));
+}
//-------------------------------------------------