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/cmi.cpp | |
parent | f155992daab88ad024cec995428a67108218b51d (diff) |
Address maps macros removal, pass 1 [O. Galibert]
Diffstat (limited to 'src/mame/drivers/cmi.cpp')
-rw-r--r-- | src/mame/drivers/cmi.cpp | 86 |
1 files changed, 46 insertions, 40 deletions
diff --git a/src/mame/drivers/cmi.cpp b/src/mame/drivers/cmi.cpp index 424e910cdf6..446b235c0c6 100644 --- a/src/mame/drivers/cmi.cpp +++ b/src/mame/drivers/cmi.cpp @@ -1070,49 +1070,55 @@ READ16_MEMBER( cmi_state::midi_dma_r ) } /* The maps are dynamically populated */ -ADDRESS_MAP_START(cmi_state::maincpu1_map) - AM_RANGE(0xfffe, 0xffff) AM_READ(vector_r<0>) -ADDRESS_MAP_END - -ADDRESS_MAP_START(cmi_state::maincpu2_map) - AM_RANGE(0xfffe, 0xffff) AM_READ(vector_r<1>) -ADDRESS_MAP_END - -ADDRESS_MAP_START(cmi_state::muskeys_map) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE(0x0000, 0x007f) AM_RAM - AM_RANGE(0x0080, 0x0083) AM_DEVREADWRITE("cmi10_pia_u21", pia6821_device, read, write) - AM_RANGE(0x0090, 0x0093) AM_DEVREADWRITE("cmi10_pia_u20", pia6821_device, read, write) - AM_RANGE(0x00a0, 0x00a1) AM_DEVREADWRITE("acia_mkbd_kbd", acia6850_device, read, write) - AM_RANGE(0x00b0, 0x00b1) AM_DEVREADWRITE("acia_mkbd_cmi", acia6850_device, read, write) - AM_RANGE(0x4000, 0x47ff) AM_RAM - AM_RANGE(0xb000, 0xb400) AM_ROM - AM_RANGE(0xf000, 0xffff) AM_ROM -ADDRESS_MAP_END - -ADDRESS_MAP_START(cmi_state::alphakeys_map) - ADDRESS_MAP_UNMAP_HIGH - AM_RANGE(0x0000, 0x007f) AM_RAM - AM_RANGE(0x4000, 0x7fff) AM_READ_PORT("ANK_OPTIONS") - AM_RANGE(0x8000, 0xbfff) AM_DEVREADWRITE("ank_pia", pia6821_device, read, write) - AM_RANGE(0xc000, 0xc3ff) AM_ROM AM_MIRROR(0x3c00) -ADDRESS_MAP_END - -ADDRESS_MAP_START(cmi_state::midicpu_map) - AM_RANGE(0x000000, 0x003fff) AM_ROM - AM_RANGE(0x040000, 0x05ffff) AM_READWRITE(midi_dma_r, midi_dma_w) +void cmi_state::maincpu1_map(address_map &map) +{ + map(0xfffe, 0xffff).r(this, FUNC(cmi_state::vector_r<0>)); +} + +void cmi_state::maincpu2_map(address_map &map) +{ + map(0xfffe, 0xffff).r(this, FUNC(cmi_state::vector_r<1>)); +} + +void cmi_state::muskeys_map(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0x007f).ram(); + map(0x0080, 0x0083).rw(m_cmi10_pia_u21, FUNC(pia6821_device::read), FUNC(pia6821_device::write)); + map(0x0090, 0x0093).rw(m_cmi10_pia_u20, FUNC(pia6821_device::read), FUNC(pia6821_device::write)); + map(0x00a0, 0x00a1).rw(m_acia_mkbd_kbd, FUNC(acia6850_device::read), FUNC(acia6850_device::write)); + map(0x00b0, 0x00b1).rw(m_acia_mkbd_cmi, FUNC(acia6850_device::read), FUNC(acia6850_device::write)); + map(0x4000, 0x47ff).ram(); + map(0xb000, 0xb400).rom(); + map(0xf000, 0xffff).rom(); +} + +void cmi_state::alphakeys_map(address_map &map) +{ + map.unmap_value_high(); + map(0x0000, 0x007f).ram(); + map(0x4000, 0x7fff).portr("ANK_OPTIONS"); + map(0x8000, 0xbfff).rw(m_ank_pia, FUNC(pia6821_device::read), FUNC(pia6821_device::write)); + map(0xc000, 0xc3ff).rom().mirror(0x3c00); +} + +void cmi_state::midicpu_map(address_map &map) +{ + map(0x000000, 0x003fff).rom(); + map(0x040000, 0x05ffff).rw(this, FUNC(cmi_state::midi_dma_r), FUNC(cmi_state::midi_dma_w)); // AM_RANGE(0x060000, 0x06001f) TIMERS // AM_RANGE(0x060050, 0x06005f) ACIA // AM_RANGE(0x060070, 0x06007f) SMPTE - AM_RANGE(0x080000, 0x083fff) AM_RAM -ADDRESS_MAP_END - -ADDRESS_MAP_START(cmi_state::cmi07cpu_map) - AM_RANGE(0x0000, 0x3fff) AM_NOP // TODO - AM_RANGE(0x4000, 0x4fff) AM_NOP // TODO - AM_RANGE(0x8000, 0x8fff) AM_DEVREADWRITE("cmi07_ptm", ptm6840_device, read, write) - AM_RANGE(0xc000, 0xffff) AM_RAM AM_SHARE("cmi07_ram") -ADDRESS_MAP_END + map(0x080000, 0x083fff).ram(); +} + +void cmi_state::cmi07cpu_map(address_map &map) +{ + map(0x0000, 0x3fff).noprw(); // TODO + map(0x4000, 0x4fff).noprw(); // TODO + map(0x8000, 0x8fff).rw(m_cmi07_ptm, FUNC(ptm6840_device::read), FUNC(ptm6840_device::write)); + map(0xc000, 0xffff).ram().share("cmi07_ram"); +} /* Input ports */ static INPUT_PORTS_START( cmi2x ) |