summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/mediagx.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/mediagx.cpp')
-rw-r--r--src/mame/drivers/mediagx.cpp55
1 files changed, 29 insertions, 26 deletions
diff --git a/src/mame/drivers/mediagx.cpp b/src/mame/drivers/mediagx.cpp
index b37e1a26068..b0201255005 100644
--- a/src/mame/drivers/mediagx.cpp
+++ b/src/mame/drivers/mediagx.cpp
@@ -749,29 +749,31 @@ WRITE32_MEMBER(mediagx_state::ad1847_w)
/*****************************************************************************/
-ADDRESS_MAP_START(mediagx_state::mediagx_map)
- AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_SHARE("main_ram")
- AM_RANGE(0x000a0000, 0x000affff) AM_RAM
- AM_RANGE(0x000b0000, 0x000b7fff) AM_RAM AM_SHARE("cga_ram")
- AM_RANGE(0x000c0000, 0x000fffff) AM_RAM AM_SHARE("bios_ram")
- AM_RANGE(0x00100000, 0x00ffffff) AM_RAM
- AM_RANGE(0x40008000, 0x400080ff) AM_READWRITE(biu_ctrl_r, biu_ctrl_w)
- AM_RANGE(0x40008300, 0x400083ff) AM_READWRITE(disp_ctrl_r, disp_ctrl_w)
- AM_RANGE(0x40008400, 0x400084ff) AM_READWRITE(memory_ctrl_r, memory_ctrl_w)
- AM_RANGE(0x40800000, 0x40bfffff) AM_RAM AM_SHARE("vram")
- AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(mediagx_state::mediagx_io)
- AM_IMPORT_FROM(pcat32_io_common)
- AM_RANGE(0x0020, 0x0023) AM_READWRITE8(io20_r, io20_w, 0xffff0000)
- AM_RANGE(0x00e8, 0x00eb) AM_NOP // I/O delay port
- AM_RANGE(0x01f0, 0x01f7) AM_DEVREADWRITE("ide", ide_controller_32_device, read_cs0, write_cs0)
- AM_RANGE(0x0378, 0x037b) AM_READWRITE(parallel_port_r, parallel_port_w)
- AM_RANGE(0x03f0, 0x03f7) AM_DEVREADWRITE("ide", ide_controller_32_device, read_cs1, write_cs1)
- AM_RANGE(0x0400, 0x04ff) AM_READWRITE(ad1847_r, ad1847_w)
- AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write)
-ADDRESS_MAP_END
+void mediagx_state::mediagx_map(address_map &map)
+{
+ map(0x00000000, 0x0009ffff).ram().share("main_ram");
+ map(0x000a0000, 0x000affff).ram();
+ map(0x000b0000, 0x000b7fff).ram().share("cga_ram");
+ map(0x000c0000, 0x000fffff).ram().share("bios_ram");
+ map(0x00100000, 0x00ffffff).ram();
+ map(0x40008000, 0x400080ff).rw(this, FUNC(mediagx_state::biu_ctrl_r), FUNC(mediagx_state::biu_ctrl_w));
+ map(0x40008300, 0x400083ff).rw(this, FUNC(mediagx_state::disp_ctrl_r), FUNC(mediagx_state::disp_ctrl_w));
+ map(0x40008400, 0x400084ff).rw(this, FUNC(mediagx_state::memory_ctrl_r), FUNC(mediagx_state::memory_ctrl_w));
+ map(0x40800000, 0x40bfffff).ram().share("vram");
+ map(0xfffc0000, 0xffffffff).rom().region("bios", 0); /* System BIOS */
+}
+
+void mediagx_state::mediagx_io(address_map &map)
+{
+ pcat32_io_common(map);
+ map(0x0022, 0x0023).rw(this, FUNC(mediagx_state::io20_r), FUNC(mediagx_state::io20_w));
+ map(0x00e8, 0x00eb).noprw(); // I/O delay port
+ map(0x01f0, 0x01f7).rw(m_ide, FUNC(ide_controller_32_device::read_cs0), FUNC(ide_controller_32_device::write_cs0));
+ map(0x0378, 0x037b).rw(this, FUNC(mediagx_state::parallel_port_r), FUNC(mediagx_state::parallel_port_w));
+ map(0x03f0, 0x03f7).rw(m_ide, FUNC(ide_controller_32_device::read_cs1), FUNC(ide_controller_32_device::write_cs1));
+ map(0x0400, 0x04ff).rw(this, FUNC(mediagx_state::ad1847_r), FUNC(mediagx_state::ad1847_w));
+ map(0x0cf8, 0x0cff).rw("pcibus", FUNC(pci_bus_legacy_device::read), FUNC(pci_bus_legacy_device::write));
+}
/*****************************************************************************/
@@ -873,9 +875,10 @@ void mediagx_state::machine_reset()
dmadac_enable(&m_dmadac[0], 2, 1);
}
-ADDRESS_MAP_START(mediagx_state::ramdac_map)
- AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w)
-ADDRESS_MAP_END
+void mediagx_state::ramdac_map(address_map &map)
+{
+ map(0x000, 0x3ff).rw("ramdac", FUNC(ramdac_device::ramdac_pal_r), FUNC(ramdac_device::ramdac_rgb666_w));
+}
MACHINE_CONFIG_START(mediagx_state::mediagx)