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/micro3d.cpp | |
parent | f155992daab88ad024cec995428a67108218b51d (diff) |
Address maps macros removal, pass 1 [O. Galibert]
Diffstat (limited to 'src/mame/drivers/micro3d.cpp')
-rw-r--r-- | src/mame/drivers/micro3d.cpp | 124 |
1 files changed, 65 insertions, 59 deletions
diff --git a/src/mame/drivers/micro3d.cpp b/src/mame/drivers/micro3d.cpp index 84f3353c286..c76c1e6dd89 100644 --- a/src/mame/drivers/micro3d.cpp +++ b/src/mame/drivers/micro3d.cpp @@ -204,22 +204,23 @@ INPUT_PORTS_END * *************************************/ -ADDRESS_MAP_START(micro3d_state::hostmem) - AM_RANGE(0x000000, 0x143fff) AM_ROM - AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram") - AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_SHARE("shared_ram") - AM_RANGE(0x900000, 0x900001) AM_WRITE(host_drmath_int_w) - AM_RANGE(0x920000, 0x920001) AM_READ_PORT("INPUTS_C_D") - AM_RANGE(0x940000, 0x940001) AM_READ_PORT("INPUTS_A_B") - AM_RANGE(0x960000, 0x960001) AM_WRITE(micro3d_reset_w) - AM_RANGE(0x980000, 0x980001) AM_DEVREADWRITE8("adc", adc0844_device, read, write, 0x00ff) - AM_RANGE(0x9a0000, 0x9a0007) AM_DEVREADWRITE("vgb", tms34010_device, host_r, host_w) - AM_RANGE(0x9c0000, 0x9c0001) AM_NOP /* Lamps */ - AM_RANGE(0x9e0000, 0x9e002f) AM_DEVREADWRITE8("mfp", mc68901_device, read, write, 0xff00) - AM_RANGE(0xa00000, 0xa0003f) AM_DEVREADWRITE8("duart", mc68681_device, read, write, 0xff00) - AM_RANGE(0xa20000, 0xa20001) AM_READ(micro3d_encoder_h_r) - AM_RANGE(0xa40002, 0xa40003) AM_READ(micro3d_encoder_l_r) -ADDRESS_MAP_END +void micro3d_state::hostmem(address_map &map) +{ + map(0x000000, 0x143fff).rom(); + map(0x200000, 0x20ffff).ram().share("nvram"); + map(0x800000, 0x83ffff).ram().share("shared_ram"); + map(0x900000, 0x900001).w(this, FUNC(micro3d_state::host_drmath_int_w)); + map(0x920000, 0x920001).portr("INPUTS_C_D"); + map(0x940000, 0x940001).portr("INPUTS_A_B"); + map(0x960000, 0x960001).w(this, FUNC(micro3d_state::micro3d_reset_w)); + map(0x980001, 0x980001).rw("adc", FUNC(adc0844_device::read), FUNC(adc0844_device::write)); + map(0x9a0000, 0x9a0007).rw(m_vgb, FUNC(tms34010_device::host_r), FUNC(tms34010_device::host_w)); + map(0x9c0000, 0x9c0001).noprw(); /* Lamps */ + map(0x9e0000, 0x9e002f).rw("mfp", FUNC(mc68901_device::read), FUNC(mc68901_device::write)).umask16(0xff00); + map(0xa00000, 0xa0003f).rw(m_duart, FUNC(mc68681_device::read), FUNC(mc68681_device::write)).umask16(0xff00); + map(0xa20000, 0xa20001).r(this, FUNC(micro3d_state::micro3d_encoder_h_r)); + map(0xa40002, 0xa40003).r(this, FUNC(micro3d_state::micro3d_encoder_l_r)); +} /************************************* @@ -228,20 +229,21 @@ ADDRESS_MAP_END * *************************************/ -ADDRESS_MAP_START(micro3d_state::vgbmem) - AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_SHARE("sprite_vram") - AM_RANGE(0x00800000, 0x00bfffff) AM_RAM - AM_RANGE(0x00c00000, 0x00c0000f) AM_READ_PORT("VGB_SW") - AM_RANGE(0x00e00000, 0x00e0000f) AM_WRITE(micro3d_xfer3dk_w) - AM_RANGE(0x02000000, 0x0200ffff) AM_RAM_DEVWRITE("palette", palette_device, write16) AM_SHARE("palette") // clut - AM_RANGE(0x02600000, 0x0260000f) AM_WRITE(micro3d_creg_w) - AM_RANGE(0x02c00000, 0x02c0003f) AM_READ8(vgb_uart_r, 0x00ff) - AM_RANGE(0x02e00000, 0x02e0003f) AM_WRITE8(vgb_uart_w, 0x00ff) - AM_RANGE(0x03800000, 0x03dfffff) AM_ROM AM_REGION("tms_gfx", 0) - AM_RANGE(0x03e00000, 0x03ffffff) AM_ROM AM_REGION("tms34010", 0) - AM_RANGE(0xc0000000, 0xc00001ff) AM_DEVREADWRITE("vgb", tms34010_device, io_register_r, io_register_w) - AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("tms34010", 0) -ADDRESS_MAP_END +void micro3d_state::vgbmem(address_map &map) +{ + map(0x00000000, 0x007fffff).ram().share("sprite_vram"); + map(0x00800000, 0x00bfffff).ram(); + map(0x00c00000, 0x00c0000f).portr("VGB_SW"); + map(0x00e00000, 0x00e0000f).w(this, FUNC(micro3d_state::micro3d_xfer3dk_w)); + map(0x02000000, 0x0200ffff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette"); // clut + map(0x02600000, 0x0260000f).w(this, FUNC(micro3d_state::micro3d_creg_w)); + map(0x02c00000, 0x02c0003f).r(this, FUNC(micro3d_state::vgb_uart_r)).umask16(0x00ff); + map(0x02e00000, 0x02e0003f).w(this, FUNC(micro3d_state::vgb_uart_w)).umask16(0x00ff); + map(0x03800000, 0x03dfffff).rom().region("tms_gfx", 0); + map(0x03e00000, 0x03ffffff).rom().region("tms34010", 0); + map(0xc0000000, 0xc00001ff).rw(m_vgb, FUNC(tms34010_device::io_register_r), FUNC(tms34010_device::io_register_w)); + map(0xffe00000, 0xffffffff).rom().region("tms34010", 0); +} /************************************* @@ -250,24 +252,26 @@ ADDRESS_MAP_END * *************************************/ -ADDRESS_MAP_START(micro3d_state::drmath_prg) - AM_RANGE(0x00000000, 0x000fffff) AM_ROM -ADDRESS_MAP_END - -ADDRESS_MAP_START(micro3d_state::drmath_data) - AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("drmath", 0) - AM_RANGE(0x00800000, 0x0083ffff) AM_READWRITE(micro3d_shared_r, micro3d_shared_w) - AM_RANGE(0x00400000, 0x004fffff) AM_RAM - AM_RANGE(0x00500000, 0x005fffff) AM_RAM - AM_RANGE(0x00a00000, 0x00a00003) AM_WRITE(drmath_int_w) - AM_RANGE(0x01000000, 0x01000003) AM_WRITE(micro3d_mac1_w) - AM_RANGE(0x01000004, 0x01000007) AM_READWRITE(micro3d_mac2_r, micro3d_mac2_w) - AM_RANGE(0x01200000, 0x01203fff) AM_RAM AM_SHARE("mac_sram") - AM_RANGE(0x01400000, 0x01400003) AM_READWRITE(micro3d_pipe_r, micro3d_fifo_w) - AM_RANGE(0x01600000, 0x01600003) AM_WRITE(drmath_intr2_ack) - AM_RANGE(0x01800000, 0x01800003) AM_WRITE(micro3d_alt_fifo_w) - AM_RANGE(0x03fffff0, 0x03fffff7) AM_DEVREADWRITE8("scc", z80scc_device, ba_cd_inv_r, ba_cd_inv_w, 0x000000ff) -ADDRESS_MAP_END +void micro3d_state::drmath_prg(address_map &map) +{ + map(0x00000000, 0x000fffff).rom(); +} + +void micro3d_state::drmath_data(address_map &map) +{ + map(0x00000000, 0x000fffff).rom().region("drmath", 0); + map(0x00800000, 0x0083ffff).rw(this, FUNC(micro3d_state::micro3d_shared_r), FUNC(micro3d_state::micro3d_shared_w)); + map(0x00400000, 0x004fffff).ram(); + map(0x00500000, 0x005fffff).ram(); + map(0x00a00000, 0x00a00003).w(this, FUNC(micro3d_state::drmath_int_w)); + map(0x01000000, 0x01000003).w(this, FUNC(micro3d_state::micro3d_mac1_w)); + map(0x01000004, 0x01000007).rw(this, FUNC(micro3d_state::micro3d_mac2_r), FUNC(micro3d_state::micro3d_mac2_w)); + map(0x01200000, 0x01203fff).ram().share("mac_sram"); + map(0x01400000, 0x01400003).rw(this, FUNC(micro3d_state::micro3d_pipe_r), FUNC(micro3d_state::micro3d_fifo_w)); + map(0x01600000, 0x01600003).w(this, FUNC(micro3d_state::drmath_intr2_ack)); + map(0x01800000, 0x01800003).w(this, FUNC(micro3d_state::micro3d_alt_fifo_w)); + map(0x03fffff0, 0x03fffff7).rw("scc", FUNC(z80scc_device::ba_cd_inv_r), FUNC(z80scc_device::ba_cd_inv_w)).umask32(0x000000ff); +} /************************************* * @@ -275,17 +279,19 @@ ADDRESS_MAP_END * *************************************/ -ADDRESS_MAP_START(micro3d_state::soundmem_prg) - AM_RANGE(0x0000, 0x7fff) AM_ROM -ADDRESS_MAP_END - -ADDRESS_MAP_START(micro3d_state::soundmem_io) - AM_RANGE(0x0000, 0x07ff) AM_RAM - AM_RANGE(0xfd00, 0xfd01) AM_DEVREADWRITE("ym2151", ym2151_device, read, write) - AM_RANGE(0xfe00, 0xfe00) AM_WRITE(micro3d_upd7759_w) - AM_RANGE(0xff00, 0xff00) AM_WRITE(micro3d_snd_dac_a) - AM_RANGE(0xff01, 0xff01) AM_WRITE(micro3d_snd_dac_b) -ADDRESS_MAP_END +void micro3d_state::soundmem_prg(address_map &map) +{ + map(0x0000, 0x7fff).rom(); +} + +void micro3d_state::soundmem_io(address_map &map) +{ + map(0x0000, 0x07ff).ram(); + map(0xfd00, 0xfd01).rw("ym2151", FUNC(ym2151_device::read), FUNC(ym2151_device::write)); + map(0xfe00, 0xfe00).w(this, FUNC(micro3d_state::micro3d_upd7759_w)); + map(0xff00, 0xff00).w(this, FUNC(micro3d_state::micro3d_snd_dac_a)); + map(0xff01, 0xff01).w(this, FUNC(micro3d_state::micro3d_snd_dac_b)); +} /************************************* |