diff options
author | 2018-03-13 07:36:43 +0100 | |
---|---|---|
committer | 2018-03-14 14:07:14 +0100 | |
commit | 115bb9936c5cd3faf955d7eb1e251a94e4744b7b (patch) | |
tree | f0230f547f6c750f9974c61479eef28cbe4ad571 /src/mame/drivers/mmd1.cpp | |
parent | f155992daab88ad024cec995428a67108218b51d (diff) |
Address maps macros removal, pass 1 [O. Galibert]
Diffstat (limited to 'src/mame/drivers/mmd1.cpp')
-rw-r--r-- | src/mame/drivers/mmd1.cpp | 72 |
1 files changed, 38 insertions, 34 deletions
diff --git a/src/mame/drivers/mmd1.cpp b/src/mame/drivers/mmd1.cpp index 0a9605b0c68..9a3d2cb31cc 100644 --- a/src/mame/drivers/mmd1.cpp +++ b/src/mame/drivers/mmd1.cpp @@ -249,40 +249,44 @@ READ8_MEMBER( mmd1_state::mmd1_keyboard_r ) return m_return_code; } -ADDRESS_MAP_START(mmd1_state::mmd1_mem) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE( 0x0000, 0x00ff ) AM_ROM // Main ROM - AM_RANGE( 0x0100, 0x01ff ) AM_ROM // Expansion slot - AM_RANGE( 0x0200, 0x02ff ) AM_RAM - AM_RANGE( 0x0300, 0x03ff ) AM_RAM -ADDRESS_MAP_END - -ADDRESS_MAP_START(mmd1_state::mmd1_io) - ADDRESS_MAP_UNMAP_HIGH - ADDRESS_MAP_GLOBAL_MASK(0x07) - AM_RANGE( 0x00, 0x00 ) AM_READWRITE(mmd1_keyboard_r, mmd1_port0_w) - AM_RANGE( 0x01, 0x01 ) AM_WRITE(mmd1_port1_w) - AM_RANGE( 0x02, 0x02 ) AM_WRITE(mmd1_port2_w) -ADDRESS_MAP_END - -ADDRESS_MAP_START(mmd1_state::mmd2_mem) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE(0x0000, 0x03ff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2") - AM_RANGE(0x0400, 0x0fff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank4") - AM_RANGE(0xd800, 0xe3ff) AM_READ_BANK("bank5") AM_WRITE_BANK("bank6") - AM_RANGE(0xe400, 0xe7ff) AM_READ_BANK("bank7") AM_WRITE_BANK("bank8") - AM_RANGE(0xfc00, 0xfcff) AM_RAM // Scratchpad -ADDRESS_MAP_END - -ADDRESS_MAP_START(mmd1_state::mmd2_io) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE( 0x00, 0x00 ) AM_WRITE(mmd1_port0_w) - AM_RANGE( 0x01, 0x01 ) AM_READWRITE(mmd2_01_r,mmd1_port1_w) - AM_RANGE( 0x02, 0x02 ) AM_WRITE(mmd1_port2_w) - AM_RANGE( 0x03, 0x03 ) AM_DEVREADWRITE("i8279", i8279_device, status_r, cmd_w) - AM_RANGE( 0x04, 0x04 ) AM_DEVREADWRITE("i8279", i8279_device, data_r, data_w) - AM_RANGE( 0x05, 0x07 ) AM_READ(mmd2_bank_r) -ADDRESS_MAP_END +void mmd1_state::mmd1_mem(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0x00ff).rom(); // Main ROM + map(0x0100, 0x01ff).rom(); // Expansion slot + map(0x0200, 0x02ff).ram(); + map(0x0300, 0x03ff).ram(); +} + +void mmd1_state::mmd1_io(address_map &map) +{ + map.unmap_value_high(); + map.global_mask(0x07); + map(0x00, 0x00).rw(this, FUNC(mmd1_state::mmd1_keyboard_r), FUNC(mmd1_state::mmd1_port0_w)); + map(0x01, 0x01).w(this, FUNC(mmd1_state::mmd1_port1_w)); + map(0x02, 0x02).w(this, FUNC(mmd1_state::mmd1_port2_w)); +} + +void mmd1_state::mmd2_mem(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0x03ff).bankr("bank1").bankw("bank2"); + map(0x0400, 0x0fff).bankr("bank3").bankw("bank4"); + map(0xd800, 0xe3ff).bankr("bank5").bankw("bank6"); + map(0xe400, 0xe7ff).bankr("bank7").bankw("bank8"); + map(0xfc00, 0xfcff).ram(); // Scratchpad +} + +void mmd1_state::mmd2_io(address_map &map) +{ + map.unmap_value_high(); + map(0x00, 0x00).w(this, FUNC(mmd1_state::mmd1_port0_w)); + map(0x01, 0x01).rw(this, FUNC(mmd1_state::mmd2_01_r), FUNC(mmd1_state::mmd1_port1_w)); + map(0x02, 0x02).w(this, FUNC(mmd1_state::mmd1_port2_w)); + map(0x03, 0x03).rw("i8279", FUNC(i8279_device::status_r), FUNC(i8279_device::cmd_w)); + map(0x04, 0x04).rw("i8279", FUNC(i8279_device::data_r), FUNC(i8279_device::data_w)); + map(0x05, 0x07).r(this, FUNC(mmd1_state::mmd2_bank_r)); +} /* Input ports */ |