diff options
Diffstat (limited to 'src/mame/drivers/if800.cpp')
-rw-r--r-- | src/mame/drivers/if800.cpp | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/src/mame/drivers/if800.cpp b/src/mame/drivers/if800.cpp index f7df89de093..181b39e7a70 100644 --- a/src/mame/drivers/if800.cpp +++ b/src/mame/drivers/if800.cpp @@ -55,17 +55,19 @@ UPD7220_DISPLAY_PIXELS_MEMBER( if800_state::hgdc_display_pixels ) } } -ADDRESS_MAP_START(if800_state::if800_map) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE(0x00000,0x0ffff) AM_RAM - AM_RANGE(0xfe000,0xfffff) AM_ROM AM_REGION("ipl", 0) -ADDRESS_MAP_END - -ADDRESS_MAP_START(if800_state::if800_io) - ADDRESS_MAP_UNMAP_HIGH +void if800_state::if800_map(address_map &map) +{ + map.unmap_value_high(); + map(0x00000, 0x0ffff).ram(); + map(0xfe000, 0xfffff).rom().region("ipl", 0); +} + +void if800_state::if800_io(address_map &map) +{ + map.unmap_value_high(); // AM_RANGE(0x0640, 0x065f) dma? - AM_RANGE(0x0660, 0x0663) AM_DEVREADWRITE8("upd7220", upd7220_device, read, write,0x00ff) -ADDRESS_MAP_END + map(0x0660, 0x0663).rw(m_hgdc, FUNC(upd7220_device::read), FUNC(upd7220_device::write)).umask16(0x00ff); +} /* Input ports */ static INPUT_PORTS_START( if800 ) @@ -80,9 +82,10 @@ void if800_state::machine_reset() { } -ADDRESS_MAP_START(if800_state::upd7220_map) - AM_RANGE(0x00000, 0x3ffff) AM_RAM AM_SHARE("video_ram") -ADDRESS_MAP_END +void if800_state::upd7220_map(address_map &map) +{ + map(0x00000, 0x3ffff).ram().share("video_ram"); +} MACHINE_CONFIG_START(if800_state::if800) /* basic machine hardware */ |