summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/machine/isbc_215g.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/machine/isbc_215g.cpp')
-rw-r--r--src/mame/machine/isbc_215g.cpp28
1 files changed, 15 insertions, 13 deletions
diff --git a/src/mame/machine/isbc_215g.cpp b/src/mame/machine/isbc_215g.cpp
index a8b27521983..2e1d58d746d 100644
--- a/src/mame/machine/isbc_215g.cpp
+++ b/src/mame/machine/isbc_215g.cpp
@@ -316,19 +316,21 @@ WRITE16_MEMBER(isbc_215g_device::mem_w)
m_maincpu_mem->write_word_unaligned(offset*2, data, mem_mask);
}
-ADDRESS_MAP_START(isbc_215g_device::isbc_215g_mem)
- AM_RANGE(0x00000, 0xfffff) AM_READWRITE(mem_r, mem_w)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(isbc_215g_device::isbc_215g_io)
- AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("i8089", 0)
- AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x3800) AM_RAM
- AM_RANGE(0x8000, 0x8039) AM_MIRROR(0x3fc0) AM_READWRITE(io_r, io_w)
- AM_RANGE(0xc070, 0xc08f) AM_DEVREADWRITE8("sbx1", isbx_slot_device, mcs0_r, mcs0_w, 0x00ff)
- AM_RANGE(0xc0b0, 0xc0bf) AM_DEVREADWRITE8("sbx1", isbx_slot_device, mcs1_r, mcs1_w, 0x00ff)
- AM_RANGE(0xc0d0, 0xc0df) AM_DEVREADWRITE8("sbx2", isbx_slot_device, mcs0_r, mcs0_w, 0x00ff)
- AM_RANGE(0xc0e0, 0xc0ef) AM_DEVREADWRITE8("sbx2", isbx_slot_device, mcs1_r, mcs1_w, 0x00ff)
-ADDRESS_MAP_END
+void isbc_215g_device::isbc_215g_mem(address_map &map)
+{
+ map(0x00000, 0xfffff).rw(this, FUNC(isbc_215g_device::mem_r), FUNC(isbc_215g_device::mem_w));
+}
+
+void isbc_215g_device::isbc_215g_io(address_map &map)
+{
+ map(0x0000, 0x3fff).rom().region("i8089", 0);
+ map(0x4000, 0x47ff).mirror(0x3800).ram();
+ map(0x8000, 0x8039).mirror(0x3fc0).rw(this, FUNC(isbc_215g_device::io_r), FUNC(isbc_215g_device::io_w));
+ map(0xc070, 0xc08f).rw("sbx1", FUNC(isbx_slot_device::mcs0_r), FUNC(isbx_slot_device::mcs0_w)).umask16(0x00ff);
+ map(0xc0b0, 0xc0bf).rw("sbx1", FUNC(isbx_slot_device::mcs1_r), FUNC(isbx_slot_device::mcs1_w)).umask16(0x00ff);
+ map(0xc0d0, 0xc0df).rw("sbx2", FUNC(isbx_slot_device::mcs0_r), FUNC(isbx_slot_device::mcs0_w)).umask16(0x00ff);
+ map(0xc0e0, 0xc0ef).rw("sbx2", FUNC(isbx_slot_device::mcs1_r), FUNC(isbx_slot_device::mcs1_w)).umask16(0x00ff);
+}
WRITE_LINE_MEMBER(isbc_215g_device::isbx_irq_00_w)
{