summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu')
-rw-r--r--src/emu/addrmap.h3
-rw-r--r--src/emu/cpu/cop400/cop400.c14
-rw-r--r--src/emu/cpu/dsp56k/dsp56k.c4
-rw-r--r--src/emu/cpu/e132xs/e132xs.c12
-rw-r--r--src/emu/cpu/h83002/h8_16.c12
-rw-r--r--src/emu/cpu/h83002/h8_8.c2
-rw-r--r--src/emu/cpu/m37710/m37710.c2
-rw-r--r--src/emu/cpu/m6502/m4510.c2
-rw-r--r--src/emu/cpu/m6502/m6502.c2
-rw-r--r--src/emu/cpu/m6502/m6509.c2
-rw-r--r--src/emu/cpu/m6800/m6800.c2
-rw-r--r--src/emu/cpu/m68000/m68kcpu.c4
-rw-r--r--src/emu/cpu/mb88xx/mb88xx.c8
-rw-r--r--src/emu/cpu/mcs48/mcs48.c12
-rw-r--r--src/emu/cpu/mcs51/mcs51.c8
-rw-r--r--src/emu/cpu/pic16c5x/pic16c5x.c20
-rw-r--r--src/emu/cpu/pic16c62x/pic16c62x.c24
-rw-r--r--src/emu/cpu/powerpc/ppccom.c2
-rw-r--r--src/emu/cpu/sh2/sh2drc.c2
-rw-r--r--src/emu/cpu/sh4/sh4.c6
-rw-r--r--src/emu/cpu/sharc/sharc.c2
-rw-r--r--src/emu/cpu/tlcs90/tlcs90.c8
-rw-r--r--src/emu/cpu/tlcs900/tlcs900.c2
-rw-r--r--src/emu/cpu/tms0980/tms0980.c12
-rw-r--r--src/emu/cpu/tms32010/tms32010.c4
-rw-r--r--src/emu/cpu/tms32031/tms32031.c4
-rw-r--r--src/emu/cpu/tms32051/tms32051.c4
-rw-r--r--src/emu/cpu/tms7000/tms7000.c2
-rw-r--r--src/emu/cpu/z8/z8.c4
-rw-r--r--src/emu/machine/at28c16.c2
-rw-r--r--src/emu/machine/eeprom.c4
-rw-r--r--src/emu/machine/er2055.c2
-rw-r--r--src/emu/machine/i2cmem.c2
-rw-r--r--src/emu/machine/i8155.c2
-rw-r--r--src/emu/machine/i8355.c2
-rw-r--r--src/emu/machine/intelfsh.c16
-rw-r--r--src/emu/machine/x2212.c4
-rw-r--r--src/emu/sound/c352.c2
-rw-r--r--src/emu/sound/cdp1869.c2
-rw-r--r--src/emu/sound/es5503.c2
-rw-r--r--src/emu/sound/okim6295.c2
-rw-r--r--src/emu/sound/okim9810.c2
-rw-r--r--src/emu/video/315_5124.c2
-rw-r--r--src/emu/video/crt9007.c2
-rw-r--r--src/emu/video/h63484.c2
-rw-r--r--src/emu/video/hd61830.c2
-rw-r--r--src/emu/video/ramdac.c2
-rw-r--r--src/emu/video/sed1330.c2
48 files changed, 121 insertions, 120 deletions
diff --git a/src/emu/addrmap.h b/src/emu/addrmap.h
index af1eae23b04..34c4769a35c 100644
--- a/src/emu/addrmap.h
+++ b/src/emu/addrmap.h
@@ -465,7 +465,7 @@ public:
// start/end tags for the address map
#define ADDRESS_MAP_NAME(_name) construct_address_map_##_name
-#define ADDRESS_MAP_START(_name, _space, _bits) \
+#define ADDRESS_MAP_START(_name, _space, _bits, _class) \
ATTR_COLD void ADDRESS_MAP_NAME(_name)(address_map &map, const device_t &device) \
{ \
typedef read##_bits##_delegate read_delegate; \
@@ -473,6 +473,7 @@ ATTR_COLD void ADDRESS_MAP_NAME(_name)(address_map &map, const device_t &device)
address_map_entry##_bits *curentry = NULL; \
(void)curentry; \
map.configure(_space, _bits); \
+ typedef _class drivdata_class; \
#define ADDRESS_MAP_END \
}
diff --git a/src/emu/cpu/cop400/cop400.c b/src/emu/cpu/cop400/cop400.c
index f629e7913bd..e21d2a91008 100644
--- a/src/emu/cpu/cop400/cop400.c
+++ b/src/emu/cpu/cop400/cop400.c
@@ -1236,32 +1236,32 @@ static CPU_EXECUTE( cop400 )
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( program_512b, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( program_512b, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_1kb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( program_1kb, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_2kb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( program_2kb, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_32b, AS_DATA, 8 )
+static ADDRESS_MAP_START( data_32b, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x1f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_64b, AS_DATA, 8 )
+static ADDRESS_MAP_START( data_64b, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( data_128b, AS_DATA, 8 )
+static ADDRESS_MAP_START( data_128b, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
#ifdef UNUSED_CODE
-static ADDRESS_MAP_START( data_160b, AS_DATA, 8 )
+static ADDRESS_MAP_START( data_160b, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x9f) AM_RAM
ADDRESS_MAP_END
#endif
diff --git a/src/emu/cpu/dsp56k/dsp56k.c b/src/emu/cpu/dsp56k/dsp56k.c
index 565ac5484e8..078114e0864 100644
--- a/src/emu/cpu/dsp56k/dsp56k.c
+++ b/src/emu/cpu/dsp56k/dsp56k.c
@@ -368,12 +368,12 @@ extern CPU_DISASSEMBLE( dsp56k );
/****************************************************************************
* Internal Memory Maps
****************************************************************************/
-static ADDRESS_MAP_START( dsp56156_program_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( dsp56156_program_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x0000,0x07ff) AM_READWRITE(DSP56K::program_r, DSP56K::program_w) /* 1-5 */
// AM_RANGE(0x2f00,0x2fff) AM_ROM /* 1-5 PROM reserved memory. Is this the right spot for it? */
ADDRESS_MAP_END
-static ADDRESS_MAP_START( dsp56156_x_data_map, AS_DATA, 16 )
+static ADDRESS_MAP_START( dsp56156_x_data_map, AS_DATA, 16, legacy_cpu_device )
AM_RANGE(0x0000,0x07ff) AM_RAM /* 1-5 */
AM_RANGE(0xffc0,0xffff) AM_READWRITE(DSP56K::peripheral_register_r, DSP56K::peripheral_register_w) /* 1-5 On-chip peripheral registers memory mapped in data space */
ADDRESS_MAP_END
diff --git a/src/emu/cpu/e132xs/e132xs.c b/src/emu/cpu/e132xs/e132xs.c
index d93620aba96..aa4bc248914 100644
--- a/src/emu/cpu/e132xs/e132xs.c
+++ b/src/emu/cpu/e132xs/e132xs.c
@@ -375,27 +375,27 @@ static void check_interrupts(hyperstone_state *cpustate);
// 4Kb IRAM (On-Chip Memory)
-static ADDRESS_MAP_START( e116_4k_iram_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( e116_4k_iram_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM AM_MIRROR(0x1ffff000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( e132_4k_iram_map, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( e132_4k_iram_map, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM AM_MIRROR(0x1ffff000)
ADDRESS_MAP_END
// 8Kb IRAM (On-Chip Memory)
+static ADDRESS_MAP_START( e116_8k_iram_map, AS_PROGRAM, 16, legacy_cpu_device )
-static ADDRESS_MAP_START( e116_8k_iram_map, AS_PROGRAM, 16 )
AM_RANGE(0xc0000000, 0xc0001fff) AM_RAM AM_MIRROR(0x1fffe000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( e132_8k_iram_map, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( e132_8k_iram_map, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0xc0000000, 0xc0001fff) AM_RAM AM_MIRROR(0x1fffe000)
ADDRESS_MAP_END
@@ -403,13 +403,13 @@ ADDRESS_MAP_END
// 16Kb IRAM (On-Chip Memory)
-static ADDRESS_MAP_START( e116_16k_iram_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( e116_16k_iram_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0xc0000000, 0xc0003fff) AM_RAM AM_MIRROR(0x1fffc000)
ADDRESS_MAP_END
-static ADDRESS_MAP_START( e132_16k_iram_map, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( e132_16k_iram_map, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0xc0000000, 0xc0003fff) AM_RAM AM_MIRROR(0x1fffc000)
ADDRESS_MAP_END
diff --git a/src/emu/cpu/h83002/h8_16.c b/src/emu/cpu/h83002/h8_16.c
index a506fbb09ca..0fa2e65a7fc 100644
--- a/src/emu/cpu/h83002/h8_16.c
+++ b/src/emu/cpu/h83002/h8_16.c
@@ -684,36 +684,36 @@ READ16_HANDLER( h8s2323_per_regs_r )
}
// On-board RAM and peripherals
-static ADDRESS_MAP_START( h8_3002_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( h8_3002_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
// 512B RAM
AM_RANGE(0xfffd10, 0xffff0f) AM_RAM
AM_RANGE(0xffff10, 0xffffff) AM_READWRITE( h8_itu_r, h8_itu_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h8_3044_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( h8_3044_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
// 32k ROM, 2k RAM
AM_RANGE(0xfff710, 0xffff0f) AM_RAM
AM_RANGE(0xffff1c, 0xffffff) AM_READWRITE( h8_itu_r, h8_itu_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h8_3007_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( h8_3007_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
// ROM-less, 4k RAM
AM_RANGE(0xfee000, 0xfee0ff) AM_READWRITE( h8_3007_itu1_r, h8_3007_itu1_w )
AM_RANGE(0xffef20, 0xffff1f) AM_RAM
AM_RANGE(0xffff20, 0xffffe9) AM_READWRITE( h8_3007_itu_r, h8_3007_itu_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h8s_2241_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( h8s_2241_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE( 0xFFEC00, 0xFFFBFF ) AM_RAM // on-chip ram
AM_RANGE( 0xFFFE40, 0xFFFFFF ) AM_READWRITE( h8s2241_per_regs_r, h8s2241_per_regs_w ) // internal i/o registers
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h8s_2246_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( h8s_2246_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE( 0xFFDC00, 0xFFFBFF ) AM_RAM // on-chip ram
AM_RANGE( 0xFFFE40, 0xFFFFFF ) AM_READWRITE( h8s2246_per_regs_r, h8s2246_per_regs_w ) // internal i/o registers
ADDRESS_MAP_END
-static ADDRESS_MAP_START( h8s_2323_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( h8s_2323_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE( 0xFFDC00, 0xFFFBFF ) AM_RAM // on-chip ram
AM_RANGE( 0xFFFE40, 0xFFFFFF ) AM_READWRITE( h8s2323_per_regs_r, h8s2323_per_regs_w ) // internal i/o registers
ADDRESS_MAP_END
diff --git a/src/emu/cpu/h83002/h8_8.c b/src/emu/cpu/h83002/h8_8.c
index 386305dccb9..2fd51484b9c 100644
--- a/src/emu/cpu/h83002/h8_8.c
+++ b/src/emu/cpu/h83002/h8_8.c
@@ -732,7 +732,7 @@ static TIMER_CALLBACK( h8_timer_3_cb )
timer_8bit_expire(h8, 1, 1);
}
-static ADDRESS_MAP_START( h8_3334_internal_map, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( h8_3334_internal_map, AS_PROGRAM, 8, legacy_cpu_device )
// 512B RAM
AM_RANGE(0xfb80, 0xff7f) AM_RAM
AM_RANGE(0xff88, 0xffff) AM_READWRITE( h8330_itu_r, h8330_itu_w )
diff --git a/src/emu/cpu/m37710/m37710.c b/src/emu/cpu/m37710/m37710.c
index 3b842420a93..dff96c1ff76 100644
--- a/src/emu/cpu/m37710/m37710.c
+++ b/src/emu/cpu/m37710/m37710.c
@@ -1079,7 +1079,7 @@ static CPU_SET_INFO( m37710 )
}
// On-board RAM and peripherals
-static ADDRESS_MAP_START( m37710_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( m37710_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000000, 0x00007f) AM_READWRITE(m37710_internal_word_r, m37710_internal_word_w)
AM_RANGE(0x000080, 0x00027f) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/cpu/m6502/m4510.c b/src/emu/cpu/m6502/m4510.c
index 4e824ccb188..c4c94d430dc 100644
--- a/src/emu/cpu/m6502/m4510.c
+++ b/src/emu/cpu/m6502/m4510.c
@@ -393,7 +393,7 @@ static WRITE8_HANDLER( m4510_write_0000 )
cpustate->out_port_func(0, m4510_get_port(downcast<legacy_cpu_device *>(&space->device())));
}
-static ADDRESS_MAP_START(m4510_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(m4510_mem, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x0000, 0x0001) AM_READWRITE(m4510_read_0000, m4510_write_0000)
ADDRESS_MAP_END
diff --git a/src/emu/cpu/m6502/m6502.c b/src/emu/cpu/m6502/m6502.c
index 3029959fc7e..962be4215da 100644
--- a/src/emu/cpu/m6502/m6502.c
+++ b/src/emu/cpu/m6502/m6502.c
@@ -399,7 +399,7 @@ static WRITE8_HANDLER( m6510_write_0000 )
cpustate->out_port_func(cpustate->ddr, cpustate->port & cpustate->ddr);
}
-static ADDRESS_MAP_START(m6510_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(m6510_mem, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x0000, 0x0001) AM_READWRITE(m6510_read_0000, m6510_write_0000)
ADDRESS_MAP_END
diff --git a/src/emu/cpu/m6502/m6509.c b/src/emu/cpu/m6502/m6509.c
index 995a935096f..056b040e250 100644
--- a/src/emu/cpu/m6502/m6509.c
+++ b/src/emu/cpu/m6502/m6509.c
@@ -130,7 +130,7 @@ static WRITE8_HANDLER( m6509_write_00001 )
cpustate->ind_bank.b.h2=data&0xf;
}
-static ADDRESS_MAP_START(m6509_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(m6509_mem, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x00000, 0x00000) AM_MIRROR(0xF0000) AM_READWRITE(m6509_read_00000, m6509_write_00000)
AM_RANGE(0x00001, 0x00001) AM_MIRROR(0xF0000) AM_READWRITE(m6509_read_00001, m6509_write_00001)
ADDRESS_MAP_END
diff --git a/src/emu/cpu/m6800/m6800.c b/src/emu/cpu/m6800/m6800.c
index 9963e7399e5..db46c3f78ae 100644
--- a/src/emu/cpu/m6800/m6800.c
+++ b/src/emu/cpu/m6800/m6800.c
@@ -1276,7 +1276,7 @@ static CPU_INIT( m6803 )
}
}
-static ADDRESS_MAP_START(m6803_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(m6803_mem, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r, m6801_io_w)
AM_RANGE(0x0020, 0x007f) AM_NOP /* unused */
AM_RANGE(0x0080, 0x00ff) AM_RAM /* 6803 internal RAM */
diff --git a/src/emu/cpu/m68000/m68kcpu.c b/src/emu/cpu/m68000/m68kcpu.c
index 64fbce30363..bc841997f5b 100644
--- a/src/emu/cpu/m68000/m68kcpu.c
+++ b/src/emu/cpu/m68000/m68kcpu.c
@@ -2017,7 +2017,7 @@ static WRITE16_HANDLER( m68307_internal_base_w )
}
}
-static ADDRESS_MAP_START( m68307_internal_map, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( m68307_internal_map, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000000f0, 0x000000ff) AM_READWRITE(m68307_internal_base_r, m68307_internal_base_w)
ADDRESS_MAP_END
@@ -2694,7 +2694,7 @@ static WRITE32_HANDLER( m68340_internal_base_w )
}
-static ADDRESS_MAP_START( m68340_internal_map, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( m68340_internal_map, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0x0003ff00, 0x0003ff03) AM_READWRITE( m68340_internal_base_r, m68340_internal_base_w)
ADDRESS_MAP_END
diff --git a/src/emu/cpu/mb88xx/mb88xx.c b/src/emu/cpu/mb88xx/mb88xx.c
index 7ede63decac..48e9e609a2e 100644
--- a/src/emu/cpu/mb88xx/mb88xx.c
+++ b/src/emu/cpu/mb88xx/mb88xx.c
@@ -874,19 +874,19 @@ static CPU_EXECUTE( mb88 )
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(program_10bit, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_10bit, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_11bit, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_11bit, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_6bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_6bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_7bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_7bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/cpu/mcs48/mcs48.c b/src/emu/cpu/mcs48/mcs48.c
index 658244c2a81..01e332a9b3c 100644
--- a/src/emu/cpu/mcs48/mcs48.c
+++ b/src/emu/cpu/mcs48/mcs48.c
@@ -1225,27 +1225,27 @@ void upi41_master_w(device_t *_device, UINT8 a0, UINT8 data)
***************************************************************************/
/* FIXME: the memory maps should probably support rom banking for EA */
-static ADDRESS_MAP_START(program_10bit, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_10bit, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_11bit, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_11bit, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_12bit, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_12bit, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x000, 0xfff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_6bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_6bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE(0x00, 0x3f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_7bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_7bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE(0x00, 0x7f) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_8bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_8bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE(0x00, 0xff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/cpu/mcs51/mcs51.c b/src/emu/cpu/mcs51/mcs51.c
index b2db9af668e..d60b40f6daf 100644
--- a/src/emu/cpu/mcs51/mcs51.c
+++ b/src/emu/cpu/mcs51/mcs51.c
@@ -2404,20 +2404,20 @@ static CPU_INIT( ds5002fp )
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START(program_12bit, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_12bit, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x00, 0x0fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_13bit, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_13bit, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE(0x00, 0x1fff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_7bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_7bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM /* SFR */
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_8bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_8bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE(0x0000, 0x00ff) AM_RAM
AM_RANGE(0x0100, 0x01ff) AM_RAM /* SFR */
ADDRESS_MAP_END
diff --git a/src/emu/cpu/pic16c5x/pic16c5x.c b/src/emu/cpu/pic16c5x/pic16c5x.c
index 8ca1fe08f6b..41f0a25eb4d 100644
--- a/src/emu/cpu/pic16c5x/pic16c5x.c
+++ b/src/emu/cpu/pic16c5x/pic16c5x.c
@@ -1097,11 +1097,11 @@ static CPU_GET_INFO( pic16c5x )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c54_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c54_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c54_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c54_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x07) AM_RAM
AM_RANGE(0x08, 0x0f) AM_RAM
AM_RANGE(0x10, 0x1f) AM_RAM
@@ -1155,11 +1155,11 @@ CPU_GET_INFO( pic16c54 )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c55_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c55_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c55_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c55_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x07) AM_RAM
AM_RANGE(0x08, 0x0f) AM_RAM
AM_RANGE(0x10, 0x1f) AM_RAM
@@ -1213,11 +1213,11 @@ CPU_GET_INFO( pic16c55 )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c56_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c56_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c56_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c56_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x07) AM_RAM
AM_RANGE(0x08, 0x0f) AM_RAM
AM_RANGE(0x10, 0x1f) AM_RAM
@@ -1271,11 +1271,11 @@ CPU_GET_INFO( pic16c56 )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c57_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c57_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c57_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c57_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x07) AM_RAM AM_MIRROR(0x60)
AM_RANGE(0x08, 0x0f) AM_RAM AM_MIRROR(0x60)
AM_RANGE(0x10, 0x1f) AM_RAM
@@ -1331,11 +1331,11 @@ CPU_GET_INFO( pic16c57 )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c58_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c58_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c58_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c58_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x07) AM_RAM AM_MIRROR(0x60)
AM_RANGE(0x08, 0x0f) AM_RAM AM_MIRROR(0x60)
AM_RANGE(0x10, 0x1f) AM_RAM
diff --git a/src/emu/cpu/pic16c62x/pic16c62x.c b/src/emu/cpu/pic16c62x/pic16c62x.c
index 2e527d8b3c4..e0cb6535ebf 100644
--- a/src/emu/cpu/pic16c62x/pic16c62x.c
+++ b/src/emu/cpu/pic16c62x/pic16c62x.c
@@ -1226,11 +1226,11 @@ static CPU_GET_INFO( pic16c62x )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c620_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c620_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c620_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c620_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x6f) AM_RAM
@@ -1289,11 +1289,11 @@ CPU_GET_INFO( pic16c620 )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c621_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c621_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c621_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c621_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x6f) AM_RAM
@@ -1352,11 +1352,11 @@ CPU_GET_INFO( pic16c621 )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c622_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c622_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c622_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c622_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x7f) AM_RAM
@@ -1415,11 +1415,11 @@ CPU_GET_INFO( pic16c622 )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c620a_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c620a_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x1ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c620a_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c620a_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x6f) AM_RAM
@@ -1480,11 +1480,11 @@ CPU_GET_INFO( pic16c620a )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c621a_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c621a_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x3ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c621a_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c621a_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x6f) AM_RAM
@@ -1545,11 +1545,11 @@ CPU_GET_INFO( pic16c621a )
* Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( pic16c622a_rom, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( pic16c622a_rom, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( pic16c622a_ram, AS_DATA, 8 )
+static ADDRESS_MAP_START( pic16c622a_ram, AS_DATA, 8, legacy_cpu_device )
AM_RANGE(0x00, 0x06) AM_RAM
AM_RANGE(0x0a, 0x0c) AM_RAM
AM_RANGE(0x1f, 0x6f) AM_RAM
diff --git a/src/emu/cpu/powerpc/ppccom.c b/src/emu/cpu/powerpc/ppccom.c
index a8d659e93ed..2580c057d42 100644
--- a/src/emu/cpu/powerpc/ppccom.c
+++ b/src/emu/cpu/powerpc/ppccom.c
@@ -2146,7 +2146,7 @@ static WRITE8_HANDLER( ppc4xx_spu_w )
the 4XX
-------------------------------------------------*/
-static ADDRESS_MAP_START( internal_ppc4xx, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( internal_ppc4xx, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0x40000000, 0x4000000f) AM_READWRITE8(ppc4xx_spu_r, ppc4xx_spu_w, 0xffffffff)
ADDRESS_MAP_END
diff --git a/src/emu/cpu/sh2/sh2drc.c b/src/emu/cpu/sh2/sh2drc.c
index 507211a8cf4..79d34769645 100644
--- a/src/emu/cpu/sh2/sh2drc.c
+++ b/src/emu/cpu/sh2/sh2drc.c
@@ -3193,7 +3193,7 @@ static READ32_HANDLER(sh2_internal_a5)
sh2_internal_map - maps SH2 built-ins
-------------------------------------------------*/
-static ADDRESS_MAP_START( sh2_internal_map, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( sh2_internal_map, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0x40000000, 0xbfffffff) AM_READ(sh2_internal_a5)
AM_RANGE(0xe0000000, 0xffffffff) AM_READWRITE(sh2_internal_r, sh2_internal_w)
ADDRESS_MAP_END
diff --git a/src/emu/cpu/sh4/sh4.c b/src/emu/cpu/sh4/sh4.c
index 7edab8007e5..43b1614a634 100644
--- a/src/emu/cpu/sh4/sh4.c
+++ b/src/emu/cpu/sh4/sh4.c
@@ -3458,7 +3458,7 @@ void sh4_set_ftcsr_callback(device_t *device, sh4_ftcsr_callback callback)
#if 0
/*When OC index mode is off (CCR.OIX = 0)*/
-static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64 )
+static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64, legacy_cpu_device )
AM_RANGE(0x1C000000, 0x1C000FFF) AM_RAM AM_MIRROR(0x03FFD000)
AM_RANGE(0x1C002000, 0x1C002FFF) AM_RAM AM_MIRROR(0x03FFD000)
AM_RANGE(0xE0000000, 0xE000003F) AM_RAM AM_MIRROR(0x03FFFFC0)
@@ -3466,7 +3466,7 @@ ADDRESS_MAP_END
#endif
/*When OC index mode is on (CCR.OIX = 1)*/
-static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64 )
+static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64, legacy_cpu_device )
AM_RANGE(0x1C000000, 0x1C000FFF) AM_RAM AM_MIRROR(0x01FFF000)
AM_RANGE(0x1E000000, 0x1E000FFF) AM_RAM AM_MIRROR(0x01FFF000)
AM_RANGE(0xE0000000, 0xE000003F) AM_RAM AM_MIRROR(0x03FFFFC0) // todo: store queues should be write only on DC's SH4, executing PREFM shouldn't cause an actual memory read access!
@@ -3474,7 +3474,7 @@ static ADDRESS_MAP_START( sh4_internal_map, AS_PROGRAM, 64 )
AM_RANGE(0xFE000000, 0xFFFFFFFF) AM_READWRITE32(sh4_internal_r, sh4_internal_w, U64(0xffffffffffffffff))
ADDRESS_MAP_END
-static ADDRESS_MAP_START( sh3_internal_map, AS_PROGRAM, 64 )
+static ADDRESS_MAP_START( sh3_internal_map, AS_PROGRAM, 64, legacy_cpu_device )
AM_RANGE(SH3_LOWER_REGBASE, SH3_LOWER_REGEND) AM_READWRITE32(sh3_internal_r, sh3_internal_w, U64(0xffffffffffffffff))
AM_RANGE(SH3_UPPER_REGBASE, SH3_UPPER_REGEND) AM_READWRITE32(sh3_internal_high_r, sh3_internal_high_w, U64(0xffffffffffffffff))
ADDRESS_MAP_END
diff --git a/src/emu/cpu/sharc/sharc.c b/src/emu/cpu/sharc/sharc.c
index 70fbdc3959e..452130d7c73 100644
--- a/src/emu/cpu/sharc/sharc.c
+++ b/src/emu/cpu/sharc/sharc.c
@@ -1046,7 +1046,7 @@ static CPU_READOP( sharc )
}
// This is just used to stop the debugger from complaining about executing from I/O space
-static ADDRESS_MAP_START( internal_pgm, AS_PROGRAM, 64 )
+static ADDRESS_MAP_START( internal_pgm, AS_PROGRAM, 64, adsp21062_device )
AM_RANGE(0x20000, 0x7ffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/cpu/tlcs90/tlcs90.c b/src/emu/cpu/tlcs90/tlcs90.c
index a1d57eb4f47..0db766aafd3 100644
--- a/src/emu/cpu/tlcs90/tlcs90.c
+++ b/src/emu/cpu/tlcs90/tlcs90.c
@@ -2731,23 +2731,23 @@ static CPU_INIT( t90 )
cpustate->timer[4] = device->machine().scheduler().timer_alloc(FUNC(t90_timer4_callback), cpustate);
}
-static ADDRESS_MAP_START(tmp90840_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(tmp90840_mem, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE( 0x0000, 0x1fff ) AM_ROM // 8KB ROM (internal)
AM_RANGE( 0xfec0, 0xffc0 ) AM_RAM // 256b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp90841_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(tmp90841_mem, AS_PROGRAM, 8, legacy_cpu_device)
// AM_RANGE( 0x0000, 0x1fff ) AM_ROM // rom-less
AM_RANGE( 0xfec0, 0xffc0 ) AM_RAM // 256b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp91640_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(tmp91640_mem, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE( 0x0000, 0x3fff ) AM_ROM // 16KB ROM (internal)
AM_RANGE( 0xfdc0, 0xffc0 ) AM_RAM // 512b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tmp91641_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(tmp91641_mem, AS_PROGRAM, 8, legacy_cpu_device )
// AM_RANGE( 0x0000, 0x3fff ) AM_ROM // rom-less
AM_RANGE( 0xfdc0, 0xffc0 ) AM_RAM // 512b RAM (internal)
AM_RANGE( T90_IOBASE, T90_IOBASE+47 ) AM_READWRITE( t90_internal_registers_r, t90_internal_registers_w )
diff --git a/src/emu/cpu/tlcs900/tlcs900.c b/src/emu/cpu/tlcs900/tlcs900.c
index f43955c40c1..ac84c6746e2 100644
--- a/src/emu/cpu/tlcs900/tlcs900.c
+++ b/src/emu/cpu/tlcs900/tlcs900.c
@@ -1095,7 +1095,7 @@ static WRITE8_HANDLER( tlcs900_internal_w )
}
-static ADDRESS_MAP_START( tlcs900_mem, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( tlcs900_mem, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE( 0x000000, 0x00007f ) AM_READWRITE( tlcs900_internal_r, tlcs900_internal_w )
ADDRESS_MAP_END
diff --git a/src/emu/cpu/tms0980/tms0980.c b/src/emu/cpu/tms0980/tms0980.c
index 084f5c3f662..1aa04d62f09 100644
--- a/src/emu/cpu/tms0980/tms0980.c
+++ b/src/emu/cpu/tms0980/tms0980.c
@@ -460,32 +460,32 @@ INLINE tms0980_state *get_safe_token(device_t *device)
}
-static ADDRESS_MAP_START(tms0980_internal_rom, AS_PROGRAM, 16)
+static ADDRESS_MAP_START(tms0980_internal_rom, AS_PROGRAM, 16, legacy_cpu_device)
AM_RANGE( 0x0000, 0x0FFF ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(tms0980_internal_ram, AS_DATA, 8)
+static ADDRESS_MAP_START(tms0980_internal_ram, AS_DATA, 8, legacy_cpu_device)
AM_RANGE( 0x0000, 0x0FFF ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_10bit_8, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_10bit_8, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE( 0x000, 0x3ff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(program_11bit_8, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(program_11bit_8, AS_PROGRAM, 8, legacy_cpu_device)
AM_RANGE( 0x000, 0x7ff ) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_6bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_6bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE( 0x00, 0x3f ) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START(data_7bit, AS_DATA, 8)
+static ADDRESS_MAP_START(data_7bit, AS_DATA, 8, legacy_cpu_device)
AM_RANGE( 0x00, 0x7f ) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/cpu/tms32010/tms32010.c b/src/emu/cpu/tms32010/tms32010.c
index b5579df843b..b0e7ae8a132 100644
--- a/src/emu/cpu/tms32010/tms32010.c
+++ b/src/emu/cpu/tms32010/tms32010.c
@@ -913,7 +913,7 @@ static CPU_EXECUTE( tms32010 )
* TMS32010 Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( tms32010_ram, AS_DATA, 16 )
+static ADDRESS_MAP_START( tms32010_ram, AS_DATA, 16, legacy_cpu_device )
AM_RANGE(0x00, 0x7f) AM_RAM /* Page 0 */
AM_RANGE(0x80, 0x8f) AM_RAM /* Page 1 */
ADDRESS_MAP_END
@@ -1074,7 +1074,7 @@ CPU_GET_INFO( tms32010 )
* TMS32015 Internal Memory Map
****************************************************************************/
-static ADDRESS_MAP_START( tms32015_ram, AS_DATA, 16 )
+static ADDRESS_MAP_START( tms32015_ram, AS_DATA, 16, tms32015_device )
AM_RANGE(0x00, 0x7f) AM_RAM /* Page 0 */
AM_RANGE(0x80, 0xff) AM_RAM /* Page 1 */
ADDRESS_MAP_END
diff --git a/src/emu/cpu/tms32031/tms32031.c b/src/emu/cpu/tms32031/tms32031.c
index 227e52f5e77..dcb6f0c8d5a 100644
--- a/src/emu/cpu/tms32031/tms32031.c
+++ b/src/emu/cpu/tms32031/tms32031.c
@@ -120,11 +120,11 @@ const device_type TMS32031 = &device_creator<tms32031_device>;
const device_type TMS32032 = &device_creator<tms32032_device>;
// internal memory maps
-static ADDRESS_MAP_START( internal_32031, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( internal_32031, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0x809800, 0x809fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( internal_32032, AS_PROGRAM, 32 )
+static ADDRESS_MAP_START( internal_32032, AS_PROGRAM, 32, legacy_cpu_device )
AM_RANGE(0x87fe00, 0x87ffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/cpu/tms32051/tms32051.c b/src/emu/cpu/tms32051/tms32051.c
index 7af6f971f53..4179b662adf 100644
--- a/src/emu/cpu/tms32051/tms32051.c
+++ b/src/emu/cpu/tms32051/tms32051.c
@@ -535,12 +535,12 @@ static WRITE16_HANDLER( cpuregs_w )
* Internal memory map
**************************************************************************/
-static ADDRESS_MAP_START( internal_pgm, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( internal_pgm, AS_PROGRAM, 16, legacy_cpu_device )
AM_RANGE(0x2000, 0x23ff) AM_RAM AM_SHARE("saram") // SARAM
AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("daram_b0") // DARAM B0
ADDRESS_MAP_END
-static ADDRESS_MAP_START( internal_data, AS_DATA, 16 )
+static ADDRESS_MAP_START( internal_data, AS_DATA, 16, legacy_cpu_device )
AM_RANGE(0x0000, 0x005f) AM_READWRITE(cpuregs_r, cpuregs_w)
AM_RANGE(0x0060, 0x007f) AM_RAM // DARAM B2
AM_RANGE(0x0100, 0x02ff) AM_RAM AM_SHARE("daram_b0") // DARAM B0
diff --git a/src/emu/cpu/tms7000/tms7000.c b/src/emu/cpu/tms7000/tms7000.c
index 25929f28ce9..d8416d2febd 100644
--- a/src/emu/cpu/tms7000/tms7000.c
+++ b/src/emu/cpu/tms7000/tms7000.c
@@ -131,7 +131,7 @@ static WRITE8_HANDLER( tms7000_internal_w );
static READ8_HANDLER( tms70x0_pf_r );
static WRITE8_HANDLER( tms70x0_pf_w );
-static ADDRESS_MAP_START(tms7000_mem, AS_PROGRAM, 8)
+static ADDRESS_MAP_START(tms7000_mem, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE(0x0000, 0x007f) AM_READWRITE(tms7000_internal_r, tms7000_internal_w) /* tms7000 internal RAM */
AM_RANGE(0x0080, 0x00ff) AM_NOP /* reserved */
AM_RANGE(0x0100, 0x01ff) AM_READWRITE(tms70x0_pf_r, tms70x0_pf_w) /* tms7000 internal I/O ports */
diff --git a/src/emu/cpu/z8/z8.c b/src/emu/cpu/z8/z8.c
index 444f36b4af2..abcb0da9b87 100644
--- a/src/emu/cpu/z8/z8.c
+++ b/src/emu/cpu/z8/z8.c
@@ -734,11 +734,11 @@ static CPU_RESET( z8 )
ADDRESS MAPS
***************************************************************************/
-static ADDRESS_MAP_START( program_2kb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( program_2kb, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE(0x0000, 0x07ff) AM_ROM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( program_4kb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( program_4kb, AS_PROGRAM, 8, legacy_cpu_device )
AM_RANGE(0x0000, 0x0fff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/emu/machine/at28c16.c b/src/emu/machine/at28c16.c
index bfb66894cec..f0584f3fa6f 100644
--- a/src/emu/machine/at28c16.c
+++ b/src/emu/machine/at28c16.c
@@ -20,7 +20,7 @@
// GLOBAL VARIABLES
//**************************************************************************
-static ADDRESS_MAP_START( at28c16_map8, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( at28c16_map8, AS_PROGRAM, 8, at28c16_device )
AM_RANGE(0x0000, 0x081f) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/machine/eeprom.c b/src/emu/machine/eeprom.c
index 11929be6b77..fb478aa6fca 100644
--- a/src/emu/machine/eeprom.c
+++ b/src/emu/machine/eeprom.c
@@ -73,12 +73,12 @@ const eeprom_interface eeprom_interface_93C66B =
};
-static ADDRESS_MAP_START( eeprom_map8, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( eeprom_map8, AS_PROGRAM, 8, eeprom_device )
AM_RANGE(0x0000, 0x0fff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( eeprom_map16, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( eeprom_map16, AS_PROGRAM, 16, eeprom_device )
AM_RANGE(0x0000, 0x07ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/machine/er2055.c b/src/emu/machine/er2055.c
index a4e336e83ab..b710bdfa73b 100644
--- a/src/emu/machine/er2055.c
+++ b/src/emu/machine/er2055.c
@@ -48,7 +48,7 @@
// device type definition
const device_type ER2055 = &device_creator<er2055_device>;
-static ADDRESS_MAP_START( er2055_map, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( er2055_map, AS_PROGRAM, 8, er2055_device )
AM_RANGE(0x0000, 0x003f) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/machine/i2cmem.c b/src/emu/machine/i2cmem.c
index 288a430de7c..f05e3b844e8 100644
--- a/src/emu/machine/i2cmem.c
+++ b/src/emu/machine/i2cmem.c
@@ -58,7 +58,7 @@ INLINE void ATTR_PRINTF( 3, 4 ) verboselog( device_t *device, int n_level, const
// device type definition
const device_type I2CMEM = &device_creator<i2cmem_device>;
-static ADDRESS_MAP_START( i2cmem_map8, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( i2cmem_map8, AS_PROGRAM, 8, i2cmem_device )
AM_RANGE(0x0000, 0x0fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/machine/i8155.c b/src/emu/machine/i8155.c
index fba9b5210cc..ec83d3013de 100644
--- a/src/emu/machine/i8155.c
+++ b/src/emu/machine/i8155.c
@@ -98,7 +98,7 @@ enum
//**************************************************************************
// default address map
-static ADDRESS_MAP_START( i8155, AS_0, 8 )
+static ADDRESS_MAP_START( i8155, AS_0, 8, i8155_device )
AM_RANGE(0x00, 0xff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/machine/i8355.c b/src/emu/machine/i8355.c
index a3a03c90de1..5b28fd76bf8 100644
--- a/src/emu/machine/i8355.c
+++ b/src/emu/machine/i8355.c
@@ -43,7 +43,7 @@ enum
const device_type I8355 = &device_creator<i8355_device>;
// default address map
-static ADDRESS_MAP_START( i8355, AS_0, 8 )
+static ADDRESS_MAP_START( i8355, AS_0, 8, i8355_device )
AM_RANGE(0x000, 0x7ff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/emu/machine/intelfsh.c b/src/emu/machine/intelfsh.c
index fc95473c130..4b640f5b879 100644
--- a/src/emu/machine/intelfsh.c
+++ b/src/emu/machine/intelfsh.c
@@ -61,36 +61,36 @@ const device_type INTEL_E28F008SA = &device_creator<intel_e28f008sa_device>;
const device_type INTEL_TE28F160 = &device_creator<intel_te28f160_device>;
const device_type SHARP_UNK128MBIT = &device_creator<sharp_unk128mbit_device>;
-static ADDRESS_MAP_START( memory_map8_512Kb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( memory_map8_512Kb, AS_PROGRAM, 8, intelfsh_device )
AM_RANGE(0x00000, 0x00ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memory_map8_1Mb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( memory_map8_1Mb, AS_PROGRAM, 8, intelfsh_device )
AM_RANGE(0x00000, 0x01ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memory_map8_4Mb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( memory_map8_4Mb, AS_PROGRAM, 8, intelfsh_device )
AM_RANGE(0x00000, 0x07ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memory_map8_8Mb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( memory_map8_8Mb, AS_PROGRAM, 8, intelfsh_device )
AM_RANGE(0x00000, 0x0fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memory_map8_16Mb, AS_PROGRAM, 8 )
+static ADDRESS_MAP_START( memory_map8_16Mb, AS_PROGRAM, 8, intelfsh_device )
AM_RANGE(0x00000, 0x1fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memory_map16_4Mb, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( memory_map16_4Mb, AS_PROGRAM, 16, intelfsh_device )
AM_RANGE(0x00000, 0x03ffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memory_map16_16Mb, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( memory_map16_16Mb, AS_PROGRAM, 16, intelfsh_device )
AM_RANGE(0x00000, 0x0fffff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( memory_map16_64Mb, AS_PROGRAM, 16 )
+static ADDRESS_MAP_START( memory_map16_64Mb, AS_PROGRAM, 16, intelfsh_device )
AM_RANGE(0x00000, 0x3fffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/machine/x2212.c b/src/emu/machine/x2212.c
index a20a8321a54..8e6db9f447e 100644
--- a/src/emu/machine/x2212.c
+++ b/src/emu/machine/x2212.c
@@ -14,11 +14,11 @@
// GLOBAL VARIABLES
//**************************************************************************
-static ADDRESS_MAP_START( x2212_sram_map, AS_0, 8 )
+static ADDRESS_MAP_START( x2212_sram_map, AS_0, 8, x2212_device )
AM_RANGE(0x0000, 0x00ff) AM_RAM
ADDRESS_MAP_END
-static ADDRESS_MAP_START( x2212_e2prom_map, AS_1, 8 )
+static ADDRESS_MAP_START( x2212_e2prom_map, AS_1, 8, x2212_device )
AM_RANGE(0x0000, 0x00ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/sound/c352.c b/src/emu/sound/c352.c
index 752e8b24cef..fb7f3498a71 100644
--- a/src/emu/sound/c352.c
+++ b/src/emu/sound/c352.c
@@ -23,7 +23,7 @@
const device_type C352 = &device_creator<c352_device>;
// default address map
-static ADDRESS_MAP_START( c352, AS_0, 8 )
+static ADDRESS_MAP_START( c352, AS_0, 8, c352_device )
AM_RANGE(0x000000, 0xffffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/emu/sound/cdp1869.c b/src/emu/sound/cdp1869.c
index 3036573e394..3c7ead02d50 100644
--- a/src/emu/sound/cdp1869.c
+++ b/src/emu/sound/cdp1869.c
@@ -60,7 +60,7 @@ enum
const device_type CDP1869 = &device_creator<cdp1869_device>;
// default address map
-static ADDRESS_MAP_START( cdp1869, AS_0, 8 )
+static ADDRESS_MAP_START( cdp1869, AS_0, 8, cdp1869_device )
AM_RANGE(0x000, 0x7ff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/sound/es5503.c b/src/emu/sound/es5503.c
index fcda8faa5d5..2d5234dc1d4 100644
--- a/src/emu/sound/es5503.c
+++ b/src/emu/sound/es5503.c
@@ -47,7 +47,7 @@ static const UINT32 accmasks[8] = { 0xff, 0x1ff, 0x3ff, 0x7ff, 0xfff, 0x1fff, 0
static const int resshifts[8] = { 9, 10, 11, 12, 13, 14, 15, 16 };
// default address map
-static ADDRESS_MAP_START( es5503, AS_0, 8 )
+static ADDRESS_MAP_START( es5503, AS_0, 8, es5503_device )
AM_RANGE(0x000000, 0x1ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/emu/sound/okim6295.c b/src/emu/sound/okim6295.c
index 08ded618728..e1a643aa63e 100644
--- a/src/emu/sound/okim6295.c
+++ b/src/emu/sound/okim6295.c
@@ -75,7 +75,7 @@ const UINT8 okim6295_device::s_volume_table[16] =
};
// default address map
-static ADDRESS_MAP_START( okim6295, AS_0, 8 )
+static ADDRESS_MAP_START( okim6295, AS_0, 8, okim6295_device )
AM_RANGE(0x00000, 0x3ffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/emu/sound/okim9810.c b/src/emu/sound/okim9810.c
index 5b49201115b..c67bd670031 100644
--- a/src/emu/sound/okim9810.c
+++ b/src/emu/sound/okim9810.c
@@ -61,7 +61,7 @@ const UINT32 okim9810_device::s_sampling_freq_table[16] =
};
// default address map
-static ADDRESS_MAP_START( okim9810, AS_0, 8 )
+static ADDRESS_MAP_START( okim9810, AS_0, 8, okim9810_device )
AM_RANGE(0x000000, 0xffffff) AM_ROM
ADDRESS_MAP_END
diff --git a/src/emu/video/315_5124.c b/src/emu/video/315_5124.c
index df0756889df..39d9f7be72f 100644
--- a/src/emu/video/315_5124.c
+++ b/src/emu/video/315_5124.c
@@ -139,7 +139,7 @@ PALETTE_INIT( sega315_5378 )
// default address map
-static ADDRESS_MAP_START( sega315_5124, AS_0, 8 )
+static ADDRESS_MAP_START( sega315_5124, AS_0, 8, sega315_5124_device )
AM_RANGE(0x0000, VRAM_SIZE-1) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/video/crt9007.c b/src/emu/video/crt9007.c
index 4ea1c5c4341..62a2f089df5 100644
--- a/src/emu/video/crt9007.c
+++ b/src/emu/video/crt9007.c
@@ -215,7 +215,7 @@ const int STATUS_FRAME_TIMER_OCCURRED = 0x01;
//**************************************************************************
// default address map
-static ADDRESS_MAP_START( crt9007, AS_0, 8 )
+static ADDRESS_MAP_START( crt9007, AS_0, 8, crt9007_device )
AM_RANGE(0x0000, 0x3fff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/video/h63484.c b/src/emu/video/h63484.c
index edacced60b6..8ba7d562ff8 100644
--- a/src/emu/video/h63484.c
+++ b/src/emu/video/h63484.c
@@ -15,7 +15,7 @@
#define FIFO_LOG 0
// default address map
-static ADDRESS_MAP_START( h63484_vram, AS_0, 8 )
+static ADDRESS_MAP_START( h63484_vram, AS_0, 8, h63484_device )
AM_RANGE(0x00000, 0x7ffff) AM_RAM
AM_RANGE(0x80000, 0xfffff) AM_NOP
ADDRESS_MAP_END
diff --git a/src/emu/video/hd61830.c b/src/emu/video/hd61830.c
index ece461232c9..1e25af33484 100644
--- a/src/emu/video/hd61830.c
+++ b/src/emu/video/hd61830.c
@@ -58,7 +58,7 @@ const device_type HD61830 = &device_creator<hd61830_device>;
// default address map
-static ADDRESS_MAP_START( hd61830, AS_0, 8 )
+static ADDRESS_MAP_START( hd61830, AS_0, 8, hd61830_device )
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END
diff --git a/src/emu/video/ramdac.c b/src/emu/video/ramdac.c
index 61ae67891e5..6521079e8a9 100644
--- a/src/emu/video/ramdac.c
+++ b/src/emu/video/ramdac.c
@@ -14,7 +14,7 @@
#include "video/ramdac.h"
// default address map
-static ADDRESS_MAP_START( ramdac_palram, AS_0, 8 )
+static ADDRESS_MAP_START( ramdac_palram, AS_0, 8, ramdac_device )
AM_RANGE(0x000, 0x0ff) AM_RAM // R bank
AM_RANGE(0x100, 0x1ff) AM_RAM // G bank
AM_RANGE(0x200, 0x2ff) AM_RAM // B bank
diff --git a/src/emu/video/sed1330.c b/src/emu/video/sed1330.c
index ca68c992e67..5312b4d62e3 100644
--- a/src/emu/video/sed1330.c
+++ b/src/emu/video/sed1330.c
@@ -66,7 +66,7 @@ const device_type SED1330 = &device_creator<sed1330_device>;
// default address map
-static ADDRESS_MAP_START( sed1330, AS_0, 8 )
+static ADDRESS_MAP_START( sed1330, AS_0, 8, sed1330_device )
AM_RANGE(0x0000, 0xffff) AM_RAM
ADDRESS_MAP_END