diff options
Diffstat (limited to 'src/mame/drivers/xtom3d.cpp')
-rw-r--r-- | src/mame/drivers/xtom3d.cpp | 52 |
1 files changed, 27 insertions, 25 deletions
diff --git a/src/mame/drivers/xtom3d.cpp b/src/mame/drivers/xtom3d.cpp index 9599c7dfe88..8ec5817ac35 100644 --- a/src/mame/drivers/xtom3d.cpp +++ b/src/mame/drivers/xtom3d.cpp @@ -351,31 +351,33 @@ WRITE32_MEMBER(xtom3d_state::bios_ram_w) } } -ADDRESS_MAP_START(xtom3d_state::xtom3d_map) - AM_RANGE(0x00000000, 0x0009ffff) AM_RAM - AM_RANGE(0x000a0000, 0x000bffff) AM_DEVREADWRITE8("vga", vga_device, mem_r, mem_w, 0xffffffff) - AM_RANGE(0x000c0000, 0x000c3fff) AM_ROMBANK("video_bank1") AM_WRITE(isa_ram1_w) - AM_RANGE(0x000c4000, 0x000c7fff) AM_ROMBANK("video_bank2") AM_WRITE(isa_ram2_w) - AM_RANGE(0x000e0000, 0x000e3fff) AM_ROMBANK("bios_ext1") AM_WRITE(bios_ext1_ram_w) - AM_RANGE(0x000e4000, 0x000e7fff) AM_ROMBANK("bios_ext2") AM_WRITE(bios_ext2_ram_w) - AM_RANGE(0x000e8000, 0x000ebfff) AM_ROMBANK("bios_ext3") AM_WRITE(bios_ext3_ram_w) - AM_RANGE(0x000ec000, 0x000effff) AM_ROMBANK("bios_ext4") AM_WRITE(bios_ext4_ram_w) - AM_RANGE(0x000f0000, 0x000fffff) AM_ROMBANK("bios_bank") AM_WRITE(bios_ram_w) - AM_RANGE(0x00100000, 0x01ffffff) AM_RAM - AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */ -ADDRESS_MAP_END - -ADDRESS_MAP_START(xtom3d_state::xtom3d_io) - AM_IMPORT_FROM(pcat32_io_common) - - AM_RANGE(0x00e8, 0x00ef) AM_NOP - - AM_RANGE(0x03b0, 0x03bf) AM_DEVREADWRITE8("vga", vga_device, port_03b0_r, port_03b0_w, 0xffffffff) - AM_RANGE(0x03c0, 0x03cf) AM_DEVREADWRITE8("vga", vga_device, port_03c0_r, port_03c0_w, 0xffffffff) - AM_RANGE(0x03d0, 0x03df) AM_DEVREADWRITE8("vga", vga_device, port_03d0_r, port_03d0_w, 0xffffffff) - - AM_RANGE(0x0cf8, 0x0cff) AM_DEVREADWRITE("pcibus", pci_bus_legacy_device, read, write) -ADDRESS_MAP_END +void xtom3d_state::xtom3d_map(address_map &map) +{ + map(0x00000000, 0x0009ffff).ram(); + map(0x000a0000, 0x000bffff).rw("vga", FUNC(vga_device::mem_r), FUNC(vga_device::mem_w)); + map(0x000c0000, 0x000c3fff).bankr("video_bank1").w(this, FUNC(xtom3d_state::isa_ram1_w)); + map(0x000c4000, 0x000c7fff).bankr("video_bank2").w(this, FUNC(xtom3d_state::isa_ram2_w)); + map(0x000e0000, 0x000e3fff).bankr("bios_ext1").w(this, FUNC(xtom3d_state::bios_ext1_ram_w)); + map(0x000e4000, 0x000e7fff).bankr("bios_ext2").w(this, FUNC(xtom3d_state::bios_ext2_ram_w)); + map(0x000e8000, 0x000ebfff).bankr("bios_ext3").w(this, FUNC(xtom3d_state::bios_ext3_ram_w)); + map(0x000ec000, 0x000effff).bankr("bios_ext4").w(this, FUNC(xtom3d_state::bios_ext4_ram_w)); + map(0x000f0000, 0x000fffff).bankr("bios_bank").w(this, FUNC(xtom3d_state::bios_ram_w)); + map(0x00100000, 0x01ffffff).ram(); + map(0xfffe0000, 0xffffffff).rom().region("bios", 0); /* System BIOS */ +} + +void xtom3d_state::xtom3d_io(address_map &map) +{ + pcat32_io_common(map); + + map(0x00e8, 0x00ef).noprw(); + + map(0x03b0, 0x03bf).rw("vga", FUNC(vga_device::port_03b0_r), FUNC(vga_device::port_03b0_w)); + map(0x03c0, 0x03cf).rw("vga", FUNC(vga_device::port_03c0_r), FUNC(vga_device::port_03c0_w)); + map(0x03d0, 0x03df).rw("vga", FUNC(vga_device::port_03d0_r), FUNC(vga_device::port_03d0_w)); + + map(0x0cf8, 0x0cff).rw("pcibus", FUNC(pci_bus_legacy_device::read), FUNC(pci_bus_legacy_device::write)); +} void xtom3d_state::machine_start() |