summaryrefslogtreecommitdiffstats
path: root/src/mame/drivers/chaos.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/chaos.cpp')
-rw-r--r--src/mame/drivers/chaos.cpp37
1 files changed, 20 insertions, 17 deletions
diff --git a/src/mame/drivers/chaos.cpp b/src/mame/drivers/chaos.cpp
index a4944306929..069f7e53cda 100644
--- a/src/mame/drivers/chaos.cpp
+++ b/src/mame/drivers/chaos.cpp
@@ -64,23 +64,26 @@ private:
};
-ADDRESS_MAP_START(chaos_state::mem_map)
- ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x0000, 0x7fff) AM_RAM AM_SHARE("ram")
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(chaos_state::io_map)
- ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x1e, 0x1e) AM_READ(port1e_r)
- AM_RANGE(0x1f, 0x1f) AM_READWRITE(port90_r, port1f_w)
- AM_RANGE(0x90, 0x90) AM_READ(port90_r)
- AM_RANGE(0x91, 0x91) AM_READ(port91_r)
- AM_RANGE(0x92, 0x92) AM_DEVWRITE("terminal", generic_terminal_device, write)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(chaos_state::data_map)
- AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_NOP // stops error log filling up while using debug
-ADDRESS_MAP_END
+void chaos_state::mem_map(address_map &map)
+{
+ map.unmap_value_high();
+ map(0x0000, 0x7fff).ram().share("ram");
+}
+
+void chaos_state::io_map(address_map &map)
+{
+ map.unmap_value_high();
+ map(0x1e, 0x1e).r(this, FUNC(chaos_state::port1e_r));
+ map(0x1f, 0x1f).rw(this, FUNC(chaos_state::port90_r), FUNC(chaos_state::port1f_w));
+ map(0x90, 0x90).r(this, FUNC(chaos_state::port90_r));
+ map(0x91, 0x91).r(this, FUNC(chaos_state::port91_r));
+ map(0x92, 0x92).w(m_terminal, FUNC(generic_terminal_device::write));
+}
+
+void chaos_state::data_map(address_map &map)
+{
+ map(S2650_DATA_PORT, S2650_DATA_PORT).noprw(); // stops error log filling up while using debug
+}
/* Input ports */
static INPUT_PORTS_START( chaos )