summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2018-04-20 18:05:46 +0200
committer Olivier Galibert <galibert@pobox.com>2018-04-20 18:06:10 +0200
commitbba85599d922c4cf0129e0836af5f8048494fe06 (patch)
treea09868aafb5b978b1c12f77fdf67f102a46607d5
parent536ae10aff062153a49cab48e1701002de06eb8e (diff)
maps: Finish devices/machine (nw)
-rw-r--r--src/devices/machine/68307.cpp7
-rw-r--r--src/devices/machine/68340.cpp7
-rw-r--r--src/devices/machine/at28c16.cpp7
-rw-r--r--src/devices/machine/bankdev.cpp28
-rw-r--r--src/devices/machine/er2055.cpp7
-rw-r--r--src/devices/machine/gt64xxx.cpp14
-rw-r--r--src/devices/machine/i6300esb.cpp110
-rw-r--r--src/devices/machine/i8155.cpp7
-rw-r--r--src/devices/machine/i82371sb.cpp70
-rw-r--r--src/devices/machine/i82439hx.cpp33
-rw-r--r--src/devices/machine/i82439tx.cpp33
-rw-r--r--src/devices/machine/i82541.cpp15
-rw-r--r--src/devices/machine/i82875p.cpp81
-rw-r--r--src/devices/machine/linflash.cpp133
-rw-r--r--src/devices/machine/lpc-acpi.cpp63
-rw-r--r--src/devices/machine/lpc-pit.cpp13
-rw-r--r--src/devices/machine/lpc-rtc.cpp20
-rw-r--r--src/devices/machine/mcf5206e.cpp95
-rw-r--r--src/devices/machine/ncr5380n.cpp21
-rw-r--r--src/devices/machine/ncr5390.cpp20
-rw-r--r--src/devices/machine/pc_fdc.cpp16
-rw-r--r--src/devices/machine/pci-ide.cpp66
-rw-r--r--src/devices/machine/pci-sata.cpp30
-rw-r--r--src/devices/machine/pci-smbus.cpp43
-rw-r--r--src/devices/machine/pci-usb.cpp15
-rw-r--r--src/devices/machine/pci.cpp117
-rw-r--r--src/devices/machine/pci9050.cpp23
-rw-r--r--src/devices/machine/sis85c496.cpp48
-rw-r--r--src/devices/machine/smpc.cpp27
-rw-r--r--src/devices/machine/tc009xlvc.cpp21
-rw-r--r--src/devices/machine/tmp68301.cpp17
-rw-r--r--src/devices/machine/upd765.cpp59
-rw-r--r--src/devices/machine/vrc4373.cpp30
-rw-r--r--src/devices/machine/vrc5074.cpp30
-rw-r--r--src/devices/machine/x2212.cpp14
35 files changed, 708 insertions, 632 deletions
diff --git a/src/devices/machine/68307.cpp b/src/devices/machine/68307.cpp
index 80466834e4e..b173fe4e232 100644
--- a/src/devices/machine/68307.cpp
+++ b/src/devices/machine/68307.cpp
@@ -34,9 +34,10 @@ WRITE8_MEMBER(m68307_cpu_device::m68307_internal_serial_w)
-ADDRESS_MAP_START(m68307_cpu_device::m68307_internal_map)
- AM_RANGE(0x000000f0, 0x000000ff) AM_READWRITE(m68307_internal_base_r, m68307_internal_base_w)
-ADDRESS_MAP_END
+void m68307_cpu_device::m68307_internal_map(address_map &map)
+{
+ map(0x000000f0, 0x000000ff).rw(this, FUNC(m68307_cpu_device::m68307_internal_base_r), FUNC(m68307_cpu_device::m68307_internal_base_w));
+}
MACHINE_CONFIG_START(m68307_cpu_device::device_add_mconfig)
diff --git a/src/devices/machine/68340.cpp b/src/devices/machine/68340.cpp
index 6aaa8c92fa3..0dba3c2f714 100644
--- a/src/devices/machine/68340.cpp
+++ b/src/devices/machine/68340.cpp
@@ -110,9 +110,10 @@ WRITE32_MEMBER( m68340_cpu_device::m68340_internal_base_w )
}
-ADDRESS_MAP_START(m68340_cpu_device::m68340_internal_map)
- AM_RANGE(0x0003ff00, 0x0003ff03) AM_READWRITE( m68340_internal_base_r, m68340_internal_base_w)
-ADDRESS_MAP_END
+void m68340_cpu_device::m68340_internal_map(address_map &map)
+{
+ map(0x0003ff00, 0x0003ff03).rw(this, FUNC(m68340_cpu_device::m68340_internal_base_r), FUNC(m68340_cpu_device::m68340_internal_base_w));
+}
//-------------------------------------------------
diff --git a/src/devices/machine/at28c16.cpp b/src/devices/machine/at28c16.cpp
index 7b4ef71e52d..809f8df5256 100644
--- a/src/devices/machine/at28c16.cpp
+++ b/src/devices/machine/at28c16.cpp
@@ -22,9 +22,10 @@
// GLOBAL VARIABLES
//**************************************************************************
-ADDRESS_MAP_START(at28c16_device::at28c16_map8)
- AM_RANGE(0x0000, 0x081f) AM_RAM
-ADDRESS_MAP_END
+void at28c16_device::at28c16_map8(address_map &map)
+{
+ map(0x0000, 0x081f).ram();
+}
diff --git a/src/devices/machine/bankdev.cpp b/src/devices/machine/bankdev.cpp
index a55e305ae7a..b6872a7a2c6 100644
--- a/src/devices/machine/bankdev.cpp
+++ b/src/devices/machine/bankdev.cpp
@@ -26,21 +26,25 @@ device_memory_interface::space_config_vector address_map_bank_device::memory_spa
};
}
-ADDRESS_MAP_START(address_map_bank_device::amap8)
- AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read8, write8)
-ADDRESS_MAP_END
+void address_map_bank_device::amap8(address_map &map)
+{
+ map(0x00000000, 0xffffffff).rw(this, FUNC(address_map_bank_device::read8), FUNC(address_map_bank_device::write8));
+}
-ADDRESS_MAP_START(address_map_bank_device::amap16)
- AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read16, write16)
-ADDRESS_MAP_END
+void address_map_bank_device::amap16(address_map &map)
+{
+ map(0x00000000, 0xffffffff).rw(this, FUNC(address_map_bank_device::read16), FUNC(address_map_bank_device::write16));
+}
-ADDRESS_MAP_START(address_map_bank_device::amap32)
- AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read32, write32)
-ADDRESS_MAP_END
+void address_map_bank_device::amap32(address_map &map)
+{
+ map(0x00000000, 0xffffffff).rw(this, FUNC(address_map_bank_device::read32), FUNC(address_map_bank_device::write32));
+}
-ADDRESS_MAP_START(address_map_bank_device::amap64)
- AM_RANGE(0x00000000, 0xffffffff) AM_READWRITE(read64, write64)
-ADDRESS_MAP_END
+void address_map_bank_device::amap64(address_map &map)
+{
+ map(0x00000000, 0xffffffff).rw(this, FUNC(address_map_bank_device::read64), FUNC(address_map_bank_device::write64));
+}
WRITE8_MEMBER(address_map_bank_device::write8)
{
diff --git a/src/devices/machine/er2055.cpp b/src/devices/machine/er2055.cpp
index c25fbb498fc..0d8ec833de8 100644
--- a/src/devices/machine/er2055.cpp
+++ b/src/devices/machine/er2055.cpp
@@ -21,9 +21,10 @@
// device type definition
DEFINE_DEVICE_TYPE(ER2055, er2055_device, "er2055", "ER2055 EAROM")
-ADDRESS_MAP_START(er2055_device::er2055_map)
- AM_RANGE(0x0000, 0x003f) AM_RAM
-ADDRESS_MAP_END
+void er2055_device::er2055_map(address_map &map)
+{
+ map(0x0000, 0x003f).ram();
+}
diff --git a/src/devices/machine/gt64xxx.cpp b/src/devices/machine/gt64xxx.cpp
index c14961a3d88..fedd1127f81 100644
--- a/src/devices/machine/gt64xxx.cpp
+++ b/src/devices/machine/gt64xxx.cpp
@@ -149,14 +149,16 @@
DEFINE_DEVICE_TYPE(GT64XXX, gt64xxx_device, "gt64xxx", "Galileo GT-64XXX System Controller")
-ADDRESS_MAP_START(gt64xxx_device::config_map)
- AM_IMPORT_FROM(pci_device::config_map)
-ADDRESS_MAP_END
+void gt64xxx_device::config_map(address_map &map)
+{
+ pci_device::config_map(map);
+}
// cpu i/f map
-ADDRESS_MAP_START(gt64xxx_device::cpu_map)
- AM_RANGE(0x00000000, 0x00000cff) AM_READWRITE( cpu_if_r, cpu_if_w)
-ADDRESS_MAP_END
+void gt64xxx_device::cpu_map(address_map &map)
+{
+ map(0x00000000, 0x00000cff).rw(this, FUNC(gt64xxx_device::cpu_if_r), FUNC(gt64xxx_device::cpu_if_w));
+}
gt64xxx_device::gt64xxx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_host_device(mconfig, GT64XXX, tag, owner, clock),
diff --git a/src/devices/machine/i6300esb.cpp b/src/devices/machine/i6300esb.cpp
index 6c94e7c4f2a..e038df1c7a5 100644
--- a/src/devices/machine/i6300esb.cpp
+++ b/src/devices/machine/i6300esb.cpp
@@ -6,8 +6,9 @@
DEFINE_DEVICE_TYPE(I6300ESB_WATCHDOG, i6300esb_watchdog_device, "i6300esb_watchdog", "i6300ESB southbridge watchdog")
DEFINE_DEVICE_TYPE(I6300ESB_LPC, i6300esb_lpc_device, "i6300esb_lpc", "i6300ESB southbridge ISA/LPC bridge")
-ADDRESS_MAP_START(i6300esb_watchdog_device::map)
-ADDRESS_MAP_END
+void i6300esb_watchdog_device::map(address_map &map)
+{
+}
i6300esb_watchdog_device::i6300esb_watchdog_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, I6300ESB_WATCHDOG, tag, owner, clock)
@@ -29,63 +30,64 @@ void i6300esb_watchdog_device::device_reset()
}
-ADDRESS_MAP_START(i6300esb_lpc_device::config_map)
- AM_IMPORT_FROM(pci_device::config_map)
- AM_RANGE(0x40, 0x43) AM_READWRITE (pmbase_r, pmbase_w)
- AM_RANGE(0x44, 0x47) AM_READWRITE8 (acpi_cntl_r, acpi_cntl_w, 0x000000ff)
- AM_RANGE(0x4c, 0x4f) AM_READWRITE16(bios_cntl_r, bios_cntl_w, 0xffff0000)
- AM_RANGE(0x54, 0x57) AM_READWRITE8 (tco_cntl_r, tco_cntl_w, 0x000000ff)
- AM_RANGE(0x58, 0x5b) AM_READWRITE (gpio_base_r, gpio_base_w)
- AM_RANGE(0x5c, 0x5f) AM_READWRITE8 (gpio_cntl_r, gpio_cntl_w, 0x000000ff)
- AM_RANGE(0x60, 0x63) AM_READWRITE8 (pirq_rout_r, pirq_rout_w, 0xffffffff)
- AM_RANGE(0x64, 0x67) AM_READWRITE8 (serirq_cntl_r, serirq_cntl_w, 0x000000ff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE8 (pirq2_rout_r, pirq2_rout_w, 0xffffffff)
- AM_RANGE(0x88, 0x8b) AM_READWRITE8 (d31_err_cfg_r, d31_err_cfg_w, 0x000000ff)
- AM_RANGE(0x88, 0x8b) AM_READWRITE8 (d31_err_sts_r, d31_err_sts_w, 0x00ff0000)
- AM_RANGE(0x90, 0x93) AM_READWRITE16(pci_dma_cfg_r, pci_dma_cfg_w, 0x0000ffff)
- AM_RANGE(0xa0, 0xa3) AM_READWRITE16(gen_pmcon_1_r, gen_pmcon_1_w, 0x0000ffff)
- AM_RANGE(0xa0, 0xa3) AM_READWRITE8 (gen_pmcon_2_r, gen_pmcon_2_w, 0x00ff0000)
- AM_RANGE(0xa4, 0xa7) AM_READWRITE8 (gen_pmcon_3_r, gen_pmcon_3_w, 0x000000ff)
- AM_RANGE(0xac, 0xaf) AM_READWRITE (rst_cnt2_r, rst_cnt2_w)
- AM_RANGE(0xb0, 0xb3) AM_READWRITE8 (apm_cnt_r, apm_cnt_w, 0x00ff0000)
- AM_RANGE(0xb0, 0xb3) AM_READWRITE8 (apm_sts_r, apm_sts_w, 0xff000000)
- AM_RANGE(0xb8, 0xbb) AM_READWRITE (gpi_rout_r, gpi_rout_w)
- AM_RANGE(0xc0, 0xc3) AM_READWRITE8 (mon_fwd_en_r, mon_fwd_en_w, 0x000000ff)
- AM_RANGE(0xc4, 0xcb) AM_READWRITE16(mon_trp_rng_r, mon_trp_rng_w, 0xffffffff)
- AM_RANGE(0xcc, 0xcf) AM_READWRITE16(mon_trp_msk_r, mon_trp_msk_w, 0x0000ffff)
- AM_RANGE(0xd0, 0xd3) AM_READWRITE (gen_cntl_r, gen_cntl_w)
- AM_RANGE(0xd4, 0xd7) AM_READWRITE8 (gen_sta_r, gen_sta_w, 0x000000ff)
- AM_RANGE(0xd4, 0xd7) AM_READWRITE8 (back_cntl_r, back_cntl_w, 0x0000ff00)
- AM_RANGE(0xd8, 0xdb) AM_READWRITE8 (rtc_conf_r, rtc_conf_w, 0x000000ff)
- AM_RANGE(0xe0, 0xe3) AM_READWRITE8 (lpc_if_com_range_r, lpc_if_com_range_w, 0x000000ff)
- AM_RANGE(0xe0, 0xe3) AM_READWRITE8 (lpc_if_fdd_lpt_range_r, lpc_if_fdd_lpt_range_w, 0x0000ff00)
- AM_RANGE(0xe0, 0xe3) AM_READWRITE8 (lpc_if_sound_range_r, lpc_if_sound_range_w, 0x00ff0000)
- AM_RANGE(0xe0, 0xe3) AM_READWRITE8 (fwh_dec_en1_r, fwh_dec_en1_w, 0xff000000)
- AM_RANGE(0xe4, 0xe7) AM_READWRITE16(gen1_dec_r, gen1_dec_w, 0x0000ffff)
- AM_RANGE(0xe4, 0xe7) AM_READWRITE16(lpc_en_r, lpc_en_w, 0xffff0000)
- AM_RANGE(0xe8, 0xeb) AM_READWRITE (fwh_sel1_r, fwh_sel1_w)
- AM_RANGE(0xec, 0xef) AM_READWRITE16(gen2_dec_r, gen2_dec_w, 0x0000ffff)
- AM_RANGE(0xec, 0xef) AM_READWRITE16(fwh_sel2_r, fwh_sel2_w, 0xffff0000)
- AM_RANGE(0xf0, 0xf3) AM_READWRITE8 (fwh_dec_en2_r, fwh_dec_en2_w, 0x000000ff)
- AM_RANGE(0xf0, 0xf3) AM_READWRITE16(func_dis_r, func_dis_w, 0xffff0000)
- AM_RANGE(0xf4, 0xf7) AM_READWRITE (etr1_r, etr1_w)
- AM_RANGE(0xf8, 0xfb) AM_READ (mfid_r)
- AM_RANGE(0xfc, 0xff) AM_READWRITE (unk_fc_r, unk_fc_w)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(i6300esb_lpc_device::internal_io_map)
+void i6300esb_lpc_device::config_map(address_map &map)
+{
+ pci_device::config_map(map);
+ map(0x40, 0x43).rw(this, FUNC(i6300esb_lpc_device::pmbase_r), FUNC(i6300esb_lpc_device::pmbase_w));
+ map(0x44, 0x44).rw(this, FUNC(i6300esb_lpc_device::acpi_cntl_r), FUNC(i6300esb_lpc_device::acpi_cntl_w));
+ map(0x4e, 0x4f).rw(this, FUNC(i6300esb_lpc_device::bios_cntl_r), FUNC(i6300esb_lpc_device::bios_cntl_w));
+ map(0x54, 0x54).rw(this, FUNC(i6300esb_lpc_device::tco_cntl_r), FUNC(i6300esb_lpc_device::tco_cntl_w));
+ map(0x58, 0x5b).rw(this, FUNC(i6300esb_lpc_device::gpio_base_r), FUNC(i6300esb_lpc_device::gpio_base_w));
+ map(0x5c, 0x5c).rw(this, FUNC(i6300esb_lpc_device::gpio_cntl_r), FUNC(i6300esb_lpc_device::gpio_cntl_w));
+ map(0x60, 0x63).rw(this, FUNC(i6300esb_lpc_device::pirq_rout_r), FUNC(i6300esb_lpc_device::pirq_rout_w));
+ map(0x64, 0x64).rw(this, FUNC(i6300esb_lpc_device::serirq_cntl_r), FUNC(i6300esb_lpc_device::serirq_cntl_w));
+ map(0x68, 0x6b).rw(this, FUNC(i6300esb_lpc_device::pirq2_rout_r), FUNC(i6300esb_lpc_device::pirq2_rout_w));
+ map(0x88, 0x88).rw(this, FUNC(i6300esb_lpc_device::d31_err_cfg_r), FUNC(i6300esb_lpc_device::d31_err_cfg_w));
+ map(0x8a, 0x8a).rw(this, FUNC(i6300esb_lpc_device::d31_err_sts_r), FUNC(i6300esb_lpc_device::d31_err_sts_w));
+ map(0x90, 0x91).rw(this, FUNC(i6300esb_lpc_device::pci_dma_cfg_r), FUNC(i6300esb_lpc_device::pci_dma_cfg_w));
+ map(0xa0, 0xa1).rw(this, FUNC(i6300esb_lpc_device::gen_pmcon_1_r), FUNC(i6300esb_lpc_device::gen_pmcon_1_w));
+ map(0xa2, 0xa2).rw(this, FUNC(i6300esb_lpc_device::gen_pmcon_2_r), FUNC(i6300esb_lpc_device::gen_pmcon_2_w));
+ map(0xa4, 0xa4).rw(this, FUNC(i6300esb_lpc_device::gen_pmcon_3_r), FUNC(i6300esb_lpc_device::gen_pmcon_3_w));
+ map(0xac, 0xaf).rw(this, FUNC(i6300esb_lpc_device::rst_cnt2_r), FUNC(i6300esb_lpc_device::rst_cnt2_w));
+ map(0xb2, 0xb2).rw(this, FUNC(i6300esb_lpc_device::apm_cnt_r), FUNC(i6300esb_lpc_device::apm_cnt_w));
+ map(0xb3, 0xb3).rw(this, FUNC(i6300esb_lpc_device::apm_sts_r), FUNC(i6300esb_lpc_device::apm_sts_w));
+ map(0xb8, 0xbb).rw(this, FUNC(i6300esb_lpc_device::gpi_rout_r), FUNC(i6300esb_lpc_device::gpi_rout_w));
+ map(0xc0, 0xc0).rw(this, FUNC(i6300esb_lpc_device::mon_fwd_en_r), FUNC(i6300esb_lpc_device::mon_fwd_en_w));
+ map(0xc4, 0xcb).rw(this, FUNC(i6300esb_lpc_device::mon_trp_rng_r), FUNC(i6300esb_lpc_device::mon_trp_rng_w));
+ map(0xcc, 0xcd).rw(this, FUNC(i6300esb_lpc_device::mon_trp_msk_r), FUNC(i6300esb_lpc_device::mon_trp_msk_w));
+ map(0xd0, 0xd3).rw(this, FUNC(i6300esb_lpc_device::gen_cntl_r), FUNC(i6300esb_lpc_device::gen_cntl_w));
+ map(0xd4, 0xd4).rw(this, FUNC(i6300esb_lpc_device::gen_sta_r), FUNC(i6300esb_lpc_device::gen_sta_w));
+ map(0xd5, 0xd5).rw(this, FUNC(i6300esb_lpc_device::back_cntl_r), FUNC(i6300esb_lpc_device::back_cntl_w));
+ map(0xd8, 0xd8).rw(this, FUNC(i6300esb_lpc_device::rtc_conf_r), FUNC(i6300esb_lpc_device::rtc_conf_w));
+ map(0xe0, 0xe0).rw(this, FUNC(i6300esb_lpc_device::lpc_if_com_range_r), FUNC(i6300esb_lpc_device::lpc_if_com_range_w));
+ map(0xe1, 0xe1).rw(this, FUNC(i6300esb_lpc_device::lpc_if_fdd_lpt_range_r), FUNC(i6300esb_lpc_device::lpc_if_fdd_lpt_range_w));
+ map(0xe2, 0xe2).rw(this, FUNC(i6300esb_lpc_device::lpc_if_sound_range_r), FUNC(i6300esb_lpc_device::lpc_if_sound_range_w));
+ map(0xe3, 0xe3).rw(this, FUNC(i6300esb_lpc_device::fwh_dec_en1_r), FUNC(i6300esb_lpc_device::fwh_dec_en1_w));
+ map(0xe4, 0xe5).rw(this, FUNC(i6300esb_lpc_device::gen1_dec_r), FUNC(i6300esb_lpc_device::gen1_dec_w));
+ map(0xe6, 0xe7).rw(this, FUNC(i6300esb_lpc_device::lpc_en_r), FUNC(i6300esb_lpc_device::lpc_en_w));
+ map(0xe8, 0xeb).rw(this, FUNC(i6300esb_lpc_device::fwh_sel1_r), FUNC(i6300esb_lpc_device::fwh_sel1_w));
+ map(0xec, 0xed).rw(this, FUNC(i6300esb_lpc_device::gen2_dec_r), FUNC(i6300esb_lpc_device::gen2_dec_w));
+ map(0xee, 0xef).rw(this, FUNC(i6300esb_lpc_device::fwh_sel2_r), FUNC(i6300esb_lpc_device::fwh_sel2_w));
+ map(0xf0, 0xf0).rw(this, FUNC(i6300esb_lpc_device::fwh_dec_en2_r), FUNC(i6300esb_lpc_device::fwh_dec_en2_w));
+ map(0xf2, 0xf3).rw(this, FUNC(i6300esb_lpc_device::func_dis_r), FUNC(i6300esb_lpc_device::func_dis_w));
+ map(0xf4, 0xf7).rw(this, FUNC(i6300esb_lpc_device::etr1_r), FUNC(i6300esb_lpc_device::etr1_w));
+ map(0xf8, 0xfb).r(this, FUNC(i6300esb_lpc_device::mfid_r));
+ map(0xfc, 0xff).rw(this, FUNC(i6300esb_lpc_device::unk_fc_r), FUNC(i6300esb_lpc_device::unk_fc_w));
+}
+
+void i6300esb_lpc_device::internal_io_map(address_map &map)
+{
;
if(lpc_en & 0x2000) {
- AM_RANGE(0x004c, 0x004f) AM_READWRITE8(siu_config_port_r, siu_config_port_w, 0x00ff0000)
- AM_RANGE(0x004c, 0x004f) AM_READWRITE8(siu_data_port_r, siu_data_port_w, 0xff000000)
- ;
+ map(0x004e, 0x004e).rw(this, FUNC(i6300esb_lpc_device::siu_config_port_r), FUNC(i6300esb_lpc_device::siu_config_port_w));
+ map(0x004f, 0x004f).rw(this, FUNC(i6300esb_lpc_device::siu_data_port_r), FUNC(i6300esb_lpc_device::siu_data_port_w));
}
- AM_RANGE(0x0060, 0x0063) AM_READWRITE8( nmi_sc_r, nmi_sc_w, 0x0000ff00)
+ map(0x0061, 0x0061).rw(this, FUNC(i6300esb_lpc_device::nmi_sc_r), FUNC(i6300esb_lpc_device::nmi_sc_w));
- AM_RANGE(0x0080, 0x0083) AM_WRITE8( nop_w, 0x000000ff) // POST/non-existing, used for delays by the bios/os
- AM_RANGE(0x00ec, 0x00ef) AM_WRITE8( nop_w, 0x0000ff00) // Non-existing, used for delays by the bios/os
-ADDRESS_MAP_END
+ map(0x0080, 0x0080).w(this, FUNC(i6300esb_lpc_device::nop_w)); // POST/non-existing, used for delays by the bios/os
+ map(0x00ed, 0x00ed).w(this, FUNC(i6300esb_lpc_device::nop_w)); // Non-existing, used for delays by the bios/os
+}
i6300esb_lpc_device::i6300esb_lpc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/machine/i8155.cpp b/src/devices/machine/i8155.cpp
index 8af39eddffc..d562b46f0e6 100644
--- a/src/devices/machine/i8155.cpp
+++ b/src/devices/machine/i8155.cpp
@@ -110,9 +110,10 @@ enum
//**************************************************************************
// default address map
-ADDRESS_MAP_START(i8155_device::i8155)
- AM_RANGE(0x00, 0xff) AM_RAM
-ADDRESS_MAP_END
+void i8155_device::i8155(address_map &map)
+{
+ map(0x00, 0xff).ram();
+}
diff --git a/src/devices/machine/i82371sb.cpp b/src/devices/machine/i82371sb.cpp
index a53dfea077f..cc83b093f68 100644
--- a/src/devices/machine/i82371sb.cpp
+++ b/src/devices/machine/i82371sb.cpp
@@ -14,43 +14,45 @@
DEFINE_DEVICE_TYPE(I82371SB_ISA, i82371sb_isa_device, "i82371sb_isa", "Intel 82371 southbridge ISA bridge")
-ADDRESS_MAP_START(i82371sb_isa_device::config_map)
- AM_IMPORT_FROM(pci_device::config_map)
- AM_RANGE(0x4c, 0x4f) AM_READWRITE8 (iort_r, iort_w, 0x000000ff)
- AM_RANGE(0x4c, 0x4f) AM_READWRITE16(xbcs_r, xbcs_w, 0xffff0000)
- AM_RANGE(0x60, 0x63) AM_READWRITE8 (pirqrc_r, pirqrc_w, 0xffffffff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE8 (tom_r, tom_w, 0x000000ff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE16(mstat_r, mstat_w, 0xffff0000)
- AM_RANGE(0x70, 0x73) AM_READWRITE8 (mbirq0_r, mbirq0_w, 0x000000ff)
- AM_RANGE(0x74, 0x77) AM_READWRITE8 (mbdma_r, mbdma_w, 0xffff0000)
- AM_RANGE(0x80, 0x83) AM_READWRITE8 (dlc_r, dlc_w, 0x00ff0000)
- AM_RANGE(0xa0, 0xa3) AM_READWRITE8 (smicntl_r, smicntl_w, 0x000000ff)
- AM_RANGE(0xa0, 0xa3) AM_READWRITE16(smien_r, smien_w, 0xffff0000)
- AM_RANGE(0xa4, 0xa7) AM_READWRITE (see_r, see_w)
- AM_RANGE(0xa8, 0xab) AM_READWRITE8 (ftmr_r, ftmr_w, 0x000000ff)
- AM_RANGE(0xa8, 0xab) AM_READWRITE16(smireq_r, smireq_w, 0xffff0000)
- AM_RANGE(0xac, 0xaf) AM_READWRITE8 (ctltmr_r, ctltmr_w, 0x000000ff)
- AM_RANGE(0xac, 0xaf) AM_READWRITE8 (cthtmr_r, cthtmr_w, 0x00ff0000)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(i82371sb_isa_device::internal_io_map)
- AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", am9517a_device, read, write, 0xffffffff)
- AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_master", pic8259_device, read, write, 0xffffffff)
- AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8254_device, read, write, 0xffffffff)
- AM_RANGE(0x0060, 0x0063) AM_READWRITE8(at_keybc_r, at_keybc_w, 0xffffffff);
- AM_RANGE(0x0064, 0x0067) AM_DEVREADWRITE8("keybc", at_keyboard_controller_device, status_r, command_w, 0xffffffff);
- AM_RANGE(0x0070, 0x007f) AM_DEVREADWRITE8("rtc", ds12885_device, read, write, 0xffffffff);
- AM_RANGE(0x0080, 0x009f) AM_READWRITE8(at_page8_r, at_page8_w, 0xffffffff);
- AM_RANGE(0x00a0, 0x00bf) AM_DEVREADWRITE8("pic8259_slave", pic8259_device, read, write, 0xffffffff)
- AM_RANGE(0x00c0, 0x00df) AM_READWRITE8(at_dma8237_2_r, at_dma8237_2_w, 0xffffffff);
- AM_RANGE(0x00e0, 0x00ef) AM_NOP
+void i82371sb_isa_device::config_map(address_map &map)
+{
+ pci_device::config_map(map);
+ map(0x4c, 0x4c).rw(this, FUNC(i82371sb_isa_device::iort_r), FUNC(i82371sb_isa_device::iort_w));
+ map(0x4e, 0x4f).rw(this, FUNC(i82371sb_isa_device::xbcs_r), FUNC(i82371sb_isa_device::xbcs_w));
+ map(0x60, 0x63).rw(this, FUNC(i82371sb_isa_device::pirqrc_r), FUNC(i82371sb_isa_device::pirqrc_w));
+ map(0x68, 0x68).rw(this, FUNC(i82371sb_isa_device::tom_r), FUNC(i82371sb_isa_device::tom_w));
+ map(0x6a, 0x6b).rw(this, FUNC(i82371sb_isa_device::mstat_r), FUNC(i82371sb_isa_device::mstat_w));
+ map(0x70, 0x70).rw(this, FUNC(i82371sb_isa_device::mbirq0_r), FUNC(i82371sb_isa_device::mbirq0_w));
+ map(0x76, 0x77).rw(this, FUNC(i82371sb_isa_device::mbdma_r), FUNC(i82371sb_isa_device::mbdma_w));
+ map(0x82, 0x82).rw(this, FUNC(i82371sb_isa_device::dlc_r), FUNC(i82371sb_isa_device::dlc_w));
+ map(0xa0, 0xa0).rw(this, FUNC(i82371sb_isa_device::smicntl_r), FUNC(i82371sb_isa_device::smicntl_w));
+ map(0xa2, 0xa3).rw(this, FUNC(i82371sb_isa_device::smien_r), FUNC(i82371sb_isa_device::smien_w));
+ map(0xa4, 0xa7).rw(this, FUNC(i82371sb_isa_device::see_r), FUNC(i82371sb_isa_device::see_w));
+ map(0xa8, 0xa8).rw(this, FUNC(i82371sb_isa_device::ftmr_r), FUNC(i82371sb_isa_device::ftmr_w));
+ map(0xaa, 0xab).rw(this, FUNC(i82371sb_isa_device::smireq_r), FUNC(i82371sb_isa_device::smireq_w));
+ map(0xac, 0xac).rw(this, FUNC(i82371sb_isa_device::ctltmr_r), FUNC(i82371sb_isa_device::ctltmr_w));
+ map(0xae, 0xae).rw(this, FUNC(i82371sb_isa_device::cthtmr_r), FUNC(i82371sb_isa_device::cthtmr_w));
+}
+
+void i82371sb_isa_device::internal_io_map(address_map &map)
+{
+ map(0x0000, 0x001f).rw("dma8237_1", FUNC(am9517a_device::read), FUNC(am9517a_device::write));
+ map(0x0020, 0x003f).rw("pic8259_master", FUNC(pic8259_device::read), FUNC(pic8259_device::write));
+ map(0x0040, 0x005f).rw("pit8254", FUNC(pit8254_device::read), FUNC(pit8254_device::write));
+ map(0x0060, 0x0063).rw(this, FUNC(i82371sb_isa_device::at_keybc_r), FUNC(i82371sb_isa_device::at_keybc_w));
+ map(0x0064, 0x0067).rw("keybc", FUNC(at_keyboard_controller_device::status_r), FUNC(at_keyboard_controller_device::command_w));
+ map(0x0070, 0x007f).rw("rtc", FUNC(ds12885_device::read), FUNC(ds12885_device::write));
+ map(0x0080, 0x009f).rw(this, FUNC(i82371sb_isa_device::at_page8_r), FUNC(i82371sb_isa_device::at_page8_w));
+ map(0x00a0, 0x00bf).rw("pic8259_slave", FUNC(pic8259_device::read), FUNC(pic8259_device::write));
+ map(0x00c0, 0x00df).rw(this, FUNC(i82371sb_isa_device::at_dma8237_2_r), FUNC(i82371sb_isa_device::at_dma8237_2_w));
+ map(0x00e0, 0x00ef).noprw();
// VGA-HACK
- AM_RANGE(0x3b0, 0x3bf) AM_DEVREADWRITE8("vga", vga_device, port_03b0_r, port_03b0_w, 0xffffffff);
- AM_RANGE(0x3c0, 0x3cf) AM_DEVREADWRITE8("vga", vga_device, port_03c0_r, port_03c0_w, 0xffffffff);
- AM_RANGE(0x3d0, 0x3df) AM_DEVREADWRITE8("vga", vga_device, port_03d0_r, port_03d0_w, 0xffffffff);
+ map(0x3b0, 0x3bf).rw("vga", FUNC(vga_device::port_03b0_r), FUNC(vga_device::port_03b0_w));
+ map(0x3c0, 0x3cf).rw("vga", FUNC(vga_device::port_03c0_r), FUNC(vga_device::port_03c0_w));
+ map(0x3d0, 0x3df).rw("vga", FUNC(vga_device::port_03d0_r), FUNC(vga_device::port_03d0_w));
// end-VGA-HACK
-ADDRESS_MAP_END
+}
//-------------------------------------------------
// device_add_mconfig - add device configuration
diff --git a/src/devices/machine/i82439hx.cpp b/src/devices/machine/i82439hx.cpp
index 25bd4b7e2c1..2157bdc0043 100644
--- a/src/devices/machine/i82439hx.cpp
+++ b/src/devices/machine/i82439hx.cpp
@@ -5,22 +5,23 @@
DEFINE_DEVICE_TYPE(I82439HX, i82439hx_host_device, "i82439hx", "Intel 82439HX northbridge")
-ADDRESS_MAP_START(i82439hx_host_device::config_map)
- AM_IMPORT_FROM(pci_host_device::config_map)
- AM_RANGE(0x50, 0x53) AM_READWRITE8(pcon_r, pcon_w, 0x000000ff)
- AM_RANGE(0x50, 0x53) AM_READWRITE8(cc_r, cc_w, 0x00ff0000)
- AM_RANGE(0x54, 0x57) AM_READWRITE8(dramec_r, dramec_w, 0x00ff0000)
- AM_RANGE(0x54, 0x57) AM_READWRITE8(dramc_r, dramc_w, 0xff000000)
- AM_RANGE(0x58, 0x5f) AM_READWRITE8(pam_r, pam_w, 0xffffffff)
- AM_RANGE(0x58, 0x5b) AM_READWRITE8(dramt_r, dramt_w, 0x000000ff)
- AM_RANGE(0x60, 0x67) AM_READWRITE8(drb_r, drb_w, 0xffffffff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE8(drt_r, drt_w, 0x000000ff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE8(drat_r, drat_w, 0x0000ff00)
- AM_RANGE(0x70, 0x73) AM_READWRITE8(smram_r, smram_w, 0x00ff0000)
- AM_RANGE(0x90, 0x93) AM_READWRITE8(errcmd_r, errcmd_w, 0x000000ff)
- AM_RANGE(0x90, 0x93) AM_READWRITE8(errsts_r, errsts_w, 0x0000ff00)
- AM_RANGE(0x90, 0x93) AM_READ8 (errsyn_r, 0x00ff0000)
-ADDRESS_MAP_END
+void i82439hx_host_device::config_map(address_map &map)
+{
+ pci_host_device::config_map(map);
+ map(0x50, 0x50).rw(this, FUNC(i82439hx_host_device::pcon_r), FUNC(i82439hx_host_device::pcon_w));
+ map(0x52, 0x52).rw(this, FUNC(i82439hx_host_device::cc_r), FUNC(i82439hx_host_device::cc_w));
+ map(0x56, 0x56).rw(this, FUNC(i82439hx_host_device::dramec_r), FUNC(i82439hx_host_device::dramec_w));
+ map(0x57, 0x57).rw(this, FUNC(i82439hx_host_device::dramc_r), FUNC(i82439hx_host_device::dramc_w));
+ map(0x58, 0x5f).rw(this, FUNC(i82439hx_host_device::pam_r), FUNC(i82439hx_host_device::pam_w));
+ map(0x58, 0x58).rw(this, FUNC(i82439hx_host_device::dramt_r), FUNC(i82439hx_host_device::dramt_w));
+ map(0x60, 0x67).rw(this, FUNC(i82439hx_host_device::drb_r), FUNC(i82439hx_host_device::drb_w));
+ map(0x68, 0x68).rw(this, FUNC(i82439hx_host_device::drt_r), FUNC(i82439hx_host_device::drt_w));
+ map(0x69, 0x69).rw(this, FUNC(i82439hx_host_device::drat_r), FUNC(i82439hx_host_device::drat_w));
+ map(0x72, 0x72).rw(this, FUNC(i82439hx_host_device::smram_r), FUNC(i82439hx_host_device::smram_w));
+ map(0x90, 0x90).rw(this, FUNC(i82439hx_host_device::errcmd_r), FUNC(i82439hx_host_device::errcmd_w));
+ map(0x91, 0x91).rw(this, FUNC(i82439hx_host_device::errsts_r), FUNC(i82439hx_host_device::errsts_w));
+ map(0x92, 0x92).r(this, FUNC(i82439hx_host_device::errsyn_r));
+}
i82439hx_host_device::i82439hx_host_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_host_device(mconfig, I82439HX, tag, owner, clock)
diff --git a/src/devices/machine/i82439tx.cpp b/src/devices/machine/i82439tx.cpp
index 39555216497..53536008c16 100644
--- a/src/devices/machine/i82439tx.cpp
+++ b/src/devices/machine/i82439tx.cpp
@@ -5,22 +5,23 @@
DEFINE_DEVICE_TYPE(I82439TX_NEW, i82439tx_host_device, "i82439tx_new", "Intel 82439TX northbridge")
-ADDRESS_MAP_START(i82439tx_host_device::config_map)
- AM_IMPORT_FROM(pci_host_device::config_map)
- AM_RANGE(0x50, 0x53) AM_READWRITE8(pcon_r, pcon_w, 0x000000ff)
- AM_RANGE(0x50, 0x53) AM_READWRITE8(cc_r, cc_w, 0x00ff0000)
- AM_RANGE(0x54, 0x57) AM_READWRITE8(dramec_r, dramec_w, 0x00ff0000)
- AM_RANGE(0x54, 0x57) AM_READWRITE8(dramc_r, dramc_w, 0xff000000)
- AM_RANGE(0x58, 0x5f) AM_READWRITE8(pam_r, pam_w, 0xffffffff)
- AM_RANGE(0x58, 0x5b) AM_READWRITE8(dramt_r, dramt_w, 0x000000ff)
- AM_RANGE(0x60, 0x67) AM_READWRITE8(drb_r, drb_w, 0xffffffff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE8(drt_r, drt_w, 0x000000ff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE8(drat_r, drat_w, 0x0000ff00)
- AM_RANGE(0x70, 0x73) AM_READWRITE8(smram_r, smram_w, 0x00ff0000)
- AM_RANGE(0x90, 0x93) AM_READWRITE8(errcmd_r, errcmd_w, 0x000000ff)
- AM_RANGE(0x90, 0x93) AM_READWRITE8(errsts_r, errsts_w, 0x0000ff00)
- AM_RANGE(0x90, 0x93) AM_READ8 (errsyn_r, 0x00ff0000)
-ADDRESS_MAP_END
+void i82439tx_host_device::config_map(address_map &map)
+{
+ pci_host_device::config_map(map);
+ map(0x50, 0x50).rw(this, FUNC(i82439tx_host_device::pcon_r), FUNC(i82439tx_host_device::pcon_w));
+ map(0x52, 0x52).rw(this, FUNC(i82439tx_host_device::cc_r), FUNC(i82439tx_host_device::cc_w));
+ map(0x56, 0x56).rw(this, FUNC(i82439tx_host_device::dramec_r), FUNC(i82439tx_host_device::dramec_w));
+ map(0x57, 0x57).rw(this, FUNC(i82439tx_host_device::dramc_r), FUNC(i82439tx_host_device::dramc_w));
+ map(0x58, 0x5f).rw(this, FUNC(i82439tx_host_device::pam_r), FUNC(i82439tx_host_device::pam_w));
+ map(0x58, 0x58).rw(this, FUNC(i82439tx_host_device::dramt_r), FUNC(i82439tx_host_device::dramt_w));
+ map(0x60, 0x67).rw(this, FUNC(i82439tx_host_device::drb_r), FUNC(i82439tx_host_device::drb_w));
+ map(0x68, 0x68).rw(this, FUNC(i82439tx_host_device::drt_r), FUNC(i82439tx_host_device::drt_w));
+ map(0x69, 0x69).rw(this, FUNC(i82439tx_host_device::drat_r), FUNC(i82439tx_host_device::drat_w));
+ map(0x72, 0x72).rw(this, FUNC(i82439tx_host_device::smram_r), FUNC(i82439tx_host_device::smram_w));
+ map(0x90, 0x90).rw(this, FUNC(i82439tx_host_device::errcmd_r), FUNC(i82439tx_host_device::errcmd_w));
+ map(0x91, 0x91).rw(this, FUNC(i82439tx_host_device::errsts_r), FUNC(i82439tx_host_device::errsts_w));
+ map(0x92, 0x92).r(this, FUNC(i82439tx_host_device::errsyn_r));
+}
i82439tx_host_device::i82439tx_host_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_host_device(mconfig, I82439TX_NEW, tag, owner, clock)
diff --git a/src/devices/machine/i82541.cpp b/src/devices/machine/i82541.cpp
index 649af270f92..b727ac6e295 100644
--- a/src/devices/machine/i82541.cpp
+++ b/src/devices/machine/i82541.cpp
@@ -5,14 +5,17 @@
DEFINE_DEVICE_TYPE(I82541, i82541_device, "i82541_device", "Intel 82541 Ethernet controller")
-ADDRESS_MAP_START(i82541_device::registers_map)
-ADDRESS_MAP_END
+void i82541_device::registers_map(address_map &map)
+{
+}
-ADDRESS_MAP_START(i82541_device::flash_map)
-ADDRESS_MAP_END
+void i82541_device::flash_map(address_map &map)
+{
+}
-ADDRESS_MAP_START(i82541_device::registers_io_map)
-ADDRESS_MAP_END
+void i82541_device::registers_io_map(address_map &map)
+{
+}
i82541_device::i82541_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, I82541, tag, owner, clock)
diff --git a/src/devices/machine/i82875p.cpp b/src/devices/machine/i82875p.cpp
index 6da6a0e59e3..4e4c7538870 100644
--- a/src/devices/machine/i82875p.cpp
+++ b/src/devices/machine/i82875p.cpp
@@ -7,39 +7,41 @@ DEFINE_DEVICE_TYPE(I82875P_HOST, i82875p_host_device, "i82875p_host",
DEFINE_DEVICE_TYPE(I82875P_AGP, i82875p_agp_device, "i82875p_agp", "Intel 82875P AGP Bridge")
DEFINE_DEVICE_TYPE(I82875P_OVERFLOW, i82875p_overflow_device, "i82875p_overflow", "Intel 82875P Configuration Overflow")
-ADDRESS_MAP_START(i82875p_host_device::agp_translation_map)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(i82875p_host_device::config_map)
- AM_IMPORT_FROM(pci_host_device::config_map)
- AM_RANGE(0x50, 0x53) AM_READWRITE8 (agpm_r, agpm_w, 0x0000ff00)
- AM_RANGE(0x50, 0x53) AM_READ8 (gc_r, 0x00ff0000)
- AM_RANGE(0x50, 0x53) AM_READ8 (csabcont_r, 0xff000000)
- AM_RANGE(0x58, 0x5b) AM_READ (eap_r)
- AM_RANGE(0x5c, 0x5f) AM_READ8 (derrsyn_r, 0x000000ff)
- AM_RANGE(0x5c, 0x5f) AM_READ8 (des_r, 0x0000ff00)
- AM_RANGE(0x60, 0x63) AM_READWRITE8 (fpllcont_r, fpllcont_w, 0x000000ff)
- AM_RANGE(0x90, 0x97) AM_READWRITE8 (pam_r, pam_w, 0xffffffff)
- AM_RANGE(0x9c, 0x9f) AM_READWRITE8 (smram_r, smram_w, 0x0000ff00)
- AM_RANGE(0x9c, 0x9f) AM_READWRITE8 (esmramc_r, esmramc_w, 0x00ff0000)
- AM_RANGE(0xa0, 0xa3) AM_READ (acapid_r)
- AM_RANGE(0xa4, 0xa7) AM_READ (agpstat_r)
- AM_RANGE(0xa8, 0xab) AM_READ (agpcmd_r)
- AM_RANGE(0xb0, 0xb3) AM_READWRITE (agpctrl_r, agpctrl_w)
- AM_RANGE(0xb4, 0xb7) AM_READWRITE8 (apsize_r, apsize_w, 0x000000ff)
- AM_RANGE(0xb8, 0xbb) AM_READWRITE (attbase_r, attbase_w)
- AM_RANGE(0xbc, 0xbf) AM_READWRITE8 (amtt_r, amtt_w, 0x000000ff)
- AM_RANGE(0xbc, 0xbf) AM_READWRITE8 (lptt_r, lptt_w, 0x0000ff00)
- AM_RANGE(0xc4, 0xc7) AM_READWRITE16(toud_r, toud_w, 0x0000ffff)
- AM_RANGE(0xc4, 0xc7) AM_READWRITE16(mchcfg_r, mchcfg_w, 0xffff0000)
- AM_RANGE(0xc8, 0xcb) AM_READ16 (errsts_r, 0x0000ffff)
- AM_RANGE(0xc8, 0xcb) AM_READWRITE16(errcmd_r, errcmd_w, 0xffff0000)
- AM_RANGE(0xcc, 0xcf) AM_READWRITE16(smicmd_r, smicmd_w, 0x0000ffff)
- AM_RANGE(0xcc, 0xcf) AM_READWRITE16(scicmd_r, scicmd_w, 0xffff0000)
- AM_RANGE(0xdc, 0xdf) AM_READWRITE16(skpd_r, skpd_w, 0xffff0000)
- AM_RANGE(0xe4, 0xe7) AM_READ (capreg1_r)
- AM_RANGE(0xe8, 0xeb) AM_READ8 (capreg2_r, 0x000000ff)
-ADDRESS_MAP_END
+void i82875p_host_device::agp_translation_map(address_map &map)
+{
+}
+
+void i82875p_host_device::config_map(address_map &map)
+{
+ pci_host_device::config_map(map);
+ map(0x51, 0x51).rw(this, FUNC(i82875p_host_device::agpm_r), FUNC(i82875p_host_device::agpm_w));
+ map(0x52, 0x52).r(this, FUNC(i82875p_host_device::gc_r));
+ map(0x53, 0x53).r(this, FUNC(i82875p_host_device::csabcont_r));
+ map(0x58, 0x5b).r(this, FUNC(i82875p_host_device::eap_r));
+ map(0x5c, 0x5c).r(this, FUNC(i82875p_host_device::derrsyn_r));
+ map(0x5d, 0x5d).r(this, FUNC(i82875p_host_device::des_r));
+ map(0x60, 0x60).rw(this, FUNC(i82875p_host_device::fpllcont_r), FUNC(i82875p_host_device::fpllcont_w));
+ map(0x90, 0x97).rw(this, FUNC(i82875p_host_device::pam_r), FUNC(i82875p_host_device::pam_w));
+ map(0x9d, 0x9d).rw(this, FUNC(i82875p_host_device::smram_r), FUNC(i82875p_host_device::smram_w));
+ map(0x9e, 0x9e).rw(this, FUNC(i82875p_host_device::esmramc_r), FUNC(i82875p_host_device::esmramc_w));
+ map(0xa0, 0xa3).r(this, FUNC(i82875p_host_device::acapid_r));
+ map(0xa4, 0xa7).r(this, FUNC(i82875p_host_device::agpstat_r));
+ map(0xa8, 0xab).r(this, FUNC(i82875p_host_device::agpcmd_r));
+ map(0xb0, 0xb3).rw(this, FUNC(i82875p_host_device::agpctrl_r), FUNC(i82875p_host_device::agpctrl_w));
+ map(0xb4, 0xb4).rw(this, FUNC(i82875p_host_device::apsize_r), FUNC(i82875p_host_device::apsize_w));
+ map(0xb8, 0xbb).rw(this, FUNC(i82875p_host_device::attbase_r), FUNC(i82875p_host_device::attbase_w));
+ map(0xbc, 0xbc).rw(this, FUNC(i82875p_host_device::amtt_r), FUNC(i82875p_host_device::amtt_w));
+ map(0xbd, 0xbd).rw(this, FUNC(i82875p_host_device::lptt_r), FUNC(i82875p_host_device::lptt_w));
+ map(0xc4, 0xc5).rw(this, FUNC(i82875p_host_device::toud_r), FUNC(i82875p_host_device::toud_w));
+ map(0xc6, 0xc7).rw(this, FUNC(i82875p_host_device::mchcfg_r), FUNC(i82875p_host_device::mchcfg_w));
+ map(0xc8, 0xc9).r(this, FUNC(i82875p_host_device::errsts_r));
+ map(0xca, 0xcb).rw(this, FUNC(i82875p_host_device::errcmd_r), FUNC(i82875p_host_device::errcmd_w));
+ map(0xcc, 0xcd).rw(this, FUNC(i82875p_host_device::smicmd_r), FUNC(i82875p_host_device::smicmd_w));
+ map(0xce, 0xcf).rw(this, FUNC(i82875p_host_device::scicmd_r), FUNC(i82875p_host_device::scicmd_w));
+ map(0xde, 0xdf).rw(this, FUNC(i82875p_host_device::skpd_r), FUNC(i82875p_host_device::skpd_w));
+ map(0xe4, 0xe7).r(this, FUNC(i82875p_host_device::capreg1_r));
+ map(0xe8, 0xe8).r(this, FUNC(i82875p_host_device::capreg2_r));
+}
i82875p_host_device::i82875p_host_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_host_device(mconfig, I82875P_HOST, tag, owner, clock)
@@ -441,12 +443,13 @@ void i82875p_agp_device::device_reset()
agp_bridge_device::device_reset();
}
-ADDRESS_MAP_START(i82875p_overflow_device::overflow_map)
- AM_RANGE(0x000, 0x007) AM_READWRITE8(dram_row_boundary_r, dram_row_boundary_w, 0xffffffff)
- AM_RANGE(0x010, 0x013) AM_READWRITE8(dram_row_attribute_r, dram_row_attribute_w, 0xffffffff)
- AM_RANGE(0x060, 0x064) AM_READWRITE (dram_timing_r, dram_timing_w)
- AM_RANGE(0x068, 0x06b) AM_READWRITE (dram_controller_mode_r, dram_controller_mode_w)
-ADDRESS_MAP_END
+void i82875p_overflow_device::overflow_map(address_map &map)
+{
+ map(0x000, 0x007).rw(this, FUNC(i82875p_overflow_device::dram_row_boundary_r), FUNC(i82875p_overflow_device::dram_row_boundary_w));
+ map(0x010, 0x013).rw(this, FUNC(i82875p_overflow_device::dram_row_attribute_r), FUNC(i82875p_overflow_device::dram_row_attribute_w));
+ map(0x060, 0x064).rw(this, FUNC(i82875p_overflow_device::dram_timing_r), FUNC(i82875p_overflow_device::dram_timing_w));
+ map(0x068, 0x06b).rw(this, FUNC(i82875p_overflow_device::dram_controller_mode_r), FUNC(i82875p_overflow_device::dram_controller_mode_w));
+}
i82875p_overflow_device::i82875p_overflow_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/machine/linflash.cpp b/src/devices/machine/linflash.cpp
index 1f7a75051a8..6fb942a7a2a 100644
--- a/src/devices/machine/linflash.cpp
+++ b/src/devices/machine/linflash.cpp
@@ -42,17 +42,18 @@ WRITE16_MEMBER( linear_flash_pccard_device::write_memory )
}
-ADDRESS_MAP_START(linear_flash_pccard_16mb_device::linear_flash_pccard_16mb)
- ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00400000, 0x007fffff) AM_DEVREADWRITE8("2l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00400000, 0x007fffff) AM_DEVREADWRITE8("2u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00800000, 0x00bfffff) AM_DEVREADWRITE8("3l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00800000, 0x00bfffff) AM_DEVREADWRITE8("3u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00c00000, 0x00ffffff) AM_DEVREADWRITE8("4l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00c00000, 0x00ffffff) AM_DEVREADWRITE8("4u", intelfsh8_device, read, write, 0xff00)
-ADDRESS_MAP_END
+void linear_flash_pccard_16mb_device::linear_flash_pccard_16mb(address_map &map)
+{
+ map.unmap_value_high();
+ map(0x00000000, 0x003fffff).rw("1l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00000000, 0x003fffff).rw("1u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00400000, 0x007fffff).rw("2l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00400000, 0x007fffff).rw("2u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00800000, 0x00bfffff).rw("3l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00800000, 0x00bfffff).rw("3u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00c00000, 0x00ffffff).rw("4l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00c00000, 0x00ffffff).rw("4u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+}
linear_flash_pccard_16mb_device::linear_flash_pccard_16mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
linear_flash_pccard_device(mconfig, LINEAR_FLASH_PCCARD_16MB, tag, owner, clock)
@@ -72,25 +73,26 @@ MACHINE_CONFIG_START(linear_flash_pccard_16mb_device::device_add_mconfig)
MACHINE_CONFIG_END
-ADDRESS_MAP_START(linear_flash_pccard_32mb_device::linear_flash_pccard_32mb)
- ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00400000, 0x007fffff) AM_DEVREADWRITE8("2l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00400000, 0x007fffff) AM_DEVREADWRITE8("2u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00800000, 0x00bfffff) AM_DEVREADWRITE8("3l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00800000, 0x00bfffff) AM_DEVREADWRITE8("3u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00c00000, 0x00ffffff) AM_DEVREADWRITE8("4l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00c00000, 0x00ffffff) AM_DEVREADWRITE8("4u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01000000, 0x013fffff) AM_DEVREADWRITE8("5l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01000000, 0x013fffff) AM_DEVREADWRITE8("5u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01400000, 0x017fffff) AM_DEVREADWRITE8("6l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01400000, 0x017fffff) AM_DEVREADWRITE8("6u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01800000, 0x01bfffff) AM_DEVREADWRITE8("7l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01800000, 0x01bfffff) AM_DEVREADWRITE8("7u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01c00000, 0x01ffffff) AM_DEVREADWRITE8("8l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01c00000, 0x01ffffff) AM_DEVREADWRITE8("8u", intelfsh8_device, read, write, 0xff00)
-ADDRESS_MAP_END
+void linear_flash_pccard_32mb_device::linear_flash_pccard_32mb(address_map &map)
+{
+ map.unmap_value_high();
+ map(0x00000000, 0x003fffff).rw("1l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00000000, 0x003fffff).rw("1u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00400000, 0x007fffff).rw("2l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00400000, 0x007fffff).rw("2u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00800000, 0x00bfffff).rw("3l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00800000, 0x00bfffff).rw("3u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00c00000, 0x00ffffff).rw("4l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00c00000, 0x00ffffff).rw("4u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01000000, 0x013fffff).rw("5l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01000000, 0x013fffff).rw("5u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01400000, 0x017fffff).rw("6l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01400000, 0x017fffff).rw("6u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01800000, 0x01bfffff).rw("7l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01800000, 0x01bfffff).rw("7u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01c00000, 0x01ffffff).rw("8l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01c00000, 0x01ffffff).rw("8u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+}
linear_flash_pccard_32mb_device::linear_flash_pccard_32mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
linear_flash_pccard_device(mconfig, LINEAR_FLASH_PCCARD_32MB, tag, owner, clock)
@@ -118,41 +120,42 @@ MACHINE_CONFIG_START(linear_flash_pccard_32mb_device::device_add_mconfig)
MACHINE_CONFIG_END
-ADDRESS_MAP_START(linear_flash_pccard_64mb_device::linear_flash_pccard_64mb)
- ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00000000, 0x003fffff) AM_DEVREADWRITE8("1u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00400000, 0x007fffff) AM_DEVREADWRITE8("2l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00400000, 0x007fffff) AM_DEVREADWRITE8("2u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00800000, 0x00bfffff) AM_DEVREADWRITE8("3l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00800000, 0x00bfffff) AM_DEVREADWRITE8("3u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x00c00000, 0x00ffffff) AM_DEVREADWRITE8("4l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x00c00000, 0x00ffffff) AM_DEVREADWRITE8("4u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01000000, 0x013fffff) AM_DEVREADWRITE8("5l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01000000, 0x013fffff) AM_DEVREADWRITE8("5u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01400000, 0x017fffff) AM_DEVREADWRITE8("6l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01400000, 0x017fffff) AM_DEVREADWRITE8("6u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01800000, 0x01bfffff) AM_DEVREADWRITE8("7l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01800000, 0x01bfffff) AM_DEVREADWRITE8("7u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x01c00000, 0x01ffffff) AM_DEVREADWRITE8("8l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x01c00000, 0x01ffffff) AM_DEVREADWRITE8("8u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x02000000, 0x023fffff) AM_DEVREADWRITE8("9l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x02000000, 0x023fffff) AM_DEVREADWRITE8("9u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x02400000, 0x027fffff) AM_DEVREADWRITE8("10l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x02400000, 0x027fffff) AM_DEVREADWRITE8("10u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x02800000, 0x02bfffff) AM_DEVREADWRITE8("11l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x02800000, 0x02bfffff) AM_DEVREADWRITE8("11u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x02c00000, 0x02ffffff) AM_DEVREADWRITE8("12l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x02c00000, 0x02ffffff) AM_DEVREADWRITE8("12u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x03000000, 0x033fffff) AM_DEVREADWRITE8("13l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x03000000, 0x033fffff) AM_DEVREADWRITE8("13u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x03400000, 0x037fffff) AM_DEVREADWRITE8("14l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x03400000, 0x037fffff) AM_DEVREADWRITE8("14u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x03800000, 0x03bfffff) AM_DEVREADWRITE8("15l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x03800000, 0x03bfffff) AM_DEVREADWRITE8("15u", intelfsh8_device, read, write, 0xff00)
- AM_RANGE(0x03c00000, 0x03ffffff) AM_DEVREADWRITE8("16l", intelfsh8_device, read, write, 0x00ff)
- AM_RANGE(0x03c00000, 0x03ffffff) AM_DEVREADWRITE8("16u", intelfsh8_device, read, write, 0xff00)
-ADDRESS_MAP_END
+void linear_flash_pccard_64mb_device::linear_flash_pccard_64mb(address_map &map)
+{
+ map.unmap_value_high();
+ map(0x00000000, 0x003fffff).rw("1l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00000000, 0x003fffff).rw("1u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00400000, 0x007fffff).rw("2l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00400000, 0x007fffff).rw("2u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00800000, 0x00bfffff).rw("3l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00800000, 0x00bfffff).rw("3u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x00c00000, 0x00ffffff).rw("4l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x00c00000, 0x00ffffff).rw("4u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01000000, 0x013fffff).rw("5l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01000000, 0x013fffff).rw("5u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01400000, 0x017fffff).rw("6l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01400000, 0x017fffff).rw("6u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01800000, 0x01bfffff).rw("7l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01800000, 0x01bfffff).rw("7u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x01c00000, 0x01ffffff).rw("8l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x01c00000, 0x01ffffff).rw("8u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x02000000, 0x023fffff).rw("9l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x02000000, 0x023fffff).rw("9u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x02400000, 0x027fffff).rw("10l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x02400000, 0x027fffff).rw("10u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x02800000, 0x02bfffff).rw("11l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x02800000, 0x02bfffff).rw("11u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x02c00000, 0x02ffffff).rw("12l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x02c00000, 0x02ffffff).rw("12u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x03000000, 0x033fffff).rw("13l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x03000000, 0x033fffff).rw("13u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x03400000, 0x037fffff).rw("14l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x03400000, 0x037fffff).rw("14u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x03800000, 0x03bfffff).rw("15l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x03800000, 0x03bfffff).rw("15u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+ map(0x03c00000, 0x03ffffff).rw("16l", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0x00ff);
+ map(0x03c00000, 0x03ffffff).rw("16u", FUNC(intelfsh8_device::read), FUNC(intelfsh8_device::write)).umask16(0xff00);
+}
linear_flash_pccard_64mb_device::linear_flash_pccard_64mb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
linear_flash_pccard_device(mconfig, LINEAR_FLASH_PCCARD_64MB, tag, owner, clock)
diff --git a/src/devices/machine/lpc-acpi.cpp b/src/devices/machine/lpc-acpi.cpp
index 3f977ad519d..89674a97199 100644
--- a/src/devices/machine/lpc-acpi.cpp
+++ b/src/devices/machine/lpc-acpi.cpp
@@ -5,37 +5,38 @@
DEFINE_DEVICE_TYPE(LPC_ACPI, lpc_acpi_device, "lpc_acpi", "LPC ACPI")
-ADDRESS_MAP_START(lpc_acpi_device::map)
- AM_RANGE(0x00, 0x03) AM_READWRITE16(pm1_sts_r, pm1_sts_w, 0x0000ffff)
- AM_RANGE(0x00, 0x03) AM_READWRITE16(pm1_en_r, pm1_en_w, 0xffff0000)
- AM_RANGE(0x04, 0x07) AM_READWRITE (pm1_cnt_r, pm1_cnt_w)
- AM_RANGE(0x08, 0x0b) AM_READ (pm1_tmr_r)
- AM_RANGE(0x10, 0x13) AM_READWRITE (proc_cnt_r, proc_cnt_w)
- AM_RANGE(0x14, 0x17) AM_READ8 (lv2_r, 0x000000ff)
- AM_RANGE(0x28, 0x2b) AM_READWRITE (gpe0_sts_r, gpe0_sts_w)
- AM_RANGE(0x2c, 0x2f) AM_READWRITE (gpe0_en_r, gpe0_en_w)
- AM_RANGE(0x30, 0x33) AM_READWRITE (smi_en_r, smi_en_w)
- AM_RANGE(0x34, 0x37) AM_READWRITE (smi_sts_r, smi_sts_w)
- AM_RANGE(0x38, 0x3b) AM_READWRITE16(alt_gp_smi_en_r, alt_gp_smi_en_w, 0x0000ffff)
- AM_RANGE(0x38, 0x3b) AM_READWRITE16(alt_gp_smi_sts_r, alt_gp_smi_sts_w, 0xffff0000)
- AM_RANGE(0x44, 0x47) AM_READWRITE16(devact_sts_r, devact_sts_w, 0x0000ffff)
- AM_RANGE(0x48, 0x4b) AM_READWRITE16(devtrap_en_r, devtrap_en_w, 0x0000ffff)
- AM_RANGE(0x4c, 0x4f) AM_READ16 (bus_addr_track_r, 0x0000ffff)
- AM_RANGE(0x4c, 0x4f) AM_READ8 (bus_cyc_track_r, 0x00ff0000)
-
- AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_rld_r, tco_rld_w, 0x000000ff)
- AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_tmr_r, tco_tmr_w, 0x0000ff00)
- AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_dat_in_r, tco_dat_in_w, 0x00ff0000)
- AM_RANGE(0x60, 0x63) AM_READWRITE8 (tco_dat_out_r, tco_dat_out_w, 0xff000000)
- AM_RANGE(0x64, 0x67) AM_READWRITE16(tco1_sts_r, tco1_sts_w, 0x0000ffff)
- AM_RANGE(0x64, 0x67) AM_READWRITE16(tco2_sts_r, tco2_sts_w, 0xffff0000)
- AM_RANGE(0x68, 0x6b) AM_READWRITE16(tco1_cnt_r, tco1_cnt_w, 0x0000ffff)
- AM_RANGE(0x68, 0x6b) AM_READWRITE16(tco2_cnt_r, tco2_cnt_w, 0xffff0000)
- AM_RANGE(0x6c, 0x6f) AM_READWRITE8 (tco_message1_r, tco_message1_w, 0x000000ff)
- AM_RANGE(0x6c, 0x6f) AM_READWRITE8 (tco_message2_r, tco_message2_w, 0x0000ff00)
- AM_RANGE(0x6c, 0x6f) AM_READWRITE8 (tco_wdstatus_r, tco_wdstatus_w, 0x00ff0000)
- AM_RANGE(0x70, 0x73) AM_READWRITE8 (sw_irq_gen_r, sw_irq_gen_w, 0x000000ff)
-ADDRESS_MAP_END
+void lpc_acpi_device::map(address_map &map)
+{
+ map(0x00, 0x01).rw(this, FUNC(lpc_acpi_device::pm1_sts_r), FUNC(lpc_acpi_device::pm1_sts_w));
+ map(0x02, 0x03).rw(this, FUNC(lpc_acpi_device::pm1_en_r), FUNC(lpc_acpi_device::pm1_en_w));
+ map(0x04, 0x07).rw(this, FUNC(lpc_acpi_device::pm1_cnt_r), FUNC(lpc_acpi_device::pm1_cnt_w));
+ map(0x08, 0x0b).r(this, FUNC(lpc_acpi_device::pm1_tmr_r));
+ map(0x10, 0x13).rw(this, FUNC(lpc_acpi_device::proc_cnt_r), FUNC(lpc_acpi_device::proc_cnt_w));
+ map(0x14, 0x14).r(this, FUNC(lpc_acpi_device::lv2_r));
+ map(0x28, 0x2b).rw(this, FUNC(lpc_acpi_device::gpe0_sts_r), FUNC(lpc_acpi_device::gpe0_sts_w));
+ map(0x2c, 0x2f).rw(this, FUNC(lpc_acpi_device::gpe0_en_r), FUNC(lpc_acpi_device::gpe0_en_w));
+ map(0x30, 0x33).rw(this, FUNC(lpc_acpi_device::smi_en_r), FUNC(lpc_acpi_device::smi_en_w));
+ map(0x34, 0x37).rw(this, FUNC(lpc_acpi_device::smi_sts_r), FUNC(lpc_acpi_device::smi_sts_w));
+ map(0x38, 0x39).rw(this, FUNC(lpc_acpi_device::alt_gp_smi_en_r), FUNC(lpc_acpi_device::alt_gp_smi_en_w));
+ map(0x3a, 0x3b).rw(this, FUNC(lpc_acpi_device::alt_gp_smi_sts_r), FUNC(lpc_acpi_device::alt_gp_smi_sts_w));
+ map(0x44, 0x45).rw(this, FUNC(lpc_acpi_device::devact_sts_r), FUNC(lpc_acpi_device::devact_sts_w));
+ map(0x48, 0x49).rw(this, FUNC(lpc_acpi_device::devtrap_en_r), FUNC(lpc_acpi_device::devtrap_en_w));
+ map(0x4c, 0x4d).r(this, FUNC(lpc_acpi_device::bus_addr_track_r));
+ map(0x4e, 0x4e).r(this, FUNC(lpc_acpi_device::bus_cyc_track_r));
+
+ map(0x60, 0x60).rw(this, FUNC(lpc_acpi_device::tco_rld_r), FUNC(lpc_acpi_device::tco_rld_w));
+ map(0x61, 0x61).rw(this, FUNC(lpc_acpi_device::tco_tmr_r), FUNC(lpc_acpi_device::tco_tmr_w));
+ map(0x62, 0x62).rw(this, FUNC(lpc_acpi_device::tco_dat_in_r), FUNC(lpc_acpi_device::tco_dat_in_w));
+ map(0x63, 0x63).rw(this, FUNC(lpc_acpi_device::tco_dat_out_r), FUNC(lpc_acpi_device::tco_dat_out_w));
+ map(0x64, 0x65).rw(this, FUNC(lpc_acpi_device::tco1_sts_r), FUNC(lpc_acpi_device::tco1_sts_w));
+ map(0x66, 0x67).rw(this, FUNC(lpc_acpi_device::tco2_sts_r), FUNC(lpc_acpi_device::tco2_sts_w));
+ map(0x68, 0x69).rw(this, FUNC(lpc_acpi_device::tco1_cnt_r), FUNC(lpc_acpi_device::tco1_cnt_w));
+ map(0x6a, 0x6b).rw(this, FUNC(lpc_acpi_device::tco2_cnt_r), FUNC(lpc_acpi_device::tco2_cnt_w));
+ map(0x6c, 0x6c).rw(this, FUNC(lpc_acpi_device::tco_message1_r), FUNC(lpc_acpi_device::tco_message1_w));
+ map(0x6d, 0x6d).rw(this, FUNC(lpc_acpi_device::tco_message2_r), FUNC(lpc_acpi_device::tco_message2_w));
+ map(0x6e, 0x6e).rw(this, FUNC(lpc_acpi_device::tco_wdstatus_r), FUNC(lpc_acpi_device::tco_wdstatus_w));
+ map(0x70, 0x70).rw(this, FUNC(lpc_acpi_device::sw_irq_gen_r), FUNC(lpc_acpi_device::sw_irq_gen_w));
+}
lpc_acpi_device::lpc_acpi_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: lpc_device(mconfig, LPC_ACPI, tag, owner, clock)
diff --git a/src/devices/machine/lpc-pit.cpp b/src/devices/machine/lpc-pit.cpp
index 57842c399b9..d46435de5dd 100644
--- a/src/devices/machine/lpc-pit.cpp
+++ b/src/devices/machine/lpc-pit.cpp
@@ -5,12 +5,13 @@
DEFINE_DEVICE_TYPE(LPC_PIT, lpc_pit_device, "lpc_pit", "LPC PIT")
-ADDRESS_MAP_START(lpc_pit_device::map)
- AM_RANGE(0x40, 0x43) AM_READWRITE8(status_r, access_w, 0x00ffffff)
- AM_RANGE(0x40, 0x43) AM_WRITE8 ( control_w, 0xff000000)
- AM_RANGE(0x50, 0x53) AM_READWRITE8(status_r, access_w, 0x00ffffff)
- AM_RANGE(0x50, 0x53) AM_WRITE8 ( control_w, 0xff000000)
-ADDRESS_MAP_END
+void lpc_pit_device::map(address_map &map)
+{
+ map(0x40, 0x42).rw(this, FUNC(lpc_pit_device::status_r), FUNC(lpc_pit_device::access_w));
+ map(0x43, 0x43).w(this, FUNC(lpc_pit_device::control_w));
+ map(0x50, 0x52).rw(this, FUNC(lpc_pit_device::status_r), FUNC(lpc_pit_device::access_w));
+ map(0x53, 0x53).w(this, FUNC(lpc_pit_device::control_w));
+}
lpc_pit_device::lpc_pit_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: lpc_device(mconfig, LPC_PIT, tag, owner, clock)
diff --git a/src/devices/machine/lpc-rtc.cpp b/src/devices/machine/lpc-rtc.cpp
index 24e9f34652a..9c7e542db56 100644
--- a/src/devices/machine/lpc-rtc.cpp
+++ b/src/devices/machine/lpc-rtc.cpp
@@ -5,15 +5,17 @@
DEFINE_DEVICE_TYPE(LPC_RTC, lpc_rtc_device, "lpc_rpc", "LPC RTC")
-ADDRESS_MAP_START(lpc_rtc_device::map)
- AM_RANGE(0x70, 0x77) AM_READWRITE8(index_r, index_w, 0x00ff00ff)
- AM_RANGE(0x70, 0x77) AM_READWRITE8(target_r, target_w, 0xff00ff00)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(lpc_rtc_device::extmap)
- AM_RANGE(0x70, 0x77) AM_READWRITE8(extindex_r, extindex_w, 0x00ff0000)
- AM_RANGE(0x70, 0x77) AM_READWRITE8(exttarget_r, exttarget_w, 0xff000000)
-ADDRESS_MAP_END
+void lpc_rtc_device::map(address_map &map)
+{
+ map(0x70, 0x77).rw(this, FUNC(lpc_rtc_device::index_r), FUNC(lpc_rtc_device::index_w)).umask32(0x00ff00ff);
+ map(0x70, 0x77).rw(this, FUNC(lpc_rtc_device::target_r), FUNC(lpc_rtc_device::target_w)).umask32(0xff00ff00);
+}
+
+void lpc_rtc_device::extmap(address_map &map)
+{
+ map(0x70, 0x77).rw(this, FUNC(lpc_rtc_device::extindex_r), FUNC(lpc_rtc_device::extindex_w)).umask32(0x00ff0000);
+ map(0x70, 0x77).rw(this, FUNC(lpc_rtc_device::exttarget_r), FUNC(lpc_rtc_device::exttarget_w)).umask32(0xff000000);
+}
lpc_rtc_device::lpc_rtc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: lpc_device(mconfig, LPC_RTC, tag, owner, clock), cur_index(0), cur_extindex(0)
diff --git a/src/devices/machine/mcf5206e.cpp b/src/devices/machine/mcf5206e.cpp
index 5278abbeadd..fd35e7f54d9 100644
--- a/src/devices/machine/mcf5206e.cpp
+++ b/src/devices/machine/mcf5206e.cpp
@@ -13,59 +13,60 @@
#include "logmacro.h"
-ADDRESS_MAP_START(mcf5206e_peripheral_device::coldfire_regs_map)
+void mcf5206e_peripheral_device::coldfire_regs_map(address_map &map)
+{
- AM_RANGE(0x014, 0x017) AM_READWRITE8(ICR1_ICR2_ICR3_ICR4_r, ICR1_ICR2_ICR3_ICR4_w, 0xffffffff)
+ map(0x014, 0x017).rw(this, FUNC(mcf5206e_peripheral_device::ICR1_ICR2_ICR3_ICR4_r), FUNC(mcf5206e_peripheral_device::ICR1_ICR2_ICR3_ICR4_w));
- AM_RANGE(0x01c, 0x01f) AM_READWRITE8(ICR9_ICR10_ICR11_ICR12_r, ICR9_ICR10_ICR11_ICR12_w, 0xffffffff)
- AM_RANGE(0x020, 0x023) AM_READWRITE8(ICR13_r, ICR13_w, 0xffffffff)
+ map(0x01c, 0x01f).rw(this, FUNC(mcf5206e_peripheral_device::ICR9_ICR10_ICR11_ICR12_r), FUNC(mcf5206e_peripheral_device::ICR9_ICR10_ICR11_ICR12_w));
+ map(0x020, 0x023).rw(this, FUNC(mcf5206e_peripheral_device::ICR13_r), FUNC(mcf5206e_peripheral_device::ICR13_w));
- AM_RANGE(0x034, 0x037) AM_READWRITE16(IMR_r, IMR_w, 0xffffffff)
+ map(0x034, 0x037).rw(this, FUNC(mcf5206e_peripheral_device::IMR_r), FUNC(mcf5206e_peripheral_device::IMR_w));
/* Chip Select registers */
- AM_RANGE(0x064, 0x067) AM_READWRITE16(CSAR0_r, CSAR0_w, 0xffffffff)
- AM_RANGE(0x068, 0x06b) AM_READWRITE (CSMR0_r, CSMR0_w)
- AM_RANGE(0x06c, 0x06f) AM_READWRITE16(CSCR0_r, CSCR0_w, 0xffffffff)
- AM_RANGE(0x070, 0x073) AM_READWRITE16(CSAR1_r, CSAR1_w, 0xffffffff)
- AM_RANGE(0x074, 0x077) AM_READWRITE (CSMR1_r, CSMR1_w)
- AM_RANGE(0x078, 0x07b) AM_READWRITE16(CSCR1_r, CSCR1_w, 0xffffffff)
- AM_RANGE(0x07c, 0x07f) AM_READWRITE16(CSAR2_r, CSAR2_w, 0xffffffff)
- AM_RANGE(0x080, 0x083) AM_READWRITE (CSMR2_r, CSMR2_w)
- AM_RANGE(0x084, 0x087) AM_READWRITE16(CSCR2_r, CSCR2_w, 0xffffffff)
- AM_RANGE(0x088, 0x08b) AM_READWRITE16(CSAR3_r, CSAR3_w, 0xffffffff)
- AM_RANGE(0x08c, 0x08f) AM_READWRITE (CSMR3_r, CSMR3_w)
- AM_RANGE(0x090, 0x093) AM_READWRITE16(CSCR3_r, CSCR3_w, 0xffffffff)
- AM_RANGE(0x094, 0x097) AM_READWRITE16(CSAR4_r, CSAR4_w, 0xffffffff)
- AM_RANGE(0x098, 0x09b) AM_READWRITE (CSMR4_r, CSMR4_w)
- AM_RANGE(0x09c, 0x09f) AM_READWRITE16(CSCR4_r, CSCR4_w, 0xffffffff)
- AM_RANGE(0x0a0, 0x0a3) AM_READWRITE16(CSAR5_r, CSAR5_w, 0xffffffff)
- AM_RANGE(0x0a4, 0x0a7) AM_READWRITE (CSMR5_r, CSMR5_w)
- AM_RANGE(0x0a8, 0x0ab) AM_READWRITE16(CSCR5_r, CSCR5_w, 0xffffffff)
- AM_RANGE(0x0ac, 0x0af) AM_READWRITE16(CSAR6_r, CSAR6_w, 0xffffffff)
- AM_RANGE(0x0b0, 0x0b3) AM_READWRITE (CSMR6_r, CSMR6_w)
- AM_RANGE(0x0b4, 0x0b7) AM_READWRITE16(CSCR6_r, CSCR6_w, 0xffffffff)
- AM_RANGE(0x0b8, 0x0bb) AM_READWRITE16(CSAR7_r, CSAR7_w, 0xffffffff)
- AM_RANGE(0x0bc, 0x0bf) AM_READWRITE (CSMR7_r, CSMR7_w)
- AM_RANGE(0x0c0, 0x0c3) AM_READWRITE16(CSCR7_r, CSCR7_w, 0xffffffff)
-
- AM_RANGE(0x0c4, 0x0c7) AM_READWRITE16(DMCR_r, DMCR_w, 0xffffffff)
- AM_RANGE(0x0c8, 0x0cb) AM_READWRITE16(PAR_r, PAR_w, 0xffffffff)
-
- AM_RANGE(0x100, 0x103) AM_READWRITE16(TMR1_r, TMR1_w, 0xffffffff)
- AM_RANGE(0x104, 0x107) AM_READWRITE16(TRR1_r, TRR1_w, 0xffffffff)
- AM_RANGE(0x10c, 0x10f) AM_READWRITE16(TCN1_r, TCN1_w, 0xffffffff)
- AM_RANGE(0x110, 0x113) AM_READWRITE8(TER1_r, TER1_w, 0xffffffff)
-
-
- AM_RANGE(0x1c4, 0x1c7) AM_READWRITE8(PPDDR_r, PPDDR_w, 0xffffffff)
- AM_RANGE(0x1c8, 0x1cb) AM_READWRITE8(PPDAT_r, PPDAT_w, 0xffffffff)
-
- AM_RANGE(0x1e4, 0x1e7) AM_READWRITE8(MFDR_r, MFDR_w, 0xffffffff)
- AM_RANGE(0x1e8, 0x1eb) AM_READWRITE8(MBCR_r, MBCR_w, 0xffffffff)
- AM_RANGE(0x1ec, 0x1ef) AM_READWRITE8(MBSR_r, MBSR_w, 0xffffffff)
- AM_RANGE(0x1f0, 0x1f3) AM_READWRITE8(MBDR_r, MBDR_w, 0xffffffff)
-ADDRESS_MAP_END
+ map(0x064, 0x067).rw(this, FUNC(mcf5206e_peripheral_device::CSAR0_r), FUNC(mcf5206e_peripheral_device::CSAR0_w));
+ map(0x068, 0x06b).rw(this, FUNC(mcf5206e_peripheral_device::CSMR0_r), FUNC(mcf5206e_peripheral_device::CSMR0_w));
+ map(0x06c, 0x06f).rw(this, FUNC(mcf5206e_peripheral_device::CSCR0_r), FUNC(mcf5206e_peripheral_device::CSCR0_w));
+ map(0x070, 0x073).rw(this, FUNC(mcf5206e_peripheral_device::CSAR1_r), FUNC(mcf5206e_peripheral_device::CSAR1_w));
+ map(0x074, 0x077).rw(this, FUNC(mcf5206e_peripheral_device::CSMR1_r), FUNC(mcf5206e_peripheral_device::CSMR1_w));
+ map(0x078, 0x07b).rw(this, FUNC(mcf5206e_peripheral_device::CSCR1_r), FUNC(mcf5206e_peripheral_device::CSCR1_w));
+ map(0x07c, 0x07f).rw(this, FUNC(mcf5206e_peripheral_device::CSAR2_r), FUNC(mcf5206e_peripheral_device::CSAR2_w));
+ map(0x080, 0x083).rw(this, FUNC(mcf5206e_peripheral_device::CSMR2_r), FUNC(mcf5206e_peripheral_device::CSMR2_w));
+ map(0x084, 0x087).rw(this, FUNC(mcf5206e_peripheral_device::CSCR2_r), FUNC(mcf5206e_peripheral_device::CSCR2_w));
+ map(0x088, 0x08b).rw(this, FUNC(mcf5206e_peripheral_device::CSAR3_r), FUNC(mcf5206e_peripheral_device::CSAR3_w));
+ map(0x08c, 0x08f).rw(this, FUNC(mcf5206e_peripheral_device::CSMR3_r), FUNC(mcf5206e_peripheral_device::CSMR3_w));
+ map(0x090, 0x093).rw(this, FUNC(mcf5206e_peripheral_device::CSCR3_r), FUNC(mcf5206e_peripheral_device::CSCR3_w));
+ map(0x094, 0x097).rw(this, FUNC(mcf5206e_peripheral_device::CSAR4_r), FUNC(mcf5206e_peripheral_device::CSAR4_w));
+ map(0x098, 0x09b).rw(this, FUNC(mcf5206e_peripheral_device::CSMR4_r), FUNC(mcf5206e_peripheral_device::CSMR4_w));
+ map(0x09c, 0x09f).rw(this, FUNC(mcf5206e_peripheral_device::CSCR4_r), FUNC(mcf5206e_peripheral_device::CSCR4_w));
+ map(0x0a0, 0x0a3).rw(this, FUNC(mcf5206e_peripheral_device::CSAR5_r), FUNC(mcf5206e_peripheral_device::CSAR5_w));
+ map(0x0a4, 0x0a7).rw(this, FUNC(mcf5206e_peripheral_device::CSMR5_r), FUNC(mcf5206e_peripheral_device::CSMR5_w));
+ map(0x0a8, 0x0ab).rw(this, FUNC(mcf5206e_peripheral_device::CSCR5_r), FUNC(mcf5206e_peripheral_device::CSCR5_w));
+ map(0x0ac, 0x0af).rw(this, FUNC(mcf5206e_peripheral_device::CSAR6_r), FUNC(mcf5206e_peripheral_device::CSAR6_w));
+ map(0x0b0, 0x0b3).rw(this, FUNC(mcf5206e_peripheral_device::CSMR6_r), FUNC(mcf5206e_peripheral_device::CSMR6_w));
+ map(0x0b4, 0x0b7).rw(this, FUNC(mcf5206e_peripheral_device::CSCR6_r), FUNC(mcf5206e_peripheral_device::CSCR6_w));
+ map(0x0b8, 0x0bb).rw(this, FUNC(mcf5206e_peripheral_device::CSAR7_r), FUNC(mcf5206e_peripheral_device::CSAR7_w));
+ map(0x0bc, 0x0bf).rw(this, FUNC(mcf5206e_peripheral_device::CSMR7_r), FUNC(mcf5206e_peripheral_device::CSMR7_w));
+ map(0x0c0, 0x0c3).rw(this, FUNC(mcf5206e_peripheral_device::CSCR7_r), FUNC(mcf5206e_peripheral_device::CSCR7_w));
+
+ map(0x0c4, 0x0c7).rw(this, FUNC(mcf5206e_peripheral_device::DMCR_r), FUNC(mcf5206e_peripheral_device::DMCR_w));
+ map(0x0c8, 0x0cb).rw(this, FUNC(mcf5206e_peripheral_device::PAR_r), FUNC(mcf5206e_peripheral_device::PAR_w));
+
+ map(0x100, 0x103).rw(this, FUNC(mcf5206e_peripheral_device::TMR1_r), FUNC(mcf5206e_peripheral_device::TMR1_w));
+ map(0x104, 0x107).rw(this, FUNC(mcf5206e_peripheral_device::TRR1_r), FUNC(mcf5206e_peripheral_device::TRR1_w));
+ map(0x10c, 0x10f).rw(this, FUNC(mcf5206e_peripheral_device::TCN1_r), FUNC(mcf5206e_peripheral_device::TCN1_w));
+ map(0x110, 0x113).rw(this, FUNC(mcf5206e_peripheral_device::TER1_r), FUNC(mcf5206e_peripheral_device::TER1_w));
+
+
+ map(0x1c4, 0x1c7).rw(this, FUNC(mcf5206e_peripheral_device::PPDDR_r), FUNC(mcf5206e_peripheral_device::PPDDR_w));
+ map(0x1c8, 0x1cb).rw(this, FUNC(mcf5206e_peripheral_device::PPDAT_r), FUNC(mcf5206e_peripheral_device::PPDAT_w));
+
+ map(0x1e4, 0x1e7).rw(this, FUNC(mcf5206e_peripheral_device::MFDR_r), FUNC(mcf5206e_peripheral_device::MFDR_w));
+ map(0x1e8, 0x1eb).rw(this, FUNC(mcf5206e_peripheral_device::MBCR_r), FUNC(mcf5206e_peripheral_device::MBCR_w));
+ map(0x1ec, 0x1ef).rw(this, FUNC(mcf5206e_peripheral_device::MBSR_r), FUNC(mcf5206e_peripheral_device::MBSR_w));
+ map(0x1f0, 0x1f3).rw(this, FUNC(mcf5206e_peripheral_device::MBDR_r), FUNC(mcf5206e_peripheral_device::MBDR_w));
+}
diff --git a/src/devices/machine/ncr5380n.cpp b/src/devices/machine/ncr5380n.cpp
index 5b141df4e3b..12c47254535 100644
--- a/src/devices/machine/ncr5380n.cpp
+++ b/src/devices/machine/ncr5380n.cpp
@@ -19,16 +19,17 @@
DEFINE_DEVICE_TYPE(NCR5380N, ncr5380n_device, "ncr5380_new", "NCR 5380 SCSI (new)")
-ADDRESS_MAP_START(ncr5380n_device::map)
- AM_RANGE(0x0, 0x0) AM_READWRITE(scsidata_r, outdata_w)
- AM_RANGE(0x1, 0x1) AM_READWRITE(icmd_r, icmd_w)
- AM_RANGE(0x2, 0x2) AM_READWRITE(mode_r, mode_w)
- AM_RANGE(0x3, 0x3) AM_READWRITE(command_r, command_w)
- AM_RANGE(0x4, 0x4) AM_READWRITE(status_r, selenable_w)
- AM_RANGE(0x5, 0x5) AM_READWRITE(busandstatus_r, startdmasend_w)
- AM_RANGE(0x6, 0x6) AM_READWRITE(indata_r, startdmatargetrx_w)
- AM_RANGE(0x7, 0x7) AM_READWRITE(resetparityirq_r, startdmainitrx_w)
-ADDRESS_MAP_END
+void ncr5380n_device::map(address_map &map)
+{
+ map(0x0, 0x0).rw(this, FUNC(ncr5380n_device::scsidata_r), FUNC(ncr5380n_device::outdata_w));
+ map(0x1, 0x1).rw(this, FUNC(ncr5380n_device::icmd_r), FUNC(ncr5380n_device::icmd_w));
+ map(0x2, 0x2).rw(this, FUNC(ncr5380n_device::mode_r), FUNC(ncr5380n_device::mode_w));
+ map(0x3, 0x3).rw(this, FUNC(ncr5380n_device::command_r), FUNC(ncr5380n_device::command_w));
+ map(0x4, 0x4).rw(this, FUNC(ncr5380n_device::status_r), FUNC(ncr5380n_device::selenable_w));
+ map(0x5, 0x5).rw(this, FUNC(ncr5380n_device::busandstatus_r), FUNC(ncr5380n_device::startdmasend_w));
+ map(0x6, 0x6).rw(this, FUNC(ncr5380n_device::indata_r), FUNC(ncr5380n_device::startdmatargetrx_w));
+ map(0x7, 0x7).rw(this, FUNC(ncr5380n_device::resetparityirq_r), FUNC(ncr5380n_device::startdmainitrx_w));
+}
ncr5380n_device::ncr5380n_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: nscsi_device(mconfig, NCR5380N, tag, owner, clock)
diff --git a/src/devices/machine/ncr5390.cpp b/src/devices/machine/ncr5390.cpp
index 16c3e8071ec..f5a211c77c9 100644
--- a/src/devices/machine/ncr5390.cpp
+++ b/src/devices/machine/ncr5390.cpp
@@ -25,18 +25,20 @@ void ncr5390_device::map(address_map &map)
map(0x9, 0x9).w(this, FUNC(ncr5390_device::clock_w));
}
-ADDRESS_MAP_START(ncr53c90a_device::map)
- AM_IMPORT_FROM(ncr5390_device::map)
+void ncr53c90a_device::map(address_map &map)
+{
+ ncr5390_device::map(map);
- AM_RANGE(0xb, 0xb) AM_READWRITE(conf2_r, conf2_w)
-ADDRESS_MAP_END
+ map(0xb, 0xb).rw(this, FUNC(ncr53c90a_device::conf2_r), FUNC(ncr53c90a_device::conf2_w));
+}
-ADDRESS_MAP_START(ncr53c94_device::map)
- AM_IMPORT_FROM(ncr53c90a_device::map)
+void ncr53c94_device::map(address_map &map)
+{
+ ncr53c90a_device::map(map);
- AM_RANGE(0xc, 0xc) AM_READWRITE(conf3_r, conf3_w)
- AM_RANGE(0xf, 0xf) AM_WRITE(fifo_align_w)
-ADDRESS_MAP_END
+ map(0xc, 0xc).rw(this, FUNC(ncr53c94_device::conf3_r), FUNC(ncr53c94_device::conf3_w));
+ map(0xf, 0xf).w(this, FUNC(ncr53c94_device::fifo_align_w));
+}
ncr5390_device::ncr5390_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
: nscsi_device(mconfig, type, tag, owner, clock)
diff --git a/src/devices/machine/pc_fdc.cpp b/src/devices/machine/pc_fdc.cpp
index cd3f6b41590..70f3a87f681 100644
--- a/src/devices/machine/pc_fdc.cpp
+++ b/src/devices/machine/pc_fdc.cpp
@@ -19,8 +19,9 @@
DEFINE_DEVICE_TYPE(PC_FDC_XT, pc_fdc_xt_device, "pc_fdc_xt", "PC FDC (XT)")
DEFINE_DEVICE_TYPE(PC_FDC_AT, pc_fdc_at_device, "pc_fdc_at", "PC FDC (AT)")
-ADDRESS_MAP_START(pc_fdc_family_device::map)
-ADDRESS_MAP_END
+void pc_fdc_family_device::map(address_map &map)
+{
+}
// The schematics show address decoding is minimal
void pc_fdc_xt_device::map(address_map &map)
@@ -34,11 +35,12 @@ void pc_fdc_xt_device::map(address_map &map)
// Decoding is through a PAL, so presumably complete
-ADDRESS_MAP_START(pc_fdc_at_device::map)
- AM_RANGE(0x2, 0x2) AM_READWRITE(dor_r, dor_w)
- AM_RANGE(0x4, 0x5) AM_DEVICE("upd765", upd765a_device, map)
- AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
-ADDRESS_MAP_END
+void pc_fdc_at_device::map(address_map &map)
+{
+ map(0x2, 0x2).rw(this, FUNC(pc_fdc_at_device::dor_r), FUNC(pc_fdc_at_device::dor_w));
+ map(0x4, 0x5).m("upd765", FUNC(upd765a_device::map));
+ map(0x7, 0x7).rw(this, FUNC(pc_fdc_at_device::dir_r), FUNC(pc_fdc_at_device::ccr_w));
+}
pc_fdc_family_device::pc_fdc_family_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
pc_fdc_interface(mconfig, type, tag, owner, clock), fdc(*this, "upd765"),
diff --git a/src/devices/machine/pci-ide.cpp b/src/devices/machine/pci-ide.cpp
index 4e542850b2f..e775599fbc7 100644
--- a/src/devices/machine/pci-ide.cpp
+++ b/src/devices/machine/pci-ide.cpp
@@ -16,36 +16,42 @@ ide_pci_device::ide_pci_device(const machine_config &mconfig, const char *tag, d
{
}
-ADDRESS_MAP_START(ide_pci_device::config_map)
- AM_IMPORT_FROM(pci_device::config_map)
- AM_RANGE(0x08, 0x0b) AM_WRITE8(prog_if_w, 0x0000ff00)
- AM_RANGE(0x10, 0x1f) AM_READWRITE(address_base_r, address_base_w)
- AM_RANGE(0x2c, 0x2f) AM_WRITE(subsystem_id_w);
- AM_RANGE(0x40, 0x5f) AM_READWRITE(pcictrl_r, pcictrl_w)
- AM_RANGE(0x70, 0x77) AM_DEVREADWRITE("ide", bus_master_ide_controller_device, bmdma_r, bmdma_w) // PCI646
- AM_RANGE(0x78, 0x7f) AM_DEVREADWRITE("ide2", bus_master_ide_controller_device, bmdma_r, bmdma_w) // PCI646
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(ide_pci_device::chan1_data_command_map)
- AM_RANGE(0x0, 0x7) AM_DEVREADWRITE("ide", bus_master_ide_controller_device, read_cs0, write_cs0)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(ide_pci_device::chan1_control_map)
- AM_RANGE(0x0, 0x3) AM_READWRITE(ide_read_cs1, ide_write_cs1)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(ide_pci_device::chan2_data_command_map)
- AM_RANGE(0x0, 0x7) AM_DEVREADWRITE("ide2", bus_master_ide_controller_device, read_cs0, write_cs0)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(ide_pci_device::chan2_control_map)
- AM_RANGE(0x0, 0x3) AM_READWRITE(ide2_read_cs1, ide2_write_cs1)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(ide_pci_device::bus_master_map)
- AM_RANGE(0x0, 0x7) AM_DEVREADWRITE("ide", bus_master_ide_controller_device, bmdma_r, bmdma_w)
- AM_RANGE(0x8, 0xf) AM_DEVREADWRITE("ide2", bus_master_ide_controller_device, bmdma_r, bmdma_w)
-ADDRESS_MAP_END
+void ide_pci_device::config_map(address_map &map)
+{
+ pci_device::config_map(map);
+ map(0x09, 0x09).w(this, FUNC(ide_pci_device::prog_if_w));
+ map(0x10, 0x1f).rw(this, FUNC(ide_pci_device::address_base_r), FUNC(ide_pci_device::address_base_w));
+ map(0x2c, 0x2f).w(this, FUNC(ide_pci_device::subsystem_id_w));
+ map(0x40, 0x5f).rw(this, FUNC(ide_pci_device::pcictrl_r), FUNC(ide_pci_device::pcictrl_w));
+ map(0x70, 0x77).rw("ide", FUNC(bus_master_ide_controller_device::bmdma_r), FUNC(bus_master_ide_controller_device::bmdma_w)); // PCI646
+ map(0x78, 0x7f).rw("ide2", FUNC(bus_master_ide_controller_device::bmdma_r), FUNC(bus_master_ide_controller_device::bmdma_w)); // PCI646
+}
+
+void ide_pci_device::chan1_data_command_map(address_map &map)
+{
+ map(0x0, 0x7).rw("ide", FUNC(bus_master_ide_controller_device::read_cs0), FUNC(bus_master_ide_controller_device::write_cs0));
+}
+
+void ide_pci_device::chan1_control_map(address_map &map)
+{
+ map(0x0, 0x3).rw(this, FUNC(ide_pci_device::ide_read_cs1), FUNC(ide_pci_device::ide_write_cs1));
+}
+
+void ide_pci_device::chan2_data_command_map(address_map &map)
+{
+ map(0x0, 0x7).rw("ide2", FUNC(bus_master_ide_controller_device::read_cs0), FUNC(bus_master_ide_controller_device::write_cs0));
+}
+
+void ide_pci_device::chan2_control_map(address_map &map)
+{
+ map(0x0, 0x3).rw(this, FUNC(ide_pci_device::ide2_read_cs1), FUNC(ide_pci_device::ide2_write_cs1));
+}
+
+void ide_pci_device::bus_master_map(address_map &map)
+{
+ map(0x0, 0x7).rw("ide", FUNC(bus_master_ide_controller_device::bmdma_r), FUNC(bus_master_ide_controller_device::bmdma_w));
+ map(0x8, 0xf).rw("ide2", FUNC(bus_master_ide_controller_device::bmdma_r), FUNC(bus_master_ide_controller_device::bmdma_w));
+}
MACHINE_CONFIG_START(ide_pci_device::device_add_mconfig)
MCFG_BUS_MASTER_IDE_CONTROLLER_ADD("ide", ata_devices, "hdd", "cdrom", true)
diff --git a/src/devices/machine/pci-sata.cpp b/src/devices/machine/pci-sata.cpp
index 70f2a49fa06..1332fea71d5 100644
--- a/src/devices/machine/pci-sata.cpp
+++ b/src/devices/machine/pci-sata.cpp
@@ -10,23 +10,29 @@ sata_device::sata_device(const machine_config &mconfig, const char *tag, device_
{
}
-ADDRESS_MAP_START(sata_device::primary_command_map)
-ADDRESS_MAP_END
+void sata_device::primary_command_map(address_map &map)
+{
+}
-ADDRESS_MAP_START(sata_device::primary_control_map)
-ADDRESS_MAP_END
+void sata_device::primary_control_map(address_map &map)
+{
+}
-ADDRESS_MAP_START(sata_device::secondary_command_map)
-ADDRESS_MAP_END
+void sata_device::secondary_command_map(address_map &map)
+{
+}
-ADDRESS_MAP_START(sata_device::secondary_control_map)
-ADDRESS_MAP_END
+void sata_device::secondary_control_map(address_map &map)
+{
+}
-ADDRESS_MAP_START(sata_device::bus_master_map)
-ADDRESS_MAP_END
+void sata_device::bus_master_map(address_map &map)
+{
+}
-ADDRESS_MAP_START(sata_device::ide_command_posting_map)
-ADDRESS_MAP_END
+void sata_device::ide_command_posting_map(address_map &map)
+{
+}
void sata_device::device_start()
diff --git a/src/devices/machine/pci-smbus.cpp b/src/devices/machine/pci-smbus.cpp
index 62f4f0570f7..c758e13a55d 100644
--- a/src/devices/machine/pci-smbus.cpp
+++ b/src/devices/machine/pci-smbus.cpp
@@ -5,27 +5,28 @@
DEFINE_DEVICE_TYPE(SMBUS, smbus_device, "smbus", "SMBus interface")
-ADDRESS_MAP_START(smbus_device::map)
- AM_RANGE(0x00, 0x03) AM_READWRITE8 (hst_sts_r, hst_sts_w, 0x000000ff)
- AM_RANGE(0x00, 0x03) AM_READWRITE8 (hst_cnt_r, hst_cnt_w, 0x00ff0000)
- AM_RANGE(0x00, 0x03) AM_READWRITE8 (hst_cmd_r, hst_cmd_w, 0xff000000)
- AM_RANGE(0x04, 0x07) AM_READWRITE8 (xmit_slva_r, xmit_slva_w, 0x000000ff)
- AM_RANGE(0x04, 0x07) AM_READWRITE8 (hst_d0_r, hst_d0_w, 0x0000ff00)
- AM_RANGE(0x04, 0x07) AM_READWRITE8 (hst_d1_r, hst_d1_w, 0x00ff0000)
- AM_RANGE(0x04, 0x07) AM_READWRITE8 (host_block_db_r, host_block_db_w, 0xff000000)
- AM_RANGE(0x08, 0x0b) AM_READWRITE8 (pec_r, pec_w, 0x000000ff)
- AM_RANGE(0x08, 0x0b) AM_READWRITE8 (rcv_slva_r, rcv_slva_w, 0x0000ff00)
- AM_RANGE(0x08, 0x0b) AM_READWRITE16(slv_data_r, slv_data_w, 0xffff0000)
- AM_RANGE(0x0c, 0x0f) AM_READWRITE8 (aux_sts_r, aux_sts_w, 0x000000ff)
- AM_RANGE(0x0c, 0x0f) AM_READWRITE8 (aux_ctl_r, aux_ctl_w, 0x0000ff00)
- AM_RANGE(0x0c, 0x0f) AM_READWRITE8 (smlink_pin_ctl_r, smlink_pin_ctl_w, 0x00ff0000)
- AM_RANGE(0x0c, 0x0f) AM_READWRITE8 (smbus_pin_ctl_r, smbus_pin_ctl_w, 0xff000000)
- AM_RANGE(0x10, 0x13) AM_READWRITE8 (slv_sts_r, slv_sts_w, 0x000000ff)
- AM_RANGE(0x10, 0x13) AM_READWRITE8 (slv_cmd_r, slv_cmd_w, 0x0000ff00)
- AM_RANGE(0x14, 0x17) AM_READ8 (notify_daddr_r, 0x000000ff)
- AM_RANGE(0x14, 0x17) AM_READ8 (notify_dlow_r, 0x00ff0000)
- AM_RANGE(0x14, 0x17) AM_READ8 (notify_dhigh_r, 0xff000000)
-ADDRESS_MAP_END
+void smbus_device::map(address_map &map)
+{
+ map(0x00, 0x00).rw(this, FUNC(smbus_device::hst_sts_r), FUNC(smbus_device::hst_sts_w));
+ map(0x02, 0x02).rw(this, FUNC(smbus_device::hst_cnt_r), FUNC(smbus_device::hst_cnt_w));
+ map(0x03, 0x03).rw(this, FUNC(smbus_device::hst_cmd_r), FUNC(smbus_device::hst_cmd_w));
+ map(0x04, 0x04).rw(this, FUNC(smbus_device::xmit_slva_r), FUNC(smbus_device::xmit_slva_w));
+ map(0x05, 0x05).rw(this, FUNC(smbus_device::hst_d0_r), FUNC(smbus_device::hst_d0_w));
+ map(0x06, 0x06).rw(this, FUNC(smbus_device::hst_d1_r), FUNC(smbus_device::hst_d1_w));
+ map(0x07, 0x07).rw(this, FUNC(smbus_device::host_block_db_r), FUNC(smbus_device::host_block_db_w));
+ map(0x08, 0x08).rw(this, FUNC(smbus_device::pec_r), FUNC(smbus_device::pec_w));
+ map(0x09, 0x09).rw(this, FUNC(smbus_device::rcv_slva_r), FUNC(smbus_device::rcv_slva_w));
+ map(0x0a, 0x0b).rw(this, FUNC(smbus_device::slv_data_r), FUNC(smbus_device::slv_data_w));
+ map(0x0c, 0x0c).rw(this, FUNC(smbus_device::aux_sts_r), FUNC(smbus_device::aux_sts_w));
+ map(0x0d, 0x0d).rw(this, FUNC(smbus_device::aux_ctl_r), FUNC(smbus_device::aux_ctl_w));
+ map(0x0e, 0x0e).rw(this, FUNC(smbus_device::smlink_pin_ctl_r), FUNC(smbus_device::smlink_pin_ctl_w));
+ map(0x0f, 0x0f).rw(this, FUNC(smbus_device::smbus_pin_ctl_r), FUNC(smbus_device::smbus_pin_ctl_w));
+ map(0x10, 0x10).rw(this, FUNC(smbus_device::slv_sts_r), FUNC(smbus_device::slv_sts_w));
+ map(0x11, 0x11).rw(this, FUNC(smbus_device::slv_cmd_r), FUNC(smbus_device::slv_cmd_w));
+ map(0x14, 0x14).r(this, FUNC(smbus_device::notify_daddr_r));
+ map(0x16, 0x16).r(this, FUNC(smbus_device::notify_dlow_r));
+ map(0x17, 0x17).r(this, FUNC(smbus_device::notify_dhigh_r));
+}
smbus_device::smbus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, SMBUS, tag, owner, clock)
diff --git a/src/devices/machine/pci-usb.cpp b/src/devices/machine/pci-usb.cpp
index d2a5604ff67..0b45c1bd9ee 100644
--- a/src/devices/machine/pci-usb.cpp
+++ b/src/devices/machine/pci-usb.cpp
@@ -7,8 +7,9 @@ DEFINE_DEVICE_TYPE(USB_OHCI, usb_ohci_device, "usb_ohci", "USB 1.1 OHCI interfac
DEFINE_DEVICE_TYPE(USB_UHCI, usb_uhci_device, "usb_uhci", "USB 1.1 UHCI interface")
DEFINE_DEVICE_TYPE(USB_EHCI, usb_ehci_device, "usb_ehci", "USB 2.0 EHCI interface")
-ADDRESS_MAP_START(usb_ohci_device::map)
-ADDRESS_MAP_END
+void usb_ohci_device::map(address_map &map)
+{
+}
usb_ohci_device::usb_ohci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, USB_OHCI, tag, owner, clock)
@@ -26,8 +27,9 @@ void usb_ohci_device::device_reset()
pci_device::device_reset();
}
-ADDRESS_MAP_START(usb_uhci_device::map)
-ADDRESS_MAP_END
+void usb_uhci_device::map(address_map &map)
+{
+}
usb_uhci_device::usb_uhci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, USB_UHCI, tag, owner, clock)
@@ -45,8 +47,9 @@ void usb_uhci_device::device_reset()
pci_device::device_reset();
}
-ADDRESS_MAP_START(usb_ehci_device::map)
-ADDRESS_MAP_END
+void usb_ehci_device::map(address_map &map)
+{
+}
usb_ehci_device::usb_ehci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, USB_EHCI, tag, owner, clock)
diff --git a/src/devices/machine/pci.cpp b/src/devices/machine/pci.cpp
index 34314ce585e..9ea5de0ace1 100644
--- a/src/devices/machine/pci.cpp
+++ b/src/devices/machine/pci.cpp
@@ -7,60 +7,62 @@ DEFINE_DEVICE_TYPE(PCI_ROOT, pci_root_device, "pci_root", "PCI virtual roo
DEFINE_DEVICE_TYPE(PCI_BRIDGE, pci_bridge_device, "pci_bridge", "PCI-PCI Bridge")
-ADDRESS_MAP_START(pci_device::config_map)
- AM_RANGE(0x00, 0x03) AM_READ16 (vendor_r, 0x0000ffff)
- AM_RANGE(0x00, 0x03) AM_READ16 (device_r, 0xffff0000)
- AM_RANGE(0x04, 0x07) AM_READWRITE16(command_r, command_w, 0x0000ffff)
- AM_RANGE(0x04, 0x07) AM_READ16 (status_r, 0xffff0000)
- AM_RANGE(0x08, 0x0b) AM_READ (class_rev_r)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (cache_line_size_r, 0x000000ff)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (latency_timer_r, 0x0000ff00)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (header_type_r, 0x00ff0000)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (bist_r, 0xff000000)
- AM_RANGE(0x0c, 0x0f) AM_WRITENOP
- AM_RANGE(0x10, 0x27) AM_READWRITE (address_base_r, address_base_w)
+void pci_device::config_map(address_map &map)
+{
+ map(0x00, 0x01).r(this, FUNC(pci_device::vendor_r));
+ map(0x02, 0x03).r(this, FUNC(pci_device::device_r));
+ map(0x04, 0x05).rw(this, FUNC(pci_device::command_r), FUNC(pci_device::command_w));
+ map(0x06, 0x07).r(this, FUNC(pci_device::status_r));
+ map(0x08, 0x0b).r(this, FUNC(pci_device::class_rev_r));
+ map(0x0c, 0x0c).r(this, FUNC(pci_device::cache_line_size_r));
+ map(0x0d, 0x0d).r(this, FUNC(pci_device::latency_timer_r));
+ map(0x0e, 0x0e).r(this, FUNC(pci_device::header_type_r));
+ map(0x0f, 0x0f).r(this, FUNC(pci_device::bist_r));
+ map(0x0c, 0x0f).nopw();
+ map(0x10, 0x27).rw(this, FUNC(pci_device::address_base_r), FUNC(pci_device::address_base_w));
// Cardbus CIS pointer at 28
- AM_RANGE(0x2c, 0x2f) AM_READ16 (subvendor_r, 0x0000ffff)
- AM_RANGE(0x2c, 0x2f) AM_READ16 (subsystem_r, 0xffff0000)
- AM_RANGE(0x2c, 0x2f) AM_WRITENOP
- AM_RANGE(0x30, 0x33) AM_READWRITE (expansion_base_r, expansion_base_w)
- AM_RANGE(0x34, 0x37) AM_READ8 (capptr_r, 0x000000ff)
- AM_RANGE(0x3c, 0x3f) AM_READWRITE8(interrupt_line_r, interrupt_line_w, 0x000000ff)
- AM_RANGE(0x3c, 0x3f) AM_READWRITE8(interrupt_pin_r, interrupt_pin_w, 0x0000ff00)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(pci_bridge_device::config_map)
- AM_RANGE(0x00, 0x03) AM_READ16 (vendor_r, 0x0000ffff)
- AM_RANGE(0x00, 0x03) AM_READ16 (device_r, 0xffff0000)
- AM_RANGE(0x04, 0x07) AM_READWRITE16(command_r, command_w, 0x0000ffff)
- AM_RANGE(0x04, 0x07) AM_READ16 (status_r, 0xffff0000)
- AM_RANGE(0x08, 0x0b) AM_READ (class_rev_r)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (cache_line_size_r, 0x000000ff)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (latency_timer_r, 0x0000ff00)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (header_type_r, 0x00ff0000)
- AM_RANGE(0x0c, 0x0f) AM_READ8 (bist_r, 0xff000000)
- AM_RANGE(0x10, 0x17) AM_READWRITE (b_address_base_r, b_address_base_w)
- AM_RANGE(0x18, 0x1b) AM_READWRITE8 (primary_bus_r, primary_bus_w, 0x000000ff)
- AM_RANGE(0x18, 0x1b) AM_READWRITE8 (secondary_bus_r, secondary_bus_w, 0x0000ff00)
- AM_RANGE(0x18, 0x1b) AM_READWRITE8 (subordinate_bus_r, subordinate_bus_w, 0x00ff0000)
- AM_RANGE(0x18, 0x1b) AM_READWRITE8 (secondary_latency_r, secondary_latency_w, 0xff000000)
- AM_RANGE(0x1c, 0x1f) AM_READWRITE8 (iobase_r, iobase_w, 0x000000ff)
- AM_RANGE(0x1c, 0x1f) AM_READWRITE8 (iolimit_r, iolimit_w, 0x0000ff00)
- AM_RANGE(0x1c, 0x1f) AM_READWRITE16(secondary_status_r, secondary_status_w, 0xffff0000)
- AM_RANGE(0x20, 0x23) AM_READWRITE16(memory_base_r, memory_base_w, 0x0000ffff)
- AM_RANGE(0x20, 0x23) AM_READWRITE16(memory_limit_r, memory_limit_w, 0xffff0000)
- AM_RANGE(0x24, 0x27) AM_READWRITE16(prefetch_base_r, prefetch_base_w, 0x0000ffff)
- AM_RANGE(0x24, 0x27) AM_READWRITE16(prefetch_limit_r, prefetch_limit_w, 0xffff0000)
- AM_RANGE(0x28, 0x2b) AM_READWRITE (prefetch_baseu_r, prefetch_baseu_w)
- AM_RANGE(0x2c, 0x2f) AM_READWRITE (prefetch_limitu_r, prefetch_limitu_w)
- AM_RANGE(0x30, 0x33) AM_READWRITE16(iobaseu_r, iobaseu_w, 0x0000ffff)
- AM_RANGE(0x30, 0x33) AM_READWRITE16(iolimitu_r, iolimitu_w, 0xffff0000)
- AM_RANGE(0x34, 0x37) AM_READ8 (capptr_r, 0x000000ff)
- AM_RANGE(0x38, 0x3b) AM_READWRITE (expansion_base_r, expansion_base_w)
- AM_RANGE(0x3c, 0x3f) AM_READWRITE8 (interrupt_line_r, interrupt_line_w, 0x000000ff)
- AM_RANGE(0x3c, 0x3f) AM_READWRITE8 (interrupt_pin_r, interrupt_pin_w, 0x0000ff00)
- AM_RANGE(0x3c, 0x3f) AM_READWRITE16(bridge_control_r, bridge_control_w, 0xffff0000)
-ADDRESS_MAP_END
+ map(0x2c, 0x2d).r(this, FUNC(pci_device::subvendor_r));
+ map(0x2e, 0x2f).r(this, FUNC(pci_device::subsystem_r));
+ map(0x2c, 0x2f).nopw();
+ map(0x30, 0x33).rw(this, FUNC(pci_device::expansion_base_r), FUNC(pci_device::expansion_base_w));
+ map(0x34, 0x34).r(this, FUNC(pci_device::capptr_r));
+ map(0x3c, 0x3c).rw(this, FUNC(pci_device::interrupt_line_r), FUNC(pci_device::interrupt_line_w));
+ map(0x3d, 0x3d).rw(this, FUNC(pci_device::interrupt_pin_r), FUNC(pci_device::interrupt_pin_w));
+}
+
+void pci_bridge_device::config_map(address_map &map)
+{
+ map(0x00, 0x01).r(this, FUNC(pci_bridge_device::vendor_r));
+ map(0x02, 0x03).r(this, FUNC(pci_bridge_device::device_r));
+ map(0x04, 0x05).rw(this, FUNC(pci_bridge_device::command_r), FUNC(pci_bridge_device::command_w));
+ map(0x06, 0x07).r(this, FUNC(pci_bridge_device::status_r));
+ map(0x08, 0x0b).r(this, FUNC(pci_bridge_device::class_rev_r));
+ map(0x0c, 0x0c).r(this, FUNC(pci_bridge_device::cache_line_size_r));
+ map(0x0d, 0x0d).r(this, FUNC(pci_bridge_device::latency_timer_r));
+ map(0x0e, 0x0e).r(this, FUNC(pci_bridge_device::header_type_r));
+ map(0x0f, 0x0f).r(this, FUNC(pci_bridge_device::bist_r));
+ map(0x10, 0x17).rw(this, FUNC(pci_bridge_device::b_address_base_r), FUNC(pci_bridge_device::b_address_base_w));
+ map(0x18, 0x18).rw(this, FUNC(pci_bridge_device::primary_bus_r), FUNC(pci_bridge_device::primary_bus_w));
+ map(0x19, 0x19).rw(this, FUNC(pci_bridge_device::secondary_bus_r), FUNC(pci_bridge_device::secondary_bus_w));
+ map(0x1a, 0x1a).rw(this, FUNC(pci_bridge_device::subordinate_bus_r), FUNC(pci_bridge_device::subordinate_bus_w));
+ map(0x1b, 0x1b).rw(this, FUNC(pci_bridge_device::secondary_latency_r), FUNC(pci_bridge_device::secondary_latency_w));
+ map(0x1c, 0x1c).rw(this, FUNC(pci_bridge_device::iobase_r), FUNC(pci_bridge_device::iobase_w));
+ map(0x1d, 0x1d).rw(this, FUNC(pci_bridge_device::iolimit_r), FUNC(pci_bridge_device::iolimit_w));
+ map(0x1e, 0x1f).rw(this, FUNC(pci_bridge_device::secondary_status_r), FUNC(pci_bridge_device::secondary_status_w));
+ map(0x20, 0x21).rw(this, FUNC(pci_bridge_device::memory_base_r), FUNC(pci_bridge_device::memory_base_w));
+ map(0x22, 0x23).rw(this, FUNC(pci_bridge_device::memory_limit_r), FUNC(pci_bridge_device::memory_limit_w));
+ map(0x24, 0x25).rw(this, FUNC(pci_bridge_device::prefetch_base_r), FUNC(pci_bridge_device::prefetch_base_w));
+ map(0x26, 0x27).rw(this, FUNC(pci_bridge_device::prefetch_limit_r), FUNC(pci_bridge_device::prefetch_limit_w));
+ map(0x28, 0x2b).rw(this, FUNC(pci_bridge_device::prefetch_baseu_r), FUNC(pci_bridge_device::prefetch_baseu_w));
+ map(0x2c, 0x2f).rw(this, FUNC(pci_bridge_device::prefetch_limitu_r), FUNC(pci_bridge_device::prefetch_limitu_w));
+ map(0x30, 0x31).rw(this, FUNC(pci_bridge_device::iobaseu_r), FUNC(pci_bridge_device::iobaseu_w));
+ map(0x32, 0x33).rw(this, FUNC(pci_bridge_device::iolimitu_r), FUNC(pci_bridge_device::iolimitu_w));
+ map(0x34, 0x34).r(this, FUNC(pci_bridge_device::capptr_r));
+ map(0x38, 0x3b).rw(this, FUNC(pci_bridge_device::expansion_base_r), FUNC(pci_bridge_device::expansion_base_w));
+ map(0x3c, 0x3c).rw(this, FUNC(pci_bridge_device::interrupt_line_r), FUNC(pci_bridge_device::interrupt_line_w));
+ map(0x3d, 0x3d).rw(this, FUNC(pci_bridge_device::interrupt_pin_r), FUNC(pci_bridge_device::interrupt_pin_w));
+ map(0x3e, 0x3f).rw(this, FUNC(pci_bridge_device::bridge_control_r), FUNC(pci_bridge_device::bridge_control_w));
+}
pci_device::pci_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, type, tag, owner, clock)
@@ -817,10 +819,11 @@ void agp_bridge_device::device_reset()
-ADDRESS_MAP_START(pci_host_device::io_configuration_access_map)
- AM_RANGE(0xcf8, 0xcfb) AM_READWRITE(config_address_r, config_address_w)
- AM_RANGE(0xcfc, 0xcff) AM_READWRITE(config_data_r, config_data_w)
-ADDRESS_MAP_END
+void pci_host_device::io_configuration_access_map(address_map &map)
+{
+ map(0xcf8, 0xcfb).rw(this, FUNC(pci_host_device::config_address_r), FUNC(pci_host_device::config_address_w));
+ map(0xcfc, 0xcff).rw(this, FUNC(pci_host_device::config_data_r), FUNC(pci_host_device::config_data_w));
+}
pci_host_device::pci_host_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
diff --git a/src/devices/machine/pci9050.cpp b/src/devices/machine/pci9050.cpp
index c7e734c4b80..27b3885b63b 100644
--- a/src/devices/machine/pci9050.cpp
+++ b/src/devices/machine/pci9050.cpp
@@ -26,17 +26,18 @@
DEFINE_DEVICE_TYPE(PCI9050, pci9050_device, "pci9050", "PLX PCI9050 PCI to Local Bus Bridge")
-ADDRESS_MAP_START(pci9050_device::map)
- AM_RANGE(0x00, 0x0f) AM_READWRITE(lasrr_r, lasrr_w )
- AM_RANGE(0x10, 0x13) AM_READWRITE(eromrr_r, eromrr_w )
- AM_RANGE(0x14, 0x23) AM_READWRITE(lasba_r, lasba_w )
- AM_RANGE(0x24, 0x27) AM_READWRITE(eromba_r, eromba_w )
- AM_RANGE(0x28, 0x37) AM_READWRITE(lasbrd_r, lasbrd_w )
- AM_RANGE(0x38, 0x3b) AM_READWRITE(erombrd_r, erombrd_w)
- AM_RANGE(0x3c, 0x4b) AM_READWRITE(csbase_r, csbase_w )
- AM_RANGE(0x4c, 0x4f) AM_READWRITE(intcsr_r, intcsr_w )
- AM_RANGE(0x50, 0x53) AM_READWRITE(cntrl_r, cntrl_w )
-ADDRESS_MAP_END
+void pci9050_device::map(address_map &map)
+{
+ map(0x00, 0x0f).rw(this, FUNC(pci9050_device::lasrr_r), FUNC(pci9050_device::lasrr_w));
+ map(0x10, 0x13).rw(this, FUNC(pci9050_device::eromrr_r), FUNC(pci9050_device::eromrr_w));
+ map(0x14, 0x23).rw(this, FUNC(pci9050_device::lasba_r), FUNC(pci9050_device::lasba_w));
+ map(0x24, 0x27).rw(this, FUNC(pci9050_device::eromba_r), FUNC(pci9050_device::eromba_w));
+ map(0x28, 0x37).rw(this, FUNC(pci9050_device::lasbrd_r), FUNC(pci9050_device::lasbrd_w));
+ map(0x38, 0x3b).rw(this, FUNC(pci9050_device::erombrd_r), FUNC(pci9050_device::erombrd_w));
+ map(0x3c, 0x4b).rw(this, FUNC(pci9050_device::csbase_r), FUNC(pci9050_device::csbase_w));
+ map(0x4c, 0x4f).rw(this, FUNC(pci9050_device::intcsr_r), FUNC(pci9050_device::intcsr_w));
+ map(0x50, 0x53).rw(this, FUNC(pci9050_device::cntrl_r), FUNC(pci9050_device::cntrl_w));
+}
pci9050_device::pci9050_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_device(mconfig, PCI9050, tag, owner, clock),
diff --git a/src/devices/machine/sis85c496.cpp b/src/devices/machine/sis85c496.cpp
index 3b50be61b9f..c2068efa63d 100644
--- a/src/devices/machine/sis85c496.cpp
+++ b/src/devices/machine/sis85c496.cpp
@@ -19,29 +19,31 @@
DEFINE_DEVICE_TYPE(SIS85C496, sis85c496_host_device, "sis85c496", "SiS 85C496/497 chipset")
-ADDRESS_MAP_START(sis85c496_host_device::config_map)
- AM_IMPORT_FROM(pci_host_device::config_map)
- AM_RANGE(0x40, 0x43) AM_READWRITE8(dram_config_r, dram_config_w, 0x000000ff)
- AM_RANGE(0x44, 0x47) AM_READWRITE16(shadow_config_r, shadow_config_w, 0x0000ffff)
- AM_RANGE(0x58, 0x5b) AM_READWRITE8(smram_ctrl_r, smram_ctrl_w, 0x00ff0000)
- AM_RANGE(0xc8, 0xcb) AM_READWRITE(mailbox_r, mailbox_w)
- AM_RANGE(0xd0, 0xd3) AM_READWRITE8(bios_config_r, bios_config_w, 0x000000ff)
- AM_RANGE(0xd0, 0xd3) AM_READWRITE8(isa_decoder_r, isa_decoder_w, 0x0000ff00)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(sis85c496_host_device::internal_io_map)
- AM_IMPORT_FROM(pci_host_device::io_configuration_access_map)
- AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", am9517a_device, read, write, 0xffffffff)
- AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_master", pic8259_device, read, write, 0xffffffff)
- AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8254_device, read, write, 0xffffffff)
- AM_RANGE(0x0060, 0x0063) AM_READWRITE8(at_keybc_r, at_keybc_w, 0xffffffff);
- AM_RANGE(0x0064, 0x0067) AM_DEVREADWRITE8("keybc", at_keyboard_controller_device, status_r, command_w, 0xffffffff);
- AM_RANGE(0x0070, 0x007f) AM_DEVREADWRITE8("rtc", ds12885_device, read, write, 0xffffffff);
- AM_RANGE(0x0080, 0x009f) AM_READWRITE8(at_page8_r, at_page8_w, 0xffffffff);
- AM_RANGE(0x00a0, 0x00bf) AM_DEVREADWRITE8("pic8259_slave", pic8259_device, read, write, 0xffffffff)
- AM_RANGE(0x00c0, 0x00df) AM_READWRITE8(at_dma8237_2_r, at_dma8237_2_w, 0xffffffff);
- AM_RANGE(0x00e0, 0x00ef) AM_NOP
-ADDRESS_MAP_END
+void sis85c496_host_device::config_map(address_map &map)
+{
+ pci_host_device::config_map(map);
+ map(0x40, 0x40).rw(this, FUNC(sis85c496_host_device::dram_config_r), FUNC(sis85c496_host_device::dram_config_w));
+ map(0x44, 0x45).rw(this, FUNC(sis85c496_host_device::shadow_config_r), FUNC(sis85c496_host_device::shadow_config_w));
+ map(0x5a, 0x5a).rw(this, FUNC(sis85c496_host_device::smram_ctrl_r), FUNC(sis85c496_host_device::smram_ctrl_w));
+ map(0xc8, 0xcb).rw(this, FUNC(sis85c496_host_device::mailbox_r), FUNC(sis85c496_host_device::mailbox_w));
+ map(0xd0, 0xd0).rw(this, FUNC(sis85c496_host_device::bios_config_r), FUNC(sis85c496_host_device::bios_config_w));
+ map(0xd1, 0xd1).rw(this, FUNC(sis85c496_host_device::isa_decoder_r), FUNC(sis85c496_host_device::isa_decoder_w));
+}
+
+void sis85c496_host_device::internal_io_map(address_map &map)
+{
+ pci_host_device::io_configuration_access_map(map);
+ map(0x0000, 0x001f).rw("dma8237_1", FUNC(am9517a_device::read), FUNC(am9517a_device::write));
+ map(0x0020, 0x003f).rw("pic8259_master", FUNC(pic8259_device::read), FUNC(pic8259_device::write));
+ map(0x0040, 0x005f).rw("pit8254", FUNC(pit8254_device::read), FUNC(pit8254_device::write));
+ map(0x0060, 0x0063).rw(this, FUNC(sis85c496_host_device::at_keybc_r), FUNC(sis85c496_host_device::at_keybc_w));
+ map(0x0064, 0x0067).rw("keybc", FUNC(at_keyboard_controller_device::status_r), FUNC(at_keyboard_controller_device::command_w));
+ map(0x0070, 0x007f).rw("rtc", FUNC(ds12885_device::read), FUNC(ds12885_device::write));
+ map(0x0080, 0x009f).rw(this, FUNC(sis85c496_host_device::at_page8_r), FUNC(sis85c496_host_device::at_page8_w));
+ map(0x00a0, 0x00bf).rw("pic8259_slave", FUNC(pic8259_device::read), FUNC(pic8259_device::write));
+ map(0x00c0, 0x00df).rw(this, FUNC(sis85c496_host_device::at_dma8237_2_r), FUNC(sis85c496_host_device::at_dma8237_2_w));
+ map(0x00e0, 0x00ef).noprw();
+}
MACHINE_CONFIG_START(sis85c496_host_device::device_add_mconfig)
MCFG_DEVICE_ADD("pit8254", PIT8254, 0)
diff --git a/src/devices/machine/smpc.cpp b/src/devices/machine/smpc.cpp
index da92c329237..b2f60232e76 100644
--- a/src/devices/machine/smpc.cpp
+++ b/src/devices/machine/smpc.cpp
@@ -178,20 +178,21 @@ DEFINE_DEVICE_TYPE(SMPC_HLE, smpc_hle_device, "smpc_hle", "Sega Saturn SMPC HLE
// TODO: use DEVICE_ADDRESS_MAP once this fatalerror is fixed:
// "uplift_submaps unhandled case: range straddling slots."
-ADDRESS_MAP_START(smpc_hle_device::smpc_regs)
+void smpc_hle_device::smpc_regs(address_map &map)
+{
// ADDRESS_MAP_UNMAP_HIGH
- AM_RANGE(0x00, 0x0d) AM_WRITE(ireg_w)
- AM_RANGE(0x1f, 0x1f) AM_WRITE(command_register_w)
- AM_RANGE(0x20, 0x5f) AM_READ(oreg_r)
- AM_RANGE(0x61, 0x61) AM_READ(status_register_r)
- AM_RANGE(0x63, 0x63) AM_READWRITE(status_flag_r, status_flag_w)
- AM_RANGE(0x75, 0x75) AM_READWRITE(pdr1_r, pdr1_w)
- AM_RANGE(0x77, 0x77) AM_READWRITE(pdr2_r, pdr2_w)
- AM_RANGE(0x79, 0x79) AM_WRITE(ddr1_w)
- AM_RANGE(0x7b, 0x7b) AM_WRITE(ddr2_w)
- AM_RANGE(0x7d, 0x7d) AM_WRITE(iosel_w)
- AM_RANGE(0x7f, 0x7f) AM_WRITE(exle_w)
-ADDRESS_MAP_END
+ map(0x00, 0x0d).w(this, FUNC(smpc_hle_device::ireg_w));
+ map(0x1f, 0x1f).w(this, FUNC(smpc_hle_device::command_register_w));
+ map(0x20, 0x5f).r(this, FUNC(smpc_hle_device::oreg_r));
+ map(0x61, 0x61).r(this, FUNC(smpc_hle_device::status_register_r));
+ map(0x63, 0x63).rw(this, FUNC(smpc_hle_device::status_flag_r), FUNC(smpc_hle_device::status_flag_w));
+ map(0x75, 0x75).rw(this, FUNC(smpc_hle_device::pdr1_r), FUNC(smpc_hle_device::pdr1_w));
+ map(0x77, 0x77).rw(this, FUNC(smpc_hle_device::pdr2_r), FUNC(smpc_hle_device::pdr2_w));
+ map(0x79, 0x79).w(this, FUNC(smpc_hle_device::ddr1_w));
+ map(0x7b, 0x7b).w(this, FUNC(smpc_hle_device::ddr2_w));
+ map(0x7d, 0x7d).w(this, FUNC(smpc_hle_device::iosel_w));
+ map(0x7f, 0x7f).w(this, FUNC(smpc_hle_device::exle_w));
+}
//**************************************************************************
// LIVE DEVICE
diff --git a/src/devices/machine/tc009xlvc.cpp b/src/devices/machine/tc009xlvc.cpp
index 808dbba0574..586dce136d7 100644
--- a/src/devices/machine/tc009xlvc.cpp
+++ b/src/devices/machine/tc009xlvc.cpp
@@ -156,16 +156,17 @@ WRITE8_MEMBER(tc0091lvc_device::tc0091lvc_spr_w)
tx_tilemap->mark_all_dirty();
}
-ADDRESS_MAP_START(tc0091lvc_device::tc0091lvc_map8)
- AM_RANGE(0x014000, 0x017fff) AM_READWRITE(tc0091lvc_pcg1_r, tc0091lvc_pcg1_w)
- AM_RANGE(0x018000, 0x018fff) AM_READWRITE(tc0091lvc_vram0_r, tc0091lvc_vram0_w)
- AM_RANGE(0x019000, 0x019fff) AM_READWRITE(tc0091lvc_vram1_r, tc0091lvc_vram1_w)
- AM_RANGE(0x01a000, 0x01afff) AM_READWRITE(tc0091lvc_tvram_r, tc0091lvc_tvram_w)
- AM_RANGE(0x01b000, 0x01bfff) AM_READWRITE(tc0091lvc_spr_r, tc0091lvc_spr_w)
- AM_RANGE(0x01c000, 0x01ffff) AM_READWRITE(tc0091lvc_pcg2_r, tc0091lvc_pcg2_w)
- AM_RANGE(0x040000, 0x05ffff) AM_READWRITE(tc0091lvc_bitmap_r, tc0091lvc_bitmap_w)
- AM_RANGE(0x080000, 0x0801ff) AM_READWRITE(tc0091lvc_paletteram_r,tc0091lvc_paletteram_w)
-ADDRESS_MAP_END
+void tc0091lvc_device::tc0091lvc_map8(address_map &map)
+{
+ map(0x014000, 0x017fff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_pcg1_r), FUNC(tc0091lvc_device::tc0091lvc_pcg1_w));
+ map(0x018000, 0x018fff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_vram0_r), FUNC(tc0091lvc_device::tc0091lvc_vram0_w));
+ map(0x019000, 0x019fff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_vram1_r), FUNC(tc0091lvc_device::tc0091lvc_vram1_w));
+ map(0x01a000, 0x01afff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_tvram_r), FUNC(tc0091lvc_device::tc0091lvc_tvram_w));
+ map(0x01b000, 0x01bfff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_spr_r), FUNC(tc0091lvc_device::tc0091lvc_spr_w));
+ map(0x01c000, 0x01ffff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_pcg2_r), FUNC(tc0091lvc_device::tc0091lvc_pcg2_w));
+ map(0x040000, 0x05ffff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_bitmap_r), FUNC(tc0091lvc_device::tc0091lvc_bitmap_w));
+ map(0x080000, 0x0801ff).rw(this, FUNC(tc0091lvc_device::tc0091lvc_paletteram_r), FUNC(tc0091lvc_device::tc0091lvc_paletteram_w));
+}
tc0091lvc_device::tc0091lvc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, TC0091LVC, tag, owner, clock)
diff --git a/src/devices/machine/tmp68301.cpp b/src/devices/machine/tmp68301.cpp
index 142bce4dde8..06b2d3624ce 100644
--- a/src/devices/machine/tmp68301.cpp
+++ b/src/devices/machine/tmp68301.cpp
@@ -21,20 +21,21 @@
DEFINE_DEVICE_TYPE(TMP68301, tmp68301_device, "tmp68301", "Toshiba TMP68301")
-ADDRESS_MAP_START(tmp68301_device::tmp68301_regs)
+void tmp68301_device::tmp68301_regs(address_map &map)
+{
// AM_RANGE(0x000,0x3ff) AM_RAM
- AM_RANGE(0x080,0x093) AM_READWRITE8(icr_r, icr_w,0x00ff)
+ map(0x080, 0x093).rw(this, FUNC(tmp68301_device::icr_r), FUNC(tmp68301_device::icr_w)).umask16(0x00ff);
- AM_RANGE(0x094,0x095) AM_READWRITE(imr_r,imr_w)
- AM_RANGE(0x098,0x099) AM_READWRITE(iisr_r,iisr_w)
+ map(0x094, 0x095).rw(this, FUNC(tmp68301_device::imr_r), FUNC(tmp68301_device::imr_w));
+ map(0x098, 0x099).rw(this, FUNC(tmp68301_device::iisr_r), FUNC(tmp68301_device::iisr_w));
/* Parallel Port */
- AM_RANGE(0x100,0x101) AM_READWRITE(pdir_r,pdir_w)
- AM_RANGE(0x10a,0x10b) AM_READWRITE(pdr_r,pdr_w)
+ map(0x100, 0x101).rw(this, FUNC(tmp68301_device::pdir_r), FUNC(tmp68301_device::pdir_w));
+ map(0x10a, 0x10b).rw(this, FUNC(tmp68301_device::pdr_r), FUNC(tmp68301_device::pdr_w));
/* Serial Port */
- AM_RANGE(0x18e,0x18f) AM_READWRITE(scr_r,scr_w)
-ADDRESS_MAP_END
+ map(0x18e, 0x18f).rw(this, FUNC(tmp68301_device::scr_r), FUNC(tmp68301_device::scr_w));
+}
// IRQ Mask register, 0x94
READ16_MEMBER(tmp68301_device::imr_r)
diff --git a/src/devices/machine/upd765.cpp b/src/devices/machine/upd765.cpp
index d8ae17ecd31..a43e6cb2e5d 100644
--- a/src/devices/machine/upd765.cpp
+++ b/src/devices/machine/upd765.cpp
@@ -28,10 +28,11 @@ void upd765a_device::map(address_map &map)
map(0x1, 0x1).rw(this, FUNC(upd765a_device::fifo_r), FUNC(upd765a_device::fifo_w));
}
-ADDRESS_MAP_START(upd765b_device::map)
- AM_RANGE(0x0, 0x0) AM_READ(msr_r)
- AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
-ADDRESS_MAP_END
+void upd765b_device::map(address_map &map)
+{
+ map(0x0, 0x0).r(this, FUNC(upd765b_device::msr_r));
+ map(0x1, 0x1).rw(this, FUNC(upd765b_device::fifo_r), FUNC(upd765b_device::fifo_w));
+}
void i8272a_device::map(address_map &map)
{
@@ -45,10 +46,11 @@ void upd72065_device::map(address_map &map)
map(0x1, 0x1).rw(this, FUNC(upd72065_device::fifo_r), FUNC(upd72065_device::fifo_w));
}
-ADDRESS_MAP_START(i82072_device::map)
- AM_RANGE(0x0, 0x0) AM_READWRITE(msr_r, dsr_w)
- AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
-ADDRESS_MAP_END
+void i82072_device::map(address_map &map)
+{
+ map(0x0, 0x0).rw(this, FUNC(i82072_device::msr_r), FUNC(i82072_device::dsr_w));
+ map(0x1, 0x1).rw(this, FUNC(i82072_device::fifo_r), FUNC(i82072_device::fifo_w));
+}
void smc37c78_device::map(address_map &map)
{
@@ -103,25 +105,28 @@ void pc8477a_device::map(address_map &map)
map(0x7, 0x7).rw(this, FUNC(pc8477a_device::dir_r), FUNC(pc8477a_device::ccr_w));
}
-ADDRESS_MAP_START(wd37c65c_device::map)
- AM_RANGE(0x0, 0x0) AM_READ(msr_r)
- AM_RANGE(0x1, 0x1) AM_READWRITE(fifo_r, fifo_w)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(mcs3201_device::map)
- AM_RANGE(0x0, 0x0) AM_READ(input_r)
- AM_RANGE(0x2, 0x2) AM_WRITE(dor_w)
- AM_RANGE(0x4, 0x4) AM_READ(msr_r)
- AM_RANGE(0x5, 0x5) AM_READWRITE(fifo_r, fifo_w)
- AM_RANGE(0x7, 0x7) AM_READWRITE(dir_r, ccr_w)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(tc8566af_device::map)
- AM_RANGE(0x2, 0x2) AM_WRITE(dor_w)
- AM_RANGE(0x3, 0x3) AM_WRITE(cr1_w)
- AM_RANGE(0x4, 0x4) AM_READ(msr_r)
- AM_RANGE(0x5, 0x5) AM_READWRITE(fifo_r, fifo_w)
-ADDRESS_MAP_END
+void wd37c65c_device::map(address_map &map)
+{
+ map(0x0, 0x0).r(this, FUNC(wd37c65c_device::msr_r));
+ map(0x1, 0x1).rw(this, FUNC(wd37c65c_device::fifo_r), FUNC(wd37c65c_device::fifo_w));
+}
+
+void mcs3201_device::map(address_map &map)
+{
+ map(0x0, 0x0).r(this, FUNC(mcs3201_device::input_r));
+ map(0x2, 0x2).w(this, FUNC(mcs3201_device::dor_w));
+ map(0x4, 0x4).r(this, FUNC(mcs3201_device::msr_r));
+ map(0x5, 0x5).rw(this, FUNC(mcs3201_device::fifo_r), FUNC(mcs3201_device::fifo_w));
+ map(0x7, 0x7).rw(this, FUNC(mcs3201_device::dir_r), FUNC(mcs3201_device::ccr_w));
+}
+
+void tc8566af_device::map(address_map &map)
+{
+ map(0x2, 0x2).w(this, FUNC(tc8566af_device::dor_w));
+ map(0x3, 0x3).w(this, FUNC(tc8566af_device::cr1_w));
+ map(0x4, 0x4).r(this, FUNC(tc8566af_device::msr_r));
+ map(0x5, 0x5).rw(this, FUNC(tc8566af_device::fifo_r), FUNC(tc8566af_device::fifo_w));
+}
constexpr int upd765_family_device::rates[4];
diff --git a/src/devices/machine/vrc4373.cpp b/src/devices/machine/vrc4373.cpp
index 7f99c290bf3..9bc3c5629be 100644
--- a/src/devices/machine/vrc4373.cpp
+++ b/src/devices/machine/vrc4373.cpp
@@ -70,25 +70,29 @@
DEFINE_DEVICE_TYPE(VRC4373, vrc4373_device, "vrc4373", "NEC VRC4373 System Controller")
-ADDRESS_MAP_START(vrc4373_device::config_map)
- AM_IMPORT_FROM(pci_bridge_device::config_map)
- AM_RANGE(0x40, 0x43) AM_READWRITE (pcictrl_r, pcictrl_w)
-ADDRESS_MAP_END
+void vrc4373_device::config_map(address_map &map)
+{
+ pci_bridge_device::config_map(map);
+ map(0x40, 0x43).rw(this, FUNC(vrc4373_device::pcictrl_r), FUNC(vrc4373_device::pcictrl_w));
+}
// cpu i/f map
-ADDRESS_MAP_START(vrc4373_device::cpu_map)
- AM_RANGE(0x00000000, 0x0000007b) AM_READWRITE( cpu_if_r, cpu_if_w)
-ADDRESS_MAP_END
+void vrc4373_device::cpu_map(address_map &map)
+{
+ map(0x00000000, 0x0000007b).rw(this, FUNC(vrc4373_device::cpu_if_r), FUNC(vrc4373_device::cpu_if_w));
+}
// Target Window 1 map
-ADDRESS_MAP_START(vrc4373_device::target1_map)
- AM_RANGE(0x00000000, 0xFFFFFFFF) AM_READWRITE( target1_r, target1_w)
-ADDRESS_MAP_END
+void vrc4373_device::target1_map(address_map &map)
+{
+ map(0x00000000, 0xFFFFFFFF).rw(this, FUNC(vrc4373_device::target1_r), FUNC(vrc4373_device::target1_w));
+}
// Target Window 2 map
-ADDRESS_MAP_START(vrc4373_device::target2_map)
- AM_RANGE(0x00000000, 0xFFFFFFFF) AM_READWRITE( target2_r, target2_w)
-ADDRESS_MAP_END
+void vrc4373_device::target2_map(address_map &map)
+{
+ map(0x00000000, 0xFFFFFFFF).rw(this, FUNC(vrc4373_device::target2_r), FUNC(vrc4373_device::target2_w));
+}
vrc4373_device::vrc4373_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: pci_host_device(mconfig, VRC4373, tag, owner, clock),
diff --git a/src/devices/machine/vrc5074.cpp b/src/devices/machine/vrc5074.cpp
index d3afc8e2c93..fe64be7fc89 100644
--- a/src/devices/machine/vrc5074.cpp
+++ b/src/devices/machine/vrc5074.cpp
@@ -120,24 +120,28 @@
DEFINE_DEVICE_TYPE(VRC5074, vrc5074_device, "vrc5074", "NEC VRC5074 System Controller")
-ADDRESS_MAP_START(vrc5074_device::config_map)
- AM_IMPORT_FROM(pci_bridge_device::config_map)
- AM_RANGE(0x00000018, 0x00000027) AM_READWRITE(sdram_addr_r, sdram_addr_w)
-ADDRESS_MAP_END
+void vrc5074_device::config_map(address_map &map)
+{
+ pci_bridge_device::config_map(map);
+ map(0x00000018, 0x00000027).rw(this, FUNC(vrc5074_device::sdram_addr_r), FUNC(vrc5074_device::sdram_addr_w));
+}
// cpu i/f map
-ADDRESS_MAP_START(vrc5074_device::cpu_map)
- AM_RANGE(0x00000000, 0x000001ff) AM_READWRITE(cpu_reg_r, cpu_reg_w)
-ADDRESS_MAP_END
+void vrc5074_device::cpu_map(address_map &map)
+{
+ map(0x00000000, 0x000001ff).rw(this, FUNC(vrc5074_device::cpu_reg_r), FUNC(vrc5074_device::cpu_reg_w));
+}
-ADDRESS_MAP_START(vrc5074_device::serial_map)
- AM_RANGE(0x00000000, 0x0000003f) AM_READWRITE(serial_r, serial_w)
-ADDRESS_MAP_END
+void vrc5074_device::serial_map(address_map &map)
+{
+ map(0x00000000, 0x0000003f).rw(this, FUNC(vrc5074_device::serial_r), FUNC(vrc5074_device::serial_w));
+}
// Target Window 1 map
-ADDRESS_MAP_START(vrc5074_device::target1_map)
- AM_RANGE(0x00000000, 0xFFFFFFFF) AM_READWRITE(target1_r, target1_w)
-ADDRESS_MAP_END
+void vrc5074_device::target1_map(address_map &map)
+{
+ map(0x00000000, 0xFFFFFFFF).rw(this, FUNC(vrc5074_device::target1_r), FUNC(vrc5074_device::target1_w));
+}
MACHINE_CONFIG_START(vrc5074_device::device_add_mconfig)
MCFG_DEVICE_ADD("uart", NS16550, SYSTEM_CLOCK / 12)
diff --git a/src/devices/machine/x2212.cpp b/src/devices/machine/x2212.cpp
index 4d3327827ff..f02b34f4cca 100644
--- a/src/devices/machine/x2212.cpp
+++ b/src/devices/machine/x2212.cpp
@@ -16,13 +16,15 @@
// GLOBAL VARIABLES
//**************************************************************************
-ADDRESS_MAP_START(x2212_device::x2212_sram_map)
- AM_RANGE(0x0000, 0x00ff) AM_RAM
-ADDRESS_MAP_END
+void x2212_device::x2212_sram_map(address_map &map)
+{
+ map(0x0000, 0x00ff).ram();
+}
-ADDRESS_MAP_START(x2212_device::x2212_e2prom_map)
- AM_RANGE(0x0000, 0x00ff) AM_RAM
-ADDRESS_MAP_END
+void x2212_device::x2212_e2prom_map(address_map &map)
+{
+ map(0x0000, 0x00ff).ram();
+}