diff options
Diffstat (limited to 'src/mame/drivers/ipds.cpp')
-rw-r--r-- | src/mame/drivers/ipds.cpp | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/src/mame/drivers/ipds.cpp b/src/mame/drivers/ipds.cpp index e04d1504040..8bf683f9f93 100644 --- a/src/mame/drivers/ipds.cpp +++ b/src/mame/drivers/ipds.cpp @@ -63,19 +63,21 @@ WRITE8_MEMBER( ipds_state::ipds_b1_w ) { } -ADDRESS_MAP_START(ipds_state::ipds_mem) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE(0x0000, 0x07ff) AM_ROM - AM_RANGE(0x0800, 0xffff) AM_RAM -ADDRESS_MAP_END - -ADDRESS_MAP_START(ipds_state::ipds_io) - ADDRESS_MAP_GLOBAL_MASK(0xff) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE(0xb0, 0xb0) AM_READ(ipds_b0_r) - AM_RANGE(0xb1, 0xb1) AM_READWRITE(ipds_b1_r,ipds_b1_w) - AM_RANGE(0xc0, 0xc0) AM_READ(ipds_c0_r) -ADDRESS_MAP_END +void ipds_state::ipds_mem(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0x07ff).rom(); + map(0x0800, 0xffff).ram(); +} + +void ipds_state::ipds_io(address_map &map) +{ + map.global_mask(0xff); + map.unmap_value_high(); + map(0xb0, 0xb0).r(this, FUNC(ipds_state::ipds_b0_r)); + map(0xb1, 0xb1).rw(this, FUNC(ipds_state::ipds_b1_r), FUNC(ipds_state::ipds_b1_w)); + map(0xc0, 0xc0).r(this, FUNC(ipds_state::ipds_c0_r)); +} /* Input ports */ static INPUT_PORTS_START( ipds ) |