diff options
author | Miodrag Milanovic <mmicko@gmail.com> | 2012-03-31 13:39:09 +0000 |
---|---|---|
committer | Miodrag Milanovic <mmicko@gmail.com> | 2012-03-31 13:39:09 +0000 |
commit | 2c6405939667eb6da61fee9e8c0a6e9218313b98 (patch) | |
tree | 77a8df4bd2675475c38f0d8a666c79c705f35055 | |
parent | b5e7f4998b60effd62a2ad43db5e722dcb5dd1c3 (diff) |
MAME going modern part 1 (no whatsnew)
- Added 4th parameter to all address maps
- Added missing state classes
1176 files changed, 4552 insertions, 4521 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 diff --git a/src/mame/audio/atarijsa.c b/src/mame/audio/atarijsa.c index 29b201909c3..055492d5056 100644 --- a/src/mame/audio/atarijsa.c +++ b/src/mame/audio/atarijsa.c @@ -87,12 +87,12 @@ static WRITE8_HANDLER( jsa3_io_w ); * *************************************/ -static ADDRESS_MAP_START( jsa3_oki_map, AS_0, 8 ) +static ADDRESS_MAP_START( jsa3_oki_map, AS_0, 8, driver_device ) AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("bank12") AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("bank13") ADDRESS_MAP_END -static ADDRESS_MAP_START( jsa3_oki2_map, AS_0, 8 ) +static ADDRESS_MAP_START( jsa3_oki2_map, AS_0, 8, driver_device ) AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("bank14") AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("bank15") ADDRESS_MAP_END @@ -748,7 +748,7 @@ static void update_all_volumes(running_machine &machine ) * *************************************/ -static ADDRESS_MAP_START( atarijsa1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atarijsa1_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x2800, 0x2bff) AM_READWRITE(jsa1_io_r, jsa1_io_w) @@ -756,7 +756,7 @@ static ADDRESS_MAP_START( atarijsa1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( atarijsa2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atarijsa2_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x2800, 0x2bff) AM_READWRITE(jsa2_io_r, jsa2_io_w) @@ -765,7 +765,7 @@ ADDRESS_MAP_END /* full map verified from schematics and Batman GALs */ -static ADDRESS_MAP_START( atarijsa3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atarijsa3_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x07fe) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x2800, 0x2fff) AM_READWRITE(jsa3_io_r, jsa3_io_w) @@ -773,7 +773,7 @@ static ADDRESS_MAP_START( atarijsa3_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( atarijsa3s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atarijsa3s_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x07fe) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x2800, 0x2fff) AM_READWRITE(jsa3s_io_r, jsa3s_io_w) diff --git a/src/mame/audio/cage.c b/src/mame/audio/cage.c index 9eee8290ff3..2a417a2f815 100644 --- a/src/mame/audio/cage.c +++ b/src/mame/audio/cage.c @@ -653,7 +653,7 @@ static const tms3203x_config cage_config = }; -static ADDRESS_MAP_START( cage_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cage_map, AS_PROGRAM, 32, driver_device ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_RANGE(0x200000, 0x200000) AM_WRITENOP AM_RANGE(0x400000, 0x47ffff) AM_ROMBANK("bank10") @@ -664,7 +664,7 @@ static ADDRESS_MAP_START( cage_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cage_map_seattle, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cage_map_seattle, AS_PROGRAM, 32, driver_device ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_RANGE(0x200000, 0x200000) AM_WRITENOP AM_RANGE(0x400000, 0x47ffff) AM_ROMBANK("bank10") diff --git a/src/mame/audio/carnival.c b/src/mame/audio/carnival.c index 45d814e907e..2a31251dce4 100644 --- a/src/mame/audio/carnival.c +++ b/src/mame/audio/carnival.c @@ -285,11 +285,11 @@ static WRITE8_DEVICE_HANDLER( carnival_music_port_2_w ) } -static ADDRESS_MAP_START( carnival_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( carnival_audio_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( carnival_audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( carnival_audio_io_map, AS_IO, 8, driver_device ) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(carnival_music_port_t1_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_WRITE(carnival_music_port_1_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_DEVWRITE("psg", carnival_music_port_2_w) diff --git a/src/mame/audio/cinemat.c b/src/mame/audio/cinemat.c index 76f1aa676f8..1b3c3eaa898 100644 --- a/src/mame/audio/cinemat.c +++ b/src/mame/audio/cinemat.c @@ -1535,7 +1535,7 @@ static MACHINE_RESET( demon_sound ) } -static ADDRESS_MAP_START( demon_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( demon_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x3000, 0x33ff) AM_RAM AM_RANGE(0x4000, 0x4001) AM_DEVREAD("ay1", ay8910_r) @@ -1548,7 +1548,7 @@ static ADDRESS_MAP_START( demon_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( demon_sound_ports, AS_IO, 8 ) +static ADDRESS_MAP_START( demon_sound_ports, AS_IO, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVWRITE("ctc", z80ctc_w) AM_RANGE(0x1c, 0x1f) AM_DEVWRITE("ctc", z80ctc_w) diff --git a/src/mame/audio/dcs.c b/src/mame/audio/dcs.c index cde0e702fd4..56cee58e97f 100644 --- a/src/mame/audio/dcs.c +++ b/src/mame/audio/dcs.c @@ -431,14 +431,14 @@ static void sdrc_remap_memory(running_machine &machine); *************************************/ /* DCS 2k memory map */ -static ADDRESS_MAP_START( dcs_2k_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dcs_2k_program_map, AS_PROGRAM, 32, driver_device ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dcsint") AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("dcsext") AM_RANGE(0x1000, 0x17ff) AM_RAM AM_SHARE("dcsext") AM_RANGE(0x1800, 0x1fff) AM_RAM AM_SHARE("dcsext") ADDRESS_MAP_END -static ADDRESS_MAP_START( dcs_2k_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dcs_2k_data_map, AS_DATA, 16, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_READWRITE(dcs_dataram_r, dcs_dataram_w) AM_RANGE(0x2000, 0x2fff) AM_ROMBANK("databank") AM_RANGE(0x3000, 0x33ff) AM_WRITE(dcs_data_bank_select_w) @@ -449,7 +449,7 @@ ADDRESS_MAP_END /* DCS 2k with UART memory map */ -static ADDRESS_MAP_START( dcs_2k_uart_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dcs_2k_uart_data_map, AS_DATA, 16, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_READWRITE(dcs_dataram_r, dcs_dataram_w) AM_RANGE(0x2000, 0x2fff) AM_ROMBANK("databank") AM_RANGE(0x3000, 0x33ff) AM_WRITE(dcs_data_bank_select_w) @@ -462,12 +462,12 @@ ADDRESS_MAP_END /* DCS 8k memory map */ -static ADDRESS_MAP_START( dcs_8k_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dcs_8k_program_map, AS_PROGRAM, 32, driver_device ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dcsint") AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("dcsext") ADDRESS_MAP_END -static ADDRESS_MAP_START( dcs_8k_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dcs_8k_data_map, AS_DATA, 16, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x1fff) AM_READWRITE(dcs_dataram_r, dcs_dataram_w) AM_RANGE(0x2000, 0x2fff) AM_ROMBANK("databank") @@ -485,18 +485,18 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dcs2_2115_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dcs2_2115_program_map, AS_PROGRAM, 32, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("dcsint") ADDRESS_MAP_END -static ADDRESS_MAP_START( dcs2_2104_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dcs2_2104_program_map, AS_PROGRAM, 32, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x01ff) AM_RAM AM_SHARE("dcsint") ADDRESS_MAP_END -static ADDRESS_MAP_START( dcs2_2115_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dcs2_2115_data_map, AS_DATA, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w) AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w) @@ -508,7 +508,7 @@ static ADDRESS_MAP_START( dcs2_2115_data_map, AS_DATA, 16 ) AM_RANGE(0x3fe0, 0x3fff) AM_READWRITE(adsp_control_r, adsp_control_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dcs2_2104_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dcs2_2104_data_map, AS_DATA, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w) AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w) @@ -528,13 +528,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsio_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dsio_program_map, AS_PROGRAM, 32, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("dcsint") ADDRESS_MAP_END -static ADDRESS_MAP_START( dsio_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dsio_data_map, AS_DATA, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x03ff) AM_RAMBANK("databank") AM_RANGE(0x0400, 0x3fdf) AM_RAM @@ -542,7 +542,7 @@ static ADDRESS_MAP_START( dsio_data_map, AS_DATA, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dsio_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( dsio_io_map, AS_IO, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w) AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w) @@ -560,13 +560,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( denver_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( denver_program_map, AS_PROGRAM, 32, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("dcsint") ADDRESS_MAP_END -static ADDRESS_MAP_START( denver_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( denver_data_map, AS_DATA, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("databank") AM_RANGE(0x0800, 0x3fdf) AM_RAM @@ -574,7 +574,7 @@ static ADDRESS_MAP_START( denver_data_map, AS_DATA, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( denver_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( denver_io_map, AS_IO, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0400, 0x0400) AM_READWRITE(input_latch_r, input_latch_ack_w) AM_RANGE(0x0401, 0x0401) AM_WRITE(output_latch_w) diff --git a/src/mame/audio/dkong.c b/src/mame/audio/dkong.c index 0cd9a9f44f2..95c53a7843c 100644 --- a/src/mame/audio/dkong.c +++ b/src/mame/audio/dkong.c @@ -1285,11 +1285,11 @@ WRITE8_HANDLER( dkong_audio_irq_w ) * *************************************/ -static ADDRESS_MAP_START( dkong_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dkong_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( dkong_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dkong_sound_io_map, AS_IO, 8, driver_device ) AM_RANGE(0x00, 0xFF) AM_DEVREAD("ls175.3d", dkong_tune_r) AM_WRITE(dkong_voice_w) AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_DEVREAD("ls175.3d", dkong_tune_r) @@ -1300,7 +1300,7 @@ static ADDRESS_MAP_START( dkong_sound_io_map, AS_IO, 8 ) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_LATCH8_READBIT("ls259.6h", 4) ADDRESS_MAP_END -static ADDRESS_MAP_START( dkongjr_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dkongjr_sound_io_map, AS_IO, 8, driver_device ) AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_LATCH8_READ("ls174.3d") AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("discrete", dkong_p1_w) /* only write to dac */ AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_LATCH8_READWRITE("virtual_p2") @@ -1308,7 +1308,7 @@ static ADDRESS_MAP_START( dkongjr_sound_io_map, AS_IO, 8 ) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_LATCH8_READBIT("ls259.6h", 4) ADDRESS_MAP_END -static ADDRESS_MAP_START( radarscp1_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( radarscp1_sound_io_map, AS_IO, 8, driver_device ) AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_DEVREAD("ls175.3d", latch8_r) AM_RANGE(0x00, 0xff) AM_DEVWRITE("discrete", dkong_p1_w) /* DAC here */ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_LATCH8_READ("virtual_p1") @@ -1318,7 +1318,7 @@ static ADDRESS_MAP_START( radarscp1_sound_io_map, AS_IO, 8 ) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_LATCH8_READBIT("ls259.6h", 4) ADDRESS_MAP_END -static ADDRESS_MAP_START( dkong3_sound1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dkong3_sound1_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x4016, 0x4016) AM_LATCH8_READ("latch1") /* overwrite default */ AM_RANGE(0x4017, 0x4017) AM_LATCH8_READ("latch2") @@ -1327,7 +1327,7 @@ static ADDRESS_MAP_START( dkong3_sound1_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( dkong3_sound2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dkong3_sound2_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x4016, 0x4016) AM_LATCH8_READ("latch3") /* overwrite default */ AM_RANGE(0x4000, 0x4017) AM_DEVREAD("nes2", nes_psg_r) diff --git a/src/mame/audio/exidy.c b/src/mame/audio/exidy.c index 58fcd263167..5beb04e752b 100644 --- a/src/mame/audio/exidy.c +++ b/src/mame/audio/exidy.c @@ -866,7 +866,7 @@ DEVICE_GET_INFO( venture_sound ) DEFINE_LEGACY_SOUND_DEVICE(EXIDY_VENTURE, venture_sound); -static ADDRESS_MAP_START( venture_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( venture_audio_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0780) AM_RAM AM_RANGE(0x0800, 0x087f) AM_MIRROR(0x0780) AM_DEVREADWRITE("riot", riot6532_r, riot6532_w) @@ -935,13 +935,13 @@ static READ8_DEVICE_HANDLER( mtrap_voiceio_r ) } -static ADDRESS_MAP_START( cvsd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cvsd_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x3fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cvsd_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( cvsd_iomap, AS_IO, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_DEVREADWRITE("custom", mtrap_voiceio_r, mtrap_voiceio_w) ADDRESS_MAP_END @@ -1105,7 +1105,7 @@ DEVICE_GET_INFO( victory_sound ) DEFINE_LEGACY_SOUND_DEVICE(EXIDY_VICTORY, victory_sound); -static ADDRESS_MAP_START( victory_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( victory_audio_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0f00) AM_RAM AM_RANGE(0x1000, 0x107f) AM_MIRROR(0x0f80) AM_DEVREADWRITE("riot", riot6532_r, riot6532_w) AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) diff --git a/src/mame/audio/exidy440.c b/src/mame/audio/exidy440.c index e794fe4e78d..170b9ea1e87 100644 --- a/src/mame/audio/exidy440.c +++ b/src/mame/audio/exidy440.c @@ -944,7 +944,7 @@ static WRITE8_DEVICE_HANDLER( sound_banks_w ) * *************************************/ -static ADDRESS_MAP_START( exidy440_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( exidy440_audio_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x7fff) AM_NOP AM_RANGE(0x8000, 0x801f) AM_MIRROR(0x03e0) AM_DEVREADWRITE("custom", m6844_r, m6844_w) AM_RANGE(0x8400, 0x840f) AM_MIRROR(0x03f0) AM_DEVREADWRITE("custom", sound_volume_r, sound_volume_w) diff --git a/src/mame/audio/hyprolyb.c b/src/mame/audio/hyprolyb.c index 074417e7299..eb28ab29bca 100644 --- a/src/mame/audio/hyprolyb.c +++ b/src/mame/audio/hyprolyb.c @@ -89,7 +89,7 @@ static READ8_DEVICE_HANDLER( hyprolyb_adpcm_data_r ) return soundlatch2_r(state->m_space, offset); } -static ADDRESS_MAP_START( hyprolyb_adpcm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hyprolyb_adpcm_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x1000, 0x1000) AM_DEVREAD("hyprolyb_adpcm", hyprolyb_adpcm_data_r) AM_RANGE(0x1001, 0x1001) AM_DEVREAD("hyprolyb_adpcm", hyprolyb_adpcm_ready_r) diff --git a/src/mame/audio/irem.c b/src/mame/audio/irem.c index a94a915dba9..9ff8b1d2ffd 100644 --- a/src/mame/audio/irem.c +++ b/src/mame/audio/irem.c @@ -377,14 +377,14 @@ DISCRETE_SOUND_END /* complete address map verified from Moon Patrol/10 Yard Fight schematics */ /* large map uses 8k ROMs, small map uses 4k ROMs; this is selected via a jumper */ -static ADDRESS_MAP_START( m52_small_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m52_small_sound_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x0fff) AM_DEVWRITE("irem_audio", m52_adpcm_w) AM_RANGE(0x1000, 0x1fff) AM_WRITE(sound_irq_ack_w) AM_RANGE(0x2000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( m52_large_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m52_large_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_DEVWRITE("irem_audio", m52_adpcm_w) AM_RANGE(0x2000, 0x3fff) AM_WRITE(sound_irq_ack_w) AM_RANGE(0x4000, 0xffff) AM_ROM @@ -392,14 +392,14 @@ ADDRESS_MAP_END /* complete address map verified from Kid Niki schematics */ -static ADDRESS_MAP_START( m62_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m62_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0800, 0x0800) AM_MIRROR(0xf7fc) AM_WRITE(sound_irq_ack_w) AM_RANGE(0x0801, 0x0802) AM_MIRROR(0xf7fc) AM_DEVWRITE("irem_audio", m62_adpcm_w) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( irem_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( irem_sound_portmap, AS_IO, 8, driver_device ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_DEVREADWRITE("irem_audio", m6803_port1_r, m6803_port1_w) AM_RANGE(M6801_PORT2, M6801_PORT2) AM_DEVREADWRITE("irem_audio", m6803_port2_r, m6803_port2_w) ADDRESS_MAP_END diff --git a/src/mame/audio/jedi.c b/src/mame/audio/jedi.c index e36ff859ab1..b7f080e51d1 100644 --- a/src/mame/audio/jedi.c +++ b/src/mame/audio/jedi.c @@ -173,7 +173,7 @@ static WRITE8_HANDLER( speech_reset_w ) * *************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x080f) AM_MIRROR(0x07c0) AM_DEVREADWRITE("pokey1", pokey_r, pokey_w) AM_RANGE(0x0810, 0x081f) AM_MIRROR(0x07c0) AM_DEVREADWRITE("pokey2", pokey_r, pokey_w) diff --git a/src/mame/audio/leland.c b/src/mame/audio/leland.c index 92a515647dd..4eb4c4cce9c 100644 --- a/src/mame/audio/leland.c +++ b/src/mame/audio/leland.c @@ -2207,24 +2207,24 @@ WRITE8_DEVICE_HANDLER( ataxx_80186_control_w ) * *************************************/ -ADDRESS_MAP_START( leland_80186_map_program, AS_PROGRAM, 16 ) +ADDRESS_MAP_START( leland_80186_map_program, AS_PROGRAM, 16, driver_device ) AM_RANGE(0x00000, 0x03fff) AM_MIRROR(0x1c000) AM_RAM AM_RANGE(0x20000, 0xfffff) AM_ROM ADDRESS_MAP_END -ADDRESS_MAP_START( ataxx_80186_map_io, AS_IO, 16 ) +ADDRESS_MAP_START( ataxx_80186_map_io, AS_IO, 16, driver_device ) AM_RANGE(0xff00, 0xffff) AM_DEVREADWRITE("custom", i80186_internal_port_r, i80186_internal_port_w) ADDRESS_MAP_END -ADDRESS_MAP_START( redline_80186_map_io, AS_IO, 16 ) +ADDRESS_MAP_START( redline_80186_map_io, AS_IO, 16, driver_device ) AM_RANGE(0x6000, 0x6fff) AM_DEVWRITE("custom", redline_dac_w) AM_RANGE(0xff00, 0xffff) AM_DEVREADWRITE("custom", i80186_internal_port_r, i80186_internal_port_w) ADDRESS_MAP_END -ADDRESS_MAP_START( leland_80186_map_io, AS_IO, 16 ) +ADDRESS_MAP_START( leland_80186_map_io, AS_IO, 16, driver_device ) AM_RANGE(0x0000, 0x000b) AM_DEVWRITE("custom", dac_w) AM_RANGE(0x0080, 0x008b) AM_DEVWRITE("custom", dac_w) AM_RANGE(0x00c0, 0x00cb) AM_DEVWRITE("custom", dac_w) diff --git a/src/mame/audio/mario.c b/src/mame/audio/mario.c index bbb6e630c65..a1b34f71d84 100644 --- a/src/mame/audio/mario.c +++ b/src/mame/audio/mario.c @@ -588,12 +588,12 @@ WRITE8_HANDLER( mario_sh3_w ) * *************************************/ -static ADDRESS_MAP_START( mario_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mario_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_ROMBANK("bank1") AM_REGION("audiocpu", 0) AM_RANGE(0x0800, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mario_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mario_sound_io_map, AS_IO, 8, driver_device ) AM_RANGE(0x00, 0xff) AM_READ(mario_sh_tune_r) AM_DEVWRITE("discrete", mario_sh_sound_w) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_READWRITE(mario_sh_p1_r, mario_sh_p1_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(mario_sh_p2_r, mario_sh_p2_w) @@ -601,7 +601,7 @@ static ADDRESS_MAP_START( mario_sound_io_map, AS_IO, 8 ) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(mario_sh_t1_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( masao_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( masao_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_data_w) diff --git a/src/mame/audio/mcr.c b/src/mame/audio/mcr.c index 5c9e1e3df76..99b10d0d786 100644 --- a/src/mame/audio/mcr.c +++ b/src/mame/audio/mcr.c @@ -443,7 +443,7 @@ static const ay8910_interface ssio_ay8910_interface_2 = /********* memory interfaces ***********/ /* address map verified from schematics */ -static ADDRESS_MAP_START( ssio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssio_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x0c00) AM_RAM @@ -568,7 +568,7 @@ void csdeluxe_reset_w(running_machine &machine, int state) /********* memory interfaces ***********/ /* address map determined by PAL; not verified */ -static ADDRESS_MAP_START( csdeluxe_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( csdeluxe_map, AS_PROGRAM, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x1ffff) AM_RANGE(0x000000, 0x007fff) AM_ROM @@ -688,7 +688,7 @@ void soundsgood_reset_w(running_machine &machine, int state) /********* memory interfaces ***********/ /* address map determined by PAL; not verified */ -static ADDRESS_MAP_START( soundsgood_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( soundsgood_map, AS_PROGRAM, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x7ffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM @@ -792,7 +792,7 @@ void turbocs_reset_w(running_machine &machine, int state) /********* memory interfaces ***********/ /* address map verified from schematics */ -static ADDRESS_MAP_START( turbocs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( turbocs_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x3800) AM_RAM AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x3ffc) AM_DEVREADWRITE_MODERN("tcspia", pia6821_device, read_alt, write_alt) @@ -923,7 +923,7 @@ void squawkntalk_reset_w(running_machine &machine, int state) /* address map verified from schematics */ /* note that jumpers control the ROM sizes; if these are changed, use the alternate */ /* address map below */ -static ADDRESS_MAP_START( squawkntalk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( squawkntalk_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0080, 0x0083) AM_MIRROR(0x4f6c) AM_DEVREADWRITE_MODERN("sntpia0", pia6821_device, read, write) @@ -935,7 +935,7 @@ ADDRESS_MAP_END /* alternate address map if the ROM jumpers are changed to support a smaller */ /* ROM size of 2k */ #ifdef UNUSED_FUNCTION -ADDRESS_MAP_START( squawkntalk_alt_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( squawkntalk_alt_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0080, 0x0083) AM_MIRROR(0x676c) AM_DEVREADWRITE_MODERN("sntpia0", pia6821_device, read, write) diff --git a/src/mame/audio/n8080.c b/src/mame/audio/n8080.c index c187b6d5f90..0eedc347544 100644 --- a/src/mame/audio/n8080.c +++ b/src/mame/audio/n8080.c @@ -558,13 +558,13 @@ MACHINE_RESET( helifire_sound ) } -static ADDRESS_MAP_START( n8080_sound_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( n8080_sound_cpu_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0x3ff) AM_RANGE(0x0000, 0x03ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( n8080_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( n8080_sound_io_map, AS_IO, 8, driver_device ) AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_READ(n8080_8035_t0_r) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(n8080_8035_t1_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_READ(n8080_8035_p1_r) @@ -573,7 +573,7 @@ static ADDRESS_MAP_START( n8080_sound_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( helifire_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( helifire_sound_io_map, AS_IO, 8, driver_device ) AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_READ(helifire_8035_t0_r) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(helifire_8035_t1_r) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READ(helifire_8035_p2_r) diff --git a/src/mame/audio/namco52.c b/src/mame/audio/namco52.c index 8a247832b4e..b3b65b59382 100644 --- a/src/mame/audio/namco52.c +++ b/src/mame/audio/namco52.c @@ -170,7 +170,7 @@ static TIMER_CALLBACK( external_clock_pulse ) DEVICE INTERFACE ***************************************************************************/ -static ADDRESS_MAP_START( namco_52xx_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namco_52xx_map_io, AS_IO, 8, namco_52xx_device ) AM_RANGE(MB88_PORTK, MB88_PORTK) AM_READ(namco_52xx_K_r) AM_RANGE(MB88_PORTO, MB88_PORTO) AM_WRITE(namco_52xx_O_w) AM_RANGE(MB88_PORTP, MB88_PORTP) AM_WRITE(namco_52xx_P_w) diff --git a/src/mame/audio/namco54.c b/src/mame/audio/namco54.c index d8ba961ef15..9b1ae4ec9f1 100644 --- a/src/mame/audio/namco54.c +++ b/src/mame/audio/namco54.c @@ -137,7 +137,7 @@ WRITE8_DEVICE_HANDLER( namco_54xx_write ) DEVICE INTERFACE ***************************************************************************/ -static ADDRESS_MAP_START( namco_54xx_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namco_54xx_map_io, AS_IO, 8, namco_54xx_device ) AM_RANGE(MB88_PORTK, MB88_PORTK) AM_READ(namco_54xx_K_r) AM_RANGE(MB88_PORTO, MB88_PORTO) AM_WRITE(namco_54xx_O_w) AM_RANGE(MB88_PORTR0, MB88_PORTR0) AM_READ(namco_54xx_R0_r) diff --git a/src/mame/audio/qix.c b/src/mame/audio/qix.c index d974a7880e9..b9f2428d322 100644 --- a/src/mame/audio/qix.c +++ b/src/mame/audio/qix.c @@ -154,7 +154,7 @@ static WRITE_LINE_DEVICE_HANDLER( qix_pia_sint ) * *************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x5ffc) AM_DEVREADWRITE_MODERN("sndpia2", pia6821_device, read, write) AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x3ffc) AM_DEVREADWRITE_MODERN("sndpia1", pia6821_device, read, write) diff --git a/src/mame/audio/redalert.c b/src/mame/audio/redalert.c index b12c59a68a7..4661d767efe 100644 --- a/src/mame/audio/redalert.c +++ b/src/mame/audio/redalert.c @@ -125,7 +125,7 @@ static const ay8910_interface redalert_ay8910_interface = }; -static ADDRESS_MAP_START( redalert_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( redalert_audio_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x0c00) AM_RAM AM_RANGE(0x1000, 0x1000) AM_MIRROR(0x0ffe) AM_READNOP AM_DEVWRITE("aysnd", redalert_AY8910_w) @@ -182,7 +182,7 @@ static I8085_CONFIG( redalert_voice_i8085_config ) }; -static ADDRESS_MAP_START( redalert_voice_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( redalert_voice_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_NOP AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x3c00) AM_RAM @@ -344,7 +344,7 @@ static WRITE8_DEVICE_HANDLER( demoneye_ay8910_data_w ) } -static ADDRESS_MAP_START( demoneye_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( demoneye_audio_map, AS_PROGRAM, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x0500, 0x0503) AM_DEVREADWRITE_MODERN("sndpia", pia6821_device, read, write) diff --git a/src/mame/audio/scramble.c b/src/mame/audio/scramble.c index 9b8a1688b09..6989d0c877a 100644 --- a/src/mame/audio/scramble.c +++ b/src/mame/audio/scramble.c @@ -289,12 +289,12 @@ static const ay8910_interface ad2083_ay8910_interface_2 = DEVCB_NULL }; -static ADDRESS_MAP_START( ad2083_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ad2083_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ad2083_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ad2083_sound_io_map, AS_IO, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_DEVWRITE("tmsprom", ad2083_tms5110_ctrl_w) AM_RANGE(0x10, 0x10) AM_DEVWRITE("ay1", ay8910_address_w) diff --git a/src/mame/audio/segag80r.c b/src/mame/audio/segag80r.c index 99cb44497ee..65da74c6e75 100644 --- a/src/mame/audio/segag80r.c +++ b/src/mame/audio/segag80r.c @@ -797,7 +797,7 @@ static const tms36xx_interface monsterb_tms3617_interface = * *************************************/ -static ADDRESS_MAP_START( monsterb_7751_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( monsterb_7751_portmap, AS_IO, 8, driver_device ) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(n7751_t1_r) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READ(n7751_command_r) AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(n7751_rom_r) diff --git a/src/mame/audio/segasnd.c b/src/mame/audio/segasnd.c index 27250d1d301..6d6f1974d73 100644 --- a/src/mame/audio/segasnd.c +++ b/src/mame/audio/segasnd.c @@ -293,12 +293,12 @@ WRITE8_DEVICE_HANDLER( sega_speech_control_w ) * *************************************/ -static ADDRESS_MAP_START( speech_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( speech_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( speech_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( speech_portmap, AS_IO, 8, driver_device ) AM_RANGE(0x00, 0xff) AM_DEVREAD("segaspeech", speech_rom_r) AM_RANGE(0x00, 0xff) AM_DEVWRITE("speech", sp0250_w) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVREADWRITE("segaspeech", speech_p1_r, speech_p1_w) @@ -986,17 +986,17 @@ static WRITE8_DEVICE_HANDLER( usb_workram_w ) * *************************************/ -static ADDRESS_MAP_START( usb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( usb_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("pgmram") ADDRESS_MAP_END -static ADDRESS_MAP_START( usb_map_rom, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( usb_map_rom, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( usb_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( usb_portmap, AS_IO, 8, driver_device ) AM_RANGE(0x00, 0xff) AM_DEVREADWRITE("usbsnd", usb_workram_r, usb_workram_w) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVREADWRITE("usbsnd", usb_p1_r, usb_p1_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_DEVWRITE("usbsnd", usb_p2_w) diff --git a/src/mame/audio/seibu.c b/src/mame/audio/seibu.c index 99794beb3fe..79c0281fd84 100644 --- a/src/mame/audio/seibu.c +++ b/src/mame/audio/seibu.c @@ -489,7 +489,7 @@ const ym2203_interface seibu_ym2203_interface = /***************************************************************************/ -ADDRESS_MAP_START( seibu_sound_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( seibu_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(seibu_pending_w) @@ -507,7 +507,7 @@ ADDRESS_MAP_START( seibu_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -ADDRESS_MAP_START( seibu2_airraid_sound_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( seibu2_airraid_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(seibu_pending_w) @@ -525,7 +525,7 @@ ADDRESS_MAP_START( seibu2_airraid_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -ADDRESS_MAP_START( seibu2_sound_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( seibu2_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(seibu_pending_w) @@ -543,7 +543,7 @@ ADDRESS_MAP_START( seibu2_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -ADDRESS_MAP_START( seibu2_raiden2_sound_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( seibu2_raiden2_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(seibu_pending_w) @@ -564,7 +564,7 @@ ADDRESS_MAP_START( seibu2_raiden2_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x401a, 0x401a) AM_NOP ADDRESS_MAP_END -ADDRESS_MAP_START( seibu_newzeroteam_sound_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( seibu_newzeroteam_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(seibu_pending_w) @@ -582,7 +582,7 @@ ADDRESS_MAP_START( seibu_newzeroteam_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -ADDRESS_MAP_START( seibu3_sound_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( seibu3_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(seibu_pending_w) @@ -600,7 +600,7 @@ ADDRESS_MAP_START( seibu3_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -ADDRESS_MAP_START( seibu3_adpcm_sound_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( seibu3_adpcm_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(seibu_pending_w) diff --git a/src/mame/audio/t5182.c b/src/mame/audio/t5182.c index 46e263e74cd..576c674ab7e 100644 --- a/src/mame/audio/t5182.c +++ b/src/mame/audio/t5182.c @@ -295,7 +295,7 @@ const ym2151_interface t5182_ym2151_interface = // 90XX reset // A0XX // rest unused -ADDRESS_MAP_START( t5182_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( t5182_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM // internal ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_MIRROR(0x1800) // internal RAM AM_RANGE(0x4000, 0x40ff) AM_RAM AM_MIRROR(0x3F00) AM_BASE(&t5182_sharedram) // 2016 with four 74ls245s, one each for main and t5182 address and data. pins 23, 22, 20, 19, 18 are all tied low so only 256 bytes are usable @@ -313,7 +313,7 @@ ADDRESS_MAP_END // 30 R coin inputs (bits 0 and 1, active high) // 40 W external ROM banking? (the only 0 bit enables a ROM) // 50 W test mode status flags (bit 0 = ROM test fail, bit 1 = RAM test fail, bit 2 = YM2151 IRQ not received) -ADDRESS_MAP_START( t5182_io, AS_IO, 8 ) +ADDRESS_MAP_START( t5182_io, AS_IO, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x10, 0x10) AM_WRITE(t5182_sharedram_semaphore_snd_acquire_w) diff --git a/src/mame/audio/taito_en.c b/src/mame/audio/taito_en.c index ef2d4792879..73a01d92bc2 100644 --- a/src/mame/audio/taito_en.c +++ b/src/mame/audio/taito_en.c @@ -287,7 +287,7 @@ static WRITE16_HANDLER(es5510_dsp_w) } } -static ADDRESS_MAP_START( f3_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f3_sound_map, AS_PROGRAM, 16, driver_device ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_MIRROR(0x30000) AM_SHARE("share1") AM_RANGE(0x140000, 0x140fff) AM_READWRITE(f3_68000_share_r, f3_68000_share_w) AM_RANGE(0x200000, 0x20001f) AM_DEVREADWRITE("ensoniq", es5505_r, es5505_w) diff --git a/src/mame/audio/taito_zm.c b/src/mame/audio/taito_zm.c index ad7e4904a05..a754e47957c 100644 --- a/src/mame/audio/taito_zm.c +++ b/src/mame/audio/taito_zm.c @@ -15,7 +15,7 @@ #include "audio/taito_zm.h" #include "sound/zsg2.h" -static ADDRESS_MAP_START(taitozoom_map, AS_PROGRAM, 16) +static ADDRESS_MAP_START(taitozoom_map, AS_PROGRAM, 16, driver_device ) AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("mn10200", 0) AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_RANGE(0x800000, 0x800fff) AM_DEVREADWRITE("zsg2", zsg2_r, zsg2_w) @@ -41,7 +41,7 @@ static WRITE8_HANDLER(tms_ctrl_w) tms_ctrl = data; } -static ADDRESS_MAP_START(taitozoom_io_map, AS_IO, 8) +static ADDRESS_MAP_START(taitozoom_io_map, AS_IO, 8, driver_device ) AM_RANGE(MN10200_PORT1, MN10200_PORT1) AM_READWRITE(tms_ctrl_r, tms_ctrl_w) ADDRESS_MAP_END diff --git a/src/mame/audio/timeplt.c b/src/mame/audio/timeplt.c index 886f45d9d14..00568c41816 100644 --- a/src/mame/audio/timeplt.c +++ b/src/mame/audio/timeplt.c @@ -165,7 +165,7 @@ WRITE8_HANDLER( timeplt_sh_irqtrigger_w ) * *************************************/ -static ADDRESS_MAP_START( timeplt_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( timeplt_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3000, 0x33ff) AM_MIRROR(0x0c00) AM_RAM AM_RANGE(0x4000, 0x4000) AM_MIRROR(0x0fff) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_data_w) @@ -176,7 +176,7 @@ static ADDRESS_MAP_START( timeplt_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( locomotn_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( locomotn_sound_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_MIRROR(0x0c00) AM_RAM AM_RANGE(0x3000, 0x3fff) AM_DEVWRITE("timeplt_audio", timeplt_filter_w) diff --git a/src/mame/audio/williams.c b/src/mame/audio/williams.c index 2919c0b1990..c2bb8fc1c9c 100644 --- a/src/mame/audio/williams.c +++ b/src/mame/audio/williams.c @@ -99,7 +99,7 @@ static WRITE8_HANDLER( narc_slave_sync_w ); ****************************************************************************/ /* CVSD readmem/writemem structures */ -static ADDRESS_MAP_START( williams_cvsd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams_cvsd_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE_MODERN("cvsdpia", pia6821_device, read, write) @@ -111,7 +111,7 @@ ADDRESS_MAP_END /* NARC master readmem/writemem structures */ -static ADDRESS_MAP_START( williams_narc_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams_narc_master_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x03fe) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x2800, 0x2800) AM_MIRROR(0x03ff) AM_WRITE(narc_master_talkback_w) @@ -125,7 +125,7 @@ static ADDRESS_MAP_START( williams_narc_master_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* NARC slave readmem/writemem structures */ -static ADDRESS_MAP_START( williams_narc_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams_narc_slave_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x03ff) AM_DEVWRITE("cvsd", cvsd_clock_set_w) AM_RANGE(0x2400, 0x2400) AM_MIRROR(0x03ff) AM_DEVWRITE("cvsd", cvsd_digit_clock_clear_w) @@ -140,7 +140,7 @@ ADDRESS_MAP_END /* ADPCM readmem/writemem structures */ -static ADDRESS_MAP_START( williams_adpcm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams_adpcm_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x03ff) AM_WRITE(adpcm_bank_select_w) AM_RANGE(0x2400, 0x2401) AM_MIRROR(0x03fe) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/1942.c b/src/mame/drivers/1942.c index 0a033811344..1f74266f22a 100644 --- a/src/mame/drivers/1942.c +++ b/src/mame/drivers/1942.c @@ -86,7 +86,7 @@ static TIMER_DEVICE_CALLBACK( c1942_scanline ) } -static ADDRESS_MAP_START( c1942_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( c1942_map, AS_PROGRAM, 8, _1942_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") @@ -105,7 +105,7 @@ static ADDRESS_MAP_START( c1942_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, _1942_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/1943.c b/src/mame/drivers/1943.c index e3478d297aa..2095c5c95f7 100644 --- a/src/mame/drivers/1943.c +++ b/src/mame/drivers/1943.c @@ -50,7 +50,7 @@ static READ8_HANDLER( c1943_protection_r ) /* Memory Maps */ -static ADDRESS_MAP_START( c1943_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( c1943_map, AS_PROGRAM, 8, _1943_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") @@ -77,7 +77,7 @@ static ADDRESS_MAP_START( c1943_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_SIZE_MEMBER(_1943_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, _1943_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc800) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/1945kiii.c b/src/mame/drivers/1945kiii.c index ce7117a2e22..63bd00c6746 100644 --- a/src/mame/drivers/1945kiii.c +++ b/src/mame/drivers/1945kiii.c @@ -144,7 +144,7 @@ static WRITE16_HANDLER( k3_soundbanks_w ) state->m_oki2->set_bank_base((data & 2) ? 0x40000 : 0); } -static ADDRESS_MAP_START( k3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( k3_map, AS_PROGRAM, 16, k3_state ) AM_RANGE(0x0009ce, 0x0009cf) AM_WRITENOP // bug in code? (clean up log) AM_RANGE(0x0009d2, 0x0009d3) AM_WRITENOP // bug in code? (clean up log) diff --git a/src/mame/drivers/20pacgal.c b/src/mame/drivers/20pacgal.c index 4423c8b0083..6fcdb03262f 100644 --- a/src/mame/drivers/20pacgal.c +++ b/src/mame/drivers/20pacgal.c @@ -198,7 +198,7 @@ static WRITE8_HANDLER( sprite_lookup_w ) state->m_sprite_color_lookup[offset] = data; } -static ADDRESS_MAP_START( 20pacgal_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( 20pacgal_map, AS_PROGRAM, 8, _20pacgal_state ) AM_RANGE(0x00000, 0x03fff) AM_ROM AM_RANGE(0x04000, 0x07fff) AM_ROM AM_RANGE(0x08000, 0x09fff) AM_ROM @@ -225,7 +225,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( 20pacgal_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( 20pacgal_io_map, AS_IO, 8, _20pacgal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x3f) AM_NOP /* Z180 internal registers */ AM_RANGE(0x40, 0x7f) AM_NOP /* Z180 internal registers */ diff --git a/src/mame/drivers/2mindril.c b/src/mame/drivers/2mindril.c index d3899a7028c..5b6a36a23a7 100644 --- a/src/mame/drivers/2mindril.c +++ b/src/mame/drivers/2mindril.c @@ -190,7 +190,7 @@ static WRITE16_HANDLER( drill_irq_w ) COMBINE_DATA(&state->irq_reg); } -static ADDRESS_MAP_START( drill_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drill_map, AS_PROGRAM, 16, taito_f3_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x300000, 0x3000ff) AM_RAM diff --git a/src/mame/drivers/30test.c b/src/mame/drivers/30test.c index e647b464075..4b3031e428f 100644 --- a/src/mame/drivers/30test.c +++ b/src/mame/drivers/30test.c @@ -125,7 +125,7 @@ static WRITE8_DEVICE_HANDLER( hc11_okibank_w ) } -static ADDRESS_MAP_START( namco_30test_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( namco_30test_map, AS_PROGRAM, 8, namco_30test_state ) AM_RANGE(0x0000, 0x003f) AM_RAM // internal I/O AM_RANGE(0x007c, 0x007c) AM_READWRITE(hc11_mux_r,hc11_mux_w) AM_RANGE(0x007e, 0x007e) AM_DEVREADWRITE("oki",hc11_okibank_r,hc11_okibank_w) @@ -145,7 +145,7 @@ static ADDRESS_MAP_START( namco_30test_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( namco_30test_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namco_30test_io, AS_IO, 8, namco_30test_state ) AM_RANGE(MC68HC11_IO_PORTA,MC68HC11_IO_PORTA) AM_READ(namco_30test_mux_r) // AM_RANGE(MC68HC11_IO_PORTD,MC68HC11_IO_PORTD) AM_RAM AM_RANGE(MC68HC11_IO_PORTE,MC68HC11_IO_PORTE) AM_READ_PORT("SYSTEM") diff --git a/src/mame/drivers/39in1.c b/src/mame/drivers/39in1.c index dcc698c5b73..f79f975d8c1 100644 --- a/src/mame/drivers/39in1.c +++ b/src/mame/drivers/39in1.c @@ -1463,7 +1463,7 @@ static DRIVER_INIT( 39in1 ) space->install_legacy_read_handler (0xa0151648, 0xa015164b, FUNC(prot_cheater_r)); } -static ADDRESS_MAP_START( 39in1_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( 39in1_map, AS_PROGRAM, 32, _39in1_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_RANGE(0x00400000, 0x005fffff) AM_ROM AM_REGION("data", 0) AM_RANGE(0x04000000, 0x047fffff) AM_READWRITE( cpld_r, cpld_w ) diff --git a/src/mame/drivers/3do.c b/src/mame/drivers/3do.c index b3e0a953d40..1d4cbd05402 100644 --- a/src/mame/drivers/3do.c +++ b/src/mame/drivers/3do.c @@ -103,7 +103,7 @@ Part list of Goldstar 3DO Interactive Multiplayer #define X601_CLOCK XTAL_16_9344MHz -static ADDRESS_MAP_START( 3do_mem, AS_PROGRAM, 32) +static ADDRESS_MAP_START( 3do_mem, AS_PROGRAM, 32, _3do_state ) AM_RANGE(0x00000000, 0x001FFFFF) AM_RAMBANK("bank1") AM_BASE_MEMBER(_3do_state,m_dram) /* DRAM */ AM_RANGE(0x00200000, 0x003FFFFF) AM_RAM AM_BASE_MEMBER(_3do_state,m_vram) /* VRAM */ AM_RANGE(0x03000000, 0x030FFFFF) AM_ROMBANK("bank2") /* BIOS */ diff --git a/src/mame/drivers/40love.c b/src/mame/drivers/40love.c index b607e3d9965..96f57e09b31 100644 --- a/src/mame/drivers/40love.c +++ b/src/mame/drivers/40love.c @@ -631,7 +631,7 @@ static WRITE8_HANDLER( to_main_w ) /***************************************************************************/ -static ADDRESS_MAP_START( 40love_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( 40love_map, AS_PROGRAM, 8, fortyl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM /* M5517P on main board */ AM_RANGE(0x8800, 0x8800) AM_DEVREADWRITE("bmcu", buggychl_mcu_r, buggychl_mcu_w) @@ -656,7 +656,7 @@ static ADDRESS_MAP_START( 40love_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_READWRITE(fortyl_pixram_r, fortyl_pixram_w) /* banked pixel layer */ ADDRESS_MAP_END -static ADDRESS_MAP_START( undoukai_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( undoukai_map, AS_PROGRAM, 8, fortyl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_BASE_MEMBER(fortyl_state, m_mcu_ram) /* M5517P on main board */ @@ -754,7 +754,7 @@ static WRITE8_DEVICE_HANDLER( sound_control_3_w ) /* unknown */ // popmessage("SND3 0=%02x 1=%02x 2=%02x 3=%02x", state->m_snd_ctrl0, state->m_snd_ctrl1, state->m_snd_ctrl2, state->m_snd_ctrl3); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fortyl_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ay8910_address_data_w) diff --git a/src/mame/drivers/4enraya.c b/src/mame/drivers/4enraya.c index b72d4b47739..8986b08af39 100644 --- a/src/mame/drivers/4enraya.c +++ b/src/mame/drivers/4enraya.c @@ -140,7 +140,7 @@ static WRITE8_HANDLER( fenraya_custom_map_w ) } } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, _4enraya_state ) AM_RANGE(0x0000, 0xffff) AM_READWRITE(fenraya_custom_map_r,fenraya_custom_map_w) #if 0 AM_RANGE(0x0000, 0xbfff) AM_ROM @@ -151,7 +151,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) #endif ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, _4enraya_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW") AM_RANGE(0x01, 0x01) AM_READ_PORT("INPUTS") @@ -160,14 +160,14 @@ static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) AM_RANGE(0x33, 0x33) AM_DEVWRITE("aysnd", sound_control_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( unkpacg_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( unkpacg_main_map, AS_PROGRAM, 8, _4enraya_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x7000, 0x7fff) AM_WRITE(fenraya_videoram_w) AM_BASE_SIZE_MEMBER(_4enraya_state, m_videoram, m_videoram_size) AM_RANGE(0x8000, 0x9fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( unkpacg_main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( unkpacg_main_portmap, AS_IO, 8, _4enraya_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/4roses.c b/src/mame/drivers/4roses.c index d602a679f5c..a9993980e9e 100644 --- a/src/mame/drivers/4roses.c +++ b/src/mame/drivers/4roses.c @@ -199,7 +199,7 @@ public: * Memory map information * *************************/ -static ADDRESS_MAP_START( 4roses_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( 4roses_map, AS_PROGRAM, 8, _4roses_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM // AM_SHARE("nvram") AM_RANGE(0x6000, 0x6fff) AM_RAM_WRITE(funworld_videoram_w) AM_BASE_MEMBER(funworld_state, m_videoram) AM_RANGE(0x7000, 0x7fff) AM_RAM_WRITE(funworld_colorram_w) AM_BASE_MEMBER(funworld_state, m_colorram) diff --git a/src/mame/drivers/5clown.c b/src/mame/drivers/5clown.c index e0b824ab5cb..f9b7dd3ba9f 100644 --- a/src/mame/drivers/5clown.c +++ b/src/mame/drivers/5clown.c @@ -716,7 +716,7 @@ static WRITE8_HANDLER( snd_a02_w ) * Memory map information * *************************/ -static ADDRESS_MAP_START( fclown_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fclown_map, AS_PROGRAM, 8, _5clown_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE_MODERN("crtc", mc6845_device, register_r, register_w) @@ -791,7 +791,7 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( fcaudio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fcaudio_map, AS_PROGRAM, 8, _5clown_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0800) AM_WRITE(snd_800_w) AM_RANGE(0x0a02, 0x0a02) AM_WRITE(snd_a02_w) diff --git a/src/mame/drivers/8080bw.c b/src/mame/drivers/8080bw.c index a3b38a02120..333e96648fc 100644 --- a/src/mame/drivers/8080bw.c +++ b/src/mame/drivers/8080bw.c @@ -342,7 +342,7 @@ INPUT_PORTS_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( invadpt2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( invadpt2_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -408,7 +408,7 @@ MACHINE_CONFIG_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( spcewars_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spcewars_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -463,7 +463,7 @@ MACHINE_CONFIG_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( astropal_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( astropal_io_map, AS_IO, 8, _8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -526,7 +526,7 @@ MACHINE_CONFIG_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( cosmo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cosmo_map, AS_PROGRAM, 8, _8080bw_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_SIZE_MEMBER(_8080bw_state, m_main_ram, m_main_ram_size) AM_RANGE(0x4000, 0x57ff) AM_ROM @@ -534,7 +534,7 @@ static ADDRESS_MAP_START( cosmo_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* at least one of these MWA8_NOPs must be sound related */ -static ADDRESS_MAP_START( cosmo_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cosmo_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITENOP AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITENOP AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_WRITENOP @@ -634,7 +634,7 @@ INPUT_PORTS_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( invrvnge_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( invrvnge_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -767,7 +767,7 @@ INPUT_PORTS_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( lrescue_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( lrescue_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -900,7 +900,7 @@ INPUT_PORTS_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( rollingc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rollingc_map, AS_PROGRAM, 8, _8080bw_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_SIZE_MEMBER(_8080bw_state, m_main_ram, m_main_ram_size) AM_RANGE(0x4000, 0x5fff) AM_ROM @@ -909,7 +909,7 @@ static ADDRESS_MAP_START( rollingc_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rollingc_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( rollingc_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(rollingc_sh_port_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -964,7 +964,7 @@ MACHINE_CONFIG_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( schaser_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( schaser_map, AS_PROGRAM, 8, _8080bw_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_SIZE_MEMBER(_8080bw_state, m_main_ram, m_main_ram_size) AM_RANGE(0x4000, 0x5fff) AM_ROM @@ -972,7 +972,7 @@ static ADDRESS_MAP_START( schaser_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( schaser_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( schaser_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -1089,7 +1089,7 @@ MACHINE_CONFIG_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( schasercv_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( schasercv_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -1158,7 +1158,7 @@ static CUSTOM_INPUT( sflush_80_r ) return (field.machine().primary_screen->vpos() & 0x80) ? 1 : 0; } -static ADDRESS_MAP_START( sflush_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sflush_map, AS_PROGRAM, 8, _8080bw_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_SIZE_MEMBER(_8080bw_state, m_main_ram, m_main_ram_size) AM_RANGE(0x8008, 0x8008) AM_READ_PORT("PADDLE") @@ -1228,7 +1228,7 @@ MACHINE_CONFIG_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( lupin3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( lupin3_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -1385,7 +1385,7 @@ static MACHINE_START( polaris ) // you will get a nice sound that accurately follows the plane. // It sounds better then the actual circuit used. // Probably an unfinished feature. -static ADDRESS_MAP_START( polaris_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( polaris_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("mb14241", mb14241_shift_count_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("discrete", polaris_sh_port_1_w) @@ -1555,7 +1555,7 @@ INPUT_PORTS_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( ballbomb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ballbomb_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -1602,13 +1602,13 @@ MACHINE_CONFIG_END /* */ /*******************************************************/ -static ADDRESS_MAP_START( yosakdon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( yosakdon_map, AS_PROGRAM, 8, _8080bw_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_SIZE_MEMBER(_8080bw_state, m_main_ram, m_main_ram_size) AM_RANGE(0x4000, 0x43ff) AM_WRITEONLY /* what's this? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( yosakdon_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( yosakdon_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_RANGE(0x03, 0x03) AM_WRITE(yosakdon_sh_port_1_w) @@ -1735,7 +1735,7 @@ static READ8_HANDLER(indianbt_r) return space->machine().rand(); } -static ADDRESS_MAP_START( indianbt_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( indianbt_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ(indianbt_r) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) @@ -1781,7 +1781,7 @@ static WRITE8_HANDLER( steelwkr_sh_port_3_w ) coin_lockout_global_w(space->machine(), !(~data & 0x03)); /* possibly */ } -static ADDRESS_MAP_START( steelwkr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( steelwkr_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") AM_DEVWRITE("mb14241", mb14241_shift_count_w) AM_RANGE(0x03, 0x03) AM_DEVREAD("mb14241", mb14241_shift_result_r) AM_WRITE(invadpt2_sh_port_1_w) @@ -1941,14 +1941,14 @@ static INPUT_PORTS_START( skylove ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_PLAYER(1) INPUT_PORTS_END -static ADDRESS_MAP_START( shuttlei_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shuttlei_map, AS_PROGRAM, 8, _8080bw_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_SIZE_MEMBER(_8080bw_state, m_main_ram, m_main_ram_size) AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("share1") // shuttlei AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") // skylove (is it mirrored, or different PCB hookup?) ADDRESS_MAP_END -static ADDRESS_MAP_START( shuttlei_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( shuttlei_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0xfc, 0xfc) AM_WRITENOP /* game writes 0xAA every so often (perhaps when base hit?) */ AM_RANGE(0xfd, 0xfd) AM_WRITE(shuttlei_sh_port_1_w) AM_RANGE(0xfe, 0xfe) AM_READ_PORT("DSW") AM_WRITE(shuttlei_sh_port_2_w) @@ -2014,13 +2014,13 @@ static MACHINE_RESET( darthvdr ) } -static ADDRESS_MAP_START( darthvdr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( darthvdr_map, AS_PROGRAM, 8, _8080bw_state ) AM_RANGE(0x0000, 0x17ff) AM_ROM AM_RANGE(0x1800, 0x1fff) AM_RAM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_SIZE_MEMBER(_8080bw_state, m_main_ram, m_main_ram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( darthvdr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( darthvdr_io_map, AS_IO, 8, _8080bw_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_RANGE(0x00, 0x0f) AM_WRITENOP @@ -2089,7 +2089,7 @@ MACHINE_CONFIG_END * *************************************/ -static ADDRESS_MAP_START( vortex_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( vortex_io_map, AS_IO, 8, _8080bw_state ) // I/O map is same as invaders but with A9 (used as A1 for I/O) inverted ADDRESS_MAP_GLOBAL_MASK(0xFF) AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN0") @@ -2335,7 +2335,7 @@ BOARD 2: // the invaders shifter stuff doesn't seem correct for this, if i hook up the count_w the gfx are corrupt, otherwise they're incorrectly offset? // might need custom implementation -static ADDRESS_MAP_START( modelr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( modelr_io_map, AS_IO, 8, _8080bw_state ) // AM_RANGE(0x00, 0x00) AM_DEVWRITE("mb14241", mb14241_shift_count_w) // AM_RANGE(0x01, 0x01) AM_DEVREAD("mb14241", mb14241_shift_result_r) AM_RANGE(0x02, 0x02) AM_DEVWRITE("mb14241", mb14241_shift_data_w) diff --git a/src/mame/drivers/88games.c b/src/mame/drivers/88games.c index ed8adc2b717..cd576256c2d 100644 --- a/src/mame/drivers/88games.c +++ b/src/mame/drivers/88games.c @@ -134,7 +134,7 @@ static WRITE8_HANDLER( k052109_051960_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, _88games_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_BASE_MEMBER(_88games_state, m_banked_rom) /* banked ROM + palette RAM */ AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(paletteram_xBBBBBGGGGGRRRRR_be_w) AM_BASE_MEMBER(_88games_state, m_paletteram_1000) /* banked ROM + palette RAM */ AM_RANGE(0x2000, 0x2fff) AM_RAM @@ -154,7 +154,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, _88games_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(speech_msg_w) diff --git a/src/mame/drivers/ace.c b/src/mame/drivers/ace.c index 183692af0d4..1cb6d2f8f23 100644 --- a/src/mame/drivers/ace.c +++ b/src/mame/drivers/ace.c @@ -162,7 +162,7 @@ static READ8_HANDLER( unk_r ) /* 3x3106 - SRAM 256x1 */ /* 1x3622 - ROM 512x4 - doesn't seem to be used ????????????*/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, aceal_state ) AM_RANGE(0x0000, 0x09ff) AM_ROM diff --git a/src/mame/drivers/acefruit.c b/src/mame/drivers/acefruit.c index 24cadd96fc3..0b7c06297b4 100644 --- a/src/mame/drivers/acefruit.c +++ b/src/mame/drivers/acefruit.c @@ -274,7 +274,7 @@ static PALETTE_INIT( acefruit ) palette_set_color( machine, 15, MAKE_RGB(0xff, 0x00, 0x00) ); } -static ADDRESS_MAP_START( acefruit_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( acefruit_map, AS_PROGRAM, 8, acefruit_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x20ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_MEMBER(acefruit_state, m_videoram) @@ -296,7 +296,7 @@ static ADDRESS_MAP_START( acefruit_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( acefruit_io, AS_IO, 8 ) +static ADDRESS_MAP_START( acefruit_io, AS_IO, 8, acefruit_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_NOP /* ? */ ADDRESS_MAP_END diff --git a/src/mame/drivers/acommand.c b/src/mame/drivers/acommand.c index 57715ee1e3e..74392b16fb2 100644 --- a/src/mame/drivers/acommand.c +++ b/src/mame/drivers/acommand.c @@ -450,7 +450,7 @@ static WRITE16_HANDLER(ac_unk2_w) popmessage("UNK-2 enabled %04x",data); } -static ADDRESS_MAP_START( acommand_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( acommand_map, AS_PROGRAM, 16, acommand_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x082000, 0x082005) AM_WRITE(ac_bgscroll_w) AM_RANGE(0x082100, 0x082105) AM_WRITE(ac_txscroll_w) diff --git a/src/mame/drivers/actfancr.c b/src/mame/drivers/actfancr.c index ffc53e99952..964399f624d 100644 --- a/src/mame/drivers/actfancr.c +++ b/src/mame/drivers/actfancr.c @@ -76,7 +76,7 @@ static WRITE8_HANDLER( actfancr_buffer_spriteram_w) } } -static ADDRESS_MAP_START( actfan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( actfan_map, AS_PROGRAM, 8, actfancr_state ) AM_RANGE(0x000000, 0x02ffff) AM_ROM AM_RANGE(0x060000, 0x060007) AM_DEVWRITE("tilegen1", deco_bac06_pf_control0_8bit_w) AM_RANGE(0x060010, 0x06001f) AM_DEVWRITE("tilegen1", deco_bac06_pf_control1_8bit_swap_w) @@ -96,7 +96,7 @@ static ADDRESS_MAP_START( actfan_map, AS_PROGRAM, 8 ) AM_RANGE(0x1f0000, 0x1f3fff) AM_RAM AM_BASE_MEMBER(actfancr_state, m_main_ram) /* Main ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( triothep_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( triothep_map, AS_PROGRAM, 8, actfancr_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x040007) AM_DEVWRITE("tilegen2", deco_bac06_pf_control0_8bit_w) AM_RANGE(0x040010, 0x04001f) AM_DEVWRITE("tilegen2", deco_bac06_pf_control1_8bit_swap_w) @@ -118,7 +118,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8, actfancr_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_w) diff --git a/src/mame/drivers/adp.c b/src/mame/drivers/adp.c index ad73d7a8db9..36d65361d03 100644 --- a/src/mame/drivers/adp.c +++ b/src/mame/drivers/adp.c @@ -443,7 +443,7 @@ static READ8_DEVICE_HANDLER(t2_r) return res; } -static ADDRESS_MAP_START( skattv_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( skattv_mem, AS_PROGRAM, 16, adp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE_MODERN("h63484", h63484_device, status_r, address_w) AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE_MODERN("h63484", h63484_device, data_r, data_w) @@ -453,7 +453,7 @@ static ADDRESS_MAP_START( skattv_mem, AS_PROGRAM, 16 ) AM_RANGE(0xffc000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( quickjac_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( quickjac_mem, AS_PROGRAM, 16, adp_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM // AM_RANGE(0x400000, 0x40001f) ? AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE_MODERN("h63484", h63484_device, status_r, address_w) // bad @@ -463,7 +463,7 @@ static ADDRESS_MAP_START( quickjac_mem, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( backgamn_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( backgamn_mem, AS_PROGRAM, 16, adp_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x100000, 0x10003f) AM_RAM AM_RANGE(0x200000, 0x20003f) AM_RAM @@ -508,7 +508,7 @@ static WRITE8_HANDLER( ramdac_io_w ) } } -static ADDRESS_MAP_START( funland_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( funland_mem, AS_PROGRAM, 16, adp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE_MODERN("h63484", h63484_device, status_r, address_w) AM_RANGE(0x800082, 0x800083) AM_DEVREADWRITE_MODERN("h63484", h63484_device, data_r, data_w) @@ -519,7 +519,7 @@ static ADDRESS_MAP_START( funland_mem, AS_PROGRAM, 16 ) AM_RANGE(0xfc0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( fstation_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fstation_mem, AS_PROGRAM, 16, adp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM //400000-40001f? AM_RANGE(0x800080, 0x800081) AM_DEVREADWRITE_MODERN("h63484", h63484_device, status_r, address_w) @@ -641,12 +641,12 @@ static READ8_HANDLER( h63484_rom_r ) return rom[offset]; } -static ADDRESS_MAP_START( adp_h63484_map, AS_0, 8 ) +static ADDRESS_MAP_START( adp_h63484_map, AS_0, 8, adp_state ) AM_RANGE(0x00000, 0x7ffff) AM_DEVREADWRITE_MODERN("h63484",h63484_device, vram_r,vram_w) AM_RANGE(0x80000, 0xbffff) AM_READ(h63484_rom_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( fashiong_h63484_map, AS_0, 8 ) +static ADDRESS_MAP_START( fashiong_h63484_map, AS_0, 8, adp_state ) AM_RANGE(0x00000, 0x7ffff) AM_DEVREADWRITE_MODERN("h63484",h63484_device, vram_r,vram_w) // AM_RANGE(0x40000, 0x7ffff) AM_ROM AM_REGION("gfx1", 0) ADDRESS_MAP_END diff --git a/src/mame/drivers/aeroboto.c b/src/mame/drivers/aeroboto.c index 01af7ae0986..3ca129cbe14 100644 --- a/src/mame/drivers/aeroboto.c +++ b/src/mame/drivers/aeroboto.c @@ -73,7 +73,7 @@ static WRITE8_HANDLER ( aeroboto_1a2_w ) state->m_disable_irq = 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, aeroboto_state ) AM_RANGE(0x01a2, 0x01a2) AM_WRITE(aeroboto_1a2_w) // affects IRQ line (more protection?) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(aeroboto_state, m_mainram) // main RAM AM_RANGE(0x0800, 0x08ff) AM_RAM // tile color buffer; copied to 0x2000 @@ -96,7 +96,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM // main ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aeroboto_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x9000, 0x9001) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x9002, 0x9002) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/aerofgt.c b/src/mame/drivers/aerofgt.c index 7f1d4613bfd..fb4ae4db60b 100644 --- a/src/mame/drivers/aerofgt.c +++ b/src/mame/drivers/aerofgt.c @@ -140,7 +140,7 @@ static WRITE8_HANDLER( aerfboot_okim6295_banking_w ) memcpy(&oki[0x20000], &oki[((data & 0x3) * 0x20000) + 0x40000], 0x20000); } -static ADDRESS_MAP_START( pspikes_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pspikes_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */ AM_RANGE(0x200000, 0x203fff) AM_RAM AM_BASE_SIZE_MEMBER(aerofgt_state, m_spriteram1, m_spriteram1_size) @@ -154,7 +154,7 @@ static ADDRESS_MAP_START( pspikes_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff006, 0xfff007) AM_READWRITE(pending_command_r, sound_command_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( pspikesb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pspikesb_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */ AM_RANGE(0x200000, 0x203fff) AM_RAM AM_BASE_SIZE_MEMBER(aerofgt_state, m_spriteram1, m_spriteram1_size) @@ -171,7 +171,7 @@ static ADDRESS_MAP_START( pspikesb_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff008, 0xfff009) AM_DEVWRITE("oki", pspikesb_oki_banking_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( spikes91_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spikes91_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */ AM_RANGE(0x200000, 0x203fff) AM_RAM AM_BASE_SIZE_MEMBER(aerofgt_state, m_spriteram1, m_spriteram1_size) @@ -191,7 +191,7 @@ static ADDRESS_MAP_START( spikes91_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff008, 0xfff009) AM_WRITE(spikes91_lookup_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( pspikesc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pspikesc_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */ AM_RANGE(0x200000, 0x203fff) AM_RAM AM_BASE_SIZE_MEMBER(aerofgt_state, m_spriteram1, m_spriteram1_size) @@ -206,7 +206,7 @@ static ADDRESS_MAP_START( pspikesc_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff006, 0xfff007) AM_DEVREADWRITE8_MODERN("oki", okim6295_device, read, write, 0x00ff) ADDRESS_MAP_END -static ADDRESS_MAP_START( karatblz_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( karatblz_map, AS_PROGRAM, 16, aerofgt_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x081fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_BASE_MEMBER(aerofgt_state, m_bg1videoram) @@ -227,7 +227,7 @@ static ADDRESS_MAP_START( karatblz_map, AS_PROGRAM, 16 ) AM_RANGE(0x0ff00e, 0x0ff00f) AM_WRITE(aerofgt_bg2scrolly_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( spinlbrk_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spinlbrk_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_BASE_MEMBER(aerofgt_state, m_bg1videoram) AM_RANGE(0x082000, 0x082fff) AM_RAM_WRITE(aerofgt_bg2videoram_w) AM_BASE_MEMBER(aerofgt_state, m_bg2videoram) @@ -241,7 +241,7 @@ static ADDRESS_MAP_START( spinlbrk_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff006, 0xfff007) AM_WRITE(sound_command_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( turbofrc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( turbofrc_map, AS_PROGRAM, 16, aerofgt_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */ @@ -263,7 +263,7 @@ static ADDRESS_MAP_START( turbofrc_map, AS_PROGRAM, 16 ) AM_RANGE(0x0ff00e, 0x0ff00f) AM_WRITE(turbofrc_sound_command_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( aerofgtb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( aerofgtb_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */ AM_RANGE(0x0d0000, 0x0d1fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_BASE_MEMBER(aerofgt_state, m_bg1videoram) @@ -283,7 +283,7 @@ static ADDRESS_MAP_START( aerofgtb_map, AS_PROGRAM, 16 ) AM_RANGE(0x0ff000, 0x0fffff) AM_RAM AM_BASE_MEMBER(aerofgt_state, m_rasterram) /* used only for the scroll registers */ ADDRESS_MAP_END -static ADDRESS_MAP_START( aerofgt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( aerofgt_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x1a0000, 0x1a07ff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x1b0000, 0x1b07ff) AM_RAM AM_BASE_MEMBER(aerofgt_state, m_rasterram) /* used only for the scroll registers */ @@ -308,7 +308,7 @@ static ADDRESS_MAP_START( aerofgt_map, AS_PROGRAM, 16 ) AM_RANGE(0xffffc0, 0xffffc1) AM_WRITE(sound_command_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( aerfboot_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( aerfboot_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */ AM_RANGE(0x0d0000, 0x0d1fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_BASE_MEMBER(aerofgt_state, m_bg1videoram) @@ -337,7 +337,7 @@ static ADDRESS_MAP_START( aerfboot_map, AS_PROGRAM, 16 ) AM_RANGE(0x10c000, 0x117fff) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( aerfboo2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( aerfboo2_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* work RAM */ AM_RANGE(0x0d0000, 0x0d1fff) AM_RAM_WRITE(aerofgt_bg1videoram_w) AM_BASE_MEMBER(aerofgt_state, m_bg1videoram) @@ -365,7 +365,7 @@ static ADDRESS_MAP_START( aerfboo2_map, AS_PROGRAM, 16 ) AM_RANGE(0x0ff000, 0x0fffff) AM_RAM AM_BASE_MEMBER(aerofgt_state, m_rasterram) /* used only for the scroll registers */ ADDRESS_MAP_END -static ADDRESS_MAP_START( wbbc97_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wbbc97_map, AS_PROGRAM, 16, aerofgt_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x500000, 0x50ffff) AM_RAM /* work RAM */ AM_RANGE(0x600000, 0x605fff) AM_RAM AM_BASE_SIZE_MEMBER(aerofgt_state, m_spriteram1, m_spriteram1_size) @@ -381,20 +381,20 @@ static ADDRESS_MAP_START( wbbc97_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff00e, 0xfff00f) AM_WRITE(wbbc97_bitmap_enable_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aerofgt_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( turbofrc_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( turbofrc_sound_portmap, AS_IO, 8, aerofgt_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(aerofgt_sh_bankswitch_w) AM_RANGE(0x14, 0x14) AM_READWRITE(soundlatch_r, pending_command_clear_w) AM_RANGE(0x18, 0x1b) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( aerofgt_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( aerofgt_sound_portmap, AS_IO, 8, aerofgt_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) AM_RANGE(0x04, 0x04) AM_WRITE(aerofgt_sh_bankswitch_w) @@ -402,7 +402,7 @@ static ADDRESS_MAP_START( aerofgt_sound_portmap, AS_IO, 8 ) AM_RANGE(0x0c, 0x0c) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( aerfboot_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aerfboot_sound_map, AS_PROGRAM, 8, aerofgt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(aerfboot_okim6295_banking_w) @@ -410,7 +410,7 @@ static ADDRESS_MAP_START( aerfboot_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( wbbc97_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wbbc97_sound_map, AS_PROGRAM, 8, aerofgt_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/airbustr.c b/src/mame/drivers/airbustr.c index 16afb9ec071..e154daa2a05 100644 --- a/src/mame/drivers/airbustr.c +++ b/src/mame/drivers/airbustr.c @@ -349,7 +349,7 @@ static WRITE8_HANDLER( airbustr_coin_counter_w ) } /* Memory Maps */ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, airbustr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_DEVREADWRITE("pandora", pandora_spriteram_r, pandora_spriteram_w) @@ -358,14 +358,14 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( master_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( master_io_map, AS_IO, 8, airbustr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(master_bankswitch_w) AM_RANGE(0x01, 0x01) AM_WRITENOP // ??? AM_RANGE(0x02, 0x02) AM_WRITE(master_nmi_trigger_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, airbustr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(airbustr_videoram2_w) AM_BASE_MEMBER(airbustr_state, m_videoram2) @@ -378,7 +378,7 @@ static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( slave_io_map, AS_IO, 8, airbustr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(slave_bankswitch_w) AM_RANGE(0x02, 0x02) AM_READWRITE(soundcommand2_r, soundcommand_w) @@ -391,13 +391,13 @@ static ADDRESS_MAP_START( slave_io_map, AS_IO, 8 ) AM_RANGE(0x38, 0x38) AM_WRITENOP // irq ack / irq mask ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, airbustr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3") AM_RANGE(0xc000, 0xdfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, airbustr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(sound_bankswitch_w) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/ajax.c b/src/mame/drivers/ajax.c index 62216c4ab83..635eb53f2d0 100644 --- a/src/mame/drivers/ajax.c +++ b/src/mame/drivers/ajax.c @@ -25,7 +25,7 @@ static WRITE8_HANDLER( sound_bank_w ); /****************************************************************************/ -static ADDRESS_MAP_START( ajax_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ajax_main_map, AS_PROGRAM, 8, ajax_state ) AM_RANGE(0x0000, 0x01c0) AM_READWRITE(ajax_ls138_f10_r, ajax_ls138_f10_w) /* bankswitch + sound command + FIRQ command */ AM_RANGE(0x0800, 0x0807) AM_DEVREADWRITE("k051960", k051937_r, k051937_w) /* sprite control registers */ AM_RANGE(0x0c00, 0x0fff) AM_DEVREADWRITE("k051960", k051960_r, k051960_w) /* sprite RAM 2128SL at J7 */ @@ -36,7 +36,7 @@ static ADDRESS_MAP_START( ajax_main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM N11 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( ajax_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ajax_sub_map, AS_PROGRAM, 8, ajax_state ) AM_RANGE(0x0000, 0x07ff) AM_DEVREADWRITE("k051316", k051316_r, k051316_w) /* 051316 zoom/rotation layer */ AM_RANGE(0x0800, 0x080f) AM_DEVWRITE("k051316", k051316_ctrl_w) /* 051316 control registers */ AM_RANGE(0x1000, 0x17ff) AM_DEVREAD("k051316", k051316_rom_r) /* 051316 (ROM test) */ @@ -47,7 +47,7 @@ static ADDRESS_MAP_START( ajax_sub_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM I16 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( ajax_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ajax_sound_map, AS_PROGRAM, 8, ajax_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM F6 */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM 2128SL at D16 */ AM_RANGE(0x9000, 0x9000) AM_WRITE(sound_bank_w) /* 007232 bankswitch */ diff --git a/src/mame/drivers/albazc.c b/src/mame/drivers/albazc.c index 940c3ca904e..3cf875d9ed3 100644 --- a/src/mame/drivers/albazc.c +++ b/src/mame/drivers/albazc.c @@ -149,7 +149,7 @@ static WRITE8_HANDLER( albazc_vregs_w ) /* main cpu */ -static ADDRESS_MAP_START( hanaroku_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hanaroku_map, AS_PROGRAM, 8, albazc_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(albazc_state, m_spriteram1) AM_RANGE(0x9000, 0x97ff) AM_RAM AM_BASE_MEMBER(albazc_state, m_spriteram2) diff --git a/src/mame/drivers/albazg.c b/src/mame/drivers/albazg.c index 7edeaa144c1..5ec1cf15eaa 100644 --- a/src/mame/drivers/albazg.c +++ b/src/mame/drivers/albazg.c @@ -227,7 +227,7 @@ static I8255A_INTERFACE( ppi8255_intf ) /***************************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, albazg_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa7fc, 0xa7fc) AM_WRITE(prot_lock_w) @@ -240,7 +240,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, albazg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x01, 0x01) AM_DEVWRITE_MODERN("crtc", mc6845_device, register_w) diff --git a/src/mame/drivers/aleck64.c b/src/mame/drivers/aleck64.c index 732c86faacb..76decfa3d83 100644 --- a/src/mame/drivers/aleck64.c +++ b/src/mame/drivers/aleck64.c @@ -275,7 +275,7 @@ static READ32_HANDLER( aleck_dips_r ) 4MB @ 0xd0800000 - 0xd0bfffff doncdoon, hipai, kurufev, twrshaft, srmvs : unused */ -static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32, n64_state ) AM_RANGE(0x00000000, 0x007fffff) AM_RAM /*AM_MIRROR(0xc0000000)*/ AM_BASE(&rdram) // RDRAM AM_RANGE(0x03f00000, 0x03f00027) AM_DEVREADWRITE_MODERN("rcp", n64_periphs, rdram_reg_r, rdram_reg_w) @@ -304,7 +304,7 @@ static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rsp_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( rsp_map, AS_PROGRAM, 32, n64_state ) AM_RANGE(0x00000000, 0x00000fff) AM_RAM AM_SHARE("dmem") AM_RANGE(0x00001000, 0x00001fff) AM_RAM AM_SHARE("imem") AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_BASE(&rsp_dmem) AM_SHARE("dmem") diff --git a/src/mame/drivers/alg.c b/src/mame/drivers/alg.c index d54133bf06a..9c0774dc5f7 100644 --- a/src/mame/drivers/alg.c +++ b/src/mame/drivers/alg.c @@ -278,7 +278,7 @@ static WRITE8_DEVICE_HANDLER( alg_cia_1_porta_w ) * *************************************/ -static ADDRESS_MAP_START( main_map_r1, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map_r1, AS_PROGRAM, 16, alg_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE_MEMBER(alg_state, m_chip_ram, m_chip_ram_size) AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE(amiga_cia_r, amiga_cia_w) @@ -291,7 +291,7 @@ static ADDRESS_MAP_START( main_map_r1, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_map_r2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map_r2, AS_PROGRAM, 16, alg_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE_MEMBER(alg_state, m_chip_ram, m_chip_ram_size) AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE(amiga_cia_r, amiga_cia_w) @@ -304,7 +304,7 @@ static ADDRESS_MAP_START( main_map_r2, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_map_picmatic, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map_picmatic, AS_PROGRAM, 16, alg_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE_MEMBER(alg_state, m_chip_ram, m_chip_ram_size) AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE(amiga_cia_r, amiga_cia_w) diff --git a/src/mame/drivers/aliens.c b/src/mame/drivers/aliens.c index d5dd671c539..c68dedd9f41 100644 --- a/src/mame/drivers/aliens.c +++ b/src/mame/drivers/aliens.c @@ -122,7 +122,7 @@ static WRITE8_HANDLER( k052109_051960_w ) k051960_w(state->m_k051960, offset - 0x3c00, data); } -static ADDRESS_MAP_START( aliens_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aliens_map, AS_PROGRAM, 8, aliens_state ) AM_RANGE(0x0000, 0x03ff) AM_READWRITE(bankedram_r, bankedram_w) AM_BASE_MEMBER(aliens_state, m_ram) /* palette + work RAM */ AM_RANGE(0x0400, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") /* banked ROM */ @@ -137,7 +137,7 @@ static ADDRESS_MAP_START( aliens_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM e24_j02.bin */ ADDRESS_MAP_END -static ADDRESS_MAP_START( aliens_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aliens_sound_map, AS_PROGRAM, 8, aliens_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM g04_b03.bin */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/alpha68k.c b/src/mame/drivers/alpha68k.c index 03c49549793..303fe79ba74 100644 --- a/src/mame/drivers/alpha68k.c +++ b/src/mame/drivers/alpha68k.c @@ -665,7 +665,7 @@ static READ16_HANDLER( alpha_V_trigger_r ) /******************************************************************************/ -static ADDRESS_MAP_START( kyros_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kyros_map, AS_PROGRAM, 16, alpha68k_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM // main program AM_RANGE(0x020000, 0x020fff) AM_RAM AM_BASE_MEMBER(alpha68k_state, m_shared_ram) // work RAM AM_RANGE(0x040000, 0x041fff) AM_RAM AM_BASE_MEMBER(alpha68k_state, m_spriteram) // sprite RAM @@ -675,7 +675,7 @@ static ADDRESS_MAP_START( kyros_map, AS_PROGRAM, 16 ) AM_RANGE(0x0e0000, 0x0e0001) AM_READWRITE(kyros_dip_r, kyros_sound_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( alpha68k_I_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( alpha68k_I_map, AS_PROGRAM, 16, alpha68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // main program AM_RANGE(0x080000, 0x083fff) AM_RAM // work RAM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_BASE_MEMBER(alpha68k_state, m_spriteram) // video RAM @@ -686,7 +686,7 @@ static ADDRESS_MAP_START( alpha68k_I_map, AS_PROGRAM, 16 ) AM_RANGE(0x380000, 0x380001) AM_READ_PORT("IN2") AM_WRITE(paddlema_soundlatch_w) // LSB: sound latch write and RST38 trigger, joy3, joy4 ADDRESS_MAP_END -static ADDRESS_MAP_START( alpha68k_II_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( alpha68k_II_map, AS_PROGRAM, 16, alpha68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x040fff) AM_RAM AM_BASE_MEMBER(alpha68k_state, m_shared_ram) AM_RANGE(0x080000, 0x080001) AM_READ(control_1_r) /* Joysticks */ @@ -705,7 +705,7 @@ static ADDRESS_MAP_START( alpha68k_II_map, AS_PROGRAM, 16 ) AM_RANGE(0x800000, 0x83ffff) AM_ROMBANK("bank8") ADDRESS_MAP_END -static ADDRESS_MAP_START( alpha68k_V_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( alpha68k_V_map, AS_PROGRAM, 16, alpha68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM AM_BASE_MEMBER(alpha68k_state, m_shared_ram) AM_RANGE(0x080000, 0x080001) AM_READWRITE(control_1_r, alpha68k_V_sound_w) /* Joysticks */ @@ -725,7 +725,7 @@ ADDRESS_MAP_END static READ16_HANDLER(sound_cpu_r) { return 1; } -static ADDRESS_MAP_START( tnextspc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tnextspc_map, AS_PROGRAM, 16, alpha68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x070000, 0x073fff) AM_RAM AM_RANGE(0x0a0000, 0x0a3fff) AM_RAM AM_BASE_MEMBER(alpha68k_state, m_spriteram) @@ -750,13 +750,13 @@ static WRITE8_HANDLER( sound_bank_w ) memory_set_bank(space->machine(), "bank7", data); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, alpha68k_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank7") ADDRESS_MAP_END -static ADDRESS_MAP_START( kyros_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kyros_sound_map, AS_PROGRAM, 8, alpha68k_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) @@ -772,7 +772,7 @@ static ADDRESS_MAP_START( kyros_sound_map, AS_PROGRAM, 8 ) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sstingry_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sstingry_sound_map, AS_PROGRAM, 8, alpha68k_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xc100, 0xc100) AM_READ(soundlatch_r) @@ -781,12 +781,12 @@ static ADDRESS_MAP_START( sstingry_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xc106, 0xc10e) AM_WRITENOP // soundboard I/O's, ignored ADDRESS_MAP_END -static ADDRESS_MAP_START( jongbou_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jongbou_sound_map, AS_PROGRAM, 8, alpha68k_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( alpha68k_I_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( alpha68k_I_s_map, AS_PROGRAM, 8, alpha68k_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xe000, 0xe000) AM_READWRITE(soundlatch_r, soundlatch_clear_w) AM_RANGE(0xe800, 0xe800) AM_DEVREADWRITE("ymsnd", ym3812_status_port_r, ym3812_control_port_w) @@ -796,13 +796,13 @@ static ADDRESS_MAP_START( alpha68k_I_s_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tnextspc_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tnextspc_sound_map, AS_PROGRAM, 8, alpha68k_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_READWRITE(soundlatch_r, soundlatch_clear_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, alpha68k_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch_r, soundlatch_clear_w) AM_RANGE(0x08, 0x08) AM_DEVWRITE("dac", dac_signed_w) @@ -811,7 +811,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) AM_RANGE(0x0e, 0x0e) AM_WRITE(sound_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( kyros_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( kyros_sound_portmap, AS_IO, 8, alpha68k_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x11) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x80, 0x80) AM_DEVWRITE("ym2", ym2203_write_port_w) @@ -820,7 +820,7 @@ static ADDRESS_MAP_START( kyros_sound_portmap, AS_IO, 8 ) AM_RANGE(0x91, 0x91) AM_DEVWRITE("ym3", ym2203_control_port_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( jongbou_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( jongbou_sound_portmap, AS_IO, 8, alpha68k_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_data_w) @@ -828,7 +828,7 @@ static ADDRESS_MAP_START( jongbou_sound_portmap, AS_IO, 8 ) AM_RANGE(0x06, 0x06) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( tnextspc_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( tnextspc_sound_portmap, AS_IO, 8, alpha68k_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_status_port_r, ym3812_control_port_w) AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_write_port_w) @@ -1964,7 +1964,7 @@ static MACHINE_START( alpha68k_II ) } -static ADDRESS_MAP_START( i8748_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( i8748_portmap, AS_IO, 8, alpha68k_state ) // AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(saiyugoub1_mcu_command_r) // AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_DEVWRITE("adpcm", saiyugoub1_m5205_clk_w) /* Drives the clock on the m5205 at 1/8 of this frequency */ // AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(saiyugoub1_m5205_irq_r) diff --git a/src/mame/drivers/amaticmg.c b/src/mame/drivers/amaticmg.c index 13cdf71207a..e0388eded05 100644 --- a/src/mame/drivers/amaticmg.c +++ b/src/mame/drivers/amaticmg.c @@ -463,7 +463,7 @@ static PALETTE_INIT( amaticmg3 ) * Memory Map Information * ************************************/ -static ADDRESS_MAP_START( amaticmg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( amaticmg_map, AS_PROGRAM, 8, amaticmg_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROM // AM_RANGE(0x0000, 0x0000) AM_RAM // AM_SHARE("nvram") // AM_RANGE(0x0000, 0x0000) AM_DEVWRITE("crtc", mc6845_address_w) @@ -472,7 +472,7 @@ static ADDRESS_MAP_START( amaticmg_map, AS_PROGRAM, 8 ) // AM_RANGE(0x0000, 0x0000) AM_RAM_WRITE(amaticmg_colorram_w) AM_BASE(&amaticmg_colorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( amaticmg_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( amaticmg_portmap, AS_IO, 8, amaticmg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) // AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) diff --git a/src/mame/drivers/ambush.c b/src/mame/drivers/ambush.c index cce890305e4..12b1475023a 100644 --- a/src/mame/drivers/ambush.c +++ b/src/mame/drivers/ambush.c @@ -63,7 +63,7 @@ static WRITE8_HANDLER( flip_screen_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, ambush_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(watchdog_reset_r) @@ -79,7 +79,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xcc07, 0xcc07) AM_WRITE(ambush_coin_counter_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, ambush_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_address_w) AM_RANGE(0x01, 0x01) AM_DEVWRITE("ay1", ay8910_data_w) diff --git a/src/mame/drivers/ampoker2.c b/src/mame/drivers/ampoker2.c index 4a9919102ed..642f2a4f556 100644 --- a/src/mame/drivers/ampoker2.c +++ b/src/mame/drivers/ampoker2.c @@ -602,13 +602,13 @@ static WRITE8_HANDLER( ampoker2_watchdog_reset_w ) * Memory map information * *************************/ -static ADDRESS_MAP_START( ampoker2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ampoker2_map, AS_PROGRAM, 8, ampoker2_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(ampoker2_videoram_w) AM_BASE_MEMBER(ampoker2_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( ampoker2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ampoker2_io_map, AS_IO, 8, ampoker2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x08, 0x0f) AM_WRITENOP /* inexistent in the real hardware */ AM_RANGE(0x10, 0x10) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/amspdwy.c b/src/mame/drivers/amspdwy.c index 53b0b5076cf..4b73ee28f5e 100644 --- a/src/mame/drivers/amspdwy.c +++ b/src/mame/drivers/amspdwy.c @@ -74,7 +74,7 @@ static WRITE8_HANDLER( amspdwy_sound_w ) device_set_input_line(state->m_audiocpu, INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( amspdwy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( amspdwy_map, AS_PROGRAM, 8, amspdwy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0x801f) AM_WRITE(amspdwy_paletteram_w) AM_BASE_GENERIC(paletteram)// Palette AM_RANGE(0x9000, 0x93ff) AM_MIRROR(0x0400) AM_RAM_WRITE(amspdwy_videoram_w) AM_BASE_MEMBER(amspdwy_state, m_videoram) // Layer, mirrored? @@ -98,7 +98,7 @@ static READ8_HANDLER( amspdwy_port_r ) return tracks[offset]; } -static ADDRESS_MAP_START( amspdwy_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( amspdwy_portmap, AS_IO, 8, amspdwy_state ) AM_RANGE(0x0000, 0x7fff) AM_READ(amspdwy_port_r) ADDRESS_MAP_END @@ -112,7 +112,7 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( amspdwy_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( amspdwy_sound_map, AS_PROGRAM, 8, amspdwy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM // AM_RANGE(0x8000, 0x8000) AM_WRITENOP // ? Written with 0 at the start AM_RANGE(0x9000, 0x9000) AM_READ(soundlatch_r) // From Main CPU diff --git a/src/mame/drivers/angelkds.c b/src/mame/drivers/angelkds.c index 835617c1770..76552717ffb 100644 --- a/src/mame/drivers/angelkds.c +++ b/src/mame/drivers/angelkds.c @@ -192,7 +192,7 @@ contain a level. */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, angelkds_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -210,7 +210,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf005, 0xf005) AM_WRITE(angelkds_layer_ctrl_write) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, angelkds_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP // 00 on start-up, not again AM_RANGE(0x42, 0x42) AM_WRITE(angelkds_cpu_bank_write) @@ -226,7 +226,7 @@ ADDRESS_MAP_END /* sub cpu */ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, angelkds_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xaaa9, 0xaaa9) AM_READNOP @@ -234,7 +234,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) AM_RANGE(0xaaac, 0xaaac) AM_READNOP ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sub_portmap, AS_IO, 8, angelkds_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/appoooh.c b/src/mame/drivers/appoooh.c index 2b278cf0b9e..6a3a13d8cf3 100644 --- a/src/mame/drivers/appoooh.c +++ b/src/mame/drivers/appoooh.c @@ -213,7 +213,7 @@ static WRITE8_HANDLER( appoooh_adpcm_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, appoooh_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xdfff) AM_ROMBANK("bank1") @@ -229,7 +229,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, appoooh_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76496_w) diff --git a/src/mame/drivers/aquarium.c b/src/mame/drivers/aquarium.c index 975d09b0153..59a8b4921e6 100644 --- a/src/mame/drivers/aquarium.c +++ b/src/mame/drivers/aquarium.c @@ -106,7 +106,7 @@ static WRITE8_HANDLER( aquarium_oki_w ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, aquarium_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0xc00000, 0xc00fff) AM_RAM_WRITE(aquarium_mid_videoram_w) AM_BASE_MEMBER(aquarium_state, m_mid_videoram) AM_RANGE(0xc01000, 0xc01fff) AM_RAM_WRITE(aquarium_bak_videoram_w) AM_BASE_MEMBER(aquarium_state, m_bak_videoram) @@ -124,13 +124,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8, aquarium_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( snd_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( snd_portmap, AS_IO, 8, aquarium_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x02, 0x02) AM_READWRITE(aquarium_oki_r, aquarium_oki_w) diff --git a/src/mame/drivers/arabian.c b/src/mame/drivers/arabian.c index a2fc7cb4a0c..57fb6bcb204 100644 --- a/src/mame/drivers/arabian.c +++ b/src/mame/drivers/arabian.c @@ -182,7 +182,7 @@ static WRITE8_HANDLER( mcu_port_p_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, arabian_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_WRITE(arabian_videoram_w) AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x01ff) AM_READ_PORT("IN0") @@ -199,7 +199,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, arabian_state ) AM_RANGE(0xc800, 0xc800) AM_MIRROR(0x01ff) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0xca00, 0xca00) AM_MIRROR(0x01ff) AM_DEVWRITE("aysnd", ay8910_data_w) ADDRESS_MAP_END @@ -212,7 +212,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, arabian_state ) AM_RANGE(MB88_PORTK, MB88_PORTK ) AM_READ(mcu_portk_r) AM_RANGE(MB88_PORTO, MB88_PORTO ) AM_WRITE(mcu_port_o_w) AM_RANGE(MB88_PORTP, MB88_PORTP ) AM_WRITE(mcu_port_p_w) diff --git a/src/mame/drivers/arcadecl.c b/src/mame/drivers/arcadecl.c index 67121e8845f..1d825506514 100644 --- a/src/mame/drivers/arcadecl.c +++ b/src/mame/drivers/arcadecl.c @@ -152,7 +152,7 @@ static WRITE16_HANDLER( latch_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, arcadecl_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_BASE_MEMBER(arcadecl_state, m_bitmap) AM_RANGE(0x3c0000, 0x3c07ff) AM_RAM_WRITE(atarigen_expanded_666_paletteram_w) AM_BASE_GENERIC(paletteram) diff --git a/src/mame/drivers/arcadia.c b/src/mame/drivers/arcadia.c index 728f8270c38..9854a7ecb30 100644 --- a/src/mame/drivers/arcadia.c +++ b/src/mame/drivers/arcadia.c @@ -192,7 +192,7 @@ static void arcadia_reset_coins(running_machine &machine) * *************************************/ -static ADDRESS_MAP_START( amiga_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( amiga_map, AS_PROGRAM, 16, arcadia_amiga_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE_MEMBER(arcadia_amiga_state, m_chip_ram, m_chip_ram_size) AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE(amiga_cia_r, amiga_cia_w) diff --git a/src/mame/drivers/argus.c b/src/mame/drivers/argus.c index 5cd7ba3a246..64621c83d00 100644 --- a/src/mame/drivers/argus.c +++ b/src/mame/drivers/argus.c @@ -190,7 +190,7 @@ static WRITE8_HANDLER( argus_bankselect_w ) ***************************************************************************/ -static ADDRESS_MAP_START( argus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( argus_map, AS_PROGRAM, 8, argus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") @@ -214,7 +214,7 @@ static ADDRESS_MAP_START( argus_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( valtric_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( valtric_map, AS_PROGRAM, 8, argus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") @@ -238,7 +238,7 @@ static ADDRESS_MAP_START( valtric_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( butasan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( butasan_map, AS_PROGRAM, 8, argus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") @@ -265,26 +265,26 @@ static ADDRESS_MAP_START( butasan_map, AS_PROGRAM, 8 ) AM_RANGE(0xf680, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map_a, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_a, AS_PROGRAM, 8, argus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xc000, 0xc000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8, argus_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) ADDRESS_MAP_END #if 0 -static ADDRESS_MAP_START( sound_portmap_1, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap_1, AS_IO, 8, argus_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) ADDRESS_MAP_END #endif -static ADDRESS_MAP_START( sound_portmap_2, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap_2, AS_IO, 8, argus_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x80, 0x81) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/aristmk4.c b/src/mame/drivers/aristmk4.c index e11c87d56b6..f120197655e 100644 --- a/src/mame/drivers/aristmk4.c +++ b/src/mame/drivers/aristmk4.c @@ -870,7 +870,7 @@ ADDRESS MAP - SLOT GAMES ******************************************************************************/ -static ADDRESS_MAP_START( aristmk4_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aristmk4_map, AS_PROGRAM, 8, aristmk4_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(aristmk4_state, m_mkiv_vram) // video ram - chips U49 / U50 AM_RANGE(0x0800, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1800) AM_DEVREADWRITE_MODERN("crtc", mc6845_device, status_r, address_w) @@ -914,7 +914,7 @@ The graphics rom is mapped from 0x4000 - 0x4fff The U87 personality rom is not required, therefore game rom code mapping is from 0x8000-0xffff */ -static ADDRESS_MAP_START( aristmk4_poker_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aristmk4_poker_map, AS_PROGRAM, 8, aristmk4_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(aristmk4_state, m_mkiv_vram) // video ram - chips U49 / U50 AM_RANGE(0x0800, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1800) AM_DEVREADWRITE_MODERN("crtc", mc6845_device, status_r, address_w) diff --git a/src/mame/drivers/aristmk5.c b/src/mame/drivers/aristmk5.c index 26ba7c710cc..1eb9afc0bd6 100644 --- a/src/mame/drivers/aristmk5.c +++ b/src/mame/drivers/aristmk5.c @@ -291,7 +291,7 @@ static WRITE32_HANDLER( sram_banksel_w ) } /* U.S games have no dram emulator enabled */ -static ADDRESS_MAP_START( aristmk5_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( aristmk5_map, AS_PROGRAM, 32, aristmk5_state ) AM_RANGE(0x00000000, 0x01ffffff) AM_READWRITE(archimedes_memc_logical_r, archimedes_memc_logical_w) AM_RANGE(0x02000000, 0x02ffffff) AM_RAM AM_BASE(&archimedes_memc_physmem) /* physical RAM - 16 MB for now, should be 512k for the A310 */ @@ -317,7 +317,7 @@ static ADDRESS_MAP_START( aristmk5_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END /* with dram emulator enabled */ -static ADDRESS_MAP_START( aristmk5_drame_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( aristmk5_drame_map, AS_PROGRAM, 32, aristmk5_state ) AM_RANGE(0x00000000, 0x01ffffff) AM_READWRITE(aristmk5_drame_memc_logical_r, archimedes_memc_logical_w) AM_RANGE(0x02000000, 0x02ffffff) AM_RAM AM_BASE(&archimedes_memc_physmem) /* physical RAM - 16 MB for now, should be 512k for the A310 */ diff --git a/src/mame/drivers/aristmk6.c b/src/mame/drivers/aristmk6.c index f3b72584b74..0ecd2a94150 100644 --- a/src/mame/drivers/aristmk6.c +++ b/src/mame/drivers/aristmk6.c @@ -114,13 +114,13 @@ static READ64_HANDLER( test_r ) return -1; } -static ADDRESS_MAP_START( aristmk6_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( aristmk6_map, AS_PROGRAM, 64, aristmk6_state ) AM_RANGE(0x00000000, 0x003fffff) AM_ROM AM_REGION("maincpu", 0) AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM // work ram AM_RANGE(0x13800000, 0x13800007) AM_READ(test_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( aristmk6_port, AS_IO, 64 ) +static ADDRESS_MAP_START( aristmk6_port, AS_IO, 64, aristmk6_state ) ADDRESS_MAP_END diff --git a/src/mame/drivers/arkanoid.c b/src/mame/drivers/arkanoid.c index bca1ceb08bf..b3ad78055b5 100644 --- a/src/mame/drivers/arkanoid.c +++ b/src/mame/drivers/arkanoid.c @@ -554,7 +554,7 @@ DIP locations verified for: /* Memory Maps */ -static ADDRESS_MAP_START( arkanoid_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( arkanoid_map, AS_PROGRAM, 8, arkanoid_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -569,7 +569,7 @@ static ADDRESS_MAP_START( arkanoid_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_READNOP /* fixes instant death in final level */ ADDRESS_MAP_END -static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, arkanoid_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd000) AM_DEVWRITE("aysnd", ay8910_address_w) @@ -584,7 +584,7 @@ static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_READNOP /* fixes instant death in final level */ ADDRESS_MAP_END -static ADDRESS_MAP_START( hexa_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hexa_map, AS_PROGRAM, 8, arkanoid_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -595,7 +595,7 @@ static ADDRESS_MAP_START( hexa_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(arkanoid_videoram_w) AM_BASE_SIZE_MEMBER(arkanoid_state, m_videoram, m_videoram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( brixian_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( brixian_map, AS_PROGRAM, 8, arkanoid_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd000) AM_DEVWRITE("aysnd", ay8910_address_w) @@ -614,7 +614,7 @@ static ADDRESS_MAP_START( brixian_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, arkanoid_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(arkanoid_68705_port_a_r, arkanoid_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READ_PORT("MUX") diff --git a/src/mame/drivers/armedf.c b/src/mame/drivers/armedf.c index e13caa663d3..a2746632b81 100644 --- a/src/mame/drivers/armedf.c +++ b/src/mame/drivers/armedf.c @@ -391,7 +391,7 @@ static WRITE16_HANDLER( irq_lv2_ack_w ) * *************************************/ -static ADDRESS_MAP_START( terraf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( terraf_map, AS_PROGRAM, 16, armedf_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x0603ff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x060400, 0x063fff) AM_RAM @@ -413,7 +413,7 @@ static ADDRESS_MAP_START( terraf_map, AS_PROGRAM, 16 ) AM_RANGE(0x07c00e, 0x07c00f) AM_WRITE(irq_lv1_ack_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( kozure_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kozure_map, AS_PROGRAM, 16, armedf_state ) AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x061000, 0x063fff) AM_RAM // AM_RANGE(0x07c000, 0x07c001) AM_WRITE(kozure_io_w) @@ -422,7 +422,7 @@ static ADDRESS_MAP_START( kozure_map, AS_PROGRAM, 16 ) AM_IMPORT_FROM( terraf_map ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cclimbr2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cclimbr2_map, AS_PROGRAM, 16, armedf_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x061000, 0x063fff) AM_RAM @@ -444,7 +444,7 @@ static ADDRESS_MAP_START( cclimbr2_map, AS_PROGRAM, 16 ) AM_RANGE(0x07c00e, 0x07c00f) AM_WRITE(irq_lv2_ack_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( legion_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( legion_map, AS_PROGRAM, 16, armedf_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x061000, 0x063fff) AM_RAM @@ -477,7 +477,7 @@ static WRITE8_HANDLER( legiono_fg_scroll_w ) state->m_fg_scrolly = (state->m_legion_cmd[0x00] & 0xff) | ((state->m_legion_cmd[0x01] & 0x3) << 8); } -static ADDRESS_MAP_START( legiono_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( legiono_map, AS_PROGRAM, 16, armedf_state ) AM_RANGE(0x040000, 0x04003f) AM_WRITE8(legiono_fg_scroll_w,0x00ff) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram") @@ -500,7 +500,7 @@ static ADDRESS_MAP_START( legiono_map, AS_PROGRAM, 16 ) AM_RANGE(0x07c00e, 0x07c00f) AM_WRITE(irq_lv2_ack_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( armedf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( armedf_map, AS_PROGRAM, 16, armedf_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x060fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x061000, 0x065fff) AM_RAM @@ -677,7 +677,7 @@ static READ16_HANDLER(sharedram_r) return state->m_sharedram[offset]; } -static ADDRESS_MAP_START( bigfghtr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigfghtr_map, AS_PROGRAM, 16, armedf_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x0805ff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x080600, 0x083fff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_MEMBER(bigfghtr_state, m_sharedram) @@ -703,12 +703,12 @@ static ADDRESS_MAP_START( bigfghtr_map, AS_PROGRAM, 16 ) AM_RANGE(0x400000, 0x400001) AM_READ(latch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, armedf_state ) AM_RANGE(0x0000, 0xf7ff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cclimbr2_soundmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cclimbr2_soundmap, AS_PROGRAM, 8, armedf_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xffff) AM_RAM ADDRESS_MAP_END @@ -751,20 +751,20 @@ static WRITE8_HANDLER( fg_scroll_msb_w ) } -static ADDRESS_MAP_START( terrafb_extraz80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( terrafb_extraz80_map, AS_PROGRAM, 8, armedf_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_READWRITE(blitter_txram_r,blitter_txram_w) AM_RANGE(0x8000, 0x87ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( terrafb_extraz80_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( terrafb_extraz80_portmap, AS_IO, 8, armedf_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00,0x00) AM_WRITE(fg_scrollx_w) AM_RANGE(0x01,0x01) AM_WRITE(fg_scrolly_w) AM_RANGE(0x02,0x02) AM_WRITE(fg_scroll_msb_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, armedf_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x0, 0x1) AM_DEVWRITE("ymsnd", ym3812_w) AM_RANGE(0x2, 0x2) AM_DEVWRITE("dac1", dac_signed_w) diff --git a/src/mame/drivers/artmagic.c b/src/mame/drivers/artmagic.c index 42dd5a306f8..7f0e3e27310 100644 --- a/src/mame/drivers/artmagic.c +++ b/src/mame/drivers/artmagic.c @@ -424,7 +424,7 @@ static WRITE16_HANDLER( protection_bit_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, artmagic_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x220000, 0x23ffff) AM_RAM AM_RANGE(0x240000, 0x240fff) AM_RAM AM_SHARE("nvram") @@ -441,7 +441,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( stonebal_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( stonebal_map, AS_PROGRAM, 16, artmagic_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x27ffff) AM_RAM AM_RANGE(0x280000, 0x280fff) AM_RAM AM_SHARE("nvram") @@ -464,7 +464,7 @@ static READ16_HANDLER(unk_r) return space->machine().rand(); } -static ADDRESS_MAP_START( shtstar_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shtstar_map, AS_PROGRAM, 16, artmagic_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x27ffff) AM_RAM AM_RANGE(0x280000, 0x280fff) AM_RAM AM_SHARE("nvram") @@ -506,7 +506,7 @@ static const tms34010_config tms_config = }; -static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 16, artmagic_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(artmagic_state, m_vram0) AM_RANGE(0x00400000, 0x005fffff) AM_RAM AM_BASE_MEMBER(artmagic_state, m_vram1) AM_RANGE(0x00800000, 0x0080007f) AM_READWRITE(artmagic_blitter_r, artmagic_blitter_w) @@ -516,7 +516,7 @@ static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( stonebal_tms_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( stonebal_tms_map, AS_PROGRAM, 16, artmagic_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(artmagic_state, m_vram0) AM_RANGE(0x00400000, 0x005fffff) AM_RAM AM_BASE_MEMBER(artmagic_state, m_vram1) AM_RANGE(0x00800000, 0x0080007f) AM_READWRITE(artmagic_blitter_r, artmagic_blitter_w) @@ -533,16 +533,16 @@ ADDRESS_MAP_END *************************************/ /* see adp.c */ -static ADDRESS_MAP_START( shtstar_subcpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shtstar_subcpu_map, AS_PROGRAM, 16, artmagic_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0xffc000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( shtstar_guncpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shtstar_guncpu_map, AS_PROGRAM, 8, artmagic_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( shtstar_guncpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( shtstar_guncpu_io_map, AS_IO, 8, artmagic_state ) AM_RANGE(0xc000, 0xcfff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/ashnojoe.c b/src/mame/drivers/ashnojoe.c index abbef9e774c..e7428824c66 100644 --- a/src/mame/drivers/ashnojoe.c +++ b/src/mame/drivers/ashnojoe.c @@ -96,7 +96,7 @@ static WRITE16_HANDLER( ashnojoe_soundlatch_w ) } } -static ADDRESS_MAP_START( ashnojoe_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ashnojoe_map, AS_PROGRAM, 16, ashnojoe_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x041fff) AM_RAM_WRITE(ashnojoe_tileram3_w) AM_BASE_MEMBER(ashnojoe_state, m_tileram_3) AM_RANGE(0x042000, 0x043fff) AM_RAM_WRITE(ashnojoe_tileram4_w) AM_BASE_MEMBER(ashnojoe_state, m_tileram_4) @@ -138,13 +138,13 @@ static READ8_HANDLER( sound_latch_status_r ) return state->m_soundlatch_status; } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ashnojoe_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank4") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, ashnojoe_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x02, 0x02) AM_WRITE(adpcm_w) diff --git a/src/mame/drivers/asterix.c b/src/mame/drivers/asterix.c index 8834a9fd374..a72fcaeaf94 100644 --- a/src/mame/drivers/asterix.c +++ b/src/mame/drivers/asterix.c @@ -174,7 +174,7 @@ static WRITE16_HANDLER( protection_w ) } } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, asterix_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x107fff) AM_RAM AM_RANGE(0x180000, 0x1807ff) AM_DEVREADWRITE("k053244", k053245_word_r, k053245_word_w) @@ -197,7 +197,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x440000, 0x44003f) AM_DEVWRITE("k056832", k056832_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, asterix_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf801, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_status_port_r, ym2151_data_port_w) diff --git a/src/mame/drivers/asteroid.c b/src/mame/drivers/asteroid.c index 7b8036e3a9e..2144e2bd3a1 100644 --- a/src/mame/drivers/asteroid.c +++ b/src/mame/drivers/asteroid.c @@ -234,7 +234,7 @@ static WRITE8_HANDLER( llander_led_w ) * *************************************/ -static ADDRESS_MAP_START( asteroid_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( asteroid_map, AS_PROGRAM, 8, asteroid_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x02ff) AM_RAMBANK("bank1") AM_BASE_MEMBER(asteroid_state, m_ram1) @@ -255,7 +255,7 @@ static ADDRESS_MAP_START( asteroid_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( astdelux_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( astdelux_map, AS_PROGRAM, 8, asteroid_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x02ff) AM_RAMBANK("bank1") AM_BASE_MEMBER(asteroid_state, m_ram1) @@ -281,7 +281,7 @@ static ADDRESS_MAP_START( astdelux_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( llander_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( llander_map, AS_PROGRAM, 8, asteroid_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x1f00) AM_RANGE(0x2000, 0x2000) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/astinvad.c b/src/mame/drivers/astinvad.c index d078b7b9921..8fe392a4a07 100644 --- a/src/mame/drivers/astinvad.c +++ b/src/mame/drivers/astinvad.c @@ -394,7 +394,7 @@ static WRITE8_HANDLER( spaceint_sound2_w ) * *************************************/ -static ADDRESS_MAP_START( kamikaze_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kamikaze_map, AS_PROGRAM, 8, astinvad_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x1bff) AM_ROM AM_RANGE(0x1c00, 0x1fff) AM_RAM @@ -402,20 +402,20 @@ static ADDRESS_MAP_START( kamikaze_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spaceint_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spaceint_map, AS_PROGRAM, 8, astinvad_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(spaceint_videoram_w) AM_BASE_SIZE_MEMBER(astinvad_state, m_videoram, m_videoram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( kamikaze_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( kamikaze_portmap, AS_IO, 8, astinvad_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_READWRITE(kamikaze_ppi_r, kamikaze_ppi_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( spaceint_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( spaceint_portmap, AS_IO, 8, astinvad_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/astrafr.c b/src/mame/drivers/astrafr.c index 135ee37757e..c539e039ba7 100644 --- a/src/mame/drivers/astrafr.c +++ b/src/mame/drivers/astrafr.c @@ -23,19 +23,19 @@ public: }; -static ADDRESS_MAP_START( astrafr_master_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( astrafr_master_map, AS_PROGRAM, 32, astrafr_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // as_partyd set ADDRESS_MAP_END // probably identical, afaik they're linekd units.. -static ADDRESS_MAP_START( astrafr_slave_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( astrafr_slave_map, AS_PROGRAM, 32, astrafr_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // as_partyd set ADDRESS_MAP_END -static ADDRESS_MAP_START( astra_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( astra_map, AS_PROGRAM, 32, astrafr_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // as_partyd set ADDRESS_MAP_END diff --git a/src/mame/drivers/astrocde.c b/src/mame/drivers/astrocde.c index a6b33d4cf1d..04349d2e501 100644 --- a/src/mame/drivers/astrocde.c +++ b/src/mame/drivers/astrocde.c @@ -592,7 +592,7 @@ static WRITE8_HANDLER( tenpindx_lights_w ) * *************************************/ -static ADDRESS_MAP_START( seawolf2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( seawolf2_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w) AM_RANGE(0x4000, 0x7fff) AM_RAM AM_BASE_MEMBER(astrocde_state, m_videoram) @@ -600,14 +600,14 @@ static ADDRESS_MAP_START( seawolf2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ebases_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ebases_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w) AM_RANGE(0x4000, 0x7fff) AM_RAM AM_BASE_MEMBER(astrocde_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( spacezap_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spacezap_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w) AM_RANGE(0x4000, 0x7fff) AM_RAM AM_BASE_MEMBER(astrocde_state, m_videoram) @@ -616,7 +616,7 @@ static ADDRESS_MAP_START( spacezap_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( wow_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wow_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w) AM_RANGE(0x4000, 0x7fff) AM_RAM AM_BASE_MEMBER(astrocde_state, m_videoram) @@ -626,7 +626,7 @@ static ADDRESS_MAP_START( wow_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( robby_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( robby_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w) AM_RANGE(0x4000, 0x7fff) AM_RAM AM_BASE_MEMBER(astrocde_state, m_videoram) @@ -637,7 +637,7 @@ static ADDRESS_MAP_START( robby_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( profpac_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( profpac_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w) AM_RANGE(0x4000, 0x7fff) AM_READWRITE(profpac_videoram_r, profpac_videoram_w) @@ -649,7 +649,7 @@ static ADDRESS_MAP_START( profpac_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( demndrgn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( demndrgn_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x0000, 0x3fff) AM_WRITE(astrocade_funcgen_w) AM_RANGE(0x4000, 0x7fff) AM_READWRITE(profpac_videoram_r, profpac_videoram_w) @@ -660,7 +660,7 @@ static ADDRESS_MAP_START( demndrgn_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tenpin_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tenpin_sub_map, AS_PROGRAM, 8, astrocde_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -674,19 +674,19 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, astrocde_state ) AM_RANGE(0x0000, 0x0019) AM_MIRROR(0xff00) AM_MASK(0xffff) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map_mono_pattern, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map_mono_pattern, AS_IO, 8, astrocde_state ) AM_RANGE(0x0000, 0x0019) AM_MIRROR(0xff00) AM_MASK(0xffff) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w) AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w) AM_RANGE(0xa55b, 0xa55b) AM_WRITE(protected_ram_enable_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map_stereo_pattern, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map_stereo_pattern, AS_IO, 8, astrocde_state ) AM_RANGE(0x0000, 0x0019) AM_MIRROR(0xff00) AM_MASK(0xffff) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w) AM_RANGE(0x0050, 0x0058) AM_MIRROR(0xff00) AM_MASK(0xffff) AM_DEVWRITE("astrocade2", astrocade_sound_w) AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w) @@ -694,7 +694,7 @@ static ADDRESS_MAP_START( port_map_stereo_pattern, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map_16col_pattern, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map_16col_pattern, AS_IO, 8, astrocde_state ) AM_RANGE(0x0000, 0x0019) AM_MIRROR(0xff00) AM_MASK(0xffff) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w) AM_RANGE(0x0050, 0x0058) AM_MIRROR(0xff00) AM_MASK(0xffff) AM_DEVWRITE("astrocade2", astrocade_sound_w) AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w) @@ -706,7 +706,7 @@ static ADDRESS_MAP_START( port_map_16col_pattern, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map_16col_pattern_nosound, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map_16col_pattern_nosound, AS_IO, 8, astrocde_state ) AM_RANGE(0x0000, 0x0019) AM_MIRROR(0xff00) AM_MASK(0xffff) AM_READWRITE(astrocade_data_chip_register_r, astrocade_data_chip_register_w) AM_RANGE(0x0078, 0x007e) AM_MIRROR(0xff00) AM_WRITE(astrocade_pattern_board_w) AM_RANGE(0x00bf, 0x00bf) AM_MIRROR(0xff00) AM_WRITE(profpac_page_select_w) @@ -717,7 +717,7 @@ static ADDRESS_MAP_START( port_map_16col_pattern_nosound, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tenpin_sub_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tenpin_sub_io_map, AS_IO, 8, astrocde_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x90, 0x93) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) AM_RANGE(0x97, 0x97) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/astrocorp.c b/src/mame/drivers/astrocorp.c index 775faf92736..3dc9df1e01a 100644 --- a/src/mame/drivers/astrocorp.c +++ b/src/mame/drivers/astrocorp.c @@ -282,7 +282,7 @@ static WRITE16_HANDLER( astrocorp_palette_w ) ); } -static ADDRESS_MAP_START( showhand_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( showhand_map, AS_PROGRAM, 16, astrocorp_state ) AM_RANGE( 0x000000, 0x01ffff ) AM_ROM AM_RANGE( 0x050000, 0x050fff ) AM_RAM AM_BASE_SIZE_MEMBER(astrocorp_state, m_spriteram, m_spriteram_size) AM_RANGE( 0x052000, 0x052001 ) AM_WRITE(astrocorp_draw_sprites_w) @@ -297,7 +297,7 @@ static ADDRESS_MAP_START( showhand_map, AS_PROGRAM, 16 ) AM_RANGE( 0x0d0000, 0x0d0001 ) AM_READ(astrocorp_unk_r) AM_DEVWRITE8_MODERN("oki", okim6295_device, write, 0xff00) ADDRESS_MAP_END -static ADDRESS_MAP_START( showhanc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( showhanc_map, AS_PROGRAM, 16, astrocorp_state ) AM_RANGE( 0x000000, 0x01ffff ) AM_ROM AM_RANGE( 0x060000, 0x0601ff ) AM_RAM_WRITE(astrocorp_palette_w) AM_BASE_MEMBER(astrocorp_state, m_paletteram) AM_RANGE( 0x070000, 0x070001 ) AM_DEVWRITE("oki", astrocorp_sound_bank_w) @@ -312,7 +312,7 @@ static ADDRESS_MAP_START( showhanc_map, AS_PROGRAM, 16 ) AM_RANGE( 0x0e0000, 0x0e0001 ) AM_READ(astrocorp_unk_r) AM_DEVWRITE8_MODERN("oki", okim6295_device, write, 0xff00) ADDRESS_MAP_END -static ADDRESS_MAP_START( skilldrp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( skilldrp_map, AS_PROGRAM, 16, astrocorp_state ) AM_RANGE( 0x000000, 0x03ffff ) AM_ROM AM_RANGE( 0x200000, 0x200fff ) AM_RAM AM_BASE_SIZE_MEMBER(astrocorp_state, m_spriteram, m_spriteram_size) AM_RANGE( 0x202000, 0x202001 ) AM_WRITE(astrocorp_draw_sprites_w) @@ -327,7 +327,7 @@ static ADDRESS_MAP_START( skilldrp_map, AS_PROGRAM, 16 ) AM_RANGE( 0x600000, 0x600001 ) AM_DEVREADWRITE8_MODERN("oki", okim6295_device, read, write, 0x00ff) ADDRESS_MAP_END -static ADDRESS_MAP_START( speeddrp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( speeddrp_map, AS_PROGRAM, 16, astrocorp_state ) AM_RANGE( 0x000000, 0x01ffff ) AM_ROM AM_RANGE( 0x280000, 0x283fff ) AM_RAM AM_SHARE("nvram") // battery AM_RANGE( 0x380000, 0x380fff ) AM_RAM AM_BASE_SIZE_MEMBER(astrocorp_state, m_spriteram, m_spriteram_size) diff --git a/src/mame/drivers/astrof.c b/src/mame/drivers/astrof.c index 55e505bb8ab..3e6a4b083f2 100644 --- a/src/mame/drivers/astrof.c +++ b/src/mame/drivers/astrof.c @@ -584,7 +584,7 @@ static MACHINE_RESET( abattle ) * *************************************/ -static ADDRESS_MAP_START( astrof_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( astrof_map, AS_PROGRAM, 8, astrof_state ) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_NOP AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(astrof_videoram_w) AM_BASE_SIZE_MEMBER(astrof_state, m_videoram, m_videoram_size) @@ -603,7 +603,7 @@ static ADDRESS_MAP_START( astrof_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spfghmk2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spfghmk2_map, AS_PROGRAM, 8, astrof_state ) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_NOP AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(astrof_videoram_w) AM_BASE_SIZE_MEMBER(astrof_state, m_videoram, m_videoram_size) @@ -622,7 +622,7 @@ static ADDRESS_MAP_START( spfghmk2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tomahawk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tomahawk_map, AS_PROGRAM, 8, astrof_state ) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_NOP AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(tomahawk_videoram_w) AM_BASE_SIZE_MEMBER(astrof_state, m_videoram, m_videoram_size) diff --git a/src/mame/drivers/asuka.c b/src/mame/drivers/asuka.c index 9e5eb17630d..58020d9876b 100644 --- a/src/mame/drivers/asuka.c +++ b/src/mame/drivers/asuka.c @@ -311,7 +311,7 @@ static WRITE16_HANDLER( cadash_share_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( bonzeadv_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bonzeadv_map, AS_PROGRAM, 16, asuka_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_RANGE(0x10c000, 0x10ffff) AM_RAM @@ -331,7 +331,7 @@ static ADDRESS_MAP_START( bonzeadv_map, AS_PROGRAM, 16 ) AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("pc090oj", pc090oj_word_r, pc090oj_word_w) /* sprite ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( asuka_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( asuka_map, AS_PROGRAM, 16, asuka_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x1076f0, 0x1076f1) AM_READNOP /* Mofflott init does dummy reads here */ @@ -346,7 +346,7 @@ static ADDRESS_MAP_START( asuka_map, AS_PROGRAM, 16 ) AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("pc090oj", pc090oj_word_r, pc090oj_word_w) /* sprite ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cadash_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cadash_map, AS_PROGRAM, 16, asuka_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080003) AM_WRITE(asuka_spritectrl_w) AM_RANGE(0x0c0000, 0x0c0001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0x00ff) @@ -360,7 +360,7 @@ static ADDRESS_MAP_START( cadash_map, AS_PROGRAM, 16 ) AM_RANGE(0xc20000, 0xc2000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_ctrl_word_r, tc0100scn_ctrl_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( eto_map, AS_PROGRAM, 16 ) /* N.B. tc100scn mirror overlaps spriteram */ +static ADDRESS_MAP_START( eto_map, AS_PROGRAM, 16 /* N.B. tc100scn mirror overlaps spriteram */, asuka_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10000f) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_word_r, tc0110pcr_step1_word_w) AM_RANGE(0x200000, 0x203fff) AM_RAM @@ -378,7 +378,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( bonzeadv_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bonzeadv_z80_map, AS_PROGRAM, 8, asuka_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -392,7 +392,7 @@ static ADDRESS_MAP_START( bonzeadv_z80_map, AS_PROGRAM, 8 ) AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, asuka_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM @@ -406,7 +406,7 @@ static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* no MSM5205 */ -static ADDRESS_MAP_START( cadash_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cadash_z80_map, AS_PROGRAM, 8, asuka_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM @@ -431,12 +431,12 @@ communicates with m68k S with its own shared ram. In short: m68k M -> z180 M <-> z180 S <- m68k S */ -static ADDRESS_MAP_START( cadash_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cadash_sub_map, AS_PROGRAM, 8, asuka_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE(&cadash_shared_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( cadash_sub_io, AS_IO, 8 ) +static ADDRESS_MAP_START( cadash_sub_io, AS_IO, 8, asuka_state ) AM_RANGE(0x00, 0x3f) AM_RAM // z180 internal I/O regs ADDRESS_MAP_END diff --git a/src/mame/drivers/atarifb.c b/src/mame/drivers/atarifb.c index d45670f5cdc..ef04333d161 100644 --- a/src/mame/drivers/atarifb.c +++ b/src/mame/drivers/atarifb.c @@ -146,7 +146,7 @@ static PALETTE_INIT( atarifb ) * *************************************/ -static ADDRESS_MAP_START( atarifb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atarifb_map, AS_PROGRAM, 8, atarifb_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_BASE_MEMBER(atarifb_state, m_alphap1_videoram) @@ -166,7 +166,7 @@ static ADDRESS_MAP_START( atarifb_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( atarifb4_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atarifb4_map, AS_PROGRAM, 8, atarifb_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_BASE_MEMBER(atarifb_state, m_alphap1_videoram) @@ -187,7 +187,7 @@ static ADDRESS_MAP_START( atarifb4_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( abaseb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( abaseb_map, AS_PROGRAM, 8, atarifb_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_BASE_MEMBER(atarifb_state, m_alphap1_videoram) @@ -207,7 +207,7 @@ static ADDRESS_MAP_START( abaseb_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( soccer_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( soccer_map, AS_PROGRAM, 8, atarifb_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x025f) AM_RAM_WRITE(atarifb_alpha1_videoram_w) AM_BASE_MEMBER(atarifb_state, m_alphap1_videoram) diff --git a/src/mame/drivers/atarig1.c b/src/mame/drivers/atarig1.c index f7f42032be5..1363ee1250a 100644 --- a/src/mame/drivers/atarig1.c +++ b/src/mame/drivers/atarig1.c @@ -210,7 +210,7 @@ static void pitfightb_cheap_slapstic_init(running_machine &machine) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarig1_state ) AM_RANGE(0x000000, 0x037fff) AM_ROM AM_RANGE(0x038000, 0x03ffff) AM_ROM /* pitfight slapstic goes here */ AM_RANGE(0x040000, 0x077fff) AM_ROM diff --git a/src/mame/drivers/atarig42.c b/src/mame/drivers/atarig42.c index 8635bfe212c..c2b189c3a68 100644 --- a/src/mame/drivers/atarig42.c +++ b/src/mame/drivers/atarig42.c @@ -348,7 +348,7 @@ static WRITE16_HANDLER( guardians_sloop_data_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarig42_state ) AM_RANGE(0x000000, 0x080001) AM_ROM AM_RANGE(0xe00000, 0xe00001) AM_READ_PORT("IN0") AM_RANGE(0xe00002, 0xe00003) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/atarigt.c b/src/mame/drivers/atarigt.c index 9aa2cecd85c..55ede01a76a 100644 --- a/src/mame/drivers/atarigt.c +++ b/src/mame/drivers/atarigt.c @@ -603,7 +603,7 @@ static WRITE32_HANDLER( colorram_protection_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, atarigt_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0xc00000, 0xc00003) AM_READWRITE(sound_data_r, sound_data_w) AM_RANGE(0xd00014, 0xd00017) AM_READ(analog_port0_r) diff --git a/src/mame/drivers/atarigx2.c b/src/mame/drivers/atarigx2.c index 7a6635d641d..c3a63a33e68 100644 --- a/src/mame/drivers/atarigx2.c +++ b/src/mame/drivers/atarigx2.c @@ -1149,7 +1149,7 @@ static READ32_HANDLER( atarigx2_protection_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, atarigx2_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0xc80000, 0xc80fff) AM_RAM diff --git a/src/mame/drivers/atarisy1.c b/src/mame/drivers/atarisy1.c index 3fabbc04c43..ac435aeba07 100644 --- a/src/mame/drivers/atarisy1.c +++ b/src/mame/drivers/atarisy1.c @@ -468,7 +468,7 @@ static WRITE8_HANDLER( led_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarisy1_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x087fff) AM_ROM /* slapstic maps here */ AM_RANGE(0x2e0000, 0x2e0001) AM_READ(atarisy1_int3state_r) @@ -502,7 +502,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, atarisy1_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x100f) AM_DEVREADWRITE_MODERN("via6522_0", via6522_device, read, write) AM_RANGE(0x1800, 0x1801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/atarisy2.c b/src/mame/drivers/atarisy2.c index 675fb9aa342..0b2ff81635c 100644 --- a/src/mame/drivers/atarisy2.c +++ b/src/mame/drivers/atarisy2.c @@ -799,7 +799,7 @@ static WRITE8_HANDLER( coincount_w ) *************************************/ /* full memory map derived from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarisy2_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x11ff) AM_MIRROR(0x0200) AM_RAM_WRITE(atarisy2_paletteram_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x1400, 0x1403) AM_MIRROR(0x007c) AM_READWRITE(adc_r, bankselect_w) AM_BASE_MEMBER(atarisy2_state, m_bankselect) @@ -830,7 +830,7 @@ ADDRESS_MAP_END *************************************/ /* full memory map derived from schematics */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, atarisy2_state ) AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x2000) AM_RAM AM_RANGE(0x1000, 0x17ff) AM_MIRROR(0x2000) AM_RAM AM_SHARE("eeprom") AM_RANGE(0x1800, 0x180f) AM_MIRROR(0x2780) AM_DEVREADWRITE("pokey1", pokey_r, pokey_w) diff --git a/src/mame/drivers/atarisy4.c b/src/mame/drivers/atarisy4.c index 535867f3633..5c2201a32e4 100644 --- a/src/mame/drivers/atarisy4.c +++ b/src/mame/drivers/atarisy4.c @@ -623,7 +623,7 @@ static WRITE16_HANDLER( dsp1_bank_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, atarisy4_state ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE_MEMBER(atarisy4_state, m_m68k_ram) AM_RANGE(0x010000, 0x01ffff) AM_RAM AM_RANGE(0x580000, 0x580001) AM_READ_PORT("JOYSTICK") @@ -644,13 +644,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsp0_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dsp0_map, AS_PROGRAM, 16, atarisy4_state ) ADDRESS_MAP_GLOBAL_MASK(0xfff) AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("dsp0_bank0") AM_RANGE(0x0800, 0x0fff) AM_RAMBANK("dsp0_bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( dsp0_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( dsp0_io_map, AS_IO, 16, atarisy4_state ) AM_RANGE(0x00, 0x01) AM_WRITE(dsp0_bank_w) AM_RANGE(TMS32010_BIO, TMS32010_BIO) AM_READ(dsp0_bio_r) ADDRESS_MAP_END @@ -662,13 +662,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsp1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dsp1_map, AS_PROGRAM, 16, atarisy4_state ) ADDRESS_MAP_GLOBAL_MASK(0xfff) AM_RANGE(0x0000, 0x07ff) AM_RAMBANK("dsp1_bank0") AM_RANGE(0x0800, 0x0fff) AM_RAMBANK("dsp1_bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( dsp1_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( dsp1_io_map, AS_IO, 16, atarisy4_state ) AM_RANGE(0x00, 0x01) AM_WRITE(dsp1_bank_w) AM_RANGE(TMS32010_BIO, TMS32010_BIO) AM_READ(dsp1_bio_r) ADDRESS_MAP_END diff --git a/src/mame/drivers/ataxx.c b/src/mame/drivers/ataxx.c index 8f9c25b78e0..4a8cd674ebf 100644 --- a/src/mame/drivers/ataxx.c +++ b/src/mame/drivers/ataxx.c @@ -45,7 +45,7 @@ * *************************************/ -static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8, leland_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xdfff) AM_ROMBANK("bank2") AM_WRITE(ataxx_battery_ram_w) AM_SHARE("battery") @@ -54,7 +54,7 @@ static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( master_map_io, AS_IO, 8, leland_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x04, 0x04) AM_DEVREAD("custom", leland_80186_response_r) AM_RANGE(0x05, 0x05) AM_DEVWRITE("custom", leland_80186_command_hi_w) @@ -74,7 +74,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( slave_map_program, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map_program, AS_PROGRAM, 8, leland_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x9fff) AM_ROMBANK("bank3") AM_RANGE(0xa000, 0xdfff) AM_ROM @@ -85,7 +85,7 @@ static ADDRESS_MAP_START( slave_map_program, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( slave_map_io, AS_IO, 8, leland_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x60, 0x7f) AM_READWRITE(ataxx_svram_port_r, ataxx_svram_port_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/atetris.c b/src/mame/drivers/atetris.c index cf9f391128e..6c2a0972cc4 100644 --- a/src/mame/drivers/atetris.c +++ b/src/mame/drivers/atetris.c @@ -201,7 +201,7 @@ static WRITE8_HANDLER( nvram_enable_w ) *************************************/ /* full address map derived from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, atetris_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(atetris_videoram_w) AM_BASE_MEMBER(atetris_state, m_videoram) AM_RANGE(0x2000, 0x20ff) AM_MIRROR(0x0300) AM_RAM_WRITE(paletteram_RRRGGGBB_w) AM_BASE_GENERIC(paletteram) @@ -218,7 +218,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( atetrisb2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atetrisb2_map, AS_PROGRAM, 8, atetris_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(atetris_videoram_w) AM_BASE_MEMBER(atetris_state, m_videoram) AM_RANGE(0x2000, 0x20ff) AM_RAM_WRITE(paletteram_RRRGGGBB_w) AM_BASE_GENERIC(paletteram) diff --git a/src/mame/drivers/attckufo.c b/src/mame/drivers/attckufo.c index 8f5d82ab5e8..f26daf79bfc 100644 --- a/src/mame/drivers/attckufo.c +++ b/src/mame/drivers/attckufo.c @@ -117,7 +117,7 @@ static WRITE8_HANDLER(attckufo_io_w) */ } -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, attckufo_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_BASE_MEMBER(attckufo_state, m_mainram) AM_RANGE(0x1000, 0x100f) AM_DEVREADWRITE("mos6560", mos6560_port_r, mos6560_port_w) diff --git a/src/mame/drivers/atvtrack.c b/src/mame/drivers/atvtrack.c index 1edd2a6dc43..cffc366312b 100644 --- a/src/mame/drivers/atvtrack.c +++ b/src/mame/drivers/atvtrack.c @@ -341,7 +341,7 @@ static MACHINE_RESET(atvtrack) exec->set_input_line(INPUT_LINE_RESET, ASSERT_LINE); } -static ADDRESS_MAP_START( atvtrack_main_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( atvtrack_main_map, AS_PROGRAM, 64, atvtrack_state ) AM_RANGE(0x00000000, 0x000003ff) AM_RAM AM_SHARE("sharedmem") AM_RANGE(0x00020000, 0x00020007) AM_READWRITE(area1_r, area1_w) AM_RANGE(0x14000000, 0x14000007) AM_READWRITE(area2_r, area2_w) // data @@ -350,16 +350,16 @@ static ADDRESS_MAP_START( atvtrack_main_map, AS_PROGRAM, 64 ) AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( atvtrack_main_port, AS_IO, 64 ) +static ADDRESS_MAP_START( atvtrack_main_port, AS_IO, 64, atvtrack_state ) AM_RANGE(0x00, 0x1f) AM_READWRITE(ioport_r, ioport_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( atvtrack_sub_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( atvtrack_sub_map, AS_PROGRAM, 64, atvtrack_state ) AM_RANGE(0x00000000, 0x000003ff) AM_RAM AM_SHARE("sharedmem") AM_RANGE(0x0c000000, 0x0cffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( atvtrack_sub_port, AS_IO, 64 ) +static ADDRESS_MAP_START( atvtrack_sub_port, AS_IO, 64, atvtrack_state ) /*AM_RANGE(0x00, 0x1f) AM_READWRITE(ioport_r, ioport_w) */ ADDRESS_MAP_END diff --git a/src/mame/drivers/avalnche.c b/src/mame/drivers/avalnche.c index 9f8b129104c..8fca167e6d3 100644 --- a/src/mame/drivers/avalnche.c +++ b/src/mame/drivers/avalnche.c @@ -110,7 +110,7 @@ static WRITE8_HANDLER( avalance_start_lamp_w ) set_led_status(space->machine(), 2, data & 1); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, avalnche_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_SIZE_MEMBER(avalnche_state, m_videoram, m_videoram_size) AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x0ffc) AM_READ_PORT("IN0") @@ -128,7 +128,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( catch_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( catch_map, AS_PROGRAM, 8, avalnche_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_SIZE_MEMBER(avalnche_state, m_videoram, m_videoram_size) AM_RANGE(0x2000, 0x2000) AM_MIRROR(0x0ffc) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/aztarac.c b/src/mame/drivers/aztarac.c index c0c7ab2acbc..aca8ef54252 100644 --- a/src/mame/drivers/aztarac.c +++ b/src/mame/drivers/aztarac.c @@ -76,7 +76,7 @@ static READ16_HANDLER( joystick_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, aztarac_state ) AM_RANGE(0x000000, 0x00bfff) AM_ROM AM_RANGE(0x022000, 0x0220ff) AM_READ(nvram_r) AM_WRITEONLY AM_SHARE("nvram") AM_RANGE(0x027000, 0x027001) AM_READ(joystick_r) @@ -97,7 +97,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, aztarac_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8800) AM_READ(aztarac_snd_command_r) diff --git a/src/mame/drivers/backfire.c b/src/mame/drivers/backfire.c index db2af0328cc..e07de7f4799 100644 --- a/src/mame/drivers/backfire.c +++ b/src/mame/drivers/backfire.c @@ -260,7 +260,7 @@ static WRITE32_HANDLER( backfire_spriteram2_w ) -static ADDRESS_MAP_START( backfire_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( backfire_map, AS_PROGRAM, 32, backfire_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10001f) AM_DEVREADWRITE("tilegen1", deco16ic_pf_control_dword_r, deco16ic_pf_control_dword_w) AM_RANGE(0x110000, 0x111fff) AM_DEVREADWRITE("tilegen1", deco16ic_pf1_data_dword_r, deco16ic_pf1_data_dword_w) diff --git a/src/mame/drivers/badlands.c b/src/mame/drivers/badlands.c index 42893cd506e..b39bcfe9bd3 100644 --- a/src/mame/drivers/badlands.c +++ b/src/mame/drivers/badlands.c @@ -382,7 +382,7 @@ static WRITE8_HANDLER( audio_io_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, badlands_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0xfc0000, 0xfc1fff) AM_READWRITE(sound_busy_r, atarigen_sound_reset_w) AM_RANGE(0xfd0000, 0xfd1fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") @@ -411,7 +411,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, badlands_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x2800, 0x2bff) AM_READWRITE(audio_io_r, audio_io_w) @@ -638,7 +638,7 @@ static READ16_HANDLER( badlandsb_unk_r ) return 0xffff; } -static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 16, badlands_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM diff --git a/src/mame/drivers/bagman.c b/src/mame/drivers/bagman.c index fa302010ae9..5b8b2189669 100644 --- a/src/mame/drivers/bagman.c +++ b/src/mame/drivers/bagman.c @@ -109,7 +109,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bagman_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(bagman_videoram_w) AM_BASE_MEMBER(bagman_state, m_videoram) @@ -138,7 +138,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( pickin_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pickin_map, AS_PROGRAM, 8, bagman_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x7000, 0x77ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(bagman_videoram_w) AM_BASE_MEMBER(bagman_state, m_videoram) @@ -163,7 +163,7 @@ static ADDRESS_MAP_START( pickin_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_DEVREADWRITE("ay2", ay8910_r, ay8910_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, bagman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x08, 0x09) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x0c, 0x0c) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/balsente.c b/src/mame/drivers/balsente.c index 2b310cf4fb9..f5462fa389e 100644 --- a/src/mame/drivers/balsente.c +++ b/src/mame/drivers/balsente.c @@ -242,7 +242,7 @@ DIP locations verified for: * *************************************/ -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, balsente_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(balsente_state, m_spriteram) AM_RANGE(0x0800, 0x7fff) AM_RAM_WRITE(balsente_videoram_w) AM_BASE_MEMBER(balsente_state, m_videoram) AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(balsente_paletteram_w) AM_BASE_GENERIC(paletteram) @@ -272,7 +272,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, balsente_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x7fff) AM_WRITE(balsente_m6850_sound_w) @@ -280,7 +280,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu2_io_map, AS_IO, 8, balsente_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_READWRITE(balsente_counter_8253_r, balsente_counter_8253_w) AM_RANGE(0x08, 0x0f) AM_READ(balsente_counter_state_r) @@ -299,7 +299,7 @@ ADDRESS_MAP_END *************************************/ /* CPU 1 read addresses */ -static ADDRESS_MAP_START( shrike68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shrike68k_map, AS_PROGRAM, 16, balsente_state ) AM_RANGE(0x000000, 0x003fff) AM_ROM AM_RANGE(0x010000, 0x01001f) AM_RAM AM_BASE_MEMBER(balsente_state, m_shrike_io) AM_RANGE(0x018000, 0x018fff) AM_RAM AM_BASE_MEMBER(balsente_state, m_shrike_shared) diff --git a/src/mame/drivers/bankp.c b/src/mame/drivers/bankp.c index 9eae5b5a142..032a95660fb 100644 --- a/src/mame/drivers/bankp.c +++ b/src/mame/drivers/bankp.c @@ -103,7 +103,7 @@ * *************************************/ -static ADDRESS_MAP_START( bankp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bankp_map, AS_PROGRAM, 8, bankp_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xefff) AM_RAM AM_RANGE(0xf000, 0xf3ff) AM_RAM_WRITE(bankp_videoram_w) AM_BASE_MEMBER(bankp_state, m_videoram) @@ -112,7 +112,7 @@ static ADDRESS_MAP_START( bankp_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc00, 0xffff) AM_RAM_WRITE(bankp_colorram2_w) AM_BASE_MEMBER(bankp_state, m_colorram2) ADDRESS_MAP_END -static ADDRESS_MAP_START( bankp_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bankp_io_map, AS_IO, 8, bankp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_DEVWRITE("sn2", sn76496_w) diff --git a/src/mame/drivers/baraduke.c b/src/mame/drivers/baraduke.c index 912c3db6e24..664c8ccf3c3 100644 --- a/src/mame/drivers/baraduke.c +++ b/src/mame/drivers/baraduke.c @@ -162,7 +162,7 @@ static WRITE8_HANDLER( baraduke_irq_ack_w ) -static ADDRESS_MAP_START( baraduke_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( baraduke_map, AS_PROGRAM, 8, baraduke_state ) AM_RANGE(0x0000, 0x1fff) AM_READWRITE(baraduke_spriteram_r,baraduke_spriteram_w) AM_BASE_MEMBER(baraduke_state, m_spriteram) /* Sprite RAM */ AM_RANGE(0x2000, 0x3fff) AM_READWRITE(baraduke_videoram_r,baraduke_videoram_w) AM_BASE_MEMBER(baraduke_state, m_videoram) /* Video RAM */ AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE("namco", namcos1_cus30_r,namcos1_cus30_w) /* PSG device, shared RAM */ @@ -181,7 +181,7 @@ static READ8_HANDLER( soundkludge_r ) return ((state->m_counter++) >> 4) & 0xff; } -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, baraduke_state ) AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r,m6801_io_w)/* internal registers */ AM_RANGE(0x0080, 0x00ff) AM_RAM /* built in RAM */ AM_RANGE(0x1105, 0x1105) AM_READ(soundkludge_r) /* cures speech */ @@ -199,7 +199,7 @@ static READ8_HANDLER( readFF ) return 0xff; } -static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, baraduke_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ(inputport_r) /* input ports read */ AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(inputport_select_w) /* input port select */ AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */ diff --git a/src/mame/drivers/bartop52.c b/src/mame/drivers/bartop52.c index e7826c2847f..400043a5779 100644 --- a/src/mame/drivers/bartop52.c +++ b/src/mame/drivers/bartop52.c @@ -32,7 +32,7 @@ public: }; -static ADDRESS_MAP_START(a5200_mem, AS_PROGRAM, 8) +static ADDRESS_MAP_START(a5200_mem, AS_PROGRAM, 8, bartop52_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM AM_RANGE(0x4000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc0ff) AM_READWRITE(atari_gtia_r, atari_gtia_w) diff --git a/src/mame/drivers/batman.c b/src/mame/drivers/batman.c index fe88e17f373..21c6daba76e 100644 --- a/src/mame/drivers/batman.c +++ b/src/mame/drivers/batman.c @@ -129,7 +129,7 @@ static WRITE16_HANDLER( latch_w ) /* full map verified from schematics and GALs */ /* addresses in the 1xxxxx region map to /WAIT */ /* addresses in the 2xxxxx region map to /WAIT2 */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, batman_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x3fffff) AM_RANGE(0x000000, 0x0bffff) AM_ROM diff --git a/src/mame/drivers/battlane.c b/src/mame/drivers/battlane.c index 80c83e76bd2..084aa6913fe 100644 --- a/src/mame/drivers/battlane.c +++ b/src/mame/drivers/battlane.c @@ -98,7 +98,7 @@ static INTERRUPT_GEN( battlane_cpu1_interrupt ) * *************************************/ -static ADDRESS_MAP_START( battlane_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( battlane_map, AS_PROGRAM, 8, battlane_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(battlane_tileram_w) AM_SHARE("share2") AM_BASE_MEMBER(battlane_state, m_tileram) AM_RANGE(0x1800, 0x18ff) AM_RAM_WRITE(battlane_spriteram_w) AM_SHARE("share3") AM_BASE_MEMBER(battlane_state, m_spriteram) diff --git a/src/mame/drivers/battlera.c b/src/mame/drivers/battlera.c index 8a082ddfc80..b557a33af6b 100644 --- a/src/mame/drivers/battlera.c +++ b/src/mame/drivers/battlera.c @@ -65,7 +65,7 @@ static READ8_HANDLER( control_data_r ) /******************************************************************************/ -static ADDRESS_MAP_START( battlera_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( battlera_map, AS_PROGRAM, 8, battlera_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_READWRITE(HuC6270_debug_r, HuC6270_debug_w) /* Cheat to edit vram data */ AM_RANGE(0x1e0800, 0x1e0801) AM_WRITE(battlera_sound_w) @@ -77,7 +77,7 @@ static ADDRESS_MAP_START( battlera_map, AS_PROGRAM, 8 ) AM_RANGE(0x1ff400, 0x1ff403) AM_WRITE(h6280_irq_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( battlera_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( battlera_portmap, AS_IO, 8, battlera_state ) AM_RANGE(0x00, 0x01) AM_WRITE(HuC6270_register_w) AM_RANGE(0x02, 0x03) AM_WRITE(HuC6270_data_w) ADDRESS_MAP_END @@ -108,7 +108,7 @@ static WRITE8_DEVICE_HANDLER( battlera_adpcm_reset_w ) msm5205_reset_w(device, 0); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, battlera_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x040001) AM_DEVWRITE("ymsnd", ym2203_w) AM_RANGE(0x080000, 0x080001) AM_WRITE(battlera_adpcm_data_w) diff --git a/src/mame/drivers/battlex.c b/src/mame/drivers/battlex.c index f147e2576b9..befdf867ed8 100644 --- a/src/mame/drivers/battlex.c +++ b/src/mame/drivers/battlex.c @@ -75,7 +75,7 @@ static CUSTOM_INPUT( battlex_in0_b4_r ) * *************************************/ -static ADDRESS_MAP_START( battlex_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( battlex_map, AS_PROGRAM, 8, battlex_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(battlex_videoram_w) AM_BASE_MEMBER(battlex_state, m_videoram) AM_RANGE(0x9000, 0x91ff) AM_RAM AM_BASE_MEMBER(battlex_state, m_spriteram) @@ -84,7 +84,7 @@ static ADDRESS_MAP_START( battlex_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, battlex_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") diff --git a/src/mame/drivers/battlnts.c b/src/mame/drivers/battlnts.c index 589a8e0a6c4..73c74f551be 100644 --- a/src/mame/drivers/battlnts.c +++ b/src/mame/drivers/battlnts.c @@ -57,7 +57,7 @@ static WRITE8_HANDLER( battlnts_bankswitch_w ) * *************************************/ -static ADDRESS_MAP_START( battlnts_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( battlnts_map, AS_PROGRAM, 8, battlnts_state ) AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("k007342", k007342_r, k007342_w) /* Color RAM + Video RAM */ AM_RANGE(0x2000, 0x21ff) AM_DEVREADWRITE("k007420", k007420_r, k007420_w) /* Sprite RAM */ AM_RANGE(0x2200, 0x23ff) AM_DEVREADWRITE("k007342", k007342_scroll_r, k007342_scroll_w) /* Scroll RAM */ @@ -77,7 +77,7 @@ static ADDRESS_MAP_START( battlnts_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM 777e02.bin */ ADDRESS_MAP_END -static ADDRESS_MAP_START( battlnts_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( battlnts_sound_map, AS_PROGRAM, 8, battlnts_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM 777c01.rom */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ym1", ym3812_r, ym3812_w) /* YM3812 (chip 1) */ diff --git a/src/mame/drivers/bbusters.c b/src/mame/drivers/bbusters.c index f98295a3509..32d40a42a50 100644 --- a/src/mame/drivers/bbusters.c +++ b/src/mame/drivers/bbusters.c @@ -327,7 +327,7 @@ static READ16_HANDLER( mechatt_gun_r ) /*******************************************************************************/ -static ADDRESS_MAP_START( bbusters_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bbusters_map, AS_PROGRAM, 16, bbusters_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_BASE_MEMBER(bbusters_state, m_ram) AM_RANGE(0x090000, 0x090fff) AM_RAM_WRITE(bbusters_video_w) AM_BASE_MEMBER(bbusters_state, m_videoram) @@ -357,7 +357,7 @@ ADDRESS_MAP_END /*******************************************************************************/ -static ADDRESS_MAP_START( mechatt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mechatt_map, AS_PROGRAM, 16, bbusters_state ) AM_RANGE(0x000000, 0x06ffff) AM_ROM AM_RANGE(0x070000, 0x07ffff) AM_RAM AM_BASE_MEMBER(bbusters_state, m_ram) AM_RANGE(0x090000, 0x090fff) AM_RAM_WRITE(bbusters_video_w) AM_BASE_MEMBER(bbusters_state, m_videoram) @@ -378,19 +378,19 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bbusters_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_READWRITE(soundlatch_r, sound_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, bbusters_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) AM_RANGE(0xc0, 0xc1) AM_WRITENOP /* -> Main CPU */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sounda_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sounda_portmap, AS_IO, 8, bbusters_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2608_r, ym2608_w) AM_RANGE(0xc0, 0xc1) AM_WRITENOP /* -> Main CPU */ diff --git a/src/mame/drivers/beaminv.c b/src/mame/drivers/beaminv.c index 0c3f18eb970..9f121d49faa 100644 --- a/src/mame/drivers/beaminv.c +++ b/src/mame/drivers/beaminv.c @@ -231,7 +231,7 @@ static READ8_HANDLER( controller_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, beaminv_state ) AM_RANGE(0x0000, 0x17ff) AM_ROM AM_RANGE(0x1800, 0x1fff) AM_RAM AM_RANGE(0x2400, 0x2400) AM_MIRROR(0x03ff) AM_READ_PORT("DSW") @@ -249,7 +249,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, beaminv_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(controller_select_w) /* to be confirmed */ ADDRESS_MAP_END diff --git a/src/mame/drivers/beezer.c b/src/mame/drivers/beezer.c index 05471d056be..0af6989e9cc 100644 --- a/src/mame/drivers/beezer.c +++ b/src/mame/drivers/beezer.c @@ -15,14 +15,14 @@ #include "sound/dac.h" #include "includes/beezer.h" -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, beezer_state ) AM_RANGE(0x0000, 0xbfff) AM_RAM AM_BASE_MEMBER(beezer_state, m_videoram) AM_RANGE(0xc000, 0xcfff) AM_ROMBANK("bank1") AM_RANGE(0xd000, 0xdfff) AM_ROM AM_WRITE(beezer_bankswitch_w) // ROM at G1, bankswitch AM_RANGE(0xe000, 0xffff) AM_ROM // ROMS at G3, G5 ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, beezer_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM // RAM at 0D AM_RANGE(0x0800, 0x0fff) AM_RAM // optional RAM at 2D (can be rom here instead) AM_RANGE(0x1000, 0x1007) AM_MIRROR(0x07f8) AM_DEVREADWRITE("custom", beezer_sh6840_r, beezer_sh6840_w) diff --git a/src/mame/drivers/berzerk.c b/src/mame/drivers/berzerk.c index ef8aecd3f41..a6ae3d8a774 100644 --- a/src/mame/drivers/berzerk.c +++ b/src/mame/drivers/berzerk.c @@ -584,7 +584,7 @@ static SOUND_RESET(berzerk) * *************************************/ -static ADDRESS_MAP_START( berzerk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( berzerk_map, AS_PROGRAM, 8, berzerk_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_RANGE(0x0800, 0x0bff) AM_MIRROR(0x0400) AM_RAM AM_SHARE("nvram") AM_RANGE(0x1000, 0x3fff) AM_ROM @@ -595,7 +595,7 @@ static ADDRESS_MAP_START( berzerk_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( frenzy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( frenzy_map, AS_PROGRAM, 8, berzerk_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_MEMBER(berzerk_state, m_videoram) AM_SIZE_MEMBER(berzerk_state, m_videoram_size) AM_SHARE("share1") AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(magicram_w) AM_SHARE("share1") @@ -612,7 +612,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( berzerk_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( berzerk_io_map, AS_IO, 8, berzerk_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x3f) AM_NOP AM_RANGE(0x40, 0x47) AM_READWRITE(berzerk_audio_r, berzerk_audio_w) diff --git a/src/mame/drivers/bestleag.c b/src/mame/drivers/bestleag.c index 968747e9f22..3ba954c8775 100644 --- a/src/mame/drivers/bestleag.c +++ b/src/mame/drivers/bestleag.c @@ -227,7 +227,7 @@ static WRITE16_DEVICE_HANDLER( oki_bank_w ) /* Memory Map */ -static ADDRESS_MAP_START( bestleag_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bestleag_map, AS_PROGRAM, 16, bestleag_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0d2000, 0x0d3fff) AM_NOP // left over from the original game (only read / written in memory test) AM_RANGE(0x0e0000, 0x0e3fff) AM_RAM_WRITE(bestleag_bgram_w) AM_BASE_MEMBER(bestleag_state, m_bgram) diff --git a/src/mame/drivers/bfcobra.c b/src/mame/drivers/bfcobra.c index 314d2e8f3e9..970c04945ab 100644 --- a/src/mame/drivers/bfcobra.c +++ b/src/mame/drivers/bfcobra.c @@ -1325,14 +1325,14 @@ static MACHINE_RESET( bfcobra ) ***************************************************************************/ -static ADDRESS_MAP_START( z80_prog_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_prog_map, AS_PROGRAM, 8, bfcobra_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank4") AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank1") AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank2") AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank3") ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_io_map, AS_IO, 8, bfcobra_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x23) AM_READWRITE(chipset_r, chipset_w) AM_RANGE(0x24, 0x24) AM_DEVWRITE_MODERN("acia6850_0", acia6850_device, control_write) @@ -1459,7 +1459,7 @@ static WRITE8_DEVICE_HANDLER( upd_w ) upd7759_start_w(device, data & 0x40 ? 0 : 1); } -static ADDRESS_MAP_START( m6809_prog_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m6809_prog_map, AS_PROGRAM, 8, bfcobra_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x2000, 0x2000) AM_RAM // W 'B', 6F AM_RANGE(0x2200, 0x2200) AM_RAM // W 'F' diff --git a/src/mame/drivers/bfm_sc1.c b/src/mame/drivers/bfm_sc1.c index 64276a74bd4..5ae00bfd0bf 100644 --- a/src/mame/drivers/bfm_sc1.c +++ b/src/mame/drivers/bfm_sc1.c @@ -666,7 +666,7 @@ static MACHINE_RESET( bfm_sc1 ) // scorpion1 board memory map /////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////// -static ADDRESS_MAP_START( sc1_base, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sc1_base, AS_PROGRAM, 8, bfm_sc1_state ) AM_RANGE(0x0000, 0x1FFF) AM_RAM AM_SHARE("nvram") //8k RAM AM_RANGE(0x2000, 0x21FF) AM_WRITE(reel34_w) // reel 2+3 latch @@ -706,7 +706,7 @@ ADDRESS_MAP_END // scorpion1 board + adder2 expansion memory map //////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////// -static ADDRESS_MAP_START( sc1_adder2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sc1_adder2, AS_PROGRAM, 8, bfm_sc1_state ) AM_IMPORT_FROM( sc1_base ) AM_RANGE(0x3E00, 0x3E00) AM_READWRITE(vid_uart_ctrl_r,vid_uart_ctrl_w) // video uart control reg read @@ -718,7 +718,7 @@ ADDRESS_MAP_END // scorpion1 board + upd7759 soundcard memory map /////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////// -static ADDRESS_MAP_START( sc1_viper, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sc1_viper, AS_PROGRAM, 8, bfm_sc1_state ) AM_IMPORT_FROM( sc1_base ) AM_RANGE(0x3404, 0x3404) AM_READ(dipcoin_r ) // coin input on gamecard diff --git a/src/mame/drivers/bfm_sc2.c b/src/mame/drivers/bfm_sc2.c index 77bbe9f0773..fdb0317c237 100644 --- a/src/mame/drivers/bfm_sc2.c +++ b/src/mame/drivers/bfm_sc2.c @@ -1421,7 +1421,7 @@ static READ8_HANDLER( direct_input_r ) -static ADDRESS_MAP_START( sc2_basemap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sc2_basemap, AS_PROGRAM, 8, bfm_sc2_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") //8k AM_RANGE(0x2000, 0x2000) AM_READ(vfd_status_r) AM_RANGE(0x2000, 0x20FF) AM_WRITE(reel12_w) @@ -1472,7 +1472,7 @@ ADDRESS_MAP_END // memory map for scorpion2 board video addon ///////////////////////////// -static ADDRESS_MAP_START( memmap_vid, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap_vid, AS_PROGRAM, 8, bfm_sc2_state ) AM_IMPORT_FROM( sc2_basemap ) AM_RANGE(0x2000, 0x2000) AM_READ(vfd_status_hop_r) // vfd status register diff --git a/src/mame/drivers/bfm_sc4.c b/src/mame/drivers/bfm_sc4.c index 7c61c625f2d..d36bfc71969 100644 --- a/src/mame/drivers/bfm_sc4.c +++ b/src/mame/drivers/bfm_sc4.c @@ -174,11 +174,11 @@ static WRITE16_HANDLER( sc4_mem_w ) } } -static ADDRESS_MAP_START( sc4_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sc4_map, AS_PROGRAM, 16, sc4_adder4_state ) AM_RANGE(0x000000000, 0xffffffff) AM_READWRITE(sc4_mem_r, sc4_mem_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sc4_adder4_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( sc4_adder4_map, AS_PROGRAM, 32, sc4_adder4_state ) AM_RANGE(0x000000, 0x2fffff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/bfm_swp.c b/src/mame/drivers/bfm_swp.c index dc173babe84..a583d932f21 100644 --- a/src/mame/drivers/bfm_swp.c +++ b/src/mame/drivers/bfm_swp.c @@ -138,7 +138,7 @@ public: -static ADDRESS_MAP_START( bfm_swp_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( bfm_swp_map, AS_PROGRAM, 32, bfm_swp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0xb00000, 0xb03fff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/bfmsys83.c b/src/mame/drivers/bfmsys83.c index 25900902d13..52aee43428f 100644 --- a/src/mame/drivers/bfmsys83.c +++ b/src/mame/drivers/bfmsys83.c @@ -17,7 +17,7 @@ public: -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, bfmsys83_state ) AM_RANGE(0x4000, 0xffff) AM_ROM // 32K ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/bfmsys85.c b/src/mame/drivers/bfmsys85.c index 65dee6196ab..a586deae44e 100644 --- a/src/mame/drivers/bfmsys85.c +++ b/src/mame/drivers/bfmsys85.c @@ -384,7 +384,7 @@ static MACHINE_START( bfm_sys85 ) // memory map for bellfruit system85 board //////////////////////////////// -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, bfmsys85_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") //8k RAM AM_RANGE(0x2000, 0x21FF) AM_WRITE(reel34_w) // reel 3+4 latch diff --git a/src/mame/drivers/big10.c b/src/mame/drivers/big10.c index 07eb4ed0b10..d0464580f31 100644 --- a/src/mame/drivers/big10.c +++ b/src/mame/drivers/big10.c @@ -132,13 +132,13 @@ static READ8_HANDLER( mux_r ) * Memory Map * **************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, big10_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( main_io, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io, AS_IO, 8, big10_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(mux_r) /* present in test mode */ AM_RANGE(0x02, 0x02) AM_READ_PORT("SYSTEM") /* coins and service */ diff --git a/src/mame/drivers/bigevglf.c b/src/mame/drivers/bigevglf.c index 2fd6435bc49..1e5f360fa6f 100644 --- a/src/mame/drivers/bigevglf.c +++ b/src/mame/drivers/bigevglf.c @@ -306,7 +306,7 @@ INPUT_PORTS_END /*****************************************************************************/ /* Main CPU */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bigevglf_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd7ff) AM_ROMBANK("bank1") @@ -317,7 +317,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf840, 0xf8ff) AM_RAM AM_BASE_MEMBER(bigevglf_state, m_spriteram2) /* spriteram (x,y,offset in spriteram1,palette) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( bigevglf_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( bigevglf_portmap, AS_IO, 8, bigevglf_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP /* video ram enable ???*/ AM_RANGE(0x01, 0x01) AM_WRITE(bigevglf_gfxcontrol_w) /* plane select */ @@ -332,7 +332,7 @@ ADDRESS_MAP_END /*********************************************************************************/ /* Sub CPU */ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, bigevglf_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1") /* shared with main CPU */ @@ -352,7 +352,7 @@ static READ8_HANDLER( sub_cpu_mcu_coin_port_r ) return bigevglf_mcu_status_r(space, 0) | (input_port_read(space->machine(), "PORT04") & 3) | state->m_mcu_coin_bit5; /* bit 0 and bit 1 - coin inputs */ } -static ADDRESS_MAP_START( bigevglf_sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( bigevglf_sub_portmap, AS_IO, 8, bigevglf_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("PORT00") AM_RANGE(0x01, 0x01) AM_READNOP @@ -378,7 +378,7 @@ ADDRESS_MAP_END /*********************************************************************************/ /* Sound CPU */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bigevglf_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -396,7 +396,7 @@ ADDRESS_MAP_END /*********************************************************************************/ /* MCU */ -static ADDRESS_MAP_START( m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m68705_map, AS_PROGRAM, 8, bigevglf_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(bigevglf_68705_port_a_r, bigevglf_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(bigevglf_68705_port_b_r, bigevglf_68705_port_b_w) diff --git a/src/mame/drivers/bigstrkb.c b/src/mame/drivers/bigstrkb.c index c2e4bc601fd..ea5ecf01476 100644 --- a/src/mame/drivers/bigstrkb.c +++ b/src/mame/drivers/bigstrkb.c @@ -34,7 +34,7 @@ lev 7 : 0x7c : 0000 05be - xxx /* some regions might be too large */ -static ADDRESS_MAP_START( bigstrkb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigstrkb_map, AS_PROGRAM, 16, bigstrkb_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // AM_RANGE(0x0c0000, 0x0cffff) AM_READWRITE(megasys1_vregs_C_r, megasys1_vregs_C_w) AM_BASE(&megasys1_vregs) diff --git a/src/mame/drivers/bingoc.c b/src/mame/drivers/bingoc.c index 00493a74bfa..fa3f93c6062 100644 --- a/src/mame/drivers/bingoc.c +++ b/src/mame/drivers/bingoc.c @@ -104,7 +104,7 @@ static WRITE8_DEVICE_HANDLER( bingoc_play_w ) // printf("%02x\n",data); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bingoc_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10007f) AM_READ(bingoc_rand_r) //comms? lamps? AM_RANGE(0x180000, 0x18007f) AM_READ(bingoc_rand_r) //comms? lamps? @@ -114,12 +114,12 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xff8000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bingoc_state ) AM_RANGE(0x0000, 0x4fff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io, AS_IO, 8, bingoc_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x40, 0x40) AM_DEVWRITE("upd", bingoc_play_w) diff --git a/src/mame/drivers/bingor.c b/src/mame/drivers/bingor.c index d057e403fef..d97ee15f8cd 100644 --- a/src/mame/drivers/bingor.c +++ b/src/mame/drivers/bingor.c @@ -506,7 +506,7 @@ static READ16_HANDLER( test_r ) } #endif -static ADDRESS_MAP_START( bingor_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bingor_map, AS_PROGRAM, 16, bingor_state ) AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_RANGE(0x90000, 0x9ffff) AM_ROM AM_REGION("gfx", 0) AM_RANGE(0xa0300, 0xa031f) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBIIII_word_w) AM_BASE_GENERIC(paletteram) //wrong @@ -514,7 +514,7 @@ static ADDRESS_MAP_START( bingor_map, AS_PROGRAM, 16 ) AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( bingor_io, AS_IO, 16 ) +static ADDRESS_MAP_START( bingor_io, AS_IO, 16, bingor_state ) // AM_RANGE(0x0000, 0x00ff) AM_READ( test_r ) AM_RANGE(0x0100, 0x0101) AM_DEVWRITE8("saa", saa1099_data_w, 0x00ff) AM_RANGE(0x0102, 0x0103) AM_DEVWRITE8("saa", saa1099_control_w, 0x00ff) @@ -526,7 +526,7 @@ static READ8_HANDLER( test8_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( pic_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pic_io_map, AS_IO, 8, bingor_state ) AM_RANGE(0x02, 0x02) AM_READ(test8_r) AM_RANGE(0x10, 0x10) AM_READNOP ADDRESS_MAP_END diff --git a/src/mame/drivers/bionicc.c b/src/mame/drivers/bionicc.c index 45d2273a67e..731f25cc61f 100644 --- a/src/mame/drivers/bionicc.c +++ b/src/mame/drivers/bionicc.c @@ -146,7 +146,7 @@ static TIMER_DEVICE_CALLBACK( bionicc_scanline ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bionicc_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0xfe0000, 0xfe07ff) AM_RAM /* RAM? */ AM_RANGE(0xfe0800, 0xfe0cff) AM_RAM AM_SHARE("spriteram") @@ -166,7 +166,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bionicc_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/bishi.c b/src/mame/drivers/bishi.c index 8d0952bb7a4..f39e87ea481 100644 --- a/src/mame/drivers/bishi.c +++ b/src/mame/drivers/bishi.c @@ -145,7 +145,7 @@ static READ16_HANDLER( bishi_K056832_rom_r ) return k056832_bishi_rom_word_r(state->m_k056832, ouroffs, mem_mask); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, bishi_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x400000, 0x407fff) AM_RAM // Work RAM AM_RANGE(0x800000, 0x800001) AM_READWRITE(control_r, control_w) diff --git a/src/mame/drivers/bking.c b/src/mame/drivers/bking.c index 074651e9a74..0a24f0fab3d 100644 --- a/src/mame/drivers/bking.c +++ b/src/mame/drivers/bking.c @@ -82,13 +82,13 @@ static READ8_HANDLER( bking3_ext_check_r ) return 0x31; //no "bad rom.", no "bad ext." } -static ADDRESS_MAP_START( bking_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bking_map, AS_PROGRAM, 8, bking_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0x9000, 0x97ff) AM_RAM_WRITE(bking_playfield_w) AM_BASE_MEMBER(bking_state, m_playfield_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( bking_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bking_io_map, AS_IO, 8, bking_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(bking_xld1_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(bking_yld1_w) @@ -107,7 +107,7 @@ static ADDRESS_MAP_START( bking_io_map, AS_IO, 8 ) AM_RANGE(0x07, 0x1f) AM_READ(bking_pos_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( bking3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bking3_io_map, AS_IO, 8, bking_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(bking_xld1_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(bking_yld1_w) @@ -131,7 +131,7 @@ static ADDRESS_MAP_START( bking3_io_map, AS_IO, 8 ) AM_RANGE(0x8f, 0x8f) AM_WRITE(bking3_addr_l_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bking_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bking_audio_map, AS_PROGRAM, 8, bking_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_ROM //only bking3 AM_RANGE(0x4000, 0x43ff) AM_RAM diff --git a/src/mame/drivers/blackt96.c b/src/mame/drivers/blackt96.c index 66b2fb232b2..d73e3d3e771 100644 --- a/src/mame/drivers/blackt96.c +++ b/src/mame/drivers/blackt96.c @@ -168,7 +168,7 @@ static WRITE16_HANDLER( blackt96_80000_w ) } -static ADDRESS_MAP_START( blackt96_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blackt96_map, AS_PROGRAM, 16, blackt96_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("P1_P2") AM_WRITE(blackt96_80000_w) AM_RANGE(0x0c0000, 0x0c0001) AM_READ_PORT("IN1") AM_WRITE(blackt96_c0000_w) // COIN INPUT @@ -473,7 +473,7 @@ static WRITE8_HANDLER( blackt96_soundio_port02_w ) } -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, blackt96_state ) AM_RANGE(0x00, 0x00) AM_WRITE( blackt96_soundio_port00_w ) AM_RANGE(0x01, 0x01) AM_READWRITE( blackt96_soundio_port01_r, blackt96_soundio_port01_w ) AM_RANGE(0x02, 0x02) AM_READWRITE( blackt96_soundio_port02_r, blackt96_soundio_port02_w ) diff --git a/src/mame/drivers/bladestl.c b/src/mame/drivers/bladestl.c index 070ea79f25f..82870421fcb 100644 --- a/src/mame/drivers/bladestl.c +++ b/src/mame/drivers/bladestl.c @@ -121,7 +121,7 @@ static WRITE8_DEVICE_HANDLER( bladestl_speech_ctrl_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bladestl_state ) AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("k007342", k007342_r, k007342_w) /* Color RAM + Video RAM */ AM_RANGE(0x2000, 0x21ff) AM_DEVREADWRITE("k007420", k007420_r, k007420_w) /* Sprite RAM */ AM_RANGE(0x2200, 0x23ff) AM_DEVREADWRITE("k007342", k007342_scroll_r, k007342_scroll_w) /* Scroll RAM */ @@ -143,7 +143,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bladestl_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) /* YM2203 */ AM_RANGE(0x3000, 0x3000) AM_DEVWRITE("upd", bladestl_speech_ctrl_w) /* UPD7759 */ diff --git a/src/mame/drivers/blitz.c b/src/mame/drivers/blitz.c index 5a21af10cba..5fcae09e29d 100644 --- a/src/mame/drivers/blitz.c +++ b/src/mame/drivers/blitz.c @@ -469,7 +469,7 @@ static WRITE8_DEVICE_HANDLER( sound_w ) * Memory Map Information * *********************************************/ -static ADDRESS_MAP_START( megadpkr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( megadpkr_map, AS_PROGRAM, 8, blitz_state ) // ADDRESS_MAP_GLOBAL_MASK(0x7fff) // seems that hardware is playing with A14 & A15 CPU lines... AM_RANGE(0x0000, 0x07ff) AM_RAM //AM_SHARE("nvram") /* battery backed RAM */ @@ -590,7 +590,7 @@ ADDRESS_MAP_END /* -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, blitz_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0080, 0x07ff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/blitz68k.c b/src/mame/drivers/blitz68k.c index fc73b1d2a3a..be7628ad54b 100644 --- a/src/mame/drivers/blitz68k.c +++ b/src/mame/drivers/blitz68k.c @@ -478,7 +478,7 @@ static WRITE16_HANDLER( sound_write_w ) } #endif -static ADDRESS_MAP_START( ilpag_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ilpag_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1fffff) AM_ROM AM_REGION("blitter", 0) AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram") @@ -505,7 +505,7 @@ static ADDRESS_MAP_START( ilpag_map, AS_PROGRAM, 16 ) // AM_RANGE(0xc00300, 0xc00301) AM_WRITE(irq_callback_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( steaser_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( steaser_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x1fffff) AM_ROM AM_REGION("blitter", 0) AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram") @@ -575,7 +575,7 @@ static WRITE8_HANDLER( bankrob_mcu2_w ) logerror("%s: mcu2 written with %02x\n", space->machine().describe_context(), data); } -static ADDRESS_MAP_START( bankrob_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bankrob_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM @@ -660,7 +660,7 @@ static WRITE8_HANDLER( bankroba_mcu2_w ) logerror("%s: mcu2 written with %02x\n", space->machine().describe_context(), data); } -static ADDRESS_MAP_START( bankroba_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bankroba_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM @@ -805,7 +805,7 @@ static WRITE16_HANDLER( cjffruit_mcu_w ) logerror("%s: mcu written with %02x\n", space->machine().describe_context(),data >> 8); } -static ADDRESS_MAP_START( cjffruit_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cjffruit_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x480000, 0x4807ff) AM_RAM @@ -907,7 +907,7 @@ static WRITE16_HANDLER( deucesw2_leds3_w ) } } -static ADDRESS_MAP_START( deucesw2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( deucesw2_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x41ffff) AM_RAM @@ -981,7 +981,7 @@ static WRITE8_HANDLER( dualgame_mcu2_w ) logerror("%s: mcu2 written with %02x\n", space->machine().describe_context(), data); } -static ADDRESS_MAP_START( dualgame_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dualgame_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM @@ -1085,7 +1085,7 @@ static READ16_HANDLER( hermit_track_r ) ((0xf - ((input_port_read(space->machine(), "TRACK_X") + 0x7) & 0xf)) << 8) ; } -static ADDRESS_MAP_START( hermit_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hermit_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x400000, 0x41ffff) AM_RAM @@ -1159,7 +1159,7 @@ static WRITE8_HANDLER( maxidbl_mcu2_w ) logerror("%s: mcu2 written with %02x\n", space->machine().describe_context(), data); } -static ADDRESS_MAP_START( maxidbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( maxidbl_map, AS_PROGRAM, 16, blitz68k_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM @@ -1596,7 +1596,7 @@ const mc6845_interface mc6845_intf_irq5 = crtc_addr /* update address callback */ }; -static ADDRESS_MAP_START( ramdac_map, AS_0, 8 ) +static ADDRESS_MAP_START( ramdac_map, AS_0, 8, blitz68k_state ) AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE_MODERN("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/blktiger.c b/src/mame/drivers/blktiger.c index 2aeb19f8f34..8d9f07a7238 100644 --- a/src/mame/drivers/blktiger.c +++ b/src/mame/drivers/blktiger.c @@ -71,7 +71,7 @@ static WRITE8_HANDLER( blktiger_coinlockout_w ) } -static ADDRESS_MAP_START( blktiger_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blktiger_map, AS_PROGRAM, 8, blktiger_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_READWRITE(blktiger_bgvideoram_r, blktiger_bgvideoram_w) @@ -82,7 +82,7 @@ static ADDRESS_MAP_START( blktiger_map, AS_PROGRAM, 8 ) AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END -static ADDRESS_MAP_START( blktiger_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( blktiger_io_map, AS_IO, 8, blktiger_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(soundlatch_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(blktiger_bankswitch_w) @@ -99,7 +99,7 @@ static ADDRESS_MAP_START( blktiger_io_map, AS_IO, 8 ) AM_RANGE(0x0e, 0x0e) AM_WRITE(blktiger_screen_layout_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( blktigerbl_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( blktigerbl_io_map, AS_IO, 8, blktiger_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(soundlatch_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(blktiger_bankswitch_w) @@ -116,7 +116,7 @@ static ADDRESS_MAP_START( blktigerbl_io_map, AS_IO, 8 ) AM_RANGE(0x0e, 0x0e) AM_WRITE(blktiger_screen_layout_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( blktiger_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blktiger_sound_map, AS_PROGRAM, 8, blktiger_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc800) AM_READ(soundlatch_r) @@ -124,11 +124,11 @@ static ADDRESS_MAP_START( blktiger_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe002, 0xe003) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( blktiger_mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blktiger_mcu_map, AS_PROGRAM, 8, blktiger_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( blktiger_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( blktiger_mcu_io_map, AS_IO, 8, blktiger_state ) AM_RANGE(MCS51_PORT_P0,MCS51_PORT_P0) AM_READWRITE(blktiger_from_main_r,blktiger_to_main_w) AM_RANGE(MCS51_PORT_P1,MCS51_PORT_P3) AM_WRITENOP /* other ports unknown */ ADDRESS_MAP_END diff --git a/src/mame/drivers/blmbycar.c b/src/mame/drivers/blmbycar.c index f08ae0e2118..a729742f724 100644 --- a/src/mame/drivers/blmbycar.c +++ b/src/mame/drivers/blmbycar.c @@ -101,7 +101,7 @@ static READ16_HANDLER( blmbycar_opt_wheel_r ) ***************************************************************************/ -static ADDRESS_MAP_START( blmbycar_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blmbycar_map, AS_PROGRAM, 16, blmbycar_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0xfec000, 0xfeffff) AM_RAM AM_RANGE(0x100000, 0x103fff) AM_WRITEONLY // ??? @@ -136,7 +136,7 @@ static READ16_HANDLER( waterball_unk_r ) return state->m_retvalue; } -static ADDRESS_MAP_START( watrball_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( watrball_map, AS_PROGRAM, 16, blmbycar_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0xfec000, 0xfeffff) AM_RAM AM_RANGE(0x100000, 0x103fff) AM_WRITEONLY // ??? diff --git a/src/mame/drivers/blockade.c b/src/mame/drivers/blockade.c index de1a1b3f68d..c2548ca699e 100644 --- a/src/mame/drivers/blockade.c +++ b/src/mame/drivers/blockade.c @@ -120,13 +120,13 @@ static WRITE8_HANDLER( blockade_coin_latch_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, blockade_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_MIRROR(0x6000) AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(blockade_videoram_w) AM_BASE_MEMBER(blockade_state, m_videoram) AM_MIRROR(0x6c00) AM_RANGE(0x9000, 0x90ff) AM_RAM AM_MIRROR(0x6f00) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, blockade_state ) AM_RANGE(0x01, 0x01) AM_READWRITE(blockade_input_port_0_r, blockade_coin_latch_w) AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") AM_RANGE(0x02, 0x02) AM_DEVWRITE("discrete", blockade_sound_freq_w) diff --git a/src/mame/drivers/blockhl.c b/src/mame/drivers/blockhl.c index 9066cd45104..4ac4ecbd265 100644 --- a/src/mame/drivers/blockhl.c +++ b/src/mame/drivers/blockhl.c @@ -96,7 +96,7 @@ static WRITE8_HANDLER( k052109_051960_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, blockhl_state ) AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) AM_RANGE(0x1f88, 0x1f88) AM_WRITE(blockhl_sh_irqtrigger_w) AM_RANGE(0x1f8c, 0x1f8c) AM_WRITE(watchdog_reset_w) @@ -112,7 +112,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, blockhl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/blockout.c b/src/mame/drivers/blockout.c index 6af402f2e03..96e6e1fb1c6 100644 --- a/src/mame/drivers/blockout.c +++ b/src/mame/drivers/blockout.c @@ -105,7 +105,7 @@ static WRITE16_HANDLER( blockout_irq5_ack_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, blockout_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P1") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P2") @@ -125,7 +125,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x280200, 0x2805ff) AM_RAM_WRITE(blockout_paletteram_w) AM_BASE_MEMBER(blockout_state, m_paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( agress_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( agress_map, AS_PROGRAM, 16, blockout_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P1") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P2") @@ -145,7 +145,7 @@ static ADDRESS_MAP_START( agress_map, AS_PROGRAM, 16 ) AM_RANGE(0x280200, 0x2805ff) AM_RAM_WRITE(blockout_paletteram_w) AM_BASE_MEMBER(blockout_state, m_paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, blockout_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/bloodbro.c b/src/mame/drivers/bloodbro.c index 6fa4f1e520e..6d42868b37e 100644 --- a/src/mame/drivers/bloodbro.c +++ b/src/mame/drivers/bloodbro.c @@ -115,7 +115,7 @@ DIP locations verified for: /* Memory Maps */ -static ADDRESS_MAP_START( bloodbro_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bloodbro_map, AS_PROGRAM, 16, bloodbro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08afff) AM_RAM AM_RANGE(0x08b000, 0x08bfff) AM_RAM AM_BASE_SIZE_MEMBER(bloodbro_state, m_spriteram, m_spriteram_size) @@ -137,7 +137,7 @@ static ADDRESS_MAP_START( bloodbro_map, AS_PROGRAM, 16 ) AM_RANGE(0x0e0004, 0x0e0005) AM_READ_PORT("IN1") ADDRESS_MAP_END -static ADDRESS_MAP_START( weststry_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( weststry_map, AS_PROGRAM, 16, bloodbro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08afff) AM_RAM AM_RANGE(0x08b000, 0x08bfff) AM_RAM AM_BASE_SIZE_MEMBER(bloodbro_state, m_spriteram, m_spriteram_size) diff --git a/src/mame/drivers/blstroid.c b/src/mame/drivers/blstroid.c index 6895c6f21ed..9916bbf8ae2 100644 --- a/src/mame/drivers/blstroid.c +++ b/src/mame/drivers/blstroid.c @@ -91,7 +91,7 @@ static READ16_HANDLER( inputs_r ) *************************************/ /* full map verified from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, blstroid_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x7c0000) AM_ROM AM_RANGE(0xff8000, 0xff8001) AM_MIRROR(0x7f81fe) AM_WRITE(watchdog_reset16_w) diff --git a/src/mame/drivers/blueprnt.c b/src/mame/drivers/blueprnt.c index 41a6744514c..0c1aab0b88e 100644 --- a/src/mame/drivers/blueprnt.c +++ b/src/mame/drivers/blueprnt.c @@ -88,7 +88,7 @@ static WRITE8_HANDLER( blueprnt_coin_counter_w ) * *************************************/ -static ADDRESS_MAP_START( blueprnt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blueprnt_map, AS_PROGRAM, 8, blueprnt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // service mode checks for 8 chips = 64K AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(blueprnt_videoram_w) AM_MIRROR(0x400) AM_BASE_MEMBER(blueprnt_state, m_videoram) @@ -102,7 +102,7 @@ static ADDRESS_MAP_START( blueprnt_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf3ff) AM_RAM_WRITE(blueprnt_colorram_w) AM_BASE_MEMBER(blueprnt_state, m_colorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, blueprnt_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM diff --git a/src/mame/drivers/bmcbowl.c b/src/mame/drivers/bmcbowl.c index b48a599a216..d812c2fc0ca 100644 --- a/src/mame/drivers/bmcbowl.c +++ b/src/mame/drivers/bmcbowl.c @@ -323,7 +323,7 @@ static NVRAM_HANDLER( bmcbowl ) } -static ADDRESS_MAP_START( bmcbowl_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bmcbowl_mem, AS_PROGRAM, 16, bmcbowl_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x090000, 0x090001) AM_WRITE(bmc_RAMDAC_offset_w) diff --git a/src/mame/drivers/bmcpokr.c b/src/mame/drivers/bmcpokr.c index 7a322c78b86..fed4e1fd641 100644 --- a/src/mame/drivers/bmcpokr.c +++ b/src/mame/drivers/bmcpokr.c @@ -56,7 +56,7 @@ public: -static ADDRESS_MAP_START( bmcpokr_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bmcpokr_mem, AS_PROGRAM, 16, bmcpokr_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/bnstars.c b/src/mame/drivers/bnstars.c index c96624d6711..21d052d2fc8 100644 --- a/src/mame/drivers/bnstars.c +++ b/src/mame/drivers/bnstars.c @@ -1261,7 +1261,7 @@ static WRITE32_HANDLER( bnstars1_mahjong_select_w ) // printf("%08x\n",state->m_bnstars1_mahjong_select); } -static ADDRESS_MAP_START( bnstars_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( bnstars_map, AS_PROGRAM, 32, bnstars_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_RANGE(0xfcc00004, 0xfcc00007) AM_READ( bnstars1_r ) @@ -1301,7 +1301,7 @@ static ADDRESS_MAP_START( bnstars_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END #if 0 -static ADDRESS_MAP_START( bnstars_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bnstars_z80_map, AS_PROGRAM, 8, bnstars_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM ADDRESS_MAP_END #endif diff --git a/src/mame/drivers/bogeyman.c b/src/mame/drivers/bogeyman.c index 9bcd5c67ee4..fe101094980 100644 --- a/src/mame/drivers/bogeyman.c +++ b/src/mame/drivers/bogeyman.c @@ -47,7 +47,7 @@ static WRITE8_HANDLER( bogeyman_8910_control_w ) /* Memory Map */ -static ADDRESS_MAP_START( bogeyman_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bogeyman_map, AS_PROGRAM, 8, bogeyman_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(bogeyman_videoram2_w) AM_BASE_MEMBER(bogeyman_state, m_videoram2) AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(bogeyman_colorram2_w) AM_BASE_MEMBER(bogeyman_state, m_colorram2) diff --git a/src/mame/drivers/bombjack.c b/src/mame/drivers/bombjack.c index b11d475985b..1f64375db07 100644 --- a/src/mame/drivers/bombjack.c +++ b/src/mame/drivers/bombjack.c @@ -137,7 +137,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_nmi_mask = data & 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bombjack_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(bombjack_videoram_w) AM_BASE_MEMBER(bombjack_state, m_videoram) @@ -158,13 +158,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xdfff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, bombjack_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(bombjack_soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, bombjack_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/boogwing.c b/src/mame/drivers/boogwing.c index fcce6388f59..27bbbff7b09 100644 --- a/src/mame/drivers/boogwing.c +++ b/src/mame/drivers/boogwing.c @@ -90,7 +90,7 @@ #include "video/decocomn.h" #include "video/decospr.h" -static ADDRESS_MAP_START( boogwing_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( boogwing_map, AS_PROGRAM, 16, boogwing_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM @@ -128,7 +128,7 @@ static ADDRESS_MAP_START( boogwing_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, boogwing_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_NOP AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/bottom9.c b/src/mame/drivers/bottom9.c index dfcdbd14cff..e698361c0e5 100644 --- a/src/mame/drivers/bottom9.c +++ b/src/mame/drivers/bottom9.c @@ -174,7 +174,7 @@ static WRITE8_HANDLER( sound_bank_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bottom9_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(bottom9_bankedram1_r, bottom9_bankedram1_w) AM_RANGE(0x1f80, 0x1f80) AM_WRITE(bankswitch_w) AM_RANGE(0x1f90, 0x1f90) AM_WRITE(bottom9_1f90_w) @@ -194,7 +194,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, bottom9_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(sound_bank_w) diff --git a/src/mame/drivers/boxer.c b/src/mame/drivers/boxer.c index 3ff470f1ffb..eb9097beac4 100644 --- a/src/mame/drivers/boxer.c +++ b/src/mame/drivers/boxer.c @@ -289,7 +289,7 @@ static WRITE8_HANDLER( boxer_led_w ) * *************************************/ -static ADDRESS_MAP_START( boxer_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( boxer_map, AS_PROGRAM, 8, boxer_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x03ff) AM_RAM AM_BASE_MEMBER(boxer_state, m_tile_ram) diff --git a/src/mame/drivers/brkthru.c b/src/mame/drivers/brkthru.c index ea11201871b..a4659974cf9 100644 --- a/src/mame/drivers/brkthru.c +++ b/src/mame/drivers/brkthru.c @@ -115,7 +115,7 @@ static INPUT_CHANGED( coin_inserted ) * *************************************/ -static ADDRESS_MAP_START( brkthru_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( brkthru_map, AS_PROGRAM, 8, brkthru_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM_WRITE(brkthru_fgram_w) AM_BASE_SIZE_MEMBER(brkthru_state, m_fg_videoram, m_fg_videoram_size) AM_RANGE(0x0400, 0x0bff) AM_RAM AM_RANGE(0x0c00, 0x0fff) AM_RAM_WRITE(brkthru_bgram_w) AM_BASE_SIZE_MEMBER(brkthru_state, m_videoram, m_videoram_size) @@ -133,7 +133,7 @@ static ADDRESS_MAP_START( brkthru_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* same as brktrhu, but xor 0x1000 below 8k */ -static ADDRESS_MAP_START( darwin_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( darwin_map, AS_PROGRAM, 8, brkthru_state ) AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(brkthru_fgram_w) AM_BASE_SIZE_MEMBER(brkthru_state, m_fg_videoram, m_fg_videoram_size) AM_RANGE(0x1400, 0x1bff) AM_RAM AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(brkthru_bgram_w) AM_BASE_SIZE_MEMBER(brkthru_state, m_videoram, m_videoram_size) @@ -151,7 +151,7 @@ static ADDRESS_MAP_START( darwin_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, brkthru_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym2", ym3526_w) AM_RANGE(0x4000, 0x4000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/bsktball.c b/src/mame/drivers/bsktball.c index 6fd207218eb..2b99e702db7 100644 --- a/src/mame/drivers/bsktball.c +++ b/src/mame/drivers/bsktball.c @@ -73,7 +73,7 @@ static PALETTE_INIT( bsktball ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, bsktball_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x01ff) AM_RAM /* Zero Page RAM */ AM_RANGE(0x0800, 0x0800) AM_READ(bsktball_in0_r) diff --git a/src/mame/drivers/btime.c b/src/mame/drivers/btime.c index f0708e42b99..86bc8982983 100644 --- a/src/mame/drivers/btime.c +++ b/src/mame/drivers/btime.c @@ -355,7 +355,7 @@ static WRITE8_HANDLER( disco_w ) } -static ADDRESS_MAP_START( btime_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( btime_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0xffff) AM_WRITE(btime_w) /* override the following entries to */ /* support ROM decryption */ AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) @@ -372,7 +372,7 @@ static ADDRESS_MAP_START( btime_map, AS_PROGRAM, 8 ) AM_RANGE(0xb000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cookrace_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cookrace_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) AM_RANGE(0x0500, 0x3fff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_BASE_SIZE_MEMBER(btime_state, m_videoram, m_videoram_size) @@ -392,7 +392,7 @@ static ADDRESS_MAP_START( cookrace_map, AS_PROGRAM, 8 ) AM_RANGE(0xfff9, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( tisland_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tisland_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0xffff) AM_WRITE(tisland_w) /* override the following entries to */ /* support ROM decryption */ AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) @@ -410,7 +410,7 @@ static ADDRESS_MAP_START( tisland_map, AS_PROGRAM, 8 ) AM_RANGE(0x9000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( zoar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( zoar_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0xffff) AM_WRITE(zoar_w) /* override the following entries to */ /* support ROM decryption */ AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) @@ -430,7 +430,7 @@ static ADDRESS_MAP_START( zoar_map, AS_PROGRAM, 8 ) AM_RANGE(0xd000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( lnc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lnc_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0xffff) AM_WRITE(lnc_w) /* override the following entries to */ /* support ROM decryption */ AM_RANGE(0x0000, 0x3bff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) @@ -447,7 +447,7 @@ static ADDRESS_MAP_START( lnc_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mmonkey_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mmonkey_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0xffff) AM_WRITE(mmonkey_w) /* override the following entries to */ /* support ROM decryption */ AM_RANGE(0x0000, 0x3bff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) @@ -464,7 +464,7 @@ static ADDRESS_MAP_START( mmonkey_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bnj_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bnj_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) AM_RANGE(0x1000, 0x1000) AM_READ_PORT("DSW1") AM_RANGE(0x1001, 0x1001) AM_READ_PORT("DSW2") AM_WRITE(bnj_video_control_w) @@ -482,7 +482,7 @@ static ADDRESS_MAP_START( bnj_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( disco_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( disco_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0xffff) AM_WRITE(disco_w) /* override the following entries to */ /* support ROM decryption */ AM_RANGE(0x0000, 0x04ff) AM_RAM AM_BASE_MEMBER(btime_state, m_rambase) @@ -501,7 +501,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_BASE_MEMBER(btime_state, m_audio_rambase) AM_RANGE(0x2000, 0x3fff) AM_DEVWRITE("ay1", ay8910_data_w) AM_RANGE(0x4000, 0x5fff) AM_DEVWRITE("ay1", ay8910_address_w) @@ -512,7 +512,7 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_MIRROR(0x1000) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( disco_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( disco_audio_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE("ay1", ay8910_data_w) AM_RANGE(0x5000, 0x5fff) AM_DEVWRITE("ay1", ay8910_address_w) diff --git a/src/mame/drivers/bublbobl.c b/src/mame/drivers/bublbobl.c index a6e29a0e27a..0648da2664d 100644 --- a/src/mame/drivers/bublbobl.c +++ b/src/mame/drivers/bublbobl.c @@ -284,7 +284,7 @@ TODO: * *************************************/ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, m_videoram, m_videoram_size) @@ -298,12 +298,12 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc00, 0xffff) AM_RAM AM_BASE_MEMBER(bublbobl_state, m_mcu_sharedram) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) @@ -314,7 +314,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM // space for diagnostic ROM? ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x0000) AM_READWRITE(bublbobl_mcu_ddr1_r, bublbobl_mcu_ddr1_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(bublbobl_mcu_ddr2_r, bublbobl_mcu_ddr2_w) AM_RANGE(0x0002, 0x0002) AM_READWRITE(bublbobl_mcu_port1_r, bublbobl_mcu_port1_w) @@ -328,7 +328,7 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END // The 68705 is from a bootleg, the original MCU is a 6801U4 -static ADDRESS_MAP_START( bootlegmcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bootlegmcu_map, AS_PROGRAM, 8, bublbobl_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x000, 0x000) AM_READWRITE(bublbobl_68705_port_a_r, bublbobl_68705_port_a_w) AM_RANGE(0x001, 0x001) AM_READWRITE(bublbobl_68705_port_b_r, bublbobl_68705_port_b_w) @@ -340,7 +340,7 @@ static ADDRESS_MAP_START( bootlegmcu_map, AS_PROGRAM, 8 ) AM_RANGE(0x080, 0x7ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, m_videoram, m_videoram_size) @@ -364,7 +364,7 @@ static ADDRESS_MAP_START( bootleg_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tokio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tokio_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(bublbobl_state, m_videoram, m_videoram_size) @@ -384,12 +384,12 @@ static ADDRESS_MAP_START( tokio_map, AS_PROGRAM, 8 ) AM_RANGE(0xfe00, 0xfe00) AM_READ(tokio_mcu_r) AM_WRITENOP // ??? ADDRESS_MAP_END -static ADDRESS_MAP_START( tokio_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tokio_slave_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x97ff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( tokio_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tokio_sound_map, AS_PROGRAM, 8, bublbobl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_READWRITE(soundlatch_r, bublbobl_sound_status_w) diff --git a/src/mame/drivers/buggychl.c b/src/mame/drivers/buggychl.c index 1b9364813c4..ac6b3d63175 100644 --- a/src/mame/drivers/buggychl.c +++ b/src/mame/drivers/buggychl.c @@ -131,7 +131,7 @@ static WRITE8_HANDLER( sound_enable_w ) -static ADDRESS_MAP_START( buggychl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( buggychl_map, AS_PROGRAM, 8, buggychl_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM /* A22-04 (23) */ AM_RANGE(0x4000, 0x7fff) AM_ROM /* A22-05 (22) */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* 6116 SRAM (36) */ @@ -163,7 +163,7 @@ static ADDRESS_MAP_START( buggychl_map, AS_PROGRAM, 8 ) AM_RANGE(0xdc06, 0xdc06) AM_WRITE(buggychl_bg_scrollx_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, buggychl_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4801) AM_DEVWRITE("ay1", ay8910_address_data_w) diff --git a/src/mame/drivers/buster.c b/src/mame/drivers/buster.c index f32813b0892..c6f50d62154 100644 --- a/src/mame/drivers/buster.c +++ b/src/mame/drivers/buster.c @@ -56,7 +56,7 @@ static READ8_HANDLER( test_r ) } #endif -static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8, buster_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM// AM_BASE_MEMBER(buster_state, m_rom) AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("wram") AM_RANGE(0x5000, 0x5fff) AM_RAM AM_BASE_MEMBER(buster_state, m_vram) diff --git a/src/mame/drivers/bwidow.c b/src/mame/drivers/bwidow.c index 2709f6efdf8..7943a0eda7a 100644 --- a/src/mame/drivers/bwidow.c +++ b/src/mame/drivers/bwidow.c @@ -362,7 +362,7 @@ static WRITE8_HANDLER( irq_ack_w ) * *************************************/ -static ADDRESS_MAP_START( bwidow_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bwidow_map, AS_PROGRAM, 8, bwidow_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_BASE(&avgdvg_vectorram) AM_SIZE(&avgdvg_vectorram_size) AM_REGION("maincpu", 0x2000) AM_RANGE(0x2800, 0x5fff) AM_ROM @@ -383,7 +383,7 @@ static ADDRESS_MAP_START( bwidow_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spacduel_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spacduel_map, AS_PROGRAM, 8, bwidow_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0") AM_RANGE(0x0900, 0x0907) AM_READ(spacduel_IN3_r) /* IN1 */ diff --git a/src/mame/drivers/bwing.c b/src/mame/drivers/bwing.c index c32c786db7c..f0ae3c28ce9 100644 --- a/src/mame/drivers/bwing.c +++ b/src/mame/drivers/bwing.c @@ -152,7 +152,7 @@ static WRITE8_HANDLER( bwp2_ctrl_w ) // CPU Memory Maps // Main CPU -static ADDRESS_MAP_START( bwp1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bwp1_map, AS_PROGRAM, 8, bwing_state ) AM_RANGE(0x1b00, 0x1b07) AM_READ(bwp1_io_r) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(bwp12_sharedram1_w) AM_BASE_MEMBER(bwing_state, m_bwp1_sharedram1) AM_RANGE(0x0800, 0x0fff) AM_RAM @@ -168,7 +168,7 @@ ADDRESS_MAP_END // Sub CPU -static ADDRESS_MAP_START( bwp2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bwp2_map, AS_PROGRAM, 8, bwing_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(bwp12_sharedram1_w) AM_BASE_MEMBER(bwing_state, m_bwp2_sharedram1) AM_RANGE(0x0800, 0x0fff) AM_RAM AM_RANGE(0x1800, 0x1803) AM_WRITE(bwp2_ctrl_w) @@ -177,7 +177,7 @@ ADDRESS_MAP_END // Sound CPU -static ADDRESS_MAP_START( bwp3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bwp3_map, AS_PROGRAM, 8, bwing_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x0200) AM_DEVWRITE("dac", dac_signed_w) AM_RANGE(0x1000, 0x1000) AM_WRITE(bwp3_nmiack_w) @@ -191,7 +191,7 @@ static ADDRESS_MAP_START( bwp3_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bwp3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bwp3_io_map, AS_IO, 8, bwing_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("VBLANK") AM_WRITE(bwp3_u8F_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/bzone.c b/src/mame/drivers/bzone.c index ebd342d3d53..940b11b7eeb 100644 --- a/src/mame/drivers/bzone.c +++ b/src/mame/drivers/bzone.c @@ -296,7 +296,7 @@ static WRITE8_DEVICE_HANDLER( redbaron_joysound_w ) * *************************************/ -static ADDRESS_MAP_START( bzone_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bzone_map, AS_PROGRAM, 8, bzone_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0") @@ -316,7 +316,7 @@ static ADDRESS_MAP_START( bzone_map, AS_PROGRAM, 8 ) AM_RANGE(0x3000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( redbaron_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( redbaron_map, AS_PROGRAM, 8, bzone_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/cabal.c b/src/mame/drivers/cabal.c index 4a584b230bd..605c9e1c59d 100644 --- a/src/mame/drivers/cabal.c +++ b/src/mame/drivers/cabal.c @@ -119,7 +119,7 @@ static WRITE16_HANDLER( cabalbl_sound_irq_trigger_word_w ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, cabal_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_RANGE(0x40000, 0x437ff) AM_RAM AM_RANGE(0x43800, 0x43fff) AM_RAM AM_BASE_SIZE_MEMBER(cabal_state, m_spriteram, m_spriteram_size) @@ -138,7 +138,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xe8000, 0xe800d) AM_READWRITE(seibu_main_word_r, seibu_main_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( cabalbl_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cabalbl_main_map, AS_PROGRAM, 16, cabal_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_RANGE(0x40000, 0x437ff) AM_RAM AM_RANGE(0x43800, 0x43fff) AM_RAM AM_BASE_SIZE_MEMBER(cabal_state, m_spriteram, m_spriteram_size) @@ -182,7 +182,7 @@ static WRITE8_HANDLER( cabalbl_coin_w ) //data & 0x40? video enable? } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cabal_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4001, 0x4001) AM_WRITE(seibu_irq_clear_w) @@ -201,7 +201,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cabalbl_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cabalbl_sound_map, AS_PROGRAM, 8, cabal_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(soundlatch3_w) @@ -227,21 +227,21 @@ static WRITE8_DEVICE_HANDLER( cabalbl_adpcm_w ) msm5205_vclk_w(device,0); } -static ADDRESS_MAP_START( cabalbl_talk1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cabalbl_talk1_map, AS_PROGRAM, 8, cabal_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( cabalbl_talk1_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cabalbl_talk1_portmap, AS_IO, 8, cabal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch3_r) AM_RANGE(0x01, 0x01) AM_DEVWRITE("msm1", cabalbl_adpcm_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( cabalbl_talk2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cabalbl_talk2_map, AS_PROGRAM, 8, cabal_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( cabalbl_talk2_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cabalbl_talk2_portmap, AS_IO, 8, cabal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch4_r) AM_RANGE(0x01, 0x01) AM_DEVWRITE("msm2", cabalbl_adpcm_w) diff --git a/src/mame/drivers/cabaret.c b/src/mame/drivers/cabaret.c index 45b72ddd797..8787ba9012f 100644 --- a/src/mame/drivers/cabaret.c +++ b/src/mame/drivers/cabaret.c @@ -153,12 +153,12 @@ static WRITE8_HANDLER( cabaret_nmi_and_coins_w ) -static ADDRESS_MAP_START( cabaret_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cabaret_map, AS_PROGRAM, 8, cabaret_state ) AM_RANGE( 0x00000, 0x0efff ) AM_ROM AM_RANGE( 0x0f000, 0x0ffff ) AM_RAM AM_REGION("maincpu", 0xf000) ADDRESS_MAP_END -static ADDRESS_MAP_START( cabaret_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cabaret_portmap, AS_IO, 8, cabaret_state ) AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs AM_RANGE( 0x0080, 0x0080 ) AM_READ_PORT( "BUTTONS2" ) diff --git a/src/mame/drivers/calchase.c b/src/mame/drivers/calchase.c index 17f149679a1..16ac04005e2 100644 --- a/src/mame/drivers/calchase.c +++ b/src/mame/drivers/calchase.c @@ -527,7 +527,7 @@ static WRITE16_DEVICE_HANDLER( calchase_dac_w ) dac_data_16_w(device, ((data & 0xfff) << 4)); } -static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32, calchase_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000bffff) AM_RAM // VGA VRAM AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0) @@ -562,7 +562,7 @@ static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32 ) AM_RANGE(0xfffe0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */ ADDRESS_MAP_END -static ADDRESS_MAP_START( calchase_io, AS_IO, 32) +static ADDRESS_MAP_START( calchase_io, AS_IO, 32, calchase_state ) AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", i8237_r, i8237_w, 0xffffffff) AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff) AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) diff --git a/src/mame/drivers/calomega.c b/src/mame/drivers/calomega.c index b5e8e2e9e38..de2ac1af629 100644 --- a/src/mame/drivers/calomega.c +++ b/src/mame/drivers/calomega.c @@ -835,7 +835,7 @@ static WRITE8_DEVICE_HANDLER( lamps_905_w ) * Memory map information * *************************************************/ -static ADDRESS_MAP_START( sys903_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sys903_map, AS_PROGRAM, 8, calomega_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0840, 0x0841) AM_DEVWRITE("ay8912", ay8910_address_data_w) @@ -850,7 +850,7 @@ static ADDRESS_MAP_START( sys903_map, AS_PROGRAM, 8 ) AM_RANGE(0x1800, 0x3fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( s903mod_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( s903mod_map, AS_PROGRAM, 8, calomega_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0840, 0x0841) AM_DEVWRITE("ay8912", ay8910_address_data_w) @@ -863,7 +863,7 @@ static ADDRESS_MAP_START( s903mod_map, AS_PROGRAM, 8 ) AM_RANGE(0x1800, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sys905_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sys905_map, AS_PROGRAM, 8, calomega_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x1040, 0x1041) AM_DEVWRITE("ay8912", ay8910_address_data_w) @@ -876,7 +876,7 @@ static ADDRESS_MAP_START( sys905_map, AS_PROGRAM, 8 ) AM_RANGE(0x2800, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sys906_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sys906_map, AS_PROGRAM, 8, calomega_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x280c, 0x280f) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x2824, 0x2827) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) diff --git a/src/mame/drivers/calorie.c b/src/mame/drivers/calorie.c index da9c446e95f..69ed4d55c77 100644 --- a/src/mame/drivers/calorie.c +++ b/src/mame/drivers/calorie.c @@ -237,7 +237,7 @@ static WRITE8_HANDLER( bogus_w ) * *************************************/ -static ADDRESS_MAP_START( calorie_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( calorie_map, AS_PROGRAM, 8, calorie_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -254,13 +254,13 @@ static ADDRESS_MAP_START( calorie_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( calorie_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( calorie_sound_map, AS_PROGRAM, 8, calorie_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xc000, 0xc000) AM_READ(calorie_soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( calorie_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( calorie_sound_io_map, AS_IO, 8, calorie_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x01, 0x01) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/canyon.c b/src/mame/drivers/canyon.c index ead69949f9a..f03f547e86b 100644 --- a/src/mame/drivers/canyon.c +++ b/src/mame/drivers/canyon.c @@ -105,7 +105,7 @@ static WRITE8_HANDLER( canyon_led_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, canyon_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x100) AM_RAM AM_RANGE(0x0400, 0x0401) AM_DEVWRITE("discrete", canyon_motor_w) diff --git a/src/mame/drivers/capbowl.c b/src/mame/drivers/capbowl.c index 63fdc669270..09c353e4e3b 100644 --- a/src/mame/drivers/capbowl.c +++ b/src/mame/drivers/capbowl.c @@ -229,7 +229,7 @@ void capbowl_state::init_nvram(nvram_device &nvram, void *base, size_t size) * *************************************/ -static ADDRESS_MAP_START( capbowl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( capbowl_map, AS_PROGRAM, 8, capbowl_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x4000) AM_WRITEONLY AM_BASE_MEMBER(capbowl_state, m_rowaddress) AM_RANGE(0x4800, 0x4800) AM_WRITE(capbowl_rom_select_w) @@ -243,7 +243,7 @@ static ADDRESS_MAP_START( capbowl_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bowlrama_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bowlrama_map, AS_PROGRAM, 8, capbowl_state ) AM_RANGE(0x0000, 0x001f) AM_READWRITE(bowlrama_blitter_r, bowlrama_blitter_w) AM_RANGE(0x4000, 0x4000) AM_WRITEONLY AM_BASE_MEMBER(capbowl_state, m_rowaddress) AM_RANGE(0x5000, 0x57ff) AM_RAM AM_SHARE("nvram") @@ -263,7 +263,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, capbowl_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x2000, 0x2000) AM_WRITENOP /* Not hooked up according to the schematics */ diff --git a/src/mame/drivers/cardline.c b/src/mame/drivers/cardline.c index 627611187bb..6cd64c629cd 100644 --- a/src/mame/drivers/cardline.c +++ b/src/mame/drivers/cardline.c @@ -111,11 +111,11 @@ static WRITE8_HANDLER(lamps_w) output_set_lamp_value(7,(data >> 7) & 1); } -static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8, cardline_state ) AM_RANGE(0x0000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mem_io, AS_IO, 8 ) +static ADDRESS_MAP_START( mem_io, AS_IO, 8, cardline_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2003, 0x2003) AM_READ_PORT("IN0") AM_RANGE(0x2005, 0x2005) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/carjmbre.c b/src/mame/drivers/carjmbre.c index e75ddc16762..61a4e2d60bd 100644 --- a/src/mame/drivers/carjmbre.c +++ b/src/mame/drivers/carjmbre.c @@ -58,7 +58,7 @@ static WRITE8_HANDLER( nmi_mask_w ) } -static ADDRESS_MAP_START( carjmbre_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( carjmbre_map, AS_PROGRAM, 8, carjmbre_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM // AM_RANGE(0x8800, 0x8800) AM_READNOP // watchdog? @@ -75,13 +75,13 @@ static ADDRESS_MAP_START( carjmbre_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_READ_PORT("DSW") AM_WRITE(soundlatch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( carjmbre_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( carjmbre_sound_map, AS_PROGRAM, 8, carjmbre_state ) AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( carjmbre_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( carjmbre_sound_io_map, AS_IO, 8, carjmbre_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x10, 0x10) AM_WRITENOP //?? written on init/0xff sound command reset diff --git a/src/mame/drivers/carpolo.c b/src/mame/drivers/carpolo.c index f7865d5ca6d..7c3ac74eb0e 100644 --- a/src/mame/drivers/carpolo.c +++ b/src/mame/drivers/carpolo.c @@ -32,7 +32,7 @@ * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, carpolo_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x3000, 0x30ff) AM_WRITEONLY AM_BASE_MEMBER(carpolo_state, m_alpharam) AM_RANGE(0x4000, 0x400f) AM_WRITEONLY AM_BASE_MEMBER(carpolo_state, m_spriteram) diff --git a/src/mame/drivers/carrera.c b/src/mame/drivers/carrera.c index 7e61213ff65..c5d538f0c5c 100644 --- a/src/mame/drivers/carrera.c +++ b/src/mame/drivers/carrera.c @@ -62,7 +62,7 @@ public: }; -static ADDRESS_MAP_START( carrera_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( carrera_map, AS_PROGRAM, 8, carrera_state ) AM_RANGE(0x0000, 0x4fff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_RANGE(0xe800, 0xe800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) @@ -70,7 +70,7 @@ static ADDRESS_MAP_START( carrera_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_MEMBER(carrera_state, m_tileram) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, carrera_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/caswin.c b/src/mame/drivers/caswin.c index 9cbff7a9447..7bd7b48fd8e 100644 --- a/src/mame/drivers/caswin.c +++ b/src/mame/drivers/caswin.c @@ -149,7 +149,7 @@ static WRITE8_HANDLER( vvillage_lamps_w ) set_led_status(space->machine(), 4, data & 0x10); } -static ADDRESS_MAP_START( vvillage_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vvillage_mem, AS_PROGRAM, 8, caswin_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_READ(vvillage_rng_r) //accessed by caswin only AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") @@ -157,7 +157,7 @@ static ADDRESS_MAP_START( vvillage_mem, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_RAM_WRITE(sc0_attr_w) AM_BASE_MEMBER(caswin_state, m_sc0_attr) ADDRESS_MAP_END -static ADDRESS_MAP_START( vvillage_io, AS_IO, 8 ) +static ADDRESS_MAP_START( vvillage_io, AS_IO, 8, caswin_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) diff --git a/src/mame/drivers/cave.c b/src/mame/drivers/cave.c index 38dc25c36f8..29ce85e3df0 100644 --- a/src/mame/drivers/cave.c +++ b/src/mame/drivers/cave.c @@ -436,7 +436,7 @@ static const eeprom_interface eeprom_interface_93C46_pacslot = Dangan Feveron ***************************************************************************/ -static ADDRESS_MAP_START( dfeveron_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dfeveron_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // YMZ280 @@ -461,7 +461,7 @@ ADDRESS_MAP_END Dodonpachi ***************************************************************************/ -static ADDRESS_MAP_START( ddonpach_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ddonpach_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // YMZ280 @@ -512,7 +512,7 @@ WRITE16_HANDLER( donpachi_videoregs_w ) } #endif -static ADDRESS_MAP_START( donpachi_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( donpachi_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x200000, 0x207fff) AM_RAM_WRITE(cave_vram_1_w) AM_BASE_MEMBER(cave_state, m_vram[1]) // Layer 1 @@ -538,7 +538,7 @@ ADDRESS_MAP_END Esprade ***************************************************************************/ -static ADDRESS_MAP_START( esprade_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( esprade_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // YMZ280 @@ -563,7 +563,7 @@ ADDRESS_MAP_END Gaia Crusaders ***************************************************************************/ -static ADDRESS_MAP_START( gaia_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gaia_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // YMZ280 @@ -593,7 +593,7 @@ ADDRESS_MAP_END Guwange ***************************************************************************/ -static ADDRESS_MAP_START( guwange_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( guwange_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x300007) AM_READ(cave_irq_cause_r) // IRQ Cause @@ -620,7 +620,7 @@ ADDRESS_MAP_END Hotdog Storm ***************************************************************************/ -static ADDRESS_MAP_START( hotdogst_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hotdogst_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x300000, 0x30ffff) AM_RAM // RAM /**/AM_RANGE(0x408000, 0x408fff) AM_RAM AM_BASE_SIZE_MEMBER(cave_state, m_paletteram, m_paletteram_size) // Palette @@ -713,7 +713,7 @@ static CUSTOM_INPUT( korokoro_hopper_r ) } -static ADDRESS_MAP_START( korokoro_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( korokoro_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x107fff) AM_WRITE(cave_vram_0_w) AM_BASE_MEMBER(cave_state, m_vram[0]) // Layer 0 AM_RANGE(0x140000, 0x140005) AM_WRITEONLY AM_BASE_MEMBER(cave_state, m_vctrl[0]) // Layer 0 Control @@ -731,7 +731,7 @@ static ADDRESS_MAP_START( korokoro_map, AS_PROGRAM, 16 ) AM_RANGE(0x300000, 0x30ffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( crusherm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( crusherm_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x107fff) AM_WRITE(cave_vram_0_w) AM_BASE_MEMBER(cave_state, m_vram[0]) // Layer 0 AM_RANGE(0x140000, 0x140005) AM_WRITEONLY AM_BASE_MEMBER(cave_state, m_vctrl[0]) // Layer 0 Control @@ -752,7 +752,7 @@ ADDRESS_MAP_END Mazinger Z ***************************************************************************/ -static ADDRESS_MAP_START( mazinger_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mazinger_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM /**/AM_RANGE(0x200000, 0x207fff) AM_RAM AM_BASE_SIZE_MEMBER(cave_state, m_spriteram, m_spriteram_size) // Sprites @@ -777,7 +777,7 @@ ADDRESS_MAP_END Metamoqester ***************************************************************************/ -static ADDRESS_MAP_START( metmqstr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( metmqstr_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x17ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x27ffff) AM_ROM // ROM @@ -837,7 +837,7 @@ static WRITE16_HANDLER( pwrinst2_vctrl_1_w ) { vctrl_w(space, offset, data, mem_ static WRITE16_HANDLER( pwrinst2_vctrl_2_w ) { vctrl_w(space, offset, data, mem_mask, 2); } static WRITE16_HANDLER( pwrinst2_vctrl_3_w ) { vctrl_w(space, offset, data, mem_mask, 3); } -static ADDRESS_MAP_START( pwrinst2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pwrinst2_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // RAM AM_RANGE(0x500000, 0x500001) AM_READ_PORT("IN0") // Inputs @@ -873,7 +873,7 @@ static READ16_HANDLER( sailormn_input0_r ) return input_port_read(space->machine(), "IN0"); } -static ADDRESS_MAP_START( sailormn_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sailormn_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x110000, 0x110001) AM_RAM // (agallet) @@ -950,7 +950,7 @@ static CUSTOM_INPUT( tjumpman_hopper_r ) return (state->m_hopper && !(field.machine().primary_screen->frame_number() % 10)) ? 0 : 1; } -static ADDRESS_MAP_START( tjumpman_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tjumpman_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") // RAM AM_RANGE(0x200000, 0x207fff) AM_RAM AM_BASE_SIZE_MEMBER(cave_state, m_spriteram, m_spriteram_size) // Sprites @@ -991,7 +991,7 @@ static WRITE16_HANDLER( pacslot_leds_w ) // popmessage("led %04X", data); } -static ADDRESS_MAP_START( pacslot_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pacslot_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") // RAM AM_RANGE(0x200000, 0x207fff) AM_RAM AM_BASE_SIZE_MEMBER(cave_state, m_spriteram, m_spriteram_size) // Sprites @@ -1014,7 +1014,7 @@ ADDRESS_MAP_END Uo Poko ***************************************************************************/ -static ADDRESS_MAP_START( uopoko_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( uopoko_map, AS_PROGRAM, 16, cave_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x300003) AM_DEVREADWRITE8("ymz", ymz280b_r, ymz280b_w, 0x00ff) // YMZ280 @@ -1041,12 +1041,12 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( oki_map, AS_0, 8 ) +static ADDRESS_MAP_START( oki_map, AS_0, 8, cave_state ) AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("bank3") AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("bank4") ADDRESS_MAP_END -static ADDRESS_MAP_START( oki2_map, AS_0, 8 ) +static ADDRESS_MAP_START( oki2_map, AS_0, 8, cave_state ) AM_RANGE(0x00000, 0x1ffff) AM_ROMBANK("bank5") AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("bank6") ADDRESS_MAP_END @@ -1072,13 +1072,13 @@ static WRITE8_HANDLER( hotdogst_okibank_w ) memory_set_bank(space->machine(), "bank4", bank2); } -static ADDRESS_MAP_START( hotdogst_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hotdogst_sound_map, AS_PROGRAM, 8, cave_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2") // ROM (Banked) AM_RANGE(0xe000, 0xffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( hotdogst_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hotdogst_sound_portmap, AS_IO, 8, cave_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(hotdogst_rombank_w) // ROM bank AM_RANGE(0x30, 0x30) AM_READ(soundlatch_lo_r) // From Main CPU @@ -1101,14 +1101,14 @@ static WRITE8_HANDLER( mazinger_rombank_w ) memory_set_bank(space->machine(), "bank2", data & 0x07); } -static ADDRESS_MAP_START( mazinger_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mazinger_sound_map, AS_PROGRAM, 8, cave_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2") // ROM (Banked) AM_RANGE(0xc000, 0xc7ff) AM_RAM // RAM AM_RANGE(0xf800, 0xffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mazinger_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mazinger_sound_portmap, AS_IO, 8, cave_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(mazinger_rombank_w) // ROM bank AM_RANGE(0x10, 0x10) AM_WRITE(soundlatch_ack_w) // To Main CPU @@ -1148,13 +1148,13 @@ static WRITE8_HANDLER( metmqstr_okibank1_w ) memory_set_bank(space->machine(), "bank6", bank2); } -static ADDRESS_MAP_START( metmqstr_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( metmqstr_sound_map, AS_PROGRAM, 8, cave_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") // ROM (Banked) AM_RANGE(0xe000, 0xffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( metmqstr_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( metmqstr_sound_portmap, AS_IO, 8, cave_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(metmqstr_rombank_w) // Rom Bank AM_RANGE(0x20, 0x20) AM_READ(soundflags_r) // Communication @@ -1180,13 +1180,13 @@ static WRITE8_HANDLER( pwrinst2_rombank_w ) memory_set_bank(space->machine(), "bank1", data & 0x07); } -static ADDRESS_MAP_START( pwrinst2_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pwrinst2_sound_map, AS_PROGRAM, 8, cave_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // ROM (Banked) AM_RANGE(0xe000, 0xffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pwrinst2_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( pwrinst2_sound_portmap, AS_IO, 8, cave_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE_MODERN("oki1", okim6295_device, read, write) // M6295 AM_RANGE(0x08, 0x08) AM_DEVREADWRITE_MODERN("oki2", okim6295_device, read, write) // @@ -1240,14 +1240,14 @@ static WRITE8_HANDLER( sailormn_okibank1_w ) memory_set_bank(space->machine(), "bank6", bank2); } -static ADDRESS_MAP_START( sailormn_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sailormn_sound_map, AS_PROGRAM, 8, cave_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") // ROM (Banked) AM_RANGE(0xc000, 0xdfff) AM_READWRITE(mirror_ram_r, mirror_ram_w) AM_BASE_MEMBER(cave_state, m_mirror_ram) // RAM AM_RANGE(0xe000, 0xffff) AM_READWRITE(mirror_ram_r, mirror_ram_w) // Mirrored RAM (agallet) ADDRESS_MAP_END -static ADDRESS_MAP_START( sailormn_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sailormn_sound_portmap, AS_IO, 8, cave_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(sailormn_rombank_w) // Rom Bank AM_RANGE(0x10, 0x10) AM_WRITE(soundlatch_ack_w) // To Main CPU diff --git a/src/mame/drivers/cb2001.c b/src/mame/drivers/cb2001.c index 3b495cebf5f..f9812f56b4c 100644 --- a/src/mame/drivers/cb2001.c +++ b/src/mame/drivers/cb2001.c @@ -554,14 +554,14 @@ WRITE16_HANDLER( cb2001_bg_w ) } -static ADDRESS_MAP_START( cb2001_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cb2001_map, AS_PROGRAM, 16, cb2001_state ) AM_RANGE(0x00000, 0x1ffff) AM_RAM AM_RANGE(0x20000, 0x20fff) AM_RAM AM_BASE_MEMBER(cb2001_state, m_vram_fg) AM_RANGE(0x21000, 0x21fff) AM_RAM_WRITE(&cb2001_bg_w) AM_BASE_MEMBER(cb2001_state, m_vram_bg) AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( cb2001_io, AS_IO, 16 ) +static ADDRESS_MAP_START( cb2001_io, AS_IO, 16, cb2001_state ) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE8("ppi8255_0", ppi8255_r, ppi8255_w, 0xffff) /* Input Ports */ AM_RANGE(0x10, 0x13) AM_DEVREADWRITE8("ppi8255_1", ppi8255_r, ppi8255_w, 0xffff) /* DIP switches */ AM_RANGE(0x20, 0x21) AM_DEVREAD8("aysnd", ay8910_r, 0xff00) diff --git a/src/mame/drivers/cball.c b/src/mame/drivers/cball.c index 3265d8bca47..aab23bb4426 100644 --- a/src/mame/drivers/cball.c +++ b/src/mame/drivers/cball.c @@ -124,7 +124,7 @@ static WRITE8_HANDLER( cball_wram_w ) -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, cball_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_READ(cball_wram_r) AM_MASK(0x7f) diff --git a/src/mame/drivers/cbasebal.c b/src/mame/drivers/cbasebal.c index 80781e43bb5..bd367f77c31 100644 --- a/src/mame/drivers/cbasebal.c +++ b/src/mame/drivers/cbasebal.c @@ -111,7 +111,7 @@ static const eeprom_interface cbasebal_eeprom_intf = * *************************************/ -static ADDRESS_MAP_START( cbasebal_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cbasebal_map, AS_PROGRAM, 8, cbasebal_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_READWRITE(bankedram_r, bankedram_w) AM_BASE_GENERIC(paletteram) /* palette + vram + scrollram */ @@ -119,7 +119,7 @@ static ADDRESS_MAP_START( cbasebal_map, AS_PROGRAM, 8 ) AM_RANGE(0xfe00, 0xffff) AM_RAM AM_BASE_SIZE_MEMBER(cbasebal_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( cbasebal_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cbasebal_portmap, AS_IO, 8, cbasebal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(cbasebal_bankswitch_w) AM_RANGE(0x01, 0x01) AM_WRITE_PORT("IO_01") diff --git a/src/mame/drivers/cbuster.c b/src/mame/drivers/cbuster.c index 10a7a32caaf..50caf5e5ce4 100644 --- a/src/mame/drivers/cbuster.c +++ b/src/mame/drivers/cbuster.c @@ -104,7 +104,7 @@ static READ16_HANDLER( twocrude_control_r ) /******************************************************************************/ -static ADDRESS_MAP_START( twocrude_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( twocrude_map, AS_PROGRAM, 16, cbuster_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM AM_BASE_MEMBER(cbuster_state, m_ram) @@ -129,7 +129,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cbuster_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/ccastles.c b/src/mame/drivers/ccastles.c index b021db38401..08fb090d530 100644 --- a/src/mame/drivers/ccastles.c +++ b/src/mame/drivers/ccastles.c @@ -330,7 +330,7 @@ static WRITE8_HANDLER( nvram_w ) *************************************/ /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, ccastles_state ) AM_RANGE(0x0000, 0x0001) AM_WRITE(ccastles_bitmode_addr_w) AM_RANGE(0x0002, 0x0002) AM_READWRITE(ccastles_bitmode_r, ccastles_bitmode_w) AM_RANGE(0x0000, 0x7fff) AM_RAM_WRITE(ccastles_videoram_w) AM_BASE_MEMBER(ccastles_state, m_videoram) diff --git a/src/mame/drivers/cchance.c b/src/mame/drivers/cchance.c index cd8176fcbe8..245eb811b2f 100644 --- a/src/mame/drivers/cchance.c +++ b/src/mame/drivers/cchance.c @@ -73,7 +73,7 @@ static WRITE8_HANDLER( output_1_w ) state->m_bell_io = (data & 0x80)>>4; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, cchance_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xafff) AM_RAM AM_DEVREADWRITE("spritegen", spritecodelow_r8, spritecodelow_w8) diff --git a/src/mame/drivers/cchasm.c b/src/mame/drivers/cchasm.c index 373fa37d27d..43370b50fb2 100644 --- a/src/mame/drivers/cchasm.c +++ b/src/mame/drivers/cchasm.c @@ -31,7 +31,7 @@ * *************************************/ -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 16, cchasm_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x04000f) AM_DEVREADWRITE8_MODERN("6840ptm", ptm6840_device, read, write, 0xff) AM_RANGE(0x050000, 0x050001) AM_WRITE(cchasm_refresh_control_w) @@ -47,7 +47,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 8, cchasm_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x5000, 0x53ff) AM_RAM @@ -62,7 +62,7 @@ static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 8 ) AM_RANGE(0x7041, 0x7041) AM_NOP // TODO ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, cchasm_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/cclimber.c b/src/mame/drivers/cclimber.c index 0827429c556..9e75fbc15a0 100644 --- a/src/mame/drivers/cclimber.c +++ b/src/mame/drivers/cclimber.c @@ -278,7 +278,7 @@ static WRITE8_HANDLER( nmi_mask_w ) /* Note that River Patrol reads/writes to a000-a4f0. This is a bug in the code. The instruction at 0x0593 should say LD DE,$8000 */ -static ADDRESS_MAP_START( cclimber_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cclimber_map, AS_PROGRAM, 8, cclimber_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6bff) AM_RAM /* Crazy Kong only */ AM_RANGE(0x8000, 0x83ff) AM_RAM @@ -301,7 +301,7 @@ static ADDRESS_MAP_START( cclimber_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_READ_PORT("SYSTEM") ADDRESS_MAP_END -static ADDRESS_MAP_START( cannonb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cannonb_map, AS_PROGRAM, 8, cclimber_state ) AM_RANGE(0x5045, 0x505f) AM_WRITENOP /* do not errorlog this */ AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6bff) AM_RAM @@ -324,7 +324,7 @@ static ADDRESS_MAP_START( cannonb_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_READ_PORT("SYSTEM") ADDRESS_MAP_END -static ADDRESS_MAP_START( swimmer_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( swimmer_map, AS_PROGRAM, 8, cclimber_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x88ff) AM_MIRROR(0x0100) AM_RAM AM_BASE_MEMBER(cclimber_state, m_bigsprite_videoram) @@ -345,7 +345,7 @@ static ADDRESS_MAP_START( swimmer_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM /* Guzzler only */ ADDRESS_MAP_END -static ADDRESS_MAP_START( yamato_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( yamato_map, AS_PROGRAM, 8, cclimber_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x7000, 0x7fff) AM_ROM @@ -367,7 +367,7 @@ static ADDRESS_MAP_START( yamato_map, AS_PROGRAM, 8 ) AM_RANGE(0xba00, 0xba00) AM_READ_PORT("START") /* maybe a mirror of b800 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( toprollr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( toprollr_map, AS_PROGRAM, 8, cclimber_state ) AM_RANGE(0x0000, 0x5fff) AM_ROMBANK("bank1") AM_RANGE(0x6000, 0x6bff) AM_RAM AM_RANGE(0x8800, 0x88ff) AM_RAM AM_BASE_MEMBER(cclimber_state, m_bigsprite_videoram) @@ -389,39 +389,39 @@ static ADDRESS_MAP_START( toprollr_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cclimber_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cclimber_portmap, AS_IO, 8, cclimber_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x08, 0x09) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x0c, 0x0c) AM_DEVREAD("aysnd", ay8910_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( yamato_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( yamato_portmap, AS_IO, 8, cclimber_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(yamato_p0_w) /* ??? */ AM_RANGE(0x01, 0x01) AM_WRITE(yamato_p1_w) /* ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( swimmer_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( swimmer_audio_map, AS_PROGRAM, 8, cclimber_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READ(soundlatch_r) AM_RANGE(0x4000, 0x4001) AM_RAM /* ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( yamato_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( yamato_audio_map, AS_PROGRAM, 8, cclimber_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_RANGE(0x5000, 0x53ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( swimmer_audio_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( swimmer_audio_portmap, AS_IO, 8, cclimber_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay2", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( yamato_audio_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( yamato_audio_portmap, AS_IO, 8, cclimber_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/cd32.c b/src/mame/drivers/cd32.c index bdf36ae1f9a..bc0ffd7a833 100644 --- a/src/mame/drivers/cd32.c +++ b/src/mame/drivers/cd32.c @@ -122,7 +122,7 @@ static WRITE8_DEVICE_HANDLER( cd32_cia_0_portb_w ) logerror("%s:CIA0_portb_w(%02x)\n", device->machine().describe_context(), data); } -static ADDRESS_MAP_START( cd32_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cd32_map, AS_PROGRAM, 32, cd32_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x1fffff) AM_RAMBANK("bank1") AM_BASE_SIZE_MEMBER(cd32_state, m_chip_ram, m_chip_ram_size) AM_RANGE(0x800000, 0x800003) AM_READ_PORT("DIPSW1") diff --git a/src/mame/drivers/cdi.c b/src/mame/drivers/cdi.c index a36ce69495d..d7dab93bd05 100644 --- a/src/mame/drivers/cdi.c +++ b/src/mame/drivers/cdi.c @@ -55,7 +55,7 @@ INLINE void verboselog(running_machine &machine, int n_level, const char *s_fmt, * Memory maps * *************************/ -static ADDRESS_MAP_START( cdimono1_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cdimono1_mem, AS_PROGRAM, 16, cdi_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_BASE_MEMBER(cdi_state,m_planea) AM_RANGE(0x00200000, 0x0027ffff) AM_RAM AM_BASE_MEMBER(cdi_state,m_planeb) #if ENABLE_UART_PRINTING diff --git a/src/mame/drivers/centiped.c b/src/mame/drivers/centiped.c index 920d8d18e14..24f731821d3 100644 --- a/src/mame/drivers/centiped.c +++ b/src/mame/drivers/centiped.c @@ -686,7 +686,7 @@ static READ8_DEVICE_HANDLER( caterplr_AY8910_r ) * *************************************/ -static ADDRESS_MAP_START( centiped_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( centiped_map, AS_PROGRAM, 8, centiped_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE_MEMBER(centiped_state, m_rambase) AM_RANGE(0x0400, 0x07bf) AM_RAM_WRITE(centiped_videoram_w) AM_BASE_MEMBER(centiped_state, m_videoram) @@ -711,7 +711,7 @@ static ADDRESS_MAP_START( centiped_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( centipdb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( centipdb_map, AS_PROGRAM, 8, centiped_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x4000) AM_RAM AM_RANGE(0x0400, 0x07bf) AM_MIRROR(0x4000) AM_RAM_WRITE(centiped_videoram_w) AM_BASE_MEMBER(centiped_state, m_videoram) @@ -745,7 +745,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( milliped_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( milliped_map, AS_PROGRAM, 8, centiped_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x040f) AM_DEVREADWRITE("pokey", pokey_r, pokey_w) @@ -778,7 +778,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( warlords_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( warlords_map, AS_PROGRAM, 8, centiped_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07bf) AM_RAM_WRITE(centiped_videoram_w) AM_BASE_MEMBER(centiped_state, m_videoram) @@ -803,7 +803,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mazeinv_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mazeinv_map, AS_PROGRAM, 8, centiped_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x040f) AM_DEVREADWRITE("pokey", pokey_r, pokey_w) @@ -837,7 +837,7 @@ ADDRESS_MAP_END * ****************************************/ -static ADDRESS_MAP_START( bullsdrt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bullsdrt_map, AS_PROGRAM, 8, centiped_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x1000) AM_MIRROR(0x6000) AM_READ_PORT("DSW1") AM_RANGE(0x1080, 0x1080) AM_MIRROR(0x6000) AM_READ(centiped_IN0_r) @@ -860,7 +860,7 @@ static ADDRESS_MAP_START( bullsdrt_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0x6fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bullsdrt_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bullsdrt_port_map, AS_IO, 8, centiped_state ) AM_RANGE(0x00, 0x00) AM_WRITE(bullsdrt_sprites_bank_w) AM_RANGE(0x20, 0x3f) AM_WRITE(bullsdrt_tilesbank_w) AM_BASE_MEMBER(centiped_state, m_bullsdrt_tiles_bankram) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(bullsdrt_data_port_r) AM_DEVWRITE("snsnd", sn76496_w) diff --git a/src/mame/drivers/chaknpop.c b/src/mame/drivers/chaknpop.c index 91e30988d9b..0b414ac51cb 100644 --- a/src/mame/drivers/chaknpop.c +++ b/src/mame/drivers/chaknpop.c @@ -140,7 +140,7 @@ static WRITE8_HANDLER ( coinlock_w ) ***************************************************************************/ -static ADDRESS_MAP_START( chaknpop_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chaknpop_map, AS_PROGRAM, 8, chaknpop_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(chaknpop_state, m_mcu_ram) AM_RANGE(0x8800, 0x8800) AM_READWRITE(chaknpop_mcu_port_a_r, chaknpop_mcu_port_a_w) diff --git a/src/mame/drivers/cham24.c b/src/mame/drivers/cham24.c index 1ee6e68c445..f4977c72a07 100644 --- a/src/mame/drivers/cham24.c +++ b/src/mame/drivers/cham24.c @@ -221,7 +221,7 @@ static WRITE8_HANDLER( cham24_mapper_w ) } } -static ADDRESS_MAP_START( cham24_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cham24_map, AS_PROGRAM, 8, cham24_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */ AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu", ppu2c0x_device, read, write) AM_RANGE(0x4000, 0x4013) AM_DEVREADWRITE("nes", nes_psg_r, nes_psg_w) /* PSG primary registers */ diff --git a/src/mame/drivers/champbas.c b/src/mame/drivers/champbas.c index 19d8d5b284e..57c23cad1c2 100644 --- a/src/mame/drivers/champbas.c +++ b/src/mame/drivers/champbas.c @@ -217,7 +217,7 @@ static READ8_HANDLER( champbja_alt_protection_r ) * *************************************/ -static ADDRESS_MAP_START( talbot_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( talbot_map, AS_PROGRAM, 8, champbas_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") /* MCU shared RAM */ AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -244,7 +244,7 @@ static ADDRESS_MAP_START( talbot_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( champbas_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( champbas_main_map, AS_PROGRAM, 8, champbas_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -276,7 +276,7 @@ static ADDRESS_MAP_START( champbas_main_map, AS_PROGRAM, 8 ) AM_RANGE(0x6800, 0x68ff) AM_READ(champbja_alt_protection_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( exctsccrb_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( exctsccrb_main_map, AS_PROGRAM, 8, champbas_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") // MCU not used (though it's present on the board) AM_RANGE(0x7000, 0x7001) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -302,7 +302,7 @@ static ADDRESS_MAP_START( exctsccrb_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( exctsccr_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( exctsccr_main_map, AS_PROGRAM, 8, champbas_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x7c00, 0x7fff) AM_RAM @@ -328,7 +328,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( champbas_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( champbas_sub_map, AS_PROGRAM, 8, champbas_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x7fff) AM_READ(soundlatch_r) AM_RANGE(0x8000, 0x9fff) AM_WRITENOP // 4-bit return code to main CPU (not used) @@ -338,7 +338,7 @@ static ADDRESS_MAP_START( champbas_sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( exctsccr_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( exctsccr_sub_map, AS_PROGRAM, 8, champbas_state ) AM_RANGE(0x0000, 0x8fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_RANGE(0xc008, 0xc008) AM_DEVWRITE("dac1", champbas_dac_w) @@ -348,7 +348,7 @@ static ADDRESS_MAP_START( exctsccr_sub_map, AS_PROGRAM, 8 ) // AM_RANGE(0xc00f, 0xc00f) AM_WRITENOP /* ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( exctsccr_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( exctsccr_sound_io_map, AS_IO, 8, champbas_state ) ADDRESS_MAP_GLOBAL_MASK( 0x00ff ) AM_RANGE(0x82, 0x83) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x86, 0x87) AM_DEVWRITE("ay2", ay8910_data_address_w) @@ -357,7 +357,7 @@ static ADDRESS_MAP_START( exctsccr_sound_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, champbas_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share1") /* main CPU shared RAM */ ADDRESS_MAP_END diff --git a/src/mame/drivers/champbwl.c b/src/mame/drivers/champbwl.c index 375240cb3cb..9b67520b93d 100644 --- a/src/mame/drivers/champbwl.c +++ b/src/mame/drivers/champbwl.c @@ -195,7 +195,7 @@ static WRITE8_HANDLER( champbwl_misc_w ) memory_set_bank(space->machine(), "bank1", (data & 0x30) >> 4); } -static ADDRESS_MAP_START( champbwl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( champbwl_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("maincpu", 0x10000) AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") @@ -234,7 +234,7 @@ static WRITE8_HANDLER( doraemon_outputs_w ) // popmessage("%02x", data); } -static ADDRESS_MAP_START( doraemon, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( doraemon, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") diff --git a/src/mame/drivers/chanbara.c b/src/mame/drivers/chanbara.c index 95da28efcb4..1116ff8c2a1 100644 --- a/src/mame/drivers/chanbara.c +++ b/src/mame/drivers/chanbara.c @@ -207,7 +207,7 @@ static SCREEN_UPDATE_IND16( chanbara ) /***************************************************************************/ -static ADDRESS_MAP_START( chanbara_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chanbara_map, AS_PROGRAM, 8, chanbara_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(chanbara_videoram_w) AM_BASE_MEMBER(chanbara_state, m_videoram) AM_RANGE(0x0c00, 0x0fff) AM_RAM_WRITE(chanbara_colorram_w) AM_BASE_MEMBER(chanbara_state, m_colorram) diff --git a/src/mame/drivers/changela.c b/src/mame/drivers/changela.c index b36d49d8578..735573dac6a 100644 --- a/src/mame/drivers/changela.c +++ b/src/mame/drivers/changela.c @@ -103,7 +103,7 @@ static WRITE8_HANDLER( changela_68705_ddr_c_w ) } -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, changela_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(changela_68705_port_a_r, changela_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(changela_68705_port_b_r, changela_68705_port_b_w) @@ -218,7 +218,7 @@ static WRITE8_HANDLER( changela_coin_counter_w ) } -static ADDRESS_MAP_START( changela_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( changela_map, AS_PROGRAM, 8, changela_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_BASE_MEMBER(changela_state, m_spriteram) /* OBJ0 RAM */ AM_RANGE(0x9000, 0x97ff) AM_RAM AM_BASE_MEMBER(changela_state, m_videoram) /* OBJ1 RAM */ diff --git a/src/mame/drivers/cheekyms.c b/src/mame/drivers/cheekyms.c index 911d7e43b8b..cc19066a6e5 100644 --- a/src/mame/drivers/cheekyms.c +++ b/src/mame/drivers/cheekyms.c @@ -22,13 +22,13 @@ static INPUT_CHANGED( coin_inserted ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, cheekyms_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x3000, 0x33ff) AM_RAM AM_RANGE(0x3800, 0x3bff) AM_RAM AM_BASE_MEMBER(cheekyms_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, cheekyms_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW") AM_RANGE(0x01, 0x01) AM_READ_PORT("INPUTS") diff --git a/src/mame/drivers/chihiro.c b/src/mame/drivers/chihiro.c index f408bdb7c2a..39e5bbecf1c 100644 --- a/src/mame/drivers/chihiro.c +++ b/src/mame/drivers/chihiro.c @@ -1110,14 +1110,14 @@ static WRITE32_HANDLER( smbus_w ) } -static ADDRESS_MAP_START( xbox_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( xbox_map, AS_PROGRAM, 32, smbus_state ) AM_RANGE(0x00000000, 0x07ffffff) AM_RAM AM_RANGE(0xfd000000, 0xfdffffff) AM_READWRITE(geforce_r, geforce_w) AM_RANGE(0xfed00000, 0xfed003ff) AM_READWRITE(usbctrl_r, usbctrl_w) AM_RANGE(0xff000000, 0xffffffff) AM_ROM AM_REGION("bios", 0) AM_MIRROR(0x00f80000) ADDRESS_MAP_END -static ADDRESS_MAP_START(xbox_map_io, AS_IO, 32) +static ADDRESS_MAP_START(xbox_map_io, AS_IO, 32, smbus_state ) AM_RANGE(0x0020, 0x0023) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff) AM_RANGE(0x0040, 0x0043) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) AM_RANGE(0x00a0, 0x00a3) AM_DEVREADWRITE8("pic8259_2", pic8259_r, pic8259_w, 0xffffffff) diff --git a/src/mame/drivers/chinagat.c b/src/mame/drivers/chinagat.c index fa497fcc690..156f002efd9 100644 --- a/src/mame/drivers/chinagat.c +++ b/src/mame/drivers/chinagat.c @@ -305,7 +305,7 @@ static void saiyugoub1_m5205_irq_w( device_t *device ) state->m_adpcm_sound_irq = 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(ddragon_fgvideoram_w) AM_BASE_MEMBER(ddragon_state, m_fgvideoram) AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(ddragon_bgvideoram_w) AM_BASE_MEMBER(ddragon_state, m_bgvideoram) @@ -326,7 +326,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x2000, 0x2000) AM_WRITE(chinagat_sub_bankswitch_w) AM_RANGE(0x2800, 0x2800) AM_WRITEONLY /* Called on CPU start and after return from jump table */ @@ -336,7 +336,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -344,7 +344,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xA000, 0xA000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( ym2203c_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ym2203c_sound_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM // 8804 and/or 8805 make a gong sound when the coin goes in @@ -362,7 +362,7 @@ static ADDRESS_MAP_START( ym2203c_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xA000, 0xA000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( saiyugoub1_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( saiyugoub1_sound_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -370,12 +370,12 @@ static ADDRESS_MAP_START( saiyugoub1_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xA000, 0xA000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( i8748_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( i8748_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x03ff) AM_ROM AM_RANGE(0x0400, 0x07ff) AM_ROM /* i8749 version */ ADDRESS_MAP_END -static ADDRESS_MAP_START( i8748_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( i8748_portmap, AS_IO, 8, ddragon_state ) AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(saiyugoub1_mcu_command_r) AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_DEVWRITE("adpcm", saiyugoub1_m5205_clk_w) /* Drives the clock on the m5205 at 1/8 of this frequency */ AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(saiyugoub1_m5205_irq_r) diff --git a/src/mame/drivers/chinsan.c b/src/mame/drivers/chinsan.c index 7ecbb4c96a2..d97d89c4a16 100644 --- a/src/mame/drivers/chinsan.c +++ b/src/mame/drivers/chinsan.c @@ -237,14 +237,14 @@ static WRITE8_DEVICE_HANDLER( chin_adpcm_w ) * *************************************/ -static ADDRESS_MAP_START( chinsan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chinsan_map, AS_PROGRAM, 8, chinsan_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_BASE_MEMBER(chinsan_state, m_video) ADDRESS_MAP_END -static ADDRESS_MAP_START( chinsan_io, AS_IO, 8 ) +static ADDRESS_MAP_START( chinsan_io, AS_IO, 8, chinsan_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(chinsan_port00_w) AM_RANGE(0x01, 0x01) AM_READ(chinsan_input_port_0_r) diff --git a/src/mame/drivers/chqflag.c b/src/mame/drivers/chqflag.c index a4032534651..8a7aa888a02 100644 --- a/src/mame/drivers/chqflag.c +++ b/src/mame/drivers/chqflag.c @@ -143,7 +143,7 @@ static WRITE8_HANDLER( chqflag_sh_irqtrigger_w ) /****************************************************************************/ -static ADDRESS_MAP_START( chqflag_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chqflag_map, AS_PROGRAM, 8, chqflag_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM /* RAM */ AM_RANGE(0x1000, 0x17ff) AM_RAMBANK("bank1") /* banked RAM (RAM/051316 (chip 1)) */ AM_RANGE(0x1800, 0x1fff) AM_RAMBANK("bank2") /* palette + RAM */ @@ -185,7 +185,7 @@ static WRITE8_HANDLER( k007232_bankswitch_w ) k007232_set_bank(state->m_k007232_2, bank_A, bank_B); } -static ADDRESS_MAP_START( chqflag_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chqflag_sound_map, AS_PROGRAM, 8, chqflag_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0x9000, 0x9000) AM_WRITE(k007232_bankswitch_w) /* 007232 bankswitch */ diff --git a/src/mame/drivers/cinemat.c b/src/mame/drivers/cinemat.c index 7ef49e9b092..571e486d087 100644 --- a/src/mame/drivers/cinemat.c +++ b/src/mame/drivers/cinemat.c @@ -290,38 +290,38 @@ static WRITE8_HANDLER( qb3_ram_bank_w ) * *************************************/ -static ADDRESS_MAP_START( program_map_4k, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( program_map_4k, AS_PROGRAM, 8, cinemat_state ) ADDRESS_MAP_GLOBAL_MASK(0xfff) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( program_map_8k, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( program_map_8k, AS_PROGRAM, 8, cinemat_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_MIRROR(0x1000) AM_ROM AM_REGION("maincpu", 0x1000) ADDRESS_MAP_END -static ADDRESS_MAP_START( program_map_16k, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( program_map_16k, AS_PROGRAM, 8, cinemat_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x3fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( program_map_32k, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( program_map_32k, AS_PROGRAM, 8, cinemat_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( data_map, AS_DATA, 16, cinemat_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( data_map_qb3, AS_DATA, 16 ) +static ADDRESS_MAP_START( data_map_qb3, AS_DATA, 16, cinemat_state ) AM_RANGE(0x0000, 0x03ff) AM_RAMBANK("bank1") AM_BASE_MEMBER(cinemat_state, m_rambase) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, cinemat_state ) AM_RANGE(0x00, 0x0f) AM_READ(inputs_r) AM_RANGE(0x10, 0x16) AM_READ(switches_r) AM_RANGE(0x17, 0x17) AM_READ(coin_input_r) diff --git a/src/mame/drivers/circus.c b/src/mame/drivers/circus.c index f251f1b3923..f8565b57284 100644 --- a/src/mame/drivers/circus.c +++ b/src/mame/drivers/circus.c @@ -57,7 +57,7 @@ static READ8_HANDLER( circus_paddle_r ) return input_port_read(space->machine(), "PADDLE"); } -static ADDRESS_MAP_START( circus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( circus_map, AS_PROGRAM, 8, circus_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x2000) AM_WRITE(circus_clown_x_w) diff --git a/src/mame/drivers/circusc.c b/src/mame/drivers/circusc.c index d2be5a85e99..8d2d84b6c77 100644 --- a/src/mame/drivers/circusc.c +++ b/src/mame/drivers/circusc.c @@ -150,7 +150,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( circusc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( circusc_map, AS_PROGRAM, 8, circusc_state ) AM_RANGE(0x0000, 0x0000) AM_MIRROR(0x03f8) AM_WRITE(circusc_flipscreen_w) /* FLIP */ AM_RANGE(0x0001, 0x0001) AM_MIRROR(0x03f8) AM_WRITE(irq_mask_w) /* INTST */ // AM_RANGE(0x0002, 0x0002) AM_MIRROR(0x03f8) AM_WRITENOP /* MUT - not used /* @@ -175,7 +175,7 @@ static ADDRESS_MAP_START( circusc_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, circusc_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_READ(soundlatch_r) /* CS0 */ diff --git a/src/mame/drivers/cischeat.c b/src/mame/drivers/cischeat.c index 6e2b6e58d2d..c22c3df6781 100644 --- a/src/mame/drivers/cischeat.c +++ b/src/mame/drivers/cischeat.c @@ -211,7 +211,7 @@ static WRITE16_HANDLER( bigrun_paletteram16_w ) if ( (offset >= 0x3600/2) && (offset <= 0x37ff/2) ) { palette_set_color(space->machine(), 0xe00 + offset - 0x3600/2, MAKE_RGB(r,g,b) ); return;} } -static ADDRESS_MAP_START( bigrun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigrun_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x080000, 0x083fff) AM_READWRITE(bigrun_vregs_r, bigrun_vregs_w) AM_BASE_MEMBER(cischeat_state, m_vregs) // Vregs AM_RANGE(0x084000, 0x087fff) AM_RAM // Linking with other units @@ -264,7 +264,7 @@ static WRITE16_HANDLER( cischeat_paletteram16_w ) if ( (offset >= 0x5000/2) && (offset <= 0x5fff/2) ) { palette_set_color(space->machine(), 0xe00 + offset - 0x5000/2, MAKE_RGB(r,g,b) ); return;} } -static ADDRESS_MAP_START( cischeat_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cischeat_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x080000, 0x087fff) AM_READWRITE(cischeat_vregs_r, cischeat_vregs_w) AM_BASE_MEMBER(cischeat_state, m_vregs) // Vregs AM_RANGE(0x088000, 0x088fff) AM_RAM // Linking with other units @@ -324,7 +324,7 @@ static WRITE16_HANDLER( f1gpstar_paletteram16_w ) 098800-099000 0F8000-0F9000 */ -static ADDRESS_MAP_START( f1gpstar_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpstar_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x080000, 0x087fff) AM_READWRITE(f1gpstar_vregs_r, f1gpstar_vregs_w) AM_BASE_MEMBER(cischeat_state, m_vregs) // Vregs AM_RANGE(0x088000, 0x088fff) AM_RAM // Linking with other units @@ -350,7 +350,7 @@ ADDRESS_MAP_END **************************************************************************/ // Same as f1gpstar, but vregs are slightly different: -static ADDRESS_MAP_START( f1gpstr2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpstr2_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x080000, 0x087fff) AM_READWRITE(f1gpstr2_vregs_r, f1gpstr2_vregs_w) AM_BASE_MEMBER(cischeat_state, m_vregs) // Vregs (slightly different from f1gpstar) AM_RANGE(0x088000, 0x088fff) AM_RAM // Linking with other units @@ -493,7 +493,7 @@ static WRITE16_HANDLER( scudhamm_oki_bank_w ) } } -static ADDRESS_MAP_START( scudhamm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( scudhamm_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x082000, 0x082fff) AM_RAM_WRITE(scudhamm_vregs_w) AM_BASE_MEMBER(cischeat_state, m_vregs) // Video Registers + RAM AM_RANGE(0x0a0000, 0x0a3fff) AM_RAM_WRITE(cischeat_scrollram_0_w) AM_BASE_MEMBER(cischeat_state, m_scrollram[0]) // Scroll RAM 0 @@ -576,7 +576,7 @@ static WRITE16_HANDLER( armchmp2_leds_w ) } } -static ADDRESS_MAP_START( armchmp2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( armchmp2_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x082000, 0x082fff) AM_RAM_WRITE(scudhamm_vregs_w) AM_BASE_MEMBER(cischeat_state, m_vregs) // Video Registers + RAM AM_RANGE(0x0a0000, 0x0a3fff) AM_RAM_WRITE(cischeat_scrollram_0_w) AM_BASE_MEMBER(cischeat_state, m_scrollram[0]) // Scroll RAM 0 @@ -605,14 +605,14 @@ ADDRESS_MAP_END Big Run **************************************************************************/ -static ADDRESS_MAP_START( bigrun_map2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigrun_map2, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share1") // Shared RAM (with Main CPU) AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_BASE_MEMBER(cischeat_state, m_roadram[0]) // Road RAM AM_RANGE(0x0c0000, 0x0c3fff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( bigrun_map3, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigrun_map3, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share2") // Shared RAM (with Main CPU) AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_BASE_MEMBER(cischeat_state, m_roadram[1]) // Road RAM @@ -624,7 +624,7 @@ ADDRESS_MAP_END Cisco Heat **************************************************************************/ -static ADDRESS_MAP_START( cischeat_map2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cischeat_map2, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share1") // Shared RAM (with Main CPU) AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_BASE_MEMBER(cischeat_state, m_roadram[0]) // Road RAM @@ -633,7 +633,7 @@ static ADDRESS_MAP_START( cischeat_map2, AS_PROGRAM, 16 ) AM_RANGE(0x200000, 0x23ffff) AM_ROM AM_REGION("cpu2",0x40000) // ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cischeat_map3, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cischeat_map3, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040000, 0x047fff) AM_RAM AM_SHARE("share2") // Shared RAM (with Main CPU) AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_BASE_MEMBER(cischeat_state, m_roadram[1]) // Road RAM @@ -648,7 +648,7 @@ ADDRESS_MAP_END F1 GrandPrix Star **************************************************************************/ -static ADDRESS_MAP_START( f1gpstar_map2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpstar_map2, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("share1") // Shared RAM (with Main CPU) AM_RANGE(0x100000, 0x1007ff) AM_RAM AM_BASE_MEMBER(cischeat_state, m_roadram[0]) // Road RAM @@ -656,7 +656,7 @@ static ADDRESS_MAP_START( f1gpstar_map2, AS_PROGRAM, 16 ) AM_RANGE(0x200000, 0x200001) AM_WRITENOP // watchdog ADDRESS_MAP_END -static ADDRESS_MAP_START( f1gpstar_map3, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpstar_map3, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x080000, 0x0807ff) AM_RAM AM_SHARE("share2") // Shared RAM (with Main CPU) AM_RANGE(0x100000, 0x1007ff) AM_RAM AM_BASE_MEMBER(cischeat_state, m_roadram[1]) // Road RAM @@ -691,7 +691,7 @@ static WRITE16_HANDLER( bigrun_soundbank_w ) } } -static ADDRESS_MAP_START( bigrun_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigrun_sound_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040000, 0x040001) AM_READWRITE(soundlatch_word_r, bigrun_soundbank_w) // From Main CPU AM_RANGE(0x060000, 0x060001) AM_WRITE(soundlatch2_word_w) // To Main CPU @@ -712,7 +712,7 @@ static WRITE16_DEVICE_HANDLER( cischeat_soundbank_w ) if (ACCESSING_BITS_0_7) oki->set_bank_base(0x40000 * (data & 1) ); } -static ADDRESS_MAP_START( cischeat_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cischeat_sound_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040002, 0x040003) AM_DEVWRITE("oki1", cischeat_soundbank_w) // Sample Banking AM_RANGE(0x040004, 0x040005) AM_DEVWRITE("oki2", cischeat_soundbank_w) // Sample Banking @@ -729,7 +729,7 @@ ADDRESS_MAP_END F1 GrandPrix Star **************************************************************************/ -static ADDRESS_MAP_START( f1gpstar_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpstar_sound_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040004, 0x040005) AM_DEVWRITE("oki1", cischeat_soundbank_w) // Sample Banking (cischeat: 40002) AM_RANGE(0x040008, 0x040009) AM_DEVWRITE("oki2", cischeat_soundbank_w) // Sample Banking (cischeat: 40004) @@ -745,7 +745,7 @@ ADDRESS_MAP_END F1 GrandPrix Star II **************************************************************************/ -static ADDRESS_MAP_START( f1gpstr2_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpstr2_sound_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x040004, 0x040005) AM_DEVWRITE("oki1", cischeat_soundbank_w) // Sample Banking AM_RANGE(0x040008, 0x040009) AM_DEVWRITE("oki2", cischeat_soundbank_w) // Sample Banking @@ -777,7 +777,7 @@ static WRITE16_HANDLER( f1gpstr2_io_w ) COMBINE_DATA(&state->m_vregs[offset + 0x1000/2]); } -static ADDRESS_MAP_START( f1gpstr2_io_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpstr2_io_map, AS_PROGRAM, 16, cischeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x080000, 0x080fff) AM_READWRITE(f1gpstr2_io_r, f1gpstr2_io_w) // AM_RANGE(0x100000, 0x100001) AM_WRITEONLY AM_BASE_MEMBER(cischeat_state, m_f1gpstr2_ioready) // diff --git a/src/mame/drivers/citycon.c b/src/mame/drivers/citycon.c index 6da057ae03c..c51fb186717 100644 --- a/src/mame/drivers/citycon.c +++ b/src/mame/drivers/citycon.c @@ -27,7 +27,7 @@ static READ8_HANDLER( citycon_irq_ack_r ) return 0; } -static ADDRESS_MAP_START( citycon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( citycon_map, AS_PROGRAM, 8, citycon_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(citycon_videoram_w) AM_BASE_MEMBER(citycon_state, m_videoram) AM_RANGE(0x2000, 0x20ff) AM_RAM_WRITE(citycon_linecolor_w) AM_BASE_MEMBER(citycon_state, m_linecolor) @@ -42,7 +42,7 @@ static ADDRESS_MAP_START( citycon_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, citycon_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("aysnd", ay8910_address_data_w) // AM_RANGE(0x4002, 0x4002) AM_DEVREAD("aysnd", ay8910_r) /* ?? */ diff --git a/src/mame/drivers/clayshoo.c b/src/mame/drivers/clayshoo.c index d8add99acfb..6b5b271b963 100644 --- a/src/mame/drivers/clayshoo.c +++ b/src/mame/drivers/clayshoo.c @@ -216,7 +216,7 @@ static SCREEN_UPDATE_RGB32( clayshoo ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, clayshoo_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_ROM @@ -233,7 +233,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, clayshoo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(watchdog_reset_w) AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) diff --git a/src/mame/drivers/cliffhgr.c b/src/mame/drivers/cliffhgr.c index 7e049ec59c1..5f57bdb2b4f 100644 --- a/src/mame/drivers/cliffhgr.c +++ b/src/mame/drivers/cliffhgr.c @@ -226,13 +226,13 @@ static MACHINE_RESET( cliffhgr ) /********************************************************/ -static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8, cliffhgr_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM /* ROM */ AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") /* NVRAM */ AM_RANGE(0xe800, 0xefff) AM_RAM /* RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mainport, AS_IO, 8 ) +static ADDRESS_MAP_START( mainport, AS_IO, 8, cliffhgr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x44, 0x44) AM_DEVWRITE_MODERN("tms9928a", tms9928a_device, vram_write) AM_RANGE(0x45, 0x45) AM_DEVREAD_MODERN("tms9928a", tms9928a_device, vram_read) diff --git a/src/mame/drivers/cloak.c b/src/mame/drivers/cloak.c index 231dc9df74a..1fab4daa294 100644 --- a/src/mame/drivers/cloak.c +++ b/src/mame/drivers/cloak.c @@ -164,7 +164,7 @@ static WRITE8_HANDLER( cloak_nvram_enable_w ) * *************************************/ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, cloak_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(cloak_videoram_w) AM_BASE_MEMBER(cloak_state, m_videoram) AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share1") @@ -195,7 +195,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, cloak_state ) AM_RANGE(0x0000, 0x0007) AM_RAM AM_RANGE(0x0008, 0x000f) AM_READWRITE(graph_processor_r, graph_processor_w) AM_RANGE(0x0010, 0x07ff) AM_RAM diff --git a/src/mame/drivers/cloud9.c b/src/mame/drivers/cloud9.c index 863be86e742..1a8444edf19 100644 --- a/src/mame/drivers/cloud9.c +++ b/src/mame/drivers/cloud9.c @@ -268,7 +268,7 @@ static WRITE8_HANDLER( nvram_store_w ) * *************************************/ -static ADDRESS_MAP_START( cloud9_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cloud9_map, AS_PROGRAM, 8, cloud9_state ) AM_RANGE(0x0000, 0x0001) AM_WRITE(cloud9_bitmode_addr_w) AM_RANGE(0x0002, 0x0002) AM_READWRITE(cloud9_bitmode_r, cloud9_bitmode_w) AM_RANGE(0x0000, 0x4fff) AM_ROMBANK("bank1") AM_WRITE(cloud9_videoram_w) diff --git a/src/mame/drivers/clshroad.c b/src/mame/drivers/clshroad.c index 86475331d9f..0ec53ef702b 100644 --- a/src/mame/drivers/clshroad.c +++ b/src/mame/drivers/clshroad.c @@ -37,7 +37,7 @@ static READ8_HANDLER( clshroad_input_r ) } -static ADDRESS_MAP_START( clshroad_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( clshroad_map, AS_PROGRAM, 8, clshroad_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x95ff) AM_RAM AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE("share1") @@ -51,7 +51,7 @@ static ADDRESS_MAP_START( clshroad_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(clshroad_vram_0_w) AM_BASE_MEMBER(clshroad_state, m_vram_0) // Layer 0 ADDRESS_MAP_END -static ADDRESS_MAP_START( clshroad_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( clshroad_sound_map, AS_PROGRAM, 8, clshroad_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_DEVWRITE("custom", wiping_sound_w) AM_RANGE(0x9600, 0x97ff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/cmmb.c b/src/mame/drivers/cmmb.c index fd0959db04c..c8d0e8b18e3 100644 --- a/src/mame/drivers/cmmb.c +++ b/src/mame/drivers/cmmb.c @@ -167,7 +167,7 @@ static READ8_HANDLER( kludge_r ) } /* overlap empty addresses */ -static ADDRESS_MAP_START( cmmb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cmmb_map, AS_PROGRAM, 8, cmmb_state ) ADDRESS_MAP_GLOBAL_MASK(0xffff) AM_RANGE(0x0000, 0x01ff) AM_RAM /* zero page address */ // AM_RANGE(0x13c0, 0x13ff) AM_RAM //spriteram diff --git a/src/mame/drivers/cninja.c b/src/mame/drivers/cninja.c index 1614cd1dbbf..c958c6bcbd5 100644 --- a/src/mame/drivers/cninja.c +++ b/src/mame/drivers/cninja.c @@ -166,7 +166,7 @@ static WRITE16_HANDLER( cninja_pf34_control_w ) } -static ADDRESS_MAP_START( cninja_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cninja_map, AS_PROGRAM, 16, cninja_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x140000, 0x14000f) AM_WRITE(cninja_pf12_control_w) @@ -193,7 +193,7 @@ static ADDRESS_MAP_START( cninja_map, AS_PROGRAM, 16 ) AM_RANGE(0x308000, 0x308fff) AM_WRITENOP /* Bootleg only */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cninjabl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cninjabl_map, AS_PROGRAM, 16, cninja_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x138000, 0x1387ff) AM_RAM AM_SHARE("spriteram") /* bootleg sprite-ram (sprites rewritten here in new format) */ @@ -223,7 +223,7 @@ static ADDRESS_MAP_START( cninjabl_map, AS_PROGRAM, 16 ) AM_RANGE(0x1b4000, 0x1b4001) AM_DEVWRITE_MODERN("spriteram", buffered_spriteram16_device, write) /* DMA flag */ ADDRESS_MAP_END -static ADDRESS_MAP_START( edrandy_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( edrandy_map, AS_PROGRAM, 16, cninja_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x140000, 0x14000f) AM_WRITE(cninja_pf12_control_w) @@ -251,7 +251,7 @@ static ADDRESS_MAP_START( edrandy_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( robocop2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( robocop2_map, AS_PROGRAM, 16, cninja_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x140000, 0x14000f) AM_WRITE(cninja_pf12_control_w) @@ -278,7 +278,7 @@ static ADDRESS_MAP_START( robocop2_map, AS_PROGRAM, 16 ) AM_RANGE(0x1f8000, 0x1f8001) AM_READ_PORT("DSW3") /* Dipswitch #3 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mutantf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mutantf_map, AS_PROGRAM, 16, cninja_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram") @@ -307,7 +307,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cninja_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_r, ym2151_w) @@ -319,7 +319,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x1ff400, 0x1ff403) AM_WRITE(h6280_irq_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map_mutantf, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_mutantf, AS_PROGRAM, 8, cninja_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READNOP AM_WRITENOP AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -331,7 +331,7 @@ static ADDRESS_MAP_START( sound_map_mutantf, AS_PROGRAM, 8 ) AM_RANGE(0x1ff400, 0x1ff403) AM_WRITE(h6280_irq_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( stoneage_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( stoneage_s_map, AS_PROGRAM, 8, cninja_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/cntsteer.c b/src/mame/drivers/cntsteer.c index c5b43397506..5ee783f0275 100644 --- a/src/mame/drivers/cntsteer.c +++ b/src/mame/drivers/cntsteer.c @@ -524,7 +524,7 @@ static READ8_HANDLER( cntsteer_adx_r ) /***************************************************************************/ -static ADDRESS_MAP_START( gekitsui_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gekitsui_cpu1_map, AS_PROGRAM, 8, cntsteer_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x11ff) AM_RAM AM_BASE_MEMBER(cntsteer_state, m_spriteram) AM_RANGE(0x1200, 0x1fff) AM_RAM @@ -534,7 +534,7 @@ static ADDRESS_MAP_START( gekitsui_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( gekitsui_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gekitsui_cpu2_map, AS_PROGRAM, 8, cntsteer_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(cntsteer_background_w) AM_BASE_MEMBER(cntsteer_state, m_videoram2) AM_RANGE(0x3000, 0x3000) AM_READ_PORT("DSW0") @@ -547,7 +547,7 @@ static ADDRESS_MAP_START( gekitsui_cpu2_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cntsteer_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cntsteer_cpu1_map, AS_PROGRAM, 8, cntsteer_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x11ff) AM_RAM AM_BASE_MEMBER(cntsteer_state, m_spriteram) AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(cntsteer_foreground_vram_w) AM_BASE_MEMBER(cntsteer_state, m_videoram) @@ -557,7 +557,7 @@ static ADDRESS_MAP_START( cntsteer_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cntsteer_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cntsteer_cpu2_map, AS_PROGRAM, 8, cntsteer_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(cntsteer_background_w) AM_BASE_MEMBER(cntsteer_state, m_videoram2) AM_SHARE("share3") AM_RANGE(0x2000, 0x2fff) AM_RAM_WRITE(cntsteer_background_w) AM_SHARE("share3") @@ -588,7 +588,7 @@ static INTERRUPT_GEN ( sound_interrupt ) device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cntsteer_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM // AM_RANGE(0x1000, 0x1000) AM_WRITE(nmiack_w) AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_data_w) diff --git a/src/mame/drivers/coinmstr.c b/src/mame/drivers/coinmstr.c index 18e8aca9864..16595b3c35a 100644 --- a/src/mame/drivers/coinmstr.c +++ b/src/mame/drivers/coinmstr.c @@ -198,7 +198,7 @@ static READ8_HANDLER( ff_r ) // Common memory map -static ADDRESS_MAP_START( coinmstr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( coinmstr_map, AS_PROGRAM, 8, coinmstr_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(quizmstr_bg_w) AM_BASE_MEMBER(coinmstr_state, m_videoram) @@ -209,7 +209,7 @@ ADDRESS_MAP_END // Different I/O mappping for every game -static ADDRESS_MAP_START( quizmstr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( quizmstr_io_map, AS_IO, 8, coinmstr_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(question_r) @@ -226,7 +226,7 @@ static ADDRESS_MAP_START( quizmstr_io_map, AS_IO, 8 ) AM_RANGE(0xc0, 0xc3) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( trailblz_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( trailblz_io_map, AS_IO, 8, coinmstr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(question_r) AM_RANGE(0x00, 0x03) AM_WRITE(question_w) @@ -240,7 +240,7 @@ static ADDRESS_MAP_START( trailblz_io_map, AS_IO, 8 ) AM_RANGE(0xc1, 0xc3) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( supnudg2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( supnudg2_io_map, AS_IO, 8, coinmstr_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(question_r) @@ -262,7 +262,7 @@ static ADDRESS_MAP_START( supnudg2_io_map, AS_IO, 8 ) AM_RANGE(0xc0, 0xc3) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( pokeroul_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pokeroul_io_map, AS_IO, 8, coinmstr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x41, 0x41) AM_DEVWRITE_MODERN("crtc", mc6845_device, register_w) diff --git a/src/mame/drivers/coinmvga.c b/src/mame/drivers/coinmvga.c index 92231eecdb2..abec683b586 100644 --- a/src/mame/drivers/coinmvga.c +++ b/src/mame/drivers/coinmvga.c @@ -352,7 +352,7 @@ static READ16_HANDLER( test_r ) * Memory Map Information * *************************/ -static ADDRESS_MAP_START( coinmvga_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( coinmvga_map, AS_PROGRAM, 16, coinmvga_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0) //maybe not @@ -373,7 +373,7 @@ static ADDRESS_MAP_START( coinmvga_map, AS_PROGRAM, 16 ) //0x800008 "arrow" w? ADDRESS_MAP_END -static ADDRESS_MAP_START( coinmvga_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( coinmvga_io_map, AS_IO, 8, coinmvga_state ) /* Digital I/O ports (ports 4-B are valid on 16-bit H8/3xx) */ // AM_RANGE(H8_PORT_4, H8_PORT_4) // AM_RANGE(H8_PORT_5, H8_PORT_5) diff --git a/src/mame/drivers/combatsc.c b/src/mame/drivers/combatsc.c index 0afe31a7a96..d69bfad4c1b 100644 --- a/src/mame/drivers/combatsc.c +++ b/src/mame/drivers/combatsc.c @@ -383,7 +383,7 @@ static READ8_DEVICE_HANDLER ( combatsc_ym2203_r ) * *************************************/ -static ADDRESS_MAP_START( combatsc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( combatsc_map, AS_PROGRAM, 8, combatsc_state ) AM_RANGE(0x0000, 0x0007) AM_WRITE(combatsc_pf_control_w) AM_RANGE(0x0020, 0x005f) AM_READWRITE(combatsc_scrollram_r, combatsc_scrollram_w) // AM_RANGE(0x0060, 0x00ff) AM_WRITEONLY /* RAM */ @@ -410,7 +410,7 @@ static ADDRESS_MAP_START( combatsc_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( combatscb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( combatscb_map, AS_PROGRAM, 8, combatsc_state ) AM_RANGE(0x0000, 0x04ff) AM_RAM AM_RANGE(0x0500, 0x0500) AM_WRITE(combatscb_bankselect_w) AM_RANGE(0x0600, 0x06ff) AM_RAM AM_BASE_MEMBER(combatsc_state, m_paletteram) /* palette */ @@ -420,7 +420,7 @@ static ADDRESS_MAP_START( combatscb_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( combatsc_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( combatsc_sound_map, AS_PROGRAM, 8, combatsc_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ @@ -444,7 +444,7 @@ static WRITE8_DEVICE_HANDLER( combatscb_dac_w ) msm5205_vclk_w(device, 0); } -static ADDRESS_MAP_START( combatscb_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( combatscb_sound_map, AS_PROGRAM, 8, combatsc_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) /* YM 2203 */ diff --git a/src/mame/drivers/commando.c b/src/mame/drivers/commando.c index 236a860bc0f..66c3b402bb5 100644 --- a/src/mame/drivers/commando.c +++ b/src/mame/drivers/commando.c @@ -50,7 +50,7 @@ Note : there is an ingame typo bug that doesn't display the bonus life values /* Memory Maps */ -static ADDRESS_MAP_START( commando_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( commando_map, AS_PROGRAM, 8, commando_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P1") @@ -70,7 +70,7 @@ static ADDRESS_MAP_START( commando_map, AS_PROGRAM, 8 ) AM_RANGE(0xff80, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, commando_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/compgolf.c b/src/mame/drivers/compgolf.c index e1fd0f6d957..25e58c782d8 100644 --- a/src/mame/drivers/compgolf.c +++ b/src/mame/drivers/compgolf.c @@ -59,7 +59,7 @@ static WRITE8_HANDLER( compgolf_ctrl_w ) * *************************************/ -static ADDRESS_MAP_START( compgolf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( compgolf_map, AS_PROGRAM, 8, compgolf_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(compgolf_video_w) AM_BASE_MEMBER(compgolf_state, m_videoram) AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(compgolf_back_w) AM_BASE_MEMBER(compgolf_state, m_bg_ram) diff --git a/src/mame/drivers/contra.c b/src/mame/drivers/contra.c index 07a8380465e..b01798f289d 100644 --- a/src/mame/drivers/contra.c +++ b/src/mame/drivers/contra.c @@ -59,7 +59,7 @@ static WRITE8_HANDLER( cpu_sound_command_w ) -static ADDRESS_MAP_START( contra_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( contra_map, AS_PROGRAM, 8, contra_state ) AM_RANGE(0x0000, 0x0007) AM_WRITE(contra_K007121_ctrl_0_w) AM_RANGE(0x0010, 0x0010) AM_READ_PORT("SYSTEM") AM_RANGE(0x0011, 0x0011) AM_READ_PORT("P1") @@ -96,7 +96,7 @@ static ADDRESS_MAP_START( contra_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, contra_state ) AM_RANGE(0x0000, 0x0000) AM_READ(soundlatch_r) AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x4000, 0x4000) AM_WRITENOP /* read triggers irq reset and latch read (in the hardware only). */ diff --git a/src/mame/drivers/coolpool.c b/src/mame/drivers/coolpool.c index 082e6659c5a..a2d8c856566 100644 --- a/src/mame/drivers/coolpool.c +++ b/src/mame/drivers/coolpool.c @@ -653,7 +653,7 @@ static READ16_HANDLER( coolpool_input_r ) * *************************************/ -static ADDRESS_MAP_START( amerdart_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( amerdart_map, AS_PROGRAM, 16, coolpool_state ) AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_BASE_MEMBER(coolpool_state,m_vram_base) AM_RANGE(0x04000000, 0x0400000f) AM_WRITE(amerdart_misc_w) AM_RANGE(0x05000000, 0x0500000f) AM_READWRITE(amerdart_iop_r, amerdart_iop_w) @@ -663,7 +663,7 @@ static ADDRESS_MAP_START( amerdart_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( coolpool_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( coolpool_map, AS_PROGRAM, 16, coolpool_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(coolpool_state,m_vram_base) AM_RANGE(0x01000000, 0x010000ff) AM_DEVREADWRITE8("tlc34076", tlc34076_r, tlc34076_w, 0x00ff) // IMSG176P-40 AM_RANGE(0x02000000, 0x020000ff) AM_READWRITE(coolpool_iop_r, coolpool_iop_w) @@ -675,7 +675,7 @@ static ADDRESS_MAP_START( coolpool_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nballsht_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nballsht_map, AS_PROGRAM, 16, coolpool_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(coolpool_state,m_vram_base) AM_RANGE(0x02000000, 0x020000ff) AM_READWRITE(coolpool_iop_r, coolpool_iop_w) AM_RANGE(0x03000000, 0x0300000f) AM_WRITE(coolpool_misc_w) @@ -694,13 +694,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( amerdart_dsp_pgm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( amerdart_dsp_pgm_map, AS_PROGRAM, 16, coolpool_state ) AM_RANGE(0x000, 0x0fff) AM_ROM ADDRESS_MAP_END /* 000 - 0FF TMS32015 Internal Data RAM (256 words) in Data Address Space */ -static ADDRESS_MAP_START( amerdart_dsp_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( amerdart_dsp_io_map, AS_IO, 16, coolpool_state ) AM_RANGE(0x00, 0x01) AM_WRITE(dsp_romaddr_w) AM_RANGE(0x02, 0x02) AM_WRITE(amerdart_dsp_answer_w) AM_RANGE(0x03, 0x03) AM_DEVWRITE("dac", dsp_dac_w) @@ -713,12 +713,12 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( coolpool_dsp_pgm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( coolpool_dsp_pgm_map, AS_PROGRAM, 16, coolpool_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( coolpool_dsp_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( coolpool_dsp_io_map, AS_IO, 16, coolpool_state ) AM_RANGE(0x00, 0x01) AM_WRITE(dsp_romaddr_w) AM_RANGE(0x02, 0x02) AM_READWRITE(dsp_cmd_r, dsp_answer_w) AM_RANGE(0x03, 0x03) AM_DEVWRITE("dac", dsp_dac_w) diff --git a/src/mame/drivers/coolridr.c b/src/mame/drivers/coolridr.c index 3f30caf7c61..e964f17cb15 100644 --- a/src/mame/drivers/coolridr.c +++ b/src/mame/drivers/coolridr.c @@ -680,7 +680,7 @@ static WRITE32_HANDLER( sysh1_char_w ) } } -static ADDRESS_MAP_START( system_h1_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( system_h1_map, AS_PROGRAM, 32, coolridr_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_SHARE("share1") AM_WRITENOP AM_RANGE(0x01000000, 0x01ffffff) AM_ROM AM_REGION("gfx_data",0x0000000) @@ -698,7 +698,7 @@ static ADDRESS_MAP_START( system_h1_map, AS_PROGRAM, 32 ) AM_RANGE(0x60000000, 0x600003ff) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( coolridr_submap, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( coolridr_submap, AS_PROGRAM, 32, coolridr_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_SHARE("share2") AM_RANGE(0x01000000, 0x0100ffff) AM_RAM //communication RAM @@ -735,7 +735,7 @@ ADDRESS_MAP_END // SH-1 or SH-2 almost certainly copies the program down to here: the ROM containing the program is 32-bit wide and the 68000 is 16-bit // the SCSP is believed to be hardcoded to decode the first 4 MB like this for a master/slave config // (see also Model 3): -static ADDRESS_MAP_START( system_h1_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( system_h1_sound_map, AS_PROGRAM, 16, coolridr_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp1", scsp_r, scsp_w) AM_RANGE(0x800000, 0x80ffff) AM_RAM diff --git a/src/mame/drivers/cop01.c b/src/mame/drivers/cop01.c index b021e9ab594..d36e8c6d017 100644 --- a/src/mame/drivers/cop01.c +++ b/src/mame/drivers/cop01.c @@ -124,7 +124,7 @@ static READ8_HANDLER( cop01_sound_irq_ack_w ) * *************************************/ -static ADDRESS_MAP_START( cop01_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cop01_map, AS_PROGRAM, 8, cop01_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM /* c000-c7ff in cop01 */ AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(cop01_background_w) AM_BASE_MEMBER(cop01_state, m_bgvideoram) @@ -132,7 +132,7 @@ static ADDRESS_MAP_START( cop01_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf3ff) AM_WRITE(cop01_foreground_w) AM_BASE_MEMBER(cop01_state, m_fgvideoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, cop01_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") @@ -144,7 +144,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8 ) AM_RANGE(0x45, 0x45) AM_WRITE(cop01_irq_ack_w) /* ? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mightguy_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mightguy_io_map, AS_IO, 8, cop01_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") @@ -156,13 +156,13 @@ static ADDRESS_MAP_START( mightguy_io_map, AS_IO, 8 ) AM_RANGE(0x45, 0x45) AM_WRITE(cop01_irq_ack_w) /* ? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cop01_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_READ(cop01_sound_irq_ack_w) AM_RANGE(0xc000, 0xc7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, cop01_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_address_data_w) @@ -178,7 +178,7 @@ static READ8_HANDLER( kludge ) return state->m_timer++; } -static ADDRESS_MAP_START( mightguy_audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mightguy_audio_io_map, AS_IO, 8, cop01_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3526_w) AM_RANGE(0x02, 0x02) AM_WRITENOP /* 1412M2? */ diff --git a/src/mame/drivers/copsnrob.c b/src/mame/drivers/copsnrob.c index 93a7359e1a9..44cf215a3e9 100644 --- a/src/mame/drivers/copsnrob.c +++ b/src/mame/drivers/copsnrob.c @@ -101,7 +101,7 @@ static WRITE8_HANDLER( copsnrob_misc2_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, copsnrob_state ) ADDRESS_MAP_GLOBAL_MASK(0x1fff) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0500, 0x0507) AM_WRITE(copsnrob_misc_w) diff --git a/src/mame/drivers/corona.c b/src/mame/drivers/corona.c index 118c95ff5ca..ab34af768be 100644 --- a/src/mame/drivers/corona.c +++ b/src/mame/drivers/corona.c @@ -597,13 +597,13 @@ static WRITE8_DEVICE_HANDLER(ay_port_b_out) RAM data is relocated to B800-B8FF */ -static ADDRESS_MAP_START( winner81_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( winner81_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xb800, 0xb8ff) AM_RAM // copied from 8000 (0x10 bytes, repeated) ADDRESS_MAP_END -static ADDRESS_MAP_START( winner81_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( winner81_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x70, 0x70) AM_WRITE(blitter_x_w) AM_RANGE(0x71, 0x71) AM_WRITE(blitter_unk_w) @@ -625,12 +625,12 @@ static ADDRESS_MAP_START( winner81_cpu_io_map, AS_IO, 8 ) AM_RANGE(0xef, 0xef) AM_WRITE(wc_meters_w) /* meters: coin1 = bit0, coin2 = bit1, coinout = bit2 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( winner81_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( winner81_sound_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( winner81_sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( winner81_sound_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -654,13 +654,13 @@ ADDRESS_MAP_END FE ---> Sound Latch (writes 01, 02 and 03 during attract)... */ -static ADDRESS_MAP_START( winner82_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( winner82_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0x80ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( winner82_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( winner82_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf0, 0xf0) AM_WRITE(blitter_x_w) AM_RANGE(0xf1, 0xf1) AM_WRITE(blitter_y_w) @@ -679,12 +679,12 @@ static ADDRESS_MAP_START( winner82_cpu_io_map, AS_IO, 8 ) AM_RANGE(0xff, 0xff) AM_READ_PORT("DSW2") /* no idea */ ADDRESS_MAP_END -static ADDRESS_MAP_START( winner82_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( winner82_sound_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x13ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( winner82_sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( winner82_sound_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -718,13 +718,13 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( re800_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( re800_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") //801a comm? ADDRESS_MAP_END -static ADDRESS_MAP_START( re800_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( re800_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf0, 0xf0) AM_WRITE(blitter_x_w) AM_RANGE(0xf1, 0xf1) AM_WRITE(blitter_y_w) @@ -740,12 +740,12 @@ static ADDRESS_MAP_START( re800_cpu_io_map, AS_IO, 8 ) AM_RANGE(0xff, 0xff) AM_WRITE(ball_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( re800_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( re800_sound_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( re800_sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( re800_sound_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -778,12 +778,12 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( luckyrlt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( luckyrlt_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( luckyrlt_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( luckyrlt_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf0, 0xf0) AM_WRITE(blitter_x_w) AM_RANGE(0xf1, 0xf1) AM_WRITE(blitter_y_w) @@ -800,12 +800,12 @@ static ADDRESS_MAP_START( luckyrlt_cpu_io_map, AS_IO, 8 ) AM_RANGE(0xfe, 0xfe) AM_WRITE(sound_latch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( luckyrlt_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( luckyrlt_sound_map, AS_PROGRAM, 8, corona_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x13ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( luckyrlt_sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( luckyrlt_sound_cpu_io_map, AS_IO, 8, corona_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(sound_latch_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) diff --git a/src/mame/drivers/cosmic.c b/src/mame/drivers/cosmic.c index 402ede6caeb..f6a18ae791c 100644 --- a/src/mame/drivers/cosmic.c +++ b/src/mame/drivers/cosmic.c @@ -354,7 +354,7 @@ static WRITE8_HANDLER( flip_screen_w ) } -static ADDRESS_MAP_START( panic_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( panic_map, AS_PROGRAM, 8, cosmic_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_SIZE_MEMBER(cosmic_state, m_videoram, m_videoram_size) AM_RANGE(0x6000, 0x601f) AM_WRITEONLY AM_BASE_SIZE_MEMBER(cosmic_state, m_spriteram, m_spriteram_size) @@ -369,7 +369,7 @@ static ADDRESS_MAP_START( panic_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cosmica_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cosmica_map, AS_PROGRAM, 8, cosmic_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_SIZE_MEMBER(cosmic_state, m_videoram, m_videoram_size) AM_RANGE(0x6000, 0x601f) AM_WRITEONLY AM_BASE_SIZE_MEMBER(cosmic_state, m_spriteram, m_spriteram_size) @@ -383,12 +383,12 @@ static ADDRESS_MAP_START( cosmica_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cosmicg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cosmicg_map, AS_PROGRAM, 8, cosmic_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_SIZE_MEMBER(cosmic_state, m_videoram, m_videoram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( cosmicg_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cosmicg_io_map, AS_IO, 8, cosmic_state ) AM_RANGE(0x00, 0x00) AM_READ(cosmicg_port_0_r) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_RANGE(0x00, 0x15) AM_WRITE(cosmicg_output_w) @@ -396,7 +396,7 @@ static ADDRESS_MAP_START( cosmicg_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( magspot_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( magspot_map, AS_PROGRAM, 8, cosmic_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3800, 0x3807) AM_READ(magspot_coinage_dip_r) AM_RANGE(0x4000, 0x401f) AM_WRITEONLY AM_BASE_SIZE_MEMBER(cosmic_state, m_spriteram, m_spriteram_size) diff --git a/src/mame/drivers/cps1.c b/src/mame/drivers/cps1.c index 4e8024e0c9f..b8cefdbc6f8 100644 --- a/src/mame/drivers/cps1.c +++ b/src/mame/drivers/cps1.c @@ -541,7 +541,7 @@ All PRGx go to B-board. Provision for up to 4MB of ROM space, which was never us */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, cps_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */ /* forgottn, willow, cawing, nemo, varth read from 800010. Probably debug input leftover from development */ @@ -582,7 +582,7 @@ SOUNDA15 = pin13 = ( I1 ) /SOUNDCE = pin12 = ! ( !I0 & (!I1 | ( I1 & !I2)) ) */ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, cps_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xd000, 0xd7ff) AM_RAM @@ -594,7 +594,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) AM_RANGE(0xf00a, 0xf00a) AM_READ(soundlatch2_r) /* Sound timer fade */ ADDRESS_MAP_END -static ADDRESS_MAP_START( qsound_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qsound_main_map, AS_PROGRAM, 16, cps_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */ AM_RANGE(0x800018, 0x80001f) AM_READ(cps1_dsw_r) /* System input ports / Dip Switches */ @@ -612,7 +612,7 @@ static ADDRESS_MAP_START( qsound_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -ADDRESS_MAP_START( qsound_sub_map, AS_PROGRAM, 8 ) // used by cps2.c too +ADDRESS_MAP_START( qsound_sub_map, AS_PROGRAM, 8, cps_state ) // used by cps2.c too AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* banked (contains music data) */ AM_RANGE(0xc000, 0xcfff) AM_RAM AM_BASE_MEMBER(cps_state, m_qsound_sharedram1) @@ -3182,7 +3182,7 @@ static MACHINE_CONFIG_DERIVED( wofhfh, cps1_12MHz ) MACHINE_CONFIG_END /* incomplete */ -static ADDRESS_MAP_START( sf2mdt_z80map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sf2mdt_z80map, AS_PROGRAM, 8, cps_state ) AM_RANGE(0x0000, 0xcfff) AM_ROM AM_RANGE(0xd000, 0xd7ff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/cps2.c b/src/mame/drivers/cps2.c index 8502f23d4c0..a3b5431c55c 100644 --- a/src/mame/drivers/cps2.c +++ b/src/mame/drivers/cps2.c @@ -810,7 +810,7 @@ static READ16_HANDLER( joy_or_paddle_r ) * *************************************/ -static ADDRESS_MAP_START( cps2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cps2_map, AS_PROGRAM, 16, cps_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM /* 68000 ROM */ AM_RANGE(0x400000, 0x40000b) AM_RAM AM_BASE_SIZE_MEMBER(cps_state, m_output, m_output_size) /* CPS2 object output */ AM_RANGE(0x618000, 0x619fff) AM_READWRITE(qsound_sharedram1_r, qsound_sharedram1_w) /* Q RAM */ @@ -841,7 +841,7 @@ static ADDRESS_MAP_START( cps2_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dead_cps2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dead_cps2_map, AS_PROGRAM, 16, cps_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM /* 68000 ROM */ AM_RANGE(0x400000, 0x40000b) AM_RAM AM_BASE_SIZE_MEMBER(cps_state, m_output, m_output_size) /* CPS2 object output */ AM_RANGE(0x618000, 0x619fff) AM_READWRITE(qsound_sharedram1_r, qsound_sharedram1_w) /* Q RAM */ diff --git a/src/mame/drivers/cps3.c b/src/mame/drivers/cps3.c index e01fbce3c9b..92c6c52521a 100644 --- a/src/mame/drivers/cps3.c +++ b/src/mame/drivers/cps3.c @@ -2161,7 +2161,7 @@ static WRITE32_HANDLER( cps3_colourram_w ) /* there are more unknown writes, but you get the idea */ -static ADDRESS_MAP_START( cps3_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cps3_map, AS_PROGRAM, 32, cps3_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_REGION("user1", 0) // Bios ROM AM_RANGE(0x02000000, 0x0207ffff) AM_RAM AM_BASE_MEMBER(cps3_state, m_mainram) // Main RAM diff --git a/src/mame/drivers/crbaloon.c b/src/mame/drivers/crbaloon.c index 156bd0b7f38..f21e1b98355 100644 --- a/src/mame/drivers/crbaloon.c +++ b/src/mame/drivers/crbaloon.c @@ -197,7 +197,7 @@ static WRITE8_HANDLER( port_sound_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, crbaloon_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 is not decoded */ AM_RANGE(0x0000, 0x3fff) AM_ROM /* not fully populated */ AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM @@ -214,7 +214,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, crbaloon_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("DSW0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x0c) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/crgolf.c b/src/mame/drivers/crgolf.c index 9a45c082a81..5f180143555 100644 --- a/src/mame/drivers/crgolf.c +++ b/src/mame/drivers/crgolf.c @@ -252,7 +252,7 @@ static WRITE8_DEVICE_HANDLER( crgolfhi_sample_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, crgolf_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1") @@ -274,7 +274,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, crgolf_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("aysnd", ay8910_address_data_w) diff --git a/src/mame/drivers/crimfght.c b/src/mame/drivers/crimfght.c index 1aaf7e4d7bd..1609011b7a7 100644 --- a/src/mame/drivers/crimfght.c +++ b/src/mame/drivers/crimfght.c @@ -80,7 +80,7 @@ static WRITE8_HANDLER( k052109_051960_w ) /********************************************/ -static ADDRESS_MAP_START( crimfght_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( crimfght_map, AS_PROGRAM, 8, crimfght_state ) AM_RANGE(0x0000, 0x03ff) AM_RAMBANK("bank1") /* banked RAM */ AM_RANGE(0x0400, 0x1fff) AM_RAM /* RAM */ AM_RANGE(0x3f80, 0x3f80) AM_READ_PORT("SYSTEM") @@ -98,7 +98,7 @@ static ADDRESS_MAP_START( crimfght_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( crimfght_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( crimfght_sound_map, AS_PROGRAM, 8, crimfght_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM 821l01.h4 */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) /* YM2151 */ diff --git a/src/mame/drivers/crospang.c b/src/mame/drivers/crospang.c index c0c3917917f..de44e478e81 100644 --- a/src/mame/drivers/crospang.c +++ b/src/mame/drivers/crospang.c @@ -48,7 +48,7 @@ static WRITE16_HANDLER ( crospang_soundlatch_w ) /* main cpu */ -static ADDRESS_MAP_START( crospang_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( crospang_map, AS_PROGRAM, 16, crospang_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_WRITENOP // writes to rom quite often AM_RANGE(0x100000, 0x100001) AM_WRITENOP AM_RANGE(0x100002, 0x100003) AM_WRITE(crospang_fg_scrolly_w) @@ -67,7 +67,7 @@ static ADDRESS_MAP_START( crospang_map, AS_PROGRAM, 16 ) AM_RANGE(0x320000, 0x32ffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( bestri_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bestri_map, AS_PROGRAM, 16, crospang_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_WRITENOP // writes to rom quite often AM_RANGE(0x100004, 0x100005) AM_WRITE(bestri_fg_scrollx_w) @@ -91,12 +91,12 @@ ADDRESS_MAP_END /* sound cpu */ -static ADDRESS_MAP_START( crospang_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( crospang_sound_map, AS_PROGRAM, 8, crospang_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( crospang_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( crospang_sound_io_map, AS_IO, 8, crospang_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) AM_RANGE(0x02, 0x02) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/crshrace.c b/src/mame/drivers/crshrace.c index 0e199dc7d05..cc02a633ef0 100644 --- a/src/mame/drivers/crshrace.c +++ b/src/mame/drivers/crshrace.c @@ -185,7 +185,7 @@ static WRITE8_HANDLER( pending_command_clear_w ) -static ADDRESS_MAP_START( crshrace_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( crshrace_map, AS_PROGRAM, 16, crshrace_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x300000, 0x3fffff) AM_READ(extrarom1_r) AM_RANGE(0x400000, 0x4fffff) AM_READ(extrarom2_r) @@ -208,13 +208,13 @@ static ADDRESS_MAP_START( crshrace_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff044, 0xfff047) AM_WRITEONLY // ??? moves during race ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, crshrace_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, crshrace_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(crshrace_sh_bankswitch_w) AM_RANGE(0x04, 0x04) AM_READWRITE(soundlatch_r, pending_command_clear_w) diff --git a/src/mame/drivers/crystal.c b/src/mame/drivers/crystal.c index 50be45a3128..f4f8a08d5ed 100644 --- a/src/mame/drivers/crystal.c +++ b/src/mame/drivers/crystal.c @@ -466,7 +466,7 @@ static WRITE32_HANDLER( DMA1_w ) } -static ADDRESS_MAP_START( crystal_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( crystal_mem, AS_PROGRAM, 32, crystal_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_WRITENOP AM_RANGE(0x01200000, 0x0120000f) AM_READ(Input_r) diff --git a/src/mame/drivers/cshooter.c b/src/mame/drivers/cshooter.c index 3b439cdcac9..a52a78d8cbf 100644 --- a/src/mame/drivers/cshooter.c +++ b/src/mame/drivers/cshooter.c @@ -252,7 +252,7 @@ static READ8_HANDLER(pal_r) return space->machine().generic.paletteram.u8[offset]; } -static ADDRESS_MAP_START( cshooter_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cshooter_map, AS_PROGRAM, 8, cshooter_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xafff) AM_READ_BANK("bank1") AM_WRITEONLY AM_RANGE(0xb000, 0xb0ff) AM_READONLY // sound related ? @@ -282,7 +282,7 @@ static WRITE8_HANDLER( seibu_sound_comms_w ) seibu_main_word_w(space,offset,data,0x00ff); } -static ADDRESS_MAP_START( airraid_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( airraid_map, AS_PROGRAM, 8, cshooter_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_WRITENOP // rld result write-back // AM_RANGE(0xb000, 0xb0ff) AM_RAM @@ -308,7 +308,7 @@ ADDRESS_MAP_END /* Sound CPU */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cshooter_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xc000, 0xc001) AM_WRITENOP // AM_DEVWRITE("ym1", ym2203_w) ? AM_RANGE(0xc800, 0xc801) AM_WRITENOP // AM_DEVWRITE("ym2", ym2203_w) ? diff --git a/src/mame/drivers/csplayh5.c b/src/mame/drivers/csplayh5.c index 49abd553ca0..71de0570a83 100644 --- a/src/mame/drivers/csplayh5.c +++ b/src/mame/drivers/csplayh5.c @@ -87,7 +87,7 @@ static WRITE16_HANDLER( csplayh5_sound_w ) } -static ADDRESS_MAP_START( csplayh5_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( csplayh5_map, AS_PROGRAM, 16, csplayh5_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_READ_PORT("DSW") AM_WRITE(csplayh5_sound_w) @@ -109,7 +109,7 @@ static READ16_HANDLER( test_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( csplayh5_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( csplayh5_sub_map, AS_PROGRAM, 16, csplayh5_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x04002a, 0x04002b) AM_READ(test_r) @@ -120,7 +120,7 @@ static ADDRESS_MAP_START( csplayh5_sub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( csplayh5_sub_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( csplayh5_sub_io_map, AS_IO, 16, csplayh5_state ) ADDRESS_MAP_END #endif @@ -342,13 +342,13 @@ static WRITE8_HANDLER( tmpz84c011_0_dir_pe_w ) } -static ADDRESS_MAP_START( csplayh5_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( csplayh5_sound_map, AS_PROGRAM, 8, csplayh5_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( csplayh5_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( csplayh5_sound_io_map, AS_IO, 8, csplayh5_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) AM_RANGE(0x50, 0x50) AM_READWRITE(tmpz84c011_0_pa_r, tmpz84c011_0_pa_w) diff --git a/src/mame/drivers/cubeqst.c b/src/mame/drivers/cubeqst.c index 75bc636971b..dd687ee9ba9 100644 --- a/src/mame/drivers/cubeqst.c +++ b/src/mame/drivers/cubeqst.c @@ -402,7 +402,7 @@ static WRITE16_HANDLER( write_sndram ) cubeqcpu_sndram_w(space->machine().device("sound_cpu"), offset, data, mem_mask); } -static ADDRESS_MAP_START( m68k_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( m68k_program_map, AS_PROGRAM, 16, cubeqst_state ) ADDRESS_MAP_GLOBAL_MASK(0x03ffff) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x020000, 0x027fff) AM_READWRITE(read_rotram, write_rotram) @@ -419,11 +419,11 @@ ADDRESS_MAP_END /* For the bit-sliced CPUs */ -static ADDRESS_MAP_START( rotate_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( rotate_map, AS_PROGRAM, 64, cubeqst_state ) AM_RANGE(0x000, 0x1ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( line_sound_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( line_sound_map, AS_PROGRAM, 64, cubeqst_state ) AM_RANGE(0x000, 0x0ff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/cultures.c b/src/mame/drivers/cultures.c index 6dd5533c994..6636181a43b 100644 --- a/src/mame/drivers/cultures.c +++ b/src/mame/drivers/cultures.c @@ -180,7 +180,7 @@ static WRITE8_HANDLER( bg_bank_w ) coin_counter_w(space->machine(), 0, data & 0x10); } -static ADDRESS_MAP_START( cultures_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cultures_map, AS_PROGRAM, 8, cultures_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0xbfff) AM_RAM_WRITE(bg0_videoram_w) AM_BASE_MEMBER(cultures_state, m_bg0_videoram) @@ -188,7 +188,7 @@ static ADDRESS_MAP_START( cultures_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cultures_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cultures_io_map, AS_IO, 8, cultures_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_RAM AM_RANGE(0x10, 0x13) AM_RAM diff --git a/src/mame/drivers/cvs.c b/src/mame/drivers/cvs.c index 490b217dc54..f75004a896e 100644 --- a/src/mame/drivers/cvs.c +++ b/src/mame/drivers/cvs.c @@ -487,7 +487,7 @@ static WRITE8_HANDLER( audio_command_w ) * *************************************/ -static ADDRESS_MAP_START( cvs_main_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cvs_main_cpu_map, AS_PROGRAM, 8, cvs_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x13ff) AM_ROM AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_READWRITE(cvs_bullet_ram_or_palette_r, cvs_bullet_ram_or_palette_w) AM_BASE_MEMBER(cvs_state, m_bullet_ram) @@ -502,7 +502,7 @@ static ADDRESS_MAP_START( cvs_main_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cvs_main_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cvs_main_cpu_io_map, AS_IO, 8, cvs_state ) AM_RANGE(0x00, 0xff) AM_READWRITE(cvs_input_r, cvs_scroll_w) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(cvs_collision_clear, cvs_video_fx_w) AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(cvs_collision_r, audio_command_w) @@ -518,7 +518,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( cvs_dac_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cvs_dac_cpu_map, AS_PROGRAM, 8, cvs_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x107f) AM_RAM @@ -529,7 +529,7 @@ static ADDRESS_MAP_START( cvs_dac_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cvs_dac_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cvs_dac_cpu_io_map, AS_IO, 8, cvs_state ) /* doesn't look like it is used at all */ //AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ(cvs_393hz_clock_r) ADDRESS_MAP_END @@ -542,7 +542,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( cvs_speech_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cvs_speech_cpu_map, AS_PROGRAM, 8, cvs_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_RANGE(0x1d00, 0x1d00) AM_WRITE(cvs_speech_rom_address_lo_w) @@ -553,7 +553,7 @@ static ADDRESS_MAP_START( cvs_speech_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cvs_speech_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cvs_speech_cpu_io_map, AS_IO, 8, cvs_state ) /* romclk is much more probable, 393 Hz results in timing issues */ // AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ(cvs_393hz_clock_r) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_DEVREAD("tms", tms_clock_r) diff --git a/src/mame/drivers/cyberbal.c b/src/mame/drivers/cyberbal.c index 4064205c0cc..c2cde98659a 100644 --- a/src/mame/drivers/cyberbal.c +++ b/src/mame/drivers/cyberbal.c @@ -148,7 +148,7 @@ static WRITE16_HANDLER( p2_reset_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, cyberbal_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0xfc0000, 0xfc0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") AM_RANGE(0xfc8000, 0xfcffff) AM_READ(atarigen_sound_upper_r) @@ -181,7 +181,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16, cyberbal_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0xfc0000, 0xfdffff) AM_WRITE(atarigen_video_int_ack_w) AM_RANGE(0xfe0000, 0xfe0fff) AM_READ(special_port0_r) @@ -208,7 +208,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cyberbal_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x2800, 0x2801) AM_WRITE(cyberbal_sound_68k_6502_w) @@ -231,7 +231,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_68k_map, AS_PROGRAM, 16, cyberbal_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0xff8000, 0xff87ff) AM_READ(cyberbal_sound_68k_r) AM_RANGE(0xff8800, 0xff8fff) AM_WRITE(cyberbal_sound_68k_w) @@ -248,7 +248,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( cyberbal2p_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cyberbal2p_map, AS_PROGRAM, 16, cyberbal_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0xfc0000, 0xfc0003) AM_READ_PORT("IN0") AM_RANGE(0xfc2000, 0xfc2003) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/cybertnk.c b/src/mame/drivers/cybertnk.c index 0b25a0eba26..e383c8fa222 100644 --- a/src/mame/drivers/cybertnk.c +++ b/src/mame/drivers/cybertnk.c @@ -659,7 +659,7 @@ static READ8_HANDLER( soundport_r ) return state->m_io_ram[0] & 0xff; } -static ADDRESS_MAP_START( master_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_mem, AS_PROGRAM, 16, cybertnk_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x087fff) AM_RAM /*Work RAM*/ AM_RANGE(0x0a0000, 0x0a0fff) AM_RAM AM_BASE_MEMBER(cybertnk_state, m_spr_ram) // non-tile based sprite ram @@ -671,7 +671,7 @@ static ADDRESS_MAP_START( master_mem, AS_PROGRAM, 16 ) AM_RANGE(0x110000, 0x1101ff) AM_READWRITE(io_r,io_w) AM_BASE_MEMBER(cybertnk_state, m_io_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_mem, AS_PROGRAM, 16, cybertnk_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM /*Work RAM*/ AM_RANGE(0x0c0000, 0x0c0fff) AM_RAM AM_BASE_MEMBER(cybertnk_state, m_roadram) @@ -679,7 +679,7 @@ static ADDRESS_MAP_START( slave_mem, AS_PROGRAM, 16 ) AM_RANGE(0x140000, 0x140003) AM_NOP /*Watchdog? Written during loops and interrupts*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8, cybertnk_state ) AM_RANGE(0x0000, 0x7fff ) AM_ROM AM_RANGE(0x8000, 0x9fff ) AM_RAM AM_RANGE(0xa001, 0xa001 ) AM_READ(soundport_r) diff --git a/src/mame/drivers/cyclemb.c b/src/mame/drivers/cyclemb.c index 790d0d34527..fc0626e8e47 100644 --- a/src/mame/drivers/cyclemb.c +++ b/src/mame/drivers/cyclemb.c @@ -249,7 +249,7 @@ static WRITE8_HANDLER( cyclemb_flip_w ) // a bunch of other things are setted here } -static ADDRESS_MAP_START( cyclemb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cyclemb_map, AS_PROGRAM, 8, cyclemb_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_ROMBANK("bank1") AM_RANGE(0x9000, 0x97ff) AM_RAM AM_BASE_MEMBER(cyclemb_state, m_vram) @@ -260,20 +260,20 @@ static ADDRESS_MAP_START( cyclemb_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xbfff) AM_RAM //WRAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cyclemb_io, AS_IO, 8 ) +static ADDRESS_MAP_START( cyclemb_io, AS_IO, 8, cyclemb_state ) // ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xc000, 0xc000) AM_WRITE(cyclemb_bankswitch_w) AM_RANGE(0xc09e, 0xc09f) AM_READWRITE(cyclemb_8741_0_r, cyclemb_8741_0_w) AM_RANGE(0xc0bf, 0xc0bf) AM_WRITE(cyclemb_flip_w) //flip screen ADDRESS_MAP_END -static ADDRESS_MAP_START( cyclemb_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cyclemb_sound_map, AS_PROGRAM, 8, cyclemb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cyclemb_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( cyclemb_sound_io, AS_IO, 8, cyclemb_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_address_data_w) AM_RANGE(0x40, 0x40) AM_READ(soundlatch_r) AM_WRITE(soundlatch2_w) diff --git a/src/mame/drivers/d9final.c b/src/mame/drivers/d9final.c index 83800e31227..dd584a80744 100644 --- a/src/mame/drivers/d9final.c +++ b/src/mame/drivers/d9final.c @@ -103,7 +103,7 @@ static READ8_HANDLER( prot_latch_r ) } -static ADDRESS_MAP_START( d9final_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( d9final_map, AS_PROGRAM, 8, d9final_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -115,7 +115,7 @@ static ADDRESS_MAP_START( d9final_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_READ(prot_latch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( d9final_io, AS_IO, 8 ) +static ADDRESS_MAP_START( d9final_io, AS_IO, 8, d9final_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x00) AM_WRITENOP //bit 0: irq enable? screen enable? AM_RANGE(0x00, 0x00) AM_READ_PORT("DSWA") diff --git a/src/mame/drivers/dacholer.c b/src/mame/drivers/dacholer.c index 7178c84447f..f1efc68f811 100644 --- a/src/mame/drivers/dacholer.c +++ b/src/mame/drivers/dacholer.c @@ -207,7 +207,7 @@ static WRITE8_HANDLER( main_irq_ack_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dacholer_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8800, 0x97ff) AM_RAM AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x400) AM_RAM_WRITE(background_w) AM_BASE_MEMBER(dacholer_state, m_bgvideoram) @@ -215,13 +215,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe0ff) AM_RAM AM_BASE_SIZE_MEMBER(dacholer_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( itaten_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( itaten_main_map, AS_PROGRAM, 8, dacholer_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xb7ff) AM_RAM AM_IMPORT_FROM( main_map ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, dacholer_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") @@ -238,13 +238,13 @@ static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8, dacholer_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0xd000, 0xe7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( itaten_snd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( itaten_snd_map, AS_PROGRAM, 8, dacholer_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM ADDRESS_MAP_END @@ -281,7 +281,7 @@ static WRITE8_HANDLER( music_irq_w ) state->m_music_interrupt_enable = data; } -static ADDRESS_MAP_START( snd_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( snd_io_map, AS_IO, 8, dacholer_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch_r, soundlatch_clear_w ) AM_RANGE(0x04, 0x04) AM_WRITE(music_irq_w) @@ -293,7 +293,7 @@ static ADDRESS_MAP_START( snd_io_map, AS_IO, 8 ) AM_RANGE(0x8e, 0x8f) AM_DEVWRITE("ay3", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( itaten_snd_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( itaten_snd_io_map, AS_IO, 8, dacholer_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch_r, soundlatch_clear_w ) AM_RANGE(0x86, 0x87) AM_DEVWRITE("ay1", ay8910_data_address_w) diff --git a/src/mame/drivers/dai3wksi.c b/src/mame/drivers/dai3wksi.c index 7ee0ed3b116..c8b6158684b 100644 --- a/src/mame/drivers/dai3wksi.c +++ b/src/mame/drivers/dai3wksi.c @@ -502,7 +502,7 @@ static const sn76477_interface dai3wksi_sn76477_ic81 = * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dai3wksi_state ) AM_RANGE(0x0000, 0x1bff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x2400, 0x24ff) AM_MIRROR(0x100) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/dambustr.c b/src/mame/drivers/dambustr.c index c5e1167d91c..711edc12f55 100644 --- a/src/mame/drivers/dambustr.c +++ b/src/mame/drivers/dambustr.c @@ -76,7 +76,7 @@ static WRITE8_DEVICE_HANDLER( dambustr_noise_enable_w ) } -static ADDRESS_MAP_START( dambustr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dambustr_map, AS_PROGRAM, 8, dambustr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_WRITE(dambustr_bg_color_w) diff --git a/src/mame/drivers/darius.c b/src/mame/drivers/darius.c index a0cba7fe0f6..169a3901b61 100644 --- a/src/mame/drivers/darius.c +++ b/src/mame/drivers/darius.c @@ -242,7 +242,7 @@ logerror("CPU #0 PC %06x: warning - write unmapped ioc offset %06x with %04x\n", MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( darius_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( darius_map, AS_PROGRAM, 16, darius_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main RAM */ AM_RANGE(0x0a0000, 0x0a0001) AM_WRITE(cpua_ctrl_w) @@ -259,7 +259,7 @@ static ADDRESS_MAP_START( darius_map, AS_PROGRAM, 16 ) AM_RANGE(0xe10000, 0xe10fff) AM_RAM /* ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( darius_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( darius_cpub_map, AS_PROGRAM, 16, darius_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x04ffff) AM_RAM /* local RAM */ AM_RANGE(0xc00000, 0xc0007f) AM_WRITE(darius_ioc_w) /* only writes $c00050 (?) */ @@ -490,7 +490,7 @@ static WRITE8_DEVICE_HANDLER( darius_write_portB1 ) Sound memory structures / ADPCM *****************************************************/ -static ADDRESS_MAP_START( darius_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( darius_sound_map, AS_PROGRAM, 8, darius_state ) AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) @@ -507,7 +507,7 @@ static ADDRESS_MAP_START( darius_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xdc00, 0xdc00) AM_WRITE(sound_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( darius_sound2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( darius_sound2_map, AS_PROGRAM, 8, darius_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP /* yes, no RAM */ ADDRESS_MAP_END @@ -566,7 +566,7 @@ static WRITE8_DEVICE_HANDLER( adpcm_data_w ) msm5205_reset_w(device, !(data & 0x20)); /* my best guess, but it could be output enable as well */ } -static ADDRESS_MAP_START( darius_sound2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( darius_sound2_io_map, AS_IO, 8, darius_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(adpcm_command_read, adpcm_nmi_disable) AM_RANGE(0x01, 0x01) AM_WRITE(adpcm_nmi_enable) diff --git a/src/mame/drivers/darkhors.c b/src/mame/drivers/darkhors.c index 81a506093da..5be90aeea62 100644 --- a/src/mame/drivers/darkhors.c +++ b/src/mame/drivers/darkhors.c @@ -310,7 +310,7 @@ static WRITE32_HANDLER( darkhors_unk1_w ) // if (ACCESSING_BITS_16_31) popmessage("%04X",data >> 16); } -static ADDRESS_MAP_START( darkhors_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( darkhors_map, AS_PROGRAM, 32, darkhors_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x400000, 0x41ffff) AM_RAM @@ -346,7 +346,7 @@ static WRITE32_HANDLER( jclub2_tileram_w ) } -static ADDRESS_MAP_START( jclub2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( jclub2_map, AS_PROGRAM, 32, darkhors_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x400000, 0x41ffff) AM_RAM @@ -373,7 +373,7 @@ static ADDRESS_MAP_START( jclub2_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jclub2o_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( jclub2o_map, AS_PROGRAM, 32, darkhors_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x400000, 0x41ffff) AM_RAM @@ -725,7 +725,7 @@ static MACHINE_CONFIG_START( jclub2, darkhors_state ) MCFG_VIDEO_START(jclub2) MACHINE_CONFIG_END -static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, darkhors_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xe900, 0xe9ff) AM_DEVREADWRITE("stsnd", st0016_snd_r, st0016_snd_w) @@ -733,7 +733,7 @@ static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( st0016_io, AS_IO, 8 ) +static ADDRESS_MAP_START( st0016_io, AS_IO, 8, darkhors_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) //AM_RANGE(0xc0, 0xc0) AM_READ(cmd1_r) diff --git a/src/mame/drivers/darkmist.c b/src/mame/drivers/darkmist.c index 706f64b6db3..76cd8ba4b1b 100644 --- a/src/mame/drivers/darkmist.c +++ b/src/mame/drivers/darkmist.c @@ -36,7 +36,7 @@ static WRITE8_HANDLER(darkmist_hw_w) memory_set_bankptr(space->machine(), "bank1",&space->machine().region("maincpu")->base()[0x010000+((data&0x80)?0x4000:0)]); } -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, darkmist_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc801, 0xc801) AM_READ_PORT("P1") diff --git a/src/mame/drivers/darkseal.c b/src/mame/drivers/darkseal.c index ee2d560b1d0..3eb5b2a3480 100644 --- a/src/mame/drivers/darkseal.c +++ b/src/mame/drivers/darkseal.c @@ -60,7 +60,7 @@ static READ16_HANDLER( darkseal_control_r ) /******************************************************************************/ -static ADDRESS_MAP_START( darkseal_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( darkseal_map, AS_PROGRAM, 16, darkseal_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_BASE_MEMBER(darkseal_state, m_ram) AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram") @@ -83,7 +83,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, darkseal_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/dassault.c b/src/mame/drivers/dassault.c index 1f407ea80c9..75ec726e091 100644 --- a/src/mame/drivers/dassault.c +++ b/src/mame/drivers/dassault.c @@ -209,7 +209,7 @@ static READ16_HANDLER( shared_ram_r ) /**********************************************************************************/ -static ADDRESS_MAP_START( dassault_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dassault_map, AS_PROGRAM, 16, dassault_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM_DEVWRITE("deco_common", decocomn_nonbuffered_palette_w) AM_BASE_GENERIC(paletteram) @@ -238,7 +238,7 @@ static ADDRESS_MAP_START( dassault_map, AS_PROGRAM, 16 ) AM_RANGE(0x3fe000, 0x3fefff) AM_READWRITE(shared_ram_r, shared_ram_w) AM_BASE_MEMBER(dassault_state, m_shared_ram) /* Shared ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dassault_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dassault_sub_map, AS_PROGRAM, 16, dassault_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVWRITE_MODERN("spriteram", buffered_spriteram16_device, write) @@ -253,7 +253,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dassault_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/dblewing.c b/src/mame/drivers/dblewing.c index dd95d3ec6fb..e4e94286221 100644 --- a/src/mame/drivers/dblewing.c +++ b/src/mame/drivers/dblewing.c @@ -304,7 +304,7 @@ static WRITE16_HANDLER( dblewing_prot_w ) if ((offset * 2) == 0x788) { state->m_788_data = data; return; } } -static ADDRESS_MAP_START( dblewing_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dblewing_map, AS_PROGRAM, 16, dblewing_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("tilegen1", deco16ic_pf1_data_r, deco16ic_pf1_data_w) @@ -342,7 +342,7 @@ static READ8_HANDLER(irq_latch_r) return state->m_sound_irq; } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dblewing_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_status_port_r,ym2151_w) @@ -352,7 +352,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io, AS_IO, 8, dblewing_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("audio_data", 0) ADDRESS_MAP_END diff --git a/src/mame/drivers/dbz.c b/src/mame/drivers/dbz.c index cf049bb9341..ee347858ab0 100644 --- a/src/mame/drivers/dbz.c +++ b/src/mame/drivers/dbz.c @@ -115,7 +115,7 @@ static void dbz_sound_irq( device_t *device, int irq ) device_set_input_line(state->m_audiocpu, 0, (irq) ? ASSERT_LINE : CLEAR_LINE); } -static ADDRESS_MAP_START( dbz_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dbz_map, AS_PROGRAM, 16, dbz_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x480000, 0x48ffff) AM_RAM AM_RANGE(0x490000, 0x491fff) AM_DEVREADWRITE("k056832", k056832_ram_word_r, k056832_ram_word_w) // '157 RAM is mirrored twice @@ -152,7 +152,7 @@ ADDRESS_MAP_END /* dbz sound */ /* IRQ: from YM2151. NMI: from 68000. Port 0: write to ack NMI */ -static ADDRESS_MAP_START( dbz_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dbz_sound_map, AS_PROGRAM, 8, dbz_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -160,7 +160,7 @@ static ADDRESS_MAP_START( dbz_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe001) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( dbz_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dbz_sound_io_map, AS_IO, 8, dbz_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP ADDRESS_MAP_END diff --git a/src/mame/drivers/dcheese.c b/src/mame/drivers/dcheese.c index 3b6ff422097..8f8cb0ebae3 100644 --- a/src/mame/drivers/dcheese.c +++ b/src/mame/drivers/dcheese.c @@ -214,7 +214,7 @@ static WRITE8_HANDLER( bsmt_data_w ) * *************************************/ -static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 16, dcheese_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM @@ -236,7 +236,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8, dcheese_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x07ff) AM_READWRITE(sound_status_r, sound_control_w) AM_RANGE(0x0800, 0x0fff) AM_READ(sound_command_r) diff --git a/src/mame/drivers/dcon.c b/src/mame/drivers/dcon.c index b851a824cac..daf9c575707 100644 --- a/src/mame/drivers/dcon.c +++ b/src/mame/drivers/dcon.c @@ -20,7 +20,7 @@ /***************************************************************************/ -static ADDRESS_MAP_START( dcon_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dcon_map, AS_PROGRAM, 16, dcon_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0x80000, 0x8bfff) AM_RAM diff --git a/src/mame/drivers/dday.c b/src/mame/drivers/dday.c index 95a9a0da262..682d0142486 100644 --- a/src/mame/drivers/dday.c +++ b/src/mame/drivers/dday.c @@ -55,7 +55,7 @@ write: #include "includes/dday.h" -static ADDRESS_MAP_START( dday_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dday_map, AS_PROGRAM, 8, dday_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4000) AM_WRITE(dday_sl_control_w) AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(dday_textvideoram_w) AM_BASE_MEMBER(dday_state, m_textvideoram) diff --git a/src/mame/drivers/ddayjlc.c b/src/mame/drivers/ddayjlc.c index 20551fe0f0c..249cd2e71fe 100644 --- a/src/mame/drivers/ddayjlc.c +++ b/src/mame/drivers/ddayjlc.c @@ -240,7 +240,7 @@ static WRITE8_HANDLER( i8257_LMSR_w ) } } -static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, ddayjlc_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_BASE_MEMBER(ddayjlc_state, m_mainram) AM_RANGE(0x9000, 0x93ff) AM_RAM AM_BASE_MEMBER(ddayjlc_state, m_spriteram) @@ -266,7 +266,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, ddayjlc_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_data_w) diff --git a/src/mame/drivers/ddealer.c b/src/mame/drivers/ddealer.c index b3c77266f44..987402cc1e2 100644 --- a/src/mame/drivers/ddealer.c +++ b/src/mame/drivers/ddealer.c @@ -452,7 +452,7 @@ static WRITE16_HANDLER( ddealer_mcu_shared_w ) } } -static ADDRESS_MAP_START( ddealer, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ddealer, AS_PROGRAM, 16, ddealer_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/ddenlovr.c b/src/mame/drivers/ddenlovr.c index 37f949c8dc1..b956413fe28 100644 --- a/src/mame/drivers/ddenlovr.c +++ b/src/mame/drivers/ddenlovr.c @@ -1722,7 +1722,7 @@ static WRITE16_HANDLER( quiz365_protection_w ) COMBINE_DATA(state->m_quiz365_protection + offset); } -static ADDRESS_MAP_START( quiz365_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( quiz365_map, AS_PROGRAM, 16, dynax_state ) AM_RANGE(0x000000, 0x17ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x2003ff) AM_WRITE(ddenlovr_palette_w) // Palette @@ -1785,7 +1785,7 @@ static CUSTOM_INPUT( ddenlovj_blitter_r ) return state->m_ddenlovr_blitter_irq_flag ? 0x03 : 0x00; // bit 4 = 1 -> blitter busy } -static ADDRESS_MAP_START( ddenlovj_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ddenlovj_map, AS_PROGRAM, 16, dynax_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x2003ff) AM_WRITE(ddenlovr_palette_w) // Palette @@ -1844,7 +1844,7 @@ static WRITE16_HANDLER( ddenlovrk_protection2_w ) state->m_oki->set_bank_base(((*state->m_protection2) & 0x7) * 0x40000); } -static ADDRESS_MAP_START( ddenlovrk_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ddenlovrk_map, AS_PROGRAM, 16, dynax_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x100001) AM_RAM_READ(ddenlovrk_protection1_r) AM_BASE_MEMBER(dynax_state, m_protection1) @@ -1883,7 +1883,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( ddenlovr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ddenlovr_map, AS_PROGRAM, 16, dynax_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x300000, 0x300001) AM_DEVWRITE("oki", ddenlovr_oki_bank_w) @@ -1972,7 +1972,7 @@ static WRITE16_DEVICE_HANDLER( nettoqc_oki_bank_w ) } } -static ADDRESS_MAP_START( nettoqc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nettoqc_map, AS_PROGRAM, 16, dynax_state ) AM_RANGE(0x000000, 0x17ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x2003ff) AM_WRITE(ddenlovr_palette_w) // Palette @@ -2037,14 +2037,14 @@ static WRITE8_HANDLER( rongrong_select_w ) } -static ADDRESS_MAP_START( quizchq_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( quizchq_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_WRITE(rongrong_palette_w) // ROM (Banked) ADDRESS_MAP_END -static ADDRESS_MAP_START( quizchq_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( quizchq_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(rongrong_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -2074,14 +2074,14 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( rongrong_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rongrong_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_WRITE(rongrong_palette_w) // ROM (Banked) ADDRESS_MAP_END -static ADDRESS_MAP_START( rongrong_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( rongrong_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(rongrong_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -2186,7 +2186,7 @@ static READ8_HANDLER( mmpanic_link_r ) { return 0xff; } /* Main CPU */ -static ADDRESS_MAP_START( mmpanic_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mmpanic_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0051, 0x0051) AM_READ(magic_r) // ? AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM @@ -2194,7 +2194,7 @@ static ADDRESS_MAP_START( mmpanic_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_WRITE(rongrong_palette_w) // ROM (Banked) ADDRESS_MAP_END -static ADDRESS_MAP_START( mmpanic_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mmpanic_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE_MODERN("rtc", msm6242_device, read, write) @@ -2240,13 +2240,13 @@ ADDRESS_MAP_END /* Sound CPU */ -static ADDRESS_MAP_START( mmpanic_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mmpanic_sound_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x66ff) AM_RAM // RAM AM_RANGE(0x8000, 0xffff) AM_ROM // ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mmpanic_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mmpanic_sound_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x02, 0x02) AM_READNOP // read just before port 00 @@ -2265,7 +2265,7 @@ ADDRESS_MAP_END /* Main CPU */ -static ADDRESS_MAP_START( funkyfig_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( funkyfig_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) @@ -2356,7 +2356,7 @@ static WRITE8_HANDLER( funkyfig_lockout_w ) } } -static ADDRESS_MAP_START( funkyfig_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( funkyfig_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) // Sound AM_RANGE(0x01, 0x01) AM_WRITE(mmpanic_leds_w) // Leds @@ -2389,7 +2389,7 @@ ADDRESS_MAP_END /* Sound CPU */ -static ADDRESS_MAP_START( funkyfig_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( funkyfig_sound_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x02) AM_READ(soundlatch_r) AM_RANGE(0x04, 0x04) AM_READNOP // read only once at the start @@ -2409,7 +2409,7 @@ static WRITE8_HANDLER( hanakanz_rombank_w ) memory_set_bank(space->machine(), "bank2", ((data & 0xf0) >> 4)); } -static ADDRESS_MAP_START( hanakanz_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hanakanz_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) @@ -2539,7 +2539,7 @@ static READ8_HANDLER( hanakanz_rand_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( hanakanz_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hanakanz_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x2c, 0x2c) AM_READ(hanakanz_busy_r) AM_DEVWRITE("oki", hanakanz_oki_bank_w) AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w) @@ -2560,7 +2560,7 @@ static ADDRESS_MAP_START( hanakanz_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hkagerou_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hkagerou_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x2c, 0x2c) AM_READ(hanakanz_busy_r) AM_DEVWRITE("oki", hanakanz_oki_bank_w) AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w) @@ -2593,7 +2593,7 @@ static READ8_HANDLER( mjreach1_protection_r ) return state->m_prot_val; } -static ADDRESS_MAP_START( mjreach1_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjreach1_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x2c, 0x2c) AM_READ(hanakanz_busy_r) AM_DEVWRITE("oki", hanakanz_oki_bank_w) AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w) @@ -2725,7 +2725,7 @@ static WRITE8_DEVICE_HANDLER( mjchuuka_oki_bank_w ) #endif } -static ADDRESS_MAP_START( mjchuuka_portmap, AS_IO, 8 ) // 16 bit I/O +static ADDRESS_MAP_START( mjchuuka_portmap, AS_IO, 8, dynax_state ) // 16 bit I/O AM_RANGE(0x13, 0x13) AM_MIRROR(0xff00) AM_READ(hanakanz_rand_r) AM_RANGE(0x1c, 0x1c) AM_MIRROR(0xff00) AM_WRITE(hanakanz_rombank_w) AM_RANGE(0x1e, 0x1e) AM_MIRROR(0xff00) AM_DEVWRITE("oki", mjchuuka_oki_bank_w ) @@ -2753,7 +2753,7 @@ ADDRESS_MAP_END Mahjong The Mysterious World ***************************************************************************/ -static ADDRESS_MAP_START( mjmyster_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjmyster_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) @@ -2849,7 +2849,7 @@ static WRITE8_HANDLER( mjmyster_blitter_w ) blitter_w(space, 0, offset, data, 0xfc); } -static ADDRESS_MAP_START( mjmyster_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjmyster_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(mjmyster_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -2899,7 +2899,7 @@ static READ8_HANDLER( hginga_protection_r ) return rom[0x10000 + 0x8000 * (state->m_hginga_rombank & 0x7) + 0xf601 - 0x8000]; } -static ADDRESS_MAP_START( hginga_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hginga_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) @@ -3029,7 +3029,7 @@ static WRITE8_HANDLER( hginga_blitter_w ) blitter_w(space, 0, offset, data, 0xfc); } -static ADDRESS_MAP_START( hginga_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hginga_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(hginga_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -3134,7 +3134,7 @@ static READ8_HANDLER( hgokou_protection_r ) return rom[0x10000 + 0x8000 * (state->m_hginga_rombank & 0x7) + 0xe601 - 0x8000]; } -static ADDRESS_MAP_START( hgokou_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hgokou_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) @@ -3145,7 +3145,7 @@ static ADDRESS_MAP_START( hgokou_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hgokou_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hgokou_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(hginga_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -3202,7 +3202,7 @@ static READ8_HANDLER( hgokbang_input_r ) return 0xff; } -static ADDRESS_MAP_START( hgokbang_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hgokbang_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(hginga_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -3290,7 +3290,7 @@ static WRITE8_HANDLER( hparadis_coin_w ) } } -static ADDRESS_MAP_START( hparadis_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hparadis_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) @@ -3299,7 +3299,7 @@ static ADDRESS_MAP_START( hparadis_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END // the RTC seems unused -static ADDRESS_MAP_START( hparadis_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hparadis_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(rongrong_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -3344,7 +3344,7 @@ static READ8_HANDLER( mjmywrld_coins_r ) return 0xff; } -static ADDRESS_MAP_START( mjmywrld_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjmywrld_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(mjmyster_blitter_w) AM_RANGE(0x03, 0x03) AM_READ(rongrong_gfxrom_r) @@ -3422,7 +3422,7 @@ static READ16_HANDLER( akamaru_e0010d_r ) return 0xffff; // read but not used, it seems } -static ADDRESS_MAP_START( akamaru_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( akamaru_map, AS_PROGRAM, 16, dynax_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x213570, 0x213571) AM_WRITE(akamaru_protection1_w) // OKI bank @@ -3530,7 +3530,7 @@ static WRITE8_HANDLER( mjflove_coincounter_w ) } } -static ADDRESS_MAP_START( mjflove_portmap, AS_IO, 8 ) // 16 bit I/O +static ADDRESS_MAP_START( mjflove_portmap, AS_IO, 8, dynax_state ) // 16 bit I/O AM_RANGE(0x0010, 0x0010) AM_READ(hanakanz_rand_r) AM_MIRROR(0xff00) AM_RANGE(0x001c, 0x001c) AM_READ_PORT("DSW2") AM_MIRROR(0xff00) AM_RANGE(0x001e, 0x001e) AM_WRITE(hanakanz_keyb_w) AM_MIRROR(0xff00) @@ -3582,7 +3582,7 @@ static READ8_HANDLER( jongtei_busy_r ) return 0x04; // !bit 2 = blitter busy } -static ADDRESS_MAP_START( jongtei_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( jongtei_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x2c, 0x2c) AM_READ(jongtei_busy_r) AM_DEVWRITE("oki", jongtei_okibank_w) AM_RANGE(0x2e, 0x2e) AM_WRITE(hanakanz_blitter_reg_w) @@ -3606,7 +3606,7 @@ ADDRESS_MAP_END Mahjong Seiryu Densetsu ***************************************************************************/ -static ADDRESS_MAP_START( sryudens_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sryudens_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7000, 0x7fff) AM_RAMBANK("bank2") // RAM (Banked) @@ -3655,7 +3655,7 @@ static WRITE8_HANDLER( sryudens_rambank_w ) //logerror("%04x: rambank = %02x\n", cpu_get_pc(&space->device()), data); } -static ADDRESS_MAP_START( sryudens_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sryudens_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ymsnd", ym2413_w) @@ -3791,7 +3791,7 @@ static READ8_HANDLER( daimyojn_year_hack_r ) return offset ? 1 : 0; // year = 0x10 (BCD) } -static ADDRESS_MAP_START( daimyojn_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( daimyojn_portmap, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x2c, 0x2c) AM_READ(jongtei_busy_r) AM_DEVWRITE("oki", daimyojn_okibank_w) AM_RANGE(0x2e, 0x2e) AM_WRITE(daimyojn_palette_sel_w) diff --git a/src/mame/drivers/ddragon.c b/src/mame/drivers/ddragon.c index 463c6ed1fe7..9b1b45ec99d 100644 --- a/src/mame/drivers/ddragon.c +++ b/src/mame/drivers/ddragon.c @@ -501,7 +501,7 @@ static READ8_HANDLER( dd_adpcm_status_r ) * *************************************/ -static ADDRESS_MAP_START( ddragon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ddragon_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_BASE_MEMBER(ddragon_state, m_rambase) AM_RANGE(0x1000, 0x11ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x1200, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_BASE_GENERIC(paletteram2) @@ -523,7 +523,7 @@ static ADDRESS_MAP_START( ddragon_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dd2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dd2_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(ddragon_fgvideoram_w) AM_BASE_MEMBER(ddragon_state, m_fgvideoram) AM_RANGE(0x2000, 0x2fff) AM_READWRITE(ddragon_spriteram_r, ddragon_spriteram_w) AM_BASE_MEMBER(ddragon_state, m_spriteram) @@ -551,7 +551,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x001f) AM_READWRITE(ddragon_hd63701_internal_registers_r, ddragon_hd63701_internal_registers_w) AM_RANGE(0x001f, 0x0fff) AM_RAM AM_RANGE(0x8000, 0x8fff) AM_READWRITE(ddragon_spriteram_r, ddragon_spriteram_w) @@ -559,14 +559,14 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ddragonba_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ddragonba_sub_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x8000, 0x8fff) AM_READWRITE(ddragon_spriteram_r, ddragon_spriteram_w) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( dd2_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dd2_sub_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_READWRITE(ddragon_spriteram_r, ddragon_spriteram_w) AM_RANGE(0xd000, 0xd000) AM_WRITE(ddragon2_sub_irq_ack_w) @@ -581,7 +581,7 @@ static WRITE8_HANDLER( ddragonba_port_w ) device_set_input_line(state->m_sub_cpu, state->m_sprite_irq, CLEAR_LINE ); } -static ADDRESS_MAP_START( ddragonba_sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( ddragonba_sub_portmap, AS_IO, 8, ddragon_state ) AM_RANGE(0x0000, 0xffff) AM_WRITE(ddragonba_port_w) ADDRESS_MAP_END @@ -593,7 +593,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READ(soundlatch_r) AM_RANGE(0x1800, 0x1800) AM_READ(dd_adpcm_status_r) @@ -603,7 +603,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dd2_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dd2_sound_map, AS_PROGRAM, 8, ddragon_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("fmsnd", ym2151_r, ym2151_w) @@ -619,7 +619,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, ddragon_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0007) AM_RAM_WRITE(darktowr_mcu_w) AM_BASE_MEMBER(ddragon_state, m_darktowr_mcu_ports) AM_RANGE(0x0008, 0x007f) AM_RAM diff --git a/src/mame/drivers/ddragon3.c b/src/mame/drivers/ddragon3.c index efdeb950b10..79b3d836647 100644 --- a/src/mame/drivers/ddragon3.c +++ b/src/mame/drivers/ddragon3.c @@ -207,7 +207,7 @@ static WRITE16_HANDLER( ddragon3_io_w ) * *************************************/ -static ADDRESS_MAP_START( ddragon3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ddragon3_map, AS_PROGRAM, 16, ddragon3_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(ddragon3_fg_videoram_w) AM_BASE_MEMBER(ddragon3_state, m_fg_videoram) /* Foreground (32x32 Tiles - 4 by per tile) */ AM_RANGE(0x082000, 0x0827ff) AM_RAM_WRITE(ddragon3_bg_videoram_w) AM_BASE_MEMBER(ddragon3_state, m_bg_videoram) /* Background (32x32 Tiles - 2 by per tile) */ @@ -222,7 +222,7 @@ static ADDRESS_MAP_START( ddragon3_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* working RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dd3b_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dd3b_map, AS_PROGRAM, 16, ddragon3_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(ddragon3_fg_videoram_w) AM_BASE_MEMBER(ddragon3_state, m_fg_videoram) /* Foreground (32x32 Tiles - 4 by per tile) */ AM_RANGE(0x081000, 0x081fff) AM_RAM AM_BASE_MEMBER(ddragon3_state, m_spriteram) @@ -237,7 +237,7 @@ static ADDRESS_MAP_START( dd3b_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* working RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( ctribe_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ctribe_map, AS_PROGRAM, 16, ddragon3_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(ddragon3_fg_videoram_w) AM_BASE_MEMBER(ddragon3_state, m_fg_videoram) /* Foreground (32x32 Tiles - 4 by per tile) */ AM_RANGE(0x081000, 0x081fff) AM_RAM AM_BASE_MEMBER(ddragon3_state, m_spriteram) @@ -253,7 +253,7 @@ static ADDRESS_MAP_START( ctribe_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* working RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ddragon3_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ym2151", ym2151_r, ym2151_w) @@ -262,7 +262,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe800, 0xe800) AM_DEVWRITE("oki", oki_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ctribe_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ctribe_sound_map, AS_PROGRAM, 8, ddragon3_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ym2151", ym2151_status_port_r, ym2151_w) diff --git a/src/mame/drivers/ddribble.c b/src/mame/drivers/ddribble.c index 2c83402d152..c8269c1a2bd 100644 --- a/src/mame/drivers/ddribble.c +++ b/src/mame/drivers/ddribble.c @@ -113,7 +113,7 @@ static WRITE8_DEVICE_HANDLER( ddribble_vlm5030_ctrl_w ) } -static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8, ddribble_state ) AM_RANGE(0x0000, 0x0004) AM_WRITE(K005885_0_w) /* video registers (005885 #1) */ AM_RANGE(0x0800, 0x0804) AM_WRITE(K005885_1_w) /* video registers (005885 #2) */ AM_RANGE(0x1800, 0x187f) AM_RAM AM_BASE_MEMBER(ddribble_state, m_paletteram) /* palette */ @@ -127,7 +127,7 @@ static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, ddribble_state ) AM_RANGE(0x0000, 0x1fff) AM_READWRITE(ddribble_sharedram_r, ddribble_sharedram_w) /* shared RAM with CPU #0 */ AM_RANGE(0x2000, 0x27ff) AM_READWRITE(ddribble_snd_sharedram_r, ddribble_snd_sharedram_w) /* shared RAM with CPU #2 */ AM_RANGE(0x2800, 0x2800) AM_READ_PORT("DSW1") @@ -141,7 +141,7 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, ddribble_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(ddribble_state, m_snd_sharedram) /* shared RAM with CPU #1 */ AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) /* YM2203 */ AM_RANGE(0x3000, 0x3000) AM_DEVWRITE("vlm", vlm5030_data_w) /* Speech data */ diff --git a/src/mame/drivers/ddz.c b/src/mame/drivers/ddz.c index 4622f88306e..95d025a9270 100644 --- a/src/mame/drivers/ddz.c +++ b/src/mame/drivers/ddz.c @@ -25,7 +25,7 @@ public: }; -static ADDRESS_MAP_START( ddz_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ddz_mem, AS_PROGRAM, 32, ddz_state ) AM_RANGE(0x00000000, 0x003fffff) AM_ROM AM_WRITENOP ADDRESS_MAP_END diff --git a/src/mame/drivers/deadang.c b/src/mame/drivers/deadang.c index e0a80b2a94e..52f9dfc63e4 100644 --- a/src/mame/drivers/deadang.c +++ b/src/mame/drivers/deadang.c @@ -56,7 +56,7 @@ static READ16_HANDLER( ghunter_trackball_high_r ) /* Memory Maps */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, deadang_state ) AM_RANGE(0x00000, 0x037ff) AM_RAM AM_RANGE(0x03800, 0x03fff) AM_RAM AM_BASE_MEMBER(deadang_state, m_spriteram) AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1") @@ -74,7 +74,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, deadang_state ) AM_RANGE(0x00000, 0x037ff) AM_RAM AM_RANGE(0x03800, 0x03fff) AM_RAM_WRITE(deadang_foreground_w) AM_BASE_MEMBER(deadang_state, m_video_data) AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/dec0.c b/src/mame/drivers/dec0.c index e299515497d..3f8be4ab192 100644 --- a/src/mame/drivers/dec0.c +++ b/src/mame/drivers/dec0.c @@ -281,7 +281,7 @@ static WRITE16_HANDLER( midres_sound_w ) /******************************************************************************/ -static ADDRESS_MAP_START( dec0_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dec0_map, AS_PROGRAM, 16, dec0_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x240000, 0x240007) AM_DEVWRITE("tilegen1", deco_bac06_pf_control_0_w) /* text layer */ AM_RANGE(0x240010, 0x240017) AM_DEVWRITE("tilegen1", deco_bac06_pf_control_1_w) @@ -311,14 +311,14 @@ static ADDRESS_MAP_START( dec0_map, AS_PROGRAM, 16 ) AM_RANGE(0xffc000, 0xffc7ff) AM_RAM AM_BASE_MEMBER(dec0_state, m_spriteram) /* Sprites */ ADDRESS_MAP_END -static ADDRESS_MAP_START( robocop_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( robocop_sub_map, AS_PROGRAM, 8, dec0_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x1f0000, 0x1f1fff) AM_RAM /* Main ram */ AM_RANGE(0x1f2000, 0x1f3fff) AM_RAM AM_BASE_MEMBER(dec0_state, m_robocop_shared_ram) /* Shared ram */ AM_RANGE(0x1ff400, 0x1ff403) AM_WRITE(h6280_irq_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hippodrm_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hippodrm_sub_map, AS_PROGRAM, 8, dec0_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x180000, 0x1800ff) AM_READWRITE(hippodrm_shared_r, hippodrm_shared_w) AM_RANGE(0x1a0000, 0x1a0007) AM_DEVWRITE("tilegen3", deco_bac06_pf_control0_8bit_packed_w) @@ -495,7 +495,7 @@ void slyspy_set_protection_map(running_machine& machine, int type) -static ADDRESS_MAP_START( slyspy_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slyspy_map, AS_PROGRAM, 16, dec0_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM /* The location of p1 & pf2 can change in the 240000 - 24ffff region according to protection */ @@ -516,7 +516,7 @@ static ADDRESS_MAP_START( slyspy_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( midres_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( midres_map, AS_PROGRAM, 16, dec0_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_BASE_MEMBER(dec0_state, m_ram) AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_BASE_MEMBER(dec0_state, m_spriteram) @@ -550,7 +550,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8, dec0_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_w) @@ -560,7 +560,7 @@ static ADDRESS_MAP_START( dec0_s_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Physical memory map (21 bits) */ -static ADDRESS_MAP_START( slyspy_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slyspy_s_map, AS_PROGRAM, 8, dec0_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x090000, 0x090001) AM_DEVWRITE("ym2", ym3812_w) AM_RANGE(0x0a0000, 0x0a0001) AM_READNOP /* Protection counter */ @@ -571,7 +571,7 @@ static ADDRESS_MAP_START( slyspy_s_map, AS_PROGRAM, 8 ) AM_RANGE(0x1ff400, 0x1ff403) AM_WRITE(h6280_irq_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( midres_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( midres_s_map, AS_PROGRAM, 8, dec0_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x108000, 0x108001) AM_DEVWRITE("ym2", ym3812_w) AM_RANGE(0x118000, 0x118001) AM_DEVWRITE("ym1", ym2203_w) @@ -585,7 +585,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( secretab_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( secretab_map, AS_PROGRAM, 16, dec0_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x240000, 0x240007) AM_DEVWRITE("tilegen2", deco_bac06_pf_control_0_w) AM_RANGE(0x240010, 0x240017) AM_DEVWRITE("tilegen2", deco_bac06_pf_control_1_w) @@ -613,7 +613,7 @@ static ADDRESS_MAP_START( secretab_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( automat_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( automat_map, AS_PROGRAM, 16, dec0_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x240000, 0x240007) AM_DEVWRITE("tilegen1", deco_bac06_pf_control_0_w) /* text layer */ @@ -651,7 +651,7 @@ static WRITE8_HANDLER( automat_adpcm_w ) state->m_automat_adpcm_byte = data; } -static ADDRESS_MAP_START( automat_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( automat_s_map, AS_PROGRAM, 8, dec0_state ) AM_RANGE(0xc000, 0xc7ff) AM_RAM // AM_RANGE(0xc800, 0xc800) AM_WRITE(ym2203_control_port_0_w) // AM_RANGE(0xc801, 0xc801) AM_WRITE(ym2203_write_port_0_w) @@ -662,7 +662,7 @@ static ADDRESS_MAP_START( automat_s_map, AS_PROGRAM, 8 ) AM_RANGE(0x0000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, dec0_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(dec0_mcu_port_r, dec0_mcu_port_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/dec8.c b/src/mame/drivers/dec8.c index 8ec36fbfa80..71ffa15a3fa 100644 --- a/src/mame/drivers/dec8.c +++ b/src/mame/drivers/dec8.c @@ -594,7 +594,7 @@ static WRITE8_HANDLER( flip_screen_w ) { flip_screen_set(space->machine(), data) /******************************************************************************/ -static ADDRESS_MAP_START( lastmisn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lastmisn_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram) AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") AM_BASE_GENERIC(paletteram2) @@ -620,7 +620,7 @@ static ADDRESS_MAP_START( lastmisn_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( lastmisn_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lastmisn_sub_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") @@ -640,7 +640,7 @@ static ADDRESS_MAP_START( lastmisn_sub_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( shackled_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shackled_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram) AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") AM_BASE_GENERIC(paletteram2) @@ -664,7 +664,7 @@ static ADDRESS_MAP_START( shackled_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( shackled_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shackled_sub_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") @@ -689,7 +689,7 @@ static ADDRESS_MAP_START( shackled_sub_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( gondo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gondo_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) @@ -712,7 +712,7 @@ static ADDRESS_MAP_START( gondo_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( garyoret_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( garyoret_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) AM_RANGE(0x2000, 0x27ff) AM_READWRITE(dec8_bg_data_r, dec8_bg_data_w) AM_BASE_MEMBER(dec8_state, m_bg_data) @@ -734,7 +734,7 @@ static ADDRESS_MAP_START( garyoret_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( meikyuh_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( meikyuh_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(dec8_videoram_w) AM_BASE_SIZE_MEMBER(dec8_state, m_videoram, m_videoram_size) @@ -758,7 +758,7 @@ static ADDRESS_MAP_START( meikyuh_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( csilver_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( csilver_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_BASE_GENERIC(paletteram) AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") AM_BASE_GENERIC(paletteram2) @@ -783,7 +783,7 @@ static ADDRESS_MAP_START( csilver_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( csilver_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( csilver_sub_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split1_w) AM_SHARE("share3") AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_split2_w) AM_SHARE("share4") @@ -799,7 +799,7 @@ static ADDRESS_MAP_START( csilver_sub_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( oscar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( oscar_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1") AM_RANGE(0x0f00, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2") @@ -823,7 +823,7 @@ static ADDRESS_MAP_START( oscar_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( oscar_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( oscar_sub_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x0eff) AM_RAM AM_SHARE("share1") AM_RANGE(0x0f00, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_RAM AM_SHARE("share2") @@ -831,7 +831,7 @@ static ADDRESS_MAP_START( oscar_sub_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( srdarwin_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( srdarwin_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_RANGE(0x0600, 0x07ff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(srdarwin_videoram_w) AM_BASE_MEMBER(dec8_state, m_videoram) @@ -854,7 +854,7 @@ static ADDRESS_MAP_START( srdarwin_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) AM_RANGE(0x1000, 0x17ff) AM_DEVREADWRITE("tilegen2", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) @@ -882,7 +882,7 @@ ADDRESS_MAP_END /******************************************************************************/ /* Used for Cobra Command, Maze Hunter, Super Real Darwin etc */ -static ADDRESS_MAP_START( dec8_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dec8_s_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ym2", ym3812_w) @@ -891,7 +891,7 @@ static ADDRESS_MAP_START( dec8_s_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Used by Gondomania, Psycho-Nics Oscar & Garyo Retsuden */ -static ADDRESS_MAP_START( oscar_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( oscar_s_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ym2", ym3526_w) @@ -900,7 +900,7 @@ static ADDRESS_MAP_START( oscar_s_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Used by Last Mission, Shackled & Breywood */ -static ADDRESS_MAP_START( ym3526_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ym3526_s_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3526_w) @@ -909,7 +909,7 @@ static ADDRESS_MAP_START( ym3526_s_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Captain Silver - same sound system as Pocket Gal */ -static ADDRESS_MAP_START( csilver_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( csilver_s_map, AS_PROGRAM, 8, dec8_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3526_w) @@ -977,7 +977,7 @@ static WRITE8_HANDLER( dec8_mcu_to_main_w ) device_set_input_line(state->m_maincpu, M6809_IRQ_LINE, ASSERT_LINE); } -static ADDRESS_MAP_START( dec8_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dec8_mcu_io_map, AS_IO, 8, dec8_state ) AM_RANGE(MCS51_PORT_P0,MCS51_PORT_P3) AM_READWRITE(dec8_mcu_from_main_r, dec8_mcu_to_main_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/deco156.c b/src/mame/drivers/deco156.c index 19fe92fc885..8b73019a2d3 100644 --- a/src/mame/drivers/deco156.c +++ b/src/mame/drivers/deco156.c @@ -120,7 +120,7 @@ static WRITE32_HANDLER( wcvol95_pf2_rowscroll_w ) { deco156_state *state = space static WRITE32_HANDLER( wcvol95_spriteram_w ) { deco156_state *state = space->machine().driver_data<deco156_state>(); data &= 0x0000ffff; mem_mask &= 0x0000ffff; COMBINE_DATA(&state->m_spriteram[offset]); } -static ADDRESS_MAP_START( hvysmsh_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( hvysmsh_map, AS_PROGRAM, 32, deco156_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x107fff) AM_RAM AM_RANGE(0x120000, 0x120003) AM_READ_PORT("INPUTS") @@ -140,7 +140,7 @@ static ADDRESS_MAP_START( hvysmsh_map, AS_PROGRAM, 32 ) AM_RANGE(0x1e0000, 0x1e1fff) AM_READWRITE(wcvol95_spriteram_r, wcvol95_spriteram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( wcvol95_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( wcvol95_map, AS_PROGRAM, 32, deco156_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10001f) AM_DEVREADWRITE("tilegen1", deco16ic_pf_control_dword_r, deco16ic_pf_control_dword_w) AM_RANGE(0x110000, 0x111fff) AM_DEVREADWRITE("tilegen1", deco16ic_pf1_data_dword_r, deco16ic_pf1_data_dword_w) diff --git a/src/mame/drivers/deco32.c b/src/mame/drivers/deco32.c index 1ce19ce97e3..be3c688558d 100644 --- a/src/mame/drivers/deco32.c +++ b/src/mame/drivers/deco32.c @@ -734,7 +734,7 @@ static WRITE32_HANDLER( deco32_pf3_rowscroll_w ) { deco32_state *state = space-> static WRITE32_HANDLER( deco32_pf4_rowscroll_w ) { deco32_state *state = space->machine().driver_data<deco32_state>(); COMBINE_DATA(&state->m_pf4_rowscroll32[offset]); data &= 0x0000ffff; mem_mask &= 0x0000ffff; COMBINE_DATA(&state->m_pf4_rowscroll[offset]); } -static ADDRESS_MAP_START( captaven_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( captaven_map, AS_PROGRAM, 32, deco32_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100007) AM_READ(deco32_71_r) @@ -767,7 +767,7 @@ static ADDRESS_MAP_START( captaven_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fghthist_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( fghthist_map, AS_PROGRAM, 32, deco32_state ) // AM_RANGE(0x000000, 0x001fff) AM_ROM AM_WRITE(deco32_pf1_data_w) // wtf?? AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_BASE_MEMBER(deco32_state, m_ram) @@ -802,7 +802,7 @@ static ADDRESS_MAP_START( fghthist_map, AS_PROGRAM, 32 ) AM_RANGE(0x208800, 0x208803) AM_WRITENOP /* ? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( fghthsta_memmap, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( fghthsta_memmap, AS_PROGRAM, 32, deco32_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_BASE_MEMBER(deco32_state, m_ram) AM_RANGE(0x140000, 0x140003) AM_WRITENOP /* VBL irq ack */ @@ -833,7 +833,7 @@ ADDRESS_MAP_END // the video drawing (especially sprite) code on this is too slow to cope with proper partial updates // raster effects appear to need some work on it anyway? -static ADDRESS_MAP_START( dragngun_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dragngun_map, AS_PROGRAM, 32, deco32_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_BASE_MEMBER(deco32_state, m_ram) AM_RANGE(0x120000, 0x120fff) AM_READ(dragngun_prot_r) @@ -880,7 +880,7 @@ static ADDRESS_MAP_START( dragngun_map, AS_PROGRAM, 32 ) AM_RANGE(0x500000, 0x500003) AM_WRITE(dragngun_sprite_control_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( lockload_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( lockload_map, AS_PROGRAM, 32, deco32_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_BASE_MEMBER(deco32_state, m_ram) AM_RANGE(0x120000, 0x120fff) AM_READ(dragngun_prot_r) @@ -926,7 +926,7 @@ static ADDRESS_MAP_START( lockload_map, AS_PROGRAM, 32 ) AM_RANGE(0x500000, 0x500003) AM_WRITE(dragngun_sprite_control_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( tattass_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( tattass_map, AS_PROGRAM, 32, deco32_state ) AM_RANGE(0x000000, 0x0f7fff) AM_ROM AM_RANGE(0x0f8000, 0x0fffff) AM_ROM AM_WRITENOP @@ -971,7 +971,7 @@ static ADDRESS_MAP_START( tattass_map, AS_PROGRAM, 32 ) AM_RANGE(0x200000, 0x200fff) AM_READWRITE(tattass_prot_r, tattass_prot_w) AM_BASE(&deco32_prot_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( nslasher_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( nslasher_map, AS_PROGRAM, 32, deco32_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_BASE_MEMBER(deco32_state, m_ram) AM_RANGE(0x120000, 0x1200ff) AM_NOP /* ACIA (unused) */ @@ -1014,7 +1014,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, deco32_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x120000, 0x120001) AM_DEVREADWRITE_MODERN("oki1", okim6295_device, read, write) @@ -1034,7 +1034,7 @@ static READ8_HANDLER(latch_r) return soundlatch_r(space,0); } -static ADDRESS_MAP_START( nslasher_sound, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nslasher_sound, AS_PROGRAM, 8, deco32_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1043,7 +1043,7 @@ static ADDRESS_MAP_START( nslasher_sound, AS_PROGRAM, 8 ) AM_RANGE(0xd000, 0xd000) AM_READ(latch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( nslasher_io_sound, AS_IO, 8 ) +static ADDRESS_MAP_START( nslasher_io_sound, AS_IO, 8, deco32_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("audiocpu", 0) ADDRESS_MAP_END diff --git a/src/mame/drivers/deco_ld.c b/src/mame/drivers/deco_ld.c index 2ebfdcc3c09..4a10eddb553 100644 --- a/src/mame/drivers/deco_ld.c +++ b/src/mame/drivers/deco_ld.c @@ -181,7 +181,7 @@ static READ8_HANDLER( test_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( begas_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( begas_map, AS_PROGRAM, 8, deco_ld_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM // AM_RANGE(0x1000, 0x1007) AM_NOP AM_RANGE(0x1000, 0x1000) AM_READ(test_r) @@ -200,7 +200,7 @@ static ADDRESS_MAP_START( begas_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8, deco_ld_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READ_PORT("IN1") AM_RANGE(0x1001, 0x1001) AM_READ(test_r)//_PORT("IN2") @@ -219,7 +219,7 @@ static ADDRESS_MAP_START( cobra_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rblaster_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rblaster_map, AS_PROGRAM, 8, deco_ld_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM // AM_RANGE(0x1000, 0x1007) AM_NOP AM_RANGE(0x1001, 0x1001) AM_WRITENOP //??? @@ -250,7 +250,7 @@ static INTERRUPT_GEN ( sound_interrupt ) } -static ADDRESS_MAP_START( rblaster_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rblaster_sound_map, AS_PROGRAM, 8, deco_ld_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_data_w) AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8910_address_w) diff --git a/src/mame/drivers/deco_mlc.c b/src/mame/drivers/deco_mlc.c index b9dccbf9b03..3ab468fc187 100644 --- a/src/mame/drivers/deco_mlc.c +++ b/src/mame/drivers/deco_mlc.c @@ -260,7 +260,7 @@ static READ32_HANDLER(stadhr96_prot_146_r) /******************************************************************************/ -static ADDRESS_MAP_START( decomlc_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( decomlc_map, AS_PROGRAM, 32, deco_mlc_state ) AM_RANGE(0x0000000, 0x00fffff) AM_ROM AM_MIRROR(0xff000000) AM_RANGE(0x0100000, 0x011ffff) AM_RAM AM_BASE_MEMBER(deco_mlc_state, m_mlc_ram) AM_MIRROR(0xff000000) AM_RANGE(0x0200000, 0x020000f) AM_READNOP AM_MIRROR(0xff000000)/* IRQ control? */ diff --git a/src/mame/drivers/decocass.c b/src/mame/drivers/decocass.c index b900ba500d3..2b7ac688528 100644 --- a/src/mame/drivers/decocass.c +++ b/src/mame/drivers/decocass.c @@ -117,7 +117,7 @@ static READ8_HANDLER( mirrorcolorram_r ) } -static ADDRESS_MAP_START( decocass_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( decocass_map, AS_PROGRAM, 8, decocass_state ) AM_RANGE(0x0000, 0x5fff) AM_RAM_WRITE(ram_w) AM_BASE_MEMBER(decocass_state, m_rambase) AM_RANGE(0x6000, 0xbfff) AM_RAM_WRITE(charram_w) AM_BASE_MEMBER(decocass_state, m_charram) /* still RMS3 RAM */ AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(fgvideoram_w) AM_BASE_SIZE_MEMBER(decocass_state, m_fgvideoram, m_fgvideoram_size) /* DSP3 RAM */ @@ -158,7 +158,7 @@ static ADDRESS_MAP_START( decocass_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( decocass_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( decocass_sound_map, AS_PROGRAM, 8, decocass_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x17ff) AM_READWRITE(decocass_sound_nmi_enable_r, decocass_sound_nmi_enable_w) AM_RANGE(0x1800, 0x1fff) AM_READWRITE(decocass_sound_data_ack_reset_r, decocass_sound_data_ack_reset_w) @@ -172,7 +172,7 @@ static ADDRESS_MAP_START( decocass_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( decocass_mcu_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( decocass_mcu_portmap, AS_IO, 8, decocass_state ) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_READWRITE(i8041_p1_r, i8041_p1_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(i8041_p2_r, i8041_p2_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/deniam.c b/src/mame/drivers/deniam.c index 7d78280068b..19d816376c9 100644 --- a/src/mame/drivers/deniam.c +++ b/src/mame/drivers/deniam.c @@ -78,7 +78,7 @@ static WRITE16_HANDLER( deniam_irq_ack_w ) cputag_set_input_line(space->machine(), "maincpu", 4, CLEAR_LINE); } -static ADDRESS_MAP_START( deniam16b_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( deniam16b_map, AS_PROGRAM, 16, deniam_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(deniam_videoram_w) AM_BASE_MEMBER(deniam_state, m_videoram) AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(deniam_textram_w) AM_BASE_MEMBER(deniam_state, m_textram) @@ -95,12 +95,12 @@ static ADDRESS_MAP_START( deniam16b_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, deniam_state ) AM_RANGE(0x0000, 0xf7ff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, deniam_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_READ(soundlatch_r) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ymsnd", ym3812_w) @@ -109,7 +109,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) ADDRESS_MAP_END /* identical to 16b, but handles sound directly */ -static ADDRESS_MAP_START( deniam16c_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( deniam16c_map, AS_PROGRAM, 16, deniam_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(deniam_videoram_w) AM_BASE_MEMBER(deniam_state, m_videoram) AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(deniam_textram_w) AM_BASE_MEMBER(deniam_state, m_textram) diff --git a/src/mame/drivers/deshoros.c b/src/mame/drivers/deshoros.c index 7b9df43f60e..7129609a959 100644 --- a/src/mame/drivers/deshoros.c +++ b/src/mame/drivers/deshoros.c @@ -106,7 +106,7 @@ static WRITE8_HANDLER( io_w ) // printf("%02x -> [%02x]\n",data,offset); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, deshoros_state ) AM_RANGE(0x0000, 0x5fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x900f) AM_READWRITE(io_r,io_w) AM_BASE_MEMBER(deshoros_state, m_io_ram) //i/o area diff --git a/src/mame/drivers/destroyr.c b/src/mame/drivers/destroyr.c index 0fbcfc800c1..5b6f9ea03b2 100644 --- a/src/mame/drivers/destroyr.c +++ b/src/mame/drivers/destroyr.c @@ -255,7 +255,7 @@ static READ8_HANDLER( destroyr_scanline_r ) } -static ADDRESS_MAP_START( destroyr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( destroyr_map, AS_PROGRAM, 8, destroyr_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0xf00) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_READWRITE(destroyr_input_r, destroyr_output_w) diff --git a/src/mame/drivers/dfruit.c b/src/mame/drivers/dfruit.c index 606f461f2a6..3c8e7b69b6d 100644 --- a/src/mame/drivers/dfruit.c +++ b/src/mame/drivers/dfruit.c @@ -30,7 +30,7 @@ static SCREEN_UPDATE_IND16( dfruit ) return 0; } -static ADDRESS_MAP_START( dfruit_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dfruit_map, AS_PROGRAM, 8, dfruit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* TODO: ROM banks! */ AM_RANGE(0x8000, 0x9fff) AM_RAM @@ -52,7 +52,7 @@ static ADDRESS_MAP_START( dfruit_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dfruit_io, AS_IO, 8 ) +static ADDRESS_MAP_START( dfruit_io, AS_IO, 8, dfruit_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/drivers/dgpix.c b/src/mame/drivers/dgpix.c index 50fcfc77e84..62bab756a96 100644 --- a/src/mame/drivers/dgpix.c +++ b/src/mame/drivers/dgpix.c @@ -196,7 +196,7 @@ static READ32_HANDLER( vblank_r ) return input_port_read(space->machine(), "VBLANK"); } -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, dgpix_state ) AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_RANGE(0x40000000, 0x4003ffff) AM_READWRITE(vram_r, vram_w) AM_RANGE(0xe0000000, 0xe1ffffff) AM_READWRITE(flash_r, flash_w) @@ -204,7 +204,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32 ) AM_RANGE(0xffc00000, 0xffffffff) AM_ROM AM_REGION("user1", 0x1c00000) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 32 ) +static ADDRESS_MAP_START( io_map, AS_IO, 32, dgpix_state ) AM_RANGE(0x0200, 0x0203) AM_READNOP // used to sync with the protecion PIC? tested bits 0 and 1 AM_RANGE(0x0400, 0x0403) AM_READWRITE(vblank_r, vbuffer_w) AM_RANGE(0x0a10, 0x0a13) AM_READ_PORT("INPUTS") diff --git a/src/mame/drivers/dietgo.c b/src/mame/drivers/dietgo.c index 54f7c8609f2..164c5831e9c 100644 --- a/src/mame/drivers/dietgo.c +++ b/src/mame/drivers/dietgo.c @@ -16,7 +16,7 @@ #include "video/decospr.h" #include "video/decocomn.h" -static ADDRESS_MAP_START( dietgo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dietgo_map, AS_PROGRAM, 16, dietgo_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_DEVWRITE("tilegen1", deco16ic_pf_control_w) AM_RANGE(0x210000, 0x211fff) AM_DEVWRITE("tilegen1", deco16ic_pf1_data_w) @@ -31,7 +31,7 @@ ADDRESS_MAP_END /* Physical memory map (21 bits) */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, dietgo_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_NOP /* YM2203 - this board doesn't have one */ AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/discoboy.c b/src/mame/drivers/discoboy.c index f61171e4bb4..9540be8b341 100644 --- a/src/mame/drivers/discoboy.c +++ b/src/mame/drivers/discoboy.c @@ -292,7 +292,7 @@ static WRITE8_HANDLER( discoboy_ram_att_w ) state->m_ram_att[offset] = data; } -static ADDRESS_MAP_START( discoboy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( discoboy_map, AS_PROGRAM, 8, discoboy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(rambank_r, rambank_w) @@ -308,7 +308,7 @@ static READ8_HANDLER( discoboy_port_06_r ) return 0x00; } -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, discoboy_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSWA") AM_WRITE(discoboy_port_00_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(discoboy_port_01_w) @@ -340,7 +340,7 @@ static WRITE8_HANDLER( yunsung8_adpcm_w ) state->m_adpcm = ((data & 0xf) << 4) | ((data >> 4) & 0xf); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, discoboy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("sndbank") AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("msm",yunsung8_sound_bankswitch_w) diff --git a/src/mame/drivers/diverboy.c b/src/mame/drivers/diverboy.c index a65db5687bb..46d33c88cff 100644 --- a/src/mame/drivers/diverboy.c +++ b/src/mame/drivers/diverboy.c @@ -139,7 +139,7 @@ static WRITE8_DEVICE_HANDLER( okibank_w ) -static ADDRESS_MAP_START( diverboy_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( diverboy_map, AS_PROGRAM, 16, diverboy_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x04ffff) AM_RAM AM_RANGE(0x080000, 0x083fff) AM_RAM AM_BASE_SIZE_MEMBER(diverboy_state, m_spriteram, m_spriteram_size) @@ -156,7 +156,7 @@ static ADDRESS_MAP_START( diverboy_map, AS_PROGRAM, 16 ) // AM_RANGE(0x340002, 0x340003) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( snd_map, AS_PROGRAM, 8, diverboy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("oki", okibank_w) diff --git a/src/mame/drivers/djboy.c b/src/mame/drivers/djboy.c index adf5e4530cf..2653968c6ba 100644 --- a/src/mame/drivers/djboy.c +++ b/src/mame/drivers/djboy.c @@ -250,7 +250,7 @@ static WRITE8_HANDLER( cpu2_bankswitch_w ) /******************************************************************************/ -static ADDRESS_MAP_START( cpu0_am, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu0_am, AS_PROGRAM, 8, djboy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xafff) AM_ROMBANK("bank4") AM_RANGE(0xb000, 0xbfff) AM_DEVREADWRITE("pandora", pandora_spriteram_r, pandora_spriteram_w) @@ -260,14 +260,14 @@ static ADDRESS_MAP_START( cpu0_am, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu0_port_am, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu0_port_am, AS_IO, 8, djboy_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(cpu0_bankswitch_w) ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( cpu1_am, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_am, AS_PROGRAM, 8, djboy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(djboy_videoram_w) AM_BASE_MEMBER(djboy_state, m_videoram) @@ -276,7 +276,7 @@ static ADDRESS_MAP_START( cpu1_am, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_port_am, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu1_port_am, AS_IO, 8, djboy_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(cpu1_bankswitch_w) AM_RANGE(0x02, 0x02) AM_WRITE(trigger_nmi_on_sound_cpu2) @@ -290,13 +290,13 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( cpu2_am, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_am, AS_PROGRAM, 8, djboy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3") AM_RANGE(0xc000, 0xdfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_port_am, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu2_port_am, AS_IO, 8, djboy_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(cpu2_bankswitch_w) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) @@ -398,7 +398,7 @@ static WRITE8_HANDLER( beast_p3_w ) } /* Program/data maps are defined in the 8051 core */ -static ADDRESS_MAP_START( djboy_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( djboy_mcu_io_map, AS_IO, 8, djboy_state ) AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE(beast_p0_r, beast_p0_w) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(beast_p1_r, beast_p1_w) AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_READWRITE(beast_p2_r, beast_p2_w) diff --git a/src/mame/drivers/djmain.c b/src/mame/drivers/djmain.c index ef14ce66de0..ab7b8ab3cf7 100644 --- a/src/mame/drivers/djmain.c +++ b/src/mame/drivers/djmain.c @@ -441,7 +441,7 @@ static void ide_interrupt(device_t *device, int state) * *************************************/ -static ADDRESS_MAP_START( memory_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( memory_map, AS_PROGRAM, 32, djmain_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // PRG ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // WORK RAM AM_RANGE(0x480000, 0x48443f) AM_RAM_WRITE(paletteram32_w) // COLOR RAM diff --git a/src/mame/drivers/dkong.c b/src/mame/drivers/dkong.c index 243676acfb0..c6b1993630a 100644 --- a/src/mame/drivers/dkong.c +++ b/src/mame/drivers/dkong.c @@ -778,7 +778,7 @@ static WRITE8_HANDLER( nmi_mask_w ) * *************************************/ -static ADDRESS_MAP_START( dkong_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dkong_map, AS_PROGRAM, 8, dkong_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x6000, 0x6bff) AM_RAM AM_RANGE(0x7000, 0x73ff) AM_RAM AM_BASE_SIZE_MEMBER(dkong_state, m_sprite_ram, m_sprite_ram_size) /* sprite set 1 */ @@ -799,7 +799,7 @@ static ADDRESS_MAP_START( dkong_map, AS_PROGRAM, 8 ) AM_RANGE(0x7d86, 0x7d87) AM_WRITE(dkong_palettebank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dkongjr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dkongjr_map, AS_PROGRAM, 8, dkong_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6bff) AM_RAM AM_RANGE(0x6c00, 0x6fff) AM_RAM /* DK3 bootleg only */ @@ -828,7 +828,7 @@ static ADDRESS_MAP_START( dkongjr_map, AS_PROGRAM, 8 ) AM_RANGE(0xd000, 0xdfff) AM_ROM /* DK3 bootleg only */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dkong3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dkong3_map, AS_PROGRAM, 8, dkong_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0x6800, 0x6fff) AM_RAM @@ -848,21 +848,21 @@ static ADDRESS_MAP_START( dkong3_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0x9fff) AM_ROM /* DK3 and bootleg DKjr only */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dkong3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dkong3_io_map, AS_IO, 8, dkong_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("z80dma", z80dma_r, z80dma_w) /* dma controller */ ADDRESS_MAP_END /* Epos conversions */ -static ADDRESS_MAP_START( epos_readport, AS_IO, 8 ) +static ADDRESS_MAP_START( epos_readport, AS_IO, 8, dkong_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_READ(epos_decrypt_rom) /* Switch protection logic */ ADDRESS_MAP_END /* S2650 conversions */ -static ADDRESS_MAP_START( s2650_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( s2650_map, AS_PROGRAM, 8, dkong_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x13ff) AM_RAM AM_BASE_SIZE_MEMBER(dkong_state, m_sprite_ram, m_sprite_ram_size) /* 0x7000 */ AM_RANGE(0x1400, 0x1400) AM_MIRROR(0x007f) AM_READ_PORT("IN0") AM_DEVWRITE("ls175.3d", latch8_w) @@ -888,7 +888,7 @@ static ADDRESS_MAP_START( s2650_map, AS_PROGRAM, 8 ) AM_RANGE(0x7000, 0x7fff) AM_READWRITE(s2650_mirror_r, s2650_mirror_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( s2650_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( s2650_io_map, AS_IO, 8, dkong_state ) AM_RANGE(0x00, 0x00) AM_READ(s2650_port0_r) AM_RANGE(0x01, 0x01) AM_READ(s2650_port1_r) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") diff --git a/src/mame/drivers/dlair.c b/src/mame/drivers/dlair.c index 0fbc416239e..06c8091227b 100644 --- a/src/mame/drivers/dlair.c +++ b/src/mame/drivers/dlair.c @@ -394,7 +394,7 @@ static WRITE8_HANDLER( laserdisc_w ) *************************************/ /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( dlus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dlus_map, AS_PROGRAM, 8, dlair_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_MIRROR(0x1800) AM_RAM AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x1fc7) AM_DEVREAD("aysnd", ay8910_r) @@ -418,7 +418,7 @@ ADDRESS_MAP_END *************************************/ /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( dleuro_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dleuro_map, AS_PROGRAM, 8, dlair_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_MIRROR(0x1800) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x1800) AM_RAM AM_BASE_MEMBER(dlair_state, m_videoram) @@ -438,7 +438,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( dleuro_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dleuro_io_map, AS_IO, 8, dlair_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_MIRROR(0x7c) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) AM_RANGE(0x80, 0x83) AM_MIRROR(0x7c) AM_DEVREADWRITE("sio", z80sio_ba_cd_r, z80sio_ba_cd_w) diff --git a/src/mame/drivers/dmndrby.c b/src/mame/drivers/dmndrby.c index 0b3ea0f7b94..4c57135cc93 100644 --- a/src/mame/drivers/dmndrby.c +++ b/src/mame/drivers/dmndrby.c @@ -115,7 +115,7 @@ static WRITE8_HANDLER( output_w ) // popmessage("%02x|%02x|%02x|%02x|%02x|%02x|%02x|%02x|",state->m_io_port[0],state->m_io_port[1],state->m_io_port[2],state->m_io_port[3],state->m_io_port[4],state->m_io_port[5],state->m_io_port[6],state->m_io_port[7]); } -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, dmndrby_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xc000, 0xc007) AM_READ(input_r) @@ -132,7 +132,7 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) AM_RANGE(0xd400, 0xd7ff) AM_RAM AM_BASE_MEMBER(dmndrby_state, m_dderby_vidattribs) // colours/ attrib ram ADDRESS_MAP_END -static ADDRESS_MAP_START( dderby_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dderby_sound_map, AS_PROGRAM, 8, dmndrby_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x1000) AM_RAM //??? AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ay1", ay8910_address_data_w) diff --git a/src/mame/drivers/docastle.c b/src/mame/drivers/docastle.c index ba79c061bbc..2e0a23d7b54 100644 --- a/src/mame/drivers/docastle.c +++ b/src/mame/drivers/docastle.c @@ -208,7 +208,7 @@ static WRITE8_DEVICE_HANDLER( idsoccer_adpcm_w ) } /* Memory Maps */ -static ADDRESS_MAP_START( docastle_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( docastle_map, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x97ff) AM_RAM AM_RANGE(0x9800, 0x99ff) AM_RAM AM_BASE_SIZE_MEMBER(docastle_state, m_spriteram, m_spriteram_size) @@ -219,7 +219,7 @@ static ADDRESS_MAP_START( docastle_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe000) AM_WRITE(docastle_nmitrigger_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( docastle_map2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( docastle_map2, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa008) AM_READWRITE(docastle_shared1_r, docastle_shared0_w) @@ -236,7 +236,7 @@ static ADDRESS_MAP_START( docastle_map2, AS_PROGRAM, 8 ) AM_RANGE(0xec00, 0xec00) AM_DEVWRITE("sn4", sn76496_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( docastle_map3, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( docastle_map3, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x00ff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0x8008) AM_READ(docastle_shared1_r) // ??? @@ -244,14 +244,14 @@ static ADDRESS_MAP_START( docastle_map3, AS_PROGRAM, 8 ) AM_RANGE(0xc432, 0xc435) AM_NOP // ??? ADDRESS_MAP_END -static ADDRESS_MAP_START( docastle_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( docastle_io_map, AS_IO, 8, docastle_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_NOP // goes to CRT 46505S AM_RANGE(0x02, 0x02) AM_NOP // goes to CRT 46505S ADDRESS_MAP_END -static ADDRESS_MAP_START( dorunrun_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dorunrun_map, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x37ff) AM_RAM AM_RANGE(0x3800, 0x39ff) AM_RAM AM_BASE_SIZE_MEMBER(docastle_state, m_spriteram, m_spriteram_size) @@ -263,7 +263,7 @@ static ADDRESS_MAP_START( dorunrun_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_WRITE(docastle_nmitrigger_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dorunrun_map2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dorunrun_map2, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("sn1", sn76496_w) @@ -281,7 +281,7 @@ static ADDRESS_MAP_START( dorunrun_map2, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( idsoccer_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( idsoccer_map, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x57ff) AM_RAM AM_RANGE(0x5800, 0x59ff) AM_RAM AM_BASE_SIZE_MEMBER(docastle_state, m_spriteram, m_spriteram_size) @@ -294,7 +294,7 @@ static ADDRESS_MAP_START( idsoccer_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe000) AM_WRITE(docastle_nmitrigger_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( idsoccer_map2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( idsoccer_map2, AS_PROGRAM, 8, docastle_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa008) AM_READWRITE(docastle_shared1_r, docastle_shared0_w) diff --git a/src/mame/drivers/dogfgt.c b/src/mame/drivers/dogfgt.c index 5ccc507643b..65e52269bb4 100644 --- a/src/mame/drivers/dogfgt.c +++ b/src/mame/drivers/dogfgt.c @@ -63,7 +63,7 @@ static WRITE8_HANDLER( dogfgt_soundcontrol_w ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, dogfgt_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_MEMBER(dogfgt_state, m_sharedram) AM_RANGE(0x0f80, 0x0fdf) AM_WRITEONLY AM_BASE_SIZE_MEMBER(dogfgt_state, m_spriteram, m_spriteram_size) AM_RANGE(0x1000, 0x17ff) AM_WRITE(dogfgt_bgvideoram_w) AM_BASE_MEMBER(dogfgt_state, m_bgvideoram) @@ -82,7 +82,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, dogfgt_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x2000, 0x27ff) AM_READWRITE(sharedram_r, sharedram_w) AM_RANGE(0x4000, 0x4000) AM_WRITE(sub_irqack_w) diff --git a/src/mame/drivers/dominob.c b/src/mame/drivers/dominob.c index afe1c499c36..c7fb0062364 100644 --- a/src/mame/drivers/dominob.c +++ b/src/mame/drivers/dominob.c @@ -164,7 +164,7 @@ static WRITE8_HANDLER( dominob_d008_w ) /* is there a purpose on this ? always set to 0x00 (read from 0xc47b in RAM) */ } -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, dominob_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_WRITENOP // there are some garbage writes to ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -190,7 +190,7 @@ static READ8_HANDLER( dominob_unk_port02_r ) return 0xff; } -static ADDRESS_MAP_START( portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( portmap, AS_IO, 8, dominob_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x02) AM_READ(dominob_unk_port02_r) ADDRESS_MAP_END diff --git a/src/mame/drivers/dooyong.c b/src/mame/drivers/dooyong.c index da203ca588c..2300d4a3a50 100644 --- a/src/mame/drivers/dooyong.c +++ b/src/mame/drivers/dooyong.c @@ -115,7 +115,7 @@ static MACHINE_RESET( sound_ym2203 ) ***************************************************************************/ -static ADDRESS_MAP_START( lastday_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lastday_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc007) AM_WRITE(dooyong_bgscroll8_w) @@ -134,7 +134,7 @@ static ADDRESS_MAP_START( lastday_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END -static ADDRESS_MAP_START( pollux_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pollux_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -152,7 +152,7 @@ static ADDRESS_MAP_START( pollux_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( gulfstrm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gulfstrm_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -171,7 +171,7 @@ static ADDRESS_MAP_START( gulfstrm_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( bluehawk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bluehawk_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("DSWA") @@ -191,7 +191,7 @@ static ADDRESS_MAP_START( bluehawk_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( flytiger_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flytiger_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("spriteram") @@ -210,7 +210,7 @@ static ADDRESS_MAP_START( flytiger_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM_WRITE(dooyong_txvideoram8_w) AM_BASE_MEMBER(dooyong_state, m_txvideoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( primella_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( primella_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -228,7 +228,7 @@ static ADDRESS_MAP_START( primella_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc08, 0xfc0f) AM_WRITE(dooyong_fgscroll8_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( rshark_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rshark_map, AS_PROGRAM, 16, dooyong_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) /* super-x needs this and is similar */ AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x04cfff) AM_RAM @@ -246,7 +246,7 @@ static ADDRESS_MAP_START( rshark_map, AS_PROGRAM, 16 ) AM_RANGE(0x0cc010, 0x0cc01f) AM_WRITE(dooyong_fg2scroll16_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( superx_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( superx_map, AS_PROGRAM, 16, dooyong_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0d0000, 0x0dcfff) AM_RAM @@ -264,7 +264,7 @@ static ADDRESS_MAP_START( superx_map, AS_PROGRAM, 16 ) AM_RANGE(0x08c010, 0x08c01f) AM_WRITE(dooyong_fg2scroll16_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( popbingo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( popbingo_map, AS_PROGRAM, 16, dooyong_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x04cfff) AM_RAM @@ -284,7 +284,7 @@ static ADDRESS_MAP_START( popbingo_map, AS_PROGRAM, 16 ) AM_RANGE(0x0dc000, 0x0dc01f) AM_RAM // registers of some kind? ADDRESS_MAP_END -static ADDRESS_MAP_START( lastday_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lastday_sound_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc800) AM_READ(soundlatch_r) @@ -292,7 +292,7 @@ static ADDRESS_MAP_START( lastday_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf002, 0xf003) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( pollux_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pollux_sound_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_READ(soundlatch_r) @@ -300,7 +300,7 @@ static ADDRESS_MAP_START( pollux_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf804, 0xf805) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bluehawk_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bluehawk_sound_map, AS_PROGRAM, 8, dooyong_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/dorachan.c b/src/mame/drivers/dorachan.c index 7de6cc2c735..0782f24f06a 100644 --- a/src/mame/drivers/dorachan.c +++ b/src/mame/drivers/dorachan.c @@ -143,7 +143,7 @@ static CUSTOM_INPUT( dorachan_v128_r ) * *************************************/ -static ADDRESS_MAP_START( dorachan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dorachan_map, AS_PROGRAM, 8, dorachan_state ) AM_RANGE(0x0000, 0x17ff) AM_ROM AM_RANGE(0x1800, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x23ff) AM_ROM @@ -163,7 +163,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dorachan_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dorachan_io_map, AS_IO, 8, dorachan_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_WRITENOP AM_RANGE(0x02, 0x02) AM_WRITENOP diff --git a/src/mame/drivers/dotrikun.c b/src/mame/drivers/dotrikun.c index 885b0ac338f..4277946ba10 100644 --- a/src/mame/drivers/dotrikun.c +++ b/src/mame/drivers/dotrikun.c @@ -96,13 +96,13 @@ static SCREEN_UPDATE_RGB32( dotrikun ) * *************************************/ -static ADDRESS_MAP_START( dotrikun_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dotrikun_map, AS_PROGRAM, 8, dotrikun_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x85ff) AM_RAM AM_BASE_MEMBER(dotrikun_state, m_dotrikun_bitmap) AM_RANGE(0x8600, 0x87ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, dotrikun_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("INPUTS") AM_WRITE(dotrikun_color_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/dragrace.c b/src/mame/drivers/dragrace.c index 0e0c99cb133..a712df15b9a 100644 --- a/src/mame/drivers/dragrace.c +++ b/src/mame/drivers/dragrace.c @@ -166,7 +166,7 @@ static READ8_HANDLER( dragrace_scanline_r ) } -static ADDRESS_MAP_START( dragrace_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dragrace_map, AS_PROGRAM, 8, dragrace_state ) AM_RANGE(0x0080, 0x00ff) AM_RAM AM_RANGE(0x0800, 0x083f) AM_READ(dragrace_input_r) AM_RANGE(0x0900, 0x091f) AM_WRITE(dragrace_misc_w) diff --git a/src/mame/drivers/dreamwld.c b/src/mame/drivers/dreamwld.c index 97362c1341f..1968fc2ad04 100644 --- a/src/mame/drivers/dreamwld.c +++ b/src/mame/drivers/dreamwld.c @@ -448,7 +448,7 @@ static WRITE32_HANDLER( dreamwld_palette_w ) -static ADDRESS_MAP_START( baryon_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( baryon_map, AS_PROGRAM, 32, dreamwld_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_WRITENOP AM_RANGE(0x400000, 0x401fff) AM_RAM AM_BASE_MEMBER(dreamwld_state, m_spriteram) @@ -468,7 +468,7 @@ static ADDRESS_MAP_START( baryon_map, AS_PROGRAM, 32 ) AM_RANGE(0xfe0000, 0xffffff) AM_RAM AM_BASE_MEMBER(dreamwld_state, m_workram) // work ram ADDRESS_MAP_END -static ADDRESS_MAP_START( dreamwld_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dreamwld_map, AS_PROGRAM, 32, dreamwld_state ) AM_IMPORT_FROM( baryon_map ) AM_RANGE(0xc0002c, 0xc0002f) AM_WRITE(dreamwld_6295_1_bank_w) // sfx diff --git a/src/mame/drivers/drgnmst.c b/src/mame/drivers/drgnmst.c index 18122aaa743..cffa4eef30c 100644 --- a/src/mame/drivers/drgnmst.c +++ b/src/mame/drivers/drgnmst.c @@ -192,7 +192,7 @@ static READ8_HANDLER( PIC16C5X_T0_clk_r ) /***************************** 68000 Memory Map *****************************/ -static ADDRESS_MAP_START( drgnmst_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drgnmst_main_map, AS_PROGRAM, 16, drgnmst_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x800000, 0x800001) AM_READ_PORT("P1_P2") AM_RANGE(0x800018, 0x800019) AM_READ_PORT("SYSTEM") @@ -223,7 +223,7 @@ ADDRESS_MAP_END /* $000 - 1FF PIC16C55 Internal Program ROM. Note: code is 12bits wide */ /* $000 - 01F PIC16C55 Internal Data RAM */ -static ADDRESS_MAP_START( drgnmst_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( drgnmst_sound_io_map, AS_IO, 8, drgnmst_state ) AM_RANGE(0x00, 0x00) AM_READWRITE(pic16c5x_port0_r, drgnmst_pcm_banksel_w) /* 4 bit port */ AM_RANGE(0x01, 0x01) AM_READWRITE(drgnmst_snd_command_r, drgnmst_oki_w) AM_RANGE(0x02, 0x02) AM_READWRITE(drgnmst_snd_flag_r, drgnmst_snd_control_w) diff --git a/src/mame/drivers/dribling.c b/src/mame/drivers/dribling.c index 0e770e473d0..6b8012c4a25 100644 --- a/src/mame/drivers/dribling.c +++ b/src/mame/drivers/dribling.c @@ -213,7 +213,7 @@ static const ppi8255_interface ppi8255_intf[2] = * *************************************/ -static ADDRESS_MAP_START( dribling_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dribling_map, AS_PROGRAM, 8, dribling_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_MEMBER(dribling_state, m_videoram) AM_RANGE(0x4000, 0x7fff) AM_ROM @@ -221,7 +221,7 @@ static ADDRESS_MAP_START( dribling_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, dribling_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_READWRITE(ioread, iowrite) ADDRESS_MAP_END diff --git a/src/mame/drivers/drmicro.c b/src/mame/drivers/drmicro.c index a725d263f4c..0c62a0a29b7 100644 --- a/src/mame/drivers/drmicro.c +++ b/src/mame/drivers/drmicro.c @@ -77,14 +77,14 @@ static WRITE8_HANDLER( pcm_set_w ) * *************************************/ -static ADDRESS_MAP_START( drmicro_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( drmicro_map, AS_PROGRAM, 8, drmicro_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(drmicro_videoram_w) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, drmicro_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76496_w) diff --git a/src/mame/drivers/drtomy.c b/src/mame/drivers/drtomy.c index 9d85e8c62a3..6b742a4e36c 100644 --- a/src/mame/drivers/drtomy.c +++ b/src/mame/drivers/drtomy.c @@ -160,7 +160,7 @@ static WRITE16_DEVICE_HANDLER( drtomy_okibank_w ) /* unknown bit 2 -> (data & 4) */ } -static ADDRESS_MAP_START( drtomy_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drtomy_map, AS_PROGRAM, 16, drtomy_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(drtomy_vram_fg_w) AM_BASE_MEMBER(drtomy_state, m_videoram_fg) /* Video RAM FG */ AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(drtomy_vram_bg_w) AM_BASE_MEMBER(drtomy_state, m_videoram_bg) /* Video RAM BG */ diff --git a/src/mame/drivers/drw80pkr.c b/src/mame/drivers/drw80pkr.c index 8df33b5dcbe..483369a8ce6 100644 --- a/src/mame/drivers/drw80pkr.c +++ b/src/mame/drivers/drw80pkr.c @@ -412,11 +412,11 @@ static DRIVER_INIT( drw80pkr ) * Memory map information * *************************/ -static ADDRESS_MAP_START( drw80pkr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( drw80pkr_map, AS_PROGRAM, 8, drw80pkr_state ) AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( drw80pkr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( drw80pkr_io_map, AS_IO, 8, drw80pkr_state ) AM_RANGE(0x00, 0xff) AM_READWRITE(drw80pkr_io_r, drw80pkr_io_w) AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_READWRITE(t0_r, t0_w) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READWRITE(t1_r, t1_w) diff --git a/src/mame/drivers/dunhuang.c b/src/mame/drivers/dunhuang.c index 2e137910fe8..d8e9268ec82 100644 --- a/src/mame/drivers/dunhuang.c +++ b/src/mame/drivers/dunhuang.c @@ -412,7 +412,7 @@ static WRITE8_HANDLER( dunhuang_layers_w ) Memory Maps ***************************************************************************/ -static ADDRESS_MAP_START( dunhuang_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dunhuang_map, AS_PROGRAM, 8, dunhuang_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x7fff ) AM_RAM AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK( "bank1" ) @@ -480,7 +480,7 @@ static WRITE8_HANDLER( dunhuang_82_w ) } #endif -static ADDRESS_MAP_START( dunhuang_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dunhuang_io_map, AS_IO, 8, dunhuang_state ) AM_RANGE( 0x0000, 0x0000 ) AM_WRITE( dunhuang_pos_x_w ) AM_RANGE( 0x0001, 0x0001 ) AM_WRITE( dunhuang_pos_y_w ) AM_RANGE( 0x0002, 0x0004 ) AM_WRITE( dunhuang_tile_w ) diff --git a/src/mame/drivers/dwarfd.c b/src/mame/drivers/dwarfd.c index eb129928492..0d281487724 100644 --- a/src/mame/drivers/dwarfd.c +++ b/src/mame/drivers/dwarfd.c @@ -597,12 +597,12 @@ static READ8_HANDLER(qc_b8_r) return space->machine().rand(); } -static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 8, dwarfd_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_READWRITE(dwarfd_ram_r, dwarfd_ram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, dwarfd_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -616,12 +616,12 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8 ) AM_RANGE(0xc1, 0xc1) AM_READ_PORT("DSW2") ADDRESS_MAP_END -static ADDRESS_MAP_START( qc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( qc_map, AS_PROGRAM, 8, dwarfd_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_READWRITE(dwarfd_ram_r, dwarfd_ram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( qc_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( qc_io_map, AS_IO, 8, dwarfd_state ) AM_IMPORT_FROM( io_map ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xb8, 0xb8) AM_READ(qc_b8_r) diff --git a/src/mame/drivers/dynadice.c b/src/mame/drivers/dynadice.c index 72db3926142..1a893c991b2 100644 --- a/src/mame/drivers/dynadice.c +++ b/src/mame/drivers/dynadice.c @@ -92,13 +92,13 @@ static WRITE8_DEVICE_HANDLER( sound_control_w ) } -static ADDRESS_MAP_START( dynadice_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dynadice_map, AS_PROGRAM, 8, dynadice_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(dynadice_videoram_w) AM_BASE_MEMBER(dynadice_state, m_videoram) AM_RANGE(0x4000, 0x40ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( dynadice_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dynadice_io_map, AS_IO, 8, dynadice_state ) AM_RANGE(0x50, 0x50) AM_READ_PORT("IN0") AM_RANGE(0x51, 0x51) AM_READ_PORT("IN1") AM_RANGE(0x52, 0x52) AM_READ_PORT("DSW") @@ -107,12 +107,12 @@ static ADDRESS_MAP_START( dynadice_io_map, AS_IO, 8 ) AM_RANGE(0x70, 0x77) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( dynadice_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dynadice_sound_map, AS_PROGRAM, 8, dynadice_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( dynadice_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dynadice_sound_io_map, AS_IO, 8, dynadice_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x01, 0x01) AM_WRITE(soundlatch_clear_w) diff --git a/src/mame/drivers/dynax.c b/src/mame/drivers/dynax.c index 53871f1a29d..53335bdcab1 100644 --- a/src/mame/drivers/dynax.c +++ b/src/mame/drivers/dynax.c @@ -471,26 +471,26 @@ static WRITE8_HANDLER( yarunara_layer_half2_w ) hnoridur_layer_half2_w(space, 0, data >> 1); } -static ADDRESS_MAP_START( sprtmtch_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sprtmtch_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( hnoridur_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hnoridur_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xffff ) AM_READ_BANK("bank1") AM_WRITE(hnoridur_palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcnpshnt_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcnpshnt_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x6fff ) AM_RAM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xffff ) AM_READ_BANK("bank1") AM_WRITE(hnoridur_palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( nanajign_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nanajign_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x6fff ) AM_RAM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") @@ -498,14 +498,14 @@ static ADDRESS_MAP_START( nanajign_mem_map, AS_PROGRAM, 8 ) AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( mjdialq2_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjdialq2_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0800, 0x0fff ) AM_RAM AM_RANGE( 0x1000, 0x1fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x0000, 0x7fff ) AM_ROM AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( yarunara_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( yarunara_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x6fff ) AM_RAM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") @@ -513,14 +513,14 @@ static ADDRESS_MAP_START( yarunara_mem_map, AS_PROGRAM, 8 ) AM_RANGE( 0x8000, 0x81ff ) AM_WRITE(yarunara_palette_w) // Palette or RTC ADDRESS_MAP_END -static ADDRESS_MAP_START( jantouki_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jantouki_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x6fff ) AM_RAM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( jantouki_sound_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jantouki_sound_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK("bank2") @@ -528,7 +528,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( hanamai_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hanamai_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_WRITE(dynax_extra_scrollx_w) // screen scroll X AM_RANGE( 0x20, 0x20 ) AM_WRITE(dynax_extra_scrolly_w) // screen scroll Y @@ -564,7 +564,7 @@ static ADDRESS_MAP_START( hanamai_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hnoridur_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hnoridur_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter // AM_RANGE( 0x10, 0x10 ) AM_WRITENOP // CRT Controller @@ -641,14 +641,15 @@ static READ8_HANDLER( hjingi_keyboard_1_r ) return hanamai_keyboard_1_r(space, 0) | input_port_read(space->machine(), "BET"); } -static ADDRESS_MAP_START( hjingi_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hjingi_mem_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x01ff ) AM_ROM AM_RANGE( 0x0200, 0x1fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x2000, 0x7fff ) AM_ROM AM_RANGE( 0x8000, 0xffff ) AM_READ_BANK("bank1") AM_WRITE(hnoridur_palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hjingi_io_map, AS_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) +static ADDRESS_MAP_START( hjingi_io_map, AS_IO, 8, dynax_state ) + ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter // AM_RANGE( 0x10, 0x10 ) AM_WRITENOP // CRT Controller @@ -801,7 +802,7 @@ static WRITE8_HANDLER( yarunara_blit_romregion_w ) logerror("%04x: unmapped romregion=%02X\n", cpu_get_pc(&space->device()), data); } -static ADDRESS_MAP_START( yarunara_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( yarunara_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x01 ) AM_WRITE(yarunara_input_w) // Controls AM_RANGE( 0x02, 0x03 ) AM_READ(yarunara_input_r) // @@ -834,7 +835,7 @@ ADDRESS_MAP_END // Almost identical to hnoridur -static ADDRESS_MAP_START( mcnpshnt_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcnpshnt_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter // AM_RANGE( 0x10, 0x10 ) AM_WRITENOP // CRT Controller @@ -872,7 +873,7 @@ static ADDRESS_MAP_START( mcnpshnt_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sprtmtch_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sprtmtch_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter AM_RANGE( 0x10, 0x11 ) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) // 2 x DSW @@ -900,7 +901,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( mjfriday_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjfriday_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_WRITE(dynax_blit_pen_w) // Destination Pen AM_RANGE( 0x01, 0x01 ) AM_WRITE(dynax_blit_palette01_w) // Layers Palettes (Low Bits) @@ -926,7 +927,7 @@ static ADDRESS_MAP_START( mjfriday_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nanajign_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( nanajign_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_DEVWRITE("msm", adpcm_reset_w) // MSM5205 reset AM_RANGE( 0x02, 0x02 ) AM_WRITE(adpcm_data_w) // MSM5205 data @@ -994,7 +995,7 @@ static WRITE8_HANDLER( jantouki_rombank_w ) set_led_status(space->machine(), 0, data & 0x10); // maybe } -static ADDRESS_MAP_START( jantouki_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( jantouki_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE( 0x40, 0x41 ) AM_WRITENOP // CRT Controller AM_RANGE( 0x48, 0x48 ) AM_WRITE(jantouki_rombank_w) // BANK ROM Select @@ -1052,7 +1053,7 @@ static READ8_HANDLER( jantouki_soundlatch_status_r ) return (state->m_soundlatch_full) ? 0 : 0x80; } -static ADDRESS_MAP_START( jantouki_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( jantouki_sound_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_WRITE(jantouki_sound_rombank_w) // BANK ROM Select AM_RANGE( 0x10, 0x10 ) AM_WRITE(jantouki_sound_vblank_ack_w) // VBlank IRQ Ack @@ -1092,7 +1093,7 @@ static WRITE8_HANDLER( mjelctrn_blitter_ack_w ) state->m_blitter_irq = 0; } -static ADDRESS_MAP_START( mjelctrn_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjelctrn_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_DEVWRITE("msm", adpcm_reset_w) // MSM5205 reset AM_RANGE( 0x02, 0x02 ) AM_WRITE(adpcm_data_w) // MSM5205 data @@ -1241,7 +1242,7 @@ static READ8_HANDLER( unk_r ) return 0x78; } -static ADDRESS_MAP_START( htengoku_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( htengoku_io_map, AS_IO, 8, dynax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x07 ) AM_WRITE(dynax_blitter_rev2_w) // Blitter AM_RANGE( 0x20, 0x20 ) AM_WRITE(htengoku_select_w) // Controls @@ -1539,7 +1540,7 @@ static WRITE8_HANDLER( tenkai_blit_romregion_w ) logerror("%04x: unmapped romregion=%02X\n", cpu_get_pc(&space->device()), data); } -static ADDRESS_MAP_START( tenkai_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tenkai_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x6fff ) AM_RAM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") @@ -1567,7 +1568,7 @@ static ADDRESS_MAP_START( tenkai_map, AS_PROGRAM, 8 ) AM_RANGE( 0x100e1, 0x100e7 ) AM_WRITE(tenkai_blitter_rev2_w) // Blitter (inverted scroll values) ADDRESS_MAP_END -static ADDRESS_MAP_START( tenkai_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tenkai_io_map, AS_IO, 8, dynax_state ) AM_RANGE( T90_P3, T90_P3 ) AM_READWRITE(tenkai_p3_r, tenkai_p3_w) AM_RANGE( T90_P4, T90_P4 ) AM_WRITE(tenkai_p4_w) AM_RANGE( T90_P5, T90_P5 ) AM_READ(tenkai_p5_r) @@ -1712,13 +1713,13 @@ static WRITE8_HANDLER( gekisha_8000_w ) } -static ADDRESS_MAP_START( gekisha_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gekisha_map, AS_PROGRAM, 8, dynax_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xffff ) AM_READWRITE(gekisha_8000_r, gekisha_8000_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gekisha_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gekisha_io_map, AS_IO, 8, dynax_state ) AM_RANGE( T90_P4, T90_P4 ) AM_WRITE(gekisha_p4_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/dynduke.c b/src/mame/drivers/dynduke.c index 22d82e3511b..8cbb07db621 100644 --- a/src/mame/drivers/dynduke.c +++ b/src/mame/drivers/dynduke.c @@ -72,7 +72,7 @@ Also, implemented conditional port for Coin Mode (SW1:1) /* Memory Maps */ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, dynduke_state ) AM_RANGE(0x00000, 0x06fff) AM_RAM AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x08000, 0x080ff) AM_RAM AM_BASE_MEMBER(dynduke_state, m_scroll_ram) @@ -86,7 +86,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16 ) AM_RANGE(0xa0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, dynduke_state ) AM_RANGE(0x00000, 0x05fff) AM_RAM AM_RANGE(0x06000, 0x067ff) AM_RAM_WRITE(dynduke_background_w) AM_BASE_MEMBER(dynduke_state, m_back_data) AM_RANGE(0x06800, 0x06fff) AM_RAM_WRITE(dynduke_foreground_w) AM_BASE_MEMBER(dynduke_state, m_fore_data) @@ -98,7 +98,7 @@ static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* Memory map used by DlbDyn - probably an addressing PAL is different */ -static ADDRESS_MAP_START( masterj_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( masterj_map, AS_PROGRAM, 16, dynduke_state ) AM_RANGE(0x00000, 0x06fff) AM_RAM AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x08000, 0x087ff) AM_RAM_WRITE(dynduke_text_w) AM_BASE_MEMBER(dynduke_state, m_videoram) diff --git a/src/mame/drivers/ecoinf1.c b/src/mame/drivers/ecoinf1.c index e19fc4caf6d..8aa600b538a 100644 --- a/src/mame/drivers/ecoinf1.c +++ b/src/mame/drivers/ecoinf1.c @@ -21,12 +21,12 @@ public: }; -static ADDRESS_MAP_START( older_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( older_memmap, AS_PROGRAM, 8, ecoinf1_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( older_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( older_portmap, AS_IO, 8, ecoinf1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/drivers/ecoinf2.c b/src/mame/drivers/ecoinf2.c index 6e3e40f3c83..ea2d3e9770d 100644 --- a/src/mame/drivers/ecoinf2.c +++ b/src/mame/drivers/ecoinf2.c @@ -24,12 +24,12 @@ static WRITE8_HANDLER( ox_port5c_out_w ) // Watchdog? } -static ADDRESS_MAP_START( oxo_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( oxo_memmap, AS_PROGRAM, 8, ecoinf2_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( oxo_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( oxo_portmap, AS_IO, 8, ecoinf2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x5c, 0x5c) AM_WRITE(ox_port5c_out_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/ecoinf3.c b/src/mame/drivers/ecoinf3.c index 9b18c6ad19d..f101b16d685 100644 --- a/src/mame/drivers/ecoinf3.c +++ b/src/mame/drivers/ecoinf3.c @@ -15,19 +15,19 @@ static WRITE8_HANDLER( py_port58_out_w ) // Watchdog? } -static ADDRESS_MAP_START( pyramid_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pyramid_memmap, AS_PROGRAM, 8, ecoinf3_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pyramid_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( pyramid_portmap, AS_IO, 8, ecoinf3_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x58, 0x58) AM_WRITE(py_port58_out_w) ADDRESS_MAP_END /* -static ADDRESS_MAP_START( pyramid_submap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pyramid_submap, AS_PROGRAM, 8, ecoinf3_state ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END */ diff --git a/src/mame/drivers/ecoinfr.c b/src/mame/drivers/ecoinfr.c index 886896b38bf..5b167e06ee0 100644 --- a/src/mame/drivers/ecoinfr.c +++ b/src/mame/drivers/ecoinfr.c @@ -324,7 +324,7 @@ WRITE8_HANDLER( ec_port18_out_w ) } -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, ecoinfr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM @@ -335,7 +335,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( portmap, AS_IO, 8, ecoinfr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(ec_port00_out_w) AM_READ_PORT("IN0") // Reel 1 Write AM_RANGE(0x01, 0x01) AM_WRITE(ec_port01_out_w) AM_READ_PORT("IN1") // Reel 2 Write + Reels Opto Read diff --git a/src/mame/drivers/egghunt.c b/src/mame/drivers/egghunt.c index 0231d10f7dc..3eca6093f61 100644 --- a/src/mame/drivers/egghunt.c +++ b/src/mame/drivers/egghunt.c @@ -217,7 +217,7 @@ static WRITE8_DEVICE_HANDLER( egghunt_okibanking_w ) oki->set_bank_base((data & 0x10) ? 0x40000 : 0); } -static ADDRESS_MAP_START( egghunt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( egghunt_map, AS_PROGRAM, 8, egghunt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(egghunt_atram_w) AM_BASE_MEMBER(egghunt_state, m_atram) @@ -226,7 +226,7 @@ static ADDRESS_MAP_START( egghunt_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, egghunt_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_WRITE(egghunt_vidram_bank_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(egghunt_gfx_banking_w) @@ -237,7 +237,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8 ) AM_RANGE(0x07, 0x07) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, egghunt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) AM_RANGE(0xe001, 0xe001) AM_DEVREADWRITE("oki", egghunt_okibanking_r, egghunt_okibanking_w) diff --git a/src/mame/drivers/embargo.c b/src/mame/drivers/embargo.c index 6fd3f9419a6..e2f63fe904b 100644 --- a/src/mame/drivers/embargo.c +++ b/src/mame/drivers/embargo.c @@ -152,7 +152,7 @@ static WRITE8_HANDLER( input_select_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, embargo_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1e00, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_SIZE_MEMBER(embargo_state, m_videoram, m_videoram_size) @@ -166,7 +166,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, embargo_state ) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_WRITE(port_1_w) AM_RANGE(0x02, 0x02) AM_READWRITE(dial_r, port_2_w) AM_RANGE(0x03, 0x03) AM_WRITENOP /* always 0xFE */ diff --git a/src/mame/drivers/enigma2.c b/src/mame/drivers/enigma2.c index d5ffbbb08df..9d80b89b299 100644 --- a/src/mame/drivers/enigma2.c +++ b/src/mame/drivers/enigma2.c @@ -443,7 +443,7 @@ static const ay8910_interface ay8910_config = -static ADDRESS_MAP_START( engima2_main_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( engima2_main_cpu_map, AS_PROGRAM, 8, enigma2_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_WRITENOP AM_RANGE(0x2000, 0x3fff) AM_MIRROR(0x4000) AM_RAM AM_BASE_MEMBER(enigma2_state, m_videoram) @@ -459,7 +459,7 @@ static ADDRESS_MAP_START( engima2_main_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( engima2a_main_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( engima2a_main_cpu_map, AS_PROGRAM, 8, enigma2_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_WRITENOP AM_RANGE(0x2000, 0x3fff) AM_MIRROR(0x4000) AM_RAM AM_BASE_MEMBER(enigma2_state, m_videoram) AM_RANGE(0x4000, 0x4fff) AM_ROM AM_WRITENOP @@ -468,7 +468,7 @@ static ADDRESS_MAP_START( engima2a_main_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( engima2a_main_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( engima2a_main_cpu_io_map, AS_IO, 8, enigma2_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_NOP AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") AM_WRITENOP @@ -480,7 +480,7 @@ static ADDRESS_MAP_START( engima2a_main_cpu_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( engima2_audio_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( engima2_audio_cpu_map, AS_PROGRAM, 8, enigma2_state ) AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x1000) AM_ROM AM_WRITENOP AM_RANGE(0x2000, 0x7fff) AM_NOP AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x1c00) AM_RAM diff --git a/src/mame/drivers/eolith.c b/src/mame/drivers/eolith.c index adeeaaafea0..6c852092dd9 100644 --- a/src/mame/drivers/eolith.c +++ b/src/mame/drivers/eolith.c @@ -145,7 +145,7 @@ static READ32_HANDLER( hidctch3_pen2_r ) return xpos + (ypos*168*2); } -static ADDRESS_MAP_START( eolith_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( eolith_map, AS_PROGRAM, 32, eolith_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM // fort2b wants ram here AM_RANGE(0x40000000, 0x401fffff) AM_RAM AM_RANGE(0x90000000, 0x9003ffff) AM_READWRITE(eolith_vram_r, eolith_vram_w) diff --git a/src/mame/drivers/eolith16.c b/src/mame/drivers/eolith16.c index 69a085e4e86..5770b3c840b 100644 --- a/src/mame/drivers/eolith16.c +++ b/src/mame/drivers/eolith16.c @@ -71,7 +71,7 @@ static READ16_HANDLER( vram_r ) return state->m_vram[offset + (0x10000/2) * state->m_vbuffer]; } -static ADDRESS_MAP_START( eolith16_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( eolith16_map, AS_PROGRAM, 16, eolith16_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_RANGE(0x50000000, 0x5000ffff) AM_READWRITE(vram_r, vram_w) AM_RANGE(0x90000000, 0x9000002f) AM_WRITENOP //? diff --git a/src/mame/drivers/epos.c b/src/mame/drivers/epos.c index 7dd7bf4bd5b..59976cb7321 100644 --- a/src/mame/drivers/epos.c +++ b/src/mame/drivers/epos.c @@ -57,14 +57,14 @@ static WRITE8_HANDLER( dealer_decrypt_rom ) * *************************************/ -static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8, epos_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_RAM AM_BASE_SIZE_MEMBER(epos_state, m_videoram, m_videoram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( dealer_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dealer_map, AS_PROGRAM, 8, epos_state ) AM_RANGE(0x0000, 0x5fff) AM_ROMBANK("bank1") AM_RANGE(0x6000, 0x6fff) AM_ROMBANK("bank2") AM_RANGE(0x7000, 0x7fff) AM_RAM @@ -77,7 +77,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, epos_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW") AM_WRITE(watchdog_reset_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("SYSTEM") AM_WRITE(epos_port_1_w) @@ -86,7 +86,7 @@ static ADDRESS_MAP_START( io_map, AS_IO, 8 ) AM_RANGE(0x06, 0x06) AM_DEVWRITE("aysnd", ay8910_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dealer_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dealer_io_map, AS_IO, 8, epos_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi8255", ppi8255_r, ppi8255_w) AM_RANGE(0x20, 0x24) AM_WRITE(dealer_decrypt_rom) diff --git a/src/mame/drivers/eprom.c b/src/mame/drivers/eprom.c index cd838e17123..2373196de1a 100644 --- a/src/mame/drivers/eprom.c +++ b/src/mame/drivers/eprom.c @@ -160,7 +160,7 @@ static WRITE16_HANDLER( sync_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, eprom_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("share2") @@ -185,7 +185,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( guts_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( guts_map, AS_PROGRAM, 16, eprom_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("share2") @@ -218,7 +218,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16, eprom_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x16cc00, 0x16cc01) AM_READWRITE(sync_r, sync_w) AM_SHARE("share2") AM_BASE_MEMBER(eprom_state, m_sync_data) AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/equites.c b/src/mame/drivers/equites.c index b5b81314be6..208df68ea51 100644 --- a/src/mame/drivers/equites.c +++ b/src/mame/drivers/equites.c @@ -715,7 +715,7 @@ static WRITE16_HANDLER( mcu_halt_clear_w ) -static ADDRESS_MAP_START( equites_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( equites_map, AS_PROGRAM, 16, equites_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM area is written several times (dev system?) AM_RANGE(0x040000, 0x040fff) AM_RAM AM_SHARE("nvram") // nvram is for gekisou only AM_RANGE(0x080000, 0x080fff) AM_READWRITE(equites_fg_videoram_r, equites_fg_videoram_w) // 8-bit @@ -738,7 +738,7 @@ static ADDRESS_MAP_START( equites_map, AS_PROGRAM, 16 ) AM_RANGE(0x780000, 0x780001) AM_WRITE(watchdog_reset16_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( splndrbt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( splndrbt_map, AS_PROGRAM, 16, equites_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x040fff) AM_RAM AM_BASE_MEMBER(equites_state, m_workram) // work RAM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") // joyport [2211] @@ -761,7 +761,7 @@ static ADDRESS_MAP_START( splndrbt_map, AS_PROGRAM, 16 ) AM_RANGE(0x600100, 0x6001ff) AM_RAM AM_BASE_MEMBER(equites_state, m_spriteram_2) // sprite RAM 2 (8-bit) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, equites_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ(soundlatch_r) AM_RANGE(0xc080, 0xc08d) AM_DEVWRITE("msm", msm5232_w) @@ -774,12 +774,12 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe0ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, equites_state ) AM_RANGE(0x00e0, 0x00e5) AM_WRITE(equites_8155_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, equites_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE_MEMBER(equites_state, m_mcu_ram) /* main CPU shared RAM */ ADDRESS_MAP_END diff --git a/src/mame/drivers/ertictac.c b/src/mame/drivers/ertictac.c index 16b72a698e8..141e6f0854c 100644 --- a/src/mame/drivers/ertictac.c +++ b/src/mame/drivers/ertictac.c @@ -51,7 +51,7 @@ static READ32_HANDLER( ertictac_podule_r ) return 0; } -static ADDRESS_MAP_START( ertictac_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ertictac_map, AS_PROGRAM, 32, ertictac_state ) AM_RANGE(0x00000000, 0x01ffffff) AM_READWRITE(archimedes_memc_logical_r, archimedes_memc_logical_w) AM_RANGE(0x02000000, 0x02ffffff) AM_RAM AM_BASE(&archimedes_memc_physmem) /* physical RAM - 16 MB for now, should be 512k for the A310 */ diff --git a/src/mame/drivers/esd16.c b/src/mame/drivers/esd16.c index 56c0b57b879..4516525eb76 100644 --- a/src/mame/drivers/esd16.c +++ b/src/mame/drivers/esd16.c @@ -81,7 +81,7 @@ static WRITE16_HANDLER( esd16_sound_command_w ) AFAIK) */ -static ADDRESS_MAP_START( multchmp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( multchmp_map, AS_PROGRAM, 16, esd16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x200000, 0x2005ff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) // Palette @@ -134,7 +134,7 @@ static WRITE16_HANDLER( esd_eeprom_w ) // logerror("(0x%06x) Unk EEPROM write: %04x %04x\n", cpu_get_pc(&space->device()), data, mem_mask); } -static ADDRESS_MAP_START( hedpanic_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hedpanic_map, AS_PROGRAM, 16, esd16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) // Palette @@ -162,7 +162,7 @@ ADDRESS_MAP_END /* Multi Champ Deluxe, like Head Panic but different addresses */ -static ADDRESS_MAP_START( mchampdx_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mchampdx_map, AS_PROGRAM, 16, esd16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x303fff) AM_WRITE(esd16_vram_0_w) AM_BASE_MEMBER(esd16_state, m_vram_0) // Layers @@ -190,7 +190,7 @@ ADDRESS_MAP_END /* Tang Tang & Deluxe 5 - like the others but again with different addresses */ -static ADDRESS_MAP_START( tangtang_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tangtang_map, AS_PROGRAM, 16, esd16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) // RAM AM_RANGE(0x200000, 0x2007ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(esd16_state, m_spriteram, m_spriteram_size) // Sprites @@ -233,7 +233,7 @@ static WRITE8_HANDLER( esd16_sound_rombank_w ) memory_set_bank(space->machine(), "bank1", bank); } -static ADDRESS_MAP_START( multchmp_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( multchmp_sound_map, AS_PROGRAM, 8, esd16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xf800, 0xffff) AM_RAM // RAM @@ -248,7 +248,7 @@ static READ8_HANDLER( esd16_sound_command_r ) return soundlatch_r(space, 0); } -static ADDRESS_MAP_START( multchmp_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( multchmp_sound_io_map, AS_IO, 8, esd16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3812_w) // YM3812 AM_RANGE(0x02, 0x02) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) // M6295 diff --git a/src/mame/drivers/esh.c b/src/mame/drivers/esh.c index 80abcb4b305..e5ebfb357c1 100644 --- a/src/mame/drivers/esh.c +++ b/src/mame/drivers/esh.c @@ -152,7 +152,7 @@ static WRITE8_HANDLER(nmi_line_w) /* PROGRAM MAPS */ -static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8, esh_state ) AM_RANGE(0x0000,0x3fff) AM_ROM AM_RANGE(0xe000,0xe7ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xf000,0xf3ff) AM_RAM AM_BASE_MEMBER(esh_state, m_tile_ram) @@ -161,7 +161,7 @@ ADDRESS_MAP_END /* IO MAPS */ -static ADDRESS_MAP_START( z80_0_io, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_0_io, AS_IO, 8, esh_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf0,0xf0) AM_READ_PORT("IN0") AM_RANGE(0xf1,0xf1) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/espial.c b/src/mame/drivers/espial.c index 7eb4959a4d2..57cc6db7a8a 100644 --- a/src/mame/drivers/espial.c +++ b/src/mame/drivers/espial.c @@ -109,7 +109,7 @@ static WRITE8_HANDLER( espial_master_soundlatch_w ) } -static ADDRESS_MAP_START( espial_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( espial_map, AS_PROGRAM, 8, espial_state ) AM_RANGE(0x0000, 0x4fff) AM_ROM AM_RANGE(0x5800, 0x5fff) AM_RAM AM_RANGE(0x6081, 0x6081) AM_READ_PORT("IN0") @@ -134,7 +134,7 @@ ADDRESS_MAP_END /* there are a lot of unmapped reads from all over memory as the code uses POP instructions in a delay loop */ -static ADDRESS_MAP_START( netwars_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( netwars_map, AS_PROGRAM, 8, espial_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x5800, 0x5fff) AM_RAM AM_RANGE(0x6081, 0x6081) AM_READ_PORT("IN0") @@ -155,14 +155,14 @@ static ADDRESS_MAP_START( netwars_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( espial_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( espial_sound_map, AS_PROGRAM, 8, espial_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_WRITE(espial_sound_nmi_mask_w) AM_RANGE(0x6000, 0x6000) AM_READWRITE(soundlatch_r, soundlatch2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( espial_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( espial_sound_io_map, AS_IO, 8, espial_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/esripsys.c b/src/mame/drivers/esripsys.c index 5db99ea3896..5c0461c51db 100644 --- a/src/mame/drivers/esripsys.c +++ b/src/mame/drivers/esripsys.c @@ -608,7 +608,7 @@ static WRITE8_HANDLER( volume_dac_w ) * *************************************/ -static ADDRESS_MAP_START( game_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( game_cpu_map, AS_PROGRAM, 8, esripsys_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x4000, 0x42ff) AM_RAM AM_BASE_MEMBER(esripsys_state, m_pal_ram) AM_RANGE(0x4300, 0x4300) AM_WRITE(esripsys_bg_intensity_w) @@ -623,7 +623,7 @@ static ADDRESS_MAP_START( game_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( frame_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( frame_cpu_map, AS_PROGRAM, 8, esripsys_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x4000, 0x4fff) AM_READWRITE(fdt_r, fdt_w) AM_RANGE(0x6000, 0x6000) AM_READWRITE(f_status_r, f_status_w) @@ -632,7 +632,7 @@ static ADDRESS_MAP_START( frame_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8, esripsys_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0fff) AM_RAM /* Not installed on later PCBs */ AM_RANGE(0x2008, 0x2009) AM_READWRITE(tms5220_r, tms5220_w) @@ -649,7 +649,7 @@ static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( video_cpu_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( video_cpu_map, AS_PROGRAM, 64, esripsys_state ) AM_RANGE(0x000, 0x1ff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/ettrivia.c b/src/mame/drivers/ettrivia.c index 92794042942..32b1a4cfe63 100644 --- a/src/mame/drivers/ettrivia.c +++ b/src/mame/drivers/ettrivia.c @@ -131,7 +131,7 @@ static WRITE8_HANDLER( b800_w ) state->m_b800_prev = data; } -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, ettrivia_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x9000, 0x9000) AM_WRITE(ettrivia_control_w) @@ -143,7 +143,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(ettrivia_bg_w) AM_BASE_MEMBER(ettrivia_state, m_bg_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, ettrivia_state ) AM_RANGE(0x0000, 0xffff) AM_READ(ettrivia_question_r) ADDRESS_MAP_END diff --git a/src/mame/drivers/exedexes.c b/src/mame/drivers/exedexes.c index 5707f5c8379..fa5e16c019b 100644 --- a/src/mame/drivers/exedexes.c +++ b/src/mame/drivers/exedexes.c @@ -28,7 +28,7 @@ static TIMER_DEVICE_CALLBACK( exedexes_scanline ) } -static ADDRESS_MAP_START( exedexes_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( exedexes_map, AS_PROGRAM, 8, exedexes_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P1") @@ -50,7 +50,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, exedexes_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/exerion.c b/src/mame/drivers/exerion.c index 27f945d6b9a..cb7a1d9efee 100644 --- a/src/mame/drivers/exerion.c +++ b/src/mame/drivers/exerion.c @@ -191,7 +191,7 @@ static READ8_HANDLER( exerion_protection_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, exerion_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6008, 0x600b) AM_READ(exerion_protection_r) AM_RANGE(0x6000, 0x67ff) AM_RAM AM_BASE_MEMBER(exerion_state, m_main_ram) @@ -216,7 +216,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, exerion_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/exidy.c b/src/mame/drivers/exidy.c index 3e019b8ccad..308a5ac4312 100644 --- a/src/mame/drivers/exidy.c +++ b/src/mame/drivers/exidy.c @@ -201,7 +201,7 @@ static WRITE8_HANDLER( fax_bank_select_w ) * *************************************/ -static ADDRESS_MAP_START( exidy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( exidy_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM AM_BASE_MEMBER(exidy_state, m_videoram) AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x003f) AM_WRITEONLY AM_BASE_MEMBER(exidy_state, m_sprite1_xpos) @@ -218,7 +218,7 @@ static ADDRESS_MAP_START( exidy_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sidetrac_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sidetrac_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x0800, 0x3fff) AM_ROM AM_RANGE(0x4800, 0x4fff) AM_ROM AM_BASE_MEMBER(exidy_state, m_characterram) AM_RANGE(0x5200, 0x5200) AM_WRITE(targ_audio_1_w) @@ -228,7 +228,7 @@ static ADDRESS_MAP_START( sidetrac_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( targ_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( targ_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x0800, 0x3fff) AM_ROM AM_RANGE(0x4800, 0x4fff) AM_RAM AM_BASE_MEMBER(exidy_state, m_characterram) AM_RANGE(0x5200, 0x5200) AM_WRITE(targ_audio_1_w) @@ -238,7 +238,7 @@ static ADDRESS_MAP_START( targ_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spectar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spectar_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x0800, 0x3fff) AM_ROM AM_RANGE(0x4800, 0x4fff) AM_RAM AM_BASE_MEMBER(exidy_state, m_characterram) AM_RANGE(0x5200, 0x5200) AM_WRITE(targ_audio_1_w) @@ -248,7 +248,7 @@ static ADDRESS_MAP_START( spectar_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rallys_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rallys_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0800, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM AM_BASE_MEMBER(exidy_state, m_videoram) @@ -270,7 +270,7 @@ static ADDRESS_MAP_START( rallys_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( venture_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( venture_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x4800, 0x4fff) AM_RAM AM_BASE_MEMBER(exidy_state, m_characterram) AM_RANGE(0x5200, 0x520f) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x8000, 0xffff) AM_ROM @@ -278,7 +278,7 @@ static ADDRESS_MAP_START( venture_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pepper2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pepper2_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x4800, 0x4fff) AM_NOP AM_RANGE(0x5200, 0x520f) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x6000, 0x6fff) AM_RAM AM_BASE_MEMBER(exidy_state, m_characterram) @@ -287,7 +287,7 @@ static ADDRESS_MAP_START( pepper2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fax_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fax_map, AS_PROGRAM, 8, exidy_state ) AM_RANGE(0x0400, 0x07ff) AM_RAM AM_RANGE(0x1a00, 0x1a00) AM_READ_PORT("IN4") AM_RANGE(0x1c00, 0x1c00) AM_READ_PORT("IN3") diff --git a/src/mame/drivers/exidy440.c b/src/mame/drivers/exidy440.c index 53ff52b3c37..32b56c7a41c 100644 --- a/src/mame/drivers/exidy440.c +++ b/src/mame/drivers/exidy440.c @@ -472,7 +472,7 @@ static MACHINE_RESET( exidy440 ) * *************************************/ -static ADDRESS_MAP_START( exidy440_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( exidy440_map, AS_PROGRAM, 8, exidy440_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(exidy440_state, m_imageram) AM_RANGE(0x2000, 0x209f) AM_RAM_WRITE(exidy440_spriteram_w) AM_BASE_MEMBER(exidy440_state, m_spriteram) AM_RANGE(0x20a0, 0x29ff) AM_RAM diff --git a/src/mame/drivers/expro02.c b/src/mame/drivers/expro02.c index 8fad27f572c..f570c9ef785 100644 --- a/src/mame/drivers/expro02.c +++ b/src/mame/drivers/expro02.c @@ -368,7 +368,7 @@ static WRITE16_HANDLER(galsnew_vram_1_bank_w) * *************************************/ -static ADDRESS_MAP_START( galsnew_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galsnew_map, AS_PROGRAM, 16, expro02_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // main program AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_REGION("user2",0) // other data AM_RANGE(0x100000, 0x3fffff) AM_ROM AM_REGION("user1",0) // main data @@ -411,7 +411,7 @@ ADDRESS_MAP_END // bigger rom space, OKI commands moved // no CALC mcu -static ADDRESS_MAP_START( fantasia_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fantasia_map, AS_PROGRAM, 16, expro02_state ) AM_RANGE(0x000000, 0x4fffff) AM_ROM AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_BASE_MEMBER(expro02_state, m_galsnew_bg_pixram) AM_RANGE(0x520000, 0x53ffff) AM_RAM AM_BASE_MEMBER(expro02_state, m_galsnew_fg_pixram) diff --git a/src/mame/drivers/exprraid.c b/src/mame/drivers/exprraid.c index 4c1798d3e5e..3909793b7f3 100644 --- a/src/mame/drivers/exprraid.c +++ b/src/mame/drivers/exprraid.c @@ -243,7 +243,7 @@ static READ8_HANDLER( vblank_r ) return input_port_read(space->machine(), "IN0"); } -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, exprraid_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_BASE_MEMBER(exprraid_state, m_main_ram) AM_RANGE(0x0600, 0x07ff) AM_RAM AM_BASE_SIZE_MEMBER(exprraid_state, m_spriteram, m_spriteram_size) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(exprraid_videoram_w) AM_BASE_MEMBER(exprraid_state, m_videoram) @@ -266,11 +266,11 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( master_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( master_io_map, AS_IO, 8, exprraid_state ) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN0") ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, exprraid_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ym2", ym3526_r, ym3526_w) diff --git a/src/mame/drivers/exterm.c b/src/mame/drivers/exterm.c index 63bd148df2c..bedfd593906 100644 --- a/src/mame/drivers/exterm.c +++ b/src/mame/drivers/exterm.c @@ -279,7 +279,7 @@ static WRITE8_HANDLER( sound_control_w ) * *************************************/ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16, exterm_state ) AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE(tms34010_io_register_r, tms34010_io_register_w) AM_RANGE(0x00000000, 0x000fffff) AM_MIRROR(0xfc700000) AM_RAM AM_BASE_MEMBER(exterm_state, m_master_videoram) AM_RANGE(0x00800000, 0x00bfffff) AM_MIRROR(0xfc400000) AM_RAM @@ -296,7 +296,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, exterm_state ) AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE(tms34010_io_register_r, tms34010_io_register_w) AM_RANGE(0x00000000, 0x000fffff) AM_MIRROR(0xfbf00000) AM_RAM AM_BASE_MEMBER(exterm_state, m_slave_videoram) AM_RANGE(0x04000000, 0x047fffff) AM_MIRROR(0xfb800000) AM_RAM @@ -310,7 +310,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_master_map, AS_PROGRAM, 8, exterm_state ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_RANGE(0x4000, 0x5fff) AM_DEVWRITE("ymsnd", ym2151_data_latch_w) AM_RANGE(0x6000, 0x67ff) AM_WRITE(sound_nmi_rate_w) @@ -322,7 +322,7 @@ static ADDRESS_MAP_START( sound_master_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_slave_map, AS_PROGRAM, 8, exterm_state ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x3800) AM_RAM AM_RANGE(0x4000, 0x5fff) AM_READ(sound_slave_latch_r) AM_RANGE(0x8000, 0xbfff) AM_DEVWRITE("dac", sound_slave_dac_w) diff --git a/src/mame/drivers/extrema.c b/src/mame/drivers/extrema.c index eff7f408c22..e6984f6809c 100644 --- a/src/mame/drivers/extrema.c +++ b/src/mame/drivers/extrema.c @@ -25,12 +25,12 @@ public: -static ADDRESS_MAP_START( extrema_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( extrema_map, AS_PROGRAM, 8, extrema_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( extrema_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( extrema_portmap, AS_IO, 8, extrema_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/drivers/exzisus.c b/src/mame/drivers/exzisus.c index 8e32da4df7e..f5aa0197362 100644 --- a/src/mame/drivers/exzisus.c +++ b/src/mame/drivers/exzisus.c @@ -140,7 +140,7 @@ static DRIVER_INIT( exzisus ) **************************************************************************/ -static ADDRESS_MAP_START( cpua_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpua_map, AS_PROGRAM, 8, exzisus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xc5ff) AM_READWRITE(exzisus_objectram_1_r, exzisus_objectram_1_w) AM_BASE_MEMBER(exzisus_state, m_objectram1) AM_SIZE_MEMBER(exzisus_state, m_objectram_size1) @@ -151,7 +151,7 @@ static ADDRESS_MAP_START( cpua_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_READWRITE(exzisus_sharedram_ab_r, exzisus_sharedram_ab_w) AM_BASE_MEMBER(exzisus_state, m_sharedram_ab) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpub_map, AS_PROGRAM, 8, exzisus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc5ff) AM_READWRITE(exzisus_objectram_0_r, exzisus_objectram_0_w) AM_BASE_MEMBER(exzisus_state, m_objectram0) AM_SIZE_MEMBER(exzisus_state, m_objectram_size0) @@ -170,7 +170,7 @@ static ADDRESS_MAP_START( cpub_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_READWRITE(exzisus_sharedram_ab_r, exzisus_sharedram_ab_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpuc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpuc_map, AS_PROGRAM, 8, exzisus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x85ff) AM_READWRITE(exzisus_objectram_1_r, exzisus_objectram_1_w) AM_RANGE(0x8600, 0x9fff) AM_READWRITE(exzisus_videoram_1_r, exzisus_videoram_1_w) @@ -178,7 +178,7 @@ static ADDRESS_MAP_START( cpuc_map, AS_PROGRAM, 8 ) AM_RANGE(0xb000, 0xbfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, exzisus_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/f-32.c b/src/mame/drivers/f-32.c index fe57d52c475..c1e67767119 100644 --- a/src/mame/drivers/f-32.c +++ b/src/mame/drivers/f-32.c @@ -52,7 +52,7 @@ static SCREEN_UPDATE_IND16( mosaicf2 ) -static ADDRESS_MAP_START( common_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( common_map, AS_PROGRAM, 32, mosaicf2_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_BASE_MEMBER(mosaicf2_state, m_videoram) AM_RANGE(0x80000000, 0x80ffffff) AM_ROM AM_REGION("user2",0) @@ -71,7 +71,7 @@ static READ32_HANDLER( f32_input_port_1_r ) } -static ADDRESS_MAP_START( mosaicf2_io, AS_IO, 32 ) +static ADDRESS_MAP_START( mosaicf2_io, AS_IO, 32, mosaicf2_state ) AM_RANGE(0x4000, 0x4003) AM_DEVREAD8_MODERN("oki", okim6295_device, read, 0x000000ff) AM_RANGE(0x4810, 0x4813) AM_DEVREAD8("ymsnd", ym2151_status_port_r, 0x000000ff) AM_RANGE(0x5000, 0x5003) AM_READ_PORT("P1") diff --git a/src/mame/drivers/f1gp.c b/src/mame/drivers/f1gp.c index 11e8d127abd..1e719621783 100644 --- a/src/mame/drivers/f1gp.c +++ b/src/mame/drivers/f1gp.c @@ -92,7 +92,7 @@ static WRITE8_HANDLER( pending_command_clear_w ) } -static ADDRESS_MAP_START( f1gp_cpu1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gp_cpu1_map, AS_PROGRAM, 16, f1gp_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x2fffff) AM_READ(extrarom_r) AM_RANGE(0xa00000, 0xbfffff) AM_READ(extrarom2_r) @@ -121,7 +121,7 @@ static ADDRESS_MAP_START( f1gp_cpu1_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff050, 0xfff051) AM_READ_PORT("DSW3") ADDRESS_MAP_END -static ADDRESS_MAP_START( f1gp2_cpu1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gp2_cpu1_map, AS_PROGRAM, 16, f1gp_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x2fffff) AM_READ(extrarom_r) AM_RANGE(0xa00000, 0xa07fff) AM_RAM AM_BASE_MEMBER(f1gp_state, m_sprcgram) // SPR-1 CG RAM + SPR-2 CG RAM @@ -141,19 +141,19 @@ static ADDRESS_MAP_START( f1gp2_cpu1_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff044, 0xfff047) AM_WRITE(f1gp_fgscroll_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( f1gp_cpu2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gp_cpu2_map, AS_PROGRAM, 16, f1gp_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0xff8000, 0xffbfff) AM_RAM AM_RANGE(0xffc000, 0xffcfff) AM_READWRITE(sharedram_r, sharedram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, f1gp_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, f1gp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(f1gp_sh_bankswitch_w) // f1gp AM_RANGE(0x0c, 0x0c) AM_WRITE(f1gp_sh_bankswitch_w) // f1gp2 @@ -186,7 +186,7 @@ static WRITE16_HANDLER( f1gpb_misc_w ) */ } -static ADDRESS_MAP_START( f1gpb_cpu1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpb_cpu1_map, AS_PROGRAM, 16, f1gp_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x2fffff) AM_READ(extrarom_r) AM_RANGE(0xa00000, 0xbfffff) AM_READ(extrarom2_r) @@ -218,7 +218,7 @@ static ADDRESS_MAP_START( f1gpb_cpu1_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff800, 0xfff809) AM_RAM AM_BASE_MEMBER(f1gp_state, m_rozregs) ADDRESS_MAP_END -static ADDRESS_MAP_START( f1gpb_cpu2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( f1gpb_cpu2_map, AS_PROGRAM, 16, f1gp_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0xff8000, 0xffbfff) AM_RAM AM_RANGE(0xffc000, 0xffcfff) AM_READWRITE(sharedram_r, sharedram_w) diff --git a/src/mame/drivers/famibox.c b/src/mame/drivers/famibox.c index 4e06ba181c2..9887551fc6b 100644 --- a/src/mame/drivers/famibox.c +++ b/src/mame/drivers/famibox.c @@ -372,7 +372,7 @@ static WRITE8_HANDLER( famibox_system_w ) *******************************************************/ -static ADDRESS_MAP_START( famibox_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( famibox_map, AS_PROGRAM, 8, famibox_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu", ppu2c0x_device, read, write) AM_RANGE(0x4000, 0x4013) AM_DEVREADWRITE("nes", nes_psg_r, nes_psg_w) /* PSG primary registers */ diff --git a/src/mame/drivers/fantland.c b/src/mame/drivers/fantland.c index 2f03670e174..d9c718ce72e 100644 --- a/src/mame/drivers/fantland.c +++ b/src/mame/drivers/fantland.c @@ -125,7 +125,7 @@ static WRITE16_HANDLER( spriteram2_16_w ) spriteram_2[2 * offset + 1] = data >> 8; } -static ADDRESS_MAP_START( fantland_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fantland_map, AS_PROGRAM, 16, fantland_state ) AM_RANGE( 0x00000, 0x07fff ) AM_RAM AM_RANGE( 0x08000, 0x7ffff ) AM_ROM @@ -145,7 +145,7 @@ ADDRESS_MAP_END Galaxy Gunners ***************************************************************************/ -static ADDRESS_MAP_START( galaxygn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaxygn_map, AS_PROGRAM, 8, fantland_state ) AM_RANGE( 0x00000, 0x07fff ) AM_RAM AM_RANGE( 0x10000, 0x2ffff ) AM_ROM @@ -239,7 +239,7 @@ static READ8_HANDLER( borntofi_inputs_r ) return state->m_input_ret[offset]; } -static ADDRESS_MAP_START( borntofi_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( borntofi_map, AS_PROGRAM, 8, fantland_state ) AM_RANGE( 0x00000, 0x07fff ) AM_RAM AM_RANGE( 0x10000, 0x2ffff ) AM_ROM @@ -266,7 +266,7 @@ ADDRESS_MAP_END Wheels Runner ***************************************************************************/ -static ADDRESS_MAP_START( wheelrun_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wheelrun_map, AS_PROGRAM, 8, fantland_state ) AM_RANGE(0x00000, 0x07fff) AM_RAM AM_RANGE(0x30000, 0x3ffff) AM_ROM @@ -293,19 +293,19 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( fantland_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fantland_sound_map, AS_PROGRAM, 8, fantland_state ) AM_RANGE( 0x00000, 0x01fff ) AM_RAM AM_RANGE( 0x80000, 0x9ffff ) AM_ROM AM_RANGE( 0xc0000, 0xfffff ) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( fantland_sound_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( fantland_sound_iomap, AS_IO, 8, fantland_state ) AM_RANGE( 0x0080, 0x0080 ) AM_READ( soundlatch_r ) AM_RANGE( 0x0100, 0x0101 ) AM_DEVREADWRITE( "ymsnd", ym2151_r, ym2151_w ) AM_RANGE( 0x0180, 0x0180 ) AM_DEVWRITE( "dac", dac_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( galaxygn_sound_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( galaxygn_sound_iomap, AS_IO, 8, fantland_state ) AM_RANGE( 0x0080, 0x0080 ) AM_READ( soundlatch_r ) AM_RANGE( 0x0100, 0x0101 ) AM_DEVREADWRITE( "ymsnd", ym2151_r, ym2151_w ) ADDRESS_MAP_END @@ -407,7 +407,7 @@ static void borntofi_adpcm_int_2(device_t *device) { borntofi_adpcm_int(device, static void borntofi_adpcm_int_3(device_t *device) { borntofi_adpcm_int(device, 3); } -static ADDRESS_MAP_START( borntofi_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( borntofi_sound_map, AS_PROGRAM, 8, fantland_state ) AM_RANGE( 0x00000, 0x003ff ) AM_RAM AM_RANGE( 0x04000, 0x04000 ) AM_READ(soundlatch_r) AM_RANGE( 0x04000, 0x0401f ) AM_WRITE(borntofi_msm5205_w) @@ -420,7 +420,7 @@ ADDRESS_MAP_END Wheels Runner ***************************************************************************/ -static ADDRESS_MAP_START( wheelrun_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wheelrun_sound_map, AS_PROGRAM, 8, fantland_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym3526_r, ym3526_w ) diff --git a/src/mame/drivers/fastfred.c b/src/mame/drivers/fastfred.c index 70edec9ada7..44e405c7b0a 100644 --- a/src/mame/drivers/fastfred.c +++ b/src/mame/drivers/fastfred.c @@ -180,7 +180,7 @@ static WRITE8_HANDLER( sound_nmi_mask_w ) state->m_sound_nmi_mask = data & 1; } -static ADDRESS_MAP_START( fastfred_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fastfred_map, AS_PROGRAM, 8, fastfred_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd3ff) AM_MIRROR(0x400) AM_RAM_WRITE(fastfred_videoram_w) AM_BASE_MEMBER(fastfred_state, m_videoram) @@ -203,7 +203,7 @@ static ADDRESS_MAP_START( fastfred_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jumpcoas_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jumpcoas_map, AS_PROGRAM, 8, fastfred_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd03f) AM_RAM_WRITE(fastfred_attributes_w) AM_BASE_MEMBER(fastfred_state, m_attributesram) @@ -230,7 +230,7 @@ static ADDRESS_MAP_START( jumpcoas_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( imago_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( imago_map, AS_PROGRAM, 8, fastfred_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x1fff) AM_READ(imago_sprites_offset_r) AM_RANGE(0x2000, 0x6fff) AM_ROM @@ -257,7 +257,7 @@ static ADDRESS_MAP_START( imago_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf800) AM_READNOP AM_WRITE(soundlatch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fastfred_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READWRITE(soundlatch_r, sound_nmi_mask_w) diff --git a/src/mame/drivers/fastlane.c b/src/mame/drivers/fastlane.c index 4a431eb002a..7eccee978b4 100644 --- a/src/mame/drivers/fastlane.c +++ b/src/mame/drivers/fastlane.c @@ -69,7 +69,7 @@ static WRITE8_DEVICE_HANDLER( fastlane_k007232_w ) } -static ADDRESS_MAP_START( fastlane_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fastlane_map, AS_PROGRAM, 8, fastlane_state ) AM_RANGE(0x0000, 0x005f) AM_RAM_WRITE(k007121_registers_w) AM_BASE_MEMBER(fastlane_state, m_k007121_regs) /* 007121 registers */ AM_RANGE(0x0800, 0x0800) AM_READ_PORT("DSW3") AM_RANGE(0x0801, 0x0801) AM_READ_PORT("P2") diff --git a/src/mame/drivers/fcombat.c b/src/mame/drivers/fcombat.c index 46ac4f4299f..e10865dda9c 100644 --- a/src/mame/drivers/fcombat.c +++ b/src/mame/drivers/fcombat.c @@ -116,7 +116,7 @@ static WRITE8_HANDLER(ee00_w) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, fcombat_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_BASE_SIZE_MEMBER(fcombat_state, m_videoram, m_videoram_size) @@ -137,7 +137,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, fcombat_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/fcrash.c b/src/mame/drivers/fcrash.c index 27b5b329cc4..2270799b633 100644 --- a/src/mame/drivers/fcrash.c +++ b/src/mame/drivers/fcrash.c @@ -379,7 +379,7 @@ static SCREEN_UPDATE_IND16( kodb ) } -static ADDRESS_MAP_START( fcrash_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fcrash_map, AS_PROGRAM, 16, cps_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x800030, 0x800031) AM_WRITE(cps1_coinctrl_w) AM_RANGE(0x800100, 0x80013f) AM_RAM AM_BASE_MEMBER(cps_state, m_cps_a_regs) /* CPS-A custom */ @@ -392,7 +392,7 @@ static ADDRESS_MAP_START( fcrash_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, cps_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xd000, 0xd7ff) AM_RAM @@ -405,7 +405,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( kodb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kodb_map, AS_PROGRAM, 16, cps_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x800000, 0x800007) AM_READ_PORT("IN1") /* Player input ports */ /* forgottn, willow, cawing, nemo, varth read from 800010. Probably debug input leftover from development */ diff --git a/src/mame/drivers/feversoc.c b/src/mame/drivers/feversoc.c index a83bc6f7ba5..510e61cc8f8 100644 --- a/src/mame/drivers/feversoc.c +++ b/src/mame/drivers/feversoc.c @@ -160,7 +160,7 @@ static WRITE32_HANDLER( output_w ) } } -static ADDRESS_MAP_START( feversoc_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( feversoc_map, AS_PROGRAM, 32, feversoc_state ) AM_RANGE(0x00000000, 0x0003ffff) AM_ROM AM_RANGE(0x02000000, 0x0203dfff) AM_RAM //work ram AM_RANGE(0x0203e000, 0x0203ffff) AM_RAM AM_BASE_MEMBER(feversoc_state, m_spriteram) diff --git a/src/mame/drivers/fgoal.c b/src/mame/drivers/fgoal.c index 57a3a74aedc..82ebe03dcff 100644 --- a/src/mame/drivers/fgoal.c +++ b/src/mame/drivers/fgoal.c @@ -205,7 +205,7 @@ static WRITE8_HANDLER( fgoal_sound2_w ) } -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, fgoal_state ) AM_RANGE(0x0000, 0x00ef) AM_RAM diff --git a/src/mame/drivers/finalizr.c b/src/mame/drivers/finalizr.c index bf4d795e944..eafa7c7b296 100644 --- a/src/mame/drivers/finalizr.c +++ b/src/mame/drivers/finalizr.c @@ -97,7 +97,7 @@ static WRITE8_HANDLER( i8039_T0_w ) */ } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, finalizr_state ) AM_RANGE(0x0001, 0x0001) AM_WRITEONLY AM_BASE_MEMBER(finalizr_state, m_scroll) AM_RANGE(0x0003, 0x0003) AM_WRITE(finalizr_videoctrl_w) AM_RANGE(0x0004, 0x0004) AM_WRITE(finalizr_flipscreen_w) @@ -125,11 +125,11 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, finalizr_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, finalizr_state ) AM_RANGE(0x00, 0xff) AM_READ(soundlatch_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_w) diff --git a/src/mame/drivers/firebeat.c b/src/mame/drivers/firebeat.c index ed264262236..1ad397475ca 100644 --- a/src/mame/drivers/firebeat.c +++ b/src/mame/drivers/firebeat.c @@ -1749,7 +1749,7 @@ static MACHINE_START( firebeat ) state->m_flash[2] = machine.device<fujitsu_29f016a_device>("flash2"); } -static ADDRESS_MAP_START( firebeat_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( firebeat_map, AS_PROGRAM, 32, firebeat_state ) AM_RANGE(0x00000000, 0x01ffffff) AM_RAM AM_BASE_MEMBER(firebeat_state, m_work_ram) AM_RANGE(0x70000000, 0x70000fff) AM_READWRITE(midi_uart_r, midi_uart_w) AM_RANGE(0x70006000, 0x70006003) AM_WRITE(extend_board_irq_w) @@ -1772,7 +1772,7 @@ static ADDRESS_MAP_START( firebeat_map, AS_PROGRAM, 32 ) AM_RANGE(0x7ff80000, 0x7fffffff) AM_ROM AM_REGION("user1", 0) /* System BIOS */ ADDRESS_MAP_END -static ADDRESS_MAP_START( spu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spu_map, AS_PROGRAM, 16, firebeat_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAM AM_RANGE(0x340000, 0x34000f) AM_READ(spu_unk_r) diff --git a/src/mame/drivers/firefox.c b/src/mame/drivers/firefox.c index 3fc8db3b5b9..7722147c0c6 100644 --- a/src/mame/drivers/firefox.c +++ b/src/mame/drivers/firefox.c @@ -488,7 +488,7 @@ static MACHINE_START( firefox ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, firefox_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(tileram_w) AM_BASE_MEMBER(firefox_state, m_tileram) AM_RANGE(0x2000, 0x27ff) AM_RAM AM_BASE_MEMBER(firefox_state, m_spriteram) @@ -534,7 +534,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, firefox_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x087f) AM_MIRROR(0x0700) AM_RAM /* RIOT ram */ AM_RANGE(0x0880, 0x089f) AM_MIRROR(0x07e0) AM_DEVREADWRITE("riot",riot6532_r, riot6532_w) diff --git a/src/mame/drivers/firetrap.c b/src/mame/drivers/firetrap.c index ab2d99f5f8d..6455990f560 100644 --- a/src/mame/drivers/firetrap.c +++ b/src/mame/drivers/firetrap.c @@ -348,7 +348,7 @@ static WRITE8_HANDLER( flip_screen_w ) } -static ADDRESS_MAP_START( firetrap_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( firetrap_map, AS_PROGRAM, 8, firetrap_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -374,7 +374,7 @@ static ADDRESS_MAP_START( firetrap_map, AS_PROGRAM, 8 ) AM_RANGE(0xf016, 0xf016) AM_READ(firetrap_8751_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( firetrap_bootleg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( firetrap_bootleg_map, AS_PROGRAM, 8, firetrap_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -401,7 +401,7 @@ static ADDRESS_MAP_START( firetrap_bootleg_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf8ff) AM_ROM /* extra ROM in the bootleg with unprotection code */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, firetrap_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ymsnd", ym3526_w) AM_RANGE(0x2000, 0x2000) AM_WRITE(firetrap_adpcm_data_w) /* ADPCM data for the MSM5205 chip */ diff --git a/src/mame/drivers/firetrk.c b/src/mame/drivers/firetrk.c index d8d4e5de233..93be3eefe74 100644 --- a/src/mame/drivers/firetrk.c +++ b/src/mame/drivers/firetrk.c @@ -330,7 +330,7 @@ static WRITE8_HANDLER( crash_reset_w ) } -static ADDRESS_MAP_START( firetrk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( firetrk_map, AS_PROGRAM, 8, firetrk_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM AM_BASE_MEMBER(firetrk_state, m_alpha_num_ram) AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0700) AM_RAM AM_BASE_MEMBER(firetrk_state, m_playfield_ram) @@ -356,7 +356,7 @@ static ADDRESS_MAP_START( firetrk_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( superbug_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( superbug_map, AS_PROGRAM, 8, firetrk_state ) ADDRESS_MAP_GLOBAL_MASK(0x1fff) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_RANGE(0x0100, 0x0100) AM_MIRROR(0x001f) AM_WRITEONLY AM_BASE_MEMBER(firetrk_state, m_scroll_y) @@ -380,7 +380,7 @@ static ADDRESS_MAP_START( superbug_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( montecar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( montecar_map, AS_PROGRAM, 8, firetrk_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM AM_BASE_MEMBER(firetrk_state, m_alpha_num_ram) AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0700) AM_RAM AM_BASE_MEMBER(firetrk_state, m_playfield_ram) diff --git a/src/mame/drivers/fitfight.c b/src/mame/drivers/fitfight.c index 23dd1b03993..72ef04af4ff 100644 --- a/src/mame/drivers/fitfight.c +++ b/src/mame/drivers/fitfight.c @@ -123,7 +123,7 @@ static WRITE16_HANDLER(fitfight_700000_w) state->m_fof_700000_data = data; } -static ADDRESS_MAP_START( fitfight_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fitfight_main_map, AS_PROGRAM, 16, fitfight_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_WRITEONLY AM_BASE_MEMBER(fitfight_state, m_fof_100000) @@ -175,7 +175,7 @@ static ADDRESS_MAP_START( fitfight_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xe00000, 0xe0ffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( bbprot_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bbprot_main_map, AS_PROGRAM, 16, fitfight_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_WRITEONLY AM_BASE_MEMBER(fitfight_state, m_fof_100000) @@ -209,7 +209,7 @@ ADDRESS_MAP_END /* 7810 (?) sound cpu */ -static ADDRESS_MAP_START( snd_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( snd_mem, AS_PROGRAM, 8, fitfight_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") /* ??? External ROM */ AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -249,7 +249,7 @@ static WRITE8_HANDLER(snd_portc_w) //mame_printf_debug("PC W %x @%x\n",data,cpu_get_pc(&space->device())); } -static ADDRESS_MAP_START( snd_io, AS_IO, 8 ) +static ADDRESS_MAP_START( snd_io, AS_IO, 8, fitfight_state ) AM_RANGE(UPD7810_PORTA, UPD7810_PORTA) AM_READ(snd_porta_r) AM_WRITE(snd_porta_w) AM_RANGE(UPD7810_PORTB, UPD7810_PORTB) AM_READ(snd_portb_r) AM_WRITE(snd_portb_w) AM_RANGE(UPD7810_PORTC, UPD7810_PORTC) AM_READ(snd_portc_r) AM_WRITE(snd_portc_w) diff --git a/src/mame/drivers/flkatck.c b/src/mame/drivers/flkatck.c index 54623c5ec5d..32b51c5ba35 100644 --- a/src/mame/drivers/flkatck.c +++ b/src/mame/drivers/flkatck.c @@ -95,7 +95,7 @@ static WRITE8_HANDLER( multiply_w ) } -static ADDRESS_MAP_START( flkatck_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flkatck_map, AS_PROGRAM, 8, flkatck_state ) AM_RANGE(0x0000, 0x0007) AM_RAM_WRITE(flkatck_k007121_regs_w) /* 007121 registers */ AM_RANGE(0x0008, 0x03ff) AM_RAM /* RAM */ AM_RANGE(0x0400, 0x041f) AM_READWRITE(flkatck_ls138_r, flkatck_ls138_w) /* inputs, DIPS, bankswitch, counters, sound command */ @@ -106,7 +106,7 @@ static ADDRESS_MAP_START( flkatck_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( flkatck_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flkatck_sound_map, AS_PROGRAM, 8, flkatck_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0x9000, 0x9000) AM_READWRITE(multiply_r, multiply_w) /* ??? */ diff --git a/src/mame/drivers/flower.c b/src/mame/drivers/flower.c index 200c70b9c04..acff8f3241b 100644 --- a/src/mame/drivers/flower.c +++ b/src/mame/drivers/flower.c @@ -109,7 +109,7 @@ static WRITE8_HANDLER( sound_command_w ) cputag_set_input_line(space->machine(), "audiocpu", INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( flower_cpu1_2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flower_cpu1_2, AS_PROGRAM, 8, flower_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITE(flower_coin_lockout_w) AM_RANGE(0xa001, 0xa001) AM_WRITE(flower_flipscreen_w) @@ -132,7 +132,7 @@ static ADDRESS_MAP_START( flower_cpu1_2, AS_PROGRAM, 8 ) AM_RANGE(0xfa00, 0xfa00) AM_SHARE("share8") AM_RAM AM_BASE_MEMBER(flower_state, m_bg1_scroll) ADDRESS_MAP_END -static ADDRESS_MAP_START( flower_sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flower_sound_cpu, AS_PROGRAM, 8, flower_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4000) AM_WRITE(flower_soundcpu_irq_ack) AM_RANGE(0x4001, 0x4001) AM_WRITEONLY AM_BASE_MEMBER(flower_state, m_sn_nmi_enable) diff --git a/src/mame/drivers/flstory.c b/src/mame/drivers/flstory.c index 792bfe6d5e9..0fe74958937 100644 --- a/src/mame/drivers/flstory.c +++ b/src/mame/drivers/flstory.c @@ -70,7 +70,7 @@ static WRITE8_HANDLER( nmi_enable_w ) } } -static ADDRESS_MAP_START( flstory_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flstory_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(flstory_videoram_w) AM_BASE_SIZE_MEMBER(flstory_state, m_videoram, m_videoram_size) AM_RANGE(0xc800, 0xcfff) AM_RAM /* unknown */ @@ -96,7 +96,7 @@ static ADDRESS_MAP_START( flstory_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe7ff) AM_RAM /* work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( onna34ro_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( onna34ro_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(flstory_videoram_w) AM_BASE_SIZE_MEMBER(flstory_state, m_videoram, m_videoram_size) AM_RANGE(0xc800, 0xcfff) AM_RAM /* unknown */ @@ -130,7 +130,7 @@ static CUSTOM_INPUT( victnine_mcu_status_bit01_r ) return (victnine_mcu_status_r(space, 0) & 3); } -static ADDRESS_MAP_START( victnine_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( victnine_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(flstory_videoram_w) AM_BASE_SIZE_MEMBER(flstory_state, m_videoram, m_videoram_size) AM_RANGE(0xc800, 0xcfff) AM_RAM /* unknown */ @@ -339,7 +339,7 @@ static WRITE8_HANDLER( rumba_mcu_w ) state->m_mcu_param = 1; } -static ADDRESS_MAP_START( rumba_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rumba_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(flstory_videoram_w) AM_BASE_SIZE_MEMBER(flstory_state, m_videoram, m_videoram_size) // AM_RANGE(0xc800, 0xcfff) AM_RAM /* unknown */ @@ -445,7 +445,7 @@ static WRITE8_DEVICE_HANDLER( sound_control_3_w ) /* unknown */ } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, flstory_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -459,7 +459,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_ROM /* space for diagnostics ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( flstory_m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flstory_m68705_map, AS_PROGRAM, 8, flstory_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(flstory_68705_port_a_r, flstory_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(flstory_68705_port_b_r, flstory_68705_port_b_w) diff --git a/src/mame/drivers/flyball.c b/src/mame/drivers/flyball.c index 14088327471..13816d5125f 100644 --- a/src/mame/drivers/flyball.c +++ b/src/mame/drivers/flyball.c @@ -245,7 +245,7 @@ static WRITE8_HANDLER( flyball_misc_w ) * *************************************/ -static ADDRESS_MAP_START( flyball_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flyball_map, AS_PROGRAM, 8, flyball_state ) ADDRESS_MAP_GLOBAL_MASK(0x1fff) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x100) AM_RAM AM_RANGE(0x0800, 0x0800) AM_NOP diff --git a/src/mame/drivers/foodf.c b/src/mame/drivers/foodf.c index bdf0a030fbb..1e84051696f 100644 --- a/src/mame/drivers/foodf.c +++ b/src/mame/drivers/foodf.c @@ -211,7 +211,7 @@ static WRITE16_HANDLER( analog_w ) *************************************/ // complete memory map derived from schematics -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, foodf_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x00ffff) AM_MIRROR(0x3e0000) AM_ROM AM_RANGE(0x014000, 0x014fff) AM_MIRROR(0x3e3000) AM_RAM diff --git a/src/mame/drivers/forte2.c b/src/mame/drivers/forte2.c index 1af74b97fd6..1a316d0204e 100644 --- a/src/mame/drivers/forte2.c +++ b/src/mame/drivers/forte2.c @@ -37,12 +37,12 @@ public: -static ADDRESS_MAP_START( program_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( program_mem, AS_PROGRAM, 8, forte2_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_mem, AS_IO, 8 ) +static ADDRESS_MAP_START( io_mem, AS_IO, 8, forte2_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x98, 0x98) AM_DEVREADWRITE_MODERN( "tms9928a", tms9928a_device, vram_read, vram_write ) diff --git a/src/mame/drivers/fortecar.c b/src/mame/drivers/fortecar.c index 07d9cacfe48..b52584c8747 100644 --- a/src/mame/drivers/fortecar.c +++ b/src/mame/drivers/fortecar.c @@ -558,14 +558,14 @@ static const eeprom_interface forte_eeprom_intf = }; -static ADDRESS_MAP_START( fortecar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fortecar_map, AS_PROGRAM, 8, fortecar_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_ROM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xd800, 0xffff) AM_RAM AM_BASE_SIZE_MEMBER(fortecar_state, m_vram,m_vram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( fortecar_ports, AS_IO, 8 ) +static ADDRESS_MAP_START( fortecar_ports, AS_IO, 8, fortecar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x20, 0x20) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) // pc=444 AM_RANGE(0x21, 0x21) AM_DEVWRITE_MODERN("crtc", mc6845_device, register_w) diff --git a/src/mame/drivers/freekick.c b/src/mame/drivers/freekick.c index 6f6f42308c7..f03f69a9811 100644 --- a/src/mame/drivers/freekick.c +++ b/src/mame/drivers/freekick.c @@ -162,7 +162,7 @@ static WRITE8_HANDLER( freekick_ff_w ) * *************************************/ -static ADDRESS_MAP_START( pbillrd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pbillrd_map, AS_PROGRAM, 8, freekick_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -182,7 +182,7 @@ static ADDRESS_MAP_START( pbillrd_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76496_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( freekickb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( freekickb_map, AS_PROGRAM, 8, freekick_state ) AM_RANGE(0x0000, 0xcfff) AM_ROM AM_RANGE(0xd000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(freek_videoram_w) AM_BASE_MEMBER(freekick_state, m_videoram) // tilemap @@ -202,7 +202,7 @@ static ADDRESS_MAP_START( freekickb_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76496_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gigas_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gigas_map, AS_PROGRAM, 8, freekick_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(freek_videoram_w) AM_BASE_MEMBER(freekick_state, m_videoram) @@ -221,13 +221,13 @@ static ADDRESS_MAP_START( gigas_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc03, 0xfc03) AM_DEVWRITE("sn4", sn76496_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gigas_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gigas_io_map, AS_IO, 8, freekick_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(spinner_r, spinner_select_w) AM_RANGE(0x01, 0x01) AM_READNOP //unused dip 3 ADDRESS_MAP_END -static ADDRESS_MAP_START( oigas_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( oigas_io_map, AS_IO, 8, freekick_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(spinner_r, spinner_select_w) AM_RANGE(0x01, 0x01) AM_READNOP //unused dip 3 @@ -236,7 +236,7 @@ static ADDRESS_MAP_START( oigas_io_map, AS_IO, 8 ) AM_RANGE(0x05, 0x05) AM_WRITE(oigas_5_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( freekickb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( freekickb_io_map, AS_IO, 8, freekick_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xff, 0xff) AM_READWRITE(freekick_ff_r, freekick_ff_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/fromanc2.c b/src/mame/drivers/fromanc2.c index 2ed6ef8220e..8111fd5b01e 100644 --- a/src/mame/drivers/fromanc2.c +++ b/src/mame/drivers/fromanc2.c @@ -186,7 +186,7 @@ static WRITE8_HANDLER( fromanc2_subcpu_rombank_w ) * *************************************/ -static ADDRESS_MAP_START( fromanc2_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fromanc2_main_map, AS_PROGRAM, 16, fromanc2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // MAIN ROM AM_RANGE(0x802000, 0x802fff) AM_READNOP // ??? @@ -219,7 +219,7 @@ static ADDRESS_MAP_START( fromanc2_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xd80000, 0xd8ffff) AM_RAM // WORK RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( fromancr_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fromancr_main_map, AS_PROGRAM, 16, fromanc2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // MAIN ROM AM_RANGE(0x800000, 0x803fff) AM_WRITE(fromancr_videoram_0_w) // VRAM BG (1P/2P) @@ -247,7 +247,7 @@ static ADDRESS_MAP_START( fromancr_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xd80000, 0xd8ffff) AM_RAM // WORK RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( fromanc4_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fromanc4_main_map, AS_PROGRAM, 16, fromanc2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // MAIN ROM AM_RANGE(0x400000, 0x7fffff) AM_ROM // DATA ROM @@ -283,14 +283,14 @@ static ADDRESS_MAP_START( fromanc4_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fromanc2_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fromanc2_sub_map, AS_PROGRAM, 8, fromanc2_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank1") // ROM(BANK) (is this comment correct? It was in the split address maps in a RAM configuration... AM_RANGE(0x8000, 0xbfff) AM_RAM // RAM(WORK) AM_RANGE(0xc000, 0xffff) AM_RAMBANK("bank2") // RAM(BANK) ADDRESS_MAP_END -static ADDRESS_MAP_START( fromanc2_sub_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( fromanc2_sub_io_map, AS_IO, 8, fromanc2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(fromanc2_subcpu_rombank_w) AM_RANGE(0x02, 0x02) AM_READWRITE(fromanc2_maincpu_r_l, fromanc2_maincpu_w_l) // to/from MAIN CPU @@ -299,12 +299,12 @@ static ADDRESS_MAP_START( fromanc2_sub_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fromanc2_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fromanc2_sound_map, AS_PROGRAM, 8, fromanc2_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( fromanc2_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( fromanc2_sound_io_map, AS_IO, 8, fromanc2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_WRITENOP // snd cmd (1P) / ? AM_RANGE(0x04, 0x04) AM_READ(soundlatch2_r) // snd cmd (2P) diff --git a/src/mame/drivers/fromance.c b/src/mame/drivers/fromance.c index 31780b0fc46..0a39a92b9d9 100644 --- a/src/mame/drivers/fromance.c +++ b/src/mame/drivers/fromance.c @@ -221,7 +221,7 @@ static WRITE8_HANDLER( fromance_coinctr_w ) * *************************************/ -static ADDRESS_MAP_START( nekkyoku_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nekkyoku_main_map, AS_PROGRAM, 8, fromance_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xf000, 0xf000) AM_READ_PORT("SERVICE") AM_WRITE(fromance_portselect_w) @@ -232,7 +232,7 @@ static ADDRESS_MAP_START( nekkyoku_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf005, 0xf005) AM_READ_PORT("DSW1") ADDRESS_MAP_END -static ADDRESS_MAP_START( fromance_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fromance_main_map, AS_PROGRAM, 8, fromance_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0x9e89, 0x9e89) AM_READNOP // unknown (idolmj) @@ -252,7 +252,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( nekkyoku_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nekkyoku_sub_map, AS_PROGRAM, 8, fromance_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xefff) AM_READWRITE(fromance_videoram_r, fromance_videoram_w) @@ -260,7 +260,7 @@ static ADDRESS_MAP_START( nekkyoku_sub_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_READWRITE(fromance_paletteram_r, fromance_paletteram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( fromance_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fromance_sub_map, AS_PROGRAM, 8, fromance_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -276,7 +276,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( nekkyoku_sub_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( nekkyoku_sub_io_map, AS_IO, 8, fromance_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_WRITE(fromance_crtc_data_w) AM_RANGE(0x11, 0x11) AM_WRITE(fromance_crtc_register_w) @@ -290,7 +290,7 @@ static ADDRESS_MAP_START( nekkyoku_sub_io_map, AS_IO, 8 ) AM_RANGE(0xe9, 0xea) AM_DEVWRITE("aysnd", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( idolmj_sub_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( idolmj_sub_io_map, AS_IO, 8, fromance_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_WRITE(fromance_crtc_data_w) AM_RANGE(0x11, 0x11) AM_WRITE(fromance_crtc_register_w) @@ -304,7 +304,7 @@ static ADDRESS_MAP_START( idolmj_sub_io_map, AS_IO, 8 ) AM_RANGE(0x29, 0x2a) AM_DEVWRITE("aysnd", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( fromance_sub_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( fromance_sub_io_map, AS_IO, 8, fromance_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_WRITE(fromance_crtc_data_w) AM_RANGE(0x11, 0x11) AM_WRITE(fromance_crtc_register_w) diff --git a/src/mame/drivers/funkybee.c b/src/mame/drivers/funkybee.c index b3bfc2cea19..198a4f6633b 100644 --- a/src/mame/drivers/funkybee.c +++ b/src/mame/drivers/funkybee.c @@ -88,7 +88,7 @@ static WRITE8_HANDLER( funkybee_coin_counter_w ) coin_counter_w(space->machine(), offset, data); } -static ADDRESS_MAP_START( funkybee_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( funkybee_map, AS_PROGRAM, 8, funkybee_state ) AM_RANGE(0x0000, 0x4fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xbfff) AM_RAM_WRITE(funkybee_videoram_w) AM_BASE_MEMBER(funkybee_state, m_videoram) @@ -103,7 +103,7 @@ static ADDRESS_MAP_START( funkybee_map, AS_PROGRAM, 8 ) AM_RANGE(0xf802, 0xf802) AM_READ_PORT("IN2") ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, funkybee_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/funkyjet.c b/src/mame/drivers/funkyjet.c index 6d425afdfd2..a8710e66846 100644 --- a/src/mame/drivers/funkyjet.c +++ b/src/mame/drivers/funkyjet.c @@ -100,7 +100,7 @@ Notes: /******************************************************************************/ -static ADDRESS_MAP_START( funkyjet_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( funkyjet_map, AS_PROGRAM, 16, funkyjet_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x120000, 0x1207ff) AM_RAM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x140000, 0x143fff) AM_RAM @@ -118,7 +118,7 @@ ADDRESS_MAP_END /******************************************************************************/ /* Physical memory map (21 bits) */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, funkyjet_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_NOP /* YM2203 - this board doesn't have one */ AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/funworld.c b/src/mame/drivers/funworld.c index ac4a2c44f4f..632bdfec263 100644 --- a/src/mame/drivers/funworld.c +++ b/src/mame/drivers/funworld.c @@ -848,7 +848,7 @@ static WRITE8_DEVICE_HANDLER(pia1_ca2_w) * Memory map information * *************************/ -static ADDRESS_MAP_START( funworld_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( funworld_map, AS_PROGRAM, 8, funworld_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) @@ -882,7 +882,7 @@ static WRITE8_HANDLER( question_bank_w ) funquiz_question_bank = data; } -static ADDRESS_MAP_START( funquiz_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( funquiz_map, AS_PROGRAM, 8, funworld_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) @@ -900,7 +900,7 @@ static ADDRESS_MAP_START( funquiz_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( magicrd2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( magicrd2_map, AS_PROGRAM, 8, funworld_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) @@ -916,7 +916,7 @@ static ADDRESS_MAP_START( magicrd2_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cuoreuno_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cuoreuno_map, AS_PROGRAM, 8, funworld_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) @@ -931,7 +931,7 @@ static ADDRESS_MAP_START( cuoreuno_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( saloon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( saloon_map, AS_PROGRAM, 8, funworld_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0") AM_RANGE(0x0a01, 0x0a01) AM_READ_PORT("IN1") @@ -959,7 +959,7 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( witchryl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( witchryl_map, AS_PROGRAM, 8, funworld_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0803) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_RANGE(0x0a00, 0x0a03) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) diff --git a/src/mame/drivers/funybubl.c b/src/mame/drivers/funybubl.c index ac7525843ed..7a31c7f796c 100644 --- a/src/mame/drivers/funybubl.c +++ b/src/mame/drivers/funybubl.c @@ -79,7 +79,7 @@ static WRITE8_DEVICE_HANDLER( funybubl_oki_bank_sw ) } -static ADDRESS_MAP_START( funybubl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( funybubl_map, AS_PROGRAM, 8, funybubl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") // banked port 1? AM_RANGE(0xc400, 0xcfff) AM_RAM_WRITE(funybubl_paldatawrite) AM_BASE_MEMBER(funybubl_state, m_paletteram) // palette @@ -87,7 +87,7 @@ static ADDRESS_MAP_START( funybubl_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, funybubl_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(funybubl_vidram_bank_w) // vidram bank AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(funybubl_cpurombank_w) // rom bank? @@ -100,7 +100,7 @@ ADDRESS_MAP_END /* Sound CPU */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, funybubl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("oki", funybubl_oki_bank_sw) diff --git a/src/mame/drivers/fuukifg2.c b/src/mame/drivers/fuukifg2.c index 6a3db5921a5..91e3696d8df 100644 --- a/src/mame/drivers/fuukifg2.c +++ b/src/mame/drivers/fuukifg2.c @@ -87,7 +87,7 @@ static WRITE16_HANDLER( fuuki16_sound_command_w ) } } -static ADDRESS_MAP_START( fuuki16_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fuuki16_map, AS_PROGRAM, 16, fuuki16_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // RAM AM_RANGE(0x500000, 0x501fff) AM_RAM_WRITE(fuuki16_vram_0_w) AM_BASE_MEMBER(fuuki16_state, m_vram[0]) // Layers @@ -133,13 +133,13 @@ static WRITE8_DEVICE_HANDLER( fuuki16_oki_banking_w ) oki->set_bank_base(((data & 6) >> 1) * 0x40000); } -static ADDRESS_MAP_START( fuuki16_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fuuki16_sound_map, AS_PROGRAM, 8, fuuki16_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x7fff) AM_RAM // RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") // Banked ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( fuuki16_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( fuuki16_sound_io_map, AS_IO, 8, fuuki16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(fuuki16_sound_rombank_w) // ROM Bank AM_RANGE(0x11, 0x11) AM_READ(soundlatch_r) AM_WRITENOP // From Main CPU / ? To Main CPU ? diff --git a/src/mame/drivers/fuukifg3.c b/src/mame/drivers/fuukifg3.c index 621889773c2..b42f22d2bf7 100644 --- a/src/mame/drivers/fuukifg3.c +++ b/src/mame/drivers/fuukifg3.c @@ -237,7 +237,7 @@ static WRITE32_HANDLER( fuuki32_vregs_w ) } } -static ADDRESS_MAP_START( fuuki32_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( fuuki32_map, AS_PROGRAM, 32, fuuki32_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // Work RAM AM_RANGE(0x410000, 0x41ffff) AM_RAM // Work RAM (used by asurabus) @@ -296,14 +296,14 @@ static WRITE8_HANDLER( snd_ymf278b_w ) ymf262_w(space->machine().device("ymf2"), offset, data); } -static ADDRESS_MAP_START( fuuki32_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fuuki32_sound_map, AS_PROGRAM, 8, fuuki32_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM // ROM AM_RANGE(0x6000, 0x6fff) AM_RAM // RAM AM_RANGE(0x7ff0, 0x7fff) AM_READWRITE(snd_z80_r, snd_z80_w) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") // ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( fuuki32_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( fuuki32_sound_io_map, AS_IO, 8, fuuki32_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(fuuki32_sound_bw_w) AM_RANGE(0x30, 0x30) AM_WRITENOP // leftover/unused nmi handler related diff --git a/src/mame/drivers/gaelco.c b/src/mame/drivers/gaelco.c index 3a1b7af4a89..7e3ab8f1b03 100644 --- a/src/mame/drivers/gaelco.c +++ b/src/mame/drivers/gaelco.c @@ -121,7 +121,7 @@ static WRITE16_HANDLER(thoop_encrypted_w) * *************************************/ -static ADDRESS_MAP_START( bigkarnk_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigkarnk_map, AS_PROGRAM, 16, gaelco_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_w) AM_BASE_MEMBER(gaelco_state, m_videoram) /* Video RAM */ AM_RANGE(0x102000, 0x103fff) AM_RAM /* Screen RAM */ @@ -139,7 +139,7 @@ static ADDRESS_MAP_START( bigkarnk_map, AS_PROGRAM, 16 ) AM_RANGE(0xff8000, 0xffffff) AM_RAM /* Work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( bigkarnk_snd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bigkarnk_snd_map, AS_PROGRAM, 8, gaelco_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM /* RAM */ AM_RANGE(0x0800, 0x0801) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) /* OKI6295 */ // AM_RANGE(0x0900, 0x0900) AM_WRITENOP /* enable sound output? */ @@ -148,7 +148,7 @@ static ADDRESS_MAP_START( bigkarnk_snd_map, AS_PROGRAM, 8 ) AM_RANGE(0x0c00, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16, gaelco_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_w) AM_BASE_MEMBER(gaelco_state, m_videoram) /* Video RAM */ AM_RANGE(0x102000, 0x103fff) AM_RAM /* Screen RAM */ @@ -165,7 +165,7 @@ static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM /* Work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( squash_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( squash_map, AS_PROGRAM, 16, gaelco_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(gaelco_vram_encrypted_w) AM_BASE_MEMBER(gaelco_state, m_videoram) /* Video RAM */ AM_RANGE(0x102000, 0x103fff) AM_RAM_WRITE(gaelco_encrypted_w) AM_BASE_MEMBER(gaelco_state, m_screen) /* Screen RAM */ @@ -182,7 +182,7 @@ static ADDRESS_MAP_START( squash_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM /* Work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( thoop_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( thoop_map, AS_PROGRAM, 16, gaelco_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(thoop_vram_encrypted_w) AM_BASE_MEMBER(gaelco_state, m_videoram) /* Video RAM */ AM_RANGE(0x102000, 0x103fff) AM_RAM_WRITE(thoop_encrypted_w) AM_BASE_MEMBER(gaelco_state, m_screen) /* Screen RAM */ diff --git a/src/mame/drivers/gaelco2.c b/src/mame/drivers/gaelco2.c index cdbbe3e7b93..ae4a3091a3a 100644 --- a/src/mame/drivers/gaelco2.c +++ b/src/mame/drivers/gaelco2.c @@ -54,7 +54,7 @@ GFXDECODEINFO(0x0400000, 128) MANIAC SQUARE (FINAL) ============================================================================*/ -static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( maniacsq_map, AS_PROGRAM, 16, gaelco2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM /* ROM */ AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelcosnd_r, gaelcosnd_w) /* Sound Registers */ AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */ @@ -211,7 +211,7 @@ static READ16_HANDLER(p1_gun_y) {return (input_port_read(space->machine(), "LIGH static READ16_HANDLER(p2_gun_x) {return (input_port_read(space->machine(), "LIGHT1_X") * 320 / 0x100) + 1;} static READ16_HANDLER(p2_gun_y) {return (input_port_read(space->machine(), "LIGHT1_Y") * 240 / 0x100) - 4;} -static ADDRESS_MAP_START( bang_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bang_map, AS_PROGRAM, 16, gaelco2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelcosnd_r, gaelcosnd_w) /* Sound Registers */ AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */ @@ -429,7 +429,7 @@ ROM_END ============================================================================*/ -static ADDRESS_MAP_START( alighunt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( alighunt_map, AS_PROGRAM, 16, gaelco2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelcosnd_r, gaelcosnd_w) /* Sound Registers */ AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */ @@ -640,7 +640,7 @@ static READ16_HANDLER ( dallas_kludge_r ) return 0x0200; } -static ADDRESS_MAP_START( touchgo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( touchgo_map, AS_PROGRAM, 16, gaelco2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelcosnd_r, gaelcosnd_w) /* Sound Registers */ AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */ @@ -904,7 +904,7 @@ ROM_END SNOW BOARD ============================================================================*/ -static ADDRESS_MAP_START( snowboar_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( snowboar_map, AS_PROGRAM, 16, gaelco2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelcosnd_r, gaelcosnd_w) /* Sound Registers */ AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */ @@ -1089,7 +1089,7 @@ ROM_END WORLD RALLY 2 ============================================================================*/ -static ADDRESS_MAP_START( wrally2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wrally2_map, AS_PROGRAM, 16, gaelco2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x202890, 0x2028ff) AM_DEVREADWRITE("gaelco", gaelcosnd_r, gaelcosnd_w) /* Sound Registers */ AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(gaelco2_vram_w) AM_SHARE("spriteram") /* Video RAM */ diff --git a/src/mame/drivers/gaelco3d.c b/src/mame/drivers/gaelco3d.c index 6d9f552506a..9d991b24b23 100644 --- a/src/mame/drivers/gaelco3d.c +++ b/src/mame/drivers/gaelco3d.c @@ -776,7 +776,7 @@ static WRITE32_HANDLER( unknown_13a_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, gaelco3d_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(gaelco3d_paletteram_w) AM_BASE_GENERIC(paletteram) @@ -807,7 +807,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main020_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( main020_map, AS_PROGRAM, 32, gaelco3d_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(gaelco3d_paletteram_020_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x51000c, 0x51000f) AM_READ_PORT("IN0") @@ -837,19 +837,19 @@ static ADDRESS_MAP_START( main020_map, AS_PROGRAM, 32 ) AM_RANGE(0xfe0000, 0xfeffff) AM_RAM AM_BASE_MEMBER(gaelco3d_state, m_m68k_ram_base) ADDRESS_MAP_END -static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( tms_map, AS_PROGRAM, 32, gaelco3d_state ) AM_RANGE(0x000000, 0x007fff) AM_READWRITE(tms_m68k_ram_r, tms_m68k_ram_w) AM_RANGE(0x400000, 0x5fffff) AM_ROM AM_REGION("user2", 0) AM_RANGE(0xc00000, 0xc00007) AM_WRITE(gaelco3d_render_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, gaelco3d_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE_MEMBER(gaelco3d_state, m_adsp_ram_base) /* 1k words internal RAM */ AM_RANGE(0x37ff, 0x37ff) AM_READNOP /* speedup hammers this for no apparent reason */ ADDRESS_MAP_END -static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, gaelco3d_state ) AM_RANGE(0x0000, 0x0001) AM_WRITE(adsp_rombank_w) AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") AM_RANGE(0x2000, 0x2000) AM_READWRITE(sound_data_r, sound_status_w) diff --git a/src/mame/drivers/gaiden.c b/src/mame/drivers/gaiden.c index 27bf84aea46..16c6e7dce50 100644 --- a/src/mame/drivers/gaiden.c +++ b/src/mame/drivers/gaiden.c @@ -393,7 +393,7 @@ static READ16_HANDLER( raiga_protection_r ) return state->m_prot; } -static ADDRESS_MAP_START( gaiden_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gaiden_map, AS_PROGRAM, 16, gaiden_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x060000, 0x063fff) AM_RAM AM_RANGE(0x070000, 0x070fff) AM_RAM_WRITE(gaiden_videoram_w) AM_BASE_MEMBER(gaiden_state, m_videoram) @@ -419,7 +419,7 @@ static ADDRESS_MAP_START( gaiden_map, AS_PROGRAM, 16 ) AM_RANGE(0x07a808, 0x07a809) AM_WRITE(gaiden_flip_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( drgnbowl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drgnbowl_map, AS_PROGRAM, 16, gaiden_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x060000, 0x063fff) AM_RAM AM_RANGE(0x070000, 0x070fff) AM_RAM_WRITE(gaiden_videoram_w) AM_BASE_MEMBER(gaiden_state, m_videoram) @@ -438,7 +438,7 @@ static ADDRESS_MAP_START( drgnbowl_map, AS_PROGRAM, 16 ) AM_RANGE(0x07f006, 0x07f007) AM_WRITE(gaiden_fgscrollx_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gaiden_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xefff) AM_ROM /* raiga only */ AM_RANGE(0xf000, 0xf7ff) AM_RAM @@ -449,12 +449,12 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc20, 0xfc20) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( drgnbowl_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( drgnbowl_sound_map, AS_PROGRAM, 8, gaiden_state ) AM_RANGE(0x0000, 0xf7ff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( drgnbowl_sound_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( drgnbowl_sound_port_map, AS_IO, 8, gaiden_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) @@ -906,7 +906,7 @@ Others 2x 8x2 switches DIP */ -static ADDRESS_MAP_START( mastninj_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mastninj_sound_map, AS_PROGRAM, 8, gaiden_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xc400, 0xc401) AM_DEVWRITE("ym1", ym2203_w) @@ -915,7 +915,7 @@ static ADDRESS_MAP_START( mastninj_sound_map, AS_PROGRAM, 8 ) // AM_RANGE(0xfc20, 0xfc20) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( mastninj_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mastninj_map, AS_PROGRAM, 16, gaiden_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x060000, 0x063fff) AM_RAM AM_RANGE(0x070000, 0x070fff) AM_RAM_WRITE(gaiden_videoram_w) AM_BASE_MEMBER(gaiden_state, m_videoram) diff --git a/src/mame/drivers/gal3.c b/src/mame/drivers/gal3.c index 782dce66e1f..5a1c1201bf4 100644 --- a/src/mame/drivers/gal3.c +++ b/src/mame/drivers/gal3.c @@ -350,7 +350,7 @@ static WRITE32_HANDLER(rso_w) } -static ADDRESS_MAP_START( cpu_mst_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cpu_mst_map, AS_PROGRAM, 32, gal3_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_RANGE(0x20000000, 0x20001fff) AM_RAM AM_BASE_MEMBER(gal3_state, m_nvmem) AM_SIZE_MEMBER(gal3_state, m_nvmem_size) //NVRAM /// AM_RANGE(0x40000000, 0x4000ffff) AM_WRITE() // @@ -367,7 +367,7 @@ static ADDRESS_MAP_START( cpu_mst_map, AS_PROGRAM, 32 ) AM_RANGE(0xf2800000, 0xf2800fff) AM_READWRITE(rso_r, rso_w) //RSO PCB ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu_slv_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cpu_slv_map, AS_PROGRAM, 32, gal3_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_ROM /// AM_RANGE(0x40000000, 0x4000ffff) AM_WRITE() // AM_RANGE(0x44000000, 0x44000003) AM_READ_PORT("DSW_CPU_slv" ) @@ -396,7 +396,7 @@ static ADDRESS_MAP_START( cpu_slv_map, AS_PROGRAM, 32 ) AM_RANGE(0xf2760000, 0xf2760003) AM_RAM //AM_READWRITE(namcos21_video_enable_r,namcos21_video_enable_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( rs_cpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rs_cpu_map, AS_PROGRAM, 16, gal3_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM //64K working RAM @@ -460,7 +460,7 @@ static ADDRESS_MAP_START( rs_cpu_map, AS_PROGRAM, 16 ) /// AM_RANGE(0xc44000, 0xffffff) AM_RAM ///////////// ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 16, gal3_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM /// AM_RANGE(0x0c0000, 0x0cffff) AM_RAM //00, 20, 30, 40, 50 @@ -476,7 +476,7 @@ static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 16 ) /// AM_RANGE(0x090000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( psn_b1_cpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( psn_b1_cpu_map, AS_PROGRAM, 16, gal3_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0xffffff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/galaga.c b/src/mame/drivers/galaga.c index 22c5f09ba39..22c8941582c 100644 --- a/src/mame/drivers/galaga.c +++ b/src/mame/drivers/galaga.c @@ -917,7 +917,7 @@ static MACHINE_RESET( battles ) /* the same memory map is used by all three CPUs; all RAM areas are shared */ -static ADDRESS_MAP_START( bosco_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bosco_map, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */ AM_RANGE(0x6800, 0x6807) AM_READ(bosco_dsw_r) AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", pacman_sound_w) @@ -939,7 +939,7 @@ static ADDRESS_MAP_START( bosco_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( galaga_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaga_map, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */ AM_RANGE(0x6800, 0x6807) AM_READ(bosco_dsw_r) AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", pacman_sound_w) @@ -956,7 +956,7 @@ static ADDRESS_MAP_START( galaga_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( xevious_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( xevious_map, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */ AM_RANGE(0x6800, 0x6807) AM_READ(bosco_dsw_r) AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", pacman_sound_w) @@ -977,7 +977,7 @@ static ADDRESS_MAP_START( xevious_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( digdug_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( digdug_map, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITENOP /* the only area different for each CPU */ AM_RANGE(0x6800, 0x681f) AM_DEVWRITE("namco", pacman_sound_w) AM_RANGE(0x6820, 0x6827) AM_WRITE(bosco_latch_w) /* misc latches */ @@ -997,12 +997,12 @@ ADDRESS_MAP_END /* bootleg 4th CPU replacing the 5xXX chips */ -static ADDRESS_MAP_START( galaga_mem4, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaga_mem4, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x107f) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( battles_mem4, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( battles_mem4, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x4000, 0x4003) AM_READ(battles_input_port_r) AM_RANGE(0x4001, 0x4001) AM_WRITE(battles_CPU4_coin_w) @@ -1012,7 +1012,7 @@ static ADDRESS_MAP_START( battles_mem4, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0x80ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( dzigzag_mem4, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dzigzag_mem4, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x107f) AM_RAM AM_RANGE(0x4000, 0x4007) AM_READONLY // dip switches? bits 0 & 1 used diff --git a/src/mame/drivers/galastrm.c b/src/mame/drivers/galastrm.c index 2657a8d3da9..f3b7f510128 100644 --- a/src/mame/drivers/galastrm.c +++ b/src/mame/drivers/galastrm.c @@ -172,7 +172,7 @@ static WRITE32_HANDLER( galastrm_adstick_ctrl_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( galastrm_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( galastrm_map, AS_PROGRAM, 32, galastrm_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_BASE_MEMBER(galastrm_state, m_ram) /* main CPUA ram */ AM_RANGE(0x300000, 0x303fff) AM_RAM AM_BASE_SIZE_MEMBER(galastrm_state, m_spriteram, m_spriteram_size) diff --git a/src/mame/drivers/galaxi.c b/src/mame/drivers/galaxi.c index 7cf41634321..f57342cbffa 100644 --- a/src/mame/drivers/galaxi.c +++ b/src/mame/drivers/galaxi.c @@ -272,7 +272,7 @@ static CUSTOM_INPUT( hopper_r ) } -static ADDRESS_MAP_START( galaxi_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galaxi_map, AS_PROGRAM, 16, galaxi_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM_WRITE(galaxi_bg1_w) AM_BASE_MEMBER(galaxi_state, m_bg1_ram) diff --git a/src/mame/drivers/galaxia.c b/src/mame/drivers/galaxia.c index 02180bff047..c369fa06517 100644 --- a/src/mame/drivers/galaxia.c +++ b/src/mame/drivers/galaxia.c @@ -124,7 +124,7 @@ static READ8_HANDLER(galaxia_collision_clear) return 0xff; } -static ADDRESS_MAP_START( galaxia_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaxia_mem_map, AS_PROGRAM, 8, galaxia_state ) AM_RANGE(0x0000, 0x13ff) AM_ROM AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM AM_BASE_MEMBER(galaxia_state, m_bullet_ram) AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_work_ram_r, s2636_work_ram_w) @@ -136,7 +136,7 @@ static ADDRESS_MAP_START( galaxia_mem_map, AS_PROGRAM, 8 ) AM_RANGE(0x7214, 0x7214) AM_READ_PORT("IN0") ADDRESS_MAP_END -static ADDRESS_MAP_START( astrowar_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( astrowar_mem_map, AS_PROGRAM, 8, galaxia_state ) AM_RANGE(0x0000, 0x13ff) AM_ROM AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_RAM AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_DEVREADWRITE("s2636_0", s2636_work_ram_r, s2636_work_ram_w) @@ -145,7 +145,7 @@ static ADDRESS_MAP_START( astrowar_mem_map, AS_PROGRAM, 8 ) AM_RANGE(0x2000, 0x33ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( galaxia_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( galaxia_io_map, AS_IO, 8, galaxia_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00, 0x00) AM_WRITE(galaxia_scroll_w) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x02) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/galaxian.c b/src/mame/drivers/galaxian.c index d344809decc..4a53642ed9a 100644 --- a/src/mame/drivers/galaxian.c +++ b/src/mame/drivers/galaxian.c @@ -1351,13 +1351,13 @@ LATCH: (write 7000-77ff) /* map derived from schematics */ -static ADDRESS_MAP_START( galaxian_map_discrete, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaxian_map_discrete, AS_PROGRAM, 8, galaxian_state ) AM_RANGE(0x6004, 0x6007) AM_MIRROR(0x07f8) AM_DEVWRITE(GAL_AUDIO, galaxian_lfo_freq_w) AM_RANGE(0x6800, 0x6807) AM_MIRROR(0x07f8) AM_DEVWRITE(GAL_AUDIO, galaxian_sound_w) AM_RANGE(0x7800, 0x7800) AM_MIRROR(0x07ff) AM_DEVWRITE(GAL_AUDIO, galaxian_pitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( galaxian_map_base, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaxian_map_base, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM @@ -1379,20 +1379,20 @@ static ADDRESS_MAP_START( galaxian_map_base, AS_PROGRAM, 8 ) AM_RANGE(0x7800, 0x7800) AM_MIRROR(0x07ff) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( galaxian_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaxian_map, AS_PROGRAM, 8, galaxian_state ) AM_IMPORT_FROM(galaxian_map_base) AM_IMPORT_FROM(galaxian_map_discrete) ADDRESS_MAP_END /* map derived from schematics */ -static ADDRESS_MAP_START( mooncrst_map_discrete, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mooncrst_map_discrete, AS_PROGRAM, 8, galaxian_state ) AM_RANGE(0xa004, 0xa007) AM_MIRROR(0x07f8) AM_DEVWRITE(GAL_AUDIO, galaxian_lfo_freq_w) AM_RANGE(0xa800, 0xa807) AM_MIRROR(0x07f8) AM_DEVWRITE(GAL_AUDIO, galaxian_sound_w) AM_RANGE(0xb800, 0xb800) AM_MIRROR(0x07ff) AM_DEVWRITE(GAL_AUDIO, galaxian_pitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mooncrst_map_base, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mooncrst_map_base, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x0400) AM_RAM @@ -1413,13 +1413,13 @@ static ADDRESS_MAP_START( mooncrst_map_base, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_MIRROR(0x07ff) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8, galaxian_state ) AM_IMPORT_FROM(mooncrst_map_base) AM_IMPORT_FROM(mooncrst_map_discrete) ADDRESS_MAP_END -static ADDRESS_MAP_START( fantastc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fantastc_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -1440,7 +1440,7 @@ ADDRESS_MAP_END /* map derived from schematics */ #if 0 -static ADDRESS_MAP_START( dambustr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dambustr_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM // AM_RANGE(0x8000, 0x8000) AM_WRITE(dambustr_bg_color_w) @@ -1464,7 +1464,7 @@ ADDRESS_MAP_END /* map derived from schematics */ -static ADDRESS_MAP_START( theend_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( theend_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM @@ -1483,7 +1483,7 @@ ADDRESS_MAP_END /* map derived from schematics */ -static ADDRESS_MAP_START( scobra_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scobra_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x4000) AM_RAM @@ -1502,7 +1502,7 @@ static ADDRESS_MAP_START( scobra_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( anteateruk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( anteateruk_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x03ff) AM_ROM AM_RANGE(0x0400, 0x0bff) AM_RAM @@ -1522,7 +1522,7 @@ static ADDRESS_MAP_START( anteateruk_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( anteaterg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( anteaterg_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x03ff) AM_ROM AM_RANGE(0x0400, 0x0bff) AM_RAM @@ -1544,7 +1544,7 @@ ADDRESS_MAP_END /* map derived from schematics */ -static ADDRESS_MAP_START( frogger_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( frogger_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -1561,7 +1561,7 @@ ADDRESS_MAP_END /* map derived from schematics */ -static ADDRESS_MAP_START( turtles_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( turtles_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x4000) AM_RAM @@ -1583,7 +1583,7 @@ ADDRESS_MAP_END /* this is the same as theend, except for separate RGB background controls and some extra ROM space at $7000 and $C000 */ -static ADDRESS_MAP_START( sfx_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sfx_map, AS_PROGRAM, 8, galaxian_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_videoram_w) AM_BASE_MEMBER(galaxian_state, m_videoram) @@ -1611,7 +1611,7 @@ ADDRESS_MAP_END $8000-$afff: additional ROM area $b000-$bfff: protection */ -static ADDRESS_MAP_START( jumpbug_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jumpbug_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM @@ -1633,7 +1633,7 @@ static ADDRESS_MAP_START( jumpbug_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( frogf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( frogf_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -1650,7 +1650,7 @@ ADDRESS_MAP_END /* mooncrst */ -static ADDRESS_MAP_START( mshuttle_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mshuttle_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM @@ -1669,7 +1669,7 @@ static ADDRESS_MAP_START( mshuttle_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( mshuttle_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mshuttle_portmap, AS_IO, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x0f) AM_RANGE(0x08, 0x08) AM_WRITE(mshuttle_ay8910_control_w) @@ -1693,7 +1693,7 @@ static WRITE8_HANDLER( tenspot_unk_e000_w ) logerror("tenspot_unk_e000_w %02x\n",data); } -static ADDRESS_MAP_START( tenspot_select_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tenspot_select_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x07ff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM @@ -1712,40 +1712,40 @@ ADDRESS_MAP_END *************************************/ /* Konami Frogger with 1 x AY-8910A */ -static ADDRESS_MAP_START( frogger_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( frogger_sound_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_MIRROR(0x1000) AM_WRITE(konami_sound_filter_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( frogger_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( frogger_sound_portmap, AS_IO, 8, galaxian_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_READWRITE(frogger_ay8910_r, frogger_ay8910_w) ADDRESS_MAP_END /* Konami generic with 2 x AY-8910A */ -static ADDRESS_MAP_START( konami_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( konami_sound_map, AS_PROGRAM, 8, galaxian_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x6c00) AM_RAM AM_RANGE(0x9000, 0x9fff) AM_MIRROR(0x6000) AM_WRITE(konami_sound_filter_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( konami_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( konami_sound_portmap, AS_IO, 8, galaxian_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_READWRITE(konami_ay8910_r, konami_ay8910_w) ADDRESS_MAP_END /* Checkman with 1 x AY-8910A */ -static ADDRESS_MAP_START( checkman_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( checkman_sound_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( checkman_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( checkman_sound_portmap, AS_IO, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x03, 0x03) AM_READ(soundlatch_r) @@ -1755,7 +1755,7 @@ ADDRESS_MAP_END /* Checkman alternate with 1 x AY-8910A */ -static ADDRESS_MAP_START( checkmaj_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( checkmaj_sound_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM @@ -1765,14 +1765,14 @@ ADDRESS_MAP_END /* King and Balloon with DAC */ -static ADDRESS_MAP_START( kingball_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kingball_sound_map, AS_PROGRAM, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kingball_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( kingball_sound_portmap, AS_IO, 8, galaxian_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_MIRROR(0xff) AM_READ(soundlatch_r) AM_DEVWRITE("dac", kingball_dac_w) @@ -1780,12 +1780,12 @@ ADDRESS_MAP_END /* SF-X sample player */ -static ADDRESS_MAP_START( sfx_sample_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sfx_sample_map, AS_PROGRAM, 8, galaxian_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x6c00) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sfx_sample_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sfx_sample_portmap, AS_IO, 8, galaxian_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_READWRITE(sfx_sample_io_r, sfx_sample_io_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/galaxold.c b/src/mame/drivers/galaxold.c index cf0590a4f69..d5ac3157af4 100644 --- a/src/mame/drivers/galaxold.c +++ b/src/mame/drivers/galaxold.c @@ -407,7 +407,7 @@ static READ8_HANDLER( drivfrcg_port0_r ) return 0; } -static ADDRESS_MAP_START( galaxold_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galaxold_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -437,7 +437,7 @@ static ADDRESS_MAP_START( galaxold_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -463,7 +463,7 @@ static ADDRESS_MAP_START( mooncrst_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_READWRITE(rockclim_videoram_r, rockclim_videoram_w) AM_BASE_MEMBER(galaxold_state, m_rockclim_videoram)//4800 - 4803 = bg scroll ? AM_RANGE(0x4800, 0x4803) AM_WRITE(rockclim_scroll_w) @@ -495,7 +495,7 @@ static ADDRESS_MAP_START( rockclim_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ckongg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ckongg_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -522,7 +522,7 @@ static ADDRESS_MAP_START( ckongg_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Memory map based on mooncrst_map according to Z80 code - seems to be good but needs further checking */ -static ADDRESS_MAP_START( ckongmc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ckongmc_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -549,7 +549,7 @@ static ADDRESS_MAP_START( ckongmc_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( scramblb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scramblb_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -584,7 +584,7 @@ static READ8_HANDLER( scramb2_port0_r ) { return (input_port_read(space->machine static READ8_HANDLER( scramb2_port1_r ) { return (input_port_read(space->machine(), "IN1") >> offset) & 0x1; } static READ8_HANDLER( scramb2_port2_r ) { return (input_port_read(space->machine(), "IN2") >> offset) & 0x1; } -static ADDRESS_MAP_START( scramb2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scramb2_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -609,7 +609,7 @@ static ADDRESS_MAP_START( scramb2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( _4in1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( _4in1_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") /* banked game code */ AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -640,7 +640,7 @@ static ADDRESS_MAP_START( _4in1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bagmanmc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bagmanmc_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -661,7 +661,7 @@ static ADDRESS_MAP_START( bagmanmc_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dkongjrm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dkongjrm_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x7000, 0x7fff) AM_ROM @@ -687,7 +687,7 @@ static ADDRESS_MAP_START( dkongjrm_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tazzmang, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tazzmang, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x7000, 0x7000) AM_READ_PORT("DSW0") /* mirror */ AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -712,7 +712,7 @@ static ADDRESS_MAP_START( tazzmang, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bongo, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bongo, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0x8400, 0x87ff) AM_WRITENOP // not used @@ -731,14 +731,14 @@ static ADDRESS_MAP_START( bongo, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_READ(watchdog_reset_r) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( bongo_io, AS_IO, 8 ) +static ADDRESS_MAP_START( bongo_io, AS_IO, 8, galaxold_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( ozon1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ozon1_map, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x4000, 0x4200) AM_RAM AM_RANGE(0x4300, 0x43ff) AM_RAM @@ -756,7 +756,7 @@ static ADDRESS_MAP_START( ozon1_map, AS_PROGRAM, 8 ) AM_RANGE(0x8103, 0x8103) AM_WRITENOP //only one 9b at reset ADDRESS_MAP_END -static ADDRESS_MAP_START( ozon1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ozon1_io_map, AS_IO, 8, galaxold_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_data_address_w) ADDRESS_MAP_END @@ -769,7 +769,7 @@ static WRITE8_HANDLER( harem_nmi_mask_w ) state->m_nmi_mask = data & 1; } -static ADDRESS_MAP_START( harem_cpu1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( harem_cpu1, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM @@ -785,13 +785,13 @@ static ADDRESS_MAP_START( harem_cpu1, AS_PROGRAM, 8 ) AM_RANGE(0xffe6, 0xffff) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( harem_cpu2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( harem_cpu2, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( harem_cpu2_io, AS_IO, 8 ) +static ADDRESS_MAP_START( harem_cpu2_io, AS_IO, 8, galaxold_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x04, 0x04) AM_DEVWRITE("ay1", ay8910_address_w) AM_RANGE(0x08, 0x08) AM_DEVWRITE("ay1", ay8910_data_w) @@ -802,7 +802,7 @@ static ADDRESS_MAP_START( harem_cpu2_io, AS_IO, 8 ) AM_RANGE(0x80, 0x80) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( hunchbkg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hunchbkg, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram) AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size) @@ -831,13 +831,13 @@ ADDRESS_MAP_END /* the nmi line seems to be inverted on the cpu plugin board */ READ8_DEVICE_HANDLER( ttl7474_trampoline ) { return downcast<ttl7474_device *>(device)->output_comp_r(); } -static ADDRESS_MAP_START( hunchbkg_io, AS_IO, 8 ) +static ADDRESS_MAP_START( hunchbkg_io, AS_IO, 8, galaxold_state ) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READNOP // not used AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_DEVREAD("7474_9m_1", ttl7474_trampoline) ADDRESS_MAP_END -static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1480, 0x14bf) AM_MIRROR(0x6000) AM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram) AM_RANGE(0x14c0, 0x14ff) AM_MIRROR(0x6000) AM_WRITEONLY AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size) @@ -859,13 +859,13 @@ static ADDRESS_MAP_START( drivfrcg, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0x6fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( drivfrcg_io, AS_IO, 8 ) +static ADDRESS_MAP_START( drivfrcg_io, AS_IO, 8, galaxold_state ) AM_RANGE(0x00, 0x00) AM_READ(drivfrcg_port0_r) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8, galaxold_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1400, 0x143f) AM_MIRROR(0x6000) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram) AM_RANGE(0x1440, 0x14bf) AM_MIRROR(0x6000) AM_RAM AM_BASE_MEMBER(galaxold_state, m_spriteram) AM_SIZE_MEMBER(galaxold_state, m_spriteram_size) @@ -886,7 +886,7 @@ static ADDRESS_MAP_START( racknrol, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0x6fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( racknrol_io, AS_IO, 8 ) +static ADDRESS_MAP_START( racknrol_io, AS_IO, 8, galaxold_state ) AM_RANGE(0x1d, 0x1d) AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x1e, 0x1e) AM_DEVWRITE("sn2", sn76496_w) AM_RANGE(0x1f, 0x1f) AM_DEVWRITE("sn3", sn76496_w) @@ -908,7 +908,7 @@ static READ8_HANDLER( hexpoola_data_port_r ) return 0; } -static ADDRESS_MAP_START( hexpoola_io, AS_IO, 8 ) +static ADDRESS_MAP_START( hexpoola_io, AS_IO, 8, galaxold_state ) AM_RANGE(0x00, 0x00) AM_READNOP AM_RANGE(0x20, 0x3f) AM_WRITE(racknrol_tiles_bank_w) AM_BASE_MEMBER(galaxold_state, m_racknrol_tiles_bank) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(hexpoola_data_port_r) AM_DEVWRITE("snsnd", sn76496_w) diff --git a/src/mame/drivers/galgame.c b/src/mame/drivers/galgame.c index 12fe38bfe73..74086ab5c5d 100644 --- a/src/mame/drivers/galgame.c +++ b/src/mame/drivers/galgame.c @@ -275,7 +275,7 @@ static WRITE16_HANDLER(clk_w) state->m_clk = data; } -static ADDRESS_MAP_START( galaxygame_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galaxygame_map, AS_PROGRAM, 16, galaxygame_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0xfec0, 0xfecf) AM_READWRITE(ke_r, ke_w) AM_RANGE(0xff52, 0xff53) AM_READWRITE(y_r, y_w) // 177522 Y diff --git a/src/mame/drivers/galivan.c b/src/mame/drivers/galivan.c index da3f4004457..1d8f23aa3e4 100644 --- a/src/mame/drivers/galivan.c +++ b/src/mame/drivers/galivan.c @@ -53,7 +53,7 @@ static READ8_HANDLER( IO_port_c0_r ) -static ADDRESS_MAP_START( galivan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galivan_map, AS_PROGRAM, 8, galivan_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1") @@ -63,7 +63,7 @@ static ADDRESS_MAP_START( galivan_map, AS_PROGRAM, 8 ) AM_RANGE(0xe100, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ninjemak_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ninjemak_map, AS_PROGRAM, 8, galivan_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1") @@ -73,7 +73,7 @@ static ADDRESS_MAP_START( ninjemak_map, AS_PROGRAM, 8 ) AM_RANGE(0xe200, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, galivan_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") @@ -96,7 +96,7 @@ static WRITE8_HANDLER( blit_trigger_w ) nb_1414m4_exec(space,(state->m_videoram[0] << 8) | (state->m_videoram[1] & 0xff),state->m_videoram,state->m_scrollx,state->m_scrolly,state->m_tx_tilemap); } -static ADDRESS_MAP_START( ninjemak_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ninjemak_io_map, AS_IO, 8, galivan_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x80) AM_READ_PORT("P1") AM_WRITE(ninjemak_gfxbank_w) AM_RANGE(0x81, 0x81) AM_READ_PORT("P2") @@ -108,12 +108,12 @@ static ADDRESS_MAP_START( ninjemak_io_map, AS_IO, 8 ) // AM_RANGE(0x87, 0x87) AM_WRITENOP // ?? ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, galivan_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, galivan_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3526_w) AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_w) diff --git a/src/mame/drivers/galpani2.c b/src/mame/drivers/galpani2.c index f5e92436fe5..b3d4689fabf 100644 --- a/src/mame/drivers/galpani2.c +++ b/src/mame/drivers/galpani2.c @@ -291,7 +291,7 @@ static WRITE8_DEVICE_HANDLER( galpani2_oki2_bank_w ) } -static ADDRESS_MAP_START( galpani2_mem1, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galpani2_mem1, AS_PROGRAM, 16, galpani2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE_MEMBER(galpani2_state, m_ram) // Work RAM AM_RANGE(0x110000, 0x11000f) AM_RAM // ? corrupted? stack dumper on POST failure, pc+sr on gp2se @@ -362,7 +362,7 @@ static READ16_HANDLER( galpani2_bankedrom_r ) else return 0xffff; //floating bus for absent ROMs } -static ADDRESS_MAP_START( galpani2_mem2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galpani2_mem2, AS_PROGRAM, 16, galpani2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x13ffff) AM_RAM AM_BASE_MEMBER(galpani2_state, m_ram2) // Work RAM AM_RANGE(0x400000, 0x4fffff) AM_RAM_WRITE(galpani2_bg15_w) AM_BASE_MEMBER(galpani2_state, m_bg15) // bg15 diff --git a/src/mame/drivers/galpani3.c b/src/mame/drivers/galpani3.c index 0d8083881d5..44f63182943 100644 --- a/src/mame/drivers/galpani3.c +++ b/src/mame/drivers/galpani3.c @@ -863,7 +863,7 @@ static WRITE16_HANDLER( galpani3_framebuffer3_bgcol_w ) -static ADDRESS_MAP_START( galpani3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galpani3_map, AS_PROGRAM, 16, galpani3_state ) AM_RANGE(0x000000, 0x17ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // area [B] - Work RAM diff --git a/src/mame/drivers/galpanic.c b/src/mame/drivers/galpanic.c index bf59d10f1c3..b1b24ccf1cc 100644 --- a/src/mame/drivers/galpanic.c +++ b/src/mame/drivers/galpanic.c @@ -225,7 +225,7 @@ static WRITE16_HANDLER( galpanic_bgvideoram_mirror_w ) } } -static ADDRESS_MAP_START( galpanic_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galpanic_map, AS_PROGRAM, 16, galpanic_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x400000, 0x400001) AM_DEVREADWRITE8_MODERN("oki", okim6295_device, read, write, 0x00ff) AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_BASE_MEMBER(galpanic_state, m_fgvideoram) AM_SIZE_MEMBER(galpanic_state, m_fgvideoram_size) @@ -261,7 +261,7 @@ static READ8_DEVICE_HANDLER( comad_okim6295_r ) return retvalue; } -static ADDRESS_MAP_START( comad_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( comad_map, AS_PROGRAM, 16, galpanic_state ) AM_RANGE(0x000000, 0x4fffff) AM_ROM AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_BASE_MEMBER(galpanic_state, m_fgvideoram) AM_SIZE_MEMBER(galpanic_state, m_fgvideoram_size) AM_RANGE(0x520000, 0x53ffff) AM_RAM_WRITE(galpanic_bgvideoram_w) AM_BASE_MEMBER(galpanic_state, m_bgvideoram) /* + work RAM */ @@ -280,7 +280,7 @@ static ADDRESS_MAP_START( comad_map, AS_PROGRAM, 16 ) AM_RANGE(0xf80000, 0xf80001) AM_DEVREAD8("oki", comad_okim6295_r, 0xff00) AM_DEVWRITE8_MODERN("oki", okim6295_device, write, 0xff00) /* newfant */ ADDRESS_MAP_END -static ADDRESS_MAP_START( fantsia2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fantsia2_map, AS_PROGRAM, 16, galpanic_state ) AM_RANGE(0x000000, 0x4fffff) AM_ROM AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_BASE_MEMBER(galpanic_state, m_fgvideoram) AM_SIZE_MEMBER(galpanic_state, m_fgvideoram_size) AM_RANGE(0x520000, 0x53ffff) AM_RAM_WRITE(galpanic_bgvideoram_w) AM_BASE_MEMBER(galpanic_state, m_bgvideoram) /* + work RAM */ @@ -298,7 +298,7 @@ static ADDRESS_MAP_START( fantsia2_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( galhustl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galhustl_map, AS_PROGRAM, 16, galpanic_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_BASE_MEMBER(galpanic_state, m_fgvideoram) AM_SIZE_MEMBER(galpanic_state, m_fgvideoram_size) AM_RANGE(0x520000, 0x53ffff) AM_WRITE(galpanic_bgvideoram_w) AM_BASE_MEMBER(galpanic_state, m_bgvideoram) @@ -324,7 +324,7 @@ READ16_HANDLER( zipzap_random_read ) } #endif -static ADDRESS_MAP_START( zipzap_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( zipzap_map, AS_PROGRAM, 16, galpanic_state ) AM_RANGE(0x000000, 0x4fffff) AM_ROM AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_BASE_MEMBER(galpanic_state, m_fgvideoram) AM_SIZE_MEMBER(galpanic_state, m_fgvideoram_size) AM_RANGE(0x520000, 0x53ffff) AM_RAM_WRITE(galpanic_bgvideoram_w) AM_BASE_MEMBER(galpanic_state, m_bgvideoram) @@ -345,7 +345,7 @@ static ADDRESS_MAP_START( zipzap_map, AS_PROGRAM, 16 ) AM_RANGE(0xc80000, 0xc8ffff) AM_RAM // main ram ADDRESS_MAP_END -static ADDRESS_MAP_START( supmodel_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( supmodel_map, AS_PROGRAM, 16, galpanic_state ) AM_RANGE(0x000000, 0x4fffff) AM_ROM AM_RANGE(0x500000, 0x51ffff) AM_RAM AM_BASE_MEMBER(galpanic_state, m_fgvideoram) AM_SIZE_MEMBER(galpanic_state, m_fgvideoram_size) AM_RANGE(0x520000, 0x53ffff) AM_RAM_WRITE(galpanic_bgvideoram_w) AM_BASE_MEMBER(galpanic_state, m_bgvideoram) diff --git a/src/mame/drivers/galspnbl.c b/src/mame/drivers/galspnbl.c index f106728d7b3..c1a921045c9 100644 --- a/src/mame/drivers/galspnbl.c +++ b/src/mame/drivers/galspnbl.c @@ -38,7 +38,7 @@ static WRITE16_HANDLER( soundcommand_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, galspnbl_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x700000, 0x703fff) AM_RAM /* galspnbl work RAM */ AM_RANGE(0x708000, 0x70ffff) AM_RAM /* galspnbl work RAM, bitmaps are decompressed here */ @@ -62,7 +62,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xa80050, 0xa80051) AM_WRITEONLY AM_BASE_MEMBER(galspnbl_state, m_scroll) /* ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, galspnbl_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/gamecstl.c b/src/mame/drivers/gamecstl.c index eaad7a2d875..c7d679f3490 100644 --- a/src/mame/drivers/gamecstl.c +++ b/src/mame/drivers/gamecstl.c @@ -514,7 +514,7 @@ static WRITE32_HANDLER(at_page32_w) /*****************************************************************************/ -static ADDRESS_MAP_START( gamecstl_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gamecstl_map, AS_PROGRAM, 32, gamecstl_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000affff) AM_RAM AM_RANGE(0x000b0000, 0x000b7fff) AM_RAM AM_BASE_MEMBER(gamecstl_state, m_cga_ram) @@ -525,7 +525,7 @@ static ADDRESS_MAP_START( gamecstl_map, AS_PROGRAM, 32 ) AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */ ADDRESS_MAP_END -static ADDRESS_MAP_START(gamecstl_io, AS_IO, 32) +static ADDRESS_MAP_START(gamecstl_io, AS_IO, 32, gamecstl_state ) AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", i8237_r, i8237_w, 0xffffffff) AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff) AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) diff --git a/src/mame/drivers/gameplan.c b/src/mame/drivers/gameplan.c index f85e8e7ac4b..fc268ca294b 100644 --- a/src/mame/drivers/gameplan.c +++ b/src/mame/drivers/gameplan.c @@ -215,7 +215,7 @@ static const riot6532_interface r6532_interface = * *************************************/ -static ADDRESS_MAP_START( gameplan_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gameplan_main_map, AS_PROGRAM, 8, gameplan_state ) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x2000, 0x200f) AM_MIRROR(0x07f0) AM_DEVREADWRITE_MODERN("via6522_0", via6522_device, read, write) /* VIA 1 */ AM_RANGE(0x2800, 0x280f) AM_MIRROR(0x07f0) AM_DEVREADWRITE_MODERN("via6522_1", via6522_device, read, write) /* VIA 2 */ @@ -231,7 +231,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( gameplan_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gameplan_audio_map, AS_PROGRAM, 8, gameplan_state ) AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x1780) AM_RAM /* 6532 internal RAM */ AM_RANGE(0x0800, 0x081f) AM_MIRROR(0x17e0) AM_DEVREADWRITE("riot", riot6532_r, riot6532_w) AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_address_w) @@ -242,7 +242,7 @@ ADDRESS_MAP_END /* same as Gameplan, but larger ROM */ -static ADDRESS_MAP_START( leprechn_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( leprechn_audio_map, AS_PROGRAM, 8, gameplan_state ) AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x1780) AM_RAM /* 6532 internal RAM */ AM_RANGE(0x0800, 0x081f) AM_MIRROR(0x17e0) AM_DEVREADWRITE("riot", riot6532_r, riot6532_w) AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_address_w) diff --git a/src/mame/drivers/gamtor.c b/src/mame/drivers/gamtor.c index 3552a5a97bf..f12973ac088 100644 --- a/src/mame/drivers/gamtor.c +++ b/src/mame/drivers/gamtor.c @@ -42,7 +42,7 @@ static WRITE32_HANDLER( gamtor_unk_w ) -static ADDRESS_MAP_START( gaminator_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gaminator_map, AS_PROGRAM, 32, gaminator_state ) AM_RANGE(0x00000000, 0x07ffffff) AM_ROM AM_RANGE(0x08000000, 0x0bffffff) AM_RAM AM_RANGE(0x1e040008, 0x1e04000b) AM_WRITE( gamtor_unk_w ) diff --git a/src/mame/drivers/gaplus.c b/src/mame/drivers/gaplus.c index 53774f52121..cb9619a9afd 100644 --- a/src/mame/drivers/gaplus.c +++ b/src/mame/drivers/gaplus.c @@ -290,7 +290,7 @@ static INTERRUPT_GEN( gaplus_vblank_sub2_irq ) } -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, gaplus_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(gaplus_videoram_r, gaplus_videoram_w) AM_BASE_MEMBER(gaplus_state, m_videoram) /* tilemap RAM (shared with CPU #2) */ AM_RANGE(0x0800, 0x1fff) AM_READWRITE(gaplus_spriteram_r, gaplus_spriteram_w) AM_BASE_MEMBER(gaplus_state, m_spriteram) /* shared RAM with CPU #2 (includes sprite RAM) */ AM_RANGE(0x6000, 0x63ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with CPU #3 */ @@ -305,7 +305,7 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( gaplusa_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gaplusa_cpu1_map, AS_PROGRAM, 8, gaplus_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(gaplus_videoram_r, gaplus_videoram_w) AM_BASE_MEMBER(gaplus_state, m_videoram) /* tilemap RAM (shared with CPU #2) */ AM_RANGE(0x0800, 0x1fff) AM_READWRITE(gaplus_spriteram_r, gaplus_spriteram_w) AM_BASE_MEMBER(gaplus_state, m_spriteram) /* shared RAM with CPU #2 (includes sprite RAM) */ AM_RANGE(0x6000, 0x63ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with CPU #3 */ @@ -320,7 +320,7 @@ static ADDRESS_MAP_START( gaplusa_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, gaplus_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(gaplus_videoram_r, gaplus_videoram_w) /* tilemap RAM (shared with CPU #1) */ AM_RANGE(0x0800, 0x1fff) AM_READWRITE(gaplus_spriteram_r, gaplus_spriteram_w) /* shared RAM with CPU #1 */ // AM_RANGE(0x500f, 0x500f) AM_WRITENOP /* ??? written 256 times on startup */ @@ -328,7 +328,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8, gaplus_state ) AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with the main CPU + sound registers */ AM_RANGE(0x2000, 0x3fff) AM_READWRITE(watchdog_reset_r, watchdog_reset_w) /* watchdog? */ AM_RANGE(0x4000, 0x7fff) AM_WRITE(gaplus_irq_3_ctrl_w) /* interrupt enable/disable */ diff --git a/src/mame/drivers/gatron.c b/src/mame/drivers/gatron.c index 371ff849050..7502ea72d78 100644 --- a/src/mame/drivers/gatron.c +++ b/src/mame/drivers/gatron.c @@ -337,7 +337,7 @@ static const ppi8255_interface ppi8255_intf = * Memory Map Information * *************************/ -static ADDRESS_MAP_START( gat_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gat_map, AS_PROGRAM, 8, gatron_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(gat_videoram_w) AM_BASE_MEMBER(gatron_state, m_videoram) AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ @@ -345,7 +345,7 @@ static ADDRESS_MAP_START( gat_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe000) AM_WRITE(output_port_0_w) /* lamps */ ADDRESS_MAP_END -static ADDRESS_MAP_START( gat_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( gat_portmap, AS_IO, 8, gatron_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255", ppi8255_r, ppi8255_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/gauntlet.c b/src/mame/drivers/gauntlet.c index d0685cd8e9c..82a3b7ae8d5 100644 --- a/src/mame/drivers/gauntlet.c +++ b/src/mame/drivers/gauntlet.c @@ -303,7 +303,7 @@ static WRITE8_HANDLER( mixer_w ) *************************************/ /* full map verified from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, gauntlet_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x037fff) AM_MIRROR(0x280000) AM_ROM AM_RANGE(0x038000, 0x03ffff) AM_MIRROR(0x280000) AM_ROM /* slapstic maps here */ @@ -344,7 +344,7 @@ ADDRESS_MAP_END *************************************/ /* full map verified from schematics */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gauntlet_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x2000) AM_RAM AM_RANGE(0x1000, 0x100f) AM_MIRROR(0x27c0) AM_WRITE(atarigen_6502_sound_w) diff --git a/src/mame/drivers/gberet.c b/src/mame/drivers/gberet.c index 8f8d7a1f04a..8f140229129 100644 --- a/src/mame/drivers/gberet.c +++ b/src/mame/drivers/gberet.c @@ -150,7 +150,7 @@ static WRITE8_HANDLER( gberet_sound_w ) sn76496_w(space->machine().device("snsnd"), 0, *state->m_soundlatch); } -static ADDRESS_MAP_START( gberet_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gberet_map, AS_PROGRAM, 8, gberet_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(gberet_colorram_w) AM_BASE_MEMBER(gberet_state, m_colorram) AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(gberet_videoram_w) AM_BASE_MEMBER(gberet_state, m_videoram) @@ -170,7 +170,7 @@ static ADDRESS_MAP_START( gberet_map, AS_PROGRAM, 8 ) AM_RANGE(0xf603, 0xf603) AM_READ_PORT("SYSTEM") ADDRESS_MAP_END -static ADDRESS_MAP_START( mrgoemon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mrgoemon_map, AS_PROGRAM, 8, gberet_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(gberet_colorram_w) AM_BASE_MEMBER(gberet_state, m_colorram) AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(gberet_videoram_w) AM_BASE_MEMBER(gberet_state, m_videoram) @@ -208,7 +208,7 @@ static WRITE8_HANDLER( gberetb_nmi_ack_w ) cputag_set_input_line(space->machine(), "maincpu", INPUT_LINE_NMI, CLEAR_LINE); } -static ADDRESS_MAP_START( gberetb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gberetb_map, AS_PROGRAM, 8, gberet_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(gberet_colorram_w) AM_BASE_MEMBER(gberet_state, m_colorram) AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(gberet_videoram_w) AM_BASE_MEMBER(gberet_state, m_videoram) diff --git a/src/mame/drivers/gbusters.c b/src/mame/drivers/gbusters.c index 06f837dc383..075779dcf3a 100644 --- a/src/mame/drivers/gbusters.c +++ b/src/mame/drivers/gbusters.c @@ -155,7 +155,7 @@ static WRITE8_HANDLER( k052109_051960_w ) } -static ADDRESS_MAP_START( gbusters_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gbusters_map, AS_PROGRAM, 8, gbusters_state ) AM_RANGE(0x1f80, 0x1f80) AM_WRITE(gbusters_coin_counter_w) /* coin counters */ AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) /* sound code # */ AM_RANGE(0x1f88, 0x1f88) AM_WRITE(gbusters_sh_irqtrigger_w) /* cause interrupt on audio CPU */ @@ -175,7 +175,7 @@ static ADDRESS_MAP_START( gbusters_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM 878n02.rom */ ADDRESS_MAP_END -static ADDRESS_MAP_START( gbusters_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gbusters_sound_map, AS_PROGRAM, 8, gbusters_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM 878h01.rom */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) /* soundlatch_r */ diff --git a/src/mame/drivers/gcpinbal.c b/src/mame/drivers/gcpinbal.c index 2656ddaa0a9..d8a7b8b7af8 100644 --- a/src/mame/drivers/gcpinbal.c +++ b/src/mame/drivers/gcpinbal.c @@ -231,7 +231,7 @@ static void gcp_adpcm_int( device_t *device ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( gcpinbal_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gcpinbal_map, AS_PROGRAM, 16, gcpinbal_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE(gcpinbal_tilemaps_word_r, gcpinbal_tilemaps_word_w) AM_BASE_MEMBER(gcpinbal_state, m_tilemapram) AM_RANGE(0xc80000, 0xc80fff) AM_RAM AM_BASE_SIZE_MEMBER(gcpinbal_state, m_spriteram, m_spriteram_size) /* sprite ram */ diff --git a/src/mame/drivers/gei.c b/src/mame/drivers/gei.c index 630040c5b26..9569dea0bbc 100644 --- a/src/mame/drivers/gei.c +++ b/src/mame/drivers/gei.c @@ -401,7 +401,7 @@ static WRITE8_HANDLER( signature2_w ) } } -static ADDRESS_MAP_START( getrivia_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( getrivia_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") @@ -423,7 +423,7 @@ static ADDRESS_MAP_START( getrivia_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gselect_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gselect_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x40ff) AM_RAM AM_SHARE("nvram") @@ -438,7 +438,7 @@ static ADDRESS_MAP_START( gselect_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END // TODO: where are mapped the lower 0x2000 bytes of the banks? -static ADDRESS_MAP_START( amuse_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( amuse_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") @@ -454,7 +454,7 @@ static ADDRESS_MAP_START( amuse_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gepoker_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gepoker_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") @@ -471,7 +471,7 @@ static ADDRESS_MAP_START( gepoker_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( amuse1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( amuse1_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("nvram") @@ -488,7 +488,7 @@ static ADDRESS_MAP_START( amuse1_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( findout_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( findout_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r,ppi8255_w) @@ -509,7 +509,7 @@ static ADDRESS_MAP_START( findout_map, AS_PROGRAM, 8 ) AM_RANGE(0x0000, 0xffff) AM_READ(catchall) ADDRESS_MAP_END -static ADDRESS_MAP_START( quizvid_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( quizvid_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r,ppi8255_w) @@ -527,7 +527,7 @@ static ADDRESS_MAP_START( quizvid_map, AS_PROGRAM, 8 ) AM_RANGE(0x0000, 0xffff) AM_READ(catchall) ADDRESS_MAP_END -static ADDRESS_MAP_START( suprpokr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( suprpokr_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -539,7 +539,7 @@ static ADDRESS_MAP_START( suprpokr_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( geimulti_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( geimulti_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -552,7 +552,7 @@ static ADDRESS_MAP_START( geimulti_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_RAM_WRITE(gei_bitmap_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sprtauth_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sprtauth_map, AS_PROGRAM, 8, gei_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x4800, 0x4803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) diff --git a/src/mame/drivers/ggconnie.c b/src/mame/drivers/ggconnie.c index 2414ea15d49..ae429758836 100644 --- a/src/mame/drivers/ggconnie.c +++ b/src/mame/drivers/ggconnie.c @@ -123,7 +123,7 @@ static WRITE8_HANDLER(output_w) // written in "Output Test" in test mode } -static ADDRESS_MAP_START( sgx_mem , AS_PROGRAM, 8) +static ADDRESS_MAP_START( sgx_mem , AS_PROGRAM, 8, ggconnie_state ) AM_RANGE( 0x000000, 0x0fffff) AM_ROM AM_RANGE( 0x110000, 0x1edfff) AM_NOP AM_RANGE( 0x1ee800, 0x1effff) AM_NOP @@ -143,7 +143,7 @@ static ADDRESS_MAP_START( sgx_mem , AS_PROGRAM, 8) AM_RANGE( 0x1ff400, 0x1ff7ff) AM_READWRITE(h6280_irq_status_r, h6280_irq_status_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sgx_io , AS_IO, 8) +static ADDRESS_MAP_START( sgx_io , AS_IO, 8, ggconnie_state ) AM_RANGE( 0x00, 0x03) AM_READWRITE( sgx_vdc_r, sgx_vdc_w ) ADDRESS_MAP_END diff --git a/src/mame/drivers/ghosteo.c b/src/mame/drivers/ghosteo.c index c54cd36aae5..d8bdd29806e 100644 --- a/src/mame/drivers/ghosteo.c +++ b/src/mame/drivers/ghosteo.c @@ -345,7 +345,7 @@ static WRITE32_HANDLER( sound_w ) } } -static ADDRESS_MAP_START( bballoon_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( bballoon_map, AS_PROGRAM, 32, ghosteo_state ) AM_RANGE(0x10000000, 0x10000003) AM_READ_PORT("10000000") AM_RANGE(0x10100000, 0x10100003) AM_READ_PORT("10100000") AM_RANGE(0x10200000, 0x10200003) AM_READ_PORT("10200000") diff --git a/src/mame/drivers/gijoe.c b/src/mame/drivers/gijoe.c index 19ec8ebe123..15911f6e3ad 100644 --- a/src/mame/drivers/gijoe.c +++ b/src/mame/drivers/gijoe.c @@ -165,7 +165,7 @@ static void sound_nmi( device_t *device ) device_set_input_line(state->m_audiocpu, INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( gijoe_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gijoe_map, AS_PROGRAM, 16, gijoe_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM AM_BASE_MEMBER(gijoe_state, m_spriteram) // Sprites AM_RANGE(0x110000, 0x110007) AM_DEVWRITE("k053246", k053246_word_w) @@ -196,7 +196,7 @@ static ADDRESS_MAP_START( gijoe_map, AS_PROGRAM, 16 ) #endif ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gijoe_state ) AM_RANGE(0x0000, 0xebff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xfa2f) AM_DEVREADWRITE_MODERN("k054539", k054539_device, read, write) diff --git a/src/mame/drivers/ginganin.c b/src/mame/drivers/ginganin.c index ea87cf4c35a..8a99e7a279c 100644 --- a/src/mame/drivers/ginganin.c +++ b/src/mame/drivers/ginganin.c @@ -70,7 +70,7 @@ f5d6 print 7 digit BCD number: d0.l to (a1)+ color $3000 */ -static ADDRESS_MAP_START( ginganin_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ginganin_map, AS_PROGRAM, 16, ginganin_state ) /* The ROM area: 10000-13fff is written with: 0000 0000 0000 0001, at startup only. Why? */ AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x020000, 0x023fff) AM_RAM @@ -90,7 +90,7 @@ ADDRESS_MAP_END ** */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ginganin_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0807) AM_DEVREADWRITE_MODERN("6840ptm", ptm6840_device, read, write) AM_RANGE(0x1800, 0x1800) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/gladiatr.c b/src/mame/drivers/gladiatr.c index 3e226d57668..aa0161a5742 100644 --- a/src/mame/drivers/gladiatr.c +++ b/src/mame/drivers/gladiatr.c @@ -374,7 +374,7 @@ static MACHINE_RESET( ppking ) state->m_flag1 = state->m_flag2 = 1; } -static ADDRESS_MAP_START( ppking_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ppking_cpu1_map, AS_PROGRAM, 8, gladiatr_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcbff) AM_RAM AM_BASE_MEMBER(gladiatr_state, m_spriteram) AM_RANGE(0xcc00, 0xcfff) AM_WRITE(ppking_video_registers_w) @@ -386,12 +386,12 @@ static ADDRESS_MAP_START( ppking_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ppking_cpu3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ppking_cpu3_map, AS_PROGRAM, 8, gladiatr_state ) AM_RANGE(0x2000, 0x2fff) AM_ROM AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( ppking_cpu1_io, AS_IO, 8 ) +static ADDRESS_MAP_START( ppking_cpu1_io, AS_IO, 8, gladiatr_state ) // ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xc000, 0xc000) AM_WRITE(gladiatr_spritebuffer_w) AM_RANGE(0xc004, 0xc004) AM_NOP // WRITE(ppking_irq_patch_w) @@ -399,7 +399,7 @@ static ADDRESS_MAP_START( ppking_cpu1_io, AS_IO, 8 ) AM_RANGE(0xc0bf, 0xc0bf) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( ppking_cpu2_io, AS_IO, 8 ) +static ADDRESS_MAP_START( ppking_cpu2_io, AS_IO, 8, gladiatr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x20, 0x21) AM_READ(qx1_r) AM_WRITE(qx1_w) @@ -411,7 +411,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( gladiatr_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gladiatr_cpu1_map, AS_PROGRAM, 8, gladiatr_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcbff) AM_RAM AM_BASE_MEMBER(gladiatr_state, m_spriteram) @@ -423,19 +423,19 @@ static ADDRESS_MAP_START( gladiatr_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, gladiatr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( gladiatr_cpu3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gladiatr_cpu3_map, AS_PROGRAM, 8, gladiatr_state ) AM_RANGE(0x1000, 0x1fff) AM_DEVWRITE("msm", glad_adpcm_w) AM_RANGE(0x2000, 0x2fff) AM_READ(glad_cpu_sound_command_r) AM_RANGE(0x4000, 0xffff) AM_ROMBANK("bank2") ADDRESS_MAP_END -static ADDRESS_MAP_START( gladiatr_cpu1_io, AS_IO, 8 ) +static ADDRESS_MAP_START( gladiatr_cpu1_io, AS_IO, 8, gladiatr_state ) // ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xc000, 0xc000) AM_WRITE(gladiatr_spritebuffer_w) AM_RANGE(0xc001, 0xc001) AM_WRITE(gladiatr_spritebank_w) @@ -446,7 +446,7 @@ static ADDRESS_MAP_START( gladiatr_cpu1_io, AS_IO, 8 ) AM_RANGE(0xc0bf, 0xc0bf) AM_NOP // watchdog_reset_w doesn't work ADDRESS_MAP_END -static ADDRESS_MAP_START( gladiatr_cpu2_io, AS_IO, 8 ) +static ADDRESS_MAP_START( gladiatr_cpu2_io, AS_IO, 8, gladiatr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x20, 0x21) AM_READWRITE(TAITO8741_1_r, TAITO8741_1_w) diff --git a/src/mame/drivers/glass.c b/src/mame/drivers/glass.c index 472764a73a9..91c97a7ba5d 100644 --- a/src/mame/drivers/glass.c +++ b/src/mame/drivers/glass.c @@ -78,7 +78,7 @@ static WRITE16_HANDLER( glass_coin_w ) } } -static ADDRESS_MAP_START( glass_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( glass_map, AS_PROGRAM, 16, glass_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(glass_vram_w) AM_BASE_MEMBER(glass_state, m_videoram) /* Video RAM */ AM_RANGE(0x102000, 0x102fff) AM_RAM /* Extra Video RAM */ diff --git a/src/mame/drivers/gng.c b/src/mame/drivers/gng.c index 5b9b10735a7..44300659667 100644 --- a/src/mame/drivers/gng.c +++ b/src/mame/drivers/gng.c @@ -40,7 +40,7 @@ static WRITE8_HANDLER( gng_coin_counter_w ) coin_counter_w(space->machine(), offset, data); } -static ADDRESS_MAP_START( gng_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gng_map, AS_PROGRAM, 8, gng_state ) AM_RANGE(0x0000, 0x1dff) AM_RAM AM_RANGE(0x1e00, 0x1fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(gng_fgvideoram_w) AM_BASE_MEMBER(gng_state, m_fgvideoram) @@ -66,7 +66,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gng_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc800) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/go2000.c b/src/mame/drivers/go2000.c index c080f3c7fa9..7ab614cf5e6 100644 --- a/src/mame/drivers/go2000.c +++ b/src/mame/drivers/go2000.c @@ -57,7 +57,7 @@ static WRITE16_HANDLER( sound_cmd_w ) device_set_input_line(state->m_soundcpu, 0, HOLD_LINE); } -static ADDRESS_MAP_START( go2000_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( go2000_map, AS_PROGRAM, 16, go2000_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x203fff) AM_RAM AM_RANGE(0x600000, 0x60ffff) AM_RAM AM_BASE_MEMBER(go2000_state, m_videoram) @@ -76,12 +76,12 @@ static WRITE8_HANDLER( go2000_pcm_1_bankswitch_w ) memory_set_bank(space->machine(), "bank1", data & 0x07); } -static ADDRESS_MAP_START( go2000_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( go2000_sound_map, AS_PROGRAM, 8, go2000_state ) AM_RANGE(0x0000, 0x03ff) AM_ROM AM_RANGE(0x0400, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( go2000_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( go2000_sound_io, AS_IO, 8, go2000_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac1", dac_w) diff --git a/src/mame/drivers/goal92.c b/src/mame/drivers/goal92.c index 41ea74949dc..c254eddec36 100644 --- a/src/mame/drivers/goal92.c +++ b/src/mame/drivers/goal92.c @@ -47,7 +47,7 @@ static READ16_HANDLER( goal92_inputs_r ) return 0; } -static ADDRESS_MAP_START( goal92_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( goal92_map, AS_PROGRAM, 16, goal92_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1007ff) AM_RAM AM_RANGE(0x100800, 0x100fff) AM_RAM_WRITE(goal92_background_w) AM_BASE_MEMBER(goal92_state, m_bg_data) @@ -81,7 +81,7 @@ static WRITE8_HANDLER( adpcm_data_w ) state->m_msm5205next = data; } -static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, goal92_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("msm", adpcm_control_w) diff --git a/src/mame/drivers/goindol.c b/src/mame/drivers/goindol.c index 3e212f56354..d273679ff53 100644 --- a/src/mame/drivers/goindol.c +++ b/src/mame/drivers/goindol.c @@ -87,7 +87,7 @@ static WRITE8_HANDLER( prot_fcb0_w ) -static ADDRESS_MAP_START( goindol_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( goindol_map, AS_PROGRAM, 8, goindol_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_MEMBER(goindol_state, m_ram) @@ -113,7 +113,7 @@ static ADDRESS_MAP_START( goindol_map, AS_PROGRAM, 8 ) AM_RANGE(0xfd99, 0xfd99) AM_WRITE(prot_fd99_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, goindol_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ymsnd", ym2203_w) AM_RANGE(0xc000, 0xc7ff) AM_RAM diff --git a/src/mame/drivers/goldngam.c b/src/mame/drivers/goldngam.c index 140431e30d8..822072c4d07 100644 --- a/src/mame/drivers/goldngam.c +++ b/src/mame/drivers/goldngam.c @@ -297,7 +297,7 @@ static READ16_HANDLER(unk_r) return test1; } -static ADDRESS_MAP_START( swisspkr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( swisspkr_map, AS_PROGRAM, 16, goldngam_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x400002, 0x400003) AM_NOP // hopper status read ? @@ -347,7 +347,7 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( moviecrd_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( moviecrd_map, AS_PROGRAM, 16, goldngam_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0xc00000, 0xc3ffff) AM_RAM AM_BASE_MEMBER(goldngam_state, m_videoram) diff --git a/src/mame/drivers/goldnpkr.c b/src/mame/drivers/goldnpkr.c index b1519565419..2ff12abecd6 100644 --- a/src/mame/drivers/goldnpkr.c +++ b/src/mame/drivers/goldnpkr.c @@ -1338,7 +1338,7 @@ static WRITE8_DEVICE_HANDLER( sound_w ) * Memory Map Information * *********************************************/ -static ADDRESS_MAP_START( goldnpkr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( goldnpkr_map, AS_PROGRAM, 8, goldnpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) @@ -1350,7 +1350,7 @@ static ADDRESS_MAP_START( goldnpkr_map, AS_PROGRAM, 8 ) AM_RANGE(0x2000, 0x7fff) AM_ROM /* superdbl uses 0x2000..0x3fff address space */ ADDRESS_MAP_END -static ADDRESS_MAP_START( pottnpkr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pottnpkr_map, AS_PROGRAM, 8, goldnpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) @@ -1362,7 +1362,7 @@ static ADDRESS_MAP_START( pottnpkr_map, AS_PROGRAM, 8 ) AM_RANGE(0x2000, 0x3fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( witchcrd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( witchcrd_map, AS_PROGRAM, 8, goldnpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) @@ -1389,7 +1389,7 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( witchcrd_falcon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( witchcrd_falcon_map, AS_PROGRAM, 8, goldnpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0844, 0x0847) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) @@ -1402,7 +1402,7 @@ static ADDRESS_MAP_START( witchcrd_falcon_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( wildcard_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wildcard_map, AS_PROGRAM, 8, goldnpkr_state ) // ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) @@ -1424,7 +1424,7 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( wcrdxtnd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wcrdxtnd_map, AS_PROGRAM, 8, goldnpkr_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM //AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE_MODERN("crtc", mc6845_device, register_r, register_w) @@ -1444,7 +1444,7 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( wildcrdb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wildcrdb_map, AS_PROGRAM, 8, goldnpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0844, 0x0847) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) @@ -1458,13 +1458,13 @@ static ADDRESS_MAP_START( wildcrdb_map, AS_PROGRAM, 8 ) AM_RANGE(0x3000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( wildcrdb_mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wildcrdb_mcu_map, AS_PROGRAM, 8, goldnpkr_state ) // ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x2fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( wildcrdb_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( wildcrdb_mcu_io_map, AS_IO, 8, goldnpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END @@ -1477,7 +1477,7 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( genie_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( genie_map, AS_PROGRAM, 8, goldnpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM */ AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) diff --git a/src/mame/drivers/goldstar.c b/src/mame/drivers/goldstar.c index b7edc524757..6665046f88c 100644 --- a/src/mame/drivers/goldstar.c +++ b/src/mame/drivers/goldstar.c @@ -138,7 +138,7 @@ static READ8_HANDLER( protection_r ) return data[state->m_dataoffset++]; } -static ADDRESS_MAP_START( goldstar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( goldstar_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0xb7ff) AM_ROM AM_RANGE(0xb800, 0xbfff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xc000, 0xc7ff) AM_ROM @@ -169,7 +169,7 @@ static ADDRESS_MAP_START( goldstar_map, AS_PROGRAM, 8 ) AM_RANGE(0xfe00, 0xfe00) AM_READWRITE(protection_r,protection_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( goldstar_readport, AS_IO, 8 ) +static ADDRESS_MAP_START( goldstar_readport, AS_IO, 8, goldstar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_READ_PORT("DSW6") ADDRESS_MAP_END @@ -181,7 +181,7 @@ static WRITE8_HANDLER( ncb3_port81_w ) } -static ADDRESS_MAP_START( ncb3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ncb3_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0xb7ff) AM_ROM AM_RANGE(0xb800, 0xbfff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xc000, 0xc7ff) AM_ROM @@ -206,7 +206,7 @@ static ADDRESS_MAP_START( ncb3_map, AS_PROGRAM, 8 ) AM_RANGE(0xf870, 0xf870) AM_DEVWRITE("snsnd", sn76496_w) /* guess... device is initialized, but doesn't seems to be used.*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( ncb3_readwriteport, AS_IO, 8 ) +static ADDRESS_MAP_START( ncb3_readwriteport, AS_IO, 8, goldstar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x00) AM_READ(ncb3_unkread_r) // read from 0x00 when controls set1 is used... // AM_RANGE(0x02, 0x02) AM_READ(ncb3_unkread_r) // read from 0x02 when controls set2 is used... @@ -253,7 +253,7 @@ static WRITE8_HANDLER( cm_outport1_w ) /* lamps? */ } -static ADDRESS_MAP_START( cm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cm_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0xcfff) AM_ROM AM_WRITENOP AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("nvram") @@ -275,7 +275,7 @@ static ADDRESS_MAP_START( cm_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc80, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( nfm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nfm_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0xd7ff) AM_ROM AM_WRITENOP AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("nvram") @@ -299,7 +299,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( cm_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cm_portmap, AS_IO, 8, goldstar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -313,7 +313,7 @@ static ADDRESS_MAP_START( cm_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cmast91_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cmast91_portmap, AS_IO, 8, goldstar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) /* Input Ports */ AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) /* DIP switches */ @@ -322,7 +322,7 @@ static ADDRESS_MAP_START( cmast91_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( amcoe1_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( amcoe1_portmap, AS_IO, 8, goldstar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -335,7 +335,7 @@ static ADDRESS_MAP_START( amcoe1_portmap, AS_IO, 8 ) AM_RANGE(0x20, 0x20) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) ADDRESS_MAP_END -static ADDRESS_MAP_START( amcoe2_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( amcoe2_portmap, AS_IO, 8, goldstar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02, 0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -361,7 +361,7 @@ static WRITE8_HANDLER( lucky8_outport_w ) } -static ADDRESS_MAP_START( lucky8_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lucky8_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_BASE_MEMBER(goldstar_state,m_fg_vidram) @@ -405,7 +405,7 @@ static WRITE8_HANDLER( magodds_outb860_w ) // popmessage("magodds_outb860_w %02x\n", data); } -static ADDRESS_MAP_START(magodds_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START(magodds_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // where does the extra rom data map?? it seems like it should come straight after the existing rom, but it can't if this is a plain z80? AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share1") AM_SHARE("nvram") @@ -429,7 +429,7 @@ static ADDRESS_MAP_START(magodds_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("maincpu",0xc000) ADDRESS_MAP_END -static ADDRESS_MAP_START( kkotnoli_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kkotnoli_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM /* definitely no NVRAM */ AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_BASE_MEMBER(goldstar_state,m_fg_vidram) @@ -468,7 +468,7 @@ ADDRESS_MAP_END // popmessage("Output: %02X", data); //} -static ADDRESS_MAP_START( ladylinr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ladylinr_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_BASE_MEMBER(goldstar_state,m_fg_vidram) @@ -489,7 +489,7 @@ static ADDRESS_MAP_START( ladylinr_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( wcat3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wcat3_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(goldstar_fg_vidram_w) AM_BASE_MEMBER(goldstar_state,m_fg_vidram) @@ -523,7 +523,7 @@ static READ8_HANDLER( unkch_unk_r ) /* newer / more capable hw */ -static ADDRESS_MAP_START( unkch_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( unkch_map, AS_PROGRAM, 8, goldstar_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xc000, 0xc1ff) AM_RAM_WRITE(paletteram_xBBBBBGGGGGRRRRR_split1_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xc800, 0xc9ff) AM_RAM_WRITE(paletteram_xBBBBBGGGGGRRRRR_split2_w) AM_BASE_GENERIC(paletteram2) @@ -575,7 +575,7 @@ static WRITE8_HANDLER( unkcm_0x12_w ) } -static ADDRESS_MAP_START( unkch_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( unkch_portmap, AS_IO, 8, goldstar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02, 0x02) AM_WRITE(unkcm_0x02_w) diff --git a/src/mame/drivers/gomoku.c b/src/mame/drivers/gomoku.c index e22704fbda2..9d75923ca83 100644 --- a/src/mame/drivers/gomoku.c +++ b/src/mame/drivers/gomoku.c @@ -38,7 +38,7 @@ static READ8_HANDLER( input_port_r ) } -static ADDRESS_MAP_START( gomoku_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gomoku_map, AS_PROGRAM, 8, gomoku_state ) AM_RANGE(0x0000, 0x47ff) AM_ROM AM_RANGE(0x4800, 0x4fff) AM_RAM AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(gomoku_videoram_w) AM_BASE_MEMBER(gomoku_state, m_videoram) diff --git a/src/mame/drivers/good.c b/src/mame/drivers/good.c index 74f9969ab7c..2bab97bb5e8 100644 --- a/src/mame/drivers/good.c +++ b/src/mame/drivers/good.c @@ -101,7 +101,7 @@ static SCREEN_UPDATE_IND16( good ) return 0; } -static ADDRESS_MAP_START( good_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( good_map, AS_PROGRAM, 16, good_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM //AM_RANGE(0x270000, 0x270007) AM_RAM // scroll? diff --git a/src/mame/drivers/goodejan.c b/src/mame/drivers/goodejan.c index 3211e172fc4..5683f1807ab 100644 --- a/src/mame/drivers/goodejan.c +++ b/src/mame/drivers/goodejan.c @@ -102,7 +102,7 @@ static WRITE16_HANDLER( mahjong_panel_w ) state->m_mux_data = data; } -static ADDRESS_MAP_START( goodejan_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( goodejan_map, AS_PROGRAM, 16, goodejan_state ) AM_RANGE(0x00000, 0x0afff) AM_RAM AM_RANGE(0x0c000, 0x0c7ff) AM_RAM_WRITE(seibucrtc_sc0vram_w) AM_BASE(&seibucrtc_sc0vram) AM_RANGE(0x0c800, 0x0cfff) AM_RAM_WRITE(seibucrtc_sc3vram_w) AM_BASE(&seibucrtc_sc3vram) @@ -115,7 +115,7 @@ static ADDRESS_MAP_START( goodejan_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /*totmejan CRT is at 8000-804f,goodejan is at 8040-807f(808f but not tested)*/ -static ADDRESS_MAP_START( common_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( common_io_map, AS_IO, 16, goodejan_state ) AM_RANGE(0x9000, 0x9001) AM_WRITE(goodejan_gfxbank_w) AM_RANGE(0xb000, 0xb003) AM_WRITENOP AM_RANGE(0xb004, 0xb005) AM_WRITE(mahjong_panel_w) @@ -126,12 +126,12 @@ static ADDRESS_MAP_START( common_io_map, AS_IO, 16 ) AM_RANGE(0xd000, 0xd00f) AM_READWRITE(seibu_main_word_r, seibu_main_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( totmejan_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( totmejan_io_map, AS_IO, 16, goodejan_state ) AM_RANGE(0x8000, 0x804f) AM_RAM_WRITE(seibucrtc_vregs_w) AM_BASE(&seibucrtc_vregs) AM_IMPORT_FROM(common_io_map) ADDRESS_MAP_END -static ADDRESS_MAP_START( goodejan_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( goodejan_io_map, AS_IO, 16, goodejan_state ) AM_RANGE(0x8040, 0x807f) AM_RAM_WRITE(seibucrtc_vregs_w) AM_BASE(&seibucrtc_vregs) AM_IMPORT_FROM(common_io_map) ADDRESS_MAP_END diff --git a/src/mame/drivers/gotcha.c b/src/mame/drivers/gotcha.c index 76de1756a6e..29adda25c5a 100644 --- a/src/mame/drivers/gotcha.c +++ b/src/mame/drivers/gotcha.c @@ -95,7 +95,7 @@ static WRITE16_DEVICE_HANDLER( gotcha_oki_bank_w ) } -static ADDRESS_MAP_START( gotcha_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gotcha_map, AS_PROGRAM, 16, gotcha_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_WRITE(soundlatch_word_w) AM_RANGE(0x100002, 0x100003) AM_WRITE(gotcha_lamps_w) @@ -115,7 +115,7 @@ static ADDRESS_MAP_START( gotcha_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gotcha_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0xc002, 0xc003) AM_DEVWRITE_MODERN("oki", okim6295_device, write) // TWO addresses! diff --git a/src/mame/drivers/gottlieb.c b/src/mame/drivers/gottlieb.c index 6606873a015..31c98a1e566 100644 --- a/src/mame/drivers/gottlieb.c +++ b/src/mame/drivers/gottlieb.c @@ -702,7 +702,7 @@ static WRITE8_HANDLER( gottlieb_sh_w ) state->m_r2_sound->write(*space, offset, data); } -static ADDRESS_MAP_START( reactor_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( reactor_map, AS_PROGRAM, 8, gottlieb_state ) ADDRESS_MAP_GLOBAL_MASK(0xffff) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x20ff) AM_MIRROR(0x0f00) AM_WRITEONLY AM_BASE_MEMBER(gottlieb_state, m_spriteram) /* FRSEL */ @@ -723,7 +723,7 @@ static ADDRESS_MAP_START( reactor_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( gottlieb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gottlieb_map, AS_PROGRAM, 8, gottlieb_state ) ADDRESS_MAP_GLOBAL_MASK(0xffff) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x1000, 0x1fff) AM_RAM AM_REGION("maincpu", 0x1000) /* or ROM */ diff --git a/src/mame/drivers/gotya.c b/src/mame/drivers/gotya.c index 65a5c434459..b064c53559f 100644 --- a/src/mame/drivers/gotya.c +++ b/src/mame/drivers/gotya.c @@ -39,7 +39,7 @@ TODO: Emulated sound #include "includes/gotya.h" -static ADDRESS_MAP_START( gotya_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gotya_map, AS_PROGRAM, 8, gotya_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x5000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ_PORT("P1") diff --git a/src/mame/drivers/gpworld.c b/src/mame/drivers/gpworld.c index f87ca864db5..5ca15bedd46 100644 --- a/src/mame/drivers/gpworld.c +++ b/src/mame/drivers/gpworld.c @@ -291,7 +291,7 @@ static WRITE8_HANDLER( palette_write ) } /* PROGRAM MAP */ -static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8, gpworld_state ) AM_RANGE(0x0000,0xbfff) AM_ROM AM_RANGE(0xc000,0xc7ff) AM_RAM AM_BASE_MEMBER(gpworld_state, m_sprite_RAM) AM_RANGE(0xc800,0xcfff) AM_WRITE(palette_write) AM_BASE_MEMBER(gpworld_state, m_palette_RAM) /* The memory test reads at 0xc800 */ @@ -308,7 +308,7 @@ ADDRESS_MAP_END /* I/O MAP */ -static ADDRESS_MAP_START( mainport, AS_IO, 8 ) +static ADDRESS_MAP_START( mainport, AS_IO, 8, gpworld_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01,0x01) AM_WRITE(misc_io_write) AM_RANGE(0x80,0x80) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/gradius3.c b/src/mame/drivers/gradius3.c index 71108b4f03b..b5696dfd026 100644 --- a/src/mame/drivers/gradius3.c +++ b/src/mame/drivers/gradius3.c @@ -164,7 +164,7 @@ static WRITE8_DEVICE_HANDLER( sound_bank_w ) -static ADDRESS_MAP_START( gradius3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gradius3_map, AS_PROGRAM, 16, gradius3_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) @@ -185,7 +185,7 @@ static ADDRESS_MAP_START( gradius3_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( gradius3_map2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gradius3_map2, AS_PROGRAM, 16, gradius3_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x140000, 0x140001) AM_WRITE(cpuB_irqenable_w) @@ -198,7 +198,7 @@ static ADDRESS_MAP_START( gradius3_map2, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( gradius3_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gradius3_s_map, AS_PROGRAM, 8, gradius3_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf000) AM_DEVWRITE("k007232", sound_bank_w) /* 007232 bankswitch */ AM_RANGE(0xf010, 0xf010) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/grchamp.c b/src/mame/drivers/grchamp.c index 14de0ad5b24..0a3ddfe9bb9 100644 --- a/src/mame/drivers/grchamp.c +++ b/src/mame/drivers/grchamp.c @@ -517,7 +517,7 @@ GFXDECODE_END *************************************/ /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, grchamp_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0400) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0x0400) AM_RAM AM_BASE_MEMBER(grchamp_state, m_radarram) @@ -526,7 +526,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, grchamp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_MIRROR(0x78) AM_READ_PORT("ACCEL") AM_RANGE(0x02, 0x02) AM_MIRROR(0x78) AM_READ(sub_to_main_comm_r) @@ -545,7 +545,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, grchamp_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(grchamp_left_w) AM_BASE_MEMBER(grchamp_state, m_leftram) AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(grchamp_right_w) AM_BASE_MEMBER(grchamp_state, m_rightram) @@ -555,7 +555,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sub_portmap, AS_IO, 8, grchamp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_READ(main_to_sub_comm_r) AM_RANGE(0x00, 0x0f) AM_MIRROR(0x70) AM_WRITE(cpu1_outputs_w) @@ -563,7 +563,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, grchamp_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x4800, 0x4801) AM_MIRROR(0x07f8) AM_DEVWRITE("ay1", ay8910_address_data_w) diff --git a/src/mame/drivers/gridlee.c b/src/mame/drivers/gridlee.c index 87b0d8be2ae..19583db42fb 100644 --- a/src/mame/drivers/gridlee.c +++ b/src/mame/drivers/gridlee.c @@ -306,7 +306,7 @@ static WRITE8_HANDLER( gridlee_coin_counter_w ) *************************************/ /* CPU 1 read addresses */ -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, gridlee_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_BASE_MEMBER(gridlee_state, m_spriteram) AM_RANGE(0x0800, 0x7fff) AM_RAM_WRITE(gridlee_videoram_w) AM_BASE_MEMBER(gridlee_state, m_videoram) AM_RANGE(0x9000, 0x9000) AM_WRITE(led_0_w) diff --git a/src/mame/drivers/groundfx.c b/src/mame/drivers/groundfx.c index a0d2382d88b..75abcec0918 100644 --- a/src/mame/drivers/groundfx.c +++ b/src/mame/drivers/groundfx.c @@ -215,7 +215,7 @@ static WRITE32_HANDLER( motor_control_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( groundfx_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( groundfx_map, AS_PROGRAM, 32, groundfx_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_BASE_MEMBER(groundfx_state, m_ram) /* main CPUA ram */ AM_RANGE(0x300000, 0x303fff) AM_RAM AM_BASE_SIZE_MEMBER(groundfx_state, m_spriteram, m_spriteram_size) /* sprite ram */ diff --git a/src/mame/drivers/gstream.c b/src/mame/drivers/gstream.c index 1bb12d20cdf..db1f792b6e2 100644 --- a/src/mame/drivers/gstream.c +++ b/src/mame/drivers/gstream.c @@ -265,7 +265,7 @@ static WRITE32_HANDLER( gstream_tilemap3_scrolly_w ) state->m_tmap3_scrolly = data; } -static ADDRESS_MAP_START( gstream_32bit_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gstream_32bit_map, AS_PROGRAM, 32, gstream_state ) AM_RANGE(0x00000000, 0x003FFFFF) AM_RAM AM_BASE_MEMBER(gstream_state, m_workram) // work ram // AM_RANGE(0x40000000, 0x40FFFFFF) AM_RAM // ?? lots of data gets copied here if present, but game runs without it?? AM_RANGE(0x80000000, 0x80003FFF) AM_RAM_WRITE(gstream_vram_w) AM_BASE_MEMBER(gstream_state, m_vram) // video ram @@ -351,7 +351,7 @@ static WRITE32_HANDLER( gstream_oki_4040_w ) // data == 0 or data == 0x81 } -static ADDRESS_MAP_START( gstream_io, AS_IO, 32 ) +static ADDRESS_MAP_START( gstream_io, AS_IO, 32, gstream_state ) AM_RANGE(0x4000, 0x4003) AM_READ_PORT("IN0") AM_RANGE(0x4010, 0x4013) AM_READ_PORT("IN1") AM_RANGE(0x4020, 0x4023) AM_READ_PORT("IN2") // extra coin switches etc diff --git a/src/mame/drivers/gstriker.c b/src/mame/drivers/gstriker.c index 6f5b872a862..14ebb6ac7a9 100644 --- a/src/mame/drivers/gstriker.c +++ b/src/mame/drivers/gstriker.c @@ -280,7 +280,7 @@ static const ym2610_interface ym2610_config = -static ADDRESS_MAP_START( gstriker_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gstriker_map, AS_PROGRAM, 16, gstriker_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(MB60553_0_vram_w) AM_BASE_MEMBER(gstriker_state, m_MB60553[0].vram) AM_RANGE(0x140000, 0x141fff) AM_RAM AM_BASE_MEMBER(gstriker_state, m_CG10103[0].vram) @@ -302,13 +302,13 @@ static ADDRESS_MAP_START( gstriker_map, AS_PROGRAM, 16 ) AM_RANGE(0xffc000, 0xffffff) AM_RAM AM_BASE_MEMBER(gstriker_state, m_work_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gstriker_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, gstriker_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) AM_RANGE(0x04, 0x04) AM_WRITE(gs_sh_bankswitch_w) @@ -317,7 +317,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( vgoal_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vgoal_map, AS_PROGRAM, 16, gstriker_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(MB60553_0_vram_w) AM_BASE_MEMBER(gstriker_state, m_MB60553[0].vram) AM_RANGE(0x140000, 0x141fff) AM_RAM AM_BASE_MEMBER(gstriker_state, m_CG10103[0].vram) diff --git a/src/mame/drivers/gsword.c b/src/mame/drivers/gsword.c index d77bd3745aa..e685ca738bd 100644 --- a/src/mame/drivers/gsword.c +++ b/src/mame/drivers/gsword.c @@ -330,7 +330,7 @@ static WRITE8_HANDLER( adpcm_soundcommand_w ) cputag_set_input_line(space->machine(), "audiocpu", INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM , 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM , 8, gsword_state ) AM_RANGE(0x0000, 0x8fff) AM_ROM AM_RANGE(0x9000, 0x9fff) AM_RAM AM_RANGE(0xa000, 0xa37f) AM_RAM @@ -344,24 +344,24 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM , 8 ) AM_RANGE(0xb000, 0xb7ff) AM_RAM_WRITE(gsword_videoram_w) AM_BASE_MEMBER(gsword_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu1_io_map, AS_IO, 8, gsword_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x7e, 0x7f) AM_WRITE(TAITO8741_0_w) AM_READ(TAITO8741_0_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( josvolly_cpu1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( josvolly_cpu1_io_map, AS_IO, 8, gsword_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x7e, 0x7f) AM_WRITE(josvolly_8741_0_w) AM_READ(josvolly_8741_0_r) ADDRESS_MAP_END // -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, gsword_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_MEMBER(gsword_state, m_cpu2_ram) AM_RANGE(0x6000, 0x6000) AM_WRITE(adpcm_soundcommand_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu2_io_map, AS_IO, 8, gsword_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_READWRITE(TAITO8741_2_r,TAITO8741_2_w) AM_RANGE(0x20, 0x21) AM_READWRITE(TAITO8741_3_r,TAITO8741_3_w) @@ -378,14 +378,14 @@ ADDRESS_MAP_END // -static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8, gsword_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("msm", gsword_adpcm_data_w) AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( josvolly_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( josvolly_cpu2_map, AS_PROGRAM, 8, gsword_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_MEMBER(gsword_state, m_cpu2_ram) @@ -398,7 +398,7 @@ static ADDRESS_MAP_START( josvolly_cpu2_map, AS_PROGRAM, 8 ) AM_RANGE(0xA000, 0xA001) AM_WRITE(josvolly_8741_1_w) AM_READ(josvolly_8741_1_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( josvolly_cpu2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( josvolly_cpu2_io_map, AS_IO, 8, gsword_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ay1", gsword_fake_0_r, gsword_AY8910_control_port_0_w) AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_data_w) diff --git a/src/mame/drivers/gticlub.c b/src/mame/drivers/gticlub.c index 808a65b4b15..afaa7db71db 100644 --- a/src/mame/drivers/gticlub.c +++ b/src/mame/drivers/gticlub.c @@ -400,7 +400,7 @@ static MACHINE_START( gticlub ) ppcdrc_add_fastram(machine.device("maincpu"), 0x00000000, 0x000fffff, FALSE, state->m_work_ram); } -static ADDRESS_MAP_START( gticlub_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gticlub_map, AS_PROGRAM, 32, gticlub_state ) AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_BASE_MEMBER(gticlub_state, m_work_ram) /* Work RAM */ AM_RANGE(0x74000000, 0x740000ff) AM_READWRITE(gticlub_k001604_reg_r, gticlub_k001604_reg_w) AM_RANGE(0x74010000, 0x7401ffff) AM_RAM_WRITE(paletteram32_w) AM_BASE_GENERIC(paletteram) @@ -423,7 +423,7 @@ ADDRESS_MAP_END /**********************************************************************/ -static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, gticlub_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x300000, 0x30000f) AM_DEVREADWRITE("k056800", k056800_sound_r, k056800_sound_w) @@ -458,14 +458,14 @@ static WRITE32_HANDLER( dsp_dataram1_w ) state->m_sharc_dataram_1[offset] = data; } -static ADDRESS_MAP_START( sharc_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( sharc_map, AS_DATA, 32, gticlub_state ) AM_RANGE(0x400000, 0x41ffff) AM_READWRITE(cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w) AM_RANGE(0x500000, 0x5fffff) AM_READWRITE(dsp_dataram0_r, dsp_dataram0_w) AM_RANGE(0x600000, 0x6fffff) AM_READWRITE(K001005_r, K001005_w) AM_RANGE(0x700000, 0x7000ff) AM_READWRITE(cgboard_0_comm_sharc_r, cgboard_0_comm_sharc_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hangplt_sharc0_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( hangplt_sharc0_map, AS_DATA, 32, gticlub_state ) AM_RANGE(0x0400000, 0x041ffff) AM_READWRITE(cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w) AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram0_r, dsp_dataram0_w) AM_RANGE(0x1400000, 0x14fffff) AM_RAM @@ -476,7 +476,7 @@ static ADDRESS_MAP_START( hangplt_sharc0_map, AS_DATA, 32 ) AM_RANGE(0x3600000, 0x37fffff) AM_ROMBANK("bank5") ADDRESS_MAP_END -static ADDRESS_MAP_START( hangplt_sharc1_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( hangplt_sharc1_map, AS_DATA, 32, gticlub_state ) AM_RANGE(0x0400000, 0x041ffff) AM_READWRITE(cgboard_1_shared_sharc_r, cgboard_1_shared_sharc_w) AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram1_r, dsp_dataram1_w) AM_RANGE(0x1400000, 0x14fffff) AM_RAM diff --git a/src/mame/drivers/guab.c b/src/mame/drivers/guab.c index 56557e19810..cb3fbcfa979 100644 --- a/src/mame/drivers/guab.c +++ b/src/mame/drivers/guab.c @@ -679,7 +679,7 @@ static WRITE16_HANDLER( io_w ) * *************************************/ -static ADDRESS_MAP_START( guab_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( guab_map, AS_PROGRAM, 16, guab_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x04ffff) AM_ROM AM_REGION("maincpu", 0x10000) AM_RANGE(0x0c0000, 0x0c007f) AM_READWRITE(io_r, io_w) diff --git a/src/mame/drivers/gumbo.c b/src/mame/drivers/gumbo.c index 45ee9de7516..d73e1d56f85 100644 --- a/src/mame/drivers/gumbo.c +++ b/src/mame/drivers/gumbo.c @@ -46,7 +46,7 @@ PCB Layout #include "sound/okim6295.h" #include "includes/gumbo.h" -static ADDRESS_MAP_START( gumbo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gumbo_map, AS_PROGRAM, 16, gumbo_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM // main ram AM_RANGE(0x1b0000, 0x1b03ff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) @@ -59,7 +59,7 @@ ADDRESS_MAP_END /* Miss Puzzle has a different memory map */ -static ADDRESS_MAP_START( mspuzzle_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mspuzzle_map, AS_PROGRAM, 16, gumbo_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM // main ram AM_RANGE(0x190000, 0x197fff) AM_RAM_WRITE(gumbo_fg_videoram_w) AM_BASE_MEMBER(gumbo_state, m_fg_videoram) // fg tilemap @@ -70,7 +70,7 @@ static ADDRESS_MAP_START( mspuzzle_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_WRITE(gumbo_bg_videoram_w) AM_BASE_MEMBER(gumbo_state, m_bg_videoram) // bg tilemap ADDRESS_MAP_END -static ADDRESS_MAP_START( dblpoint_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dblpoint_map, AS_PROGRAM, 16, gumbo_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM // main ram AM_RANGE(0x1b0000, 0x1b03ff) AM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) diff --git a/src/mame/drivers/gunbustr.c b/src/mame/drivers/gunbustr.c index caa66d0d430..756a0789eaa 100644 --- a/src/mame/drivers/gunbustr.c +++ b/src/mame/drivers/gunbustr.c @@ -191,7 +191,7 @@ static WRITE32_HANDLER( gunbustr_gun_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( gunbustr_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gunbustr_map, AS_PROGRAM, 32, gunbustr_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_BASE_MEMBER(gunbustr_state, m_ram) /* main CPUA ram */ AM_RANGE(0x300000, 0x301fff) AM_RAM AM_BASE_SIZE_MEMBER(gunbustr_state, m_spriteram, m_spriteram_size) /* Sprite ram */ diff --git a/src/mame/drivers/gundealr.c b/src/mame/drivers/gundealr.c index 48e2d24da74..1e160853168 100644 --- a/src/mame/drivers/gundealr.c +++ b/src/mame/drivers/gundealr.c @@ -58,7 +58,7 @@ static WRITE8_HANDLER( yamyam_bankswitch_w ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, gundealr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("DSW0") @@ -76,7 +76,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_BASE_MEMBER(gundealr_state, m_rambase) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, gundealr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/gunpey.c b/src/mame/drivers/gunpey.c index b948045f0e5..1b9ce39dba9 100644 --- a/src/mame/drivers/gunpey.c +++ b/src/mame/drivers/gunpey.c @@ -181,14 +181,14 @@ static WRITE8_HANDLER( gunpey_blitter_w ) /***************************************************************************************/ -static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, gunpey_state ) AM_RANGE(0x00000, 0x0ffff) AM_RAM // AM_RANGE(0x50000, 0x500ff) AM_RAM // AM_RANGE(0x50100, 0x502ff) AM_NOP AM_RANGE(0x80000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( io_map, AS_IO, 16, gunpey_state ) AM_RANGE(0x7f40, 0x7f45) AM_READ8(gunpey_inputs_r,0xffff) // AM_RANGE(0x7f48, 0x7f48) AM_WRITE(output_w) diff --git a/src/mame/drivers/gunsmoke.c b/src/mame/drivers/gunsmoke.c index d215920a1a7..598d97ef8b5 100644 --- a/src/mame/drivers/gunsmoke.c +++ b/src/mame/drivers/gunsmoke.c @@ -97,7 +97,7 @@ static READ8_HANDLER( gunsmoke_protection_r ) /* Memory Maps */ -static ADDRESS_MAP_START( gunsmoke_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gunsmoke_map, AS_PROGRAM, 8, gunsmoke_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") @@ -118,7 +118,7 @@ static ADDRESS_MAP_START( gunsmoke_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_SIZE_MEMBER(gunsmoke_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, gunsmoke_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc800) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/gyruss.c b/src/mame/drivers/gyruss.c index d8aa77a6772..d133c48e696 100644 --- a/src/mame/drivers/gyruss.c +++ b/src/mame/drivers/gyruss.c @@ -158,7 +158,7 @@ static WRITE8_HANDLER( slave_irq_mask_w ) state->m_slave_irq_mask = data & 1; } -static ADDRESS_MAP_START( main_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu1_map, AS_PROGRAM, 8, gyruss_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_BASE_MEMBER(gyruss_state, m_colorram) AM_RANGE(0x8400, 0x87ff) AM_RAM AM_BASE_MEMBER(gyruss_state, m_videoram) @@ -174,7 +174,7 @@ static ADDRESS_MAP_START( main_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xc185, 0xc185) AM_WRITEONLY AM_BASE_MEMBER(gyruss_state, m_flipscreen) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu2_map, AS_PROGRAM, 8, gyruss_state ) AM_RANGE(0x0000, 0x0000) AM_READ(gyruss_scanline_r) AM_RANGE(0x2000, 0x2000) AM_WRITE(slave_irq_mask_w) AM_RANGE(0x4000, 0x403f) AM_RAM @@ -184,13 +184,13 @@ static ADDRESS_MAP_START( main_cpu2_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_cpu1_map, AS_PROGRAM, 8, gyruss_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_cpu1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_cpu1_io_map, AS_IO, 8, gyruss_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay1", ay8910_address_w) AM_RANGE(0x01, 0x01) AM_DEVREAD("ay1", ay8910_r) @@ -211,11 +211,11 @@ static ADDRESS_MAP_START( audio_cpu1_io_map, AS_IO, 8 ) AM_RANGE(0x18, 0x18) AM_WRITE(soundlatch2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_cpu2_map, AS_PROGRAM, 8, gyruss_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_cpu2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_cpu2_io_map, AS_IO, 8, gyruss_state ) AM_RANGE(0x00, 0xff) AM_READ(soundlatch2_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("discrete", gyruss_dac_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(gyruss_irq_clear_w) diff --git a/src/mame/drivers/halleys.c b/src/mame/drivers/halleys.c index 90678002777..d5e8902501b 100644 --- a/src/mame/drivers/halleys.c +++ b/src/mame/drivers/halleys.c @@ -1644,7 +1644,7 @@ static READ8_HANDLER( io_mirror_r ) //************************************************************************** // Memory Maps -static ADDRESS_MAP_START( halleys_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( halleys_map, AS_PROGRAM, 8, halleys_state ) AM_RANGE(0x0000, 0x0fff) AM_READWRITE(blitter_r, blitter_w) AM_BASE_MEMBER(halleys_state, m_blitter_ram) AM_SIZE_MEMBER(halleys_state, m_blitter_ramsize) AM_RANGE(0x1f00, 0x1fff) AM_WRITE(bgtile_w) // background tiles?(Ben Bero Beh only) AM_RANGE(0x1000, 0xefff) AM_ROM @@ -1670,7 +1670,7 @@ static ADDRESS_MAP_START( halleys_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, halleys_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4801) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/hanaawas.c b/src/mame/drivers/hanaawas.c index 217e6bce000..a69fab852bf 100644 --- a/src/mame/drivers/hanaawas.c +++ b/src/mame/drivers/hanaawas.c @@ -70,7 +70,7 @@ static WRITE8_HANDLER( hanaawas_inputs_mux_w ) state->m_mux = data; } -static ADDRESS_MAP_START( hanaawas_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hanaawas_map, AS_PROGRAM, 8, hanaawas_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_ROM @@ -80,7 +80,7 @@ static ADDRESS_MAP_START( hanaawas_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, hanaawas_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(hanaawas_input_port_0_r, hanaawas_inputs_mux_w) AM_RANGE(0x01, 0x01) AM_READNOP /* it must return 0 */ diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c index 2a69bdc5a9e..66c5da1a5c3 100644 --- a/src/mame/drivers/harddriv.c +++ b/src/mame/drivers/harddriv.c @@ -404,7 +404,7 @@ static const dsp32_config dsp32c_config = * *************************************/ -static ADDRESS_MAP_START( driver_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driver_68k_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x600000, 0x603fff) AM_READ(hd68k_port0_r) @@ -423,7 +423,7 @@ static ADDRESS_MAP_START( driver_68k_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( driver_gsp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driver_gsp_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x0000200f) AM_NOP /* hit during self-test */ AM_RANGE(0x02000000, 0x0207ffff) AM_READWRITE(hdgsp_vram_2bpp_r, hdgsp_vram_1bpp_w) @@ -436,7 +436,7 @@ static ADDRESS_MAP_START( driver_gsp_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( driver_msp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driver_msp_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("share1") AM_BASE_MEMBER(harddriv_state, m_msp_ram) AM_RANGE(0x00700000, 0x007fffff) AM_RAM AM_SHARE("share1") @@ -452,7 +452,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( multisync_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( multisync_68k_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x600000, 0x603fff) AM_READWRITE(atarigen_sound_upper_r, atarigen_sound_upper_w) @@ -471,7 +471,7 @@ static ADDRESS_MAP_START( multisync_68k_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( multisync_gsp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( multisync_gsp_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x0000200f) AM_NOP /* hit during self-test */ AM_RANGE(0x02000000, 0x020fffff) AM_READWRITE(hdgsp_vram_2bpp_r, hdgsp_vram_2bpp_w) @@ -491,7 +491,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( multisync2_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( multisync2_68k_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x604000, 0x607fff) AM_WRITE(hd68k_nwr_w) @@ -510,7 +510,7 @@ ADDRESS_MAP_END /* GSP is identical to original multisync */ -static ADDRESS_MAP_START( multisync2_gsp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( multisync2_gsp_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x0000200f) AM_NOP /* hit during self-test */ AM_RANGE(0x02000000, 0x020fffff) AM_READWRITE(hdgsp_vram_2bpp_r, hdgsp_vram_2bpp_w) @@ -530,13 +530,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(harddriv_state, m_adsp_pgm_memory) ADDRESS_MAP_END -static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(harddriv_state, m_adsp_data_memory) AM_RANGE(0x2000, 0x2fff) AM_READWRITE(hdadsp_special_r, hdadsp_special_w) @@ -550,13 +550,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( ds3_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ds3_program_map, AS_PROGRAM, 32, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_RAM AM_BASE_MEMBER(harddriv_state, m_adsp_pgm_memory) ADDRESS_MAP_END -static ADDRESS_MAP_START( ds3_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( ds3_data_map, AS_DATA, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(harddriv_state, m_adsp_data_memory) AM_RANGE(0x3800, 0x3bff) AM_RAM /* internal RAM */ @@ -565,13 +565,13 @@ static ADDRESS_MAP_START( ds3_data_map, AS_DATA, 16 ) ADDRESS_MAP_END #if 0 -static ADDRESS_MAP_START( ds3snd_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ds3snd_program_map, AS_PROGRAM, 32, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ds3snd_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( ds3snd_data_map, AS_DATA, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x3800, 0x3bff) AM_RAM /* internal RAM */ @@ -608,7 +608,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsk_dsp32_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dsk_dsp32_map, AS_PROGRAM, 32, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x001fff) AM_RAM AM_RANGE(0x600000, 0x63ffff) AM_RAM @@ -623,7 +623,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsk2_dsp32_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dsk2_dsp32_map, AS_PROGRAM, 32, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x001fff) AM_RAM AM_RANGE(0x200000, 0x23ffff) AM_RAM @@ -639,7 +639,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( driversnd_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driversnd_68k_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0xff0000, 0xff0fff) AM_READWRITE(hdsnd68k_data_r, hdsnd68k_data_w) @@ -653,7 +653,7 @@ static ADDRESS_MAP_START( driversnd_68k_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( driversnd_dsp_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driversnd_dsp_program_map, AS_PROGRAM, 16, harddriv_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000, 0xfff) AM_RAM AM_BASE_MEMBER(harddriv_state, m_sounddsp_ram) ADDRESS_MAP_END @@ -662,7 +662,7 @@ ADDRESS_MAP_END /* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */ -static ADDRESS_MAP_START( driversnd_dsp_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( driversnd_dsp_io_map, AS_IO, 16, harddriv_state ) AM_RANGE(0, 0) AM_READ(hdsnddsp_rom_r) AM_DEVWRITE("dac", hdsnddsp_dac_w) AM_RANGE(1, 1) AM_READ(hdsnddsp_comram_r) AM_RANGE(2, 2) AM_READ(hdsnddsp_compare_r) diff --git a/src/mame/drivers/hcastle.c b/src/mame/drivers/hcastle.c index 88887f43bfe..eeac939635c 100644 --- a/src/mame/drivers/hcastle.c +++ b/src/mame/drivers/hcastle.c @@ -36,7 +36,7 @@ static WRITE8_HANDLER( hcastle_coin_w ) -static ADDRESS_MAP_START( hcastle_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hcastle_map, AS_PROGRAM, 8, hcastle_state ) AM_RANGE(0x0000, 0x0007) AM_WRITE(hcastle_pf1_control_w) AM_RANGE(0x0020, 0x003f) AM_RAM /* rowscroll? */ AM_RANGE(0x0200, 0x0207) AM_WRITE(hcastle_pf2_control_w) @@ -71,7 +71,7 @@ static WRITE8_DEVICE_HANDLER( sound_bank_w ) k007232_set_bank(device, bank_A, bank_B ); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, hcastle_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9800, 0x987f) AM_DEVREADWRITE("konami2", k051649_waveform_r, k051649_waveform_w) diff --git a/src/mame/drivers/hexion.c b/src/mame/drivers/hexion.c index 6af3b22b3ba..241faf393f0 100644 --- a/src/mame/drivers/hexion.c +++ b/src/mame/drivers/hexion.c @@ -112,7 +112,7 @@ static WRITE_LINE_DEVICE_HANDLER( hexion_nmi_ack_w ) cputag_set_input_line(device->machine(), "maincpu", INPUT_LINE_NMI, CLEAR_LINE); } -static ADDRESS_MAP_START( hexion_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hexion_map, AS_PROGRAM, 8, hexion_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xbfff) AM_RAM diff --git a/src/mame/drivers/higemaru.c b/src/mame/drivers/higemaru.c index 6ebc70c1b59..62f7de504b4 100644 --- a/src/mame/drivers/higemaru.c +++ b/src/mame/drivers/higemaru.c @@ -28,7 +28,7 @@ static TIMER_DEVICE_CALLBACK( higemaru_scanline ) } -static ADDRESS_MAP_START( higemaru_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( higemaru_map, AS_PROGRAM, 8, higemaru_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1") AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P2") diff --git a/src/mame/drivers/highvdeo.c b/src/mame/drivers/highvdeo.c index 4e3675cf2a3..6d6d4b22adc 100644 --- a/src/mame/drivers/highvdeo.c +++ b/src/mame/drivers/highvdeo.c @@ -278,7 +278,7 @@ static WRITE16_HANDLER( write1_w ) // popmessage("%04x %04x",t1,t3); } -static ADDRESS_MAP_START( tv_vcf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tv_vcf_map, AS_PROGRAM, 16, highvdeo_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/ AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x40000, 0x4ffff) AM_RAM AM_BASE_MEMBER(highvdeo_state, m_blit_ram) /*blitter ram*/ @@ -286,7 +286,7 @@ static ADDRESS_MAP_START( tv_vcf_map, AS_PROGRAM, 16 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( tv_vcf_io, AS_IO, 16 ) +static ADDRESS_MAP_START( tv_vcf_io, AS_IO, 16, highvdeo_state ) AM_RANGE(0x0000, 0x0001) AM_WRITE( write1_w ) // lamps AM_RANGE(0x0006, 0x0007) AM_DEVWRITE( "oki", tv_oki6376_w ) AM_RANGE(0x0008, 0x0009) AM_READ( read1_r ) @@ -325,7 +325,7 @@ static WRITE16_DEVICE_HANDLER( tv_ncf_oki6376_st_w ) } } -static ADDRESS_MAP_START( tv_ncf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tv_ncf_map, AS_PROGRAM, 16, highvdeo_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/ AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x20000, 0x2ffff) AM_RAM AM_BASE_MEMBER(highvdeo_state, m_blit_ram) /*blitter ram*/ @@ -333,7 +333,7 @@ static ADDRESS_MAP_START( tv_ncf_map, AS_PROGRAM, 16 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( tv_ncf_io, AS_IO, 16 ) +static ADDRESS_MAP_START( tv_ncf_io, AS_IO, 16, highvdeo_state ) AM_RANGE(0x0000, 0x0001) AM_WRITE( write1_w ) // lamps AM_RANGE(0x0008, 0x0009) AM_DEVWRITE( "oki", tv_ncf_oki6376_w ) AM_RANGE(0x000a, 0x000b) AM_DEVWRITE( "oki", tv_ncf_oki6376_st_w ) @@ -369,7 +369,7 @@ static WRITE16_HANDLER( tv_tcf_bankselect_w ) memory_set_bankptr(space->machine(), "bank1", &ROM[bankaddress]); } -static ADDRESS_MAP_START( tv_tcf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tv_tcf_map, AS_PROGRAM, 16, highvdeo_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/ AM_RANGE(0x00400, 0x03fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x40000, 0x5d4bf) AM_RAM AM_BASE_MEMBER(highvdeo_state, m_blit_ram) /*blitter ram*/ @@ -378,7 +378,7 @@ static ADDRESS_MAP_START( tv_tcf_map, AS_PROGRAM, 16 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( tv_tcf_io, AS_IO, 16 ) +static ADDRESS_MAP_START( tv_tcf_io, AS_IO, 16, highvdeo_state ) AM_RANGE(0x0000, 0x0001) AM_WRITE( write1_w ) // lamps AM_RANGE(0x0006, 0x0007) AM_DEVWRITE( "oki", tv_oki6376_w ) AM_RANGE(0x0008, 0x0009) AM_READ( read1_r ) @@ -428,7 +428,7 @@ static WRITE16_HANDLER( write2_w ) } } -static ADDRESS_MAP_START( newmcard_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( newmcard_map, AS_PROGRAM, 16, highvdeo_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/ AM_RANGE(0x00400, 0x0ffff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x40000, 0x7ffff) AM_RAM AM_BASE_MEMBER(highvdeo_state, m_blit_ram) /*blitter ram*/ @@ -436,7 +436,7 @@ static ADDRESS_MAP_START( newmcard_map, AS_PROGRAM, 16 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( newmcard_io, AS_IO, 16 ) +static ADDRESS_MAP_START( newmcard_io, AS_IO, 16, highvdeo_state ) AM_RANGE(0x0030, 0x0033) AM_READ( newmcard_status_r ) AM_RANGE(0x0030, 0x0031) AM_WRITE( tv_tcf_bankselect_w ) AM_RANGE(0x0000, 0x0001) AM_WRITE( write1_w ) // lamps @@ -497,7 +497,7 @@ static WRITE16_HANDLER( brasil_status_w ) // popmessage("%04x",data); } -static ADDRESS_MAP_START( brasil_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( brasil_map, AS_PROGRAM, 16, highvdeo_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM /*irq vector area*/ AM_RANGE(0x00400, 0x0ffff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x40000, 0x7ffff) AM_RAM AM_BASE_MEMBER(highvdeo_state, m_blit_ram) /*blitter ram*/ @@ -505,7 +505,7 @@ static ADDRESS_MAP_START( brasil_map, AS_PROGRAM, 16 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("boot_prg",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( brasil_io, AS_IO, 16 ) +static ADDRESS_MAP_START( brasil_io, AS_IO, 16, highvdeo_state ) AM_RANGE(0x0030, 0x0033) AM_READ( brasil_status_r ) AM_RANGE(0x0030, 0x0031) AM_WRITE( brasil_status_w ) AM_RANGE(0x0000, 0x0001) AM_WRITE( write1_w ) // lamps diff --git a/src/mame/drivers/hikaru.c b/src/mame/drivers/hikaru.c index 86084497fbc..7ec9ab2d9bf 100644 --- a/src/mame/drivers/hikaru.c +++ b/src/mame/drivers/hikaru.c @@ -326,6 +326,13 @@ Notes: /* MD2 MD1 MD0 MD6 MD4 MD3 MD5 MD7 MD8 */ //static const struct sh4_config sh4cpu_config = { 1, 0, 1, 0, 0, 0, 1, 1, 0, CPU_CLOCK }; +class hikaru_state : public driver_device +{ +public: + hikaru_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) + { } +}; static VIDEO_START(hikaru) { @@ -371,7 +378,7 @@ INPUT_PORTS_END */ -static ADDRESS_MAP_START( hikaru_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( hikaru_map, AS_PROGRAM, 64, hikaru_state ) // Area 0 AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_SHARE("share1") // boot ROM AM_RANGE(0x00400000, 0x00400007) AM_NOP // unknown @@ -400,7 +407,7 @@ static ADDRESS_MAP_START( hikaru_map, AS_PROGRAM, 64 ) AM_RANGE(0x1b000000, 0x1b7fffff) AM_NOP // GPU Texture RAM and framebuffer (a 2048x2048x16-bit sheet?) ADDRESS_MAP_END -static ADDRESS_MAP_START( hikaru_map_slave, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( hikaru_map_slave, AS_PROGRAM, 64, hikaru_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x001FFFFF) AM_ROM AM_SHARE("share1") AM_RANGE(0x0C000000, 0x0DFFFFFF) AM_RAM @@ -410,7 +417,7 @@ static ADDRESS_MAP_START( hikaru_map_slave, AS_PROGRAM, 64 ) ADDRESS_MAP_END -static MACHINE_CONFIG_START( hikaru, driver_device ) +static MACHINE_CONFIG_START( hikaru, hikaru_state ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", SH4LE, CPU_CLOCK) // MCFG_CPU_CONFIG(sh4cpu_config) diff --git a/src/mame/drivers/himesiki.c b/src/mame/drivers/himesiki.c index 5689e98a0f1..8f34d787897 100644 --- a/src/mame/drivers/himesiki.c +++ b/src/mame/drivers/himesiki.c @@ -106,7 +106,7 @@ static WRITE8_HANDLER( himesiki_sound_w ) /****************************************************************************/ -static ADDRESS_MAP_START( himesiki_prm0, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( himesiki_prm0, AS_PROGRAM, 8, himesiki_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_BASE_MEMBER(himesiki_state, m_spriteram) @@ -115,7 +115,7 @@ static ADDRESS_MAP_START( himesiki_prm0, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( himesiki_iom0, AS_IO, 8 ) +static ADDRESS_MAP_START( himesiki_iom0, AS_IO, 8, himesiki_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("1P") AM_RANGE(0x01, 0x01) AM_READ_PORT("2P") @@ -130,12 +130,12 @@ static ADDRESS_MAP_START( himesiki_iom0, AS_IO, 8 ) AM_RANGE(0x0b, 0x0b) AM_WRITE(himesiki_sound_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( himesiki_prm1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( himesiki_prm1, AS_PROGRAM, 8, himesiki_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( himesiki_iom1, AS_IO, 8 ) +static ADDRESS_MAP_START( himesiki_iom1, AS_IO, 8, himesiki_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym2203", ym2203_r, ym2203_w) AM_RANGE(0x04, 0x04) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/hitme.c b/src/mame/drivers/hitme.c index 74adc25850a..454fcc5053c 100644 --- a/src/mame/drivers/hitme.c +++ b/src/mame/drivers/hitme.c @@ -224,7 +224,7 @@ static WRITE8_DEVICE_HANDLER( output_port_1_w ) upper 8 bits. */ -static ADDRESS_MAP_START( hitme_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hitme_map, AS_PROGRAM, 8, hitme_state ) ADDRESS_MAP_GLOBAL_MASK(0x1fff) AM_RANGE(0x0000, 0x09ff) AM_ROM AM_RANGE(0x0c00, 0x0eff) AM_RAM_WRITE(hitme_vidram_w) AM_BASE_MEMBER(hitme_state, m_videoram) @@ -240,7 +240,7 @@ static ADDRESS_MAP_START( hitme_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hitme_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hitme_portmap, AS_IO, 8, hitme_state ) AM_RANGE(0x14, 0x14) AM_READ(hitme_port_0_r) AM_RANGE(0x15, 0x15) AM_READ(hitme_port_1_r) AM_RANGE(0x16, 0x16) AM_READ(hitme_port_2_r) diff --git a/src/mame/drivers/hitpoker.c b/src/mame/drivers/hitpoker.c index 7b473e486a4..43f03c65823 100644 --- a/src/mame/drivers/hitpoker.c +++ b/src/mame/drivers/hitpoker.c @@ -237,7 +237,7 @@ static READ8_HANDLER( test_r ) #endif /* overlap empty rom addresses */ -static ADDRESS_MAP_START( hitpoker_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hitpoker_map, AS_PROGRAM, 8, hitpoker_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM // stack ram AM_RANGE(0x1000, 0x103f) AM_RAM // internal I/O AM_RANGE(0x8000, 0xb5ff) AM_READWRITE(hitpoker_vram_r,hitpoker_vram_w) @@ -259,7 +259,7 @@ static ADDRESS_MAP_START( hitpoker_map, AS_PROGRAM, 8 ) AM_RANGE(0xbf00, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( hitpoker_io, AS_IO, 8 ) +static ADDRESS_MAP_START( hitpoker_io, AS_IO, 8, hitpoker_state ) AM_RANGE(MC68HC11_IO_PORTA, MC68HC11_IO_PORTA) AM_READWRITE(hitpoker_pic_r,hitpoker_pic_w) AM_BASE_MEMBER(hitpoker_state, m_sys_regs) ADDRESS_MAP_END diff --git a/src/mame/drivers/hnayayoi.c b/src/mame/drivers/hnayayoi.c index 53baf169ac0..61c8918131e 100644 --- a/src/mame/drivers/hnayayoi.c +++ b/src/mame/drivers/hnayayoi.c @@ -90,13 +90,13 @@ static WRITE8_DEVICE_HANDLER( adpcm_reset_inv_w ) } -static ADDRESS_MAP_START( hnayayoi_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hnayayoi_map, AS_PROGRAM, 8, hnayayoi_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( hnayayoi_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hnayayoi_io_map, AS_IO, 8, hnayayoi_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym2203_w) AM_RANGE(0x02, 0x03) AM_DEVREAD("ymsnd", ym2203_r) @@ -116,7 +116,7 @@ static ADDRESS_MAP_START( hnayayoi_io_map, AS_IO, 8 ) AM_RANGE(0x62, 0x67) AM_WRITE(dynax_blitter_rev1_param_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hnfubuki_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hnfubuki_map, AS_PROGRAM, 8, hnayayoi_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0xfeff) AM_ROM @@ -138,13 +138,13 @@ static ADDRESS_MAP_START( hnfubuki_map, AS_PROGRAM, 8 ) AM_RANGE(0xff62, 0xff67) AM_WRITE(dynax_blitter_rev1_param_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( untoucha_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( untoucha_map, AS_PROGRAM, 8, hnayayoi_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( untoucha_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( untoucha_io_map, AS_IO, 8, hnayayoi_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_DEVWRITE("ymsnd", ym2203_control_port_w) AM_RANGE(0x11, 0x11) AM_DEVREAD("ymsnd", ym2203_status_port_r) diff --git a/src/mame/drivers/hng64.c b/src/mame/drivers/hng64.c index ae3915c6b46..45fa147eb3b 100644 --- a/src/mame/drivers/hng64.c +++ b/src/mame/drivers/hng64.c @@ -1046,7 +1046,7 @@ static WRITE32_HANDLER( hng64_sprite_clear_odd_w ) <ElSemi> 0xBF800000-0xBF808000 S-RAM <ElSemi> 0x60000000-0x60001000 Comm dualport ram */ -static ADDRESS_MAP_START( hng_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( hng_map, AS_PROGRAM, 32, hng64_state ) AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_BASE_MEMBER(hng64_state, m_mainram) AM_RANGE(0x04000000, 0x05ffffff) AM_WRITENOP AM_ROM AM_REGION("user3", 0) AM_BASE_MEMBER(hng64_state, m_cart) @@ -1258,11 +1258,11 @@ WRITE8_HANDLER( hng64_comm_shared_w ) } #endif -static ADDRESS_MAP_START( hng_comm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hng_comm_map, AS_PROGRAM, 8, hng64_state ) AM_RANGE(0x0000,0xffff) AM_READWRITE( hng64_comm_memory_r, hng64_comm_memory_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hng_comm_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hng_comm_io_map, AS_IO, 8, hng64_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) /* Reserved for the KL5C80 internal hardware */ AM_RANGE(0x00, 0x07) AM_WRITE( hng64_comm_io_mmu ) AM_BASE_MEMBER(hng64_state, m_com_mmu_mem) @@ -1283,7 +1283,7 @@ static ADDRESS_MAP_START( hng_comm_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hng_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hng_sound_map, AS_PROGRAM, 16, hng64_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROMBANK("bank2") AM_RANGE(0xe0000, 0xfffff) AM_ROMBANK("bank1") ADDRESS_MAP_END diff --git a/src/mame/drivers/holeland.c b/src/mame/drivers/holeland.c index 10bbf81ad52..b3ef7f9560b 100644 --- a/src/mame/drivers/holeland.c +++ b/src/mame/drivers/holeland.c @@ -18,7 +18,7 @@ #include "includes/holeland.h" -static ADDRESS_MAP_START( holeland_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( holeland_map, AS_PROGRAM, 8, holeland_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xbfff) AM_ROM @@ -29,7 +29,7 @@ static ADDRESS_MAP_START( holeland_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf3ff) AM_RAM AM_BASE_SIZE_MEMBER(holeland_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( crzrally_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( crzrally_map, AS_PROGRAM, 8, holeland_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xe000, 0xe3ff) AM_WRITE(holeland_colorram_w) AM_BASE_MEMBER(holeland_state, m_colorram) @@ -39,7 +39,7 @@ static ADDRESS_MAP_START( crzrally_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf801) AM_WRITE(holeland_pal_offs_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, holeland_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_READ(watchdog_reset_r) /* ? */ AM_RANGE(0x04, 0x04) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/homedata.c b/src/mame/drivers/homedata.c index 9141fb8f606..4fe071c4a66 100644 --- a/src/mame/drivers/homedata.c +++ b/src/mame/drivers/homedata.c @@ -542,7 +542,7 @@ static WRITE8_HANDLER( bankswitch_w ) /********************************************************************************/ -static ADDRESS_MAP_START( mrokumei_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mrokumei_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(mrokumei_videoram_w) AM_BASE_MEMBER(homedata_state, m_videoram) AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_RAM /* work ram */ @@ -563,20 +563,20 @@ static ADDRESS_MAP_START( mrokumei_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mrokumei_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mrokumei_sound_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xfffc, 0xfffd) AM_WRITENOP /* stack writes happen here, but there's no RAM */ AM_RANGE(0x8080, 0x8080) AM_WRITE(mrokumei_sound_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mrokumei_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mrokumei_sound_io_map, AS_IO, 8, homedata_state ) AM_RANGE(0x0000, 0xffff) AM_READWRITE(mrokumei_sound_io_r, mrokumei_sound_io_w) /* read address is 16-bit, write address is only 8-bit */ ADDRESS_MAP_END /********************************************************************************/ -static ADDRESS_MAP_START( reikaids_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( reikaids_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(reikaids_videoram_w) AM_BASE_MEMBER(homedata_state, m_videoram) AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_RAM /* work RAM */ @@ -595,12 +595,12 @@ static ADDRESS_MAP_START( reikaids_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( reikaids_upd7807_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( reikaids_upd7807_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0xfeff) AM_ROMBANK("bank2") /* External ROM (Banked) */ AM_RANGE(0xff00, 0xffff) AM_RAM /* Internal RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( reikaids_upd7807_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( reikaids_upd7807_io_map, AS_IO, 8, homedata_state ) AM_RANGE(UPD7807_PORTA, UPD7807_PORTA) AM_READWRITE(reikaids_upd7807_porta_r, reikaids_upd7807_porta_w) AM_RANGE(UPD7807_PORTB, UPD7807_PORTB) AM_DEVWRITE("dac", dac_signed_w) AM_RANGE(UPD7807_PORTC, UPD7807_PORTC) AM_WRITE(reikaids_upd7807_portc_w) @@ -610,7 +610,7 @@ ADDRESS_MAP_END /**************************************************************************/ -static ADDRESS_MAP_START( pteacher_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pteacher_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(mrokumei_videoram_w) AM_BASE_MEMBER(homedata_state, m_videoram) AM_RANGE(0x4000, 0x5eff) AM_RAM AM_RANGE(0x5f00, 0x5fff) AM_RAM @@ -629,13 +629,13 @@ static ADDRESS_MAP_START( pteacher_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( pteacher_upd7807_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pteacher_upd7807_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x0000) AM_WRITE(pteacher_snd_answer_w) AM_RANGE(0x0000, 0xfeff) AM_ROMBANK("bank2") /* External ROM (Banked) */ AM_RANGE(0xff00, 0xffff) AM_RAM /* Internal RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( pteacher_upd7807_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pteacher_upd7807_io_map, AS_IO, 8, homedata_state ) AM_RANGE(UPD7807_PORTA, UPD7807_PORTA) AM_READWRITE(pteacher_upd7807_porta_r, pteacher_upd7807_porta_w) AM_RANGE(UPD7807_PORTB, UPD7807_PORTB) AM_DEVWRITE("dac", dac_signed_w) AM_RANGE(UPD7807_PORTC, UPD7807_PORTC) AM_READ_PORT("COIN") AM_WRITE(pteacher_upd7807_portc_w) @@ -1429,11 +1429,11 @@ static INPUT_PORTS_START( mirderby ) INPUT_PORTS_END -static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM // videoram AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_RAM /* work ram */ @@ -1458,7 +1458,7 @@ static WRITE8_HANDLER( mirderby_prot_w ) } -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, homedata_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM_WRITE(mrokumei_videoram_w) AM_BASE_MEMBER(homedata_state, m_videoram) AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_RAM /* work ram */ diff --git a/src/mame/drivers/homerun.c b/src/mame/drivers/homerun.c index 3a1e9e861f0..dce3249908b 100644 --- a/src/mame/drivers/homerun.c +++ b/src/mame/drivers/homerun.c @@ -53,7 +53,7 @@ static const ppi8255_interface ppi8255_intf = }; -static ADDRESS_MAP_START( homerun_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( homerun_memmap, AS_PROGRAM, 8, homerun_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x9fff) AM_RAM_WRITE(homerun_videoram_w) AM_BASE_MEMBER(homerun_state, m_videoram) @@ -69,7 +69,7 @@ static CUSTOM_INPUT( homerun_40_r ) return ret; } -static ADDRESS_MAP_START( homerun_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( homerun_iomap, AS_IO, 8, homerun_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_WRITENOP /* ?? */ AM_RANGE(0x20, 0x20) AM_WRITENOP /* ?? */ diff --git a/src/mame/drivers/hornet.c b/src/mame/drivers/hornet.c index dee15b4a6d4..f65edad4adc 100644 --- a/src/mame/drivers/hornet.c +++ b/src/mame/drivers/hornet.c @@ -604,7 +604,7 @@ static WRITE32_HANDLER(gun_w) /*****************************************************************************/ -static ADDRESS_MAP_START( hornet_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( hornet_map, AS_PROGRAM, 32, hornet_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(hornet_state, m_workram) /* Work RAM */ AM_RANGE(0x74000000, 0x740000ff) AM_READWRITE(hornet_k037122_reg_r, hornet_k037122_reg_w) AM_RANGE(0x74020000, 0x7403ffff) AM_READWRITE(hornet_k037122_sram_r, hornet_k037122_sram_w) @@ -628,7 +628,7 @@ ADDRESS_MAP_END /*****************************************************************************/ -static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, hornet_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* Work RAM */ AM_RANGE(0x200000, 0x200fff) AM_DEVREADWRITE("rfsnd", rf5c400_r, rf5c400_w) /* Ricoh RF5C400 */ @@ -671,7 +671,7 @@ static WRITE16_HANDLER(gn680_latch_w) // WORD at 30000e: IRQ 4 tests bits 6 and 7, IRQ5 tests bits 4 and 5 // (vsync and hsync status for each of the two screens?) -static ADDRESS_MAP_START( gn680_memmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gn680_memmap, AS_PROGRAM, 16, hornet_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x200000, 0x203fff) AM_RAM AM_RANGE(0x300000, 0x300001) AM_WRITE(gn680_sysctrl) @@ -706,7 +706,7 @@ static WRITE32_HANDLER( dsp_dataram1_w ) state->m_sharc_dataram[1][offset] = data; } -static ADDRESS_MAP_START( sharc0_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( sharc0_map, AS_DATA, 32, hornet_state ) AM_RANGE(0x0400000, 0x041ffff) AM_READWRITE(cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w) AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram0_r, dsp_dataram0_w) AM_BASE_MEMBER(hornet_state, m_sharc_dataram[0]) AM_RANGE(0x1400000, 0x14fffff) AM_RAM @@ -716,7 +716,7 @@ static ADDRESS_MAP_START( sharc0_map, AS_DATA, 32 ) AM_RANGE(0x3600000, 0x37fffff) AM_ROMBANK("bank5") ADDRESS_MAP_END -static ADDRESS_MAP_START( sharc1_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( sharc1_map, AS_DATA, 32, hornet_state ) AM_RANGE(0x0400000, 0x041ffff) AM_READWRITE(cgboard_1_shared_sharc_r, cgboard_1_shared_sharc_w) AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram1_r, dsp_dataram1_w) AM_BASE_MEMBER(hornet_state, m_sharc_dataram[1]) AM_RANGE(0x1400000, 0x14fffff) AM_RAM diff --git a/src/mame/drivers/hotblock.c b/src/mame/drivers/hotblock.c index 936ab364676..1a30e9b6a2b 100644 --- a/src/mame/drivers/hotblock.c +++ b/src/mame/drivers/hotblock.c @@ -117,13 +117,13 @@ static WRITE8_HANDLER( hotblock_video_write ) } } -static ADDRESS_MAP_START( hotblock_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hotblock_map, AS_PROGRAM, 8, hotblock_state ) AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_RANGE(0x10000, 0x1ffff) AM_READWRITE(hotblock_video_read, hotblock_video_write) AM_BASE_MEMBER(hotblock_state, m_vram) AM_RANGE(0x20000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( hotblock_io, AS_IO, 8 ) +static ADDRESS_MAP_START( hotblock_io, AS_IO, 8, hotblock_state ) AM_RANGE(0x0000, 0x0000) AM_WRITE(hotblock_port0_w) AM_RANGE(0x0004, 0x0004) AM_READWRITE(hotblock_port4_r, hotblock_port4_w) AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("aysnd", ay8910_address_data_w) diff --git a/src/mame/drivers/hotstuff.c b/src/mame/drivers/hotstuff.c index 401283628f1..a6725a2da06 100644 --- a/src/mame/drivers/hotstuff.c +++ b/src/mame/drivers/hotstuff.c @@ -103,7 +103,7 @@ static WRITE8_HANDLER( ioboard_reg_w ) printf("REG %02x\n",data); } -static ADDRESS_MAP_START( hotstuff_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hotstuff_map, AS_PROGRAM, 16, hotstuff_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_NOP //ROM AM_REGION("data", 0) diff --git a/src/mame/drivers/hvyunit.c b/src/mame/drivers/hvyunit.c index 3d29bb81a35..141cf91c9a4 100644 --- a/src/mame/drivers/hvyunit.c +++ b/src/mame/drivers/hvyunit.c @@ -408,7 +408,7 @@ static WRITE8_HANDLER( mermaid_p3_w ) * *************************************/ -static ADDRESS_MAP_START( master_memory, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_memory, AS_PROGRAM, 8, hvyunit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_DEVREADWRITE("pandora", pandora_spriteram_r, pandora_spriteram_w) @@ -416,7 +416,7 @@ static ADDRESS_MAP_START( master_memory, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( master_io, AS_IO, 8 ) +static ADDRESS_MAP_START( master_io, AS_IO, 8, hvyunit_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(master_bankswitch_w) AM_RANGE(0x01, 0x01) AM_WRITE(master_bankswitch_w) // correct? @@ -424,7 +424,7 @@ static ADDRESS_MAP_START( master_io, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_memory, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_memory, AS_PROGRAM, 8, hvyunit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(hu_videoram_w) AM_BASE_MEMBER(hvyunit_state, m_videoram) @@ -435,7 +435,7 @@ static ADDRESS_MAP_START( slave_memory, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_io, AS_IO, 8 ) +static ADDRESS_MAP_START( slave_io, AS_IO, 8, hvyunit_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(slave_bankswitch_w) AM_RANGE(0x02, 0x02) AM_WRITE(trigger_nmi_on_sound_cpu2) @@ -450,13 +450,13 @@ static ADDRESS_MAP_START( slave_io, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_memory, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_memory, AS_PROGRAM, 8, hvyunit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3") AM_RANGE(0xc000, 0xc7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io, AS_IO, 8, hvyunit_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(sound_bankswitch_w) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) @@ -464,7 +464,7 @@ static ADDRESS_MAP_START( sound_io, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_io, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io, AS_IO, 8, hvyunit_state ) AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE(mermaid_p0_r, mermaid_p0_w) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READWRITE(mermaid_p1_r, mermaid_p1_w) AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_READWRITE(mermaid_p2_r, mermaid_p2_w) diff --git a/src/mame/drivers/hyhoo.c b/src/mame/drivers/hyhoo.c index 02702c70c8b..7c182b87723 100644 --- a/src/mame/drivers/hyhoo.c +++ b/src/mame/drivers/hyhoo.c @@ -48,12 +48,12 @@ static DRIVER_INIT( hyhoo2 ) } -static ADDRESS_MAP_START( hyhoo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hyhoo_map, AS_PROGRAM, 8, hyhoo_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( hyhoo_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hyhoo_io_map, AS_IO, 8, hyhoo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) diff --git a/src/mame/drivers/hyperspt.c b/src/mame/drivers/hyperspt.c index 9a353ced352..6827039d8ff 100644 --- a/src/mame/drivers/hyperspt.c +++ b/src/mame/drivers/hyperspt.c @@ -33,7 +33,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( hyperspt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hyperspt_map, AS_PROGRAM, 8, hyperspt_state ) AM_RANGE(0x1000, 0x10bf) AM_RAM AM_BASE_SIZE_MEMBER(hyperspt_state, m_spriteram, m_spriteram_size) AM_RANGE(0x10c0, 0x10ff) AM_RAM AM_BASE_MEMBER(hyperspt_state, m_scroll) /* Scroll amount */ AM_RANGE(0x1400, 0x1400) AM_WRITE(watchdog_reset_w) @@ -54,7 +54,7 @@ static ADDRESS_MAP_START( hyperspt_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( roadf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( roadf_map, AS_PROGRAM, 8, hyperspt_state ) AM_RANGE(0x1000, 0x10bf) AM_RAM AM_BASE_SIZE_MEMBER(hyperspt_state, m_spriteram, m_spriteram_size) AM_RANGE(0x10c0, 0x10ff) AM_RAM AM_BASE_MEMBER(hyperspt_state, m_scroll) /* Scroll amount */ AM_RANGE(0x1400, 0x1400) AM_WRITE(watchdog_reset_w) @@ -75,7 +75,7 @@ static ADDRESS_MAP_START( roadf_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, hyperspt_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) @@ -87,7 +87,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe002, 0xe002) AM_DEVWRITE("snsnd", konami_SN76496_w) /* This address triggers the SN chip to read the data port. */ ADDRESS_MAP_END -static ADDRESS_MAP_START( soundb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( soundb_map, AS_PROGRAM, 8, hyperspt_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/hyprduel.c b/src/mame/drivers/hyprduel.c index 25bad50cbfc..101a38c87a3 100644 --- a/src/mame/drivers/hyprduel.c +++ b/src/mame/drivers/hyprduel.c @@ -422,7 +422,7 @@ static WRITE16_HANDLER( hyprduel_blitter_w ) Memory Maps ***************************************************************************/ -static ADDRESS_MAP_START( hyprduel_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hyprduel_map, AS_PROGRAM, 16, hyprduel_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(hyprduel_vram_0_w) AM_BASE_MEMBER(hyprduel_state, m_vram_0) /* Layer 0 */ AM_RANGE(0x420000, 0x43ffff) AM_RAM_WRITE(hyprduel_vram_1_w) AM_BASE_MEMBER(hyprduel_state, m_vram_1) /* Layer 1 */ @@ -454,7 +454,7 @@ static ADDRESS_MAP_START( hyprduel_map, AS_PROGRAM, 16 ) AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3") AM_BASE_MEMBER(hyprduel_state, m_sharedram3) ADDRESS_MAP_END -static ADDRESS_MAP_START( hyprduel_map2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hyprduel_map2, AS_PROGRAM, 16, hyprduel_state ) AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("share1") /* shadow ($c00000 - $c03fff : vector) */ AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE("share3") /* shadow ($fe4000 - $fe7fff : read only) */ AM_RANGE(0x400000, 0x400003) AM_DEVREADWRITE8("ymsnd", ym2151_r, ym2151_w, 0x00ff ) @@ -468,7 +468,7 @@ ADDRESS_MAP_END /* Magical Error - video is at 8x now */ -static ADDRESS_MAP_START( magerror_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magerror_map, AS_PROGRAM, 16, hyprduel_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x400000, 0x400001) AM_WRITE(hyprduel_subcpu_control_w) AM_RANGE(0x800000, 0x81ffff) AM_RAM_WRITE(hyprduel_vram_0_w) AM_BASE_MEMBER(hyprduel_state, m_vram_0) /* Layer 0 */ @@ -500,7 +500,7 @@ static ADDRESS_MAP_START( magerror_map, AS_PROGRAM, 16 ) AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3") AM_BASE_MEMBER(hyprduel_state, m_sharedram3) ADDRESS_MAP_END -static ADDRESS_MAP_START( magerror_map2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magerror_map2, AS_PROGRAM, 16, hyprduel_state ) AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("share1") /* shadow ($c00000 - $c03fff : vector) */ AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE("share3") /* shadow ($fe4000 - $fe7fff : read only) */ AM_RANGE(0x400000, 0x400003) AM_NOP diff --git a/src/mame/drivers/igs009.c b/src/mame/drivers/igs009.c index f7e04bdf75b..db8784c46f5 100644 --- a/src/mame/drivers/igs009.c +++ b/src/mame/drivers/igs009.c @@ -443,12 +443,12 @@ static READ8_HANDLER( jingbell_magic_r ) -static ADDRESS_MAP_START( jingbell_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jingbell_map, AS_PROGRAM, 8, igs009_state ) AM_RANGE( 0x00000, 0x0f3ff ) AM_ROM AM_RANGE( 0x0f400, 0x0ffff ) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( jingbell_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( jingbell_portmap, AS_IO, 8, igs009_state ) AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs AM_RANGE( 0x1000, 0x11ff ) AM_RAM_WRITE( bg_scroll_w ) AM_BASE_MEMBER(igs009_state, m_bg_scroll ) diff --git a/src/mame/drivers/igs011.c b/src/mame/drivers/igs011.c index 68f185f4c99..de4f320630e 100644 --- a/src/mame/drivers/igs011.c +++ b/src/mame/drivers/igs011.c @@ -2118,7 +2118,7 @@ static DRIVER_INIT( nkishusp ) ***************************************************************************/ -static ADDRESS_MAP_START( drgnwrld, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drgnwrld, AS_PROGRAM, 16, igs011_state ) // drgnwrld: IGS011 protection dynamically mapped at 1dd7x // AM_RANGE( 0x01dd70, 0x01dd77 ) AM_WRITE( igs011_prot1_w ) // AM_RANGE( 0x01dd78, 0x01dd79 ) AM_READ ( igs011_prot1_r ) @@ -2152,7 +2152,7 @@ static ADDRESS_MAP_START( drgnwrld, AS_PROGRAM, 16 ) AM_RANGE( 0xa88000, 0xa88001 ) AM_READ( igs_3_dips_r ) ADDRESS_MAP_END -static ADDRESS_MAP_START( drgnwrld_igs012, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drgnwrld_igs012, AS_PROGRAM, 16, igs011_state ) // IGS012 AM_RANGE( 0x001600, 0x00160f ) AM_WRITE( igs012_prot_swap_w ) AM_MIRROR(0x01c000) // swap (a5 / 55) AM_RANGE( 0x001610, 0x00161f ) AM_READ ( igs012_prot_r ) AM_MIRROR(0x01c000) // read (mode 0) @@ -2197,7 +2197,7 @@ static WRITE16_DEVICE_HANDLER( lhb_okibank_w ) // popmessage("oki %04x",data); } -static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16, igs011_state ) // lhb: IGS011 protection dynamically mapped at 834x // AM_RANGE( 0x008340, 0x008347 ) AM_WRITE( igs011_prot1_w ) // AM_RANGE( 0x008348, 0x008349 ) AM_READ ( igs011_prot1_r ) @@ -2237,7 +2237,7 @@ static ADDRESS_MAP_START( lhb, AS_PROGRAM, 16 ) AM_RANGE( 0x888000, 0x888001 ) AM_READ( igs_5_dips_r ) ADDRESS_MAP_END -static ADDRESS_MAP_START( xymg, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( xymg, AS_PROGRAM, 16, igs011_state ) // xymg: IGS011 protection dynamically mapped at 834x // AM_RANGE( 0x008340, 0x008347 ) AM_WRITE( igs011_prot1_w ) // AM_RANGE( 0x008348, 0x008349 ) AM_READ ( igs011_prot1_r ) @@ -2276,7 +2276,7 @@ static ADDRESS_MAP_START( xymg, AS_PROGRAM, 16 ) AM_RANGE( 0x888000, 0x888001 ) AM_READ( igs_3_dips_r ) ADDRESS_MAP_END -static ADDRESS_MAP_START( wlcc, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wlcc, AS_PROGRAM, 16, igs011_state ) // wlcc: IGS011 protection dynamically mapped at 834x // AM_RANGE( 0x008340, 0x008347 ) AM_WRITE( igs011_prot1_w ) // AM_RANGE( 0x008348, 0x008349 ) AM_READ ( igs011_prot1_r ) @@ -2315,7 +2315,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( lhb2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lhb2, AS_PROGRAM, 16, igs011_state ) // lhb2: IGS011 protection dynamically mapped at 1ff8x // AM_RANGE( 0x01ff80, 0x01ff87 ) AM_WRITE( igs011_prot1_w ) // AM_RANGE( 0x01ff88, 0x01ff89 ) AM_READ ( igs011_prot1_r ) @@ -2416,7 +2416,7 @@ static WRITE16_HANDLER( vbowl_link_1_w ) { } static WRITE16_HANDLER( vbowl_link_2_w ) { } static WRITE16_HANDLER( vbowl_link_3_w ) { } -static ADDRESS_MAP_START( vbowl, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vbowl, AS_PROGRAM, 16, igs011_state ) // vbowl: IGS011 protection dynamically mapped at 834x // AM_RANGE( 0x008340, 0x008347 ) AM_WRITE( igs011_prot1_w ) // AM_RANGE( 0x008348, 0x008349 ) AM_READ ( igs011_prot1_r ) diff --git a/src/mame/drivers/igs017.c b/src/mame/drivers/igs017.c index 75bb317fdbe..0a558471f31 100644 --- a/src/mame/drivers/igs017.c +++ b/src/mame/drivers/igs017.c @@ -1092,7 +1092,7 @@ static DRIVER_INIT( slqz2 ) Memory Maps ***************************************************************************/ -static ADDRESS_MAP_START( iqblocka_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( iqblocka_map, AS_PROGRAM, 8, igs017_state ) AM_RANGE( 0x00000, 0x0dfff ) AM_ROM AM_RANGE( 0x0e000, 0x0efff ) AM_RAM AM_RANGE( 0x0f000, 0x0ffff ) AM_RAM @@ -1160,7 +1160,7 @@ static READ8_HANDLER( input_r ) } } -static ADDRESS_MAP_START( iqblocka_io, AS_IO, 8 ) +static ADDRESS_MAP_START( iqblocka_io, AS_IO, 8, igs017_state ) AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs AM_RANGE( 0x1000, 0x17ff ) AM_RAM AM_BASE_MEMBER(igs017_state, m_spriteram) @@ -1288,7 +1288,7 @@ static WRITE16_HANDLER( mgcs_paletteram_w ) palette_set_color_rgb(space->machine(), offset/2, pal5bit(bgr >> 0), pal5bit(bgr >> 5), pal5bit(bgr >> 10)); } -static ADDRESS_MAP_START( mgcs, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mgcs, AS_PROGRAM, 16, igs017_state ) AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_RANGE( 0x300000, 0x303fff ) AM_RAM AM_RANGE( 0x49c000, 0x49c003 ) AM_WRITE( mgcs_magic_w ) @@ -1389,7 +1389,7 @@ static READ16_HANDLER( sdmg2_magic_r ) return 0xffff; } -static ADDRESS_MAP_START( sdmg2, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sdmg2, AS_PROGRAM, 16, igs017_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x1f0000, 0x1fffff) AM_RAM AM_RANGE(0x202000, 0x202fff) AM_READWRITE( spriteram_lsb_r, spriteram_lsb_w ) AM_BASE_MEMBER(igs017_state, m_spriteram) @@ -1510,7 +1510,7 @@ static READ16_HANDLER( mgdha_magic_r ) return 0xffff; } -static ADDRESS_MAP_START( mgdha_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mgdha_map, AS_PROGRAM, 16, igs017_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x600000, 0x603fff) AM_RAM AM_RANGE(0x876000, 0x876003) AM_WRITE( mgdha_magic_w ) @@ -1593,7 +1593,7 @@ static READ8_HANDLER( tjsb_input_r ) } } -static ADDRESS_MAP_START( tjsb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tjsb_map, AS_PROGRAM, 8, igs017_state ) AM_RANGE( 0x00000, 0x0dfff ) AM_ROM AM_RANGE( 0x0e000, 0x0e000 ) AM_WRITE( input_select_w ) AM_RANGE( 0x0e001, 0x0e001 ) AM_READWRITE( tjsb_input_r, tjsb_output_w ) @@ -1602,7 +1602,7 @@ static ADDRESS_MAP_START( tjsb_map, AS_PROGRAM, 8 ) AM_RANGE( 0x10000, 0x3ffff ) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( tjsb_io, AS_IO, 8 ) +static ADDRESS_MAP_START( tjsb_io, AS_IO, 8, igs017_state ) AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs AM_RANGE( 0x1000, 0x17ff ) AM_RAM AM_BASE_MEMBER(igs017_state, m_spriteram) diff --git a/src/mame/drivers/igs_m027.c b/src/mame/drivers/igs_m027.c index 46d2eaf7e95..1a10c9faa1c 100644 --- a/src/mame/drivers/igs_m027.c +++ b/src/mame/drivers/igs_m027.c @@ -191,7 +191,7 @@ static SCREEN_UPDATE_IND16(igs_majhong) ***************************************************************************/ -static ADDRESS_MAP_START( igs_majhong_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( igs_majhong_map, AS_PROGRAM, 32, igs_m027_state ) AM_RANGE(0x00000000, 0x00003fff) AM_ROM /* Internal ROM */ AM_RANGE(0x08000000, 0x0807ffff) AM_ROM AM_REGION("user1", 0)/* Game ROM */ AM_RANGE(0x10000000, 0x100003ff) AM_RAM AM_BASE_MEMBER(igs_m027_state, m_igs_mainram)// main ram for asic? diff --git a/src/mame/drivers/igspoker.c b/src/mame/drivers/igspoker.c index a7a5b7062c5..8ce8eb52269 100644 --- a/src/mame/drivers/igspoker.c +++ b/src/mame/drivers/igspoker.c @@ -342,12 +342,12 @@ static READ8_HANDLER( exp_rom_r ) return rom[offset+0x10000]; } -static ADDRESS_MAP_START( igspoker_prg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( igspoker_prg_map, AS_PROGRAM, 8, igspoker_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM AM_REGION("maincpu", 0xf000) ADDRESS_MAP_END -static ADDRESS_MAP_START( igspoker_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( igspoker_io_map, AS_IO, 8, igspoker_state ) AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split1_w ) AM_BASE_GENERIC( paletteram ) AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split2_w ) AM_BASE_GENERIC( paletteram2 ) AM_RANGE(0x4000, 0x4000) AM_READ_PORT("DSW1") /* DSW1 */ @@ -1101,7 +1101,7 @@ static INPUT_PORTS_START( igs_ncs ) INPUT_PORTS_END -static ADDRESS_MAP_START( number10_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( number10_io_map, AS_IO, 8, igspoker_state ) AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split1_w ) AM_BASE_GENERIC( paletteram ) AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split2_w ) AM_BASE_GENERIC( paletteram2 ) AM_RANGE(0x4000, 0x4000) AM_READ_PORT("DSW1") /* DSW1 */ @@ -1124,7 +1124,7 @@ static ADDRESS_MAP_START( number10_io_map, AS_IO, 8 ) AM_RANGE(0x0000, 0xffff) AM_READ( exp_rom_r ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpokerpk_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cpokerpk_io_map, AS_IO, 8, igspoker_state ) AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split1_w ) AM_BASE_GENERIC( paletteram ) AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split2_w ) AM_BASE_GENERIC( paletteram2 ) AM_RANGE(0x4000, 0x4000) AM_READ_PORT("DSW1") /* DSW1 */ diff --git a/src/mame/drivers/ikki.c b/src/mame/drivers/ikki.c index f6a3abc2d79..360b3449ca2 100644 --- a/src/mame/drivers/ikki.c +++ b/src/mame/drivers/ikki.c @@ -45,7 +45,7 @@ static WRITE8_HANDLER( ikki_coin_counters ) * *************************************/ -static ADDRESS_MAP_START( ikki_cpu1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ikki_cpu1, AS_PROGRAM, 8, ikki_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") @@ -61,7 +61,7 @@ static ADDRESS_MAP_START( ikki_cpu1, AS_PROGRAM, 8 ) AM_RANGE(0xe00a, 0xe00b) AM_WRITEONLY AM_BASE_MEMBER(ikki_state, m_scroll) ADDRESS_MAP_END -static ADDRESS_MAP_START( ikki_cpu2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ikki_cpu2, AS_PROGRAM, 8, ikki_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_SIZE_MEMBER(ikki_state, m_spriteram, m_spriteram_size) AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/imolagp.c b/src/mame/drivers/imolagp.c index 7c2f4ce552f..ed512fe99b1 100644 --- a/src/mame/drivers/imolagp.c +++ b/src/mame/drivers/imolagp.c @@ -352,12 +352,12 @@ static WRITE8_HANDLER( vreg_data_w ) } } -static ADDRESS_MAP_START( readport_master, AS_IO, 8 ) +static ADDRESS_MAP_START( readport_master, AS_IO, 8, imolagp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(trigger_slave_nmi_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( imolagp_master, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( imolagp_master, AS_PROGRAM, 8, imolagp_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x2800, 0x2800) AM_READ_PORT("2800") /* gas */ @@ -374,7 +374,7 @@ static ADDRESS_MAP_START( imolagp_master, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0x6000) AM_READ_PORT("DSWB") /* DSWB */ ADDRESS_MAP_END -static ADDRESS_MAP_START( readport_slave, AS_IO, 8 ) +static ADDRESS_MAP_START( readport_slave, AS_IO, 8, imolagp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x05,0x05) AM_READ(imola_slave_port05r) AM_RANGE(0x06,0x06) AM_READ(imola_slave_port06r) @@ -382,7 +382,7 @@ static ADDRESS_MAP_START( readport_slave, AS_IO, 8 ) AM_RANGE(0x82,0x82) AM_READ(imola_slave_port82r) ADDRESS_MAP_END -static ADDRESS_MAP_START( imolagp_slave, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( imolagp_slave, AS_PROGRAM, 8, imolagp_state ) AM_RANGE(0x0000, 0x03ff) AM_ROM AM_RANGE(0x0800, 0x0bff) AM_ROM AM_RANGE(0x1000, 0x13ff) AM_ROM diff --git a/src/mame/drivers/intrscti.c b/src/mame/drivers/intrscti.c index bfa4ed03ad5..b60118a1b3b 100644 --- a/src/mame/drivers/intrscti.c +++ b/src/mame/drivers/intrscti.c @@ -30,14 +30,14 @@ static READ8_HANDLER( unk_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( intrscti_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( intrscti_map, AS_PROGRAM, 8, intrscti_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0x7000, 0x77ff) AM_RAM AM_BASE_MEMBER(intrscti_state, m_ram) // video ram AM_RANGE(0x8000, 0x8fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( readport, AS_IO, 8 ) +static ADDRESS_MAP_START( readport, AS_IO, 8, intrscti_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ( unk_r ) AM_RANGE(0x01, 0x01) AM_READ( unk_r ) diff --git a/src/mame/drivers/inufuku.c b/src/mame/drivers/inufuku.c index 39fb92a4589..c67925d6f14 100644 --- a/src/mame/drivers/inufuku.c +++ b/src/mame/drivers/inufuku.c @@ -127,7 +127,7 @@ static CUSTOM_INPUT( soundflag_r ) ******************************************************************************/ -static ADDRESS_MAP_START( inufuku_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( inufuku_map, AS_PROGRAM, 16, inufuku_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // main rom AM_RANGE(0x100000, 0x100007) AM_WRITENOP // ? @@ -164,13 +164,13 @@ ADDRESS_MAP_END ******************************************************************************/ -static ADDRESS_MAP_START( inufuku_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( inufuku_sound_map, AS_PROGRAM, 8, inufuku_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( inufuku_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( inufuku_sound_io_map, AS_IO, 8, inufuku_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(inufuku_soundrombank_w) AM_RANGE(0x04, 0x04) AM_READWRITE(soundlatch_r, pending_command_clear_w) diff --git a/src/mame/drivers/iqblock.c b/src/mame/drivers/iqblock.c index 704234df08c..d8784a0d0a2 100644 --- a/src/mame/drivers/iqblock.c +++ b/src/mame/drivers/iqblock.c @@ -126,13 +126,13 @@ static const ppi8255_interface ppi8255_intf = }; -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, iqblock_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_MEMBER(iqblock_state, m_rambase) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, iqblock_state ) AM_RANGE(0x2000, 0x23ff) AM_WRITE(paletteram_xBBBBBGGGGGRRRRR_split1_w) AM_RANGE(0x2800, 0x2bff) AM_WRITE(paletteram_xBBBBBGGGGGRRRRR_split2_w) AM_RANGE(0x6000, 0x603f) AM_WRITE(iqblock_fgscroll_w) diff --git a/src/mame/drivers/irobot.c b/src/mame/drivers/irobot.c index 79657711056..34c6ab92236 100644 --- a/src/mame/drivers/irobot.c +++ b/src/mame/drivers/irobot.c @@ -125,7 +125,7 @@ static WRITE8_HANDLER( irobot_clearfirq_w ) * *************************************/ -static ADDRESS_MAP_START( irobot_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( irobot_map, AS_PROGRAM, 8, irobot_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0fff) AM_RAMBANK("bank2") AM_RANGE(0x1000, 0x103f) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/ironhors.c b/src/mame/drivers/ironhors.c index f1478975953..3476ed6073b 100644 --- a/src/mame/drivers/ironhors.c +++ b/src/mame/drivers/ironhors.c @@ -57,7 +57,7 @@ static WRITE8_DEVICE_HANDLER( ironhors_filter_w ) * *************************************/ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, ironhors_state ) AM_RANGE(0x0000, 0x0002) AM_RAM AM_RANGE(0x0003, 0x0003) AM_RAM_WRITE(ironhors_charbank_w) AM_RANGE(0x0004, 0x0004) AM_RAM AM_BASE_MEMBER(ironhors_state, m_interrupt_enable) @@ -85,18 +85,18 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, ironhors_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( slave_io_map, AS_IO, 8, ironhors_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym2203", ym2203_r, ym2203_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( farwest_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( farwest_master_map, AS_PROGRAM, 8, ironhors_state ) AM_RANGE(0x0000, 0x0002) AM_RAM //20=31db @@ -130,7 +130,7 @@ static ADDRESS_MAP_START( farwest_master_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( farwest_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( farwest_slave_map, AS_PROGRAM, 8, ironhors_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym2203", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/istellar.c b/src/mame/drivers/istellar.c index a7c817c32a3..5c796139d7c 100644 --- a/src/mame/drivers/istellar.c +++ b/src/mame/drivers/istellar.c @@ -166,7 +166,7 @@ static WRITE8_HANDLER(z80_2_ldp_write) /* PROGRAM MAPS */ -static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8, istellar_state ) AM_RANGE(0x0000,0x9fff) AM_ROM AM_RANGE(0xa000,0xa7ff) AM_RAM AM_RANGE(0xa800,0xabff) AM_RAM AM_BASE_MEMBER(istellar_state, m_tile_ram) @@ -174,12 +174,12 @@ static ADDRESS_MAP_START( z80_0_mem, AS_PROGRAM, 8 ) AM_RANGE(0xb000,0xb3ff) AM_RAM AM_BASE_MEMBER(istellar_state, m_sprite_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_1_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_1_mem, AS_PROGRAM, 8, istellar_state ) AM_RANGE(0x0000,0x1fff) AM_ROM AM_RANGE(0x4000,0x47ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_2_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_2_mem, AS_PROGRAM, 8, istellar_state ) AM_RANGE(0x0000,0x17ff) AM_ROM AM_RANGE(0x1800,0x1fff) AM_RAM AM_RANGE(0xc000,0xc000) AM_READ(z80_2_unknown_read) /* Seems to be thrown away every time it's read - maybe interrupt related? */ @@ -187,7 +187,7 @@ ADDRESS_MAP_END /* IO MAPS */ -static ADDRESS_MAP_START( z80_0_io, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_0_io, AS_IO, 8, istellar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00,0x00) AM_READ_PORT("IN0") AM_RANGE(0x02,0x02) AM_READ_PORT("DSW1") @@ -196,14 +196,14 @@ static ADDRESS_MAP_START( z80_0_io, AS_IO, 8 ) AM_RANGE(0x05,0x05) AM_READWRITE(z80_0_latch1_read,z80_0_latch2_write) ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_1_io, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_1_io, AS_IO, 8, istellar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00,0x00) AM_NOP /*AM_READWRITE(z80_1_slatch_read,z80_1_slatch_write)*/ AM_RANGE(0x01,0x01) AM_NOP /*AM_READWRITE(z80_1_nmienable,z80_1_soundwrite_front)*/ AM_RANGE(0x02,0x02) AM_NOP /*AM_WRITE(z80_1_soundwrite_rear)*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_2_io, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_2_io, AS_IO, 8, istellar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00,0x00) AM_READWRITE(z80_2_ldp_read,z80_2_ldp_write) AM_RANGE(0x01,0x01) AM_READWRITE(z80_2_latch2_read,z80_2_latch1_write) diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c index 782b11c046d..5a60598b936 100644 --- a/src/mame/drivers/itech32.c +++ b/src/mame/drivers/itech32.c @@ -913,7 +913,7 @@ void itech32_state::nvram_init(nvram_device &nvram, void *base, size_t length) *************************************/ /*------ Time Killers memory layout ------*/ -static ADDRESS_MAP_START( timekill_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( timekill_map, AS_PROGRAM, 16, itech32_state ) AM_RANGE(0x000000, 0x003fff) AM_RAM AM_BASE_MEMBER(itech32_state, m_main_ram) AM_SHARE("nvram") AM_RANGE(0x040000, 0x040001) AM_READ_PORT("P1") AM_RANGE(0x048000, 0x048001) AM_READ_PORT("P2") @@ -931,7 +931,7 @@ ADDRESS_MAP_END /*------ BloodStorm and later games memory layout ------*/ -static ADDRESS_MAP_START( bloodstm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bloodstm_map, AS_PROGRAM, 16, itech32_state ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE_MEMBER(itech32_state, m_main_ram) AM_SHARE("nvram") AM_RANGE(0x080000, 0x080001) AM_READ_PORT("P1") AM_WRITE(int1_ack_w) AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P2") @@ -995,7 +995,7 @@ static WRITE32_HANDLER( test2_w ) } #endif -static ADDRESS_MAP_START( drivedge_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( drivedge_map, AS_PROGRAM, 32, itech32_state ) #if LOG_DRIVEDGE_UNINIT_RAM AM_RANGE(0x000100, 0x0003ff) AM_MIRROR(0x40000) AM_READWRITE(test1_r, test1_w) AM_RANGE(0x000c00, 0x007fff) AM_MIRROR(0x40000) AM_READWRITE(test2_r, test2_w) @@ -1023,20 +1023,20 @@ AM_RANGE(0x000c00, 0x007fff) AM_MIRROR(0x40000) AM_READWRITE(test2_r, test2_w) AM_RANGE(0x600000, 0x607fff) AM_ROM AM_REGION("user1", 0) AM_BASE_MEMBER(itech32_state, m_main_rom) ADDRESS_MAP_END -static ADDRESS_MAP_START( drivedge_tms1_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( drivedge_tms1_map, AS_PROGRAM, 32, itech32_state ) AM_RANGE(0x000000, 0x001fff) AM_RAM AM_BASE_MEMBER(itech32_state, m_tms1_boot) AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x400) AM_RAM_WRITE(tms1_trigger_w) AM_SHARE("share1") AM_BASE_MEMBER(itech32_state, m_tms1_ram) AM_RANGE(0x080000, 0x0bffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( drivedge_tms2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( drivedge_tms2_map, AS_PROGRAM, 32, itech32_state ) AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x8400) AM_RAM_WRITE(tms2_trigger_w) AM_SHARE("share2") AM_BASE_MEMBER(itech32_state, m_tms2_ram) AM_RANGE(0x080000, 0x08ffff) AM_RAM ADDRESS_MAP_END /*------ 68EC020-based memory layout ------*/ -static ADDRESS_MAP_START( itech020_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( itech020_map, AS_PROGRAM, 32, itech32_state ) AM_RANGE(0x000000, 0x007fff) AM_RAM AM_BASE_MEMBER(itech32_state, m_main_ram) AM_RANGE(0x080000, 0x080003) AM_READ_PORT("P1") AM_WRITE(int1_ack32_w) AM_RANGE(0x100000, 0x100003) AM_READ_PORT("P2") @@ -1067,7 +1067,7 @@ ADDRESS_MAP_END *************************************/ /*------ Rev 1 sound board memory layout ------*/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, itech32_state ) AM_RANGE(0x0000, 0x0000) AM_WRITE(sound_return_w) AM_RANGE(0x0400, 0x0400) AM_READ(sound_data_r) AM_RANGE(0x0800, 0x083f) AM_MIRROR(0x80) AM_DEVREADWRITE("ensoniq", es5506_r, es5506_w) @@ -1081,7 +1081,7 @@ ADDRESS_MAP_END /*------ Rev 2 sound board memory layout ------*/ -static ADDRESS_MAP_START( sound_020_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_020_map, AS_PROGRAM, 8, itech32_state ) AM_RANGE(0x0000, 0x0000) AM_MIRROR(0x400) AM_READ(sound_data_r) AM_RANGE(0x0800, 0x083f) AM_MIRROR(0x80) AM_DEVREADWRITE("ensoniq", es5506_r, es5506_w) AM_RANGE(0x0c00, 0x0c00) AM_WRITE(sound_bank_w) diff --git a/src/mame/drivers/itech8.c b/src/mame/drivers/itech8.c index 200d58ac085..7e7f3052bee 100644 --- a/src/mame/drivers/itech8.c +++ b/src/mame/drivers/itech8.c @@ -854,7 +854,7 @@ static WRITE16_HANDLER( palette16_w ) *************************************/ /*------ common layout with TMS34061 at 0000 ------*/ -static ADDRESS_MAP_START( tmslo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tmslo_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x0000, 0x0fff) AM_READWRITE(itech8_tms34061_r, itech8_tms34061_w) AM_RANGE(0x1100, 0x1100) AM_WRITENOP AM_RANGE(0x1120, 0x1120) AM_WRITE(sound_data_w) @@ -870,7 +870,7 @@ ADDRESS_MAP_END /*------ common layout with TMS34061 at 1000 ------*/ -static ADDRESS_MAP_START( tmshi_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tmshi_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x1000, 0x1fff) AM_READWRITE(itech8_tms34061_r, itech8_tms34061_w) AM_RANGE(0x0100, 0x0100) AM_WRITENOP AM_RANGE(0x0120, 0x0120) AM_WRITE(sound_data_w) @@ -886,7 +886,7 @@ ADDRESS_MAP_END /*------ Golden Tee Golf II 1992 layout ------*/ -static ADDRESS_MAP_START( gtg2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gtg2_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x0100, 0x0100) AM_READ_PORT("40") AM_WRITE(itech8_nmi_ack_w) AM_RANGE(0x0120, 0x0120) AM_READ_PORT("60") AM_WRITE(itech8_page_w) AM_RANGE(0x0140, 0x015f) AM_WRITE(itech8_palette_w) @@ -902,7 +902,7 @@ ADDRESS_MAP_END /*------ Ninja Clowns layout ------*/ -static ADDRESS_MAP_START( ninclown_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ninclown_map, AS_PROGRAM, 16, itech8_state ) AM_RANGE(0x000000, 0x00007f) AM_RAM AM_REGION("maincpu", 0) AM_RANGE(0x000080, 0x003fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x004000, 0x07ffff) AM_ROM @@ -925,7 +925,7 @@ ADDRESS_MAP_END *************************************/ /*------ YM2203-based sound ------*/ -static ADDRESS_MAP_START( sound2203_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound2203_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x0000, 0x0000) AM_WRITENOP AM_RANGE(0x1000, 0x1000) AM_READ(sound_data_r) AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x0002) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) @@ -936,7 +936,7 @@ ADDRESS_MAP_END /*------ YM2608B-based sound ------*/ -static ADDRESS_MAP_START( sound2608b_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound2608b_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x1000, 0x1000) AM_WRITENOP AM_RANGE(0x2000, 0x2000) AM_READ(sound_data_r) AM_RANGE(0x4000, 0x4003) AM_DEVREADWRITE("ymsnd", ym2608_r, ym2608_w) @@ -946,7 +946,7 @@ ADDRESS_MAP_END /*------ YM3812-based sound ------*/ -static ADDRESS_MAP_START( sound3812_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound3812_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x0000, 0x0000) AM_WRITENOP AM_RANGE(0x1000, 0x1000) AM_READ(sound_data_r) AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) @@ -958,7 +958,7 @@ ADDRESS_MAP_END /*------ external YM3812-based sound board ------*/ -static ADDRESS_MAP_START( sound3812_external_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound3812_external_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x0000, 0x0000) AM_WRITENOP AM_RANGE(0x1000, 0x1000) AM_READ(sound_data_r) AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) @@ -976,12 +976,12 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( slikz80_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slikz80_mem_map, AS_PROGRAM, 8, itech8_state ) AM_RANGE(0x0000, 0x7ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( slikz80_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( slikz80_io_map, AS_IO, 8, itech8_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(slikz80_port_r, slikz80_port_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/itgambl2.c b/src/mame/drivers/itgambl2.c index cb2616b4971..c7ca873ce7c 100644 --- a/src/mame/drivers/itgambl2.c +++ b/src/mame/drivers/itgambl2.c @@ -141,7 +141,7 @@ static SCREEN_UPDATE_RGB32( itgambl2 ) * Memory map information * *************************/ -static ADDRESS_MAP_START( itgambl2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( itgambl2_map, AS_PROGRAM, 16, itgambl2_state ) ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE(0x000000, 0xffffff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/itgambl3.c b/src/mame/drivers/itgambl3.c index 9446d97846c..6a19248aa15 100644 --- a/src/mame/drivers/itgambl3.c +++ b/src/mame/drivers/itgambl3.c @@ -129,7 +129,7 @@ static SCREEN_UPDATE_RGB32( itgambl3 ) * Memory map information * *************************/ -static ADDRESS_MAP_START( itgambl3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( itgambl3_map, AS_PROGRAM, 16, itgambl3_state ) ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE(0x000000, 0xffffff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/jack.c b/src/mame/drivers/jack.c index fd6096e20a5..f82bd5de755 100644 --- a/src/mame/drivers/jack.c +++ b/src/mame/drivers/jack.c @@ -136,7 +136,7 @@ static READ8_HANDLER( striv_question_r ) * *************************************/ -static ADDRESS_MAP_START( jack_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jack_map, AS_PROGRAM, 8, jack_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0xb000, 0xb07f) AM_RAM AM_BASE_SIZE_MEMBER(jack_state, m_spriteram, m_spriteram_size) @@ -154,7 +154,7 @@ static ADDRESS_MAP_START( jack_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( joinem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( joinem_map, AS_PROGRAM, 8, jack_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0xb000, 0xb0ff) AM_RAM AM_BASE_SIZE_MEMBER(jack_state, m_spriteram, m_spriteram_size) @@ -171,13 +171,13 @@ static ADDRESS_MAP_START( joinem_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, jack_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_WRITENOP /* R/C filter ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, jack_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_data_w) AM_RANGE(0x80, 0x80) AM_DEVWRITE("aysnd", ay8910_address_w) diff --git a/src/mame/drivers/jackal.c b/src/mame/drivers/jackal.c index 5739aee36e0..45e42932ee3 100644 --- a/src/mame/drivers/jackal.c +++ b/src/mame/drivers/jackal.c @@ -163,7 +163,7 @@ static WRITE8_HANDLER( jackal_spriteram_w ) * *************************************/ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, jackal_state ) AM_RANGE(0x0000, 0x0003) AM_RAM AM_BASE_MEMBER(jackal_state, m_videoctrl) // scroll + other things AM_RANGE(0x0004, 0x0004) AM_WRITE(jackal_flipscreen_w) AM_RANGE(0x0010, 0x0010) AM_READ_PORT("DSW1") @@ -182,7 +182,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, jackal_state ) AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_MEMBER(jackal_state, m_paletteram) // self test only checks 0x4000-0x423f, 007327 should actually go up to 4fff AM_RANGE(0x6000, 0x605f) AM_RAM // SOUND RAM (Self test check 0x6000-605f, 0x7c00-0x7fff) diff --git a/src/mame/drivers/jackie.c b/src/mame/drivers/jackie.c index b96b2890349..23205e85f92 100644 --- a/src/mame/drivers/jackie.c +++ b/src/mame/drivers/jackie.c @@ -340,12 +340,12 @@ static READ8_HANDLER( expram_r ) } -static ADDRESS_MAP_START( jackie_prg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jackie_prg_map, AS_PROGRAM, 8, jackie_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM AM_REGION("maincpu", 0xf000) ADDRESS_MAP_END -static ADDRESS_MAP_START( jackie_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( jackie_io_map, AS_IO, 8, jackie_state ) AM_RANGE(0x0520, 0x0524) AM_WRITE(jackie_unk_reg1_lo_w) AM_RANGE(0x0d20, 0x0d24) AM_WRITE(jackie_unk_reg1_hi_w) AM_RANGE(0x0560, 0x0564) AM_WRITE(jackie_unk_reg2_lo_w) diff --git a/src/mame/drivers/jackpool.c b/src/mame/drivers/jackpool.c index be89bdd9aaa..e65db9b726e 100644 --- a/src/mame/drivers/jackpool.c +++ b/src/mame/drivers/jackpool.c @@ -166,7 +166,7 @@ static WRITE16_HANDLER( jackpool_io_w ) #endif } -static ADDRESS_MAP_START( jackpool_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jackpool_mem, AS_PROGRAM, 16, jackpool_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x120000, 0x1200ff) AM_RAM diff --git a/src/mame/drivers/jaguar.c b/src/mame/drivers/jaguar.c index 2cb38497b26..4b9a760c17d 100644 --- a/src/mame/drivers/jaguar.c +++ b/src/mame/drivers/jaguar.c @@ -1181,7 +1181,7 @@ static WRITE16_HANDLER( jaguar_gpu_clut_w16 ) { if (!(offset&1)) { jaguar_gpu_cl static READ16_HANDLER( jaguar_gpu_ram_r16 ) { if (!(offset&1)) { return jaguar_gpu_ram_r(space, offset>>1, mem_mask<<16) >> 16; } else { return jaguar_gpu_ram_r(space, offset>>1, mem_mask); } } static WRITE16_HANDLER( jaguar_gpu_ram_w16 ) { if (!(offset&1)) { jaguar_gpu_ram_w(space, offset>>1, data << 16, mem_mask << 16); } else { jaguar_gpu_ram_w(space, offset>>1, data, mem_mask); } } -static ADDRESS_MAP_START( jaguar_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jaguar_map, AS_PROGRAM, 16, cojag_state ) ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE(0x000000, 0x1fffff) AM_MIRROR(0x200000) AM_READWRITE( jaguar_shared_ram_r16, jaguar_shared_ram_w16 ); AM_RANGE(0x800000, 0xdfffff) AM_READWRITE( jaguar_cart_base_r16, jaguar_cart_base_w16 ) @@ -1209,7 +1209,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( r3000_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( r3000_map, AS_PROGRAM, 32, cojag_state ) AM_RANGE(0x04000000, 0x047fffff) AM_RAM AM_BASE(&jaguar_shared_ram) AM_SHARE("share1") AM_RANGE(0x04800000, 0x04bfffff) AM_ROMBANK("bank1") AM_RANGE(0x04c00000, 0x04dfffff) AM_ROMBANK("bank2") @@ -1238,7 +1238,7 @@ static ADDRESS_MAP_START( r3000_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( m68020_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( m68020_map, AS_PROGRAM, 32, cojag_state ) AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_BASE(&jaguar_shared_ram) AM_SHARE("share1") AM_RANGE(0x800000, 0x9fffff) AM_ROM AM_REGION("user1", 0) AM_BASE_MEMBER(cojag_state, m_rom_base) AM_RANGE(0xa00000, 0xa1ffff) AM_RAM @@ -1271,7 +1271,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( gpu_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gpu_map, AS_PROGRAM, 32, cojag_state ) AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE("share1") AM_RANGE(0x800000, 0xbfffff) AM_ROMBANK("bank8") AM_RANGE(0xc00000, 0xdfffff) AM_ROMBANK("bank9") @@ -1292,7 +1292,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsp_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dsp_map, AS_PROGRAM, 32, cojag_state ) AM_RANGE(0x000000, 0x7fffff) AM_RAM AM_SHARE("share1") AM_RANGE(0x800000, 0xbfffff) AM_ROMBANK("bank8") AM_RANGE(0xc00000, 0xdfffff) AM_ROMBANK("bank9") @@ -1305,7 +1305,7 @@ ADDRESS_MAP_END /* ToDo, these maps SHOULD be merged with the ones above */ -static ADDRESS_MAP_START( jag_gpu_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( jag_gpu_map, AS_PROGRAM, 32, cojag_state ) ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE(0x000000, 0x1fffff) AM_RAM AM_BASE(&jaguar_shared_ram) AM_MIRROR(0x200000) AM_SHARE("share1") AM_REGION("maincpu", 0) AM_RANGE(0x800000, 0xdfffff) AM_ROM AM_BASE(&cart_base) AM_SIZE(&cart_size) AM_SHARE("share15") AM_REGION("maincpu", 0x800000) @@ -1323,7 +1323,7 @@ static ADDRESS_MAP_START( jag_gpu_map, AS_PROGRAM, 32 ) AM_RANGE(0xf1d000, 0xf1dfff) AM_ROM AM_BASE(&high_rom_base) AM_REGION("maincpu", 0xf1d000) ADDRESS_MAP_END -static ADDRESS_MAP_START( jag_dsp_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( jag_dsp_map, AS_PROGRAM, 32, cojag_state ) ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE(0x000000, 0x1fffff) AM_MIRROR(0x200000) AM_RAM AM_SHARE("share1") AM_REGION("maincpu", 0) AM_RANGE(0x800000, 0xdfffff) AM_ROM AM_SHARE("share15") AM_REGION("maincpu", 0x800000) diff --git a/src/mame/drivers/jailbrek.c b/src/mame/drivers/jailbrek.c index 22d4c24f9ae..63874cb59a8 100644 --- a/src/mame/drivers/jailbrek.c +++ b/src/mame/drivers/jailbrek.c @@ -130,7 +130,7 @@ static WRITE8_DEVICE_HANDLER( jailbrek_speech_w ) vlm5030_rst(device, (data >> 2) & 1); } -static ADDRESS_MAP_START( jailbrek_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jailbrek_map, AS_PROGRAM, 8, jailbrek_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(jailbrek_colorram_w) AM_BASE_MEMBER(jailbrek_state, m_colorram) AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(jailbrek_videoram_w) AM_BASE_MEMBER(jailbrek_state, m_videoram) AM_RANGE(0x1000, 0x10bf) AM_RAM AM_BASE_SIZE_MEMBER(jailbrek_state, m_spriteram, m_spriteram_size) diff --git a/src/mame/drivers/jalmah.c b/src/mame/drivers/jalmah.c index 2e934c4c6f3..90c85b0a810 100644 --- a/src/mame/drivers/jalmah.c +++ b/src/mame/drivers/jalmah.c @@ -969,7 +969,7 @@ static WRITE16_HANDLER( jalmah_flip_screen_w ) // popmessage("%04x",data); } -static ADDRESS_MAP_START( jalmah, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jalmah, AS_PROGRAM, 16, jalmah_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("DSW") @@ -993,7 +993,7 @@ static ADDRESS_MAP_START( jalmah, AS_PROGRAM, 16 ) AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE_MEMBER(jalmah_state, m_jm_mcu_code)/*extra RAM for MCU code prg (NOT ON REAL HW!!!)*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( urashima, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( urashima, AS_PROGRAM, 16, jalmah_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("DSW") diff --git a/src/mame/drivers/jangou.c b/src/mame/drivers/jangou.c index 11b469019e6..94157268a94 100644 --- a/src/mame/drivers/jangou.c +++ b/src/mame/drivers/jangou.c @@ -385,12 +385,12 @@ static WRITE8_HANDLER( slave_com_w ) * *************************************/ -static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu0_map, AS_PROGRAM, 8, jangou_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu0_io, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu0_io, AS_IO, 8, jangou_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -404,11 +404,11 @@ static ADDRESS_MAP_START( cpu0_io, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, jangou_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_io, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu1_io, AS_IO, 8, jangou_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00,0x00) AM_READ(sound_latch_r) AM_RANGE(0x01,0x01) AM_WRITE(cvsd_w) @@ -422,18 +422,18 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( jngolady_cpu0_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jngolady_cpu0_map, AS_PROGRAM, 8, jangou_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") AM_RANGE(0xe000, 0xe000) AM_READWRITE(master_com_r,master_com_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( jngolady_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jngolady_cpu1_map, AS_PROGRAM, 8, jangou_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( jngolady_cpu1_io, AS_IO, 8 ) +static ADDRESS_MAP_START( jngolady_cpu1_io, AS_IO, 8, jangou_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00,0x00) AM_READ(sound_latch_r) AM_RANGE(0x01,0x01) AM_WRITE(adpcm_w) @@ -441,7 +441,7 @@ static ADDRESS_MAP_START( jngolady_cpu1_io, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8, jangou_state ) AM_RANGE(0x0000, 0x007f) AM_RAM //internal ram for irq etc. AM_RANGE(0x8000, 0x8000) AM_WRITENOP //write-only,irq related? AM_RANGE(0x9000, 0x9000) AM_READWRITE(slave_com_r,slave_com_w) @@ -455,13 +455,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( cntrygrl_cpu0_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cntrygrl_cpu0_map, AS_PROGRAM, 8, jangou_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cntrygrl_cpu0_io, AS_IO, 8 ) +static ADDRESS_MAP_START( cntrygrl_cpu0_io, AS_IO, 8, jangou_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -480,12 +480,12 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( roylcrdn_cpu0_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( roylcrdn_cpu0_map, AS_PROGRAM, 8, jangou_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x7000, 0x77ff) AM_RAM AM_SHARE("nvram") /* MK48Z02B-15 ZEROPOWER RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( roylcrdn_cpu0_io, AS_IO, 8 ) +static ADDRESS_MAP_START( roylcrdn_cpu0_io, AS_IO, 8, jangou_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) diff --git a/src/mame/drivers/jankenmn.c b/src/mame/drivers/jankenmn.c index a126d94bea5..5cf74803438 100644 --- a/src/mame/drivers/jankenmn.c +++ b/src/mame/drivers/jankenmn.c @@ -225,13 +225,13 @@ static CUSTOM_INPUT( jankenmn_hopper_status_r ) * Memory Map Definition * *********************************************/ -static ADDRESS_MAP_START( jankenmn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jankenmn_map, AS_PROGRAM, 8, jankenmn_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( jankenmn_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( jankenmn_port_map, AS_IO, 8, jankenmn_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE_MODERN("ppi8255_0", i8255_device, read, write) diff --git a/src/mame/drivers/jantotsu.c b/src/mame/drivers/jantotsu.c index 55726f21311..1f18d6d4c1d 100644 --- a/src/mame/drivers/jantotsu.c +++ b/src/mame/drivers/jantotsu.c @@ -319,13 +319,13 @@ static void jan_adpcm_int( device_t *device ) * *************************************/ -static ADDRESS_MAP_START( jantotsu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jantotsu_map, AS_PROGRAM, 8, jantotsu_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xffff) AM_READWRITE(jantotsu_bitmap_r, jantotsu_bitmap_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( jantotsu_io, AS_IO, 8 ) +static ADDRESS_MAP_START( jantotsu_io, AS_IO, 8, jantotsu_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x01, 0x01) AM_READ(jantotsu_dsw2_r) AM_DEVWRITE("sn2", sn76496_w) diff --git a/src/mame/drivers/jchan.c b/src/mame/drivers/jchan.c index d92d6011db4..81660b4199a 100644 --- a/src/mame/drivers/jchan.c +++ b/src/mame/drivers/jchan.c @@ -492,7 +492,7 @@ static WRITE16_HANDLER( jchan_suprnova_sprite32regs_2_w ) } -static ADDRESS_MAP_START( jchan_main, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jchan_main, AS_PROGRAM, 16, jchan_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // Work RAM - [A] grid tested, cleared ($9d6-$a54) @@ -517,7 +517,7 @@ static ADDRESS_MAP_START( jchan_main, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jchan_sub, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jchan_sub, AS_PROGRAM, 16, jchan_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM - grid tested, cleared ($612-$6dc) diff --git a/src/mame/drivers/jedi.c b/src/mame/drivers/jedi.c index b08a3011f96..9ad58ad4a4b 100644 --- a/src/mame/drivers/jedi.c +++ b/src/mame/drivers/jedi.c @@ -268,7 +268,7 @@ static WRITE8_HANDLER( nvram_enable_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, jedi_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x08ff) AM_MIRROR(0x0300) AM_RAM_WRITE(nvram_data_w) AM_SHARE("nvram") AM_RANGE(0x0c00, 0x0c00) AM_MIRROR(0x03fe) AM_READ_PORT("0c00") AM_WRITENOP diff --git a/src/mame/drivers/jokrwild.c b/src/mame/drivers/jokrwild.c index 6eaf12f8fbc..4b4d9da4bc4 100644 --- a/src/mame/drivers/jokrwild.c +++ b/src/mame/drivers/jokrwild.c @@ -191,7 +191,7 @@ static READ8_HANDLER( rng_r ) * Memory Map Information * *************************/ -static ADDRESS_MAP_START( jokrwild_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jokrwild_map, AS_PROGRAM, 8, jokrwild_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM_WRITE(jokrwild_videoram_w) AM_BASE_MEMBER(jokrwild_state, m_videoram) AM_RANGE(0x0400, 0x07ff) AM_RAM //FIXME: backup RAM AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(jokrwild_colorram_w) AM_BASE_MEMBER(jokrwild_state, m_colorram) diff --git a/src/mame/drivers/jollyjgr.c b/src/mame/drivers/jollyjgr.c index 653ff3c63eb..5e9eec3ff98 100644 --- a/src/mame/drivers/jollyjgr.c +++ b/src/mame/drivers/jollyjgr.c @@ -193,7 +193,7 @@ static WRITE8_HANDLER( jollyjgr_coin_lookout_w ) * *************************************/ -static ADDRESS_MAP_START( jollyjgr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jollyjgr_map, AS_PROGRAM, 8, jollyjgr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8ff8, 0x8ff8) AM_READ_PORT("DSW1") @@ -210,7 +210,7 @@ static ADDRESS_MAP_START( jollyjgr_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_RAM AM_BASE_MEMBER(jollyjgr_state, m_bitmap) ADDRESS_MAP_END -static ADDRESS_MAP_START( fspider_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fspider_map, AS_PROGRAM, 8, jollyjgr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8ff8, 0x8ff8) AM_READ_PORT("DSW1") diff --git a/src/mame/drivers/jongkyo.c b/src/mame/drivers/jongkyo.c index ba56375593b..feb7899ef9a 100644 --- a/src/mame/drivers/jongkyo.c +++ b/src/mame/drivers/jongkyo.c @@ -217,7 +217,7 @@ static WRITE8_HANDLER( unknown_w ) * *************************************/ -static ADDRESS_MAP_START( jongkyo_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jongkyo_memmap, AS_PROGRAM, 8, jongkyo_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_WRITE(videoram2_w) // wrong, this doesn't seem to be video ram on write.. AM_RANGE(0x4000, 0x6bff) AM_ROM // fixed rom AM_RANGE(0x6c00, 0x6fff) AM_ROMBANK("bank1") // banked (8 banks) @@ -226,7 +226,7 @@ static ADDRESS_MAP_START( jongkyo_memmap, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jongkyo_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( jongkyo_portmap, AS_IO, 8, jongkyo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // R 01 keyboard AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/jpmimpct.c b/src/mame/drivers/jpmimpct.c index d5a2e01897e..8e1b381760a 100644 --- a/src/mame/drivers/jpmimpct.c +++ b/src/mame/drivers/jpmimpct.c @@ -588,7 +588,7 @@ static WRITE16_HANDLER( jpmio_w ) * Main CPU memory handlers * *************************************/ -static ADDRESS_MAP_START( m68k_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( m68k_program_map, AS_PROGRAM, 16, jpmimpct_state ) AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_RANGE(0x00100000, 0x001fffff) AM_ROM AM_RANGE(0x00400000, 0x00403fff) AM_RAM AM_SHARE("nvram") @@ -618,7 +618,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, jpmimpct_state ) AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE(tms34010_io_register_r, tms34010_io_register_w) AM_RANGE(0x00000000, 0x003fffff) AM_MIRROR(0xf8000000) AM_RAM AM_BASE_MEMBER(jpmimpct_state, m_vram) AM_RANGE(0x00800000, 0x00ffffff) AM_MIRROR(0xf8000000) AM_ROM AM_REGION("user1", 0x100000) @@ -1223,7 +1223,7 @@ static READ16_HANDLER( ump_r ) * Main CPU memory handlers * *************************************/ -static ADDRESS_MAP_START( awp68k_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( awp68k_program_map, AS_PROGRAM, 16, jpmimpct_state ) AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_RANGE(0x00100000, 0x001fffff) AM_ROM AM_RANGE(0x00400000, 0x00403fff) AM_RAM AM_SHARE("nvram") diff --git a/src/mame/drivers/jpmsys5.c b/src/mame/drivers/jpmsys5.c index 9bba92a0537..d859d77111d 100644 --- a/src/mame/drivers/jpmsys5.c +++ b/src/mame/drivers/jpmsys5.c @@ -308,7 +308,7 @@ static READ16_DEVICE_HANDLER( jpm_upd7759_r ) * *************************************/ -static ADDRESS_MAP_START( 68000_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( 68000_map, AS_PROGRAM, 16, jpmsys5_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x01fffe, 0x01ffff) AM_WRITE(rombank_w) AM_RANGE(0x020000, 0x03ffff) AM_ROMBANK("bank1") @@ -692,7 +692,7 @@ MACHINE_CONFIG_END -static ADDRESS_MAP_START( 68000_awp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( 68000_awp_map, AS_PROGRAM, 16, jpmsys5_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x01fffe, 0x01ffff) AM_WRITE(rombank_w) AM_RANGE(0x020000, 0x03ffff) AM_ROMBANK("bank1") diff --git a/src/mame/drivers/jrpacman.c b/src/mame/drivers/jrpacman.c index ff4c7b760d1..27f2e3716b2 100644 --- a/src/mame/drivers/jrpacman.c +++ b/src/mame/drivers/jrpacman.c @@ -132,7 +132,7 @@ static WRITE8_HANDLER( irq_mask_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, jrpacman_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM_WRITE(jrpacman_videoram_w) AM_BASE_MEMBER(jrpacman_state, m_videoram) AM_RANGE(0x4800, 0x4fef) AM_RAM @@ -156,7 +156,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, jrpacman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0, 0) AM_WRITE(jrpacman_interrupt_vector_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/jubilee.c b/src/mame/drivers/jubilee.c index aca4a22a7c8..f7380fcb827 100644 --- a/src/mame/drivers/jubilee.c +++ b/src/mame/drivers/jubilee.c @@ -160,7 +160,7 @@ static INTERRUPT_GEN( jubileep_interrupt ) * Memory Map Information * *************************/ //59a -static ADDRESS_MAP_START( jubileep_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jubileep_map, AS_PROGRAM, 8, jubilee_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3000, 0x30ff) AM_WRITE(jubileep_videoram_w) AM_BASE_MEMBER(jubilee_state, m_videoram) /* wrong... just placed somewhere */ @@ -182,7 +182,7 @@ static READ8_HANDLER(unk_r) return (space->machine().rand() & 0xff); } -static ADDRESS_MAP_START( jubileep_cru_map, AS_IO, 8 ) +static ADDRESS_MAP_START( jubileep_cru_map, AS_IO, 8, jubilee_state ) // AM_RANGE(0x0000, 0xffff) AM_READ(unk_r) // AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("crtc", mc6845_status_r, mc6845_address_w) // AM_RANGE(0x01, 0x01) AM_DEVREADWRITE("crtc", mc6845_register_r, mc6845_register_w) diff --git a/src/mame/drivers/junofrst.c b/src/mame/drivers/junofrst.c index 5022c187b84..75f4d4cef1d 100644 --- a/src/mame/drivers/junofrst.c +++ b/src/mame/drivers/junofrst.c @@ -276,7 +276,7 @@ static WRITE8_HANDLER( junofrst_irq_enable_w ) device_set_input_line(state->m_maincpu, 0, CLEAR_LINE); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, junofrst_state ) AM_RANGE(0x0000, 0x7fff) AM_RAM AM_BASE_MEMBER(junofrst_state, m_videoram) AM_RANGE(0x8000, 0x800f) AM_RAM AM_BASE_MEMBER(junofrst_state, m_paletteram) AM_RANGE(0x8010, 0x8010) AM_READ_PORT("DSW2") @@ -299,7 +299,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, junofrst_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READ(soundlatch_r) @@ -311,12 +311,12 @@ static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, junofrst_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, junofrst_state ) AM_RANGE(0x00, 0xff) AM_READ(soundlatch2_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_and_status_w) diff --git a/src/mame/drivers/kaneko16.c b/src/mame/drivers/kaneko16.c index 9d6a531f7ea..77741734689 100644 --- a/src/mame/drivers/kaneko16.c +++ b/src/mame/drivers/kaneko16.c @@ -368,7 +368,7 @@ static WRITE16_HANDLER( kaneko16_eeprom_w ) The Berlin Wall ***************************************************************************/ -static ADDRESS_MAP_START( berlwall, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( berlwall, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // Work RAM AM_RANGE(0x30e000, 0x30ffff) AM_RAM AM_SHARE("spriteram") // Sprites @@ -412,7 +412,7 @@ static WRITE16_DEVICE_HANDLER( bakubrkr_oki_bank_sw ) } } -static ADDRESS_MAP_START( bakubrkr, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bakubrkr, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM AM_RANGE(0x400000, 0x40001f) AM_DEVREAD("ay1", kaneko16_YM2149_r) // Sound @@ -446,7 +446,7 @@ ADDRESS_MAP_END Blaze On ***************************************************************************/ -static ADDRESS_MAP_START( blazeon, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blazeon, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x300000, 0x30ffff) AM_RAM // Work RAM AM_RANGE(0x500000, 0x500fff) AM_RAM_WRITE(paletteram16_xGGGGGRRRRRBBBBB_word_w) AM_BASE_GENERIC(paletteram) // Palette @@ -505,7 +505,7 @@ static WRITE16_HANDLER( bloodwar_coin_lockout_w ) } } -static ADDRESS_MAP_START( bloodwar, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bloodwar, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(kaneko16_state, m_mcu_ram) // Shared With MCU @@ -567,7 +567,7 @@ static WRITE16_DEVICE_HANDLER( bonkadv_oki_1_bank_w ) } -static ADDRESS_MAP_START( bonkadv, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bonkadv, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // Work RAM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(kaneko16_state, m_mcu_ram) // Shared With MCU @@ -643,7 +643,7 @@ static WRITE16_DEVICE_HANDLER( gtmr_oki_1_bank_w ) } } -static ADDRESS_MAP_START( gtmr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gtmr_map, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x0ffffd) AM_ROM // ROM AM_RANGE(0x0ffffe, 0x0fffff) AM_READ(gtmr_wheel_r) // Wheel Value @@ -719,7 +719,7 @@ static READ16_HANDLER( gtmr2_IN1_r ) return (input_port_read(space->machine(), "P2") & (input_port_read(space->machine(), "FAKE") | ~0x7100)); } -static ADDRESS_MAP_START( gtmr2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gtmr2_map, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x0ffffd) AM_ROM // ROM AM_RANGE(0x0ffffe, 0x0fffff) AM_READ(gtmr2_wheel_r) // Wheel Value @@ -772,7 +772,7 @@ ADDRESS_MAP_END Magical Crystal ***************************************************************************/ -static ADDRESS_MAP_START( mgcrystl, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mgcrystl, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x300000, 0x30ffff) AM_RAM // Work RAM AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE("ay1", kaneko16_YM2149_r, kaneko16_YM2149_w) // Sound @@ -837,7 +837,7 @@ static WRITE16_HANDLER( brapboys_oki_bank_w ) } -static ADDRESS_MAP_START( shogwarr, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shogwarr, AS_PROGRAM, 16, kaneko16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE_MEMBER(kaneko16_state, m_mainram) // Work RAM AM_RANGE(0x200000, 0x20ffff) AM_RAM_WRITE(calc3_mcu_ram_w) AM_BASE_MEMBER(kaneko16_state, m_mcu_ram) // Shared With MCU @@ -879,12 +879,12 @@ ADDRESS_MAP_END Blaze On ***************************************************************************/ -static ADDRESS_MAP_START( blazeon_soundmem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blazeon_soundmem, AS_PROGRAM, 8, kaneko16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( blazeon_soundport, AS_IO, 8 ) +static ADDRESS_MAP_START( blazeon_soundport, AS_IO, 8, kaneko16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x06, 0x06) AM_READ(soundlatch_r) @@ -2149,12 +2149,12 @@ static const UINT16 shogwarr_default_eeprom[64] = { 0x0000, 0x0000, 0x0000, 0x0000, 0x0010, 0x0000, 0x0000, 0xFFFF }; -static ADDRESS_MAP_START( shogwarr_oki1_map, AS_0, 8 ) +static ADDRESS_MAP_START( shogwarr_oki1_map, AS_0, 8, kaneko16_state ) AM_RANGE(0x00000, 0x2ffff) AM_ROM AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("bank10") ADDRESS_MAP_END -static ADDRESS_MAP_START( shogwarr_oki2_map, AS_0, 8 ) +static ADDRESS_MAP_START( shogwarr_oki2_map, AS_0, 8, kaneko16_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROMBANK("bank11") ADDRESS_MAP_END @@ -2206,7 +2206,7 @@ static const UINT16 brapboys_default_eeprom[64] = { 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0x0035, 0xFFFF, 0xFFFF, 0xFFFF }; -static ADDRESS_MAP_START( brapboys_oki2_map, AS_0, 8 ) +static ADDRESS_MAP_START( brapboys_oki2_map, AS_0, 8, kaneko16_state ) AM_RANGE(0x00000, 0x1ffff) AM_ROM AM_RANGE(0x20000, 0x3ffff) AM_ROMBANK("bank11") ADDRESS_MAP_END diff --git a/src/mame/drivers/kangaroo.c b/src/mame/drivers/kangaroo.c index d183a437dec..35499771f1f 100644 --- a/src/mame/drivers/kangaroo.c +++ b/src/mame/drivers/kangaroo.c @@ -252,7 +252,7 @@ static WRITE8_HANDLER( kangaroo_coin_counter_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, kangaroo_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_WRITE(kangaroo_videoram_w) AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1") @@ -272,7 +272,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, kangaroo_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0c00) AM_RAM AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_READ(soundlatch_r) @@ -282,7 +282,7 @@ ADDRESS_MAP_END /* yes, this is identical */ -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, kangaroo_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x0c00) AM_RAM AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x0fff) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/karnov.c b/src/mame/drivers/karnov.c index fada149e732..9b372b4bd36 100644 --- a/src/mame/drivers/karnov.c +++ b/src/mame/drivers/karnov.c @@ -427,7 +427,7 @@ static READ16_HANDLER( karnov_control_r ) * *************************************/ -static ADDRESS_MAP_START( karnov_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( karnov_map, AS_PROGRAM, 16, karnov_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x063fff) AM_RAM AM_BASE_MEMBER(karnov_state, m_ram) AM_RANGE(0x080000, 0x080fff) AM_RAM AM_SHARE("spriteram") @@ -440,7 +440,7 @@ static ADDRESS_MAP_START( karnov_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( karnov_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( karnov_sound_map, AS_PROGRAM, 8, karnov_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_RANGE(0x0800, 0x0800) AM_READ(soundlatch_r) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym1", ym2203_w) diff --git a/src/mame/drivers/kas89.c b/src/mame/drivers/kas89.c index 21b9fad519b..f52bf0a18e4 100644 --- a/src/mame/drivers/kas89.c +++ b/src/mame/drivers/kas89.c @@ -499,7 +499,7 @@ static WRITE8_HANDLER( led_mux_select_w ) * Memory Map * **************************************/ -static ADDRESS_MAP_START( kas89_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kas89_map, AS_PROGRAM, 8, kas89_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x0037, 0x0037) AM_WRITENOP /* WTF? */ AM_RANGE(0x8000, 0x81ff) AM_RAM /* empty */ @@ -514,7 +514,7 @@ static ADDRESS_MAP_START( kas89_map, AS_PROGRAM, 8 ) AM_RANGE(0x9800, 0x9fff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( kas89_io, AS_IO, 8 ) +static ADDRESS_MAP_START( kas89_io, AS_IO, 8, kas89_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x43) AM_DEVREADWRITE_MODERN("v9938", v9938_device, read, write) AM_RANGE(0x80, 0x80) AM_WRITE(mux_w) @@ -563,12 +563,12 @@ ADDRESS_MAP_END 4aa1 : ret */ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, kas89_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_io, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_io, AS_IO, 8, kas89_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(int_ack_w) // comm out (1st Z80). seems to write here the value previously read through soundlatch (port 0x02). AM_RANGE(0x02, 0x02) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/kchamp.c b/src/mame/drivers/kchamp.c index 69cbd6525ea..176bb73fcf5 100644 --- a/src/mame/drivers/kchamp.c +++ b/src/mame/drivers/kchamp.c @@ -108,7 +108,7 @@ static WRITE8_HANDLER( sound_msm_w ) state->m_msm_play_lo_nibble = 1; } -static ADDRESS_MAP_START( kchampvs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kchampvs_map, AS_PROGRAM, 8, kchamp_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(kchamp_videoram_w) AM_BASE_MEMBER(kchamp_state, m_videoram) @@ -118,7 +118,7 @@ static ADDRESS_MAP_START( kchampvs_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( kchampvs_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kchampvs_io_map, AS_IO, 8, kchamp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_WRITE(kchamp_flipscreen_w) AM_RANGE(0x01, 0x01) AM_WRITE(control_w) @@ -128,12 +128,12 @@ static ADDRESS_MAP_START( kchampvs_io_map, AS_IO, 8 ) AM_RANGE(0xc0, 0xc0) AM_READ_PORT("DSW") ADDRESS_MAP_END -static ADDRESS_MAP_START( kchampvs_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kchampvs_sound_map, AS_PROGRAM, 8, kchamp_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kchampvs_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kchampvs_sound_io_map, AS_IO, 8, kchamp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x01, 0x01) AM_READ(soundlatch_r) @@ -163,7 +163,7 @@ static WRITE8_HANDLER( kc_sound_control_w ) // DAC_set_volume(0, (data == 1) ? 255 : 0, 0); } -static ADDRESS_MAP_START( kchamp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kchamp_map, AS_PROGRAM, 8, kchamp_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe3ff) AM_RAM_WRITE(kchamp_videoram_w) AM_BASE_MEMBER(kchamp_state, m_videoram) @@ -172,7 +172,7 @@ static ADDRESS_MAP_START( kchamp_map, AS_PROGRAM, 8 ) AM_RANGE(0xeb00, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kchamp_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kchamp_io_map, AS_IO, 8, kchamp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x80) AM_READ_PORT("DSW") AM_WRITE(kchamp_flipscreen_w) AM_RANGE(0x81, 0x81) AM_WRITE(control_w) @@ -182,12 +182,12 @@ static ADDRESS_MAP_START( kchamp_io_map, AS_IO, 8 ) AM_RANGE(0xa8, 0xa8) AM_READWRITE(sound_reset_r, sound_command_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( kchamp_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kchamp_sound_map, AS_PROGRAM, 8, kchamp_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe2ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kchamp_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kchamp_sound_io_map, AS_IO, 8, kchamp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_data_address_w) diff --git a/src/mame/drivers/kickgoal.c b/src/mame/drivers/kickgoal.c index 1b50cb49268..c8d9ac284d0 100644 --- a/src/mame/drivers/kickgoal.c +++ b/src/mame/drivers/kickgoal.c @@ -480,7 +480,7 @@ static WRITE16_HANDLER( kickgoal_eeprom_w ) /* Memory Maps *****************************************************************/ -static ADDRESS_MAP_START( kickgoal_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kickgoal_program_map, AS_PROGRAM, 16, kickgoal_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /// AM_RANGE(0x30001e, 0x30001f) AM_DEVWRITE("oki", kickgoal_snd_w) AM_RANGE(0x800000, 0x800001) AM_READ_PORT("P1_P2") @@ -504,11 +504,11 @@ ADDRESS_MAP_END /* $000 - 7FF PIC16C57 Internal Program ROM. Note: code is 12bits wide */ /* $000 - 07F PIC16C57 Internal Data RAM */ -static ADDRESS_MAP_START( kickgoal_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kickgoal_sound_io_map, AS_IO, 8, kickgoal_state ) /* Unknown without the PIC dump */ ADDRESS_MAP_END -static ADDRESS_MAP_START( actionhw_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( actionhw_io_map, AS_IO, 8, kickgoal_state ) /* Unknown without the PIC dump */ ADDRESS_MAP_END diff --git a/src/mame/drivers/kingdrby.c b/src/mame/drivers/kingdrby.c index 3dad2da7314..d91019c8ae3 100644 --- a/src/mame/drivers/kingdrby.c +++ b/src/mame/drivers/kingdrby.c @@ -381,19 +381,19 @@ static WRITE8_HANDLER( led_array_w ) * *************************************/ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, kingdrby_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3000, 0x33ff) AM_RAM AM_MIRROR(0xc00) AM_SHARE("share1") AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(sc0_vram_w) AM_BASE_MEMBER(kingdrby_state, m_vram) AM_RANGE(0x5000, 0x53ff) AM_RAM_WRITE(sc0_attr_w) AM_BASE_MEMBER(kingdrby_state, m_attr) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( master_io_map, AS_IO, 8, kingdrby_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_NOP //interrupt ack ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, kingdrby_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3000, 0x3fff) AM_ROM //sound rom, tested for the post check AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("nvram") //backup ram @@ -413,7 +413,7 @@ static WRITE8_HANDLER( kingdrbb_lamps_w ) // (same as the inputs but active high) } -static ADDRESS_MAP_START( slave_1986_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_1986_map, AS_PROGRAM, 8, kingdrby_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3000, 0x3fff) AM_ROM //sound rom tested for the post check AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("nvram") //backup ram @@ -432,28 +432,28 @@ static ADDRESS_MAP_START( slave_1986_map, AS_PROGRAM, 8 ) AM_RANGE(0x7c00, 0x7c00) AM_READ_PORT("DSW") ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( slave_io_map, AS_IO, 8, kingdrby_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_NOP //interrupt ack ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, kingdrby_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, kingdrby_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( cowrace_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cowrace_sound_map, AS_PROGRAM, 8, kingdrby_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cowrace_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( cowrace_sound_io, AS_IO, 8, kingdrby_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ym2203_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/kingobox.c b/src/mame/drivers/kingobox.c index 3de2f8817f4..d30261bd103 100644 --- a/src/mame/drivers/kingobox.c +++ b/src/mame/drivers/kingobox.c @@ -48,7 +48,7 @@ static WRITE8_HANDLER( sound_command_w ) } -static ADDRESS_MAP_START( kingobox_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kingobox_map, AS_PROGRAM, 8, kingofb_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */ AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share2") /* shared with sprite cpu */ @@ -68,7 +68,7 @@ static ADDRESS_MAP_START( kingobox_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc05, 0xfc05) AM_READ_PORT("EXTRA") ADDRESS_MAP_END -static ADDRESS_MAP_START( kingobox_video_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kingobox_video_map, AS_PROGRAM, 8, kingofb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */ AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1") /* shared with main */ @@ -78,7 +78,7 @@ static ADDRESS_MAP_START( kingobox_video_map, AS_PROGRAM, 8 ) AM_RANGE(0xcc00, 0xcfff) AM_RAM_WRITE(kingofb_colorram2_w) AM_BASE_MEMBER(kingofb_state, m_colorram2) /* foreground colorram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( kingobox_sprite_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kingobox_sprite_map, AS_PROGRAM, 8, kingofb_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */ AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share2") /* shared with main */ @@ -86,13 +86,13 @@ static ADDRESS_MAP_START( kingobox_sprite_map, AS_PROGRAM, 8 ) AM_RANGE(0xc400, 0xc43f) AM_RAM /* something related to scroll? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( kingobox_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kingobox_sound_map, AS_PROGRAM, 8, kingofb_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_WRITENOP /* ??? */ AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( kingobox_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kingobox_sound_io_map, AS_IO, 8, kingofb_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_w) AM_RANGE(0x08, 0x08) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_data_w) @@ -100,7 +100,7 @@ static ADDRESS_MAP_START( kingobox_sound_io_map, AS_IO, 8 ) ADDRESS_MAP_END /* Ring King */ -static ADDRESS_MAP_START( ringking_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ringking_map, AS_PROGRAM, 8, kingofb_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_RAM /* work ram */ AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share2") /* shared with sprite cpu */ @@ -119,7 +119,7 @@ static ADDRESS_MAP_START( ringking_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf7ff) AM_RAM /* ???? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( ringking_video_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ringking_video_map, AS_PROGRAM, 8, kingofb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */ AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") /* shared with main */ @@ -129,7 +129,7 @@ static ADDRESS_MAP_START( ringking_video_map, AS_PROGRAM, 8 ) AM_RANGE(0xa400, 0xa7ff) AM_RAM_WRITE(kingofb_colorram2_w) AM_BASE_MEMBER(kingofb_state, m_colorram2) /* foreground colorram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( ringking_sprite_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ringking_sprite_map, AS_PROGRAM, 8, kingofb_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM /* work ram */ AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share2") /* shared with main */ @@ -137,7 +137,7 @@ static ADDRESS_MAP_START( ringking_sprite_map, AS_PROGRAM, 8 ) AM_RANGE(0xa400, 0xa43f) AM_RAM /* something related to scroll? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( ringking_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ringking_sound_io_map, AS_IO, 8, kingofb_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_w) AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/kingpin.c b/src/mame/drivers/kingpin.c index 9cf486a9442..f7892de8312 100644 --- a/src/mame/drivers/kingpin.c +++ b/src/mame/drivers/kingpin.c @@ -99,12 +99,12 @@ INPUT_PORTS_END /* Main CPU */ /* There's an OKI MSM5126-25RS in here - (2k RAM) */ /* A 3.6V battery traces directly to U19, rendering it nvram */ -static ADDRESS_MAP_START( kingpin_program_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kingpin_program_map, AS_PROGRAM, 8, kingpin_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( kingpin_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kingpin_io_map, AS_IO, 8, kingpin_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(io_read_missing_dips) AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW") @@ -126,7 +126,7 @@ ADDRESS_MAP_END /* Sound CPU */ /* There's an OKI MSM5126-25RS in here - (2k RAM) */ -static ADDRESS_MAP_START( kingpin_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kingpin_sound_map, AS_PROGRAM, 8, kingpin_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8400, 0x8bff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/kinst.c b/src/mame/drivers/kinst.c index 01f9424cacc..981731f4140 100644 --- a/src/mame/drivers/kinst.c +++ b/src/mame/drivers/kinst.c @@ -397,7 +397,7 @@ static WRITE32_HANDLER( kinst_control_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, kinst_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_BASE_MEMBER(kinst_state, m_rambase) AM_RANGE(0x08000000, 0x087fffff) AM_RAM AM_BASE_MEMBER(kinst_state, m_rambase2) diff --git a/src/mame/drivers/klax.c b/src/mame/drivers/klax.c index 523d3b86725..4165f9b01d6 100644 --- a/src/mame/drivers/klax.c +++ b/src/mame/drivers/klax.c @@ -83,7 +83,7 @@ static MACHINE_RESET( klax ) * *************************************/ -static ADDRESS_MAP_START( klax_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( klax_map, AS_PROGRAM, 16, klax_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r,atarigen_eeprom_w) AM_SHARE("eeprom") AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE(atarigen_eeprom_enable_w) diff --git a/src/mame/drivers/kncljoe.c b/src/mame/drivers/kncljoe.c index 5f01c2df4b3..7c8699d889d 100644 --- a/src/mame/drivers/kncljoe.c +++ b/src/mame/drivers/kncljoe.c @@ -44,7 +44,7 @@ static WRITE8_HANDLER( sound_cmd_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, kncljoe_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(kncljoe_videoram_w) AM_BASE_MEMBER(kncljoe_state, m_videoram) AM_RANGE(0xd000, 0xd001) AM_WRITE(kncljoe_scroll_w) AM_BASE_MEMBER(kncljoe_state, m_scrollregs) @@ -108,14 +108,14 @@ static WRITE8_DEVICE_HANDLER(unused_w) //unused - no MSM on the pcb } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, kncljoe_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x0fff) AM_WRITENOP AM_RANGE(0x1000, 0x1fff) AM_WRITE(sound_irq_ack_w) AM_RANGE(0x2000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, kncljoe_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_DEVREADWRITE("aysnd", m6803_port1_r, m6803_port1_w) AM_RANGE(M6801_PORT2, M6801_PORT2) AM_DEVREADWRITE("aysnd", m6803_port2_r, m6803_port2_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/koftball.c b/src/mame/drivers/koftball.c index aac245c0ad1..08908afe26a 100644 --- a/src/mame/drivers/koftball.c +++ b/src/mame/drivers/koftball.c @@ -154,7 +154,7 @@ static WRITE16_HANDLER(bmc_2_videoram_w) state->m_tilemap_2->mark_tile_dirty(offset); } -static ADDRESS_MAP_START( koftball_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( koftball_mem, AS_PROGRAM, 16, koftball_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x220000, 0x22ffff) AM_RAM AM_BASE_MEMBER(koftball_state, m_main_ram) diff --git a/src/mame/drivers/koikoi.c b/src/mame/drivers/koikoi.c index aa6947b587b..7b96667771a 100644 --- a/src/mame/drivers/koikoi.c +++ b/src/mame/drivers/koikoi.c @@ -219,7 +219,7 @@ static WRITE8_HANDLER( io_w ) * *************************************/ -static ADDRESS_MAP_START( koikoi_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( koikoi_map, AS_PROGRAM, 8, koikoi_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0x7000, 0x77ff) AM_RAM_WRITE(vram_w) AM_BASE_MEMBER(koikoi_state, m_videoram) @@ -227,7 +227,7 @@ static ADDRESS_MAP_START( koikoi_map, AS_PROGRAM, 8 ) AM_RANGE(0x9000, 0x9007) AM_READWRITE(io_r, io_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( koikoi_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( koikoi_io_map, AS_IO, 8, koikoi_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x02) AM_WRITENOP //watchdog AM_RANGE(0x03, 0x03) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/konamigq.c b/src/mame/drivers/konamigq.c index 4b7822713f5..199745e844f 100644 --- a/src/mame/drivers/konamigq.c +++ b/src/mame/drivers/konamigq.c @@ -161,7 +161,7 @@ static READ32_HANDLER( pcmram_r ) /* Video */ -static ADDRESS_MAP_START( konamigq_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( konamigq_map, AS_PROGRAM, 32, konamigq_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x1f000000, 0x1f00001f) AM_READWRITE(am53cf96_r, am53cf96_w) AM_RANGE(0x1f100000, 0x1f10000f) AM_WRITE(soundr3k_w) @@ -224,7 +224,7 @@ static WRITE16_HANDLER(tms57002_control_word_w) } /* 68000 memory handling */ -static ADDRESS_MAP_START( konamigq_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( konamigq_sound_map, AS_PROGRAM, 16, konamigq_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x2004ff) AM_DEVREADWRITE8_MODERN("konami1", k054539_device, read, write, 0xff00) diff --git a/src/mame/drivers/konamigv.c b/src/mame/drivers/konamigv.c index fc990af9c05..5e96ec8566d 100644 --- a/src/mame/drivers/konamigv.c +++ b/src/mame/drivers/konamigv.c @@ -166,7 +166,7 @@ static READ32_HANDLER( mb89371_r ) return 0xffffffff; } -static ADDRESS_MAP_START( konamigv_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( konamigv_map, AS_PROGRAM, 32, konamigv_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x1f000000, 0x1f00001f) AM_READWRITE(am53cf96_r, am53cf96_w) AM_RANGE(0x1f100000, 0x1f100003) AM_READ_PORT("P1") diff --git a/src/mame/drivers/konamigx.c b/src/mame/drivers/konamigx.c index 44589247841..338c469a52f 100644 --- a/src/mame/drivers/konamigx.c +++ b/src/mame/drivers/konamigx.c @@ -1154,7 +1154,7 @@ static WRITE32_HANDLER( type1_cablamps_w ) /* 68EC020 memory handlers */ /**********************************************************************************/ -static ADDRESS_MAP_START( gx_base_memmap, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gx_base_memmap, AS_PROGRAM, 32, konamigx_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM // BIOS ROM AM_RANGE(0x200000, 0x3fffff) AM_ROM // main program ROM AM_RANGE(0x400000, 0x7fffff) AM_ROM // data ROM @@ -1186,7 +1186,7 @@ static ADDRESS_MAP_START( gx_base_memmap, AS_PROGRAM, 32 ) #endif ADDRESS_MAP_END -static ADDRESS_MAP_START( gx_type1_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gx_type1_map, AS_PROGRAM, 32, konamigx_state ) AM_RANGE(0xd4a000, 0xd4a01f) AM_READ(gx6bppspr_r) // sprite ROM readback AM_RANGE(0xd90000, 0xd97fff) AM_RAM_WRITE(konamigx_palette_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xdc0000, 0xdc1fff) AM_RAM // LAN RAM? (Racin' Force has, Open Golf doesn't) @@ -1206,13 +1206,13 @@ static ADDRESS_MAP_START( gx_type1_map, AS_PROGRAM, 32 ) AM_IMPORT_FROM(gx_base_memmap) ADDRESS_MAP_END -static ADDRESS_MAP_START( gx_type2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gx_type2_map, AS_PROGRAM, 32, konamigx_state ) AM_RANGE(0xcc0000, 0xcc0003) AM_WRITE(esc_w) AM_RANGE(0xd90000, 0xd97fff) AM_RAM_WRITE(konamigx_palette_w) AM_BASE_GENERIC(paletteram) AM_IMPORT_FROM(gx_base_memmap) ADDRESS_MAP_END -static ADDRESS_MAP_START( gx_type3_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gx_type3_map, AS_PROGRAM, 32, konamigx_state ) AM_RANGE(0xd90000, 0xd97fff) AM_RAM //AM_RANGE(0xcc0000, 0xcc0007) AM_WRITE(type4_prot_w) AM_RANGE(0xe00000, 0xe0001f) AM_RAM AM_BASE((UINT32**)&K053936_0_ctrl) @@ -1226,7 +1226,7 @@ static ADDRESS_MAP_START( gx_type3_map, AS_PROGRAM, 32 ) AM_IMPORT_FROM(gx_base_memmap) ADDRESS_MAP_END -static ADDRESS_MAP_START( gx_type4_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gx_type4_map, AS_PROGRAM, 32, konamigx_state ) AM_RANGE(0xcc0000, 0xcc0007) AM_WRITE(type4_prot_w) AM_RANGE(0xd90000, 0xd97fff) AM_RAM AM_RANGE(0xe00000, 0xe0001f) AM_RAM AM_BASE((UINT32**)&K053936_0_ctrl) @@ -1288,7 +1288,7 @@ static WRITE16_HANDLER(tms57002_control_word_w) } /* 68000 memory handling */ -static ADDRESS_MAP_START( gxsndmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gxsndmap, AS_PROGRAM, 16, konamigx_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE(&gx_sndram) AM_RANGE(0x200000, 0x2004ff) AM_DEVREADWRITE8_MODERN("konami1", k054539_device, read, write, 0xff00) @@ -1300,7 +1300,7 @@ static ADDRESS_MAP_START( gxsndmap, AS_PROGRAM, 16 ) AM_RANGE(0x580000, 0x580001) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( gxtmsmap, AS_DATA, 8 ) +static ADDRESS_MAP_START( gxtmsmap, AS_DATA, 8, konamigx_state ) AM_RANGE(0x000000, 0x03ffff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/konamim2.c b/src/mame/drivers/konamim2.c index bb8d8ca7bba..74f1bca5f8f 100644 --- a/src/mame/drivers/konamim2.c +++ b/src/mame/drivers/konamim2.c @@ -1107,7 +1107,7 @@ static READ64_HANDLER(cpu_r) return 0; } -static ADDRESS_MAP_START( m2_main, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( m2_main, AS_PROGRAM, 64, konamim2_state ) AM_RANGE(0x00010040, 0x00010047) AM_READWRITE(irq_enable_r, irq_enable_w) AM_RANGE(0x00010050, 0x00010057) AM_READ(irq_active_r) AM_RANGE(0x00020000, 0x00020007) AM_READWRITE(unk4_r, unk4_w) diff --git a/src/mame/drivers/kongambl.c b/src/mame/drivers/kongambl.c index 46dbcda8542..29c7bf3d804 100644 --- a/src/mame/drivers/kongambl.c +++ b/src/mame/drivers/kongambl.c @@ -73,7 +73,7 @@ static WRITE32_HANDLER( eeprom_w ) } } -static ADDRESS_MAP_START( kongambl_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( kongambl_map, AS_PROGRAM, 32, kongambl_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // main program AM_RANGE(0x100000, 0x11ffff) AM_RAM // work RAM @@ -102,7 +102,7 @@ static INPUT_PORTS_START( kongambl ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OUTPUT ) PORT_WRITE_LINE_DEVICE_MEMBER("eeprom", eeprom_device, set_cs_line) INPUT_PORTS_END -static ADDRESS_MAP_START( kongamaud_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kongamaud_map, AS_PROGRAM, 16, kongambl_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM // main program (mirrored?) AM_RANGE(0x100000, 0x10ffff) AM_RAM // work RAM AM_RANGE(0x200000, 0x2000ff) AM_RAM // unknown (YMZ280b? Shared with 68020?) diff --git a/src/mame/drivers/kopunch.c b/src/mame/drivers/kopunch.c index 4b69883d3a9..4418487bd43 100644 --- a/src/mame/drivers/kopunch.c +++ b/src/mame/drivers/kopunch.c @@ -42,7 +42,7 @@ static WRITE8_HANDLER( kopunch_coin_w ) -static ADDRESS_MAP_START( kopunch_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kopunch_map, AS_PROGRAM, 8, kopunch_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(kopunch_videoram_w) AM_BASE_MEMBER(kopunch_state, m_videoram) @@ -50,7 +50,7 @@ static ADDRESS_MAP_START( kopunch_map, AS_PROGRAM, 8 ) AM_RANGE(0x7100, 0x7aff) AM_RAM // ??? ADDRESS_MAP_END -static ADDRESS_MAP_START( kopunch_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kopunch_io_map, AS_IO, 8, kopunch_state ) AM_RANGE(0x30, 0x30) AM_READ_PORT("P1") AM_RANGE(0x31, 0x32) AM_READ(kopunch_in_r) AM_RANGE(0x33, 0x33) AM_WRITENOP diff --git a/src/mame/drivers/ksayakyu.c b/src/mame/drivers/ksayakyu.c index d3369f4f179..bdd663f1cbb 100644 --- a/src/mame/drivers/ksayakyu.c +++ b/src/mame/drivers/ksayakyu.c @@ -104,7 +104,7 @@ static WRITE8_HANDLER(tomaincpu_w) soundlatch_w(space, 0, data); } -static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8, ksayakyu_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x9fff) AM_ROM @@ -122,7 +122,7 @@ static ADDRESS_MAP_START( maincpu_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xbfff) AM_RAM AM_BASE_SIZE_MEMBER(ksayakyu_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( soundcpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( soundcpu_map, AS_PROGRAM, 8, ksayakyu_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0xa001, 0xa001) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/ksys573.c b/src/mame/drivers/ksys573.c index 66dd4f25c39..ce55a4f493d 100644 --- a/src/mame/drivers/ksys573.c +++ b/src/mame/drivers/ksys573.c @@ -1228,7 +1228,7 @@ static WRITE32_HANDLER( flash_w ) } } -static ADDRESS_MAP_START( konami573_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( konami573_map, AS_PROGRAM, 32, ksys573_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x1f000000, 0x1f3fffff) AM_READWRITE( flash_r, flash_w ) AM_RANGE(0x1f400000, 0x1f400003) AM_READ_PORT( "IN0" ) AM_WRITE_PORT( "OUT0" ) diff --git a/src/mame/drivers/kungfur.c b/src/mame/drivers/kungfur.c index 99342900464..7b9112771ab 100644 --- a/src/mame/drivers/kungfur.c +++ b/src/mame/drivers/kungfur.c @@ -211,7 +211,7 @@ static void kfr_adpcm2_int(device_t *device) } -static ADDRESS_MAP_START( kungfur_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kungfur_map, AS_PROGRAM, 8, kungfur_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("adpcm1", kungfur_adpcm1_w) AM_RANGE(0x4004, 0x4004) AM_DEVWRITE("adpcm2", kungfur_adpcm2_w) diff --git a/src/mame/drivers/kyugo.c b/src/mame/drivers/kyugo.c index 29c2dca1467..fe3f64fb03d 100644 --- a/src/mame/drivers/kyugo.c +++ b/src/mame/drivers/kyugo.c @@ -33,7 +33,7 @@ * *************************************/ -static ADDRESS_MAP_START( kyugo_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kyugo_main_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(kyugo_bgvideoram_w) AM_BASE_MEMBER(kyugo_state, m_bgvideoram) AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(kyugo_bgattribram_w) AM_BASE_MEMBER(kyugo_state, m_bgattribram) @@ -67,7 +67,7 @@ static WRITE8_HANDLER( kyugo_sub_cpu_control_w ) device_set_input_line(state->m_subcpu, INPUT_LINE_HALT, data ? CLEAR_LINE : ASSERT_LINE); } -static ADDRESS_MAP_START( kyugo_main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( kyugo_main_portmap, AS_IO, 8, kyugo_state ) ADDRESS_MAP_GLOBAL_MASK(0x07) AM_RANGE(0x00, 0x00) AM_WRITE(kyugo_nmi_mask_w) AM_RANGE(0x01, 0x01) AM_WRITE(kyugo_flipscreen_w) @@ -82,7 +82,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( gyrodine_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gyrodine_sub_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x8000, 0x8000) AM_READ_PORT("P2") @@ -91,7 +91,7 @@ static ADDRESS_MAP_START( gyrodine_sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( repulse_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( repulse_sub_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P2") @@ -100,7 +100,7 @@ static ADDRESS_MAP_START( repulse_sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( srdmissn_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( srdmissn_sub_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share1") AM_RANGE(0xf400, 0xf400) AM_READ_PORT("SYSTEM") @@ -109,7 +109,7 @@ static ADDRESS_MAP_START( srdmissn_sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( legend_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( legend_sub_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") AM_RANGE(0xf800, 0xf800) AM_READ_PORT("SYSTEM") @@ -118,7 +118,7 @@ static ADDRESS_MAP_START( legend_sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( flashgala_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( flashgala_sub_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc040, 0xc040) AM_READ_PORT("SYSTEM") AM_RANGE(0xc080, 0xc080) AM_READ_PORT("P1") @@ -139,7 +139,7 @@ static WRITE8_HANDLER( kyugo_coin_counter_w ) coin_counter_w(space->machine(), offset, data & 1); } -static ADDRESS_MAP_START( gyrodine_sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( gyrodine_sub_portmap, AS_IO, 8, kyugo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x02) AM_DEVREAD("ay1", ay8910_r) @@ -147,7 +147,7 @@ static ADDRESS_MAP_START( gyrodine_sub_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( repulse_sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( repulse_sub_portmap, AS_IO, 8, kyugo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x02) AM_DEVREAD("ay1", ay8910_r) @@ -156,7 +156,7 @@ static ADDRESS_MAP_START( repulse_sub_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( flashgala_sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( flashgala_sub_portmap, AS_IO, 8, kyugo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x41) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x42, 0x42) AM_DEVREAD("ay1", ay8910_r) @@ -165,7 +165,7 @@ static ADDRESS_MAP_START( flashgala_sub_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( srdmissn_sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( srdmissn_sub_portmap, AS_IO, 8, kyugo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x82, 0x82) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/labyrunr.c b/src/mame/drivers/labyrunr.c index 92b07ae6ee5..8e66f535e77 100644 --- a/src/mame/drivers/labyrunr.c +++ b/src/mame/drivers/labyrunr.c @@ -39,7 +39,7 @@ static WRITE8_HANDLER( labyrunr_bankswitch_w ) coin_counter_w(space->machine(), 1, data & 0x10); } -static ADDRESS_MAP_START( labyrunr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( labyrunr_map, AS_PROGRAM, 8, labyrunr_state ) AM_RANGE(0x0000, 0x0007) AM_DEVWRITE("k007121", k007121_ctrl_w) AM_RANGE(0x0020, 0x005f) AM_RAM AM_BASE_MEMBER(labyrunr_state, m_scrollram) AM_RANGE(0x0800, 0x0800) AM_DEVREADWRITE("ym1", ym2203_read_port_r, ym2203_write_port_w) diff --git a/src/mame/drivers/ladybug.c b/src/mame/drivers/ladybug.c index be97da4af07..1b7fa94ad22 100644 --- a/src/mame/drivers/ladybug.c +++ b/src/mame/drivers/ladybug.c @@ -129,7 +129,7 @@ static WRITE8_HANDLER( sraider_misc_w ) } } -static ADDRESS_MAP_START( ladybug_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ladybug_map, AS_PROGRAM, 8, ladybug_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x7000, 0x73ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(ladybug_state, m_spriteram, m_spriteram_size) @@ -147,7 +147,7 @@ static ADDRESS_MAP_START( ladybug_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sraider_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sraider_cpu1_map, AS_PROGRAM, 8, ladybug_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x7000, 0x73ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(ladybug_state, m_spriteram, m_spriteram_size) @@ -164,7 +164,7 @@ static ADDRESS_MAP_START( sraider_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sraider_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sraider_cpu2_map, AS_PROGRAM, 8, ladybug_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_READ(sraider_sound_low_r) @@ -175,7 +175,7 @@ static ADDRESS_MAP_START( sraider_cpu2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sraider_cpu2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sraider_cpu2_io_map, AS_IO, 8, ladybug_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x08, 0x08) AM_DEVWRITE("sn2", sn76496_w) diff --git a/src/mame/drivers/ladyfrog.c b/src/mame/drivers/ladyfrog.c index 82f34587250..b4abf909ddc 100644 --- a/src/mame/drivers/ladyfrog.c +++ b/src/mame/drivers/ladyfrog.c @@ -133,7 +133,7 @@ static READ8_HANDLER( snd_flag_r ) return state->m_snd_flag | 0xfd; } -static ADDRESS_MAP_START( ladyfrog_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ladyfrog_map, AS_PROGRAM, 8, ladyfrog_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc07f) AM_RAM AM_RANGE(0xc080, 0xc87f) AM_READWRITE(ladyfrog_videoram_r, ladyfrog_videoram_w) AM_BASE_SIZE_MEMBER(ladyfrog_state, m_videoram, m_videoram_size) @@ -154,7 +154,7 @@ static ADDRESS_MAP_START( ladyfrog_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ladyfrog_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ladyfrog_sound_map, AS_PROGRAM, 8, ladyfrog_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_WRITENOP diff --git a/src/mame/drivers/laserbas.c b/src/mame/drivers/laserbas.c index 4e37d109598..58a85897ddf 100644 --- a/src/mame/drivers/laserbas.c +++ b/src/mame/drivers/laserbas.c @@ -134,7 +134,7 @@ static WRITE8_HANDLER( protram_w ) state->m_protram[offset] = data; } -static ADDRESS_MAP_START( laserbas_memory, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( laserbas_memory, AS_PROGRAM, 8, laserbas_state ) //ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0xbfff) AM_READWRITE(vram_r, vram_w) @@ -143,7 +143,7 @@ static ADDRESS_MAP_START( laserbas_memory, AS_PROGRAM, 8 ) AM_RANGE(0xfc00, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( laserbas_io, AS_IO, 8 ) +static ADDRESS_MAP_START( laserbas_io, AS_IO, 8, laserbas_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x01, 0x01) AM_DEVWRITE_MODERN("crtc", mc6845_device, register_w) diff --git a/src/mame/drivers/laserbat.c b/src/mame/drivers/laserbat.c index cda1821f7fe..87073c132af 100644 --- a/src/mame/drivers/laserbat.c +++ b/src/mame/drivers/laserbat.c @@ -166,7 +166,7 @@ static WRITE8_HANDLER( laserbat_cntmov_w ) */ -static ADDRESS_MAP_START( laserbat_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( laserbat_map, AS_PROGRAM, 8, laserbat_state ) AM_RANGE(0x0000, 0x13ff) AM_ROM AM_RANGE(0x2000, 0x33ff) AM_ROM AM_RANGE(0x3800, 0x3bff) AM_ROM @@ -182,7 +182,7 @@ static ADDRESS_MAP_START( laserbat_map, AS_PROGRAM, 8 ) AM_RANGE(0x1c00, 0x1fff) AM_MIRROR(0x6000) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( laserbat_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( laserbat_io_map, AS_IO, 8, laserbat_state ) AM_RANGE(0x00, 0x00) AM_WRITE(laserbat_cnteff_w) AM_RANGE(0x01, 0x01) AM_WRITE(video_extra_w) AM_RANGE(0x02, 0x02) AM_READ(laserbat_input_r) AM_WRITE(laserbat_csound1_w) @@ -193,7 +193,7 @@ static ADDRESS_MAP_START( laserbat_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( catnmous_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( catnmous_io_map, AS_IO, 8, laserbat_state ) AM_RANGE(0x00, 0x00) AM_WRITE(soundlatch_w) // soundlatch ? AM_RANGE(0x01, 0x01) AM_WRITE(video_extra_w) AM_RANGE(0x02, 0x02) AM_READ(laserbat_input_r) @@ -205,7 +205,7 @@ static ADDRESS_MAP_START( catnmous_io_map, AS_IO, 8 ) ADDRESS_MAP_END // the same as in zaccaria.c ? -static ADDRESS_MAP_START( catnmous_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( catnmous_sound_map, AS_PROGRAM, 8, laserbat_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x500c, 0x500f) AM_DEVREADWRITE_MODERN("pia", pia6821_device, read, write) AM_RANGE(0xf000, 0xffff) AM_ROM diff --git a/src/mame/drivers/lasso.c b/src/mame/drivers/lasso.c index 2df2ae4349c..7f8da7b7848 100644 --- a/src/mame/drivers/lasso.c +++ b/src/mame/drivers/lasso.c @@ -80,7 +80,7 @@ static WRITE8_HANDLER( sound_select_w ) } -static ADDRESS_MAP_START( lasso_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lasso_main_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(lasso_videoram_w) AM_BASE_MEMBER(lasso_state, m_videoram) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_colorram_w) AM_BASE_MEMBER(lasso_state, m_colorram) @@ -97,7 +97,7 @@ static ADDRESS_MAP_START( lasso_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( lasso_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lasso_audio_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x5000, 0x7fff) AM_ROM AM_RANGE(0xb000, 0xb000) AM_WRITEONLY AM_BASE_MEMBER(lasso_state, m_chip_data) @@ -108,14 +108,14 @@ static ADDRESS_MAP_START( lasso_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( lasso_coprocessor_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lasso_coprocessor_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_MEMBER(lasso_state, m_bitmap_ram) AM_RANGE(0x8000, 0x8fff) AM_MIRROR(0x7000) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( chameleo_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chameleo_main_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(lasso_videoram_w) AM_BASE_MEMBER(lasso_state, m_videoram) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_colorram_w) AM_BASE_MEMBER(lasso_state, m_colorram) @@ -134,7 +134,7 @@ static ADDRESS_MAP_START( chameleo_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( chameleo_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chameleo_audio_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x1000, 0x1fff) AM_ROM AM_RANGE(0x6000, 0x7fff) AM_ROM @@ -146,7 +146,7 @@ static ADDRESS_MAP_START( chameleo_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( wwjgtin_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wwjgtin_main_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_videoram_w) AM_BASE_MEMBER(lasso_state, m_videoram) AM_RANGE(0x0c00, 0x0fff) AM_RAM_WRITE(lasso_colorram_w) AM_BASE_MEMBER(lasso_state, m_colorram) @@ -165,7 +165,7 @@ static ADDRESS_MAP_START( wwjgtin_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( wwjgtin_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wwjgtin_audio_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x4000, 0x7fff) AM_MIRROR(0x8000) AM_ROM AM_RANGE(0xb000, 0xb000) AM_WRITEONLY AM_BASE_MEMBER(lasso_state, m_chip_data) @@ -176,7 +176,7 @@ static ADDRESS_MAP_START( wwjgtin_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pinbo_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pinbo_main_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(lasso_videoram_w) AM_BASE_MEMBER(lasso_state, m_videoram) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(lasso_colorram_w) AM_BASE_MEMBER(lasso_state, m_colorram) @@ -194,13 +194,13 @@ static ADDRESS_MAP_START( pinbo_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pinbo_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pinbo_audio_map, AS_PROGRAM, 8, lasso_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pinbo_audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pinbo_audio_io_map, AS_IO, 8, lasso_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x02) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/lastbank.c b/src/mame/drivers/lastbank.c index fe4359e1e44..8f3937da460 100644 --- a/src/mame/drivers/lastbank.c +++ b/src/mame/drivers/lastbank.c @@ -30,7 +30,7 @@ static SCREEN_UPDATE_IND16( lastbank ) return 0; } -static ADDRESS_MAP_START( lastbank_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lastbank_map, AS_PROGRAM, 8, lastbank_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* TODO: ROM banks! */ AM_RANGE(0x8000, 0x9fff) AM_RAM @@ -50,7 +50,7 @@ static ADDRESS_MAP_START( lastbank_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( lastbank_io, AS_IO, 8 ) +static ADDRESS_MAP_START( lastbank_io, AS_IO, 8, lastbank_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/drivers/lastduel.c b/src/mame/drivers/lastduel.c index 762d31749a0..26ec16ab7f5 100644 --- a/src/mame/drivers/lastduel.c +++ b/src/mame/drivers/lastduel.c @@ -132,7 +132,7 @@ static WRITE16_HANDLER( lastduel_sound_w ) /******************************************************************************/ -static ADDRESS_MAP_START( lastduel_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lastduel_map, AS_PROGRAM, 16, lastduel_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0xfc0000, 0xfc0003) AM_WRITENOP /* Written rarely */ AM_RANGE(0xfc0800, 0xfc0fff) AM_RAM AM_SHARE("spriteram") @@ -148,7 +148,7 @@ static ADDRESS_MAP_START( lastduel_map, AS_PROGRAM, 16 ) AM_RANGE(0xfe0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( madgear_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( madgear_map, AS_PROGRAM, 16, lastduel_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0xfc1800, 0xfc1fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xfc4000, 0xfc4001) AM_READ_PORT("DSW1") AM_WRITE(lastduel_flip_w) @@ -165,7 +165,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, lastduel_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_RANGE(0xe800, 0xe801) AM_DEVREADWRITE("ym1", ym2203_r,ym2203_w) @@ -178,7 +178,7 @@ static WRITE8_HANDLER( mg_bankswitch_w ) memory_set_bank(space->machine(), "bank1", data & 0x01); } -static ADDRESS_MAP_START( madgear_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( madgear_sound_map, AS_PROGRAM, 8, lastduel_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xcfff) AM_ROMBANK("bank1") AM_RANGE(0xd000, 0xd7ff) AM_RAM diff --git a/src/mame/drivers/lastfght.c b/src/mame/drivers/lastfght.c index 5ca704db3d9..1ac51d31574 100644 --- a/src/mame/drivers/lastfght.c +++ b/src/mame/drivers/lastfght.c @@ -417,7 +417,7 @@ static WRITE16_HANDLER( lastfght_sound_w ) Memory Maps ***************************************************************************/ -static ADDRESS_MAP_START( lastfght_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lastfght_map, AS_PROGRAM, 16, lastfght_state ) ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_REGION("maincpu", 0) diff --git a/src/mame/drivers/lazercmd.c b/src/mame/drivers/lazercmd.c index 8f06e4594a8..ff3d8821ea8 100644 --- a/src/mame/drivers/lazercmd.c +++ b/src/mame/drivers/lazercmd.c @@ -409,7 +409,7 @@ static READ8_HANDLER( lazercmd_hardware_r ) * *************************************************************/ -static ADDRESS_MAP_START( lazercmd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lazercmd_map, AS_PROGRAM, 8, lazercmd_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x1c00, 0x1c1f) AM_RAM AM_RANGE(0x1c20, 0x1eff) AM_RAM AM_BASE_SIZE_MEMBER(lazercmd_state, m_videoram, m_videoram_size) @@ -418,7 +418,7 @@ static ADDRESS_MAP_START( lazercmd_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( medlanes_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( medlanes_map, AS_PROGRAM, 8, lazercmd_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x1000, 0x17ff) AM_ROM AM_RANGE(0x1c00, 0x1c1f) AM_RAM @@ -428,7 +428,7 @@ static ADDRESS_MAP_START( medlanes_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bbonk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bbonk_map, AS_PROGRAM, 8, lazercmd_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x1c00, 0x1c1f) AM_RAM AM_RANGE(0x1c20, 0x1eff) AM_RAM AM_BASE_SIZE_MEMBER(lazercmd_state, m_videoram, m_videoram_size) @@ -437,7 +437,7 @@ static ADDRESS_MAP_START( bbonk_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( lazercmd_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( lazercmd_portmap, AS_IO, 8, lazercmd_state ) AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_READWRITE(lazercmd_ctrl_port_r, lazercmd_ctrl_port_w) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(lazercmd_data_port_r, lazercmd_data_port_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/legionna.c b/src/mame/drivers/legionna.c index 5c3104fe041..bf1b977feb7 100644 --- a/src/mame/drivers/legionna.c +++ b/src/mame/drivers/legionna.c @@ -79,7 +79,7 @@ Preliminary COP MCU memory map /*****************************************************************************/ -static ADDRESS_MAP_START( legionna_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( legionna_map, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100400, 0x1007ff) AM_READWRITE(legionna_mcu_r, legionna_mcu_w) AM_BASE(&cop_mcu_ram) /* COP mcu */ @@ -94,7 +94,7 @@ static ADDRESS_MAP_START( legionna_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100400, 0x1007ff) AM_READWRITE(heatbrl_mcu_r, heatbrl_mcu_w) AM_BASE(&cop_mcu_ram) /* COP mcu */ @@ -107,7 +107,7 @@ static ADDRESS_MAP_START( heatbrl_map, AS_PROGRAM, 16 ) AM_RANGE(0x108000, 0x11ffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( godzilla_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( godzilla_map, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100400, 0x1007ff) AM_READWRITE(godzilla_mcu_r, godzilla_mcu_w) AM_BASE(&cop_mcu_ram) /* COP mcu */ @@ -132,7 +132,7 @@ static WRITE16_HANDLER( denjin_paletteram16_xBBBBBGGGGGRRRRR_word_w ) paletteram16_xBBBBBGGGGGRRRRR_word_w(space,offset,data,mem_mask); } -static ADDRESS_MAP_START( denjinmk_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( denjinmk_map, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100400, 0x1007ff) AM_READWRITE(denjinmk_mcu_r, denjinmk_mcu_w) AM_BASE(&cop_mcu_ram) /* COP mcu */ @@ -149,7 +149,7 @@ static ADDRESS_MAP_START( denjinmk_map, AS_PROGRAM, 16 ) AM_RANGE(0x11f000, 0x11ffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( grainbow_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( grainbow_map, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100400, 0x1007ff) AM_READWRITE(grainbow_mcu_r, grainbow_mcu_w) AM_BASE(&cop_mcu_ram) /* COP mcu */ @@ -165,7 +165,7 @@ static ADDRESS_MAP_START( grainbow_map, AS_PROGRAM, 16 ) AM_RANGE(0x108000, 0x11ffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cupsoc_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cupsoc_mem, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100400, 0x1007ff) AM_READWRITE(cupsoc_mcu_r,cupsoc_mcu_w) AM_BASE(&cop_mcu_ram) @@ -184,7 +184,7 @@ static ADDRESS_MAP_START( cupsoc_mem, AS_PROGRAM, 16 ) AM_RANGE(0x11e000, 0x11ffff) AM_RAM /*Stack Ram*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( cupsocs_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cupsocs_mem, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100400, 0x1007ff) AM_READWRITE(cupsocs_mcu_r,cupsocs_mcu_w) AM_BASE(&cop_mcu_ram) @@ -203,7 +203,7 @@ static ADDRESS_MAP_START( cupsocs_mem, AS_PROGRAM, 16 ) AM_RANGE(0x11e000, 0x11ffff) AM_RAM /*Stack Ram*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( cupsocbl_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cupsocbl_mem, AS_PROGRAM, 16, legionna_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM //AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_RANGE(0x100000, 0x1007ff) AM_READWRITE(copdxbl_0_r,copdxbl_0_w) AM_BASE(&cop_mcu_ram) @@ -229,7 +229,7 @@ static WRITE8_DEVICE_HANDLER( okim_rombank_w ) downcast<okim6295_device *>(device)->set_bank_base(0x40000 * (data & 0x7)); } -static ADDRESS_MAP_START( cupsocbl_sound_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cupsocbl_sound_mem, AS_PROGRAM, 8, legionna_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("oki", okim_rombank_w) diff --git a/src/mame/drivers/leland.c b/src/mame/drivers/leland.c index 1fa2e0413ec..bf07d3600b8 100644 --- a/src/mame/drivers/leland.c +++ b/src/mame/drivers/leland.c @@ -62,7 +62,7 @@ * *************************************/ -static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8, leland_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xdfff) AM_ROMBANK("bank2") AM_WRITE(leland_battery_ram_w) AM_SHARE("battery") @@ -72,7 +72,7 @@ static ADDRESS_MAP_START( master_map_program, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( master_map_io, AS_IO, 8, leland_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf0, 0xf0) AM_WRITE(leland_master_alt_bankswitch_w) AM_RANGE(0xf2, 0xf2) AM_DEVREADWRITE("custom", leland_80186_response_r, leland_80186_command_lo_w) @@ -88,7 +88,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( slave_small_map_program, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_small_map_program, AS_PROGRAM, 8, leland_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0xdfff) AM_ROMBANK("bank3") AM_RANGE(0xe000, 0xefff) AM_RAM @@ -98,7 +98,7 @@ static ADDRESS_MAP_START( slave_small_map_program, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_large_map_program, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_large_map_program, AS_PROGRAM, 8, leland_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0xbfff) AM_ROMBANK("bank3") AM_RANGE(0xc000, 0xc000) AM_WRITE(leland_slave_large_banksw_w) @@ -108,7 +108,7 @@ static ADDRESS_MAP_START( slave_large_map_program, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( slave_map_io, AS_IO, 8, leland_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x1f) AM_READWRITE(leland_svram_port_r, leland_svram_port_w) AM_RANGE(0x40, 0x5f) AM_READWRITE(leland_svram_port_r, leland_svram_port_w) diff --git a/src/mame/drivers/lemmings.c b/src/mame/drivers/lemmings.c index 6afbe03fb12..52d926e9449 100644 --- a/src/mame/drivers/lemmings.c +++ b/src/mame/drivers/lemmings.c @@ -94,7 +94,7 @@ static WRITE8_HANDLER( lemmings_sound_ack_w ) /******************************************************************************/ -static ADDRESS_MAP_START( lemmings_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lemmings_map, AS_PROGRAM, 16, lemmings_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_SHARE("spriteram") @@ -114,7 +114,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, lemmings_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/lethal.c b/src/mame/drivers/lethal.c index c70567cdf93..96dbe96e905 100644 --- a/src/mame/drivers/lethal.c +++ b/src/mame/drivers/lethal.c @@ -459,7 +459,7 @@ static READ8_HANDLER( gunsaux_r ) return res; } -static ADDRESS_MAP_START( le_main, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( le_main, AS_PROGRAM, 8, lethal_state ) AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") AM_RANGE(0x2000, 0x3fff) AM_RAM // work RAM AM_RANGE(0x4000, 0x403f) AM_DEVWRITE("k056832", k056832_w) @@ -479,7 +479,7 @@ static ADDRESS_MAP_START( le_main, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank2") ADDRESS_MAP_END -static ADDRESS_MAP_START( le_sound, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( le_sound, AS_PROGRAM, 8, lethal_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xfa2f) AM_DEVREADWRITE_MODERN("k054539", k054539_device, read, write) diff --git a/src/mame/drivers/lethalj.c b/src/mame/drivers/lethalj.c index ee99b75f4f7..35a642ae082 100644 --- a/src/mame/drivers/lethalj.c +++ b/src/mame/drivers/lethalj.c @@ -208,7 +208,7 @@ static WRITE16_HANDLER( cclownz_control_w ) * *************************************/ -static ADDRESS_MAP_START( lethalj_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lethalj_map, AS_PROGRAM, 16, lethalj_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_RANGE(0x04000000, 0x0400000f) AM_DEVREADWRITE8_MODERN("oki1", okim6295_device, read, write, 0x00ff) AM_RANGE(0x04000010, 0x0400001f) AM_DEVREADWRITE8_MODERN("oki2", okim6295_device, read, write, 0x00ff) diff --git a/src/mame/drivers/lgp.c b/src/mame/drivers/lgp.c index c52af3c89e5..47543835d48 100644 --- a/src/mame/drivers/lgp.c +++ b/src/mame/drivers/lgp.c @@ -139,7 +139,7 @@ static WRITE8_HANDLER(ldp_write) /* PROGRAM MAPS */ -static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, lgp_state ) AM_RANGE(0x0000,0x7fff) AM_ROM AM_RANGE(0xe000,0xe3ff) AM_RAM AM_BASE_MEMBER(lgp_state, m_tile_ram) AM_RANGE(0xe400,0xe7ff) AM_RAM AM_BASE_MEMBER(lgp_state, m_tile_control_ram) @@ -155,7 +155,7 @@ static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000,0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8, lgp_state ) AM_RANGE(0x0000,0x3fff) AM_ROM AM_RANGE(0x8000,0x83ff) AM_RAM AM_RANGE(0x8400,0x8407) AM_RAM /* Needs handler! Communications? */ @@ -164,13 +164,13 @@ ADDRESS_MAP_END /* IO MAPS */ -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, lgp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0xfd,0xfd) AM_READ_PORT("IN_TEST") // AM_RANGE(0xfe,0xfe) AM_READ_PORT("IN_TEST") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, lgp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/drivers/liberate.c b/src/mame/drivers/liberate.c index f4f33c679e6..9b0adbc9fbe 100644 --- a/src/mame/drivers/liberate.c +++ b/src/mame/drivers/liberate.c @@ -241,7 +241,7 @@ static WRITE8_HANDLER( prosport_charram_w ) * *************************************/ -static ADDRESS_MAP_START( prosport_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( prosport_map, AS_PROGRAM, 8, liberate_state ) AM_RANGE(0x0200, 0x021f) AM_RAM_WRITE(prosport_paletteram_w) AM_BASE_MEMBER(liberate_state, m_paletteram) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x2000) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(prosport_bg_vram_w) AM_BASE_MEMBER(liberate_state, m_bg_vram) @@ -255,7 +255,7 @@ static ADDRESS_MAP_START( prosport_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( liberate_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( liberate_map, AS_PROGRAM, 8, liberate_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x3fff) AM_ROM /* Mirror of main rom */ AM_RANGE(0x4000, 0x7fff) AM_READ(deco16_bank_r) @@ -268,7 +268,7 @@ static ADDRESS_MAP_START( liberate_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( prosoccr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( prosoccr_map, AS_PROGRAM, 8, liberate_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x3fff) AM_ROM /* Mirror of main rom */ AM_RANGE(0x4000, 0x7fff) AM_READ(prosoccr_bank_r) @@ -281,17 +281,17 @@ static ADDRESS_MAP_START( prosoccr_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( deco16_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( deco16_io_map, AS_IO, 8, liberate_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(deco16_bank_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("TILT") ADDRESS_MAP_END -static ADDRESS_MAP_START( prosoccr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( prosoccr_io_map, AS_IO, 8, liberate_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(prosoccr_io_bank_w) //AM_RANGE(0x01, 0x01) AM_READ_PORT("TILT") ADDRESS_MAP_END -static ADDRESS_MAP_START( liberatb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( liberatb_map, AS_PROGRAM, 8, liberate_state ) AM_RANGE(0x00fe, 0x00fe) AM_READ_PORT("IN0") AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x3fff) AM_ROM /* Mirror of main rom */ @@ -315,7 +315,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( prosoccr_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( prosoccr_sound_map, AS_PROGRAM, 8, liberate_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("ay1", ay8910_data_w) AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("ay1", ay8910_address_w) @@ -326,7 +326,7 @@ static ADDRESS_MAP_START( prosoccr_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( liberate_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( liberate_sound_map, AS_PROGRAM, 8, liberate_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_WRITENOP AM_RANGE(0x3000, 0x3000) AM_DEVWRITE("ay1", ay8910_data_w) diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c index 56f1b72e5e0..f4659a5dc8f 100644 --- a/src/mame/drivers/limenko.c +++ b/src/mame/drivers/limenko.c @@ -146,7 +146,7 @@ static WRITE32_HANDLER( spriteram_buffer_w ) MEMORY MAPS *****************************************************************************************************/ -static ADDRESS_MAP_START( limenko_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( limenko_map, AS_PROGRAM, 32, limenko_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(limenko_state, m_mainram) AM_RANGE(0x40000000, 0x403fffff) AM_ROM AM_REGION("user2",0) AM_RANGE(0x80000000, 0x80007fff) AM_RAM_WRITE(fg_videoram_w) AM_BASE_MEMBER(limenko_state, m_fg_videoram) @@ -161,7 +161,7 @@ static ADDRESS_MAP_START( limenko_map, AS_PROGRAM, 32 ) AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( limenko_io_map, AS_IO, 32 ) +static ADDRESS_MAP_START( limenko_io_map, AS_IO, 32, limenko_state ) AM_RANGE(0x0000, 0x0003) AM_READ_PORT("IN0") AM_RANGE(0x0800, 0x0803) AM_READ_PORT("IN1") AM_RANGE(0x1000, 0x1003) AM_READ_PORT("IN2") @@ -173,7 +173,7 @@ ADDRESS_MAP_END /* Spotty memory map */ -static ADDRESS_MAP_START( spotty_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( spotty_map, AS_PROGRAM, 32, limenko_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(limenko_state, m_mainram) AM_RANGE(0x40002000, 0x400024d3) AM_RAM //? AM_RANGE(0x80000000, 0x80007fff) AM_RAM_WRITE(fg_videoram_w) AM_BASE_MEMBER(limenko_state, m_fg_videoram) @@ -188,7 +188,7 @@ static ADDRESS_MAP_START( spotty_map, AS_PROGRAM, 32 ) AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("user1",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( spotty_io_map, AS_IO, 32 ) +static ADDRESS_MAP_START( spotty_io_map, AS_IO, 32, limenko_state ) AM_RANGE(0x0000, 0x0003) AM_READ_PORT("IN0") AM_RANGE(0x0800, 0x0803) AM_READ_PORT("IN1") AM_RANGE(0x0800, 0x0803) AM_WRITENOP // hopper related @@ -219,7 +219,7 @@ static READ8_HANDLER( spotty_sound_r ) return space->machine().device<okim6295_device>("oki")->read(*space,0); } -static ADDRESS_MAP_START( spotty_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spotty_sound_io_map, AS_IO, 8, limenko_state ) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READ(spotty_sound_r) AM_DEVWRITE_MODERN("oki", okim6295_device, write) //? sound latch and ? AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(spotty_sound_cmd_r, spotty_sound_cmd_w) //not sure about anything... ADDRESS_MAP_END diff --git a/src/mame/drivers/littlerb.c b/src/mame/drivers/littlerb.c index 2c3c58fb6af..4c66c4f6419 100644 --- a/src/mame/drivers/littlerb.c +++ b/src/mame/drivers/littlerb.c @@ -110,7 +110,7 @@ WRITE16_HANDLER( region4_w ) } /* this map is wrong because our VDP access is wrong! */ -static ADDRESS_MAP_START( littlerb_vdp_map8, AS_0, 16 ) +static ADDRESS_MAP_START( littlerb_vdp_map8, AS_0, 16, littlerb_state ) // it ends up writing some gfx here (the bubbles when you shoot an enemy) AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_RANGE(0x00080000, 0x003fffff) AM_RAM // temp so it doesn't fill the log @@ -124,7 +124,7 @@ static ADDRESS_MAP_START( littlerb_vdp_map8, AS_0, 16 ) AM_RANGE(0x1ff80000, 0x1fffffff) AM_RAM_WRITE(region4_w) AM_BASE_MEMBER(littlerb_state, m_region4) ADDRESS_MAP_END -static ADDRESS_MAP_START( ramdac_map, AS_0, 8 ) +static ADDRESS_MAP_START( ramdac_map, AS_0, 8, littlerb_state ) AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE_MODERN("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb888_w) ADDRESS_MAP_END @@ -324,7 +324,7 @@ static WRITE16_HANDLER( littlerb_r_sound_w ) //popmessage("%04x %04x",state->m_sound_index_l,state->m_sound_index_r); } -static ADDRESS_MAP_START( littlerb_main, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( littlerb_main, AS_PROGRAM, 16, littlerb_state ) AM_RANGE(0x000008, 0x000017) AM_WRITENOP AM_RANGE(0x000020, 0x00002f) AM_WRITENOP AM_RANGE(0x000070, 0x000073) AM_WRITENOP diff --git a/src/mame/drivers/lkage.c b/src/mame/drivers/lkage.c index b2422380a75..b447eb072a6 100644 --- a/src/mame/drivers/lkage.c +++ b/src/mame/drivers/lkage.c @@ -134,7 +134,7 @@ static READ8_HANDLER(sound_status_r) return 0xff; } -static ADDRESS_MAP_START( lkage_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lkage_map, AS_PROGRAM, 8, lkage_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM /* work ram */ AM_RANGE(0xe800, 0xefff) AM_RAM_WRITE(paletteram_xxxxRRRRGGGGBBBB_le_w) AM_BASE_GENERIC(paletteram) @@ -164,11 +164,11 @@ static READ8_HANDLER( port_fetch_r ) return space->machine().region("user1")->base()[offset]; } -static ADDRESS_MAP_START( lkage_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( lkage_io_map, AS_IO, 8, lkage_state ) AM_RANGE(0x4000, 0x7fff) AM_READ(port_fetch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( lkage_m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lkage_m68705_map, AS_PROGRAM, 8, lkage_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(lkage_68705_port_a_r,lkage_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(lkage_68705_port_b_r,lkage_68705_port_b_w) @@ -184,7 +184,7 @@ ADDRESS_MAP_END /* sound section is almost identical to Bubble Bobble, YM2203 instead of YM3526 */ -static ADDRESS_MAP_START( lkage_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lkage_sound_map, AS_PROGRAM, 8, lkage_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ym1", ym2203_r,ym2203_w) diff --git a/src/mame/drivers/lockon.c b/src/mame/drivers/lockon.c index c7340d1f08e..7f6d56caccb 100644 --- a/src/mame/drivers/lockon.c +++ b/src/mame/drivers/lockon.c @@ -153,7 +153,7 @@ static WRITE16_HANDLER( emres_w ) * *************************************/ -static ADDRESS_MAP_START( main_v30, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_v30, AS_PROGRAM, 16, lockon_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000, 0x03fff) AM_RAM AM_RANGE(0x04000, 0x04003) AM_READWRITE(lockon_crtc_r, lockon_crtc_w) @@ -175,7 +175,7 @@ static ADDRESS_MAP_START( main_v30, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ground_v30, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ground_v30, AS_PROGRAM, 16, lockon_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000, 0x03fff) AM_RAM AM_RANGE(0x04000, 0x04fff) AM_RAM AM_BASE_MEMBER(lockon_state, m_scene_ram) @@ -188,7 +188,7 @@ static ADDRESS_MAP_START( ground_v30, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( object_v30, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( object_v30, AS_PROGRAM, 16, lockon_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000, 0x03fff) AM_RAM AM_RANGE(0x04000, 0x04001) AM_READWRITE(lockon_obj_4000_r, lockon_obj_4000_w) @@ -198,7 +198,7 @@ static ADDRESS_MAP_START( object_v30, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8, lockon_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x7000) AM_WRITE(sound_vol) @@ -206,7 +206,7 @@ static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8 ) AM_RANGE(0x7800, 0x7fff) AM_MIRROR(0x8000) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io, AS_IO, 8, lockon_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x02, 0x02) AM_NOP diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c index f64a91a5cdf..b920c7178aa 100644 --- a/src/mame/drivers/looping.c +++ b/src/mame/drivers/looping.c @@ -484,7 +484,7 @@ static READ8_HANDLER( protection_r ) * *************************************/ -static ADDRESS_MAP_START( looping_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( looping_map, AS_PROGRAM, 8, looping_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(looping_videoram_w) AM_BASE_MEMBER(looping_state, m_videoram) @@ -504,7 +504,7 @@ static ADDRESS_MAP_START( looping_map, AS_PROGRAM, 8 ) AM_RANGE(0xf803, 0xf803) AM_MIRROR(0x03fc) AM_READWRITE(adc_r, adc_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( looping_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( looping_io_map, AS_IO, 8, looping_state ) /* 400 = A16 */ /* 401 = A17 */ /* 402 = COLOR 9 */ @@ -519,7 +519,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( looping_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( looping_sound_map, AS_PROGRAM, 8, looping_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x37ff) AM_ROM AM_RANGE(0x3800, 0x3bff) AM_RAM @@ -531,7 +531,7 @@ static ADDRESS_MAP_START( looping_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x3e03, 0x3e03) AM_MIRROR(0x00f6) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( looping_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( looping_sound_io_map, AS_IO, 8, looping_state ) AM_RANGE(0x000, 0x000) AM_WRITE(looping_souint_clr) AM_RANGE(0x001, 0x007) AM_DEVWRITE("dac", looping_sound_sw) AM_RANGE(0x008, 0x008) AM_DEVWRITE("aysnd", ay_enable_w) @@ -542,15 +542,15 @@ ADDRESS_MAP_END /* standard COP420 map */ -static ADDRESS_MAP_START( looping_cop_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( looping_cop_map, AS_PROGRAM, 8, looping_state ) AM_RANGE(0x0000, 0x03ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( looping_cop_data_map, AS_DATA, 8 ) +static ADDRESS_MAP_START( looping_cop_data_map, AS_DATA, 8, looping_state ) AM_RANGE(0x0000, 0x003f) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( looping_cop_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( looping_cop_io_map, AS_IO, 8, looping_state ) AM_RANGE(0x0100, 0x0107) AM_READWRITE(cop_io_r, cop_io_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/lordgun.c b/src/mame/drivers/lordgun.c index 44e751a4c7c..c33f99a28c6 100644 --- a/src/mame/drivers/lordgun.c +++ b/src/mame/drivers/lordgun.c @@ -267,7 +267,7 @@ static WRITE16_HANDLER( lordgun_soundlatch_w ) cputag_set_input_line(space->machine(), "soundcpu", INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( lordgun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lordgun_map, AS_PROGRAM, 16, lordgun_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_BASE_MEMBER(lordgun_state, m_priority_ram) // PRIORITY @@ -299,7 +299,7 @@ static ADDRESS_MAP_START( lordgun_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( aliencha_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( aliencha_map, AS_PROGRAM, 16, lordgun_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_BASE_MEMBER(lordgun_state, m_priority_ram) // PRIORITY @@ -333,7 +333,7 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( lordgun_soundmem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lordgun_soundmem_map, AS_PROGRAM, 8, lordgun_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END @@ -345,7 +345,7 @@ static WRITE8_DEVICE_HANDLER( lordgun_okibank_w ) // popmessage("OKI %x", data); } -static ADDRESS_MAP_START( lordgun_soundio_map, AS_IO, 8 ) +static ADDRESS_MAP_START( lordgun_soundio_map, AS_IO, 8, lordgun_state ) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE( "ymsnd", ym3812_w ) AM_RANGE(0x2000, 0x2000) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x3000, 0x3000) AM_READ( soundlatch2_r ) @@ -355,7 +355,7 @@ static ADDRESS_MAP_START( lordgun_soundio_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( aliencha_soundio_map, AS_IO, 8 ) +static ADDRESS_MAP_START( aliencha_soundio_map, AS_IO, 8, lordgun_state ) AM_RANGE(0x3000, 0x3000) AM_READ( soundlatch2_r ) AM_RANGE(0x4000, 0x4000) AM_READ( soundlatch_r ) AM_RANGE(0x5000, 0x5000) AM_WRITENOP // writes 03 then 07 at end of NMI diff --git a/src/mame/drivers/lsasquad.c b/src/mame/drivers/lsasquad.c index c2262b9194c..c1ddd174986 100644 --- a/src/mame/drivers/lsasquad.c +++ b/src/mame/drivers/lsasquad.c @@ -165,7 +165,7 @@ static WRITE8_HANDLER( lsasquad_bankswitch_w ) /* other bits unknown */ } -static ADDRESS_MAP_START( lsasquad_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lsasquad_map, AS_PROGRAM, 8, lsasquad_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xbfff) AM_RAM /* SRAM */ @@ -186,7 +186,7 @@ static ADDRESS_MAP_START( lsasquad_map, AS_PROGRAM, 8 ) AM_RANGE(0xee00, 0xee00) AM_READWRITE(lsasquad_mcu_r,lsasquad_mcu_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( lsasquad_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lsasquad_sound_map, AS_PROGRAM, 8, lsasquad_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2203_r,ym2203_w) @@ -198,7 +198,7 @@ static ADDRESS_MAP_START( lsasquad_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_ROM /* space for diagnostic ROM? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( lsasquad_m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lsasquad_m68705_map, AS_PROGRAM, 8, lsasquad_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(lsasquad_68705_port_a_r,lsasquad_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(lsasquad_68705_port_b_r,lsasquad_68705_port_b_w) @@ -210,7 +210,7 @@ static ADDRESS_MAP_START( lsasquad_m68705_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( storming_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( storming_map, AS_PROGRAM, 8, lsasquad_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xbfff) AM_RAM /* SRAM */ @@ -373,7 +373,7 @@ INPUT_PORTS_END /* DAIKAIJU */ -static ADDRESS_MAP_START( daikaiju_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( daikaiju_map, AS_PROGRAM, 8, lsasquad_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xbfff) AM_RAM /* SRAM */ @@ -393,7 +393,7 @@ static ADDRESS_MAP_START( daikaiju_map, AS_PROGRAM, 8 ) AM_RANGE(0xee00, 0xee00) AM_READWRITE(lsasquad_mcu_r, lsasquad_mcu_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( daikaiju_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( daikaiju_sound_map, AS_PROGRAM, 8, lsasquad_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/ltcasino.c b/src/mame/drivers/ltcasino.c index 9f5e4e21701..151417f4ac8 100644 --- a/src/mame/drivers/ltcasino.c +++ b/src/mame/drivers/ltcasino.c @@ -67,7 +67,7 @@ static WRITE8_HANDLER( ltcasino_tile_atr_w ) } -static ADDRESS_MAP_START( ltcasino_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ltcasino_map, AS_PROGRAM, 8, ltcasino_state ) AM_RANGE(0x0000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xcfff) AM_ROM AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(ltcasino_tile_num_w) AM_BASE_MEMBER(ltcasino_state, m_tile_num_ram) diff --git a/src/mame/drivers/luckgrln.c b/src/mame/drivers/luckgrln.c index f4762a9cf65..fdd1d8e30d3 100644 --- a/src/mame/drivers/luckgrln.c +++ b/src/mame/drivers/luckgrln.c @@ -358,7 +358,7 @@ static SCREEN_UPDATE_IND16(luckgrln) return 0; } -static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8, luckgrln_state ) AM_RANGE(0x00000, 0x03fff) AM_ROM AM_RANGE(0x10000, 0x1ffff) AM_ROM AM_REGION("rom_data",0x10000) AM_RANGE(0x20000, 0x2ffff) AM_ROM AM_REGION("rom_data",0x00000) @@ -393,7 +393,7 @@ static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8 ) AM_RANGE(0xf0000, 0xfffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( _7smash_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( _7smash_map, AS_PROGRAM, 8, luckgrln_state ) AM_RANGE(0x00000, 0x0bfff) AM_ROM AM_IMPORT_FROM( mainmap ) AM_RANGE(0x10000, 0x2ffff) AM_UNMAP @@ -543,7 +543,7 @@ static WRITE8_HANDLER(counters_w) /* are some of these reads / writes mirrored? there seem to be far too many */ -static ADDRESS_MAP_START( portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( portmap, AS_IO, 8, luckgrln_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x0000, 0x003f) AM_RAM // Z180 internal regs AM_RANGE(0x0060, 0x0060) AM_WRITE(output_w) @@ -603,7 +603,7 @@ static READ8_HANDLER( test_r ) return 0xff; } -static ADDRESS_MAP_START( _7smash_io, AS_IO, 8 ) +static ADDRESS_MAP_START( _7smash_io, AS_IO, 8, luckgrln_state ) AM_RANGE(0x66, 0x66) AM_READ(test_r) AM_IMPORT_FROM( portmap ) ADDRESS_MAP_END diff --git a/src/mame/drivers/lucky74.c b/src/mame/drivers/lucky74.c index 9c17889165d..6063b6090ae 100644 --- a/src/mame/drivers/lucky74.c +++ b/src/mame/drivers/lucky74.c @@ -806,7 +806,7 @@ static INTERRUPT_GEN( nmi_interrupt ) * Memory Map Information * *************************/ -static ADDRESS_MAP_START( lucky74_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lucky74_map, AS_PROGRAM, 8, lucky74_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("nvram") /* NVRAM */ AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(lucky74_fg_videoram_w) AM_BASE_MEMBER(lucky74_state, m_fg_videoram) /* VRAM1-1 */ @@ -826,7 +826,7 @@ static ADDRESS_MAP_START( lucky74_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf803) AM_READWRITE(copro_sm7831_r, copro_sm7831_w) /* SM7831 Co-Processor */ ADDRESS_MAP_END -static ADDRESS_MAP_START( lucky74_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( lucky74_portmap, AS_IO, 8, lucky74_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x05) AM_READWRITE(custom_09R81P_port_r, custom_09R81P_port_w) /* custom 09R81P (samples system) */ // AM_RANGE(0xff, 0xff) AM_READWRITE(???) diff --git a/src/mame/drivers/lvcards.c b/src/mame/drivers/lvcards.c index b7d6b10a6fa..a910af071f7 100644 --- a/src/mame/drivers/lvcards.c +++ b/src/mame/drivers/lvcards.c @@ -150,7 +150,7 @@ static READ8_HANDLER( payout_r ) return state->m_result; } -static ADDRESS_MAP_START( ponttehk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ponttehk_map, AS_PROGRAM, 8, lvcards_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(lvcards_videoram_w) AM_BASE_MEMBER(lvcards_state, m_videoram) @@ -160,7 +160,7 @@ static ADDRESS_MAP_START( ponttehk_map, AS_PROGRAM, 8 ) AM_RANGE(0xa002, 0xa002) AM_READ(payout_r) AM_WRITE(control_port_2a_w)//AM_WRITENOP // ??? ADDRESS_MAP_END -static ADDRESS_MAP_START( lvcards_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lvcards_map, AS_PROGRAM, 8, lvcards_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(lvcards_videoram_w) AM_BASE_MEMBER(lvcards_state, m_videoram) @@ -171,13 +171,13 @@ static ADDRESS_MAP_START( lvcards_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xdfff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( lvcards_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( lvcards_io_map, AS_IO, 8, lvcards_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( lvpoker_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lvpoker_map, AS_PROGRAM, 8, lvcards_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(lvcards_videoram_w) AM_BASE_MEMBER(lvcards_state, m_videoram) diff --git a/src/mame/drivers/lwings.c b/src/mame/drivers/lwings.c index ddf1f46d362..2a53f6c638a 100644 --- a/src/mame/drivers/lwings.c +++ b/src/mame/drivers/lwings.c @@ -287,7 +287,7 @@ static WRITE8_DEVICE_HANDLER( msm5205_w ) msm5205_vclk_w(device, 0); } -static ADDRESS_MAP_START( avengers_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( avengers_map, AS_PROGRAM, 8, lwings_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xddff) AM_RAM @@ -311,7 +311,7 @@ static ADDRESS_MAP_START( avengers_map, AS_PROGRAM, 8 ) AM_RANGE(0xf80e, 0xf80e) AM_WRITE(lwings_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( lwings_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lwings_map, AS_PROGRAM, 8, lwings_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xddff) AM_RAM @@ -332,7 +332,7 @@ static ADDRESS_MAP_START( lwings_map, AS_PROGRAM, 8 ) AM_RANGE(0xf80e, 0xf80e) AM_WRITE(lwings_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( trojan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( trojan_map, AS_PROGRAM, 8, lwings_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xddff) AM_RAM @@ -356,7 +356,7 @@ static ADDRESS_MAP_START( trojan_map, AS_PROGRAM, 8 ) AM_RANGE(0xf80e, 0xf80e) AM_WRITE(lwings_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( lwings_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lwings_sound_map, AS_PROGRAM, 8, lwings_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc800) AM_READ(soundlatch_r) @@ -367,17 +367,17 @@ static ADDRESS_MAP_START( lwings_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Yes, _no_ ram */ -static ADDRESS_MAP_START( trojan_adpcm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( trojan_adpcm_map, AS_PROGRAM, 8, lwings_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( avengers_adpcm_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( avengers_adpcm_io_map, AS_IO, 8, lwings_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(avengers_adpcm_r) AM_RANGE(0x01, 0x01) AM_DEVWRITE("5205", msm5205_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( trojan_adpcm_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( trojan_adpcm_io_map, AS_IO, 8, lwings_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch2_r) AM_RANGE(0x01, 0x01) AM_DEVWRITE("5205", msm5205_w) diff --git a/src/mame/drivers/m10.c b/src/mame/drivers/m10.c index d729e5af813..c4db5d28cc0 100644 --- a/src/mame/drivers/m10.c +++ b/src/mame/drivers/m10.c @@ -557,7 +557,7 @@ static INTERRUPT_GEN( m15_interrupt ) * *************************************/ -static ADDRESS_MAP_START( m10_main, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m10_main, AS_PROGRAM, 8, m10_state ) AM_RANGE(0x0000, 0x02ff) AM_RAM AM_BASE_MEMBER(m10_state, m_memory) /* scratch ram */ AM_RANGE(0x1000, 0x2fff) AM_ROM AM_BASE_MEMBER(m10_state, m_rom) AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_SIZE_MEMBER(m10_state, m_videoram, m_videoram_size) @@ -571,7 +571,7 @@ static ADDRESS_MAP_START( m10_main, AS_PROGRAM, 8 ) AM_RANGE(0xfc00, 0xffff) AM_ROM /* for the reset / interrupt vectors */ ADDRESS_MAP_END -static ADDRESS_MAP_START( m11_main, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m11_main, AS_PROGRAM, 8, m10_state ) AM_RANGE(0x0000, 0x02ff) AM_RAM AM_BASE_MEMBER(m10_state, m_memory) /* scratch ram */ AM_RANGE(0x1000, 0x2fff) AM_ROM AM_BASE_MEMBER(m10_state, m_rom) AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_SIZE_MEMBER(m10_state, m_videoram, m_videoram_size) @@ -585,7 +585,7 @@ static ADDRESS_MAP_START( m11_main, AS_PROGRAM, 8 ) AM_RANGE(0xfc00, 0xffff) AM_ROM /* for the reset / interrupt vectors */ ADDRESS_MAP_END -static ADDRESS_MAP_START( m15_main, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m15_main, AS_PROGRAM, 8, m10_state ) AM_RANGE(0x0000, 0x02ff) AM_RAM AM_BASE_MEMBER(m10_state, m_memory) /* scratch ram */ AM_RANGE(0x1000, 0x33ff) AM_ROM AM_BASE_MEMBER(m10_state, m_rom) AM_RANGE(0x4000, 0x43ff) AM_RAM AM_BASE_SIZE_MEMBER(m10_state, m_videoram, m_videoram_size) diff --git a/src/mame/drivers/m107.c b/src/mame/drivers/m107.c index 52f64d1c8c3..e5666b444ca 100644 --- a/src/mame/drivers/m107.c +++ b/src/mame/drivers/m107.c @@ -127,7 +127,7 @@ static WRITE16_HANDLER( m107_sound_reset_w ) /*****************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, m107_state ) AM_RANGE(0x00000, 0x9ffff) AM_ROM AM_RANGE(0xa0000, 0xbffff) AM_ROMBANK("bank1") AM_RANGE(0xd0000, 0xdffff) AM_RAM_WRITE(m107_vram_w) AM_BASE_MEMBER(m107_state, m_vram_data) @@ -137,7 +137,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM AM_REGION("maincpu", 0x7fff0) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 16, m107_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2") AM_RANGE(0x02, 0x03) AM_READ_PORT("COINS_DSW3") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -164,14 +164,14 @@ static WRITE16_HANDLER( wpksoc_output_w ) popmessage("%04x",data); } -static ADDRESS_MAP_START( wpksoc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wpksoc_map, AS_PROGRAM, 16, m107_state ) AM_RANGE(0xf0000, 0xf0001) AM_READ_PORT("WPK_DSW0") AM_RANGE(0xf0002, 0xf0003) AM_READ_PORT("WPK_DSW1") AM_RANGE(0xf0004, 0xf0005) AM_READ_PORT("WPK_DSW2") AM_IMPORT_FROM(main_map) ADDRESS_MAP_END -static ADDRESS_MAP_START( wpksoc_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( wpksoc_io_map, AS_IO, 16, m107_state ) AM_RANGE(0x22, 0x23) AM_WRITE(wpksoc_output_w) AM_RANGE(0xc0, 0xc1) AM_READ_PORT("WPK_IN0") AM_RANGE(0xc2, 0xc3) AM_READ_PORT("WPK_IN1") @@ -180,7 +180,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, m107_state ) AM_RANGE(0x00000, 0x1ffff) AM_ROM AM_RANGE(0xa0000, 0xa3fff) AM_RAM AM_RANGE(0xa8000, 0xa803f) AM_DEVREADWRITE8("irem", irem_ga20_r, irem_ga20_w, 0x00ff) diff --git a/src/mame/drivers/m14.c b/src/mame/drivers/m14.c index 404c4a219c0..66d4a185ece 100644 --- a/src/mame/drivers/m14.c +++ b/src/mame/drivers/m14.c @@ -198,14 +198,14 @@ static WRITE8_HANDLER( hopper_w ) * *************************************/ -static ADDRESS_MAP_START( m14_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m14_map, AS_PROGRAM, 8, m14_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0xe000, 0xe3ff) AM_RAM_WRITE(m14_vram_w) AM_BASE_MEMBER(m14_state, m_video_ram) AM_RANGE(0xe400, 0xe7ff) AM_RAM_WRITE(m14_cram_w) AM_BASE_MEMBER(m14_state, m_color_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( m14_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( m14_io_map, AS_IO, 8, m14_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf8, 0xf8) AM_READ_PORT("AN_PADDLE") AM_WRITENOP AM_RANGE(0xf9, 0xf9) AM_READ(input_buttons_r) AM_WRITENOP diff --git a/src/mame/drivers/m52.c b/src/mame/drivers/m52.c index fb401837aa0..90716eb2ab8 100644 --- a/src/mame/drivers/m52.c +++ b/src/mame/drivers/m52.c @@ -58,7 +58,7 @@ * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, m52_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(m52_videoram_w) AM_BASE_MEMBER(m52_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(m52_colorram_w) AM_BASE_MEMBER(m52_state, m_colorram) @@ -75,7 +75,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( alpha1v_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( alpha1v_map, AS_PROGRAM, 8, m52_state ) AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(m52_videoram_w) AM_BASE_MEMBER(m52_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(m52_colorram_w) AM_BASE_MEMBER(m52_state, m_colorram) @@ -89,7 +89,7 @@ static ADDRESS_MAP_START( alpha1v_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, m52_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_MIRROR(0x1f) AM_WRITE(m52_scroll_w) AM_RANGE(0x40, 0x40) AM_MIRROR(0x1f) AM_WRITE(m52_bg1xpos_w) diff --git a/src/mame/drivers/m57.c b/src/mame/drivers/m57.c index 803b07dd426..f34be4be279 100644 --- a/src/mame/drivers/m57.c +++ b/src/mame/drivers/m57.c @@ -64,7 +64,7 @@ * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, m57_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(m57_videoram_w) AM_BASE_MEMBER(m57_state, m_videoram) AM_RANGE(0x9000, 0x91ff) AM_RAM AM_BASE_MEMBER(m57_state, m_scrollram) diff --git a/src/mame/drivers/m58.c b/src/mame/drivers/m58.c index c38ea68ecb8..72b9b34372d 100644 --- a/src/mame/drivers/m58.c +++ b/src/mame/drivers/m58.c @@ -24,7 +24,7 @@ * *************************************/ -static ADDRESS_MAP_START( yard_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( yard_map, AS_PROGRAM, 8, m58_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(yard_videoram_w) AM_BASE_MEMBER(m58_state, m_videoram) AM_RANGE(0x9000, 0x9fff) AM_WRITE(yard_scroll_panel_w) diff --git a/src/mame/drivers/m62.c b/src/mame/drivers/m62.c index 31195954a99..e4ae9ba121f 100644 --- a/src/mame/drivers/m62.c +++ b/src/mame/drivers/m62.c @@ -172,7 +172,7 @@ static WRITE8_HANDLER( youjyudn_bankswitch_w ) } -static ADDRESS_MAP_START( kungfum_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kungfum_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITE(m62_hscroll_low_w) AM_RANGE(0xb000, 0xb000) AM_WRITE(m62_hscroll_high_w) @@ -183,7 +183,7 @@ static ADDRESS_MAP_START( kungfum_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kungfum_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kungfum_io_map, AS_IO, 8, m62_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(irem_sound_cmd_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */ @@ -192,7 +192,7 @@ static ADDRESS_MAP_START( kungfum_io_map, AS_IO, 8 ) AM_RANGE(0x04, 0x04) AM_READ_PORT("DSW2") ADDRESS_MAP_END -static ADDRESS_MAP_START( battroad_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( battroad_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(m62_state, m_spriteram, m_spriteram_size) @@ -201,7 +201,7 @@ static ADDRESS_MAP_START( battroad_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( battroad_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( battroad_io_map, AS_IO, 8, m62_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(irem_sound_cmd_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */ @@ -214,14 +214,14 @@ static ADDRESS_MAP_START( battroad_io_map, AS_IO, 8 ) AM_RANGE(0x83, 0x83) AM_WRITE(battroad_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ldrun_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ldrun_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(m62_state, m_spriteram, m_spriteram_size) AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(m62_tileram_w) AM_BASE_MEMBER(m62_state, m_m62_tileram) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ldrun2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ldrun2_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(m62_state, m_spriteram, m_spriteram_size) @@ -229,7 +229,7 @@ static ADDRESS_MAP_START( ldrun2_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ldrun2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ldrun2_io_map, AS_IO, 8, m62_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(irem_sound_cmd_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */ @@ -240,7 +240,7 @@ static ADDRESS_MAP_START( ldrun2_io_map, AS_IO, 8 ) AM_RANGE(0x80, 0x81) AM_WRITE(ldrun2_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ldrun3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ldrun3_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc800, 0xc800) AM_READ(ldrun3_prot_5_r) AM_RANGE(0xcc00, 0xcc00) AM_READ(ldrun3_prot_7_r) @@ -250,7 +250,7 @@ static ADDRESS_MAP_START( ldrun3_map, AS_PROGRAM, 8 ) AM_RANGE(0xd000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ldrun3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ldrun3_io_map, AS_IO, 8, m62_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(irem_sound_cmd_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */ @@ -261,7 +261,7 @@ static ADDRESS_MAP_START( ldrun3_io_map, AS_IO, 8 ) AM_RANGE(0x81, 0x81) AM_WRITE(ldrun3_topbottom_mask_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ldrun4_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ldrun4_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(m62_state, m_spriteram, m_spriteram_size) @@ -270,7 +270,7 @@ static ADDRESS_MAP_START( ldrun4_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ldrun4_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ldrun4_io_map, AS_IO, 8, m62_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(irem_sound_cmd_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */ @@ -281,7 +281,7 @@ static ADDRESS_MAP_START( ldrun4_io_map, AS_IO, 8 ) AM_RANGE(0x83, 0x83) AM_WRITE(m62_hscroll_low_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( lotlot_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lotlot_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(m62_textram_w) AM_BASE_MEMBER(m62_state, m_m62_textram) AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(m62_state, m_spriteram, m_spriteram_size) @@ -289,7 +289,7 @@ static ADDRESS_MAP_START( lotlot_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kidniki_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kidniki_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(m62_tileram_w) AM_BASE_MEMBER(m62_state, m_m62_tileram) @@ -298,7 +298,7 @@ static ADDRESS_MAP_START( kidniki_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kidniki_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kidniki_io_map, AS_IO, 8, m62_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(irem_sound_cmd_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */ @@ -313,7 +313,7 @@ static ADDRESS_MAP_START( kidniki_io_map, AS_IO, 8 ) AM_RANGE(0x85, 0x85) AM_WRITE(kidniki_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( spelunkr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spelunkr_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xbfff) AM_RAM_WRITE(m62_tileram_w) AM_BASE_MEMBER(m62_state, m_m62_tileram) @@ -328,7 +328,7 @@ static ADDRESS_MAP_START( spelunkr_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( spelunk2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spelunk2_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_ROMBANK("bank1") AM_RANGE(0x9000, 0x9fff) AM_ROMBANK("bank2") @@ -342,7 +342,7 @@ static ADDRESS_MAP_START( spelunk2_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( youjyudn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( youjyudn_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc0ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(m62_state, m_spriteram, m_spriteram_size) @@ -351,7 +351,7 @@ static ADDRESS_MAP_START( youjyudn_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( youjyudn_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( youjyudn_io_map, AS_IO, 8, m62_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(irem_sound_cmd_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(m62_flipscreen_w) /* + coin counters */ @@ -363,7 +363,7 @@ static ADDRESS_MAP_START( youjyudn_io_map, AS_IO, 8 ) AM_RANGE(0x83, 0x83) AM_WRITE(youjyudn_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( horizon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( horizon_map, AS_PROGRAM, 8, m62_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc1ff) AM_RAM AM_BASE_SIZE_MEMBER(m62_state, m_spriteram, m_spriteram_size) AM_RANGE(0xc800, 0xc83f) AM_RAM_WRITE(horizon_scrollram_w) AM_BASE_MEMBER(m62_state, m_scrollram) diff --git a/src/mame/drivers/m63.c b/src/mame/drivers/m63.c index 6232ee89b47..afcf85455c8 100644 --- a/src/mame/drivers/m63.c +++ b/src/mame/drivers/m63.c @@ -444,7 +444,7 @@ static WRITE8_HANDLER( nmi_mask_w ) } -static ADDRESS_MAP_START( m63_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m63_map, AS_PROGRAM, 8, m63_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xd000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe1ff) AM_RAM @@ -464,7 +464,7 @@ static ADDRESS_MAP_START( m63_map, AS_PROGRAM, 8 ) AM_RANGE(0xf806, 0xf806) AM_READ_PORT("DSW2") ADDRESS_MAP_END -static ADDRESS_MAP_START( fghtbskt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fghtbskt_map, AS_PROGRAM, 8, m63_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -491,12 +491,12 @@ static ADDRESS_MAP_START( fghtbskt_map, AS_PROGRAM, 8 ) AM_RANGE(0xf807, 0xf807) AM_WRITE(fghtbskt_samples_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( i8039_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( i8039_map, AS_PROGRAM, 8, m63_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( i8039_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( i8039_port_map, AS_IO, 8, m63_state ) AM_RANGE(0x00, 0xff) AM_READWRITE(snddata_r, snddata_w) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_WRITE(p1_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(p2_w) diff --git a/src/mame/drivers/m72.c b/src/mame/drivers/m72.c index 0e428284247..fc085043433 100644 --- a/src/mame/drivers/m72.c +++ b/src/mame/drivers/m72.c @@ -891,7 +891,7 @@ static READ16_HANDLER( poundfor_trackball_r ) #define CPU1_MEMORY(NAME,ROMSIZE,WORKRAM) \ -static ADDRESS_MAP_START( NAME##_map, AS_PROGRAM, 16 ) \ +static ADDRESS_MAP_START( NAME##_map, AS_PROGRAM, 16 , m72_state ) \ AM_RANGE(0x00000, ROMSIZE-1) AM_ROM \ AM_RANGE(WORKRAM, WORKRAM+0x3fff) AM_RAM /* work RAM */ \ AM_RANGE(0xc0000, 0xc03ff) AM_RAM AM_BASE_SIZE_MEMBER(m72_state, m_spriteram, m_spriteram_size) \ @@ -910,7 +910,7 @@ CPU1_MEMORY( rtype, 0x40000, 0x40000 ) CPU1_MEMORY( xmultiplm72, 0x80000, 0x80000 ) CPU1_MEMORY( dbreedm72, 0x80000, 0x90000 ) -static ADDRESS_MAP_START( xmultipl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( xmultipl_map, AS_PROGRAM, 16, m72_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0x9c000, 0x9ffff) AM_RAM /* work RAM */ AM_RANGE(0xb0ffe, 0xb0fff) AM_WRITEONLY /* leftover from protection?? */ @@ -922,7 +922,7 @@ static ADDRESS_MAP_START( xmultipl_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( dbreed_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dbreed_map, AS_PROGRAM, 16, m72_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0x88000, 0x8bfff) AM_RAM /* work RAM */ AM_RANGE(0xb0ffe, 0xb0fff) AM_WRITEONLY /* leftover from protection?? */ @@ -934,7 +934,7 @@ static ADDRESS_MAP_START( dbreed_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( rtype2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rtype2_map, AS_PROGRAM, 16, m72_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0xb0000, 0xb0001) AM_WRITE(m72_irq_line_w) AM_RANGE(0xbc000, 0xbc001) AM_WRITE(m72_dmaon_w) @@ -947,7 +947,7 @@ static ADDRESS_MAP_START( rtype2_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( majtitle_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( majtitle_map, AS_PROGRAM, 16, m72_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0xa0000, 0xa03ff) AM_RAM AM_BASE_MEMBER(m72_state, m_majtitle_rowscrollram) AM_RANGE(0xa4000, 0xa4bff) AM_READWRITE(m72_palette2_r, m72_palette2_w) AM_BASE_GENERIC(paletteram2) @@ -963,7 +963,7 @@ static ADDRESS_MAP_START( majtitle_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( hharry_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hharry_map, AS_PROGRAM, 16, m72_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0xa0000, 0xa3fff) AM_RAM /* work RAM */ AM_RANGE(0xb0ffe, 0xb0fff) AM_WRITEONLY /* leftover from protection?? */ @@ -975,7 +975,7 @@ static ADDRESS_MAP_START( hharry_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( hharryu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hharryu_map, AS_PROGRAM, 16, m72_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0xa0000, 0xa0bff) AM_READWRITE(m72_palette1_r, m72_palette1_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xa8000, 0xa8bff) AM_READWRITE(m72_palette2_r, m72_palette2_w) AM_BASE_GENERIC(paletteram2) @@ -989,7 +989,7 @@ static ADDRESS_MAP_START( hharryu_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( kengo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kengo_map, AS_PROGRAM, 16, m72_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0xa0000, 0xa0bff) AM_READWRITE(m72_palette1_r, m72_palette1_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xa8000, 0xa8bff) AM_READWRITE(m72_palette2_r, m72_palette2_w) AM_BASE_GENERIC(paletteram2) @@ -1003,7 +1003,7 @@ static ADDRESS_MAP_START( kengo_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( m72_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( m72_portmap, AS_IO, 16, m72_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -1019,7 +1019,7 @@ static ADDRESS_MAP_START( m72_portmap, AS_IO, 16 ) /* { 0xc0, 0xc0 trigger sample, filled by init_ function */ ADDRESS_MAP_END -static ADDRESS_MAP_START( rtype2_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( rtype2_portmap, AS_IO, 16, m72_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -1032,7 +1032,7 @@ static ADDRESS_MAP_START( rtype2_portmap, AS_IO, 16 ) AM_RANGE(0x86, 0x87) AM_WRITE(m72_scrollx2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( poundfor_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( poundfor_portmap, AS_IO, 16, m72_state ) AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") AM_RANGE(0x08, 0x0f) AM_READ(poundfor_trackball_r) @@ -1045,7 +1045,7 @@ static ADDRESS_MAP_START( poundfor_portmap, AS_IO, 16 ) AM_RANGE(0x86, 0x87) AM_WRITE(m72_scrollx2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( majtitle_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( majtitle_portmap, AS_IO, 16, m72_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -1059,7 +1059,7 @@ static ADDRESS_MAP_START( majtitle_portmap, AS_IO, 16 ) AM_RANGE(0x8e, 0x8f) AM_WRITE(majtitle_gfx_ctrl_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hharry_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( hharry_portmap, AS_IO, 16, m72_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -1074,7 +1074,7 @@ static ADDRESS_MAP_START( hharry_portmap, AS_IO, 16 ) AM_RANGE(0x86, 0x87) AM_WRITE(m72_scrollx2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( kengo_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( kengo_portmap, AS_IO, 16, m72_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("IN0") AM_RANGE(0x02, 0x03) AM_READ_PORT("IN1") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -1088,16 +1088,16 @@ static ADDRESS_MAP_START( kengo_portmap, AS_IO, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_ram_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_ram_map, AS_PROGRAM, 8, m72_state ) AM_RANGE(0x0000, 0xffff) AM_RAM AM_BASE_MEMBER(m72_state, m_soundram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_rom_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_rom_map, AS_PROGRAM, 8, m72_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( rtype_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( rtype_sound_portmap, AS_IO, 8, m72_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x02, 0x02) AM_READ(soundlatch_r) @@ -1105,7 +1105,7 @@ static ADDRESS_MAP_START( rtype_sound_portmap, AS_IO, 8 ) AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_sample_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, m72_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x02, 0x02) AM_READ(soundlatch_r) @@ -1114,7 +1114,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_sample_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( rtype2_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( rtype2_sound_portmap, AS_IO, 8, m72_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x80, 0x80) AM_READ(soundlatch_r) @@ -1125,7 +1125,7 @@ static ADDRESS_MAP_START( rtype2_sound_portmap, AS_IO, 8 ) // AM_RANGE(0x87, 0x87) AM_WRITENOP /* ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( poundfor_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( poundfor_sound_portmap, AS_IO, 8, m72_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVWRITE("m72", poundfor_sample_addr_w) AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1133,7 +1133,7 @@ static ADDRESS_MAP_START( poundfor_sound_portmap, AS_IO, 8 ) AM_RANGE(0x42, 0x42) AM_DEVWRITE("m72", m72_sound_irq_ack_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, m72_state ) /* External access */ AM_RANGE(0x0000, 0x0000) AM_READWRITE(m72_mcu_sample_r, m72_mcu_low_w) AM_RANGE(0x0001, 0x0001) AM_WRITE(m72_mcu_high_w) diff --git a/src/mame/drivers/m79amb.c b/src/mame/drivers/m79amb.c index 06cd9dc5165..b39e2aace21 100644 --- a/src/mame/drivers/m79amb.c +++ b/src/mame/drivers/m79amb.c @@ -132,7 +132,7 @@ static WRITE8_HANDLER( m79amb_8002_w ) output_set_value("EXP_LAMP", data ? 1 : 0); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, m79amb_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_RAM_WRITE(ramtek_videoram_w) AM_BASE_MEMBER(m79amb_state, m_videoram) AM_RANGE(0x6000, 0x63ff) AM_RAM /* ?? */ diff --git a/src/mame/drivers/m90.c b/src/mame/drivers/m90.c index 90c0611c254..a0988dce3ce 100644 --- a/src/mame/drivers/m90.c +++ b/src/mame/drivers/m90.c @@ -72,7 +72,7 @@ static WRITE16_HANDLER( unknown_w ) /***************************************************************************/ -static ADDRESS_MAP_START( m90_main_cpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( m90_main_cpu_map, AS_PROGRAM, 16, m90_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0x80000, 0x8ffff) AM_ROMBANK("bank1") /* Quiz F1 only */ AM_RANGE(0xa0000, 0xa3fff) AM_RAM @@ -81,7 +81,7 @@ static ADDRESS_MAP_START( m90_main_cpu_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( dynablsb_main_cpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dynablsb_main_cpu_map, AS_PROGRAM, 16, m90_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_RANGE(0x6000e, 0x60fff) AM_RAM AM_BASE_SIZE_MEMBER(m90_state, m_spriteram, m_spriteram_size) AM_RANGE(0xa0000, 0xa3fff) AM_RAM @@ -90,7 +90,7 @@ static ADDRESS_MAP_START( dynablsb_main_cpu_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bomblord_main_cpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bomblord_main_cpu_map, AS_PROGRAM, 16, m90_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0xa0000, 0xa3fff) AM_RAM AM_RANGE(0xc000e, 0xc0fff) AM_RAM AM_BASE_SIZE_MEMBER(m90_state, m_spriteram, m_spriteram_size) @@ -99,7 +99,7 @@ static ADDRESS_MAP_START( bomblord_main_cpu_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( m90_main_cpu_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( m90_main_cpu_io_map, AS_IO, 16, m90_state ) AM_RANGE(0x00, 0x01) AM_DEVWRITE("m72", m72_sound_command_w) AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2") AM_RANGE(0x02, 0x03) AM_WRITE(m90_coincounter_w) @@ -109,7 +109,7 @@ static ADDRESS_MAP_START( m90_main_cpu_io_map, AS_IO, 16 ) AM_RANGE(0x80, 0x8f) AM_WRITE(m90_video_control_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dynablsb_main_cpu_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( dynablsb_main_cpu_io_map, AS_IO, 16, m90_state ) AM_RANGE(0x00, 0x01) AM_WRITE(dynablsb_sound_command_w) AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2") AM_RANGE(0x02, 0x03) AM_WRITE(m90_coincounter_w) @@ -123,12 +123,12 @@ ADDRESS_MAP_END /*****************************************************************************/ -static ADDRESS_MAP_START( m90_sound_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m90_sound_cpu_map, AS_PROGRAM, 8, m90_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( m90_sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( m90_sound_cpu_io_map, AS_IO, 8, m90_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x80, 0x80) AM_READ(soundlatch_r) @@ -138,14 +138,14 @@ static ADDRESS_MAP_START( m90_sound_cpu_io_map, AS_IO, 8 ) AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_sample_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( dynablsb_sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dynablsb_sound_cpu_io_map, AS_IO, 8, m90_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x80, 0x80) AM_READ(soundlatch_r) AM_RANGE(0x82, 0x82) AM_DEVWRITE("dac", dac_signed_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( m99_sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( m99_sound_cpu_io_map, AS_IO, 8, m90_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("m72", poundfor_sample_addr_w) AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/m92.c b/src/mame/drivers/m92.c index d439d741227..2aa844b105b 100644 --- a/src/mame/drivers/m92.c +++ b/src/mame/drivers/m92.c @@ -334,7 +334,7 @@ static WRITE16_HANDLER( m92_sound_reset_w ) /*****************************************************************************/ /* appears to be an earlier board */ -static ADDRESS_MAP_START( lethalth_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lethalth_map, AS_PROGRAM, 16, m92_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0x80000, 0x8ffff) AM_RAM_WRITE(m92_vram_w) AM_BASE_MEMBER(m92_state, m_vram_data) AM_RANGE(0xe0000, 0xeffff) AM_RAM /* System ram */ @@ -345,7 +345,7 @@ static ADDRESS_MAP_START( lethalth_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM AM_REGION("maincpu", 0x7fff0) ADDRESS_MAP_END -static ADDRESS_MAP_START( m92_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( m92_map, AS_PROGRAM, 16, m92_state ) AM_RANGE(0x00000, 0x9ffff) AM_ROM AM_RANGE(0xa0000, 0xbffff) AM_ROMBANK("bank1") AM_RANGE(0xc0000, 0xcffff) AM_ROM AM_REGION("maincpu", 0x00000) /* Mirror used by In The Hunt as protection */ @@ -358,7 +358,7 @@ static ADDRESS_MAP_START( m92_map, AS_PROGRAM, 16 ) AM_RANGE(0xffff0, 0xfffff) AM_ROM AM_REGION("maincpu", 0x7fff0) ADDRESS_MAP_END -static ADDRESS_MAP_START( m92_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( m92_portmap, AS_IO, 16, m92_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2") AM_RANGE(0x02, 0x03) AM_READ_PORT("COINS_DSW3") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -379,7 +379,7 @@ static WRITE16_DEVICE_HANDLER( oki_bank_w ) downcast<okim6295_device *>(device)->set_bank_base(0x40000 * ((data+1) & 0x3)); // +1? } -static ADDRESS_MAP_START( ppan_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( ppan_portmap, AS_IO, 16, m92_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("P1_P2") AM_RANGE(0x02, 0x03) AM_READ_PORT("COINS_DSW3") AM_RANGE(0x04, 0x05) AM_READ_PORT("DSW") @@ -398,7 +398,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, m92_state ) AM_RANGE(0x00000, 0x1ffff) AM_ROM AM_RANGE(0xa0000, 0xa3fff) AM_RAM AM_RANGE(0xa8000, 0xa803f) AM_DEVREADWRITE8("irem", irem_ga20_r, irem_ga20_w, 0x00ff) diff --git a/src/mame/drivers/macrossp.c b/src/mame/drivers/macrossp.c index 7fdf74ef3a4..bd70f739ebd 100644 --- a/src/mame/drivers/macrossp.c +++ b/src/mame/drivers/macrossp.c @@ -402,7 +402,7 @@ static WRITE32_HANDLER( macrossp_palette_fade_w ) /*** MEMORY MAPS *************************************************************/ -static ADDRESS_MAP_START( macrossp_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( macrossp_map, AS_PROGRAM, 32, macrossp_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x800000, 0x802fff) AM_RAM AM_BASE_SIZE_MEMBER(macrossp_state, m_spriteram, m_spriteram_size) /* SCR A Layer */ @@ -437,7 +437,7 @@ static ADDRESS_MAP_START( macrossp_map, AS_PROGRAM, 32 ) // AM_RANGE(0xfe0000, 0xfe0003) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( macrossp_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( macrossp_sound_map, AS_PROGRAM, 16, macrossp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x207fff) AM_RAM AM_RANGE(0x400000, 0x40007f) AM_DEVREADWRITE8("ensoniq", es5506_r, es5506_w, 0x00ff) diff --git a/src/mame/drivers/macs.c b/src/mame/drivers/macs.c index 1109eed879e..b5677863264 100644 --- a/src/mame/drivers/macs.c +++ b/src/mame/drivers/macs.c @@ -77,7 +77,7 @@ public: static MACHINE_RESET(macs); -static ADDRESS_MAP_START( macs_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( macs_mem, AS_PROGRAM, 8, macs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank4") AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_READ(st0016_sprite_ram_r) AM_WRITE(st0016_sprite_ram_w) @@ -170,7 +170,7 @@ static WRITE8_HANDLER( macs_output_w ) } } -static ADDRESS_MAP_START( macs_io, AS_IO, 8 ) +static ADDRESS_MAP_START( macs_io, AS_IO, 8, macs_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) /* video/crt regs ? */ AM_RANGE(0xc0, 0xc7) AM_READWRITE(macs_input_r,macs_output_w) diff --git a/src/mame/drivers/madalien.c b/src/mame/drivers/madalien.c index 6826424da06..43e0785d332 100644 --- a/src/mame/drivers/madalien.c +++ b/src/mame/drivers/madalien.c @@ -78,7 +78,7 @@ static WRITE8_DEVICE_HANDLER( madalien_portB_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, madalien_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x6000, 0x63ff) AM_RAM_WRITE(madalien_videoram_w) AM_BASE_MEMBER(madalien_state, m_videoram) @@ -106,7 +106,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, madalien_state ) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x1ffc) AM_RAM /* unknown device in an epoxy block, might be tilt detection */ AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x1ffc) AM_READ(madalien_sound_command_r) diff --git a/src/mame/drivers/madmotor.c b/src/mame/drivers/madmotor.c index 5460ac84788..847af761a7e 100644 --- a/src/mame/drivers/madmotor.c +++ b/src/mame/drivers/madmotor.c @@ -39,7 +39,7 @@ static WRITE16_HANDLER( madmotor_sound_w ) /******************************************************************************/ -static ADDRESS_MAP_START( madmotor_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( madmotor_map, AS_PROGRAM, 16, madmotor_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x180000, 0x180007) AM_DEVWRITE("tilegen1", deco_bac06_pf_control_0_w) /* text layer */ AM_RANGE(0x180010, 0x180017) AM_DEVWRITE("tilegen1", deco_bac06_pf_control_1_w) @@ -67,7 +67,7 @@ ADDRESS_MAP_END /******************************************************************************/ /* Physical memory map (21 bits) */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, madmotor_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_r,ym2203_w) AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_r,ym2151_w) diff --git a/src/mame/drivers/magic10.c b/src/mame/drivers/magic10.c index 0b15ac3631f..b0f64af1dfb 100644 --- a/src/mame/drivers/magic10.c +++ b/src/mame/drivers/magic10.c @@ -282,7 +282,7 @@ static WRITE16_HANDLER( magic10_out_w ) * Memory Maps * ***************************/ -static ADDRESS_MAP_START( magic10_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magic10_map, AS_PROGRAM, 16, magic10_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer1_videoram) AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer0_videoram) @@ -298,7 +298,7 @@ static ADDRESS_MAP_START( magic10_map, AS_PROGRAM, 16 ) AM_RANGE(0x600000, 0x603fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( magic10a_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magic10a_map, AS_PROGRAM, 16, magic10_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer1_videoram) AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer0_videoram) @@ -314,7 +314,7 @@ static ADDRESS_MAP_START( magic10a_map, AS_PROGRAM, 16 ) AM_RANGE(0x600000, 0x603fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( magic102_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magic102_map, AS_PROGRAM, 16, magic10_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer1_videoram) AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer0_videoram) @@ -333,7 +333,7 @@ static ADDRESS_MAP_START( magic102_map, AS_PROGRAM, 16 ) AM_RANGE(0x700080, 0x700087) AM_RAM AM_BASE_MEMBER(magic10_state, m_vregs) // video registers? ADDRESS_MAP_END -static ADDRESS_MAP_START( hotslot_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hotslot_map, AS_PROGRAM, 16, magic10_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer1_videoram) AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer0_videoram) @@ -352,7 +352,7 @@ static ADDRESS_MAP_START( hotslot_map, AS_PROGRAM, 16 ) AM_RANGE(0x700080, 0x700087) AM_RAM AM_BASE_MEMBER(magic10_state, m_vregs) ADDRESS_MAP_END -static ADDRESS_MAP_START( sgsafari_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sgsafari_map, AS_PROGRAM, 16, magic10_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(layer1_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer1_videoram) AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(layer0_videoram_w) AM_BASE_MEMBER(magic10_state, m_layer0_videoram) diff --git a/src/mame/drivers/magicard.c b/src/mame/drivers/magicard.c index 35fc5db6db8..738e408d64b 100644 --- a/src/mame/drivers/magicard.c +++ b/src/mame/drivers/magicard.c @@ -646,7 +646,7 @@ static WRITE16_HANDLER( scc68070_mmu_w ) * Memory Maps * *************************/ -static ADDRESS_MAP_START( magicard_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magicard_mem, AS_PROGRAM, 16, magicard_state ) // ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x00000000, 0x0017ffff) AM_MIRROR(0x7fe00000) AM_RAM AM_BASE_MEMBER(magicard_state, m_magicram) /*only 0-7ffff accessed in Magic Card*/ AM_RANGE(0x00180000, 0x001ffbff) AM_MIRROR(0x7fe00000) AM_RAM AM_REGION("maincpu", 0) diff --git a/src/mame/drivers/magicfly.c b/src/mame/drivers/magicfly.c index b396316b003..b03958c2005 100644 --- a/src/mame/drivers/magicfly.c +++ b/src/mame/drivers/magicfly.c @@ -593,7 +593,7 @@ static WRITE8_HANDLER( mux_port_w ) * Memory map information * *************************/ -static ADDRESS_MAP_START( magicfly_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( magicfly_map, AS_PROGRAM, 8, magicfly_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* MK48Z02B NVRAM */ AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE_MODERN("crtc", mc6845_device, register_r, register_w) diff --git a/src/mame/drivers/magmax.c b/src/mame/drivers/magmax.c index 6aaefb88d54..ea680badbbb 100644 --- a/src/mame/drivers/magmax.c +++ b/src/mame/drivers/magmax.c @@ -204,7 +204,7 @@ static WRITE16_HANDLER( magmax_vreg_w ) -static ADDRESS_MAP_START( magmax_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magmax_map, AS_PROGRAM, 16, magmax_state ) AM_RANGE(0x000000, 0x013fff) AM_ROM AM_RANGE(0x018000, 0x018fff) AM_RAM AM_RANGE(0x020000, 0x0207ff) AM_RAM AM_BASE_MEMBER(magmax_state, m_videoram) @@ -220,13 +220,13 @@ static ADDRESS_MAP_START( magmax_map, AS_PROGRAM, 16 ) AM_RANGE(0x03001e, 0x03001f) AM_WRITENOP /* IRQ ack */ ADDRESS_MAP_END -static ADDRESS_MAP_START( magmax_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( magmax_sound_map, AS_PROGRAM, 8, magmax_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4000) AM_READ(magmax_sound_irq_ack) AM_RANGE(0x6000, 0x67ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( magmax_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( magmax_sound_io_map, AS_IO, 8, magmax_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/magtouch.c b/src/mame/drivers/magtouch.c index 6657572cac0..2cb6f8f2806 100644 --- a/src/mame/drivers/magtouch.c +++ b/src/mame/drivers/magtouch.c @@ -161,7 +161,7 @@ static WRITE8_HANDLER(magtouch_io_w) } } -static ADDRESS_MAP_START( magtouch_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( magtouch_map, AS_PROGRAM, 32, magtouch_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000bffff) AM_RAM AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0) @@ -171,7 +171,7 @@ static ADDRESS_MAP_START( magtouch_map, AS_PROGRAM, 32 ) AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( magtouch_io, AS_IO, 32 ) +static ADDRESS_MAP_START( magtouch_io, AS_IO, 32, magtouch_state ) AM_IMPORT_FROM(pcat32_io_common) AM_RANGE(0x02e0, 0x02e7) AM_READWRITE8(magtouch_io_r, magtouch_io_w, 0xffffffff) AM_RANGE(0x03f8, 0x03ff) AM_DEVREADWRITE8_MODERN("ns16450_0", ns16450_device, ins8250_r, ins8250_w, 0xffffffff) diff --git a/src/mame/drivers/mainevt.c b/src/mame/drivers/mainevt.c index 72c7b195c3a..378e01e6e62 100644 --- a/src/mame/drivers/mainevt.c +++ b/src/mame/drivers/mainevt.c @@ -168,7 +168,7 @@ static WRITE8_HANDLER( k052109_051960_w ) } -static ADDRESS_MAP_START( mainevt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainevt_map, AS_PROGRAM, 8, mainevt_state ) AM_RANGE(0x1f80, 0x1f80) AM_WRITE(mainevt_bankswitch_w) AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) /* probably */ AM_RANGE(0x1f88, 0x1f88) AM_WRITE(mainevt_sh_irqtrigger_w) /* probably */ @@ -193,7 +193,7 @@ static ADDRESS_MAP_START( mainevt_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( devstors_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( devstors_map, AS_PROGRAM, 8, mainevt_state ) AM_RANGE(0x1f80, 0x1f80) AM_WRITE(mainevt_bankswitch_w) AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) /* probably */ AM_RANGE(0x1f88, 0x1f88) AM_WRITE(mainevt_sh_irqtrigger_w) /* probably */ @@ -217,7 +217,7 @@ static ADDRESS_MAP_START( devstors_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mainevt_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainevt_sound_map, AS_PROGRAM, 8, mainevt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("upd", upd7759_port_w) @@ -228,7 +228,7 @@ static ADDRESS_MAP_START( mainevt_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_WRITE(mainevt_sh_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( devstors_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( devstors_sound_map, AS_PROGRAM, 8, mainevt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/mainsnk.c b/src/mame/drivers/mainsnk.c index 8b4a9537935..6f1f3454d95 100644 --- a/src/mame/drivers/mainsnk.c +++ b/src/mame/drivers/mainsnk.c @@ -143,7 +143,7 @@ static CUSTOM_INPUT( mainsnk_sound_r ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mainsnk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -159,7 +159,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(mainsnk_fgram_w) AM_BASE_MEMBER(mainsnk_state, m_fgram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, mainsnk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(sound_command_r) @@ -169,7 +169,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe008, 0xe009) AM_DEVWRITE("ay2", ay8910_address_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, mainsnk_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READNOP ADDRESS_MAP_END diff --git a/src/mame/drivers/majorpkr.c b/src/mame/drivers/majorpkr.c index 7fc843cbae6..d1e4d4c9c1a 100644 --- a/src/mame/drivers/majorpkr.c +++ b/src/mame/drivers/majorpkr.c @@ -765,7 +765,7 @@ static WRITE8_HANDLER( pulses_w ) * Memory map information * *************************/ -static ADDRESS_MAP_START( map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( map, AS_PROGRAM, 8, majorpkr_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_ROM AM_ROMBANK("rom_bank") AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("nvram") @@ -794,7 +794,7 @@ ADDRESS_MAP_END 60 W ---> PSG SN76489/96 initialization routines. (Maybe a leftover for different hardware). */ -static ADDRESS_MAP_START( portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( portmap, AS_IO, 8, majorpkr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(rom_bank_w) AM_RANGE(0x01, 0x01) AM_WRITE(palette_bank_w) diff --git a/src/mame/drivers/malzak.c b/src/mame/drivers/malzak.c index 2216ad3d0c6..135a9bc9635 100644 --- a/src/mame/drivers/malzak.c +++ b/src/mame/drivers/malzak.c @@ -98,7 +98,7 @@ static READ8_HANDLER( s2636_portA_r ) } } -static ADDRESS_MAP_START( malzak_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( malzak_map, AS_PROGRAM, 8, malzak_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x0c00, 0x0fff) AM_ROMBANK("bank1") @@ -118,7 +118,7 @@ static ADDRESS_MAP_START( malzak_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( malzak2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( malzak2_map, AS_PROGRAM, 8, malzak_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x0c00, 0x0fff) AM_ROMBANK("bank1") @@ -183,7 +183,7 @@ static READ8_HANDLER( collision_r ) return 0xd0 + state->m_collision_counter; } -static ADDRESS_MAP_START( malzak_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( malzak_io_map, AS_IO, 8, malzak_state ) AM_RANGE(0x00, 0x00) AM_READ(collision_r) // returns where a collision can occur. AM_RANGE(0x40, 0x40) AM_WRITE(port40_w) // possibly sound codes for dual SN76477s AM_RANGE(0x60, 0x60) AM_WRITE(port60_w) // possibly playfield scroll X offset diff --git a/src/mame/drivers/manohman.c b/src/mame/drivers/manohman.c index 507d1e90035..627a009612f 100644 --- a/src/mame/drivers/manohman.c +++ b/src/mame/drivers/manohman.c @@ -150,7 +150,7 @@ public: * Memory Map Definition * *********************************************/ -static ADDRESS_MAP_START( manohman_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( manohman_map, AS_PROGRAM, 16, _manohman_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_NOP // smell to MAX696 watchdog... AM_RANGE(0x300000, 0x300001) AM_DEVWRITE8("saa", saa1099_data_w, 0x00ff) diff --git a/src/mame/drivers/mappy.c b/src/mame/drivers/mappy.c index 9325db80e29..a67c97189b5 100644 --- a/src/mame/drivers/mappy.c +++ b/src/mame/drivers/mappy.c @@ -894,7 +894,7 @@ static INTERRUPT_GEN( sub2_vblank_irq ) cputag_set_input_line(device->machine(), "sub2", 0, ASSERT_LINE); } -static ADDRESS_MAP_START( superpac_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( superpac_cpu1_map, AS_PROGRAM, 8, mappy_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_BASE_MEMBER(mappy_state,m_videoram) /* video RAM */ AM_RANGE(0x0800, 0x1fff) AM_RAM AM_BASE_MEMBER(mappy_state,m_spriteram) /* work RAM with embedded sprite RAM */ AM_RANGE(0x2000, 0x2000) AM_READWRITE(superpac_flipscreen_r, superpac_flipscreen_w) @@ -906,7 +906,7 @@ static ADDRESS_MAP_START( superpac_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( phozon_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( phozon_cpu1_map, AS_PROGRAM, 8, mappy_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("share2") AM_BASE_MEMBER(mappy_state,m_videoram) /* video RAM */ AM_RANGE(0x0800, 0x1fff) AM_RAM AM_BASE_MEMBER(mappy_state,m_spriteram) AM_SHARE("share3") /* shared RAM with CPU #2/sprite RAM*/ AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with the sound CPU */ @@ -917,7 +917,7 @@ static ADDRESS_MAP_START( phozon_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mappy_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mappy_cpu1_map, AS_PROGRAM, 8, mappy_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(mappy_videoram_w) AM_BASE_MEMBER(mappy_state,m_videoram) /* video RAM */ AM_RANGE(0x1000, 0x27ff) AM_RAM AM_BASE_MEMBER(mappy_state,m_spriteram) /* work RAM with embedded sprite RAM */ AM_RANGE(0x3800, 0x3fff) AM_WRITE(mappy_scroll_w) /* scroll */ @@ -930,18 +930,18 @@ static ADDRESS_MAP_START( mappy_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( superpac_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( superpac_cpu2_map, AS_PROGRAM, 8, mappy_state ) AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with the main CPU (also sound registers) */ AM_RANGE(0x2000, 0x200f) AM_WRITE(superpac_latch_w) /* various control bits */ AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( phozon_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( phozon_cpu2_map, AS_PROGRAM, 8, mappy_state ) AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with the main CPU + sound registers */ AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mappy_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mappy_cpu2_map, AS_PROGRAM, 8, mappy_state ) AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with the main CPU (also sound registers) */ AM_RANGE(0x2000, 0x200f) AM_WRITE(mappy_latch_w) /* various control bits */ AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM code */ @@ -949,7 +949,7 @@ ADDRESS_MAP_END /* extra CPU only present in Phozon */ -static ADDRESS_MAP_START( phozon_cpu3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( phozon_cpu3_map, AS_PROGRAM, 8, mappy_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("share2") /* video RAM */ AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("share3") /* shared RAM with CPU #2/sprite RAM*/ AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with CPU #2 */ diff --git a/src/mame/drivers/marineb.c b/src/mame/drivers/marineb.c index cd28ed5743c..34a3e94e090 100644 --- a/src/mame/drivers/marineb.c +++ b/src/mame/drivers/marineb.c @@ -78,7 +78,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( marineb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( marineb_map, AS_PROGRAM, 8, marineb_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(marineb_videoram_w) AM_BASE_MEMBER(marineb_state, m_videoram) @@ -96,12 +96,12 @@ static ADDRESS_MAP_START( marineb_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( marineb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( marineb_io_map, AS_IO, 8, marineb_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x08, 0x09) AM_DEVWRITE("ay1", ay8910_address_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( wanted_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( wanted_io_map, AS_IO, 8, marineb_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/marinedt.c b/src/mame/drivers/marinedt.c index 5ea64f1f887..8d150426dc2 100644 --- a/src/mame/drivers/marinedt.c +++ b/src/mame/drivers/marinedt.c @@ -300,7 +300,7 @@ static WRITE8_HANDLER( marinedt_pf_w ) } -static ADDRESS_MAP_START( marinedt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( marinedt_map, AS_PROGRAM, 8, marinedt_state ) AM_RANGE(0x0000, 0x37ff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x4400, 0x47ff) AM_RAM //unused, vram mirror? @@ -308,7 +308,7 @@ static ADDRESS_MAP_START( marinedt_map, AS_PROGRAM, 8 ) AM_RANGE(0x4c00, 0x4c00) AM_WRITENOP //?? maybe off by one error ADDRESS_MAP_END -static ADDRESS_MAP_START( marinedt_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( marinedt_io_map, AS_IO, 8, marinedt_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW0") //dips coinage AM_RANGE(0x01, 0x01) AM_READ(marinedt_port1_r) //trackball xy muxed diff --git a/src/mame/drivers/mario.c b/src/mame/drivers/mario.c index 6056db34aaf..57793c448fb 100644 --- a/src/mame/drivers/mario.c +++ b/src/mame/drivers/mario.c @@ -133,7 +133,7 @@ static WRITE8_HANDLER( nmi_mask_w ) * *************************************/ -static ADDRESS_MAP_START( mario_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mario_map, AS_PROGRAM, 8, mario_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x7000, 0x73ff) AM_RAM AM_BASE_SIZE_MEMBER(mario_state, m_spriteram, m_spriteram_size) /* physical sprite ram */ @@ -152,7 +152,7 @@ static ADDRESS_MAP_START( mario_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( masao_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( masao_map, AS_PROGRAM, 8, mario_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x7000, 0x73ff) AM_RAM AM_BASE_SIZE_MEMBER(mario_state, m_spriteram, m_spriteram_size) /* physical sprite ram */ @@ -171,7 +171,7 @@ static ADDRESS_MAP_START( masao_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mario_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mario_io_map, AS_IO, 8, mario_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("z80dma", z80dma_r, z80dma_w) /* dma controller */ ADDRESS_MAP_END diff --git a/src/mame/drivers/markham.c b/src/mame/drivers/markham.c index e9737ef6039..59354f7f5ae 100644 --- a/src/mame/drivers/markham.c +++ b/src/mame/drivers/markham.c @@ -21,7 +21,7 @@ static READ8_HANDLER( markham_e004_r ) /****************************************************************************/ -static ADDRESS_MAP_START( markham_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( markham_master_map, AS_PROGRAM, 8, markham_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -45,7 +45,7 @@ static ADDRESS_MAP_START( markham_master_map, AS_PROGRAM, 8 ) AM_RANGE(0xe00e, 0xe00e) AM_WRITE(markham_flipscreen_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( markham_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( markham_slave_map, AS_PROGRAM, 8, markham_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/mastboy.c b/src/mame/drivers/mastboy.c index 9698a1f077e..318f0369f60 100644 --- a/src/mame/drivers/mastboy.c +++ b/src/mame/drivers/mastboy.c @@ -696,7 +696,7 @@ static INTERRUPT_GEN( mastboy_interrupt ) /* Memory Maps */ -static ADDRESS_MAP_START( mastboy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mastboy_map, AS_PROGRAM, 8, mastboy_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // Internal ROM AM_RANGE(0x4000, 0x7fff) AM_ROM // External ROM @@ -739,7 +739,7 @@ static READ8_HANDLER( mastboy_nmi_read ) return 0x00; } -static ADDRESS_MAP_START( mastboy_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mastboy_io_map, AS_IO, 8, mastboy_state ) AM_RANGE(0x38, 0x38) AM_READ(mastboy_port_38_read) AM_RANGE(0x39, 0x39) AM_READ(mastboy_nmi_read) ADDRESS_MAP_END diff --git a/src/mame/drivers/matmania.c b/src/mame/drivers/matmania.c index f73a9d59076..93c3484c1ab 100644 --- a/src/mame/drivers/matmania.c +++ b/src/mame/drivers/matmania.c @@ -65,7 +65,7 @@ static WRITE8_HANDLER( maniach_sh_command_w ) * *************************************/ -static ADDRESS_MAP_START( matmania_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( matmania_map, AS_PROGRAM, 8, matmania_state ) AM_RANGE(0x0000, 0x077f) AM_RAM AM_RANGE(0x0780, 0x07df) AM_WRITEONLY AM_BASE_SIZE_MEMBER(matmania_state, m_spriteram, m_spriteram_size) AM_RANGE(0x1000, 0x13ff) AM_RAM AM_BASE_SIZE_MEMBER(matmania_state, m_videoram2, m_videoram2_size) @@ -82,7 +82,7 @@ static ADDRESS_MAP_START( matmania_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( maniach_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( maniach_map, AS_PROGRAM, 8, matmania_state ) AM_RANGE(0x0000, 0x077f) AM_RAM AM_RANGE(0x0780, 0x07df) AM_RAM AM_BASE_SIZE_MEMBER(matmania_state, m_spriteram, m_spriteram_size) AM_RANGE(0x1000, 0x13ff) AM_RAM AM_BASE_SIZE_MEMBER(matmania_state, m_videoram2, m_videoram2_size) @@ -102,7 +102,7 @@ static ADDRESS_MAP_START( maniach_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( matmania_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( matmania_sound_map, AS_PROGRAM, 8, matmania_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x2002, 0x2003) AM_DEVWRITE("ay2", ay8910_data_address_w) @@ -111,7 +111,7 @@ static ADDRESS_MAP_START( matmania_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( maniach_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( maniach_sound_map, AS_PROGRAM, 8, matmania_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ymsnd", ym3526_w) AM_RANGE(0x2002, 0x2002) AM_DEVWRITE("dac", dac_signed_w) @@ -120,7 +120,7 @@ static ADDRESS_MAP_START( maniach_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( maniach_mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( maniach_mcu_map, AS_PROGRAM, 8, matmania_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(maniach_68705_port_a_r,maniach_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(maniach_68705_port_b_r,maniach_68705_port_b_w) diff --git a/src/mame/drivers/maxaflex.c b/src/mame/drivers/maxaflex.c index 2776246b910..bbb2752e9ee 100644 --- a/src/mame/drivers/maxaflex.c +++ b/src/mame/drivers/maxaflex.c @@ -266,7 +266,7 @@ int atari_input_disabled(running_machine &machine) -static ADDRESS_MAP_START(a600xl_mem, AS_PROGRAM, 8) +static ADDRESS_MAP_START(a600xl_mem, AS_PROGRAM, 8, maxaflex_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM AM_RANGE(0x5000, 0x57ff) AM_ROM AM_REGION("maincpu", 0x5000) /* self test */ AM_RANGE(0x8000, 0xbfff) AM_ROM /* game cartridge */ @@ -280,7 +280,7 @@ static ADDRESS_MAP_START(a600xl_mem, AS_PROGRAM, 8) AM_RANGE(0xd800, 0xffff) AM_ROM /* OS */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_mem, AS_PROGRAM, 8, maxaflex_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READ( mcu_portA_r ) AM_WRITE( mcu_portA_w ) AM_RANGE(0x0001, 0x0001) AM_READ( mcu_portB_r ) AM_WRITE( mcu_portB_w ) diff --git a/src/mame/drivers/maygay1b.c b/src/mame/drivers/maygay1b.c index 31afb14b8b9..ad2e997fce2 100644 --- a/src/mame/drivers/maygay1b.c +++ b/src/mame/drivers/maygay1b.c @@ -845,7 +845,7 @@ static READ8_HANDLER( latch_st_lo ) return 0; } -static ADDRESS_MAP_START( m1_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m1_memmap, AS_PROGRAM, 8, maygay1b_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x2000, 0x2000) AM_WRITE(reel12_w) diff --git a/src/mame/drivers/maygaysw.c b/src/mame/drivers/maygaysw.c index 8bf9c6f3bda..e217f5dceb2 100644 --- a/src/mame/drivers/maygaysw.c +++ b/src/mame/drivers/maygaysw.c @@ -109,7 +109,7 @@ public: -static ADDRESS_MAP_START( maygayew_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( maygayew_map, AS_PROGRAM, 16, maygayew_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_REGION("mainrom",0) AM_RANGE(0x100000, 0x13ffff) AM_ROM AM_REGION("mainrom",0) AM_RANGE(0x200000, 0x23ffff) AM_ROM AM_REGION("mainrom",0) diff --git a/src/mame/drivers/maygayv1.c b/src/mame/drivers/maygayv1.c index 0858651b2ab..19e5f80f658 100644 --- a/src/mame/drivers/maygayv1.c +++ b/src/mame/drivers/maygayv1.c @@ -670,7 +670,7 @@ static WRITE16_HANDLER( vsync_int_ctrl ) cputag_set_input_line(space->machine(), "maincpu", 3, CLEAR_LINE); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, maygayv1_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x100000, 0x17ffff) AM_ROM AM_REGION("maincpu", 0x80000) @@ -762,15 +762,15 @@ static WRITE8_HANDLER( mcu_w ) } -static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_prg, AS_PROGRAM, 8, maygayv1_state ) AM_RANGE(0x0000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_data, AS_DATA, 8 ) +static ADDRESS_MAP_START( sound_data, AS_DATA, 8, maygayv1_state ) AM_RANGE(0x0000, 0xffff) AM_RAM // nothing? ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io, AS_IO, 8, maygayv1_state ) AM_RANGE(0x00, 0xff) AM_READWRITE(mcu_r, mcu_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/mayumi.c b/src/mame/drivers/mayumi.c index 41482b075ea..e55cf19b59b 100644 --- a/src/mame/drivers/mayumi.c +++ b/src/mame/drivers/mayumi.c @@ -135,7 +135,7 @@ static READ8_HANDLER( key_matrix_r ) * *************************************/ -static ADDRESS_MAP_START( mayumi_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mayumi_map, AS_PROGRAM, 8, mayumi_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("nvram") @@ -143,7 +143,7 @@ static ADDRESS_MAP_START( mayumi_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mayumi_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mayumi_io_map, AS_IO, 8, mayumi_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x30, 0x30) AM_READ_PORT("IN0") AM_WRITE(bank_sel_w) AM_RANGE(0xc0, 0xc0) AM_WRITE(input_sel_w) diff --git a/src/mame/drivers/mazerbla.c b/src/mame/drivers/mazerbla.c index 920deed29f8..98ce7e56b60 100644 --- a/src/mame/drivers/mazerbla.c +++ b/src/mame/drivers/mazerbla.c @@ -972,7 +972,7 @@ static WRITE8_HANDLER( sound_nmi_clear_w ) * *************************************/ -static ADDRESS_MAP_START( mazerbla_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mazerbla_map, AS_PROGRAM, 8, mazerbla_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") AM_RANGE(0xd800, 0xd800) AM_READ(cfb_zpu_int_req_clr) @@ -980,7 +980,7 @@ static ADDRESS_MAP_START( mazerbla_map, AS_PROGRAM, 8 ) AM_RANGE(0xe800, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mazerbla_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mazerbla_io_map, AS_IO, 8, mazerbla_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x4c, 0x4f) AM_READWRITE(ls670_1_r, ls670_0_w) AM_RANGE(0x60, 0x60) AM_WRITE(zpu_bcd_decoder_w) @@ -990,19 +990,19 @@ static ADDRESS_MAP_START( mazerbla_io_map, AS_IO, 8 ) AM_RANGE(0x6e, 0x6f) AM_WRITE(zpu_led_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mazerbla_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mazerbla_cpu2_map, AS_PROGRAM, 8, mazerbla_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM /* main RAM (stack) */ AM_RANGE(0x8000, 0x83ff) AM_RAM /* waveform ???*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( mazerbla_cpu2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mazerbla_cpu2_io_map, AS_IO, 8, mazerbla_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(vsb_ls273_audio_control_w) AM_RANGE(0x80, 0x83) AM_READWRITE(ls670_0_r, ls670_1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mazerbla_cpu3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mazerbla_cpu3_map, AS_PROGRAM, 8, mazerbla_state ) AM_RANGE(0x0000, 0x37ff) AM_ROM AM_RANGE(0x3800, 0x3fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank1") /* GFX roms */ @@ -1013,7 +1013,7 @@ static ADDRESS_MAP_START( mazerbla_cpu3_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READ(vcu_set_clr_addr_r) /* palette? LOAD */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mazerbla_cpu3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mazerbla_cpu3_io_map, AS_IO, 8, mazerbla_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_WRITE(cfb_backgnd_color_w) AM_RANGE(0x02, 0x02) AM_READWRITE(cfb_port_02_r, cfb_led_w) /* Read = VCU status ? */ @@ -1029,7 +1029,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( greatgun_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( greatgun_io_map, AS_IO, 8, mazerbla_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x4c, 0x4c) AM_WRITE(main_sound_w) AM_RANGE(0x60, 0x60) AM_WRITE(zpu_bcd_decoder_w) @@ -1040,7 +1040,7 @@ static ADDRESS_MAP_START( greatgun_io_map, AS_IO, 8 ) ADDRESS_MAP_END /* Great Guns has a little different banking layout */ -static ADDRESS_MAP_START( greatgun_cpu3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( greatgun_cpu3_io_map, AS_IO, 8, mazerbla_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP AM_RANGE(0x01, 0x01) AM_WRITE(cfb_backgnd_color_w) @@ -1050,7 +1050,7 @@ static ADDRESS_MAP_START( greatgun_cpu3_io_map, AS_IO, 8 ) AM_RANGE(0x05, 0x05) AM_WRITE(cfb_vbank_w) //visible/writable videopage select? ADDRESS_MAP_END -static ADDRESS_MAP_START( greatgun_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( greatgun_sound_map, AS_PROGRAM, 8, mazerbla_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/mcatadv.c b/src/mame/drivers/mcatadv.c index f1187a5e009..6b8716502b1 100644 --- a/src/mame/drivers/mcatadv.c +++ b/src/mame/drivers/mcatadv.c @@ -172,7 +172,7 @@ static READ16_HANDLER( mcat_wd_r ) } -static ADDRESS_MAP_START( mcatadv_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mcatadv_map, AS_PROGRAM, 16, mcatadv_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM @@ -211,7 +211,7 @@ static WRITE8_HANDLER ( mcatadv_sound_bw_w ) } -static ADDRESS_MAP_START( mcatadv_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcatadv_sound_map, AS_PROGRAM, 8, mcatadv_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // ROM AM_RANGE(0x4000, 0xbfff) AM_ROMBANK("bank1") // ROM AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM @@ -219,19 +219,19 @@ static ADDRESS_MAP_START( mcatadv_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_WRITE(mcatadv_sound_bw_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcatadv_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcatadv_sound_io_map, AS_IO, 8, mcatadv_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x80) AM_READWRITE(soundlatch_r, soundlatch2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( nost_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nost_sound_map, AS_PROGRAM, 8, mcatadv_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // ROM AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( nost_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( nost_sound_io_map, AS_IO, 8, mcatadv_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVWRITE("ymsnd", ym2610_w) AM_RANGE(0x04, 0x07) AM_DEVREAD("ymsnd", ym2610_r) diff --git a/src/mame/drivers/mcr.c b/src/mame/drivers/mcr.c index 76a0116232c..5efd9ab6694 100644 --- a/src/mame/drivers/mcr.c +++ b/src/mame/drivers/mcr.c @@ -636,7 +636,7 @@ static WRITE8_HANDLER( demoderb_op4_w ) *************************************/ /* address map verified from schematics */ -static ADDRESS_MAP_START( cpu_90009_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_90009_map, AS_PROGRAM, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x77ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("nvram") @@ -647,7 +647,7 @@ static ADDRESS_MAP_START( cpu_90009_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* upper I/O map determined by PAL; only SSIO ports are verified from schematics */ -static ADDRESS_MAP_START( cpu_90009_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu_90009_portmap, AS_IO, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) SSIO_INPUT_PORTS @@ -665,7 +665,7 @@ ADDRESS_MAP_END *************************************/ /* address map verified from schematics */ -static ADDRESS_MAP_START( cpu_90010_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_90010_map, AS_PROGRAM, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("nvram") @@ -674,7 +674,7 @@ static ADDRESS_MAP_START( cpu_90010_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* upper I/O map determined by PAL; only SSIO ports are verified from schematics */ -static ADDRESS_MAP_START( cpu_90010_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu_90010_portmap, AS_IO, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) SSIO_INPUT_PORTS @@ -692,7 +692,7 @@ ADDRESS_MAP_END *************************************/ /* address map verified from schematics */ -static ADDRESS_MAP_START( cpu_91490_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_91490_map, AS_PROGRAM, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") @@ -702,7 +702,7 @@ static ADDRESS_MAP_START( cpu_91490_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* upper I/O map determined by PAL; only SSIO ports are verified from schematics */ -static ADDRESS_MAP_START( cpu_91490_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu_91490_portmap, AS_IO, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) SSIO_INPUT_PORTS @@ -720,14 +720,14 @@ ADDRESS_MAP_END *************************************/ /* address map verified from schematics */ -static ADDRESS_MAP_START( ipu_91695_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ipu_91695_map, AS_PROGRAM, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END /* I/O verified from schematics */ -static ADDRESS_MAP_START( ipu_91695_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( ipu_91695_portmap, AS_IO, 8, mcr_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_MIRROR(0xe0) AM_DEVREADWRITE("ipu_pio0", z80pio_cd_ba_r, z80pio_cd_ba_w) diff --git a/src/mame/drivers/mcr3.c b/src/mame/drivers/mcr3.c index 240c9aeaa07..0b404040642 100644 --- a/src/mame/drivers/mcr3.c +++ b/src/mame/drivers/mcr3.c @@ -487,7 +487,7 @@ static READ8_HANDLER( turbotag_kludge_r ) *************************************/ /* address map verified from schematics */ -static ADDRESS_MAP_START( mcrmono_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcrmono_map, AS_PROGRAM, 8, mcr3_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") @@ -499,7 +499,7 @@ static ADDRESS_MAP_START( mcrmono_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* I/O map verified from schematics */ -static ADDRESS_MAP_START( mcrmono_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mcrmono_portmap, AS_IO, 8, mcr3_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_MIRROR(0x78) AM_READ_PORT("MONO.IP0") @@ -521,7 +521,7 @@ ADDRESS_MAP_END *************************************/ /* address map verified from schematics */ -static ADDRESS_MAP_START( spyhunt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spyhunt_map, AS_PROGRAM, 8, mcr3_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(spyhunt_videoram_w) AM_BASE_MEMBER(mcr3_state, m_videoram) @@ -532,7 +532,7 @@ static ADDRESS_MAP_START( spyhunt_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* upper I/O map determined by PAL; only SSIO ports and scroll registers are verified from schematics */ -static ADDRESS_MAP_START( spyhunt_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( spyhunt_portmap, AS_IO, 8, mcr3_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) SSIO_INPUT_PORTS diff --git a/src/mame/drivers/mcr68.c b/src/mame/drivers/mcr68.c index 5c41fe05491..6ff8fe90eb4 100644 --- a/src/mame/drivers/mcr68.c +++ b/src/mame/drivers/mcr68.c @@ -306,7 +306,7 @@ static READ16_HANDLER( trisport_port_1_r ) * *************************************/ -static ADDRESS_MAP_START( mcr68_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mcr68_map, AS_PROGRAM, 16, mcr68_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM @@ -330,7 +330,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( zwackery_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( zwackery_map, AS_PROGRAM, 16, mcr68_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x037fff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM @@ -352,7 +352,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( pigskin_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pigskin_map, AS_PROGRAM, 16, mcr68_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM @@ -377,7 +377,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( trisport_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( trisport_map, AS_PROGRAM, 16, mcr68_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM diff --git a/src/mame/drivers/meadows.c b/src/mame/drivers/meadows.c index 4c3013f2d5e..324cb0fb17c 100644 --- a/src/mame/drivers/meadows.c +++ b/src/mame/drivers/meadows.c @@ -339,7 +339,7 @@ static PALETTE_INIT( meadows ) * *************************************/ -static ADDRESS_MAP_START( meadows_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( meadows_main_map, AS_PROGRAM, 8, meadows_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("INPUTS") AM_RANGE(0x0c01, 0x0c01) AM_READ_PORT("STICK") @@ -352,7 +352,7 @@ static ADDRESS_MAP_START( meadows_main_map, AS_PROGRAM, 8 ) AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(meadows_videoram_w) AM_BASE_MEMBER(meadows_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( bowl3d_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bowl3d_main_map, AS_PROGRAM, 8, meadows_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("INPUTS1") AM_RANGE(0x0c01, 0x0c01) AM_READ_PORT("INPUTS2") @@ -365,7 +365,7 @@ static ADDRESS_MAP_START( bowl3d_main_map, AS_PROGRAM, 8 ) AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(meadows_videoram_w) AM_BASE_MEMBER(meadows_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( minferno_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( minferno_main_map, AS_PROGRAM, 8, meadows_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x1c00, 0x1eff) AM_RAM_WRITE(meadows_videoram_w) AM_BASE_MEMBER(meadows_state, m_videoram) AM_RANGE(0x1f00, 0x1f00) AM_READ_PORT("JOY1") @@ -378,7 +378,7 @@ static ADDRESS_MAP_START( minferno_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( minferno_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( minferno_io_map, AS_IO, 8, meadows_state ) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ_PORT("DSW2") ADDRESS_MAP_END @@ -390,7 +390,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, meadows_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x0c00, 0x0c03) AM_READWRITE(audio_hardware_r, audio_hardware_w) AM_RANGE(0x0e00, 0x0eff) AM_RAM diff --git a/src/mame/drivers/mediagx.c b/src/mame/drivers/mediagx.c index 46c06ea73fb..f60505395df 100644 --- a/src/mame/drivers/mediagx.c +++ b/src/mame/drivers/mediagx.c @@ -907,7 +907,7 @@ static I8237_INTERFACE( dma8237_2_config ) /*****************************************************************************/ -static ADDRESS_MAP_START( mediagx_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( mediagx_map, AS_PROGRAM, 32, mediagx_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_BASE_MEMBER(mediagx_state, m_main_ram) AM_RANGE(0x000a0000, 0x000affff) AM_RAM AM_RANGE(0x000b0000, 0x000b7fff) AM_RAM AM_BASE_MEMBER(mediagx_state, m_cga_ram) @@ -920,7 +920,7 @@ static ADDRESS_MAP_START( mediagx_map, AS_PROGRAM, 32 ) AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("bios", 0) /* System BIOS */ ADDRESS_MAP_END -static ADDRESS_MAP_START(mediagx_io, AS_IO, 32) +static ADDRESS_MAP_START(mediagx_io, AS_IO, 32, mediagx_state ) AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", i8237_r, i8237_w, 0xffffffff) AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_master", io20_r, io20_w, 0xffffffff) AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) @@ -1116,7 +1116,7 @@ static const struct pit8253_config mediagx_pit8254_config = } }; -static ADDRESS_MAP_START( ramdac_map, AS_0, 8 ) +static ADDRESS_MAP_START( ramdac_map, AS_0, 8, mediagx_state ) AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE_MODERN("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/megaplay.c b/src/mame/drivers/megaplay.c index 1017ad3f4c2..14283e31605 100644 --- a/src/mame/drivers/megaplay.c +++ b/src/mame/drivers/megaplay.c @@ -579,7 +579,7 @@ static WRITE8_HANDLER( megaplay_game_w ) state->m_mp_bios_bank_addr = ((state->m_mp_bios_bank_addr >> 1) | (data << 23)) & 0xff8000; } -static ADDRESS_MAP_START( megaplay_bios_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( megaplay_bios_map, AS_PROGRAM, 8, mplay_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_RAM AM_RANGE(0x5000, 0x5fff) AM_RAM @@ -600,7 +600,7 @@ static ADDRESS_MAP_START( megaplay_bios_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* basically from src/drivers/segasyse.c */ -static ADDRESS_MAP_START( megaplay_bios_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( megaplay_bios_io_map, AS_IO, 8, mplay_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("sn2", sn76496_w) /* SN76489 */ AM_RANGE(0xbe, 0xbe) AM_READWRITE(sms_vdp_data_r, sms_vdp_data_w) /* VDP */ diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c index 849b65a1c2a..c4b1d33190d 100644 --- a/src/mame/drivers/megasys1.c +++ b/src/mame/drivers/megasys1.c @@ -171,7 +171,7 @@ static TIMER_DEVICE_CALLBACK( megasys1A_scanline ) cputag_set_input_line(timer.machine(), "maincpu", 3, HOLD_LINE); } -static ADDRESS_MAP_START( megasys1A_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1A_map, AS_PROGRAM, 16, megasys1_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM") @@ -255,7 +255,7 @@ static WRITE16_HANDLER( ip_select_w ) } -static ADDRESS_MAP_START( megasys1B_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1B_map, AS_PROGRAM, 16, megasys1_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x044000, 0x0443ff) AM_RAM_WRITE(megasys1_vregs_A_w) AM_BASE_MEMBER(megasys1_state, m_vregs) @@ -278,7 +278,7 @@ ADDRESS_MAP_END #define INTERRUPT_NUM_C INTERRUPT_NUM_B #define interrupt_C interrupt_B -static ADDRESS_MAP_START( megasys1C_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1C_map, AS_PROGRAM, 16, megasys1_state ) ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_READWRITE(megasys1_vregs_C_r,megasys1_vregs_C_w) AM_BASE_MEMBER(megasys1_state, m_vregs) @@ -301,7 +301,7 @@ static INTERRUPT_GEN( megasys1D_irq ) device_set_input_line(device, 2, HOLD_LINE); } -static ADDRESS_MAP_START( megasys1D_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1D_map, AS_PROGRAM, 16, megasys1_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0c0000, 0x0c9fff) AM_RAM_WRITE(megasys1_vregs_D_w) AM_BASE_MEMBER(megasys1_state, m_vregs) AM_RANGE(0x0ca000, 0x0cbfff) AM_RAM AM_BASE_MEMBER(megasys1_state, m_objectram) @@ -395,7 +395,7 @@ static READ8_DEVICE_HANDLER( oki_status_r ) ***************************************************************************/ -static ADDRESS_MAP_START( megasys1A_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1A_sound_map, AS_PROGRAM, 16, megasys1_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x040001) AM_READ(soundlatch_word_r) AM_RANGE(0x060000, 0x060001) AM_WRITE(soundlatch2_word_w) // to main cpu @@ -413,7 +413,7 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( megasys1B_sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megasys1B_sound_map, AS_PROGRAM, 16, megasys1_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x040001) AM_READWRITE(soundlatch_word_r,soundlatch2_word_w) /* from/to main cpu */ AM_RANGE(0x060000, 0x060001) AM_READWRITE(soundlatch_word_r,soundlatch2_word_w) /* from/to main cpu */ @@ -432,14 +432,14 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, megasys1_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) AM_RANGE(0xf000, 0xf000) AM_WRITENOP /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_sound_io_map, AS_IO, 8, megasys1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/megatech.c b/src/mame/drivers/megatech.c index 3cc34a13db8..4b0cf8b5b41 100644 --- a/src/mame/drivers/megatech.c +++ b/src/mame/drivers/megatech.c @@ -371,7 +371,7 @@ static WRITE8_HANDLER( megatech_banked_ram_w ) -static ADDRESS_MAP_START( megatech_bios_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( megatech_bios_map, AS_PROGRAM, 8, mtech_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM // from bios rom (0x0000-0x2fff populated in ROM) AM_RANGE(0x3000, 0x3fff) AM_READWRITE(megatech_banked_ram_r, megatech_banked_ram_w) // copies instruction data here at startup, must be banked AM_RANGE(0x4000, 0x5fff) AM_RAM // plain ram? @@ -408,7 +408,7 @@ static WRITE8_HANDLER (megatech_bios_port_7f_w) -static ADDRESS_MAP_START( megatech_bios_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( megatech_bios_portmap, AS_IO, 8, mtech_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x3f, 0x3f) AM_WRITE(megatech_bios_port_ctrl_w) diff --git a/src/mame/drivers/megazone.c b/src/mame/drivers/megazone.c index 553106d4bfb..aecaed3d043 100644 --- a/src/mame/drivers/megazone.c +++ b/src/mame/drivers/megazone.c @@ -84,7 +84,7 @@ static WRITE8_HANDLER( irq_mask_w ) } -static ADDRESS_MAP_START( megazone_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( megazone_map, AS_PROGRAM, 8, megazone_state ) AM_RANGE(0x0000, 0x0001) AM_WRITE(megazone_coin_counter_w) /* coin counter 2, coin counter 1 */ AM_RANGE(0x0005, 0x0005) AM_WRITE(megazone_flipscreen_w) AM_RANGE(0x0007, 0x0007) AM_WRITE(irq_mask_w) @@ -100,7 +100,7 @@ static ADDRESS_MAP_START( megazone_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM /* 4000->5FFF is a debug rom */ ADDRESS_MAP_END -static ADDRESS_MAP_START( megazone_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( megazone_sound_map, AS_PROGRAM, 8, megazone_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x2000) AM_WRITE(megazone_i8039_irq_w) /* START line. Interrupts 8039 */ AM_RANGE(0x4000, 0x4000) AM_WRITE(soundlatch_w) /* CODE line. Command Interrupts 8039 */ @@ -115,18 +115,18 @@ static ADDRESS_MAP_START( megazone_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( megazone_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( megazone_sound_io_map, AS_IO, 8, megazone_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0x00, 0x02) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02, 0x02) AM_DEVWRITE("aysnd", ay8910_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( megazone_i8039_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( megazone_i8039_map, AS_PROGRAM, 8, megazone_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( megazone_i8039_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( megazone_i8039_io_map, AS_IO, 8, megazone_state ) AM_RANGE(0x00, 0xff) AM_READ(soundlatch_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_and_status_w) diff --git a/src/mame/drivers/meijinsn.c b/src/mame/drivers/meijinsn.c index e37829a24b4..2f78b679c1f 100644 --- a/src/mame/drivers/meijinsn.c +++ b/src/mame/drivers/meijinsn.c @@ -169,7 +169,7 @@ static READ16_HANDLER( alpha_mcu_r ) -static ADDRESS_MAP_START( meijinsn_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( meijinsn_map, AS_PROGRAM, 16, meijinsn_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080e00, 0x080fff) AM_READ(alpha_mcu_r) AM_WRITENOP AM_RANGE(0x100000, 0x107fff) AM_RAM AM_BASE_MEMBER(meijinsn_state, m_videoram) @@ -180,12 +180,12 @@ static ADDRESS_MAP_START( meijinsn_map, AS_PROGRAM, 16 ) AM_RANGE(0x1a0000, 0x1a0001) AM_READ_PORT("P1") AM_WRITE(sound_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( meijinsn_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( meijinsn_sound_map, AS_PROGRAM, 8, meijinsn_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( meijinsn_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( meijinsn_sound_io_map, AS_IO, 8, meijinsn_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x01, 0x01) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/merit.c b/src/mame/drivers/merit.c index 344c984540a..5eea0087546 100644 --- a/src/mame/drivers/merit.c +++ b/src/mame/drivers/merit.c @@ -349,7 +349,7 @@ static CUSTOM_INPUT(rndbit_r) return field.machine().rand(); } -static ADDRESS_MAP_START( pitboss_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pitboss_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0xa000, 0xa003) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -361,7 +361,7 @@ static ADDRESS_MAP_START( pitboss_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( casino5_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( casino5_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank2") @@ -377,7 +377,7 @@ static ADDRESS_MAP_START( casino5_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bigappg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bigappg_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xc004, 0xc007) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) @@ -389,7 +389,7 @@ static ADDRESS_MAP_START( bigappg_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dodge_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dodge_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xc004, 0xc007) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -406,7 +406,7 @@ ADDRESS_MAP_END * ==> mirror 1DF3 & ~effective_addr_lines * */ -static ADDRESS_MAP_START( trvwhiz_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( trvwhiz_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4c00, 0x4cff) AM_READWRITE(questions_r, high_offset_w) AM_RANGE(0x5400, 0x54ff) AM_WRITE(low_offset_w) @@ -421,13 +421,13 @@ static ADDRESS_MAP_START( trvwhiz_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( trvwhiz_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( trvwhiz_io_map, AS_IO, 8, merit_state ) AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0x8100, 0x8100) AM_DEVWRITE("aysnd", ay8910_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( phrcraze_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( phrcraze_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_RAM AM_RANGE(0xc008, 0xc00b) AM_MIRROR(0x1df0) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) @@ -442,13 +442,13 @@ static ADDRESS_MAP_START( phrcraze_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( phrcraze_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( phrcraze_io_map, AS_IO, 8, merit_state ) AM_RANGE(0xc004, 0xc004) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0xc104, 0xc104) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8910_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( tictac_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tictac_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM AM_RANGE(0xc004, 0xc007) AM_MIRROR(0x1df0) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -463,13 +463,13 @@ static ADDRESS_MAP_START( tictac_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( tictac_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tictac_io_map, AS_IO, 8, merit_state ) AM_RANGE(0xc00c, 0xc00c) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0xc10c, 0xc10c) AM_MIRROR(0x1cf3) AM_DEVWRITE("aysnd", ay8910_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( trvwhziv_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( trvwhziv_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_RAM AM_RANGE(0xc004, 0xc007) AM_MIRROR(0x1df0) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -484,7 +484,7 @@ static ADDRESS_MAP_START( trvwhziv_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dtrvwz5_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dtrvwz5_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xb000, 0xb0ff) AM_ROM /* protection? code jumps here */ @@ -500,7 +500,7 @@ static ADDRESS_MAP_START( dtrvwz5_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_READWRITE(palette_r, palette_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( couple_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( couple_map, AS_PROGRAM, 8, merit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xbfff) AM_RAM AM_BASE_MEMBER(merit_state, m_backup_ram) diff --git a/src/mame/drivers/meritm.c b/src/mame/drivers/meritm.c index d210f33f467..6e6d3e757c0 100644 --- a/src/mame/drivers/meritm.c +++ b/src/mame/drivers/meritm.c @@ -572,12 +572,12 @@ static READ8_HANDLER(meritm_ds1644_r) * *************************************/ -static ADDRESS_MAP_START( meritm_crt250_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( meritm_crt250_map, AS_PROGRAM, 8, meritm_state ) AM_RANGE(0x0000, 0xdfff) AM_ROMBANK("bank1") AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( meritm_crt250_questions_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( meritm_crt250_questions_map, AS_PROGRAM, 8, meritm_state ) AM_RANGE(0x0000, 0xdfff) AM_ROMBANK("bank1") AM_RANGE(0x0000, 0x0000) AM_WRITE(meritm_crt250_questions_lo_w) AM_RANGE(0x0001, 0x0001) AM_WRITE(meritm_crt250_questions_hi_w) @@ -585,7 +585,7 @@ static ADDRESS_MAP_START( meritm_crt250_questions_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( meritm_crt250_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( meritm_crt250_io_map, AS_IO, 8, meritm_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE_MODERN("v9938_0", v9938_device, read, write) AM_RANGE(0x20, 0x23) AM_DEVREADWRITE_MODERN("v9938_1", v9938_device, read, write) @@ -597,7 +597,7 @@ static ADDRESS_MAP_START( meritm_crt250_io_map, AS_IO, 8 ) AM_RANGE(0xff, 0xff) AM_WRITE(meritm_crt250_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( meritm_crt250_crt258_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( meritm_crt250_crt258_io_map, AS_IO, 8, meritm_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE_MODERN("v9938_0", v9938_device, read, write) AM_RANGE(0x20, 0x23) AM_DEVREADWRITE_MODERN("v9938_1", v9938_device, read, write) @@ -610,13 +610,13 @@ static ADDRESS_MAP_START( meritm_crt250_crt258_io_map, AS_IO, 8 ) AM_RANGE(0xff, 0xff) AM_WRITE(meritm_crt250_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( meritm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( meritm_map, AS_PROGRAM, 8, meritm_state ) AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0xdfff) AM_ROMBANK("bank2") AM_RANGE(0xe000, 0xffff) AM_RAMBANK("bank3") AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( meritm_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( meritm_io_map, AS_IO, 8, meritm_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(meritm_psd_a15_w) AM_RANGE(0x01, 0x01) AM_WRITE(watchdog_reset_w) diff --git a/src/mame/drivers/mermaid.c b/src/mame/drivers/mermaid.c index 7b73071465d..b861191511d 100644 --- a/src/mame/drivers/mermaid.c +++ b/src/mame/drivers/mermaid.c @@ -146,7 +146,7 @@ static WRITE8_HANDLER( nmi_mask_w ) /* Memory Map */ -static ADDRESS_MAP_START( mermaid_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mermaid_map, AS_PROGRAM, 8, mermaid_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xcbff) AM_RAM_WRITE(mermaid_videoram2_w) AM_BASE_MEMBER(mermaid_state, m_videoram2) @@ -204,7 +204,7 @@ static WRITE8_HANDLER( rougien_sample_playback_w ) state->m_adpcm_play_reg = data & 1; } -static ADDRESS_MAP_START( rougien_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rougien_map, AS_PROGRAM, 8, mermaid_state ) AM_RANGE(0xe002, 0xe002) AM_WRITE(rougien_sample_playback_w) AM_RANGE(0xe802, 0xe802) AM_WRITE(rougien_sample_rom_hi_w) AM_RANGE(0xe803, 0xe803) AM_WRITE(rougien_sample_rom_lo_w) diff --git a/src/mame/drivers/metalmx.c b/src/mame/drivers/metalmx.c index 2f1a50c1455..9e78ab086c1 100644 --- a/src/mame/drivers/metalmx.c +++ b/src/mame/drivers/metalmx.c @@ -527,7 +527,7 @@ static WRITE32_HANDLER( timer_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, metalmx_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x3fffff) AM_ROM AM_RANGE(0x400000, 0x4000ff) AM_READWRITE(host_gsp_r, host_gsp_w) @@ -559,11 +559,11 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( adsp_program_map, AS_PROGRAM, 32, metalmx_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE_MEMBER(metalmx_state, m_adsp_internal_program_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( adsp_data_map, AS_DATA, 16, metalmx_state ) AM_RANGE(0x3800, 0x39ff) AM_RAM AM_RANGE(0x2000, 0x2007) AM_RAM AM_RANGE(0x3fe0, 0x3fff) AM_RAM // TODO: CPU control registers @@ -576,7 +576,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( gsp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gsp_map, AS_PROGRAM, 16, metalmx_state ) AM_RANGE(0x88800000, 0x8880000f) AM_RAM /* ? */ AM_RANGE(0x88c00000, 0x88c0000f) AM_RAM /* ? */ AM_RANGE(0xc0000000, 0xc00003ff) AM_READWRITE(tms34020_io_register_r, tms34020_io_register_w) @@ -591,7 +591,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsp32c_1_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dsp32c_1_map, AS_PROGRAM, 32, metalmx_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_RAM AM_RANGE(0x600000, 0x67ffff) AM_RAM @@ -608,7 +608,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( dsp32c_2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dsp32c_2_map, AS_PROGRAM, 32, metalmx_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_RAM AM_RANGE(0x600000, 0x67ffff) AM_RAM diff --git a/src/mame/drivers/metlclsh.c b/src/mame/drivers/metlclsh.c index b71640d9dab..46032f9f526 100644 --- a/src/mame/drivers/metlclsh.c +++ b/src/mame/drivers/metlclsh.c @@ -56,7 +56,7 @@ static WRITE8_HANDLER( metlclsh_ack_nmi ) device_set_input_line(state->m_maincpu, INPUT_LINE_NMI, CLEAR_LINE); } -static ADDRESS_MAP_START( metlclsh_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( metlclsh_master_map, AS_PROGRAM, 8, metlclsh_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1") AM_RANGE(0xa000, 0xbfff) AM_ROM @@ -106,7 +106,7 @@ static WRITE8_HANDLER( metlclsh_flipscreen_w ) flip_screen_set(space->machine(), data & 1); } -static ADDRESS_MAP_START( metlclsh_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( metlclsh_slave_map, AS_PROGRAM, 8, metlclsh_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_WRITE(metlclsh_gfxbank_w) // bg tiles bank diff --git a/src/mame/drivers/metro.c b/src/mame/drivers/metro.c index 53857dd1efe..208ea365fb6 100644 --- a/src/mame/drivers/metro.c +++ b/src/mame/drivers/metro.c @@ -823,14 +823,14 @@ static WRITE16_HANDLER( metro_blitter_w ) */ -static ADDRESS_MAP_START( metro_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( metro_sound_map, AS_PROGRAM, 8, metro_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM /* External ROM */ AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") /* External ROM (Banked) */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* External RAM */ AM_RANGE(0xff00, 0xffff) AM_RAM /* Internal RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( metro_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( metro_sound_io_map, AS_IO, 8, metro_state ) AM_RANGE(UPD7810_PORTA, UPD7810_PORTA) AM_READWRITE(metro_porta_r, metro_porta_w) AM_RANGE(UPD7810_PORTB, UPD7810_PORTB) AM_WRITE(metro_portb_w) AM_RANGE(UPD7810_PORTC, UPD7810_PORTC) AM_WRITE(metro_sound_rombank_w) @@ -839,7 +839,7 @@ ADDRESS_MAP_END /*****************/ -static ADDRESS_MAP_START( daitorid_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( daitorid_sound_io_map, AS_IO, 8, metro_state ) AM_RANGE(UPD7810_PORTA, UPD7810_PORTA) AM_READWRITE(metro_porta_r, metro_porta_w) AM_RANGE(UPD7810_PORTB, UPD7810_PORTB) AM_WRITE(daitorid_portb_w) AM_RANGE(UPD7810_PORTC, UPD7810_PORTC) AM_WRITE(daitorid_sound_rombank_w) @@ -881,7 +881,7 @@ static READ16_HANDLER( balcube_dsw_r ) } -static ADDRESS_MAP_START( balcube_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( balcube_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x300001) AM_DEVREAD8("ymf", ymf278b_r, 0x00ff) // Sound @@ -916,7 +916,7 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( daitoa_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( daitoa_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM AM_RANGE(0x400000, 0x400001) AM_DEVREAD8("ymf", ymf278b_r, 0x00ff) // Sound @@ -950,7 +950,7 @@ ADDRESS_MAP_END Bang Bang Ball ***************************************************************************/ -static ADDRESS_MAP_START( bangball_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bangball_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM AM_RANGE(0xf10000, 0xf10fff) AM_RAM // RAM (bug in the ram test routine) @@ -985,7 +985,7 @@ ADDRESS_MAP_END Battle Bubble ***************************************************************************/ -static ADDRESS_MAP_START( batlbubl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( batlbubl_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 AM_RANGE(0x120000, 0x13ffff) AM_RAM_WRITE(metro_vram_1_w) AM_BASE_MEMBER(metro_state, m_vram_1) // Layer 1 @@ -1021,7 +1021,7 @@ ADDRESS_MAP_END Mouse Shooter GoGo ***************************************************************************/ -static ADDRESS_MAP_START( msgogo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( msgogo_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 AM_RANGE(0x120000, 0x13ffff) AM_RAM_WRITE(metro_vram_1_w) AM_BASE_MEMBER(metro_state, m_vram_1) // Layer 1 @@ -1054,7 +1054,7 @@ ADDRESS_MAP_END Daitoride ***************************************************************************/ -static ADDRESS_MAP_START( daitorid_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( daitorid_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x800000, 0x80ffff) AM_RAM // RAM AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1087,7 +1087,7 @@ ADDRESS_MAP_END Dharma Doujou ***************************************************************************/ -static ADDRESS_MAP_START( dharma_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dharma_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // RAM AM_RANGE(0x800000, 0x81ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1134,7 +1134,7 @@ static WRITE16_HANDLER( karatour_vram_0_w ) { metro_vram_0_w(space, KARATOUR_OFF static WRITE16_HANDLER( karatour_vram_1_w ) { metro_vram_1_w(space, KARATOUR_OFFS(offset), data, mem_mask); } static WRITE16_HANDLER( karatour_vram_2_w ) { metro_vram_2_w(space, KARATOUR_OFFS(offset), data, mem_mask); } -static ADDRESS_MAP_START( karatour_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( karatour_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM AM_RANGE(0x400000, 0x400001) AM_READWRITE(metro_soundstatus_r, metro_soundstatus_w) // From Sound CPU @@ -1171,7 +1171,7 @@ ADDRESS_MAP_END /* same limited tilemap access as karatour */ -static ADDRESS_MAP_START( kokushi_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kokushi_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x7fc000, 0x7fffff) AM_RAM // RAM AM_RANGE(0x860000, 0x86ffff) AM_READ(metro_bankedrom_r) // Banked ROM @@ -1203,7 +1203,7 @@ ADDRESS_MAP_END Last Fortress ***************************************************************************/ -static ADDRESS_MAP_START( lastfort_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lastfort_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // RAM AM_RANGE(0x800000, 0x81ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1237,7 +1237,7 @@ ADDRESS_MAP_END /* the German version is halfway between lastfort and ladykill (karatour) memory maps */ /* todo: clean up input reads etc. */ -static ADDRESS_MAP_START( lastforg_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lastforg_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x400000, 0x400001) AM_READWRITE(metro_soundstatus_r, metro_soundstatus_w) // From / To Sound CPU AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN0") // Inputs @@ -1338,7 +1338,7 @@ static WRITE16_DEVICE_HANDLER( gakusai_eeprom_w ) } } -static ADDRESS_MAP_START( gakusai_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gakusai_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM AM_RANGE(0x200000, 0x21ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1375,7 +1375,7 @@ ADDRESS_MAP_END Mahjong Gakuensai 2 ***************************************************************************/ -static ADDRESS_MAP_START( gakusai2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gakusai2_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM AM_RANGE(0x600000, 0x61ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1447,7 +1447,7 @@ static WRITE16_DEVICE_HANDLER( dokyusp_eeprom_reset_w ) } } -static ADDRESS_MAP_START( dokyusp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dokyusp_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM AM_RANGE(0x200000, 0x21ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1484,7 +1484,7 @@ ADDRESS_MAP_END Mahjong Doukyuusei ***************************************************************************/ -static ADDRESS_MAP_START( dokyusei_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dokyusei_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1524,7 +1524,7 @@ ADDRESS_MAP_END Pang Pom's ***************************************************************************/ -static ADDRESS_MAP_START( pangpoms_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pangpoms_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0xc00000, 0xc0ffff) AM_RAM // RAM AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1560,7 +1560,7 @@ ADDRESS_MAP_END Poitto! ***************************************************************************/ -static ADDRESS_MAP_START( poitto_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( poitto_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // RAM AM_RANGE(0xc00000, 0xc1ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1593,7 +1593,7 @@ ADDRESS_MAP_END Sky Alert ***************************************************************************/ -static ADDRESS_MAP_START( skyalert_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( skyalert_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0xc00000, 0xc0ffff) AM_RAM // RAM AM_RANGE(0x800000, 0x81ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1629,7 +1629,7 @@ ADDRESS_MAP_END Pururun ***************************************************************************/ -static ADDRESS_MAP_START( pururun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pururun_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x800000, 0x80ffff) AM_RAM // RAM AM_RANGE(0xc00000, 0xc1ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1662,7 +1662,7 @@ ADDRESS_MAP_END Toride II Adauchi Gaiden ***************************************************************************/ -static ADDRESS_MAP_START( toride2g_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( toride2g_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x400000, 0x4cffff) AM_RAM // RAM (4xc000-4xffff mirrored?) AM_RANGE(0xc00000, 0xc1ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1725,20 +1725,20 @@ static const ym2610_interface blzntrnd_ym2610_interface = blzntrnd_irqhandler }; -static ADDRESS_MAP_START( blzntrnd_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blzntrnd_sound_map, AS_PROGRAM, 8, metro_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( blzntrnd_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( blzntrnd_sound_io_map, AS_IO, 8, metro_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(blzntrnd_sh_bankswitch_w) AM_RANGE(0x40, 0x40) AM_READ(soundlatch_r) AM_WRITENOP AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ymsnd", ym2610_r,ym2610_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( blzntrnd_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blzntrnd_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM // AM_RANGE(0x300000, 0x300001) AM_READNOP // Sound @@ -1783,7 +1783,7 @@ static WRITE16_DEVICE_HANDLER( mouja_sound_rombank_w ) state->m_oki->set_bank_base(((data >> 3) & 0x07) * 0x40000); } -static ADDRESS_MAP_START( mouja_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mouja_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(metro_vram_0_w) AM_BASE_MEMBER(metro_state, m_vram_0) // Layer 0 @@ -1864,7 +1864,7 @@ static WRITE16_HANDLER( vram_2_clr_w ) // H8/3007 CPU -static ADDRESS_MAP_START( puzzlet_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( puzzlet_map, AS_PROGRAM, 16, metro_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x430000, 0x433fff) AM_RAM AM_RANGE(0x470000, 0x47dfff) AM_RAM @@ -1913,7 +1913,7 @@ static WRITE8_HANDLER( puzzlet_portb_w ) // popmessage("PORTB %02x", data); } -static ADDRESS_MAP_START( puzzlet_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( puzzlet_io_map, AS_IO, 8, metro_state ) AM_RANGE(H8_PORT_7, H8_PORT_7) AM_READ_PORT("IN2") AM_RANGE(H8_SERIAL_1, H8_SERIAL_1) AM_READ_PORT("IN0") // coin AM_RANGE(H8_PORT_B, H8_PORT_B) AM_READ_PORT("DSW0") AM_WRITE(puzzlet_portb_w) diff --git a/src/mame/drivers/mexico86.c b/src/mame/drivers/mexico86.c index f195a6c92b3..c5bd3ed37b8 100644 --- a/src/mame/drivers/mexico86.c +++ b/src/mame/drivers/mexico86.c @@ -80,7 +80,7 @@ static READ8_DEVICE_HANDLER( kiki_ym2203_r ) * *************************************/ -static ADDRESS_MAP_START( mexico86_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mexico86_map, AS_PROGRAM, 8, mexico86_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* banked roms */ AM_RANGE(0xc000, 0xe7ff) AM_RAM AM_SHARE("share1") /* shared with sound cpu */ @@ -95,14 +95,14 @@ static ADDRESS_MAP_START( mexico86_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share2") /* communication ram - to connect 4 players's subboard */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mexico86_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mexico86_sound_map, AS_PROGRAM, 8, mexico86_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xa7ff) AM_RAM AM_SHARE("share1") AM_RANGE(0xa800, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", kiki_ym2203_r,ym2203_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mexico86_m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mexico86_m68705_map, AS_PROGRAM, 8, mexico86_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(mexico86_68705_port_a_r,mexico86_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(mexico86_68705_port_b_r,mexico86_68705_port_b_w) @@ -123,7 +123,7 @@ static WRITE8_HANDLER( mexico86_sub_output_w ) /*---- --x- <unknown, always high, irq ack?>*/ } -static ADDRESS_MAP_START( mexico86_sub_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mexico86_sub_cpu_map, AS_PROGRAM, 8, mexico86_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM /* sub cpu ram */ AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share2") /* shared with main */ diff --git a/src/mame/drivers/mgolf.c b/src/mame/drivers/mgolf.c index 610914c975f..7ee8f9a3486 100644 --- a/src/mame/drivers/mgolf.c +++ b/src/mame/drivers/mgolf.c @@ -181,7 +181,7 @@ static WRITE8_HANDLER( mgolf_wram_w ) -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, mgolf_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0040, 0x0040) AM_READ_PORT("40") diff --git a/src/mame/drivers/mhavoc.c b/src/mame/drivers/mhavoc.c index 7fee9f38efc..6b56e93831f 100644 --- a/src/mame/drivers/mhavoc.c +++ b/src/mame/drivers/mhavoc.c @@ -231,7 +231,7 @@ static WRITE8_HANDLER( dual_pokey_w ) * *************************************/ -static ADDRESS_MAP_START( alpha_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( alpha_map, AS_PROGRAM, 8, mhavoc_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x07ff) AM_RAMBANK("bank1") AM_BASE_MEMBER(mhavoc_state, m_zram0) AM_RANGE(0x0800, 0x09ff) AM_RAM @@ -262,7 +262,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( gamma_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gamma_map, AS_PROGRAM, 8, mhavoc_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM /* Program RAM (2K) */ AM_RANGE(0x0800, 0x0fff) AM_RAM AM_MIRROR (0x1800) AM_RANGE(0x2000, 0x203f) AM_READWRITE(quad_pokey_r, quad_pokey_w) /* Quad Pokey read */ @@ -285,7 +285,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( alphaone_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( alphaone_map, AS_PROGRAM, 8, mhavoc_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x07ff) AM_RAMBANK("bank1") AM_BASE_MEMBER(mhavoc_state, m_zram0) AM_RANGE(0x0800, 0x09ff) AM_RAM diff --git a/src/mame/drivers/micro3d.c b/src/mame/drivers/micro3d.c index 0ff82c6afe0..e5c02bbb20a 100644 --- a/src/mame/drivers/micro3d.c +++ b/src/mame/drivers/micro3d.c @@ -196,7 +196,7 @@ INPUT_PORTS_END * *************************************/ -static ADDRESS_MAP_START( hostmem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hostmem, AS_PROGRAM, 16, micro3d_state ) AM_RANGE(0x000000, 0x143fff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_BASE_MEMBER(micro3d_state, m_shared_ram) @@ -220,7 +220,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( vgbmem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vgbmem, AS_PROGRAM, 16, micro3d_state ) AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE_MEMBER(micro3d_state, m_micro3d_sprite_vram) AM_RANGE(0x00800000, 0x00bfffff) AM_RAM AM_RANGE(0x00c00000, 0x00c0000f) AM_READ_PORT("VGB_SW") @@ -242,11 +242,11 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( drmath_prg, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( drmath_prg, AS_PROGRAM, 32, micro3d_state ) AM_RANGE(0x00000000, 0x000fffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( drmath_data, AS_DATA, 32 ) +static ADDRESS_MAP_START( drmath_data, AS_DATA, 32, micro3d_state ) AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("drmath", 0) AM_RANGE(0x00800000, 0x0083ffff) AM_READWRITE(micro3d_shared_r, micro3d_shared_w) AM_RANGE(0x00400000, 0x004fffff) AM_RAM @@ -267,11 +267,11 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( soundmem_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( soundmem_prg, AS_PROGRAM, 8, micro3d_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( soundmem_io, AS_IO, 8 ) +static ADDRESS_MAP_START( soundmem_io, AS_IO, 8, micro3d_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0xfd00, 0xfd01) AM_DEVREADWRITE("ym2151", ym2151_r, ym2151_w) AM_RANGE(0xfe00, 0xfe00) AM_DEVWRITE("upd7759", micro3d_upd7759_w) diff --git a/src/mame/drivers/midas.c b/src/mame/drivers/midas.c index da8a6b6bd62..66b7b9293fd 100644 --- a/src/mame/drivers/midas.c +++ b/src/mame/drivers/midas.c @@ -254,7 +254,7 @@ static WRITE16_HANDLER( livequiz_coin_w ) #endif } -static ADDRESS_MAP_START( livequiz_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( livequiz_map, AS_PROGRAM, 16, midas_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x900000, 0x900001) AM_READ_PORT("DSW_PLAYER1") @@ -331,7 +331,7 @@ static WRITE16_HANDLER( hammer_led_w ) #endif } -static ADDRESS_MAP_START( hammer_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hammer_map, AS_PROGRAM, 16, midas_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x900000, 0x900001) AM_READ_PORT("DSW") diff --git a/src/mame/drivers/midtunit.c b/src/mame/drivers/midtunit.c index d699f099b13..dc4afcd1836 100644 --- a/src/mame/drivers/midtunit.c +++ b/src/mame/drivers/midtunit.c @@ -39,7 +39,7 @@ * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midtunit_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x003fffff) AM_READWRITE(midtunit_vram_r, midtunit_vram_w) AM_RANGE(0x01000000, 0x013fffff) AM_RAM diff --git a/src/mame/drivers/midvunit.c b/src/mame/drivers/midvunit.c index da59b58ba45..d3855a52be5 100644 --- a/src/mame/drivers/midvunit.c +++ b/src/mame/drivers/midvunit.c @@ -475,7 +475,7 @@ static void midvplus_xf1_w(tms3203x_device &device, UINT8 val) * *************************************/ -static ADDRESS_MAP_START( midvunit_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( midvunit_map, AS_PROGRAM, 32, midvunit_state ) AM_RANGE(0x000000, 0x01ffff) AM_RAM AM_BASE_MEMBER(midvunit_state, m_ram_base) AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_RANGE(0x600000, 0x600000) AM_WRITE(midvunit_dma_queue_w) @@ -508,7 +508,7 @@ ADDRESS_MAP_END static const tms3203x_config midvplus_config = { 0, NULL, midvplus_xf1_w }; -static ADDRESS_MAP_START( midvplus_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( midvplus_map, AS_PROGRAM, 32, midvunit_state ) AM_RANGE(0x000000, 0x01ffff) AM_RAM AM_BASE_MEMBER(midvunit_state, m_ram_base) AM_RANGE(0x400000, 0x41ffff) AM_RAM AM_BASE_MEMBER(midvunit_state, m_fastram_base) AM_RANGE(0x600000, 0x600000) AM_WRITE(midvunit_dma_queue_w) diff --git a/src/mame/drivers/midwunit.c b/src/mame/drivers/midwunit.c index d0edeea3f99..b813c701eb0 100644 --- a/src/mame/drivers/midwunit.c +++ b/src/mame/drivers/midwunit.c @@ -102,7 +102,7 @@ Notes: * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midwunit_state ) AM_RANGE(0x00000000, 0x003fffff) AM_READWRITE(midtunit_vram_r, midtunit_vram_w) AM_RANGE(0x01000000, 0x013fffff) AM_RAM AM_RANGE(0x01400000, 0x0145ffff) AM_READWRITE(midwunit_cmos_r, midwunit_cmos_w) AM_SHARE("nvram") diff --git a/src/mame/drivers/midxunit.c b/src/mame/drivers/midxunit.c index 3bc8b968ac3..8db1ff216e1 100644 --- a/src/mame/drivers/midxunit.c +++ b/src/mame/drivers/midxunit.c @@ -98,7 +98,7 @@ There's a separate sound board also, but it wasn't available so is not documente * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midxunit_state ) AM_RANGE(0x00000000, 0x003fffff) AM_READWRITE(midtunit_vram_data_r, midtunit_vram_data_w) AM_RANGE(0x00800000, 0x00bfffff) AM_READWRITE(midtunit_vram_color_r, midtunit_vram_color_w) AM_RANGE(0x20000000, 0x20ffffff) AM_RAM diff --git a/src/mame/drivers/midyunit.c b/src/mame/drivers/midyunit.c index 090ed4e34e5..269c0f2626d 100644 --- a/src/mame/drivers/midyunit.c +++ b/src/mame/drivers/midyunit.c @@ -175,7 +175,7 @@ static CUSTOM_INPUT( adpcm_irq_state_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, midyunit_state ) AM_RANGE(0x00000000, 0x001fffff) AM_READWRITE(midyunit_vram_r, midyunit_vram_w) AM_RANGE(0x01000000, 0x010fffff) AM_RAM AM_RANGE(0x01400000, 0x0140ffff) AM_READWRITE(midyunit_cmos_r, midyunit_cmos_w) @@ -191,7 +191,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( yawdim_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( yawdim_sound_map, AS_PROGRAM, 8, midyunit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x97ff) AM_DEVWRITE("oki", yawdim_oki_bank_w) diff --git a/src/mame/drivers/midzeus.c b/src/mame/drivers/midzeus.c index c1071839e5d..ed25ccefb67 100644 --- a/src/mame/drivers/midzeus.c +++ b/src/mame/drivers/midzeus.c @@ -564,7 +564,7 @@ static READ32_HANDLER( invasn_gun_r ) * *************************************/ -static ADDRESS_MAP_START( zeus_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( zeus_map, AS_PROGRAM, 32, midzeus_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_RAM AM_BASE(&ram_base) AM_RANGE(0x400000, 0x41ffff) AM_RAM @@ -579,7 +579,7 @@ static ADDRESS_MAP_START( zeus_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( zeus2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( zeus2_map, AS_PROGRAM, 32, midzeus_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_RAM AM_BASE(&ram_base) AM_RANGE(0x400000, 0x43ffff) AM_RAM @@ -1118,7 +1118,7 @@ static READ8_HANDLER( PIC16C5X_T0_clk_r ) return 0; } -static ADDRESS_MAP_START( pic_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pic_io_map, AS_IO, 8, midzeus_state ) AM_RANGE(PIC16C5x_T0, PIC16C5x_T0) AM_READ(PIC16C5X_T0_clk_r) ADDRESS_MAP_END diff --git a/src/mame/drivers/mikie.c b/src/mame/drivers/mikie.c index 1c0854eed4e..38434db7866 100644 --- a/src/mame/drivers/mikie.c +++ b/src/mame/drivers/mikie.c @@ -96,7 +96,7 @@ static WRITE8_HANDLER( irq_mask_w ) * *************************************/ -static ADDRESS_MAP_START( mikie_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mikie_map, AS_PROGRAM, 8, mikie_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_WRITE(mikie_coin_counter_w) AM_RANGE(0x2002, 0x2002) AM_WRITE(mikie_sh_irqtrigger_w) @@ -119,7 +119,7 @@ static ADDRESS_MAP_START( mikie_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, mikie_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_WRITENOP // sound command latch diff --git a/src/mame/drivers/mil4000.c b/src/mame/drivers/mil4000.c index 3ba9ff210ae..c39f80f3caa 100644 --- a/src/mame/drivers/mil4000.c +++ b/src/mame/drivers/mil4000.c @@ -270,7 +270,7 @@ static WRITE16_HANDLER( output_w ) // popmessage("%04x\n",data); } -static ADDRESS_MAP_START( mil4000_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mil4000_map, AS_PROGRAM, 16, mil4000_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x500000, 0x503fff) AM_RAM_WRITE(sc0_vram_w) AM_BASE_MEMBER(mil4000_state, m_sc0_vram) // CY62256L-70, U77 AM_RANGE(0x504000, 0x507fff) AM_RAM_WRITE(sc1_vram_w) AM_BASE_MEMBER(mil4000_state, m_sc1_vram) // CY62256L-70, U77 diff --git a/src/mame/drivers/miniboy7.c b/src/mame/drivers/miniboy7.c index 221363417b9..1c3ae897b55 100644 --- a/src/mame/drivers/miniboy7.c +++ b/src/mame/drivers/miniboy7.c @@ -266,7 +266,7 @@ static PALETTE_INIT( miniboy7 ) * Memory Map Information * ***********************************/ -static ADDRESS_MAP_START( miniboy7_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( miniboy7_map, AS_PROGRAM, 8, miniboy7_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") /* battery backed RAM? */ AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(miniboy7_videoram_w) AM_BASE_MEMBER(miniboy7_state, m_videoram) AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(miniboy7_colorram_w) AM_BASE_MEMBER(miniboy7_state, m_colorram) diff --git a/src/mame/drivers/minivadr.c b/src/mame/drivers/minivadr.c index 96aa47db0d0..5c618c32ad9 100644 --- a/src/mame/drivers/minivadr.c +++ b/src/mame/drivers/minivadr.c @@ -58,7 +58,7 @@ static SCREEN_UPDATE_RGB32( minivadr ) } -static ADDRESS_MAP_START( minivadr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( minivadr_map, AS_PROGRAM, 8, minivadr_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_RAM AM_BASE_SIZE_MEMBER(minivadr_state, m_videoram, m_videoram_size) AM_RANGE(0xe008, 0xe008) AM_READ_PORT("INPUTS") AM_WRITENOP // W - ??? diff --git a/src/mame/drivers/mirage.c b/src/mame/drivers/mirage.c index f8de562f95c..052517e40f9 100644 --- a/src/mame/drivers/mirage.c +++ b/src/mame/drivers/mirage.c @@ -131,7 +131,7 @@ static WRITE16_HANDLER( okim0_rombank_w ) state->m_oki_bgm->set_bank_base(0x40000 * (data & 0x7)); } -static ADDRESS_MAP_START( mirage_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mirage_map, AS_PROGRAM, 16, miragemi_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM /* tilemaps */ AM_RANGE(0x100000, 0x101fff) AM_DEVREADWRITE("tilegen1", deco16ic_pf1_data_r, deco16ic_pf1_data_w) // 0x100000 - 0x101fff tested diff --git a/src/mame/drivers/mirax.c b/src/mame/drivers/mirax.c index f7b302b523b..1ce5ac8ae26 100644 --- a/src/mame/drivers/mirax.c +++ b/src/mame/drivers/mirax.c @@ -220,7 +220,7 @@ static WRITE8_HANDLER( coin_lockout_w ) coin_lockout_w(space->machine(), 1,data & 1); } -static ADDRESS_MAP_START( mirax_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mirax_main_map, AS_PROGRAM, 8, mirax_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc800, 0xd7ff) AM_RAM AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_BASE_MEMBER(mirax_state, m_videoram) @@ -239,7 +239,7 @@ static ADDRESS_MAP_START( mirax_main_map, AS_PROGRAM, 8 ) // AM_RANGE(0xf900, 0xf900) //sound cmd mirror? ack? ADDRESS_MAP_END -static ADDRESS_MAP_START( mirax_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mirax_sound_map, AS_PROGRAM, 8, mirax_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/missb2.c b/src/mame/drivers/missb2.c index 9f04970cd75..2d94252ecee 100644 --- a/src/mame/drivers/missb2.c +++ b/src/mame/drivers/missb2.c @@ -156,7 +156,7 @@ static WRITE8_HANDLER( missb2_bg_bank_w ) /* Memory Maps */ -static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, missb2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdcff) AM_RAM AM_BASE_SIZE_MEMBER(missb2_state, m_videoram, m_videoram_size) @@ -179,7 +179,7 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) AM_RANGE(0xff98, 0xff98) AM_WRITENOP // ??? ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 8, missb2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x9000, 0x9fff) AM_ROMBANK("bank2") // ROM data for the background palette ram AM_RANGE(0xa000, 0xafff) AM_ROMBANK("bank3") // ROM data for the background palette ram @@ -194,7 +194,7 @@ ADDRESS_MAP_END // Looks like the original bublbobl code modified to support the OKI M6295. -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, missb2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/missile.c b/src/mame/drivers/missile.c index c4d7bf0ce51..bbedc932ce6 100644 --- a/src/mame/drivers/missile.c +++ b/src/mame/drivers/missile.c @@ -827,7 +827,7 @@ static READ8_HANDLER( missile_r ) *************************************/ /* complete memory map derived from schematics (implemented above) */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, missile_state ) AM_RANGE(0x0000, 0xffff) AM_READWRITE(missile_r, missile_w) AM_BASE_MEMBER(missile_state, m_videoram) ADDRESS_MAP_END diff --git a/src/mame/drivers/mitchell.c b/src/mame/drivers/mitchell.c index 49d73d6b481..a446c636d4a 100644 --- a/src/mame/drivers/mitchell.c +++ b/src/mame/drivers/mitchell.c @@ -302,7 +302,7 @@ static WRITE8_HANDLER( input_w ) * *************************************/ -static ADDRESS_MAP_START( mgakuen_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mgakuen_map, AS_PROGRAM, 8, mitchell_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(mgakuen_paletteram_r, mgakuen_paletteram_w) /* palette RAM */ @@ -312,7 +312,7 @@ static ADDRESS_MAP_START( mgakuen_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_READWRITE(mgakuen_objram_r, mgakuen_objram_w) /* OBJ RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mitchell_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mitchell_map, AS_PROGRAM, 8, mitchell_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(pang_paletteram_r,pang_paletteram_w) /* Banked palette RAM */ @@ -321,7 +321,7 @@ static ADDRESS_MAP_START( mitchell_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM /* Work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mitchell_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mitchell_io_map, AS_IO, 8, mitchell_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(pang_gfxctrl_w) /* Palette bank, layer enable, coin counters, more */ AM_RANGE(0x00, 0x02) AM_READ(input_r) /* The Mahjong games and Block Block need special input treatment */ @@ -338,7 +338,7 @@ static ADDRESS_MAP_START( mitchell_io_map, AS_IO, 8 ) ADDRESS_MAP_END /* spangbl */ -static ADDRESS_MAP_START( spangbl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spangbl_map, AS_PROGRAM, 8, mitchell_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_WRITENOP AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(pang_paletteram_r, pang_paletteram_w) /* Banked palette RAM */ @@ -347,7 +347,7 @@ static ADDRESS_MAP_START( spangbl_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM /* Work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( spangbl_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spangbl_io_map, AS_IO, 8, mitchell_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x02) AM_READ(input_r) AM_RANGE(0x00, 0x00) AM_WRITE(pangbl_gfxctrl_w) /* Palette bank, layer enable, coin counters, more */ @@ -371,13 +371,13 @@ static WRITE8_HANDLER( spangbl_msm5205_data_w ) } #endif -static ADDRESS_MAP_START( spangbl_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spangbl_sound_map, AS_PROGRAM, 8, mitchell_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM // AM_RANGE(0xec00, 0xec00) AM_WRITE( spangbl_msm5205_data_w ) AM_RANGE(0xf000, 0xf3ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( spangbl_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spangbl_sound_io_map, AS_IO, 8, mitchell_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END @@ -389,7 +389,7 @@ static WRITE8_DEVICE_HANDLER( oki_banking_w ) state->m_oki->set_bank_base(0x40000 * (data & 3)); } -static ADDRESS_MAP_START( mstworld_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mstworld_sound_map, AS_PROGRAM, 8, mitchell_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("oki", oki_banking_w) @@ -404,7 +404,7 @@ static WRITE8_HANDLER(mstworld_sound_w) device_set_input_line(state->m_audiocpu, 0, HOLD_LINE); } -static ADDRESS_MAP_START( mstworld_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mstworld_io_map, AS_IO, 8, mitchell_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(mstworld_gfxctrl_w) /* Palette bank, layer enable, coin counters, more */ AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/mjkjidai.c b/src/mame/drivers/mjkjidai.c index 6c7484c3a04..e50d040cb48 100644 --- a/src/mame/drivers/mjkjidai.c +++ b/src/mame/drivers/mjkjidai.c @@ -170,7 +170,7 @@ static NVRAM_HANDLER( mjkjidai ) -static ADDRESS_MAP_START( mjkjidai_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjkjidai_map, AS_PROGRAM, 8, mjkjidai_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -181,7 +181,7 @@ static ADDRESS_MAP_START( mjkjidai_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(mjkjidai_videoram_w) AM_BASE_MEMBER(mjkjidai_state,m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjkjidai_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjkjidai_io_map, AS_IO, 8, mjkjidai_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(keyboard_r) AM_RANGE(0x01, 0x01) AM_READNOP // ??? diff --git a/src/mame/drivers/mjsister.c b/src/mame/drivers/mjsister.c index 9760b7362f3..b10ae7e0a84 100644 --- a/src/mame/drivers/mjsister.c +++ b/src/mame/drivers/mjsister.c @@ -278,13 +278,13 @@ static READ8_HANDLER( mjsister_keys_r ) * *************************************/ -static ADDRESS_MAP_START( mjsister_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjsister_map, AS_PROGRAM, 8, mjsister_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_WRITE(mjsister_videoram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjsister_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjsister_io_map, AS_IO, 8, mjsister_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITENOP /* HD46505? */ AM_RANGE(0x10, 0x10) AM_DEVWRITE("aysnd", ay8910_address_w) diff --git a/src/mame/drivers/mlanding.c b/src/mame/drivers/mlanding.c index a139584be91..9dcd5f75d7d 100644 --- a/src/mame/drivers/mlanding.c +++ b/src/mame/drivers/mlanding.c @@ -451,7 +451,7 @@ static WRITE16_HANDLER( ml_mecha_ram_w ) COMBINE_DATA(state->m_mecha_ram+offset*2); } -static ADDRESS_MAP_START( mlanding_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mlanding_mem, AS_PROGRAM, 16, mlanding_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM @@ -489,7 +489,7 @@ ADDRESS_MAP_END /* Sub CPU Map */ -static ADDRESS_MAP_START( mlanding_sub_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mlanding_sub_mem, AS_PROGRAM, 16, mlanding_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM AM_RANGE(0x050000, 0x0503ff) AM_RAM AM_SHARE("share3") @@ -513,7 +513,7 @@ static WRITE8_HANDLER( ml_msm_start_msb_w ) state->m_adpcm_pos = (state->m_adpcm_pos & 0x00ff00) | ((data & 0x0f)<<16) | 0x20; } -static ADDRESS_MAP_START( mlanding_z80_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mlanding_z80_mem, AS_PROGRAM, 8, mlanding_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM @@ -554,7 +554,7 @@ static READ8_HANDLER( test_r ) } //mecha driver ? -static ADDRESS_MAP_START( mlanding_z80_sub_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mlanding_z80_sub_mem, AS_PROGRAM, 8, mlanding_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(mlanding_state, m_mecha_ram) AM_RANGE(0x8800, 0x8fff) AM_RAM @@ -563,15 +563,15 @@ static ADDRESS_MAP_START( mlanding_z80_sub_mem, AS_PROGRAM, 8 ) AM_RANGE(0x9800, 0x9803) AM_READ(test_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( DSP_map_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( DSP_map_program, AS_PROGRAM, 16, mlanding_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share3") ADDRESS_MAP_END -static ADDRESS_MAP_START( DSP_map_data, AS_DATA, 16 ) +static ADDRESS_MAP_START( DSP_map_data, AS_DATA, 16, mlanding_state ) AM_RANGE(0x0000, 0x1fff) AM_READWRITE(ml_dotram_r,ml_dotram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( DSP_map_io, AS_IO, 16 ) +static ADDRESS_MAP_START( DSP_map_io, AS_IO, 16, mlanding_state ) AM_RANGE(TMS32025_HOLD, TMS32025_HOLD) AM_READ(dsp_HOLD_signal_r) // AM_RANGE(TMS32025_HOLDA, TMS32025_HOLDA) AM_WRITE(dsp_HOLDA_signal_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/model1.c b/src/mame/drivers/model1.c index 0f4700db54c..2c21567509f 100644 --- a/src/mame/drivers/model1.c +++ b/src/mame/drivers/model1.c @@ -869,7 +869,7 @@ static WRITE16_HANDLER( snd_latch_to_68k_w ) device_spin_until_time(&space->device(), attotime::from_usec(40)); } -static ADDRESS_MAP_START( model1_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( model1_mem, AS_PROGRAM, 16, model1_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("bank1") AM_RANGE(0x200000, 0x2fffff) AM_ROM @@ -912,12 +912,12 @@ static ADDRESS_MAP_START( model1_mem, AS_PROGRAM, 16 ) AM_RANGE(0xfc0000, 0xffffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( model1_io, AS_IO, 16 ) +static ADDRESS_MAP_START( model1_io, AS_IO, 16, model1_state ) AM_RANGE(0xd20000, 0xd20003) AM_READ(model1_tgp_copro_ram_r) AM_RANGE(0xd80000, 0xd80003) AM_READ(model1_tgp_copro_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( model1_vr_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( model1_vr_mem, AS_PROGRAM, 16, model1_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("bank1") AM_RANGE(0x200000, 0x2fffff) AM_ROM @@ -960,7 +960,7 @@ static ADDRESS_MAP_START( model1_vr_mem, AS_PROGRAM, 16 ) AM_RANGE(0xfc0000, 0xffffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( model1_vr_io, AS_IO, 16 ) +static ADDRESS_MAP_START( model1_vr_io, AS_IO, 16, model1_state ) AM_RANGE(0xd20000, 0xd20003) AM_READ(model1_vr_tgp_ram_r) AM_RANGE(0xd80000, 0xd80003) AM_READ(model1_vr_tgp_r) ADDRESS_MAP_END @@ -996,7 +996,7 @@ static WRITE16_HANDLER( m1_snd_68k_latch2_w ) { } -static ADDRESS_MAP_START( model1_snd, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( model1_snd, AS_PROGRAM, 16, model1_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0xc20000, 0xc20001) AM_READWRITE( m1_snd_68k_latch_r, m1_snd_68k_latch1_w ) AM_RANGE(0xc20002, 0xc20003) AM_READWRITE( m1_snd_v60_ready_r, m1_snd_68k_latch2_w ) diff --git a/src/mame/drivers/model2.c b/src/mame/drivers/model2.c index 0fd53aab4a5..a2a8b57523c 100644 --- a/src/mame/drivers/model2.c +++ b/src/mame/drivers/model2.c @@ -1352,7 +1352,7 @@ static WRITE32_HANDLER(model2_3d_zclip_w) } /* common map for all Model 2 versions */ -static ADDRESS_MAP_START( model2_base_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( model2_base_mem, AS_PROGRAM, 32, model2_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_WRITENOP AM_RANGE(0x00500000, 0x005fffff) AM_RAM AM_BASE_MEMBER(model2_state, m_workram) @@ -1398,7 +1398,7 @@ static ADDRESS_MAP_START( model2_base_mem, AS_PROGRAM, 32 ) ADDRESS_MAP_END /* original Model 2 overrides */ -static ADDRESS_MAP_START( model2o_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( model2o_mem, AS_PROGRAM, 32, model2_state ) AM_RANGE(0x00200000, 0x0021ffff) AM_RAM AM_RANGE(0x00220000, 0x0023ffff) AM_ROM AM_REGION("maincpu", 0x20000) @@ -1429,7 +1429,7 @@ static ADDRESS_MAP_START( model2o_mem, AS_PROGRAM, 32 ) ADDRESS_MAP_END /* 2A-CRX overrides */ -static ADDRESS_MAP_START( model2a_crx_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( model2a_crx_mem, AS_PROGRAM, 32, model2_state ) AM_RANGE(0x00200000, 0x0023ffff) AM_RAM AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w) @@ -1458,7 +1458,7 @@ static ADDRESS_MAP_START( model2a_crx_mem, AS_PROGRAM, 32 ) ADDRESS_MAP_END /* 2B-CRX overrides */ -static ADDRESS_MAP_START( model2b_crx_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( model2b_crx_mem, AS_PROGRAM, 32, model2_state ) AM_RANGE(0x00200000, 0x0023ffff) AM_RAM AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w) @@ -1493,7 +1493,7 @@ static ADDRESS_MAP_START( model2b_crx_mem, AS_PROGRAM, 32 ) ADDRESS_MAP_END /* 2C-CRX overrides */ -static ADDRESS_MAP_START( model2c_crx_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( model2c_crx_mem, AS_PROGRAM, 32, model2_state ) AM_RANGE(0x00200000, 0x0023ffff) AM_RAM AM_RANGE(0x00804000, 0x00807fff) AM_READWRITE(geo_prg_r, geo_prg_w) @@ -1858,7 +1858,7 @@ static WRITE16_HANDLER( m1_snd_68k_latch2_w ) { } -static ADDRESS_MAP_START( model1_snd, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( model1_snd, AS_PROGRAM, 16, model2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x0bffff) AM_ROM AM_REGION("audiocpu", 0x20000) // mirror of second program ROM AM_RANGE(0xc20000, 0xc20001) AM_READWRITE( m1_snd_68k_latch_r, m1_snd_68k_latch1_w ) @@ -1893,7 +1893,7 @@ static WRITE16_HANDLER( model2snd_ctrl ) } } -static ADDRESS_MAP_START( model2_snd, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( model2_snd, AS_PROGRAM, 16, model2_state ) AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_REGION("audiocpu", 0) AM_BASE_MEMBER(model2_state, m_soundram) AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp", scsp_r, scsp_w) AM_RANGE(0x400000, 0x400001) AM_WRITE(model2snd_ctrl) @@ -1956,7 +1956,7 @@ static WRITE32_HANDLER(copro_sharc_buffer_w) state->m_bufferram[offset & 0x7fff] = data; } -static ADDRESS_MAP_START( copro_sharc_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( copro_sharc_map, AS_DATA, 32, model2_state ) AM_RANGE(0x0400000, 0x0bfffff) AM_READ(copro_sharc_input_fifo_r) AM_RANGE(0x0c00000, 0x13fffff) AM_WRITE(copro_sharc_output_fifo_w) AM_RANGE(0x1400000, 0x1bfffff) AM_READWRITE(copro_sharc_buffer_r, copro_sharc_buffer_w) @@ -1964,7 +1964,7 @@ static ADDRESS_MAP_START( copro_sharc_map, AS_DATA, 32 ) ADDRESS_MAP_END #if 0 -static ADDRESS_MAP_START( geo_sharc_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( geo_sharc_map, AS_DATA, 32, model2_state ) ADDRESS_MAP_END #endif @@ -1983,7 +1983,7 @@ static WRITE32_HANDLER(copro_tgp_buffer_w) state->m_bufferram[offset&0x7fff] = data; } -static ADDRESS_MAP_START( copro_tgp_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( copro_tgp_map, AS_PROGRAM, 32, model2_state ) AM_RANGE(0x00000000, 0x00007fff) AM_RAM AM_BASE_MEMBER(model2_state, m_tgp_program) AM_RANGE(0x00400000, 0x00407fff) AM_READWRITE(copro_tgp_buffer_r, copro_tgp_buffer_w) AM_RANGE(0xff800000, 0xff9fffff) AM_ROM AM_REGION("tgp", 0) @@ -2129,12 +2129,12 @@ static READ8_HANDLER( driveio_port_str_r ) return sega_str[offset]; } -static ADDRESS_MAP_START( drive_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( drive_map, AS_PROGRAM, 8, model2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( drive_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( drive_io_map, AS_IO, 8, model2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP //watchdog AM_RANGE(0x23, 0x23) AM_WRITE(driveio_port_w) diff --git a/src/mame/drivers/model3.c b/src/mame/drivers/model3.c index a5312308780..5fed06a4e5b 100644 --- a/src/mame/drivers/model3.c +++ b/src/mame/drivers/model3.c @@ -1873,7 +1873,7 @@ static WRITE64_HANDLER(daytona2_rombank_w) } } -static ADDRESS_MAP_START( model3_mem, AS_PROGRAM, 64) +static ADDRESS_MAP_START( model3_mem, AS_PROGRAM, 64, model3_state ) AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE_MEMBER(model3_state, m_work_ram) /* work RAM */ AM_RANGE(0x84000000, 0x8400003f) AM_READ( real3d_status_r ) @@ -5083,7 +5083,7 @@ static WRITE16_HANDLER( model3snd_ctrl ) } } -static ADDRESS_MAP_START( model3_snd, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( model3_snd, AS_PROGRAM, 16, model3_state ) AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_REGION("scsp1", 0) AM_BASE_MEMBER(model3_state, m_soundram) AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp1", scsp_r, scsp_w) AM_RANGE(0x200000, 0x27ffff) AM_RAM AM_REGION("scsp2", 0) diff --git a/src/mame/drivers/mogura.c b/src/mame/drivers/mogura.c index 945a97233fd..580945ef85d 100644 --- a/src/mame/drivers/mogura.c +++ b/src/mame/drivers/mogura.c @@ -121,14 +121,14 @@ static WRITE8_HANDLER ( mogura_gfxram_w ) } -static ADDRESS_MAP_START( mogura_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mogura_map, AS_PROGRAM, 8, mogura_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM // main ram AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(mogura_gfxram_w) AM_BASE_MEMBER(mogura_state, m_gfxram) // ram based characters AM_RANGE(0xf000, 0xffff) AM_RAM_WRITE(mogura_tileram_w) AM_BASE_MEMBER(mogura_state, m_tileram) // tilemap ADDRESS_MAP_END -static ADDRESS_MAP_START( mogura_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mogura_io_map, AS_IO, 8, mogura_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP // ?? AM_RANGE(0x08, 0x08) AM_READ_PORT("SYSTEM") diff --git a/src/mame/drivers/mole.c b/src/mame/drivers/mole.c index 514fe72cce7..a8ce94cc9f0 100644 --- a/src/mame/drivers/mole.c +++ b/src/mame/drivers/mole.c @@ -192,7 +192,7 @@ static READ8_HANDLER( mole_protection_r ) * *************************************/ -static ADDRESS_MAP_START( mole_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mole_map, AS_PROGRAM, 8, mole_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0800, 0x08ff) AM_READ(mole_protection_r) AM_RANGE(0x0800, 0x0800) AM_WRITENOP // ??? diff --git a/src/mame/drivers/momoko.c b/src/mame/drivers/momoko.c index 107536779ba..f1b0390bfb3 100644 --- a/src/mame/drivers/momoko.c +++ b/src/mame/drivers/momoko.c @@ -54,7 +54,7 @@ static WRITE8_HANDLER( momoko_bg_read_bank_w ) /****************************************************************************/ -static ADDRESS_MAP_START( momoko_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( momoko_map, AS_PROGRAM, 8, momoko_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd064, 0xd0ff) AM_RAM AM_BASE_SIZE_MEMBER(momoko_state, m_spriteram, m_spriteram_size) @@ -78,7 +78,7 @@ static ADDRESS_MAP_START( momoko_map, AS_PROGRAM, 8 ) AM_RANGE(0xf007, 0xf007) AM_WRITE(momoko_bg_priority_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( momoko_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( momoko_sound_map, AS_PROGRAM, 8, momoko_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITENOP /* unknown */ diff --git a/src/mame/drivers/monzagp.c b/src/mame/drivers/monzagp.c index dfc7f642e7a..6d1a548e046 100644 --- a/src/mame/drivers/monzagp.c +++ b/src/mame/drivers/monzagp.c @@ -111,7 +111,7 @@ static SCREEN_UPDATE_IND16(monzagp) return 0; } -static ADDRESS_MAP_START( monzagp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( monzagp_map, AS_PROGRAM, 8, monzagp_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END @@ -211,7 +211,7 @@ static WRITE8_HANDLER(port3_w) #define I8039_bus 0x120 */ -static ADDRESS_MAP_START( monzagp_io, AS_IO, 8 ) +static ADDRESS_MAP_START( monzagp_io, AS_IO, 8, monzagp_state ) AM_RANGE(0x00, 0xff) AM_READWRITE(rng_r,port_w) AM_RANGE(0x100, 0x100) AM_WRITE(port0_w) AM_RANGE(0x101, 0x101) AM_WRITE(port1_w) diff --git a/src/mame/drivers/moo.c b/src/mame/drivers/moo.c index 48152e00c14..7c2d21fcab2 100644 --- a/src/mame/drivers/moo.c +++ b/src/mame/drivers/moo.c @@ -259,7 +259,7 @@ static WRITE16_DEVICE_HANDLER( moobl_oki_bank_w ) downcast<okim6295_device *>(device)->set_bank_base((data & 0x0f) * 0x40000); } -static ADDRESS_MAP_START( moo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( moo_map, AS_PROGRAM, 16, moo_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE("k056832", k056832_word_w) AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE("k053246", k053246_word_w) @@ -296,7 +296,7 @@ static ADDRESS_MAP_START( moo_map, AS_PROGRAM, 16 ) #endif ADDRESS_MAP_END -static ADDRESS_MAP_START( moobl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( moobl_map, AS_PROGRAM, 16, moo_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x0c0000, 0x0c003f) AM_DEVWRITE("k056832", k056832_word_w) AM_RANGE(0x0c2000, 0x0c2007) AM_DEVWRITE("k053246", k053246_word_w) @@ -322,7 +322,7 @@ static ADDRESS_MAP_START( moobl_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0000, 0x1c1fff) AM_RAM_WRITE(paletteram16_xrgb_word_be_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( bucky_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bucky_map, AS_PROGRAM, 16, moo_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_RANGE(0x090000, 0x09ffff) AM_RAM AM_BASE_MEMBER(moo_state, m_spriteram) /* Sprite RAM */ @@ -361,7 +361,7 @@ static ADDRESS_MAP_START( bucky_map, AS_PROGRAM, 16 ) #endif ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, moo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/mosaic.c b/src/mame/drivers/mosaic.c index 24fa554c2b0..5a54cb9495f 100644 --- a/src/mame/drivers/mosaic.c +++ b/src/mame/drivers/mosaic.c @@ -91,7 +91,7 @@ static READ8_HANDLER( gfire2_protection_r ) -static ADDRESS_MAP_START( mosaic_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mosaic_map, AS_PROGRAM, 8, mosaic_state ) AM_RANGE(0x00000, 0x0ffff) AM_ROM AM_RANGE(0x20000, 0x21fff) AM_RAM AM_RANGE(0x22000, 0x22fff) AM_RAM_WRITE(mosaic_bgvideoram_w) AM_BASE_MEMBER(mosaic_state, m_bgvideoram) @@ -99,7 +99,7 @@ static ADDRESS_MAP_START( mosaic_map, AS_PROGRAM, 8 ) AM_RANGE(0x24000, 0x241ff) AM_RAM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( gfire2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gfire2_map, AS_PROGRAM, 8, mosaic_state ) AM_RANGE(0x00000, 0x0ffff) AM_ROM AM_RANGE(0x10000, 0x17fff) AM_RAM AM_RANGE(0x22000, 0x22fff) AM_RAM_WRITE(mosaic_bgvideoram_w) AM_BASE_MEMBER(mosaic_state, m_bgvideoram) @@ -107,7 +107,7 @@ static ADDRESS_MAP_START( gfire2_map, AS_PROGRAM, 8 ) AM_RANGE(0x24000, 0x241ff) AM_RAM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( mosaic_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mosaic_io_map, AS_IO, 8, mosaic_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x3f) AM_WRITENOP /* Z180 internal registers */ AM_RANGE(0x30, 0x30) AM_READNOP /* Z180 internal registers */ @@ -117,7 +117,7 @@ static ADDRESS_MAP_START( mosaic_io_map, AS_IO, 8 ) AM_RANGE(0x76, 0x76) AM_READ_PORT("P2") ADDRESS_MAP_END -static ADDRESS_MAP_START( gfire2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gfire2_io_map, AS_IO, 8, mosaic_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x3f) AM_WRITENOP /* Z180 internal registers */ AM_RANGE(0x30, 0x30) AM_READNOP /* Z180 internal registers */ diff --git a/src/mame/drivers/mouser.c b/src/mame/drivers/mouser.c index 7877046898e..f876e437c2f 100644 --- a/src/mame/drivers/mouser.c +++ b/src/mame/drivers/mouser.c @@ -65,7 +65,7 @@ static INTERRUPT_GEN( mouser_sound_nmi_assert ) device_set_input_line(device, INPUT_LINE_NMI, ASSERT_LINE); } -static ADDRESS_MAP_START( mouser_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mouser_map, AS_PROGRAM, 8, mouser_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6bff) AM_RAM AM_RANGE(0x8800, 0x88ff) AM_WRITENOP /* unknown */ @@ -81,14 +81,14 @@ static ADDRESS_MAP_START( mouser_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mouser_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mouser_sound_map, AS_PROGRAM, 8, mouser_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READ(mouser_sound_byte_r) AM_RANGE(0x4000, 0x4000) AM_WRITE(mouser_sound_nmi_clear_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mouser_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mouser_sound_io_map, AS_IO, 8, mouser_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x80, 0x81) AM_DEVWRITE("ay2", ay8910_data_address_w) diff --git a/src/mame/drivers/mpoker.c b/src/mame/drivers/mpoker.c index 5a02475f871..a8cb0266c7b 100644 --- a/src/mame/drivers/mpoker.c +++ b/src/mame/drivers/mpoker.c @@ -468,7 +468,7 @@ static WRITE8_HANDLER( outport7_w ) //} */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mpoker_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM // AM_RANGE(0x0158, 0x0158) AM_WRITE (muxed_w) AM_RANGE(0x3800, 0x38ff) AM_RAM AM_SHARE("nvram") /* NVRAM = 2x SCM5101E */ diff --git a/src/mame/drivers/mpu3.c b/src/mame/drivers/mpu3.c index 65368402cc9..dc815f74b4a 100644 --- a/src/mame/drivers/mpu3.c +++ b/src/mame/drivers/mpu3.c @@ -871,7 +871,7 @@ static READ8_HANDLER( mpu3ptm_r ) return ptm2->read(offset >>2); } -static ADDRESS_MAP_START( mpu3_basemap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mpu3_basemap, AS_PROGRAM, 8, mpu3_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8800, 0x881f) AM_READWRITE(mpu3ptm_r, mpu3ptm_w)/* PTM6840 IC2 */ AM_RANGE(0x9000, 0x9003) AM_DEVREADWRITE_MODERN("pia_ic3", pia6821_device, read, write) /* PIA6821 IC3 */ diff --git a/src/mame/drivers/mpu4.c b/src/mame/drivers/mpu4.c index 5ff30afd78e..c400816c1e2 100644 --- a/src/mame/drivers/mpu4.c +++ b/src/mame/drivers/mpu4.c @@ -2908,7 +2908,7 @@ TIMER_DEVICE_CALLBACK( gen_50hz ) update_meters(state);//run at 100Hz to sync with PIAs } -static ADDRESS_MAP_START( mpu4_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mpu4_memmap, AS_PROGRAM, 8, mpu4_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0810) AM_READWRITE(characteriser_r,characteriser_w) AM_RANGE(0x0850, 0x0850) AM_READWRITE(bankswitch_r,bankswitch_w) /* write bank (rom page select) */ diff --git a/src/mame/drivers/mpu4vid.c b/src/mame/drivers/mpu4vid.c index 8e334379b42..cadc1d75250 100644 --- a/src/mame/drivers/mpu4vid.c +++ b/src/mame/drivers/mpu4vid.c @@ -1974,7 +1974,7 @@ static MACHINE_RESET( mpu4_vid ) state->m_chr_value = 0; } -static ADDRESS_MAP_START( mpu4_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mpu4_68k_map, AS_PROGRAM, 16, mpu4_state ) AM_RANGE(0x000000, 0x7fffff) AM_ROM AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_BASE_MEMBER(mpu4_state, m_vid_mainram) // AM_RANGE(0x810000, 0x81ffff) AM_RAM /* ? */ @@ -1990,7 +1990,7 @@ static ADDRESS_MAP_START( mpu4_68k_map, AS_PROGRAM, 16 ) AM_RANGE(0xffd000, 0xffd00f) AM_READWRITE(characteriser16_r, characteriser16_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mpu4oki_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mpu4oki_68k_map, AS_PROGRAM, 16, mpu4_state ) AM_RANGE(0x000000, 0x5fffff) AM_ROM //AM_WRITENOP AM_RANGE(0x600000, 0x63ffff) AM_RAM /* The Mating Game has an extra 256kB RAM on the program card */ // AM_RANGE(0x640000, 0x7fffff) AM_NOP /* Possible bug, reads and writes here */ @@ -2011,7 +2011,7 @@ static ADDRESS_MAP_START( mpu4oki_68k_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* TODO: Fix up MPU4 map*/ -static ADDRESS_MAP_START( mpu4_6809_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mpu4_6809_map, AS_PROGRAM, 8, mpu4_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0800) AM_DEVREADWRITE_MODERN("acia6850_0", acia6850_device, status_read, control_write) AM_RANGE(0x0801, 0x0801) AM_DEVREADWRITE_MODERN("acia6850_0", acia6850_device, data_read, data_write) @@ -2028,7 +2028,7 @@ static ADDRESS_MAP_START( mpu4_6809_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROM AM_REGION("maincpu",0) /* 64k EPROM on board, only this region read */ ADDRESS_MAP_END -static ADDRESS_MAP_START( bwbvid_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bwbvid_68k_map, AS_PROGRAM, 16, mpu4_state ) AM_RANGE(0x000000, 0x7fffff) AM_ROM AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_BASE_MEMBER(mpu4_state, m_vid_mainram) AM_RANGE(0x810000, 0x81ffff) AM_RAM /* ? */ @@ -2045,7 +2045,7 @@ static ADDRESS_MAP_START( bwbvid_68k_map, AS_PROGRAM, 16 ) //AM_RANGE(0xa00004, 0xa0000f) AM_READWRITE(bwb_characteriser16_r, bwb_characteriser16_w)//AM_READWRITE(adpcm_r, adpcm_w) CHR ? ADDRESS_MAP_END -static ADDRESS_MAP_START( bwbvid5_68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bwbvid5_68k_map, AS_PROGRAM, 16, mpu4_state ) AM_RANGE(0x000000, 0x7fffff) AM_ROM AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_BASE_MEMBER(mpu4_state, m_vid_mainram) AM_RANGE(0x810000, 0x81ffff) AM_RAM /* ? */ @@ -2195,7 +2195,7 @@ static const mc6845_interface hd6845_intf = }; -static ADDRESS_MAP_START( dealem_memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dealem_memmap, AS_PROGRAM, 8, mpu4_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) diff --git a/src/mame/drivers/mquake.c b/src/mame/drivers/mquake.c index fa228156e8e..f391e9fc85d 100644 --- a/src/mame/drivers/mquake.c +++ b/src/mame/drivers/mquake.c @@ -93,7 +93,7 @@ static READ8_HANDLER( es5503_sample_r ) return rom[offset + (es5503->get_channel_strobe() * 0x10000)]; } -static ADDRESS_MAP_START( mquake_es5503_map, AS_0, 8 ) +static ADDRESS_MAP_START( mquake_es5503_map, AS_0, 8, amiga_state ) AM_RANGE(0x000000, 0x1ffff) AM_READ(es5503_sample_r) ADDRESS_MAP_END @@ -131,7 +131,7 @@ static WRITE16_HANDLER( coin_chip_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, amiga_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE_MEMBER(amiga_state, m_chip_ram, m_chip_ram_size) AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE(amiga_cia_r, amiga_cia_w) diff --git a/src/mame/drivers/mrdo.c b/src/mame/drivers/mrdo.c index 5e52807dbab..ee5f8216a2c 100644 --- a/src/mame/drivers/mrdo.c +++ b/src/mame/drivers/mrdo.c @@ -40,7 +40,7 @@ static READ8_HANDLER( mrdo_SECRE_r ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mrdo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(mrdo_bgvideoram_w) AM_BASE_MEMBER(mrdo_state, m_bgvideoram) AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(mrdo_fgvideoram_w) AM_BASE_MEMBER(mrdo_state, m_fgvideoram) diff --git a/src/mame/drivers/mrflea.c b/src/mame/drivers/mrflea.c index edee318eb00..f133a1604b8 100644 --- a/src/mame/drivers/mrflea.c +++ b/src/mame/drivers/mrflea.c @@ -166,7 +166,7 @@ static WRITE8_HANDLER( mrflea_data1_w ) * *************************************/ -static ADDRESS_MAP_START( mrflea_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mrflea_master_map, AS_PROGRAM, 8, mrflea_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(mrflea_videoram_w) AM_BASE_MEMBER(mrflea_state, m_videoram) @@ -174,7 +174,7 @@ static ADDRESS_MAP_START( mrflea_master_map, AS_PROGRAM, 8 ) AM_RANGE(0xec00, 0xecff) AM_RAM_WRITE(mrflea_spriteram_w) AM_BASE_MEMBER(mrflea_state, m_spriteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( mrflea_master_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mrflea_master_io_map, AS_IO, 8, mrflea_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog? */ AM_RANGE(0x40, 0x40) AM_WRITE(mrflea_io_w) @@ -185,14 +185,14 @@ static ADDRESS_MAP_START( mrflea_master_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mrflea_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mrflea_slave_map, AS_PROGRAM, 8, mrflea_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x80ff) AM_RAM AM_RANGE(0x9000, 0x905a) AM_RAM /* ? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mrflea_slave_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mrflea_slave_io_map, AS_IO, 8, mrflea_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog */ AM_RANGE(0x10, 0x10) AM_READ(mrflea_interrupt_type_r) AM_WRITENOP /* ? / irq ACK */ diff --git a/src/mame/drivers/mrjong.c b/src/mame/drivers/mrjong.c index 65a489c3751..bf3f252ceea 100644 --- a/src/mame/drivers/mrjong.c +++ b/src/mame/drivers/mrjong.c @@ -67,7 +67,7 @@ static READ8_HANDLER( io_0x03_r ) * *************************************/ -static ADDRESS_MAP_START( mrjong_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mrjong_map, AS_PROGRAM, 8, mrjong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa7ff) AM_RAM @@ -75,7 +75,7 @@ static ADDRESS_MAP_START( mrjong_map, AS_PROGRAM, 8 ) AM_RANGE(0xe400, 0xe7ff) AM_RAM_WRITE(mrjong_colorram_w) AM_BASE_MEMBER(mrjong_state, m_colorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( mrjong_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mrjong_io_map, AS_IO, 8, mrjong_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P2") AM_WRITE(mrjong_flipscreen_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76496_w) diff --git a/src/mame/drivers/ms32.c b/src/mame/drivers/ms32.c index ea87c292d3f..cc26aeae9d6 100644 --- a/src/mame/drivers/ms32.c +++ b/src/mame/drivers/ms32.c @@ -354,7 +354,7 @@ static WRITE32_HANDLER( pip_w ) } -static ADDRESS_MAP_START( ms32_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ms32_map, AS_PROGRAM, 32, ms32_state ) /* RAM areas verified by testing on real hw - usually accessed at the 0xfc000000 + mirror */ AM_RANGE(0xc0000000, 0xc0007fff) AM_READWRITE8 (ms32_nvram_r8, ms32_nvram_w8, 0x000000ff) AM_MIRROR(0x3c1fe000) // nvram is 8-bit wide, 0x2000 in size */ /* AM_RANGE(0xc0008000, 0xc01fffff) // mirrors of nvramram, handled above */ @@ -422,7 +422,7 @@ static WRITE32_HANDLER( ms32_irq5_guess_w ) irq_raise(space->machine(), 5); } -static ADDRESS_MAP_START( f1superb_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( f1superb_map, AS_PROGRAM, 32, ms32_state ) AM_RANGE(0xfd0e0000, 0xfd0e0003) AM_READ(ms32_read_inputs3) AM_RANGE(0xfce00004, 0xfce00023) AM_RAM // regs? @@ -1384,7 +1384,7 @@ static WRITE8_HANDLER( to_main_w ) irq_raise(space->machine(), 1); } -static ADDRESS_MAP_START( ms32_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ms32_sound_map, AS_PROGRAM, 8, ms32_state ) AM_RANGE(0x0000, 0x3eff) AM_ROM AM_RANGE(0x3f00, 0x3f0f) AM_DEVREADWRITE("ymf", ymf271_r,ymf271_w) AM_RANGE(0x3f10, 0x3f10) AM_READWRITE(latch_r,to_main_w) diff --git a/src/mame/drivers/msisaac.c b/src/mame/drivers/msisaac.c index ea1065a653b..9e2dcc048de 100644 --- a/src/mame/drivers/msisaac.c +++ b/src/mame/drivers/msisaac.c @@ -175,7 +175,7 @@ static WRITE8_HANDLER( msisaac_mcu_w ) #endif } -static ADDRESS_MAP_START( msisaac_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( msisaac_map, AS_PROGRAM, 8, msisaac_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_RANGE(0xe800, 0xefff) AM_RAM_WRITE(paletteram_xxxxRRRRGGGGBBBB_le_w) AM_BASE_GENERIC(paletteram) @@ -264,7 +264,7 @@ static WRITE8_HANDLER( sound_control_1_w ) //popmessage("SND1 0=%2x 1=%2x", state->m_snd_ctrl0, state->m_snd_ctrl1); } -static ADDRESS_MAP_START( msisaac_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( msisaac_sound_map, AS_PROGRAM, 8, msisaac_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_address_data_w) diff --git a/src/mame/drivers/mugsmash.c b/src/mame/drivers/mugsmash.c index f63ca213a1a..3d9c1cd043e 100644 --- a/src/mame/drivers/mugsmash.c +++ b/src/mame/drivers/mugsmash.c @@ -172,7 +172,7 @@ static READ16_HANDLER ( mugsmash_input_ports_r ) } #endif -static ADDRESS_MAP_START( mugsmash_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mugsmash_map, AS_PROGRAM, 16, mugsmash_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(mugsmash_videoram1_w) AM_BASE_MEMBER(mugsmash_state, m_videoram1) AM_RANGE(0x082000, 0x082fff) AM_RAM_WRITE(mugsmash_videoram2_w) AM_BASE_MEMBER(mugsmash_state, m_videoram2) @@ -192,7 +192,7 @@ static ADDRESS_MAP_START( mugsmash_map, AS_PROGRAM, 16 ) #endif ADDRESS_MAP_END -static ADDRESS_MAP_START( mugsmash_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mugsmash_sound_map, AS_PROGRAM, 8, mugsmash_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) diff --git a/src/mame/drivers/multfish.c b/src/mame/drivers/multfish.c index 7d47d83b13e..7b82d79c083 100644 --- a/src/mame/drivers/multfish.c +++ b/src/mame/drivers/multfish.c @@ -668,7 +668,7 @@ DRIVER_INIT( lhauntent ) ent_decode(machine, 0x22, 0x44, 0x44, 0xbb, 0x24240); } -static ADDRESS_MAP_START( multfish_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( multfish_map, AS_PROGRAM, 8, multfish_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITE(multfish_vid_w) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_DEVREADWRITE("m48t35", multfish_timekeeper_r, multfish_timekeeper_w) @@ -902,7 +902,7 @@ static WRITE8_HANDLER( multfish_dispenable_w ) state->m_disp_enable = data; } -static ADDRESS_MAP_START( multfish_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( multfish_portmap, AS_IO, 8, multfish_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_READ_PORT("IN0") AM_RANGE(0x11, 0x11) AM_READ_PORT("IN1") @@ -958,7 +958,7 @@ static ADDRESS_MAP_START( multfish_portmap, AS_IO, 8 ) AM_RANGE(0xf8, 0xfd) AM_WRITE(multfish_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( rollfr_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( rollfr_portmap, AS_IO, 8, multfish_state ) AM_RANGE(0x33, 0x33) AM_WRITE(rollfr_hopper_w) AM_IMPORT_FROM(multfish_portmap) ADDRESS_MAP_END diff --git a/src/mame/drivers/multigam.c b/src/mame/drivers/multigam.c index a37adee142c..2a347511408 100644 --- a/src/mame/drivers/multigam.c +++ b/src/mame/drivers/multigam.c @@ -326,7 +326,7 @@ static WRITE8_HANDLER(multigam_mapper2_w) *******************************************************/ -static ADDRESS_MAP_START( multigam_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( multigam_map, AS_PROGRAM, 8, multigam_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */ AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */ AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu", ppu2c0x_device, read, write) @@ -344,7 +344,7 @@ static ADDRESS_MAP_START( multigam_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM AM_WRITE(multigam_mapper2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( multigmt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( multigmt_map, AS_PROGRAM, 8, multigam_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */ AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */ AM_RANGE(0x3000, 0x3000) AM_WRITE(multigam_switch_prg_rom) @@ -615,7 +615,7 @@ static WRITE8_HANDLER(multigm3_switch_prg_rom) *******************************************************/ -static ADDRESS_MAP_START( multigm3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( multigm3_map, AS_PROGRAM, 8, multigam_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */ AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */ AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu", ppu2c0x_device, read, write) @@ -931,7 +931,7 @@ static WRITE8_HANDLER(supergm3_chr_bank_w) *******************************************************/ -static ADDRESS_MAP_START( supergm3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( supergm3_map, AS_PROGRAM, 8, multigam_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM /* NES RAM */ AM_RANGE(0x0800, 0x0fff) AM_RAM /* additional RAM */ AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu", ppu2c0x_device, read, write) diff --git a/src/mame/drivers/munchmo.c b/src/mame/drivers/munchmo.c index 514ef7adfe1..c8c5b43d742 100644 --- a/src/mame/drivers/munchmo.c +++ b/src/mame/drivers/munchmo.c @@ -86,7 +86,7 @@ static READ8_DEVICE_HANDLER( munchmo_ayreset_r ) * *************************************/ -static ADDRESS_MAP_START( mnchmobl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mnchmobl_map, AS_PROGRAM, 8, munchmo_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0xa000, 0xa3ff) AM_MIRROR(0x0400) AM_RAM AM_BASE_MEMBER(munchmo_state, m_sprite_xpos) @@ -111,7 +111,7 @@ static ADDRESS_MAP_START( mnchmobl_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* memory map provided thru schematics */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, munchmo_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_READ(soundlatch_r) AM_RANGE(0x4000, 0x4fff) AM_DEVWRITE("ay1", ay8910_data_w) diff --git a/src/mame/drivers/murogem.c b/src/mame/drivers/murogem.c index b4b58f92e54..1d8f2b7f5a8 100644 --- a/src/mame/drivers/murogem.c +++ b/src/mame/drivers/murogem.c @@ -133,7 +133,7 @@ static WRITE8_HANDLER( outport_w ) } -static ADDRESS_MAP_START( murogem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( murogem_map, AS_PROGRAM, 8, murogem_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x4000, 0x4000) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x4001, 0x4001) AM_DEVWRITE_MODERN("crtc", mc6845_device, register_w) diff --git a/src/mame/drivers/murogmbl.c b/src/mame/drivers/murogmbl.c index de6fd3c9c87..81e144ed1e7 100644 --- a/src/mame/drivers/murogmbl.c +++ b/src/mame/drivers/murogmbl.c @@ -73,7 +73,7 @@ static PALETTE_INIT( murogmbl ) } } -static ADDRESS_MAP_START( murogmbl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( murogmbl_map, AS_PROGRAM, 8, murogmbl_state ) AM_RANGE(0x0000, 0x1fFf) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM diff --git a/src/mame/drivers/mustache.c b/src/mame/drivers/mustache.c index ffd2af9362e..678824f2a25 100644 --- a/src/mame/drivers/mustache.c +++ b/src/mame/drivers/mustache.c @@ -42,7 +42,7 @@ YM2151: #define YM_CLOCK (XTAL1/4) -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, mustache_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(mustache_videoram_w) AM_BASE_MEMBER(mustache_state, m_videoram) diff --git a/src/mame/drivers/mw18w.c b/src/mame/drivers/mw18w.c index 7bd3c441b02..8ebc6193c3d 100644 --- a/src/mame/drivers/mw18w.c +++ b/src/mame/drivers/mw18w.c @@ -71,12 +71,12 @@ static CUSTOM_INPUT( mw18w_sensors_r ) -static ADDRESS_MAP_START( mw18w_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mw18w_map, AS_PROGRAM, 8, mw18w_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mw18w_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mw18w_portmap, AS_IO, 8, mw18w_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(mw18w_sound0_w) diff --git a/src/mame/drivers/mw8080bw.c b/src/mame/drivers/mw8080bw.c index 0d4e609cb5b..4de1dafae22 100644 --- a/src/mame/drivers/mw8080bw.c +++ b/src/mame/drivers/mw8080bw.c @@ -207,7 +207,7 @@ static WRITE8_HANDLER( mw8080bw_reversable_shift_count_w) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_WRITENOP AM_RANGE(0x2000, 0x3fff) AM_MIRROR(0x4000) AM_RAM AM_BASE_SIZE_MEMBER(mw8080bw_state, m_main_ram, m_main_ram_size) @@ -323,7 +323,7 @@ static CUSTOM_INPUT( seawolf_erase_input_r ) } -static ADDRESS_MAP_START( seawolf_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( seawolf_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") @@ -436,7 +436,7 @@ static WRITE8_HANDLER( gunfight_io_w ) } -static ADDRESS_MAP_START( gunfight_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gunfight_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -632,7 +632,7 @@ static WRITE8_HANDLER( tornbase_io_w ) } -static ADDRESS_MAP_START( tornbase_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tornbase_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -752,7 +752,7 @@ MACHINE_CONFIG_END * *************************************/ -static ADDRESS_MAP_START( zzzap_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( zzzap_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -919,7 +919,7 @@ static WRITE8_HANDLER( maze_io_w ) } -static ADDRESS_MAP_START( maze_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( maze_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x3) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") @@ -989,7 +989,7 @@ static MACHINE_START( boothill ) } -static ADDRESS_MAP_START( boothill_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( boothill_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -1083,7 +1083,7 @@ static WRITE8_HANDLER( checkmat_io_w ) } -static ADDRESS_MAP_START( checkmat_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( checkmat_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x3) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") @@ -1219,7 +1219,7 @@ static CUSTOM_INPUT( desertgu_dip_sw_0_1_r ) } -static ADDRESS_MAP_START( desertgu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( desertgu_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") @@ -1341,7 +1341,7 @@ static CUSTOM_INPUT( dplay_pitch_right_input_r ) } -static ADDRESS_MAP_START( dplay_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dplay_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -1519,7 +1519,7 @@ static MACHINE_START( gmissile ) } -static ADDRESS_MAP_START( gmissile_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gmissile_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -1615,7 +1615,7 @@ static MACHINE_START( m4 ) } -static ADDRESS_MAP_START( m4_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( m4_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -1731,7 +1731,7 @@ static CUSTOM_INPUT( clowns_controller_r ) } -static ADDRESS_MAP_START( clowns_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( clowns_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -1868,7 +1868,7 @@ MACHINE_CONFIG_END * *************************************/ -static ADDRESS_MAP_START( spacwalk_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spacwalk_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") @@ -1962,7 +1962,7 @@ MACHINE_CONFIG_END * *************************************/ -static ADDRESS_MAP_START( shuffle_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( shuffle_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* yes, 4, and no mirroring on the read handlers */ AM_RANGE(0x01, 0x01) AM_DEVREAD("mb14241", mb14241_shift_result_r) AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0") @@ -2042,7 +2042,7 @@ MACHINE_CONFIG_END * *************************************/ -static ADDRESS_MAP_START( dogpatch_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( dogpatch_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -2205,7 +2205,7 @@ static WRITE8_HANDLER( spcenctr_io_w ) } -static ADDRESS_MAP_START( spcenctr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spcenctr_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_MIRROR(0xfc) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0xfc) AM_READ_PORT("IN1") @@ -2312,7 +2312,7 @@ static MACHINE_START( phantom2 ) } -static ADDRESS_MAP_START( phantom2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( phantom2_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") @@ -2438,7 +2438,7 @@ static WRITE8_HANDLER( bowler_lights_2_w ) } -static ADDRESS_MAP_START( bowler_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bowler_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no masking on the reads, all 4 bits are decoded */ AM_RANGE(0x01, 0x01) AM_READ(bowler_shift_result_r) AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0") @@ -2629,7 +2629,7 @@ int invaders_is_cabinet_cocktail(running_machine &machine) } -static ADDRESS_MAP_START( invaders_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( invaders_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") @@ -2760,7 +2760,7 @@ static CUSTOM_INPUT( blueshrk_coin_input_r ) } -static ADDRESS_MAP_START( blueshrk_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( blueshrk_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") @@ -2840,7 +2840,7 @@ static UINT32 invad2ct_coin_input_r(void *param) #endif -static ADDRESS_MAP_START( invad2ct_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( invad2ct_io_map, AS_IO, 8, mw8080bw_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/mwarr.c b/src/mame/drivers/mwarr.c index 2761567c382..05b081fa9f4 100644 --- a/src/mame/drivers/mwarr.c +++ b/src/mame/drivers/mwarr.c @@ -181,7 +181,7 @@ static WRITE16_HANDLER( mwarr_brightness_w ) * *************************************/ -static ADDRESS_MAP_START( mwarr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mwarr_map, AS_PROGRAM, 16, mwarr_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x1007ff) AM_RAM_WRITE(bg_videoram_w) AM_BASE_MEMBER(mwarr_state, m_bg_videoram) AM_RANGE(0x100800, 0x100fff) AM_RAM_WRITE(mlow_videoram_w) AM_BASE_MEMBER(mwarr_state, m_mlow_videoram) diff --git a/src/mame/drivers/mystston.c b/src/mame/drivers/mystston.c index 88cd1b1999d..c7afa07da79 100644 --- a/src/mame/drivers/mystston.c +++ b/src/mame/drivers/mystston.c @@ -99,7 +99,7 @@ static WRITE8_HANDLER( mystston_ay8910_select_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, mystston_state ) AM_RANGE(0x0000, 0x077f) AM_RAM AM_RANGE(0x0780, 0x07df) AM_RAM AM_BASE_MEMBER(mystston_state, m_spriteram) AM_RANGE(0x07e0, 0x0fff) AM_RAM diff --git a/src/mame/drivers/mystwarr.c b/src/mame/drivers/mystwarr.c index 563ce46e31f..a1d68efb3aa 100644 --- a/src/mame/drivers/mystwarr.c +++ b/src/mame/drivers/mystwarr.c @@ -251,7 +251,7 @@ static WRITE16_HANDLER( K053247_scattered_word_w ) /* 68000 memory handlers */ /* Mystic Warriors */ -static ADDRESS_MAP_START( mystwarr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mystwarr_map, AS_PROGRAM, 16, mystwarr_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(mystwarr_state, m_gx_workram) AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(K053247_scattered_word_r,K053247_scattered_word_w) AM_BASE_MEMBER(mystwarr_state, m_spriteram) @@ -288,7 +288,7 @@ static ADDRESS_MAP_START( mystwarr_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* Metamorphic Force */ -static ADDRESS_MAP_START( metamrph_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( metamrph_map, AS_PROGRAM, 16, mystwarr_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(mystwarr_state, m_gx_workram) AM_RANGE(0x210000, 0x210fff) AM_READWRITE(K053247_word_r,K053247_word_w) @@ -330,7 +330,7 @@ static ADDRESS_MAP_START( metamrph_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* Violent Storm */ -static ADDRESS_MAP_START( viostorm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( viostorm_map, AS_PROGRAM, 16, mystwarr_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(mystwarr_state, m_gx_workram) AM_RANGE(0x210000, 0x210fff) AM_READWRITE(K053247_word_r,K053247_word_w) @@ -427,7 +427,7 @@ static WRITE16_HANDLER( mccontrol_w ) } /* Martial Champion */ -static ADDRESS_MAP_START( martchmp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( martchmp_map, AS_PROGRAM, 16, mystwarr_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // main program AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE_MEMBER(mystwarr_state, m_gx_workram) // work RAM AM_RANGE(0x300000, 0x3fffff) AM_ROM // data ROM @@ -468,7 +468,7 @@ static ADDRESS_MAP_START( martchmp_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* Ultimate Battler Dadandarn */ -static ADDRESS_MAP_START( dadandrn_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dadandrn_map, AS_PROGRAM, 16, mystwarr_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // main program and data ROM AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(K053247_scattered_word_r,K053247_scattered_word_w) AM_BASE_MEMBER(mystwarr_state, m_spriteram) AM_RANGE(0x410000, 0x411fff) AM_READWRITE(K056832_ram_word_r,K056832_ram_word_w) // tilemap RAM @@ -515,7 +515,7 @@ ADDRESS_MAP_END // a00000 = the 128k tilemap // 800000 = the 256k tilemap // c00000 = 936 tiles (7fffff window) -static ADDRESS_MAP_START( gaiapols_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gaiapols_map, AS_PROGRAM, 16, mystwarr_state ) AM_RANGE(0x000000, 0x2fffff) AM_ROM // main program AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(K053247_scattered_word_r,K053247_scattered_word_w) AM_BASE_MEMBER(mystwarr_state, m_spriteram) AM_RANGE(0x410000, 0x411fff) AM_READWRITE(K056832_ram_word_r,K056832_ram_word_w) // tilemap RAM @@ -582,7 +582,7 @@ static WRITE8_HANDLER( sound_bankswitch_w ) quite similar to xexex/gijoe/asterix's sound. */ -static ADDRESS_MAP_START( mystwarr_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mystwarr_sound_map, AS_PROGRAM, 8, mystwarr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0x0000, 0xbfff) AM_WRITENOP diff --git a/src/mame/drivers/n8080.c b/src/mame/drivers/n8080.c index 9c35006f112..a8bdee125d0 100644 --- a/src/mame/drivers/n8080.c +++ b/src/mame/drivers/n8080.c @@ -35,20 +35,20 @@ static READ8_HANDLER( n8080_shift_r ) return state->m_shift_data >> (8 - state->m_shift_bits); } -static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 8, n8080_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_RAM AM_BASE_MEMBER(n8080_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( helifire_main_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( helifire_main_cpu_map, AS_PROGRAM, 8, n8080_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_RAM AM_BASE_MEMBER(n8080_state, m_videoram) AM_RANGE(0xc000, 0xdfff) AM_RAM AM_BASE_MEMBER(n8080_state, m_colorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, n8080_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/namcofl.c b/src/mame/drivers/namcofl.c index c8fe62df572..4b349dfdd64 100644 --- a/src/mame/drivers/namcofl.c +++ b/src/mame/drivers/namcofl.c @@ -228,7 +228,7 @@ static WRITE32_HANDLER( namcofl_share_w ) COMBINE_DATA(state->m_shareram+offset*2+1); } -static ADDRESS_MAP_START( namcofl_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namcofl_mem, AS_PROGRAM, 32, namcofl_state ) AM_RANGE(0x00000000, 0x000fffff) AM_RAMBANK("bank1") AM_RANGE(0x10000000, 0x100fffff) AM_RAMBANK("bank2") AM_RANGE(0x20000000, 0x201fffff) AM_ROM AM_REGION("user1", 0) /* data */ @@ -329,14 +329,14 @@ static READ8_HANDLER(dac2_r) { return 0xff; } static READ8_HANDLER(dac1_r) { return 0xff; } static READ8_HANDLER(dac0_r) { return 0xff; } -static ADDRESS_MAP_START( namcoc75_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcoc75_am, AS_PROGRAM, 16, namcofl_state ) AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) AM_RANGE(0x004000, 0x00bfff) AM_RAM_WRITE(mcu_shared_w) AM_BASE_MEMBER(namcofl_state, m_shareram) AM_RANGE(0x00c000, 0x00ffff) AM_ROM AM_REGION("c75", 0) AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("c75data", 0) ADDRESS_MAP_END -static ADDRESS_MAP_START( namcoc75_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namcoc75_io, AS_IO, 8, namcofl_state ) AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READWRITE(port6_r, port6_w) AM_RANGE(M37710_PORT7, M37710_PORT7) AM_READ(port7_r) AM_RANGE(M37710_ADC7_L, M37710_ADC7_L) AM_READ(dac7_r) diff --git a/src/mame/drivers/namcona1.c b/src/mame/drivers/namcona1.c index b8f8cc4ccb1..a8781cc2f62 100644 --- a/src/mame/drivers/namcona1.c +++ b/src/mame/drivers/namcona1.c @@ -745,7 +745,7 @@ static WRITE16_HANDLER( mcu_mailbox_w_mcu ) COMBINE_DATA(&state->m_mcu_mailbox[offset%8]); } -static ADDRESS_MAP_START( namcona1_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcona1_main_map, AS_PROGRAM, 16, namcona1_state ) AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_BASE_MEMBER(namcona1_state, m_workram) AM_RANGE(0x3f8000, 0x3fffff) AM_READWRITE(mcu_mailbox_r, mcu_mailbox_w_68k) AM_RANGE(0x400000, 0xbfffff) AM_ROM AM_REGION("maincpu", 0x280000) /* data */ @@ -762,7 +762,7 @@ static ADDRESS_MAP_START( namcona1_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( namcona2_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcona2_main_map, AS_PROGRAM, 16, namcona1_state ) AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_BASE_MEMBER(namcona1_state, m_workram) AM_RANGE(0x3f8000, 0x3fffff) AM_READWRITE(mcu_mailbox_r, mcu_mailbox_w_68k) AM_RANGE(0x400000, 0xbfffff) AM_ROM AM_REGION("maincpu", 0x280000) /* data */ @@ -832,7 +832,7 @@ static WRITE16_DEVICE_HANDLER(snd_w) } } -static ADDRESS_MAP_START( namcona1_mcu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcona1_mcu_map, AS_PROGRAM, 16, namcona1_state ) AM_RANGE(0x000800, 0x000fff) AM_READWRITE(mcu_mailbox_r, mcu_mailbox_w_mcu) // "Mailslot" communications ports AM_RANGE(0x001000, 0x001fff) AM_DEVREADWRITE("c140", snd_r, snd_w) // C140-alike sound chip AM_RANGE(0x002000, 0x002fff) AM_READWRITE(na1mcu_shared_r, na1mcu_shared_w) // mirror of first page of shared work RAM @@ -963,7 +963,7 @@ static READ8_HANDLER( portana_r ) return (port & bitnum[offset>>1]) ? 0xff : 0x00; } -static ADDRESS_MAP_START( namcona1_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( namcona1_mcu_io_map, AS_IO, 8, namcona1_state ) AM_RANGE(M37710_PORT4, M37710_PORT4) AM_READWRITE( port4_r, port4_w ) AM_RANGE(M37710_PORT5, M37710_PORT5) AM_READWRITE( port5_r, port5_w ) AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READWRITE( port6_r, port6_w ) diff --git a/src/mame/drivers/namconb1.c b/src/mame/drivers/namconb1.c index 2d5f49f18b3..06449a1022e 100644 --- a/src/mame/drivers/namconb1.c +++ b/src/mame/drivers/namconb1.c @@ -853,7 +853,7 @@ static WRITE32_HANDLER(namconb_share_w) COMBINE_DATA(state->m_namconb_shareram+offset*2); } -static ADDRESS_MAP_START( namconb1_am, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namconb1_am, AS_PROGRAM, 32, namconb1_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10001f) AM_READ(gunbulet_gun_r) AM_RANGE(0x1c0000, 0x1cffff) AM_RAM @@ -871,7 +871,7 @@ static ADDRESS_MAP_START( namconb1_am, AS_PROGRAM, 32 ) AM_RANGE(0x700000, 0x707fff) AM_RAM AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( namconb2_am, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namconb2_am, AS_PROGRAM, 32, namconb1_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x1c0000, 0x1cffff) AM_RAM AM_RANGE(0x1e4000, 0x1e4003) AM_READWRITE(randgen_r,srand_w) @@ -916,7 +916,7 @@ static WRITE16_HANDLER( nbmcu_shared_w ) } } -static ADDRESS_MAP_START( namcoc75_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcoc75_am, AS_PROGRAM, 16, namconb1_state ) AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) AM_RANGE(0x004000, 0x00bfff) AM_RAM_WRITE(nbmcu_shared_w) AM_BASE_MEMBER(namconb1_state, m_namconb_shareram) AM_RANGE(0x00c000, 0x00ffff) AM_ROM AM_REGION("c75", 0) @@ -1003,7 +1003,7 @@ static READ8_HANDLER(dac0_r) // bit 6 return (input_port_read_safe(space->machine(), "P3", 0xff)<<7)&0x80; } -static ADDRESS_MAP_START( namcoc75_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namcoc75_io, AS_IO, 8, namconb1_state ) AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READWRITE(port6_r, port6_w) AM_RANGE(M37710_PORT7, M37710_PORT7) AM_READ(port7_r) AM_RANGE(M37710_ADC7_L, M37710_ADC7_L) AM_READ(dac7_r) diff --git a/src/mame/drivers/namcond1.c b/src/mame/drivers/namcond1.c index 2f14cdedd05..30bbc928101 100644 --- a/src/mame/drivers/namcond1.c +++ b/src/mame/drivers/namcond1.c @@ -76,7 +76,7 @@ Notes: /*************************************************************/ -static ADDRESS_MAP_START( namcond1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcond1_map, AS_PROGRAM, 16, namcond1_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(namcond1_shared_ram_r,namcond1_shared_ram_w) AM_BASE_MEMBER(namcond1_state, m_shared_ram) AM_RANGE(0x800000, 0x80000f) AM_READWRITE(ygv608_r,ygv608_w) @@ -251,7 +251,7 @@ static WRITE8_HANDLER( mcu_pa_write ) } /* H8/3002 MCU stuff */ -static ADDRESS_MAP_START( nd1h8rwmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nd1h8rwmap, AS_PROGRAM, 16, namcond1_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_READWRITE( sharedram_sub_r, sharedram_sub_w ) AM_RANGE(0xa00000, 0xa07fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) @@ -262,7 +262,7 @@ static ADDRESS_MAP_START( nd1h8rwmap, AS_PROGRAM, 16 ) AM_RANGE(0xc00040, 0xc00041) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( nd1h8iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( nd1h8iomap, AS_IO, 8, namcond1_state ) AM_RANGE(H8_PORT_7, H8_PORT_7) AM_READ( mcu_p7_read ) AM_RANGE(H8_PORT_A, H8_PORT_A) AM_READWRITE( mcu_pa_read, mcu_pa_write ) AM_RANGE(H8_ADC_0_L, H8_ADC_3_H) AM_NOP // MCU reads these, but the games have no analog controls diff --git a/src/mame/drivers/namcos1.c b/src/mame/drivers/namcos1.c index 1d5004c7953..f4044d2ddb1 100644 --- a/src/mame/drivers/namcos1.c +++ b/src/mame/drivers/namcos1.c @@ -428,7 +428,7 @@ static WRITE8_HANDLER( namcos1_dac1_w ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, namcos1_state ) AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1") AM_RANGE(0x2000, 0x3fff) AM_RAMBANK("bank2") AM_RANGE(0x4000, 0x5fff) AM_RAMBANK("bank3") @@ -448,7 +448,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, namcos1_state ) AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank9") AM_RANGE(0x2000, 0x3fff) AM_RAMBANK("bank10") AM_RANGE(0x4000, 0x5fff) AM_RAMBANK("bank11") @@ -466,7 +466,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, namcos1_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank17") /* Banked ROMs */ AM_RANGE(0x4000, 0x4001) AM_DEVREAD("ymsnd", ym2151_status_port_r) AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -480,7 +480,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, namcos1_state ) AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r, m6801_io_w) AM_RANGE(0x0080, 0x00ff) AM_RAM /* built in RAM */ AM_RANGE(0x1000, 0x1003) AM_READ(dsw_r) @@ -497,7 +497,7 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, namcos1_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ_PORT("COIN") AM_WRITE(namcos1_coin_w) AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READNOP AM_WRITE(namcos1_dac_gain_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/namcos10.c b/src/mame/drivers/namcos10.c index 60a551761e3..d085c69f03f 100644 --- a/src/mame/drivers/namcos10.c +++ b/src/mame/drivers/namcos10.c @@ -281,7 +281,7 @@ public: : psx_state(mconfig, type, tag) { } }; -static ADDRESS_MAP_START( namcos10_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namcos10_map, AS_PROGRAM, 32, namcos10_state ) AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x1fc00000, 0x1fffffff) AM_ROM AM_SHARE("share2") AM_REGION("user1", 0) /* bios */ AM_RANGE(0x80000000, 0x80ffffff) AM_RAM AM_SHARE("share1") /* ram mirror */ diff --git a/src/mame/drivers/namcos11.c b/src/mame/drivers/namcos11.c index b30ce4922ba..3992f684553 100644 --- a/src/mame/drivers/namcos11.c +++ b/src/mame/drivers/namcos11.c @@ -691,7 +691,7 @@ static READ32_HANDLER( lightgun_r ) return data; } -static ADDRESS_MAP_START( namcos11_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namcos11_map, AS_PROGRAM, 32, namcos11_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x1fa04000, 0x1fa0ffff) AM_RAM AM_BASE_MEMBER(namcos11_state, m_sharedram) /* shared ram with C76 */ AM_RANGE(0x1fa20000, 0x1fa2ffff) AM_WRITE(keycus_w) AM_BASE_SIZE_MEMBER(namcos11_state, m_keycus, m_keycus_size) /* keycus */ @@ -744,7 +744,7 @@ static READ16_HANDLER( c76_inputs_r ) return 0xff; } -ADDRESS_MAP_START( c76_map, AS_PROGRAM, 16 ) +ADDRESS_MAP_START( c76_map, AS_PROGRAM, 16, namcos11_state ) AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) AM_RANGE(0x001000, 0x001007) AM_READ( c76_inputs_r ) AM_RANGE(0x004000, 0x00bfff) AM_READWRITE( c76_shared_r, c76_shared_w ) @@ -806,7 +806,7 @@ static READ8_HANDLER(pocketrc_steer_r) return input_port_read(space->machine(), "STEERING"); } -ADDRESS_MAP_START( c76_io_map, AS_IO, 8 ) +ADDRESS_MAP_START( c76_io_map, AS_IO, 8, namcos11_state ) AM_RANGE(M37710_ADC7_L, M37710_ADC7_L) AM_READ(dac7_r) AM_RANGE(M37710_ADC6_L, M37710_ADC6_L) AM_READ(dac6_r) AM_RANGE(M37710_ADC5_L, M37710_ADC5_L) AM_READ(dac5_r) diff --git a/src/mame/drivers/namcos12.c b/src/mame/drivers/namcos12.c index 4293f5f642d..6b75de66ca2 100644 --- a/src/mame/drivers/namcos12.c +++ b/src/mame/drivers/namcos12.c @@ -1229,7 +1229,7 @@ static WRITE32_HANDLER( s12_dma_bias_w ) state->m_n_dmabias = data; } -static ADDRESS_MAP_START( namcos12_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namcos12_map, AS_PROGRAM, 32, namcos12_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x1f000000, 0x1f000003) AM_READNOP AM_WRITE(bankoffset_w) /* banking */ AM_RANGE(0x1f080000, 0x1f083fff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_MEMBER(namcos12_state, m_sharedram) /* shared ram?? */ @@ -1418,7 +1418,7 @@ static MACHINE_RESET( namcos12 ) } /* H8/3002 MCU stuff */ -static ADDRESS_MAP_START( s12h8rwmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( s12h8rwmap, AS_PROGRAM, 16, namcos12_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_READWRITE( sharedram_sub_r, sharedram_sub_w ) AM_RANGE(0x280000, 0x287fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) @@ -1599,7 +1599,7 @@ static READ8_HANDLER( s12_mcu_gun_v_r ) return 0; } -static ADDRESS_MAP_START( s12h8iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( s12h8iomap, AS_IO, 8, namcos12_state ) AM_RANGE(H8_PORT_7, H8_PORT_7) AM_READ_PORT("DSW") AM_RANGE(H8_PORT_8, H8_PORT_8) AM_READ( s12_mcu_p8_r ) AM_WRITENOP AM_RANGE(H8_PORT_A, H8_PORT_A) AM_READWRITE( s12_mcu_pa_r, s12_mcu_pa_w ) diff --git a/src/mame/drivers/namcos2.c b/src/mame/drivers/namcos2.c index 83f4ef16214..75066dd181b 100644 --- a/src/mame/drivers/namcos2.c +++ b/src/mame/drivers/namcos2.c @@ -467,6 +467,13 @@ $a00000 checks have been seen on the Final Lap boards. /*************************************************************/ /* 68000/6809/63705 Shared memory area - DUAL PORT Memory */ /*************************************************************/ +class namcos2_state : public driver_device +{ +public: + namcos2_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) + { } +}; static UINT8 *namcos2_dpram; /* 2Kx8 */ @@ -589,7 +596,7 @@ static WRITE8_HANDLER( namcos2_dpram_byte_w ) 0xc00000 ONWARDS are unverified memory locations on the video board */ -static ADDRESS_MAP_START( namcos2_68k_default_cpu_board_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcos2_68k_default_cpu_board_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x200000, 0x3fffff) AM_READ(namcos2_68k_data_rom_r) AM_RANGE(0x400000, 0x41ffff) AM_READWRITE(namco_tilemapvideoram16_r,namco_tilemapvideoram16_w) AM_RANGE(0x420000, 0x42003f) AM_READWRITE(namco_tilemapcontrol16_r,namco_tilemapcontrol16_w) @@ -602,7 +609,7 @@ ADDRESS_MAP_END /*************************************************************/ -static ADDRESS_MAP_START( common_default_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( common_default_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE(namcos2_sprite_ram_r,namcos2_sprite_ram_w) AM_BASE(&namcos2_sprite_ram) AM_RANGE(0xc40000, 0xc40001) AM_READWRITE(namcos2_gfx_ctrl_r,namcos2_gfx_ctrl_w) AM_RANGE(0xc80000, 0xc9ffff) AM_READWRITE(namcos2_68k_roz_ram_r,namcos2_68k_roz_ram_w) AM_BASE(&namcos2_68k_roz_ram) @@ -611,7 +618,7 @@ static ADDRESS_MAP_START( common_default_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_default_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_default_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM) AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W) @@ -619,7 +626,7 @@ static ADDRESS_MAP_START( master_default_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( common_default_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_default_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_default_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM) AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w) @@ -629,7 +636,7 @@ ADDRESS_MAP_END /*************************************************************/ -static ADDRESS_MAP_START( common_finallap_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( common_finallap_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x300000, 0x33ffff) AM_READ(namcos2_flap_prot_r) AM_RANGE(0x800000, 0x80ffff) AM_READ(namcos2_sprite_ram_r) AM_WRITE(namcos2_sprite_ram_w) AM_BASE(&namcos2_sprite_ram) AM_RANGE(0x840000, 0x840001) AM_READ(namcos2_gfx_ctrl_r) AM_WRITE(namcos2_gfx_ctrl_w) @@ -638,7 +645,7 @@ static ADDRESS_MAP_START( common_finallap_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_finallap_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_finallap_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM) AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W) @@ -646,7 +653,7 @@ static ADDRESS_MAP_START( master_finallap_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( common_finallap_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_finallap_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_finallap_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM) AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w) @@ -655,14 +662,14 @@ ADDRESS_MAP_END /*************************************************************/ -static ADDRESS_MAP_START( common_sgunner_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( common_sgunner_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x800000, 0x8141ff) AM_READWRITE(namco_obj16_r,namco_obj16_w) AM_RANGE(0x818000, 0x818001) AM_WRITENOP AM_RANGE(0xa00000, 0xa0000f) AM_READWRITE(namcos2_68k_key_r,namcos2_68k_key_w) AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_sgunner_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_sgunner_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM) AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W) @@ -670,7 +677,7 @@ static ADDRESS_MAP_START( master_sgunner_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( common_sgunner_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_sgunner_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_sgunner_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM) AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w) @@ -679,7 +686,7 @@ ADDRESS_MAP_END /*************************************************************/ -static ADDRESS_MAP_START( common_metlhawk_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( common_metlhawk_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE(namcos2_sprite_ram_r,namcos2_sprite_ram_w) AM_BASE(&namcos2_sprite_ram) \ AM_RANGE(0xc40000, 0xc4ffff) AM_READWRITE(namco_rozvideoram16_r,namco_rozvideoram16_w) \ AM_RANGE(0xd00000, 0xd0001f) AM_READWRITE(namco_rozcontrol16_r,namco_rozcontrol16_w) \ @@ -687,7 +694,7 @@ static ADDRESS_MAP_START( common_metlhawk_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_metlhawk_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_metlhawk_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM) AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W) @@ -695,7 +702,7 @@ static ADDRESS_MAP_START( master_metlhawk_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( common_metlhawk_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_metlhawk_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_metlhawk_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM) AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w) @@ -704,7 +711,7 @@ ADDRESS_MAP_END /*************************************************************/ -static ADDRESS_MAP_START( common_luckywld_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( common_luckywld_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x800000, 0x8141ff) AM_READWRITE(namco_obj16_r,namco_obj16_w) AM_RANGE(0x818000, 0x818001) AM_NOP /* enable? */ AM_RANGE(0x81a000, 0x81a001) AM_WRITENOP /* enable? */ @@ -717,7 +724,7 @@ static ADDRESS_MAP_START( common_luckywld_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( namcos2_68k_default_cpu_board_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_luckywld_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_luckywld_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAMBANK(NAMCOS2_68K_MASTER_RAM) AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W) @@ -725,7 +732,7 @@ static ADDRESS_MAP_START( master_luckywld_am, AS_PROGRAM, 16 ) AM_IMPORT_FROM( common_luckywld_am ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_luckywld_am, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_luckywld_am, AS_PROGRAM, 16, namcos2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAMBANK(NAMCOS2_68K_SLAVE_RAM) AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w) @@ -736,7 +743,7 @@ ADDRESS_MAP_END /* 6809 SOUND CPU Memory declarations */ /*************************************************************/ -static ADDRESS_MAP_START( sound_default_am, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_default_am, AS_PROGRAM, 8, namcos2_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank6") /* banked */ AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) AM_RANGE(0x5000, 0x6fff) AM_DEVREADWRITE("c140", c140_r,c140_w) @@ -755,7 +762,7 @@ ADDRESS_MAP_END /* 68705 IO CPU Memory declarations */ /*************************************************************/ -static ADDRESS_MAP_START( mcu_default_am, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_default_am, AS_PROGRAM, 8, namcos2_state ) /* input ports and dips are mapped here */ AM_RANGE(0x0000, 0x0000) AM_READNOP /* Keep logging quiet */ AM_RANGE(0x0001, 0x0001) AM_READ(namcos2_input_port_0_r) @@ -1605,7 +1612,7 @@ via software as INT1 /* */ /*************************************************************/ -static MACHINE_CONFIG_START( default, driver_device ) +static MACHINE_CONFIG_START( default, namcos2_state ) MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */ MCFG_CPU_PROGRAM_MAP(master_default_am) MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank) @@ -1681,7 +1688,7 @@ static MACHINE_CONFIG_DERIVED( default3, default ) MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) MACHINE_CONFIG_END -static MACHINE_CONFIG_START( gollygho, driver_device ) +static MACHINE_CONFIG_START( gollygho, namcos2_state ) MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */ MCFG_CPU_PROGRAM_MAP(master_default_am) MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank) @@ -1730,7 +1737,7 @@ static MACHINE_CONFIG_START( gollygho, driver_device ) MCFG_SOUND_ROUTE(1, "rspeaker", 0.80) MACHINE_CONFIG_END -static MACHINE_CONFIG_START( finallap, driver_device ) +static MACHINE_CONFIG_START( finallap, namcos2_state ) MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */ MCFG_CPU_PROGRAM_MAP(master_finallap_am) MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank) @@ -1779,7 +1786,7 @@ static MACHINE_CONFIG_START( finallap, driver_device ) MCFG_SOUND_ROUTE(1, "rspeaker", 0.80) MACHINE_CONFIG_END -static MACHINE_CONFIG_START( sgunner, driver_device ) +static MACHINE_CONFIG_START( sgunner, namcos2_state ) MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */ MCFG_CPU_PROGRAM_MAP(master_sgunner_am) MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank) @@ -1828,7 +1835,7 @@ static MACHINE_CONFIG_START( sgunner, driver_device ) MCFG_SOUND_ROUTE(1, "rspeaker", 0.80) MACHINE_CONFIG_END -static MACHINE_CONFIG_START( luckywld, driver_device ) +static MACHINE_CONFIG_START( luckywld, namcos2_state ) MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */ MCFG_CPU_PROGRAM_MAP(master_luckywld_am) MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank) @@ -1877,7 +1884,7 @@ static MACHINE_CONFIG_START( luckywld, driver_device ) MCFG_SOUND_ROUTE(1, "rspeaker", 0.80) MACHINE_CONFIG_END -static MACHINE_CONFIG_START( metlhawk, driver_device ) +static MACHINE_CONFIG_START( metlhawk, namcos2_state ) MCFG_CPU_ADD("maincpu", M68000, M68K_CPU_CLOCK) /* 12.288MHz (49.152MHz OSC/4) */ MCFG_CPU_PROGRAM_MAP(master_metlhawk_am) MCFG_CPU_VBLANK_INT("screen", namcos2_68k_master_vblank) diff --git a/src/mame/drivers/namcos21.c b/src/mame/drivers/namcos21.c index 3bd12da65a1..70178961483 100644 --- a/src/mame/drivers/namcos21.c +++ b/src/mame/drivers/namcos21.c @@ -765,17 +765,17 @@ static WRITE16_HANDLER( dsp_xf_w ) if (ENABLE_LOGGING) logerror("xf(%d)\n",data); } -static ADDRESS_MAP_START( master_dsp_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_dsp_program, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM /* BIOS */ AM_RANGE(0x8000, 0xbfff) AM_RAM AM_BASE_MEMBER(namcos21_state, m_master_dsp_code) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_dsp_data, AS_DATA, 16 ) +static ADDRESS_MAP_START( master_dsp_data, AS_DATA, 16, namcos21_state ) AM_RANGE(0x2000, 0x200f) AM_READWRITE(dspcuskey_r,dspcuskey_w) AM_RANGE(0x8000, 0xffff) AM_READWRITE(dspram16_r,dspram16_w) /* 0x8000 words */ ADDRESS_MAP_END -static ADDRESS_MAP_START( master_dsp_io, AS_IO, 16 ) +static ADDRESS_MAP_START( master_dsp_io, AS_IO, 16, namcos21_state ) AM_RANGE(0x00,0x00) AM_READWRITE(dsp_port0_r,dsp_port0_w) AM_RANGE(0x01,0x01) AM_READWRITE(dsp_port1_r,dsp_port1_w) AM_RANGE(0x02,0x02) AM_READWRITE(dsp_port2_r,dsp_port2_w) @@ -895,16 +895,16 @@ static READ16_HANDLER( slave_portf_r ) return 1; } -static ADDRESS_MAP_START( slave_dsp_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_dsp_program, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM /* BIOS */ AM_RANGE(0x8000, 0x8fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_dsp_data, AS_DATA, 16 ) +static ADDRESS_MAP_START( slave_dsp_data, AS_DATA, 16, namcos21_state ) /* no external data memory */ ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_dsp_io, AS_IO, 16 ) +static ADDRESS_MAP_START( slave_dsp_io, AS_IO, 16, namcos21_state ) AM_RANGE(0x00,0x00) AM_READWRITE(slave_port0_r,slave_port0_w) AM_RANGE(0x02,0x02) AM_READ(slave_port2_r) AM_RANGE(0x03,0x03) AM_READWRITE(slave_port3_r,slave_port3_w) @@ -1106,7 +1106,7 @@ static READ16_HANDLER( NAMCO_C139_SCI_register_r ){ return 0; } AM_RANGE(0xc00000, 0xcfffff) AM_READ(data2_r) /* Cyber Sled */ \ AM_RANGE(0xd00000, 0xdfffff) AM_READ(data2_r) \ -static ADDRESS_MAP_START( namcos21_68k_master, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcos21_68k_master, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* private work RAM */ AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)// AM_BASE(&namcos2_eeprom) AM_SIZE(&namcos2_eeprom_size) @@ -1114,7 +1114,7 @@ static ADDRESS_MAP_START( namcos21_68k_master, AS_PROGRAM, 16 ) NAMCO21_68K_COMMON ADDRESS_MAP_END -static ADDRESS_MAP_START( namcos21_68k_slave, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcos21_68k_slave, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAM /* private work RAM */ AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w) @@ -1266,17 +1266,17 @@ static READ16_HANDLER( winrun_table_r ) return state->m_winrun_polydata[offset]; } -static ADDRESS_MAP_START( winrun_dsp_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( winrun_dsp_program, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( winrun_dsp_data, AS_DATA, 16 ) +static ADDRESS_MAP_START( winrun_dsp_data, AS_DATA, 16, namcos21_state ) AM_RANGE( 0x2000, 0x200f ) AM_READWRITE(winrun_cuskey_r,winrun_cuskey_w) AM_RANGE( 0x4000, 0x4fff ) AM_READWRITE(winrun_dspcomram_r,winrun_dspcomram_w) AM_RANGE( 0x8000, 0xffff ) AM_READ(winrun_table_r ) ADDRESS_MAP_END -static ADDRESS_MAP_START( winrun_dsp_io, AS_IO, 16 ) +static ADDRESS_MAP_START( winrun_dsp_io, AS_IO, 16, namcos21_state ) AM_RANGE(0x08,0x09) AM_READWRITE(winrun_dsp_pointrom_data_r,winrun_dsp_pointrom_addr_w) AM_RANGE(0x0a,0x0a) AM_WRITE(winrun_dsp_render_w) AM_RANGE(0x0b,0x0b) AM_WRITENOP @@ -1349,7 +1349,7 @@ static WRITE16_HANDLER( winrun_dspcomram_control_w ) COMBINE_DATA( &state->m_winrun_dspcomram_control[offset] ); } -static ADDRESS_MAP_START( am_master_winrun, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( am_master_winrun, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* work RAM */ AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)// AM_BASE(&namcos2_eeprom) AM_SIZE(&namcos2_eeprom_size) @@ -1369,7 +1369,7 @@ static ADDRESS_MAP_START( am_master_winrun, AS_PROGRAM, 16 ) AM_RANGE(0xb80000, 0xb8000f) AM_READWRITE(NAMCO_C139_SCI_register_r,NAMCO_C139_SCI_register_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( am_slave_winrun, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( am_slave_winrun, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAM AM_RANGE(0x1c0000, 0x1fffff) AM_READWRITE(namcos2_68k_slave_C148_r,namcos2_68k_slave_C148_w) @@ -1381,7 +1381,7 @@ static ADDRESS_MAP_START( am_slave_winrun, AS_PROGRAM, 16 ) AM_RANGE(0xb80000, 0xb8000f) AM_READWRITE(NAMCO_C139_SCI_register_r,NAMCO_C139_SCI_register_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( am_gpu_winrun, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( am_gpu_winrun, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READWRITE(winrun_gpu_color_r,winrun_gpu_color_w) /* ? */ AM_RANGE(0x180000, 0x19ffff) AM_RAM /* work RAM */ @@ -1399,7 +1399,7 @@ ADDRESS_MAP_END /* SOUND 6809 CPU Memory declarations */ /*************************************************************/ -static ADDRESS_MAP_START( am_sound_winrun, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( am_sound_winrun, AS_PROGRAM, 8, namcos21_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank6") /* banked */ AM_RANGE(0x3000, 0x3003) AM_WRITENOP /* ? */ AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) @@ -1419,7 +1419,7 @@ ADDRESS_MAP_END /* I/O HD63705 MCU Memory declarations */ /*************************************************************/ -static ADDRESS_MAP_START( am_mcu_winrun, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( am_mcu_winrun, AS_PROGRAM, 8, namcos21_state ) AM_RANGE(0x0000, 0x0000) AM_READNOP AM_RANGE(0x0001, 0x0001) AM_READ_PORT("PORTB") /* p1,p2 start */ AM_RANGE(0x0002, 0x0002) AM_READ_PORT("PORTC") /* coins */ @@ -1458,7 +1458,7 @@ ADDRESS_MAP_END AM_RANGE(0xb80000, 0xb8000f) AM_READWRITE(NAMCO_C139_SCI_register_r,NAMCO_C139_SCI_register_w) \ -static ADDRESS_MAP_START( driveyes_68k_master, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driveyes_68k_master, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* private work RAM */ AM_RANGE(0x180000, 0x183fff) AM_READWRITE(NAMCOS2_68K_eeprom_R,NAMCOS2_68K_eeprom_W)// AM_BASE(&namcos2_eeprom) AM_SIZE(&namcos2_eeprom_size) @@ -1472,7 +1472,7 @@ static ADDRESS_MAP_START( driveyes_68k_master, AS_PROGRAM, 16 ) DRIVEYES_68K_COMMON ADDRESS_MAP_END -static ADDRESS_MAP_START( driveyes_68k_slave, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driveyes_68k_slave, AS_PROGRAM, 16, namcos21_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* private work RAM */ AM_RANGE(0x1c0000, 0x1fffff) AM_READ(namcos2_68k_slave_C148_r) AM_WRITE(namcos2_68k_slave_C148_w) diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c index dd287a6505e..07b4b283438 100644 --- a/src/mame/drivers/namcos22.c +++ b/src/mame/drivers/namcos22.c @@ -1797,18 +1797,18 @@ static WRITE16_HANDLER( master_render_device_w ) } } -static ADDRESS_MAP_START( master_dsp_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( master_dsp_program, AS_PROGRAM, 16, namcos22_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM /* internal ROM (4k words) */ AM_RANGE(0x4000, 0x7fff) AM_ROM AM_BASE_MEMBER(namcos22_state, m_mpMasterExternalRAM) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_dsp_data, AS_DATA, 16 ) +static ADDRESS_MAP_START( master_dsp_data, AS_DATA, 16, namcos22_state ) AM_RANGE(0x1000, 0x3fff) AM_RAM AM_RANGE(0x4000, 0x7fff) AM_READ(master_external_ram_r) AM_WRITE(master_external_ram_w) AM_RANGE(0x8000, 0xffff) AM_READ(namcos22_dspram16_r) AM_WRITE(namcos22_dspram16_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( master_dsp_io, AS_IO, 16 ) +static ADDRESS_MAP_START( master_dsp_io, AS_IO, 16, namcos22_state ) AM_RANGE(0x0,0x0) AM_WRITE(point_ram_loword_iw) AM_READ(point_ram_loword_r) AM_RANGE(0x1,0x1) AM_WRITE(point_ram_hiword_w) AM_READ(point_ram_hiword_ir) AM_RANGE(0x2,0x2) AM_WRITE(dsp_unk2_w) AM_READ(pdp_begin_r) @@ -1891,16 +1891,16 @@ static WRITE16_HANDLER( dsp_slave_portb_w ) /* The slave dsp uses this to transmit a command sequence to an external device. */ } -static ADDRESS_MAP_START( slave_dsp_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slave_dsp_program, AS_PROGRAM, 16, namcos22_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM /* internal ROM */ AM_RANGE(0x8000, 0x9fff) AM_ROM AM_BASE_MEMBER(namcos22_state, m_mpSlaveExternalRAM) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_dsp_data, AS_DATA, 16 ) +static ADDRESS_MAP_START( slave_dsp_data, AS_DATA, 16, namcos22_state ) AM_RANGE(0x8000, 0x9fff) AM_READ(slave_external_ram_r) AM_WRITE(slave_external_ram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( slave_dsp_io, AS_IO, 16 ) +static ADDRESS_MAP_START( slave_dsp_io, AS_IO, 16, namcos22_state ) /* unknown signal */ AM_RANGE(0x3,0x3) AM_READ(dsp_slave_port3_r) @@ -2546,7 +2546,7 @@ static WRITE32_HANDLER( namcos22s_chipselect_w ) } /* Namco Super System 22 */ -static ADDRESS_MAP_START( namcos22s_am, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namcos22s_am, AS_PROGRAM, 32, namcos22_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x400000, 0x40001f) AM_READWRITE(namcos22_keycus_r, namcos22_keycus_w) AM_RANGE(0x410000, 0x413fff) AM_RAM /* C139 SCI buffer */ @@ -2617,7 +2617,7 @@ static WRITE16_HANDLER( s22mcu_shared_w ) */ // Super System 22 M37710 -static ADDRESS_MAP_START( mcu_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mcu_program, AS_PROGRAM, 16, namcos22_state ) AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) AM_RANGE(0x004000, 0x00bfff) AM_READWRITE( s22mcu_shared_r, s22mcu_shared_w ) AM_RANGE(0x00c000, 0x00ffff) AM_ROM AM_REGION("user4", 0xc000) @@ -2629,7 +2629,7 @@ static ADDRESS_MAP_START( mcu_program, AS_PROGRAM, 16 ) ADDRESS_MAP_END // System 22 37702 -static ADDRESS_MAP_START( mcu_s22_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mcu_s22_program, AS_PROGRAM, 16, namcos22_state ) AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) AM_RANGE(0x004000, 0x00bfff) AM_READWRITE( s22mcu_shared_r, s22mcu_shared_w ) AM_RANGE(0x00c000, 0x00ffff) AM_ROM AM_REGION("mcu", 0) @@ -2945,7 +2945,7 @@ static READ8_HANDLER( airco22_mcu_adc_r ) } } -static ADDRESS_MAP_START( mcu_io, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io, AS_IO, 8, namcos22_state ) AM_RANGE(M37710_PORT4, M37710_PORT4) AM_READ( mcu_port4_r ) AM_WRITE( mcu_port4_w ) AM_RANGE(M37710_PORT5, M37710_PORT5) AM_READ( mcu_port5_r ) AM_WRITE( mcu_port5_w ) AM_RANGE(M37710_PORT6, M37710_PORT6) AM_READ( mcu_port6_r ) AM_WRITE( mcu_port6_w ) @@ -2958,7 +2958,7 @@ static READ8_HANDLER( mcu_port4_s22_r ) return state->m_p4 | 0x10; // for C74, 0x10 selects sound MCU role, 0x00 selects control-reading role } -static ADDRESS_MAP_START( mcu_s22_io, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_s22_io, AS_IO, 8, namcos22_state ) AM_RANGE(M37710_PORT4, M37710_PORT4) AM_READ( mcu_port4_s22_r ) ADDRESS_MAP_END @@ -3031,7 +3031,7 @@ MACHINE_CONFIG_END /* Namco System 22 */ -static ADDRESS_MAP_START( namcos22_am, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( namcos22_am, AS_PROGRAM, 32, namcos22_state ) /** * Program ROM (2M bytes) * Mounted position: LLB: CPU 4D, LMB: CPU 2D, UMB: CPU 8D, UUB: CPU 6D diff --git a/src/mame/drivers/namcos23.c b/src/mame/drivers/namcos23.c index 7a3317dd520..f1534fffa55 100644 --- a/src/mame/drivers/namcos23.c +++ b/src/mame/drivers/namcos23.c @@ -2419,7 +2419,7 @@ static MACHINE_START( s23 ) c361.timer->adjust(attotime::never); } -static ADDRESS_MAP_START( gorgon_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gorgon_map, AS_PROGRAM, 32, namcos23_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffffff) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_RANGE(0x01000000, 0x010000ff) AM_READWRITE( p3d_r, p3d_w ) @@ -2450,7 +2450,7 @@ static ADDRESS_MAP_START( gorgon_map, AS_PROGRAM, 32 ) AM_RANGE(0x0fc00000, 0x0fffffff) AM_WRITENOP AM_ROM AM_REGION("user1", 0) ADDRESS_MAP_END -static ADDRESS_MAP_START( ss23_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ss23_map, AS_PROGRAM, 32, namcos23_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffffff) AM_RANGE(0x00000000, 0x00ffffff) AM_RAM AM_RANGE(0x01000000, 0x010000ff) AM_READWRITE( p3d_r, p3d_w ) @@ -2496,14 +2496,14 @@ static WRITE32_HANDLER( sh2_shared_w ) COMBINE_DATA(&state->m_gmen_sh2_shared[offset]); } -static ADDRESS_MAP_START( gmen_mips_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gmen_mips_map, AS_PROGRAM, 32, namcos23_state ) AM_IMPORT_FROM(ss23_map) AM_RANGE(0x0e400000, 0x0e400003) AM_READ( gmen_trigger_sh2 ) AM_RANGE(0x0e700000, 0x0e707fff) AM_READWRITE( sh2_shared_r, sh2_shared_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( gmen_sh2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( gmen_sh2_map, AS_PROGRAM, 32, namcos23_state ) AM_RANGE( 0x00000000, 0x00007fff ) AM_RAM AM_BASE_MEMBER(namcos23_state, m_gmen_sh2_shared) AM_RANGE( 0x04000000, 0x043fffff ) AM_RAM // SH-2 main work RAM ADDRESS_MAP_END @@ -2552,7 +2552,7 @@ static WRITE16_HANDLER( sub_interrupt_main_w ) } /* H8/3002 MCU stuff */ -static ADDRESS_MAP_START( s23h8rwmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( s23h8rwmap, AS_PROGRAM, 16, namcos23_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_READWRITE( sharedram_sub_r, sharedram_sub_w ) AM_RANGE(0x280000, 0x287fff) AM_DEVREADWRITE_MODERN("c352", c352_device, read, write) @@ -2905,7 +2905,7 @@ static WRITE8_HANDLER(s23_mcu_p6_w) // printf("%02x to port 6\n", data); } -static ADDRESS_MAP_START( s23h8iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( s23h8iomap, AS_IO, 8, namcos23_state ) AM_RANGE(H8_PORT_6, H8_PORT_6) AM_READWRITE( s23_mcu_p6_r, s23_mcu_p6_w ) AM_RANGE(H8_PORT_7, H8_PORT_7) AM_READ_PORT( "H8PORT" ) AM_RANGE(H8_PORT_8, H8_PORT_8) AM_READ( s23_mcu_p8_r ) AM_WRITENOP @@ -2921,7 +2921,7 @@ static ADDRESS_MAP_START( s23h8iomap, AS_IO, 8 ) ADDRESS_MAP_END // version without serial hookup to I/O board for games where the PIC isn't dumped -static ADDRESS_MAP_START( s23h8noiobmap, AS_IO, 8 ) +static ADDRESS_MAP_START( s23h8noiobmap, AS_IO, 8, namcos23_state ) AM_RANGE(H8_PORT_6, H8_PORT_6) AM_READWRITE( s23_mcu_p6_r, s23_mcu_p6_w ) AM_RANGE(H8_PORT_7, H8_PORT_7) AM_READ_PORT( "H8PORT" ) AM_RANGE(H8_PORT_8, H8_PORT_8) AM_READ( s23_mcu_p8_r ) AM_WRITENOP @@ -3001,7 +3001,7 @@ static READ8_HANDLER(iob_r) } /* H8/3334 (Namco C78) I/O board MCU */ -static ADDRESS_MAP_START( s23iobrdmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( s23iobrdmap, AS_PROGRAM, 8, namcos23_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("ioboard", 0) AM_RANGE(0x6000, 0x6000) AM_READ_PORT("TC2P0") // 0-1 = coin 0-3 = coin connect, 0-5 = test 0-6 = down select, 0-7 = up select, 0-8 = enter AM_RANGE(0x6001, 0x6001) AM_READ_PORT("TC2P1") // 1-1 = gun trigger 1-2 = foot pedal @@ -3013,7 +3013,7 @@ static ADDRESS_MAP_START( s23iobrdmap, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xf7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( timecrs2iobrdmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( timecrs2iobrdmap, AS_PROGRAM, 8, namcos23_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("ioboard", 0) AM_RANGE(0x6000, 0x6000) AM_READ_PORT("TC2P0") AM_RANGE(0x6001, 0x6001) AM_READ_PORT("TC2P1") @@ -3024,7 +3024,7 @@ static ADDRESS_MAP_START( timecrs2iobrdmap, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xf7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( gorgoniobrdmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gorgoniobrdmap, AS_PROGRAM, 8, namcos23_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("ioboard", 0) AM_RANGE(0x6000, 0x6000) AM_READ_PORT("RRP0") // 0-5 = start AM_RANGE(0x6001, 0x6001) AM_READ_PORT("RRP1") // @@ -3041,7 +3041,7 @@ ADDRESS_MAP_END port 5 bit 2 = LED to indicate transmitting packet to main port 4 bit 2 = SENSE line back to main (0 = asserted, 1 = dropped) */ -static ADDRESS_MAP_START( s23iobrdiomap, AS_IO, 8 ) +static ADDRESS_MAP_START( s23iobrdiomap, AS_IO, 8, namcos23_state ) AM_RANGE(H8_PORT_4, H8_PORT_4) AM_READWRITE( s23_iob_p4_r, s23_iob_p4_w ) AM_RANGE(H8_PORT_5, H8_PORT_5) AM_NOP // status LED in bit 2 AM_RANGE(H8_PORT_6, H8_PORT_6) AM_NOP // unknown diff --git a/src/mame/drivers/namcos86.c b/src/mame/drivers/namcos86.c index d42c6dd90c9..b5d0ac03428 100644 --- a/src/mame/drivers/namcos86.c +++ b/src/mame/drivers/namcos86.c @@ -333,7 +333,7 @@ static MACHINE_RESET( namco86 ) -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, namcos86_state ) AM_RANGE(0x0000, 0x1fff) AM_READWRITE(rthunder_videoram1_r,rthunder_videoram1_w) AM_BASE_MEMBER(namcos86_state, m_rthunder_videoram1) AM_RANGE(0x2000, 0x3fff) AM_READWRITE(rthunder_videoram2_r,rthunder_videoram2_w) AM_BASE_MEMBER(namcos86_state, m_rthunder_videoram2) @@ -364,7 +364,7 @@ ADDRESS_MAP_END #define CPU2_MEMORY(NAME,ADDR_SPRITE,ADDR_VIDEO1,ADDR_VIDEO2,ADDR_ROM,ADDR_BANK,ADDR_WDOG,ADDR_INT) \ -static ADDRESS_MAP_START( NAME##_cpu2_map, AS_PROGRAM, 8 ) \ +static ADDRESS_MAP_START( NAME##_cpu2_map, AS_PROGRAM, 8, namcos86_state ) \ AM_RANGE(ADDR_SPRITE+0x0000, ADDR_SPRITE+0x1fff) AM_READWRITE(rthunder_spriteram_r,rthunder_spriteram_w) AM_BASE_MEMBER(namcos86_state, m_rthunder_spriteram) \ AM_RANGE(ADDR_VIDEO1+0x0000, ADDR_VIDEO1+0x1fff) AM_READWRITE(rthunder_videoram1_r,rthunder_videoram1_w) \ AM_RANGE(ADDR_VIDEO2+0x0000, ADDR_VIDEO2+0x1fff) AM_READWRITE(rthunder_videoram2_r,rthunder_videoram2_w) \ @@ -389,7 +389,7 @@ CPU2_MEMORY( wndrmomo, 0x2000, 0x4000, 0x6000, UNUSED, UNUSED, 0xc000, 0xc800 ) #define MCU_MEMORY(NAME,ADDR_LOWROM,ADDR_INPUT,ADDR_UNK1,ADDR_UNK2) \ -static ADDRESS_MAP_START( NAME##_mcu_map, AS_PROGRAM, 8 ) \ +static ADDRESS_MAP_START( NAME##_mcu_map, AS_PROGRAM, 8, namcos86_state ) \ AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r,m6801_io_w) \ AM_RANGE(0x0080, 0x00ff) AM_RAM \ AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */ \ @@ -422,7 +422,7 @@ static READ8_HANDLER( readFF ) return 0xff; } -static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, namcos86_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ_PORT("IN2") AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */ AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(namcos86_coin_w) diff --git a/src/mame/drivers/naomi.c b/src/mame/drivers/naomi.c index 58cdebe3dde..56669afe3a3 100644 --- a/src/mame/drivers/naomi.c +++ b/src/mame/drivers/naomi.c @@ -1551,7 +1551,7 @@ static WRITE64_DEVICE_HANDLER( eeprom_93c46a_w ) * Naomi 1 address map */ -static ADDRESS_MAP_START( naomi_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( naomi_map, AS_PROGRAM, 64, dc_state ) /* Area 0 */ AM_RANGE(0x00000000, 0x001fffff) AM_MIRROR(0xa2000000) AM_ROM AM_REGION("maincpu", 0) // BIOS @@ -1603,7 +1603,7 @@ ADDRESS_MAP_END * Naomi 2 address map */ -static ADDRESS_MAP_START( naomi2_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( naomi2_map, AS_PROGRAM, 64, dc_state ) /* Area 0 */ AM_RANGE(0x00000000, 0x001fffff) AM_MIRROR(0xa2000000) AM_ROM AM_REGION("maincpu", 0) // BIOS @@ -1662,7 +1662,7 @@ static ADDRESS_MAP_START( naomi2_map, AS_PROGRAM, 64 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( naomi_port, AS_IO, 64 ) +static ADDRESS_MAP_START( naomi_port, AS_IO, 64, dc_state ) AM_RANGE(0x00, 0x0f) AM_DEVREADWRITE("main_eeprom", eeprom_93c46a_r, eeprom_93c46a_w) ADDRESS_MAP_END @@ -1755,7 +1755,7 @@ static WRITE64_HANDLER( aw_modem_w ) mame_printf_verbose("MODEM: [%08x=%x] write %" I64FMT "x to %x, mask %" I64FMT "x\n", 0x600000+reg*4, dat, data, offset, mem_mask); } -static ADDRESS_MAP_START( aw_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( aw_map, AS_PROGRAM, 64, dc_state ) /* Area 0 */ AM_RANGE(0x00000000, 0x0001ffff) AM_READWRITE( aw_flash_r, aw_flash_w ) AM_REGION("awflash", 0) AM_RANGE(0xa0000000, 0xa001ffff) AM_READWRITE( aw_flash_r, aw_flash_w ) AM_REGION("awflash", 0) @@ -1827,7 +1827,7 @@ static const aica_interface aica_config = }; -static ADDRESS_MAP_START( dc_audio_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dc_audio_map, AS_PROGRAM, 32, dc_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE_MEMBER( dc_state, dc_sound_ram ) /* shared with SH-4 */ AM_RANGE(0x00800000, 0x00807fff) AM_DEVREADWRITE("aica", dc_arm_aica_r, dc_arm_aica_w) diff --git a/src/mame/drivers/naughtyb.c b/src/mame/drivers/naughtyb.c index 1be78b12d31..da106d24f66 100644 --- a/src/mame/drivers/naughtyb.c +++ b/src/mame/drivers/naughtyb.c @@ -246,7 +246,7 @@ static WRITE8_HANDLER( popflame_protection_w ) -static ADDRESS_MAP_START( naughtyb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( naughtyb_map, AS_PROGRAM, 8, naughtyb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(naughtyb_state, m_videoram) @@ -259,7 +259,7 @@ static ADDRESS_MAP_START( naughtyb_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xbfff) AM_READ(dsw0_port_r) // DSW0 ADDRESS_MAP_END -static ADDRESS_MAP_START( popflame_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( popflame_map, AS_PROGRAM, 8, naughtyb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(naughtyb_state, m_videoram) diff --git a/src/mame/drivers/nbmj8688.c b/src/mame/drivers/nbmj8688.c index bb0f54f05ad..3c5fb27a977 100644 --- a/src/mame/drivers/nbmj8688.c +++ b/src/mame/drivers/nbmj8688.c @@ -280,17 +280,17 @@ static DRIVER_INIT( barline ) nb1413m3_type = NB1413M3_BARLINE; } -static ADDRESS_MAP_START( mjsikaku_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjsikaku_map, AS_PROGRAM, 8, nbmj8688_state ) AM_RANGE(0x0000, 0xf7ff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( secolove_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( secolove_map, AS_PROGRAM, 8, nbmj8688_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( ojousan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ojousan_map, AS_PROGRAM, 8, nbmj8688_state ) AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x7fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0xffff) AM_ROM @@ -304,7 +304,7 @@ static READ8_HANDLER( ff_r ) return 0xff; } -static ADDRESS_MAP_START( secolove_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( secolove_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -329,7 +329,7 @@ static WRITE8_HANDLER( barline_output_w ) coin_counter_w(space->machine(), 0,data & 0x02); } -static ADDRESS_MAP_START( barline_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( barline_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_sndrombank1_w) @@ -347,7 +347,7 @@ static ADDRESS_MAP_START( barline_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( crystalg_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( crystalg_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -367,7 +367,7 @@ static ADDRESS_MAP_START( crystalg_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( otonano_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( otonano_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -386,7 +386,7 @@ static ADDRESS_MAP_START( otonano_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( kaguya_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kaguya_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -406,7 +406,7 @@ static ADDRESS_MAP_START( kaguya_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( iemoto_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( iemoto_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -428,7 +428,7 @@ static ADDRESS_MAP_START( iemoto_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( seiha_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( seiha_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -449,7 +449,7 @@ static ADDRESS_MAP_START( seiha_io_map, AS_IO, 8 ) AM_RANGE(0xf0, 0xf0) AM_WRITE(mjsikaku_scrolly_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjgaiden_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjgaiden_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -469,7 +469,7 @@ static ADDRESS_MAP_START( mjgaiden_io_map, AS_IO, 8 ) AM_RANGE(0xf0, 0xf0) AM_WRITE(mjsikaku_scrolly_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( p16bit_LCD_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( p16bit_LCD_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -495,7 +495,7 @@ static ADDRESS_MAP_START( p16bit_LCD_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjsikaku_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjsikaku_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -516,7 +516,7 @@ static ADDRESS_MAP_START( mjsikaku_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mmsikaku_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mmsikaku_io_map, AS_IO, 8, nbmj8688_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) diff --git a/src/mame/drivers/nbmj8891.c b/src/mame/drivers/nbmj8891.c index 3df27c88cee..e162b091dac 100644 --- a/src/mame/drivers/nbmj8891.c +++ b/src/mame/drivers/nbmj8891.c @@ -329,82 +329,82 @@ static DRIVER_INIT( taiwanmb ) } -static ADDRESS_MAP_START( gionbana_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gionbana_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(nbmj8891_palette_type1_r,nbmj8891_palette_type1_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( mgion_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mgion_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(nbmj8891_palette_type1_r,nbmj8891_palette_type1_w) AM_RANGE(0xf400, 0xf40f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( omotesnd_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( omotesnd_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(nbmj8891_palette_type1_r,nbmj8891_palette_type1_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( hanamomo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hanamomo_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(nbmj8891_palette_type1_r,nbmj8891_palette_type1_w) AM_RANGE(0xf400, 0xf40f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( scandalm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scandalm_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(nbmj8891_palette_type1_r,nbmj8891_palette_type1_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( club90s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( club90s_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf80f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xfc00, 0xfdff) AM_READWRITE(nbmj8891_palette_type1_r,nbmj8891_palette_type1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( lovehous_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lovehous_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(nbmj8891_palette_type2_r,nbmj8891_palette_type2_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( maiko_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( maiko_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(nbmj8891_palette_type2_r,nbmj8891_palette_type2_w) AM_RANGE(0xf400, 0xf40f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( hnxmasev_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hnxmasev_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf200, 0xf3ff) AM_READWRITE(nbmj8891_palette_type2_r,nbmj8891_palette_type2_w) AM_RANGE(0xf700, 0xf70f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( hnageman_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hnageman_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(nbmj8891_palette_type2_r,nbmj8891_palette_type2_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mmaiko_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mmaiko_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(nbmj8891_palette_type2_r,nbmj8891_palette_type2_w) AM_RANGE(0xf400, 0xf40f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( hanaoji_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hanaoji_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf200, 0xf3ff) AM_READWRITE(nbmj8891_palette_type2_r,nbmj8891_palette_type2_w) AM_RANGE(0xf700, 0xf70f) AM_READWRITE(nbmj8891_clut_r,nbmj8891_clut_w) @@ -416,7 +416,7 @@ static READ8_HANDLER( taiwanmb_unk_r ) return 0x00; // MCU or 1413M3 STATUS? } -static ADDRESS_MAP_START( taiwanmb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( taiwanmb_map, AS_PROGRAM, 8, nbmj8891_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xec00, 0xedff) AM_READWRITE(nbmj8891_palette_type3_r,nbmj8891_palette_type3_w) AM_RANGE(0xf800, 0xfeff) AM_RAM AM_SHARE("nvram") @@ -438,7 +438,7 @@ static ADDRESS_MAP_START( taiwanmb_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( gionbana_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gionbana_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -457,7 +457,7 @@ static ADDRESS_MAP_START( gionbana_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( mgion_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mgion_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -476,7 +476,7 @@ static ADDRESS_MAP_START( mgion_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( omotesnd_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( omotesnd_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x07) AM_WRITE(nbmj8891_blitter_w) @@ -498,7 +498,7 @@ static ADDRESS_MAP_START( omotesnd_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( hanamomo_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hanamomo_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -517,7 +517,7 @@ static ADDRESS_MAP_START( hanamomo_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( msjiken_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( msjiken_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -536,7 +536,7 @@ static ADDRESS_MAP_START( msjiken_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( scandal_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( scandal_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x40, 0x4f) AM_WRITE(nbmj8891_clut_w) @@ -555,7 +555,7 @@ static ADDRESS_MAP_START( scandal_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( scandalm_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( scandalm_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x07) AM_WRITE(nbmj8891_blitter_w) @@ -575,7 +575,7 @@ static ADDRESS_MAP_START( scandalm_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( bananadr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bananadr_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x07) AM_WRITE(nbmj8891_blitter_w) @@ -595,7 +595,7 @@ static ADDRESS_MAP_START( bananadr_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( lovehous_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( lovehous_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -614,7 +614,7 @@ static ADDRESS_MAP_START( lovehous_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( maiko_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( maiko_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) @@ -633,7 +633,7 @@ static ADDRESS_MAP_START( maiko_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( taiwanmb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( taiwanmb_io_map, AS_IO, 8, nbmj8891_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x81, 0x81) AM_DEVREAD("fmsnd", ay8910_r) diff --git a/src/mame/drivers/nbmj8900.c b/src/mame/drivers/nbmj8900.c index 4153ad87a5b..c99e2863a2a 100644 --- a/src/mame/drivers/nbmj8900.c +++ b/src/mame/drivers/nbmj8900.c @@ -108,21 +108,21 @@ static DRIVER_INIT( togenkyo ) } -static ADDRESS_MAP_START( ohpaipee_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ohpaipee_map, AS_PROGRAM, 8, nbmj8900_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8900_clut_r, nbmj8900_clut_w) AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(nbmj8900_palette_type1_r, nbmj8900_palette_type1_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( togenkyo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( togenkyo_map, AS_PROGRAM, 8, nbmj8900_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8900_clut_r, nbmj8900_clut_w) AM_RANGE(0xf400, 0xf5ff) AM_READWRITE(nbmj8900_palette_type1_r, nbmj8900_palette_type1_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ohpaipee_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ohpaipee_io_map, AS_IO, 8, nbmj8900_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) AM_RANGE(0x00, 0x00) AM_WRITE(nb1413m3_nmi_clock_w) diff --git a/src/mame/drivers/nbmj8991.c b/src/mame/drivers/nbmj8991.c index 6ea02e966ff..8db0b1b8ca3 100644 --- a/src/mame/drivers/nbmj8991.c +++ b/src/mame/drivers/nbmj8991.c @@ -190,70 +190,70 @@ static DRIVER_INIT( av2mj2rg ) } -static ADDRESS_MAP_START( pstadium_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pstadium_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf200, 0xf3ff) AM_RAM_WRITE(nbmj8991_palette_type3_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // finalbny ADDRESS_MAP_END -static ADDRESS_MAP_START( triplew1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( triplew1_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(nbmj8991_palette_type3_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf200, 0xf20f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // mjgottub ADDRESS_MAP_END -static ADDRESS_MAP_START( triplew2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( triplew2_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(nbmj8991_palette_type3_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf400, 0xf40f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mjlstory_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjlstory_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf200, 0xf3ff) AM_RAM_WRITE(nbmj8991_palette_type3_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf700, 0xf70f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( galkoku_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galkoku_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf400, 0xf5ff) AM_RAM_WRITE(nbmj8991_palette_type1_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // hyouban ADDRESS_MAP_END -static ADDRESS_MAP_START( galkaika_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( galkaika_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf400, 0xf5ff) AM_RAM_WRITE(nbmj8991_palette_type2_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") // tokimbsj ADDRESS_MAP_END -static ADDRESS_MAP_START( tokyogal_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tokyogal_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(nbmj8991_palette_type2_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf400, 0xf40f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( av2mj1bb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( av2mj1bb_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(nbmj8991_palette_type3_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf500, 0xf50f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( av2mj2rg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( av2mj2rg_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf00f) AM_READWRITE(nbmj8991_clut_r,nbmj8991_clut_w) AM_RANGE(0xf200, 0xf3ff) AM_RAM_WRITE(nbmj8991_palette_type3_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( galkoku_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( galkoku_io_map, AS_IO, 8, nbmj8991_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READWRITE(nb1413m3_sndrom_r,nbmj8991_blitter_w) AM_RANGE(0x80, 0x81) AM_DEVWRITE("fmsnd", ym3812_w) @@ -267,7 +267,7 @@ static ADDRESS_MAP_START( galkoku_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( hyouban_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hyouban_io_map, AS_IO, 8, nbmj8991_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_READWRITE(nb1413m3_sndrom_r,nbmj8991_blitter_w) AM_RANGE(0x81, 0x81) AM_DEVREAD("fmsnd", ay8910_r) @@ -282,7 +282,7 @@ static ADDRESS_MAP_START( hyouban_io_map, AS_IO, 8 ) AM_RANGE(0xf1, 0xf1) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( pstadium_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pstadium_io_map, AS_IO, 8, nbmj8991_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_WRITE(nbmj8991_blitter_w) AM_RANGE(0x80, 0x80) AM_WRITE(nbmj8991_sound_w) @@ -295,7 +295,7 @@ static ADDRESS_MAP_START( pstadium_io_map, AS_IO, 8 ) AM_RANGE(0xf8, 0xf8) AM_READ(nb1413m3_dipsw2_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( av2mj1bb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( av2mj1bb_io_map, AS_IO, 8, nbmj8991_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x7f) AM_WRITE(nbmj8991_blitter_w) AM_RANGE(0x80, 0x80) AM_WRITE(nbmj8991_sound_w) @@ -310,13 +310,13 @@ static ADDRESS_MAP_START( av2mj1bb_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nbmj8991_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nbmj8991_sound_map, AS_PROGRAM, 8, nbmj8991_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( nbmj8991_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( nbmj8991_sound_io_map, AS_IO, 8, nbmj8991_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(nbmj8991_sound_r) AM_DEVWRITE("dac1", DAC_WRITE) AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac2", DAC_WRITE) diff --git a/src/mame/drivers/nbmj9195.c b/src/mame/drivers/nbmj9195.c index 1f48d697402..9eff861fda6 100644 --- a/src/mame/drivers/nbmj9195.c +++ b/src/mame/drivers/nbmj9195.c @@ -692,7 +692,7 @@ static DRIVER_INIT( nbmj9195 ) nbmj9195_soundbank_w(space, 0, 0); } -static ADDRESS_MAP_START( tmpz84c011_regs, AS_IO, 8 ) +static ADDRESS_MAP_START( tmpz84c011_regs, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("main_ctc", z80ctc_r,z80ctc_w) AM_RANGE(0x50, 0x50) AM_READWRITE(tmpz84c011_0_pa_r,tmpz84c011_0_pa_w) AM_RANGE(0x51, 0x51) AM_READWRITE(tmpz84c011_0_pb_r,tmpz84c011_0_pb_w) @@ -706,31 +706,31 @@ static ADDRESS_MAP_START( tmpz84c011_regs, AS_IO, 8 ) AM_RANGE(0x44, 0x44) AM_READWRITE(tmpz84c011_0_dir_pe_r,tmpz84c011_0_dir_pe_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sailorws_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sailorws_map, AS_PROGRAM, 8, nbmj9195_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf1ff) AM_READWRITE(nbmj9195_palette_r,nbmj9195_palette_w) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( mjuraden_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjuraden_map, AS_PROGRAM, 8, nbmj9195_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf200, 0xf3ff) AM_READWRITE(nbmj9195_palette_r,nbmj9195_palette_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( koinomp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( koinomp_map, AS_PROGRAM, 8, nbmj9195_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe1ff) AM_READWRITE(nbmj9195_palette_r,nbmj9195_palette_w) AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( ngpgal_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ngpgal_map, AS_PROGRAM, 8, nbmj9195_state ) AM_RANGE(0x0000, 0xcfff) AM_ROM AM_RANGE(0xd000, 0xd1ff) AM_READWRITE(nbmj9195_palette_r,nbmj9195_palette_w) AM_RANGE(0xd800, 0xdfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mscoutm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mscoutm_map, AS_PROGRAM, 8, nbmj9195_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe5ff) AM_RAM AM_RANGE(0xe600, 0xebff) AM_READWRITE(nbmj9195_nb22090_palette_r,nbmj9195_nb22090_palette_w) @@ -738,7 +738,7 @@ static ADDRESS_MAP_START( mscoutm_map, AS_PROGRAM, 8 ) AM_RANGE(0xf200, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mjegolf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjegolf_map, AS_PROGRAM, 8, nbmj9195_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe5ff) AM_READWRITE(nbmj9195_nb22090_palette_r,nbmj9195_nb22090_palette_w) AM_RANGE(0xe600, 0xebff) AM_RAM @@ -746,7 +746,7 @@ static ADDRESS_MAP_START( mjegolf_map, AS_PROGRAM, 8 ) AM_RANGE(0xf200, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mjuraden_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjuraden_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -761,7 +761,7 @@ static ADDRESS_MAP_START( mjuraden_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( koinomp_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( koinomp_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -781,7 +781,7 @@ static ADDRESS_MAP_START( koinomp_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( patimono_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( patimono_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -799,7 +799,7 @@ static ADDRESS_MAP_START( patimono_io_map, AS_IO, 8 ) AM_RANGE(0xd0, 0xdf) AM_WRITE(nbmj9195_clut_1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mmehyou_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mmehyou_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -813,7 +813,7 @@ static ADDRESS_MAP_START( mmehyou_io_map, AS_IO, 8 ) AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gal10ren_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gal10ren_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -831,7 +831,7 @@ static ADDRESS_MAP_START( gal10ren_io_map, AS_IO, 8 ) AM_RANGE(0xd8, 0xd8) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( renaiclb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( renaiclb_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -849,7 +849,7 @@ static ADDRESS_MAP_START( renaiclb_io_map, AS_IO, 8 ) AM_RANGE(0xf0, 0xff) AM_WRITE(nbmj9195_clut_0_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjlaman_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjlaman_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -868,7 +868,7 @@ static ADDRESS_MAP_START( mjlaman_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mkeibaou_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mkeibaou_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -887,7 +887,7 @@ static ADDRESS_MAP_START( mkeibaou_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pachiten_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pachiten_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -905,7 +905,7 @@ static ADDRESS_MAP_START( pachiten_io_map, AS_IO, 8 ) AM_RANGE(0xe6, 0xe6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sailorws_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sailorws_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -923,7 +923,7 @@ static ADDRESS_MAP_START( sailorws_io_map, AS_IO, 8 ) AM_RANGE(0xf6, 0xf6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sailorwr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sailorwr_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -942,7 +942,7 @@ static ADDRESS_MAP_START( sailorwr_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( psailor1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( psailor1_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -960,7 +960,7 @@ static ADDRESS_MAP_START( psailor1_io_map, AS_IO, 8 ) AM_RANGE(0xf6, 0xf6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( psailor2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( psailor2_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -978,7 +978,7 @@ static ADDRESS_MAP_START( psailor2_io_map, AS_IO, 8 ) AM_RANGE(0xf6, 0xf6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( otatidai_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( otatidai_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -996,7 +996,7 @@ static ADDRESS_MAP_START( otatidai_io_map, AS_IO, 8 ) AM_RANGE(0xb8, 0xb8) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( yosimoto_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( yosimoto_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1014,7 +1014,7 @@ static ADDRESS_MAP_START( yosimoto_io_map, AS_IO, 8 ) AM_RANGE(0xd0, 0xdf) AM_WRITE(nbmj9195_clut_1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( jituroku_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( jituroku_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1032,7 +1032,7 @@ static ADDRESS_MAP_START( jituroku_io_map, AS_IO, 8 ) AM_RANGE(0xf8, 0xf8) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ngpgal_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ngpgal_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1046,7 +1046,7 @@ static ADDRESS_MAP_START( ngpgal_io_map, AS_IO, 8 ) AM_RANGE(0xd0, 0xdf) AM_WRITE(nbmj9195_clut_0_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjgottsu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjgottsu_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1060,7 +1060,7 @@ static ADDRESS_MAP_START( mjgottsu_io_map, AS_IO, 8 ) AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( cmehyou_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cmehyou_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1074,7 +1074,7 @@ static ADDRESS_MAP_START( cmehyou_io_map, AS_IO, 8 ) AM_RANGE(0xd0, 0xdf) AM_WRITE(nbmj9195_clut_0_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjkoiura_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjkoiura_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1088,7 +1088,7 @@ static ADDRESS_MAP_START( mjkoiura_io_map, AS_IO, 8 ) AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mkoiuraa_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mkoiuraa_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1102,7 +1102,7 @@ static ADDRESS_MAP_START( mkoiuraa_io_map, AS_IO, 8 ) AM_RANGE(0xd0, 0xdf) AM_WRITE(nbmj9195_clut_0_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mscoutm_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mscoutm_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1122,7 +1122,7 @@ static ADDRESS_MAP_START( mscoutm_io_map, AS_IO, 8 ) AM_RANGE(0xf0, 0xff) AM_WRITE(nbmj9195_clut_1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( imekura_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( imekura_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1142,7 +1142,7 @@ static ADDRESS_MAP_START( imekura_io_map, AS_IO, 8 ) AM_RANGE(0xf0, 0xff) AM_WRITE(nbmj9195_clut_1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjegolf_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mjegolf_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) @@ -1164,13 +1164,13 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( sailorws_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sailorws_sound_map, AS_PROGRAM, 8, nbmj9195_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sailorws_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sailorws_sound_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("audio_ctc", z80ctc_r,z80ctc_w) AM_RANGE(0x50, 0x50) AM_READWRITE(tmpz84c011_1_pa_r,tmpz84c011_1_pa_w) diff --git a/src/mame/drivers/nemesis.c b/src/mame/drivers/nemesis.c index 049a3f4e3e9..59dbabba364 100644 --- a/src/mame/drivers/nemesis.c +++ b/src/mame/drivers/nemesis.c @@ -297,7 +297,7 @@ static WRITE8_DEVICE_HANDLER( city_sound_bank_w ) } -static ADDRESS_MAP_START( nemesis_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nemesis_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x04ffff) AM_RAM_WRITE(nemesis_charram_word_w) AM_BASE_SIZE_MEMBER(nemesis_state, m_charram, m_charram_size) AM_RANGE(0x050000, 0x051fff) AM_RAM @@ -328,7 +328,7 @@ static ADDRESS_MAP_START( nemesis_map, AS_PROGRAM, 16 ) AM_RANGE(0x060000, 0x067fff) AM_RAM /* WORK RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( gx400_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gx400_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM /* ROM BIOS */ AM_RANGE(0x010000, 0x01ffff) AM_RAM AM_RANGE(0x020000, 0x0287ff) AM_READWRITE(gx400_sharedram_word_r, gx400_sharedram_word_w) @@ -363,7 +363,7 @@ static ADDRESS_MAP_START( gx400_map, AS_PROGRAM, 16 ) AM_RANGE(0x080000, 0x0bffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( konamigt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( konamigt_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x04ffff) AM_RAM_WRITE(nemesis_charram_word_w) AM_BASE_SIZE_MEMBER(nemesis_state, m_charram, m_charram_size) AM_RANGE(0x050000, 0x051fff) AM_RAM @@ -395,7 +395,7 @@ static ADDRESS_MAP_START( konamigt_map, AS_PROGRAM, 16 ) AM_RANGE(0x070000, 0x070001) AM_READ(konamigt_input_word_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( rf2_gx400_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rf2_gx400_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM /* ROM BIOS */ AM_RANGE(0x010000, 0x01ffff) AM_RAM AM_RANGE(0x020000, 0x0287ff) AM_READWRITE(gx400_sharedram_word_r, gx400_sharedram_word_w) @@ -431,7 +431,7 @@ static ADDRESS_MAP_START( rf2_gx400_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, nemesis_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0xa000, 0xafff) AM_DEVWRITE("k007232", k005289_pitch_A_w) @@ -447,7 +447,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe405, 0xe405) AM_DEVWRITE("ay2", ay8910_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gx400_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gx400_sound_map, AS_PROGRAM, 8, nemesis_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x87ff) AM_RAM AM_BASE_MEMBER(nemesis_state, m_gx400_shared_ram) AM_RANGE(0xa000, 0xafff) AM_DEVWRITE("k007232", k005289_pitch_A_w) @@ -467,7 +467,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( salamand_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( salamand_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x087fff) AM_RAM AM_RANGE(0x090000, 0x091fff) AM_RAM_WRITE(salamander_palette_word_w) AM_BASE_MEMBER(nemesis_state, m_paletteram) @@ -492,7 +492,7 @@ static ADDRESS_MAP_START( salamand_map, AS_PROGRAM, 16 ) AM_RANGE(0x190f80, 0x190fff) AM_BASE_MEMBER(nemesis_state, m_yscroll2) ADDRESS_MAP_END -static ADDRESS_MAP_START( blkpnthr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blkpnthr_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x081fff) AM_RAM_WRITE(salamander_palette_word_w) AM_BASE_MEMBER(nemesis_state, m_paletteram) AM_RANGE(0x090000, 0x097fff) AM_RAM @@ -517,7 +517,7 @@ static ADDRESS_MAP_START( blkpnthr_map, AS_PROGRAM, 16 ) AM_RANGE(0x190000, 0x190fff) AM_RAM AM_BASE_SIZE_MEMBER(nemesis_state, m_spriteram, m_spriteram_size) /* more sprite ram ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( citybomb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( citybomb_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x080000, 0x087fff) AM_RAM AM_RANGE(0x0e0000, 0x0e1fff) AM_RAM_WRITE(salamander_palette_word_w) AM_BASE_MEMBER(nemesis_state, m_paletteram) @@ -544,7 +544,7 @@ static ADDRESS_MAP_START( citybomb_map, AS_PROGRAM, 16 ) AM_RANGE(0x310000, 0x310fff) AM_RAM AM_BASE_SIZE_MEMBER(nemesis_state, m_spriteram, m_spriteram_size) /* more sprite ram ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( nyanpani_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nyanpani_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x047fff) AM_RAM AM_RANGE(0x060000, 0x061fff) AM_RAM_WRITE(salamander_palette_word_w) AM_BASE_MEMBER(nemesis_state, m_paletteram) @@ -577,7 +577,7 @@ static READ8_HANDLER( wd_r ) return state->m_frame_counter; } -static ADDRESS_MAP_START( sal_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sal_sound_map, AS_PROGRAM, 8, nemesis_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) @@ -588,7 +588,7 @@ static ADDRESS_MAP_START( sal_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_DEVWRITE("vlm", salamand_speech_start_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( blkpnthr_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blkpnthr_sound_map, AS_PROGRAM, 8, nemesis_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) @@ -597,7 +597,7 @@ static ADDRESS_MAP_START( blkpnthr_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe000) AM_READ(wd_r) /* watchdog?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( city_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( city_sound_map, AS_PROGRAM, 8, nemesis_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9800, 0x987f) AM_DEVREADWRITE("k051649", k051649_waveform_r, k051649_waveform_w) @@ -613,7 +613,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( hcrash_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hcrash_map, AS_PROGRAM, 16, nemesis_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x05ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM diff --git a/src/mame/drivers/neogeo.c b/src/mame/drivers/neogeo.c index 739160ffb09..ab0138ef4f6 100644 --- a/src/mame/drivers/neogeo.c +++ b/src/mame/drivers/neogeo.c @@ -1087,7 +1087,7 @@ static MACHINE_RESET( neogeo ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, neogeo_state ) AM_RANGE(0x000000, 0x00007f) AM_ROMBANK(NEOGEO_BANK_VECTORS) AM_RANGE(0x000080, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x0f0000) AM_RAM @@ -1121,7 +1121,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, neogeo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_MAIN_BANK) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_CART_BANK + 3) AM_RANGE(0xc000, 0xdfff) AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_CART_BANK + 2) @@ -1138,7 +1138,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, neogeo_state ) /*AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READWRITE(audio_command_r, audio_cpu_clear_nmi_w);*/ /* may not and NMI clear */ AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READ(audio_command_r) AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) diff --git a/src/mame/drivers/neoprint.c b/src/mame/drivers/neoprint.c index 71360597840..d358043cc32 100644 --- a/src/mame/drivers/neoprint.c +++ b/src/mame/drivers/neoprint.c @@ -200,7 +200,7 @@ static WRITE8_HANDLER( audio_result_w ) state->m_audio_result = data; } -static ADDRESS_MAP_START( neoprint_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( neoprint_map, AS_PROGRAM, 16, neoprint_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM /* AM_RANGE(0x100000, 0x17ffff) multi-cart or banking, some writes points here if anything lies there too */ AM_RANGE(0x200000, 0x20ffff) AM_RAM @@ -270,7 +270,7 @@ static READ16_HANDLER( rom_window_r ) return rom[offset | 0x80000/2 | state->m_bank_val*0x40000/2]; } -static ADDRESS_MAP_START( nprsp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nprsp_map, AS_PROGRAM, 16, neoprint_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_READ(rom_window_r) AM_RANGE(0x200000, 0x200001) AM_READWRITE(neoprint_audio_result_r,audio_command_w) @@ -297,7 +297,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( neoprint_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( neoprint_audio_map, AS_PROGRAM, 8, neoprint_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM//AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_MAIN_BANK) // AM_RANGE(0x8000, 0xbfff) AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_CART_BANK + 3) // AM_RANGE(0xc000, 0xdfff) AM_ROMBANK(NEOGEO_BANK_AUDIO_CPU_CART_BANK + 2) @@ -314,7 +314,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( neoprint_audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( neoprint_audio_io_map, AS_IO, 8, neoprint_state ) /*AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READWRITE(audio_command_r, audio_cpu_clear_nmi_w);*/ /* may not and NMI clear */ AM_RANGE(0x00, 0x00) AM_MIRROR(0xff00) AM_READ(audio_command_r) AM_WRITENOP AM_RANGE(0x04, 0x07) AM_MIRROR(0xff00) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) diff --git a/src/mame/drivers/news.c b/src/mame/drivers/news.c index 596bec05299..2c7d9c092ee 100644 --- a/src/mame/drivers/news.c +++ b/src/mame/drivers/news.c @@ -19,7 +19,7 @@ driver by David Haywood #include "sound/okim6295.h" -static ADDRESS_MAP_START( news_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( news_map, AS_PROGRAM, 8, news_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* 4000-7fff is written to during startup, probably leftover code */ AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(news_fgram_w) AM_BASE_MEMBER(news_state, m_fgram) AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(news_bgram_w) AM_BASE_MEMBER(news_state, m_bgram) diff --git a/src/mame/drivers/nexus3d.c b/src/mame/drivers/nexus3d.c index 3981814ba28..39df633859e 100644 --- a/src/mame/drivers/nexus3d.c +++ b/src/mame/drivers/nexus3d.c @@ -145,7 +145,7 @@ static READ32_HANDLER( nexus3d_unk_r ) // //} -static ADDRESS_MAP_START( nexus3d_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( nexus3d_map, AS_PROGRAM, 32, nexus3d_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(nexus3d_state, m_mainram) AM_RANGE(0x00400000, 0x01ffffff) AM_RAM // ?? uploads various data, + pointers to data in the 0x01ffxxxx range, might be video system related diff --git a/src/mame/drivers/nightgal.c b/src/mame/drivers/nightgal.c index 3b04e804a3d..06a475bad9e 100644 --- a/src/mame/drivers/nightgal.c +++ b/src/mame/drivers/nightgal.c @@ -464,7 +464,7 @@ static READ8_DEVICE_HANDLER( input_2p_r ) * Night Gal ********************************/ #ifdef UNUSED_CODE -static ADDRESS_MAP_START( nightgal_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nightgal_map, AS_PROGRAM, 8, nightgal_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc100, 0xc100) AM_READ(nsc_latch_r) AM_RANGE(0xc200, 0xc200) AM_WRITE(nsc_latch_w) @@ -472,7 +472,7 @@ static ADDRESS_MAP_START( nightgal_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( nightgal_io, AS_IO, 8 ) +static ADDRESS_MAP_START( nightgal_io, AS_IO, 8, nightgal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01,0x01) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02,0x03) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -485,7 +485,7 @@ static ADDRESS_MAP_START( nightgal_io, AS_IO, 8 ) AM_RANGE(0x12,0x14) AM_WRITE(blitter_w) //data for the nsc to be processed ADDRESS_MAP_END -static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8, nightgal_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x0080, 0x0080) AM_READ(blitter_status_r) AM_RANGE(0x0081, 0x0083) AM_READ(nsc_blit_r) @@ -505,14 +505,14 @@ ADDRESS_MAP_END * Sexy Gal ********************************/ -static ADDRESS_MAP_START( sexygal_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sexygal_map, AS_PROGRAM, 8, nightgal_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAM //??? AM_RANGE(0xe000, 0xefff) AM_READWRITE(royalqn_comm_r, royalqn_comm_w) AM_BASE_MEMBER(nightgal_state,m_comms_ram) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sexygal_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sexygal_io, AS_IO, 8, nightgal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00,0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) // AM_RANGE(0x10,0x10) AM_WRITE(output_w) @@ -523,7 +523,7 @@ static ADDRESS_MAP_START( sexygal_io, AS_IO, 8 ) AM_RANGE(0x14,0x14) AM_MIRROR(0xe8) AM_READNOP AM_WRITE(royalqn_blitter_2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sexygal_nsc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sexygal_nsc_map, AS_PROGRAM, 8, nightgal_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x0080, 0x0080) AM_READ(blitter_status_r) AM_RANGE(0x0081, 0x0083) AM_READ(royalqn_nsc_blit_r) @@ -540,14 +540,14 @@ ADDRESS_MAP_END * Royal Queen ********************************/ -static ADDRESS_MAP_START( royalqn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( royalqn_map, AS_PROGRAM, 8, nightgal_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_NOP AM_RANGE(0xc000, 0xdfff) AM_READWRITE(royalqn_comm_r, royalqn_comm_w) AM_BASE_MEMBER(nightgal_state,m_comms_ram) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( royalqn_io, AS_IO, 8 ) +static ADDRESS_MAP_START( royalqn_io, AS_IO, 8, nightgal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01,0x01) AM_MIRROR(0xec) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x02,0x03) AM_MIRROR(0xec) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -561,7 +561,7 @@ static ADDRESS_MAP_START( royalqn_io, AS_IO, 8 ) AM_RANGE(0x17,0x17) AM_MIRROR(0xe8) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( royalqn_nsc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( royalqn_nsc_map, AS_PROGRAM, 8, nightgal_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x0080, 0x0080) AM_READ(blitter_status_r) AM_RANGE(0x0081, 0x0083) AM_READ(royalqn_nsc_blit_r) diff --git a/src/mame/drivers/ninjakd2.c b/src/mame/drivers/ninjakd2.c index 7377bcd06e4..e879b18ddef 100644 --- a/src/mame/drivers/ninjakd2.c +++ b/src/mame/drivers/ninjakd2.c @@ -392,7 +392,7 @@ static WRITE8_HANDLER( omegaf_io_protection_w ) * *************************************/ -static ADDRESS_MAP_START( ninjakd2_main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ninjakd2_main_cpu, AS_PROGRAM, 8, ninjakd2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("KEYCOIN") @@ -413,7 +413,7 @@ static ADDRESS_MAP_START( ninjakd2_main_cpu, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mnight_main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mnight_main_cpu, AS_PROGRAM, 8, ninjakd2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xd9ff) AM_RAM @@ -434,7 +434,7 @@ static ADDRESS_MAP_START( mnight_main_cpu, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( robokid_main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( robokid_main_cpu, AS_PROGRAM, 8, ninjakd2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(paletteram_RRRRGGGGBBBBxxxx_be_w) AM_BASE_GENERIC(paletteram) @@ -462,7 +462,7 @@ static ADDRESS_MAP_START( robokid_main_cpu, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( omegaf_main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( omegaf_main_cpu, AS_PROGRAM, 8, ninjakd2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("KEYCOIN") @@ -489,7 +489,7 @@ static ADDRESS_MAP_START( omegaf_main_cpu, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ninjakd2_sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ninjakd2_sound_cpu, AS_PROGRAM, 8, ninjakd2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -497,7 +497,7 @@ static ADDRESS_MAP_START( ninjakd2_sound_cpu, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_WRITE(ninjakd2_pcm_play_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ninjakd2_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( ninjakd2_sound_io, AS_IO, 8, ninjakd2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("2203.1", ym2203_w) AM_RANGE(0x80, 0x81) AM_DEVWRITE("2203.2", ym2203_w) diff --git a/src/mame/drivers/ninjaw.c b/src/mame/drivers/ninjaw.c index 5688b6e2f2f..f21fa3ebf60 100644 --- a/src/mame/drivers/ninjaw.c +++ b/src/mame/drivers/ninjaw.c @@ -428,7 +428,7 @@ static WRITE16_HANDLER( tc0100scn_triple_screen_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( ninjaw_master_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ninjaw_master_map, AS_PROGRAM, 16, ninjaw_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* main ram */ AM_RANGE(0x200000, 0x200001) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_portreg_r, tc0220ioc_portreg_w, 0x00ff) @@ -451,7 +451,7 @@ ADDRESS_MAP_END // NB there could be conflicts between which cpu writes what to the // palette, as our interleaving won't match the original board. -static ADDRESS_MAP_START( ninjaw_slave_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ninjaw_slave_map, AS_PROGRAM, 16, ninjaw_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main ram */ AM_RANGE(0x200000, 0x200001) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_portreg_r, tc0220ioc_portreg_w, 0x00ff) @@ -464,7 +464,7 @@ static ADDRESS_MAP_START( ninjaw_slave_map, AS_PROGRAM, 16 ) AM_RANGE(0x360000, 0x360007) AM_DEVREADWRITE("tc0110pcr_3", tc0110pcr_word_r, tc0110pcr_step1_word_w) /* palette (3rd screen) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( darius2_master_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( darius2_master_map, AS_PROGRAM, 16, ninjaw_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_RAM /* main ram */ AM_RANGE(0x200000, 0x200001) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_portreg_r, tc0220ioc_portreg_w, 0x00ff) @@ -484,7 +484,7 @@ static ADDRESS_MAP_START( darius2_master_map, AS_PROGRAM, 16 ) AM_RANGE(0x360000, 0x360007) AM_DEVREADWRITE("tc0110pcr_3", tc0110pcr_word_r, tc0110pcr_step1_word_w) /* palette (3rd screen) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( darius2_slave_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( darius2_slave_map, AS_PROGRAM, 16, ninjaw_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM /* main ram */ AM_RANGE(0x200000, 0x200001) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_portreg_r, tc0220ioc_portreg_w, 0x00ff) @@ -497,7 +497,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( ninjaw_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ninjaw_sound_map, AS_PROGRAM, 8, ninjaw_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/nitedrvr.c b/src/mame/drivers/nitedrvr.c index b8bb6ede0d5..d450f1b0017 100644 --- a/src/mame/drivers/nitedrvr.c +++ b/src/mame/drivers/nitedrvr.c @@ -42,7 +42,7 @@ /* Memory Map */ -static ADDRESS_MAP_START( nitedrvr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nitedrvr_map, AS_PROGRAM, 8, nitedrvr_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x100) // SCRAM AM_RANGE(0x0200, 0x027f) AM_RAM_WRITE(nitedrvr_videoram_w) AM_MIRROR(0x180) AM_BASE_MEMBER(nitedrvr_state, m_videoram) // PFW AM_RANGE(0x0400, 0x05ff) AM_WRITE(nitedrvr_hvc_w) AM_BASE_MEMBER(nitedrvr_state, m_hvc) // POSH, POSV, CHAR, Watchdog diff --git a/src/mame/drivers/niyanpai.c b/src/mame/drivers/niyanpai.c index 90cd8b48d34..54086fa7f5d 100644 --- a/src/mame/drivers/niyanpai.c +++ b/src/mame/drivers/niyanpai.c @@ -356,7 +356,7 @@ static WRITE16_HANDLER ( musobana_inputport_w ) state->m_musobana_inputport = data; } -static ADDRESS_MAP_START( tmp68301_regs, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tmp68301_regs, AS_PROGRAM, 16, niyanpai_state ) AM_RANGE(0xfffc00, 0xfffc0f) AM_READWRITE(tmp68301_address_decoder_r,tmp68301_address_decoder_w) AM_RANGE(0xfffc80, 0xfffc9f) AM_READWRITE(tmp68301_interrupt_controller_r,tmp68301_interrupt_controller_w) AM_RANGE(0xfffd00, 0xfffd0f) AM_READWRITE(tmp68301_parallel_interface_r,tmp68301_parallel_interface_w) @@ -364,7 +364,7 @@ static ADDRESS_MAP_START( tmp68301_regs, AS_PROGRAM, 16 ) AM_RANGE(0xfffe00, 0xfffe4f) AM_READWRITE(tmp68301_timer_r,tmp68301_timer_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( niyanpai_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( niyanpai_map, AS_PROGRAM, 16, niyanpai_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x040fff) AM_RAM AM_SHARE("nvram") @@ -399,7 +399,7 @@ static ADDRESS_MAP_START( niyanpai_map, AS_PROGRAM, 16 ) AM_IMPORT_FROM( tmp68301_regs ) ADDRESS_MAP_END -static ADDRESS_MAP_START( musobana_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( musobana_map, AS_PROGRAM, 16, niyanpai_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x040fff) AM_RAM @@ -437,7 +437,7 @@ static ADDRESS_MAP_START( musobana_map, AS_PROGRAM, 16 ) AM_IMPORT_FROM( tmp68301_regs ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mhhonban_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mhhonban_map, AS_PROGRAM, 16, niyanpai_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x040fff) AM_RAM @@ -478,13 +478,13 @@ static ADDRESS_MAP_START( mhhonban_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( niyanpai_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( niyanpai_sound_map, AS_PROGRAM, 8, niyanpai_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( niyanpai_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( niyanpai_sound_io_map, AS_IO, 8, niyanpai_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) AM_RANGE(0x50, 0x50) AM_READWRITE(tmpz84c011_0_pa_r, tmpz84c011_0_pa_w) diff --git a/src/mame/drivers/nmg5.c b/src/mame/drivers/nmg5.c index 3de4a0fc7b4..0378e4e05ce 100644 --- a/src/mame/drivers/nmg5.c +++ b/src/mame/drivers/nmg5.c @@ -327,7 +327,7 @@ static WRITE8_DEVICE_HANDLER( oki_banking_w ) ********************************************************************/ -static ADDRESS_MAP_START( nmg5_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nmg5_map, AS_PROGRAM, 16, nmg5_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x120000, 0x12ffff) AM_RAM AM_RANGE(0x140000, 0x1407ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -347,7 +347,7 @@ static ADDRESS_MAP_START( nmg5_map, AS_PROGRAM, 16 ) AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_BASE_MEMBER(nmg5_state, m_bitmap) ADDRESS_MAP_END -static ADDRESS_MAP_START( pclubys_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pclubys_map, AS_PROGRAM, 16, nmg5_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x440000, 0x4407ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -372,17 +372,17 @@ ADDRESS_MAP_END ********************************************************************/ -static ADDRESS_MAP_START( nmg5_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nmg5_sound_map, AS_PROGRAM, 8, nmg5_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pclubys_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pclubys_sound_map, AS_PROGRAM, 8, nmg5_state ) AM_RANGE(0x0000, 0xf7ff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, nmg5_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("oki", oki_banking_w) AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) diff --git a/src/mame/drivers/nmk16.c b/src/mame/drivers/nmk16.c index c32a4420811..08cf30a3184 100644 --- a/src/mame/drivers/nmk16.c +++ b/src/mame/drivers/nmk16.c @@ -311,7 +311,7 @@ static WRITE16_HANDLER( afega_soundlatch_w ) /***************************************************************************/ -static ADDRESS_MAP_START( vandyke_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vandyke_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -329,7 +329,7 @@ static ADDRESS_MAP_START( vandyke_map, AS_PROGRAM, 16 ) AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( vandykeb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vandykeb_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -348,7 +348,7 @@ static ADDRESS_MAP_START( vandykeb_map, AS_PROGRAM, 16 ) AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( manybloc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( manybloc_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -365,7 +365,7 @@ static ADDRESS_MAP_START( manybloc_map, AS_PROGRAM, 16 ) AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( tharrier_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tharrier_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ(tharrier_mcu_r) // AM_READ_PORT("IN1") @@ -385,7 +385,7 @@ static ADDRESS_MAP_START( tharrier_map, AS_PROGRAM, 16 ) AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( tharrier_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tharrier_sound_map, AS_PROGRAM, 8, nmk16_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xf000, 0xf000) AM_READWRITE(soundlatch_r,soundlatch2_w) @@ -395,7 +395,7 @@ static ADDRESS_MAP_START( tharrier_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf700, 0xf700) AM_WRITE(tharrier_oki6295_bankswitch_1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( tharrier_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tharrier_sound_io_map, AS_IO, 8, nmk16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) ADDRESS_MAP_END @@ -403,7 +403,7 @@ ADDRESS_MAP_END //Read input port 1 030c8/ BAD //3478 GOOD -static ADDRESS_MAP_START( mustang_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mustang_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -420,7 +420,7 @@ static ADDRESS_MAP_START( mustang_map, AS_PROGRAM, 16 ) AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( mustangb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mustangb_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -438,7 +438,7 @@ static ADDRESS_MAP_START( mustangb_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( twinactn_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( twinactn_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -456,7 +456,7 @@ static ADDRESS_MAP_START( twinactn_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( acrobatm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( acrobatm_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_RANGE(0x80000, 0x8ffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) AM_RANGE(0xc0000, 0xc0001) AM_READ_PORT("IN0") @@ -474,7 +474,7 @@ static ADDRESS_MAP_START( acrobatm_map, AS_PROGRAM, 16 ) AM_RANGE(0xd4000, 0xd47ff) AM_RAM_WRITE(nmk_txvideoram_w) AM_BASE_MEMBER(nmk16_state, m_nmk_txvideoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( bioship_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bioship_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -653,7 +653,7 @@ static WRITE16_HANDLER( hachamf_mainram_w ) } } -static ADDRESS_MAP_START( hachamf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hachamf_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM /* I/O Region */ AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") @@ -881,7 +881,7 @@ static TIMER_DEVICE_CALLBACK( hachamf_mcu_sim ) mcu_run(timer.machine(),0); } -static ADDRESS_MAP_START( tdragon_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tdragon_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x044022, 0x044023) AM_READNOP /* No Idea */ // AM_RANGE(0x0b0000, 0x0b7fff) AM_RAM /* Work RAM */ @@ -904,7 +904,7 @@ static ADDRESS_MAP_START( tdragon_map, AS_PROGRAM, 16 ) AM_RANGE(0x0d0000, 0x0d07ff) AM_RAM_WRITE(nmk_txvideoram_w) AM_BASE_MEMBER(nmk16_state, m_nmk_txvideoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( tdragonb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tdragonb_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x044022, 0x044023) AM_READNOP /* No Idea */ AM_RANGE(0x0b0000, 0x0bffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) @@ -921,7 +921,7 @@ static ADDRESS_MAP_START( tdragonb_map, AS_PROGRAM, 16 ) AM_RANGE(0x0d0000, 0x0d07ff) AM_RAM_WRITE(nmk_txvideoram_w) AM_BASE_MEMBER(nmk16_state, m_nmk_txvideoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( ssmissin_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ssmissin_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0b0000, 0x0bffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) AM_RANGE(0x0c0000, 0x0c0001) AM_READ_PORT("IN0") @@ -937,7 +937,7 @@ static ADDRESS_MAP_START( ssmissin_map, AS_PROGRAM, 16 ) AM_RANGE(0x0d0000, 0x0d07ff) AM_MIRROR(0x1800) AM_RAM_WRITE(nmk_txvideoram_w) AM_BASE_MEMBER(nmk16_state, m_nmk_txvideoram) //mirror for airattck ADDRESS_MAP_END -static ADDRESS_MAP_START( ssmissin_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssmissin_sound_map, AS_PROGRAM, 8, nmk16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(ssmissin_soundbank_w) @@ -945,7 +945,7 @@ static ADDRESS_MAP_START( ssmissin_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( strahl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( strahl_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_RANGE(0x80000, 0x80001) AM_READ_PORT("IN0") AM_RANGE(0x80002, 0x80003) AM_READ_PORT("IN1") @@ -964,7 +964,7 @@ static ADDRESS_MAP_START( strahl_map, AS_PROGRAM, 16 ) AM_RANGE(0xf0000, 0xfffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( macross_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( macross_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -982,7 +982,7 @@ static ADDRESS_MAP_START( macross_map, AS_PROGRAM, 16 ) AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( gunnail_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gunnail_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -1002,7 +1002,7 @@ static ADDRESS_MAP_START( gunnail_map, AS_PROGRAM, 16 ) AM_RANGE(0x0f0000, 0x0fffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( macross2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( macross2_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("IN0") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("IN1") @@ -1028,7 +1028,7 @@ static ADDRESS_MAP_START( macross2_map, AS_PROGRAM, 16 ) AM_RANGE(0x1f0000, 0x1fffff) AM_RAM AM_BASE_MEMBER(nmk16_state, m_mainram) ADDRESS_MAP_END -static ADDRESS_MAP_START( raphero_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( raphero_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("IN0") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("IN1") @@ -1075,7 +1075,7 @@ static WRITE8_HANDLER( raphero_sound_rombank_w ) memory_set_bankptr(space->machine(), "bank1",space->machine().region("audiocpu")->base() + 0x10000 + (data & 0x07) * 0x4000); } -static ADDRESS_MAP_START( raphero_sound_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( raphero_sound_mem_map, AS_PROGRAM, 8, nmk16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) @@ -1088,7 +1088,7 @@ static ADDRESS_MAP_START( raphero_sound_mem_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( macross2_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( macross2_sound_map, AS_PROGRAM, 8, nmk16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* banked ROM */ AM_RANGE(0xa000, 0xa000) AM_READNOP /* IRQ ack? watchdog? */ @@ -1097,7 +1097,7 @@ static ADDRESS_MAP_START( macross2_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_READWRITE(soundlatch_r,soundlatch2_w) /* from 68000 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( macross2_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( macross2_sound_io_map, AS_IO, 8, nmk16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE_MODERN("oki1", okim6295_device, read, write) @@ -1105,7 +1105,7 @@ static ADDRESS_MAP_START( macross2_sound_io_map, AS_IO, 8 ) AM_RANGE(0x90, 0x97) AM_DEVWRITE("nmk112", nmk112_okibank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bjtwin_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bjtwin_map, AS_PROGRAM, 16, nmk16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") AM_RANGE(0x080002, 0x080003) AM_READ_PORT("IN1") @@ -4618,7 +4618,7 @@ static WRITE16_HANDLER( afega_scroll1_w ) */ -static ADDRESS_MAP_START( afega, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( afega, AS_PROGRAM, 16, nmk16_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("IN0") // Buttons @@ -4687,7 +4687,7 @@ static WRITE8_DEVICE_HANDLER( spec2k_oki1_banking_w ) downcast<okim6295_device *>(device)->set_bank_base(0x40000); } -static ADDRESS_MAP_START( afega_sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( afega_sound_cpu, AS_PROGRAM, 8, nmk16_state ) AM_RANGE(0x0003, 0x0003) AM_WRITENOP // bug in sound prg? AM_RANGE(0x0004, 0x0004) AM_WRITENOP // bug in sound prg? AM_RANGE(0x0000, 0xefff) AM_ROM @@ -4697,7 +4697,7 @@ static ADDRESS_MAP_START( afega_sound_cpu, AS_PROGRAM, 8 ) AM_RANGE(0xf80a, 0xf80a) AM_DEVREADWRITE_MODERN("oki1", okim6295_device, read, write) // M6295 ADDRESS_MAP_END -static ADDRESS_MAP_START( firehawk_sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( firehawk_sound_cpu, AS_PROGRAM, 8, nmk16_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xfff0, 0xfff0) AM_READ(soundlatch_r) @@ -4718,7 +4718,7 @@ static WRITE8_DEVICE_HANDLER( twinactn_oki_bank_w ) // logerror("%04x: oki bank %02x\n", cpu_get_pc(&space->device()), data); } -static ADDRESS_MAP_START( twinactn_sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( twinactn_sound_cpu, AS_PROGRAM, 8, nmk16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("oki1", twinactn_oki_bank_w) diff --git a/src/mame/drivers/norautp.c b/src/mame/drivers/norautp.c index abdebcbd02c..20ed8e90b2a 100644 --- a/src/mame/drivers/norautp.c +++ b/src/mame/drivers/norautp.c @@ -809,13 +809,13 @@ static READ8_HANDLER( test2_r ) +----------+---------+--------------+--------+--------------+--------+--------------+------------------------+ */ -static ADDRESS_MAP_START( norautp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( norautp_map, AS_PROGRAM, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_SHARE("nvram") /* 6116 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( norautp_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( norautp_portmap, AS_IO, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x60, 0x63) AM_MIRROR(0x1c) AM_DEVREADWRITE_MODERN("ppi8255_0", i8255_device, read, write) AM_RANGE(0xa0, 0xa3) AM_MIRROR(0x1c) AM_DEVREADWRITE_MODERN("ppi8255_1", i8255_device, read, write) @@ -840,69 +840,69 @@ ADDRESS_MAP_END */ -static ADDRESS_MAP_START( nortest1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nortest1_map, AS_PROGRAM, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x5000, 0x57ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( norautxp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( norautxp_map, AS_PROGRAM, 8, norautp_state ) // ADDRESS_MAP_GLOBAL_MASK(~0x4000) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x3fff) AM_ROM /* need to be checked */ AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") /* HM6116 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( norautx4_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( norautx4_map, AS_PROGRAM, 8, norautp_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") /* 6116 */ ADDRESS_MAP_END #ifdef UNUSED_CODE -static ADDRESS_MAP_START( norautx8_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( norautx8_map, AS_PROGRAM, 8, norautp_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* need to be checked */ AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram") /* 6116 */ ADDRESS_MAP_END #endif -static ADDRESS_MAP_START( kimble_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kimble_map, AS_PROGRAM, 8, norautp_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xc800, 0xc9ff) AM_RAM /* working RAM? */ ADDRESS_MAP_END #ifdef UNUSED_CODE -static ADDRESS_MAP_START( norautxp_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( norautxp_portmap, AS_IO, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END #endif -static ADDRESS_MAP_START( newhilop_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( newhilop_map, AS_PROGRAM, 8, norautp_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("nvram") /* 6116 */ ADDRESS_MAP_END /*********** 8080 based **********/ -static ADDRESS_MAP_START( dphl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dphl_map, AS_PROGRAM, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 not connected */ AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("nvram") /* should be 2x 0x100 segments (4x 2111) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dphla_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dphla_map, AS_PROGRAM, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( ssjkrpkr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssjkrpkr_map, AS_PROGRAM, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( dphltest_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dphltest_map, AS_PROGRAM, 8, norautp_state ) // ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 not connected */ AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x7fff) AM_RAM @@ -922,12 +922,12 @@ ADDRESS_MAP_END The code read on port $62, when is suppossed to be set as output. */ -static ADDRESS_MAP_START( kimbldhl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kimbldhl_map, AS_PROGRAM, 8, norautp_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( drhl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( drhl_map, AS_PROGRAM, 8, norautp_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) /* A15 not connected */ AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("nvram") diff --git a/src/mame/drivers/nova2001.c b/src/mame/drivers/nova2001.c index fa01387cc36..ba6d68e9f8b 100644 --- a/src/mame/drivers/nova2001.c +++ b/src/mame/drivers/nova2001.c @@ -175,7 +175,7 @@ static MACHINE_START( ninjakun ) * *************************************/ -static ADDRESS_MAP_START( nova2001_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nova2001_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_BASE_MEMBER(nova2001_state, m_fg_videoram) AM_RANGE(0xa800, 0xafff) AM_RAM_WRITE(nova2001_bg_videoram_w) AM_BASE_MEMBER(nova2001_state, m_bg_videoram) @@ -193,7 +193,7 @@ static ADDRESS_MAP_START( nova2001_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ninjakun_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ninjakun_cpu1_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_address_data_w) @@ -212,7 +212,7 @@ static ADDRESS_MAP_START( ninjakun_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xe400, 0xe7ff) AM_RAM AM_SHARE("share6") ADDRESS_MAP_END -static ADDRESS_MAP_START( ninjakun_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ninjakun_cpu2_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x7fff) AM_ROM AM_REGION("maincpu", 0x2000) AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_address_data_w) @@ -232,7 +232,7 @@ static ADDRESS_MAP_START( ninjakun_cpu2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pkunwar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pkunwar_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(nova2001_state, m_spriteram) AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(nova2001_bg_videoram_w) AM_BASE_MEMBER(nova2001_state, m_bg_videoram) @@ -244,13 +244,13 @@ static ADDRESS_MAP_START( pkunwar_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( pkunwar_io, AS_IO, 8 ) +static ADDRESS_MAP_START( pkunwar_io, AS_IO, 8, nova2001_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(pkunwar_flipscreen_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( raiders5_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( raiders5_cpu1_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(nova2001_state, m_spriteram) AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_BASE_MEMBER(nova2001_state, m_fg_videoram) @@ -266,7 +266,7 @@ static ADDRESS_MAP_START( raiders5_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( raiders5_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( raiders5_cpu2_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x8001, 0x8001) AM_DEVREAD("ay1", ay8910_r) @@ -282,7 +282,7 @@ static ADDRESS_MAP_START( raiders5_cpu2_map, AS_PROGRAM, 8 ) AM_RANGE(0xe002, 0xe002) AM_WRITE(pkunwar_flipscreen_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( raiders5_io, AS_IO, 8 ) +static ADDRESS_MAP_START( raiders5_io, AS_IO, 8, nova2001_state ) AM_RANGE(0x00, 0x00) AM_READNOP /* unknown */ ADDRESS_MAP_END diff --git a/src/mame/drivers/nsmpoker.c b/src/mame/drivers/nsmpoker.c index 3f71e410af8..d10adc2b721 100644 --- a/src/mame/drivers/nsmpoker.c +++ b/src/mame/drivers/nsmpoker.c @@ -160,7 +160,7 @@ static READ8_HANDLER( debug_r ) * Memory Map Information * *************************/ -static ADDRESS_MAP_START( nsmpoker_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nsmpoker_map, AS_PROGRAM, 8, nsmpoker_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x9000, 0xafff) AM_RAM // OK... cleared at beginning. AM_RANGE(0xb000, 0xcfff) AM_ROM // WRONG... just to map the last rom somewhere. @@ -168,7 +168,7 @@ static ADDRESS_MAP_START( nsmpoker_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM_WRITE(nsmpoker_colorram_w) AM_BASE_MEMBER(nsmpoker_state, m_colorram) // WRONG... just a placeholder. ADDRESS_MAP_END -static ADDRESS_MAP_START( nsmpoker_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( nsmpoker_portmap, AS_IO, 8, nsmpoker_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf0, 0xf0) AM_READ(debug_r) // kind of trap at beginning ADDRESS_MAP_END diff --git a/src/mame/drivers/nss.c b/src/mame/drivers/nss.c index 4c6051c0856..e0615741757 100644 --- a/src/mame/drivers/nss.c +++ b/src/mame/drivers/nss.c @@ -309,7 +309,7 @@ public: }; -static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8, nss_state ) AM_RANGE(0x000000, 0x2fffff) AM_READWRITE(snes_r_bank1, snes_w_bank1) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x300000, 0x3fffff) AM_READWRITE(snes_r_bank2, snes_w_bank2) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x400000, 0x5fffff) AM_READ(snes_r_bank3) /* ROM (and reserved in Mode 20) */ @@ -330,7 +330,7 @@ static WRITE8_DEVICE_HANDLER( spc_ram_100_w ) spc_ram_w(device, offset + 0x100, data); } -static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8, nss_state ) AM_RANGE(0x0000, 0x00ef) AM_DEVREADWRITE("spc700", spc_ram_r, spc_ram_w) /* lower 32k ram */ AM_RANGE(0x00f0, 0x00ff) AM_DEVREADWRITE("spc700", spc_io_r, spc_io_w) /* spc io */ AM_RANGE(0x0100, 0xffff) AM_DEVWRITE("spc700", spc_ram_100_w) @@ -412,7 +412,7 @@ static WRITE8_HANDLER( m50458_w ) } -static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8, nss_state ) AM_RANGE(0x0000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8fff) AM_RAM // vram perhaps? @@ -484,7 +484,7 @@ static WRITE8_HANDLER( port82_w ) // EEPROM2? */ } -static ADDRESS_MAP_START( bios_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bios_io_map, AS_IO, 8, nss_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(port00_r) AM_RANGE(0x01, 0x01) AM_READ(port01_r) diff --git a/src/mame/drivers/nwk-tr.c b/src/mame/drivers/nwk-tr.c index 5cf8ea1bdd9..8f893bb7a41 100644 --- a/src/mame/drivers/nwk-tr.c +++ b/src/mame/drivers/nwk-tr.c @@ -488,7 +488,7 @@ static MACHINE_START( nwktr ) ppcdrc_add_fastram(machine.device("maincpu"), 0x00000000, 0x003fffff, FALSE, state->m_work_ram); } -static ADDRESS_MAP_START( nwktr_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( nwktr_map, AS_PROGRAM, 32, nwktr_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(nwktr_state, m_work_ram) /* Work RAM */ AM_RANGE(0x74000000, 0x740000ff) AM_DEVREADWRITE("k001604", k001604_reg_r, k001604_reg_w) AM_RANGE(0x74010000, 0x74017fff) AM_RAM_WRITE(paletteram32_w) AM_BASE_GENERIC(paletteram) @@ -511,7 +511,7 @@ ADDRESS_MAP_END /*****************************************************************************/ -static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, nwktr_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* Work RAM */ AM_RANGE(0x200000, 0x200fff) AM_DEVREADWRITE("rfsnd", rf5c400_r, rf5c400_w) /* Ricoh RF5C400 */ @@ -534,7 +534,7 @@ static WRITE32_HANDLER( dsp_dataram_w ) state->m_sharc_dataram[offset] = data; } -static ADDRESS_MAP_START( sharc_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( sharc_map, AS_DATA, 32, nwktr_state ) AM_RANGE(0x0400000, 0x041ffff) AM_READWRITE(cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w) AM_RANGE(0x0500000, 0x05fffff) AM_READWRITE(dsp_dataram_r, dsp_dataram_w) AM_RANGE(0x1400000, 0x14fffff) AM_RAM diff --git a/src/mame/drivers/nycaptor.c b/src/mame/drivers/nycaptor.c index 14232cef917..60a3d21cb10 100644 --- a/src/mame/drivers/nycaptor.c +++ b/src/mame/drivers/nycaptor.c @@ -345,7 +345,7 @@ static WRITE8_HANDLER( nycaptor_generic_control_w ) memory_set_bankptr(space->machine(), "bank1", space->machine().region("maincpu")->base() + 0x10000 + ((data&0x08)>>3)*0x4000 ); } -static ADDRESS_MAP_START( nycaptor_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nycaptor_master_map, AS_PROGRAM, 8, nycaptor_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(nycaptor_videoram_r, nycaptor_videoram_w) AM_BASE_SIZE_MEMBER(nycaptor_state, m_videoram, m_videoram_size) @@ -371,7 +371,7 @@ static ADDRESS_MAP_START( nycaptor_master_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READWRITE(nycaptor_sharedram_r, nycaptor_sharedram_w) AM_BASE_MEMBER(nycaptor_state, m_sharedram) ADDRESS_MAP_END -static ADDRESS_MAP_START( nycaptor_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nycaptor_slave_map, AS_PROGRAM, 8, nycaptor_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_READWRITE(nycaptor_videoram_r, nycaptor_videoram_w) AM_BASE_SIZE_MEMBER(nycaptor_state, m_videoram, m_videoram_size) AM_RANGE(0xd800, 0xd800) AM_READ_PORT("DSWA") @@ -390,7 +390,7 @@ static ADDRESS_MAP_START( nycaptor_slave_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READWRITE(nycaptor_sharedram_r, nycaptor_sharedram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( nycaptor_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nycaptor_sound_map, AS_PROGRAM, 8, nycaptor_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_DEVWRITE("ay1", ay8910_address_data_w) @@ -406,7 +406,7 @@ static ADDRESS_MAP_START( nycaptor_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( nycaptor_m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nycaptor_m68705_map, AS_PROGRAM, 8, nycaptor_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(nycaptor_68705_port_a_r, nycaptor_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(nycaptor_68705_port_b_r, nycaptor_68705_port_b_w) @@ -452,7 +452,7 @@ static WRITE8_HANDLER( cyclshtg_generic_control_w ) } -static ADDRESS_MAP_START( cyclshtg_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cyclshtg_master_map, AS_PROGRAM, 8, nycaptor_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_READWRITE(nycaptor_videoram_r, nycaptor_videoram_w) AM_BASE_SIZE_MEMBER(nycaptor_state, m_videoram, m_videoram_size) @@ -477,7 +477,7 @@ static ADDRESS_MAP_START( cyclshtg_master_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READWRITE(nycaptor_sharedram_r, nycaptor_sharedram_w) AM_BASE_MEMBER(nycaptor_state, m_sharedram) ADDRESS_MAP_END -static ADDRESS_MAP_START( cyclshtg_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cyclshtg_slave_map, AS_PROGRAM, 8, nycaptor_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_READWRITE(nycaptor_videoram_r, nycaptor_videoram_w) AM_BASE_SIZE_MEMBER(nycaptor_state, m_videoram, m_videoram_size) AM_RANGE(0xd800, 0xd800) AM_READ_PORT("DSWA") @@ -501,7 +501,7 @@ static READ8_HANDLER( unk_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( bronx_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bronx_master_map, AS_PROGRAM, 8, nycaptor_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_READWRITE(nycaptor_videoram_r, nycaptor_videoram_w) AM_BASE_SIZE_MEMBER(nycaptor_state, m_videoram, m_videoram_size) @@ -526,7 +526,7 @@ static ADDRESS_MAP_START( bronx_master_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READWRITE(nycaptor_sharedram_r, nycaptor_sharedram_w) AM_BASE_MEMBER(nycaptor_state, m_sharedram) ADDRESS_MAP_END -static ADDRESS_MAP_START( bronx_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bronx_slave_map, AS_PROGRAM, 8, nycaptor_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_READWRITE(nycaptor_videoram_r, nycaptor_videoram_w) AM_BASE_SIZE_MEMBER(nycaptor_state, m_videoram, m_videoram_size) AM_RANGE(0xd800, 0xd800) AM_READ_PORT("DSWA") @@ -546,7 +546,7 @@ static ADDRESS_MAP_START( bronx_slave_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READWRITE(nycaptor_sharedram_r, nycaptor_sharedram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bronx_slave_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bronx_slave_io_map, AS_IO, 8, nycaptor_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("user1", 0) ADDRESS_MAP_END diff --git a/src/mame/drivers/nyny.c b/src/mame/drivers/nyny.c index bb43866fa7a..b4be73765a5 100644 --- a/src/mame/drivers/nyny.c +++ b/src/mame/drivers/nyny.c @@ -528,7 +528,7 @@ static WRITE8_HANDLER( nyny_pia_1_2_w ) } -static ADDRESS_MAP_START( nyny_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nyny_main_map, AS_PROGRAM, 8, nyny_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(nyny_state, m_videoram1) AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_MEMBER(nyny_state, m_colorram1) AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_MEMBER(nyny_state, m_videoram2) @@ -546,7 +546,7 @@ static ADDRESS_MAP_START( nyny_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nyny_audio_1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nyny_audio_1_map, AS_PROGRAM, 8, nyny_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0080, 0x0fff) AM_NOP @@ -563,7 +563,7 @@ static ADDRESS_MAP_START( nyny_audio_1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nyny_audio_2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nyny_audio_2_map, AS_PROGRAM, 8, nyny_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0080, 0x0fff) AM_NOP diff --git a/src/mame/drivers/offtwall.c b/src/mame/drivers/offtwall.c index 38d20bf5d06..9f5c4a98bc2 100644 --- a/src/mame/drivers/offtwall.c +++ b/src/mame/drivers/offtwall.c @@ -276,7 +276,7 @@ static READ16_HANDLER( unknown_verify_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, offtwall_state ) AM_RANGE(0x000000, 0x037fff) AM_ROM AM_RANGE(0x038000, 0x03ffff) AM_READ(bankrom_r) AM_REGION("maincpu", 0x38000) AM_BASE_MEMBER(offtwall_state, m_bankrom_base) AM_RANGE(0x120000, 0x120fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") diff --git a/src/mame/drivers/ohmygod.c b/src/mame/drivers/ohmygod.c index f89e9d2c23f..9759504b04f 100644 --- a/src/mame/drivers/ohmygod.c +++ b/src/mame/drivers/ohmygod.c @@ -39,7 +39,7 @@ static WRITE16_HANDLER( ohmygod_ctrl_w ) } } -static ADDRESS_MAP_START( ohmygod_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ohmygod_map, AS_PROGRAM, 16, ohmygod_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x300000, 0x303fff) AM_RAM AM_RANGE(0x304000, 0x307fff) AM_RAM_WRITE(ohmygod_videoram_w) AM_BASE_MEMBER(ohmygod_state, m_videoram) diff --git a/src/mame/drivers/ojankohs.c b/src/mame/drivers/ojankohs.c index 63dc727d58b..ecf382754c6 100644 --- a/src/mame/drivers/ojankohs.c +++ b/src/mame/drivers/ojankohs.c @@ -198,7 +198,7 @@ static WRITE8_HANDLER( ccasino_coinctr_w ) } -static ADDRESS_MAP_START( ojankohs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ojankohs_map, AS_PROGRAM, 8, ojankohs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(ojankohs_videoram_w) AM_BASE_MEMBER(ojankohs_state,m_videoram) AM_RANGE(0x9000, 0x9fff) AM_RAM_WRITE(ojankohs_colorram_w) AM_BASE_MEMBER(ojankohs_state,m_colorram) @@ -208,7 +208,7 @@ static ADDRESS_MAP_START( ojankohs_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ojankoy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ojankoy_map, AS_PROGRAM, 8, ojankohs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM_WRITE(ojankohs_videoram_w) AM_BASE_MEMBER(ojankohs_state,m_videoram) AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(ojankohs_colorram_w) AM_BASE_MEMBER(ojankohs_state,m_colorram) @@ -217,14 +217,14 @@ static ADDRESS_MAP_START( ojankoy_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ojankoc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ojankoc_map, AS_PROGRAM, 8, ojankohs_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_WRITE(ojankoc_videoram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ojankohs_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ojankohs_io_map, AS_IO, 8, ojankohs_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(ojankohs_portselect_w) AM_RANGE(0x01, 0x01) AM_READWRITE(ojankohs_keymatrix_r, ojankohs_rombank_w) @@ -238,7 +238,7 @@ static ADDRESS_MAP_START( ojankohs_io_map, AS_IO, 8 ) AM_RANGE(0x11, 0x11) AM_WRITENOP // unknown ADDRESS_MAP_END -static ADDRESS_MAP_START( ojankoy_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ojankoy_io_map, AS_IO, 8, ojankohs_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(ojankohs_portselect_w) AM_RANGE(0x01, 0x01) AM_READWRITE(ojankohs_keymatrix_r, ojankoy_rombank_w) @@ -249,7 +249,7 @@ static ADDRESS_MAP_START( ojankoy_io_map, AS_IO, 8 ) AM_RANGE(0x06, 0x07) AM_DEVWRITE("aysnd", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ccasino_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ccasino_io_map, AS_IO, 8, ojankohs_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(ojankohs_portselect_w) AM_RANGE(0x01, 0x01) AM_READWRITE(ojankohs_keymatrix_r, ojankohs_rombank_w) @@ -264,7 +264,7 @@ static ADDRESS_MAP_START( ccasino_io_map, AS_IO, 8 ) AM_RANGE(0x11, 0x11) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( ojankoc_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ojankoc_io_map, AS_IO, 8, ojankohs_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x1f) AM_WRITE(ojankoc_palette_w) AM_RANGE(0xf9, 0xf9) AM_WRITE(ojankohs_msm5205_w) diff --git a/src/mame/drivers/olibochu.c b/src/mame/drivers/olibochu.c index 5861c44d8d6..9d362f7d053 100644 --- a/src/mame/drivers/olibochu.c +++ b/src/mame/drivers/olibochu.c @@ -244,7 +244,7 @@ static WRITE8_HANDLER( sound_command_w ) } -static ADDRESS_MAP_START( olibochu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( olibochu_map, AS_PROGRAM, 8, olibochu_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(olibochu_videoram_w) AM_BASE_MEMBER(olibochu_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(olibochu_colorram_w) AM_BASE_MEMBER(olibochu_state, m_colorram) @@ -263,7 +263,7 @@ static ADDRESS_MAP_START( olibochu_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( olibochu_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( olibochu_sound_map, AS_PROGRAM, 8, olibochu_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM AM_RANGE(0x7000, 0x7000) AM_READ(soundlatch_r) /* likely ay8910 input port, not direct */ diff --git a/src/mame/drivers/omegrace.c b/src/mame/drivers/omegrace.c index 8c16f01f685..0054d4ba5ea 100644 --- a/src/mame/drivers/omegrace.c +++ b/src/mame/drivers/omegrace.c @@ -334,7 +334,7 @@ static WRITE8_HANDLER( omegrace_soundlatch_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, omegrace_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4bff) AM_RAM AM_RANGE(0x5c00, 0x5cff) AM_RAM AM_SHARE("nvram") /* NVRAM */ @@ -343,7 +343,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, omegrace_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x08, 0x08) AM_READ(omegrace_vg_go_r) AM_RANGE(0x09, 0x09) AM_READ(watchdog_reset_r) @@ -366,13 +366,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, omegrace_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_RANGE(0x1000, 0x13ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port, AS_IO, 8, omegrace_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) /* likely ay8910 input port, not direct */ AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) diff --git a/src/mame/drivers/oneshot.c b/src/mame/drivers/oneshot.c index c0fe2a90e09..2bbf6b70452 100644 --- a/src/mame/drivers/oneshot.c +++ b/src/mame/drivers/oneshot.c @@ -105,7 +105,7 @@ static WRITE16_DEVICE_HANDLER( soundbank_w ) -static ADDRESS_MAP_START( oneshot_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( oneshot_map, AS_PROGRAM, 16, oneshot_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x087fff) AM_RAM AM_RANGE(0x0c0000, 0x0c07ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -128,7 +128,7 @@ static ADDRESS_MAP_START( oneshot_map, AS_PROGRAM, 16 ) AM_RANGE(0x19c034, 0x19c035) AM_READ_PORT("P2") ADDRESS_MAP_END -static ADDRESS_MAP_START( oneshot_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( oneshot_sound_map, AS_PROGRAM, 8, oneshot_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_READWRITE(soundlatch_r,soundlatch_w) AM_RANGE(0x8001, 0x87ff) AM_RAM diff --git a/src/mame/drivers/onetwo.c b/src/mame/drivers/onetwo.c index dbcb23c829e..239b5030484 100644 --- a/src/mame/drivers/onetwo.c +++ b/src/mame/drivers/onetwo.c @@ -160,7 +160,7 @@ static WRITE8_HANDLER(palette2_w) * *************************************/ -static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, onetwo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_REGION("maincpu", 0x10000) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc800, 0xc87f) AM_RAM_WRITE(palette1_w) AM_BASE_MEMBER(onetwo_state, m_paletteram) @@ -169,7 +169,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( main_cpu_io, AS_IO, 8 ) +static ADDRESS_MAP_START( main_cpu_io, AS_IO, 8, onetwo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_WRITE(onetwo_coin_counters_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2") AM_WRITE(onetwo_soundlatch_w) @@ -178,13 +178,13 @@ static ADDRESS_MAP_START( main_cpu_io, AS_IO, 8 ) AM_RANGE(0x04, 0x04) AM_READ_PORT("SYSTEM") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, onetwo_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_cpu_io, AS_IO, 8, onetwo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_status_port_r, ym3812_control_port_w) AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_write_port_w) diff --git a/src/mame/drivers/opwolf.c b/src/mame/drivers/opwolf.c index 41bcae15191..22be0604d2d 100644 --- a/src/mame/drivers/opwolf.c +++ b/src/mame/drivers/opwolf.c @@ -357,7 +357,7 @@ static WRITE8_DEVICE_HANDLER( sound_bankswitch_w ) ***********************************************************/ -static ADDRESS_MAP_START( opwolf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( opwolf_map, AS_PROGRAM, 16, opwolf_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0f0000, 0x0f07ff) AM_MIRROR(0xf000) AM_READ(opwolf_cchip_data_r) AM_RANGE(0x0f0802, 0x0f0803) AM_MIRROR(0xf000) AM_READ(opwolf_cchip_status_r) @@ -381,7 +381,7 @@ static ADDRESS_MAP_START( opwolf_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( opwolfb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( opwolfb_map, AS_PROGRAM, 16, opwolf_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0f0008, 0x0f000b) AM_READ(opwolf_in_r) /* coins and buttons */ AM_RANGE(0x0ff000, 0x0fffff) AM_READWRITE(cchip_r,cchip_w) @@ -406,7 +406,7 @@ ADDRESS_MAP_END This extra Z80 substitutes for the c-chip in the bootleg */ -static ADDRESS_MAP_START( opwolfb_sub_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( opwolfb_sub_z80_map, AS_PROGRAM, 8, opwolf_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8800, 0x8800) AM_READ(z80_input1_r) /* read at PC=$637: poked to $c004 */ AM_RANGE(0x9000, 0x9000) AM_WRITENOP /* unknown write, 0 then 1 each interrupt */ @@ -541,7 +541,7 @@ static WRITE8_HANDLER( opwolf_adpcm_e_w ) // logerror("CPU #1 e00%i-data=%2x pc=%4x\n",offset,data,cpu_get_pc(&space->device()) ); } -static ADDRESS_MAP_START( opwolf_sound_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( opwolf_sound_z80_map, AS_PROGRAM, 8, opwolf_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") AM_RANGE(0x8000, 0x8fff) AM_RAM diff --git a/src/mame/drivers/orbit.c b/src/mame/drivers/orbit.c index f14edd9d865..c89e7831b58 100644 --- a/src/mame/drivers/orbit.c +++ b/src/mame/drivers/orbit.c @@ -105,7 +105,7 @@ static WRITE8_HANDLER( orbit_misc_w ) * *************************************/ -static ADDRESS_MAP_START( orbit_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( orbit_map, AS_PROGRAM, 8, orbit_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x0700) AM_RAM AM_RANGE(0x0800, 0x0800) AM_MIRROR(0x07ff) AM_READ_PORT("P1") diff --git a/src/mame/drivers/othello.c b/src/mame/drivers/othello.c index 03bb78c9c10..5b8e685a99c 100644 --- a/src/mame/drivers/othello.c +++ b/src/mame/drivers/othello.c @@ -117,7 +117,7 @@ static PALETTE_INIT( othello ) palette_set_color(machine, 0x0f, MAKE_RGB(0xff, 0xff, 0xff)); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, othello_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x97ff) AM_NOP /* not populated */ AM_RANGE(0x9800, 0x9fff) AM_RAM AM_BASE_MEMBER(othello_state, m_videoram) @@ -172,7 +172,7 @@ static WRITE8_HANDLER( tilebank_w ) logerror("tilebank -> %x\n", data); } -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, othello_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x08, 0x08) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x09, 0x09) AM_DEVREADWRITE_MODERN("crtc", mc6845_device, register_r, register_w) @@ -222,12 +222,12 @@ static WRITE8_HANDLER( ay_data_w ) if (state->m_ay_select & 2) ay8910_data_w(state->m_ay2, 0, data); } -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, othello_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_portmap, AS_IO, 8, othello_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(latch_r) AM_RANGE(0x01, 0x01) AM_WRITE(ay_data_w) @@ -301,7 +301,7 @@ static READ8_HANDLER( n7751_t1_r ) return 0; } -static ADDRESS_MAP_START( n7751_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( n7751_portmap, AS_IO, 8, othello_state ) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(n7751_t1_r) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READ(n7751_command_r) AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(n7751_rom_r) diff --git a/src/mame/drivers/othldrby.c b/src/mame/drivers/othldrby.c index 84ef87db414..8dd952a67f9 100644 --- a/src/mame/drivers/othldrby.c +++ b/src/mame/drivers/othldrby.c @@ -80,7 +80,7 @@ static READ16_HANDLER( calendar_r ) } -static ADDRESS_MAP_START( othldrby_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( othldrby_map, AS_PROGRAM, 16, othldrby_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x20000f) AM_READWRITE(calendar_r, calendar_w) diff --git a/src/mame/drivers/othunder.c b/src/mame/drivers/othunder.c index 2e5cfe2140e..25c9efc08cd 100644 --- a/src/mame/drivers/othunder.c +++ b/src/mame/drivers/othunder.c @@ -459,7 +459,7 @@ static WRITE8_HANDLER( othunder_TC0310FAM_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( othunder_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( othunder_map, AS_PROGRAM, 16, othunder_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_RANGE(0x090000, 0x09000f) AM_READWRITE(othunder_tc0220ioc_r, othunder_tc0220ioc_w) @@ -477,7 +477,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, othunder_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/overdriv.c b/src/mame/drivers/overdriv.c index 7519f740299..09f182ac07a 100644 --- a/src/mame/drivers/overdriv.c +++ b/src/mame/drivers/overdriv.c @@ -160,7 +160,7 @@ static WRITE16_HANDLER( overdriv_cpuB_irq6_w ) device_set_input_line(state->m_subcpu, 6, HOLD_LINE); } -static ADDRESS_MAP_START( overdriv_master_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( overdriv_master_map, AS_PROGRAM, 16, overdriv_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM /* work RAM */ AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -187,7 +187,7 @@ static ADDRESS_MAP_START( overdriv_master_map, AS_PROGRAM, 16 ) AM_RANGE(0x238000, 0x238001) AM_WRITE(overdriv_cpuB_irq5_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( overdriv_slave_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( overdriv_slave_map, AS_PROGRAM, 16, overdriv_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM /* work RAM */ AM_RANGE(0x0c0000, 0x0c1fff) AM_RAM //AM_DEVREADWRITE("k053250_1", k053250_ram_r, k053250_ram_w) @@ -203,7 +203,7 @@ static ADDRESS_MAP_START( overdriv_slave_map, AS_PROGRAM, 16 ) AM_RANGE(0x220000, 0x221fff) AM_DEVREAD_MODERN("k053250_2", k053250_t, rom_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( overdriv_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( overdriv_sound_map, AS_PROGRAM, 8, overdriv_state ) AM_RANGE(0x0200, 0x0201) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) AM_RANGE(0x0400, 0x042f) AM_DEVREADWRITE("k053260_1", k053260_r, k053260_w) AM_RANGE(0x0600, 0x062f) AM_DEVREADWRITE("k053260_2", k053260_r, k053260_w) diff --git a/src/mame/drivers/pachifev.c b/src/mame/drivers/pachifev.c index 4fe84a785b2..15110663f1b 100644 --- a/src/mame/drivers/pachifev.c +++ b/src/mame/drivers/pachifev.c @@ -130,7 +130,7 @@ static READ8_HANDLER(controls_r) return output_bit; } -static ADDRESS_MAP_START( pachifev_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pachifev_map, AS_PROGRAM, 8, pachifev_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM @@ -150,7 +150,7 @@ static ADDRESS_MAP_START( pachifev_map, AS_PROGRAM, 8 ) AM_RANGE(0xfffc, 0xffff) AM_NOP /* nmi */ ADDRESS_MAP_END -static ADDRESS_MAP_START( pachifev_cru, AS_IO, 8 ) +static ADDRESS_MAP_START( pachifev_cru, AS_IO, 8, pachifev_state ) AM_RANGE(0x000, 0x000) AM_READ(controls_r) ADDRESS_MAP_END diff --git a/src/mame/drivers/pacland.c b/src/mame/drivers/pacland.c index 0bada857a9b..cf844cd1221 100644 --- a/src/mame/drivers/pacland.c +++ b/src/mame/drivers/pacland.c @@ -237,7 +237,7 @@ static WRITE8_HANDLER( pacland_irq_2_ctrl_w ) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pacland_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM_WRITE(pacland_videoram_w) AM_BASE_MEMBER(pacland_state, m_videoram) AM_RANGE(0x1000, 0x1fff) AM_RAM_WRITE(pacland_videoram2_w) AM_BASE_MEMBER(pacland_state, m_videoram2) AM_RANGE(0x2000, 0x37ff) AM_RAM AM_BASE_MEMBER(pacland_state, m_spriteram) @@ -253,7 +253,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x9000, 0x9fff) AM_WRITE(pacland_flipscreen_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, pacland_state ) AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r, m6801_io_w) AM_RANGE(0x0080, 0x00ff) AM_RAM AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */ @@ -271,7 +271,7 @@ static READ8_HANDLER( readFF ) return 0xff; } -static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, pacland_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ_PORT("IN2") AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(pacland_coin_w) AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */ diff --git a/src/mame/drivers/pacman.c b/src/mame/drivers/pacman.c index d1ed4c5ae2f..f6e272311b1 100644 --- a/src/mame/drivers/pacman.c +++ b/src/mame/drivers/pacman.c @@ -883,7 +883,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( pacman_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pacman_map, AS_PROGRAM, 8, pacman_state ) //A lot of games don't have an a15 at the cpu. Generally only games with a cpu daughter board can access the full 32k of romspace. AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) @@ -911,7 +911,7 @@ ADDRESS_MAP_END // The Pacman code uses $5004 and $5005 for LED's and $5007 for coin lockout. This hardware does not // exist on any Pacman or Puckman board I have seen. DW -static ADDRESS_MAP_START( birdiy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( birdiy_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -936,7 +936,7 @@ static ADDRESS_MAP_START( birdiy_map, AS_PROGRAM, 8 ) AM_RANGE(0x50c0, 0x50c0) AM_MIRROR(0xaf3f) AM_READ_PORT("DSW2") /* DSW2 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mspacman_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mspacman_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) AM_RANGE(0x4800, 0x4bff) AM_MIRROR(0xa000) AM_READ(pacman_read_nop) AM_WRITENOP @@ -975,7 +975,7 @@ static ADDRESS_MAP_START( mspacman_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( woodpek_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( woodpek_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -1002,7 +1002,7 @@ static ADDRESS_MAP_START( woodpek_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( alibaba_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( alibaba_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -1034,7 +1034,7 @@ static ADDRESS_MAP_START( alibaba_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dremshpr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dremshpr_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -1064,7 +1064,7 @@ static ADDRESS_MAP_START( dremshpr_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -1090,7 +1090,7 @@ static ADDRESS_MAP_START( epos_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( s2650games_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( s2650games_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x0fff) AM_MIRROR(0x8000) AM_ROMBANK("bank1") AM_RANGE(0x1000, 0x13ff) AM_MIRROR(0xe000) AM_WRITE(s2650games_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) AM_RANGE(0x1400, 0x141f) AM_MIRROR(0xe000) AM_WRITE(s2650games_scroll_w) @@ -1120,7 +1120,7 @@ static ADDRESS_MAP_START( s2650games_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rocktrv2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rocktrv2_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -1147,7 +1147,7 @@ static ADDRESS_MAP_START( rocktrv2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bigbucks_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bigbucks_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -1168,7 +1168,7 @@ static ADDRESS_MAP_START( bigbucks_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mschamp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mschamp_map, AS_PROGRAM, 8, pacman_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pacman_state, m_colorram) @@ -1194,7 +1194,7 @@ static ADDRESS_MAP_START( mschamp_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") ADDRESS_MAP_END -static ADDRESS_MAP_START( crushs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( crushs_map, AS_PROGRAM, 8, pacman_state ) //A lot of games don't have an a15 at the cpu. Generally only games with a cpu daughter board can access the full 32k of romspace. AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x8000) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0xa000) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pacman_state, m_videoram) @@ -1226,63 +1226,63 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( writeport, AS_IO, 8 ) +static ADDRESS_MAP_START( writeport, AS_IO, 8, pacman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(pacman_interrupt_vector_w) /* Pac-Man only */ ADDRESS_MAP_END -static ADDRESS_MAP_START( vanvan_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( vanvan_portmap, AS_IO, 8, pacman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_DEVWRITE("namco", sn76496_w) AM_RANGE(0x02, 0x02) AM_DEVWRITE("sn2", sn76496_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( dremshpr_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( dremshpr_portmap, AS_IO, 8, pacman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x06, 0x07) AM_DEVWRITE("namco", ay8910_data_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( piranha_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( piranha_portmap, AS_IO, 8, pacman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(piranha_interrupt_vector_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( nmouse_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( nmouse_portmap, AS_IO, 8, pacman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(nmouse_interrupt_vector_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( theglobp_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( theglobp_portmap, AS_IO, 8, pacman_state ) AM_RANGE(0x00, 0xff) AM_READ(theglobp_decrypt_rom) /* Switch protection logic */ AM_IMPORT_FROM(writeport) ADDRESS_MAP_END -static ADDRESS_MAP_START( acitya_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( acitya_portmap, AS_IO, 8, pacman_state ) AM_RANGE(0x00, 0xff) AM_READ(acitya_decrypt_rom) /* Switch protection logic */ AM_IMPORT_FROM(writeport) ADDRESS_MAP_END -static ADDRESS_MAP_START( mschamp_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( mschamp_portmap, AS_IO, 8, pacman_state ) AM_RANGE(0x00, 0x00) AM_READ(mschamp_kludge_r) AM_IMPORT_FROM(writeport) ADDRESS_MAP_END -static ADDRESS_MAP_START( bigbucks_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( bigbucks_portmap, AS_IO, 8, pacman_state ) AM_RANGE(0x0000, 0xffff) AM_READ(bigbucks_question_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( s2650games_writeport, AS_IO, 8 ) +static ADDRESS_MAP_START( s2650games_writeport, AS_IO, 8, pacman_state ) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_DEVWRITE("namco", sn76496_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( drivfrcp_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( drivfrcp_portmap, AS_IO, 8, pacman_state ) AM_RANGE(0x00, 0x00) AM_READNOP AM_RANGE(0x01, 0x01) AM_READ(drivfrcp_port1_r) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("Sense") AM_IMPORT_FROM(s2650games_writeport) ADDRESS_MAP_END -static ADDRESS_MAP_START( _8bpm_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( _8bpm_portmap, AS_IO, 8, pacman_state ) AM_RANGE(0x00, 0x00) AM_READNOP AM_RANGE(0x01, 0x01) AM_READ(_8bpm_port1_r) AM_RANGE(0xe0, 0xe0) AM_READNOP @@ -1290,13 +1290,13 @@ static ADDRESS_MAP_START( _8bpm_portmap, AS_IO, 8 ) AM_IMPORT_FROM(s2650games_writeport) ADDRESS_MAP_END -static ADDRESS_MAP_START( porky_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( porky_portmap, AS_IO, 8, pacman_state ) AM_RANGE(0x01, 0x01) AM_READ(porky_port1_r) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("Sense") AM_IMPORT_FROM(s2650games_writeport) ADDRESS_MAP_END -static ADDRESS_MAP_START( crushs_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( crushs_portmap, AS_IO, 8, pacman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("namco", ay8910_data_address_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2") diff --git a/src/mame/drivers/pandoras.c b/src/mame/drivers/pandoras.c index 1b025ad32ba..0206a61637a 100644 --- a/src/mame/drivers/pandoras.c +++ b/src/mame/drivers/pandoras.c @@ -134,7 +134,7 @@ static WRITE8_HANDLER( pandoras_z80_irqtrigger_w ) -static ADDRESS_MAP_START( pandoras_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pandoras_master_map, AS_PROGRAM, 8, pandoras_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_BASE_MEMBER(pandoras_state, m_spriteram) /* Work RAM (Shared with CPU B) */ AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("share2") AM_BASE_MEMBER(pandoras_state, m_colorram) /* Color RAM (shared with CPU B) */ AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("share3") AM_BASE_MEMBER(pandoras_state, m_videoram) /* Video RAM (shared with CPU B) */ @@ -149,7 +149,7 @@ static ADDRESS_MAP_START( pandoras_master_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( pandoras_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pandoras_slave_map, AS_PROGRAM, 8, pandoras_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") /* Work RAM (Shared with CPU A) */ AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("share2") /* Color RAM (shared with CPU A) */ AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("share3") /* Video RAM (shared with CPU A) */ @@ -167,7 +167,7 @@ static ADDRESS_MAP_START( pandoras_slave_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( pandoras_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pandoras_sound_map, AS_PROGRAM, 8, pandoras_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM /* ROM */ AM_RANGE(0x2000, 0x23ff) AM_RAM /* RAM */ AM_RANGE(0x4000, 0x4000) AM_READ(soundlatch_r) /* soundlatch_r */ @@ -178,11 +178,11 @@ static ADDRESS_MAP_START( pandoras_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xa000) AM_WRITE(soundlatch2_w) /* sound command to the 8039 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( pandoras_i8039_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pandoras_i8039_map, AS_PROGRAM, 8, pandoras_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( pandoras_i8039_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pandoras_i8039_io_map, AS_IO, 8, pandoras_state ) AM_RANGE(0x00, 0xff) AM_READ(soundlatch2_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_and_status_w) diff --git a/src/mame/drivers/pangofun.c b/src/mame/drivers/pangofun.c index 70c9eefc6ab..46c9233faa4 100644 --- a/src/mame/drivers/pangofun.c +++ b/src/mame/drivers/pangofun.c @@ -108,7 +108,7 @@ public: }; -static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pangofun_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000bffff) AM_RAM AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0) @@ -118,7 +118,7 @@ static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32 ) AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pcat_io, AS_IO, 32 ) +static ADDRESS_MAP_START( pcat_io, AS_IO, 32, pangofun_state ) AM_IMPORT_FROM(pcat32_io_common) AM_RANGE(0x0070, 0x007f) AM_DEVREADWRITE8_MODERN("rtc", mc146818_device, read, write, 0xffffffff) ADDRESS_MAP_END diff --git a/src/mame/drivers/panicr.c b/src/mame/drivers/panicr.c index 13a43719c12..15bf57185af 100644 --- a/src/mame/drivers/panicr.c +++ b/src/mame/drivers/panicr.c @@ -186,7 +186,7 @@ static WRITE8_HANDLER(t5182shared_w) } -static ADDRESS_MAP_START( panicr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( panicr_map, AS_PROGRAM, 8, panicr_state ) AM_RANGE(0x00000, 0x01fff) AM_RAM AM_BASE_MEMBER(panicr_state, m_mainram) AM_RANGE(0x02000, 0x02fff) AM_RAM AM_BASE_MEMBER(panicr_state, m_spriteram) AM_RANGE(0x03000, 0x03fff) AM_RAM diff --git a/src/mame/drivers/paradise.c b/src/mame/drivers/paradise.c index 8aa71274d0a..8184ec9761b 100644 --- a/src/mame/drivers/paradise.c +++ b/src/mame/drivers/paradise.c @@ -79,27 +79,27 @@ static WRITE8_HANDLER( torus_coin_counter_w ) AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(paradise_vram_0_w) AM_BASE_MEMBER(paradise_state, m_vram_0) /* Foreground */ \ -static ADDRESS_MAP_START( paradise_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( paradise_map, AS_PROGRAM, 8, paradise_state ) STANDARD_MAP AM_RANGE(0xd800, 0xd8ff) AM_RAM // RAM AM_RANGE(0xd900, 0xe0ff) AM_RAM AM_BASE_SIZE_MEMBER(paradise_state, m_spriteram, m_spriteram_size) // Sprites AM_RANGE(0xe100, 0xffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tgtball_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tgtball_map, AS_PROGRAM, 8, paradise_state ) STANDARD_MAP AM_RANGE(0xd800, 0xd8ff) AM_RAM // RAM AM_RANGE(0xd900, 0xd9ff) AM_RAM AM_BASE_SIZE_MEMBER(paradise_state, m_spriteram, m_spriteram_size) // Sprites AM_RANGE(0xda00, 0xffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( torus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( torus_map, AS_PROGRAM, 8, paradise_state ) STANDARD_MAP AM_RANGE(0xd800, 0xdfff) AM_RAM AM_BASE_SIZE_MEMBER(paradise_state, m_spriteram, m_spriteram_size) // Sprites AM_RANGE(0xe000, 0xffff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( paradise_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( paradise_io_map, AS_IO, 8, paradise_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM_WRITE(paradise_palette_w) AM_BASE_MEMBER(paradise_state, m_paletteram) // Palette AM_RANGE(0x1800, 0x1800) AM_WRITE(paradise_priority_w) // Layers priority AM_RANGE(0x2001, 0x2001) AM_WRITE(paradise_flipscreen_w) // Flip Screen @@ -116,7 +116,7 @@ static ADDRESS_MAP_START( paradise_io_map, AS_IO, 8 ) AM_RANGE(0x8000, 0xffff) AM_RAM_WRITE(paradise_pixmap_w) AM_BASE_MEMBER(paradise_state, m_videoram) // Pixmap ADDRESS_MAP_END -static ADDRESS_MAP_START( torus_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( torus_io_map, AS_IO, 8, paradise_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM_WRITE(paradise_palette_w) AM_BASE_MEMBER(paradise_state, m_paletteram) // Palette AM_RANGE(0x1800, 0x1800) AM_WRITE(paradise_priority_w) // Layers priority AM_RANGE(0x2001, 0x2001) AM_WRITE(paradise_flipscreen_w) // Flip Screen diff --git a/src/mame/drivers/paranoia.c b/src/mame/drivers/paranoia.c index 4ec64c66fb4..00201a213d4 100644 --- a/src/mame/drivers/paranoia.c +++ b/src/mame/drivers/paranoia.c @@ -63,7 +63,7 @@ static INPUT_PORTS_START( paranoia ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) INPUT_PORTS_END -static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8) +static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, paranoia_state ) AM_RANGE( 0x000000, 0x03FFFF) AM_ROM AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000) AM_BASE( &pce_user_ram ) AM_RANGE( 0x1FE000, 0x1FE3FF) AM_READWRITE( vdc_0_r, vdc_0_w ) @@ -74,7 +74,7 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8) AM_RANGE( 0x1FF400, 0x1FF7FF) AM_READWRITE( h6280_irq_status_r, h6280_irq_status_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pce_io , AS_IO, 8) +static ADDRESS_MAP_START( pce_io , AS_IO, 8, paranoia_state ) AM_RANGE( 0x00, 0x03) AM_READWRITE( vdc_0_r, vdc_0_w ) ADDRESS_MAP_END @@ -96,7 +96,7 @@ static WRITE8_HANDLER( paranoia_8085_8155_w ) } } -static ADDRESS_MAP_START(paranoia_8085_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START(paranoia_8085_map, AS_PROGRAM, 8, paranoia_state ) AM_RANGE( 0x0000, 0x7fff) AM_ROM AM_RANGE( 0x8000, 0x80ff) AM_RAM AM_RANGE( 0x8100, 0x8105) AM_WRITE( paranoia_8085_8155_w ) @@ -104,10 +104,10 @@ static ADDRESS_MAP_START(paranoia_8085_map, AS_PROGRAM, 8) AM_RANGE( 0xe000, 0xe1ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START(paranoia_8085_io_map, AS_IO, 8) +static ADDRESS_MAP_START(paranoia_8085_io_map, AS_IO, 8, paranoia_state ) ADDRESS_MAP_END -static ADDRESS_MAP_START(paranoia_z80_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START(paranoia_z80_map, AS_PROGRAM, 8, paranoia_state ) AM_RANGE( 0x0000, 0x3fff) AM_ROM AM_RANGE( 0x6000, 0x67ff) AM_RAM AM_RANGE( 0x7000, 0x73ff) AM_RAM @@ -131,7 +131,7 @@ static WRITE8_HANDLER(paranoia_z80_io_37_w) { } -static ADDRESS_MAP_START(paranoia_z80_io_map, AS_IO, 8) +static ADDRESS_MAP_START(paranoia_z80_io_map, AS_IO, 8, paranoia_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_READ( paranoia_z80_io_01_r ) AM_RANGE( 0x02, 0x02 ) AM_READ( paranoia_z80_io_02_r ) diff --git a/src/mame/drivers/parodius.c b/src/mame/drivers/parodius.c index b52ec654edf..9d02c4ff205 100644 --- a/src/mame/drivers/parodius.c +++ b/src/mame/drivers/parodius.c @@ -144,7 +144,7 @@ static WRITE8_HANDLER( sound_arm_nmi_w ) /********************************************/ -static ADDRESS_MAP_START( parodius_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( parodius_map, AS_PROGRAM, 8, parodius_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(bankedram_r, bankedram_w) AM_BASE_MEMBER(parodius_state, m_ram) AM_RANGE(0x0800, 0x1fff) AM_RAM AM_RANGE(0x3f8c, 0x3f8c) AM_READ_PORT("P1") @@ -164,7 +164,7 @@ static ADDRESS_MAP_START( parodius_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( parodius_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( parodius_sound_map, AS_PROGRAM, 8, parodius_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) diff --git a/src/mame/drivers/pasha2.c b/src/mame/drivers/pasha2.c index 54fb67be419..55b90894618 100644 --- a/src/mame/drivers/pasha2.c +++ b/src/mame/drivers/pasha2.c @@ -206,7 +206,7 @@ static WRITE16_HANDLER( pasha2_lamps_w ) (data & 0x400) ? 'B' : '-'); } -static ADDRESS_MAP_START( pasha2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pasha2_map, AS_PROGRAM, 16, pasha2_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(pasha2_state, m_wram) AM_RANGE(0x40000000, 0x4001ffff) AM_RAM_WRITE(bitmap_0_w) AM_RANGE(0x40020000, 0x4003ffff) AM_RAM_WRITE(bitmap_1_w) @@ -222,7 +222,7 @@ static ADDRESS_MAP_START( pasha2_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff80000, 0xffffffff) AM_ROM AM_REGION("user1",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( pasha2_io, AS_IO, 16 ) +static ADDRESS_MAP_START( pasha2_io, AS_IO, 16, pasha2_state ) AM_RANGE(0x08, 0x0b) AM_READNOP //sound status? AM_RANGE(0x18, 0x1b) AM_READNOP //sound status? AM_RANGE(0x20, 0x23) AM_WRITE(pasha2_lamps_w) diff --git a/src/mame/drivers/pass.c b/src/mame/drivers/pass.c index c90aee34f7f..29540ffbabb 100644 --- a/src/mame/drivers/pass.c +++ b/src/mame/drivers/pass.c @@ -108,7 +108,7 @@ /* todo: check all memory regions actually readable / read from */ -static ADDRESS_MAP_START( pass_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pass_map, AS_PROGRAM, 16, pass_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM AM_RANGE(0x200000, 0x200fff) AM_RAM_WRITE(pass_bg_videoram_w) AM_BASE_MEMBER(pass_state, m_bg_videoram) // Background @@ -120,12 +120,12 @@ static ADDRESS_MAP_START( pass_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* sound cpu */ -static ADDRESS_MAP_START( pass_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pass_sound_map, AS_PROGRAM, 8, pass_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pass_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pass_sound_io_map, AS_IO, 8, pass_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x70, 0x71) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/pastelg.c b/src/mame/drivers/pastelg.c index ee83422c94e..c11968885d3 100644 --- a/src/mame/drivers/pastelg.c +++ b/src/mame/drivers/pastelg.c @@ -50,7 +50,7 @@ static READ8_HANDLER( pastelg_sndrom_r ) return ROM[pastelg_blitter_src_addr_r(space) & 0x7fff]; } -static ADDRESS_MAP_START( pastelg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pastelg_map, AS_PROGRAM, 8, pastelg_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END @@ -61,7 +61,7 @@ static READ8_HANDLER( pastelg_irq_ack_r ) return 0; } -static ADDRESS_MAP_START( pastelg_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pastelg_io_map, AS_IO, 8, pastelg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x00) AM_WRITENOP AM_RANGE(0x00, 0x7f) AM_READ(nb1413m3_sndrom_r) @@ -114,7 +114,7 @@ static WRITE8_HANDLER( threeds_inputportsel_w ) state->m_mux_data = ~data; } -static ADDRESS_MAP_START( threeds_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( threeds_io_map, AS_IO, 8, pastelg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x81, 0x81) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x82, 0x83) AM_DEVWRITE("aysnd", ay8910_data_address_w) diff --git a/src/mame/drivers/pbaction.c b/src/mame/drivers/pbaction.c index 8051453a161..125be84ade8 100644 --- a/src/mame/drivers/pbaction.c +++ b/src/mame/drivers/pbaction.c @@ -84,7 +84,7 @@ static WRITE8_HANDLER( nmi_mask_w ) state->m_nmi_mask = data & 1; } -static ADDRESS_MAP_START( pbaction_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pbaction_map, AS_PROGRAM, 8, pbaction_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_BASE_MEMBER(pbaction_state, m_work_ram) @@ -103,7 +103,7 @@ static ADDRESS_MAP_START( pbaction_map, AS_PROGRAM, 8 ) AM_RANGE(0xe800, 0xe800) AM_WRITE(pbaction_sh_command_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( pbaction_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pbaction_sound_map, AS_PROGRAM, 8, pbaction_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_READ(soundlatch_r) @@ -111,7 +111,7 @@ static ADDRESS_MAP_START( pbaction_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pbaction_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pbaction_sound_io_map, AS_IO, 8, pbaction_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x20, 0x21) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/pcat_dyn.c b/src/mame/drivers/pcat_dyn.c index a8e1d48dfe0..aaac48e7c8b 100644 --- a/src/mame/drivers/pcat_dyn.c +++ b/src/mame/drivers/pcat_dyn.c @@ -48,7 +48,7 @@ public: //ce9b8 /* TODO: understand the proper ROM loading.*/ -static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_dyn_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000bffff) AM_RAM AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0) @@ -63,7 +63,7 @@ static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32 ) AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("bios", 0 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pcat_io, AS_IO, 32 ) +static ADDRESS_MAP_START( pcat_io, AS_IO, 32, pcat_dyn_state ) AM_IMPORT_FROM(pcat32_io_common) AM_RANGE(0x0070, 0x007f) AM_DEVREADWRITE8_MODERN("rtc", mc146818_device, read, write, 0xffffffff) ADDRESS_MAP_END diff --git a/src/mame/drivers/pcat_nit.c b/src/mame/drivers/pcat_nit.c index e6a2cf0c02d..bc06a64cb31 100644 --- a/src/mame/drivers/pcat_nit.c +++ b/src/mame/drivers/pcat_nit.c @@ -176,7 +176,7 @@ static WRITE8_HANDLER(pcat_nit_rombank_w) } } -static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, pcat_nit_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000bffff) AM_RAM AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_REGION("video_bios", 0) AM_WRITENOP @@ -202,7 +202,7 @@ static READ8_HANDLER(pcat_nit_io_r) } } -static ADDRESS_MAP_START( pcat_nit_io, AS_IO, 32 ) +static ADDRESS_MAP_START( pcat_nit_io, AS_IO, 32, pcat_nit_state ) AM_IMPORT_FROM(pcat32_io_common) AM_RANGE(0x0278, 0x027f) AM_READ8(pcat_nit_io_r, 0xffffffff) AM_WRITENOP AM_RANGE(0x0280, 0x0283) AM_READNOP diff --git a/src/mame/drivers/pcktgal.c b/src/mame/drivers/pcktgal.c index 67e7127f5d2..39462d41f1e 100644 --- a/src/mame/drivers/pcktgal.c +++ b/src/mame/drivers/pcktgal.c @@ -71,7 +71,7 @@ static READ8_DEVICE_HANDLER( pcktgal_adpcm_reset_r ) /***************************************************************************/ -static ADDRESS_MAP_START( pcktgal_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pcktgal_map, AS_PROGRAM, 8, pcktgal_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0fff) AM_DEVREADWRITE("tilegen1", deco_bac06_pf_data_8bit_r, deco_bac06_pf_data_8bit_w) AM_RANGE(0x1000, 0x11ff) AM_RAM AM_BASE_SIZE_MEMBER(pcktgal_state, m_spriteram, m_spriteram_size) @@ -89,7 +89,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( pcktgal_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pcktgal_sound_map, AS_PROGRAM, 8, pcktgal_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_w) diff --git a/src/mame/drivers/pcxt.c b/src/mame/drivers/pcxt.c index 62fda31692f..f55b6e551fa 100644 --- a/src/mame/drivers/pcxt.c +++ b/src/mame/drivers/pcxt.c @@ -533,7 +533,7 @@ static IRQ_CALLBACK(irq_callback) return pic8259_acknowledge(state->m_pic8259_1); } -static ADDRESS_MAP_START( filetto_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( filetto_map, AS_PROGRAM, 8, pcxt_state ) AM_RANGE(0x00000, 0x9ffff) AM_RAM //work RAM 640KB AM_RANGE(0xa0000, 0xbffff) AM_RAM //CGA VRAM AM_RANGE(0xc0000, 0xcffff) AM_ROMBANK("bank1") @@ -541,7 +541,7 @@ static ADDRESS_MAP_START( filetto_map, AS_PROGRAM, 8 ) AM_RANGE(0xf0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( pcxt_io_common, AS_IO, 8 ) +static ADDRESS_MAP_START( pcxt_io_common, AS_IO, 8, pcxt_state ) ADDRESS_MAP_GLOBAL_MASK(0x3ff) AM_RANGE(0x0000, 0x000f) AM_DEVREADWRITE("dma8237_1", i8237_r, i8237_w ) //8237 DMA Controller AM_RANGE(0x0020, 0x002f) AM_DEVREADWRITE("pic8259_1", pic8259_r, pic8259_w ) //8259 Interrupt control @@ -561,7 +561,7 @@ static ADDRESS_MAP_START( pcxt_io_common, AS_IO, 8 ) AM_RANGE(0x03f8, 0x03ff) AM_RAM //rs232c (serial) port ADDRESS_MAP_END -static ADDRESS_MAP_START( filetto_io, AS_IO, 8 ) +static ADDRESS_MAP_START( filetto_io, AS_IO, 8, pcxt_state ) ADDRESS_MAP_GLOBAL_MASK(0x3ff) AM_IMPORT_FROM( pcxt_io_common ) // AM_RANGE(0x0200, 0x020f) AM_RAM //game port @@ -577,7 +577,7 @@ static WRITE8_HANDLER( tetriskr_bg_bank_w ) state->m_bg_bank = (data & 0x0f) ^ 8; } -static ADDRESS_MAP_START( tetriskr_io, AS_IO, 8 ) +static ADDRESS_MAP_START( tetriskr_io, AS_IO, 8, pcxt_state ) ADDRESS_MAP_GLOBAL_MASK(0x3ff) AM_IMPORT_FROM( pcxt_io_common ) AM_RANGE(0x0200, 0x020f) AM_RAM //game port diff --git a/src/mame/drivers/pengadvb.c b/src/mame/drivers/pengadvb.c index f196b53d613..9b13fdb4eb7 100644 --- a/src/mame/drivers/pengadvb.c +++ b/src/mame/drivers/pengadvb.c @@ -140,7 +140,7 @@ static WRITE8_HANDLER(mem_w) } -static ADDRESS_MAP_START( program_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( program_mem, AS_PROGRAM, 8, pengadvb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x5fff) AM_ROMBANK("bank21") AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank22") @@ -150,7 +150,7 @@ static ADDRESS_MAP_START( program_mem, AS_PROGRAM, 8 ) AM_RANGE(0x0000, 0xffff) AM_WRITE(mem_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_mem, AS_IO, 8 ) +static ADDRESS_MAP_START( io_mem, AS_IO, 8, pengadvb_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x98, 0x98) AM_DEVREADWRITE_MODERN( "tms9928a", tms9928a_device, vram_read, vram_write ) diff --git a/src/mame/drivers/pengo.c b/src/mame/drivers/pengo.c index 2b278373f0d..f939c182449 100644 --- a/src/mame/drivers/pengo.c +++ b/src/mame/drivers/pengo.c @@ -117,7 +117,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( pengo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pengo_map, AS_PROGRAM, 8, pengo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(pacman_videoram_w) AM_BASE_MEMBER(pengo_state, m_videoram) /* video and color RAM, scratchpad RAM, sprite codes */ AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(pacman_colorram_w) AM_BASE_MEMBER(pengo_state, m_colorram) @@ -140,7 +140,7 @@ static ADDRESS_MAP_START( pengo_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jrpacmbl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jrpacmbl_map, AS_PROGRAM, 8, pengo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(jrpacman_videoram_w) AM_BASE_MEMBER(pengo_state, m_videoram) AM_RANGE(0x8800, 0x8fef) AM_RAM diff --git a/src/mame/drivers/peplus.c b/src/mame/drivers/peplus.c index 035e6331898..fe32cc07738 100644 --- a/src/mame/drivers/peplus.c +++ b/src/mame/drivers/peplus.c @@ -730,11 +730,11 @@ GFXDECODE_END * Memory map information * *************************/ -static ADDRESS_MAP_START( peplus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( peplus_map, AS_PROGRAM, 8, peplus_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_BASE_MEMBER(peplus_state, m_program_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( peplus_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( peplus_iomap, AS_IO, 8, peplus_state ) // Battery-backed RAM (0x1000-0x01fff Extended RAM for Superboards Only) AM_RANGE(0x0000, 0x1fff) AM_READWRITE(peplus_cmos_r, peplus_cmos_w) AM_SHARE("cmos") diff --git a/src/mame/drivers/peyper.c b/src/mame/drivers/peyper.c index e9af2f1d023..f5429f80427 100644 --- a/src/mame/drivers/peyper.c +++ b/src/mame/drivers/peyper.c @@ -179,14 +179,14 @@ static CUSTOM_INPUT( wolfman_replay_hs_r ) } -static ADDRESS_MAP_START( peyper_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( peyper_map, AS_PROGRAM, 8, peyper_state ) // AM_RANGE(0x0000, 0xffff) AM_NOP ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x5FFF) AM_ROM AM_RANGE(0x6000, 0x67FF) AM_RAM //AM_BASE_GENERIC(nvram) ADDRESS_MAP_END -static ADDRESS_MAP_START( peyper_io, AS_IO, 8 ) +static ADDRESS_MAP_START( peyper_io, AS_IO, 8, peyper_state ) // AM_RANGE(0x0000, 0xffff) AM_NOP ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) diff --git a/src/mame/drivers/pgm.c b/src/mame/drivers/pgm.c index d8dd8fa4778..a25bf60797f 100644 --- a/src/mame/drivers/pgm.c +++ b/src/mame/drivers/pgm.c @@ -310,11 +310,11 @@ void pgm_sound_irq( device_t *device, int level ) /*** Z80 (sound CPU)**********************************************************/ -ADDRESS_MAP_START( pgm_z80_mem, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( pgm_z80_mem, AS_PROGRAM, 8, pgm_state ) AM_RANGE(0x0000, 0xffff) AM_RAM AM_BASE_MEMBER(pgm_state, m_z80_mainram) ADDRESS_MAP_END -ADDRESS_MAP_START( pgm_z80_io, AS_IO, 8 ) +ADDRESS_MAP_START( pgm_z80_io, AS_IO, 8, pgm_state ) AM_RANGE(0x8000, 0x8003) AM_DEVREADWRITE("ics", ics2115_device::read, ics2115_device::write) AM_RANGE(0x8100, 0x81ff) AM_READWRITE(soundlatch3_r, z80_l3_w) AM_RANGE(0x8200, 0x82ff) AM_READWRITE(soundlatch_r, soundlatch_w) @@ -323,7 +323,7 @@ ADDRESS_MAP_END /*** 68000 (main CPU) + variants for protection devices **********************/ -ADDRESS_MAP_START( pgm_base_mem, AS_PROGRAM, 16) +ADDRESS_MAP_START( pgm_base_mem, AS_PROGRAM, 16, pgm_state ) AM_RANGE(0x700006, 0x700007) AM_WRITENOP // Watchdog? AM_RANGE(0x800000, 0x81ffff) AM_RAM AM_MIRROR(0x0e0000) AM_BASE(&pgm_mainram) AM_SHARE("sram") /* Main Ram */ @@ -347,12 +347,12 @@ ADDRESS_MAP_START( pgm_base_mem, AS_PROGRAM, 16) AM_RANGE(0xc10000, 0xc1ffff) AM_READWRITE(z80_ram_r, z80_ram_w) /* Z80 Program */ ADDRESS_MAP_END -ADDRESS_MAP_START( pgm_mem, AS_PROGRAM, 16) +ADDRESS_MAP_START( pgm_mem, AS_PROGRAM, 16, pgm_state ) AM_IMPORT_FROM(pgm_base_mem) AM_RANGE(0x000000, 0x01ffff) AM_ROM /* BIOS ROM */ ADDRESS_MAP_END -ADDRESS_MAP_START( pgm_basic_mem, AS_PROGRAM, 16) +ADDRESS_MAP_START( pgm_basic_mem, AS_PROGRAM, 16, pgm_state ) AM_IMPORT_FROM(pgm_mem) AM_RANGE(0x100000, 0x3fffff) AM_ROMBANK("bank1") /* Game ROM */ ADDRESS_MAP_END diff --git a/src/mame/drivers/pgm2.c b/src/mame/drivers/pgm2.c index 66aa8e4b68f..20652475e95 100644 --- a/src/mame/drivers/pgm2.c +++ b/src/mame/drivers/pgm2.c @@ -26,7 +26,7 @@ public: }; -static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32, pgm2_state ) AM_RANGE(0x00000000, 0x00003fff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/phoenix.c b/src/mame/drivers/phoenix.c index 9e9f82a5150..4a66e5ee774 100644 --- a/src/mame/drivers/phoenix.c +++ b/src/mame/drivers/phoenix.c @@ -38,7 +38,7 @@ Pleiads: #include "includes/phoenix.h" -static ADDRESS_MAP_START( phoenix_memory_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( phoenix_memory_map, AS_PROGRAM, 8, phoenix_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_READ_BANK("bank1") AM_WRITE(phoenix_videoram_w) /* 2 pages selected by bit 0 of the video register */ AM_RANGE(0x5000, 0x53ff) AM_WRITE(phoenix_videoreg_w) @@ -49,7 +49,7 @@ static ADDRESS_MAP_START( phoenix_memory_map, AS_PROGRAM, 8 ) AM_RANGE(0x7800, 0x7bff) AM_READ_PORT("DSW0") /* DSW */ ADDRESS_MAP_END -static ADDRESS_MAP_START( pleiads_memory_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pleiads_memory_map, AS_PROGRAM, 8, phoenix_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_READ_BANK("bank1") AM_WRITE(phoenix_videoram_w) /* 2 pages selected by bit 0 of the video register */ AM_RANGE(0x5000, 0x53ff) AM_WRITE(pleiads_videoreg_w) @@ -60,7 +60,7 @@ static ADDRESS_MAP_START( pleiads_memory_map, AS_PROGRAM, 8 ) AM_RANGE(0x7800, 0x7bff) AM_READ_PORT("DSW0") /* DSW */ ADDRESS_MAP_END -static ADDRESS_MAP_START( survival_memory_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( survival_memory_map, AS_PROGRAM, 8, phoenix_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4fff) AM_READ_BANK("bank1") AM_WRITE(phoenix_videoram_w) /* 2 pages selected by bit 0 of the video register */ AM_RANGE(0x5000, 0x53ff) AM_WRITE(phoenix_videoreg_w) diff --git a/src/mame/drivers/photon.c b/src/mame/drivers/photon.c index a04dd615b3b..2cab322ec3d 100644 --- a/src/mame/drivers/photon.c +++ b/src/mame/drivers/photon.c @@ -139,7 +139,7 @@ static I8255A_INTERFACE( pk8000_ppi8255_interface_2 ) DEVCB_HANDLER(pk8000_84_portc_w) }; -static ADDRESS_MAP_START(pk8000_mem, AS_PROGRAM, 8) +static ADDRESS_MAP_START(pk8000_mem, AS_PROGRAM, 8, photon_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE( 0x0000, 0x3fff ) AM_READ_BANK("bank1") AM_WRITE_BANK("bank5") AM_RANGE( 0x4000, 0x7fff ) AM_READ_BANK("bank2") AM_WRITE_BANK("bank6") @@ -147,7 +147,7 @@ static ADDRESS_MAP_START(pk8000_mem, AS_PROGRAM, 8) AM_RANGE( 0xc000, 0xffff ) AM_READ_BANK("bank4") AM_WRITE_BANK("bank8") ADDRESS_MAP_END -static ADDRESS_MAP_START( pk8000_io , AS_IO, 8) +static ADDRESS_MAP_START( pk8000_io , AS_IO, 8, photon_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x80, 0x83) AM_DEVREADWRITE_MODERN("ppi8255_1", i8255_device, read, write) AM_RANGE(0x84, 0x87) AM_DEVREADWRITE_MODERN("ppi8255_2", i8255_device, read, write) diff --git a/src/mame/drivers/photon2.c b/src/mame/drivers/photon2.c index 73415b7a165..cdc3bc30379 100644 --- a/src/mame/drivers/photon2.c +++ b/src/mame/drivers/photon2.c @@ -223,13 +223,13 @@ static WRITE8_HANDLER(photon2_misc_w) * *************************************/ -static ADDRESS_MAP_START (spectrum_mem, AS_PROGRAM, 8) +static ADDRESS_MAP_START (spectrum_mem, AS_PROGRAM, 8, photon2_state ) AM_RANGE(0x0000, 0x3fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x5aff) AM_RAM AM_BASE_MEMBER(photon2_state, m_spectrum_video_ram ) AM_RANGE(0x5b00, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START (spectrum_io, AS_IO, 8) +static ADDRESS_MAP_START (spectrum_io, AS_IO, 8, photon2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x1f, 0x1f) AM_READ_PORT("JOY") AM_RANGE(0x5b, 0x5b) AM_READ_PORT("COIN") AM_WRITE(photon2_misc_w) diff --git a/src/mame/drivers/photoply.c b/src/mame/drivers/photoply.c index 52c58a46361..e500bc531cc 100644 --- a/src/mame/drivers/photoply.c +++ b/src/mame/drivers/photoply.c @@ -230,7 +230,7 @@ static const struct pit8253_config at_pit8254_config = } }; -static ADDRESS_MAP_START( photoply_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( photoply_map, AS_PROGRAM, 32, photoply_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000bffff) AM_RAM // VGA RAM AM_RANGE(0x000c0000, 0x000c7fff) AM_RAM AM_REGION("video_bios", 0) //??? @@ -242,7 +242,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( photoply_io, AS_IO, 32 ) +static ADDRESS_MAP_START( photoply_io, AS_IO, 32, photoply_state ) AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", i8237_r, i8237_w, 0xffffffff) AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff) AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) diff --git a/src/mame/drivers/pingpong.c b/src/mame/drivers/pingpong.c index 01c62adc16a..ce2ec1e1868 100644 --- a/src/mame/drivers/pingpong.c +++ b/src/mame/drivers/pingpong.c @@ -88,7 +88,7 @@ static TIMER_DEVICE_CALLBACK( merlinmm_interrupt ) } } -static ADDRESS_MAP_START( pingpong_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pingpong_map, AS_PROGRAM, 8, pingpong_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(pingpong_colorram_w) AM_BASE_MEMBER(pingpong_state, m_colorram) AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(pingpong_videoram_w) AM_BASE_MEMBER(pingpong_state, m_videoram) @@ -105,7 +105,7 @@ static ADDRESS_MAP_START( pingpong_map, AS_PROGRAM, 8 ) AM_RANGE(0xa600, 0xa600) AM_WRITE(watchdog_reset_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( merlinmm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( merlinmm_map, AS_PROGRAM, 8, pingpong_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x5400, 0x57ff) AM_RAM diff --git a/src/mame/drivers/pinkiri8.c b/src/mame/drivers/pinkiri8.c index cce785e1ba5..f93af5fa66c 100644 --- a/src/mame/drivers/pinkiri8.c +++ b/src/mame/drivers/pinkiri8.c @@ -57,7 +57,7 @@ public: }; -static ADDRESS_MAP_START( janshi_vdp_map8, AS_0, 8 ) +static ADDRESS_MAP_START( janshi_vdp_map8, AS_0, 8, pinkiri8_state ) AM_RANGE(0xfc0000, 0xfc1fff) AM_RAM AM_BASE_MEMBER(pinkiri8_state, m_janshi_back_vram) // bg tilemap? AM_RANGE(0xfc2000, 0xfc2fff) AM_RAM AM_BASE_MEMBER(pinkiri8_state, m_janshi_vram1) // xpos, colour, tile number etc. @@ -374,7 +374,7 @@ static SCREEN_UPDATE_IND16( pinkiri8 ) return 0; } -static ADDRESS_MAP_START( pinkiri8_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pinkiri8_map, AS_PROGRAM, 8, pinkiri8_state ) AM_RANGE(0x00000, 0x0bfff) AM_ROM AM_RANGE(0x0c000, 0x0dfff) AM_RAM AM_RANGE(0x0e000, 0x0ffff) AM_ROM @@ -462,7 +462,7 @@ static READ8_HANDLER( mux_p1_r ) return 0xff; } -static ADDRESS_MAP_START( pinkiri8_io, AS_IO, 8 ) +static ADDRESS_MAP_START( pinkiri8_io, AS_IO, 8, pinkiri8_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x3f) AM_RAM //Z180 internal I/O AM_RANGE(0x60, 0x60) AM_WRITE(output_regs_w) diff --git a/src/mame/drivers/pipedrm.c b/src/mame/drivers/pipedrm.c index 0fbce0e2799..b2bb0dc070c 100644 --- a/src/mame/drivers/pipedrm.c +++ b/src/mame/drivers/pipedrm.c @@ -263,7 +263,7 @@ static READ8_HANDLER( sound_command_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, fromance_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1") @@ -272,7 +272,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, fromance_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_WRITE(fromance_crtc_data_w) AM_RANGE(0x11, 0x11) AM_WRITE(fromance_crtc_register_w) @@ -293,14 +293,14 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fromance_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank2") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, fromance_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x04, 0x04) AM_WRITE(sound_bankswitch_w) AM_RANGE(0x16, 0x16) AM_READ(sound_command_r) @@ -309,7 +309,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hatris_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hatris_sound_portmap, AS_IO, 8, fromance_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_MIRROR(0x08) AM_DEVREADWRITE("ymsnd", ym2608_r, ym2608_w) AM_RANGE(0x04, 0x04) AM_READ(sound_command_r) diff --git a/src/mame/drivers/pipeline.c b/src/mame/drivers/pipeline.c index ab8900d43ff..0f9ed4f857a 100644 --- a/src/mame/drivers/pipeline.c +++ b/src/mame/drivers/pipeline.c @@ -183,7 +183,7 @@ static WRITE8_DEVICE_HANDLER(protection_w) device->machine().scheduler().boost_interleave(attotime::zero, attotime::from_usec(100)); } -static ADDRESS_MAP_START( cpu0_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu0_mem, AS_PROGRAM, 8, pipeline_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x97ff) AM_RAM_WRITE(vram1_w) AM_BASE_MEMBER(pipeline_state, m_vram1) @@ -194,13 +194,13 @@ static ADDRESS_MAP_START( cpu0_mem, AS_PROGRAM, 8 ) AM_RANGE(0xb840, 0xb840) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_mem, AS_PROGRAM, 8, pipeline_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe003) AM_DEVREADWRITE("ppi8255_2", ppi8255_r, ppi8255_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port, AS_IO, 8, pipeline_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) AM_RANGE(0x06, 0x07) AM_NOP @@ -224,7 +224,7 @@ static WRITE8_HANDLER(mcu_ddrA_w) state->m_ddrA=data; } -static ADDRESS_MAP_START( mcu_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_mem, AS_PROGRAM, 8, pipeline_state ) AM_RANGE(0x0000, 0x0000) AM_READ(mcu_portA_r) AM_WRITE(mcu_portA_w) AM_RANGE(0x0004, 0x0004) AM_WRITE(mcu_ddrA_w) AM_RANGE(0x0010, 0x007f) AM_RAM diff --git a/src/mame/drivers/pirates.c b/src/mame/drivers/pirates.c index 794330c6ba3..52c375cfc20 100644 --- a/src/mame/drivers/pirates.c +++ b/src/mame/drivers/pirates.c @@ -162,7 +162,7 @@ static CUSTOM_INPUT( prot_r ) /* Memory Maps */ -static ADDRESS_MAP_START( pirates_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pirates_map, AS_PROGRAM, 16, pirates_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // main ram AM_RANGE(0x300000, 0x300001) AM_READ_PORT("INPUTS") diff --git a/src/mame/drivers/pitnrun.c b/src/mame/drivers/pitnrun.c index c2eebc32aab..d13d2df9b1e 100644 --- a/src/mame/drivers/pitnrun.c +++ b/src/mame/drivers/pitnrun.c @@ -92,7 +92,7 @@ static WRITE8_HANDLER(pitnrun_vflip_w) flip_screen_y_set(space->machine(), data); } -static ADDRESS_MAP_START( pitnrun_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pitnrun_map, AS_PROGRAM, 8, pitnrun_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(pitnrun_videoram_w) AM_BASE_MEMBER(pitnrun_state, m_videoram) @@ -118,12 +118,12 @@ static ADDRESS_MAP_START( pitnrun_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( pitnrun_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pitnrun_sound_map, AS_PROGRAM, 8, pitnrun_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3800, 0x3bff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pitnrun_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pitnrun_sound_io_map, AS_IO, 8, pitnrun_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(soundlatch_clear_w) AM_RANGE(0x8c, 0x8d) AM_DEVWRITE("ay2", ay8910_address_data_w) @@ -134,7 +134,7 @@ static ADDRESS_MAP_START( pitnrun_sound_io_map, AS_IO, 8 ) AM_RANGE(0x98, 0x98) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( pitnrun_mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pitnrun_mcu_map, AS_PROGRAM, 8, pitnrun_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(pitnrun_68705_portA_r,pitnrun_68705_portA_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(pitnrun_68705_portB_r,pitnrun_68705_portB_w) diff --git a/src/mame/drivers/pkscram.c b/src/mame/drivers/pkscram.c index 0eadb59e72f..65a367393fb 100644 --- a/src/mame/drivers/pkscram.c +++ b/src/mame/drivers/pkscram.c @@ -94,7 +94,7 @@ static WRITE16_HANDLER( pkscramble_output_w ) coin_counter_w(space->machine(), 0, data & 0x80); } -static ADDRESS_MAP_START( pkscramble_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pkscramble_map, AS_PROGRAM, 16, pkscram_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ffff) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x0400ff) AM_RAM AM_SHARE("nvram") diff --git a/src/mame/drivers/pktgaldx.c b/src/mame/drivers/pktgaldx.c index 5632d016377..de17ef65c09 100644 --- a/src/mame/drivers/pktgaldx.c +++ b/src/mame/drivers/pktgaldx.c @@ -71,7 +71,7 @@ static WRITE16_DEVICE_HANDLER(pktgaldx_oki_bank_w) /**********************************************************************************/ -static ADDRESS_MAP_START( pktgaldx_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pktgaldx_map, AS_PROGRAM, 16, pktgaldx_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("tilegen1", deco16ic_pf1_data_r, deco16ic_pf1_data_w) @@ -120,7 +120,7 @@ cpu #0 (PC=0000923C): unmapped program memory word read from 00167DB2 & 00FF /* do the 300000 addresses somehow interact with the protection addresses on this bootleg? */ /* or maybe protection writes go to sound ... */ -static ADDRESS_MAP_START( pktgaldb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pktgaldb_map, AS_PROGRAM, 16, pktgaldx_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM AM_BASE_MEMBER(pktgaldx_state, m_pktgaldb_fgram) // fgram on original? AM_RANGE(0x102000, 0x102fff) AM_RAM // bgram on original? diff --git a/src/mame/drivers/playch10.c b/src/mame/drivers/playch10.c index f2456677f8f..2c8d50e1643 100644 --- a/src/mame/drivers/playch10.c +++ b/src/mame/drivers/playch10.c @@ -369,7 +369,7 @@ static WRITE8_DEVICE_HANDLER( psg_4017_w ) /******************************************************************************/ /* BIOS */ -static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8, playch10_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM // 8V AM_RANGE(0x8800, 0x8fff) AM_READWRITE(ram_8w_r, ram_8w_w) AM_BASE_MEMBER(playch10_state, m_ram_8w) // 8W @@ -378,7 +378,7 @@ static ADDRESS_MAP_START( bios_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READWRITE(pc10_prot_r, pc10_prot_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bios_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bios_io_map, AS_IO, 8, playch10_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("BIOS") AM_WRITE(pc10_SDCS_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("SW1") AM_WRITE(pc10_CNTRLMASK_w) @@ -395,7 +395,7 @@ static ADDRESS_MAP_START( bios_io_map, AS_IO, 8 ) AM_RANGE(0x10, 0x13) AM_WRITE(time_w) AM_BASE_MEMBER(playch10_state, m_timedata) ADDRESS_MAP_END -static ADDRESS_MAP_START( cart_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cart_map, AS_PROGRAM, 8, playch10_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_MIRROR(0x1800) AM_BASE_MEMBER(playch10_state, m_work_ram) AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu", ppu2c0x_device, read, write) AM_RANGE(0x4011, 0x4011) AM_DEVWRITE("dac", dac_w) diff --git a/src/mame/drivers/playmark.c b/src/mame/drivers/playmark.c index 0873483ee1e..387a560b2f6 100644 --- a/src/mame/drivers/playmark.c +++ b/src/mame/drivers/playmark.c @@ -222,7 +222,7 @@ static READ8_HANDLER( PIC16C5X_T0_clk_r ) /***************************** 68000 Memory Maps ****************************/ -static ADDRESS_MAP_START( bigtwin_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigtwin_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x304000, 0x304001) AM_NOP /* watchdog? irq ack? */ AM_RANGE(0x440000, 0x4403ff) AM_RAM AM_BASE_SIZE_MEMBER(playmark_state, m_spriteram, m_spriteram_size) @@ -246,7 +246,7 @@ static ADDRESS_MAP_START( bigtwin_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bigtwinb_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigtwinb_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(hrdtimes_bgvideoram_w) AM_BASE_MEMBER(playmark_state, m_videoram3) AM_RANGE(0x104000, 0x107fff) AM_RAM_WRITE(hrdtimes_fgvideoram_w) AM_BASE_MEMBER(playmark_state, m_videoram2) @@ -265,7 +265,7 @@ static ADDRESS_MAP_START( bigtwinb_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( wbeachvl_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wbeachvl_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x440000, 0x440fff) AM_RAM AM_BASE_SIZE_MEMBER(playmark_state, m_spriteram, m_spriteram_size) AM_RANGE(0x500000, 0x501fff) AM_RAM_WRITE(wbeachvl_bgvideoram_w) AM_BASE_MEMBER(playmark_state, m_videoram3) @@ -287,7 +287,7 @@ static ADDRESS_MAP_START( wbeachvl_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( excelsr_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( excelsr_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x2fffff) AM_ROM AM_RANGE(0x304000, 0x304001) AM_WRITENOP /* watchdog? irq ack? */ AM_RANGE(0x440000, 0x440cff) AM_RAM AM_BASE_SIZE_MEMBER(playmark_state, m_spriteram, m_spriteram_size) @@ -307,7 +307,7 @@ static ADDRESS_MAP_START( excelsr_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( hotmind_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hotmind_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(hrdtimes_bgvideoram_w) AM_BASE_MEMBER(playmark_state, m_videoram3) AM_RANGE(0x104000, 0x107fff) AM_RAM_WRITE(hrdtimes_fgvideoram_w) AM_BASE_MEMBER(playmark_state, m_videoram2) @@ -325,7 +325,7 @@ static ADDRESS_MAP_START( hotmind_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( hrdtimes_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hrdtimes_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x0bffff) AM_RAM AM_RANGE(0x0c0000, 0x0fffff) AM_ROM AM_REGION("maincpu", 0x0c0000) @@ -353,7 +353,7 @@ ADDRESS_MAP_END /* $000 - 7FF PIC16C57 Internal Program ROM. Note: code is 12bits wide */ /* $000 - 07F PIC16C57 Internal Data RAM */ -static ADDRESS_MAP_START( playmark_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( playmark_sound_io_map, AS_IO, 8, playmark_state ) AM_RANGE(0x00, 0x00) AM_DEVWRITE("oki", playmark_oki_banking_w) AM_RANGE(0x01, 0x01) AM_READWRITE(playmark_snd_command_r, playmark_oki_w) AM_RANGE(0x02, 0x02) AM_READWRITE(playmark_snd_flag_r, playmark_snd_control_w) diff --git a/src/mame/drivers/pluto5.c b/src/mame/drivers/pluto5.c index 2526149f988..e8ecb606992 100644 --- a/src/mame/drivers/pluto5.c +++ b/src/mame/drivers/pluto5.c @@ -185,7 +185,7 @@ public: }; -static ADDRESS_MAP_START( pluto5_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( pluto5_map, AS_PROGRAM, 32, pluto5_state ) AM_RANGE(0x000000, 0x2fffff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/plygonet.c b/src/mame/drivers/plygonet.c index 8c3893c38d3..4b9b9c1addc 100644 --- a/src/mame/drivers/plygonet.c +++ b/src/mame/drivers/plygonet.c @@ -513,7 +513,7 @@ static WRITE16_HANDLER( dsp56k_ram_bank04_write ) /**********************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, polygonet_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x21ffff) AM_RAM_WRITE(plygonet_palette_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x400000, 0x40001f) AM_DEVREADWRITE16("k053936", k053936_ctrl_r, k053936_ctrl_w, 0xffffffff) @@ -538,13 +538,13 @@ ADDRESS_MAP_END /**********************************************************************************/ -static ADDRESS_MAP_START( dsp_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dsp_program_map, AS_PROGRAM, 16, polygonet_state ) AM_RANGE(0x7000, 0x7fff) AM_RAM AM_BASE_MEMBER(polygonet_state, m_dsp56k_p_mirror) /* Unsure of size, but 0x1000 matches bank01 */ AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(polygonet_state, m_dsp56k_p_8000) AM_RANGE(0xc000, 0xc000) AM_READ(dsp56k_bootload_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( dsp_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dsp_data_map, AS_DATA, 16, polygonet_state ) AM_RANGE(0x0800, 0x5fff) AM_RAM /* Appears to not be affected by banking? */ AM_RANGE(0x6000, 0x6fff) AM_READWRITE(dsp56k_ram_bank00_read, dsp56k_ram_bank00_write) AM_RANGE(0x7000, 0x7fff) AM_READWRITE(dsp56k_ram_bank01_read, dsp56k_ram_bank01_write) /* Mirrored in program space @ 0x7000 */ @@ -573,7 +573,7 @@ static INTERRUPT_GEN(audio_interrupt) device_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, polygonet_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0x0000, 0xbfff) AM_WRITENOP diff --git a/src/mame/drivers/pntnpuzl.c b/src/mame/drivers/pntnpuzl.c index e465b14b32a..a481d0494c8 100644 --- a/src/mame/drivers/pntnpuzl.c +++ b/src/mame/drivers/pntnpuzl.c @@ -286,7 +286,7 @@ static READ16_HANDLER( irq4_ack_r ) } -static ADDRESS_MAP_START( pntnpuzl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pntnpuzl_map, AS_PROGRAM, 16, pntnpuzl_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080001) AM_READ(irq1_ack_r) AM_RANGE(0x100000, 0x100001) AM_READ(irq2_ack_r) diff --git a/src/mame/drivers/pokechmp.c b/src/mame/drivers/pokechmp.c index 6780ad5de42..7189ac0bcb6 100644 --- a/src/mame/drivers/pokechmp.c +++ b/src/mame/drivers/pokechmp.c @@ -105,7 +105,7 @@ static WRITE8_HANDLER( pokechmp_paletteram_w ) } -static ADDRESS_MAP_START( pokechmp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pokechmp_map, AS_PROGRAM, 8, pokechmp_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(pokechmp_videoram_w) AM_BASE_MEMBER(pokechmp_state, m_videoram) AM_RANGE(0x1000, 0x11ff) AM_RAM AM_BASE_SIZE_MEMBER(pokechmp_state, m_spriteram, m_spriteram_size) @@ -129,7 +129,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( pokechmp_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pokechmp_sound_map, AS_PROGRAM, 8, pokechmp_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_w) diff --git a/src/mame/drivers/poker72.c b/src/mame/drivers/poker72.c index 8cc7b629814..7d90c069166 100644 --- a/src/mame/drivers/poker72.c +++ b/src/mame/drivers/poker72.c @@ -92,7 +92,7 @@ static WRITE8_HANDLER( tile_bank_w ) state->m_tile_bank = (data & 4) >> 2; } -static ADDRESS_MAP_START( poker72_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( poker72_map, AS_PROGRAM, 8, poker72_state ) AM_RANGE(0x0000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM //work ram AM_RANGE(0xe000, 0xefff) AM_RAM AM_BASE_MEMBER(poker72_state, m_vram) diff --git a/src/mame/drivers/polepos.c b/src/mame/drivers/polepos.c index e2c28cb98c9..0696a6bce83 100644 --- a/src/mame/drivers/polepos.c +++ b/src/mame/drivers/polepos.c @@ -488,7 +488,7 @@ static MACHINE_RESET( polepos ) * CPU memory structures *********************************************************************/ -static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, polepos_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3000, 0x37ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("nvram") /* Battery Backup */ AM_RANGE(0x4000, 0x47ff) AM_READWRITE(polepos_sprite_r, polepos_sprite_w) /* Motion Object */ @@ -508,14 +508,14 @@ static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8 ) AM_RANGE(0xa300, 0xa300) AM_MIRROR(0x0cff) AM_DEVWRITE("polepos", polepos_engine_sound_msb_w) /* Car Sound ( Upper Nibble ) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_io, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_io, AS_IO, 8, polepos_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(polepos_adc_r) AM_WRITENOP ADDRESS_MAP_END /* the same memory map is used by both Z8002 CPUs; all RAM areas are shared */ -static ADDRESS_MAP_START( z8002_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( z8002_map, AS_PROGRAM, 16, polepos_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x6000, 0x6001) AM_MIRROR(0x0ffe) AM_WRITE(polepos_z8002_nvi_enable_w) /* NVI enable - *NOT* shared by the two CPUs */ AM_RANGE(0x8000, 0x8fff) AM_READWRITE(polepos_sprite16_r, polepos_sprite16_w) AM_BASE_MEMBER(polepos_state, m_sprite16_memory) /* Motion Object */ @@ -1005,12 +1005,12 @@ static MACHINE_CONFIG_START( topracern, polepos_state ) MACHINE_CONFIG_END -static ADDRESS_MAP_START( sound_z80_bootleg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_z80_bootleg_map, AS_PROGRAM, 8, polepos_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2700, 0x27ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_z80_bootleg_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_z80_bootleg_iomap, AS_IO, 8, polepos_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/drivers/policetr.c b/src/mame/drivers/policetr.c index 39eb702fad9..6aaae7fd6fc 100644 --- a/src/mame/drivers/policetr.c +++ b/src/mame/drivers/policetr.c @@ -254,7 +254,7 @@ static const eeprom_interface eeprom_interface_policetr = * *************************************/ -static ADDRESS_MAP_START( policetr_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( policetr_map, AS_PROGRAM, 32, policetr_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_BASE_MEMBER(policetr_state, m_rambase) AM_RANGE(0x00200000, 0x0020000f) AM_WRITE(policetr_video_w) AM_RANGE(0x00400000, 0x00400003) AM_READ(policetr_video_r) @@ -273,7 +273,7 @@ static ADDRESS_MAP_START( policetr_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sshooter_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( sshooter_map, AS_PROGRAM, 32, policetr_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_BASE_MEMBER(policetr_state, m_rambase) AM_RANGE(0x00200000, 0x00200003) AM_WRITE(policetr_bsmt2000_data_w) AM_RANGE(0x00300000, 0x00300003) AM_WRITE(policetr_palette_offset_w) diff --git a/src/mame/drivers/polyplay.c b/src/mame/drivers/polyplay.c index 1fa29891d34..c38c86524f5 100644 --- a/src/mame/drivers/polyplay.c +++ b/src/mame/drivers/polyplay.c @@ -142,7 +142,7 @@ static INTERRUPT_GEN( coin_interrupt ) /* memory mapping */ -static ADDRESS_MAP_START( polyplay_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( polyplay_map, AS_PROGRAM, 8, polyplay_state ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x0c00, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x8fff) AM_ROM @@ -153,7 +153,7 @@ ADDRESS_MAP_END /* port mapping */ -static ADDRESS_MAP_START( polyplay_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( polyplay_io_map, AS_IO, 8, polyplay_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x81) AM_WRITE(polyplay_sound_channel) AM_RANGE(0x82, 0x82) AM_WRITE(polyplay_start_timer2) diff --git a/src/mame/drivers/poo.c b/src/mame/drivers/poo.c index 7951de4d15d..404a3927ba7 100644 --- a/src/mame/drivers/poo.c +++ b/src/mame/drivers/poo.c @@ -146,7 +146,7 @@ static WRITE8_HANDLER( poo_vregs_w ) state->m_vram_colbank = data & 0x18; } -static ADDRESS_MAP_START( unclepoo_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( unclepoo_main_map, AS_PROGRAM, 8, poo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x97ff) AM_RAM @@ -169,19 +169,19 @@ static ADDRESS_MAP_START( unclepoo_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( unclepoo_main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( unclepoo_main_portmap, AS_IO, 8, poo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END -static ADDRESS_MAP_START( unclepoo_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( unclepoo_sub_map, AS_PROGRAM, 8, poo_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_WRITENOP /* R/C filter ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( unclepoo_sub_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( unclepoo_sub_portmap, AS_IO, 8, poo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("ay", ay8910_r, ay8910_data_w) AM_RANGE(0x80, 0x80) AM_DEVWRITE("ay", ay8910_address_w) diff --git a/src/mame/drivers/poolshrk.c b/src/mame/drivers/poolshrk.c index d4bc67b9bed..5359b4927b2 100644 --- a/src/mame/drivers/poolshrk.c +++ b/src/mame/drivers/poolshrk.c @@ -99,7 +99,7 @@ static READ8_HANDLER( poolshrk_irq_reset_r ) } -static ADDRESS_MAP_START( poolshrk_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( poolshrk_cpu_map, AS_PROGRAM, 8, poolshrk_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x00ff) AM_MIRROR(0x2300) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_MIRROR(0x2000) AM_WRITEONLY AM_BASE_MEMBER(poolshrk_state, m_playfield_ram) diff --git a/src/mame/drivers/pooyan.c b/src/mame/drivers/pooyan.c index ec67b70da05..05576023ade 100644 --- a/src/mame/drivers/pooyan.c +++ b/src/mame/drivers/pooyan.c @@ -49,7 +49,7 @@ static WRITE8_HANDLER( irq_enable_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pooyan_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(pooyan_colorram_w) AM_BASE_MEMBER(pooyan_state, m_colorram) AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(pooyan_videoram_w) AM_BASE_MEMBER(pooyan_state, m_videoram) diff --git a/src/mame/drivers/popeye.c b/src/mame/drivers/popeye.c index 3e2c8f8ccbc..e89be697a47 100644 --- a/src/mame/drivers/popeye.c +++ b/src/mame/drivers/popeye.c @@ -64,7 +64,7 @@ static WRITE8_HANDLER( protection_w ) -static ADDRESS_MAP_START( skyskipr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( skyskipr_map, AS_PROGRAM, 8, popeye_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8c00, 0x8c02) AM_RAM AM_BASE_MEMBER(popeye_state, m_background_pos) @@ -77,7 +77,7 @@ static ADDRESS_MAP_START( skyskipr_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe001) AM_READWRITE(protection_r,protection_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( popeye_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( popeye_map, AS_PROGRAM, 8, popeye_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM @@ -91,7 +91,7 @@ static ADDRESS_MAP_START( popeye_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe001) AM_READWRITE(protection_r,protection_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( popeyebl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( popeyebl_map, AS_PROGRAM, 8, popeye_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8c00, 0x8c02) AM_RAM AM_BASE_MEMBER(popeye_state, m_background_pos) @@ -104,7 +104,7 @@ static ADDRESS_MAP_START( popeyebl_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe01f) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( popeye_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( popeye_io_map, AS_IO, 8, popeye_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") diff --git a/src/mame/drivers/popobear.c b/src/mame/drivers/popobear.c index 5d8f4846a22..77a93c7b07a 100644 --- a/src/mame/drivers/popobear.c +++ b/src/mame/drivers/popobear.c @@ -284,7 +284,7 @@ static WRITE8_HANDLER( popobear_irq_ack_w ) } } -static ADDRESS_MAP_START( popobear_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( popobear_mem, AS_PROGRAM, 16, popobear_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x210000, 0x21ffff) AM_RAM diff --git a/src/mame/drivers/popper.c b/src/mame/drivers/popper.c index 72899fd8791..6a5b539408b 100644 --- a/src/mame/drivers/popper.c +++ b/src/mame/drivers/popper.c @@ -159,7 +159,7 @@ static WRITE8_HANDLER( nmi_mask_w ) * *************************************/ -static ADDRESS_MAP_START( popper_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( popper_map, AS_PROGRAM, 8, popper_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0xc000, 0xc1bf) AM_RAM AM_RANGE(0xc1c0, 0xc1ff) AM_RAM_WRITE(popper_ol_videoram_w) AM_BASE_MEMBER(popper_state, m_ol_videoram) @@ -182,7 +182,7 @@ static ADDRESS_MAP_START( popper_map, AS_PROGRAM, 8 ) AM_RANGE(0xffff, 0xffff) AM_READNOP ADDRESS_MAP_END -static ADDRESS_MAP_START( popper_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( popper_sound_map, AS_PROGRAM, 8, popper_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x8002, 0x8002) AM_READNOP //?? all read once at startup and the diff --git a/src/mame/drivers/portrait.c b/src/mame/drivers/portrait.c index 854dfdfc7a9..603308fde99 100644 --- a/src/mame/drivers/portrait.c +++ b/src/mame/drivers/portrait.c @@ -118,7 +118,7 @@ static WRITE8_HANDLER( portrait_negative_scroll_w ) state->m_scroll = - (data ^ 0xff); } -static ADDRESS_MAP_START( portrait_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( portrait_map, AS_PROGRAM, 8, portrait_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(portrait_bgvideo_write) AM_BASE_MEMBER(portrait_state, m_bgvideoram) AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(portrait_fgvideo_write) AM_BASE_MEMBER(portrait_state, m_fgvideoram) @@ -137,7 +137,7 @@ static ADDRESS_MAP_START( portrait_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( portrait_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( portrait_sound_map, AS_PROGRAM, 8, portrait_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/potgoldu.c b/src/mame/drivers/potgoldu.c index 442c115732b..3a2fbc70fab 100644 --- a/src/mame/drivers/potgoldu.c +++ b/src/mame/drivers/potgoldu.c @@ -54,7 +54,7 @@ static MACHINE_RESET( potgold ) } -static ADDRESS_MAP_START( potgold_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( potgold_map, AS_PROGRAM, 16, potgold_state ) AM_RANGE(0xff000000, 0xffffffff) AM_ROM AM_REGION("user1", 0) ADDRESS_MAP_END diff --git a/src/mame/drivers/powerbal.c b/src/mame/drivers/powerbal.c index 545c1996ebf..332bb6971c9 100644 --- a/src/mame/drivers/powerbal.c +++ b/src/mame/drivers/powerbal.c @@ -75,7 +75,7 @@ static WRITE16_DEVICE_HANDLER( oki_banking ) } } -static ADDRESS_MAP_START( magicstk_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( magicstk_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x088000, 0x0883ff) AM_RAM_WRITE(bigtwin_paletteram_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x094000, 0x094001) AM_WRITENOP @@ -94,7 +94,7 @@ static ADDRESS_MAP_START( magicstk_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x100000, 0x100fff) AM_RAM AM_BASE_SIZE_MEMBER(playmark_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( powerbal_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( powerbal_main_map, AS_PROGRAM, 16, playmark_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x088000, 0x0883ff) AM_RAM_WRITE(bigtwin_paletteram_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x094000, 0x094001) AM_WRITENOP diff --git a/src/mame/drivers/powerins.c b/src/mame/drivers/powerins.c index 6887b297b90..5cf04b376b5 100644 --- a/src/mame/drivers/powerins.c +++ b/src/mame/drivers/powerins.c @@ -72,7 +72,7 @@ static READ8_HANDLER( powerinb_fake_ym2203_r ) } -static ADDRESS_MAP_START( powerins_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( powerins_map, AS_PROGRAM, 16, powerins_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("SYSTEM") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P1_P2") @@ -92,7 +92,7 @@ static ADDRESS_MAP_START( powerins_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* powerina: same as the original one but without the sound cpu (and inferior sound HW) */ -static ADDRESS_MAP_START( powerina_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( powerina_map, AS_PROGRAM, 16, powerins_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("SYSTEM") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P1_P2") @@ -112,7 +112,7 @@ static ADDRESS_MAP_START( powerina_map, AS_PROGRAM, 16 ) AM_RANGE(0x180000, 0x18ffff) AM_RAM AM_BASE_MEMBER(powerins_state, m_spriteram) // RAM + Sprites ADDRESS_MAP_END -static ADDRESS_MAP_START( powerins_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( powerins_sound_map, AS_PROGRAM, 8, powerins_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) @@ -120,7 +120,7 @@ static ADDRESS_MAP_START( powerins_sound_map, AS_PROGRAM, 8 ) // AM_RANGE(0xe001, 0xe001) AM_WRITENOP // ? ADDRESS_MAP_END -static ADDRESS_MAP_START( powerins_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( powerins_sound_io_map, AS_IO, 8, powerins_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym2203", ym2203_r, ym2203_w) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE_MODERN("oki1", okim6295_device, read, write) @@ -128,7 +128,7 @@ static ADDRESS_MAP_START( powerins_sound_io_map, AS_IO, 8 ) AM_RANGE(0x90, 0x97) AM_DEVWRITE("nmk112", nmk112_okibank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( powerinb_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( powerinb_sound_io_map, AS_IO, 8, powerins_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(powerinb_fake_ym2203_r) AM_WRITENOP AM_RANGE(0x01, 0x01) AM_NOP diff --git a/src/mame/drivers/ppmast93.c b/src/mame/drivers/ppmast93.c index 3ba2a1784b5..1807d6bcd87 100644 --- a/src/mame/drivers/ppmast93.c +++ b/src/mame/drivers/ppmast93.c @@ -177,7 +177,7 @@ static WRITE8_HANDLER( ppmast93_port4_w ) memory_set_bankptr(space->machine(), "bank1",&rom[0x10000+(bank*0x4000)]); } -static ADDRESS_MAP_START( ppmast93_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ppmast93_cpu1_map, AS_PROGRAM, 8, ppmast93_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP AM_REGION("maincpu", 0x10000) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(ppmast93_bgram_w) AM_BASE_MEMBER(ppmast93_state, m_bgram) AM_SHARE("share1") @@ -186,7 +186,7 @@ static ADDRESS_MAP_START( ppmast93_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ppmast93_cpu1_io, AS_IO, 8 ) +static ADDRESS_MAP_START( ppmast93_cpu1_io, AS_IO, 8, ppmast93_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x02, 0x02) AM_READ_PORT("P2") @@ -198,7 +198,7 @@ static ADDRESS_MAP_START( ppmast93_cpu1_io, AS_IO, 8 ) AM_RANGE(0x04, 0x04) AM_WRITE(ppmast93_port4_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ppmast93_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ppmast93_cpu2_map, AS_PROGRAM, 8, ppmast93_state ) AM_RANGE(0x0000, 0xfbff) AM_ROM AM_REGION("sub", 0x10000) AM_RANGE(0xfc00, 0xfc00) AM_READ(soundlatch_r) AM_RANGE(0xfd00, 0xffff) AM_RAM @@ -216,7 +216,7 @@ static WRITE8_HANDLER(ppmast_sound_w) } } -static ADDRESS_MAP_START( ppmast93_cpu2_io, AS_IO, 8 ) +static ADDRESS_MAP_START( ppmast93_cpu2_io, AS_IO, 8, ppmast93_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_WRITE(ppmast_sound_w) AM_REGION("sub", 0x20000) ADDRESS_MAP_END diff --git a/src/mame/drivers/prehisle.c b/src/mame/drivers/prehisle.c index 0f81089bf3b..f2d8cfce3b5 100644 --- a/src/mame/drivers/prehisle.c +++ b/src/mame/drivers/prehisle.c @@ -25,7 +25,7 @@ static WRITE16_HANDLER( prehisle_sound16_w ) /*******************************************************************************/ -static ADDRESS_MAP_START( prehisle_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( prehisle_map, AS_PROGRAM, 16, prehisle_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x070000, 0x073fff) AM_RAM AM_RANGE(0x090000, 0x0907ff) AM_RAM_WRITE(prehisle_fg_videoram16_w) AM_BASE_MEMBER(prehisle_state, m_videoram) @@ -51,14 +51,14 @@ static WRITE8_DEVICE_HANDLER( D7759_upd_reset_w ) upd7759_reset_w(device, data & 0x80); } -static ADDRESS_MAP_START( prehisle_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( prehisle_sound_map, AS_PROGRAM, 8, prehisle_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_READ(soundlatch_r) AM_RANGE(0xf800, 0xf800) AM_WRITENOP // ??? ADDRESS_MAP_END -static ADDRESS_MAP_START( prehisle_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( prehisle_sound_io_map, AS_IO, 8, prehisle_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_status_port_r, ym3812_control_port_w) AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_write_port_w) diff --git a/src/mame/drivers/progolf.c b/src/mame/drivers/progolf.c index 1be1e1eba3a..132aa660f8b 100644 --- a/src/mame/drivers/progolf.c +++ b/src/mame/drivers/progolf.c @@ -240,7 +240,7 @@ static WRITE8_HANDLER( progolf_videoram_w ) videoram[offset] = data; } -static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, progolf_state ) AM_RANGE(0x0000, 0x5fff) AM_RAM AM_RANGE(0x6000, 0x7fff) AM_RAM_WRITE(progolf_charram_w) AM_BASE_MEMBER(progolf_state, m_fbram) AM_RANGE(0x8000, 0x8fff) AM_READWRITE(progolf_videoram_r,progolf_videoram_w) @@ -256,7 +256,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) AM_RANGE(0xb000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, progolf_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x4000, 0x4fff) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_data_w) AM_RANGE(0x5000, 0x5fff) AM_DEVWRITE("ay1", ay8910_address_w) diff --git a/src/mame/drivers/psattack.c b/src/mame/drivers/psattack.c index afcf0bdba7a..c8a8fd13fb2 100644 --- a/src/mame/drivers/psattack.c +++ b/src/mame/drivers/psattack.c @@ -93,7 +93,7 @@ static READ32_HANDLER( psattack_unk_r ) return 0xffffffff; } -static ADDRESS_MAP_START( psattack_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( psattack_mem, AS_PROGRAM, 32, psattack_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_RANGE(0x01402204, 0x01402207) AM_READ(psattack_unk_r) AM_RANGE(0x01402804, 0x01402807) AM_READ(psattack_unk_r) diff --git a/src/mame/drivers/psikyo.c b/src/mame/drivers/psikyo.c index 042ad8e2c3e..3ebfb8ed6c3 100644 --- a/src/mame/drivers/psikyo.c +++ b/src/mame/drivers/psikyo.c @@ -317,7 +317,7 @@ static WRITE32_HANDLER( paletteram32_xRRRRRGGGGGBBBBB_dword_w ) paletteram16_xRRRRRGGGGGBBBBB_word_w(space, offset * 2 + 1, data, mem_mask); } -static ADDRESS_MAP_START( psikyo_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( psikyo_map, AS_PROGRAM, 32, psikyo_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM (not all used) AM_RANGE(0x400000, 0x401fff) AM_RAM AM_BASE_SIZE_MEMBER(psikyo_state, m_spriteram, m_spriteram_size) // Sprites, buffered by two frames (list buffered + fb buffered) AM_RANGE(0x600000, 0x601fff) AM_RAM_WRITE(paletteram32_xRRRRRGGGGGBBBBB_dword_w) AM_BASE_GENERIC(paletteram) // Palette @@ -359,12 +359,12 @@ static WRITE32_HANDLER( s1945bl_oki_w ) printf("ACCESSING_BITS_0_7 ?? %08x %08x\n", data & 0x000000ff, mem_mask); } -static ADDRESS_MAP_START( s1945bl_oki_map, AS_0, 8 ) +static ADDRESS_MAP_START( s1945bl_oki_map, AS_0, 8, psikyo_state ) AM_RANGE(0x00000, 0x2ffff) AM_ROM AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("okibank") ADDRESS_MAP_END -static ADDRESS_MAP_START( psikyo_bootleg_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( psikyo_bootleg_map, AS_PROGRAM, 32, psikyo_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM (not all used) AM_RANGE(0x200000, 0x200fff) AM_RAM AM_BASE_MEMBER(psikyo_state, m_bootleg_spritebuffer) // RAM (it copies the spritelist here, the HW probably doesn't have automatic buffering like the originals? @@ -420,13 +420,13 @@ static WRITE8_HANDLER( sngkace_sound_bankswitch_w ) memory_set_bank(space->machine(), "bank1", data & 0x03); } -static ADDRESS_MAP_START( sngkace_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sngkace_sound_map, AS_PROGRAM, 8, psikyo_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM // ROM AM_RANGE(0x7800, 0x7fff) AM_RAM // RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") // Banked ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sngkace_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sngkace_sound_io_map, AS_IO, 8, psikyo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) AM_RANGE(0x04, 0x04) AM_WRITE(sngkace_sound_bankswitch_w) @@ -444,13 +444,13 @@ static WRITE8_HANDLER( gunbird_sound_bankswitch_w ) memory_set_bank(space->machine(), "bank1", (data >> 4) & 0x03); } -static ADDRESS_MAP_START( gunbird_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gunbird_sound_map, AS_PROGRAM, 8, psikyo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0x81ff) AM_RAM // RAM AM_RANGE(0x8200, 0xffff) AM_ROMBANK("bank1") // Banked ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( gunbird_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gunbird_sound_io_map, AS_IO, 8, psikyo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(gunbird_sound_bankswitch_w) AM_RANGE(0x04, 0x07) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) @@ -462,7 +462,7 @@ ADDRESS_MAP_END Strikers 1945 / Tengai ***************************************************************************/ -static ADDRESS_MAP_START( s1945_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( s1945_sound_io_map, AS_IO, 8, psikyo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(gunbird_sound_bankswitch_w) AM_RANGE(0x02, 0x03) AM_WRITENOP diff --git a/src/mame/drivers/psikyo4.c b/src/mame/drivers/psikyo4.c index 18f92398298..a779bfdde19 100644 --- a/src/mame/drivers/psikyo4.c +++ b/src/mame/drivers/psikyo4.c @@ -360,7 +360,7 @@ static WRITE32_HANDLER( hotgmck_pcm_bank_w ) set_hotgmck_pcm_bank(space->machine(), 1); } -static ADDRESS_MAP_START( ps4_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ps4_map, AS_PROGRAM, 32, psikyo4_state ) AM_RANGE(0x00000000, 0x000fffff) AM_ROM // program ROM (1 meg) AM_RANGE(0x02000000, 0x021fffff) AM_ROMBANK("bank1") // data ROM AM_RANGE(0x03000000, 0x030037ff) AM_RAM AM_BASE_SIZE_MEMBER(psikyo4_state, m_spriteram, m_spriteram_size) diff --git a/src/mame/drivers/psikyosh.c b/src/mame/drivers/psikyosh.c index 4d027999902..4f52d7deab8 100644 --- a/src/mame/drivers/psikyosh.c +++ b/src/mame/drivers/psikyosh.c @@ -511,7 +511,7 @@ P1KEY11 29|30 P2KEY11 // ps3v1 -static ADDRESS_MAP_START( ps3v1_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ps3v1_map, AS_PROGRAM, 32, psikyosh_state ) // rom mapping AM_RANGE(0x00000000, 0x000fffff) AM_ROM // program ROM (1 meg) AM_RANGE(0x02000000, 0x021fffff) AM_ROMBANK("bank1") // data ROM @@ -535,7 +535,7 @@ static ADDRESS_MAP_START( ps3v1_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END // ps5, ps5v2 -static ADDRESS_MAP_START( ps5_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ps5_map, AS_PROGRAM, 32, psikyosh_state ) // rom mapping AM_RANGE(0x00000000, 0x000fffff) AM_ROM // program ROM (1 meg) // inputs/eeprom diff --git a/src/mame/drivers/psychic5.c b/src/mame/drivers/psychic5.c index 3b6ea0cdc9d..71d32f959d2 100644 --- a/src/mame/drivers/psychic5.c +++ b/src/mame/drivers/psychic5.c @@ -409,7 +409,7 @@ static WRITE8_HANDLER( bombsa_flipscreen_w ) ***************************************************************************/ -static ADDRESS_MAP_START( psychic5_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( psychic5_main_map, AS_PROGRAM, 8, psychic5_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_READWRITE(psychic5_paged_ram_r, psychic5_paged_ram_w) @@ -425,20 +425,20 @@ static ADDRESS_MAP_START( psychic5_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( psychic5_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( psychic5_sound_map, AS_PROGRAM, 8, psychic5_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( psychic5_soundport_map, AS_IO, 8 ) +static ADDRESS_MAP_START( psychic5_soundport_map, AS_IO, 8, psychic5_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x80, 0x81) AM_DEVWRITE("ym2", ym2203_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bombsa_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bombsa_main_map, AS_PROGRAM, 8, psychic5_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -457,14 +457,14 @@ static ADDRESS_MAP_START( bombsa_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_READWRITE(psychic5_paged_ram_r, bombsa_paged_ram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bombsa_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bombsa_sound_map, AS_PROGRAM, 8, psychic5_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) AM_RANGE(0xf000, 0xf000) AM_WRITEONLY // Is this a confirm of some sort? ADDRESS_MAP_END -static ADDRESS_MAP_START( bombsa_soundport_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bombsa_soundport_map, AS_IO, 8, psychic5_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x80, 0x81) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/pturn.c b/src/mame/drivers/pturn.c index a0890f79d5f..5d453e6ef16 100644 --- a/src/mame/drivers/pturn.c +++ b/src/mame/drivers/pturn.c @@ -302,7 +302,7 @@ static READ8_HANDLER (pturn_custom_r) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, pturn_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xcfff) AM_WRITENOP AM_READ(pturn_custom_r) @@ -336,7 +336,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, pturn_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READ(soundlatch_r) AM_WRITE(nmi_sub_enable_w) diff --git a/src/mame/drivers/puckpkmn.c b/src/mame/drivers/puckpkmn.c index 5df59d2e361..40bc722d66d 100644 --- a/src/mame/drivers/puckpkmn.c +++ b/src/mame/drivers/puckpkmn.c @@ -126,7 +126,7 @@ static INPUT_PORTS_START( puckpkmn ) INPUT_PORTS_END -static ADDRESS_MAP_START( puckpkmn_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( puckpkmn_map, AS_PROGRAM, 16, md_boot_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM /* Main 68k Program Roms */ AM_RANGE(0x700010, 0x700011) AM_READ_PORT("P2") AM_RANGE(0x700012, 0x700013) AM_READ_PORT("P1") @@ -158,7 +158,7 @@ static READ16_HANDLER(puckpkmna_4b2476_r) return 0x3400; } -static ADDRESS_MAP_START( puckpkmna_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( puckpkmna_map, AS_PROGRAM, 16, md_boot_state ) AM_IMPORT_FROM( puckpkmn_map ) AM_RANGE(0x4b2476, 0x4b2477) AM_READ(puckpkmna_4b2476_r) AM_RANGE(0x70001c, 0x70001d) AM_READ(puckpkmna_70001c_r) diff --git a/src/mame/drivers/punchout.c b/src/mame/drivers/punchout.c index dfddda07030..badc2bcdcdb 100644 --- a/src/mame/drivers/punchout.c +++ b/src/mame/drivers/punchout.c @@ -313,7 +313,7 @@ static WRITE8_HANDLER( spunchout_exp_w ) -static ADDRESS_MAP_START( punchout_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( punchout_map, AS_PROGRAM, 8, punchout_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xd000, 0xd7ff) AM_RAM @@ -327,7 +327,7 @@ static ADDRESS_MAP_START( punchout_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( armwrest_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( armwrest_map, AS_PROGRAM, 8, punchout_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xd000, 0xd7ff) AM_RAM @@ -348,7 +348,7 @@ static WRITE8_HANDLER( nmi_mask_w ) state->m_nmi_mask = data & 1; } -static ADDRESS_MAP_START( punchout_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( punchout_io_map, AS_IO, 8, punchout_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") @@ -371,7 +371,7 @@ static ADDRESS_MAP_START( punchout_io_map, AS_IO, 8 ) AM_RANGE(0x07, 0x07) AM_MIRROR(0xf0) AM_MASK(0xf0) AM_READWRITE(spunchout_exp_r, spunchout_exp_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( punchout_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( punchout_sound_map, AS_PROGRAM, 8, punchout_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x4016, 0x4016) AM_READ(soundlatch_r) AM_RANGE(0x4017, 0x4017) AM_READ(soundlatch2_r) diff --git a/src/mame/drivers/pushman.c b/src/mame/drivers/pushman.c index 6ab91c8a211..2d2468e149f 100644 --- a/src/mame/drivers/pushman.c +++ b/src/mame/drivers/pushman.c @@ -149,7 +149,7 @@ static WRITE8_HANDLER( pushman_68000_w ) /******************************************************************************/ -static ADDRESS_MAP_START( pushman_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pushman_map, AS_PROGRAM, 16, pushman_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x060000, 0x060007) AM_READWRITE(pushman_68705_r, pushman_68705_w) AM_RANGE(0xfe0800, 0xfe17ff) AM_RAM AM_BASE_MEMBER(pushman_state, m_spriteram) @@ -163,25 +163,25 @@ static ADDRESS_MAP_START( pushman_map, AS_PROGRAM, 16 ) AM_RANGE(0xffc000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, pushman_state ) AM_RANGE(0x0000, 0x0007) AM_READWRITE(pushman_68000_r, pushman_68000_w) AM_RANGE(0x0010, 0x007f) AM_RAM AM_RANGE(0x0080, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, pushman_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, pushman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x80, 0x81) AM_DEVWRITE("ym2", ym2203_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bballs_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bballs_map, AS_PROGRAM, 16, pushman_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x00000, 0x1ffff) AM_ROM AM_RANGE(0x60000, 0x60007) AM_READWRITE(bballs_68705_r, bballs_68705_w) diff --git a/src/mame/drivers/pzletime.c b/src/mame/drivers/pzletime.c index 238c3624954..06d20b54978 100644 --- a/src/mame/drivers/pzletime.c +++ b/src/mame/drivers/pzletime.c @@ -207,7 +207,7 @@ static CUSTOM_INPUT( ticket_status_r ) return (state->m_ticket && !(field.machine().primary_screen->frame_number() % 128)); } -static ADDRESS_MAP_START( pzletime_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pzletime_map, AS_PROGRAM, 16, pzletime_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM AM_RANGE(0x700000, 0x700005) AM_RAM_WRITE(video_regs_w) AM_BASE_MEMBER(pzletime_state, m_video_regs) AM_RANGE(0x800000, 0x800001) AM_DEVREADWRITE8_MODERN("oki", okim6295_device, read, write, 0x00ff) diff --git a/src/mame/drivers/qdrmfgp.c b/src/mame/drivers/qdrmfgp.c index 0abdf869c3a..6269fdfc70e 100644 --- a/src/mame/drivers/qdrmfgp.c +++ b/src/mame/drivers/qdrmfgp.c @@ -339,7 +339,7 @@ static void gp2_ide_interrupt(device_t *device, int state) * *************************************/ -static ADDRESS_MAP_START( qdrmfgp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qdrmfgp_map, AS_PROGRAM, 16, qdrmfgp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE_MEMBER(qdrmfgp_state, m_workram) /* work ram */ AM_RANGE(0x180000, 0x183fff) AM_RAM AM_SHARE("nvram") /* backup ram */ @@ -362,7 +362,7 @@ static ADDRESS_MAP_START( qdrmfgp_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( qdrmfgp2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qdrmfgp2_map, AS_PROGRAM, 16, qdrmfgp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x110fff) AM_RAM AM_BASE_MEMBER(qdrmfgp_state, m_workram) /* work ram */ AM_RANGE(0x180000, 0x183fff) AM_RAM AM_SHARE("nvram") /* backup ram */ diff --git a/src/mame/drivers/qix.c b/src/mame/drivers/qix.c index 68cc999b4cf..0d8b8e566da 100644 --- a/src/mame/drivers/qix.c +++ b/src/mame/drivers/qix.c @@ -238,7 +238,7 @@ Interrupts: * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, qix_state ) AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x8400, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_READNOP /* 6850 ACIA */ @@ -252,7 +252,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( zoo_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( zoo_main_map, AS_PROGRAM, 8, qix_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x0400, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0bff) AM_READNOP /* ACIA */ @@ -273,7 +273,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, qix_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(qix_68705_portA_r, qix_68705_portA_w) AM_BASE_MEMBER(qix_state, m_68705_port_out) AM_RANGE(0x0001, 0x0001) AM_READWRITE(qix_68705_portB_r, qix_68705_portB_w) diff --git a/src/mame/drivers/quakeat.c b/src/mame/drivers/quakeat.c index 3a3d15eb725..b8a9e71b793 100644 --- a/src/mame/drivers/quakeat.c +++ b/src/mame/drivers/quakeat.c @@ -84,11 +84,11 @@ static SCREEN_UPDATE_IND16(quake) return 0; } -static ADDRESS_MAP_START( quake_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( quake_map, AS_PROGRAM, 32, quakeat_state ) AM_RANGE(0x00000000, 0x0000ffff) AM_ROM AM_REGION("pc_bios", 0) /* BIOS */ ADDRESS_MAP_END -static ADDRESS_MAP_START( quake_io, AS_IO, 32 ) +static ADDRESS_MAP_START( quake_io, AS_IO, 32, quakeat_state ) // AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", dma8237_r, dma8237_w, 0xffffffff) AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff) // AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) diff --git a/src/mame/drivers/quantum.c b/src/mame/drivers/quantum.c index 5e36c15858e..8b8d09e38ce 100644 --- a/src/mame/drivers/quantum.c +++ b/src/mame/drivers/quantum.c @@ -123,7 +123,7 @@ static WRITE16_HANDLER( led_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, quantum_state ) AM_RANGE(0x000000, 0x013fff) AM_ROM AM_RANGE(0x018000, 0x01cfff) AM_RAM AM_RANGE(0x800000, 0x801fff) AM_RAM AM_BASE((UINT16 **)&avgdvg_vectorram) AM_SIZE(&avgdvg_vectorram_size) diff --git a/src/mame/drivers/quasar.c b/src/mame/drivers/quasar.c index 35f0762fb83..7907c4736c7 100644 --- a/src/mame/drivers/quasar.c +++ b/src/mame/drivers/quasar.c @@ -114,7 +114,7 @@ static READ8_HANDLER( audio_t1_r ) // memory map taken from the manual -static ADDRESS_MAP_START( quasar, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( quasar, AS_PROGRAM, 8, quasar_state ) AM_RANGE(0x0000, 0x13ff) AM_ROM AM_RANGE(0x1400, 0x14ff) AM_MIRROR(0x6000) AM_READWRITE(cvs_bullet_ram_or_palette_r, quasar_bullet_w) AM_BASE_MEMBER(quasar_state, m_bullet_ram) AM_RANGE(0x1500, 0x15ff) AM_MIRROR(0x6000) AM_READWRITE(cvs_s2636_0_or_character_ram_r, cvs_s2636_0_or_character_ram_w) @@ -127,7 +127,7 @@ static ADDRESS_MAP_START( quasar, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0x73ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( quasar_io, AS_IO, 8 ) +static ADDRESS_MAP_START( quasar_io, AS_IO, 8, quasar_state ) AM_RANGE(0x00, 0x03) AM_READWRITE(quasar_IO_r, video_page_select_w) AM_RANGE(0x08, 0x0b) AM_WRITE(io_page_select_w) AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READWRITE(cvs_collision_clear, quasar_sh_command_w) @@ -142,11 +142,11 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, quasar_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, quasar_state ) AM_RANGE(0x00, 0x7f) AM_RAM AM_RANGE(0x80, 0x80) AM_READ(quasar_sh_command_r) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(audio_t1_r) diff --git a/src/mame/drivers/quizdna.c b/src/mame/drivers/quizdna.c index be7f18f0528..152c14ab639 100644 --- a/src/mame/drivers/quizdna.c +++ b/src/mame/drivers/quizdna.c @@ -30,7 +30,7 @@ static WRITE8_HANDLER( gekiretu_rombank_w ) /****************************************************************************/ -static ADDRESS_MAP_START( quizdna_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( quizdna_map, AS_PROGRAM, 8, quizdna_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x9fff) AM_WRITE(quizdna_fg_ram_w) @@ -41,7 +41,7 @@ static ADDRESS_MAP_START( quizdna_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM_WRITE(paletteram_xBGR_RRRR_GGGG_BBBB_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( gekiretu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gekiretu_map, AS_PROGRAM, 8, quizdna_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x9fff) AM_WRITE(quizdna_fg_ram_w) @@ -52,7 +52,7 @@ static ADDRESS_MAP_START( gekiretu_map, AS_PROGRAM, 8 ) AM_RANGE(0xf200, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( quizdna_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( quizdna_io_map, AS_IO, 8, quizdna_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x03) AM_WRITE(quizdna_bg_xscroll_w) AM_RANGE(0x04, 0x04) AM_WRITE(quizdna_bg_yscroll_w) @@ -67,7 +67,7 @@ static ADDRESS_MAP_START( quizdna_io_map, AS_IO, 8 ) AM_RANGE(0xf0, 0xf0) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) ADDRESS_MAP_END -static ADDRESS_MAP_START( gakupara_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gakupara_io_map, AS_IO, 8, quizdna_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(quizdna_bg_xscroll_w) AM_RANGE(0x02, 0x02) AM_WRITE(quizdna_bg_yscroll_w) @@ -82,7 +82,7 @@ static ADDRESS_MAP_START( gakupara_io_map, AS_IO, 8 ) AM_RANGE(0xf0, 0xf0) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) ADDRESS_MAP_END -static ADDRESS_MAP_START( gekiretu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gekiretu_io_map, AS_IO, 8, quizdna_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x03) AM_WRITE(quizdna_bg_xscroll_w) AM_RANGE(0x04, 0x04) AM_WRITE(quizdna_bg_yscroll_w) diff --git a/src/mame/drivers/quizo.c b/src/mame/drivers/quizo.c index 7d93fee96da..231f4458286 100644 --- a/src/mame/drivers/quizo.c +++ b/src/mame/drivers/quizo.c @@ -131,7 +131,7 @@ static WRITE8_HANDLER(port60_w) memory_set_bankptr(space->machine(), "bank1", &space->machine().region("user1")->base()[rombankLookup[data]*0x4000] ); } -static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8, quizo_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") @@ -139,7 +139,7 @@ static ADDRESS_MAP_START( memmap, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( portmap, AS_IO, 8, quizo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x10, 0x10) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/quizpani.c b/src/mame/drivers/quizpani.c index 4e668b3678b..1ffef11db3f 100644 --- a/src/mame/drivers/quizpani.c +++ b/src/mame/drivers/quizpani.c @@ -51,7 +51,7 @@ Stephh's notes (based on the games M68000 code and some tests) : #include "sound/okim6295.h" #include "includes/quizpani.h" -static ADDRESS_MAP_START( quizpani_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( quizpani_map, AS_PROGRAM, 16, quizpani_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("SYSTEM") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("P1_P2") diff --git a/src/mame/drivers/quizpun2.c b/src/mame/drivers/quizpun2.c index 8c6e6b25249..08491007288 100644 --- a/src/mame/drivers/quizpun2.c +++ b/src/mame/drivers/quizpun2.c @@ -353,7 +353,7 @@ static WRITE8_HANDLER( quizpun2_soundlatch_w ) cputag_set_input_line(space->machine(), "audiocpu", INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( quizpun2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( quizpun2_map, AS_PROGRAM, 8, quizpun2_state ) AM_RANGE( 0x0000, 0x7fff ) AM_ROM AM_RANGE( 0x8000, 0x9fff ) AM_ROMBANK("bank1") @@ -365,7 +365,7 @@ static ADDRESS_MAP_START( quizpun2_map, AS_PROGRAM, 8 ) AM_RANGE( 0xe000, 0xffff ) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( quizpun2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( quizpun2_io_map, AS_IO, 8, quizpun2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x40, 0x40 ) AM_WRITE( quizpun2_irq_ack ) AM_RANGE( 0x50, 0x50 ) AM_WRITE( quizpun2_soundlatch_w ) @@ -381,12 +381,12 @@ ADDRESS_MAP_END Memory Maps - Sound CPU ***************************************************************************/ -static ADDRESS_MAP_START( quizpun2_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( quizpun2_sound_map, AS_PROGRAM, 8, quizpun2_state ) AM_RANGE( 0x0000, 0xf7ff ) AM_ROM AM_RANGE( 0xf800, 0xffff ) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( quizpun2_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( quizpun2_sound_io_map, AS_IO, 8, quizpun2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_WRITENOP // IRQ end AM_RANGE( 0x20, 0x20 ) AM_WRITENOP // NMI end diff --git a/src/mame/drivers/quizshow.c b/src/mame/drivers/quizshow.c index 06c75103db6..702e17d5a4b 100644 --- a/src/mame/drivers/quizshow.c +++ b/src/mame/drivers/quizshow.c @@ -196,7 +196,7 @@ static WRITE8_HANDLER(quizshow_main_ram_w) } -static ADDRESS_MAP_START( quizshow_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( quizshow_mem_map, AS_PROGRAM, 8, quizshow_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x1802, 0x1802) AM_WRITE(quizshow_audio_w) @@ -213,7 +213,7 @@ static ADDRESS_MAP_START( quizshow_mem_map, AS_PROGRAM, 8 ) AM_RANGE(0x1e00, 0x1fff) AM_RAM_WRITE(quizshow_main_ram_w) AM_BASE_MEMBER(quizshow_state, m_main_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( quizshow_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( quizshow_io_map, AS_IO, 8, quizshow_state ) ADDRESS_MAP_UNMAP_HIGH // AM_RANGE(S2650_CTRL_PORT, S2650_CTRL_PORT) AM_NOP // unused // AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_NOP // unused diff --git a/src/mame/drivers/r2dtank.c b/src/mame/drivers/r2dtank.c index bb8dfbe137e..15bfb89bbfe 100644 --- a/src/mame/drivers/r2dtank.c +++ b/src/mame/drivers/r2dtank.c @@ -410,7 +410,7 @@ static WRITE8_DEVICE_HANDLER( pia_comp_w ) } -static ADDRESS_MAP_START( r2dtank_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( r2dtank_main_map, AS_PROGRAM, 8, r2dtank_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(r2dtank_state, m_videoram) AM_RANGE(0x2000, 0x3fff) AM_RAM AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_MEMBER(r2dtank_state, m_colorram) @@ -424,7 +424,7 @@ static ADDRESS_MAP_START( r2dtank_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( r2dtank_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( r2dtank_audio_map, AS_PROGRAM, 8, r2dtank_state ) AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0xd000, 0xd003) AM_DEVREADWRITE_MODERN("pia_audio", pia6821_device, read, write) AM_RANGE(0xf000, 0xf000) AM_READWRITE(audio_command_r, audio_answer_w) diff --git a/src/mame/drivers/r2dx_v33.c b/src/mame/drivers/r2dx_v33.c index bf160219200..77a1eaba58c 100644 --- a/src/mame/drivers/r2dx_v33.c +++ b/src/mame/drivers/r2dx_v33.c @@ -348,7 +348,7 @@ static WRITE16_HANDLER( mcu_table2_w ) } -static ADDRESS_MAP_START( rdx_v33_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rdx_v33_map, AS_PROGRAM, 16, r2dx_v33_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM // vectors copied here AM_RANGE(0x00400, 0x00407) AM_WRITE(mcu_table_w) @@ -425,7 +425,7 @@ static WRITE16_HANDLER( nzerotea_sound_comms_w ) } } -static ADDRESS_MAP_START( nzerotea_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nzerotea_map, AS_PROGRAM, 16, r2dx_v33_state ) AM_RANGE(0x00000, 0x003ff) AM_RAM //stack area /* results from cop? */ diff --git a/src/mame/drivers/rabbit.c b/src/mame/drivers/rabbit.c index 472539af89e..22e5d26fcfa 100644 --- a/src/mame/drivers/rabbit.c +++ b/src/mame/drivers/rabbit.c @@ -732,7 +732,7 @@ static WRITE32_DEVICE_HANDLER( rabbit_eeprom_write ) } } -static ADDRESS_MAP_START( rabbit_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( rabbit_map, AS_PROGRAM, 32, rabbit_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x000000, 0x000003) AM_WRITENOP // bug in code / emulation? AM_RANGE(0x000010, 0x000013) AM_WRITENOP // bug in code / emulation? diff --git a/src/mame/drivers/raiden.c b/src/mame/drivers/raiden.c index e02ad9346af..c63a2e9c15a 100644 --- a/src/mame/drivers/raiden.c +++ b/src/mame/drivers/raiden.c @@ -46,7 +46,7 @@ /******************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, raiden_state ) AM_RANGE(0x00000, 0x06fff) AM_RAM AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("share1") AM_BASE_MEMBER(raiden_state, m_shared_ram) @@ -59,7 +59,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xa0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, raiden_state ) AM_RANGE(0x00000, 0x01fff) AM_RAM AM_RANGE(0x02000, 0x027ff) AM_RAM_WRITE(raiden_background_w) AM_BASE_MEMBER(raiden_state, m_back_data) AM_RANGE(0x02800, 0x02fff) AM_RAM_WRITE(raiden_foreground_w) AM_BASE_MEMBER(raiden_state, m_fore_data) @@ -71,7 +71,7 @@ ADDRESS_MAP_END /************************* Alternate board set ************************/ -static ADDRESS_MAP_START( alt_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( alt_main_map, AS_PROGRAM, 16, raiden_state ) AM_RANGE(0x00000, 0x06fff) AM_RAM AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("share1") AM_BASE_MEMBER(raiden_state, m_shared_ram) @@ -86,7 +86,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( raidenu_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( raidenu_main_map, AS_PROGRAM, 16, raiden_state ) AM_RANGE(0x00000, 0x06fff) AM_RAM AM_RANGE(0x07000, 0x07fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x08000, 0x08035) AM_WRITEONLY AM_BASE_MEMBER(raiden_state, m_scroll_ram) @@ -100,7 +100,7 @@ static ADDRESS_MAP_START( raidenu_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( raidenu_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( raidenu_sub_map, AS_PROGRAM, 16, raiden_state ) AM_RANGE(0x00000, 0x05fff) AM_RAM AM_RANGE(0x06000, 0x067ff) AM_RAM_WRITE(raiden_background_w) AM_BASE_MEMBER(raiden_state, m_back_data) AM_RANGE(0x06800, 0x06fff) AM_RAM_WRITE(raiden_foreground_w) AM_BASE_MEMBER(raiden_state, m_fore_data) diff --git a/src/mame/drivers/rainbow.c b/src/mame/drivers/rainbow.c index 12f3cdb50bf..c8f43ef8c96 100644 --- a/src/mame/drivers/rainbow.c +++ b/src/mame/drivers/rainbow.c @@ -345,7 +345,7 @@ static WRITE16_HANDLER( jumping_sound_w ) MEMORY STRUCTURES ***************************************************************************/ -static ADDRESS_MAP_START( rbisland_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rbisland_map, AS_PROGRAM, 16, rbisland_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x10c000, 0x10ffff) AM_RAM /* main RAM */ AM_RANGE(0x200000, 0x200fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -366,7 +366,7 @@ static ADDRESS_MAP_START( rbisland_map, AS_PROGRAM, 16 ) AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("pc090oj", pc090oj_word_r, pc090oj_word_w) /* sprite ram + other stuff */ ADDRESS_MAP_END -static ADDRESS_MAP_START( jumping_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jumping_map, AS_PROGRAM, 16, rbisland_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM AM_RANGE(0x10c000, 0x10ffff) AM_RAM /* main RAM */ AM_RANGE(0x200000, 0x200fff) AM_RAM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -408,7 +408,7 @@ static READ8_HANDLER( jumping_latch_r ) } -static ADDRESS_MAP_START( rbisland_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rbisland_sound_map, AS_PROGRAM, 8, rbisland_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM @@ -418,7 +418,7 @@ static ADDRESS_MAP_START( rbisland_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xa001, 0xa001) AM_DEVREADWRITE("tc0140syt", tc0140syt_slave_comm_r, tc0140syt_slave_comm_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( jumping_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jumping_sound_map, AS_PROGRAM, 8, rbisland_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0xb000, 0xb001) AM_DEVREADWRITE("ym1", ym2203_r,ym2203_w) diff --git a/src/mame/drivers/rallyx.c b/src/mame/drivers/rallyx.c index feaac3cda8c..a720032cbc4 100644 --- a/src/mame/drivers/rallyx.c +++ b/src/mame/drivers/rallyx.c @@ -317,7 +317,7 @@ static WRITE8_HANDLER( locomotn_latch_w ) * *************************************/ -static ADDRESS_MAP_START( rallyx_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rallyx_map, AS_PROGRAM, 8, rallyx_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(rallyx_videoram_w) AM_BASE_MEMBER(rallyx_state, m_videoram) AM_RANGE(0x9800, 0x9fff) AM_RAM @@ -333,13 +333,13 @@ static ADDRESS_MAP_START( rallyx_map, AS_PROGRAM, 8 ) AM_RANGE(0xa180, 0xa187) AM_WRITE(rallyx_latch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, rallyx_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0, 0) AM_WRITE(rallyx_interrupt_vector_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( jungler_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jungler_map, AS_PROGRAM, 8, rallyx_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(rallyx_videoram_w) AM_BASE_MEMBER(rallyx_state, m_videoram) AM_RANGE(0x9800, 0x9fff) AM_RAM diff --git a/src/mame/drivers/rampart.c b/src/mame/drivers/rampart.c index 1d80338473d..2e5207c5c7d 100644 --- a/src/mame/drivers/rampart.c +++ b/src/mame/drivers/rampart.c @@ -133,7 +133,7 @@ static WRITE16_HANDLER( latch_w ) *************************************/ /* full memory map deduced from schematics and GALs */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, rampart_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fffff) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x140000, 0x147fff) AM_MIRROR(0x438000) AM_ROM /* slapstic goes here */ diff --git a/src/mame/drivers/rastan.c b/src/mame/drivers/rastan.c index 1087c905aca..6fa20632416 100644 --- a/src/mame/drivers/rastan.c +++ b/src/mame/drivers/rastan.c @@ -208,7 +208,7 @@ static WRITE8_DEVICE_HANDLER( rastan_msm5205_stop_w ) -static ADDRESS_MAP_START( rastan_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rastan_map, AS_PROGRAM, 16, rastan_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x10c000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x200fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -231,7 +231,7 @@ static ADDRESS_MAP_START( rastan_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rastan_s_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rastan_s_map, AS_PROGRAM, 8, rastan_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM diff --git a/src/mame/drivers/rbmk.c b/src/mame/drivers/rbmk.c index 4d8bc0ad749..3b6a623b513 100644 --- a/src/mame/drivers/rbmk.c +++ b/src/mame/drivers/rbmk.c @@ -106,7 +106,7 @@ static WRITE16_DEVICE_HANDLER( eeprom_w ) } -static ADDRESS_MAP_START( rbmk_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rbmk_mem, AS_PROGRAM, 16, rbmk_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x500000, 0x50ffff) AM_RAM @@ -124,7 +124,7 @@ static ADDRESS_MAP_START( rbmk_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rbmk_mcu_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rbmk_mcu_mem, AS_PROGRAM, 8, rbmk_state ) // AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END @@ -166,7 +166,7 @@ static WRITE8_HANDLER( mcu_io_mux_w ) state->m_mux_data = ~data; } -static ADDRESS_MAP_START( rbmk_mcu_io, AS_IO, 8 ) +static ADDRESS_MAP_START( rbmk_mcu_io, AS_IO, 8, rbmk_state ) AM_RANGE(0x0ff00, 0x0ffff) AM_READWRITE( rbmk_mcu_io_r, rbmk_mcu_io_w ) AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_WRITE( mcu_io_mux_w ) diff --git a/src/mame/drivers/re900.c b/src/mame/drivers/re900.c index 89e1653cf78..363ec7078f5 100644 --- a/src/mame/drivers/re900.c +++ b/src/mame/drivers/re900.c @@ -221,11 +221,11 @@ static WRITE8_HANDLER(re900_watchdog_reset_w) * Memory Map Information * *******************************/ -static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mem_prg, AS_PROGRAM, 8, re900_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_BASE_MEMBER(re900_state, m_rom) ADDRESS_MAP_END -static ADDRESS_MAP_START( mem_io, AS_IO, 8 ) +static ADDRESS_MAP_START( mem_io, AS_IO, 8, re900_state ) AM_RANGE(0x0000, 0xbfff) AM_READ (rom_r) AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xe000, 0xe000) AM_DEVWRITE_MODERN("tms9128", tms9928a_device, vram_write) diff --git a/src/mame/drivers/realbrk.c b/src/mame/drivers/realbrk.c index 9d8279d7477..f8349f892c3 100644 --- a/src/mame/drivers/realbrk.c +++ b/src/mame/drivers/realbrk.c @@ -157,7 +157,7 @@ static WRITE16_HANDLER( backup_ram_w ) ***************************************************************************/ /*Basic memory map for this HW*/ -static ADDRESS_MAP_START( base_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( base_mem, AS_PROGRAM, 16, realbrk_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x203fff) AM_RAM AM_BASE_MEMBER(realbrk_state, m_spriteram) // Sprites AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram ) // Palette @@ -172,7 +172,7 @@ static ADDRESS_MAP_START( base_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END /*realbrk specific memory map*/ -static ADDRESS_MAP_START( realbrk_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( realbrk_mem, AS_PROGRAM, 16, realbrk_state ) AM_IMPORT_FROM(base_mem) AM_RANGE(0x800008, 0x80000b) AM_DEVWRITE8("ymsnd", ym2413_w, 0x00ff) // AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0") // P1 & P2 (Inputs) @@ -183,7 +183,7 @@ static ADDRESS_MAP_START( realbrk_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END /*pkgnsh specific memory map*/ -static ADDRESS_MAP_START( pkgnsh_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pkgnsh_mem, AS_PROGRAM, 16, realbrk_state ) AM_RANGE(0x800008, 0x80000b) AM_DEVWRITE8("ymsnd", ym2413_w, 0xff00 ) // YM2413 AM_RANGE(0xc00000, 0xc00013) AM_READ(pkgnsh_input_r ) // P1 & P2 (Inputs) AM_RANGE(0xff0000, 0xfffbff) AM_READWRITE(backup_ram_r,backup_ram_w) AM_BASE_MEMBER(realbrk_state, m_backup_ram) // RAM @@ -191,7 +191,7 @@ static ADDRESS_MAP_START( pkgnsh_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END /*pkgnshdx specific memory map*/ -static ADDRESS_MAP_START( pkgnshdx_mem, AS_PROGRAM, 16) +static ADDRESS_MAP_START( pkgnshdx_mem, AS_PROGRAM, 16, realbrk_state ) AM_RANGE(0x800008, 0x80000b) AM_DEVWRITE8("ymsnd", ym2413_w, 0x00ff) // AM_RANGE(0xc00000, 0xc00013) AM_READ(pkgnshdx_input_r ) // P1 & P2 (Inputs) AM_RANGE(0xc00004, 0xc00005) AM_WRITEONLY AM_BASE_MEMBER(realbrk_state, m_dsw_select) // DSW select @@ -200,7 +200,7 @@ static ADDRESS_MAP_START( pkgnshdx_mem, AS_PROGRAM, 16) ADDRESS_MAP_END /*dai2kaku specific memory map*/ -static ADDRESS_MAP_START( dai2kaku_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dai2kaku_mem, AS_PROGRAM, 16, realbrk_state ) AM_RANGE(0x605000, 0x6053ff) AM_RAM AM_BASE_MEMBER(realbrk_state, m_vram_0ras) // rasterinfo (0) AM_RANGE(0x605400, 0x6057ff) AM_RAM AM_BASE_MEMBER(realbrk_state, m_vram_1ras) // rasterinfo (1) AM_RANGE(0x800008, 0x80000b) AM_DEVWRITE8("ymsnd", ym2413_w, 0x00ff) // diff --git a/src/mame/drivers/redalert.c b/src/mame/drivers/redalert.c index ef4e383004c..a2b8c831115 100644 --- a/src/mame/drivers/redalert.c +++ b/src/mame/drivers/redalert.c @@ -150,7 +150,7 @@ static READ8_HANDLER( panther_unk_r ) * *************************************/ -static ADDRESS_MAP_START( redalert_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( redalert_main_map, AS_PROGRAM, 8, redalert_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_BASE_MEMBER(redalert_state, m_bitmap_videoram) AM_RANGE(0x4000, 0x4fff) AM_RAM AM_BASE_MEMBER(redalert_state, m_charmap_videoram) @@ -166,7 +166,7 @@ static ADDRESS_MAP_START( redalert_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000) ADDRESS_MAP_END -static ADDRESS_MAP_START( ww3_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ww3_main_map, AS_PROGRAM, 8, redalert_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_BASE_MEMBER(redalert_state, m_bitmap_videoram) AM_RANGE(0x4000, 0x4fff) AM_RAM AM_BASE_MEMBER(redalert_state, m_charmap_videoram) @@ -181,7 +181,7 @@ static ADDRESS_MAP_START( ww3_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000) ADDRESS_MAP_END -static ADDRESS_MAP_START( panther_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( panther_main_map, AS_PROGRAM, 8, redalert_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_BASE_MEMBER(redalert_state, m_bitmap_videoram) AM_RANGE(0x4000, 0x4fff) AM_RAM AM_BASE_MEMBER(redalert_state, m_charmap_videoram) @@ -196,7 +196,7 @@ static ADDRESS_MAP_START( panther_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM AM_REGION("maincpu", 0x8000) ADDRESS_MAP_END -static ADDRESS_MAP_START( demoneye_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( demoneye_main_map, AS_PROGRAM, 8, redalert_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(redalert_bitmap_videoram_w) AM_BASE_MEMBER(redalert_state, m_bitmap_videoram) AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_MEMBER(redalert_state, m_charmap_videoram) diff --git a/src/mame/drivers/redclash.c b/src/mame/drivers/redclash.c index 5d75c95b751..7ed4396ad0e 100644 --- a/src/mame/drivers/redclash.c +++ b/src/mame/drivers/redclash.c @@ -31,7 +31,7 @@ static WRITE8_HANDLER( irqack_w ) device_set_input_line(state->m_maincpu, 0, CLEAR_LINE); } -static ADDRESS_MAP_START( zerohour_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( zerohour_map, AS_PROGRAM, 8, ladybug_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x3000, 0x37ff) AM_RAM AM_RANGE(0x3800, 0x3bff) AM_RAM AM_BASE_SIZE_MEMBER(ladybug_state, m_spriteram, m_spriteram_size) @@ -50,7 +50,7 @@ static ADDRESS_MAP_START( zerohour_map, AS_PROGRAM, 8 ) AM_RANGE(0x7800, 0x7800) AM_WRITE(irqack_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( redclash_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( redclash_map, AS_PROGRAM, 8, ladybug_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM // AM_RANGE(0x3000, 0x3000) AM_WRITENOP // AM_RANGE(0x3800, 0x3800) AM_WRITENOP diff --git a/src/mame/drivers/relief.c b/src/mame/drivers/relief.c index d8a7324f2a8..c31e90e0f06 100644 --- a/src/mame/drivers/relief.c +++ b/src/mame/drivers/relief.c @@ -146,7 +146,7 @@ static WRITE16_HANDLER( audio_volume_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, relief_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x3fffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM diff --git a/src/mame/drivers/renegade.c b/src/mame/drivers/renegade.c index ebd9d76ad4b..1a0747a59b6 100644 --- a/src/mame/drivers/renegade.c +++ b/src/mame/drivers/renegade.c @@ -656,7 +656,7 @@ static WRITE8_HANDLER( renegade_coin_counter_w ) /********************************************************************************************/ -static ADDRESS_MAP_START( renegade_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( renegade_map, AS_PROGRAM, 8, renegade_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1fff) AM_RAM_WRITE(renegade_videoram2_w) AM_BASE_MEMBER(renegade_state, m_videoram2) AM_RANGE(0x2000, 0x27ff) AM_RAM AM_BASE_MEMBER(renegade_state, m_spriteram) @@ -675,7 +675,7 @@ static ADDRESS_MAP_START( renegade_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( renegade_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( renegade_sound_map, AS_PROGRAM, 8, renegade_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READ(soundlatch_r) AM_RANGE(0x1800, 0x1800) AM_WRITENOP // this gets written the same values as 0x2000 @@ -685,7 +685,7 @@ static ADDRESS_MAP_START( renegade_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( renegade_mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( renegade_mcu_map, AS_PROGRAM, 8, renegade_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(renegade_68705_port_a_r, renegade_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(renegade_68705_port_b_r, renegade_68705_port_b_w) diff --git a/src/mame/drivers/retofinv.c b/src/mame/drivers/retofinv.c index ec38432e666..89eda2f39bc 100644 --- a/src/mame/drivers/retofinv.c +++ b/src/mame/drivers/retofinv.c @@ -98,7 +98,7 @@ static WRITE8_HANDLER( coinlockout_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, retofinv_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x7fff, 0x7fff) AM_WRITE(coincounter_w) AM_RANGE(0x7b00, 0x7bff) AM_ROM /* space for diagnostic ROM? The code looks */ @@ -128,7 +128,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf800) AM_READ(cpu0_mf800_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, retofinv_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE("share2") AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE("share1") @@ -136,7 +136,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) AM_RANGE(0xc804, 0xc804) AM_WRITE(irq1_ack_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, retofinv_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_READ(soundlatch_r) @@ -146,7 +146,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM /* space for diagnostic ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, retofinv_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(retofinv_68705_portA_r, retofinv_68705_portA_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(retofinv_68705_portB_r, retofinv_68705_portB_w) diff --git a/src/mame/drivers/rgum.c b/src/mame/drivers/rgum.c index fd650c222ba..948f4e1f4da 100644 --- a/src/mame/drivers/rgum.c +++ b/src/mame/drivers/rgum.c @@ -58,7 +58,7 @@ static SCREEN_UPDATE_IND16(royalgum) return 0; } -static ADDRESS_MAP_START( rgum_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rgum_map, AS_PROGRAM, 8, rgum_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM //not all of it? AM_RANGE(0x0800, 0x0800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) diff --git a/src/mame/drivers/rltennis.c b/src/mame/drivers/rltennis.c index 05e481461ac..1bb6c834cc4 100644 --- a/src/mame/drivers/rltennis.c +++ b/src/mame/drivers/rltennis.c @@ -88,7 +88,7 @@ static WRITE16_HANDLER(rlt_snd2_w) COMBINE_DATA(&state->m_data740000); } -static ADDRESS_MAP_START( rltennis_main, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rltennis_main, AS_PROGRAM, 16, rltennis_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x200000, 0x20ffff) AM_RAM @@ -177,7 +177,7 @@ static MACHINE_RESET( rltennis ) state->m_timer->adjust(attotime::from_hz(RLT_TIMER_FREQ)); } -static ADDRESS_MAP_START( ramdac_map, AS_0, 8 ) +static ADDRESS_MAP_START( ramdac_map, AS_0, 8, rltennis_state ) AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE_MODERN("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb888_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/rmhaihai.c b/src/mame/drivers/rmhaihai.c index 9f56f1816ff..b99bf280d65 100644 --- a/src/mame/drivers/rmhaihai.c +++ b/src/mame/drivers/rmhaihai.c @@ -191,7 +191,7 @@ static MACHINE_RESET( themj ) -static ADDRESS_MAP_START( rmhaihai_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rmhaihai_map, AS_PROGRAM, 8, rmhaihai_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_RANGE(0xa800, 0xafff) AM_RAM_WRITE(rmhaihai_colorram_w) AM_BASE_MEMBER(rmhaihai_state, m_colorram) @@ -202,7 +202,7 @@ static ADDRESS_MAP_START( rmhaihai_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM /* rmhaisei only */ ADDRESS_MAP_END -static ADDRESS_MAP_START( rmhaihai_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( rmhaihai_io_map, AS_IO, 8, rmhaihai_state ) AM_RANGE(0x0000, 0x7fff) AM_READ(samples_r) AM_RANGE(0x8000, 0x8000) AM_READ(keyboard_r) AM_WRITENOP // ?? AM_RANGE(0x8001, 0x8001) AM_READNOP AM_WRITE(keyboard_w) // ?? @@ -215,7 +215,7 @@ static ADDRESS_MAP_START( rmhaihai_io_map, AS_IO, 8 ) AM_RANGE(0xbc0c, 0xbc0c) AM_WRITENOP // ?? ADDRESS_MAP_END -static ADDRESS_MAP_START( themj_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( themj_map, AS_PROGRAM, 8, rmhaihai_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xa7ff) AM_RAM @@ -225,7 +225,7 @@ static ADDRESS_MAP_START( themj_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( themj_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( themj_io_map, AS_IO, 8, rmhaihai_state ) AM_RANGE(0x0000, 0x7fff) AM_READ(samples_r) AM_RANGE(0x8000, 0x8000) AM_READ(keyboard_r) AM_WRITENOP // ?? AM_RANGE(0x8001, 0x8001) AM_READNOP AM_WRITE(keyboard_w) // ?? diff --git a/src/mame/drivers/rockrage.c b/src/mame/drivers/rockrage.c index 4f5af606adc..60fa86a9d58 100644 --- a/src/mame/drivers/rockrage.c +++ b/src/mame/drivers/rockrage.c @@ -95,7 +95,7 @@ static WRITE8_DEVICE_HANDLER( rockrage_speech_w ) vlm5030_st(device, (data >> 0) & 0x01); } -static ADDRESS_MAP_START( rockrage_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rockrage_map, AS_PROGRAM, 8, rockrage_state ) AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("k007342", k007342_r, k007342_w) /* Color RAM + Video RAM */ AM_RANGE(0x2000, 0x21ff) AM_DEVREADWRITE("k007420", k007420_r, k007420_w) /* Sprite RAM */ AM_RANGE(0x2200, 0x23ff) AM_DEVREADWRITE("k007342", k007342_scroll_r, k007342_scroll_w) /* Scroll RAM */ @@ -115,7 +115,7 @@ static ADDRESS_MAP_START( rockrage_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( rockrage_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rockrage_sound_map, AS_PROGRAM, 8, rockrage_state ) AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("vlm", vlm5030_data_w) /* VLM5030 */ AM_RANGE(0x3000, 0x3000) AM_DEVREAD("vlm", rockrage_VLM5030_busy_r) /* VLM5030 */ AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("vlm", rockrage_speech_w) /* VLM5030 */ diff --git a/src/mame/drivers/rocnrope.c b/src/mame/drivers/rocnrope.c index cb09ea3ad2c..d8c828236ee 100644 --- a/src/mame/drivers/rocnrope.c +++ b/src/mame/drivers/rocnrope.c @@ -43,7 +43,7 @@ static WRITE8_HANDLER( irq_mask_w ) * *************************************/ -static ADDRESS_MAP_START( rocnrope_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rocnrope_map, AS_PROGRAM, 8, rocnrope_state ) AM_RANGE(0x3080, 0x3080) AM_READ_PORT("SYSTEM") AM_RANGE(0x3081, 0x3081) AM_READ_PORT("P1") AM_RANGE(0x3082, 0x3082) AM_READ_PORT("P2") diff --git a/src/mame/drivers/rohga.c b/src/mame/drivers/rohga.c index 86999bdcdf4..2c303470d9e 100644 --- a/src/mame/drivers/rohga.c +++ b/src/mame/drivers/rohga.c @@ -134,7 +134,7 @@ static WRITE16_HANDLER( wizdfire_irq_ack_w ) /**********************************************************************************/ -static ADDRESS_MAP_START( rohga_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rohga_map, AS_PROGRAM, 16, rohga_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_DEVWRITE("tilegen1", deco16ic_pf_control_w) @@ -166,7 +166,7 @@ static ADDRESS_MAP_START( rohga_map, AS_PROGRAM, 16 ) AM_RANGE(0x3f0000, 0x3f3fff) AM_RAM /* Main ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( wizdfire_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wizdfire_map, AS_PROGRAM, 16, rohga_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x200fff) AM_DEVREADWRITE("tilegen1", deco16ic_pf1_data_r, deco16ic_pf1_data_w) @@ -197,7 +197,7 @@ static ADDRESS_MAP_START( wizdfire_map, AS_PROGRAM, 16 ) AM_RANGE(0xfdc000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( nitrobal_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nitrobal_map, AS_PROGRAM, 16, rohga_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x200fff) AM_MIRROR(0x1000) AM_DEVREADWRITE("tilegen1", deco16ic_pf1_data_r, deco16ic_pf1_data_w) @@ -230,7 +230,7 @@ static ADDRESS_MAP_START( nitrobal_map, AS_PROGRAM, 16 ) AM_RANGE(0xff8000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( schmeisr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( schmeisr_map, AS_PROGRAM, 16, rohga_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_DEVWRITE("tilegen1", deco16ic_pf_control_w) AM_RANGE(0x240000, 0x24000f) AM_DEVWRITE("tilegen2", deco16ic_pf_control_w) @@ -262,7 +262,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( rohga_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rohga_sound_map, AS_PROGRAM, 8, rohga_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_NOP AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) diff --git a/src/mame/drivers/rollerg.c b/src/mame/drivers/rollerg.c index 632dcc2b1a6..b117fa8962a 100644 --- a/src/mame/drivers/rollerg.c +++ b/src/mame/drivers/rollerg.c @@ -81,7 +81,7 @@ static READ8_HANDLER( pip_r ) return 0x7f; } -static ADDRESS_MAP_START( rollerg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rollerg_map, AS_PROGRAM, 8, rollerg_state ) AM_RANGE(0x0010, 0x0010) AM_WRITE(rollerg_0010_w) AM_RANGE(0x0020, 0x0020) AM_READWRITE(watchdog_reset_r,watchdog_reset_w) AM_RANGE(0x0030, 0x0031) AM_DEVREADWRITE("k053260", rollerg_sound_r, k053260_w) /* K053260 */ @@ -103,7 +103,7 @@ static ADDRESS_MAP_START( rollerg_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( rollerg_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rollerg_sound_map, AS_PROGRAM, 8, rollerg_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa02f) AM_DEVREADWRITE("k053260", k053260_r,k053260_w) diff --git a/src/mame/drivers/rollrace.c b/src/mame/drivers/rollrace.c index 7bb7710a3dd..3b805369a75 100644 --- a/src/mame/drivers/rollrace.c +++ b/src/mame/drivers/rollrace.c @@ -37,7 +37,7 @@ static WRITE8_HANDLER( sound_nmi_mask_w ) } -static ADDRESS_MAP_START( rollrace_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rollrace_map, AS_PROGRAM, 8, rollrace_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROM /* only rollace2 */ AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -63,7 +63,7 @@ static ADDRESS_MAP_START( rollrace_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rollrace_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rollrace_sound_map, AS_PROGRAM, 8, rollrace_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x2fff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READWRITE(soundlatch_r,sound_nmi_mask_w) diff --git a/src/mame/drivers/rotaryf.c b/src/mame/drivers/rotaryf.c index 354d8168f82..dec8396ef28 100644 --- a/src/mame/drivers/rotaryf.c +++ b/src/mame/drivers/rotaryf.c @@ -90,7 +90,7 @@ static SCREEN_UPDATE_RGB32( rotaryf ) } -static ADDRESS_MAP_START( rotaryf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rotaryf_map, AS_PROGRAM, 8, rotaryf_state ) AM_RANGE(0x0000, 0x17ff) AM_MIRROR(0x4000) AM_ROM // AM_RANGE(0x6ffb, 0x6ffb) AM_READ(random_r) ?? // AM_RANGE(0x6ffd, 0x6ffd) AM_READ(random_r) ?? @@ -100,7 +100,7 @@ static ADDRESS_MAP_START( rotaryf_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xa1ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( rotaryf_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( rotaryf_io_map, AS_IO, 8, rotaryf_state ) // AM_RANGE(0x00, 0x00) AM_READ_PORT("UNK") AM_RANGE(0x21, 0x21) AM_READ_PORT("COIN") AM_RANGE(0x26, 0x26) AM_READ_PORT("DSW") diff --git a/src/mame/drivers/roul.c b/src/mame/drivers/roul.c index 518fbf8eb4f..af77ed9ca8f 100644 --- a/src/mame/drivers/roul.c +++ b/src/mame/drivers/roul.c @@ -177,12 +177,12 @@ static WRITE8_HANDLER( ball_w ) state->m_lamp_old = lamp; } -static ADDRESS_MAP_START( roul_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( roul_map, AS_PROGRAM, 8, roul_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( roul_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( roul_cpu_io_map, AS_IO, 8, roul_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xf0, 0xf4) AM_WRITE(blitter_cmd_w) AM_RANGE(0xf5, 0xf5) AM_READ(blitter_status_r) @@ -193,12 +193,12 @@ static ADDRESS_MAP_START( roul_cpu_io_map, AS_IO, 8 ) AM_RANGE(0xfe, 0xfe) AM_WRITE(sound_latch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, roul_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x13ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_cpu_io_map, AS_IO, 8, roul_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) diff --git a/src/mame/drivers/route16.c b/src/mame/drivers/route16.c index 82323276f7b..21c9f13845a 100644 --- a/src/mame/drivers/route16.c +++ b/src/mame/drivers/route16.c @@ -219,7 +219,7 @@ static WRITE8_HANDLER ( speakres_out2_w ) * *************************************/ -static ADDRESS_MAP_START( route16_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( route16_cpu1_map, AS_PROGRAM, 8, route16_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM /*AM_RANGE(0x3000, 0x3001) AM_NOP protection device */ AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, route16_sharedram_w) AM_BASE_MEMBER(route16_state, m_sharedram) @@ -230,7 +230,7 @@ static ADDRESS_MAP_START( route16_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( routex_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( routex_cpu1_map, AS_PROGRAM, 8, route16_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, route16_sharedram_w) AM_BASE_MEMBER(route16_state, m_sharedram) AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(route16_out0_w) @@ -241,7 +241,7 @@ static ADDRESS_MAP_START( routex_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( stratvox_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( stratvox_cpu1_map, AS_PROGRAM, 8, route16_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_MEMBER(route16_state, m_sharedram) AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(route16_out0_w) @@ -251,7 +251,7 @@ static ADDRESS_MAP_START( stratvox_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( speakres_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( speakres_cpu1_map, AS_PROGRAM, 8, route16_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_MEMBER(route16_state, m_sharedram) AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(route16_out0_w) @@ -262,7 +262,7 @@ static ADDRESS_MAP_START( speakres_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ttmahjng_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ttmahjng_cpu1_map, AS_PROGRAM, 8, route16_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_MEMBER(route16_state, m_sharedram) AM_RANGE(0x4800, 0x4800) AM_READ_PORT("DSW") AM_WRITE(route16_out0_w) @@ -274,14 +274,14 @@ static ADDRESS_MAP_START( ttmahjng_cpu1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( route16_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( route16_cpu2_map, AS_PROGRAM, 8, route16_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, route16_sharedram_w) AM_RANGE(0x8000, 0xbfff) AM_RAM AM_BASE_MEMBER(route16_state, m_videoram2) ADDRESS_MAP_END -static ADDRESS_MAP_START( stratvox_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( stratvox_cpu2_map, AS_PROGRAM, 8, route16_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2800, 0x2800) AM_DEVWRITE("dac", dac_w) AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, sharedram_w) @@ -289,7 +289,7 @@ static ADDRESS_MAP_START( stratvox_cpu2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu1_io_map, AS_IO, 8, route16_state ) ADDRESS_MAP_GLOBAL_MASK(0x1ff) AM_RANGE(0x0000, 0x0000) AM_MIRROR(0x00ff) AM_DEVWRITE("ay8910", ay8910_data_w) AM_RANGE(0x0100, 0x0100) AM_MIRROR(0x00ff) AM_DEVWRITE("ay8910", ay8910_address_w) diff --git a/src/mame/drivers/royalmah.c b/src/mame/drivers/royalmah.c index 094407032c3..5538e417279 100644 --- a/src/mame/drivers/royalmah.c +++ b/src/mame/drivers/royalmah.c @@ -463,7 +463,7 @@ static WRITE8_HANDLER ( mjclub_bank_w ) } -static ADDRESS_MAP_START( royalmah_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( royalmah_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_WRITE( royalmah_rom_w ) AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xffff ) AM_ROMBANK( "bank1" ) // banked ROMs not present in royalmah @@ -471,7 +471,7 @@ static ADDRESS_MAP_START( royalmah_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjapinky_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjapinky_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_WRITE( royalmah_rom_w ) AM_RANGE( 0x7000, 0x77ff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x7800, 0x7fff ) AM_RAM @@ -483,7 +483,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( royalmah_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( royalmah_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w ) @@ -491,7 +491,7 @@ static ADDRESS_MAP_START( royalmah_iomap, AS_IO, 8 ) AM_RANGE( 0x11, 0x11 ) AM_READ_PORT("SYSTEM") AM_WRITE( input_port_select_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ippatsu_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( ippatsu_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w ) @@ -501,7 +501,7 @@ static ADDRESS_MAP_START( ippatsu_iomap, AS_IO, 8 ) AM_RANGE( 0x13, 0x13 ) AM_READ_PORT("DSW3") ADDRESS_MAP_END -static ADDRESS_MAP_START( suzume_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( suzume_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w ) @@ -511,7 +511,7 @@ static ADDRESS_MAP_START( suzume_iomap, AS_IO, 8 ) AM_RANGE( 0x81, 0x81 ) AM_WRITE( suzume_bank_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dondenmj_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( dondenmj_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w) @@ -522,7 +522,7 @@ static ADDRESS_MAP_START( dondenmj_iomap, AS_IO, 8 ) AM_RANGE( 0x87, 0x87 ) AM_WRITE( dynax_bank_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( makaijan_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( makaijan_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w) @@ -533,7 +533,7 @@ static ADDRESS_MAP_START( makaijan_iomap, AS_IO, 8 ) AM_RANGE( 0x86, 0x86 ) AM_WRITE( dynax_bank_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( daisyari_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( daisyari_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w) @@ -542,7 +542,7 @@ static ADDRESS_MAP_START( daisyari_iomap, AS_IO, 8 ) AM_RANGE( 0xc0, 0xc0 ) AM_READWRITE( daisyari_dsw_r, daisyari_bank_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjclub_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjclub_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_READWRITE( mjclub_dsw_r, mjclub_bank_w ) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) @@ -551,7 +551,7 @@ static ADDRESS_MAP_START( mjclub_iomap, AS_IO, 8 ) AM_RANGE( 0x11, 0x11 ) AM_READ_PORT("SYSTEM") AM_WRITE( input_port_select_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjdiplob_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjdiplob_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w ) @@ -562,7 +562,7 @@ static ADDRESS_MAP_START( mjdiplob_iomap, AS_IO, 8 ) AM_RANGE( 0x63, 0x63 ) AM_READ_PORT("DSW3") // DSW3 ADDRESS_MAP_END -static ADDRESS_MAP_START( tontonb_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( tontonb_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w ) @@ -573,7 +573,7 @@ static ADDRESS_MAP_START( tontonb_iomap, AS_IO, 8 ) AM_RANGE( 0x47, 0x47 ) AM_READ_PORT("DSW3") // DSW3 ADDRESS_MAP_END -static ADDRESS_MAP_START( majs101b_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( majs101b_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w ) @@ -582,7 +582,7 @@ static ADDRESS_MAP_START( majs101b_iomap, AS_IO, 8 ) AM_RANGE( 0x00, 0x00 ) AM_READWRITE( majs101b_dsw_r, dynax_bank_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjderngr_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjderngr_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) AM_RANGE( 0x02, 0x03 ) AM_DEVWRITE( "aysnd", ay8910_data_address_w ) @@ -595,7 +595,7 @@ static ADDRESS_MAP_START( mjderngr_iomap, AS_IO, 8 ) AM_RANGE( 0x60, 0x60 ) AM_WRITE( mjderngr_palbank_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjapinky_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjapinky_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_WRITE( mjapinky_bank_w ) AM_RANGE( 0x01, 0x01 ) AM_DEVREAD( "aysnd", ay8910_r ) @@ -606,7 +606,7 @@ static ADDRESS_MAP_START( mjapinky_iomap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( janoh_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( janoh_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_WRITE( royalmah_rom_w ) AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xffff ) AM_WRITEONLY AM_BASE_MEMBER(royalmah_state, m_videoram) @@ -616,7 +616,7 @@ ADDRESS_MAP_END /* this CPU makes little sense - what is it for? why so many addresses accessed? -- it puts a value in shared ram to allow the main CPU to boot, then.. ? */ -static ADDRESS_MAP_START( janoh_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( janoh_sub_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x3fff ) AM_ROM AM_RANGE( 0x4100, 0x413f ) AM_RAM AM_RANGE( 0x6000, 0x607f ) AM_RAM @@ -625,7 +625,7 @@ static ADDRESS_MAP_START( janoh_sub_map, AS_PROGRAM, 8 ) AM_RANGE( 0xf000, 0xffff ) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( janoh_sub_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( janoh_sub_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_END /**************************************************************************** @@ -721,7 +721,7 @@ static WRITE8_HANDLER( jansou_sound_w ) -static ADDRESS_MAP_START( jansou_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jansou_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x3fff ) AM_ROM AM_RANGE( 0x6000, 0x600f ) AM_WRITE(jansou_colortable_w) @@ -739,12 +739,12 @@ static ADDRESS_MAP_START( jansou_map, AS_PROGRAM, 8 ) AM_RANGE( 0x8000, 0xffff ) AM_WRITEONLY AM_BASE_MEMBER(royalmah_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( jansou_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jansou_sub_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0xffff ) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( jansou_sub_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( jansou_sub_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_DEVWRITE( "dac", dac_w ) ADDRESS_MAP_END @@ -754,7 +754,7 @@ ADDRESS_MAP_END Janputer '96 ****************************************************************************/ -static ADDRESS_MAP_START( janptr96_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( janptr96_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x6fff ) AM_RAMBANK("bank3") AM_SHARE("nvram") // nvram AM_RANGE( 0x7000, 0x7fff ) AM_RAMBANK("bank2") // banked nvram @@ -812,7 +812,7 @@ static WRITE8_HANDLER( janptr96_coin_counter_w ) coin_counter_w(space->machine(), 1,data & 1); // out } -static ADDRESS_MAP_START( janptr96_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( janptr96_iomap, AS_IO, 8, royalmah_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x00 ) AM_WRITE( janptr96_rombank_w ) // BANK ROM Select AM_RANGE( 0x1e, 0x1e ) AM_READWRITE( janptr96_dswsel_r, janptr96_dswsel_w ) @@ -895,7 +895,7 @@ static WRITE8_HANDLER( mjifb_videoram_w ) videoram[offset + 0x4000] = data; } -static ADDRESS_MAP_START( mjifb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjifb_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xbfff ) AM_READWRITE(mjifb_rom_io_r, mjifb_rom_io_w) AM_BASE_MEMBER(royalmah_state, m_videoram) @@ -940,7 +940,7 @@ static WRITE8_HANDLER( mjifb_p8_w ) state->m_mjifb_rom_enable = (data & 0x08); } -static ADDRESS_MAP_START( mjifb_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjifb_iomap, AS_IO, 8, royalmah_state ) AM_RANGE( T90_P3, T90_P3 ) AM_READWRITE( mjifb_p3_r, mjifb_p3_w ) AM_RANGE( T90_P4, T90_P4 ) AM_WRITE( mjifb_p4_w ) AM_RANGE( T90_P5, T90_P5 ) AM_READ ( mjifb_p5_r ) @@ -1000,7 +1000,7 @@ static WRITE8_HANDLER( mjdejavu_rom_io_w ) logerror("%04X: unmapped input write at %04X = %02X\n", cpu_get_pc(&space->device()), offset,data); } -static ADDRESS_MAP_START( mjdejavu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjdejavu_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x6fff ) AM_ROM AM_RANGE( 0x7000, 0x7fff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x8000, 0xbfff ) AM_READWRITE(mjdejavu_rom_io_r, mjdejavu_rom_io_w) AM_BASE_MEMBER(royalmah_state, m_videoram) @@ -1035,7 +1035,7 @@ static WRITE8_HANDLER( mjtensin_6ff3_w ) mjtensin_update_rombank(space->machine()); } -static ADDRESS_MAP_START( mjtensin_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjtensin_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x6fbf ) AM_RAM AM_RANGE( 0x6fc1, 0x6fc1 ) AM_DEVREAD( "aysnd", ay8910_r ) @@ -1051,7 +1051,7 @@ static ADDRESS_MAP_START( mjtensin_map, AS_PROGRAM, 8 ) AM_RANGE( 0x8000, 0xffff ) AM_WRITEONLY AM_BASE_MEMBER(royalmah_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjtensin_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjtensin_iomap, AS_IO, 8, royalmah_state ) AM_RANGE( T90_P3, T90_P3 ) AM_READ ( mjtensin_p3_r ) AM_RANGE( T90_P4, T90_P4 ) AM_WRITE( mjtensin_p4_w ) ADDRESS_MAP_END @@ -1108,7 +1108,7 @@ static WRITE8_HANDLER( cafetime_7fe3_w ) // popmessage("%02x",data); } -static ADDRESS_MAP_START( cafetime_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cafetime_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x0000, 0x5fff ) AM_ROM AM_RANGE( 0x6000, 0x7eff ) AM_RAM AM_SHARE("nvram") AM_RANGE( 0x7fc1, 0x7fc1 ) AM_DEVREAD( "aysnd", ay8910_r ) @@ -1127,7 +1127,7 @@ static ADDRESS_MAP_START( cafetime_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cafetime_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( cafetime_iomap, AS_IO, 8, royalmah_state ) AM_RANGE( T90_P3, T90_P3 ) AM_WRITE( cafetime_p3_w ) AM_RANGE( T90_P4, T90_P4 ) AM_WRITE( cafetime_p4_w ) ADDRESS_MAP_END @@ -1214,7 +1214,7 @@ static READ8_HANDLER( mjvegasa_12500_r ) return 0xff; } -static ADDRESS_MAP_START( mjvegasa_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mjvegasa_map, AS_PROGRAM, 8, royalmah_state ) AM_RANGE( 0x00000, 0x05fff ) AM_ROM AM_RANGE( 0x06000, 0x07fff ) AM_RAM AM_SHARE("nvram") @@ -1235,7 +1235,7 @@ static ADDRESS_MAP_START( mjvegasa_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mjvegasa_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( mjvegasa_iomap, AS_IO, 8, royalmah_state ) AM_RANGE( T90_P3, T90_P3 ) AM_READWRITE( mjtensin_p3_r, mjvegasa_p3_w ) AM_RANGE( T90_P4, T90_P4 ) AM_WRITE( mjvegasa_p4_w ) ADDRESS_MAP_END diff --git a/src/mame/drivers/rpunch.c b/src/mame/drivers/rpunch.c index aab4234ffe7..545155d4349 100644 --- a/src/mame/drivers/rpunch.c +++ b/src/mame/drivers/rpunch.c @@ -223,7 +223,7 @@ static WRITE8_DEVICE_HANDLER( upd_data_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, rpunch_state ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x04ffff) AM_RAM AM_BASE_MEMBER(rpunch_state, m_bitmapram) AM_SIZE_MEMBER(rpunch_state, m_bitmapram_size) @@ -251,7 +251,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, rpunch_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0xf200, 0xf200) AM_READ(sound_command_r) diff --git a/src/mame/drivers/runaway.c b/src/mame/drivers/runaway.c index 73ed20af00e..aa99ab9a035 100644 --- a/src/mame/drivers/runaway.c +++ b/src/mame/drivers/runaway.c @@ -81,7 +81,7 @@ static WRITE8_HANDLER( runaway_irq_ack_w ) } -static ADDRESS_MAP_START( runaway_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( runaway_map, AS_PROGRAM, 8, runaway_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07bf) AM_RAM_WRITE(runaway_video_ram_w) AM_BASE_MEMBER(runaway_state, m_video_ram) AM_RANGE(0x07c0, 0x07ff) AM_RAM AM_BASE_MEMBER(runaway_state, m_sprite_ram) diff --git a/src/mame/drivers/rungun.c b/src/mame/drivers/rungun.c index 8900733081d..cc0a7db3ccf 100644 --- a/src/mame/drivers/rungun.c +++ b/src/mame/drivers/rungun.c @@ -183,7 +183,7 @@ static INTERRUPT_GEN(rng_interrupt) device_set_input_line(device, M68K_IRQ_5, ASSERT_LINE); } -static ADDRESS_MAP_START( rungun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rungun_map, AS_PROGRAM, 16, rungun_state ) AM_RANGE(0x000000, 0x2fffff) AM_ROM // main program + data AM_RANGE(0x300000, 0x3007ff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x380000, 0x39ffff) AM_RAM // work RAM @@ -244,7 +244,7 @@ static INTERRUPT_GEN(audio_interrupt) /* sound (this should be split into audio/xexex.c or pregx.c or so someday) */ -static ADDRESS_MAP_START( rungun_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rungun_sound_map, AS_PROGRAM, 8, rungun_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/safarir.c b/src/mame/drivers/safarir.c index e596be5ce1f..2ae4ea67378 100644 --- a/src/mame/drivers/safarir.c +++ b/src/mame/drivers/safarir.c @@ -336,7 +336,7 @@ static MACHINE_START( safarir ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, safarir_state ) AM_RANGE(0x0000, 0x17ff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_READWRITE(ram_r, ram_w) AM_SIZE_MEMBER(safarir_state,m_ram_size) AM_RANGE(0x2800, 0x2800) AM_MIRROR(0x03ff) AM_READNOP AM_WRITE(ram_bank_w) diff --git a/src/mame/drivers/sandscrp.c b/src/mame/drivers/sandscrp.c index 48b29343b2a..c6dc8e4320a 100644 --- a/src/mame/drivers/sandscrp.c +++ b/src/mame/drivers/sandscrp.c @@ -226,7 +226,7 @@ static WRITE16_HANDLER( sandscrp_soundlatch_word_w ) } } -static ADDRESS_MAP_START( sandscrp, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sandscrp, AS_PROGRAM, 16, sandscrp_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x100001) AM_WRITE(sandscrp_irq_cause_w) // IRQ Ack @@ -290,13 +290,13 @@ static WRITE8_HANDLER( sandscrp_soundlatch_w ) soundlatch2_w(space,0,data); } -static ADDRESS_MAP_START( sandscrp_soundmem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sandscrp_soundmem, AS_PROGRAM, 8, sandscrp_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xc000, 0xdfff) AM_RAM // RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sandscrp_soundport, AS_IO, 8 ) +static ADDRESS_MAP_START( sandscrp_soundport, AS_IO, 8, sandscrp_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(sandscrp_bankswitch_w) // ROM Bank AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) // PORTA/B read diff --git a/src/mame/drivers/sangho.c b/src/mame/drivers/sangho.c index 272fae08630..4a636f4997e 100644 --- a/src/mame/drivers/sangho.c +++ b/src/mame/drivers/sangho.c @@ -224,7 +224,7 @@ static WRITE8_HANDLER(sexyboom_bank_w) sexyboom_map_bank(space->machine(), offset>>1); } -static ADDRESS_MAP_START( sangho_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sangho_map, AS_PROGRAM, 8, sangho_state ) AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank5") AM_RANGE(0x4000, 0x7fff) AM_READ_BANK("bank2") AM_WRITE_BANK("bank6") AM_RANGE(0x8000, 0xbfff) AM_READ_BANK("bank3") AM_WRITE_BANK("bank7") @@ -233,7 +233,7 @@ ADDRESS_MAP_END /* Puzzle Star Ports */ -static ADDRESS_MAP_START( pzlestar_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pzlestar_io_map, AS_IO, 8, sangho_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x7c, 0x7d) AM_DEVWRITE( "ymsnd", ym2413_w ) AM_RANGE( 0x91, 0x91) AM_WRITE( pzlestar_bank_w ) @@ -246,7 +246,7 @@ ADDRESS_MAP_END /* Sexy Boom Ports */ -static ADDRESS_MAP_START( sexyboom_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sexyboom_io_map, AS_IO, 8, sangho_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x7c, 0x7d) AM_DEVWRITE( "ymsnd", ym2413_w ) AM_RANGE( 0xa0, 0xa0) AM_READ_PORT("P1") diff --git a/src/mame/drivers/saturn.c b/src/mame/drivers/saturn.c index 08c781b964e..6779a662926 100644 --- a/src/mame/drivers/saturn.c +++ b/src/mame/drivers/saturn.c @@ -749,7 +749,7 @@ static READ8_HANDLER( saturn_cart_type_r ) return cart_ram_header[state->m_cart_type]; } -static ADDRESS_MAP_START( saturn_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( saturn_mem, AS_PROGRAM, 32, saturn_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_SHARE("share6") // bios AM_RANGE(0x00100000, 0x0010007f) AM_READWRITE8(saturn_SMPC_r, saturn_SMPC_w,0xffffffff) AM_RANGE(0x00180000, 0x0018ffff) AM_READWRITE8(saturn_backupram_r, saturn_backupram_w,0xffffffff) AM_SHARE("share1") @@ -779,7 +779,7 @@ static ADDRESS_MAP_START( saturn_mem, AS_PROGRAM, 32 ) AM_RANGE(0xc0000000, 0xc00007ff) AM_RAM // cache RAM, Dragon Ball Z sprites needs this ADDRESS_MAP_END -static ADDRESS_MAP_START( stv_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( stv_mem, AS_PROGRAM, 32, saturn_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_ROM AM_SHARE("share6") // bios AM_RANGE(0x00100000, 0x0010007f) AM_READWRITE8(stv_SMPC_r, stv_SMPC_w,0xffffffff) AM_RANGE(0x00180000, 0x0018ffff) AM_READWRITE8(saturn_backupram_r,saturn_backupram_w,0xffffffff) AM_SHARE("share1") @@ -806,7 +806,7 @@ static ADDRESS_MAP_START( stv_mem, AS_PROGRAM, 32 ) AM_RANGE(0xc0000000, 0xc00007ff) AM_RAM // cache RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 16, saturn_state ) AM_RANGE(0x000000, 0x0fffff) AM_RAM AM_BASE_MEMBER(saturn_state,m_sound_ram) AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("scsp", scsp_r, scsp_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/sauro.c b/src/mame/drivers/sauro.c index 9a6163a0727..ca07b54b20d 100644 --- a/src/mame/drivers/sauro.c +++ b/src/mame/drivers/sauro.c @@ -163,7 +163,7 @@ static WRITE8_DEVICE_HANDLER( adpcm_w ) sp0256_ALD_w(device, 0, data); } -static ADDRESS_MAP_START( sauro_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sauro_map, AS_PROGRAM, 8, sauro_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xe800, 0xebff) AM_RAM AM_BASE_SIZE_MEMBER(sauro_state, m_spriteram, m_spriteram_size) @@ -173,7 +173,7 @@ static ADDRESS_MAP_START( sauro_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc00, 0xffff) AM_RAM_WRITE(tecfri_colorram2_w) AM_BASE_MEMBER(sauro_state, m_colorram2) ADDRESS_MAP_END -static ADDRESS_MAP_START( sauro_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sauro_io_map, AS_IO, 8, sauro_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_RANGE(0x20, 0x20) AM_READ_PORT("DSW2") @@ -198,7 +198,7 @@ static ADDRESS_MAP_START( sauro_io_map, AS_IO, 8 ) AM_RANGE(0xe0, 0xe0) AM_WRITE(watchdog_reset_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sauro_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sauro_sound_map, AS_PROGRAM, 8, sauro_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ymsnd", ym3812_w) @@ -209,7 +209,7 @@ static ADDRESS_MAP_START( sauro_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( trckydoc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( trckydoc_map, AS_PROGRAM, 8, sauro_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xe800, 0xebff) AM_RAM AM_MIRROR(0x400) AM_BASE_SIZE_MEMBER(sauro_state, m_spriteram, m_spriteram_size) diff --git a/src/mame/drivers/sbasketb.c b/src/mame/drivers/sbasketb.c index 8dd5350560f..3befe0db499 100644 --- a/src/mame/drivers/sbasketb.c +++ b/src/mame/drivers/sbasketb.c @@ -67,7 +67,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( sbasketb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sbasketb_map, AS_PROGRAM, 8, sbasketb_state ) AM_RANGE(0x2000, 0x2fff) AM_RAM AM_RANGE(0x3000, 0x33ff) AM_RAM_WRITE(sbasketb_colorram_w) AM_BASE_MEMBER(sbasketb_state, m_colorram) AM_RANGE(0x3400, 0x37ff) AM_RAM_WRITE(sbasketb_videoram_w) AM_BASE_MEMBER(sbasketb_state, m_videoram) @@ -92,7 +92,7 @@ static ADDRESS_MAP_START( sbasketb_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sbasketb_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sbasketb_sound_map, AS_PROGRAM, 8, sbasketb_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/sbowling.c b/src/mame/drivers/sbowling.c index c05d109439a..443ff7bad36 100644 --- a/src/mame/drivers/sbowling.c +++ b/src/mame/drivers/sbowling.c @@ -219,7 +219,7 @@ static READ8_HANDLER (controls_r) return input_port_read(space->machine(), "TRACKX"); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sbowling_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAM_WRITE(sbw_videoram_w) AM_BASE_MEMBER(sbowling_state,m_videoram) AM_RANGE(0xf800, 0xf801) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -228,7 +228,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, sbowling_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(watchdog_reset_w) AM_RANGE(0x01, 0x01) AM_READWRITE(controls_r, pix_data_w) AM_RANGE(0x02, 0x02) AM_READWRITE(pix_data_r, pix_shift_w) diff --git a/src/mame/drivers/sbrkout.c b/src/mame/drivers/sbrkout.c index 0c8136ff420..757dc8962dc 100644 --- a/src/mame/drivers/sbrkout.c +++ b/src/mame/drivers/sbrkout.c @@ -349,7 +349,7 @@ static SCREEN_UPDATE_IND16( sbrkout ) *************************************/ /* full memory map derived from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sbrkout_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x380) AM_RAMBANK("bank1") AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(sbrkout_videoram_w) AM_BASE_MEMBER(sbrkout_state, m_videoram) diff --git a/src/mame/drivers/sbugger.c b/src/mame/drivers/sbugger.c index c0b73fd9879..75ebdb192a8 100644 --- a/src/mame/drivers/sbugger.c +++ b/src/mame/drivers/sbugger.c @@ -108,7 +108,7 @@ Sound PCB /* memory maps */ -static ADDRESS_MAP_START( sbugger_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sbugger_map, AS_PROGRAM, 8, sbugger_state ) AM_RANGE(0x0000, 0x37ff) AM_ROM AM_RANGE(0xc800, 0xcbff) AM_RAM_WRITE(sbugger_videoram_attr_w) AM_BASE_MEMBER(sbugger_state,m_videoram_attr) AM_RANGE(0xcc00, 0xcfff) AM_RAM_WRITE(sbugger_videoram_w) AM_BASE_MEMBER(sbugger_state,m_videoram) @@ -116,7 +116,7 @@ static ADDRESS_MAP_START( sbugger_map, AS_PROGRAM, 8 ) AM_RANGE(0xf400, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sbugger_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sbugger_io_map, AS_IO, 8, sbugger_state ) AM_RANGE(0xe0, 0xe0) AM_WRITENOP // 8156 command/status reg (write c0 = command START = (start of timer) AM_RANGE(0xe1, 0xe1) AM_READ_PORT("INPUTS") // 8156 PA AM_RANGE(0xe2, 0xe2) AM_READ_PORT("DSW1") // 8156 PB diff --git a/src/mame/drivers/scobra.c b/src/mame/drivers/scobra.c index 5cc5af8b33b..81a5fa66110 100644 --- a/src/mame/drivers/scobra.c +++ b/src/mame/drivers/scobra.c @@ -112,7 +112,7 @@ static WRITE8_DEVICE_HANDLER(hustler_ppi8255_w) ppi8255_w(device, offset >> 3, data); } -static ADDRESS_MAP_START( type1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( type1_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -132,7 +132,7 @@ static ADDRESS_MAP_START( type1_map, AS_PROGRAM, 8 ) AM_RANGE(0xb000, 0xb000) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( type2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( type2_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x883f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram) @@ -152,7 +152,7 @@ static ADDRESS_MAP_START( type2_map, AS_PROGRAM, 8 ) AM_RANGE(0xb00e, 0xb00e) AM_WRITE(galaxold_flip_screen_x_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hustler_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hustler_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -169,7 +169,7 @@ static ADDRESS_MAP_START( hustler_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe01f) AM_DEVREADWRITE("ppi8255_1", hustler_ppi8255_r, hustler_ppi8255_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hustlerb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hustlerb_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -186,7 +186,7 @@ static ADDRESS_MAP_START( hustlerb_map, AS_PROGRAM, 8 ) AM_RANGE(0xc200, 0xc203) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mimonkey_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -218,7 +218,7 @@ static WRITE8_HANDLER(scobra_soundram_w) state->m_soundram[offset & 0x03ff] = data; } -static ADDRESS_MAP_START( scobra_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scobra_sound_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_READWRITE(scobra_soundram_r, scobra_soundram_w) AM_RANGE(0x8000, 0x83ff) AM_WRITENOP AM_BASE_MEMBER(scobra_state, m_soundram) /* only here to initialize pointer */ @@ -226,14 +226,14 @@ static ADDRESS_MAP_START( scobra_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hustlerb_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hustlerb_sound_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_WRITE(frogger_filter_w) AM_RANGE(0x8000, 0x8fff) AM_RAM_READ(scobra_soundram_r) AM_BASE_MEMBER(scobra_state, m_soundram) /* only here to initialize pointer */ ADDRESS_MAP_END -static ADDRESS_MAP_START( scobra_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( scobra_sound_io_map, AS_IO, 8, scobra_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_DEVWRITE("ay1", ay8910_address_w) AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_data_w) @@ -241,20 +241,20 @@ static ADDRESS_MAP_START( scobra_sound_io_map, AS_IO, 8 ) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("ay2", ay8910_r, ay8910_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hustler_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hustler_sound_map, AS_PROGRAM, 8, scobra_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x6000, 0x6fff) AM_WRITE(frogger_filter_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hustler_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hustler_sound_io_map, AS_IO, 8, scobra_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_data_w) AM_RANGE(0x80, 0x80) AM_DEVWRITE("aysnd", ay8910_address_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hustlerb_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hustlerb_sound_io_map, AS_IO, 8, scobra_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_data_w) diff --git a/src/mame/drivers/scotrsht.c b/src/mame/drivers/scotrsht.c index 647d5c906d7..cbd18a3c3a2 100644 --- a/src/mame/drivers/scotrsht.c +++ b/src/mame/drivers/scotrsht.c @@ -61,7 +61,7 @@ static WRITE8_HANDLER( scotrsht_soundlatch_w ) cputag_set_input_line(space->machine(), "audiocpu", 0, HOLD_LINE); } -static ADDRESS_MAP_START( scotrsht_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scotrsht_map, AS_PROGRAM, 8, scotrsht_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(scotrsht_colorram_w) AM_BASE_MEMBER(scotrsht_state, m_colorram) AM_RANGE(0x0800, 0x0fff) AM_RAM_WRITE(scotrsht_videoram_w) AM_BASE_MEMBER(scotrsht_state, m_videoram) AM_RANGE(0x1000, 0x10bf) AM_RAM AM_BASE_SIZE_MEMBER(scotrsht_state, m_spriteram, m_spriteram_size) /* sprites */ @@ -85,13 +85,13 @@ static ADDRESS_MAP_START( scotrsht_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( scotrsht_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scotrsht_sound_map, AS_PROGRAM, 8, scotrsht_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( scotrsht_sound_port, AS_IO, 8 ) +static ADDRESS_MAP_START( scotrsht_sound_port, AS_IO, 8, scotrsht_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/scramble.c b/src/mame/drivers/scramble.c index c2fd784e228..72f504a7d3a 100644 --- a/src/mame/drivers/scramble.c +++ b/src/mame/drivers/scramble.c @@ -37,7 +37,7 @@ Notes: -static ADDRESS_MAP_START( scramble_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scramble_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -59,7 +59,7 @@ static ADDRESS_MAP_START( scramble_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( turpins_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( turpins_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -89,7 +89,7 @@ static ADDRESS_MAP_START( turpins_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_READONLY ADDRESS_MAP_END -static ADDRESS_MAP_START( ckongs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ckongs_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6bff) AM_RAM AM_RANGE(0x7000, 0x7003) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -118,7 +118,7 @@ static WRITE8_DEVICE_HANDLER(mars_ppi8255_w) } -static ADDRESS_MAP_START( mars_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mars_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -140,7 +140,7 @@ static ADDRESS_MAP_START( mars_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( newsin7_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( newsin7_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -162,7 +162,7 @@ static ADDRESS_MAP_START( newsin7_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mrkougar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mrkougar_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -182,7 +182,7 @@ static ADDRESS_MAP_START( mrkougar_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hotshock_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hotshock_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_RAM_WRITE(galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -206,7 +206,7 @@ static ADDRESS_MAP_START( hotshock_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hunchbks_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hunchbks_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1210, 0x1213) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) AM_RANGE(0x1400, 0x143f) AM_RAM_WRITE(galaxold_attributesram_w) AM_BASE_MEMBER(galaxold_state, m_attributesram) @@ -229,7 +229,7 @@ static ADDRESS_MAP_START( hunchbks_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mimonscr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mimonscr_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) /* mirror address?, probably not */ AM_RANGE(0x4400, 0x47ff) AM_RAM @@ -249,7 +249,7 @@ static ADDRESS_MAP_START( mimonscr_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ad2083_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ad2083_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4800, 0x4bff) AM_READWRITE(galaxold_videoram_r, galaxold_videoram_w) AM_BASE_MEMBER(galaxold_state, m_videoram) @@ -275,7 +275,7 @@ static ADDRESS_MAP_START( ad2083_map, AS_PROGRAM, 8 ) AM_RANGE(0xe800, 0xebff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( triplep_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( triplep_io_map, AS_IO, 8, scramble_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("8910.1", ay8910_data_address_w) AM_RANGE(0x01, 0x01) AM_DEVREAD("8910.1", ay8910_r) @@ -283,7 +283,7 @@ static ADDRESS_MAP_START( triplep_io_map, AS_IO, 8 ) AM_RANGE(0x03, 0x03) AM_READ(triplep_pap_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( hotshock_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hotshock_sound_io_map, AS_IO, 8, scramble_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_DEVWRITE("8910.1", ay8910_address_w) AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("8910.1", ay8910_r, ay8910_data_w) @@ -299,7 +299,7 @@ static READ8_HANDLER( hncholms_prot_r ) return 0; } -static ADDRESS_MAP_START( hunchbks_readport, AS_IO, 8 ) +static ADDRESS_MAP_START( hunchbks_readport, AS_IO, 8, scramble_state ) AM_RANGE(0x00, 0x00) AM_READ(hncholms_prot_r) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") ADDRESS_MAP_END @@ -1219,14 +1219,14 @@ static WRITE8_HANDLER(scramble_soundram_w) state->m_soundram[offset & 0x03ff] = data; } -static ADDRESS_MAP_START( scramble_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scramble_sound_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_READWRITE(scramble_soundram_r, scramble_soundram_w) AM_RANGE(0x8000, 0x83ff) AM_WRITENOP AM_BASE_MEMBER(scramble_state, m_soundram) /* only here to initialize pointer */ AM_RANGE(0x9000, 0x9fff) AM_WRITE(scramble_filter_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( scramble_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( scramble_sound_io_map, AS_IO, 8, scramble_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_DEVWRITE("8910.1", ay8910_address_w) AM_RANGE(0x20, 0x20) AM_DEVREADWRITE("8910.1", ay8910_r, ay8910_data_w) diff --git a/src/mame/drivers/scregg.c b/src/mame/drivers/scregg.c index 1ad31a67535..00706929fcc 100644 --- a/src/mame/drivers/scregg.c +++ b/src/mame/drivers/scregg.c @@ -68,7 +68,7 @@ static WRITE8_HANDLER( scregg_irqack_w ) } -static ADDRESS_MAP_START( dommy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dommy_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_BASE_SIZE_MEMBER(btime_state, m_videoram, m_videoram_size) AM_RANGE(0x2400, 0x27ff) AM_RAM AM_BASE_MEMBER(btime_state, m_colorram) @@ -84,7 +84,7 @@ static ADDRESS_MAP_START( dommy_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( eggs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( eggs_map, AS_PROGRAM, 8, btime_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x13ff) AM_RAM AM_BASE_SIZE_MEMBER(btime_state, m_videoram, m_videoram_size) AM_RANGE(0x1400, 0x17ff) AM_RAM AM_BASE_MEMBER(btime_state, m_colorram) diff --git a/src/mame/drivers/sderby.c b/src/mame/drivers/sderby.c index ec839036343..dc98a29e69d 100644 --- a/src/mame/drivers/sderby.c +++ b/src/mame/drivers/sderby.c @@ -274,7 +274,7 @@ static WRITE16_HANDLER( roulette_out_w ) * Memory Maps * ***************************/ -static ADDRESS_MAP_START( sderby_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sderby_map, AS_PROGRAM, 16, sderby_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_BASE_MEMBER(sderby_state,m_videoram) /* bg */ AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_BASE_MEMBER(sderby_state,m_md_videoram) /* mid */ @@ -293,7 +293,7 @@ static ADDRESS_MAP_START( sderby_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( luckboom_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( luckboom_map, AS_PROGRAM, 16, sderby_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_BASE_MEMBER(sderby_state,m_videoram) /* bg */ AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_BASE_MEMBER(sderby_state,m_md_videoram) /* mid */ @@ -311,7 +311,7 @@ static ADDRESS_MAP_START( luckboom_map, AS_PROGRAM, 16 ) AM_RANGE(0xff0000, 0xffffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( spacewin_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spacewin_map, AS_PROGRAM, 16, sderby_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(sderby_videoram_w) AM_BASE_MEMBER(sderby_state,m_videoram) /* bg */ AM_RANGE(0x101000, 0x101fff) AM_RAM_WRITE(sderby_md_videoram_w) AM_BASE_MEMBER(sderby_state,m_md_videoram) /* mid */ @@ -332,7 +332,7 @@ static ADDRESS_MAP_START( spacewin_map, AS_PROGRAM, 16 ) AM_RANGE(0x8fc000, 0x8fffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( roulette_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( roulette_map, AS_PROGRAM, 16, sderby_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x440000, 0x440fff) AM_WRITEONLY AM_BASE_MEMBER(sderby_state,m_spriteram) AM_SIZE_MEMBER(sderby_state,m_spriteram_size) AM_RANGE(0x500000, 0x500fff) AM_RAM_WRITE(sderby_videoram_w) AM_BASE_MEMBER(sderby_state,m_videoram) /* bg */ diff --git a/src/mame/drivers/seattle.c b/src/mame/drivers/seattle.c index ceaaa5308b8..411699afd5f 100644 --- a/src/mame/drivers/seattle.c +++ b/src/mame/drivers/seattle.c @@ -1761,7 +1761,7 @@ static READ32_DEVICE_HANDLER( seattle_ide_r ) return ide_controller32_r(device, offset, mem_mask); } -static ADDRESS_MAP_START( seattle_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( seattle_map, AS_PROGRAM, 32, seattle_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE_MEMBER(seattle_state, m_rambase) // wg3dh only has 4MB; sfrush, blitz99 8MB AM_RANGE(0x08000000, 0x08ffffff) AM_DEVREAD("voodoo", voodoo_r) AM_WRITE(seattle_voodoo_w) diff --git a/src/mame/drivers/segac2.c b/src/mame/drivers/segac2.c index 4c05380a34e..1d93d6fe12c 100644 --- a/src/mame/drivers/segac2.c +++ b/src/mame/drivers/segac2.c @@ -603,7 +603,7 @@ static WRITE16_HANDLER( print_club_camera_w ) ******************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, segac2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x800000, 0x800001) AM_MIRROR(0x13fdfe) AM_READWRITE(prot_r, prot_w) AM_RANGE(0x800200, 0x800201) AM_MIRROR(0x13fdfe) AM_WRITE(control_w) diff --git a/src/mame/drivers/segag80r.c b/src/mame/drivers/segag80r.c index 52a0640b5ca..b998101b4a9 100644 --- a/src/mame/drivers/segag80r.c +++ b/src/mame/drivers/segag80r.c @@ -333,7 +333,7 @@ static const ppi8255_interface sindbadm_ppi_intf = *************************************/ /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, segag80r_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM /* CPU board ROM */ AM_RANGE(0x0800, 0x7fff) AM_ROM /* PROM board ROM area */ AM_RANGE(0x8000, 0xbfff) AM_ROM /* PROM board ROM area */ @@ -343,7 +343,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, segag80r_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xbe, 0xbf) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w) AM_RANGE(0xf9, 0xf9) AM_MIRROR(0x04) AM_WRITE(coin_count_w) @@ -352,7 +352,7 @@ static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_ppi8255_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_ppi8255_portmap, AS_IO, 8, segag80r_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE("ppi8255", ppi8255_r, ppi8255_w) AM_RANGE(0xbe, 0xbf) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w) @@ -362,7 +362,7 @@ static ADDRESS_MAP_START( main_ppi8255_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sindbadm_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sindbadm_portmap, AS_IO, 8, segag80r_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x42, 0x43) AM_READWRITE(segag80r_video_port_r, segag80r_video_port_w) AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("ppi8255", ppi8255_r, ppi8255_w) @@ -378,7 +378,7 @@ ADDRESS_MAP_END *************************************/ /* complete memory map derived from System 1 schematics */ -static ADDRESS_MAP_START( sindbadm_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sindbadm_sound_map, AS_PROGRAM, 8, segag80r_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x1800) AM_RAM AM_RANGE(0xa000, 0xa003) AM_MIRROR(0x1ffc) AM_DEVWRITE("sn1", sindbadm_SN76496_w) diff --git a/src/mame/drivers/segag80v.c b/src/mame/drivers/segag80v.c index 7c0e3f8079d..07903ee2f42 100644 --- a/src/mame/drivers/segag80v.c +++ b/src/mame/drivers/segag80v.c @@ -380,7 +380,7 @@ static WRITE8_HANDLER( unknown_w ) *************************************/ /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, segag80v_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM /* CPU board ROM */ AM_RANGE(0x0800, 0xbfff) AM_ROM /* PROM board ROM area */ AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(mainram_w) AM_BASE_MEMBER(segag80v_state, m_mainram) @@ -389,7 +389,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, segag80v_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xbc, 0xbc) /* AM_READ ??? */ AM_RANGE(0xbd, 0xbe) AM_WRITE(multiply_w) diff --git a/src/mame/drivers/segahang.c b/src/mame/drivers/segahang.c index 85ab017813a..f6ad31c3e66 100644 --- a/src/mame/drivers/segahang.c +++ b/src/mame/drivers/segahang.c @@ -428,7 +428,7 @@ static READ8_HANDLER( sound_data_r ) * *************************************/ -static ADDRESS_MAP_START( hangon_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hangon_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x20c000, 0x20ffff) AM_RAM @@ -442,7 +442,7 @@ static ADDRESS_MAP_START( hangon_map, AS_PROGRAM, 16 ) AM_RANGE(0xe00000, 0xffffff) AM_READWRITE(hangon_io_r, hangon_io_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sharrier_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sharrier_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM AM_BASE(&workram) @@ -464,7 +464,7 @@ ADDRESS_MAP_END *************************************/ /* On Super Hang On there is a memory mapper, like the System16 one, todo: emulate it! */ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x7ffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM @@ -480,7 +480,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map_2203, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_2203, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x0800) AM_RAM @@ -488,28 +488,28 @@ static ADDRESS_MAP_START( sound_map_2203, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe0ff) AM_MIRROR(0x0f00) AM_DEVREADWRITE("pcm", sega_pcm_r, sega_pcm_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap_2203, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap_2203, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_READ(sound_data_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map_2151, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_2151, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x700) AM_DEVREADWRITE("pcm", sega_pcm_r, sega_pcm_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap_2151, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap_2151, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x40, 0x40) AM_MIRROR(0x3f) AM_READ(sound_data_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap_2203x2, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap_2203x2, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) @@ -525,7 +525,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segas1x_state ) ADDRESS_MAP_END diff --git a/src/mame/drivers/segald.c b/src/mame/drivers/segald.c index 8a64926d769..0adab6dc096 100644 --- a/src/mame/drivers/segald.c +++ b/src/mame/drivers/segald.c @@ -242,7 +242,7 @@ static WRITE8_HANDLER( astron_io_bankswitch_w ) /* PROGRAM MAP */ -static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainmem, AS_PROGRAM, 8, segald_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") @@ -260,7 +260,7 @@ ADDRESS_MAP_END /* I/O MAP */ -static ADDRESS_MAP_START( mainport, AS_IO, 8 ) +static ADDRESS_MAP_START( mainport, AS_IO, 8, segald_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(astron_io_bankswitch_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/segaorun.c b/src/mame/drivers/segaorun.c index 3f902eb093b..d482ca313c0 100644 --- a/src/mame/drivers/segaorun.c +++ b/src/mame/drivers/segaorun.c @@ -789,7 +789,7 @@ static WRITE16_HANDLER( shangon_custom_io_w ) * *************************************/ -static ADDRESS_MAP_START( outrun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( outrun_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0xffffff) AM_READWRITE(segaic16_memory_mapper_lsb_r, segaic16_memory_mapper_lsb_w) ADDRESS_MAP_END @@ -802,7 +802,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_BASE(&cpu1rom) @@ -819,14 +819,14 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("pcm", sega_pcm_r, sega_pcm_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/segas16a.c b/src/mame/drivers/segas16a.c index d1306320f02..e9ab104796a 100644 --- a/src/mame/drivers/segas16a.c +++ b/src/mame/drivers/segas16a.c @@ -1005,7 +1005,7 @@ static INTERRUPT_GEN( mcu_irq_assert ) * *************************************/ -static ADDRESS_MAP_START( system16a_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( system16a_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x380000) AM_ROM AM_RANGE(0x400000, 0x407fff) AM_MIRROR(0xb88000) AM_RAM_WRITE(segaic16_tileram_0_w) AM_BASE(&segaic16_tileram_0) @@ -1025,14 +1025,14 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xe800, 0xe800) AM_READ(sound_data_r) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1048,7 +1048,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( n7751_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( n7751_portmap, AS_IO, 8, segas1x_state ) AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(n7751_rom_r) AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(n7751_t1_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_w) @@ -1064,7 +1064,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xffff) AM_READWRITE(mcu_io_r, mcu_io_w) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READNOP AM_WRITE(mcu_control_w) diff --git a/src/mame/drivers/segas16b.c b/src/mame/drivers/segas16b.c index 4f04c514482..af0136a29c6 100644 --- a/src/mame/drivers/segas16b.c +++ b/src/mame/drivers/segas16b.c @@ -1837,7 +1837,7 @@ static WRITE16_HANDLER( sjryuko_custom_io_w ) * *************************************/ -static ADDRESS_MAP_START( system16b_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( system16b_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0xffffff) AM_READWRITE(segaic16_memory_mapper_lsb_r, segaic16_memory_mapper_lsb_w) ADDRESS_MAP_END @@ -1850,7 +1850,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xdfff) AM_ROMBANK("bank1") @@ -1858,7 +1858,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1875,7 +1875,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x001f) AM_MIRROR(0xff00) AM_READWRITE(segaic16_memory_mapper_r, segaic16_memory_mapper_w) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READ_PORT("SERVICE") @@ -7071,7 +7071,7 @@ static MACHINE_START( isgsm ) memory_set_bankptr(machine,ISGSM_MAIN_BANK, machine.region("bios")->base()); } -static ADDRESS_MAP_START( isgsm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( isgsm_map, AS_PROGRAM, 16, segas1x_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROMBANK(ISGSM_MAIN_BANK) // this area is ALWAYS read-only, even when the game is banked in AM_RANGE(0x200000, 0x23ffff) AM_RAM // used during startup for decompression diff --git a/src/mame/drivers/segas18.c b/src/mame/drivers/segas18.c index 40acdfda74d..39b2205c41c 100644 --- a/src/mame/drivers/segas18.c +++ b/src/mame/drivers/segas18.c @@ -606,7 +606,7 @@ static WRITE8_HANDLER( mcu_data_w ) * *************************************/ -static ADDRESS_MAP_START( system18_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( system18_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0xffffff) AM_READWRITE(segaic16_memory_mapper_lsb_r, segaic16_memory_mapper_lsb_w) ADDRESS_MAP_END @@ -619,7 +619,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("soundcpu", 0x10000) AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1") @@ -628,7 +628,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x83) AM_MIRROR(0x0c) AM_DEVREADWRITE("ym1", ym3438_r, ym3438_w) @@ -645,7 +645,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH /* port 2 not used for high order address byte */ AM_RANGE(0x0000, 0x001f) AM_MIRROR(0xff00) AM_READWRITE(segaic16_memory_mapper_r, segaic16_memory_mapper_w) diff --git a/src/mame/drivers/segas32.c b/src/mame/drivers/segas32.c index ff8d08882ad..5cfe744726d 100644 --- a/src/mame/drivers/segas32.c +++ b/src/mame/drivers/segas32.c @@ -1200,7 +1200,7 @@ static WRITE8_HANDLER( sound_dummy_w ) * *************************************/ -static ADDRESS_MAP_START( system32_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( system32_map, AS_PROGRAM, 16, segas32_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_MIRROR(0x0f0000) AM_RAM AM_BASE_MEMBER(segas32_state, m_system32_workram) @@ -1218,7 +1218,7 @@ static ADDRESS_MAP_START( system32_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( multi32_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( multi32_map, AS_PROGRAM, 32, segas32_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE(0x000000, 0x1fffff) AM_ROM @@ -1248,7 +1248,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( system32_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( system32_sound_map, AS_PROGRAM, 8, segas32_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("soundcpu", 0x100000) AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc00f) AM_MIRROR(0x0ff0) AM_DEVWRITE("rfsnd", rf5c68_w) @@ -1256,7 +1256,7 @@ static ADDRESS_MAP_START( system32_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_BASE_MEMBER(segas32_state, m_z80_shared_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( system32_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( system32_sound_portmap, AS_IO, 8, segas32_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x83) AM_MIRROR(0x0c) AM_DEVREADWRITE("ym1", ym3438_r, ym3438_w) @@ -1269,14 +1269,14 @@ static ADDRESS_MAP_START( system32_sound_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( multi32_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( multi32_sound_map, AS_PROGRAM, 8, segas32_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_REGION("soundcpu", 0x100000) AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_DEVREADWRITE("sega", multipcm_r, multipcm_w) AM_RANGE(0xe000, 0xffff) AM_RAM AM_BASE_MEMBER(segas32_state, m_z80_shared_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( multi32_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( multi32_sound_portmap, AS_IO, 8, segas32_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x83) AM_MIRROR(0x0c) AM_DEVREADWRITE("ymsnd", ym3438_r, ym3438_w) @@ -1295,7 +1295,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( ga2_v25_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ga2_v25_map, AS_PROGRAM, 8, segas32_state ) AM_RANGE(0x00000, 0x0ffff) AM_ROM AM_REGION("mcu", 0) AM_RANGE(0x10000, 0x1ffff) AM_RAM AM_BASE_MEMBER(segas32_state, m_ga2_dpram) AM_RANGE(0xf0000, 0xfffff) AM_ROM AM_REGION("mcu", 0) diff --git a/src/mame/drivers/segaxbd.c b/src/mame/drivers/segaxbd.c index df7cae85f29..25e67046561 100644 --- a/src/mame/drivers/segaxbd.c +++ b/src/mame/drivers/segaxbd.c @@ -710,7 +710,7 @@ static WRITE16_HANDLER( smgp_excs_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x3fffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM @@ -749,7 +749,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM @@ -771,14 +771,14 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("pcm", sega_pcm_r, sega_pcm_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -793,13 +793,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( smgp_comm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( smgp_comm_map, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( smgp_comm_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( smgp_comm_portmap, AS_IO, 8, segas1x_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/drivers/segaybd.c b/src/mame/drivers/segaybd.c index a0f876563e9..d8ff07fbda9 100644 --- a/src/mame/drivers/segaybd.c +++ b/src/mame/drivers/segaybd.c @@ -416,7 +416,7 @@ static WRITE16_HANDLER( analog_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM @@ -438,7 +438,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( subx_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( subx_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM @@ -451,7 +451,7 @@ static ADDRESS_MAP_START( subx_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( suby_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( suby_map, AS_PROGRAM, 16, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x03ffff) AM_ROM @@ -473,14 +473,14 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf0ff) AM_MIRROR(0x0700) AM_DEVREADWRITE("pcm", sega_pcm_r, sega_pcm_w) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, segas1x_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/seibuspi.c b/src/mame/drivers/seibuspi.c index d06ba61488d..d41ea41c94a 100644 --- a/src/mame/drivers/seibuspi.c +++ b/src/mame/drivers/seibuspi.c @@ -1032,7 +1032,7 @@ static READ32_HANDLER( soundrom_r ) /********************************************************************/ -static ADDRESS_MAP_START( spi_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( spi_map, AS_PROGRAM, 32, seibuspi_state ) AM_RANGE(0x00000000, 0x00000417) AM_RAM AM_RANGE(0x00000418, 0x0000041b) AM_READWRITE(spi_layer_bank_r, spi_layer_bank_w) AM_RANGE(0x0000041c, 0x0000041f) AM_READNOP @@ -1061,7 +1061,7 @@ static ADDRESS_MAP_START( spi_map, AS_PROGRAM, 32 ) AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("user1", 0) AM_SHARE("share2") /* ROM location in real-mode */ ADDRESS_MAP_END -static ADDRESS_MAP_START( spisound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spisound_map, AS_PROGRAM, 8, seibuspi_state ) AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank5") AM_RANGE(0x4002, 0x4002) AM_WRITENOP /* ack RST 10 */ AM_RANGE(0x4003, 0x4003) AM_WRITENOP /* Unknown */ @@ -1130,7 +1130,7 @@ static const ymf271_interface ymf271_config = /********************************************************************/ -static ADDRESS_MAP_START( seibu386_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( seibu386_map, AS_PROGRAM, 32, seibuspi_state ) AM_RANGE(0x00000000, 0x00000417) AM_RAM AM_RANGE(0x00000418, 0x0000041b) AM_READWRITE(spi_layer_bank_r, spi_layer_bank_w) AM_RANGE(0x0000041c, 0x0000041f) AM_READNOP @@ -1159,7 +1159,7 @@ static WRITE32_HANDLER(input_select_w) state->m_ejsakura_input_port = data; } -static ADDRESS_MAP_START( sys386f2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( sys386f2_map, AS_PROGRAM, 32, seibuspi_state ) AM_RANGE(0x00000000, 0x0000000f) AM_RAM AM_RANGE(0x00000010, 0x00000013) AM_READ(spi_int_r) /* Unknown */ AM_RANGE(0x00000090, 0x00000097) AM_RAM /* Unknown */ diff --git a/src/mame/drivers/seicross.c b/src/mame/drivers/seicross.c index a2c9eff1222..8242d165b21 100644 --- a/src/mame/drivers/seicross.c +++ b/src/mame/drivers/seicross.c @@ -111,7 +111,7 @@ static WRITE8_DEVICE_HANDLER( friskyt_portB_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, seicross_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x8820, 0x887f) AM_RAM AM_BASE_SIZE_MEMBER(seicross_state, m_spriteram, m_spriteram_size) @@ -125,14 +125,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, seicross_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x08) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x04, 0x04) AM_MIRROR(0x08) AM_DEVREAD("aysnd", ay8910_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_nvram_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_nvram_map, AS_PROGRAM, 8, seicross_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x1000, 0x10ff) AM_RAM AM_BASE_SIZE_MEMBER(seicross_state, m_nvram, m_nvram_size) AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("dac", dac_w) @@ -140,7 +140,7 @@ static ADDRESS_MAP_START( mcu_nvram_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_no_nvram_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_no_nvram_map, AS_PROGRAM, 8, seicross_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x1003, 0x1003) AM_READ_PORT("DSW1") /* DSW1 */ AM_RANGE(0x1005, 0x1005) AM_READ_PORT("DSW2") /* DSW2 */ diff --git a/src/mame/drivers/sengokmj.c b/src/mame/drivers/sengokmj.c index e29a046014b..27532398d3d 100644 --- a/src/mame/drivers/sengokmj.c +++ b/src/mame/drivers/sengokmj.c @@ -114,7 +114,7 @@ static READ16_HANDLER( sengokmj_system_r ) return (input_port_read(space->machine(), "SYSTEM") & 0xffbf) | state->m_hopper_io; } -static ADDRESS_MAP_START( sengokmj_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sengokmj_map, AS_PROGRAM, 16, sengokmj_state ) AM_RANGE(0x00000, 0x07fff) AM_RAM AM_RANGE(0x08000, 0x09fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x0c000, 0x0c7ff) AM_RAM_WRITE(seibucrtc_sc0vram_w) AM_BASE(&seibucrtc_sc0vram) @@ -126,7 +126,7 @@ static ADDRESS_MAP_START( sengokmj_map, AS_PROGRAM, 16 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sengokmj_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( sengokmj_io_map, AS_IO, 16, sengokmj_state ) AM_RANGE(0x4000, 0x400f) AM_READWRITE(seibu_main_word_r, seibu_main_word_w) /*Areas from 8000-804f are for the custom Seibu CRTC.*/ AM_RANGE(0x8000, 0x804f) AM_RAM_WRITE(seibucrtc_vregs_w) AM_BASE(&seibucrtc_vregs) diff --git a/src/mame/drivers/senjyo.c b/src/mame/drivers/senjyo.c index ab5f051ba03..5f22343d26b 100644 --- a/src/mame/drivers/senjyo.c +++ b/src/mame/drivers/senjyo.c @@ -127,7 +127,7 @@ static WRITE8_HANDLER( senjyo_paletteram_w ) palette_set_color_rgb(space->machine(), offset, pal4bit(rr), pal4bit(gg), pal4bit(bb) ); } -static ADDRESS_MAP_START( senjyo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( senjyo_map, AS_PROGRAM, 8, senjyo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(senjyo_fgvideoram_w) AM_BASE_MEMBER(senjyo_state, m_fgvideoram) @@ -159,7 +159,7 @@ static ADDRESS_MAP_START( senjyo_map, AS_PROGRAM, 8 ) AM_RANGE(0xd005, 0xd005) AM_READ_PORT("DSW2") ADDRESS_MAP_END -static ADDRESS_MAP_START( senjyo_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( senjyo_sound_map, AS_PROGRAM, 8, senjyo_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("sn1", sn76496_w) @@ -172,7 +172,7 @@ static ADDRESS_MAP_START( senjyo_sound_map, AS_PROGRAM, 8 ) #endif ADDRESS_MAP_END -static ADDRESS_MAP_START( senjyo_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( senjyo_sound_io_map, AS_IO, 8, senjyo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("z80pio", z80pio_ba_cd_r, z80pio_ba_cd_w) AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("z80ctc", z80ctc_r, z80ctc_w) @@ -197,7 +197,7 @@ static WRITE8_HANDLER(starforb_scrollx2) state->m_scrollx1[offset] = data; } -static ADDRESS_MAP_START( starforb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( starforb_map, AS_PROGRAM, 8, senjyo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x93ff) AM_RAM_WRITE(senjyo_fgvideoram_w) AM_BASE_MEMBER(senjyo_state, m_fgvideoram) @@ -229,7 +229,7 @@ static ADDRESS_MAP_START( starforb_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( starforb_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( starforb_sound_map, AS_PROGRAM, 8, senjyo_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_DEVWRITE("sn1", sn76496_w) diff --git a/src/mame/drivers/seta.c b/src/mame/drivers/seta.c index b2949d9468b..eedd722d052 100644 --- a/src/mame/drivers/seta.c +++ b/src/mame/drivers/seta.c @@ -1582,7 +1582,7 @@ static SCREEN_VBLANK( seta_buffer_sprites ) writing to sharedram! */ -static ADDRESS_MAP_START( tndrcade_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tndrcade_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x200001) AM_WRITENOP // ? 0 AM_RANGE(0x280000, 0x280001) AM_WRITENOP // ? 0 / 1 (sub cpu related?) @@ -1605,7 +1605,7 @@ ADDRESS_MAP_END (with slight variations, and Meta Fox protection hooked in) ***************************************************************************/ -static ADDRESS_MAP_START( downtown_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( downtown_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", seta_sound_word_r,seta_sound_word_w) // Sound AM_RANGE(0x200000, 0x200001) AM_NOP // watchdog? (twineagl) @@ -1663,7 +1663,7 @@ static WRITE16_HANDLER( calibr50_soundlatch_w ) } } -static ADDRESS_MAP_START( calibr50_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( calibr50_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM AM_RANGE(0x100000, 0x100007) AM_READNOP // ? (same as a00010-a00017?) @@ -1748,7 +1748,7 @@ static WRITE16_HANDLER( usclssic_lockout_w ) } -static ADDRESS_MAP_START( usclssic_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( usclssic_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM AM_RANGE(0x800000, 0x8005ff) AM_RAM AM_DEVREADWRITE("spritegen", spriteylow_r16, spriteylow_w16) // Sprites Y @@ -1776,7 +1776,7 @@ ADDRESS_MAP_END Athena no Hatena? ***************************************************************************/ -static ADDRESS_MAP_START( atehate_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( atehate_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x900000, 0x9fffff) AM_RAM // RAM AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", seta_sound_word_r,seta_sound_word_w) // Sound @@ -1799,7 +1799,7 @@ ADDRESS_MAP_END Blandia ***************************************************************************/ -static ADDRESS_MAP_START( blandia_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blandia_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB) AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM (main ram for zingzip, wrofaero writes to 20f000-20ffff) AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara) @@ -1834,7 +1834,7 @@ ADDRESS_MAP_END (with slight variations) ***************************************************************************/ -static ADDRESS_MAP_START( blandiap_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blandiap_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB) AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM (main ram for zingzip, wrofaero writes to 20f000-20ffff) AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara) @@ -1916,7 +1916,7 @@ static WRITE16_HANDLER( zombraid_gun_w ) state->m_gun_old_clock = data & 1; } -static ADDRESS_MAP_START( wrofaero_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wrofaero_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB) AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(seta_state, m_workram) // RAM (pointer for zombraid crosshair hack) AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara) @@ -1955,7 +1955,7 @@ static READ16_HANDLER( zingzipbl_unknown_r ) return 0x0000; } -static ADDRESS_MAP_START( zingzipbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( zingzipbl_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB) AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(seta_state, m_workram) // RAM (pointer for zombraid crosshair hack) AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara) @@ -1993,7 +1993,7 @@ static ADDRESS_MAP_START( zingzipbl_map, AS_PROGRAM, 16 ) AM_RANGE(0xf00000, 0xf00001) AM_WRITENOP // ? Sound IRQ Ack ADDRESS_MAP_END -static ADDRESS_MAP_START( jjsquawb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jjsquawb_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB) AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_MEMBER(seta_state, m_workram) // RAM (pointer for zombraid crosshair hack) AM_RANGE(0x210000, 0x21ffff) AM_RAM // RAM (gundhara) @@ -2030,7 +2030,7 @@ ADDRESS_MAP_END Orbs ***************************************************************************/ -static ADDRESS_MAP_START( orbs_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( orbs_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM AM_RANGE(0x100000, 0x100001) AM_READNOP // ? @@ -2115,7 +2115,7 @@ static WRITE16_HANDLER( keroppi_prize_w ) } } -static ADDRESS_MAP_START( keroppi_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( keroppi_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM AM_RANGE(0x100000, 0x100001) AM_READ(keroppi_protection_r) // @@ -2149,7 +2149,7 @@ static MACHINE_START( keroppi ) ***************************************************************************/ /* similar to krzybowl */ -static ADDRESS_MAP_START( blockcar_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blockcar_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf03fff) AM_RAM // RAM AM_RANGE(0xf04000, 0xf041ff) AM_RAM // Backup RAM? @@ -2174,7 +2174,7 @@ ADDRESS_MAP_END Daioh ***************************************************************************/ -static ADDRESS_MAP_START( daioh_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( daioh_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // RAM AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P1") // P1 @@ -2207,7 +2207,7 @@ ADDRESS_MAP_END Dragon Unit, Quiz Kokology, Quiz Kokology 2, Strike Gunner ***************************************************************************/ -static ADDRESS_MAP_START( drgnunit_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drgnunit_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM (qzkklogy) AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM (drgnunit,stg) @@ -2271,7 +2271,7 @@ static READ16_HANDLER( setaroul_spritecode_r ) -static ADDRESS_MAP_START( setaroul_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( setaroul_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM // ROM AM_RANGE(0xc00000, 0xc03fff) AM_RAM AM_SHARE("nvram") @@ -2303,7 +2303,7 @@ ADDRESS_MAP_END Extreme Downhill / Sokonuke ***************************************************************************/ -static ADDRESS_MAP_START( extdwnhl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( extdwnhl_map, AS_PROGRAM, 16, seta_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM @@ -2337,7 +2337,7 @@ ADDRESS_MAP_END (Kamen) Masked Riders Club Battle Race / Mad Shark ***************************************************************************/ -static ADDRESS_MAP_START( kamenrid_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kamenrid_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x500000, 0x500001) AM_READ_PORT("P1") // P1 @@ -2370,7 +2370,7 @@ static ADDRESS_MAP_START( kamenrid_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* almost identical to kamenrid */ -static ADDRESS_MAP_START( madshark_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( madshark_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x500000, 0x500001) AM_READ_PORT("P1") // P1 @@ -2427,7 +2427,7 @@ static READ16_HANDLER( krzybowl_input_r ) } } -static ADDRESS_MAP_START( krzybowl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( krzybowl_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0xf00000, 0xf0ffff) AM_RAM // RAM AM_RANGE(0x100000, 0x100001) AM_READNOP // ? @@ -2466,7 +2466,7 @@ static WRITE16_HANDLER( msgundam_vregs_w ) /* Mirror RAM is necessary or startup, to clear Work RAM after the test */ -static ADDRESS_MAP_START( msgundam_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( msgundam_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_MIRROR(0x70000) // RAM @@ -2500,7 +2500,7 @@ ADDRESS_MAP_END ***************************************************************************/ /* similar to wrofaero */ -static ADDRESS_MAP_START( oisipuzl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( oisipuzl_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x17ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM @@ -2529,7 +2529,7 @@ ADDRESS_MAP_END /* Same as oisipuzl but with the sound system replaced */ -static ADDRESS_MAP_START( triplfun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( triplfun_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x17ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM @@ -2594,7 +2594,7 @@ static READ16_HANDLER( kiwame_input_r ) } } -static ADDRESS_MAP_START( kiwame_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kiwame_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0xfffc00, 0xffffff) AM_READWRITE(kiwame_nvram_r, kiwame_nvram_w) AM_BASE_MEMBER(seta_state, m_kiwame_nvram) // NVRAM + Regs ? @@ -2625,7 +2625,7 @@ static WRITE16_HANDLER( thunderl_protection_w ) /* Similar to downtown etc. */ -static ADDRESS_MAP_START( thunderl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( thunderl_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", seta_sound_word_r,seta_sound_word_w) // Sound @@ -2649,7 +2649,7 @@ static ADDRESS_MAP_START( thunderl_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( thunderlbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( thunderlbl_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM // AM_RANGE(0x100000, 0x103fff) AM_DEVREADWRITE("x1snd", seta_sound_word_r,seta_sound_word_w) // Sound @@ -2692,7 +2692,7 @@ static WRITE16_HANDLER( wiggie_soundlatch_w ) } -static ADDRESS_MAP_START( wiggie_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wiggie_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM // ROM AM_RANGE(0xffc000, 0xffffff) AM_RAM // RAM AM_RANGE(0x200000, 0x200001) AM_WRITENOP // ? @@ -2714,7 +2714,7 @@ static ADDRESS_MAP_START( wiggie_map, AS_PROGRAM, 16 ) AM_RANGE(0xe04000, 0xe07fff) AM_RAM // (wits) ADDRESS_MAP_END -static ADDRESS_MAP_START( wiggie_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wiggie_sound_map, AS_PROGRAM, 8, seta_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9800, 0x9800) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) @@ -2726,7 +2726,7 @@ ADDRESS_MAP_END Ultraman Club / SD Gundam Neo Battling ***************************************************************************/ -static ADDRESS_MAP_START( umanclub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( umanclub_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x3003ff) AM_RAM AM_BASE_SIZE_MEMBER(seta_state, m_paletteram, m_paletteram_size) // Palette @@ -2759,7 +2759,7 @@ static WRITE16_HANDLER( utoukond_soundlatch_w ) } } -static ADDRESS_MAP_START( utoukond_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( utoukond_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P1") // P1 @@ -2802,7 +2802,7 @@ static WRITE16_HANDLER( pairlove_prot_w ) state->m_pairslove_protram[offset] = data; } -static ADDRESS_MAP_START( pairlove_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pairlove_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM AM_RANGE(0x100000, 0x100001) AM_WRITENOP // ? 1 (start of interrupts, main loop: watchdog?) AM_RANGE(0x200000, 0x200001) AM_WRITENOP // ? 0/1 (IRQ acknowledge?) @@ -2826,7 +2826,7 @@ ADDRESS_MAP_END Crazy Fight ***************************************************************************/ -static ADDRESS_MAP_START( crazyfgt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( crazyfgt_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_RANGE(0x610000, 0x610001) AM_READ_PORT("COINS") @@ -2886,7 +2886,7 @@ static READ16_HANDLER( inttoote_700000_r ) return state->m_inttoote_700000[offset] & 0x3f; } -static ADDRESS_MAP_START( inttoote_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( inttoote_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB) AM_RANGE(0x200000, 0x200001) AM_RAM_READ(inttoote_key_r) AM_BASE_MEMBER(seta_state, m_inttoote_key_select) @@ -2951,7 +2951,7 @@ static READ16_HANDLER( unk_r ) } /* same as International Toote but without the protection and different RTC hook-up */ -static ADDRESS_MAP_START( jockeyc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jockeyc_map, AS_PROGRAM, 16, seta_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM (up to 2MB) AM_RANGE(0x200000, 0x200001) AM_READWRITE(jockeyc_mux_r,jockeyc_mux_w) @@ -3017,7 +3017,7 @@ static WRITE8_HANDLER( sub_bankswitch_lockout_w ) static READ8_HANDLER( ff_r ) {return 0xff;} -static ADDRESS_MAP_START( tndrcade_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tndrcade_sub_map, AS_PROGRAM, 8, seta_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM AM_RANGE(0x0800, 0x0800) AM_READ(ff_r) // ? (bits 0/1/2/3: 1 -> do test 0-ff/100-1e0/5001-57ff/banked rom) //AM_RANGE(0x0800, 0x0800) AM_READ(soundlatch_r) // @@ -3039,7 +3039,7 @@ ADDRESS_MAP_END Twin Eagle ***************************************************************************/ -static ADDRESS_MAP_START( twineagl_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( twineagl_sub_map, AS_PROGRAM, 8, seta_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM AM_RANGE(0x0800, 0x0800) AM_READ(soundlatch_r) // AM_RANGE(0x0801, 0x0801) AM_READ(soundlatch2_r) // @@ -3081,7 +3081,7 @@ static READ8_HANDLER( downtown_ip_r ) return 0; } -static ADDRESS_MAP_START( downtown_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( downtown_sub_map, AS_PROGRAM, 8, seta_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM AM_RANGE(0x0800, 0x0800) AM_READ(soundlatch_r) // AM_RANGE(0x0801, 0x0801) AM_READ(soundlatch2_r) // @@ -3110,7 +3110,7 @@ static WRITE8_HANDLER( calibr50_soundlatch2_w ) device_spin_until_time(&space->device(), attotime::from_usec(50)); // Allow the other cpu to reply } -static ADDRESS_MAP_START( calibr50_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( calibr50_sub_map, AS_PROGRAM, 8, seta_state ) AM_RANGE(0x0000, 0x1fff) AM_DEVREADWRITE("x1snd", seta_sound_r,seta_sound_w) // Sound AM_RANGE(0x4000, 0x4000) AM_READ(soundlatch_r) // From Main CPU AM_RANGE(0x4000, 0x4000) AM_WRITE(sub_bankswitch_w) // Bankswitching @@ -3124,7 +3124,7 @@ ADDRESS_MAP_END Meta Fox ***************************************************************************/ -static ADDRESS_MAP_START( metafox_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( metafox_sub_map, AS_PROGRAM, 8, seta_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM // RAM AM_RANGE(0x0800, 0x0800) AM_READ(soundlatch_r) // AM_RANGE(0x0801, 0x0801) AM_READ(soundlatch2_r) // @@ -3144,13 +3144,13 @@ ADDRESS_MAP_END Ultra Toukon Densetsu ***************************************************************************/ -static ADDRESS_MAP_START( utoukond_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( utoukond_sound_map, AS_PROGRAM, 8, seta_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xefff) AM_RAM AM_RANGE(0xf000, 0xffff) AM_DEVREADWRITE("x1snd", seta_sound_r,seta_sound_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( utoukond_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( utoukond_sound_io_map, AS_IO, 8, seta_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym3438_r, ym3438_w) AM_RANGE(0x80, 0x80) AM_WRITENOP //? @@ -8560,7 +8560,7 @@ static MACHINE_CONFIG_START( thunderl, seta_state ) MACHINE_CONFIG_END -static ADDRESS_MAP_START( thunderlbl_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( thunderlbl_sound_map, AS_PROGRAM, 8, seta_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xdfff) AM_ROM//ROMBANK("bank1") @@ -8568,7 +8568,7 @@ static ADDRESS_MAP_START( thunderlbl_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( thunderlbl_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( thunderlbl_sound_portmap, AS_IO, 8, seta_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_MIRROR(0x3e) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/seta2.c b/src/mame/drivers/seta2.c index eddffe0013f..70ac271b5d6 100644 --- a/src/mame/drivers/seta2.c +++ b/src/mame/drivers/seta2.c @@ -149,7 +149,7 @@ static WRITE16_HANDLER( grdians_lockout_w ) // popmessage("%04X", data & 0xffff); } -static ADDRESS_MAP_START( grdians_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( grdians_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x304000, 0x30ffff) AM_RAM // ? seems tile data @@ -187,7 +187,7 @@ static WRITE16_DEVICE_HANDLER( gundamex_eeprom_w ) eeprom->set_cs_line((data & 0x4) ? CLEAR_LINE : ASSERT_LINE); } -static ADDRESS_MAP_START( gundamex_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gundamex_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x500000, 0x57ffff) AM_ROM // ROM @@ -253,7 +253,7 @@ static WRITE16_HANDLER( mj4simai_keyboard_w ) state->m_keyboard_row = data & 0xff; } -static ADDRESS_MAP_START( mj4simai_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mj4simai_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x600000, 0x600001) AM_READ(mj4simai_p1_r) // P1 @@ -277,7 +277,7 @@ ADDRESS_MAP_END Kosodate Quiz My Angel ***************************************************************************/ -static ADDRESS_MAP_START( myangel_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( myangel_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x700000, 0x700001) AM_READ_PORT("P1") // P1 @@ -300,7 +300,7 @@ ADDRESS_MAP_END Kosodate Quiz My Angel 2 ***************************************************************************/ -static ADDRESS_MAP_START( myangel2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( myangel2_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x600000, 0x600001) AM_READ_PORT("P1") // P1 @@ -345,7 +345,7 @@ static WRITE16_HANDLER( pzlbowl_coin_counter_w ) } } -static ADDRESS_MAP_START( pzlbowl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pzlbowl_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x400300, 0x400301) AM_READ_PORT("DSW1") // DSW 1 @@ -368,7 +368,7 @@ ADDRESS_MAP_END Penguin Bros ***************************************************************************/ -static ADDRESS_MAP_START( penbros_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( penbros_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x210000, 0x23ffff) AM_RAM // RAM @@ -428,7 +428,7 @@ static WRITE16_HANDLER( reelquak_coin_w ) // popmessage("COIN %04X", data & 0xffff); } -static ADDRESS_MAP_START( reelquak_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( reelquak_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0x300000, 0x303fff) AM_RAM AM_SHARE("nvram") // NVRAM (Battery Backed) @@ -454,7 +454,7 @@ ADDRESS_MAP_END ***************************************************************************/ // To be done: -static ADDRESS_MAP_START( namcostr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( namcostr_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM AM_RANGE(0xc00000, 0xc3ffff) AM_RAM AM_BASE_SIZE_MEMBER(seta2_state, m_spriteram, m_spriteram_size) // Sprites @@ -480,7 +480,7 @@ static WRITE16_HANDLER( samshoot_coin_w ) // popmessage("%04x",data); } -static ADDRESS_MAP_START( samshoot_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( samshoot_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE( 0x000000, 0x1fffff ) AM_ROM AM_RANGE( 0x200000, 0x20ffff ) AM_RAM AM_RANGE( 0x300000, 0x30ffff ) AM_RAM AM_SHARE("nvram") @@ -625,7 +625,7 @@ static WRITE32_DEVICE_HANDLER( oki_write ) } -static ADDRESS_MAP_START( funcube_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( funcube_map, AS_PROGRAM, 32, seta2_state ) AM_RANGE( 0x00000000, 0x0007ffff ) AM_ROM AM_RANGE( 0x00200000, 0x0020ffff ) AM_RAM @@ -646,7 +646,7 @@ ADDRESS_MAP_END // Sub CPU -static ADDRESS_MAP_START( funcube_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( funcube_sub_map, AS_PROGRAM, 16, seta2_state ) AM_RANGE( 0x000000, 0x01ffff ) AM_ROM AM_RANGE( 0x200000, 0x20017f ) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END @@ -761,7 +761,7 @@ static WRITE8_HANDLER( funcube_outputs_w ) } -static ADDRESS_MAP_START( funcube_sub_io, AS_IO, 8 ) +static ADDRESS_MAP_START( funcube_sub_io, AS_IO, 8, seta2_state ) AM_RANGE( H8_PORT_7, H8_PORT_7 ) AM_READ( funcube_coins_r ) AM_RANGE( H8_PORT_4, H8_PORT_4 ) AM_NOP // unused AM_RANGE( H8_PORT_A, H8_PORT_A ) AM_READWRITE( funcube_outputs_r, funcube_outputs_w ) AM_BASE_MEMBER( seta2_state, m_funcube_outputs ) diff --git a/src/mame/drivers/sf.c b/src/mame/drivers/sf.c index 7456b324f0e..39105f6e812 100644 --- a/src/mame/drivers/sf.c +++ b/src/mame/drivers/sf.c @@ -189,7 +189,7 @@ static WRITE8_DEVICE_HANDLER( msm5205_w ) -static ADDRESS_MAP_START( sf_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sf_map, AS_PROGRAM, 16, sf_state ) AM_RANGE(0x000000, 0x04ffff) AM_ROM AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(sf_videoram_w) AM_BASE_SIZE_MEMBER(sf_state, m_videoram, m_videoram_size) AM_RANGE(0xb00000, 0xb007ff) AM_RAM_WRITE(paletteram16_xxxxRRRRGGGGBBBB_word_w) AM_BASE_GENERIC(paletteram) @@ -211,7 +211,7 @@ static ADDRESS_MAP_START( sf_map, AS_PROGRAM, 16 ) AM_RANGE(0xffe000, 0xffffff) AM_RAM AM_BASE_MEMBER(sf_state, m_objectram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sfus_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sfus_map, AS_PROGRAM, 16, sf_state ) AM_RANGE(0x000000, 0x04ffff) AM_ROM AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(sf_videoram_w) AM_BASE_SIZE_MEMBER(sf_state, m_videoram, m_videoram_size) AM_RANGE(0xb00000, 0xb007ff) AM_RAM_WRITE(paletteram16_xxxxRRRRGGGGBBBB_word_w) AM_BASE_GENERIC(paletteram) @@ -233,7 +233,7 @@ static ADDRESS_MAP_START( sfus_map, AS_PROGRAM, 16 ) AM_RANGE(0xffe000, 0xffffff) AM_RAM AM_BASE_MEMBER(sf_state, m_objectram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sfjp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sfjp_map, AS_PROGRAM, 16, sf_state ) AM_RANGE(0x000000, 0x04ffff) AM_ROM AM_RANGE(0x800000, 0x800fff) AM_RAM_WRITE(sf_videoram_w) AM_BASE_SIZE_MEMBER(sf_state, m_videoram, m_videoram_size) AM_RANGE(0xb00000, 0xb007ff) AM_RAM_WRITE(paletteram16_xxxxRRRRGGGGBBBB_word_w) AM_BASE_GENERIC(paletteram) @@ -255,7 +255,7 @@ static ADDRESS_MAP_START( sfjp_map, AS_PROGRAM, 16 ) AM_RANGE(0xffe000, 0xffffff) AM_RAM AM_BASE_MEMBER(sf_state, m_objectram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, sf_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc800) AM_READ(soundlatch_r) @@ -263,13 +263,13 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Yes, _no_ ram */ -static ADDRESS_MAP_START( sound2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound2_map, AS_PROGRAM, 8, sf_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") AM_RANGE(0x0000, 0xffff) AM_WRITENOP /* avoid cluttering up error.log */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound2_io_map, AS_IO, 8, sf_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("msm1", msm5205_w) AM_RANGE(0x01, 0x01) AM_DEVWRITE("msm2", msm5205_w) diff --git a/src/mame/drivers/sfbonus.c b/src/mame/drivers/sfbonus.c index 4b355f4991d..e40f433d8fd 100644 --- a/src/mame/drivers/sfbonus.c +++ b/src/mame/drivers/sfbonus.c @@ -1056,7 +1056,7 @@ static SCREEN_UPDATE_IND16(sfbonus) -static ADDRESS_MAP_START( sfbonus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sfbonus_map, AS_PROGRAM, 8, sfbonus_state ) AM_RANGE(0x0000, 0xefff) AM_ROMBANK("bank1") AM_WRITE(sfbonus_videoram_w) AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_MEMBER(sfbonus_state, m_nvram) AM_SIZE_MEMBER(sfbonus_state, m_nvram_size) ADDRESS_MAP_END @@ -1131,7 +1131,7 @@ static WRITE8_HANDLER( sfbonus_2c01_w ) } -static ADDRESS_MAP_START( sfbonus_io, AS_IO, 8 ) +static ADDRESS_MAP_START( sfbonus_io, AS_IO, 8, sfbonus_state ) AM_RANGE(0x0400, 0x0400) AM_READ_PORT("KEY1") AM_RANGE(0x0408, 0x0408) AM_READ_PORT("KEY2") AM_RANGE(0x0410, 0x0410) AM_READ_PORT("KEY3") @@ -1231,7 +1231,7 @@ static NVRAM_HANDLER( sfbonus ) } } -static ADDRESS_MAP_START( ramdac_map, AS_0, 8 ) +static ADDRESS_MAP_START( ramdac_map, AS_0, 8, sfbonus_state ) AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE_MODERN("ramdac",ramdac_device,ramdac_pal_r,ramdac_rgb666_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/sfcbox.c b/src/mame/drivers/sfcbox.c index 0f5f8250c0c..bef0e54ed53 100644 --- a/src/mame/drivers/sfcbox.c +++ b/src/mame/drivers/sfcbox.c @@ -119,7 +119,7 @@ How does the Super Famicom Box operates #include "includes/snes.h" #include "audio/snes_snd.h" -static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START( snes_map, AS_PROGRAM, 8, snes_state ) AM_RANGE(0x000000, 0x2fffff) AM_READWRITE(snes_r_bank1, snes_w_bank1) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x300000, 0x3fffff) AM_READWRITE(snes_r_bank2, snes_w_bank2) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x400000, 0x5fffff) AM_READ(snes_r_bank3) /* ROM (and reserved in Mode 20) */ @@ -140,7 +140,7 @@ static WRITE8_DEVICE_HANDLER( spc_ram_100_w ) spc_ram_w(device, offset + 0x100, data); } -static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8, snes_state ) AM_RANGE(0x0000, 0x00ef) AM_DEVREADWRITE("spc700", spc_ram_r, spc_ram_w) /* lower 32k ram */ AM_RANGE(0x00f0, 0x00ff) AM_DEVREADWRITE("spc700", spc_io_r, spc_io_w) /* spc io */ AM_RANGE(0x0100, 0xffff) AM_DEVWRITE("spc700", spc_ram_100_w) diff --git a/src/mame/drivers/sfkick.c b/src/mame/drivers/sfkick.c index 96253568e8c..a58c58763c8 100644 --- a/src/mame/drivers/sfkick.c +++ b/src/mame/drivers/sfkick.c @@ -314,7 +314,7 @@ static WRITE8_HANDLER(page3_w) -static ADDRESS_MAP_START( sfkick_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START( sfkick_map, AS_PROGRAM, 8, sfkick_state ) AM_RANGE( 0x0000, 0x1fff) AM_ROMBANK("bank1") AM_RANGE( 0x2000, 0x3fff) AM_ROMBANK("bank2") AM_RANGE( 0x4000, 0x5fff) AM_ROMBANK("bank3") @@ -329,7 +329,7 @@ static ADDRESS_MAP_START( sfkick_map, AS_PROGRAM, 8) AM_RANGE( 0xc000, 0xffff) AM_WRITE( page3_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sfkick_io_map, AS_IO, 8) +static ADDRESS_MAP_START( sfkick_io_map, AS_IO, 8, sfkick_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0xa0, 0xa7) AM_WRITE( soundlatch_w ) @@ -338,12 +338,12 @@ static ADDRESS_MAP_START( sfkick_io_map, AS_IO, 8) AM_RANGE( 0xb4, 0xb5) AM_RAM /* loopback ? req by sfkicka (MSX Bios leftover)*/ ADDRESS_MAP_END -static ADDRESS_MAP_START( sfkick_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sfkick_sound_map, AS_PROGRAM, 8, sfkick_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sfkick_sound_io_map, AS_IO, 8) +static ADDRESS_MAP_START( sfkick_sound_io_map, AS_IO, 8, sfkick_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x04, 0x05) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/sg1000a.c b/src/mame/drivers/sg1000a.c index 4f6d6824b27..4dec295974c 100644 --- a/src/mame/drivers/sg1000a.c +++ b/src/mame/drivers/sg1000a.c @@ -134,13 +134,13 @@ public: * *************************************/ -static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( program_map, AS_PROGRAM, 8, sg1000a_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // separate region needed for decrypting AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_MIRROR(0x400) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, sg1000a_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x7f, 0x7f) AM_DEVWRITE("snsnd", sn76496_w) AM_RANGE(0xbe, 0xbe) AM_DEVREADWRITE_MODERN("tms9928a", tms9928a_device, vram_read, vram_write) diff --git a/src/mame/drivers/shadfrce.c b/src/mame/drivers/shadfrce.c index 4db1acf7f10..419048b72b9 100644 --- a/src/mame/drivers/shadfrce.c +++ b/src/mame/drivers/shadfrce.c @@ -364,7 +364,7 @@ static TIMER_DEVICE_CALLBACK( shadfrce_scanline ) /* Memory Maps */ -static ADDRESS_MAP_START( shadfrce_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shadfrce_map, AS_PROGRAM, 16, shadfrce_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(shadfrce_bg0videoram_w) AM_BASE_MEMBER(shadfrce_state,m_bg0videoram) /* video */ AM_RANGE(0x101000, 0x101fff) AM_RAM @@ -399,7 +399,7 @@ static WRITE8_DEVICE_HANDLER( oki_bankswitch_w ) downcast<okim6295_device *>(device)->set_bank_base((data & 1) * 0x40000); } -static ADDRESS_MAP_START( shadfrce_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shadfrce_sound_map, AS_PROGRAM, 8, shadfrce_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/shangha3.c b/src/mame/drivers/shangha3.c index 0930a76ad9c..ac7a4f06cde 100644 --- a/src/mame/drivers/shangha3.c +++ b/src/mame/drivers/shangha3.c @@ -117,7 +117,7 @@ static WRITE16_HANDLER( heberpop_sound_command_w ) -static ADDRESS_MAP_START( shangha3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shangha3_map, AS_PROGRAM, 16, shangha3_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(paletteram16_RRRRRGGGGGBBBBBx_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x200000, 0x200001) AM_READ_PORT("INPUTS") @@ -135,7 +135,7 @@ static ADDRESS_MAP_START( shangha3_map, AS_PROGRAM, 16 ) AM_RANGE(0x360000, 0x360001) AM_WRITE(shangha3_gfxlist_addr_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( heberpop_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( heberpop_map, AS_PROGRAM, 16, shangha3_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM_WRITE(paletteram16_RRRRRGGGGGBBBBBx_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x200000, 0x200001) AM_READ_PORT("INPUTS") @@ -151,7 +151,7 @@ static ADDRESS_MAP_START( heberpop_map, AS_PROGRAM, 16 ) AM_RANGE(0x800000, 0xb7ffff) AM_READ(heberpop_gfxrom_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( blocken_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blocken_map, AS_PROGRAM, 16, shangha3_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("INPUTS") AM_RANGE(0x100002, 0x100003) AM_READ_PORT("SYSTEM") @@ -168,12 +168,12 @@ static ADDRESS_MAP_START( blocken_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( heberpop_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( heberpop_sound_map, AS_PROGRAM, 8, shangha3_state ) AM_RANGE(0x0000, 0xf7ff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( heberpop_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( heberpop_sound_io_map, AS_IO, 8, shangha3_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym3438_r, ym3438_w) AM_RANGE(0x80, 0x80) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/shanghai.c b/src/mame/drivers/shanghai.c index d8ffb062f0d..90f3f0aa808 100644 --- a/src/mame/drivers/shanghai.c +++ b/src/mame/drivers/shanghai.c @@ -132,20 +132,20 @@ static WRITE16_HANDLER( shanghai_coin_w ) } } -static ADDRESS_MAP_START( shanghai_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shanghai_map, AS_PROGRAM, 16, shanghai_state ) AM_RANGE(0x00000, 0x03fff) AM_RAM AM_RANGE(0x80000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( shangha2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shangha2_map, AS_PROGRAM, 16, shanghai_state ) AM_RANGE(0x00000, 0x03fff) AM_RAM AM_RANGE(0x04000, 0x041ff) AM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x80000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( shanghai_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( shanghai_portmap, AS_IO, 16, shanghai_state ) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("hd63484", hd63484_status_r, hd63484_address_w) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("hd63484", hd63484_data_r, hd63484_data_w) AM_RANGE(0x20, 0x23) AM_DEVREADWRITE8("ymsnd", ym2203_r, ym2203_w, 0x00ff) @@ -156,7 +156,7 @@ static ADDRESS_MAP_START( shanghai_portmap, AS_IO, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( shangha2_portmap, AS_IO, 16 ) +static ADDRESS_MAP_START( shangha2_portmap, AS_IO, 16, shanghai_state ) AM_RANGE(0x00, 0x01) AM_READ_PORT("P1") AM_RANGE(0x10, 0x11) AM_READ_PORT("P2") AM_RANGE(0x20, 0x21) AM_READ_PORT("SYSTEM") @@ -171,7 +171,7 @@ static READ16_HANDLER( kothello_hd63484_status_r ) return 0xff22; /* write FIFO ready + command end + read FIFO ready */ } -static ADDRESS_MAP_START( kothello_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kothello_map, AS_PROGRAM, 16, shanghai_state ) AM_RANGE(0x00000, 0x07fff) AM_RAM AM_RANGE(0x08010, 0x08011) AM_READ(kothello_hd63484_status_r) AM_DEVWRITE("hd63484", hd63484_address_w) AM_RANGE(0x08012, 0x08013) AM_DEVREADWRITE("hd63484", hd63484_data_r, hd63484_data_w) diff --git a/src/mame/drivers/shangkid.c b/src/mame/drivers/shangkid.c index dfa108c7570..1656014bde0 100644 --- a/src/mame/drivers/shangkid.c +++ b/src/mame/drivers/shangkid.c @@ -235,7 +235,7 @@ GFXDECODE_END /***************************************************************************************/ -static ADDRESS_MAP_START( chinhero_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chinhero_main_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITENOP /* ? */ AM_RANGE(0xb000, 0xb000) AM_WRITE(shangkid_bbx_enable_w) @@ -254,7 +254,7 @@ static ADDRESS_MAP_START( chinhero_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xfe00, 0xffff) AM_RAM AM_BASE_MEMBER(shangkid_state, m_spriteram) AM_SHARE("share3") ADDRESS_MAP_END -static ADDRESS_MAP_START( shangkid_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shangkid_main_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xa000) AM_WRITENOP /* ? */ @@ -277,7 +277,7 @@ ADDRESS_MAP_END /***************************************************************************************/ -static ADDRESS_MAP_START( chinhero_bbx_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chinhero_bbx_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITENOP /* ? */ AM_RANGE(0xb000, 0xb000) AM_WRITE(shangkid_bbx_enable_w) @@ -295,7 +295,7 @@ static ADDRESS_MAP_START( chinhero_bbx_map, AS_PROGRAM, 8 ) AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("share3") ADDRESS_MAP_END -static ADDRESS_MAP_START( shangkid_bbx_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shangkid_bbx_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITENOP /* ? */ AM_RANGE(0xb000, 0xb000) AM_WRITE(shangkid_bbx_enable_w) @@ -314,29 +314,29 @@ static ADDRESS_MAP_START( shangkid_bbx_map, AS_PROGRAM, 8 ) AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("share3") ADDRESS_MAP_END -static ADDRESS_MAP_START( chinhero_bbx_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( chinhero_bbx_portmap, AS_IO, 8, shangkid_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( shangkid_bbx_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( shangkid_bbx_portmap, AS_IO, 8, shangkid_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) ADDRESS_MAP_END /***************************************************************************************/ -static ADDRESS_MAP_START( chinhero_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chinhero_sound_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( shangkid_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shangkid_sound_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0x0000, 0xdfff) AM_ROMBANK("bank2") /* sample player writes to ROM area */ AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, shangkid_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(shangkid_soundlatch_r) AM_DEVWRITE("dac", dac_w) ADDRESS_MAP_END @@ -435,7 +435,7 @@ MACHINE_CONFIG_END -static ADDRESS_MAP_START( dynamski_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dynamski_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_MEMBER(shangkid_state, m_videoram) /* tilemap */ AM_RANGE(0xc800, 0xcbff) AM_RAM @@ -450,7 +450,7 @@ static ADDRESS_MAP_START( dynamski_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf7ff) AM_RAM /* work ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dynamski_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( dynamski_portmap, AS_IO, 8, shangkid_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) /* ports are reversed */ AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_data_address_w) diff --git a/src/mame/drivers/shaolins.c b/src/mame/drivers/shaolins.c index fed72f81cd7..49b05ff11aa 100644 --- a/src/mame/drivers/shaolins.c +++ b/src/mame/drivers/shaolins.c @@ -26,7 +26,7 @@ static TIMER_DEVICE_CALLBACK( shaolins_interrupt ) -static ADDRESS_MAP_START( shaolins_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shaolins_map, AS_PROGRAM, 8, shaolins_state ) AM_RANGE(0x0000, 0x0000) AM_WRITE(shaolins_nmi_w) /* bit 0 = flip screen, bit 1 = nmi enable, bit 2 = ? */ /* bit 3, bit 4 = coin counters */ AM_RANGE(0x0100, 0x0100) AM_WRITE(watchdog_reset_w) diff --git a/src/mame/drivers/shisen.c b/src/mame/drivers/shisen.c index d53bb925c1d..c99375708df 100644 --- a/src/mame/drivers/shisen.c +++ b/src/mame/drivers/shisen.c @@ -42,7 +42,7 @@ static WRITE8_HANDLER( sichuan2_coin_w ) -static ADDRESS_MAP_START( shisen_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shisen_map, AS_PROGRAM, 8, shisen_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc800, 0xcaff) AM_RAM_WRITE(sichuan2_paletteram_w) AM_BASE_MEMBER(shisen_state, m_paletteram) @@ -50,7 +50,7 @@ static ADDRESS_MAP_START( shisen_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( shisen_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( shisen_io_map, AS_IO, 8, shisen_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(sichuan2_dsw1_r, sichuan2_coin_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2") AM_DEVWRITE("m72", m72_sound_command_byte_w) @@ -59,12 +59,12 @@ static ADDRESS_MAP_START( shisen_io_map, AS_IO, 8 ) AM_RANGE(0x04, 0x04) AM_READ_PORT("COIN") ADDRESS_MAP_END -static ADDRESS_MAP_START( shisen_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shisen_sound_map, AS_PROGRAM, 8, shisen_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0xfd00, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( shisen_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( shisen_sound_io_map, AS_IO, 8, shisen_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x80, 0x80) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/shootout.c b/src/mame/drivers/shootout.c index ce66c3049a0..88872743754 100644 --- a/src/mame/drivers/shootout.c +++ b/src/mame/drivers/shootout.c @@ -64,7 +64,7 @@ static WRITE8_HANDLER( shootout_coin_counter_w ) /*******************************************************************************/ -static ADDRESS_MAP_START( shootout_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shootout_map, AS_PROGRAM, 8, shootout_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READ_PORT("DSW1") AM_WRITE(shootout_bankswitch_w) AM_RANGE(0x1001, 0x1001) AM_READ_PORT("P1") AM_WRITE(shootout_flipscreen_w) @@ -78,7 +78,7 @@ static ADDRESS_MAP_START( shootout_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( shootouj_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shootouj_map, AS_PROGRAM, 8, shootout_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READ_PORT("DSW1") AM_RANGE(0x1001, 0x1001) AM_READ_PORT("P1") @@ -96,7 +96,7 @@ ADDRESS_MAP_END /*******************************************************************************/ /* same as Tryout */ -static ADDRESS_MAP_START( shootout_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shootout_sound_map, AS_PROGRAM, 8, shootout_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2203_r,ym2203_w) AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/shougi.c b/src/mame/drivers/shougi.c index a819b1b8f05..b43b804b5ab 100644 --- a/src/mame/drivers/shougi.c +++ b/src/mame/drivers/shougi.c @@ -274,7 +274,7 @@ static INTERRUPT_GEN( shougi_vblank_nmi ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, shougi_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM /* 2114 x 2 (0x400 x 4bit each) */ @@ -314,17 +314,17 @@ static READ8_HANDLER ( dummy_r ) return 0; } -static ADDRESS_MAP_START( readport_sub, AS_IO, 8 ) +static ADDRESS_MAP_START( readport_sub, AS_IO, 8, shougi_state ) ADDRESS_MAP_GLOBAL_MASK( 0x00ff ) AM_RANGE(0x00, 0x00) AM_READ(dummy_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, shougi_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM AM_SHARE("share2") /* 2114 x 2 (0x400 x 4bit each) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, shougi_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END diff --git a/src/mame/drivers/shtzone.c b/src/mame/drivers/shtzone.c index 25eb0f07722..5386b791b79 100644 --- a/src/mame/drivers/shtzone.c +++ b/src/mame/drivers/shtzone.c @@ -57,7 +57,7 @@ public: : driver_device(mconfig, type, tag) { } }; -static ADDRESS_MAP_START( shtzone_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( shtzone_map, AS_PROGRAM, 8, shtzone_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x5fff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/shuuz.c b/src/mame/drivers/shuuz.c index 36373201e72..3419fac4835 100644 --- a/src/mame/drivers/shuuz.c +++ b/src/mame/drivers/shuuz.c @@ -138,7 +138,7 @@ static READ16_HANDLER( special_port0_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, shuuz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") AM_RANGE(0x101000, 0x101fff) AM_WRITE(atarigen_eeprom_enable_w) diff --git a/src/mame/drivers/sidearms.c b/src/mame/drivers/sidearms.c index 5cb692d13d6..a440c3bba4b 100644 --- a/src/mame/drivers/sidearms.c +++ b/src/mame/drivers/sidearms.c @@ -69,7 +69,7 @@ static READ8_HANDLER( turtship_ports_r ) } -static ADDRESS_MAP_START( sidearms_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sidearms_map, AS_PROGRAM, 8, sidearms_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(paletteram_xxxxBBBBRRRRGGGG_split1_w) AM_BASE_GENERIC(paletteram) @@ -90,7 +90,7 @@ static ADDRESS_MAP_START( sidearms_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END -static ADDRESS_MAP_START( turtship_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( turtship_map, AS_PROGRAM, 8, sidearms_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -111,7 +111,7 @@ static ADDRESS_MAP_START( turtship_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(sidearms_colorram_w) AM_BASE_MEMBER(sidearms_state,m_colorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sidearms_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sidearms_sound_map, AS_PROGRAM, 8, sidearms_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd000) AM_READ(soundlatch_r) @@ -139,7 +139,7 @@ static WRITE8_HANDLER( whizz_bankswitch_w ) memory_set_bankptr(space->machine(), "bank1",&RAM[bankaddress]); } -static ADDRESS_MAP_START( whizz_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( whizz_map, AS_PROGRAM, 8, sidearms_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(paletteram_xxxxBBBBRRRRGGGG_split1_w) AM_BASE_GENERIC(paletteram) @@ -163,12 +163,12 @@ static ADDRESS_MAP_START( whizz_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END -static ADDRESS_MAP_START( whizz_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( whizz_sound_map, AS_PROGRAM, 8, sidearms_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( whizz_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( whizz_io_map, AS_IO, 8, sidearms_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x40, 0x40) AM_WRITENOP diff --git a/src/mame/drivers/sidepckt.c b/src/mame/drivers/sidepckt.c index 1c81d6b01bf..249a6ed3350 100644 --- a/src/mame/drivers/sidepckt.c +++ b/src/mame/drivers/sidepckt.c @@ -227,7 +227,7 @@ static WRITE8_HANDLER( sidepctj_i8751_w ) /******************************************************************************/ -static ADDRESS_MAP_START( sidepckt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sidepckt_map, AS_PROGRAM, 8, sidepckt_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(sidepckt_videoram_w) AM_BASE_MEMBER(sidepckt_state,m_videoram) AM_SIZE_MEMBER(sidepckt_state,m_videoram_size) AM_RANGE(0x1400, 0x17ff) AM_RAM // ??? @@ -246,7 +246,7 @@ static ADDRESS_MAP_START( sidepckt_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, sidepckt_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ym2", ym3526_w) diff --git a/src/mame/drivers/sigmab52.c b/src/mame/drivers/sigmab52.c index b2c6118e42c..a54967c04f8 100644 --- a/src/mame/drivers/sigmab52.c +++ b/src/mame/drivers/sigmab52.c @@ -303,7 +303,7 @@ static READ8_HANDLER(unk_f721_r) * Memory Maps * *************************/ -static ADDRESS_MAP_START( jwildb52_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jwildb52_map, AS_PROGRAM, 8, sigmab52_state ) AM_RANGE(0x0000, 0x3fff) AM_RAM AM_RANGE(0x4000, 0x7fff) AM_RAMBANK("bank1") @@ -348,7 +348,7 @@ ADDRESS_MAP_END */ #ifdef UNUSED_CODE -static ADDRESS_MAP_START( sound_prog_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_prog_map, AS_PROGRAM, 8, sigmab52_state ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END #endif diff --git a/src/mame/drivers/sigmab98.c b/src/mame/drivers/sigmab98.c index d83927023e9..d1be1f32267 100644 --- a/src/mame/drivers/sigmab98.c +++ b/src/mame/drivers/sigmab98.c @@ -450,7 +450,7 @@ static WRITE8_HANDLER( c8_w ) show_outputs(state); } -static ADDRESS_MAP_START( gegege_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gegege_mem_map, AS_PROGRAM, 8, sigmab98_state ) AM_RANGE( 0x0000, 0x7fff ) AM_ROM AM_RANGE( 0x8000, 0x9fff ) AM_ROMBANK("rombank") @@ -468,7 +468,7 @@ static ADDRESS_MAP_START( gegege_mem_map, AS_PROGRAM, 8 ) AM_RANGE( 0xf000, 0xffff ) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( gegege_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( gegege_io_map, AS_IO, 8, sigmab98_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x01 ) AM_DEVWRITE( "ymz", ymz280b_w ) @@ -702,7 +702,7 @@ static READ8_HANDLER( sammymdl_coin_hopper_r ) return ret; } -static ADDRESS_MAP_START( animalc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( animalc_map, AS_PROGRAM, 8, sigmab98_state ) AM_RANGE( 0x0000, 0x3fff ) AM_ROM AM_RANGE( 0x4000, 0x7fff ) AM_ROMBANK( "rombank" ) AM_RANGE( 0x8000, 0x8fff ) AM_RAMBANK( "rambank" ) AM_SHARE( "nvram" ) AM_BASE_MEMBER( sigmab98_state, m_nvram ) @@ -720,7 +720,7 @@ static ADDRESS_MAP_START( animalc_map, AS_PROGRAM, 8 ) AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( animalc_io, AS_IO, 8 ) +static ADDRESS_MAP_START( animalc_io, AS_IO, 8, sigmab98_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x02, 0x03 ) AM_READWRITE( animalc_rombank_r, animalc_rombank_w ) AM_RANGE( 0x04, 0x05 ) AM_READWRITE( animalc_rambank_r, animalc_rambank_w ) @@ -954,14 +954,14 @@ static WRITE8_HANDLER( haekaka_coin_w ) show_3_outputs(state); } -static ADDRESS_MAP_START( haekaka_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( haekaka_map, AS_PROGRAM, 8, sigmab98_state ) AM_RANGE( 0x0000, 0x7fff ) AM_ROM AM_RANGE( 0xb000, 0xcfff ) AM_READWRITE( haekaka_b000_r, haekaka_b000_w ) AM_RANGE( 0xd000, 0xefff ) AM_RAM AM_SHARE( "nvram" ) AM_BASE_MEMBER( sigmab98_state, m_nvram ) AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( haekaka_io, AS_IO, 8 ) +static ADDRESS_MAP_START( haekaka_io, AS_IO, 8, sigmab98_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x02, 0x03 ) AM_READWRITE( haekaka_rombank_r, haekaka_rombank_w ) AM_RANGE( 0x04, 0x05 ) AM_READWRITE( haekaka_rambank_r, haekaka_rambank_w ) @@ -1190,7 +1190,7 @@ static READ8_HANDLER( itazuram_palette_r ) return space->machine().generic.paletteram.u8[offset]; } -static ADDRESS_MAP_START( itazuram_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( itazuram_map, AS_PROGRAM, 8, sigmab98_state ) AM_RANGE( 0x0000, 0x37ff ) AM_ROM AM_RANGE( 0x3800, 0x47ff ) AM_READ_BANK( "rombank0" ) AM_WRITE_BANK( "sprbank0" ) AM_RANGE( 0x4800, 0x57ff ) AM_READ_BANK( "rombank1" ) AM_WRITE_BANK( "sprbank1" ) @@ -1205,7 +1205,7 @@ static ADDRESS_MAP_START( itazuram_map, AS_PROGRAM, 8 ) AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( itazuram_io, AS_IO, 8 ) +static ADDRESS_MAP_START( itazuram_io, AS_IO, 8, sigmab98_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x02, 0x03 ) AM_READWRITE( itazuram_rombank_r, itazuram_rombank_w ) AM_RANGE( 0x04, 0x05 ) AM_READWRITE( itazuram_rambank_r, itazuram_rambank_w ) @@ -1226,7 +1226,7 @@ ADDRESS_MAP_END Pye-nage Taikai ***************************************************************************/ -static ADDRESS_MAP_START( pyenaget_io, AS_IO, 8 ) +static ADDRESS_MAP_START( pyenaget_io, AS_IO, 8, sigmab98_state ) AM_RANGE( 0x31, 0x31 ) AM_WRITE( sammymdl_coin_w ) AM_IMPORT_FROM( haekaka_io ) ADDRESS_MAP_END @@ -1418,14 +1418,14 @@ static WRITE8_HANDLER( tdoboon_c000_w ) logerror("%s: unknown write to %02x = %02x with rombank = %02x\n", space->machine().describe_context(), offset+0xc000, data, state->m_rombank); } -static ADDRESS_MAP_START( tdoboon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tdoboon_map, AS_PROGRAM, 8, sigmab98_state ) AM_RANGE( 0x0000, 0xbfff ) AM_ROM AM_RANGE( 0xc000, 0xcfff ) AM_READWRITE( tdoboon_c000_r, tdoboon_c000_w ) AM_RANGE( 0xd000, 0xefff ) AM_RAM AM_SHARE( "nvram" ) AM_BASE_MEMBER( sigmab98_state, m_nvram ) AM_RANGE( 0xfe00, 0xffff ) AM_RAM // High speed internal RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tdoboon_io, AS_IO, 8 ) +static ADDRESS_MAP_START( tdoboon_io, AS_IO, 8, sigmab98_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x02, 0x03 ) AM_READWRITE( tdoboon_rombank_r, tdoboon_rombank_w ) AM_RANGE( 0x04, 0x05 ) AM_READWRITE( tdoboon_rambank_r, tdoboon_rambank_w ) diff --git a/src/mame/drivers/silkroad.c b/src/mame/drivers/silkroad.c index 5e710a55c3b..f8ea17301f0 100644 --- a/src/mame/drivers/silkroad.c +++ b/src/mame/drivers/silkroad.c @@ -152,7 +152,7 @@ static WRITE32_HANDLER(silk_coin_counter_w) } } -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 32, silkroad_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x40c000, 0x40cfff) AM_RAM AM_BASE_MEMBER(silkroad_state,m_sprram) // sprites AM_RANGE(0x600000, 0x603fff) AM_RAM_WRITE(paletteram32_xRRRRRGGGGGBBBBB_dword_w) AM_BASE_GENERIC(paletteram) // palette diff --git a/src/mame/drivers/simpl156.c b/src/mame/drivers/simpl156.c index bdb68f900ce..77986601d9d 100644 --- a/src/mame/drivers/simpl156.c +++ b/src/mame/drivers/simpl156.c @@ -248,7 +248,7 @@ static WRITE32_HANDLER( simpl156_pf2_rowscroll_w ) /* Memory Map controled by PALs */ /* Joe and Mac Returns */ -static ADDRESS_MAP_START( joemacr_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( joemacr_map, AS_PROGRAM, 32, simpl156_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x107fff) AM_READWRITE(simpl156_mainram_r, simpl156_mainram_w) AM_BASE_MEMBER(simpl156_state, m_mainram) // main ram AM_RANGE(0x110000, 0x111fff) AM_READWRITE(simpl156_spriteram_r, simpl156_spriteram_w) @@ -269,7 +269,7 @@ ADDRESS_MAP_END /* Chain Reaction */ -static ADDRESS_MAP_START( chainrec_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( chainrec_map, AS_PROGRAM, 32, simpl156_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM // rom (32-bit) AM_RANGE(0x200000, 0x200003) AM_READ(simpl156_inputs_read) AM_RANGE(0x201000, 0x201fff) AM_RAM AM_BASE_MEMBER(simpl156_state, m_systemram) // work ram (32-bit) @@ -290,7 +290,7 @@ ADDRESS_MAP_END /* Magical Drop */ -static ADDRESS_MAP_START( magdrop_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( magdrop_map, AS_PROGRAM, 32, simpl156_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x200003) AM_READ(simpl156_inputs_read) AM_RANGE(0x201000, 0x201fff) AM_RAM AM_BASE_MEMBER(simpl156_state, m_systemram) // work ram (32-bit) @@ -311,7 +311,7 @@ ADDRESS_MAP_END /* Magical Drop Plus 1 */ -static ADDRESS_MAP_START( magdropp_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( magdropp_map, AS_PROGRAM, 32, simpl156_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x200003) AM_READ(simpl156_inputs_read) AM_RANGE(0x201000, 0x201fff) AM_RAM AM_BASE_MEMBER(simpl156_state, m_systemram) // work ram (32-bit) @@ -332,7 +332,7 @@ ADDRESS_MAP_END /* Mitchell MT5601-0 PCB (prtytime, charlien, osman) */ -static ADDRESS_MAP_START( mitchell156_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( mitchell156_map, AS_PROGRAM, 32, simpl156_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100003) AM_DEVREADWRITE8_MODERN("okisfx", okim6295_device, read, write, 0x000000ff) AM_RANGE(0x140000, 0x140003) AM_DEVREADWRITE8_MODERN("okimusic", okim6295_device, read, write, 0x000000ff) diff --git a/src/mame/drivers/simpsons.c b/src/mame/drivers/simpsons.c index 257d03f1873..7a2abafe1e1 100644 --- a/src/mame/drivers/simpsons.c +++ b/src/mame/drivers/simpsons.c @@ -83,7 +83,7 @@ Custom ICs - 053260 - sound chip (QFP80) ***************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, simpsons_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1f80, 0x1f80) AM_READ_PORT("COIN") AM_RANGE(0x1f81, 0x1f81) AM_READ_PORT("TEST") @@ -133,7 +133,7 @@ static WRITE8_HANDLER( z80_arm_nmi_w ) space->machine().scheduler().timer_set(attotime::from_usec(25), FUNC(nmi_callback)); /* kludge until the K053260 is emulated correctly */ } -static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, simpsons_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0xf000, 0xf7ff) AM_RAM diff --git a/src/mame/drivers/skeetsht.c b/src/mame/drivers/skeetsht.c index edc28386e52..a724efb1287 100644 --- a/src/mame/drivers/skeetsht.c +++ b/src/mame/drivers/skeetsht.c @@ -169,14 +169,14 @@ static WRITE8_HANDLER( ay8910_w ) * *************************************/ -static ADDRESS_MAP_START( hc11_pgm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hc11_pgm_map, AS_PROGRAM, 8, skeetsht_state ) AM_RANGE(0x2800, 0x2807) AM_READWRITE(tms_r, tms_w) AM_RANGE(0x1800, 0x1800) AM_WRITE(ay8910_w) AM_RANGE(0xb600, 0xbdff) AM_RAM //internal EEPROM AM_RANGE(0x0000, 0xffff) AM_ROM AM_REGION("68hc11", 0) ADDRESS_MAP_END -static ADDRESS_MAP_START( hc11_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hc11_io_map, AS_IO, 8, skeetsht_state ) AM_RANGE(MC68HC11_IO_PORTA, MC68HC11_IO_PORTA) AM_READWRITE(hc11_porta_r, hc11_porta_w) ADDRESS_MAP_END @@ -187,7 +187,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, skeetsht_state ) AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE(tms34010_io_register_r, tms34010_io_register_w) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(skeetsht_state,m_tms_vram) AM_RANGE(0x00440000, 0x004fffff) AM_READWRITE(ramdac_r, ramdac_w) diff --git a/src/mame/drivers/skimaxx.c b/src/mame/drivers/skimaxx.c index 3324ac37825..aa7130ebad1 100644 --- a/src/mame/drivers/skimaxx.c +++ b/src/mame/drivers/skimaxx.c @@ -308,7 +308,7 @@ static READ32_HANDLER( skimaxx_analog_r ) * *************************************/ -static ADDRESS_MAP_START( 68030_1_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( 68030_1_map, AS_PROGRAM, 32, skimaxx_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_RANGE(0x10000000, 0x10000003) AM_WRITE( skimaxx_sub_ctrl_w ) AM_RANGE(0x10100000, 0x1010000f) AM_READWRITE(m68k_tms_r, m68k_tms_w)//AM_NOP @@ -341,7 +341,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( 68030_2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( 68030_2_map, AS_PROGRAM, 32, skimaxx_state ) AM_RANGE(0x00000000, 0x003fffff) AM_ROM AM_RANGE(0x20000000, 0x2007ffff) AM_READ ( skimaxx_blitter_r ) // do blit @@ -365,7 +365,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, skimaxx_state ) AM_RANGE(0x00000000, 0x000100ff) AM_RAM AM_RANGE(0x00008000, 0x0003ffff) AM_RAM AM_RANGE(0x00050000, 0x0005ffff) AM_RAM diff --git a/src/mame/drivers/skullxbo.c b/src/mame/drivers/skullxbo.c index 41b1999e393..ebc2563fb9e 100644 --- a/src/mame/drivers/skullxbo.c +++ b/src/mame/drivers/skullxbo.c @@ -125,7 +125,7 @@ static WRITE16_HANDLER( skullxbo_mobwr_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, skullxbo_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0xff0000, 0xff07ff) AM_WRITE(skullxbo_mobmsb_w) AM_RANGE(0xff0800, 0xff0bff) AM_WRITE(skullxbo_halt_until_hblank_0_w) diff --git a/src/mame/drivers/skyarmy.c b/src/mame/drivers/skyarmy.c index 80da277bd19..7fcc2483821 100644 --- a/src/mame/drivers/skyarmy.c +++ b/src/mame/drivers/skyarmy.c @@ -162,7 +162,7 @@ static WRITE8_HANDLER( nmi_enable_w ) } -static ADDRESS_MAP_START( skyarmy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( skyarmy_map, AS_PROGRAM, 8, skyarmy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(skyarmy_videoram_w) AM_BASE_MEMBER(skyarmy_state,m_videoram) /* Video RAM */ @@ -179,7 +179,7 @@ static ADDRESS_MAP_START( skyarmy_map, AS_PROGRAM, 8 ) AM_RANGE(0xa007, 0xa007) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( skyarmy_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( skyarmy_io_map, AS_IO, 8, skyarmy_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x04, 0x05) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x06, 0x06) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/skydiver.c b/src/mame/drivers/skydiver.c index 8dca7f43bc4..b32a6235cdf 100644 --- a/src/mame/drivers/skydiver.c +++ b/src/mame/drivers/skydiver.c @@ -186,7 +186,7 @@ static WRITE8_DEVICE_HANDLER( skydiver_whistle_w ) * *************************************/ -static ADDRESS_MAP_START( skydiver_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( skydiver_map, AS_PROGRAM, 8, skydiver_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x4300) AM_READWRITE(skydiver_wram_r, skydiver_wram_w) AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x4000) AM_RAM /* RAM B1 */ diff --git a/src/mame/drivers/skyfox.c b/src/mame/drivers/skyfox.c index 6c0ee953211..a4aee79985d 100644 --- a/src/mame/drivers/skyfox.c +++ b/src/mame/drivers/skyfox.c @@ -35,7 +35,7 @@ Verified Dip locations and recommended settings with manual Sky Fox ***************************************************************************/ -static ADDRESS_MAP_START( skyfox_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( skyfox_map, AS_PROGRAM, 8, skyfox_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM // ROM AM_RANGE(0xc000, 0xcfff) AM_RAM // RAM AM_RANGE(0xd000, 0xd3ff) AM_RAM AM_BASE_SIZE_MEMBER(skyfox_state, m_spriteram, m_spriteram_size) // Sprites @@ -63,7 +63,7 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( skyfox_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( skyfox_sound_map, AS_PROGRAM, 8, skyfox_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0x87ff) AM_RAM // RAM // AM_RANGE(0x9000, 0x9001) AM_WRITENOP // ?? diff --git a/src/mame/drivers/skykid.c b/src/mame/drivers/skykid.c index 27ddbb58bfc..65d92cf2f34 100644 --- a/src/mame/drivers/skykid.c +++ b/src/mame/drivers/skykid.c @@ -103,7 +103,7 @@ static MACHINE_START( skykid ) -static ADDRESS_MAP_START( skykid_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( skykid_map, AS_PROGRAM, 8, skykid_state ) AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") /* banked ROM */ AM_RANGE(0x2000, 0x2fff) AM_READWRITE(skykid_videoram_r,skykid_videoram_w) AM_BASE_MEMBER(skykid_state, m_videoram)/* Video RAM (background) */ AM_RANGE(0x4000, 0x47ff) AM_READWRITE(skykid_textram_r,skykid_textram_w) AM_BASE_MEMBER(skykid_state, m_textram) /* video RAM (text layer) */ @@ -119,7 +119,7 @@ static ADDRESS_MAP_START( skykid_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xa001) AM_WRITE(skykid_flipscreen_priority_w) /* flip screen & priority */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, skykid_state ) AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r, m6801_io_w) AM_RANGE(0x0080, 0x00ff) AM_RAM AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namcos1_cus30_r, namcos1_cus30_w) /* PSG device, shared RAM */ @@ -136,7 +136,7 @@ static READ8_HANDLER( readFF ) return 0xff; } -static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_port_map, AS_IO, 8, skykid_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ(inputport_r) /* input ports read */ AM_RANGE(M6801_PORT1, M6801_PORT1) AM_WRITE(inputport_select_w) /* input port select */ AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) /* leds won't work otherwise */ diff --git a/src/mame/drivers/skylncr.c b/src/mame/drivers/skylncr.c index 45369f0c55a..22dabacc5ec 100644 --- a/src/mame/drivers/skylncr.c +++ b/src/mame/drivers/skylncr.c @@ -342,7 +342,7 @@ static WRITE8_HANDLER( skylncr_nmi_enable_w ) * Memory Map * **************************************/ -static ADDRESS_MAP_START( mem_map_skylncr, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mem_map_skylncr, AS_PROGRAM, 8, skylncr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") @@ -400,7 +400,7 @@ static ADDRESS_MAP_START( mem_map_skylncr, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map_skylncr, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map_skylncr, AS_IO, 8, skylncr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) /* Input Ports */ diff --git a/src/mame/drivers/skyraid.c b/src/mame/drivers/skyraid.c index 1441ac8d8d5..419a8a7e37e 100644 --- a/src/mame/drivers/skyraid.c +++ b/src/mame/drivers/skyraid.c @@ -72,7 +72,7 @@ static WRITE8_HANDLER( skyraid_scroll_w ) } -static ADDRESS_MAP_START( skyraid_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( skyraid_map, AS_PROGRAM, 8, skyraid_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x300) AM_RANGE(0x0400, 0x040f) AM_WRITEONLY AM_BASE_MEMBER(skyraid_state, m_pos_ram) AM_RANGE(0x0800, 0x087f) AM_RAM AM_MIRROR(0x480) AM_BASE_MEMBER(skyraid_state, m_alpha_num_ram) diff --git a/src/mame/drivers/slapfght.c b/src/mame/drivers/slapfght.c index 68844cdfd6b..300ff194c9d 100644 --- a/src/mame/drivers/slapfght.c +++ b/src/mame/drivers/slapfght.c @@ -269,7 +269,7 @@ Stephh's notes (based on the games Z80 code and some tests) : #include "includes/slapfght.h" -static ADDRESS_MAP_START( perfrman_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( perfrman_map, AS_PROGRAM, 8, slapfght_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE("share1") @@ -279,7 +279,7 @@ static ADDRESS_MAP_START( perfrman_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END -static ADDRESS_MAP_START( tigerh_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tigerh_map, AS_PROGRAM, 8, slapfght_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1") @@ -294,7 +294,7 @@ static ADDRESS_MAP_START( tigerh_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(slapfight_fixcol_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixcolorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( slapfght_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slapfght_map, AS_PROGRAM, 8, slapfght_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -311,7 +311,7 @@ static ADDRESS_MAP_START( slapfght_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(slapfight_fixcol_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixcolorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( slapfighb2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slapfighb2_map, AS_PROGRAM, 8, slapfght_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -328,7 +328,7 @@ static ADDRESS_MAP_START( slapfighb2_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(slapfight_fixcol_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixcolorram) ADDRESS_MAP_END -static ADDRESS_MAP_START( slapfght_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( slapfght_io_map, AS_IO, 8, slapfght_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(slapfight_port_00_w) AM_RANGE(0x01, 0x01) AM_WRITE(slapfight_port_01_w) @@ -341,7 +341,7 @@ static ADDRESS_MAP_START( slapfght_io_map, AS_IO, 8 ) AM_RANGE(0x0c, 0x0d) AM_WRITE(slapfight_palette_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( slapfight_m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slapfight_m68705_map, AS_PROGRAM, 8, slapfght_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(slapfight_68705_portA_r, slapfight_68705_portA_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(slapfight_68705_portB_r, slapfight_68705_portB_w) @@ -358,7 +358,7 @@ static READ8_HANDLER(tigerh_status_r) return (slapfight_port_00_r(space, 0) & 0xf9)| ((tigerh_mcu_status_r(space, 0))); } -static ADDRESS_MAP_START( tigerh_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tigerh_io_map, AS_IO, 8, slapfght_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(tigerh_status_r, slapfight_port_00_w) /* status register */ AM_RANGE(0x01, 0x01) AM_WRITE(slapfight_port_01_w) @@ -367,7 +367,7 @@ static ADDRESS_MAP_START( tigerh_io_map, AS_IO, 8 ) AM_RANGE(0x07, 0x07) AM_WRITE(slapfight_port_07_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( tigerhb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tigerhb_io_map, AS_IO, 8, slapfght_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(slapfight_port_00_r, slapfight_port_00_w) /* status register */ AM_RANGE(0x01, 0x01) AM_WRITE(slapfight_port_01_w) @@ -376,7 +376,7 @@ static ADDRESS_MAP_START( tigerhb_io_map, AS_IO, 8 ) AM_RANGE(0x07, 0x07) AM_WRITE(slapfight_port_07_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( tigerh_m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tigerh_m68705_map, AS_PROGRAM, 8, slapfght_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(tigerh_68705_portA_r,tigerh_68705_portA_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(tigerh_68705_portB_r,tigerh_68705_portB_w) @@ -388,7 +388,7 @@ static ADDRESS_MAP_START( tigerh_m68705_map, AS_PROGRAM, 8 ) AM_RANGE(0x0080, 0x07ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( perfrman_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( perfrman_sound_map, AS_PROGRAM, 8, slapfght_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE("share1") AM_RANGE(0x8810, 0x8fff) AM_RAMBANK("bank1") /* Shared RAM with main CPU */ @@ -402,7 +402,7 @@ static ADDRESS_MAP_START( perfrman_sound_map, AS_PROGRAM, 8 ) // AM_RANGE(0xa0f0, 0xa0f0) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( slapfght_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slapfght_sound_map, AS_PROGRAM, 8, slapfght_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xa080, 0xa080) AM_DEVWRITE("ay1", ay8910_address_w) AM_RANGE(0xa081, 0xa081) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/slapshot.c b/src/mame/drivers/slapshot.c index d785ce036d9..2f20141b270 100644 --- a/src/mame/drivers/slapshot.c +++ b/src/mame/drivers/slapshot.c @@ -289,7 +289,7 @@ static READ16_HANDLER( slapshot_msb_sound_r ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( slapshot_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( slapshot_map, AS_PROGRAM, 16, slapshot_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x500000, 0x50ffff) AM_RAM /* main RAM */ AM_RANGE(0x600000, 0x60ffff) AM_RAM AM_BASE_SIZE_MEMBER(slapshot_state, m_spriteram, m_spriteram_size) /* sprite ram */ @@ -304,7 +304,7 @@ static ADDRESS_MAP_START( slapshot_map, AS_PROGRAM, 16 ) AM_RANGE(0xd00000, 0xd00003) AM_READWRITE(slapshot_msb_sound_r, slapshot_msb_sound_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( opwolf3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( opwolf3_map, AS_PROGRAM, 16, slapshot_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x500000, 0x50ffff) AM_RAM /* main RAM */ AM_RANGE(0x600000, 0x60ffff) AM_RAM AM_BASE_SIZE_MEMBER(slapshot_state, m_spriteram, m_spriteram_size) /* sprite ram */ @@ -323,7 +323,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( opwolf3_z80_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( opwolf3_z80_sound_map, AS_PROGRAM, 8, slapshot_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/sliver.c b/src/mame/drivers/sliver.c index 96b649c8641..6af45aa2bae 100644 --- a/src/mame/drivers/sliver.c +++ b/src/mame/drivers/sliver.c @@ -314,7 +314,7 @@ static WRITE16_HANDLER(sound_w) cputag_set_input_line(space->machine(), "audiocpu", MCS51_INT0_LINE, HOLD_LINE); } -static ADDRESS_MAP_START( sliver_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sliver_map, AS_PROGRAM, 16, sliver_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVWRITE8_MODERN("ramdac", ramdac_device, index_w, 0x00ff) @@ -351,11 +351,11 @@ static WRITE8_HANDLER(oki_setbank) memcpy(sound+0x20000, sound+0x100000+0x20000*bank, 0x20000); } -static ADDRESS_MAP_START( soundmem_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( soundmem_prg, AS_PROGRAM, 8, sliver_state ) AM_RANGE(0x0000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( soundmem_io, AS_IO, 8 ) +static ADDRESS_MAP_START( soundmem_io, AS_IO, 8, sliver_state ) AM_RANGE(0x0100, 0x0100) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x0101, 0x0101) AM_READ(soundlatch_r) /* ports */ @@ -449,7 +449,7 @@ static INPUT_PORTS_START( sliver ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) INPUT_PORTS_END -static ADDRESS_MAP_START( ramdac_map, AS_0, 8 ) +static ADDRESS_MAP_START( ramdac_map, AS_0, 8, sliver_state ) AM_RANGE(0x000, 0x3ff) AM_RAM AM_BASE_MEMBER(sliver_state,m_colorram) ADDRESS_MAP_END diff --git a/src/mame/drivers/slotcarn.c b/src/mame/drivers/slotcarn.c index 0fb393ad907..2761e4b4000 100644 --- a/src/mame/drivers/slotcarn.c +++ b/src/mame/drivers/slotcarn.c @@ -179,7 +179,7 @@ static const mc6845_interface mc6845_intf = * Memory Map * *******************************/ -static ADDRESS_MAP_START( slotcarn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slotcarn_map, AS_PROGRAM, 8, slotcarn_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_BASE_MEMBER(slotcarn_state, m_backup_ram) AM_RANGE(0x6800, 0x6fff) AM_RAM // spielbud @@ -207,7 +207,7 @@ static ADDRESS_MAP_START( slotcarn_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END // spielbud - is the ay mirrored, or are there now 2? -static ADDRESS_MAP_START( spielbud_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spielbud_io_map, AS_IO, 8, slotcarn_state ) AM_RANGE(0xb000, 0xb000) AM_DEVWRITE("aysnd", ay8910_address_w) AM_RANGE(0xb100, 0xb100) AM_DEVWRITE("aysnd", ay8910_data_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/sms.c b/src/mame/drivers/sms.c index bd87c063879..d54fdcc052d 100644 --- a/src/mame/drivers/sms.c +++ b/src/mame/drivers/sms.c @@ -494,7 +494,7 @@ static PALETTE_INIT( sms ) * *************************************/ -static ADDRESS_MAP_START( sms_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sms_map, AS_PROGRAM, 8, smsmfg_state ) AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x00800, 0x00803) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) AM_RANGE(0x01000, 0x01007) AM_WRITE(video_w) @@ -505,7 +505,7 @@ static ADDRESS_MAP_START( sms_map, AS_PROGRAM, 8 ) AM_RANGE(0xf8000, 0xfffff) AM_ROM // mirror for vectors ADDRESS_MAP_END -static ADDRESS_MAP_START( sureshot_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sureshot_map, AS_PROGRAM, 8, smsmfg_state ) AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x02000, 0x02007) AM_WRITE(video_w) AM_RANGE(0x03000, 0x03003) AM_DEVREADWRITE("ppi8255_0", ppi8255_r, ppi8255_w) @@ -514,7 +514,7 @@ static ADDRESS_MAP_START( sureshot_map, AS_PROGRAM, 8 ) AM_RANGE(0xf8000, 0xfffff) AM_ROM // mirror for vectors ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, smsmfg_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x27ff) AM_RAM AM_RANGE(0x3100, 0x3103) AM_DEVREADWRITE("ppi8255_1", ppi8255_r, ppi8255_w) diff --git a/src/mame/drivers/snesb.c b/src/mame/drivers/snesb.c index a4457ed95e1..fb1c0de9a5c 100644 --- a/src/mame/drivers/snesb.c +++ b/src/mame/drivers/snesb.c @@ -275,7 +275,7 @@ static READ8_HANDLER(denseib_770079_r) -static ADDRESS_MAP_START( snesb_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START( snesb_map, AS_PROGRAM, 8, snesb_state ) AM_RANGE(0x000000, 0x2fffff) AM_READWRITE(snes_r_bank1, snes_w_bank1) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x300000, 0x3fffff) AM_READWRITE(snes_r_bank2, snes_w_bank2) /* I/O and ROM (repeats for each bank) */ AM_RANGE(0x400000, 0x5fffff) AM_READ(snes_r_bank3) /* ROM (and reserved in Mode 20) */ @@ -297,7 +297,7 @@ static WRITE8_DEVICE_HANDLER( spc_ram_100_w ) spc_ram_w(device, offset + 0x100, data); } -static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spc_mem, AS_PROGRAM, 8, snesb_state ) AM_RANGE(0x0000, 0x00ef) AM_DEVREADWRITE("spc700", spc_ram_r, spc_ram_w) /* lower 32k ram */ AM_RANGE(0x00f0, 0x00ff) AM_DEVREADWRITE("spc700", spc_io_r, spc_io_w) /* spc io */ AM_RANGE(0x0100, 0xffff) AM_DEVWRITE("spc700", spc_ram_100_w) diff --git a/src/mame/drivers/snk.c b/src/mame/drivers/snk.c index 49172ce4bca..006872381cb 100644 --- a/src/mame/drivers/snk.c +++ b/src/mame/drivers/snk.c @@ -858,7 +858,7 @@ static CUSTOM_INPUT( snk_bonus_r ) /************************************************************************/ -static ADDRESS_MAP_START( marvins_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( marvins_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6000) AM_WRITE(marvins_palette_bank_w) AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN0") @@ -885,7 +885,7 @@ static ADDRESS_MAP_START( marvins_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xff00, 0xff00) AM_WRITE(marvins_scroll_msb_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( marvins_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( marvins_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("share1") @@ -906,7 +906,7 @@ ADDRESS_MAP_END // vangrd2 accesses video registers at xxF1 instead of xx00 -static ADDRESS_MAP_START( madcrash_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( madcrash_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN0") AM_RANGE(0x8100, 0x8100) AM_READ_PORT("IN1") @@ -933,7 +933,7 @@ static ADDRESS_MAP_START( madcrash_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xff00, 0xff00) AM_MIRROR(0xff) AM_WRITE(snk_fg_scrollx_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( madcrash_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( madcrash_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x8700, 0x8700) AM_WRITE(snk_cpuB_nmi_ack_w) // vangrd2 AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w) // madcrash @@ -953,7 +953,7 @@ static ADDRESS_MAP_START( madcrash_cpuB_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share3") ADDRESS_MAP_END -static ADDRESS_MAP_START( madcrush_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( madcrush_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN0") AM_RANGE(0x8100, 0x8100) AM_READ_PORT("IN1") @@ -980,7 +980,7 @@ static ADDRESS_MAP_START( madcrush_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xff00, 0xff00) AM_WRITE(marvins_scroll_msb_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( madcrush_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( madcrush_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w) AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") // + work ram @@ -1001,7 +1001,7 @@ static ADDRESS_MAP_START( madcrush_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jcross_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jcross_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa100, 0xa100) AM_READ_PORT("IN1") @@ -1022,7 +1022,7 @@ static ADDRESS_MAP_START( jcross_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xffff, 0xffff) AM_WRITENOP // simply a program patch to not write to two not existing video registers? ADDRESS_MAP_END -static ADDRESS_MAP_START( jcross_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jcross_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa700, 0xa700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") @@ -1031,7 +1031,7 @@ static ADDRESS_MAP_START( jcross_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sgladiat_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sgladiat_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN0") AM_RANGE(0xa100, 0xa100) AM_READ_PORT("IN1") @@ -1053,7 +1053,7 @@ static ADDRESS_MAP_START( sgladiat_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sgladiat_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sgladiat_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xa600, 0xa600) AM_WRITE(sgladiat_flipscreen_w) // flip screen, bg palette bank @@ -1069,7 +1069,7 @@ static ADDRESS_MAP_START( sgladiat_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hal21_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hal21_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -1089,7 +1089,7 @@ static ADDRESS_MAP_START( hal21_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( hal21_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hal21_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITE(snk_cpuB_nmi_ack_w) AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") @@ -1098,7 +1098,7 @@ static ADDRESS_MAP_START( hal21_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( aso_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aso_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -1120,7 +1120,7 @@ static ADDRESS_MAP_START( aso_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( aso_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aso_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") @@ -1130,7 +1130,7 @@ static ADDRESS_MAP_START( aso_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tnk3_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tnk3_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -1153,7 +1153,7 @@ static ADDRESS_MAP_START( tnk3_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tnk3_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tnk3_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // tnk3, athena AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // fitegolf @@ -1164,7 +1164,7 @@ static ADDRESS_MAP_START( tnk3_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ikari_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ikari_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -1199,7 +1199,7 @@ static ADDRESS_MAP_START( ikari_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( ikari_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ikari_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xc980, 0xc980) AM_WRITE(ikari_unknown_video_w) @@ -1219,7 +1219,7 @@ static ADDRESS_MAP_START( ikari_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bermudat_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bermudat_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -1263,7 +1263,7 @@ static ADDRESS_MAP_START( bermudat_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( bermudat_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bermudat_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xc800, 0xc800) AM_WRITE(snk_bg_scrolly_w) @@ -1282,7 +1282,7 @@ static ADDRESS_MAP_START( bermudat_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( gwar_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gwar_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -1309,7 +1309,7 @@ static ADDRESS_MAP_START( gwar_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( gwar_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gwar_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xc8c0, 0xc8c0) AM_WRITE(gwar_tx_bank_w) // char and palette bank @@ -1320,7 +1320,7 @@ static ADDRESS_MAP_START( gwar_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( gwara_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gwara_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc100, 0xc100) AM_READ_PORT("IN1") @@ -1346,7 +1346,7 @@ static ADDRESS_MAP_START( gwara_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xfac0, 0xfac0) AM_WRITE(snk_sprite_split_point_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gwara_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gwara_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share1") @@ -1357,7 +1357,7 @@ static ADDRESS_MAP_START( gwara_cpuB_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tdfever_cpuA_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tdfever_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("IN0") AM_RANGE(0xc080, 0xc080) AM_READ_PORT("IN1") @@ -1387,7 +1387,7 @@ static ADDRESS_MAP_START( tdfever_cpuA_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_BASE_MEMBER(snk_state, m_tx_videoram) // + work RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tdfever_cpuB_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tdfever_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // tdfever, tdfever2 AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuA_nmi_trigger_r, snk_cpuB_nmi_ack_w) // fsoccer @@ -1400,7 +1400,7 @@ ADDRESS_MAP_END /***********************************************************************/ -static ADDRESS_MAP_START( marvins_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( marvins_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x4000) AM_READ(marvins_soundlatch_r) AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ay1", ay8910_address_data_w) @@ -1410,13 +1410,13 @@ static ADDRESS_MAP_START( marvins_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( marvins_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( marvins_sound_portmap, AS_IO, 8, snk_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READNOP // read on startup, then the Z80 automatically pulls down the IORQ pin to ack irq ADDRESS_MAP_END -static ADDRESS_MAP_START( jcross_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jcross_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(sgladiat_soundlatch_r) @@ -1426,13 +1426,13 @@ static ADDRESS_MAP_START( jcross_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe004, 0xe005) AM_DEVWRITE("ay2", ay8910_address_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( jcross_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( jcross_sound_portmap, AS_IO, 8, snk_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(sgladiat_sound_irq_ack_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( hal21_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hal21_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(sgladiat_soundlatch_r) @@ -1442,13 +1442,13 @@ static ADDRESS_MAP_START( hal21_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe008, 0xe009) AM_DEVWRITE("ay2", ay8910_address_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hal21_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( hal21_sound_portmap, AS_IO, 8, snk_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READNOP // read on startup, then the Z80 automatically pulls down the IORQ pin to ack irq ADDRESS_MAP_END -static ADDRESS_MAP_START( tnk3_YM3526_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tnk3_YM3526_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) @@ -1458,7 +1458,7 @@ static ADDRESS_MAP_START( tnk3_YM3526_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe006, 0xe006) AM_READ(tnk3_ymirq_ack_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( aso_YM3526_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( aso_YM3526_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd000) AM_READ(soundlatch_r) @@ -1469,7 +1469,7 @@ static ADDRESS_MAP_START( aso_YM3526_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf006, 0xf006) AM_READ(tnk3_ymirq_ack_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( YM3526_YM3526_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( YM3526_YM3526_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) @@ -1480,7 +1480,7 @@ static ADDRESS_MAP_START( YM3526_YM3526_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( YM3812_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( YM3812_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) @@ -1489,7 +1489,7 @@ static ADDRESS_MAP_START( YM3812_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( YM3526_Y8950_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( YM3526_Y8950_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) @@ -1500,7 +1500,7 @@ static ADDRESS_MAP_START( YM3526_Y8950_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( YM3812_Y8950_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( YM3812_Y8950_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) @@ -1511,7 +1511,7 @@ static ADDRESS_MAP_START( YM3812_Y8950_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xf800) AM_READWRITE(snk_sound_status_r, snk_sound_status_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( Y8950_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( Y8950_sound_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/snk6502.c b/src/mame/drivers/snk6502.c index 7ede9421d0c..0df03b4b9c8 100644 --- a/src/mame/drivers/snk6502.c +++ b/src/mame/drivers/snk6502.c @@ -340,7 +340,7 @@ static CUSTOM_INPUT( sasuke_count_r ) * *************************************/ -static ADDRESS_MAP_START( sasuke_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sasuke_map, AS_PROGRAM, 8, snk6502_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(snk6502_videoram2_w) AM_BASE_MEMBER(snk6502_state, m_videoram2) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(snk6502_videoram_w) AM_BASE_MEMBER(snk6502_state, m_videoram) @@ -359,7 +359,7 @@ static ADDRESS_MAP_START( sasuke_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( satansat_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( satansat_map, AS_PROGRAM, 8, snk6502_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(snk6502_videoram2_w) AM_BASE_MEMBER(snk6502_state, m_videoram2) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(snk6502_videoram_w) AM_BASE_MEMBER(snk6502_state, m_videoram) @@ -378,7 +378,7 @@ static ADDRESS_MAP_START( satansat_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( vanguard_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vanguard_map, AS_PROGRAM, 8, snk6502_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(snk6502_videoram2_w) AM_BASE_MEMBER(snk6502_state, m_videoram2) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(snk6502_videoram_w) AM_BASE_MEMBER(snk6502_state, m_videoram) @@ -399,7 +399,7 @@ static ADDRESS_MAP_START( vanguard_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM /* for the reset / interrupt vectors */ ADDRESS_MAP_END -static ADDRESS_MAP_START( fantasy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fantasy_map, AS_PROGRAM, 8, snk6502_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(snk6502_videoram2_w) AM_BASE_MEMBER(snk6502_state, m_videoram2) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(snk6502_videoram_w) AM_BASE_MEMBER(snk6502_state, m_videoram) @@ -419,7 +419,7 @@ static ADDRESS_MAP_START( fantasy_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( pballoon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pballoon_map, AS_PROGRAM, 8, snk6502_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(snk6502_videoram2_w) AM_BASE_MEMBER(snk6502_state, m_videoram2) AM_RANGE(0x0800, 0x0bff) AM_RAM_WRITE(snk6502_videoram_w) AM_BASE_MEMBER(snk6502_state, m_videoram) diff --git a/src/mame/drivers/snk68.c b/src/mame/drivers/snk68.c index 734cf45cd62..2316cc1e3f5 100644 --- a/src/mame/drivers/snk68.c +++ b/src/mame/drivers/snk68.c @@ -119,7 +119,7 @@ static WRITE16_HANDLER( sound_w ) /*******************************************************************************/ -static ADDRESS_MAP_START( pow_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pow_map, AS_PROGRAM, 16, snk68_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM AM_RANGE(0x080000, 0x080001) AM_READ(control_1_r) @@ -136,7 +136,7 @@ static ADDRESS_MAP_START( pow_map, AS_PROGRAM, 16 ) AM_RANGE(0x400000, 0x400fff) AM_RAM_WRITE(pow_paletteram16_word_w) AM_BASE_MEMBER(snk68_state, m_paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( searchar_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( searchar_map, AS_PROGRAM, 16, snk68_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM AM_RANGE(0x080000, 0x080005) AM_READ(protcontrols_r) /* Player 1 & 2 */ @@ -160,7 +160,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, snk68_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_READ(soundlatch_r) AM_WRITE(sound_status_w) @@ -178,7 +178,7 @@ static WRITE8_DEVICE_HANDLER( D7759_upd_reset_w ) upd7759_reset_w(device, data & 0x80); } -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, snk68_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ymsnd", ym3812_status_port_r, ym3812_control_port_w) AM_RANGE(0x20, 0x20) AM_DEVWRITE("ymsnd", ym3812_write_port_w) diff --git a/src/mame/drivers/snookr10.c b/src/mame/drivers/snookr10.c index b094de9a529..a7db420f591 100644 --- a/src/mame/drivers/snookr10.c +++ b/src/mame/drivers/snookr10.c @@ -496,7 +496,7 @@ static WRITE8_HANDLER( output_port_1_w ) * Memory map information * *************************/ -static ADDRESS_MAP_START( snookr10_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( snookr10_map, AS_PROGRAM, 8, snookr10_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x3000, 0x3000) AM_READ_PORT("IN0") /* IN0 */ @@ -511,7 +511,7 @@ static ADDRESS_MAP_START( snookr10_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( tenballs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tenballs_map, AS_PROGRAM, 8, snookr10_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x1000, 0x1000) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x4000, 0x4000) AM_READ_PORT("IN0") /* IN0 */ diff --git a/src/mame/drivers/snowbros.c b/src/mame/drivers/snowbros.c index 7e212602dee..29aca73e2ee 100644 --- a/src/mame/drivers/snowbros.c +++ b/src/mame/drivers/snowbros.c @@ -195,7 +195,7 @@ static WRITE16_HANDLER( semicom_soundcmd_w ) /* Snow Bros Memory Map */ -static ADDRESS_MAP_START( snowbros_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( snowbros_map, AS_PROGRAM, 16, snowbros_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x200000, 0x200001) AM_WRITE(watchdog_reset16_w) @@ -211,12 +211,12 @@ static ADDRESS_MAP_START( snowbros_map, AS_PROGRAM, 16 ) AM_RANGE(0xa00000, 0xa00001) AM_WRITE(snowbros_irq2_ack_w) /* IRQ 2 acknowledge */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, snowbros_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, snowbros_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) AM_RANGE(0x04, 0x04) AM_READWRITE(soundlatch_r, soundlatch_w) /* goes back to the main CPU, checked during boot */ @@ -268,17 +268,17 @@ static WRITE8_HANDLER( prot_io_w ) } /* Semicom AT89C52 MCU */ -static ADDRESS_MAP_START( protection_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( protection_map, AS_PROGRAM, 8, snowbros_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( protection_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( protection_iomap, AS_IO, 8, snowbros_state ) AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(prot_io_r,prot_io_w) ADDRESS_MAP_END /* Winter Bobble - bootleg GFX chip */ -static ADDRESS_MAP_START( wintbob_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wintbob_map, AS_PROGRAM, 16, snowbros_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x200000, 0x200001) AM_WRITE(watchdog_reset16_w) @@ -296,7 +296,7 @@ ADDRESS_MAP_END /* Honey Dolls */ -static ADDRESS_MAP_START( honeydol_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( honeydol_map, AS_PROGRAM, 16, snowbros_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE_MEMBER(snowbros_state, m_hyperpac_ram) AM_RANGE(0x200000, 0x200001) AM_WRITENOP /* ? */ @@ -312,13 +312,13 @@ static ADDRESS_MAP_START( honeydol_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb01fff) AM_RAM AM_BASE_SIZE_MEMBER(snowbros_state, m_bootleg_spriteram16, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( honeydol_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( honeydol_sound_map, AS_PROGRAM, 8, snowbros_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xe010, 0xe010) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) ADDRESS_MAP_END -static ADDRESS_MAP_START( honeydol_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( honeydol_sound_io_map, AS_IO, 8, snowbros_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) // not connected? AM_RANGE(0x04, 0x04) AM_READWRITE(soundlatch_r, soundlatch_w) /* goes back to the main CPU, checked during boot */ @@ -335,7 +335,7 @@ static WRITE16_HANDLER( twinadv_68000_sound_w ) } } -static ADDRESS_MAP_START( twinadv_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( twinadv_map, AS_PROGRAM, 16, snowbros_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x200001) AM_WRITE(watchdog_reset16_w) @@ -361,7 +361,7 @@ static WRITE8_DEVICE_HANDLER( twinadv_oki_bank_w ) downcast<okim6295_device *>(device)->set_bank_base(bank * 0x40000); } -static ADDRESS_MAP_START( twinadv_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( twinadv_sound_io_map, AS_IO, 8, snowbros_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x02, 0x02) AM_READWRITE(soundlatch_r, soundlatch_w) // back to 68k? AM_RANGE(0x04, 0x04) AM_DEVWRITE("oki", twinadv_oki_bank_w) // oki bank? @@ -376,7 +376,7 @@ sound hardware is also different */ -static ADDRESS_MAP_START( hyperpac_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hyperpac_map, AS_PROGRAM, 16, snowbros_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_BASE_MEMBER(snowbros_state, m_hyperpac_ram) AM_RANGE(0x300000, 0x300001) AM_WRITE(semicom_soundcmd_w) @@ -392,7 +392,7 @@ static ADDRESS_MAP_START( hyperpac_map, AS_PROGRAM, 16 ) AM_RANGE(0xa00000, 0xa00001) AM_WRITE(snowbros_irq2_ack_w) /* IRQ 2 acknowledge */ ADDRESS_MAP_END -static ADDRESS_MAP_START( hyperpac_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hyperpac_sound_map, AS_PROGRAM, 8, snowbros_state ) AM_RANGE(0x0000, 0xcfff) AM_ROM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_r,ym2151_w) @@ -510,7 +510,7 @@ static WRITE16_DEVICE_HANDLER( sb3_sound_w ) -static ADDRESS_MAP_START( snowbros3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( snowbros3_map, AS_PROGRAM, 16, snowbros_state ) AM_RANGE( 0x000000, 0x03ffff) AM_ROM AM_RANGE( 0x100000, 0x103fff) AM_RAM AM_RANGE( 0x200000, 0x200001) AM_WRITE(watchdog_reset16_w) @@ -529,7 +529,7 @@ ADDRESS_MAP_END /* Final Tetris */ -static ADDRESS_MAP_START( finalttr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( finalttr_map, AS_PROGRAM, 16, snowbros_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_BASE_MEMBER(snowbros_state, m_hyperpac_ram) AM_RANGE(0x300000, 0x300001) AM_WRITE(semicom_soundcmd_w) diff --git a/src/mame/drivers/solomon.c b/src/mame/drivers/solomon.c index 3282bec6398..0333491c0ae 100644 --- a/src/mame/drivers/solomon.c +++ b/src/mame/drivers/solomon.c @@ -45,7 +45,7 @@ static WRITE8_HANDLER( nmi_mask_w ) state->m_nmi_mask = data & 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, solomon_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(solomon_colorram_w) AM_BASE_MEMBER(solomon_state, m_colorram) @@ -67,14 +67,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, solomon_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_READ(soundlatch_r) AM_RANGE(0xffff, 0xffff) AM_WRITENOP /* watchdog? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, solomon_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x11) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x20, 0x21) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/sonson.c b/src/mame/drivers/sonson.c index 6990fc0f4e0..8c43fae6224 100644 --- a/src/mame/drivers/sonson.c +++ b/src/mame/drivers/sonson.c @@ -78,7 +78,7 @@ static WRITE8_HANDLER( sonson_coin2_counter_w ) coin_counter_w(space->machine(), 1, data & 1); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, sonson_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(sonson_videoram_w) AM_BASE_SIZE_MEMBER(sonson_state, m_videoram, m_videoram_size) AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(sonson_colorram_w) AM_BASE_MEMBER(sonson_state, m_colorram) @@ -98,7 +98,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x4000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, sonson_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x4000, 0x4001) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/sothello.c b/src/mame/drivers/sothello.c index 3aa0a11ec57..4ec100cce96 100644 --- a/src/mame/drivers/sothello.c +++ b/src/mame/drivers/sothello.c @@ -121,14 +121,14 @@ static READ8_HANDLER( soundcpu_status_r ) return state->m_soundcpu_busy; } -static ADDRESS_MAP_START( maincpu_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( maincpu_mem_map, AS_PROGRAM, 8, sothello_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM AM_MIRROR(0x1800) AM_SHARE("share1") AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( maincpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( maincpu_io_map, AS_IO, 8, sothello_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x00, 0x0f) AM_READ_PORT("INPUT1") AM_RANGE( 0x10, 0x1f) AM_READ_PORT("INPUT2") @@ -182,12 +182,12 @@ static WRITE8_HANDLER(soundcpu_int_clear_w) cputag_set_input_line(space->machine(), "soundcpu", 0, CLEAR_LINE ); } -static ADDRESS_MAP_START( soundcpu_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( soundcpu_mem_map, AS_PROGRAM, 8, sothello_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( soundcpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( soundcpu_io_map, AS_IO, 8, sothello_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) AM_RANGE(0x01, 0x01) AM_WRITE(msm_data_w) @@ -223,7 +223,7 @@ static READ8_HANDLER(subcpu_status_r) return 0; } -static ADDRESS_MAP_START( subcpu_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( subcpu_mem_map, AS_PROGRAM, 8, sothello_state ) AM_RANGE(0x0000, 0x1fff) AM_READWRITE(subcpu_status_r,subcpu_status_w) AM_RANGE(0x2000, 0x77ff) AM_RAM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1") /* upper 0x800 of 6264 is shared with main cpu */ diff --git a/src/mame/drivers/spacefb.c b/src/mame/drivers/spacefb.c index 40887dac5e9..f1f05bb388a 100644 --- a/src/mame/drivers/spacefb.c +++ b/src/mame/drivers/spacefb.c @@ -197,7 +197,7 @@ static MACHINE_RESET( spacefb ) * *************************************/ -static ADDRESS_MAP_START( spacefb_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spacefb_main_map, AS_PROGRAM, 8, spacefb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_NOP AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x3c00) AM_RAM AM_BASE_MEMBER(spacefb_state, m_videoram) AM_SIZE_MEMBER(spacefb_state, m_videoram_size) @@ -206,7 +206,7 @@ static ADDRESS_MAP_START( spacefb_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spacefb_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spacefb_audio_map, AS_PROGRAM, 8, spacefb_state ) ADDRESS_MAP_GLOBAL_MASK(0x3ff) AM_RANGE(0x0000, 0x03ff) AM_ROM ADDRESS_MAP_END @@ -219,7 +219,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( spacefb_main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spacefb_main_io_map, AS_IO, 8, spacefb_state ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") @@ -234,7 +234,7 @@ static ADDRESS_MAP_START( spacefb_main_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spacefb_audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spacefb_audio_io_map, AS_IO, 8, spacefb_state ) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READ(spacefb_audio_p2_r) AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_READ(spacefb_audio_t0_r) diff --git a/src/mame/drivers/spaceg.c b/src/mame/drivers/spaceg.c index cef556d3e0a..c97ae361c79 100644 --- a/src/mame/drivers/spaceg.c +++ b/src/mame/drivers/spaceg.c @@ -323,7 +323,7 @@ static SCREEN_UPDATE_IND16( spaceg ) * *************************************/ -static ADDRESS_MAP_START( spaceg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spaceg_map, AS_PROGRAM, 8, spaceg_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x3000, 0x3fff) AM_ROM AM_RANGE(0x7000, 0x77ff) AM_RAM diff --git a/src/mame/drivers/spbactn.c b/src/mame/drivers/spbactn.c index 5ad3e5f46b1..2db7e62c785 100644 --- a/src/mame/drivers/spbactn.c +++ b/src/mame/drivers/spbactn.c @@ -140,7 +140,7 @@ static WRITE16_HANDLER( soundcommand_w ) } } -static ADDRESS_MAP_START( spbactn_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spbactn_map, AS_PROGRAM, 16, spbactn_state ) AM_RANGE(0x00000, 0x3ffff) AM_ROM AM_RANGE(0x40000, 0x43fff) AM_RAM // main ram AM_RANGE(0x50000, 0x50fff) AM_RAM AM_BASE_MEMBER(spbactn_state,m_spvideoram) @@ -186,7 +186,7 @@ static ADDRESS_MAP_START( spbactn_map, AS_PROGRAM, 16 ) AM_RANGE(0xa0206, 0xa0207) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( spbactn_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spbactn_sound_map, AS_PROGRAM, 8, spbactn_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf800) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/spcforce.c b/src/mame/drivers/spcforce.c index e0aede681ff..5d0dc5d26a9 100644 --- a/src/mame/drivers/spcforce.c +++ b/src/mame/drivers/spcforce.c @@ -88,7 +88,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( spcforce_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spcforce_map, AS_PROGRAM, 8, spcforce_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x7000, 0x7000) AM_READ_PORT("DSW") AM_WRITE(soundlatch_w) @@ -102,11 +102,11 @@ static ADDRESS_MAP_START( spcforce_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xa3ff) AM_RAM AM_BASE_MEMBER(spcforce_state, m_scrollram) ADDRESS_MAP_END -static ADDRESS_MAP_START( spcforce_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spcforce_sound_map, AS_PROGRAM, 8, spcforce_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( spcforce_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spcforce_sound_io_map, AS_IO, 8, spcforce_state ) AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(soundlatch_r) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_WRITE(spcforce_SN76496_latch_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(spcforce_SN76496_select_r, spcforce_SN76496_select_w) diff --git a/src/mame/drivers/spdodgeb.c b/src/mame/drivers/spdodgeb.c index af27633c719..97b644b6a0e 100644 --- a/src/mame/drivers/spdodgeb.c +++ b/src/mame/drivers/spdodgeb.c @@ -248,7 +248,7 @@ static READ8_HANDLER( port_0_r ) -static ADDRESS_MAP_START( spdodgeb_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spdodgeb_map, AS_PROGRAM, 8, spdodgeb_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x10ff) AM_WRITEONLY AM_BASE_SIZE_MEMBER(spdodgeb_state, m_spriteram, m_spriteram_size) AM_RANGE(0x2000, 0x2fff) AM_RAM_WRITE(spdodgeb_videoram_w) AM_BASE_MEMBER(spdodgeb_state, m_videoram) @@ -265,7 +265,7 @@ static ADDRESS_MAP_START( spdodgeb_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( spdodgeb_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spdodgeb_sound_map, AS_PROGRAM, 8, spdodgeb_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READ(soundlatch_r) AM_RANGE(0x2800, 0x2801) AM_DEVWRITE("ymsnd", ym3812_w) diff --git a/src/mame/drivers/speedatk.c b/src/mame/drivers/speedatk.c index 133e2e7f1e5..a8e63fe498d 100644 --- a/src/mame/drivers/speedatk.c +++ b/src/mame/drivers/speedatk.c @@ -176,7 +176,7 @@ static WRITE8_HANDLER( key_matrix_status_w ) state->m_coin_settings = state->m_km_status & 0xf; } -static ADDRESS_MAP_START( speedatk_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( speedatk_mem, AS_PROGRAM, 8, speedatk_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8000) AM_READWRITE(key_matrix_r,key_matrix_w) AM_RANGE(0x8001, 0x8001) AM_READWRITE(key_matrix_status_r,key_matrix_status_w) @@ -186,7 +186,7 @@ static ADDRESS_MAP_START( speedatk_mem, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( speedatk_io, AS_IO, 8 ) +static ADDRESS_MAP_START( speedatk_io, AS_IO, 8, speedatk_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_WRITE(speedatk_6845_w) //h46505 address / data routing AM_RANGE(0x24, 0x24) AM_WRITE(watchdog_reset_w) diff --git a/src/mame/drivers/speedbal.c b/src/mame/drivers/speedbal.c index b3f0c0d365d..9ff0e3f45a1 100644 --- a/src/mame/drivers/speedbal.c +++ b/src/mame/drivers/speedbal.c @@ -64,7 +64,7 @@ static WRITE8_HANDLER( speedbal_coincounter_w ) /* unknown: (data & 0x10) and (data & 4) */ } -static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 8, speedbal_state ) AM_RANGE(0x0000, 0xdbff) AM_ROM AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE("share1") // shared with SOUND AM_RANGE(0xe000, 0xe1ff) AM_RAM_WRITE(speedbal_background_videoram_w) AM_BASE_MEMBER(speedbal_state, m_background_videoram) @@ -74,7 +74,7 @@ static ADDRESS_MAP_START( main_cpu_map, AS_PROGRAM, 8 ) AM_RANGE(0xff00, 0xffff) AM_RAM AM_BASE_SIZE_MEMBER(speedbal_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_cpu_io_map, AS_IO, 8, speedbal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW2") AM_RANGE(0x10, 0x10) AM_READ_PORT("DSW1") @@ -84,14 +84,14 @@ static ADDRESS_MAP_START( main_cpu_io_map, AS_IO, 8 ) AM_RANGE(0x50, 0x50) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu_map, AS_PROGRAM, 8, speedbal_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xd000, 0xdbff) AM_RAM AM_RANGE(0xdc00, 0xdfff) AM_RAM AM_SHARE("share1") // shared with MAIN CPU AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_cpu_io_map, AS_IO, 8, speedbal_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) AM_RANGE(0x40, 0x40) AM_WRITENOP diff --git a/src/mame/drivers/speedspn.c b/src/mame/drivers/speedspn.c index 7d608512216..131a2e34e5b 100644 --- a/src/mame/drivers/speedspn.c +++ b/src/mame/drivers/speedspn.c @@ -105,7 +105,7 @@ static WRITE8_DEVICE_HANDLER( oki_banking_w ) /* main cpu */ -static ADDRESS_MAP_START( speedspn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( speedspn_map, AS_PROGRAM, 8, speedspn_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(paletteram_xxxxRRRRGGGGBBBB_le_w) AM_BASE_GENERIC(paletteram) /* RAM COLOUR */ AM_RANGE(0x8800, 0x8fff) AM_RAM_WRITE(speedspn_attram_w) AM_BASE_MEMBER(speedspn_state, m_attram) @@ -116,7 +116,7 @@ static ADDRESS_MAP_START( speedspn_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1") /* banked ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( speedspn_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( speedspn_io_map, AS_IO, 8, speedspn_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x07, 0x07) AM_WRITE(speedspn_global_display_w) AM_RANGE(0x10, 0x10) AM_READ_PORT("SYSTEM") @@ -130,7 +130,7 @@ ADDRESS_MAP_END /* sound cpu */ -static ADDRESS_MAP_START( speedspn_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( speedspn_sound_map, AS_PROGRAM, 8, speedspn_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("oki", oki_banking_w) diff --git a/src/mame/drivers/speglsht.c b/src/mame/drivers/speglsht.c index dc12f820f98..8c3c4331929 100644 --- a/src/mame/drivers/speglsht.c +++ b/src/mame/drivers/speglsht.c @@ -124,7 +124,7 @@ public: }; -static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, speglsht_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_READ(st0016_sprite_ram_r) AM_WRITE(st0016_sprite_ram_w) @@ -137,7 +137,7 @@ static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_MEMBER(speglsht_state, m_shared) ADDRESS_MAP_END -static ADDRESS_MAP_START( st0016_io, AS_IO, 8 ) +static ADDRESS_MAP_START( st0016_io, AS_IO, 8, speglsht_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) AM_RANGE(0xe1, 0xe1) AM_WRITE(st0016_rom_bank_w) @@ -221,7 +221,7 @@ static READ32_HANDLER(irq_ack_clear) return 0; } -static ADDRESS_MAP_START( speglsht_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( speglsht_mem, AS_PROGRAM, 32, speglsht_state ) AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_RANGE(0x01000000, 0x01007fff) AM_RAM //tested - STATIC RAM AM_RANGE(0x01600000, 0x0160004f) AM_READWRITE(cop_r, cop_w) AM_BASE_MEMBER(speglsht_state, m_cop_ram) diff --git a/src/mame/drivers/spiders.c b/src/mame/drivers/spiders.c index df8d612ed17..30f2c7b1695 100644 --- a/src/mame/drivers/spiders.c +++ b/src/mame/drivers/spiders.c @@ -570,7 +570,7 @@ static READ8_DEVICE_HANDLER( gfx_rom_r ) * *************************************/ -static ADDRESS_MAP_START( spiders_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spiders_main_map, AS_PROGRAM, 8, spiders_state ) AM_RANGE(0x0000, 0xbfff) AM_RAM AM_BASE_MEMBER(spiders_state, m_ram) AM_RANGE(0xc000, 0xc000) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0xc001, 0xc001) AM_DEVREADWRITE_MODERN("crtc", mc6845_device, register_r, register_w) @@ -585,7 +585,7 @@ static ADDRESS_MAP_START( spiders_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spiders_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spiders_audio_map, AS_PROGRAM, 8, spiders_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x0080, 0x0083) AM_DEVREADWRITE_MODERN("pia4", pia6821_device, read, write) AM_RANGE(0xf800, 0xffff) AM_ROM diff --git a/src/mame/drivers/splash.c b/src/mame/drivers/splash.c index f02bcf99c9f..e77865d92f3 100644 --- a/src/mame/drivers/splash.c +++ b/src/mame/drivers/splash.c @@ -88,7 +88,7 @@ static WRITE16_HANDLER( splash_coin_w ) } } -static ADDRESS_MAP_START( splash_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( splash_map, AS_PROGRAM, 16, splash_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM /* ROM */ AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_BASE_MEMBER(splash_state, m_pixelram) /* Pixel Layer */ AM_RANGE(0x840000, 0x840001) AM_READ_PORT("DSW1") @@ -120,7 +120,7 @@ static void splash_msm5205_int(device_t *device) state->m_adpcm_data = (state->m_adpcm_data << 4) & 0xf0; } -static ADDRESS_MAP_START( splash_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( splash_sound_map, AS_PROGRAM, 8, splash_state ) AM_RANGE(0x0000, 0xd7ff) AM_ROM /* ROM */ AM_RANGE(0xd800, 0xd800) AM_WRITE(splash_adpcm_data_w) /* ADPCM data for the MSM5205 chip */ // AM_RANGE(0xe000, 0xe000) AM_WRITENOP /* ??? */ @@ -168,7 +168,7 @@ static void ym_irq(device_t *device, int state) roldfrog_update_irq(device->machine()); } -static ADDRESS_MAP_START( roldfrog_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( roldfrog_map, AS_PROGRAM, 16, splash_state ) AM_RANGE(0x000000, 0x3fffff) AM_ROM /* ROM */ AM_RANGE(0x400000, 0x407fff) AM_ROM AM_BASE_MEMBER(splash_state, m_protdata) /* Protection Data */ AM_RANGE(0x408000, 0x4087ff) AM_RAM /* Extra Ram */ @@ -189,7 +189,7 @@ static ADDRESS_MAP_START( roldfrog_map, AS_PROGRAM, 16 ) AM_RANGE(0xffc000, 0xffffff) AM_RAM /* Work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( roldfrog_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( roldfrog_sound_map, AS_PROGRAM, 8, splash_state ) AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROM AM_ROMBANK("sound_bank") @@ -201,7 +201,7 @@ static READ8_HANDLER(roldfrog_unk_r) return 0xff; } -static ADDRESS_MAP_START( roldfrog_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( roldfrog_sound_io_map, AS_IO, 8, splash_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x40, 0x40) AM_NOP @@ -231,7 +231,7 @@ static WRITE16_HANDLER( funystrp_sh_irqtrigger_w ) cputag_set_input_line(space->machine(), "audiocpu", INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( funystrp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( funystrp_map, AS_PROGRAM, 16, splash_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x1fffff) AM_RAM /* protection? RAM */ AM_RANGE(0x800000, 0x83ffff) AM_RAM AM_BASE_MEMBER(splash_state, m_pixelram) /* Pixel Layer */ @@ -250,7 +250,7 @@ static ADDRESS_MAP_START( funystrp_map, AS_PROGRAM, 16 ) AM_RANGE(0xfe0000, 0xffffff) AM_RAM AM_MASK(0xffff) /* there's fe0000 <-> ff0000 compare */ /* Work RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( funystrp_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( funystrp_sound_map, AS_PROGRAM, 8, splash_state ) AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROM AM_ROMBANK("sound_bank") @@ -290,7 +290,7 @@ static WRITE8_HANDLER(msm2_data_w) state->m_msm_toggle2=0; } -static ADDRESS_MAP_START( funystrp_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( funystrp_sound_io_map, AS_IO, 8, splash_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(msm1_data_w) AM_RANGE(0x01, 0x01) AM_WRITE(msm2_data_w) diff --git a/src/mame/drivers/splus.c b/src/mame/drivers/splus.c index 1a20e9cc8d0..6cc0d16fc2e 100644 --- a/src/mame/drivers/splus.c +++ b/src/mame/drivers/splus.c @@ -581,11 +581,11 @@ static DRIVER_INIT( splus ) * Memory map information * *************************/ -static ADDRESS_MAP_START( splus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( splus_map, AS_PROGRAM, 8, splus_state ) AM_RANGE(0x0000, 0xffff) AM_ROM AM_BASE_MEMBER(splus_state, m_program_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( splus_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( splus_iomap, AS_IO, 8, splus_state ) // Serial I/O AM_RANGE(0x0000, 0x0000) AM_READ(splus_serial_r) AM_WRITE(splus_serial_w) diff --git a/src/mame/drivers/spoker.c b/src/mame/drivers/spoker.c index e21d1855903..87666291049 100644 --- a/src/mame/drivers/spoker.c +++ b/src/mame/drivers/spoker.c @@ -218,12 +218,12 @@ static READ8_HANDLER( spoker_magic_r ) -static ADDRESS_MAP_START( spoker_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spoker_map, AS_PROGRAM, 8, spoker_state ) AM_RANGE( 0x00000, 0x0f3ff ) AM_ROM AM_RANGE( 0x0f400, 0x0ffff ) AM_RAM AM_SHARE("nvram") ADDRESS_MAP_END -static ADDRESS_MAP_START( spoker_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( spoker_portmap, AS_IO, 8, spoker_state ) AM_RANGE( 0x0000, 0x003f ) AM_RAM // Z180 internal regs AM_RANGE( 0x2000, 0x23ff ) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split1_w ) AM_BASE_GENERIC( paletteram ) @@ -254,7 +254,7 @@ static ADDRESS_MAP_START( spoker_portmap, AS_IO, 8 ) AM_RANGE( 0x7000, 0x7fff ) AM_RAM_WRITE( fg_color_w ) AM_BASE_MEMBER( spoker_state,m_fg_color_ram ) ADDRESS_MAP_END -static ADDRESS_MAP_START( 3super8_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( 3super8_portmap, AS_IO, 8, spoker_state ) // AM_RANGE( 0x1000, 0x1fff ) AM_WRITENOP AM_RANGE( 0x2000, 0x27ff ) AM_RAM_WRITE( paletteram_xBBBBBGGGGGRRRRR_split1_w ) AM_BASE_GENERIC( paletteram ) diff --git a/src/mame/drivers/spool99.c b/src/mame/drivers/spool99.c index 49ca1a1ccab..8349bf1ac5d 100644 --- a/src/mame/drivers/spool99.c +++ b/src/mame/drivers/spool99.c @@ -206,7 +206,7 @@ static WRITE8_DEVICE_HANDLER( eeprom_dataline_w ) eeprom->write_bit(data & 0x01); } -static ADDRESS_MAP_START( spool99_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spool99_map, AS_PROGRAM, 8, spool99_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_BASE_MEMBER(spool99_state,m_main) AM_RANGE(0x0100, 0xaeff) AM_ROM AM_REGION("maincpu", 0x100) AM_WRITENOP AM_RANGE(0xaf00, 0xafff) AM_READ(spool99_io_r) @@ -252,7 +252,7 @@ static READ8_HANDLER( vcarn_io_r ) return ROM[0xa700+offset]; } -static ADDRESS_MAP_START( vcarn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vcarn_map, AS_PROGRAM, 8, spool99_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_BASE_MEMBER(spool99_state,m_main) AM_RANGE(0x0100, 0xa6ff) AM_ROM AM_REGION("maincpu", 0x100) AM_WRITENOP AM_RANGE(0xa700, 0xa7ff) AM_READ(vcarn_io_r) diff --git a/src/mame/drivers/sprcros2.c b/src/mame/drivers/sprcros2.c index 1b1c68bb3b0..8aa3c1fac30 100644 --- a/src/mame/drivers/sprcros2.c +++ b/src/mame/drivers/sprcros2.c @@ -101,7 +101,7 @@ static WRITE8_HANDLER( sprcros2_s_port3_w ) state->m_s_port3 = data; } -static ADDRESS_MAP_START( sprcros2_master_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sprcros2_master_map, AS_PROGRAM, 8, sprcros2_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank1") AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(sprcros2_fgvideoram_w) AM_BASE_MEMBER(sprcros2_state, m_fgvideoram) @@ -112,7 +112,7 @@ static ADDRESS_MAP_START( sprcros2_master_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1") //shared with slave cpu ADDRESS_MAP_END -static ADDRESS_MAP_START( sprcros2_master_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sprcros2_master_io_map, AS_IO, 8, sprcros2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_DEVWRITE("sn1", sn76496_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_DEVWRITE("sn2", sn76496_w) @@ -122,7 +122,7 @@ static ADDRESS_MAP_START( sprcros2_master_io_map, AS_IO, 8 ) AM_RANGE(0x07, 0x07) AM_WRITE(sprcros2_m_port7_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sprcros2_slave_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sprcros2_slave_map, AS_PROGRAM, 8, sprcros2_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_ROMBANK("bank2") AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(sprcros2_bgvideoram_w) AM_BASE_MEMBER(sprcros2_state, m_bgvideoram) @@ -131,7 +131,7 @@ static ADDRESS_MAP_START( sprcros2_slave_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sprcros2_slave_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sprcros2_slave_io_map, AS_IO, 8, sprcros2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(sprcros2_bgscrollx_w) AM_RANGE(0x01, 0x01) AM_WRITE(sprcros2_bgscrolly_w) diff --git a/src/mame/drivers/sprint2.c b/src/mame/drivers/sprint2.c index 23037e03c21..0c760be4fa6 100644 --- a/src/mame/drivers/sprint2.c +++ b/src/mame/drivers/sprint2.c @@ -256,7 +256,7 @@ static WRITE8_HANDLER( sprint2_lamp2_w ) } -static ADDRESS_MAP_START( sprint2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sprint2_map, AS_PROGRAM, 8, sprint2_state ) AM_RANGE(0x0000, 0x03ff) AM_READWRITE(sprint2_wram_r,sprint2_wram_w) AM_RANGE(0x0400, 0x07ff) AM_RAM_WRITE(sprint2_video_ram_w) AM_BASE_MEMBER(sprint2_state, m_video_ram) AM_RANGE(0x0818, 0x081f) AM_READ(sprint2_input_A_r) diff --git a/src/mame/drivers/sprint4.c b/src/mame/drivers/sprint4.c index 29ea2ff50bd..bca3484167f 100644 --- a/src/mame/drivers/sprint4.c +++ b/src/mame/drivers/sprint4.c @@ -230,7 +230,7 @@ static WRITE8_DEVICE_HANDLER( sprint4_attract_w ) } -static ADDRESS_MAP_START( sprint4_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sprint4_cpu_map, AS_PROGRAM, 8, sprint4_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) diff --git a/src/mame/drivers/sprint8.c b/src/mame/drivers/sprint8.c index 0af43faa345..4641eb7bd20 100644 --- a/src/mame/drivers/sprint8.c +++ b/src/mame/drivers/sprint8.c @@ -102,7 +102,7 @@ static WRITE8_HANDLER( sprint8_int_reset_w ) } -static ADDRESS_MAP_START( sprint8_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sprint8_map, AS_PROGRAM, 8, sprint8_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(sprint8_video_ram_w) AM_BASE_MEMBER(sprint8_state, m_video_ram) AM_RANGE(0x1c00, 0x1c00) AM_READ(sprint8_collision_r) diff --git a/src/mame/drivers/spy.c b/src/mame/drivers/spy.c index 4b7d77f28bf..07efd4356c2 100644 --- a/src/mame/drivers/spy.c +++ b/src/mame/drivers/spy.c @@ -384,7 +384,7 @@ static WRITE8_HANDLER( k052109_051960_w ) k051960_w(state->m_k051960, offset - 0x3c00, data); } -static ADDRESS_MAP_START( spy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spy_map, AS_PROGRAM, 8, spy_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(spy_bankedram1_r, spy_bankedram1_w) AM_BASE_MEMBER(spy_state, m_ram) AM_RANGE(0x0800, 0x1aff) AM_RAM AM_RANGE(0x3f80, 0x3f80) AM_WRITE(bankswitch_w) @@ -402,7 +402,7 @@ static ADDRESS_MAP_START( spy_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( spy_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( spy_sound_map, AS_PROGRAM, 8, spy_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(sound_bank_w) diff --git a/src/mame/drivers/srmp2.c b/src/mame/drivers/srmp2.c index 75187582124..f70e1b00270 100644 --- a/src/mame/drivers/srmp2.c +++ b/src/mame/drivers/srmp2.c @@ -391,7 +391,7 @@ static WRITE8_HANDLER( srmp2_irq4_ack_w ) } -static ADDRESS_MAP_START( srmp2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( srmp2_map, AS_PROGRAM, 16, srmp2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x0c0000, 0x0c3fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x140000, 0x143fff) AM_RAM AM_DEVREADWRITE("spritegen", spritecode_r16, spritecode_w16) /* Sprites Code + X + Attr */ @@ -424,7 +424,7 @@ static READ8_HANDLER( mjyuugi_irq4_ack_r ) return 0xff; // value returned doesn't matter } -static ADDRESS_MAP_START( mjyuugi_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mjyuugi_map, AS_PROGRAM, 16, srmp2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ_PORT("SYSTEM") /* Coinage */ AM_RANGE(0x100000, 0x100001) AM_WRITE(mjyuugi_flags_w) /* Coin Counter */ @@ -471,7 +471,7 @@ static WRITE8_HANDLER( srmp3_irq_ack_w ) cputag_set_input_line(space->machine(), "maincpu", 0, CLEAR_LINE); } -static ADDRESS_MAP_START( srmp3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( srmp3_map, AS_PROGRAM, 8, srmp2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") /* rom bank */ AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("nvram") /* work ram */ @@ -483,7 +483,7 @@ static ADDRESS_MAP_START( srmp3_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_DEVREADWRITE("spritegen", spritecodehigh_r8, spritecodehigh_w8) ADDRESS_MAP_END -static ADDRESS_MAP_START( srmp3_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( srmp3_io_map, AS_IO, 8, srmp2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x20, 0x20) AM_WRITE(srmp3_irq_ack_w) /* interrupt acknowledge */ AM_RANGE(0x40, 0x40) AM_READ_PORT("SYSTEM") AM_WRITE(srmp3_flags_w) /* coin, service | GFX bank, counter, lockout */ @@ -496,7 +496,7 @@ static ADDRESS_MAP_START( srmp3_io_map, AS_IO, 8 ) AM_RANGE(0xe2, 0xe2) AM_DEVREAD("aysnd", ay8910_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( rmgoldyh_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rmgoldyh_map, AS_PROGRAM, 8, srmp2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") /* rom bank */ AM_RANGE(0xa000, 0xafff) AM_RAM AM_SHARE("nvram") /* work ram */ @@ -526,7 +526,7 @@ static WRITE8_HANDLER( rmgoldyh_rombank_w ) memory_set_bankptr(space->machine(), "bank1", &ROM[addr]); } -static ADDRESS_MAP_START( rmgoldyh_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( rmgoldyh_io_map, AS_IO, 8, srmp2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog */ AM_RANGE(0x60, 0x60) AM_WRITE(rmgoldyh_rombank_w) /* ROM bank select */ diff --git a/src/mame/drivers/srmp5.c b/src/mame/drivers/srmp5.c index 90cea6a8c16..a67286e6eeb 100644 --- a/src/mame/drivers/srmp5.c +++ b/src/mame/drivers/srmp5.c @@ -343,7 +343,7 @@ static READ32_HANDLER(irq_ack_clear) return 0; } -static ADDRESS_MAP_START( srmp5_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( srmp5_mem, AS_PROGRAM, 32, srmp5_state ) AM_RANGE(0x00000000, 0x000fffff) AM_RAM //maybe 0 - 2fffff ? AM_RANGE(0x002f0000, 0x002f7fff) AM_RAM AM_RANGE(0x01000000, 0x01000003) AM_WRITEONLY // 0xaa .. watchdog ? @@ -374,7 +374,7 @@ static ADDRESS_MAP_START( srmp5_mem, AS_PROGRAM, 32 ) AM_RANGE(0x2fc00000, 0x2fdfffff) AM_ROM AM_REGION("user1", 0) ADDRESS_MAP_END -static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, srmp5_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xe900, 0xe9ff) AM_DEVREADWRITE("stsnd", st0016_snd_r, st0016_snd_w) @@ -404,7 +404,7 @@ static READ8_HANDLER(cmd_stat8_r) return state->m_cmd_stat; } -static ADDRESS_MAP_START( st0016_io, AS_IO, 8 ) +static ADDRESS_MAP_START( st0016_io, AS_IO, 8, srmp5_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) AM_RANGE(0xc0, 0xc0) AM_READ(cmd1_r) diff --git a/src/mame/drivers/srmp6.c b/src/mame/drivers/srmp6.c index 1e1653b99e7..7b2148cb889 100644 --- a/src/mame/drivers/srmp6.c +++ b/src/mame/drivers/srmp6.c @@ -539,7 +539,7 @@ static READ16_HANDLER( srmp6_irq_ack_r ) return 0; // value read doesn't matter } -static ADDRESS_MAP_START( srmp6_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( srmp6_map, AS_PROGRAM, 16, srmp6_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x23ffff) AM_RAM // work RAM AM_RANGE(0x600000, 0x7fffff) AM_ROMBANK("bank1") // banked ROM (used by ROM check) diff --git a/src/mame/drivers/srumbler.c b/src/mame/drivers/srumbler.c index 0e4da96822b..880898683e0 100644 --- a/src/mame/drivers/srumbler.c +++ b/src/mame/drivers/srumbler.c @@ -72,7 +72,7 @@ to the page register. Ignore the warnings about writing to unmapped memory. */ -static ADDRESS_MAP_START( srumbler_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( srumbler_map, AS_PROGRAM, 8, srumbler_state ) AM_RANGE(0x0000, 0x1dff) AM_RAM /* RAM (of 1 sort or another) */ AM_RANGE(0x1e00, 0x1fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x2000, 0x3fff) AM_RAM_WRITE(srumbler_background_w) AM_BASE_MEMBER(srumbler_state, m_backgroundram) @@ -98,7 +98,7 @@ static ADDRESS_MAP_START( srumbler_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_ROMBANK("f000") /* Banked ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( srumbler_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( srumbler_sound_map, AS_PROGRAM, 8, srumbler_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ym2", ym2203_w) diff --git a/src/mame/drivers/ssfindo.c b/src/mame/drivers/ssfindo.c index 5dde36fd9a9..481f5b0330e 100644 --- a/src/mame/drivers/ssfindo.c +++ b/src/mame/drivers/ssfindo.c @@ -544,7 +544,7 @@ static READ32_HANDLER(randomized_r) return space->machine().rand(); } -static ADDRESS_MAP_START( ssfindo_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ssfindo_map, AS_PROGRAM, 32, ssfindo_state ) AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x03200000, 0x032001ff) AM_READWRITE(PS7500_IO_r,PS7500_IO_w) AM_RANGE(0x03012e60, 0x03012e67) AM_NOP @@ -562,7 +562,7 @@ static ADDRESS_MAP_START( ssfindo_map, AS_PROGRAM, 32 ) AM_RANGE(0x10000000, 0x11ffffff) AM_RAM AM_BASE_MEMBER(ssfindo_state, m_vram) ADDRESS_MAP_END -static ADDRESS_MAP_START( ppcar_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ppcar_map, AS_PROGRAM, 32, ssfindo_state ) AM_RANGE(0x00000000, 0x000fffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x03200000, 0x032001ff) AM_READWRITE(PS7500_IO_r,PS7500_IO_w) AM_RANGE(0x03012b00, 0x03012bff) AM_READ(randomized_r) AM_WRITENOP @@ -588,7 +588,7 @@ static WRITE32_HANDLER(tetfight_unk_w) //sound latch ? } -static ADDRESS_MAP_START( tetfight_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( tetfight_map, AS_PROGRAM, 32, ssfindo_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x03200000, 0x032001ff) AM_READWRITE(PS7500_IO_r,PS7500_IO_w) AM_RANGE(0x03400000, 0x03400003) AM_WRITE(FIFO_w) diff --git a/src/mame/drivers/sshangha.c b/src/mame/drivers/sshangha.c index 5a5850e828b..f94522511b0 100644 --- a/src/mame/drivers/sshangha.c +++ b/src/mame/drivers/sshangha.c @@ -159,7 +159,7 @@ WRITE16_HANDLER( paletteram16_xbgr_word_be_tilehigh_w ) set_color_888(space->machine(), (offset/2)+0x300, 0, 8, 16, state->m_tile_paletteram2[(offset) | 1] | (state->m_tile_paletteram2[(offset) & ~1] << 16) ); } -static ADDRESS_MAP_START( sshangha_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sshangha_map, AS_PROGRAM, 16, sshangha_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10000f) AM_RAM AM_BASE_MEMBER(sshangha_state, m_sound_shared_ram) @@ -190,7 +190,7 @@ static ADDRESS_MAP_START( sshangha_map, AS_PROGRAM, 16 ) AM_RANGE(0xff4000, 0xff47ff) AM_READWRITE(sshangha_protection16_r,sshangha_protection16_w) AM_BASE_MEMBER(sshangha_state, m_prot_data) ADDRESS_MAP_END -static ADDRESS_MAP_START( sshanghb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sshanghb_map, AS_PROGRAM, 16, sshangha_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x084000, 0x0847ff) AM_READ(sshanghb_protection16_r) AM_RANGE(0x101000, 0x10100f) AM_RAM AM_BASE_MEMBER(sshangha_state, m_sound_shared_ram) /* the bootleg writes here */ @@ -235,7 +235,7 @@ static WRITE8_HANDLER(sshangha_sound_shared_w) } /* Note: there's rom data after 0x8000 but the game never seem to call a rom bank, left-over? */ -static ADDRESS_MAP_START( sshangha_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sshangha_sound_map, AS_PROGRAM, 8, sshangha_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ymsnd", ym2203_r,ym2203_w) AM_RANGE(0xc200, 0xc201) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/sshot.c b/src/mame/drivers/sshot.c index 5e9eb0201f3..de3ff0fca5a 100644 --- a/src/mame/drivers/sshot.c +++ b/src/mame/drivers/sshot.c @@ -248,7 +248,7 @@ static WRITE8_HANDLER(supershot_output1_w) * *************************************/ -static ADDRESS_MAP_START( supershot_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( supershot_map, AS_PROGRAM, 8, supershot_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE( supershot_vidram_w ) AM_BASE_MEMBER( supershot_state, m_videoram ) AM_RANGE(0x4100, 0x41ff) AM_RAM diff --git a/src/mame/drivers/ssingles.c b/src/mame/drivers/ssingles.c index 9a360fa1744..d0eda46576e 100644 --- a/src/mame/drivers/ssingles.c +++ b/src/mame/drivers/ssingles.c @@ -353,7 +353,7 @@ static CUSTOM_INPUT(controls_r) return data; } -static ADDRESS_MAP_START( ssingles_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssingles_map, AS_PROGRAM, 8, ssingles_state ) AM_RANGE(0x0000, 0x00ff) AM_WRITE(ssingles_videoram_w) AM_RANGE(0x0800, 0x08ff) AM_WRITE(ssingles_colorram_w) AM_RANGE(0x0000, 0x1fff) AM_ROM @@ -394,7 +394,7 @@ static WRITE8_HANDLER( atamanot_prot_w ) } -static ADDRESS_MAP_START( atamanot_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( atamanot_map, AS_PROGRAM, 8, ssingles_state ) AM_RANGE(0x0000, 0x00ff) AM_WRITE(ssingles_videoram_w) AM_RANGE(0x0800, 0x08ff) AM_WRITE(ssingles_colorram_w) AM_RANGE(0x0000, 0x3fff) AM_ROM @@ -407,7 +407,7 @@ static ADDRESS_MAP_START( atamanot_map, AS_PROGRAM, 8 ) // AM_RANGE(0xc001, 0xc001) AM_READWRITE( c001_r, c001_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ssingles_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( ssingles_io_map, AS_IO, 8, ssingles_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay1", ay8910_address_w) AM_RANGE(0x04, 0x04) AM_DEVWRITE("ay1", ay8910_data_w) @@ -422,7 +422,7 @@ static ADDRESS_MAP_START( ssingles_io_map, AS_IO, 8 ) AM_RANGE(0xff, 0xff) AM_DEVWRITE_MODERN("crtc", mc6845_device, register_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( atamanot_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( atamanot_io_map, AS_IO, 8, ssingles_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE("ay1", ay8910_address_w) AM_RANGE(0x04, 0x04) AM_DEVWRITE("ay1", ay8910_data_w) diff --git a/src/mame/drivers/sslam.c b/src/mame/drivers/sslam.c index 0bca0f5aea9..4bc3d0c98ae 100644 --- a/src/mame/drivers/sslam.c +++ b/src/mame/drivers/sslam.c @@ -386,7 +386,7 @@ static WRITE16_HANDLER( powerbls_sound_w ) /* these will need verifying .. the game writes all over the place ... */ -static ADDRESS_MAP_START( sslam_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sslam_program_map, AS_PROGRAM, 16, sslam_state ) AM_RANGE(0x000400, 0x07ffff) AM_RAM AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(sslam_bg_tileram_w) AM_BASE_MEMBER(sslam_state,m_bg_tileram) AM_RANGE(0x104000, 0x107fff) AM_RAM_WRITE(sslam_md_tileram_w) AM_BASE_MEMBER(sslam_state,m_md_tileram) @@ -409,7 +409,7 @@ static ADDRESS_MAP_START( sslam_program_map, AS_PROGRAM, 16 ) AM_RANGE(0x000000, 0xffffff) AM_ROM /* I don't honestly know where the rom is mirrored .. so all unmapped reads / writes go to rom */ ADDRESS_MAP_END -static ADDRESS_MAP_START( powerbls_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( powerbls_map, AS_PROGRAM, 16, sslam_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(powerbls_bg_tileram_w) AM_BASE_MEMBER(sslam_state,m_bg_tileram) AM_RANGE(0x104000, 0x107fff) AM_RAM // not used @@ -478,7 +478,7 @@ static WRITE8_HANDLER( playmark_snd_control_w ) // (data & 0x40) -> always set } -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, sslam_state ) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(playmark_snd_control_w) AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(playmark_snd_command_r, playmark_oki_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/ssozumo.c b/src/mame/drivers/ssozumo.c index 7f13c218214..c65c82ca526 100644 --- a/src/mame/drivers/ssozumo.c +++ b/src/mame/drivers/ssozumo.c @@ -21,7 +21,7 @@ static WRITE8_HANDLER( ssozumo_sh_command_w ) } -static ADDRESS_MAP_START( ssozumo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssozumo_map, AS_PROGRAM, 8, ssozumo_state ) AM_RANGE(0x0000, 0x077f) AM_RAM AM_RANGE(0x0780, 0x07ff) AM_RAM AM_BASE_SIZE_MEMBER(ssozumo_state, m_spriteram, m_spriteram_size) AM_RANGE(0x2000, 0x23ff) AM_RAM_WRITE(ssozumo_videoram2_w) AM_BASE_MEMBER(ssozumo_state, m_videoram2) @@ -48,7 +48,7 @@ static WRITE8_HANDLER( sound_nmi_mask_w ) } /* Same as Tag Team */ -static ADDRESS_MAP_START( ssozumo_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssozumo_sound_map, AS_PROGRAM, 8, ssozumo_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x2002, 0x2003) AM_DEVWRITE("ay2", ay8910_data_address_w) diff --git a/src/mame/drivers/sspeedr.c b/src/mame/drivers/sspeedr.c index b4e61148844..92546aaaf83 100644 --- a/src/mame/drivers/sspeedr.c +++ b/src/mame/drivers/sspeedr.c @@ -77,14 +77,14 @@ static WRITE8_HANDLER( sspeedr_sound_w ) } -static ADDRESS_MAP_START( sspeedr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sspeedr_map, AS_PROGRAM, 8, sspeedr_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x2000, 0x21ff) AM_RAM AM_RANGE(0x7f00, 0x7f17) AM_WRITE(sspeedr_score_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sspeedr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sspeedr_io_map, AS_IO, 8, sspeedr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/ssrj.c b/src/mame/drivers/ssrj.c index ab51a886565..b8b0981d578 100644 --- a/src/mame/drivers/ssrj.c +++ b/src/mame/drivers/ssrj.c @@ -53,7 +53,7 @@ static READ8_HANDLER(ssrj_wheel_r) return retval; } -static ADDRESS_MAP_START( ssrj_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssrj_map, AS_PROGRAM, 8, ssrj_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(ssrj_vram1_w) AM_BASE_MEMBER(ssrj_state, m_vram1) AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(ssrj_vram2_w) AM_BASE_MEMBER(ssrj_state, m_vram2) diff --git a/src/mame/drivers/sstrangr.c b/src/mame/drivers/sstrangr.c index b49b2688611..af85c345192 100644 --- a/src/mame/drivers/sstrangr.c +++ b/src/mame/drivers/sstrangr.c @@ -138,7 +138,7 @@ static WRITE8_HANDLER( port_w ) -static ADDRESS_MAP_START( sstrangr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sstrangr_map, AS_PROGRAM, 8, sstrangr_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_RAM AM_BASE_MEMBER(sstrangr_state,m_ram) @@ -146,7 +146,7 @@ static ADDRESS_MAP_START( sstrangr_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sstrangr_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sstrangr_io_map, AS_IO, 8, sstrangr_state ) AM_RANGE(0x41, 0x41) AM_READ_PORT("DSW") AM_RANGE(0x42, 0x42) AM_READ_PORT("INPUTS") AM_RANGE(0x44, 0x44) AM_READ_PORT("EXT") AM_WRITE(port_w) diff --git a/src/mame/drivers/ssv.c b/src/mame/drivers/ssv.c index b8d23b1b44e..92224acc6b9 100644 --- a/src/mame/drivers/ssv.c +++ b/src/mame/drivers/ssv.c @@ -340,11 +340,11 @@ static MACHINE_RESET( ssv ) ***************************************************************************/ -static ADDRESS_MAP_START( dsp_prg_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( dsp_prg_map, AS_PROGRAM, 32, ssv_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_REGION("dspprg", 0) ADDRESS_MAP_END -static ADDRESS_MAP_START( dsp_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( dsp_data_map, AS_DATA, 16, ssv_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_REGION("dspdata", 0) ADDRESS_MAP_END @@ -441,7 +441,7 @@ static READ16_HANDLER( drifto94_rand_r ) return space->machine().rand() & 0xffff; } -static ADDRESS_MAP_START( drifto94_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( drifto94_map, AS_PROGRAM, 16, ssv_state ) // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start AM_RANGE(0x400000, 0x47ffff) AM_WRITEONLY // ? AM_RANGE(0x480000, 0x480001) AM_READWRITE(dsp_dr_r, dsp_dr_w) @@ -587,7 +587,7 @@ static WRITE16_HANDLER( gdfs_blitram_w ) } } -static ADDRESS_MAP_START( gdfs_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gdfs_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x400000, 0x41ffff) AM_RAM_WRITE(gdfs_tmapram_w) AM_BASE_MEMBER(ssv_state, m_gdfs_tmapram) AM_RANGE(0x420000, 0x43ffff) AM_RAM AM_RANGE(0x440000, 0x44003f) AM_RAM AM_BASE_MEMBER(ssv_state, m_gdfs_tmapscroll) @@ -626,7 +626,7 @@ static READ16_HANDLER( hypreact_input_r ) return 0xffff; } -static ADDRESS_MAP_START( hypreact_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hypreact_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 5 at the start AM_RANGE(0x21000e, 0x21000f) AM_WRITE(ssv_lockout_inv_w) // Inverted lockout lines @@ -642,7 +642,7 @@ ADDRESS_MAP_END Hyper Reaction 2 ***************************************************************************/ -static ADDRESS_MAP_START( hypreac2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hypreac2_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 5 at the start AM_RANGE(0x21000e, 0x21000f) AM_WRITE(ssv_lockout_inv_w) // Inverted lockout lines @@ -661,7 +661,7 @@ ADDRESS_MAP_END static READ16_HANDLER( srmp4_input_r ); -static ADDRESS_MAP_START( janjans1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( janjans1_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x210000, 0x210001) AM_WRITENOP // koikois2 but not janjans1 // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start AM_RANGE(0x210006, 0x210007) AM_READNOP @@ -675,7 +675,7 @@ ADDRESS_MAP_END Keith & Lucy ***************************************************************************/ -static ADDRESS_MAP_START( keithlcy_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( keithlcy_map, AS_PROGRAM, 16, ssv_state ) // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start AM_RANGE(0x210010, 0x210011) AM_WRITENOP // AM_RANGE(0x21000e, 0x21000f) AM_READNOP // @@ -688,7 +688,7 @@ ADDRESS_MAP_END Meosis Magic ***************************************************************************/ -static ADDRESS_MAP_START( meosism_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( meosism_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r ) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 5 at the start // AM_RANGE(0x280000, 0x280001) AM_READNOP // ? read once, value not used @@ -717,7 +717,7 @@ static WRITE16_HANDLER( ssv_mainram_w ) COMBINE_DATA(&state->m_mainram[offset]); } -static ADDRESS_MAP_START( mslider_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mslider_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x010000, 0x01ffff) AM_READWRITE(ssv_mainram_r, ssv_mainram_w) // RAM Mirror // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start AM_RANGE(0x400000, 0x47ffff) AM_WRITEONLY // ? @@ -730,7 +730,7 @@ ADDRESS_MAP_END Gourmet Battle Quiz Ryohrioh CooKing ***************************************************************************/ -static ADDRESS_MAP_START( ryorioh_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ryorioh_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x210000, 0x210001) AM_WRITE(watchdog_reset16_w) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start SSV_MAP( 0xc00000 ) @@ -754,7 +754,7 @@ static READ16_HANDLER( srmp4_input_r ) return 0xffff; } -static ADDRESS_MAP_START( srmp4_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( srmp4_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1,5 at the start AM_RANGE(0xc0000a, 0xc0000b) AM_READ(srmp4_input_r) // Inputs @@ -803,7 +803,7 @@ static READ16_HANDLER( srmp7_input_r ) return 0xffff; } -static ADDRESS_MAP_START( srmp7_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( srmp7_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x010000, 0x050faf) AM_RAM // More RAM AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 0,4 at the start @@ -821,7 +821,7 @@ ADDRESS_MAP_END Survival Arts ***************************************************************************/ -static ADDRESS_MAP_START( survarts_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( survarts_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 0,4 at the start // AM_RANGE(0x290000, 0x290001) AM_READNOP // ? @@ -873,7 +873,7 @@ static WRITE16_HANDLER( sxyreact_motor_w ) // popmessage("%04X",data); // 8 = motor on; 0 = motor off } -static ADDRESS_MAP_START( sxyreact_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sxyreact_map, AS_PROGRAM, 16, ssv_state ) // AM_RANGE(0x020000, 0x03ffff) AM_READWRITE(ssv_mainram_r, ssv_mainram_w) // sxyreac2 reads / writes here, why? AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 1 at the start @@ -892,7 +892,7 @@ ADDRESS_MAP_END /* comes as either a standalone board or a standard SSV rom board (verified) */ -static ADDRESS_MAP_START( twineag2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( twineag2_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x010000, 0x03ffff) AM_RAM // More RAM AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog (also value is cmp.b with mem 8) AM_RANGE(0x480000, 0x480001) AM_READWRITE(dsp_dr_r, dsp_dr_w) @@ -907,7 +907,7 @@ ADDRESS_MAP_END /* standalone board based on SSV hardware */ -static ADDRESS_MAP_START( ultrax_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ultrax_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x010000, 0x03ffff) AM_RAM // More RAM AM_RANGE(0x210000, 0x210001) AM_READ(watchdog_reset16_r) // Watchdog (also value is cmp.b with memory address 8) // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 2,6 at the start @@ -958,7 +958,7 @@ static WRITE16_HANDLER(latch16_w) space->machine().scheduler().synchronize(); } -static ADDRESS_MAP_START( jsk_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jsk_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x050000, 0x05ffff) AM_READWRITE(ssv_mainram_r, ssv_mainram_w) // RAM Mirror? AM_RANGE(0x210000, 0x210001) AM_WRITE(watchdog_reset16_w) // Watchdog AM_RANGE(0x400000, 0x47ffff) AM_RAM // RAM? @@ -967,7 +967,7 @@ static ADDRESS_MAP_START( jsk_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jsk_v810_mem, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( jsk_v810_mem, AS_PROGRAM, 32, ssv_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_RANGE(0x80000000, 0x8001ffff) AM_RAM AM_RANGE(0xc0000000, 0xc001ffff) AM_RAM @@ -1047,7 +1047,7 @@ static WRITE16_HANDLER( eaglshot_gfxram_w ) } -static ADDRESS_MAP_START( eaglshot_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( eaglshot_map, AS_PROGRAM, 16, ssv_state ) AM_RANGE(0x180000, 0x1bffff) AM_READWRITE(eaglshot_gfxram_r, eaglshot_gfxram_w) AM_RANGE(0x210000, 0x210001) AM_READNOP /*AM_READ(watchdog_reset16_r)*/ // Watchdog // AM_RANGE(0x210002, 0x210003) AM_WRITENOP // ? 0,4 at the start diff --git a/src/mame/drivers/st0016.c b/src/mame/drivers/st0016.c index 927f49dd2bf..680ec7d2f8b 100644 --- a/src/mame/drivers/st0016.c +++ b/src/mame/drivers/st0016.c @@ -25,7 +25,7 @@ UINT32 st0016_rom_bank; * *************************************/ -static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( st0016_mem, AS_PROGRAM, 8, st0016_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_READ(st0016_sprite_ram_r) AM_WRITE(st0016_sprite_ram_w) @@ -76,7 +76,7 @@ WRITE8_HANDLER(st0016_rom_bank_w) st0016_rom_bank=data; } -static ADDRESS_MAP_START( st0016_io, AS_IO, 8 ) +static ADDRESS_MAP_START( st0016_io, AS_IO, 8, st0016_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) /* video/crt regs ? */ AM_RANGE(0xc0, 0xc0) AM_READ_PORT("P1") AM_WRITE(mux_select_w) @@ -132,7 +132,7 @@ static WRITE8_HANDLER(latch8_w) space->machine().scheduler().synchronize(); } -static ADDRESS_MAP_START( v810_mem,AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( v810_mem,AS_PROGRAM, 32, st0016_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_RANGE(0x80000000, 0x8001ffff) AM_RAM AM_RANGE(0xc0000000, 0xc001ffff) AM_RAM @@ -140,7 +140,7 @@ static ADDRESS_MAP_START( v810_mem,AS_PROGRAM, 32 ) AM_RANGE(0xfff80000, 0xffffffff) AM_ROMBANK("bank2") ADDRESS_MAP_END -static ADDRESS_MAP_START( st0016_m2_io, AS_IO, 8 ) +static ADDRESS_MAP_START( st0016_m2_io, AS_IO, 8, st0016_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xbf) AM_READ(st0016_vregs_r) AM_WRITE(st0016_vregs_w) AM_RANGE(0xc0, 0xc3) AM_READ(latch8_r) AM_WRITE(latch8_w) diff --git a/src/mame/drivers/stactics.c b/src/mame/drivers/stactics.c index 7a85b94dca6..a10b417c3b1 100644 --- a/src/mame/drivers/stactics.c +++ b/src/mame/drivers/stactics.c @@ -171,7 +171,7 @@ static INTERRUPT_GEN( stactics_interrupt ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, stactics_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x4000, 0x40ff) AM_MIRROR(0x0700) AM_RAM AM_RANGE(0x5000, 0x5000) AM_MIRROR(0x0fff) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/stadhero.c b/src/mame/drivers/stadhero.c index efe132acc0b..b7827308b62 100644 --- a/src/mame/drivers/stadhero.c +++ b/src/mame/drivers/stadhero.c @@ -57,7 +57,7 @@ static WRITE16_HANDLER( stadhero_control_w ) /******************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, stadhero_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x200000, 0x2007ff) AM_RAM_WRITE(stadhero_pf1_data_w) AM_BASE_MEMBER(stadhero_state, m_pf1_data) AM_RANGE(0x240000, 0x240007) AM_DEVWRITE("tilegen1", deco_bac06_pf_control_0_w) /* text layer */ @@ -71,7 +71,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, stadhero_state ) AM_RANGE(0x0000, 0x05ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x1000, 0x1001) AM_DEVWRITE("ym2", ym3812_w) diff --git a/src/mame/drivers/starcrus.c b/src/mame/drivers/starcrus.c index 6786eece7e6..6fc7ff35cb8 100644 --- a/src/mame/drivers/starcrus.c +++ b/src/mame/drivers/starcrus.c @@ -14,12 +14,12 @@ palazzol@home.com #include "sound/samples.h" #include "includes/starcrus.h" -static ADDRESS_MAP_START( starcrus_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( starcrus_map, AS_PROGRAM, 8, starcrus_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x1000, 0x10ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( starcrus_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( starcrus_io_map, AS_IO, 8, starcrus_state ) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_WRITE(starcrus_s1_x_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("P2") AM_WRITE(starcrus_s1_y_w) AM_RANGE(0x02, 0x02) AM_READWRITE(starcrus_coll_det_r, starcrus_s2_x_w) diff --git a/src/mame/drivers/starfire.c b/src/mame/drivers/starfire.c index 16eb82cd86d..320e6b7bebb 100644 --- a/src/mame/drivers/starfire.c +++ b/src/mame/drivers/starfire.c @@ -151,7 +151,7 @@ static READ8_HANDLER( fireone_input_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, starfire_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_READWRITE(starfire_scratch_r, starfire_scratch_w) AM_RANGE(0xa000, 0xbfff) AM_READWRITE(starfire_colorram_r, starfire_colorram_w) AM_BASE_MEMBER(starfire_state, m_starfire_colorram) diff --git a/src/mame/drivers/starshp1.c b/src/mame/drivers/starshp1.c index f70d3da734a..535c3a29482 100644 --- a/src/mame/drivers/starshp1.c +++ b/src/mame/drivers/starshp1.c @@ -169,7 +169,7 @@ static WRITE8_HANDLER( starshp1_misc_w ) } -static ADDRESS_MAP_START( starshp1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( starshp1_map, AS_PROGRAM, 8, starshp1_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x100) AM_RANGE(0x2c00, 0x3fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_READ_PORT("SYSTEM") diff --git a/src/mame/drivers/starwars.c b/src/mame/drivers/starwars.c index c9b1c947fd7..5126e5e2de6 100644 --- a/src/mame/drivers/starwars.c +++ b/src/mame/drivers/starwars.c @@ -153,7 +153,7 @@ DIRECT_UPDATE_HANDLER( esb_setdirect ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, starwars_state ) AM_RANGE(0x0000, 0x2fff) AM_RAM AM_BASE(&avgdvg_vectorram) AM_SIZE(&avgdvg_vectorram_size) AM_REGION("maincpu", 0) AM_RANGE(0x3000, 0x3fff) AM_ROM /* vector_rom */ AM_RANGE(0x4300, 0x431f) AM_READ_PORT("IN0") @@ -190,7 +190,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, starwars_state ) AM_RANGE(0x0000, 0x07ff) AM_WRITE(starwars_sout_w) AM_RANGE(0x0800, 0x0fff) AM_READ(starwars_sin_r) /* SIN Read */ AM_RANGE(0x1000, 0x107f) AM_RAM /* 6532 ram */ diff --git a/src/mame/drivers/statriv2.c b/src/mame/drivers/statriv2.c index b4b06563e35..005bd3e5cbd 100644 --- a/src/mame/drivers/statriv2.c +++ b/src/mame/drivers/statriv2.c @@ -288,14 +288,14 @@ static const ppi8255_interface ppi8255_intf = * *************************************/ -static ADDRESS_MAP_START( statriv2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( statriv2_map, AS_PROGRAM, 8, statriv2_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x4800, 0x48ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(statriv2_videoram_w) AM_BASE_MEMBER(statriv2_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( statriv2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( statriv2_io_map, AS_IO, 8, statriv2_state ) AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("ppi", ppi8255_r, ppi8255_w) AM_RANGE(0x28, 0x2b) AM_READ(question_data_r) AM_WRITEONLY AM_BASE_MEMBER(statriv2_state, m_question_offset) AM_RANGE(0xb0, 0xb1) AM_DEVWRITE("aysnd", ay8910_address_data_w) @@ -304,7 +304,7 @@ static ADDRESS_MAP_START( statriv2_io_map, AS_IO, 8 ) ADDRESS_MAP_END #ifdef UNUSED_CODE -static ADDRESS_MAP_START( statusbj_io, AS_IO, 8 ) +static ADDRESS_MAP_START( statusbj_io, AS_IO, 8, statriv2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x20, 0x23) AM_DEVREADWRITE("ppi", ppi8255_r, ppi8255_w) AM_RANGE(0xb0, 0xb1) AM_DEVWRITE("aysnd", ay8910_address_data_w) diff --git a/src/mame/drivers/stepstag.c b/src/mame/drivers/stepstag.c index ec20d90e259..491acdf0f5d 100644 --- a/src/mame/drivers/stepstag.c +++ b/src/mame/drivers/stepstag.c @@ -57,7 +57,7 @@ static READ16_HANDLER( unknown_read_0xffff00 ) return space->machine().rand(); } -static ADDRESS_MAP_START( stepstag_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( stepstag_map, AS_PROGRAM, 16, stepstag_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM @@ -89,7 +89,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( stepstag_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( stepstag_sub_map, AS_PROGRAM, 16, stepstag_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM diff --git a/src/mame/drivers/stfight.c b/src/mame/drivers/stfight.c index 5fbff4782d8..8599019baa9 100644 --- a/src/mame/drivers/stfight.c +++ b/src/mame/drivers/stfight.c @@ -234,7 +234,7 @@ DONE? (check on real board) #include "sound/msm5205.h" #include "includes/stfight.h" -static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8, stfight_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* sf02.bin */ AM_RANGE(0xc000, 0xc0ff) AM_RAM AM_BASE_GENERIC(paletteram) @@ -256,7 +256,7 @@ static ADDRESS_MAP_START( cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM AM_BASE_MEMBER(stfight_state, m_sprite_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, stfight_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/stlforce.c b/src/mame/drivers/stlforce.c index 5a25c4d0ac3..aedc70218d6 100644 --- a/src/mame/drivers/stlforce.c +++ b/src/mame/drivers/stlforce.c @@ -90,7 +90,7 @@ static WRITE16_DEVICE_HANDLER( oki_bank_w ) downcast<okim6295_device *>(device)->set_bank_base(0x40000 * ((data>>8) & 3)); } -static ADDRESS_MAP_START( stlforce_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( stlforce_map, AS_PROGRAM, 16, stlforce_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x1007ff) AM_RAM_WRITE(stlforce_bg_videoram_w) AM_BASE_MEMBER(stlforce_state,m_bg_videoram) AM_RANGE(0x100800, 0x100fff) AM_RAM_WRITE(stlforce_mlow_videoram_w) AM_BASE_MEMBER(stlforce_state,m_mlow_videoram) diff --git a/src/mame/drivers/strnskil.c b/src/mame/drivers/strnskil.c index b3a73b67ecd..86dd01fae81 100644 --- a/src/mame/drivers/strnskil.c +++ b/src/mame/drivers/strnskil.c @@ -80,7 +80,7 @@ static WRITE8_HANDLER( protection_w ) /****************************************************************************/ -static ADDRESS_MAP_START( strnskil_map1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( strnskil_map1, AS_PROGRAM, 8, strnskil_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM @@ -99,7 +99,7 @@ static ADDRESS_MAP_START( strnskil_map1, AS_PROGRAM, 8 ) AM_RANGE(0xd80a, 0xd80b) AM_WRITEONLY AM_BASE_MEMBER(strnskil_state, m_xscroll) ADDRESS_MAP_END -static ADDRESS_MAP_START( strnskil_map2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( strnskil_map2, AS_PROGRAM, 8, strnskil_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_BASE_SIZE_MEMBER(strnskil_state, m_spriteram, m_spriteram_size) AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") @@ -109,7 +109,7 @@ static ADDRESS_MAP_START( strnskil_map2, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, strnskil_state ) // AM_RANGE(MB88_PORTK, MB88_PORTK) AM_READ(mcu_portk_r) // AM_RANGE(MB88_PORTR0, MB88_PORTR0) AM_READWRITE(mcu_portr0_r, mcu_portr0_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/su2000.c b/src/mame/drivers/su2000.c index 446df784d82..80a68ce6a88 100644 --- a/src/mame/drivers/su2000.c +++ b/src/mame/drivers/su2000.c @@ -86,14 +86,14 @@ public: * *************************************/ -static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( pcat_map, AS_PROGRAM, 32, su2000_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAMBANK("mem_bank") AM_RANGE(0x000c0000, 0x000c7fff) AM_ROM AM_RANGE(0x000f0000, 0x000fffff) AM_ROM AM_RANGE(0xffff0000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0x0f0000) ADDRESS_MAP_END -static ADDRESS_MAP_START( pcat_io, AS_IO, 32 ) +static ADDRESS_MAP_START( pcat_io, AS_IO, 32, su2000_state ) AM_IMPORT_FROM(pcat32_io_common) ADDRESS_MAP_END diff --git a/src/mame/drivers/sub.c b/src/mame/drivers/sub.c index 3b540ccfec3..273f70b01be 100644 --- a/src/mame/drivers/sub.c +++ b/src/mame/drivers/sub.c @@ -213,7 +213,7 @@ static SCREEN_UPDATE_IND16(sub) return 0; } -static ADDRESS_MAP_START( subm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( subm_map, AS_PROGRAM, 8, sub_state ) AM_RANGE(0x0000, 0xafff) AM_ROM AM_RANGE(0xb000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc3ff) AM_RAM AM_BASE_MEMBER(sub_state,m_attr) @@ -248,18 +248,18 @@ static WRITE8_HANDLER( nmi_mask_w ) state->m_nmi_en = data & 1; } -static ADDRESS_MAP_START( subm_io, AS_IO, 8 ) +static ADDRESS_MAP_START( subm_io, AS_IO, 8, sub_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch2_r, subm_to_sound_w) // to/from sound CPU ADDRESS_MAP_END -static ADDRESS_MAP_START( subm_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( subm_sound_map, AS_PROGRAM, 8, sub_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_WRITE(nmi_mask_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( subm_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( subm_sound_io, AS_IO, 8, sub_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch_r, soundlatch2_w) // to/from main CPU AM_RANGE(0x40, 0x41) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_address_data_w) diff --git a/src/mame/drivers/subs.c b/src/mame/drivers/subs.c index 3288e7ba4d5..776d68c4303 100644 --- a/src/mame/drivers/subs.c +++ b/src/mame/drivers/subs.c @@ -45,7 +45,7 @@ static PALETTE_INIT( subs ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, subs_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x0000) AM_DEVWRITE("discrete", subs_noise_reset_w) AM_RANGE(0x0000, 0x0007) AM_READ(subs_control_r) diff --git a/src/mame/drivers/subsino.c b/src/mame/drivers/subsino.c index a921f76c2d4..ec97ee18d36 100644 --- a/src/mame/drivers/subsino.c +++ b/src/mame/drivers/subsino.c @@ -774,7 +774,7 @@ static WRITE8_HANDLER( subsino_out_b_w ) * Memory Maps * ***************************************************************************/ -static ADDRESS_MAP_START( srider_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( srider_map, AS_PROGRAM, 8, subsino_state ) AM_RANGE( 0x00000, 0x0bfff ) AM_ROM AM_RANGE( 0x0c000, 0x0cfff ) AM_RAM @@ -803,7 +803,7 @@ static ADDRESS_MAP_START( srider_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sharkpy_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sharkpy_map, AS_PROGRAM, 8, subsino_state ) AM_RANGE( 0x09800, 0x09fff ) AM_RAM AM_RANGE( 0x09000, 0x09000 ) AM_READ_PORT( "SW1" ) @@ -838,7 +838,7 @@ that announces to the player that the card deck changes. If the protection check this event makes the game to reset without any money in the bank. */ -static ADDRESS_MAP_START( victor21_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( victor21_map, AS_PROGRAM, 8, subsino_state ) AM_RANGE( 0x09800, 0x09fff ) AM_RAM AM_RANGE( 0x09000, 0x09000 ) AM_WRITE( subsino_out_a_w ) @@ -921,7 +921,7 @@ static WRITE8_HANDLER( flash_w ) } } -static ADDRESS_MAP_START( victor5_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( victor5_map, AS_PROGRAM, 8, subsino_state ) AM_IMPORT_FROM( victor21_map ) AM_RANGE( 0x0900a, 0x0900a ) AM_READWRITE( flash_r, flash_w ) AM_RANGE( 0x0900b, 0x0900b ) AM_READNOP //"flash" status, bit 0 @@ -934,7 +934,7 @@ static READ8_HANDLER( hwcheck_r ) return 0x55; } -static ADDRESS_MAP_START( crsbingo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( crsbingo_map, AS_PROGRAM, 8, subsino_state ) AM_RANGE( 0x09800, 0x09fff ) AM_RAM AM_RANGE( 0x09000, 0x09000 ) AM_READ_PORT( "SW1" ) @@ -983,7 +983,7 @@ static WRITE8_HANDLER( subsino_out_c_w ) // popmessage("data %02x\n",data); } -static ADDRESS_MAP_START( tisub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tisub_map, AS_PROGRAM, 8, subsino_state ) AM_RANGE( 0x09800, 0x09fff ) AM_RAM AM_RANGE( 0x09000, 0x09000 ) AM_READ_PORT( "SW1" ) @@ -1114,7 +1114,7 @@ static READ8_HANDLER( reel_scrollattr_r ) return state->m_reel1_attr[offset]; } -static ADDRESS_MAP_START( stisub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( stisub_map, AS_PROGRAM, 8, subsino_state ) AM_RANGE( 0x00000, 0x0bfff ) AM_ROM AM_RANGE( 0x0c000, 0x0cfff ) AM_RAM @@ -1155,7 +1155,7 @@ ADDRESS_MAP_END Magic Train (Clear NVRAM ROM?) ***************************************************************************/ -static ADDRESS_MAP_START( mtrainnv_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mtrainnv_map, AS_PROGRAM, 8, subsino_state ) AM_RANGE( 0x00000, 0x0bfff ) AM_ROM AM_RANGE( 0x0c000, 0x0cfff ) AM_RAM @@ -1192,7 +1192,7 @@ static ADDRESS_MAP_START( mtrainnv_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( subsino_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( subsino_iomap, AS_IO, 8, subsino_state ) AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs ADDRESS_MAP_END diff --git a/src/mame/drivers/subsino2.c b/src/mame/drivers/subsino2.c index 141b66ee2a0..722cb8e0afa 100644 --- a/src/mame/drivers/subsino2.c +++ b/src/mame/drivers/subsino2.c @@ -930,7 +930,7 @@ static WRITE16_HANDLER( bishjan_outputs_w ) } -static ADDRESS_MAP_START( bishjan_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bishjan_map, AS_PROGRAM, 16, subsino2_state ) ADDRESS_MAP_GLOBAL_MASK(0xffffff) AM_RANGE( 0x000000, 0x07ffff ) AM_ROM AM_REGION("maincpu", 0) @@ -1111,7 +1111,7 @@ static READ8_HANDLER( mtrain_prot_r ) return "SUBSION"[offset]; } -static ADDRESS_MAP_START( mtrain_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mtrain_map, AS_PROGRAM, 8, subsino2_state ) AM_RANGE( 0x00000, 0x06fff ) AM_ROM AM_RANGE( 0x07800, 0x07fff ) AM_RAM AM_SHARE("nvram") // battery @@ -1144,7 +1144,7 @@ static ADDRESS_MAP_START( mtrain_map, AS_PROGRAM, 8 ) AM_RANGE( 0x0a000, 0x0ffff ) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mtrain_io, AS_IO, 8 ) +static ADDRESS_MAP_START( mtrain_io, AS_IO, 8, subsino2_state ) AM_RANGE( 0x0000, 0x003f ) AM_RAM // internal regs ADDRESS_MAP_END @@ -1178,7 +1178,7 @@ static WRITE8_HANDLER( saklove_outputs_w ) // popmessage("0: %02x - 1: %02x - 2: %02x - 3: %02x", state->m_outputs[0], state->m_outputs[1], state->m_outputs[2], state->m_outputs[3]); } -static ADDRESS_MAP_START( saklove_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( saklove_map, AS_PROGRAM, 8, subsino2_state ) AM_RANGE(0x00000, 0x07fff) AM_RAM AM_SHARE("nvram") // battery // read lo (L1) (only half tilemap?) @@ -1203,7 +1203,7 @@ static ADDRESS_MAP_START( saklove_map, AS_PROGRAM, 8 ) AM_RANGE(0xe0000, 0xfffff) AM_ROM AM_REGION("maincpu",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( saklove_io, AS_IO, 8 ) +static ADDRESS_MAP_START( saklove_io, AS_IO, 8, subsino2_state ) AM_RANGE(0x0000, 0x0000) AM_WRITE( ss9601_scrollctrl_w ) AM_RANGE(0x0020, 0x0020) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) @@ -1269,7 +1269,7 @@ static WRITE8_HANDLER( xplan_outputs_w ) // popmessage("0: %02x - 1: %02x - 2: %02x - 3: %02x", state->m_outputs[0], state->m_outputs[1], state->m_outputs[2], state->m_outputs[3]); } -static ADDRESS_MAP_START( xplan_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( xplan_map, AS_PROGRAM, 8, subsino2_state ) AM_RANGE(0x00000, 0x07fff) AM_RAM AM_SHARE("nvram") // battery // write both (L1, byte_lo2) @@ -1303,7 +1303,7 @@ static ADDRESS_MAP_START( xplan_map, AS_PROGRAM, 8 ) AM_RANGE(0xc0000, 0xfffff) AM_ROM AM_REGION("maincpu",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( xplan_io, AS_IO, 8 ) +static ADDRESS_MAP_START( xplan_io, AS_IO, 8, subsino2_state ) AM_RANGE(0x0000, 0x0000) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x0020, 0x0020) AM_WRITE( ss9601_byte_lo2_w ) @@ -1373,14 +1373,14 @@ static WRITE8_HANDLER( xtrain_outputs_w ) // popmessage("0: %02x - 1: %02x - 2: %02x - 3: %02x", state->m_outputs[0], state->m_outputs[1], state->m_outputs[2], state->m_outputs[3]); } -static ADDRESS_MAP_START( expcard_io, AS_IO, 8 ) +static ADDRESS_MAP_START( expcard_io, AS_IO, 8, subsino2_state ) // 306 = d, 307 = c, 308 = b, 309 = a AM_RANGE(0x0306, 0x0309) AM_WRITE( expcard_outputs_w ) AM_BASE_MEMBER(subsino2_state, m_outputs ) AM_IMPORT_FROM( xplan_io ) ADDRESS_MAP_END -static ADDRESS_MAP_START( xtrain_io, AS_IO, 8 ) +static ADDRESS_MAP_START( xtrain_io, AS_IO, 8, subsino2_state ) // 306 = d, 307 = c, 308 = b, 309 = a AM_RANGE(0x0306, 0x0309) AM_WRITE( xtrain_outputs_w ) AM_BASE_MEMBER(subsino2_state, m_outputs ) diff --git a/src/mame/drivers/summit.c b/src/mame/drivers/summit.c index c1fc631b0b8..164d131e2ba 100644 --- a/src/mame/drivers/summit.c +++ b/src/mame/drivers/summit.c @@ -62,7 +62,7 @@ static WRITE8_HANDLER( out_w ) } -static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mainmap, AS_PROGRAM, 8, summit_state ) AM_RANGE(0x0000, 0x17ff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_BASE_MEMBER(summit_state, m_attr) diff --git a/src/mame/drivers/suna16.c b/src/mame/drivers/suna16.c index 12521a03a67..8c1d83221f9 100644 --- a/src/mame/drivers/suna16.c +++ b/src/mame/drivers/suna16.c @@ -88,7 +88,7 @@ static WRITE16_HANDLER( bestbest_coin_w ) Back Street Soccer ***************************************************************************/ -static ADDRESS_MAP_START( bssoccer_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bssoccer_map, AS_PROGRAM, 16, suna16_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x200000, 0x203fff) AM_RAM // RAM AM_RANGE(0x400000, 0x4001ff) AM_READWRITE(suna16_paletteram16_r, suna16_paletteram16_w) // Banked Palette @@ -107,7 +107,7 @@ ADDRESS_MAP_END Ultra Balloon ***************************************************************************/ -static ADDRESS_MAP_START( uballoon_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( uballoon_map, AS_PROGRAM, 16, suna16_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x800000, 0x803fff) AM_RAM // RAM AM_RANGE(0x200000, 0x2001ff) AM_READWRITE(suna16_paletteram16_r, suna16_paletteram16_w) // Banked Palette @@ -128,7 +128,7 @@ ADDRESS_MAP_END Suna Quiz 6000 Academy ***************************************************************************/ -static ADDRESS_MAP_START( sunaq_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sunaq_map, AS_PROGRAM, 16, suna16_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x500000, 0x500001) AM_READ_PORT("P1") AM_WRITE(suna16_soundlatch_w) // To Sound CPU AM_RANGE(0x500002, 0x500003) AM_READ_PORT("P2") AM_WRITE(suna16_flipscreen_w) // Flip Screen @@ -169,7 +169,7 @@ static WRITE16_HANDLER( bestbest_prot_w ) } -static ADDRESS_MAP_START( bestbest_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bestbest_map, AS_PROGRAM, 16, suna16_state ) AM_RANGE( 0x000000, 0x03ffff ) AM_ROM AM_MIRROR(0xc0000) // ROM AM_RANGE( 0x200000, 0x2fffff ) AM_ROM AM_REGION("user1", 0) // ROM AM_RANGE( 0x500000, 0x500001 ) AM_READ_PORT("P1") AM_WRITE(suna16_soundlatch_w) // To Sound CPU @@ -200,7 +200,7 @@ ADDRESS_MAP_END Back Street Soccer ***************************************************************************/ -static ADDRESS_MAP_START( bssoccer_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bssoccer_sound_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM // RAM AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) // YM2151 @@ -213,7 +213,7 @@ ADDRESS_MAP_END Ultra Balloon ***************************************************************************/ -static ADDRESS_MAP_START( uballoon_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( uballoon_sound_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE(0x0000, 0xefff) AM_ROM // ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM // RAM AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) // YM2151 @@ -224,7 +224,7 @@ ADDRESS_MAP_END Suna Quiz 6000 Academy ***************************************************************************/ -static ADDRESS_MAP_START( sunaq_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sunaq_sound_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE(0x0000, 0xe82f) AM_ROM // ROM AM_RANGE(0xe830, 0xf7ff) AM_RAM // RAM (writes to efxx, could be a program bug tho) AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) // YM2151 @@ -235,7 +235,7 @@ ADDRESS_MAP_END Best Of Best ***************************************************************************/ -static ADDRESS_MAP_START( bestbest_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bestbest_sound_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE( 0x0000, 0xbfff ) AM_ROM // ROM AM_RANGE( 0xc000, 0xc001 ) AM_DEVWRITE( "ymsnd", ym3526_w ) // AM_RANGE( 0xc002, 0xc003 ) AM_DEVWRITE( "aysnd", ay8910_address_data_w ) // AY8910 @@ -280,12 +280,12 @@ static WRITE8_HANDLER( bssoccer_pcm_2_bankswitch_w ) /* Memory maps: Yes, *no* RAM */ -static ADDRESS_MAP_START( bssoccer_pcm_1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bssoccer_pcm_1_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM // ROM AM_RANGE(0x1000, 0xffff) AM_ROMBANK("bank1") // Banked ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bssoccer_pcm_2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bssoccer_pcm_2_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM // ROM AM_RANGE(0x1000, 0xffff) AM_ROMBANK("bank2") // Banked ROM ADDRESS_MAP_END @@ -299,7 +299,7 @@ static WRITE8_DEVICE_HANDLER( bssoccer_DAC_w ) dac_data_w( device, (data & 0xf) * 0x11 ); } -static ADDRESS_MAP_START( bssoccer_pcm_1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bssoccer_pcm_1_io_map, AS_IO, 8, suna16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch2_r) // From The Sound Z80 AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac1", bssoccer_DAC_w) // 2 x DAC @@ -307,7 +307,7 @@ static ADDRESS_MAP_START( bssoccer_pcm_1_io_map, AS_IO, 8 ) AM_RANGE(0x03, 0x03) AM_WRITE(bssoccer_pcm_1_bankswitch_w) // Rom Bank ADDRESS_MAP_END -static ADDRESS_MAP_START( bssoccer_pcm_2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bssoccer_pcm_2_io_map, AS_IO, 8, suna16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch3_r) // From The Sound Z80 AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac3", bssoccer_DAC_w) // 2 x DAC @@ -332,12 +332,12 @@ static WRITE8_HANDLER( uballoon_pcm_1_bankswitch_w ) /* Memory maps: Yes, *no* RAM */ -static ADDRESS_MAP_START( uballoon_pcm_1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( uballoon_pcm_1_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE(0x0000, 0x03ff) AM_ROM // ROM AM_RANGE(0x0400, 0xffff) AM_ROMBANK("bank1") // Banked ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( uballoon_pcm_1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( uballoon_pcm_1_io_map, AS_IO, 8, suna16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch2_r) // From The Sound Z80 AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac1", bssoccer_DAC_w) // 2 x DAC @@ -356,11 +356,11 @@ static MACHINE_RESET(uballoon) Best Of Best ***************************************************************************/ -static ADDRESS_MAP_START( bestbest_pcm_1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bestbest_pcm_1_map, AS_PROGRAM, 8, suna16_state ) AM_RANGE(0x0000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( bestbest_pcm_1_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( bestbest_pcm_1_iomap, AS_IO, 8, suna16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ (soundlatch2_r ) // From The Sound Z80 AM_RANGE(0x00, 0x00) AM_MIRROR(0x02) AM_DEVWRITE("dac1", bssoccer_DAC_w) // 2 x DAC diff --git a/src/mame/drivers/suna8.c b/src/mame/drivers/suna8.c index 6e42d2e51e2..7760387a98f 100644 --- a/src/mame/drivers/suna8.c +++ b/src/mame/drivers/suna8.c @@ -510,7 +510,7 @@ static WRITE8_HANDLER( hardhead_flipscreen_w ) coin_lockout_w ( space->machine(), 1, data & 0x10); } -static ADDRESS_MAP_START( hardhead_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hardhead_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xc000, 0xd7ff) AM_RAM // RAM @@ -527,7 +527,7 @@ static ADDRESS_MAP_START( hardhead_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hardhead_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hardhead_io_map, AS_IO, 8, suna8_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READNOP // ? IRQ Ack ADDRESS_MAP_END @@ -578,7 +578,7 @@ static WRITE8_HANDLER( sranger_prot_w ) space->write_byte(0xcd99,0xff); } -static ADDRESS_MAP_START( rranger_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rranger_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xc000, 0xc000) AM_READWRITE(watchdog_reset_r, soundlatch_w) // To Sound CPU @@ -596,7 +596,7 @@ static ADDRESS_MAP_START( rranger_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rranger_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( rranger_io_map, AS_IO, 8, suna8_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READNOP // ? IRQ Ack ADDRESS_MAP_END @@ -662,7 +662,7 @@ static WRITE8_HANDLER( brickzn_rombank_w ) state->m_rombank = data; } -static ADDRESS_MAP_START( brickzn_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( brickzn_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xc040, 0xc040) AM_WRITE(brickzn_rombank_w ) // ROM Bank @@ -766,7 +766,7 @@ static WRITE8_HANDLER( hardhea2_rambank_1_w ) } -static ADDRESS_MAP_START( hardhea2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hardhea2_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1") // P1 (Inputs) @@ -826,7 +826,7 @@ static WRITE8_HANDLER( starfigh_spritebank_w ) state->m_spritebank = state->m_spritebank_latch; } -static ADDRESS_MAP_START( starfigh_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( starfigh_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1") // P1 (Inputs) @@ -961,7 +961,7 @@ static WRITE8_HANDLER( sparkman_en_trash_w ) } #endif -static ADDRESS_MAP_START( sparkman_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sparkman_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1") // P1 (Inputs) @@ -995,7 +995,7 @@ ADDRESS_MAP_END Hard Head ***************************************************************************/ -static ADDRESS_MAP_START( hardhead_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hardhead_sound_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) AM_RANGE(0xa002, 0xa003) AM_DEVWRITE("aysnd", ay8910_address_data_w ) @@ -1006,7 +1006,7 @@ static ADDRESS_MAP_START( hardhead_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hardhead_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hardhead_sound_io_map, AS_IO, 8, suna8_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x01, 0x01) AM_READNOP // ? IRQ Ack ADDRESS_MAP_END @@ -1016,7 +1016,7 @@ ADDRESS_MAP_END Rough Ranger ***************************************************************************/ -static ADDRESS_MAP_START( rranger_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rranger_sound_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // ROM AM_RANGE(0xa000, 0xa001) AM_DEVWRITE("ym1", ym2203_w ) // Samples + Music AM_RANGE(0xa002, 0xa003) AM_DEVWRITE("ym2", ym2203_w ) // Music + FX @@ -1030,7 +1030,7 @@ ADDRESS_MAP_END Brick Zone ***************************************************************************/ -static ADDRESS_MAP_START( brickzn_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( brickzn_sound_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM // ROM AM_RANGE(0xc000, 0xc001) AM_DEVWRITE("ymsnd", ym3812_w ) AM_RANGE(0xc002, 0xc003) AM_DEVWRITE("aysnd", ay8910_address_data_w ) @@ -1042,7 +1042,7 @@ ADDRESS_MAP_END /* PCM Z80 , 4 DACs (4 bits per sample), NO RAM !! */ -static ADDRESS_MAP_START( brickzn_pcm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( brickzn_pcm_map, AS_PROGRAM, 8, suna8_state ) AM_RANGE(0x0000, 0xffff) AM_ROM // ROM ADDRESS_MAP_END @@ -1054,7 +1054,7 @@ static WRITE8_HANDLER( brickzn_pcm_w ) } -static ADDRESS_MAP_START( brickzn_pcm_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( brickzn_pcm_io_map, AS_IO, 8, suna8_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch2_r ) // From Sound CPU AM_RANGE(0x00, 0x03) AM_WRITE(brickzn_pcm_w ) // 4 x DAC diff --git a/src/mame/drivers/supbtime.c b/src/mame/drivers/supbtime.c index c551e8abe93..beda7c4e118 100644 --- a/src/mame/drivers/supbtime.c +++ b/src/mame/drivers/supbtime.c @@ -59,7 +59,7 @@ static WRITE16_HANDLER( sound_w ) /******************************************************************************/ -static ADDRESS_MAP_START( supbtime_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( supbtime_map, AS_PROGRAM, 16, supbtime_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x104000, 0x11ffff) AM_WRITENOP /* Nothing there */ @@ -76,7 +76,7 @@ static ADDRESS_MAP_START( supbtime_map, AS_PROGRAM, 16 ) AM_RANGE(0x342000, 0x3427ff) AM_RAM AM_BASE_MEMBER(supbtime_state, m_pf2_rowscroll) ADDRESS_MAP_END -static ADDRESS_MAP_START( chinatwn_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( chinatwn_map, AS_PROGRAM, 16, supbtime_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_WRITE(sound_w) AM_RANGE(0x120000, 0x1207ff) AM_RAM AM_BASE_SIZE_MEMBER(supbtime_state, m_spriteram, m_spriteram_size) @@ -94,7 +94,7 @@ ADDRESS_MAP_END /******************************************************************************/ /* Physical memory map (21 bits) */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, supbtime_state ) ADDRESS_MAP_GLOBAL_MASK(0x1fffff) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_NOP /* YM2203 - this board doesn't have one */ diff --git a/src/mame/drivers/supdrapo.c b/src/mame/drivers/supdrapo.c index 753392287e8..f8e093b8fa5 100644 --- a/src/mame/drivers/supdrapo.c +++ b/src/mame/drivers/supdrapo.c @@ -241,7 +241,7 @@ static MACHINE_RESET( supdrapo ) Memory Map **********************************************************************/ -static ADDRESS_MAP_START( sdpoker_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sdpoker_mem, AS_PROGRAM, 8, supdrapo_state ) AM_RANGE(0x0000, 0x4fff) AM_ROM AM_RANGE(0x5000, 0x50ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x57ff, 0x57ff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/superchs.c b/src/mame/drivers/superchs.c index 2f7a0e1d836..f7d2f0b23b2 100644 --- a/src/mame/drivers/superchs.c +++ b/src/mame/drivers/superchs.c @@ -226,7 +226,7 @@ static WRITE32_HANDLER( superchs_stick_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( superchs_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( superchs_map, AS_PROGRAM, 32, superchs_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM AM_BASE_MEMBER(superchs_state, m_ram) AM_RANGE(0x140000, 0x141fff) AM_RAM AM_BASE_SIZE_MEMBER(superchs_state, m_spriteram, m_spriteram_size) @@ -240,7 +240,7 @@ static ADDRESS_MAP_START( superchs_map, AS_PROGRAM, 32 ) AM_RANGE(0x340000, 0x340003) AM_READWRITE(superchs_stick_r, superchs_stick_w) /* stick int request */ ADDRESS_MAP_END -static ADDRESS_MAP_START( superchs_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( superchs_cpub_map, AS_PROGRAM, 16, superchs_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x600000, 0x60ffff) AM_DEVWRITE("tc0480scp", tc0480scp_word_w) /* Only written upon errors */ diff --git a/src/mame/drivers/superdq.c b/src/mame/drivers/superdq.c index 5d3909d8e4d..854d187c230 100644 --- a/src/mame/drivers/superdq.c +++ b/src/mame/drivers/superdq.c @@ -199,13 +199,13 @@ static WRITE8_HANDLER( superdq_ld_w ) * *************************************/ -static ADDRESS_MAP_START( superdq_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( superdq_map, AS_PROGRAM, 8, superdq_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x5c00, 0x5fff) AM_RAM_WRITE(superdq_videoram_w) AM_BASE_MEMBER(superdq_state,m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( superdq_io, AS_IO, 8 ) +static ADDRESS_MAP_START( superdq_io, AS_IO, 8, superdq_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(superdq_ld_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/superqix.c b/src/mame/drivers/superqix.c index e507509a14a..007c9771628 100644 --- a/src/mame/drivers/superqix.c +++ b/src/mame/drivers/superqix.c @@ -576,7 +576,7 @@ static MACHINE_START( pbillian ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, superqix_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xe000, 0xe0ff) AM_RAM AM_BASE_SIZE_MEMBER(superqix_state, m_spriteram, m_spriteram_size) @@ -585,7 +585,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pbillian_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pbillian_port_map, AS_IO, 8, superqix_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM_WRITE(paletteram_BBGGRRII_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x0401, 0x0401) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x0402, 0x0403) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -598,7 +598,7 @@ static ADDRESS_MAP_START( pbillian_port_map, AS_IO, 8 ) AM_RANGE(0x041b, 0x041b) AM_READNOP // input related? but probably not used ADDRESS_MAP_END -static ADDRESS_MAP_START( hotsmash_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hotsmash_port_map, AS_IO, 8, superqix_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM_WRITE(paletteram_BBGGRRII_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x0401, 0x0401) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x0402, 0x0403) AM_DEVWRITE("aysnd", ay8910_data_address_w) @@ -611,7 +611,7 @@ static ADDRESS_MAP_START( hotsmash_port_map, AS_IO, 8 ) AM_RANGE(0x041b, 0x041b) AM_READNOP // input related? but probably not used ADDRESS_MAP_END -static ADDRESS_MAP_START( sqix_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sqix_port_map, AS_IO, 8, superqix_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM_WRITE(paletteram_BBGGRRII_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x0401, 0x0401) AM_DEVREAD("ay1", ay8910_r) AM_RANGE(0x0402, 0x0403) AM_DEVWRITE("ay1", ay8910_data_address_w) @@ -624,7 +624,7 @@ static ADDRESS_MAP_START( sqix_port_map, AS_IO, 8 ) AM_RANGE(0x8800, 0xf7ff) AM_RAM_WRITE(superqix_bitmapram2_w) AM_BASE_MEMBER(superqix_state, m_bitmapram2) ADDRESS_MAP_END -static ADDRESS_MAP_START( bootleg_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bootleg_port_map, AS_IO, 8, superqix_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM_WRITE(paletteram_BBGGRRII_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x0401, 0x0401) AM_DEVREAD("ay1", ay8910_r) AM_RANGE(0x0402, 0x0403) AM_DEVWRITE("ay1", ay8910_data_address_w) @@ -638,7 +638,7 @@ static ADDRESS_MAP_START( bootleg_port_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( m68705_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m68705_map, AS_PROGRAM, 8, superqix_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READ(hotsmash_68705_portA_r) AM_RANGE(0x0001, 0x0001) AM_WRITE(hotsmash_68705_portB_w) @@ -650,12 +650,12 @@ ADDRESS_MAP_END /* I8751 memory handlers */ -static ADDRESS_MAP_START( bootleg_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( bootleg_mcu_io_map, AS_IO, 8, superqix_state ) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(bootleg_mcu_p1_w) AM_RANGE(MCS51_PORT_P3, MCS51_PORT_P3) AM_READWRITE(bootleg_mcu_p3_r, mcu_p3_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sqixu_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sqixu_mcu_io_map, AS_IO, 8, superqix_state ) AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READ(sqixu_mcu_p0_r) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_READ_PORT("DSW1") AM_RANGE(MCS51_PORT_P2, MCS51_PORT_P2) AM_WRITE(sqixu_mcu_p2_w) diff --git a/src/mame/drivers/supertnk.c b/src/mame/drivers/supertnk.c index 9f4bd40ec18..a277c16cad4 100644 --- a/src/mame/drivers/supertnk.c +++ b/src/mame/drivers/supertnk.c @@ -300,7 +300,7 @@ static MACHINE_RESET( supertnk ) * *************************************/ -static ADDRESS_MAP_START( supertnk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( supertnk_map, AS_PROGRAM, 8, supertnk_state ) AM_RANGE(0x0000, 0x07ff) AM_ROM AM_RANGE(0x0800, 0x17ff) AM_ROMBANK("bank1") AM_RANGE(0x1800, 0x1bff) AM_RAM @@ -320,7 +320,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( supertnk_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( supertnk_io_map, AS_IO, 8, supertnk_state ) AM_RANGE(0x0000, 0x0000) AM_WRITENOP AM_RANGE(0x0400, 0x0400) AM_WRITE(supertnk_bitplane_select_0_w) AM_RANGE(0x0401, 0x0401) AM_WRITE(supertnk_bitplane_select_1_w) diff --git a/src/mame/drivers/superwng.c b/src/mame/drivers/superwng.c index f6c44f89ed7..5a6f7e81c5b 100644 --- a/src/mame/drivers/superwng.c +++ b/src/mame/drivers/superwng.c @@ -284,7 +284,7 @@ static WRITE8_HANDLER(superwng_cointcnt2_w) coin_counter_w(space->machine(), 1, data); } -static ADDRESS_MAP_START( superwng_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( superwng_map, AS_PROGRAM, 8, superwng_state ) AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x7fff) AM_RAM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(superwng_bg_vram_w) AM_BASE_MEMBER(superwng_state, m_videoram_bg) @@ -308,7 +308,7 @@ static ADDRESS_MAP_START( superwng_map, AS_PROGRAM, 8 ) AM_RANGE(0xa187, 0xa187) AM_WRITENOP //unknown , always(?) 0 ADDRESS_MAP_END -static ADDRESS_MAP_START( superwng_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( superwng_sound_map, AS_PROGRAM, 8, superwng_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_WRITE(superwng_sound_nmi_clear_w) diff --git a/src/mame/drivers/suprgolf.c b/src/mame/drivers/suprgolf.c index 8551733c715..7e3edd1a94a 100644 --- a/src/mame/drivers/suprgolf.c +++ b/src/mame/drivers/suprgolf.c @@ -299,7 +299,7 @@ static READ8_DEVICE_HANDLER( p2_r ) return (input_port_read(device->machine(), "P2") & 0xf0) | ((input_port_read(device->machine(), "P2_ANALOG") & 0xf)); } -static ADDRESS_MAP_START( suprgolf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( suprgolf_map, AS_PROGRAM, 8, suprgolf_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x4000, 0x4000) AM_WRITE( rom2_bank_select_w ) @@ -310,7 +310,7 @@ static ADDRESS_MAP_START( suprgolf_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, suprgolf_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE_MODERN("ppi8255_0", i8255_device, read, write) AM_RANGE(0x04, 0x07) AM_DEVREADWRITE_MODERN("ppi8255_1", i8255_device, read, write) diff --git a/src/mame/drivers/suprloco.c b/src/mame/drivers/suprloco.c index 5dd1c8ef060..9a08f344092 100644 --- a/src/mame/drivers/suprloco.c +++ b/src/mame/drivers/suprloco.c @@ -25,7 +25,7 @@ static WRITE8_HANDLER( suprloco_soundport_w ) device_spin_until_time(&space->device(), attotime::from_usec(50)); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, suprloco_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc1ff) AM_RAM AM_BASE_SIZE_MEMBER(suprloco_state, m_spriteram, m_spriteram_size) @@ -42,7 +42,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, suprloco_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa003) AM_DEVWRITE("sn1", sn76496_w) diff --git a/src/mame/drivers/suprnova.c b/src/mame/drivers/suprnova.c index 60361e9ec1b..2a0129d34b2 100644 --- a/src/mame/drivers/suprnova.c +++ b/src/mame/drivers/suprnova.c @@ -684,7 +684,7 @@ static WRITE32_HANDLER( skns_v3t_w ) btiles[offset*4+3] = (data & 0x000000ff) >> 0; } -static ADDRESS_MAP_START( skns_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( skns_map, AS_PROGRAM, 32, skns_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_ROM /* BIOS ROM */ AM_RANGE(0x00400000, 0x0040000f) AM_WRITE(skns_io_w) /* I/O Write */ AM_RANGE(0x00400000, 0x00400003) AM_READ_PORT("400000") diff --git a/src/mame/drivers/suprridr.c b/src/mame/drivers/suprridr.c index e52e920e8c3..85576a8d0d4 100644 --- a/src/mame/drivers/suprridr.c +++ b/src/mame/drivers/suprridr.c @@ -163,7 +163,7 @@ static WRITE8_HANDLER( coin_lock_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, suprridr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(suprridr_bgram_w) AM_BASE_MEMBER(suprridr_state, m_bgram) @@ -185,7 +185,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( main_portmap, AS_IO, 8, suprridr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(watchdog_reset_r) ADDRESS_MAP_END @@ -198,13 +198,13 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, suprridr_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x3800, 0x3bff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, suprridr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(sound_irq_ack_w) AM_RANGE(0x8c, 0x8d) AM_DEVWRITE("ay1", ay8910_address_data_w) diff --git a/src/mame/drivers/suprslam.c b/src/mame/drivers/suprslam.c index 99faeb2b966..e1b5c50f2ab 100644 --- a/src/mame/drivers/suprslam.c +++ b/src/mame/drivers/suprslam.c @@ -126,7 +126,7 @@ static WRITE8_HANDLER( suprslam_sh_bankswitch_w ) /*** MEMORY MAPS *************************************************************/ -static ADDRESS_MAP_START( suprslam_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( suprslam_map, AS_PROGRAM, 16, suprslam_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0xfb0000, 0xfb1fff) AM_RAM AM_BASE_MEMBER(suprslam_state, m_spriteram) AM_RANGE(0xfc0000, 0xfcffff) AM_RAM AM_BASE_MEMBER(suprslam_state, m_sp_videoram) @@ -148,13 +148,13 @@ static ADDRESS_MAP_START( suprslam_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff00c, 0xfff00d) AM_WRITEONLY AM_BASE_MEMBER(suprslam_state, m_spr_ctrl) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, suprslam_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, suprslam_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(suprslam_sh_bankswitch_w) AM_RANGE(0x04, 0x04) AM_READWRITE(soundlatch_r, pending_command_clear_w) diff --git a/src/mame/drivers/surpratk.c b/src/mame/drivers/surpratk.c index c62d7dbd466..20c2edc3fbb 100644 --- a/src/mame/drivers/surpratk.c +++ b/src/mame/drivers/surpratk.c @@ -90,7 +90,7 @@ static WRITE8_HANDLER( surpratk_5fc0_w ) /********************************************/ -static ADDRESS_MAP_START( surpratk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( surpratk_map, AS_PROGRAM, 8, surpratk_state ) AM_RANGE(0x0000, 0x07ff) AM_READWRITE(bankedram_r, bankedram_w) AM_BASE_MEMBER(surpratk_state, m_ram) AM_RANGE(0x0800, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") /* banked ROM */ diff --git a/src/mame/drivers/system1.c b/src/mame/drivers/system1.c index f899bb5b9fb..55749a7239e 100644 --- a/src/mame/drivers/system1.c +++ b/src/mame/drivers/system1.c @@ -726,7 +726,7 @@ static WRITE8_HANDLER( nobb_outport24_w ) *************************************/ /* main memory map */ -static ADDRESS_MAP_START( system1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( system1_map, AS_PROGRAM, 8, system1_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM AM_BASE_MEMBER(system1_state, m_ram) @@ -740,7 +740,7 @@ static ADDRESS_MAP_START( system1_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* same as normal System 1 except address map is shuffled (RAM/collision are swapped) */ -static ADDRESS_MAP_START( nobo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nobo_map, AS_PROGRAM, 8, system1_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xc3ff) AM_READWRITE(system1_mixer_collision_r, system1_mixer_collision_w) @@ -754,7 +754,7 @@ static ADDRESS_MAP_START( nobo_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* I/O map for systems with an 8255 PPI */ -static ADDRESS_MAP_START( system1_ppi_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( system1_ppi_io_map, AS_IO, 8, system1_state ) ADDRESS_MAP_GLOBAL_MASK(0x1f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x03) AM_READ_PORT("P1") AM_RANGE(0x04, 0x04) AM_MIRROR(0x03) AM_READ_PORT("P2") @@ -766,7 +766,7 @@ static ADDRESS_MAP_START( system1_ppi_io_map, AS_IO, 8 ) ADDRESS_MAP_END /* I/O map for systems with a Z80 PIO chip */ -static ADDRESS_MAP_START( system1_pio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( system1_pio_io_map, AS_IO, 8, system1_state ) ADDRESS_MAP_GLOBAL_MASK(0x1f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x03) AM_READ_PORT("P1") AM_RANGE(0x04, 0x04) AM_MIRROR(0x03) AM_READ_PORT("P2") @@ -785,7 +785,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, system1_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_MIRROR(0x1800) AM_RAM AM_RANGE(0xa000, 0xa003) AM_MIRROR(0x1fff) AM_DEVWRITE("sn1", sn76496_w) @@ -801,14 +801,14 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, system1_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xffff) AM_READWRITE(mcu_io_r, mcu_io_w) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITE(mcu_control_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( nob_mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( nob_mcu_io_map, AS_IO, 8, system1_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_RAM AM_BASE_MEMBER(system1_state, m_nob_mcu_latch) AM_RANGE(MCS51_PORT_P1, MCS51_PORT_P1) AM_WRITEONLY AM_BASE_MEMBER(system1_state, m_nob_mcu_status) diff --git a/src/mame/drivers/system16.c b/src/mame/drivers/system16.c index 95f77917a78..c591b2845c5 100644 --- a/src/mame/drivers/system16.c +++ b/src/mame/drivers/system16.c @@ -120,7 +120,7 @@ static WRITE16_HANDLER( sound_command_nmi_w ) } -static ADDRESS_MAP_START( shinobib_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shinobib_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM // tilemap ram on the original, used as a buffer on the bootlegs AM_RANGE(0x410000, 0x410fff) AM_RAM AM_BASE_MEMBER(segas1x_bootleg_state, m_textram) @@ -176,7 +176,7 @@ static WRITE16_HANDLER( sys16_coinctrl_w ) } } -static ADDRESS_MAP_START( passshtb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( passshtb_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x400000, 0x407fff) AM_RAM // tilemap ram on original, buffer on bootleg @@ -260,7 +260,7 @@ static READ16_HANDLER( passht4b_io3_r ) return state->m_passht4b_io3_val; } -static ADDRESS_MAP_START( passht4b_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( passht4b_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x400000, 0x407fff) AM_RAM // tilemap ram on original, buffer on bootleg AM_RANGE(0x409000, 0x40afff) AM_RAM AM_BASE_MEMBER(segas1x_bootleg_state, m_bg0_tileram) @@ -309,7 +309,7 @@ static WRITE16_HANDLER( sys16_tilebank_w ) } } -static ADDRESS_MAP_START( wb3bbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wb3bbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x3f0000, 0x3fffff) AM_WRITE(sys16_tilebank_w) AM_RANGE(0x400000, 0x407fff) AM_RAM // tilemap ram on the original, used as a buffer on the bootlegs @@ -429,7 +429,7 @@ static WRITE8_HANDLER( tturfbl_soundbank_w ) } } -static ADDRESS_MAP_START(tturfbl_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START(tturfbl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_READ(tturfbl_soundbank_r) AM_RANGE(0xe000, 0xe000) AM_WRITE(tturfbl_soundbank_w) @@ -438,7 +438,7 @@ static ADDRESS_MAP_START(tturfbl_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tturfbl_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tturfbl_sound_io_map, AS_IO, 8, segas1x_bootleg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x40, 0x40) AM_WRITENOP @@ -447,13 +447,13 @@ ADDRESS_MAP_END /*******************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, segas1x_bootleg_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xe800, 0xe800) AM_READ(soundlatch_r) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, segas1x_bootleg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0xc0, 0xc0) AM_READ(soundlatch_r) @@ -461,7 +461,7 @@ ADDRESS_MAP_END // 7759 -static ADDRESS_MAP_START( sound_7759_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_7759_map, AS_PROGRAM, 8, segas1x_bootleg_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xdfff) AM_ROMBANK("bank1") AM_RANGE(0xe800, 0xe800) AM_READ(soundlatch_r) @@ -479,7 +479,7 @@ static WRITE8_DEVICE_HANDLER( upd7759_bank_w ) //* } -static ADDRESS_MAP_START( sound_7759_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_7759_io_map, AS_IO, 8, segas1x_bootleg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x40, 0x40) AM_DEVWRITE("7759", upd7759_bank_w) @@ -516,7 +516,7 @@ static void set_bg_page( running_machine &machine, int data ) } #ifdef UNUSED_CODE -static ADDRESS_MAP_START( bayroute_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bayroute_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x100000, 0x100003) AM_WRITENOP // tilebank control? AM_RANGE(0x500000, 0x503fff) AM_RAM // work ram @@ -541,7 +541,7 @@ ADDRESS_MAP_END Flash Point (Datsu bootlegs = fpointbl, fpointbj) Has sound latch at $E000 instead of I/O ports $C0-FF */ -static ADDRESS_MAP_START( fpointbl_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fpointbl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) AM_RANGE(0xf800, 0xffff) AM_RAM @@ -611,7 +611,7 @@ static WRITE16_HANDLER( s16bl_bgscrolly_w ) } -static ADDRESS_MAP_START( goldnaxeb1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( goldnaxeb1_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(sys16_textram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_textram) @@ -636,7 +636,7 @@ static ADDRESS_MAP_START( goldnaxeb1_map, AS_PROGRAM, 16 ) AM_RANGE(0xffc000, 0xffffff) AM_RAM // work ram ADDRESS_MAP_END -static ADDRESS_MAP_START( bayrouteb1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bayrouteb1_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x500000, 0x503fff) AM_RAM // work ram AM_RANGE(0x600000, 0x600fff) AM_RAM AM_BASE(&segaic16_spriteram_0) @@ -709,7 +709,7 @@ static WRITE16_HANDLER( datsu_page3_w ) datsu_set_pages(space->machine()); } -static ADDRESS_MAP_START( bayrouteb2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bayrouteb2_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x500000, 0x503fff) AM_RAM // work ram AM_RANGE(0x600000, 0x600fff) AM_RAM AM_BASE(&segaic16_spriteram_0) @@ -733,7 +733,7 @@ static ADDRESS_MAP_START( bayrouteb2_map, AS_PROGRAM, 16 ) AM_RANGE(0x901006, 0x901007) AM_READ_PORT("P2") ADDRESS_MAP_END -static ADDRESS_MAP_START( dduxbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dduxbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x3f0000, 0x3fffff) AM_WRITE(sys16_tilebank_w) AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) @@ -832,7 +832,7 @@ static WRITE16_HANDLER( goldnaxeb2_bgpage_w ) set_bg_page(space->machine(), page ^ 0xffff); } -static ADDRESS_MAP_START( goldnaxeb2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( goldnaxeb2_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(sys16_textram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_textram) @@ -860,7 +860,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( fpointbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fpointbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) @@ -901,7 +901,7 @@ static WRITE16_HANDLER( eswat_tilebank0_w ) } } -static ADDRESS_MAP_START( eswatbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( eswatbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x3e2000, 0x3e2001) AM_WRITE(eswat_tilebank0_w) // external tile bank ( > 0x4000 tiles ) @@ -930,7 +930,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( tetrisbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tetrisbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(sys16_textram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_textram) @@ -966,7 +966,7 @@ static READ16_HANDLER( beautyb_unkx_r ) return state->m_beautyb_unkx; } -static ADDRESS_MAP_START( beautyb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( beautyb_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_WRITENOP AM_RANGE(0x010000, 0x03ffff) AM_WRITENOP @@ -997,7 +997,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( tturfbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tturfbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x203fff) AM_RAM // work ram AM_RANGE(0x300000, 0x300fff) AM_RAM AM_BASE(&segaic16_spriteram_0) @@ -1058,7 +1058,7 @@ static READ8_HANDLER( system18_bank_r ) return 0xff; } -static ADDRESS_MAP_START( sound_18_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_18_map, AS_PROGRAM, 8, segas1x_bootleg_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_READ(system18_bank_r) /**** D/A register ****/ @@ -1083,7 +1083,7 @@ static WRITE8_HANDLER( sys18_soundbank_w ) state->m_sound_bank = NULL; } -static ADDRESS_MAP_START( sound_18_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_18_io_map, AS_IO, 8, segas1x_bootleg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x83) AM_DEVREADWRITE("3438.0", ym3438_r, ym3438_w) AM_RANGE(0x90, 0x93) AM_DEVREADWRITE("3438.1", ym3438_r, ym3438_w) @@ -1145,7 +1145,7 @@ static WRITE16_HANDLER( sound_command_irq_w ) } } -static ADDRESS_MAP_START( shdancbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shdancbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(sys16_textram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_textram) @@ -1262,7 +1262,7 @@ static WRITE8_HANDLER( shdancbl_bankctrl_w ) } } -static ADDRESS_MAP_START(shdancbl_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START(shdancbl_sound_map, AS_PROGRAM, 8, segas1x_bootleg_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_READ(shdancbl_soundbank_r) AM_RANGE(0xc000, 0xc00f) AM_WRITENOP @@ -1276,7 +1276,7 @@ static ADDRESS_MAP_START(shdancbl_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( shdancbl_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( shdancbl_sound_io_map, AS_IO, 8, segas1x_bootleg_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xa0, 0xbf) AM_WRITENOP AM_RANGE(0xc0, 0xdf) AM_READNOP @@ -1289,7 +1289,7 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( mwalkbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mwalkbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) AM_RANGE(0x410000, 0x410fff) AM_RAM_WRITE(sys16_textram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_textram) @@ -1331,7 +1331,7 @@ ADDRESS_MAP_END ***************************************************************************/ /* bootleg doesn't have real vdp or i/o */ -static ADDRESS_MAP_START( astormbl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( astormbl_map, AS_PROGRAM, 16, segas1x_bootleg_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM_WRITE(sys16_tileram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_tileram) AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(sys16_textram_w) AM_BASE_MEMBER(segas1x_bootleg_state, m_textram) diff --git a/src/mame/drivers/tagteam.c b/src/mame/drivers/tagteam.c index 8fd2fe572c3..9010d1e8467 100644 --- a/src/mame/drivers/tagteam.c +++ b/src/mame/drivers/tagteam.c @@ -41,7 +41,7 @@ static WRITE8_HANDLER( irq_clear_w ) cputag_set_input_line(space->machine(), "maincpu", M6502_IRQ_LINE, CLEAR_LINE); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tagteam_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x2000, 0x2000) AM_READ_PORT("P2") AM_WRITE(tagteam_flipscreen_w) AM_RANGE(0x2001, 0x2001) AM_READ_PORT("P1") AM_WRITE(tagteam_control_w) @@ -63,7 +63,7 @@ static WRITE8_HANDLER( sound_nmi_mask_w ) } /* Same as Syusse Oozumou */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tagteam_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("ay1", ay8910_data_address_w) AM_RANGE(0x2002, 0x2003) AM_DEVWRITE("ay2", ay8910_data_address_w) diff --git a/src/mame/drivers/tail2nos.c b/src/mame/drivers/tail2nos.c index baa2b31c89a..396e0148871 100644 --- a/src/mame/drivers/tail2nos.c +++ b/src/mame/drivers/tail2nos.c @@ -33,7 +33,7 @@ static WRITE8_DEVICE_HANDLER( sound_bankswitch_w ) memory_set_bank(device->machine(), "bank3", data & 0x01); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tail2nos_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x27ffff) AM_ROMBANK("bank1") /* extra ROM */ AM_RANGE(0x2c0000, 0x2dffff) AM_ROMBANK("bank2") @@ -50,13 +50,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff008, 0xfff009) AM_WRITE(sound_command_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tail2nos_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank3") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, tail2nos_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x07, 0x07) AM_READ(soundlatch_r) AM_WRITENOP /* the write is a clear pending command */ AM_RANGE(0x08, 0x0b) AM_DEVWRITE("ymsnd", ym2608_w) diff --git a/src/mame/drivers/taito_b.c b/src/mame/drivers/taito_b.c index e45298686f4..5a6d02c3e3c 100644 --- a/src/mame/drivers/taito_b.c +++ b/src/mame/drivers/taito_b.c @@ -520,7 +520,7 @@ static WRITE16_HANDLER( realpunc_output_w ) AM_RANGE(ADDR+0x40000, ADDR+0x7ffff) AM_READWRITE(tc0180vcu_framebuffer_word_r, tc0180vcu_framebuffer_word_w) -static ADDRESS_MAP_START( rastsag2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rastsag2_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x600000, 0x607fff) AM_RAM /* Main RAM */ /*ashura up to 603fff only*/ @@ -531,7 +531,7 @@ static ADDRESS_MAP_START( rastsag2_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( crimec_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( crimec_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_r, tc0220ioc_w, 0xff00) TC0180VCU_MEMRW( 0x400000 ) @@ -542,7 +542,7 @@ static ADDRESS_MAP_START( crimec_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tetrist_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tetrist_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -552,7 +552,7 @@ static ADDRESS_MAP_START( tetrist_map, AS_PROGRAM, 16 ) AM_RANGE(0xa00000, 0xa01fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBRGBx_word_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( tetrista_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tetrista_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) TC0180VCU_MEMRW( 0x400000 ) @@ -564,7 +564,7 @@ static ADDRESS_MAP_START( tetrista_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( hitice_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hitice_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM TC0180VCU_MEMRW( 0x400000 ) AM_RANGE(0x600000, 0x60000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_r, tc0220ioc_w, 0xff00) @@ -580,7 +580,7 @@ static ADDRESS_MAP_START( hitice_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rambo3_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rambo3_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -599,7 +599,7 @@ static ADDRESS_MAP_START( rambo3_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pbobble_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pbobble_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM TC0180VCU_MEMRW( 0x400000 ) AM_RANGE(0x500000, 0x50000f) AM_READ(pbobble_input_bypass_r) AM_DEVWRITE("tc0640fio", tc0640fio_halfword_byteswap_w) @@ -615,7 +615,7 @@ static ADDRESS_MAP_START( pbobble_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* identical to pbobble, above??? */ -static ADDRESS_MAP_START( spacedx_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spacedx_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM TC0180VCU_MEMRW( 0x400000 ) AM_RANGE(0x500000, 0x50000f) AM_READ(pbobble_input_bypass_r) AM_DEVWRITE("tc0640fio", tc0640fio_halfword_byteswap_w) @@ -630,7 +630,7 @@ static ADDRESS_MAP_START( spacedx_map, AS_PROGRAM, 16 ) AM_RANGE(0x900000, 0x90ffff) AM_RAM /* Main RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( spacedxo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spacedxo_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x100002, 0x100003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -645,7 +645,7 @@ static ADDRESS_MAP_START( spacedxo_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( qzshowby_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qzshowby_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_READ(pbobble_input_bypass_r) AM_DEVWRITE("tc0640fio", tc0640fio_halfword_byteswap_w) AM_RANGE(0x200024, 0x200025) AM_READ_PORT("P3_P4_A") /* player 3,4 start */ @@ -661,7 +661,7 @@ static ADDRESS_MAP_START( qzshowby_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( viofight_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( viofight_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -672,7 +672,7 @@ static ADDRESS_MAP_START( viofight_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( masterw_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( masterw_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x203fff) AM_RAM /* Main RAM */ TC0180VCU_MEMRW( 0x400000 ) @@ -684,7 +684,7 @@ static ADDRESS_MAP_START( masterw_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( silentd_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( silentd_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x100002, 0x100003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -702,7 +702,7 @@ static ADDRESS_MAP_START( silentd_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( selfeena_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( selfeena_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM /* Main RAM */ TC0180VCU_MEMRW( 0x200000 ) @@ -714,7 +714,7 @@ static ADDRESS_MAP_START( selfeena_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sbm_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sbm_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* Main RAM */ AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -724,7 +724,7 @@ static ADDRESS_MAP_START( sbm_map, AS_PROGRAM, 16 ) TC0180VCU_MEMRW( 0x900000 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( realpunc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( realpunc_map, AS_PROGRAM, 16, taitob_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x110000, 0x12ffff) AM_RAM @@ -742,7 +742,7 @@ static ADDRESS_MAP_START( realpunc_map, AS_PROGRAM, 16 ) AM_RANGE(0x320002, 0x320003) AM_READNOP AM_DEVWRITE8("tc0140syt", tc0140syt_comm_r, 0xff00) ADDRESS_MAP_END -static ADDRESS_MAP_START( masterw_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( masterw_sound_map, AS_PROGRAM, 8, taitob_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM @@ -751,7 +751,7 @@ static ADDRESS_MAP_START( masterw_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xa001, 0xa001) AM_DEVREADWRITE("tc0140syt", tc0140syt_slave_comm_r, tc0140syt_slave_comm_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitob_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -766,7 +766,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf200, 0xf200) AM_WRITE(bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( viofight_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( viofight_sound_map, AS_PROGRAM, 8, taitob_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8fff) AM_RAM diff --git a/src/mame/drivers/taito_f2.c b/src/mame/drivers/taito_f2.c index b253a5d2f46..5ead70e03b9 100644 --- a/src/mame/drivers/taito_f2.c +++ b/src/mame/drivers/taito_f2.c @@ -693,7 +693,7 @@ static READ16_HANDLER( cchip2_word_r ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( finalb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( finalb_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x200007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_word_r, tc0110pcr_word_w) /* palette */ @@ -707,7 +707,7 @@ static ADDRESS_MAP_START( finalb_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00002, 0xb00003) AM_WRITENOP /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dondokod_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dondokod_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -722,7 +722,7 @@ static ADDRESS_MAP_START( dondokod_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( megab_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megab_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x100002, 0x100003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -737,7 +737,7 @@ static ADDRESS_MAP_START( megab_map, AS_PROGRAM, 16 ) AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( thundfox_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( thundfox_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_r, tc0220ioc_w, 0x00ff) @@ -752,7 +752,7 @@ static ADDRESS_MAP_START( thundfox_map, AS_PROGRAM, 16 ) AM_RANGE(0x800000, 0x80001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0xff00) ADDRESS_MAP_END -static ADDRESS_MAP_START( cameltry_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cameltry_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -768,7 +768,7 @@ static ADDRESS_MAP_START( cameltry_map, AS_PROGRAM, 16 ) AM_RANGE(0xd00000, 0xd0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( qtorimon_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qtorimon_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x200007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_word_r, tc0110pcr_word_w) /* palette */ @@ -781,7 +781,7 @@ static ADDRESS_MAP_START( qtorimon_map, AS_PROGRAM, 16 ) AM_RANGE(0x910000, 0x9120ff) AM_WRITENOP /* error in init code ? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( liquidk_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( liquidk_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -794,7 +794,7 @@ static ADDRESS_MAP_START( liquidk_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( quizhq_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( quizhq_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x200007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_word_r, tc0110pcr_word_w) /* palette */ @@ -815,7 +815,7 @@ static ADDRESS_MAP_START( quizhq_map, AS_PROGRAM, 16 ) AM_RANGE(0x900000, 0x90ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( ssi_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ssi_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_halfword_r, tc0510nio_halfword_w) AM_RANGE(0x200000, 0x20ffff) AM_RAM @@ -828,7 +828,7 @@ static ADDRESS_MAP_START( ssi_map, AS_PROGRAM, 16 ) AM_RANGE(0x800000, 0x80ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) /* sprite ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( gunfront_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gunfront_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -842,7 +842,7 @@ static ADDRESS_MAP_START( gunfront_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( growl_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( growl_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -865,7 +865,7 @@ static ADDRESS_MAP_START( growl_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( mjnquest_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mjnquest_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x110000, 0x11ffff) AM_RAM /* "sram" */ AM_RANGE(0x120000, 0x12ffff) AM_RAM @@ -883,7 +883,7 @@ static ADDRESS_MAP_START( mjnquest_map, AS_PROGRAM, 16 ) AM_RANGE(0x500000, 0x50ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( footchmp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( footchmp_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) @@ -905,7 +905,7 @@ static ADDRESS_MAP_START( footchmp_map, AS_PROGRAM, 16 ) AM_RANGE(0xa00002, 0xa00003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0x00ff) ADDRESS_MAP_END -static ADDRESS_MAP_START( koshien_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( koshien_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -919,7 +919,7 @@ static ADDRESS_MAP_START( koshien_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0xff00) ADDRESS_MAP_END -static ADDRESS_MAP_START( yuyugogo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( yuyugogo_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_halfword_r, tc0510nio_halfword_w) AM_RANGE(0x400000, 0x400001) AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) @@ -933,7 +933,7 @@ static ADDRESS_MAP_START( yuyugogo_map, AS_PROGRAM, 16 ) AM_RANGE(0xd00000, 0xdfffff) AM_ROM AM_REGION("extra", 0) ADDRESS_MAP_END -static ADDRESS_MAP_START( ninjak_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ninjak_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -949,7 +949,7 @@ static ADDRESS_MAP_START( ninjak_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* b00002 written like a watchdog?! */ ADDRESS_MAP_END -static ADDRESS_MAP_START( solfigtr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( solfigtr_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -970,7 +970,7 @@ static ADDRESS_MAP_START( solfigtr_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( qzquest_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qzquest_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x17ffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_halfword_r, tc0510nio_halfword_w) AM_RANGE(0x300000, 0x300001) AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0x00ff) @@ -982,7 +982,7 @@ static ADDRESS_MAP_START( qzquest_map, AS_PROGRAM, 16 ) AM_RANGE(0x720000, 0x72000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_ctrl_word_r, tc0100scn_ctrl_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( pulirula_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pulirula_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -999,7 +999,7 @@ static ADDRESS_MAP_START( pulirula_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_halfword_r, tc0510nio_halfword_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( metalb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( metalb_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x300000, 0x30ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) @@ -1014,7 +1014,7 @@ static ADDRESS_MAP_START( metalb_map, AS_PROGRAM, 16 ) // AM_RANGE(0xa00000, 0xa00001) AM_WRITENOP /* ??? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( qzchikyu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qzchikyu_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x17ffff) AM_ROM AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_halfword_r, tc0510nio_halfword_w) AM_RANGE(0x300000, 0x300001) AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0x00ff) @@ -1026,7 +1026,7 @@ static ADDRESS_MAP_START( qzchikyu_map, AS_PROGRAM, 16 ) AM_RANGE(0x720000, 0x72000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_ctrl_word_r, tc0100scn_ctrl_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( yesnoj_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( yesnoj_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x400000, 0x40ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) @@ -1045,7 +1045,7 @@ static ADDRESS_MAP_START( yesnoj_map, AS_PROGRAM, 16 ) AM_RANGE(0xd00000, 0xd00001) AM_WRITENOP /* lots of similar writes */ ADDRESS_MAP_END -static ADDRESS_MAP_START( deadconx_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( deadconx_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE_SIZE_MEMBER(taitof2_state, m_spriteram, m_spriteram_size) @@ -1066,7 +1066,7 @@ static ADDRESS_MAP_START( deadconx_map, AS_PROGRAM, 16 ) AM_RANGE(0xa00002, 0xa00003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) ADDRESS_MAP_END -static ADDRESS_MAP_START( dinorex_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dinorex_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x2fffff) AM_ROM AM_RANGE(0x300000, 0x30000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_halfword_r, tc0510nio_halfword_w) AM_RANGE(0x400000, 0x400fff) AM_WRITE(taitof2_sprite_extension_w) AM_BASE_SIZE_MEMBER(taitof2_state, m_sprite_extension, m_spriteext_size) @@ -1081,7 +1081,7 @@ static ADDRESS_MAP_START( dinorex_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb00001) AM_WRITENOP /* watchdog? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( qjinsei_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qjinsei_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -1096,7 +1096,7 @@ static ADDRESS_MAP_START( qjinsei_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0000f) AM_DEVREADWRITE("tc0510nio", tc0510nio_halfword_r, tc0510nio_halfword_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( qcrayon_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qcrayon_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM // AM_RANGE(0x200000, 0x200001) AM_WRITENOP /* unknown */ @@ -1112,7 +1112,7 @@ static ADDRESS_MAP_START( qcrayon_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb0001f) AM_DEVWRITE8("tc0360pri", tc0360pri_w, 0x00ff) /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( qcrayon2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( qcrayon2_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x300000, 0x301fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) @@ -1127,7 +1127,7 @@ static ADDRESS_MAP_START( qcrayon2_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb017ff) AM_WRITE(taitof2_sprite_extension_w) AM_BASE_SIZE_MEMBER(taitof2_state, m_sprite_extension, m_spriteext_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( driftout_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driftout_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_DEVWRITE8("tc0140syt", tc0140syt_port_w, 0xff00) AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8("tc0140syt", tc0140syt_comm_r, tc0140syt_comm_w, 0xff00) @@ -1145,7 +1145,7 @@ static ADDRESS_MAP_START( driftout_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* same as driftout, except for sound address 0x200000 */ -static ADDRESS_MAP_START( driveout_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( driveout_map, AS_PROGRAM, 16, taitof2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x200003) AM_READNOP AM_WRITE(driveout_sound_command_w) AM_RANGE(0x300000, 0x30ffff) AM_RAM @@ -1164,7 +1164,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitof2_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -1181,7 +1181,7 @@ ADDRESS_MAP_END /* Alt version of Cameltry, YM2203 + M6925 sound */ -static ADDRESS_MAP_START( cameltrya_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cameltrya_sound_map, AS_PROGRAM, 8, taitof2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM // I can't see a bank control, but there ARE some bytes past 0x8000 AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x9001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) @@ -1192,7 +1192,7 @@ static ADDRESS_MAP_START( cameltrya_sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( driveout_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( driveout_sound_map, AS_PROGRAM, 8, taitof2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(oki_bank_w) diff --git a/src/mame/drivers/taito_f3.c b/src/mame/drivers/taito_f3.c index b8042414281..a223d517a26 100644 --- a/src/mame/drivers/taito_f3.c +++ b/src/mame/drivers/taito_f3.c @@ -189,7 +189,7 @@ static WRITE16_HANDLER( f3_unk_w ) /******************************************************************************/ -static ADDRESS_MAP_START( f3_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( f3_map, AS_PROGRAM, 32, taito_f3_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x300000, 0x30007f) AM_WRITE(f3_sound_bankswitch_w) AM_RANGE(0x400000, 0x41ffff) AM_MIRROR(0x20000) AM_RAM AM_BASE_MEMBER(taito_f3_state, m_f3_ram) diff --git a/src/mame/drivers/taito_h.c b/src/mame/drivers/taito_h.c index ad72a518b59..286d404ce27 100644 --- a/src/mame/drivers/taito_h.c +++ b/src/mame/drivers/taito_h.c @@ -249,7 +249,7 @@ static WRITE8_HANDLER( sound_bankswitch_w ) ***************************************************************************/ -static ADDRESS_MAP_START( syvalion_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( syvalion_map, AS_PROGRAM, 16, taitoh_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_BASE_MEMBER(taitoh_state, m_m68000_mainram) AM_RANGE(0x200000, 0x200001) AM_READ8(syvalion_input_bypass_r, 0x00ff) AM_DEVWRITE8("tc0220ioc", tc0220ioc_portreg_w, 0x00ff) @@ -260,7 +260,7 @@ static ADDRESS_MAP_START( syvalion_map, AS_PROGRAM, 16 ) AM_RANGE(0x500800, 0x500fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( recordbr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( recordbr_map, AS_PROGRAM, 16, taitoh_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_BASE_MEMBER(taitoh_state, m_m68000_mainram) AM_RANGE(0x200000, 0x200001) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_portreg_r, tc0220ioc_portreg_w, 0x00ff) @@ -271,7 +271,7 @@ static ADDRESS_MAP_START( recordbr_map, AS_PROGRAM, 16 ) AM_RANGE(0x500800, 0x500fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( dleague_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dleague_map, AS_PROGRAM, 16, taitoh_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_BASE_MEMBER(taitoh_state, m_m68000_mainram) AM_RANGE(0x200000, 0x20000f) AM_DEVREADWRITE8("tc0220ioc", tc0220ioc_r, tc0220ioc_w, 0x00ff) @@ -283,7 +283,7 @@ static ADDRESS_MAP_START( dleague_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitoh_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/taito_l.c b/src/mame/drivers/taito_l.c index 022fb47506c..b07cc6588e4 100644 --- a/src/mame/drivers/taito_l.c +++ b/src/mame/drivers/taito_l.c @@ -712,13 +712,13 @@ static READ8_HANDLER( horshoes_trackx_hi_r ) -static ADDRESS_MAP_START( fhawk_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fhawk_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP AM_RANGE(0x8000, 0x9fff) AM_RAM AM_SHARE("share1") AM_RANGE(0xa000, 0xbfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( fhawk_2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fhawk_2_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank6") AM_RANGE(0xc000, 0xc000) AM_WRITE(rombank2switch_w) @@ -734,7 +734,7 @@ static ADDRESS_MAP_START( fhawk_2_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( fhawk_3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fhawk_3_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank7") AM_RANGE(0x8000, 0x9fff) AM_RAM @@ -744,7 +744,7 @@ static ADDRESS_MAP_START( fhawk_3_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( raimais_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( raimais_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x8800, 0x8800) AM_READWRITE(mux_r, mux_w) @@ -754,7 +754,7 @@ static ADDRESS_MAP_START( raimais_map, AS_PROGRAM, 8 ) AM_RANGE(0xa000, 0xbfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( raimais_2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( raimais_2_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") @@ -769,7 +769,7 @@ static WRITE8_HANDLER( sound_bankswitch_w ) memory_set_bankptr (space->machine(), "bank7", &RAM [0x10000 + (banknum * 0x4000)]); } -static ADDRESS_MAP_START( raimais_3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( raimais_3_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank7") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -784,13 +784,13 @@ static ADDRESS_MAP_START( raimais_3_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( champwr_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( champwr_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP AM_RANGE(0x8000, 0x9fff) AM_RAM AM_RANGE(0xa000, 0xbfff) AM_RAM AM_SHARE("share1") ADDRESS_MAP_END -static ADDRESS_MAP_START( champwr_2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( champwr_2_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank6") AM_RANGE(0xc000, 0xdfff) AM_RAM AM_SHARE("share1") @@ -806,7 +806,7 @@ static ADDRESS_MAP_START( champwr_2_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_READWRITE(rombank2switch_r, rombank2switch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( champwr_3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( champwr_3_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank7") AM_RANGE(0x8000, 0x8fff) AM_RAM @@ -821,7 +821,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( kurikint_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kurikint_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP AM_RANGE(0x8000, 0x9fff) AM_RAM AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1") @@ -829,7 +829,7 @@ static ADDRESS_MAP_START( kurikint_map, AS_PROGRAM, 8 ) AM_RANGE(0xa801, 0xa801) AM_WRITE(mux_ctrl_w) AM_READNOP // Watchdog or interrupt ack (value ignored) ADDRESS_MAP_END -static ADDRESS_MAP_START( kurikint_2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kurikint_2_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") @@ -846,7 +846,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( puzznic_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( puzznic_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP COMMON_SINGLE_MAP AM_RANGE(0xa800, 0xa800) AM_READNOP // Watchdog @@ -857,7 +857,7 @@ static ADDRESS_MAP_START( puzznic_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* bootleg, doesn't have the MCU */ -static ADDRESS_MAP_START( puzznici_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( puzznici_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP COMMON_SINGLE_MAP AM_RANGE(0xa800, 0xa800) AM_READNOP // Watchdog @@ -869,7 +869,7 @@ static ADDRESS_MAP_START( puzznici_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( plotting_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( plotting_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP COMMON_SINGLE_MAP AM_RANGE(0xa800, 0xa800) AM_WRITENOP // Watchdog or interrupt ack @@ -877,7 +877,7 @@ static ADDRESS_MAP_START( plotting_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( palamed_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( palamed_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP COMMON_SINGLE_MAP AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN0") @@ -889,7 +889,7 @@ static ADDRESS_MAP_START( palamed_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cachat_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cachat_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP COMMON_SINGLE_MAP AM_RANGE(0xa800, 0xa800) AM_READ_PORT("IN0") @@ -902,7 +902,7 @@ static ADDRESS_MAP_START( cachat_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( horshoes_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( horshoes_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP COMMON_SINGLE_MAP AM_RANGE(0xa800, 0xa800) AM_READ(horshoes_tracky_lo_r) @@ -916,7 +916,7 @@ static ADDRESS_MAP_START( horshoes_map, AS_PROGRAM, 8 ) AM_RANGE(0xbc00, 0xbc00) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( evilston_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( evilston_map, AS_PROGRAM, 8, taitol_state ) COMMON_BANKS_MAP AM_RANGE(0x8000, 0x9fff) AM_RAM AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1") @@ -928,7 +928,7 @@ static ADDRESS_MAP_START( evilston_map, AS_PROGRAM, 8 ) AM_RANGE(0xa807, 0xa807) AM_READ_PORT("IN2") ADDRESS_MAP_END -static ADDRESS_MAP_START( evilston_2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( evilston_2_map, AS_PROGRAM, 8, taitol_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/taito_o.c b/src/mame/drivers/taito_o.c index c974189914e..ba486de94f5 100644 --- a/src/mame/drivers/taito_o.c +++ b/src/mame/drivers/taito_o.c @@ -60,7 +60,7 @@ static READ16_HANDLER(io_r) return retval; } -static ADDRESS_MAP_START( parentj_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( parentj_map, AS_PROGRAM, 16, taitoo_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_MIRROR(0x010000) AM_RAM AM_RANGE(0x200000, 0x20000f) AM_READWRITE(io_r, io_w) /* TC0220IOC ? */ diff --git a/src/mame/drivers/taito_x.c b/src/mame/drivers/taito_x.c index 22ce2b2ce09..b209bd62e30 100644 --- a/src/mame/drivers/taito_x.c +++ b/src/mame/drivers/taito_x.c @@ -421,7 +421,7 @@ static WRITE8_HANDLER( sound_bankswitch_w ) /**************************************************************************/ -static ADDRESS_MAP_START( superman_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( superman_map, AS_PROGRAM, 16, taitox_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x300000, 0x300001) AM_WRITENOP /* written each frame at $3a9c, mostly 0x10 */ AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* written each frame at $3aa2, mostly 0x10 */ @@ -439,7 +439,7 @@ static ADDRESS_MAP_START( superman_map, AS_PROGRAM, 16 ) AM_RANGE(0xf00000, 0xf03fff) AM_RAM /* Main RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( daisenpu_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( daisenpu_map, AS_PROGRAM, 16, taitox_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* written each frame at $2ac, values change */ AM_RANGE(0x500000, 0x50000f) AM_READ(superman_dsw_input_r) @@ -454,7 +454,7 @@ static ADDRESS_MAP_START( daisenpu_map, AS_PROGRAM, 16 ) AM_RANGE(0xf00000, 0xf03fff) AM_RAM /* Main RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( gigandes_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( gigandes_map, AS_PROGRAM, 16, taitox_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* 0x1 written each frame at $d42, watchdog? */ AM_RANGE(0x500000, 0x500007) AM_READ(superman_dsw_input_r) @@ -469,7 +469,7 @@ static ADDRESS_MAP_START( gigandes_map, AS_PROGRAM, 16 ) AM_RANGE(0xf00000, 0xf03fff) AM_RAM /* Main RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( ballbros_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ballbros_map, AS_PROGRAM, 16, taitox_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x400001) AM_WRITENOP /* 0x1 written each frame at $c56, watchdog? */ AM_RANGE(0x500000, 0x50000f) AM_READ(superman_dsw_input_r) @@ -487,7 +487,7 @@ ADDRESS_MAP_END /**************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitox_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -501,7 +501,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w) /* bankswitch ? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( daisenpu_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( daisenpu_sound_map, AS_PROGRAM, 8, taitox_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank2") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/taito_z.c b/src/mame/drivers/taito_z.c index 73e8f1fef63..e0feb506787 100644 --- a/src/mame/drivers/taito_z.c +++ b/src/mame/drivers/taito_z.c @@ -1523,7 +1523,7 @@ static WRITE16_HANDLER( spacegun_pancontrol ) ***********************************************************/ -static ADDRESS_MAP_START( contcirc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( contcirc_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM AM_RANGE(0x084000, 0x087fff) AM_RAM AM_SHARE("share1") @@ -1535,7 +1535,7 @@ static ADDRESS_MAP_START( contcirc_map, AS_PROGRAM, 16 ) AM_RANGE(0x400000, 0x4006ff) AM_RAM AM_BASE_SIZE_MEMBER(taitoz_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( contcirc_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( contcirc_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM AM_RANGE(0x084000, 0x087fff) AM_RAM AM_SHARE("share1") @@ -1545,7 +1545,7 @@ static ADDRESS_MAP_START( contcirc_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( chasehq_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( chasehq_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x107fff) AM_RAM AM_RANGE(0x108000, 0x10bfff) AM_RAM AM_SHARE("share1") @@ -1561,7 +1561,7 @@ static ADDRESS_MAP_START( chasehq_map, AS_PROGRAM, 16 ) AM_RANGE(0xe00000, 0xe003ff) AM_READWRITE(chasehq_motor_r, chasehq_motor_w) /* motor cpu */ ADDRESS_MAP_END -static ADDRESS_MAP_START( chq_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( chq_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x108000, 0x10bfff) AM_RAM AM_SHARE("share1") @@ -1569,7 +1569,7 @@ static ADDRESS_MAP_START( chq_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( enforce_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( enforce_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1") @@ -1581,7 +1581,7 @@ static ADDRESS_MAP_START( enforce_map, AS_PROGRAM, 16 ) AM_RANGE(0x620000, 0x62000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_ctrl_word_r, tc0100scn_ctrl_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( enforce_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( enforce_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1") @@ -1591,7 +1591,7 @@ static ADDRESS_MAP_START( enforce_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bshark_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bshark_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1") @@ -1604,7 +1604,7 @@ static ADDRESS_MAP_START( bshark_map, AS_PROGRAM, 16 ) AM_RANGE(0xd20000, 0xd2000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_ctrl_word_r, tc0100scn_ctrl_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bsharkjjs_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bsharkjjs_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1") @@ -1617,7 +1617,7 @@ static ADDRESS_MAP_START( bsharkjjs_map, AS_PROGRAM, 16 ) AM_RANGE(0xd20000, 0xd2000f) AM_DEVREADWRITE("tc0100scn", tc0100scn_ctrl_word_r, tc0100scn_ctrl_word_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bshark_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bshark_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x108000, 0x10bfff) AM_RAM AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1") @@ -1630,7 +1630,7 @@ static ADDRESS_MAP_START( bshark_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sci_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sci_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x107fff) AM_RAM AM_RANGE(0x108000, 0x10bfff) AM_RAM AM_SHARE("share1") @@ -1646,7 +1646,7 @@ static ADDRESS_MAP_START( sci_map, AS_PROGRAM, 16 ) AM_RANGE(0xc08000, 0xc08001) AM_READWRITE(sci_spriteframe_r, sci_spriteframe_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sci_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sci_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x200000, 0x203fff) AM_RAM AM_RANGE(0x208000, 0x20bfff) AM_RAM AM_SHARE("share1") @@ -1654,7 +1654,7 @@ static ADDRESS_MAP_START( sci_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nightstr_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nightstr_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x110000, 0x113fff) AM_RAM AM_SHARE("share1") @@ -1669,7 +1669,7 @@ static ADDRESS_MAP_START( nightstr_map, AS_PROGRAM, 16 ) AM_RANGE(0xe40000, 0xe40007) AM_READWRITE(nightstr_stick_r, bshark_stick_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( nightstr_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nightstr_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1") @@ -1677,7 +1677,7 @@ static ADDRESS_MAP_START( nightstr_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( aquajack_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( aquajack_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1") @@ -1689,7 +1689,7 @@ static ADDRESS_MAP_START( aquajack_map, AS_PROGRAM, 16 ) AM_RANGE(0xc40000, 0xc403ff) AM_RAM AM_BASE_SIZE_MEMBER(taitoz_state, m_spriteram, m_spriteram_size) ADDRESS_MAP_END -static ADDRESS_MAP_START( aquajack_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( aquajack_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x104000, 0x107fff) AM_RAM AM_SHARE("share1") @@ -1701,7 +1701,7 @@ static ADDRESS_MAP_START( aquajack_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spacegun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spacegun_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x30c000, 0x30ffff) AM_RAM AM_RANGE(0x310000, 0x31ffff) AM_RAM AM_SHARE("share1") @@ -1711,7 +1711,7 @@ static ADDRESS_MAP_START( spacegun_map, AS_PROGRAM, 16 ) AM_RANGE(0xb00000, 0xb00007) AM_DEVREADWRITE("tc0110pcr", tc0110pcr_word_r, tc0110pcr_step1_rbswap_word_w) /* palette */ ADDRESS_MAP_END -static ADDRESS_MAP_START( spacegun_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( spacegun_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x20c000, 0x20ffff) AM_RAM AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("share1") @@ -1725,7 +1725,7 @@ static ADDRESS_MAP_START( spacegun_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dblaxle_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dblaxle_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x200000, 0x203fff) AM_RAM AM_RANGE(0x210000, 0x21ffff) AM_RAM AM_SHARE("share1") @@ -1741,7 +1741,7 @@ static ADDRESS_MAP_START( dblaxle_map, AS_PROGRAM, 16 ) AM_RANGE(0xc08000, 0xc08001) AM_READWRITE(sci_spriteframe_r, sci_spriteframe_w) /* set in int6, seems to stay zero */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dblaxle_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dblaxle_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x110000, 0x11ffff) AM_RAM AM_SHARE("share1") @@ -1750,7 +1750,7 @@ static ADDRESS_MAP_START( dblaxle_cpub_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( racingb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( racingb_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x110000, 0x11ffff) AM_RAM AM_SHARE("share1") @@ -1765,7 +1765,7 @@ static ADDRESS_MAP_START( racingb_map, AS_PROGRAM, 16 ) AM_RANGE(0xb08000, 0xb08001) AM_READWRITE(sci_spriteframe_r, sci_spriteframe_w) /* alternates 0/0x100 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( racingb_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( racingb_cpub_map, AS_PROGRAM, 16, taitoz_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x403fff) AM_RAM AM_RANGE(0x410000, 0x41ffff) AM_RAM AM_SHARE("share1") @@ -1776,7 +1776,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, taitoz_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/taitoair.c b/src/mame/drivers/taitoair.c index c16196c8d17..0191497878d 100644 --- a/src/mame/drivers/taitoair.c +++ b/src/mame/drivers/taitoair.c @@ -402,7 +402,7 @@ static WRITE8_HANDLER( sound_bankswitch_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( airsys_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( airsys_map, AS_PROGRAM, 16, taitoair_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x0c0000, 0x0cffff) AM_RAM AM_BASE_MEMBER(taitoair_state, m_m68000_mainram) AM_RANGE(0x140000, 0x140001) AM_WRITE(system_control_w) /* Pause the TMS32025 */ @@ -423,7 +423,7 @@ ADDRESS_MAP_END /************************** Z80 ****************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taitoair_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -467,11 +467,11 @@ read to 0x3407, puts to line RAM (x) with offset + 0x5d */ -static ADDRESS_MAP_START( DSP_map_program, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( DSP_map_program, AS_PROGRAM, 16, taitoair_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( DSP_map_data, AS_DATA, 16 ) +static ADDRESS_MAP_START( DSP_map_data, AS_DATA, 16, taitoair_state ) AM_RANGE(0x2003, 0x2003) AM_READNOP //bit 0 DMA status flag or vblank AM_RANGE(0x3000, 0x3002) AM_WRITE(dsp_flags_w) AM_RANGE(0x3404, 0x3404) AM_WRITE(dsp_frustum_left_w) @@ -490,7 +490,7 @@ static ADDRESS_MAP_START( DSP_map_data, AS_DATA, 16 ) AM_RANGE(0x8000, 0xffff) AM_READWRITE(dspram_r, dspram_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( DSP_map_io, AS_IO, 16 ) +static ADDRESS_MAP_START( DSP_map_io, AS_IO, 16, taitoair_state ) AM_RANGE(TMS32025_HOLD, TMS32025_HOLD) AM_READ(dsp_HOLD_signal_r) AM_RANGE(TMS32025_HOLDA, TMS32025_HOLDA) AM_WRITE(dsp_HOLDA_signal_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/taitogn.c b/src/mame/drivers/taitogn.c index a74a42fff73..1619d46a3ad 100644 --- a/src/mame/drivers/taitogn.c +++ b/src/mame/drivers/taitogn.c @@ -917,7 +917,7 @@ static MACHINE_RESET( coh3002t ) cputag_set_input_line(machine, "mn10200",INPUT_LINE_RESET,ASSERT_LINE); /* MCU */ } -static ADDRESS_MAP_START( taitogn_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( taitogn_map, AS_PROGRAM, 32, taitogn_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x00400000, 0x007fffff) AM_RAM AM_SHARE("share1") /* ram mirror */ AM_RANGE(0x1f000000, 0x1f1fffff) AM_READWRITE(flash_s1_r, flash_s1_w) diff --git a/src/mame/drivers/taitojc.c b/src/mame/drivers/taitojc.c index 10da40ce708..c827a98f9b2 100644 --- a/src/mame/drivers/taitojc.c +++ b/src/mame/drivers/taitojc.c @@ -850,7 +850,7 @@ static READ32_HANDLER( jc_lan_r ) return 0xffffffff; } -static ADDRESS_MAP_START( taitojc_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( taitojc_map, AS_PROGRAM, 32, taitojc_state ) AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_MIRROR(0x200000) AM_RANGE(0x00400000, 0x01bfffff) AM_ROM AM_REGION("gfx1", 0) AM_RANGE(0x04000000, 0x040f7fff) AM_RAM AM_BASE_MEMBER(taitojc_state,m_vram) @@ -914,12 +914,12 @@ static READ8_HANDLER(hc11_analog_r) } -static ADDRESS_MAP_START( hc11_pgm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hc11_pgm_map, AS_PROGRAM, 8, taitojc_state ) AM_RANGE(0x4000, 0x5fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("user1", 0) ADDRESS_MAP_END -static ADDRESS_MAP_START( hc11_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hc11_io_map, AS_IO, 8, taitojc_state ) AM_RANGE(MC68HC11_IO_PORTA, MC68HC11_IO_PORTA ) AM_NOP AM_RANGE(MC68HC11_IO_PORTG, MC68HC11_IO_PORTG ) AM_READWRITE(hc11_comm_r, hc11_comm_w) AM_RANGE(MC68HC11_IO_PORTH, MC68HC11_IO_PORTH ) AM_NOP @@ -1120,12 +1120,12 @@ static WRITE16_HANDLER( dsp_to_main_w ) COMBINE_DATA(&state->m_dsp_shared_ram[0x7fe]); } -static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tms_program_map, AS_PROGRAM, 16, taitojc_state ) // AM_RANGE(0x0000, 0x1fff) AM_READ(dsp_internal_rom_r) // TODO: Dangerous Curves tries to access 0x207? AM_RANGE(0x4000, 0x7fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tms_data_map, AS_DATA, 16 ) +static ADDRESS_MAP_START( tms_data_map, AS_DATA, 16, taitojc_state ) AM_RANGE(0x6a01, 0x6a02) AM_WRITE(dsp_unk2_w) AM_RANGE(0x6a11, 0x6a12) AM_NOP // same as 0x6a01..02 for the second renderer chip? AM_RANGE(0x6b20, 0x6b20) AM_WRITE(dsp_polygon_fifo_w) diff --git a/src/mame/drivers/taitopjc.c b/src/mame/drivers/taitopjc.c index 238bc9650e2..75ae5290eb5 100644 --- a/src/mame/drivers/taitopjc.c +++ b/src/mame/drivers/taitopjc.c @@ -65,6 +65,13 @@ static UINT32 jc_screen_ram[0x10000]; static UINT8 common_ram[0x2000]; +class taitopjc_state : public driver_device +{ +public: + taitopjc_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) + { } +}; static VIDEO_START( taitopjc ) { @@ -302,7 +309,7 @@ static WRITE64_HANDLER(dsp_w) // DBAT2 U: 0xc0000003 L: 0xc0000022 (0xc0000000...0xc001ffff) // DBAT3 U: 0xfe0003ff L: 0xfe000022 (0xfe000000...0xffffffff) -static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64) +static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64, taitopjc_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM // Work RAM AM_RANGE(0x40000000, 0x4000000f) AM_READWRITE(video_r, video_w) AM_RANGE(0x80000000, 0x80003fff) AM_READWRITE(dsp_r, dsp_w) @@ -358,7 +365,7 @@ static WRITE8_HANDLER(tlcs_sound_w) // 0xfc0fb5: INTRX1 // 0xfc0f41: INTTX1 -static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 8) +static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 8, taitopjc_state ) AM_RANGE(0x010000, 0x02ffff) AM_RAM // Work RAM AM_RANGE(0x040000, 0x0400ff) AM_READWRITE(tlcs_sound_r, tlcs_sound_w) AM_RANGE(0x060000, 0x061fff) AM_READWRITE(tlcs_common_r, tlcs_common_w) @@ -391,7 +398,7 @@ static const tlcs900_interface taitopjc_tlcs900_interface = DEVCB_HANDLER( taitopjc_tlcs900_to3 ) }; -static MACHINE_CONFIG_START( taitopjc, driver_device ) +static MACHINE_CONFIG_START( taitopjc, taitopjc_state ) MCFG_CPU_ADD("maincpu", PPC603E, 100000000) MCFG_CPU_CONFIG(ppc603e_config) MCFG_CPU_PROGRAM_MAP(ppc603e_mem) diff --git a/src/mame/drivers/taitosj.c b/src/mame/drivers/taitosj.c index ae8a11faf85..a07ee93f311 100644 --- a/src/mame/drivers/taitosj.c +++ b/src/mame/drivers/taitosj.c @@ -198,7 +198,7 @@ static CUSTOM_INPUT( input_port_4_f0_r ) } -static ADDRESS_MAP_START( taitosj_main_nomcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( taitosj_main_nomcu_map, AS_PROGRAM, 8, taitosj_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -238,7 +238,7 @@ ADDRESS_MAP_END /* only difference is taitosj_fake_ replaced with taitosj_mcu_ */ -static ADDRESS_MAP_START( taitosj_main_mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( taitosj_main_mcu_map, AS_PROGRAM, 8, taitosj_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -301,7 +301,7 @@ static CUSTOM_INPUT( kikstart_gear_r ) } -static ADDRESS_MAP_START( kikstart_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kikstart_main_map, AS_PROGRAM, 8, taitosj_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -340,7 +340,7 @@ static ADDRESS_MAP_START( kikstart_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( taitosj_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( taitosj_audio_map, AS_PROGRAM, 8, taitosj_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x4800, 0x4801) AM_DEVWRITE("ay2", ay8910_address_data_w) @@ -354,7 +354,7 @@ static ADDRESS_MAP_START( taitosj_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( taitosj_mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( taitosj_mcu_map, AS_PROGRAM, 8, taitosj_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(taitosj_68705_portA_r, taitosj_68705_portA_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(taitosj_68705_portB_r, taitosj_68705_portB_w) diff --git a/src/mame/drivers/taitotz.c b/src/mame/drivers/taitotz.c index 9b3ac858329..dbff7847312 100644 --- a/src/mame/drivers/taitotz.c +++ b/src/mame/drivers/taitotz.c @@ -325,7 +325,7 @@ static WRITE64_HANDLER(ppc_common_w) // 0x40000000...0x400fffff: BIOS Work RAM // 0x40100000...0x40ffffff: User Work RAM -static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64) +static ADDRESS_MAP_START( ppc603e_mem, AS_PROGRAM, 64, taitotz_state ) //AM_RANGE(0x00000000, 0x00000007) AM_RAM // Register/RAM access port? - Written 128k+256k times on boot //AM_RANGE(0x00000008, 0x0000000f) AM_RAM // Register/RAM address port? AM_RANGE(0x00000000, 0x0000000f) AM_WRITE(video_chip_w) @@ -354,7 +354,7 @@ ADDRESS_MAP_END // 0xfc0d55: INTRX1 // 0xfc0ce1: INTTX1 -static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 8) +static ADDRESS_MAP_START( tlcs900h_mem, AS_PROGRAM, 8, taitotz_state ) AM_RANGE(0x010000, 0x02ffff) AM_RAM // Work RAM AM_RANGE(0xfc0000, 0xffffff) AM_ROM AM_REGION("io_cpu", 0) ADDRESS_MAP_END diff --git a/src/mame/drivers/taitowlf.c b/src/mame/drivers/taitowlf.c index 525cdf30346..8d09d48c7d1 100644 --- a/src/mame/drivers/taitowlf.c +++ b/src/mame/drivers/taitowlf.c @@ -457,7 +457,7 @@ static WRITE32_HANDLER(at_page32_w) /*****************************************************************************/ -static ADDRESS_MAP_START( taitowlf_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( taitowlf_map, AS_PROGRAM, 32, taitowlf_state ) AM_RANGE(0x00000000, 0x0009ffff) AM_RAM AM_RANGE(0x000a0000, 0x000bffff) AM_RAM #if ENABLE_VGA @@ -472,7 +472,7 @@ static ADDRESS_MAP_START( taitowlf_map, AS_PROGRAM, 32 ) AM_RANGE(0xfffc0000, 0xffffffff) AM_ROM AM_REGION("user1", 0) /* System BIOS */ ADDRESS_MAP_END -static ADDRESS_MAP_START(taitowlf_io, AS_IO, 32) +static ADDRESS_MAP_START(taitowlf_io, AS_IO, 32, taitowlf_state ) AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", i8237_r, i8237_w, 0xffffffff) AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff) AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) diff --git a/src/mame/drivers/tank8.c b/src/mame/drivers/tank8.c index 0c18341bf4f..8ac2d77f7f2 100644 --- a/src/mame/drivers/tank8.c +++ b/src/mame/drivers/tank8.c @@ -96,7 +96,7 @@ static WRITE8_DEVICE_HANDLER( tank8_motor_w ) discrete_sound_w(device, NODE_RELATIVE(TANK8_MOTOR1_EN, offset), data); } -static ADDRESS_MAP_START( tank8_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tank8_cpu_map, AS_PROGRAM, 8, tank8_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_RANGE(0x0400, 0x17ff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_ROM diff --git a/src/mame/drivers/tankbatt.c b/src/mame/drivers/tankbatt.c index e9608a18163..173d4661cd5 100644 --- a/src/mame/drivers/tankbatt.c +++ b/src/mame/drivers/tankbatt.c @@ -159,7 +159,7 @@ static WRITE8_HANDLER( tankbatt_coin_lockout_w ) coin_lockout_w(space->machine(), 1,data & 1); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tankbatt_state ) AM_RANGE(0x0000, 0x000f) AM_RAM AM_BASE_MEMBER(tankbatt_state, m_bulletsram) AM_SIZE_MEMBER(tankbatt_state, m_bulletsram_size) AM_RANGE(0x0010, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x07ff) AM_RAM diff --git a/src/mame/drivers/tankbust.c b/src/mame/drivers/tankbust.c index 7caf9a099d6..695980775dd 100644 --- a/src/mame/drivers/tankbust.c +++ b/src/mame/drivers/tankbust.c @@ -177,7 +177,7 @@ static READ8_HANDLER( some_changing_input ) return state->m_variable_data; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tankbust_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x9fff) AM_ROMBANK("bank1") AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank2") @@ -196,7 +196,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) //AM_RANGE(0xf800, 0xffff) AM_READ(read_from_unmapped_memory) /* a bug in game code ? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map_cpu2, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map_cpu2, AS_IO, 8, tankbust_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x10) AM_DEVWRITE("ay2", ay8910_data_w) AM_RANGE(0x30, 0x30) AM_DEVREADWRITE("ay2", ay8910_r, ay8910_address_w) @@ -205,7 +205,7 @@ static ADDRESS_MAP_START( port_map_cpu2, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( map_cpu2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( map_cpu2, AS_PROGRAM, 8, tankbust_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_WRITENOP /* garbage, written in initialization loop */ //0x4000 and 0x4040-0x4045 seem to be used (referenced in the code) diff --git a/src/mame/drivers/taotaido.c b/src/mame/drivers/taotaido.c index 94162e76d37..270791e70ac 100644 --- a/src/mame/drivers/taotaido.c +++ b/src/mame/drivers/taotaido.c @@ -89,7 +89,7 @@ static WRITE16_HANDLER( sound_command_w ) cputag_set_input_line(space->machine(), "audiocpu", INPUT_LINE_NMI, PULSE_LINE); } } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, taotaido_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(taotaido_bgvideoram_w) AM_BASE_MEMBER(taotaido_state, m_bgram) // bg ram? AM_RANGE(0xa00000, 0xa01fff) AM_RAM AM_BASE_MEMBER(taotaido_state, m_spriteram) // sprite ram @@ -131,13 +131,13 @@ static WRITE8_HANDLER( taotaido_sh_bankswitch_w ) memory_set_bankptr(space->machine(), "bank1",rom + (data & 0x03) * 0x8000); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, taotaido_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, taotaido_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) AM_RANGE(0x04, 0x04) AM_WRITE(taotaido_sh_bankswitch_w) diff --git a/src/mame/drivers/tapatune.c b/src/mame/drivers/tapatune.c index 41e307ceb83..ee5b1ced1a7 100644 --- a/src/mame/drivers/tapatune.c +++ b/src/mame/drivers/tapatune.c @@ -114,7 +114,7 @@ static READ16_HANDLER(irq_ack_r) return 0; } -static ADDRESS_MAP_START( tapatune_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tapatune_map, AS_PROGRAM, 16, tapatune_state ) AM_RANGE(0x000000, 0x2fffff) AM_ROM // program rom and graphics roms AM_RANGE(0x300000, 0x31ffff) AM_RAM AM_BASE_MEMBER(tapatune_state, m_videoram) // hardware video buffer AM_RANGE(0x320000, 0x327fff) AM_RAM // workram @@ -209,13 +209,13 @@ static WRITE8_HANDLER(bsmt_reg_w) bsmt->write_data(state->m_bsmt_data); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tapatune_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_WRITENOP AM_RANGE(0xe000, 0xefff) AM_RAM AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START ( sound_io_map, AS_IO, 8) +static ADDRESS_MAP_START ( sound_io_map, AS_IO, 8, tapatune_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(bsmt_data_lo_w) AM_RANGE(0x08, 0x08) AM_WRITE(bsmt_data_hi_w) diff --git a/src/mame/drivers/targeth.c b/src/mame/drivers/targeth.c index 74e1d211a34..9547c3c143a 100644 --- a/src/mame/drivers/targeth.c +++ b/src/mame/drivers/targeth.c @@ -63,7 +63,7 @@ static WRITE16_HANDLER( targeth_coin_counter_w ) coin_counter_w( space->machine(), (offset >> 3) & 0x01, data & 0x01); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, targeth_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(targeth_vram_w) AM_BASE_MEMBER(targeth_state, m_videoram) /* Video RAM */ AM_RANGE(0x108000, 0x108007) AM_WRITEONLY AM_BASE_MEMBER(targeth_state, m_vregs) /* Video Registers */ diff --git a/src/mame/drivers/tatsumi.c b/src/mame/drivers/tatsumi.c index 56e9e6a6d04..33ab69f3fcf 100644 --- a/src/mame/drivers/tatsumi.c +++ b/src/mame/drivers/tatsumi.c @@ -211,7 +211,7 @@ static WRITE16_HANDLER(cyclwarr_sound_w) /***************************************************************************/ -static ADDRESS_MAP_START( apache3_v30_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( apache3_v30_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x00000, 0x03fff) AM_RAM AM_RANGE(0x04000, 0x07fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x08000, 0x08fff) AM_RAM_WRITE(apache3_palette_w) AM_BASE_GENERIC(paletteram) @@ -225,7 +225,7 @@ static ADDRESS_MAP_START( apache3_v30_map, AS_PROGRAM, 16 ) AM_RANGE(0xa0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( apache3_68000_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( apache3_68000_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0x80000, 0x83fff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_68k_ram) AM_RANGE(0x90000, 0x93fff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_spriteram) @@ -237,7 +237,7 @@ static ADDRESS_MAP_START( apache3_68000_map, AS_PROGRAM, 16 ) AM_RANGE(0xe0000, 0xe7fff) AM_READWRITE(apache3_z80_r, apache3_z80_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( apache3_v20_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( apache3_v20_map, AS_PROGRAM, 8, tatsumi_state ) AM_RANGE(0x00000, 0x01fff) AM_RAM AM_RANGE(0x04000, 0x04003) AM_NOP // piu select .. ? AM_RANGE(0x06000, 0x06001) AM_READ_PORT("IN0") // esw @@ -247,14 +247,14 @@ static ADDRESS_MAP_START( apache3_v20_map, AS_PROGRAM, 8 ) AM_RANGE(0xf0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( apache3_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( apache3_z80_map, AS_PROGRAM, 8, tatsumi_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_apache3_z80_ram) AM_RANGE(0x8000, 0xffff) AM_WRITE(apache3_road_x_w) ADDRESS_MAP_END /*****************************************************************/ -static ADDRESS_MAP_START( roundup5_v30_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( roundup5_v30_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x00000, 0x07fff) AM_RAM AM_RANGE(0x08000, 0x0bfff) AM_RAM_WRITE(roundup5_text_w) AM_BASE_MEMBER(tatsumi_state, m_videoram) AM_RANGE(0x0c000, 0x0c003) AM_WRITE(roundup5_crt_w) @@ -270,7 +270,7 @@ static ADDRESS_MAP_START( roundup5_v30_map, AS_PROGRAM, 16 ) AM_RANGE(0x80000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( roundup5_68000_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( roundup5_68000_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x00000, 0x7ffff) AM_ROM AM_RANGE(0x80000, 0x83fff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_68k_ram) AM_RANGE(0x90000, 0x93fff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_spriteram) @@ -282,7 +282,7 @@ static ADDRESS_MAP_START( roundup5_68000_map, AS_PROGRAM, 16 ) AM_RANGE(0xe0000, 0xe0001) AM_WRITE(roundup5_e0000_w) AM_BASE_MEMBER(tatsumi_state, m_roundup5_e0000_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( roundup5_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( roundup5_z80_map, AS_PROGRAM, 8, tatsumi_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xffef) AM_RAM AM_RANGE(0xfff0, 0xfff1) AM_DEVREADWRITE("ymsnd", tatsumi_hack_ym2151_r, ym2151_w) @@ -296,7 +296,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( cyclwarr_68000a_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cyclwarr_68000a_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_cyclwarr_cpua_ram) AM_RANGE(0x03e000, 0x03efff) AM_RAM AM_RANGE(0x040000, 0x043fff) AM_READWRITE(cyclwarr_cpu_bb_r, cyclwarr_cpu_bb_w) @@ -318,7 +318,7 @@ static ADDRESS_MAP_START( cyclwarr_68000a_map, AS_PROGRAM, 16 ) AM_RANGE(0x2c0000, 0x33ffff) AM_ROMBANK("bank1") /* CPU A ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cyclwarr_68000b_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cyclwarr_68000b_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_cyclwarr_cpub_ram) AM_RANGE(0x080000, 0x08ffff) AM_READWRITE(cyclwarr_videoram1_r, cyclwarr_videoram1_w) @@ -339,7 +339,7 @@ static ADDRESS_MAP_START( cyclwarr_68000b_map, AS_PROGRAM, 16 ) AM_RANGE(0x2c0000, 0x33ffff) AM_ROMBANK("bank1") /* CPU A ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cyclwarr_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cyclwarr_z80_map, AS_PROGRAM, 8, tatsumi_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xffef) AM_RAM AM_RANGE(0xfff0, 0xfff1) AM_DEVREADWRITE("ymsnd", tatsumi_hack_ym2151_r, ym2151_w) @@ -350,7 +350,7 @@ ADDRESS_MAP_END /******************************************************************************/ -static ADDRESS_MAP_START( bigfight_68000a_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigfight_68000a_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_cyclwarr_cpua_ram) AM_RANGE(0x03e000, 0x03efff) AM_RAM @@ -374,7 +374,7 @@ static ADDRESS_MAP_START( bigfight_68000a_map, AS_PROGRAM, 16 ) AM_RANGE(0x200000, 0x27ffff) AM_ROMBANK("bank1") /* CPU B ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( bigfight_68000b_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bigfight_68000b_map, AS_PROGRAM, 16, tatsumi_state ) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE_MEMBER(tatsumi_state, m_cyclwarr_cpub_ram) AM_RANGE(0x080000, 0x08ffff) AM_READWRITE(cyclwarr_videoram1_r, cyclwarr_videoram1_w) AM_RANGE(0x090000, 0x09ffff) AM_READWRITE(cyclwarr_videoram0_r, cyclwarr_videoram0_w) diff --git a/src/mame/drivers/tattack.c b/src/mame/drivers/tattack.c index 10e3c8384a1..4e3daccc2b1 100644 --- a/src/mame/drivers/tattack.c +++ b/src/mame/drivers/tattack.c @@ -67,7 +67,7 @@ static VIDEO_START( tattack ) state->m_tmap = tilemap_create( machine, get_tile_info,tilemap_scan_rows,8,8,32,32 ); } -static ADDRESS_MAP_START( mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mem, AS_PROGRAM, 8, tattack_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM // AM_RANGE(0x4000, 0x4000) AM_READNOP $315 AM_RANGE(0x5000, 0x53ff) AM_RAM AM_BASE_MEMBER(tattack_state, m_videoram) diff --git a/src/mame/drivers/taxidriv.c b/src/mame/drivers/taxidriv.c index 65315d8c625..37e34076dd8 100644 --- a/src/mame/drivers/taxidriv.c +++ b/src/mame/drivers/taxidriv.c @@ -151,7 +151,7 @@ static const ppi8255_interface ppi8255_intf[5] = }; -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, taxidriv_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM /* ??? */ AM_RANGE(0x9000, 0x9fff) AM_RAM /* ??? */ @@ -175,7 +175,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, taxidriv_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_RANGE(0x8000, 0x87ff) AM_RAM @@ -187,13 +187,13 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) AM_RANGE(0xe004, 0xe004) AM_READ_PORT("P2") ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu3_map, AS_PROGRAM, 8, taxidriv_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x2000) AM_READNOP /* irq ack? */ AM_RANGE(0xfc00, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu3_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu3_port_map, AS_IO, 8, taxidriv_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x01, 0x01) AM_DEVREAD("ay1", ay8910_r) diff --git a/src/mame/drivers/tbowl.c b/src/mame/drivers/tbowl.c index 54f1a59198d..b60da2e3007 100644 --- a/src/mame/drivers/tbowl.c +++ b/src/mame/drivers/tbowl.c @@ -87,7 +87,7 @@ static WRITE8_HANDLER( tbowl_sound_command_w ) /* Board B */ -static ADDRESS_MAP_START( 6206B_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( 6206B_map, AS_PROGRAM, 8, tbowl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM AM_RANGE(0xa000, 0xbfff) AM_RAM_WRITE(tbowl_bg2videoram_w) AM_BASE_MEMBER(tbowl_state, m_bg2videoram) @@ -128,7 +128,7 @@ static WRITE8_HANDLER ( tbowl_trigger_nmi ) cputag_set_input_line(space->machine(), "maincpu", INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( 6206C_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( 6206C_map, AS_PROGRAM, 8, tbowl_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_READONLY AM_RANGE(0xc000, 0xd7ff) AM_WRITEONLY @@ -186,7 +186,7 @@ static void tbowl_adpcm_int(device_t *device) } } -static ADDRESS_MAP_START( 6206A_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( 6206A_map, AS_PROGRAM, 8, tbowl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xd000, 0xd001) AM_DEVWRITE("ym1", ym3812_w) diff --git a/src/mame/drivers/tceptor.c b/src/mame/drivers/tceptor.c index cfa5c6587ff..5f28f93f3d0 100644 --- a/src/mame/drivers/tceptor.c +++ b/src/mame/drivers/tceptor.c @@ -163,7 +163,7 @@ static READ8_HANDLER( readFF ) /*******************************************************************/ -static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8, tceptor_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(tceptor_tile_ram_w) AM_BASE_MEMBER(tceptor_state, m_tile_ram) AM_RANGE(0x1c00, 0x1fff) AM_RAM_WRITE(tceptor_tile_attr_w) AM_BASE_MEMBER(tceptor_state, m_tile_attr) @@ -183,7 +183,7 @@ static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( m6502_a_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m6502_a_map, AS_PROGRAM, 8, tceptor_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("share2") AM_RANGE(0x0100, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x02ff) AM_RAM @@ -195,7 +195,7 @@ static ADDRESS_MAP_START( m6502_a_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( m6502_b_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m6502_b_map, AS_PROGRAM, 8, tceptor_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_SHARE("share2") AM_RANGE(0x0100, 0x01ff) AM_RAM AM_RANGE(0x4000, 0x4000) AM_DEVWRITE("dac", voice_w) // voice data @@ -204,7 +204,7 @@ static ADDRESS_MAP_START( m6502_b_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16, tceptor_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM // M68K ERROR 1 AM_RANGE(0x100000, 0x10ffff) AM_ROM // not sure AM_RANGE(0x200000, 0x203fff) AM_RAM // M68K ERROR 0 @@ -216,7 +216,7 @@ static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, tceptor_state ) AM_RANGE(0x0000, 0x001f) AM_READWRITE(m6801_io_r, m6801_io_w) AM_RANGE(0x0080, 0x00ff) AM_RAM AM_RANGE(0x1000, 0x13ff) AM_DEVREADWRITE("namco", namcos1_cus30_r, namcos1_cus30_w) @@ -236,7 +236,7 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, tceptor_state ) AM_RANGE(M6801_PORT1, M6801_PORT1) AM_READ(readFF) AM_WRITENOP AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READ(readFF) AM_WRITENOP ADDRESS_MAP_END diff --git a/src/mame/drivers/tcl.c b/src/mame/drivers/tcl.c index 6b35c78a5f5..33d61e94ed4 100644 --- a/src/mame/drivers/tcl.c +++ b/src/mame/drivers/tcl.c @@ -63,7 +63,7 @@ static SCREEN_UPDATE_IND16( tcl ) return 0; } -static ADDRESS_MAP_START( tcl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tcl_map, AS_PROGRAM, 8, tcl_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* bfff ? */ ADDRESS_MAP_END diff --git a/src/mame/drivers/tecmo.c b/src/mame/drivers/tecmo.c index b75e10ec79f..2782333ed66 100644 --- a/src/mame/drivers/tecmo.c +++ b/src/mame/drivers/tecmo.c @@ -133,7 +133,7 @@ static READ8_HANDLER( tecmo_dswb_h_r ) } -static ADDRESS_MAP_START( rygar_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rygar_map, AS_PROGRAM, 8, tecmo_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(tecmo_txvideoram_w) AM_BASE_MEMBER(tecmo_state, m_txvideoram) @@ -161,7 +161,7 @@ static ADDRESS_MAP_START( rygar_map, AS_PROGRAM, 8 ) AM_RANGE(0xf80b, 0xf80b) AM_WRITE(watchdog_reset_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( gemini_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( gemini_map, AS_PROGRAM, 8, tecmo_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(tecmo_txvideoram_w) AM_BASE_MEMBER(tecmo_state, m_txvideoram) @@ -189,7 +189,7 @@ static ADDRESS_MAP_START( gemini_map, AS_PROGRAM, 8 ) AM_RANGE(0xf80b, 0xf80b) AM_WRITE(watchdog_reset_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( silkworm_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( silkworm_map, AS_PROGRAM, 8, tecmo_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc3ff) AM_RAM_WRITE(tecmo_bgvideoram_w) AM_BASE_MEMBER(tecmo_state, m_bgvideoram) AM_RANGE(0xc400, 0xc7ff) AM_RAM_WRITE(tecmo_fgvideoram_w) AM_BASE_MEMBER(tecmo_state, m_fgvideoram) @@ -218,7 +218,7 @@ static ADDRESS_MAP_START( silkworm_map, AS_PROGRAM, 8 ) AM_RANGE(0xf80b, 0xf80b) AM_WRITENOP /* ? if mapped to watchdog like in the others, causes reset */ ADDRESS_MAP_END -static ADDRESS_MAP_START( rygar_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rygar_sound_map, AS_PROGRAM, 8, tecmo_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8000, 0x8001) AM_DEVWRITE("ymsnd", ym3812_w) @@ -228,7 +228,7 @@ static ADDRESS_MAP_START( rygar_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_WRITENOP /* NMI acknowledge */ ADDRESS_MAP_END -static ADDRESS_MAP_START( tecmo_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tecmo_sound_map, AS_PROGRAM, 8, tecmo_state ) AM_RANGE(0x2000, 0x207f) AM_RAM /* Silkworm set #2 has a custom CPU which */ /* writes code to this area */ AM_RANGE(0x0000, 0x7fff) AM_ROM diff --git a/src/mame/drivers/tecmo16.c b/src/mame/drivers/tecmo16.c index fba104929f4..42e08455dc7 100644 --- a/src/mame/drivers/tecmo16.c +++ b/src/mame/drivers/tecmo16.c @@ -43,7 +43,7 @@ static WRITE16_HANDLER( tecmo16_sound_command_w ) /******************************************************************************/ -static ADDRESS_MAP_START( fstarfrc_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fstarfrc_map, AS_PROGRAM, 16, tecmo16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM /* Main RAM */ AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(tecmo16_charram_w) AM_BASE_MEMBER(tecmo16_state, m_charram) @@ -66,7 +66,7 @@ static ADDRESS_MAP_START( fstarfrc_map, AS_PROGRAM, 16 ) AM_RANGE(0x16001e, 0x16001f) AM_WRITE(tecmo16_scroll2_y_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( ginkun_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ginkun_map, AS_PROGRAM, 16, tecmo16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM /* Main RAM */ AM_RANGE(0x110000, 0x110fff) AM_RAM_WRITE(tecmo16_charram_w) AM_BASE_MEMBER(tecmo16_state, m_charram) @@ -91,7 +91,7 @@ static ADDRESS_MAP_START( ginkun_map, AS_PROGRAM, 16 ) AM_RANGE(0x16001e, 0x16001f) AM_WRITE(tecmo16_scroll2_y_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tecmo16_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xfbff) AM_RAM /* Sound RAM */ AM_RANGE(0xfc00, 0xfc00) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/tecmosys.c b/src/mame/drivers/tecmosys.c index 779dd9d9c0c..35e17862174 100644 --- a/src/mame/drivers/tecmosys.c +++ b/src/mame/drivers/tecmosys.c @@ -286,7 +286,7 @@ static WRITE16_DEVICE_HANDLER( eeprom_w ) } } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tecmosys_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM // work ram AM_RANGE(0x210000, 0x210001) AM_READNOP // single byte overflow on stack defined as 0x210000 @@ -341,13 +341,13 @@ static WRITE8_HANDLER( tecmosys_oki_bank_w ) memcpy( region+0x20000, region+0x80000 + upperbank * 0x20000, 0x20000 ); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tecmosys_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xe000, 0xf7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, tecmosys_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_DEVREADWRITE("ymf", ymf262_r, ymf262_w) AM_RANGE(0x10, 0x10) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) diff --git a/src/mame/drivers/tehkanwc.c b/src/mame/drivers/tehkanwc.c index 2dd0ef29ca0..59829fe13b4 100644 --- a/src/mame/drivers/tehkanwc.c +++ b/src/mame/drivers/tehkanwc.c @@ -217,7 +217,7 @@ static void tehkanwc_adpcm_int(device_t *device) -static ADDRESS_MAP_START( main_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_mem, AS_PROGRAM, 8, tehkanwc_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") @@ -243,7 +243,7 @@ static ADDRESS_MAP_START( main_mem, AS_PROGRAM, 8 ) AM_RANGE(0xf870, 0xf870) AM_READ_PORT("DSW3") AM_WRITE(tehkanwc_flipscreen_y_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_mem, AS_PROGRAM, 8, tehkanwc_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") @@ -258,7 +258,7 @@ static ADDRESS_MAP_START( sub_mem, AS_PROGRAM, 8 ) AM_RANGE(0xf860, 0xf860) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8, tehkanwc_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x8001, 0x8001) AM_DEVWRITE("msm", msm_reset_w)/* MSM51xx reset */ @@ -267,7 +267,7 @@ static ADDRESS_MAP_START( sound_mem, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xc000) AM_READWRITE(soundlatch_r, sound_answer_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port, AS_IO, 8, tehkanwc_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREAD("ay1", ay8910_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_data_address_w) diff --git a/src/mame/drivers/tempest.c b/src/mame/drivers/tempest.c index e4e273c2dc7..3bf731df19b 100644 --- a/src/mame/drivers/tempest.c +++ b/src/mame/drivers/tempest.c @@ -394,7 +394,7 @@ static WRITE8_HANDLER( tempest_coin_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tempest_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x080f) AM_WRITEONLY AM_BASE(&avgdvg_colorram) AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/terracre.c b/src/mame/drivers/terracre.c index f9ab3fee700..83c0ea3c57a 100644 --- a/src/mame/drivers/terracre.c +++ b/src/mame/drivers/terracre.c @@ -196,7 +196,7 @@ static MACHINE_START( amazon ) state_save_register_global_array(machine, state->m_mAmazonProtReg); } -static ADDRESS_MAP_START( terracre_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( terracre_map, AS_PROGRAM, 16, terracre_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x020000, 0x0201ff) AM_RAM AM_BASE_MEMBER(terracre_state, m_spriteram) AM_RANGE(0x020200, 0x021fff) AM_RAM @@ -213,7 +213,7 @@ static ADDRESS_MAP_START( terracre_map, AS_PROGRAM, 16 ) AM_RANGE(0x028000, 0x0287ff) AM_WRITE(amazon_foreground_w) AM_BASE_MEMBER(terracre_state, m_videoram) ADDRESS_MAP_END -static ADDRESS_MAP_START( amazon_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( amazon_map, AS_PROGRAM, 16, terracre_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x0401ff) AM_RAM AM_BASE_MEMBER(terracre_state, m_spriteram) AM_RANGE(0x040200, 0x040fff) AM_RAM @@ -230,12 +230,12 @@ static ADDRESS_MAP_START( amazon_map, AS_PROGRAM, 16 ) AM_RANGE(0x070000, 0x070003) AM_READWRITE(amazon_protection_r, amazon_protection_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, terracre_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_3526_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_3526_io_map, AS_IO, 8, terracre_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3526_w) AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_signed_w) @@ -244,7 +244,7 @@ static ADDRESS_MAP_START( sound_3526_io_map, AS_IO, 8 ) AM_RANGE(0x06, 0x06) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_2203_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_2203_io_map, AS_IO, 8, terracre_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ym1", ym2203_w) AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_signed_w) diff --git a/src/mame/drivers/tetrisp2.c b/src/mame/drivers/tetrisp2.c index 7cfb469b971..4e6c8536a32 100644 --- a/src/mame/drivers/tetrisp2.c +++ b/src/mame/drivers/tetrisp2.c @@ -294,7 +294,7 @@ static WRITE16_HANDLER( tetrisp2_coincounter_w ) ***************************************************************************/ -static ADDRESS_MAP_START( tetrisp2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tetrisp2_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM @@ -351,7 +351,7 @@ static WRITE16_HANDLER( nndmseal_b20000_w ) // popmessage("%04x",data); } -static ADDRESS_MAP_START( nndmseal_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( nndmseal_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM @@ -397,7 +397,7 @@ static ADDRESS_MAP_START( nndmseal_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rockn1_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rockn1_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM @@ -431,7 +431,7 @@ static ADDRESS_MAP_START( rockn1_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rockn2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rockn2_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM @@ -465,7 +465,7 @@ static ADDRESS_MAP_START( rockn2_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rocknms_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rocknms_main_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram") // Object RAM AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM @@ -500,7 +500,7 @@ static ADDRESS_MAP_START( rocknms_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rocknms_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rocknms_sub_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("spriteram2") // Object RAM AM_RANGE(0x104000, 0x107fff) AM_RAM // Spare Object RAM diff --git a/src/mame/drivers/tgtpanic.c b/src/mame/drivers/tgtpanic.c index cf97d641bbc..dc5f2e8928e 100644 --- a/src/mame/drivers/tgtpanic.c +++ b/src/mame/drivers/tgtpanic.c @@ -80,12 +80,12 @@ static WRITE8_HANDLER( color_w ) * *************************************/ -static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( prg_map, AS_PROGRAM, 8, tgtpanic_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAM AM_BASE_MEMBER(tgtpanic_state, m_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, tgtpanic_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_WRITE(color_w) AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/thayers.c b/src/mame/drivers/thayers.c index ee6d351c128..140bde73501 100644 --- a/src/mame/drivers/thayers.c +++ b/src/mame/drivers/thayers.c @@ -580,13 +580,13 @@ static READ8_HANDLER( ssi263_register_r ) /* Memory Maps */ -static ADDRESS_MAP_START( thayers_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( thayers_map, AS_PROGRAM, 8, thayers_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xdfff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( thayers_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( thayers_io_map, AS_IO, 8, thayers_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x07) AM_READWRITE(ssi263_register_r, ssi263_register_w) AM_RANGE(0x20, 0x20) AM_WRITE(control_w) @@ -604,7 +604,7 @@ static ADDRESS_MAP_START( thayers_io_map, AS_IO, 8 ) AM_RANGE(0xf7, 0xf7) AM_WRITE(den2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( thayers_cop_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( thayers_cop_io_map, AS_IO, 8, thayers_state ) AM_RANGE(COP400_PORT_L, COP400_PORT_L) AM_READWRITE(cop_l_r, cop_l_w) AM_RANGE(COP400_PORT_G, COP400_PORT_G) AM_READWRITE(cop_g_r, cop_g_w) AM_RANGE(COP400_PORT_D, COP400_PORT_D) AM_WRITE(cop_d_w) diff --git a/src/mame/drivers/thedeep.c b/src/mame/drivers/thedeep.c index 29d76ed5368..5ccf2b99db1 100644 --- a/src/mame/drivers/thedeep.c +++ b/src/mame/drivers/thedeep.c @@ -150,7 +150,7 @@ static WRITE8_HANDLER( thedeep_e100_w ) logerror("pc %04x: e100 = %02x\n", cpu_get_pc(&space->device()),data); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, thedeep_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // ROM (banked) AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -178,7 +178,7 @@ ADDRESS_MAP_END ***************************************************************************/ -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, thedeep_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x0801) AM_DEVWRITE("ymsnd", ym2203_w) // AM_RANGE(0x3000, 0x3000) AM_READ(soundlatch_r) // From Main CPU @@ -260,7 +260,7 @@ static READ8_HANDLER( thedeep_p0_r ) return (input_port_read(space->machine(),"COINS") & 0xfe) | (coin_mux & 1); } -static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, thedeep_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(MCS51_PORT_P0,MCS51_PORT_P0) AM_READ(thedeep_p0_r) AM_RANGE(MCS51_PORT_P1,MCS51_PORT_P1) AM_WRITE(thedeep_p1_w) diff --git a/src/mame/drivers/thepit.c b/src/mame/drivers/thepit.c index 007e4217269..3accaf76be0 100644 --- a/src/mame/drivers/thepit.c +++ b/src/mame/drivers/thepit.c @@ -154,7 +154,7 @@ static WRITE8_HANDLER( nmi_mask_w ) } -static ADDRESS_MAP_START( thepit_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( thepit_main_map, AS_PROGRAM, 8, thepit_state ) AM_RANGE(0x0000, 0x4fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8bff) AM_MIRROR(0x0400) AM_RAM_WRITE(thepit_colorram_w) AM_BASE_MEMBER(thepit_state, m_colorram) @@ -174,7 +174,7 @@ static ADDRESS_MAP_START( thepit_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_READWRITE(watchdog_reset_r, soundlatch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( intrepid_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( intrepid_main_map, AS_PROGRAM, 8, thepit_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8c00, 0x8fff) AM_READWRITE(thepit_colorram_r, thepit_colorram_w) /* mirror for intrepi2 */ @@ -197,13 +197,13 @@ static ADDRESS_MAP_START( intrepid_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, thepit_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x3800, 0x3bff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( audio_io_map, AS_IO, 8, thepit_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(soundlatch_clear_w) AM_RANGE(0x8c, 0x8d) AM_DEVWRITE("ay2", ay8910_address_data_w) diff --git a/src/mame/drivers/thief.c b/src/mame/drivers/thief.c index ab40042acc5..5414c02abe5 100644 --- a/src/mame/drivers/thief.c +++ b/src/mame/drivers/thief.c @@ -151,13 +151,13 @@ static READ8_HANDLER( thief_io_r ) return 0x00; } -static ADDRESS_MAP_START( sharkatt_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sharkatt_main_map, AS_PROGRAM, 8, thief_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM /* 2114 */ AM_RANGE(0xc000, 0xdfff) AM_READWRITE(thief_videoram_r, thief_videoram_w) /* 4116 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( thief_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( thief_main_map, AS_PROGRAM, 8, thief_state ) AM_RANGE(0x0000, 0x0000) AM_WRITE(thief_blit_w) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM /* 2114 */ @@ -170,7 +170,7 @@ static ADDRESS_MAP_START( thief_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, thief_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP /* watchdog */ AM_RANGE(0x10, 0x10) AM_WRITE(thief_video_control_w) diff --git a/src/mame/drivers/thoop2.c b/src/mame/drivers/thoop2.c index c07871ab506..86ba2bb25ce 100644 --- a/src/mame/drivers/thoop2.c +++ b/src/mame/drivers/thoop2.c @@ -84,7 +84,7 @@ static READ16_HANDLER( DS5002FP_R ) return 0x55aa; } -static ADDRESS_MAP_START( thoop2_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( thoop2_map, AS_PROGRAM, 16, thoop2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x101fff) AM_RAM_WRITE(thoop2_vram_w) AM_BASE_MEMBER(thoop2_state, m_videoram) /* Video RAM */ AM_RANGE(0x108000, 0x108007) AM_WRITEONLY AM_BASE_MEMBER(thoop2_state, m_vregs) /* Video Registers */ diff --git a/src/mame/drivers/thunderj.c b/src/mame/drivers/thunderj.c index edb2b78c611..10b388da335 100644 --- a/src/mame/drivers/thunderj.c +++ b/src/mame/drivers/thunderj.c @@ -151,7 +151,7 @@ static WRITE16_HANDLER( thunderj_atarivc_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, thunderj_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1") @@ -184,7 +184,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16, thunderj_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x060000, 0x07ffff) AM_ROM AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/thunderx.c b/src/mame/drivers/thunderx.c index 655d42b0bd4..a382203a3f0 100644 --- a/src/mame/drivers/thunderx.c +++ b/src/mame/drivers/thunderx.c @@ -406,7 +406,7 @@ static WRITE8_HANDLER( k052109_051960_w ) /***************************************************************************/ -static ADDRESS_MAP_START( scontra_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scontra_map, AS_PROGRAM, 8, thunderx_state ) AM_RANGE(0x1f80, 0x1f80) AM_WRITE(scontra_bankswitch_w) /* bankswitch control + coin counters */ AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) AM_RANGE(0x1f88, 0x1f88) AM_WRITE(thunderx_sh_irqtrigger_w) /* cause interrupt on audio CPU */ @@ -426,7 +426,7 @@ static ADDRESS_MAP_START( scontra_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( thunderx_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( thunderx_map, AS_PROGRAM, 8, thunderx_state ) AM_RANGE(0x1f80, 0x1f80) AM_WRITE(thunderx_videobank_w) AM_RANGE(0x1f84, 0x1f84) AM_WRITE(soundlatch_w) AM_RANGE(0x1f88, 0x1f88) AM_WRITE(thunderx_sh_irqtrigger_w) /* cause interrupt on audio CPU */ @@ -446,7 +446,7 @@ static ADDRESS_MAP_START( thunderx_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( scontra_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( scontra_sound_map, AS_PROGRAM, 8, thunderx_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* ROM */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* RAM */ AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) /* soundlatch_r */ @@ -455,7 +455,7 @@ static ADDRESS_MAP_START( scontra_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_DEVWRITE("k007232", scontra_snd_bankswitch_w) /* 007232 bank select */ ADDRESS_MAP_END -static ADDRESS_MAP_START( thunderx_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( thunderx_sound_map, AS_PROGRAM, 8, thunderx_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/tiamc1.c b/src/mame/drivers/tiamc1.c index 4f3576048c0..ee4d2f5e17e 100644 --- a/src/mame/drivers/tiamc1.c +++ b/src/mame/drivers/tiamc1.c @@ -131,13 +131,13 @@ static WRITE8_HANDLER( tiamc1_control_w ) } -static ADDRESS_MAP_START( tiamc1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tiamc1_map, AS_PROGRAM, 8, tiamc1_state ) AM_RANGE(0xb000, 0xb7ff) AM_WRITE(tiamc1_videoram_w) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tiamc1_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tiamc1_io_map, AS_IO, 8, tiamc1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x4f) AM_WRITE(tiamc1_sprite_y_w) /* sprites Y */ AM_RANGE(0x50, 0x5f) AM_WRITE(tiamc1_sprite_x_w) /* sprites X */ diff --git a/src/mame/drivers/tickee.c b/src/mame/drivers/tickee.c index 03827d5d962..f1b7648f671 100644 --- a/src/mame/drivers/tickee.c +++ b/src/mame/drivers/tickee.c @@ -377,7 +377,7 @@ static WRITE16_DEVICE_HANDLER( sound_bank_w ) * *************************************/ -static ADDRESS_MAP_START( tickee_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tickee_map, AS_PROGRAM, 16, tickee_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(tickee_state, m_vram) AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x04000000, 0x04003fff) AM_RAM AM_SHARE("nvram") @@ -395,7 +395,7 @@ ADDRESS_MAP_END /* addreses in the 04x range shifted slightly...*/ -static ADDRESS_MAP_START( ghoshunt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ghoshunt_map, AS_PROGRAM, 16, tickee_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(tickee_state, m_vram) AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x04100000, 0x04103fff) AM_RAM AM_SHARE("nvram") @@ -411,7 +411,7 @@ static ADDRESS_MAP_START( ghoshunt_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mouseatk_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mouseatk_map, AS_PROGRAM, 16, tickee_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(tickee_state, m_vram) AM_RANGE(0x02000000, 0x02ffffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x04000000, 0x04003fff) AM_RAM AM_SHARE("nvram") @@ -428,7 +428,7 @@ ADDRESS_MAP_END /* newer hardware */ -static ADDRESS_MAP_START( rapidfir_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rapidfir_map, AS_PROGRAM, 16, tickee_state ) AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE_MEMBER(tickee_state, m_vram) AM_RANGE(0x02000000, 0x027fffff) AM_READWRITE(rapidfir_transparent_r, rapidfir_transparent_w) AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE(tms34010_io_register_r, tms34010_io_register_w) diff --git a/src/mame/drivers/tigeroad.c b/src/mame/drivers/tigeroad.c index 87891e89241..96e9cc53647 100644 --- a/src/mame/drivers/tigeroad.c +++ b/src/mame/drivers/tigeroad.c @@ -167,7 +167,7 @@ static WRITE8_DEVICE_HANDLER( msm5205_w ) /***************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tigeroad_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0xfe0800, 0xfe0cff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xfe0d00, 0xfe1807) AM_RAM /* still part of OBJ RAM */ @@ -183,7 +183,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tigeroad_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) @@ -191,16 +191,16 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, tigeroad_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x7f, 0x7f) AM_WRITE(soundlatch2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sample_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sample_map, AS_PROGRAM, 8, tigeroad_state ) AM_RANGE(0x0000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sample_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sample_port_map, AS_IO, 8, tigeroad_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch2_r) AM_RANGE(0x01, 0x01) AM_DEVWRITE("msm", msm5205_w) diff --git a/src/mame/drivers/timelimt.c b/src/mame/drivers/timelimt.c index 68f276c3b06..41cd46d69f1 100644 --- a/src/mame/drivers/timelimt.c +++ b/src/mame/drivers/timelimt.c @@ -44,7 +44,7 @@ static WRITE8_HANDLER( sound_reset_w ) /***************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, timelimt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* rom */ AM_RANGE(0x8000, 0x87ff) AM_RAM /* ram */ AM_RANGE(0x8800, 0x8bff) AM_RAM_WRITE(timelimt_videoram_w) AM_BASE_MEMBER(timelimt_state, m_videoram) /* video ram */ @@ -64,17 +64,17 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xc804, 0xc804) AM_WRITENOP /* ???? not used */ ADDRESS_MAP_END -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, timelimt_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(watchdog_reset_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, timelimt_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x3800, 0x3bff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, timelimt_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(soundlatch_clear_w) AM_RANGE(0x8c, 0x8d) AM_DEVREADWRITE("ay1", ay8910_r, ay8910_address_data_w) diff --git a/src/mame/drivers/timeplt.c b/src/mame/drivers/timeplt.c index 83f99eee9a1..cddce1df859 100644 --- a/src/mame/drivers/timeplt.c +++ b/src/mame/drivers/timeplt.c @@ -113,7 +113,7 @@ static READ8_HANDLER( psurge_protection_r ) * *************************************/ -static ADDRESS_MAP_START( timeplt_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( timeplt_main_map, AS_PROGRAM, 8, timeplt_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0xa000, 0xa3ff) AM_RAM_WRITE(timeplt_colorram_w) AM_BASE_MEMBER(timeplt_state, m_colorram) @@ -136,7 +136,7 @@ static ADDRESS_MAP_START( timeplt_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( psurge_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( psurge_main_map, AS_PROGRAM, 8, timeplt_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6004, 0x6004) AM_READ(psurge_protection_r) @@ -158,7 +158,7 @@ static ADDRESS_MAP_START( psurge_main_map, AS_PROGRAM, 8 ) AM_RANGE(0xc360, 0xc360) AM_MIRROR(0x0c9f) AM_READ_PORT("DSW0") ADDRESS_MAP_END -static ADDRESS_MAP_START( chkun_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( chkun_main_map, AS_PROGRAM, 8, timeplt_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM diff --git a/src/mame/drivers/timetrv.c b/src/mame/drivers/timetrv.c index 9954e05a6ae..30a386db8df 100644 --- a/src/mame/drivers/timetrv.c +++ b/src/mame/drivers/timetrv.c @@ -73,13 +73,13 @@ static READ8_HANDLER( ld_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( timetrv_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( timetrv_map, AS_PROGRAM, 8, timetrv_state ) AM_RANGE(0x00000, 0x0ffff) AM_RAM //irq vectors + work ram AM_RANGE(0x10000, 0x107ff) AM_RAM AM_RANGE(0xc0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( timetrv_io, AS_IO, 8 ) +static ADDRESS_MAP_START( timetrv_io, AS_IO, 8, timetrv_state ) AM_RANGE(0x0122, 0x0123) AM_WRITENOP //eeprom write bits AM_RANGE(0x1000, 0x1000) AM_READ(test1_r) //inputs AM_RANGE(0x1001, 0x1001) AM_READ(test2_r) //eeprom read bit + inputs diff --git a/src/mame/drivers/tmaster.c b/src/mame/drivers/tmaster.c index 30ccc788662..b9a8ddb22d5 100644 --- a/src/mame/drivers/tmaster.c +++ b/src/mame/drivers/tmaster.c @@ -505,7 +505,7 @@ static READ16_HANDLER( tmaster_coins_r ) return input_port_read(space->machine(), "COIN")|(space->machine().rand()&0x0800); } -static ADDRESS_MAP_START( tmaster_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tmaster_map, AS_PROGRAM, 16, tmaster_state ) AM_RANGE( 0x000000, 0x1fffff ) AM_ROM AM_RANGE( 0x200000, 0x27ffff ) AM_RAM AM_RANGE( 0x280000, 0x28ffef ) AM_RAM AM_SHARE("nvram") @@ -729,7 +729,7 @@ static READ16_HANDLER( dummy_read_01 ) return 0x3; // Pass the check at PC = 0xfae & a later one } -static ADDRESS_MAP_START( galgames_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( galgames_map, AS_PROGRAM, 16, tmaster_state ) AM_RANGE( 0x000000, 0x03ffff ) AM_READ_BANK(GALGAMES_BANK_000000_R) AM_WRITE_BANK(GALGAMES_BANK_000000_W) AM_BASE_MEMBER(tmaster_state, m_galgames_ram ) AM_RANGE( 0x040000, 0x1fffff ) AM_ROM AM_REGION( "maincpu", 0x40000 ) diff --git a/src/mame/drivers/tmmjprd.c b/src/mame/drivers/tmmjprd.c index 6f11c42a2f5..eb6b9a926c5 100644 --- a/src/mame/drivers/tmmjprd.c +++ b/src/mame/drivers/tmmjprd.c @@ -662,7 +662,7 @@ static WRITE32_HANDLER( tmmjprd_brt_2_w ) } } -static ADDRESS_MAP_START( tmmjprd_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( tmmjprd_map, AS_PROGRAM, 32, tmmjprd_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200010, 0x200013) AM_READ(randomtmmjprds) // gfx chip status? AM_RANGE(0x200980, 0x200983) AM_READ(randomtmmjprds) // sound chip status? diff --git a/src/mame/drivers/tmnt.c b/src/mame/drivers/tmnt.c index 85d6f252e76..3240aa061c9 100644 --- a/src/mame/drivers/tmnt.c +++ b/src/mame/drivers/tmnt.c @@ -575,7 +575,7 @@ static WRITE16_HANDLER( cuebrick_nvbank_w ) state->m_cuebrick_nvram_bank = data >> 8; } -static ADDRESS_MAP_START( cuebrick_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cuebrick_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM /* main RAM */ AM_RANGE(0x060000, 0x063fff) AM_RAM /* main RAM */ @@ -596,7 +596,7 @@ static ADDRESS_MAP_START( cuebrick_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mia_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mia_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_RAM /* main RAM */ AM_RANGE(0x060000, 0x063fff) AM_RAM /* main RAM */ @@ -618,7 +618,7 @@ static ADDRESS_MAP_START( mia_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tmnt_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tmnt_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x063fff) AM_RAM /* main RAM */ AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(tmnt_paletteram_word_w) AM_BASE_GENERIC(paletteram) @@ -639,7 +639,7 @@ static ADDRESS_MAP_START( tmnt_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( punkshot_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( punkshot_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM /* main RAM */ AM_RANGE(0x090000, 0x090fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -659,7 +659,7 @@ static ADDRESS_MAP_START( punkshot_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( lgtnfght_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( lgtnfght_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0x090000, 0x093fff) AM_RAM /*main RAM */ @@ -688,7 +688,7 @@ static WRITE16_HANDLER( ssriders_soundkludge_w ) device_set_input_line_and_vector(state->m_audiocpu, 0, HOLD_LINE, 0xff); } -static ADDRESS_MAP_START( blswhstl_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( blswhstl_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x180000, 0x183fff) AM_DEVREADWRITE("k052109", k052109_word_r, k052109_word_w) AM_RANGE(0x204000, 0x207fff) AM_RAM /* main RAM */ @@ -732,7 +732,7 @@ static WRITE16_HANDLER( k053251_glfgreat_w ) } } -static ADDRESS_MAP_START( glfgreat_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( glfgreat_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM /* main RAM */ AM_RANGE(0x104000, 0x107fff) AM_READWRITE(k053245_scattered_word_r, k053245_scattered_word_w) AM_BASE_MEMBER(tmnt_state, m_spriteram) @@ -756,7 +756,7 @@ static ADDRESS_MAP_START( glfgreat_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( prmrsocr_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( prmrsocr_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM /* main RAM */ AM_RANGE(0x104000, 0x107fff) AM_READWRITE(k053245_scattered_word_r, k053245_scattered_word_w) AM_BASE_MEMBER(tmnt_state, m_spriteram) @@ -1021,7 +1021,7 @@ logerror("copy command %04x sprite %08x data %08x: %04x%04x %04x%04x modifiers } #endif -static ADDRESS_MAP_START( tmnt2_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tmnt2_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_BASE_MEMBER(tmnt_state, m_tmnt2_rom) AM_RANGE(0x104000, 0x107fff) AM_RAM AM_BASE_MEMBER(tmnt_state, m_sunset_104000) /* main RAM */ AM_RANGE(0x140000, 0x140fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -1047,7 +1047,7 @@ static ADDRESS_MAP_START( tmnt2_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ssriders_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ssriders_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x104000, 0x107fff) AM_RAM /* main RAM */ AM_RANGE(0x140000, 0x140fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -1073,7 +1073,7 @@ static ADDRESS_MAP_START( ssriders_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sunsetbl_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sunsetbl_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x0bffff) AM_ROM AM_RANGE(0x104000, 0x107fff) AM_RAM /* main RAM */ AM_RANGE(0x14c000, 0x14cfff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -1099,7 +1099,7 @@ static ADDRESS_MAP_START( sunsetbl_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( thndrx2_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( thndrx2_main_map, AS_PROGRAM, 16, tmnt_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM /* main RAM */ AM_RANGE(0x200000, 0x200fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -1118,7 +1118,7 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( mia_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mia_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) @@ -1127,7 +1127,7 @@ static ADDRESS_MAP_START( mia_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tmnt_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tmnt_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_READWRITE(tmnt_sres_r, tmnt_sres_w) /* title music & UPD7759C reset */ @@ -1140,7 +1140,7 @@ static ADDRESS_MAP_START( tmnt_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( punkshot_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( punkshot_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1149,7 +1149,7 @@ static ADDRESS_MAP_START( punkshot_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( lgtnfght_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( lgtnfght_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0xa000, 0xa001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1157,7 +1157,7 @@ static ADDRESS_MAP_START( lgtnfght_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( glfgreat_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( glfgreat_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf82f) AM_DEVREADWRITE("k053260", k053260_r, k053260_w) @@ -1165,7 +1165,7 @@ static ADDRESS_MAP_START( glfgreat_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ssriders_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ssriders_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1174,7 +1174,7 @@ static ADDRESS_MAP_START( ssriders_audio_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( thndrx2_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( thndrx2_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf801) AM_MIRROR(0x0010) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1193,7 +1193,7 @@ static WRITE8_HANDLER( k054539_ctrl_w ) space->machine().device<k054539_device>("k054539")->write(*space, 0x200 + offset, data, 0xff); } -static ADDRESS_MAP_START( prmrsocr_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( prmrsocr_audio_map, AS_PROGRAM, 8, tmnt_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/tmspoker.c b/src/mame/drivers/tmspoker.c index f4073002b71..1ae1354eb02 100644 --- a/src/mame/drivers/tmspoker.c +++ b/src/mame/drivers/tmspoker.c @@ -309,7 +309,7 @@ static MACHINE_RESET( tmspoker ) * Memory Map Information * *************************/ //59a -static ADDRESS_MAP_START( tmspoker_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tmspoker_map, AS_PROGRAM, 8, tmspoker_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x0fff) AM_ROMBANK("bank1") AM_RANGE(0x2800, 0x2800) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) @@ -326,7 +326,7 @@ static READ8_HANDLER(unk_r) return 0;//0xff;//mame_rand(space->machine); } -static ADDRESS_MAP_START( tmspoker_cru_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tmspoker_cru_map, AS_IO, 8, tmspoker_state ) AM_RANGE(0x0000, 0xffff) AM_READ(unk_r) ADDRESS_MAP_END diff --git a/src/mame/drivers/tnzs.c b/src/mame/drivers/tnzs.c index 1149355bec7..9c8b511a1d8 100644 --- a/src/mame/drivers/tnzs.c +++ b/src/mame/drivers/tnzs.c @@ -748,7 +748,7 @@ static WRITE8_DEVICE_HANDLER( kabukiz_sample_w ) dac_data_w(device, data); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1") /* ROM + RAM */ AM_RANGE(0xc000, 0xcfff) AM_RAM AM_DEVREADWRITE("spritegen", spritecodelow_r8, spritecodelow_w8) @@ -764,7 +764,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_RAM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu0_type2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu0_type2, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAMBANK("bank1") /* ROM + RAM */ AM_RANGE(0xc000, 0xcfff) AM_RAM AM_DEVREADWRITE("spritegen", spritecodelow_r8, spritecodelow_w8) @@ -778,7 +778,7 @@ static ADDRESS_MAP_START( cpu0_type2, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank2") AM_RANGE(0xa000, 0xa000) AM_WRITE(tnzs_bankswitch1_w) @@ -791,7 +791,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 8 ) /* all by insectx. */ ADDRESS_MAP_END -static ADDRESS_MAP_START( kageki_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kageki_sub_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank2") AM_RANGE(0xa000, 0xa000) AM_WRITE(tnzs_bankswitch1_w) @@ -812,7 +812,7 @@ static WRITE8_HANDLER( tnzsb_sound_command_w ) device_set_input_line_and_vector(state->m_audiocpu, 0, HOLD_LINE, 0xff); } -static ADDRESS_MAP_START( tnzsb_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tnzsb_cpu1_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank2") AM_RANGE(0xa000, 0xa000) AM_WRITE(tnzs_bankswitch1_w) @@ -828,7 +828,7 @@ static ADDRESS_MAP_START( tnzsb_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf3ff) AM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( kabukiz_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kabukiz_cpu1_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank2") AM_RANGE(0xa000, 0xa000) AM_WRITE(tnzs_bankswitch1_w) @@ -843,24 +843,24 @@ static ADDRESS_MAP_START( kabukiz_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0xf800, 0xfbff) AM_WRITE(paletteram_xRRRRRGGGGGBBBBB_le_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( tnzsb_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tnzsb_cpu2_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kabukiz_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kabukiz_cpu2_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3") AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tnzsb_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tnzsb_io_map, AS_IO, 8, tnzs_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0x02, 0x02) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( i8742_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( i8742_io_map, AS_IO, 8, tnzs_state ) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_READ(tnzs_port1_r) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(tnzs_port2_r, tnzs_port2_w) AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_READ_PORT("COIN1") @@ -888,7 +888,7 @@ static WRITE8_HANDLER( jpopnics_palette_w ) -static ADDRESS_MAP_START( jpopnics_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jpopnics_main_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xcfff) AM_RAM AM_DEVREADWRITE("spritegen", spritecodelow_r8, spritecodelow_w8) @@ -907,7 +907,7 @@ static WRITE8_HANDLER( jpopnics_subbankswitch_w ) memory_set_bank(space->machine(), "bank2", data & 0x03); } -static ADDRESS_MAP_START( jpopnics_sub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jpopnics_sub_map, AS_PROGRAM, 8, tnzs_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank2") diff --git a/src/mame/drivers/toaplan1.c b/src/mame/drivers/toaplan1.c index f80465dca00..40f300de938 100644 --- a/src/mame/drivers/toaplan1.c +++ b/src/mame/drivers/toaplan1.c @@ -369,7 +369,7 @@ Vimana 55.14 ? /***************************** 68000 Memory Map *****************************/ -static ADDRESS_MAP_START( rallybik_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( rallybik_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM @@ -389,7 +389,7 @@ static ADDRESS_MAP_START( rallybik_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c8000, 0x1c8001) AM_WRITE(toaplan1_reset_sound) ADDRESS_MAP_END -static ADDRESS_MAP_START( truxton_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( truxton_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x083fff) AM_RAM AM_RANGE(0x0c0000, 0x0c0001) AM_READ(toaplan1_frame_done_r) @@ -412,7 +412,7 @@ static ADDRESS_MAP_START( truxton_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x1d0000, 0x1d0001) AM_WRITE(toaplan1_reset_sound) ADDRESS_MAP_END -static ADDRESS_MAP_START( hellfire_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hellfire_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x047fff) AM_RAM AM_RANGE(0x080000, 0x080001) AM_READ_PORT("VBLANK") @@ -435,7 +435,7 @@ static ADDRESS_MAP_START( hellfire_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x180008, 0x180009) AM_WRITE(toaplan1_reset_sound) ADDRESS_MAP_END -static ADDRESS_MAP_START( zerowing_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( zerowing_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x087fff) AM_RAM @@ -458,7 +458,7 @@ static ADDRESS_MAP_START( zerowing_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x4c0006, 0x4c0007) AM_READWRITE(toaplan1_spritesizeram16_r, toaplan1_spritesizeram16_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( demonwld_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( demonwld_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x400001) AM_READ_PORT("VBLANK") // AM_RANGE(0x400000, 0x400001) AM_WRITE(?? video frame related ??) @@ -482,7 +482,7 @@ static ADDRESS_MAP_START( demonwld_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xe0000a, 0xe0000b) AM_WRITE(demonwld_dsp_ctrl_w) /* DSP Comms control */ ADDRESS_MAP_END -static ADDRESS_MAP_START( samesame_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( samesame_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x040000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x080003) AM_WRITE(toaplan1_tile_offsets_w) @@ -513,7 +513,7 @@ static ADDRESS_MAP_START( samesame_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0006, 0x1c0007) AM_READWRITE(toaplan1_spritesizeram16_r, toaplan1_spritesizeram16_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( outzone_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( outzone_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_READ(toaplan1_frame_done_r) AM_RANGE(0x100002, 0x100003) AM_READWRITE(toaplan1_spriteram_offs_r, toaplan1_spriteram_offs_w) @@ -535,7 +535,7 @@ static ADDRESS_MAP_START( outzone_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x340006, 0x340007) AM_WRITE(toaplan1_fcu_flipscreen_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( vimana_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vimana_main_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080003) AM_WRITE(toaplan1_tile_offsets_w) AM_RANGE(0x080006, 0x080007) AM_WRITE(toaplan1_fcu_flipscreen_w) @@ -566,12 +566,12 @@ ADDRESS_MAP_END /***************************** Z80 Memory Map *******************************/ -static ADDRESS_MAP_START( toaplan1_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( toaplan1_sound_map, AS_PROGRAM, 8, toaplan1_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xffff) AM_RAM AM_BASE_MEMBER(toaplan1_state, m_sharedram) ADDRESS_MAP_END -static ADDRESS_MAP_START( rallybik_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( rallybik_sound_io_map, AS_IO, 8, toaplan1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x10, 0x10) AM_READ_PORT("P2") @@ -582,7 +582,7 @@ static ADDRESS_MAP_START( rallybik_sound_io_map, AS_IO, 8 ) AM_RANGE(0x60, 0x61) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( truxton_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( truxton_sound_io_map, AS_IO, 8, toaplan1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x10, 0x10) AM_READ_PORT("P2") @@ -594,7 +594,7 @@ static ADDRESS_MAP_START( truxton_sound_io_map, AS_IO, 8 ) AM_RANGE(0x70, 0x70) AM_READ_PORT("TJUMP") ADDRESS_MAP_END -static ADDRESS_MAP_START( hellfire_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( hellfire_sound_io_map, AS_IO, 8, toaplan1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSWA") AM_RANGE(0x10, 0x10) AM_READ_PORT("DSWB") @@ -606,7 +606,7 @@ static ADDRESS_MAP_START( hellfire_sound_io_map, AS_IO, 8 ) AM_RANGE(0x70, 0x71) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( zerowing_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( zerowing_sound_io_map, AS_IO, 8, toaplan1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("P1") AM_RANGE(0x08, 0x08) AM_READ_PORT("P2") @@ -618,7 +618,7 @@ static ADDRESS_MAP_START( zerowing_sound_io_map, AS_IO, 8 ) AM_RANGE(0xa8, 0xa9) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( demonwld_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( demonwld_sound_io_map, AS_IO, 8, toaplan1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) AM_RANGE(0x20, 0x20) AM_READ_PORT("TJUMP") @@ -630,7 +630,7 @@ static ADDRESS_MAP_START( demonwld_sound_io_map, AS_IO, 8 ) AM_RANGE(0xe0, 0xe0) AM_READ_PORT("DSWA") ADDRESS_MAP_END -static ADDRESS_MAP_START( outzone_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( outzone_sound_io_map, AS_IO, 8, toaplan1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) AM_RANGE(0x04, 0x04) AM_WRITE(toaplan1_coin_w) /* Coin counter/lockout */ @@ -645,13 +645,13 @@ ADDRESS_MAP_END /***************************** TMS32010 Memory Map **************************/ -static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16, toaplan1_state ) AM_RANGE(0x000, 0x7ff) AM_ROM ADDRESS_MAP_END /* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */ -static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16, toaplan1_state ) AM_RANGE(0, 0) AM_WRITE(demonwld_dsp_addrsel_w) AM_RANGE(1, 1) AM_READWRITE(demonwld_dsp_r, demonwld_dsp_w) AM_RANGE(3, 3) AM_WRITE(demonwld_dsp_bio_w) @@ -661,7 +661,7 @@ ADDRESS_MAP_END /***************************** HD647180 Memory Map **************************/ -static ADDRESS_MAP_START( hd647180_mem_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hd647180_mem_map, AS_PROGRAM, 8, toaplan1_state ) AM_RANGE(0x00000, 0x03fff) AM_ROM /* Internal 16k byte ROM */ AM_RANGE(0x0fe00, 0x0ffff) AM_RAM /* Internal 512 byte RAM */ ADDRESS_MAP_END diff --git a/src/mame/drivers/toaplan2.c b/src/mame/drivers/toaplan2.c index b2a33d739e6..9037a64d88c 100644 --- a/src/mame/drivers/toaplan2.c +++ b/src/mame/drivers/toaplan2.c @@ -1045,7 +1045,7 @@ static INTERRUPT_GEN( bbakraid_snd_interrupt ) -static ADDRESS_MAP_START( tekipaki_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tekipaki_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x020000, 0x03ffff) AM_ROM // extra for Whoopee AM_RANGE(0x080000, 0x082fff) AM_RAM @@ -1062,7 +1062,7 @@ static ADDRESS_MAP_START( tekipaki_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( ghox_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ghox_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x040001) AM_READ(ghox_p2_h_analog_r) AM_RANGE(0x080000, 0x083fff) AM_RAM @@ -1081,7 +1081,7 @@ static ADDRESS_MAP_START( ghox_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dogyuun_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dogyuun_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x200010, 0x200011) AM_READ_PORT("IN1") @@ -1096,7 +1096,7 @@ static ADDRESS_MAP_START( dogyuun_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( kbash_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kbash_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x200000, 0x200fff) AM_READWRITE( shared_ram_r, shared_ram_w ) @@ -1110,7 +1110,7 @@ static ADDRESS_MAP_START( kbash_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( kbash2_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( kbash2_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x104000, 0x10401f) AM_RAM // Sound related? @@ -1131,7 +1131,7 @@ static ADDRESS_MAP_START( kbash2_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( truxton2_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( truxton2_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200000, 0x20000d) AM_DEVREADWRITE("gp9001vdp0", gp9001_vdp_r, gp9001_vdp_w) @@ -1155,7 +1155,7 @@ static ADDRESS_MAP_START( truxton2_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pipibibs_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pipibibs_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x082fff) AM_RAM AM_RANGE(0x0c0000, 0x0c0fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -1171,7 +1171,7 @@ static ADDRESS_MAP_START( pipibibs_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END // odd scroll registers -static ADDRESS_MAP_START( pipibibi_bootleg_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pipibibi_bootleg_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x082fff) AM_RAM AM_RANGE(0x083000, 0x0837ff) AM_DEVREADWRITE("gp9001vdp0", pipibibi_bootleg_spriteram16_r, pipibibi_bootleg_spriteram16_w) // SpriteRAM @@ -1193,7 +1193,7 @@ static ADDRESS_MAP_START( pipibibi_bootleg_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fixeight_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fixeight_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x200000, 0x200001) AM_READ_PORT("IN1") @@ -1213,7 +1213,7 @@ static ADDRESS_MAP_START( fixeight_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fixeightbl_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fixeightbl_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // 0-7ffff ? AM_RANGE(0x100000, 0x10ffff) AM_RAM // 100000-107fff 105000-105xxx 106000-106xxx 108000 - related to sound ? AM_RANGE(0x200000, 0x200001) AM_READ_PORT("IN1") @@ -1234,7 +1234,7 @@ static ADDRESS_MAP_START( fixeightbl_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( vfive_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vfive_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM // AM_RANGE(0x200000, 0x20ffff) AM_NOP // Read at startup by broken ROM checksum code - see notes @@ -1249,7 +1249,7 @@ static ADDRESS_MAP_START( vfive_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( batsugun_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( batsugun_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x200010, 0x200011) AM_READ_PORT("IN1") @@ -1264,7 +1264,7 @@ static ADDRESS_MAP_START( batsugun_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( snowbro2_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( snowbro2_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x300000, 0x30000d) AM_DEVREADWRITE("gp9001vdp0", gp9001_vdp_r, gp9001_vdp_w) @@ -1284,7 +1284,7 @@ static ADDRESS_MAP_START( snowbro2_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( mahoudai_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( mahoudai_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x218000, 0x21bfff) AM_READWRITE(shared_ram_r, shared_ram_w) @@ -1307,7 +1307,7 @@ static ADDRESS_MAP_START( mahoudai_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( shippumd_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( shippumd_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x218000, 0x21bfff) AM_READWRITE(shared_ram_r, shared_ram_w) @@ -1331,7 +1331,7 @@ static ADDRESS_MAP_START( shippumd_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bgaregga_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bgaregga_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM AM_RANGE(0x218000, 0x21bfff) AM_READWRITE(shared_ram_r, shared_ram_w) @@ -1354,7 +1354,7 @@ static ADDRESS_MAP_START( bgaregga_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( batrider_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( batrider_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // actually 200000 - 20ffff is probably all main RAM, and the text and palette RAM are written via DMA AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(toaplan2_txvideoram16_w) AM_BASE_SIZE_MEMBER(toaplan2_state, m_txvideoram16, m_tx_vram_size) @@ -1384,7 +1384,7 @@ static ADDRESS_MAP_START( batrider_68k_mem, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bbakraid_68k_mem, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( bbakraid_68k_mem, AS_PROGRAM, 16, toaplan2_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // actually 200000 - 20ffff is probably all main RAM, and the text and palette RAM are written via DMA AM_RANGE(0x200000, 0x201fff) AM_RAM_WRITE(toaplan2_txvideoram16_w) AM_BASE_SIZE_MEMBER(toaplan2_state, m_txvideoram16, m_tx_vram_size) @@ -1415,14 +1415,14 @@ ADDRESS_MAP_END -static ADDRESS_MAP_START( pipibibs_sound_z80_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( pipibibs_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(toaplan2_state, m_shared_ram) AM_RANGE(0xe000, 0xe001) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( raizing_sound_z80_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( raizing_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_BASE_MEMBER(toaplan2_state, m_shared_ram) AM_RANGE(0xe000, 0xe001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -1431,7 +1431,7 @@ static ADDRESS_MAP_START( raizing_sound_z80_mem, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bgaregga_sound_z80_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bgaregga_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM AM_BASE_MEMBER(toaplan2_state, m_shared_ram) @@ -1445,14 +1445,14 @@ static ADDRESS_MAP_START( bgaregga_sound_z80_mem, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( batrider_sound_z80_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( batrider_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xc000, 0xdfff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( batrider_sound_z80_port, AS_IO, 8 ) +static ADDRESS_MAP_START( batrider_sound_z80_port, AS_IO, 8, toaplan2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_WRITE(soundlatch3_w) AM_RANGE(0x42, 0x42) AM_WRITE(soundlatch4_w) @@ -1468,13 +1468,13 @@ static ADDRESS_MAP_START( batrider_sound_z80_port, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( bbakraid_sound_z80_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bbakraid_sound_z80_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM // No banking? ROM only contains code and data up to 0x28DC AM_RANGE(0xc000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( bbakraid_sound_z80_port, AS_IO, 8 ) +static ADDRESS_MAP_START( bbakraid_sound_z80_port, AS_IO, 8, toaplan2_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_WRITE(soundlatch3_w) AM_RANGE(0x42, 0x42) AM_WRITE(soundlatch4_w) @@ -1487,21 +1487,21 @@ ADDRESS_MAP_END #ifdef USE_HD64x180 -static ADDRESS_MAP_START( hd647180_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hd647180_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xfe00, 0xffff) AM_RAM // Internal 512 bytes of RAM ADDRESS_MAP_END #endif -static ADDRESS_MAP_START( v25_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( v25_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x00000, 0x00001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x00004, 0x00004) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x80000, 0x87fff) AM_MIRROR(0x78000) AM_RAM AM_BASE_MEMBER(toaplan2_state, m_shared_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( kbash_v25_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kbash_v25_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x00000, 0x007ff) AM_RAM AM_BASE_MEMBER(toaplan2_state, m_shared_ram) AM_RANGE(0x04000, 0x04001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x04002, 0x04002) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) @@ -1509,7 +1509,7 @@ static ADDRESS_MAP_START( kbash_v25_mem, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fixeight_v25_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fixeight_v25_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x00004, 0x00004) AM_READ(fixeight_region_r) AM_RANGE(0x0000a, 0x0000b) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x0000c, 0x0000c) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) @@ -1517,13 +1517,13 @@ static ADDRESS_MAP_START( fixeight_v25_mem, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( vfive_v25_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vfive_v25_mem, AS_PROGRAM, 8, toaplan2_state ) AM_RANGE(0x00000, 0x00001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x80000, 0x87fff) AM_MIRROR(0x78000) AM_RAM AM_BASE_MEMBER(toaplan2_state, m_shared_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( v25_port, AS_IO, 8 ) +static ADDRESS_MAP_START( v25_port, AS_IO, 8, toaplan2_state ) AM_RANGE(V25_PORT_PT, V25_PORT_PT) AM_READ(v25_dswa_r) AM_RANGE(V25_PORT_P0, V25_PORT_P0) AM_READ(v25_dswb_r) AM_RANGE(V25_PORT_P1, V25_PORT_P1) AM_READ(v25_jmpr_r) @@ -1531,7 +1531,7 @@ static ADDRESS_MAP_START( v25_port, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( dogyuun_v25_port, AS_IO, 8 ) +static ADDRESS_MAP_START( dogyuun_v25_port, AS_IO, 8, toaplan2_state ) AM_RANGE(V25_PORT_PT, V25_PORT_PT) AM_READ(v25_dswb_r) AM_RANGE(V25_PORT_P0, V25_PORT_P0) AM_READ(v25_dswa_r) AM_RANGE(V25_PORT_P1, V25_PORT_P1) AM_READ(v25_jmpr_r) @@ -1539,12 +1539,12 @@ static ADDRESS_MAP_START( dogyuun_v25_port, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( fixeight_v25_port, AS_IO, 8 ) +static ADDRESS_MAP_START( fixeight_v25_port, AS_IO, 8, toaplan2_state ) AM_RANGE(V25_PORT_P0, V25_PORT_P0) AM_READWRITE_PORT("EEPROM") ADDRESS_MAP_END -static ADDRESS_MAP_START( fixeightbl_oki, AS_0, 8 ) +static ADDRESS_MAP_START( fixeightbl_oki, AS_0, 8, toaplan2_state ) AM_RANGE(0x00000, 0x2ffff) AM_ROM AM_RANGE(0x30000, 0x3ffff) AM_ROMBANK("bank1") ADDRESS_MAP_END diff --git a/src/mame/drivers/toki.c b/src/mame/drivers/toki.c index e588de39b61..36669de69c4 100644 --- a/src/mame/drivers/toki.c +++ b/src/mame/drivers/toki.c @@ -90,7 +90,7 @@ static WRITE8_HANDLER( toki_adpcm_data_w ) /*****************************************************************************/ -static ADDRESS_MAP_START( toki_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( toki_map, AS_PROGRAM, 16, toki_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x06d7ff) AM_RAM AM_RANGE(0x06d800, 0x06dfff) AM_RAM AM_SHARE("spriteram") @@ -106,7 +106,7 @@ static ADDRESS_MAP_START( toki_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* In the bootleg, sound and sprites are remapped to 0x70000 */ -static ADDRESS_MAP_START( tokib_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tokib_map, AS_PROGRAM, 16, toki_state ) AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x060000, 0x06dfff) AM_RAM AM_RANGE(0x06e000, 0x06e7ff) AM_RAM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -130,7 +130,7 @@ ADDRESS_MAP_END /*****************************************************************************/ -static ADDRESS_MAP_START( tokib_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tokib_audio_map, AS_PROGRAM, 8, toki_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("msm", toki_adpcm_control_w) /* MSM5205 + ROM bank */ diff --git a/src/mame/drivers/tomcat.c b/src/mame/drivers/tomcat.c index dde9ab84322..3c959c0e23f 100644 --- a/src/mame/drivers/tomcat.c +++ b/src/mame/drivers/tomcat.c @@ -254,7 +254,7 @@ static WRITE8_HANDLER(tomcat_nvram_w) state->m_nvram[offset] = data; } -static ADDRESS_MAP_START( tomcat_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tomcat_map, AS_PROGRAM, 16, tomcat_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x402000, 0x402001) AM_READ(tomcat_adcread_r) AM_WRITE(tomcat_adcon_w) AM_RANGE(0x404000, 0x404001) AM_READ(tomcat_inputs_r) AM_WRITE(avgdvg_go_word_w) @@ -284,11 +284,11 @@ static ADDRESS_MAP_START( tomcat_map, AS_PROGRAM, 16 ) AM_RANGE(0xffd000, 0xffdfff) AM_READWRITE8(tomcat_nvram_r, tomcat_nvram_w, 0x00ff) ADDRESS_MAP_END -static ADDRESS_MAP_START( dsp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( dsp_map, AS_PROGRAM, 16, tomcat_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_BASE_MEMBER(tomcat_state, m_shared_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( dsp_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( dsp_io_map, AS_IO, 16, tomcat_state ) AM_RANGE(TMS32010_BIO, TMS32010_BIO) AM_READ(dsp_BIO_r) ADDRESS_MAP_END @@ -306,7 +306,7 @@ static WRITE8_HANDLER(soundlatches_w) } } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tomcat_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_RANGE(0x2000, 0x2001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x3000, 0x30df) AM_WRITE(soundlatches_w) diff --git a/src/mame/drivers/tonton.c b/src/mame/drivers/tonton.c index db8b56dbdb1..79ee5ba3523 100644 --- a/src/mame/drivers/tonton.c +++ b/src/mame/drivers/tonton.c @@ -82,13 +82,13 @@ static WRITE8_HANDLER( tonton_outport_w ) * Memory Map * *************************************************/ -static ADDRESS_MAP_START( tonton_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tonton_map, AS_PROGRAM, 8, tonton_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( tonton_io, AS_IO, 8 ) +static ADDRESS_MAP_START( tonton_io, AS_IO, 8, tonton_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/toobin.c b/src/mame/drivers/toobin.c index 553305b7fd8..de4dee20376 100644 --- a/src/mame/drivers/toobin.c +++ b/src/mame/drivers/toobin.c @@ -107,7 +107,7 @@ static READ16_HANDLER( special_port1_r ) *************************************/ /* full address map decoded from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, toobin_state ) ADDRESS_MAP_GLOBAL_MASK(0xc7ffff) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0xc00000, 0xc07fff) AM_RAM_WRITE(atarigen_playfield_large_w) AM_BASE_MEMBER(toobin_state, m_playfield) diff --git a/src/mame/drivers/topspeed.c b/src/mame/drivers/topspeed.c index ea1ea739ef1..f01ad04fb5d 100644 --- a/src/mame/drivers/topspeed.c +++ b/src/mame/drivers/topspeed.c @@ -442,7 +442,7 @@ static WRITE8_DEVICE_HANDLER( topspeed_msm5205_stop_w ) ***********************************************************/ -static ADDRESS_MAP_START( topspeed_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( topspeed_map, AS_PROGRAM, 16, topspeed_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_SIZE_MEMBER(topspeed_state, m_sharedram, m_sharedram_size) AM_RANGE(0x500000, 0x503fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -463,7 +463,7 @@ static ADDRESS_MAP_START( topspeed_map, AS_PROGRAM, 16 ) AM_RANGE(0xe00000, 0xe0ffff) AM_RAM AM_BASE_MEMBER(topspeed_state, m_spritemap) ADDRESS_MAP_END -static ADDRESS_MAP_START( topspeed_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( topspeed_cpub_map, AS_PROGRAM, 16, topspeed_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x400000, 0X40ffff) AM_READWRITE(sharedram_r, sharedram_w) AM_BASE_MEMBER(topspeed_state, m_sharedram) AM_RANGE(0x880000, 0x880001) AM_READ8(topspeed_input_bypass_r, 0x00ff) AM_DEVWRITE8("tc0220ioc", tc0220ioc_portreg_w, 0x00ff) @@ -474,7 +474,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, topspeed_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") AM_RANGE(0x8000, 0x8fff) AM_RAM diff --git a/src/mame/drivers/toratora.c b/src/mame/drivers/toratora.c index 52db67c1bca..a447555e2cf 100644 --- a/src/mame/drivers/toratora.c +++ b/src/mame/drivers/toratora.c @@ -308,7 +308,7 @@ static const pia6821_interface pia_u3_intf = * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, toratora_state ) AM_RANGE(0x0000, 0x0fff) AM_RAM AM_RANGE(0x1000, 0x7fff) AM_ROM /* not fully populated */ AM_RANGE(0x8000, 0x9fff) AM_RAM AM_BASE_SIZE_MEMBER(toratora_state, m_videoram, m_videoram_size) diff --git a/src/mame/drivers/tourtabl.c b/src/mame/drivers/tourtabl.c index b8d72ea932c..ba6632803a5 100644 --- a/src/mame/drivers/tourtabl.c +++ b/src/mame/drivers/tourtabl.c @@ -49,7 +49,7 @@ static READ8_HANDLER( tourtabl_get_databus_contents ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tourtabl_state ) AM_RANGE(0x0000, 0x007f) AM_MIRROR(0x0100) AM_READWRITE(tia_r, tia_w) AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x0100) AM_RAM AM_RANGE(0x0280, 0x029f) AM_DEVREADWRITE("riot1", riot6532_r, riot6532_w) diff --git a/src/mame/drivers/tourvis.c b/src/mame/drivers/tourvis.c index 53ef83f9a79..10108d447d2 100644 --- a/src/mame/drivers/tourvis.c +++ b/src/mame/drivers/tourvis.c @@ -272,7 +272,7 @@ static INPUT_PORTS_START( tourvision ) PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_SPECIAL ) // games slot status in bits 3 to 7 INPUT_PORTS_END -static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8) +static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, tourvision_state ) AM_RANGE( 0x000000, 0x0FFFFF) AM_ROM AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000) AM_BASE( &pce_user_ram ) AM_RANGE( 0x1FE000, 0x1FE3FF) AM_READWRITE( vdc_0_r, vdc_0_w ) @@ -283,7 +283,7 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8) AM_RANGE( 0x1FF400, 0x1FF7FF) AM_READWRITE( h6280_irq_status_r, h6280_irq_status_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pce_io , AS_IO, 8) +static ADDRESS_MAP_START( pce_io , AS_IO, 8, tourvision_state ) AM_RANGE( 0x00, 0x03) AM_READWRITE( vdc_0_r, vdc_0_w ) ADDRESS_MAP_END @@ -292,7 +292,7 @@ static WRITE8_HANDLER( tourvision_8085_d000_w ) //logerror( "D000 (8085) write %02x\n", data ); } -static ADDRESS_MAP_START(tourvision_8085_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START(tourvision_8085_map, AS_PROGRAM, 8, tourvision_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x80ff) AM_DEVREADWRITE_MODERN("i8155", i8155_device, memory_r, memory_w) AM_RANGE(0x8100, 0x8107) AM_DEVREADWRITE_MODERN("i8155", i8155_device, io_r, io_w) diff --git a/src/mame/drivers/toypop.c b/src/mame/drivers/toypop.c index 30c5a0b2dbc..4457cfaa41e 100644 --- a/src/mame/drivers/toypop.c +++ b/src/mame/drivers/toypop.c @@ -195,7 +195,7 @@ static WRITE16_HANDLER( toypop_m68000_interrupt_disable_w ) * *************************************/ -static ADDRESS_MAP_START( liblrabl_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( liblrabl_map, AS_PROGRAM, 8, toypop_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(toypop_videoram_w) AM_BASE_MEMBER(toypop_state,m_videoram) /* video RAM */ AM_RANGE(0x0800, 0x1fff) AM_RAM AM_BASE_MEMBER(toypop_state,m_spriteram) /* general RAM, area 1 */ AM_RANGE(0x2800, 0x2fff) AM_RAM AM_BASE_MEMBER(toypop_state,m_m68000_sharedram) /* shared RAM with the 68000 CPU */ @@ -213,7 +213,7 @@ static ADDRESS_MAP_START( liblrabl_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM /* ROM code */ ADDRESS_MAP_END -static ADDRESS_MAP_START( toypop_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( toypop_map, AS_PROGRAM, 8, toypop_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(toypop_videoram_w) AM_BASE_MEMBER(toypop_state,m_videoram) /* video RAM */ AM_RANGE(0x0800, 0x1fff) AM_RAM AM_BASE_MEMBER(toypop_state,m_spriteram) /* general RAM, area 1 */ AM_RANGE(0x2800, 0x2fff) AM_RAM AM_BASE_MEMBER(toypop_state,m_m68000_sharedram) /* shared RAM with the 68000 CPU */ @@ -237,7 +237,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, toypop_state ) AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with the main CPU + sound registers */ AM_RANGE(0x2000, 0x2000) AM_WRITE(toypop_sound_interrupt_disable_w) /* ??? toypop doesn't write here */ AM_RANGE(0x4000, 0x4000) AM_WRITE(toypop_sound_interrupt_enable_acknowledge_w) @@ -253,7 +253,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16, toypop_state ) AM_RANGE(0x000000, 0x007fff) AM_ROM /* ROM code */ AM_RANGE(0x080000, 0x0bffff) AM_RAM /* RAM */ AM_RANGE(0x100000, 0x100fff) AM_READWRITE(toypop_m68000_sharedram_r, toypop_m68000_sharedram_w) /* shared RAM with the main CPU */ diff --git a/src/mame/drivers/tp84.c b/src/mame/drivers/tp84.c index e2cebd59ede..bfd9366589c 100644 --- a/src/mame/drivers/tp84.c +++ b/src/mame/drivers/tp84.c @@ -126,7 +126,7 @@ static WRITE8_HANDLER( tp84_sh_irqtrigger_w ) -static ADDRESS_MAP_START( tp84_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tp84_cpu1_map, AS_PROGRAM, 8, tp84_state ) AM_RANGE(0x2000, 0x2000) AM_WRITE(watchdog_reset_w) AM_RANGE(0x2800, 0x2800) AM_READ_PORT("SYSTEM") AM_WRITEONLY AM_BASE_MEMBER(tp84_state, m_palette_bank) AM_RANGE(0x2820, 0x2820) AM_READ_PORT("P1") @@ -147,7 +147,7 @@ static ADDRESS_MAP_START( tp84_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( tp84b_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tp84b_cpu1_map, AS_PROGRAM, 8, tp84_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE_MEMBER(tp84_state, m_bg_videoram) AM_RANGE(0x0400, 0x07ff) AM_RAM AM_BASE_MEMBER(tp84_state, m_fg_videoram) AM_RANGE(0x0800, 0x0bff) AM_RAM AM_BASE_MEMBER(tp84_state, m_bg_colorram) @@ -177,7 +177,7 @@ static WRITE8_HANDLER( sub_irq_mask_w ) } -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, tp84_state ) // AM_RANGE(0x0000, 0x0000) AM_RAM /* Watch dog ?*/ AM_RANGE(0x2000, 0x2000) AM_READ(tp84_scanline_r) /* beam position */ AM_RANGE(0x4000, 0x4000) AM_WRITE(sub_irq_mask_w) @@ -188,7 +188,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, tp84_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x6000, 0x6000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/trackfld.c b/src/mame/drivers/trackfld.c index 6411788684b..77c394fbbfa 100644 --- a/src/mame/drivers/trackfld.c +++ b/src/mame/drivers/trackfld.c @@ -224,7 +224,7 @@ static WRITE8_HANDLER( irq_mask_w ) state->m_irq_mask = data & 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, trackfld_state ) AM_RANGE(0x1000, 0x1000) AM_MIRROR(0x007f) AM_WRITE(watchdog_reset_w) /* AFE */ AM_RANGE(0x1080, 0x1080) AM_MIRROR(0x0078) AM_WRITE(trackfld_flipscreen_w) /* FLIP */ AM_RANGE(0x1081, 0x1081) AM_MIRROR(0x0078) AM_WRITE(konami_sh_irqtrigger_w) /* 26 */ /* cause interrupt on audio CPU */ @@ -260,7 +260,7 @@ static WRITE8_HANDLER( yieartf_nmi_mask_w ) } -static ADDRESS_MAP_START( yieartf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( yieartf_map, AS_PROGRAM, 8, trackfld_state ) AM_RANGE(0x0000, 0x0000) AM_DEVREAD("vlm", yiear_speech_r) AM_WRITE(konami_SN76496_latch_w) AM_RANGE(0x0001, 0x0001) AM_DEVWRITE("snsnd", konami_SN76496_w) AM_RANGE(0x0002, 0x0002) AM_DEVWRITE("vlm", yiear_VLM5030_control_w) @@ -292,7 +292,7 @@ static ADDRESS_MAP_START( yieartf_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( reaktor_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( reaktor_map, AS_PROGRAM, 8, trackfld_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* all usual addresses +0x8000 */ AM_RANGE(0x9000, 0x9000) AM_WRITE(watchdog_reset_w) @@ -319,7 +319,7 @@ static ADDRESS_MAP_START( reaktor_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Reaktor reads / writes some I/O ports, no idea what they're connected to, if anything */ -static ADDRESS_MAP_START( reaktor_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( reaktor_io_map, AS_IO, 8, trackfld_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP AM_RANGE(0x01, 0x01) AM_NOP @@ -327,7 +327,7 @@ static ADDRESS_MAP_START( reaktor_io_map, AS_IO, 8 ) AM_RANGE(0x03, 0x03) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( mastkin_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mastkin_map, AS_PROGRAM, 8, trackfld_state ) AM_RANGE(0x1000, 0x1000) AM_WRITE(watchdog_reset_w) AM_RANGE(0x10b0, 0x10b0) AM_WRITE(trackfld_flipscreen_w) AM_RANGE(0x10b1, 0x10b1) AM_READNOP AM_WRITE(konami_sh_irqtrigger_w) @@ -353,7 +353,7 @@ static ADDRESS_MAP_START( mastkin_map, AS_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( wizzquiz_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wizzquiz_map, AS_PROGRAM, 8, trackfld_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READWRITE(watchdog_reset_r, watchdog_reset_w) AM_RANGE(0x1080, 0x1080) AM_WRITE(trackfld_flipscreen_w) @@ -388,7 +388,7 @@ READ8_DEVICE_HANDLER( trackfld_SN76496_r ) return 0xff; // ? } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, trackfld_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_READ(soundlatch_r) @@ -402,7 +402,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xe004, 0xe004) AM_MIRROR(0x1ff8) AM_DEVWRITE("vlm", vlm5030_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( hyprolyb_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hyprolyb_sound_map, AS_PROGRAM, 8, trackfld_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/travrusa.c b/src/mame/drivers/travrusa.c index 8b6256a0ee8..9d3a233919c 100644 --- a/src/mame/drivers/travrusa.c +++ b/src/mame/drivers/travrusa.c @@ -53,7 +53,7 @@ and 2764 eprom (swapped D3/D4 and D5/D6 data lines) #include "includes/travrusa.h" -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, travrusa_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE(travrusa_videoram_w) AM_BASE_MEMBER(travrusa_state, m_videoram) AM_RANGE(0x9000, 0x9000) AM_WRITE(travrusa_scroll_x_low_w) diff --git a/src/mame/drivers/triforce.c b/src/mame/drivers/triforce.c index 839c1d84fda..9e2a7c3f0ea 100644 --- a/src/mame/drivers/triforce.c +++ b/src/mame/drivers/triforce.c @@ -408,7 +408,15 @@ Notes: #include "cpu/powerpc/ppc.h" #include "machine/naomigd.h" -static ADDRESS_MAP_START( gc_map, AS_PROGRAM, 32 ) +class triforce_state : public driver_device +{ +public: + triforce_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag) + { } +}; + +static ADDRESS_MAP_START( gc_map, AS_PROGRAM, 32, triforce_state ) AM_RANGE(0xffe00000, 0xffffffff) AM_ROM AM_REGION("maincpu", 0) AM_SHARE("share2") /* Program ROM */ ADDRESS_MAP_END @@ -426,7 +434,7 @@ static SCREEN_UPDATE_RGB32(triforce) static INPUT_PORTS_START( triforce ) INPUT_PORTS_END -static MACHINE_CONFIG_START( triforce_base, driver_device ) +static MACHINE_CONFIG_START( triforce_base, triforce_state ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", PPC403GA, 64000000) /* Correct CPU is a PowerPC 750 (what Apple called "G3") with paired-single vector instructions added */ diff --git a/src/mame/drivers/triplhnt.c b/src/mame/drivers/triplhnt.c index f7cb1e17610..1df76d3a189 100644 --- a/src/mame/drivers/triplhnt.c +++ b/src/mame/drivers/triplhnt.c @@ -135,7 +135,7 @@ static READ8_HANDLER( triplhnt_da_latch_r ) } -static ADDRESS_MAP_START( triplhnt_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( triplhnt_map, AS_PROGRAM, 8, triplhnt_state ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x300) AM_RANGE(0x0400, 0x04ff) AM_WRITEONLY AM_BASE_MEMBER(triplhnt_state, m_playfield_ram) diff --git a/src/mame/drivers/truco.c b/src/mame/drivers/truco.c index 9004e9b633d..84e7b724bcd 100644 --- a/src/mame/drivers/truco.c +++ b/src/mame/drivers/truco.c @@ -259,7 +259,7 @@ static WRITE8_DEVICE_HANDLER( pia_irqb_w ) * Memory Map * *******************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, truco_state ) AM_RANGE(0x0000, 0x17ff) AM_RAM /* General purpose RAM */ AM_RANGE(0x1800, 0x7bff) AM_RAM AM_BASE_MEMBER(truco_state, m_videoram) /* Video RAM */ AM_RANGE(0x7c00, 0x7fff) AM_RAM AM_BASE_MEMBER(truco_state, m_battery_ram) /* Battery backed RAM */ diff --git a/src/mame/drivers/trucocl.c b/src/mame/drivers/trucocl.c index ec17f410b50..c74d097bf5c 100644 --- a/src/mame/drivers/trucocl.c +++ b/src/mame/drivers/trucocl.c @@ -80,7 +80,7 @@ static WRITE8_DEVICE_HANDLER( audio_dac_w ) device->machine().scheduler().timer_set( attotime::from_hz( 16000 ), FUNC(dac_irq )); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, trucocl_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM_WRITE(trucocl_videoram_w) AM_BASE_MEMBER(trucocl_state, m_videoram) AM_RANGE(0x4400, 0x47ff) AM_RAM_WRITE(trucocl_colorram_w) AM_BASE_MEMBER(trucocl_state, m_colorram) diff --git a/src/mame/drivers/trvmadns.c b/src/mame/drivers/trvmadns.c index d0b9cbd93c7..e5aa5877dad 100644 --- a/src/mame/drivers/trvmadns.c +++ b/src/mame/drivers/trvmadns.c @@ -208,7 +208,7 @@ static WRITE8_HANDLER( trvmadns_tileram_w ) } -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, trvmadns_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_ROMBANK("bank1") AM_RANGE(0x7000, 0x7fff) AM_ROMBANK("bank2") @@ -220,7 +220,7 @@ static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) AM_RANGE(0xe004, 0xe004) AM_WRITE(w3)//NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( io_map, AS_IO, 8, trvmadns_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0") diff --git a/src/mame/drivers/trvquest.c b/src/mame/drivers/trvquest.c index a6cba4cae02..a0c7ca5d4f3 100644 --- a/src/mame/drivers/trvquest.c +++ b/src/mame/drivers/trvquest.c @@ -58,7 +58,7 @@ static WRITE8_DEVICE_HANDLER( trvquest_misc_w ) // data & 1 -> led on/off ? } -static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map, AS_PROGRAM, 8, gameplan_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") // cmos ram AM_RANGE(0x2000, 0x27ff) AM_RAM // main ram AM_RANGE(0x3800, 0x380f) AM_DEVREADWRITE_MODERN("via6522_1", via6522_device, read, write) diff --git a/src/mame/drivers/tryout.c b/src/mame/drivers/tryout.c index 916a1532b9a..c0ae9f5bb35 100644 --- a/src/mame/drivers/tryout.c +++ b/src/mame/drivers/tryout.c @@ -52,7 +52,7 @@ static WRITE8_HANDLER( tryout_bankswitch_w ) memory_set_bankptr(space->machine(), "bank1", &RAM[bankaddress]); } -static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8, tryout_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(tryout_videoram_w) AM_BASE_MEMBER(tryout_state, m_videoram) AM_RANGE(0x2000, 0x3fff) AM_ROMBANK("bank1") @@ -73,7 +73,7 @@ static ADDRESS_MAP_START( main_cpu, AS_PROGRAM, 8 ) AM_RANGE(0xfff0, 0xffff) AM_ROM AM_REGION("maincpu", 0xbff0) /* reset vectors */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, tryout_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x4000, 0x4001) AM_DEVREADWRITE("ymsnd", ym2203_r, ym2203_w) AM_RANGE(0xa000, 0xa000) AM_READ(soundlatch_r) diff --git a/src/mame/drivers/tsamurai.c b/src/mame/drivers/tsamurai.c index f9d971ed697..ef8c1c3fd78 100644 --- a/src/mame/drivers/tsamurai.c +++ b/src/mame/drivers/tsamurai.c @@ -110,7 +110,7 @@ static WRITE8_HANDLER( tsamurai_coin_counter_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -143,7 +143,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc03, 0xfc04) AM_WRITE(tsamurai_coin_counter_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( m660_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( m660_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM @@ -178,19 +178,19 @@ static ADDRESS_MAP_START( m660_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc07, 0xfc07) AM_WRITE(tsamurai_textbank2_w)/* Mission 660 uses a bit here */ ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_io_map, AS_IO, 8, tsamurai_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_m660_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( z80_m660_io_map, AS_IO, 8, tsamurai_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITENOP /* ? */ AM_RANGE(0x01, 0x01) AM_WRITENOP /* Written continuously. Increments with level. */ AM_RANGE(0x02, 0x02) AM_WRITENOP /* Always follows above with 0x01 data */ ADDRESS_MAP_END -static ADDRESS_MAP_START( vsgongf_audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( vsgongf_audio_io_map, AS_IO, 8, tsamurai_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) ADDRESS_MAP_END @@ -214,7 +214,7 @@ static READ8_HANDLER( sound_command3_r ) } /*******************************************************************************/ -static ADDRESS_MAP_START( sound1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound1_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x6000, 0x6000) AM_READ(sound_command1_r) AM_RANGE(0x6001, 0x6001) AM_WRITENOP /* ? - probably clear IRQ */ @@ -224,7 +224,7 @@ ADDRESS_MAP_END /*******************************************************************************/ -static ADDRESS_MAP_START( sound2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound2_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x6000, 0x6000) AM_READ(sound_command2_r) AM_RANGE(0x6001, 0x6001) AM_WRITENOP /* ? - probably clear IRQ */ @@ -234,7 +234,7 @@ ADDRESS_MAP_END /*******************************************************************************/ -static ADDRESS_MAP_START( sound1_m660_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound1_m660_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ(sound_command1_r) AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */ @@ -244,7 +244,7 @@ ADDRESS_MAP_END /*******************************************************************************/ -static ADDRESS_MAP_START( sound2_m660_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound2_m660_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ(sound_command2_r) AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */ @@ -254,7 +254,7 @@ ADDRESS_MAP_END /*******************************************************************************/ -static ADDRESS_MAP_START( sound3_m660_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound3_m660_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ(sound_command3_r) AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */ @@ -262,7 +262,7 @@ static ADDRESS_MAP_START( sound3_m660_map, AS_PROGRAM, 8 ) AM_RANGE(0xfffc, 0xffff) AM_RAM /* CPU writes here - music data */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound3_m660_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound3_m660_io_map, AS_IO, 8, tsamurai_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) ADDRESS_MAP_END @@ -311,7 +311,7 @@ static WRITE8_HANDLER( vsgongf_sound_command_w ) cputag_set_input_line(space->machine(), "audiocpu", INPUT_LINE_NMI, PULSE_LINE); } -static ADDRESS_MAP_START( vsgongf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vsgongf_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa003, 0xa003) AM_READONLY AM_RANGE(0xa006, 0xa006) AM_READ(vsgongf_a006_r) /* protection */ @@ -338,7 +338,7 @@ static ADDRESS_MAP_START( vsgongf_map, AS_PROGRAM, 8 ) AM_RANGE(0xfc04, 0xfc04) AM_RAM_WRITE(tsamurai_textbank1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_vsgongf_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_vsgongf_map, AS_PROGRAM, 8, tsamurai_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_RAM /* work RAM */ AM_RANGE(0x8000, 0x8000) AM_READWRITE(soundlatch_r, vsgongf_sound_nmi_enable_w) /* NMI enable */ diff --git a/src/mame/drivers/ttchamp.c b/src/mame/drivers/ttchamp.c index 6fb9261a347..8b150b279eb 100644 --- a/src/mame/drivers/ttchamp.c +++ b/src/mame/drivers/ttchamp.c @@ -131,14 +131,14 @@ static READ16_HANDLER( peno_rand2 ) } #endif -static ADDRESS_MAP_START( ttchamp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( ttchamp_map, AS_PROGRAM, 16, ttchamp_state ) AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_RANGE(0x10000, 0x1ffff) AM_RAM AM_BASE_MEMBER(ttchamp_state, m_peno_vram) AM_RANGE(0x20000, 0x7ffff) AM_ROMBANK("bank1") // ? AM_RANGE(0x80000, 0xfffff) AM_ROMBANK("bank2") // ? ADDRESS_MAP_END -static ADDRESS_MAP_START( ttchamp_io, AS_IO, 16 ) +static ADDRESS_MAP_START( ttchamp_io, AS_IO, 16, ttchamp_state ) AM_RANGE(0x0000, 0x0001) AM_WRITENOP AM_RANGE(0x0002, 0x0003) AM_READ_PORT("SYSTEM") diff --git a/src/mame/drivers/tubep.c b/src/mame/drivers/tubep.c index 72bbc5f81d2..c7ec4618915 100644 --- a/src/mame/drivers/tubep.c +++ b/src/mame/drivers/tubep.c @@ -144,7 +144,7 @@ static WRITE8_HANDLER( tubep_LS259_w ) } -static ADDRESS_MAP_START( tubep_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tubep_main_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_WRITE(tubep_textram_w) AM_BASE_MEMBER(tubep_state, m_textram) /* RAM on GFX PCB @B13 */ @@ -168,7 +168,7 @@ static WRITE8_HANDLER( tubep_soundlatch_w ) state->m_sound_latch = (data&0x7f) | 0x80; } -static ADDRESS_MAP_START( tubep_main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( tubep_main_portmap, AS_IO, 8, tubep_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x80, 0x80) AM_READ_PORT("DSW1") AM_RANGE(0x90, 0x90) AM_READ_PORT("DSW2") @@ -200,7 +200,7 @@ static WRITE8_HANDLER( second_cpu_irq_line_clear_w ) } -static ADDRESS_MAP_START( tubep_second_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tubep_second_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa000) AM_WRITE(tubep_background_a000_w) AM_RANGE(0xc000, 0xc000) AM_WRITE(tubep_background_c000_w) @@ -211,7 +211,7 @@ static ADDRESS_MAP_START( tubep_second_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tubep_second_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( tubep_second_portmap, AS_IO, 8, tubep_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x7f, 0x7f) AM_WRITE(second_cpu_irq_line_clear_w) ADDRESS_MAP_END @@ -241,14 +241,14 @@ static WRITE8_HANDLER( tubep_sound_unknown ) } -static ADDRESS_MAP_START( tubep_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tubep_sound_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0xd000, 0xd000) AM_READ(tubep_sound_irq_ack) AM_RANGE(0xe000, 0xe7ff) AM_RAM /* 6116 #3 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( tubep_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( tubep_sound_portmap, AS_IO, 8, tubep_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ay1", ay8910_address_data_w) AM_RANGE(0x02, 0x03) AM_DEVWRITE("ay2", ay8910_address_data_w) @@ -364,7 +364,7 @@ static MACHINE_RESET( tubep ) *************************************/ /* MS2010-A CPU (equivalent to NSC8105 with one new opcode: 0xec) on graphics PCB */ -static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nsc_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share3") AM_BASE_MEMBER(tubep_state, m_sprite_colorsharedram) AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share2") AM_RANGE(0x2000, 0x2009) AM_WRITE(tubep_sprite_control_w) @@ -405,7 +405,7 @@ static WRITE8_HANDLER( rjammer_soundlatch_w ) } -static ADDRESS_MAP_START( rjammer_main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rjammer_main_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_RAM /* MB8416 SRAM on daughterboard on main PCB (there are two SRAMs, this is the one on the left) */ AM_RANGE(0xc000, 0xc7ff) AM_WRITE(tubep_textram_w) AM_BASE_MEMBER(tubep_state, m_textram)/* RAM on GFX PCB @B13 */ @@ -413,7 +413,7 @@ static ADDRESS_MAP_START( rjammer_main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rjammer_main_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( rjammer_main_portmap, AS_IO, 8, tubep_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW2") /* a bug in game code (during attract mode) */ AM_RANGE(0x80, 0x80) AM_READ_PORT("DSW2") @@ -428,7 +428,7 @@ static ADDRESS_MAP_START( rjammer_main_portmap, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rjammer_second_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rjammer_second_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xa000, 0xa7ff) AM_RAM /* M5M5117P @21G */ AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") /* MB8416 on daughterboard (the one on the right) */ @@ -437,7 +437,7 @@ static ADDRESS_MAP_START( rjammer_second_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( rjammer_second_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( rjammer_second_portmap, AS_IO, 8, tubep_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0xb0, 0xb0) AM_WRITE(rjammer_background_page_w) AM_RANGE(0xd0, 0xd0) AM_WRITE(rjammer_background_LS377_w) @@ -604,13 +604,13 @@ static WRITE8_HANDLER( rjammer_voice_intensity_control_w ) } -static ADDRESS_MAP_START( rjammer_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( rjammer_sound_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM /* M5M5117P (M58125P @2C on schematics) */ ADDRESS_MAP_END -static ADDRESS_MAP_START( rjammer_sound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( rjammer_sound_portmap, AS_IO, 8, tubep_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(rjammer_soundlatch_r) AM_RANGE(0x10, 0x10) AM_DEVWRITE("msm", rjammer_voice_startstop_w) diff --git a/src/mame/drivers/tugboat.c b/src/mame/drivers/tugboat.c index 76b88e29810..fd232844a77 100644 --- a/src/mame/drivers/tugboat.c +++ b/src/mame/drivers/tugboat.c @@ -210,7 +210,7 @@ static MACHINE_RESET( tugboat ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tugboat_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_BASE_MEMBER(tugboat_state, m_ram) AM_RANGE(0x1060, 0x1061) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x10a0, 0x10a1) AM_WRITE(tugboat_hd46505_0_w) /* scrolling is performed changing the start_addr register (0C/0D) */ diff --git a/src/mame/drivers/tumbleb.c b/src/mame/drivers/tumbleb.c index da0e3ad388c..dcd4e70d522 100644 --- a/src/mame/drivers/tumbleb.c +++ b/src/mame/drivers/tumbleb.c @@ -648,7 +648,7 @@ static WRITE16_DEVICE_HANDLER( tumbleb2_soundmcu_w ) /******************************************************************************/ -static ADDRESS_MAP_START( tumblepopb_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tumblepopb_main_map, AS_PROGRAM, 16, tumbleb_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM #if TUMBLEP_HACK AM_RANGE(0x000000, 0x07ffff) AM_WRITEONLY /* To write levels modifications */ @@ -670,7 +670,7 @@ static ADDRESS_MAP_START( tumblepopb_main_map, AS_PROGRAM, 16 ) AM_RANGE(0x342400, 0x34247f) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( fncywld_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fncywld_main_map, AS_PROGRAM, 16, tumbleb_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM #if FNCYWLD_HACK AM_RANGE(0x000000, 0x0fffff) AM_WRITEONLY /* To write levels modifications */ @@ -699,7 +699,7 @@ static READ16_HANDLER( semibase_unknown_r ) return space->machine().rand(); } -static ADDRESS_MAP_START( htchctch_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( htchctch_main_map, AS_PROGRAM, 16, tumbleb_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10000f) AM_READ(semibase_unknown_r) AM_RANGE(0x100000, 0x100001) AM_WRITE(semicom_soundcmd_w) @@ -718,7 +718,7 @@ static ADDRESS_MAP_START( htchctch_main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( jumppop_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jumppop_main_map, AS_PROGRAM, 16, tumbleb_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x120000, 0x123fff) AM_RAM AM_BASE_MEMBER(tumbleb_state, m_mainram) AM_RANGE(0x140000, 0x1407ff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) @@ -741,7 +741,7 @@ static WRITE16_HANDLER( jumpkids_sound_w ) device_set_input_line(state->m_audiocpu, 0, HOLD_LINE); } -static ADDRESS_MAP_START( suprtrio_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( suprtrio_main_map, AS_PROGRAM, 16, tumbleb_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x700000, 0x700fff) AM_RAM AM_BASE_SIZE_MEMBER(tumbleb_state, m_spriteram, m_spriteram_size) AM_RANGE(0xa00000, 0xa0000f) AM_RAM AM_BASE_MEMBER(tumbleb_state, m_control) @@ -755,7 +755,7 @@ static ADDRESS_MAP_START( suprtrio_main_map, AS_PROGRAM, 16 ) AM_RANGE(0xf00000, 0xf07fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( pangpang_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( pangpang_main_map, AS_PROGRAM, 16, tumbleb_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x120000, 0x123fff) AM_RAM AM_BASE_MEMBER(tumbleb_state, m_mainram) AM_RANGE(0x140000, 0x1407ff) AM_RAM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE_GENERIC(paletteram) @@ -789,7 +789,7 @@ static WRITE8_HANDLER( oki_sound_bank_w ) memcpy(&oki[0x30000], &oki[(data * 0x10000) + 0x40000], 0x10000); } -static ADDRESS_MAP_START( semicom_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( semicom_sound_map, AS_PROGRAM, 8, tumbleb_state ) AM_RANGE(0x0000, 0xcfff) AM_ROM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) @@ -799,7 +799,7 @@ static ADDRESS_MAP_START( semicom_sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf00e, 0xf00e) AM_WRITE(oki_sound_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( suprtrio_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( suprtrio_sound_map, AS_PROGRAM, 8, tumbleb_state ) AM_RANGE(0x0000, 0xcfff) AM_ROM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_RANGE(0xf002, 0xf002) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) @@ -813,7 +813,7 @@ static WRITE8_HANDLER(jumppop_z80_bank_w) memory_set_bankptr(space->machine(), "bank1", space->machine().region("audiocpu")->base() + 0x10000 + (0x4000 * data)); } -static ADDRESS_MAP_START( jumppop_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jumppop_sound_map, AS_PROGRAM, 8, tumbleb_state ) AM_RANGE(0x0000, 0x2fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") AM_RANGE(0xf800, 0xffff) AM_RAM @@ -826,7 +826,7 @@ static READ8_HANDLER(jumppop_z80latch_r) return soundlatch_r(space, 0); } -static ADDRESS_MAP_START( jumppop_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( jumppop_sound_io_map, AS_IO, 8, tumbleb_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("ymsnd", ym3812_w) AM_RANGE(0x02, 0x02) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) @@ -838,7 +838,7 @@ ADDRESS_MAP_END /* Jump Kids */ -static ADDRESS_MAP_START( jumpkids_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( jumpkids_main_map, AS_PROGRAM, 16, tumbleb_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_WRITE(jumpkids_sound_w) AM_RANGE(0x120000, 0x123fff) AM_RAM AM_BASE_MEMBER(tumbleb_state, m_mainram) @@ -866,7 +866,7 @@ static WRITE8_HANDLER( jumpkids_oki_bank_w ) memcpy(sound1 + 0x20000, sound2 + bank * 0x20000, 0x20000); } -static ADDRESS_MAP_START( jumpkids_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( jumpkids_sound_map, AS_PROGRAM, 8, tumbleb_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_WRITE(jumpkids_oki_bank_w) @@ -923,11 +923,11 @@ static WRITE8_HANDLER( prot_io_w ) /* Semicom AT89C52 MCU */ -static ADDRESS_MAP_START( protection_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( protection_map, AS_PROGRAM, 8, tumbleb_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( protection_iomap, AS_IO, 8 ) +static ADDRESS_MAP_START( protection_iomap, AS_IO, 8, tumbleb_state ) AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P3) AM_READWRITE(prot_io_r,prot_io_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/tumblep.c b/src/mame/drivers/tumblep.c index 0dd0c79287a..ae7b4b92823 100644 --- a/src/mame/drivers/tumblep.c +++ b/src/mame/drivers/tumblep.c @@ -106,7 +106,7 @@ static READ16_HANDLER( tumblepop_controls_r ) /******************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, tumblep_state ) #if TUMBLEP_HACK AM_RANGE(0x000000, 0x07ffff) AM_WRITEONLY // To write levels modifications AM_RANGE(0x000000, 0x07ffff) AM_ROM @@ -129,7 +129,7 @@ ADDRESS_MAP_END /******************************************************************************/ /* Physical memory map (21 bits) */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tumblep_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_NOP /* YM2203 - this board doesn't have one */ AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/tunhunt.c b/src/mame/drivers/tunhunt.c index 8da78e4373c..da349759049 100644 --- a/src/mame/drivers/tunhunt.c +++ b/src/mame/drivers/tunhunt.c @@ -131,7 +131,7 @@ static READ8_DEVICE_HANDLER( dsw2_4r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tunhunt_state ) AM_RANGE(0x0000, 0x03ff) AM_RAM AM_BASE_MEMBER(tunhunt_state,m_workram) /* Work RAM */ AM_RANGE(0x1080, 0x10ff) AM_WRITEONLY AM_RANGE(0x1200, 0x12ff) AM_WRITEONLY diff --git a/src/mame/drivers/turbo.c b/src/mame/drivers/turbo.c index 5b9da3c1895..f723846ddb0 100644 --- a/src/mame/drivers/turbo.c +++ b/src/mame/drivers/turbo.c @@ -738,7 +738,7 @@ static WRITE8_DEVICE_HANDLER( buckrog_ppi8255_0_w ) * *************************************/ -static ADDRESS_MAP_START( turbo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( turbo_map, AS_PROGRAM, 8, turbo_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0xa000, 0xa0ff) AM_MIRROR(0x0700) AM_MASK(0x0f7) AM_RAM AM_BASE_MEMBER(turbo_state, m_spriteram) AM_RANGE(0xa800, 0xa807) AM_MIRROR(0x07f8) AM_WRITE(turbo_coin_and_lamp_w) @@ -764,7 +764,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( subroc3d_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( subroc3d_map, AS_PROGRAM, 8, turbo_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xa000, 0xa3ff) AM_RAM AM_BASE_MEMBER(turbo_state, m_sprite_position) // CONT RAM AM_RANGE(0xa400, 0xa7ff) AM_RAM AM_BASE_MEMBER(turbo_state, m_spriteram) // CONT RAM @@ -788,7 +788,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( buckrog_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( buckrog_map, AS_PROGRAM, 8, turbo_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(turbo_videoram_w) AM_BASE_MEMBER(turbo_state, m_videoram) // FIX PAGE @@ -806,14 +806,14 @@ static ADDRESS_MAP_START( buckrog_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( buckrog_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( buckrog_cpu2_map, AS_PROGRAM, 8, turbo_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x0000, 0xdfff) AM_WRITE(buckrog_bitmap_w) AM_RANGE(0xe000, 0xe7ff) AM_MIRROR(0x1800) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( buckrog_cpu2_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( buckrog_cpu2_portmap, AS_IO, 8, turbo_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0xff) AM_READ(buckrog_cpu2_command_r) ADDRESS_MAP_END diff --git a/src/mame/drivers/tutankhm.c b/src/mame/drivers/tutankhm.c index da53b0c2c7f..3ea286b5a28 100644 --- a/src/mame/drivers/tutankhm.c +++ b/src/mame/drivers/tutankhm.c @@ -118,7 +118,7 @@ static WRITE8_HANDLER( tutankhm_coin_counter_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tutankhm_state ) AM_RANGE(0x0000, 0x7fff) AM_RAM AM_BASE_MEMBER(tutankhm_state, m_videoram) AM_RANGE(0x8000, 0x800f) AM_MIRROR(0x00f0) AM_RAM AM_BASE_MEMBER(tutankhm_state, m_paletteram) AM_RANGE(0x8100, 0x8100) AM_MIRROR(0x000f) AM_RAM AM_BASE_MEMBER(tutankhm_state, m_scroll) diff --git a/src/mame/drivers/twin16.c b/src/mame/drivers/twin16.c index 3521a741350..4ebc4a85477 100644 --- a/src/mame/drivers/twin16.c +++ b/src/mame/drivers/twin16.c @@ -231,7 +231,7 @@ static WRITE16_HANDLER( cuebrickj_nvram_bank_w ) /* Memory Maps */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, twin16_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0x9000, 0x9000) AM_DEVWRITE("upd", twin16_upd_reset_w) @@ -243,7 +243,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf000) AM_DEVREAD("upd", twin16_upd_busy_r) // miaj writes 0 to it ADDRESS_MAP_END -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, twin16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_READ_BANK(COMRAM_r) AM_WRITE_BANK(COMRAM_w) // AM_RANGE(0x044000, 0x04ffff) AM_NOP // miaj @@ -264,7 +264,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x140000, 0x143fff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END -static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, twin16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_READ_BANK(COMRAM_r) AM_WRITE_BANK(COMRAM_w) // AM_RANGE(0x044000, 0x04ffff) AM_NOP // miaj @@ -279,7 +279,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16 ) AM_RANGE(0x780000, 0x79ffff) AM_RAM AM_BASE_MEMBER(twin16_state, m_sprite_gfx_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( fround_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( fround_map, AS_PROGRAM, 16, twin16_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x043fff) AM_READ_BANK(COMRAM_r) AM_WRITE_BANK(COMRAM_w) AM_RANGE(0x060000, 0x063fff) AM_RAM diff --git a/src/mame/drivers/twincobr.c b/src/mame/drivers/twincobr.c index 04aea49f748..f116408687e 100644 --- a/src/mame/drivers/twincobr.c +++ b/src/mame/drivers/twincobr.c @@ -274,7 +274,7 @@ Shark Zame /***************************** 68000 Memory Map *****************************/ -static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 16, twincobr_state ) AM_RANGE(0x000000, 0x02ffff) AM_ROM AM_RANGE(0x030000, 0x033fff) AM_RAM /* 68K and DSP shared RAM */ AM_RANGE(0x040000, 0x040fff) AM_RAM AM_SHARE("spriteram") @@ -304,12 +304,12 @@ ADDRESS_MAP_END /***************************** Z80 Memory Map *******************************/ -static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8, twincobr_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE_MEMBER(twincobr_state, m_sharedram) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, twincobr_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) AM_RANGE(0x10, 0x10) AM_READ_PORT("SYSTEM") /* Twin Cobra - Coin/Start */ @@ -321,13 +321,13 @@ ADDRESS_MAP_END /***************************** TMS32010 Memory Map **************************/ -static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16, twincobr_state ) AM_RANGE(0x000, 0x7ff) AM_ROM ADDRESS_MAP_END /* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */ -static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16, twincobr_state ) AM_RANGE(0, 0) AM_WRITE(twincobr_dsp_addrsel_w) AM_RANGE(1, 1) AM_READWRITE(twincobr_dsp_r, twincobr_dsp_w) AM_RANGE(2, 2) AM_READWRITE(fsharkbt_dsp_r, fsharkbt_dsp_w) @@ -338,7 +338,7 @@ ADDRESS_MAP_END /******************* Flying Shark Bootleg i8741 Memory Map *******************/ -static ADDRESS_MAP_START( fsharkbt_i8741_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( fsharkbt_i8741_io_map, AS_IO, 8, twincobr_state ) /* IO map unknown as program code isn't dumped */ ADDRESS_MAP_END diff --git a/src/mame/drivers/twinkle.c b/src/mame/drivers/twinkle.c index 1aa3ef528be..b26c920ef36 100644 --- a/src/mame/drivers/twinkle.c +++ b/src/mame/drivers/twinkle.c @@ -609,7 +609,7 @@ static READ32_HANDLER(shared_psx_r) return result; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 32, twinkle_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x1f000000, 0x1f0007ff) AM_READWRITE(shared_psx_r, shared_psx_w) AM_RANGE(0x1f200000, 0x1f20001f) AM_READWRITE(am53cf96_r, am53cf96_w) @@ -731,7 +731,7 @@ static WRITE16_HANDLER( shared_68k_w ) state->m_spu_shared[offset] = data & 0xff; } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, twinkle_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x13ffff) AM_RAM // 220000 = LEDs? diff --git a/src/mame/drivers/twins.c b/src/mame/drivers/twins.c index 08629631c88..7f481ef52c7 100644 --- a/src/mame/drivers/twins.c +++ b/src/mame/drivers/twins.c @@ -90,13 +90,13 @@ static WRITE16_HANDLER( porte_paloff0_w ) state->m_paloff = 0; } -static ADDRESS_MAP_START( twins_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( twins_map, AS_PROGRAM, 16, twins_state ) AM_RANGE(0x00000, 0x0ffff) AM_RAM AM_RANGE(0x10000, 0x1ffff) AM_RAM AM_BASE_MEMBER(twins_state, m_videoram) AM_RANGE(0x20000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( twins_io, AS_IO, 16 ) +static ADDRESS_MAP_START( twins_io, AS_IO, 16, twins_state ) AM_RANGE(0x0000, 0x0003) AM_DEVWRITE8("aysnd", ay8910_address_data_w, 0x00ff) AM_RANGE(0x0002, 0x0003) AM_DEVREAD8("aysnd", ay8910_r, 0x00ff) AM_RANGE(0x0004, 0x0005) AM_READWRITE(twins_port4_r, twins_port4_w) @@ -260,7 +260,7 @@ static READ16_HANDLER( twinsa_unk_r ) return 0xffff; } -static ADDRESS_MAP_START( twinsa_io, AS_IO, 16 ) +static ADDRESS_MAP_START( twinsa_io, AS_IO, 16, twins_state ) AM_RANGE(0x0000, 0x0001) AM_READWRITE(twinsa_unk_r, porte_paloff0_w) AM_RANGE(0x0002, 0x0003) AM_WRITE(porte_paloff0_w) AM_RANGE(0x0004, 0x0005) AM_WRITE(twinsa_port4_w) // palette on this set diff --git a/src/mame/drivers/tx1.c b/src/mame/drivers/tx1.c index f449008bcd8..a617a874e40 100644 --- a/src/mame/drivers/tx1.c +++ b/src/mame/drivers/tx1.c @@ -499,7 +499,7 @@ static const ppi8255_interface tx1_ppi8255_intf = * *************************************/ -static ADDRESS_MAP_START( tx1_main, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tx1_main, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x00000, 0x00fff) AM_MIRROR(0x1000) AM_RAM AM_RANGE(0x02000, 0x02fff) AM_MIRROR(0x1000) AM_RAM AM_RANGE(0x04000, 0x04fff) AM_MIRROR(0x1000) AM_RAM AM_SHARE("nvram") @@ -515,7 +515,7 @@ static ADDRESS_MAP_START( tx1_main, AS_PROGRAM, 16 ) AM_RANGE(0xf0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( tx1_math, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( tx1_math, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x00000, 0x007ff) AM_RAM AM_BASE_MEMBER(tx1_state, m_math_ram) AM_RANGE(0x00800, 0x00fff) AM_READWRITE(tx1_spcs_ram_r, tx1_spcs_ram_w) AM_RANGE(0x01000, 0x01fff) AM_RAM AM_SHARE("share1") @@ -530,7 +530,7 @@ static ADDRESS_MAP_START( tx1_math, AS_PROGRAM, 16 ) AM_RANGE(0xfc000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( tx1_sound_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( tx1_sound_prg, AS_PROGRAM, 8, tx1_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x3000, 0x37ff) AM_RAM AM_MIRROR(0x800) AM_BASE_MEMBER(tx1_state, m_z80_ram) AM_RANGE(0x4000, 0x4000) AM_WRITE(z80_intreq_w) @@ -540,7 +540,7 @@ static ADDRESS_MAP_START( tx1_sound_prg, AS_PROGRAM, 8 ) AM_RANGE(0xb000, 0xbfff) AM_READWRITE(ts_r, ts_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( tx1_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( tx1_sound_io, AS_IO, 8, tx1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x41) AM_DEVWRITE("aysnd", ay8910_data_address_w) ADDRESS_MAP_END @@ -552,7 +552,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( buggyboy_main, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( buggyboy_main, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x00000, 0x03fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x04000, 0x04fff) AM_READWRITE(tx1_crtc_r, tx1_crtc_w) AM_RANGE(0x08000, 0x09fff) AM_RAM AM_BASE_MEMBER(tx1_state, m_vram) @@ -567,7 +567,7 @@ static ADDRESS_MAP_START( buggyboy_main, AS_PROGRAM, 16 ) AM_RANGE(0xf0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( buggybjr_main, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( buggybjr_main, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x00000, 0x03fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x04000, 0x04fff) AM_READWRITE(tx1_crtc_r, tx1_crtc_w) AM_RANGE(0x08000, 0x08fff) AM_RAM AM_BASE_MEMBER(tx1_state, m_vram) @@ -582,7 +582,7 @@ static ADDRESS_MAP_START( buggybjr_main, AS_PROGRAM, 16 ) AM_RANGE(0xf0000, 0xfffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( buggyboy_math, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( buggyboy_math, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x00000, 0x007ff) AM_RAM AM_BASE_MEMBER(tx1_state, m_math_ram) AM_RANGE(0x00800, 0x00fff) AM_READWRITE(buggyboy_spcs_ram_r, buggyboy_spcs_ram_w) AM_RANGE(0x01000, 0x01fff) AM_RAM AM_SHARE("share1") @@ -597,7 +597,7 @@ static ADDRESS_MAP_START( buggyboy_math, AS_PROGRAM, 16 ) ADDRESS_MAP_END /* Buggy Boy Sound PCB TC033A */ -static ADDRESS_MAP_START( buggyboy_sound_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( buggyboy_sound_prg, AS_PROGRAM, 8, tx1_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_BASE_MEMBER(tx1_state, m_z80_ram) AM_RANGE(0x6000, 0x6001) AM_READ(bb_analog_r) @@ -608,7 +608,7 @@ static ADDRESS_MAP_START( buggyboy_sound_prg, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Buggy Boy Jr Sound PCB TC043 */ -static ADDRESS_MAP_START( buggybjr_sound_prg, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( buggybjr_sound_prg, AS_PROGRAM, 8, tx1_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_BASE_MEMBER(tx1_state, m_z80_ram) AM_RANGE(0x5000, 0x5003) AM_DEVREADWRITE("buggyboy", tx1_pit8253_r, tx1_pit8253_w) @@ -618,7 +618,7 @@ static ADDRESS_MAP_START( buggybjr_sound_prg, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Common */ -static ADDRESS_MAP_START( buggyboy_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( buggyboy_sound_io, AS_IO, 8, tx1_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x40, 0x40) AM_DEVREAD("ym1", ay8910_r) AM_RANGE(0x40, 0x41) AM_DEVWRITE("ym1", ay8910_data_address_w) diff --git a/src/mame/drivers/uapce.c b/src/mame/drivers/uapce.c index 856fa4f42f2..729cd1e3742 100644 --- a/src/mame/drivers/uapce.c +++ b/src/mame/drivers/uapce.c @@ -230,7 +230,7 @@ static MACHINE_RESET( uapce ) state->m_jamma_if_control_latch = 0; } -static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, uapce_state ) AM_RANGE( 0x0000, 0x07FF) AM_ROM AM_RANGE( 0x0800, 0x0FFF) AM_RAM AM_RANGE( 0x1000, 0x17FF) AM_WRITE( jamma_if_control_latch_w ) @@ -281,7 +281,7 @@ static INPUT_PORTS_START( uapce ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(1) INPUT_PORTS_END -static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8) +static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8, uapce_state ) AM_RANGE( 0x000000, 0x09FFFF) AM_ROM AM_RANGE( 0x1F0000, 0x1F1FFF) AM_RAM AM_MIRROR(0x6000) AM_BASE( &pce_user_ram ) AM_RANGE( 0x1FE000, 0x1FE3FF) AM_READWRITE( vdc_0_r, vdc_0_w ) @@ -292,7 +292,7 @@ static ADDRESS_MAP_START( pce_mem , AS_PROGRAM, 8) AM_RANGE( 0x1FF400, 0x1FF7FF) AM_READWRITE( h6280_irq_status_r, h6280_irq_status_w ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pce_io , AS_IO, 8) +static ADDRESS_MAP_START( pce_io , AS_IO, 8, uapce_state ) AM_RANGE( 0x00, 0x03) AM_READWRITE( vdc_0_r, vdc_0_w ) ADDRESS_MAP_END diff --git a/src/mame/drivers/ultraman.c b/src/mame/drivers/ultraman.c index 6c6e68cdf46..db3000017cf 100644 --- a/src/mame/drivers/ultraman.c +++ b/src/mame/drivers/ultraman.c @@ -32,7 +32,7 @@ static WRITE16_HANDLER( sound_irq_trigger_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, ultraman_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_RANGE(0x180000, 0x183fff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram)/* Palette */ @@ -55,7 +55,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x304800, 0x304fff) AM_DEVREADWRITE8("k051960", k051960_r, k051960_w, 0x00ff) /* Sprite RAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, ultraman_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc000) AM_READ(soundlatch_r) /* Sound latch read */ @@ -64,7 +64,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xf001) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) /* YM2151 */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, ultraman_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) // AM_RANGE(0x00, 0x00) AM_WRITENOP /* ??? */ ADDRESS_MAP_END diff --git a/src/mame/drivers/ultratnk.c b/src/mame/drivers/ultratnk.c index 1d66d015d1f..caf1493e88e 100644 --- a/src/mame/drivers/ultratnk.c +++ b/src/mame/drivers/ultratnk.c @@ -151,7 +151,7 @@ static WRITE8_DEVICE_HANDLER( ultratnk_explosion_w ) } -static ADDRESS_MAP_START( ultratnk_cpu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( ultratnk_cpu_map, AS_PROGRAM, 8, ultratnk_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) diff --git a/src/mame/drivers/ultrsprt.c b/src/mame/drivers/ultrsprt.c index 511627d324a..51c657e4322 100644 --- a/src/mame/drivers/ultrsprt.c +++ b/src/mame/drivers/ultrsprt.c @@ -104,7 +104,7 @@ static MACHINE_START( ultrsprt ) -static ADDRESS_MAP_START( ultrsprt_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( ultrsprt_map, AS_PROGRAM, 32, ultrsprt_state ) AM_RANGE(0x00000000, 0x0007ffff) AM_RAM AM_BASE_MEMBER(ultrsprt_state, m_vram) AM_RANGE(0x70000000, 0x70000003) AM_READWRITE(eeprom_r, eeprom_w) AM_RANGE(0x70000020, 0x70000023) AM_READ_PORT("P1") @@ -146,7 +146,7 @@ static WRITE16_HANDLER( K056800_68k_w ) k056800_sound_w(k056800, (offset*2)+1, (data >> 0) & 0xff, 0x00ff); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, ultrsprt_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_ROM AM_RANGE(0x00100000, 0x00101fff) AM_RAM AM_RANGE(0x00200000, 0x00200007) AM_WRITE(K056800_68k_w) diff --git a/src/mame/drivers/umipoker.c b/src/mame/drivers/umipoker.c index 29264b63427..24179d6f292 100644 --- a/src/mame/drivers/umipoker.c +++ b/src/mame/drivers/umipoker.c @@ -292,7 +292,7 @@ static WRITE16_HANDLER( saiyu_counters_w ) } -static ADDRESS_MAP_START( umipoker_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( umipoker_map, AS_PROGRAM, 16, umipoker_state ) ADDRESS_MAP_UNMAP_LOW AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x403fff) AM_RAM AM_SHARE("nvram") @@ -318,12 +318,12 @@ static ADDRESS_MAP_START( umipoker_map, AS_PROGRAM, 16 ) AM_RANGE(0xe0002e, 0xe0002f) AM_WRITE(umipoker_scrolly_3_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( umipoker_audio_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( umipoker_audio_map, AS_PROGRAM, 8, umipoker_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xf800, 0xffff) AM_READWRITE(z80_shared_ram_r,z80_shared_ram_w) AM_BASE_MEMBER(umipoker_state, m_z80_wram) ADDRESS_MAP_END -static ADDRESS_MAP_START( umipoker_audio_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( umipoker_audio_io_map, AS_IO, 8, umipoker_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE_MODERN("oki", okim6295_device, read, write) AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ym", ym3812_r, ym3812_w) diff --git a/src/mame/drivers/undrfire.c b/src/mame/drivers/undrfire.c index 48ffb994819..a85a8e8569f 100644 --- a/src/mame/drivers/undrfire.c +++ b/src/mame/drivers/undrfire.c @@ -477,7 +477,7 @@ static WRITE32_HANDLER( cbombers_adc_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( undrfire_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( undrfire_map, AS_PROGRAM, 32, undrfire_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_BASE_MEMBER(undrfire_state, m_ram) AM_RANGE(0x300000, 0x303fff) AM_RAM AM_BASE_SIZE_MEMBER(undrfire_state, m_spriteram, m_spriteram_size) @@ -498,7 +498,7 @@ static ADDRESS_MAP_START( undrfire_map, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cbombers_cpua_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( cbombers_cpua_map, AS_PROGRAM, 32, undrfire_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x21ffff) AM_RAM AM_RANGE(0x300000, 0x303fff) AM_RAM AM_BASE_SIZE_MEMBER(undrfire_state, m_spriteram, m_spriteram_size) @@ -517,7 +517,7 @@ static ADDRESS_MAP_START( cbombers_cpua_map, AS_PROGRAM, 32 ) AM_RANGE(0xe00000, 0xe0ffff) AM_RAM AM_BASE_MEMBER(undrfire_state, m_shared_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( cbombers_cpub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( cbombers_cpub_map, AS_PROGRAM, 16, undrfire_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x400000, 0x40ffff) AM_RAM /* local ram */ // AM_RANGE(0x600000, 0x60ffff) AM_DEVWRITE("tc0480scp", tc0480scp_word_w) /* Only written upon errors */ diff --git a/src/mame/drivers/unico.c b/src/mame/drivers/unico.c index d37f347758b..62c2d31621b 100644 --- a/src/mame/drivers/unico.c +++ b/src/mame/drivers/unico.c @@ -57,7 +57,7 @@ static WRITE16_DEVICE_HANDLER( burglarx_sound_bank_w ) } } -static ADDRESS_MAP_START( burglarx_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( burglarx_map, AS_PROGRAM, 16, unico_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0xff0000, 0xffffff) AM_RAM // RAM AM_RANGE(0x800000, 0x800001) AM_READ_PORT("INPUTS") @@ -142,7 +142,7 @@ static READ16_HANDLER( unico_guny_1_msb_r ) return ((y&0xff) ^ (space->machine().primary_screen->frame_number()&1))<<8; } -static ADDRESS_MAP_START( zeropnt_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( zeropnt_map, AS_PROGRAM, 16, unico_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM // ROM AM_RANGE(0xef0000, 0xefffff) AM_RAM // RAM AM_RANGE(0x800030, 0x800031) AM_WRITENOP // ? 0 @@ -215,7 +215,7 @@ static WRITE32_DEVICE_HANDLER( zeropnt2_eeprom_w ) } } -static ADDRESS_MAP_START( zeropnt2_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( zeropnt2_map, AS_PROGRAM, 32, unico_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM // ROM AM_RANGE(0x800018, 0x80001b) AM_READ_PORT("SYSTEM") AM_RANGE(0x800024, 0x800027) AM_DEVREADWRITE8_MODERN("oki1", okim6295_device, read, write, 0x00ff0000 ) // Sound diff --git a/src/mame/drivers/upscope.c b/src/mame/drivers/upscope.c index 299f128fa79..af2fa531970 100644 --- a/src/mame/drivers/upscope.c +++ b/src/mame/drivers/upscope.c @@ -241,7 +241,7 @@ static WRITE8_DEVICE_HANDLER( upscope_cia_1_porta_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, upscope_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE_MEMBER(upscope_state, m_chip_ram, m_chip_ram_size) AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE(amiga_cia_r, amiga_cia_w) diff --git a/src/mame/drivers/usgames.c b/src/mame/drivers/usgames.c index 84d7f3cc9f4..76bf9bce0f1 100644 --- a/src/mame/drivers/usgames.c +++ b/src/mame/drivers/usgames.c @@ -60,7 +60,7 @@ static WRITE8_HANDLER( lamps2_w ) -static ADDRESS_MAP_START( usgames_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( usgames_map, AS_PROGRAM, 8, usgames_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x2000, 0x2000) AM_READ_PORT("DSW") AM_RANGE(0x2010, 0x2010) AM_READ_PORT("INPUTS") @@ -79,7 +79,7 @@ static ADDRESS_MAP_START( usgames_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( usg185_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( usg185_map, AS_PROGRAM, 8, usgames_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x2000, 0x2001) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x2400, 0x2400) AM_READ_PORT("DSW") diff --git a/src/mame/drivers/vamphalf.c b/src/mame/drivers/vamphalf.c index bd9f568b88a..9a543bf3993 100644 --- a/src/mame/drivers/vamphalf.c +++ b/src/mame/drivers/vamphalf.c @@ -294,21 +294,21 @@ static WRITE16_HANDLER( boonggab_lamps_w ) } } -static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( common_map, AS_PROGRAM, 16, vamphalf_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(vamphalf_state, m_wram) AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_BASE_MEMBER(vamphalf_state, m_tiles) AM_RANGE(0x80000000, 0x8000ffff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("user1",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( common_32bit_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( common_32bit_map, AS_PROGRAM, 32, vamphalf_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_BASE_MEMBER(vamphalf_state, m_wram32) AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_BASE_MEMBER(vamphalf_state, m_tiles32) AM_RANGE(0x80000000, 0x8000ffff) AM_RAM_WRITE(paletteram32_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xfff00000, 0xffffffff) AM_ROM AM_REGION("user1",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( vamphalf_io, AS_IO, 16 ) +static ADDRESS_MAP_START( vamphalf_io, AS_IO, 16, vamphalf_state ) AM_RANGE(0x0c0, 0x0c1) AM_NOP // return 0, when oki chip is read / written AM_RANGE(0x0c2, 0x0c3) AM_DEVREADWRITE8_MODERN("oki", okim6295_device, read, write, 0x00ff) AM_RANGE(0x140, 0x143) AM_DEVWRITE8("ymsnd", ym2151_register_port_w, 0x00ff) @@ -320,7 +320,7 @@ static ADDRESS_MAP_START( vamphalf_io, AS_IO, 16 ) AM_RANGE(0x608, 0x60b) AM_DEVWRITE("eeprom", eeprom_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( misncrft_io, AS_IO, 16 ) +static ADDRESS_MAP_START( misncrft_io, AS_IO, 16, vamphalf_state ) AM_RANGE(0x100, 0x103) AM_WRITE(flipscreen_w) AM_RANGE(0x200, 0x203) AM_READ_PORT("P1_P2") AM_RANGE(0x240, 0x243) AM_READ_PORT("SYSTEM") @@ -328,7 +328,7 @@ static ADDRESS_MAP_START( misncrft_io, AS_IO, 16 ) AM_RANGE(0x580, 0x583) AM_DEVREAD("eeprom", eeprom_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( coolmini_io, AS_IO, 16 ) +static ADDRESS_MAP_START( coolmini_io, AS_IO, 16, vamphalf_state ) AM_RANGE(0x200, 0x203) AM_WRITE(flipscreen_w) AM_RANGE(0x300, 0x303) AM_READ_PORT("SYSTEM") AM_RANGE(0x304, 0x307) AM_READ_PORT("P1_P2") @@ -340,7 +340,7 @@ static ADDRESS_MAP_START( coolmini_io, AS_IO, 16 ) AM_RANGE(0x7c0, 0x7c3) AM_DEVREAD("eeprom", eeprom_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( suplup_io, AS_IO, 16 ) +static ADDRESS_MAP_START( suplup_io, AS_IO, 16, vamphalf_state ) AM_RANGE(0x020, 0x023) AM_DEVWRITE("eeprom", eeprom_w) AM_RANGE(0x040, 0x043) AM_READ_PORT("P1_P2") AM_RANGE(0x060, 0x063) AM_READ_PORT("SYSTEM") @@ -351,7 +351,7 @@ static ADDRESS_MAP_START( suplup_io, AS_IO, 16 ) AM_RANGE(0x100, 0x103) AM_DEVREAD("eeprom", eeprom_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( wyvernwg_io, AS_IO, 32 ) +static ADDRESS_MAP_START( wyvernwg_io, AS_IO, 32, vamphalf_state ) AM_RANGE(0x1800, 0x1803) AM_READWRITE(wyvernwg_prot_r, wyvernwg_prot_w) AM_RANGE(0x2000, 0x2003) AM_WRITE(flipscreen32_w) AM_RANGE(0x2800, 0x2803) AM_READ_PORT("P1_P2") @@ -361,7 +361,7 @@ static ADDRESS_MAP_START( wyvernwg_io, AS_IO, 32 ) AM_RANGE(0x7c00, 0x7c03) AM_DEVREAD("eeprom", eeprom32_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( finalgdr_io, AS_IO, 32 ) +static ADDRESS_MAP_START( finalgdr_io, AS_IO, 32, vamphalf_state ) AM_RANGE(0x2400, 0x2403) AM_READ(finalgdr_prot_r) AM_RANGE(0x2800, 0x2803) AM_WRITE(finalgdr_backupram_bank_w) AM_RANGE(0x2c00, 0x2dff) AM_READWRITE(finalgdr_backupram_r, finalgdr_backupram_w) @@ -378,7 +378,7 @@ static ADDRESS_MAP_START( finalgdr_io, AS_IO, 32 ) AM_RANGE(0x60a0, 0x60a3) AM_DEVWRITE("oki", finalgdr_oki_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( mrkicker_io, AS_IO, 32 ) +static ADDRESS_MAP_START( mrkicker_io, AS_IO, 32, vamphalf_state ) AM_RANGE(0x2400, 0x2403) AM_DEVREAD("eeprom", eeprom32_r) AM_RANGE(0x4000, 0x4003) AM_READNOP //? AM_RANGE(0x4000, 0x4003) AM_DEVWRITE("eeprom", finalgdr_eeprom_w) @@ -392,7 +392,7 @@ static ADDRESS_MAP_START( mrkicker_io, AS_IO, 32 ) AM_RANGE(0x7c00, 0x7c03) AM_READ_PORT("SYSTEM") ADDRESS_MAP_END -static ADDRESS_MAP_START( jmpbreak_io, AS_IO, 16 ) +static ADDRESS_MAP_START( jmpbreak_io, AS_IO, 16, vamphalf_state ) AM_RANGE(0x0c0, 0x0c3) AM_NOP // ? AM_RANGE(0x100, 0x103) AM_WRITENOP // ? AM_RANGE(0x240, 0x243) AM_READ_PORT("P1_P2") @@ -405,7 +405,7 @@ static ADDRESS_MAP_START( jmpbreak_io, AS_IO, 16 ) AM_RANGE(0x684, 0x687) AM_DEVREADWRITE8("ymsnd", ym2151_status_port_r, ym2151_data_port_w, 0x00ff) ADDRESS_MAP_END -static ADDRESS_MAP_START( mrdig_io, AS_IO, 16 ) +static ADDRESS_MAP_START( mrdig_io, AS_IO, 16, vamphalf_state ) AM_RANGE(0x500, 0x503) AM_READ_PORT("P1_P2") AM_RANGE(0x3c0, 0x3c3) AM_DEVWRITE("eeprom", eeprom_w) AM_RANGE(0x180, 0x183) AM_DEVREAD("eeprom", eeprom_r) @@ -416,7 +416,7 @@ static ADDRESS_MAP_START( mrdig_io, AS_IO, 16 ) AM_RANGE(0x0c4, 0x0c7) AM_DEVREADWRITE8("ymsnd", ym2151_status_port_r, ym2151_data_port_w, 0x00ff) ADDRESS_MAP_END -static ADDRESS_MAP_START( aoh_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( aoh_map, AS_PROGRAM, 32, vamphalf_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_BASE_MEMBER(vamphalf_state, m_wram32) AM_RANGE(0x40000000, 0x4003ffff) AM_RAM AM_BASE_MEMBER(vamphalf_state, m_tiles32) AM_RANGE(0x80000000, 0x8000ffff) AM_RAM_WRITE(paletteram32_w) AM_BASE_GENERIC(paletteram) @@ -425,7 +425,7 @@ static ADDRESS_MAP_START( aoh_map, AS_PROGRAM, 32 ) AM_RANGE(0xffc00000, 0xffffffff) AM_ROM AM_REGION("user1",0) ADDRESS_MAP_END -static ADDRESS_MAP_START( aoh_io, AS_IO, 32 ) +static ADDRESS_MAP_START( aoh_io, AS_IO, 32, vamphalf_state ) AM_RANGE(0x0480, 0x0483) AM_DEVWRITE("eeprom", eeprom32_w) AM_RANGE(0x0620, 0x0623) AM_DEVREADWRITE8_MODERN("oki_2", okim6295_device, read, write, 0x0000ff00) AM_RANGE(0x0660, 0x0663) AM_DEVREADWRITE8_MODERN("oki_1", okim6295_device, read, write, 0x0000ff00) @@ -433,7 +433,7 @@ static ADDRESS_MAP_START( aoh_io, AS_IO, 32 ) AM_RANGE(0x0680, 0x0683) AM_DEVWRITE("oki_2", aoh_oki_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( boonggab_io, AS_IO, 16 ) +static ADDRESS_MAP_START( boonggab_io, AS_IO, 16, vamphalf_state ) AM_RANGE(0x0c0, 0x0c3) AM_DEVREAD("eeprom", eeprom_r) AM_RANGE(0x200, 0x203) AM_NOP // seems unused AM_RANGE(0x300, 0x303) AM_WRITE(flipscreen_w) @@ -808,11 +808,11 @@ static GFXDECODE_START( vamphalf ) GFXDECODE_END -static ADDRESS_MAP_START( qs1000_prg_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( qs1000_prg_map, AS_PROGRAM, 8, vamphalf_state ) AM_RANGE( 0x0000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( qs1000_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( qs1000_io_map, AS_IO, 8, vamphalf_state ) AM_RANGE( 0x0000, 0x007f) AM_RAM // RAM? wavetable registers? not sure. ADDRESS_MAP_END diff --git a/src/mame/drivers/vaportra.c b/src/mame/drivers/vaportra.c index fe48ccc10e9..c7ae1a80e15 100644 --- a/src/mame/drivers/vaportra.c +++ b/src/mame/drivers/vaportra.c @@ -48,7 +48,7 @@ static READ16_HANDLER( vaportra_control_r ) /******************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vaportra_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x100000, 0x100003) AM_WRITE(vaportra_priority_w) AM_RANGE(0x100006, 0x100007) AM_WRITE(vaportra_sound_w) @@ -77,7 +77,7 @@ static READ8_HANDLER( vaportra_soundlatch_r ) return soundlatch_r(space, offset); } -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vaportra_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM AM_RANGE(0x100000, 0x100001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x110000, 0x110001) AM_DEVREADWRITE("ym2", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/vastar.c b/src/mame/drivers/vastar.c index 00d1474fd79..1f8dbbdd801 100644 --- a/src/mame/drivers/vastar.c +++ b/src/mame/drivers/vastar.c @@ -105,7 +105,7 @@ static WRITE8_HANDLER( nmi_mask_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vastar_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_READWRITE(vastar_bg2videoram_r, vastar_bg2videoram_w) AM_BASE_MEMBER(vastar_state,m_bg2videoram) AM_RANGE(0x9000, 0x9fff) AM_READWRITE(vastar_bg1videoram_r, vastar_bg1videoram_w) AM_BASE_MEMBER(vastar_state,m_bg1videoram) @@ -125,7 +125,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xcc00, 0xcc3f) AM_WRITEONLY AM_BASE_MEMBER(vastar_state,m_spriteram3) /* actually cc10-cc1f and cc30-cc3f */ ADDRESS_MAP_END -static ADDRESS_MAP_START( main_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_port_map, AS_IO, 8, vastar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(nmi_mask_w) AM_RANGE(0x01, 0x01) AM_WRITE(flip_screen_w) @@ -133,7 +133,7 @@ static ADDRESS_MAP_START( main_port_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8, vastar_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x40ff) AM_READWRITE(vastar_sharedram_r, vastar_sharedram_w) AM_RANGE(0x8000, 0x8000) AM_READ_PORT("P2") @@ -141,7 +141,7 @@ static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 8 ) AM_RANGE(0x8080, 0x8080) AM_READ_PORT("SYSTEM") ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( cpu2_port_map, AS_IO, 8, vastar_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_address_data_w) AM_RANGE(0x02, 0x02) AM_DEVREAD("aysnd", ay8910_r) diff --git a/src/mame/drivers/vball.c b/src/mame/drivers/vball.c index a56acdc9f67..d57f875dc31 100644 --- a/src/mame/drivers/vball.c +++ b/src/mame/drivers/vball.c @@ -205,7 +205,7 @@ static WRITE8_HANDLER(vb_scrollx_lo_w) //Cheaters note: Scores are stored in ram @ 0x57-0x58 (though the space is used for other things between matches) -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vball_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x08ff) AM_RAM AM_BASE_SIZE_MEMBER(vball_state, m_spriteram, m_spriteram_size) AM_RANGE(0x1000, 0x1000) AM_READ_PORT("P1") @@ -227,7 +227,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vball_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/vcombat.c b/src/mame/drivers/vcombat.c index dc67f3b564e..836fe08d86a 100644 --- a/src/mame/drivers/vcombat.c +++ b/src/mame/drivers/vcombat.c @@ -317,7 +317,7 @@ static WRITE16_DEVICE_HANDLER( vcombat_dac_w ) dac_signed_data_16_w(device, newval + 0x8000); } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vcombat_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_RANGE(0x300000, 0x30ffff) AM_WRITE(main_video_write) @@ -352,7 +352,7 @@ ADDRESS_MAP_END /* The first i860 - middle board */ -static ADDRESS_MAP_START( vid_0_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( vid_0_map, AS_PROGRAM, 64, vcombat_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_RAM_WRITE(v0_fb_w) /* Shared framebuffer - half of the bits lost to 32-bit bus */ AM_RANGE(0x20000000, 0x20000007) AM_RAM AM_SHARE("share6") /* M0<-P0 com 1 (0x440000 in 68k-land) */ AM_RANGE(0x40000000, 0x401fffff) AM_ROM AM_REGION("gfx", 0) @@ -363,7 +363,7 @@ ADDRESS_MAP_END /* The second i860 - top board */ -static ADDRESS_MAP_START( vid_1_map, AS_PROGRAM, 64 ) +static ADDRESS_MAP_START( vid_1_map, AS_PROGRAM, 64, vcombat_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_RAM_WRITE(v1_fb_w) /* Half of the bits lost to 32-bit bus */ AM_RANGE(0x20000000, 0x20000007) AM_RAM AM_SHARE("share8") /* M0->P1 com 1 (0x540000 in 68k-land) */ AM_RANGE(0x40000000, 0x401fffff) AM_ROM AM_REGION("gfx", 0) @@ -374,7 +374,7 @@ ADDRESS_MAP_END /* Sound CPU */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 16, vcombat_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_RANGE(0x0c0000, 0x0c0001) AM_DEVWRITE("dac", vcombat_dac_w) diff --git a/src/mame/drivers/vectrex.c b/src/mame/drivers/vectrex.c index 7894d90ed9b..12f009bac48 100644 --- a/src/mame/drivers/vectrex.c +++ b/src/mame/drivers/vectrex.c @@ -19,7 +19,7 @@ Bruce Tomlin (hardware info) #include "machine/nvram.h" -static ADDRESS_MAP_START(vectrex_map, AS_PROGRAM, 8) +static ADDRESS_MAP_START(vectrex_map, AS_PROGRAM, 8, vectrex_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc800, 0xcbff) AM_RAM AM_MIRROR(0x0400) AM_BASE_MEMBER(vectrex_state, m_gce_vectorram) AM_SIZE_MEMBER(vectrex_state, m_gce_vectorram_size) AM_RANGE(0xd000, 0xd7ff) AM_READWRITE(vectrex_via_r, vectrex_via_w) @@ -173,7 +173,7 @@ ROM_END *****************************************************************/ -static ADDRESS_MAP_START(raaspec_map , AS_PROGRAM, 8) +static ADDRESS_MAP_START(raaspec_map , AS_PROGRAM, 8, vectrex_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xa000, 0xa000) AM_WRITE(raaspec_led_w) diff --git a/src/mame/drivers/vega.c b/src/mame/drivers/vega.c index a1d0d856168..991a3713a6f 100644 --- a/src/mame/drivers/vega.c +++ b/src/mame/drivers/vega.c @@ -25,7 +25,7 @@ public: }; -static ADDRESS_MAP_START( vega_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vega_map, AS_PROGRAM, 8, vega_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/vegaeo.c b/src/mame/drivers/vegaeo.c index d09fac3f03e..8332a5ddfd7 100644 --- a/src/mame/drivers/vegaeo.c +++ b/src/mame/drivers/vegaeo.c @@ -93,7 +93,7 @@ static READ32_HANDLER( vegaeo_custom_read ) return input_port_read(space->machine(), "SYSTEM"); } -static ADDRESS_MAP_START( vega_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( vega_map, AS_PROGRAM, 32, vegaeo_state ) AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_RANGE(0x80000000, 0x80013fff) AM_READWRITE(vega_vram_r, vega_vram_w) AM_RANGE(0xfc000000, 0xfc0000ff) AM_DEVREADWRITE8("at28c16", at28c16_r, at28c16_w, 0x000000ff) diff --git a/src/mame/drivers/vegas.c b/src/mame/drivers/vegas.c index 3921d2fd8ba..f42a7b1853b 100644 --- a/src/mame/drivers/vegas.c +++ b/src/mame/drivers/vegas.c @@ -1700,7 +1700,7 @@ static void remap_dynamic_addresses(running_machine &machine) * *************************************/ -static ADDRESS_MAP_START( vegas_map_8mb, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( vegas_map_8mb, AS_PROGRAM, 32, vegas_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE_MEMBER(vegas_state, m_rambase) AM_SIZE_MEMBER(vegas_state, m_ramsize) AM_RANGE(0x1fa00000, 0x1fa00fff) AM_READWRITE(nile_r, nile_w) AM_BASE_MEMBER(vegas_state, m_nile_regs) @@ -1708,7 +1708,7 @@ static ADDRESS_MAP_START( vegas_map_8mb, AS_PROGRAM, 32 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( vegas_map_32mb, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( vegas_map_32mb, AS_PROGRAM, 32, vegas_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x00000000, 0x01ffffff) AM_RAM AM_BASE_MEMBER(vegas_state, m_rambase) AM_SIZE_MEMBER(vegas_state, m_ramsize) AM_RANGE(0x1fa00000, 0x1fa00fff) AM_READWRITE(nile_r, nile_w) AM_BASE_MEMBER(vegas_state, m_nile_regs) diff --git a/src/mame/drivers/vendetta.c b/src/mame/drivers/vendetta.c index 36c241dcaaf..3eaef449609 100644 --- a/src/mame/drivers/vendetta.c +++ b/src/mame/drivers/vendetta.c @@ -236,7 +236,7 @@ static READ8_DEVICE_HANDLER( vendetta_sound_r ) /********************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vendetta_state ) AM_RANGE(0x0000, 0x1fff) AM_ROMBANK("bank1") AM_RANGE(0x2000, 0x3fff) AM_RAM AM_RANGE(0x5f80, 0x5f9f) AM_DEVREADWRITE("k054000", k054000_r, k054000_w) @@ -261,7 +261,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( esckids_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( esckids_map, AS_PROGRAM, 8, vendetta_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM // 053248 64K SRAM AM_RANGE(0x3f80, 0x3f80) AM_READ_PORT("P1") AM_RANGE(0x3f81, 0x3f81) AM_READ_PORT("P2") @@ -287,7 +287,7 @@ static ADDRESS_MAP_START( esckids_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vendetta_state ) AM_RANGE(0x0000, 0xefff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/vertigo.c b/src/mame/drivers/vertigo.c index fe6c26105e5..c4e0597bd03 100644 --- a/src/mame/drivers/vertigo.c +++ b/src/mame/drivers/vertigo.c @@ -30,7 +30,7 @@ static READ16_DEVICE_HANDLER( vertigo_pit8254_lsb_r ) { return pit8253_r( device, offset ); } static WRITE16_DEVICE_HANDLER( vertigo_pit8254_lsb_w ) { if (ACCESSING_BITS_0_7) pit8253_w(device, offset, data); } -static ADDRESS_MAP_START( vertigo_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( vertigo_map, AS_PROGRAM, 16, vertigo_state ) AM_RANGE(0x000000, 0x000007) AM_ROM AM_RANGE(0x000008, 0x001fff) AM_RAM AM_MIRROR(0x010000) AM_RANGE(0x002000, 0x003fff) AM_RAM AM_BASE_MEMBER(vertigo_state, m_vectorram) @@ -56,7 +56,7 @@ ADDRESS_MAP_END *************************************/ #if 0 -static ADDRESS_MAP_START( vertigo_motor, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vertigo_motor, AS_PROGRAM, 8, vertigo_state ) AM_RANGE(0x010, 0x07f) AM_RAM AM_RANGE(0x080, 0x7ff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/vicdual.c b/src/mame/drivers/vicdual.c index a49e9ecc2fa..6517e081a29 100644 --- a/src/mame/drivers/vicdual.c +++ b/src/mame/drivers/vicdual.c @@ -250,7 +250,7 @@ static WRITE8_HANDLER( depthch_io_w ) } -static ADDRESS_MAP_START( depthch_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( depthch_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM @@ -258,7 +258,7 @@ static ADDRESS_MAP_START( depthch_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( depthch_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( depthch_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no decoder, just logic gates, so in theory the @@ -332,7 +332,7 @@ static WRITE8_HANDLER( safari_io_w ) } -static ADDRESS_MAP_START( safari_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( safari_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_NOP /* unused */ AM_RANGE(0x8000, 0x8fff) AM_MIRROR(0x3000) AM_RAM @@ -342,7 +342,7 @@ static ADDRESS_MAP_START( safari_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( safari_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( safari_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no decoder, just logic gates, so in theory the @@ -416,7 +416,7 @@ static WRITE8_HANDLER( frogs_io_w ) } -static ADDRESS_MAP_START( frogs_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( frogs_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM @@ -424,7 +424,7 @@ static ADDRESS_MAP_START( frogs_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( frogs_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( frogs_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no decoder, just logic gates, so in theory the @@ -537,7 +537,7 @@ static WRITE8_HANDLER( headon_io_w ) } -static ADDRESS_MAP_START( headon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( headon_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x6000) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_NOP /* unused */ AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) @@ -546,7 +546,7 @@ static ADDRESS_MAP_START( headon_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( headon_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( headon_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no decoder, just logic gates, so in theory the @@ -555,7 +555,7 @@ static ADDRESS_MAP_START( headon_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sspaceat_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sspaceat_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no decoder, just logic gates, so in theory the @@ -757,7 +757,7 @@ static WRITE8_HANDLER( digger_io_w ) } -static ADDRESS_MAP_START( headon2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( headon2_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x1fff) AM_MIRROR(0x6000) AM_ROM /* AM_RANGE(0x8000, 0x80ff) AM_MIRROR(0x3f00) */ /* schematics show this as battery backed RAM, but doesn't appear to be used */ AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) @@ -766,7 +766,7 @@ static ADDRESS_MAP_START( headon2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( headon2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( headon2_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x1f) /* no decoder, just logic gates, so in theory the @@ -775,7 +775,7 @@ static ADDRESS_MAP_START( headon2_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( digger_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( digger_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x1f) /* no decoder, just logic gates, so in theory the @@ -1037,7 +1037,7 @@ static WRITE8_HANDLER( alphaho_io_w ) } -static ADDRESS_MAP_START( vicdual_dualgame_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vicdual_dualgame_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM @@ -1045,7 +1045,7 @@ static ADDRESS_MAP_START( vicdual_dualgame_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( invho2_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( invho2_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -1059,7 +1059,7 @@ static ADDRESS_MAP_START( invho2_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( invds_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( invds_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -1073,7 +1073,7 @@ static ADDRESS_MAP_START( invds_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sspacaho_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sspacaho_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -1087,7 +1087,7 @@ static ADDRESS_MAP_START( sspacaho_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( tranqgun_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( tranqgun_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("IN0") @@ -1101,7 +1101,7 @@ static ADDRESS_MAP_START( tranqgun_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( spacetrk_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( spacetrk_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -1115,7 +1115,7 @@ static ADDRESS_MAP_START( spacetrk_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( carnival_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( carnival_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -1129,7 +1129,7 @@ static ADDRESS_MAP_START( carnival_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( brdrline_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( brdrline_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("IN0") @@ -1143,7 +1143,7 @@ static ADDRESS_MAP_START( brdrline_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( pulsar_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( pulsar_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -1157,7 +1157,7 @@ static ADDRESS_MAP_START( pulsar_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( heiankyo_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( heiankyo_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) AM_RANGE(0x00, 0x00) AM_MIRROR(0x0c) AM_READ_PORT("IN0") @@ -1171,7 +1171,7 @@ static ADDRESS_MAP_START( heiankyo_io_map, AS_IO, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( alphaho_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( alphaho_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -2074,7 +2074,7 @@ static WRITE8_HANDLER( samurai_io_w ) /* dual game hardware */ -static ADDRESS_MAP_START( samurai_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( samurai_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM AM_WRITE(samurai_protection_w) AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x7000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_MIRROR(0x7000) AM_RAM @@ -2082,7 +2082,7 @@ static ADDRESS_MAP_START( samurai_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( samurai_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( samurai_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0x7f) AM_RANGE(0x00, 0x00) AM_MIRROR(0x7c) AM_READ_PORT("IN0") @@ -2187,7 +2187,7 @@ static WRITE8_HANDLER( nsub_io_w ) } -static ADDRESS_MAP_START( nsub_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( nsub_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_NOP /* unused */ AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) @@ -2196,7 +2196,7 @@ static ADDRESS_MAP_START( nsub_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( nsub_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( nsub_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no decoder, just logic gates, so in theory the @@ -2283,7 +2283,7 @@ static WRITE8_HANDLER( invinco_io_w ) } -static ADDRESS_MAP_START( invinco_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( invinco_map, AS_PROGRAM, 8, vicdual_state ) AM_RANGE(0x0000, 0x3fff) AM_MIRROR(0x4000) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_NOP /* unused */ AM_RANGE(0xc000, 0xc3ff) AM_MIRROR(0x3000) AM_RAM_WRITE(vicdual_videoram_w) AM_BASE_MEMBER(vicdual_state, m_videoram) @@ -2292,7 +2292,7 @@ static ADDRESS_MAP_START( invinco_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( invinco_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( invinco_io_map, AS_IO, 8, vicdual_state ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no decoder, just logic gates, so in theory the diff --git a/src/mame/drivers/victory.c b/src/mame/drivers/victory.c index 090c20799d1..83229539158 100644 --- a/src/mame/drivers/victory.c +++ b/src/mame/drivers/victory.c @@ -124,7 +124,7 @@ static WRITE8_HANDLER( lamp_control_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, victory_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc0ff) AM_READ(victory_video_control_r) AM_RANGE(0xc100, 0xc1ff) AM_WRITE(victory_video_control_w) @@ -138,7 +138,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, victory_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_MIRROR(0x03) AM_READ_PORT("SW2") AM_RANGE(0x04, 0x04) AM_MIRROR(0x03) AM_READ_PORT("SW1") diff --git a/src/mame/drivers/videopin.c b/src/mame/drivers/videopin.c index fca8dce7e2f..74e6d0fdb6a 100644 --- a/src/mame/drivers/videopin.c +++ b/src/mame/drivers/videopin.c @@ -193,7 +193,7 @@ static WRITE8_DEVICE_HANDLER( videopin_note_dvsr_w ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, videopin_state ) AM_RANGE(0x0000, 0x01ff) AM_RAM AM_RANGE(0x0200, 0x07ff) AM_RAM_WRITE(videopin_video_ram_w) AM_BASE_MEMBER(videopin_state, m_video_ram) AM_RANGE(0x0800, 0x0800) AM_READ(videopin_misc_r) AM_DEVWRITE("discrete", videopin_note_dvsr_w) diff --git a/src/mame/drivers/videopkr.c b/src/mame/drivers/videopkr.c index 1b042e2a60a..6a308cecdbc 100644 --- a/src/mame/drivers/videopkr.c +++ b/src/mame/drivers/videopkr.c @@ -938,11 +938,11 @@ static TIMER_DEVICE_CALLBACK(sound_t1_callback) * Memory Map Information * *************************/ -static ADDRESS_MAP_START( i8039_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( i8039_map, AS_PROGRAM, 8, videopkr_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( i8039_io_port, AS_IO, 8 ) +static ADDRESS_MAP_START( i8039_io_port, AS_IO, 8, videopkr_state ) AM_RANGE(0x00, 0xff ) AM_READWRITE(videopkr_io_r, videopkr_io_w) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1 ) AM_READWRITE(videopkr_p1_data_r, videopkr_p1_data_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2 ) AM_READWRITE(videopkr_p2_data_r, videopkr_p2_data_w) @@ -950,22 +950,22 @@ static ADDRESS_MAP_START( i8039_io_port, AS_IO, 8 ) AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0 ) AM_READ(videopkr_t0_latch) ADDRESS_MAP_END -static ADDRESS_MAP_START( i8039_sound_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( i8039_sound_mem, AS_PROGRAM, 8, videopkr_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( i8039_sound_port, AS_IO, 8 ) +static ADDRESS_MAP_START( i8039_sound_port, AS_IO, 8, videopkr_state ) AM_RANGE(0x00 , 0xff ) AM_READWRITE(sound_io_r, sound_io_w) AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_w) AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(sound_p2_r, sound_p2_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( i8051_sound_mem, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( i8051_sound_mem, AS_PROGRAM, 8, videopkr_state ) AM_RANGE(0x0000, 0x0fff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( i8051_sound_port, AS_IO, 8 ) +static ADDRESS_MAP_START( i8051_sound_port, AS_IO, 8, videopkr_state ) AM_RANGE(0x0000, 0x1ff) AM_RAM /* ports */ AM_RANGE(MCS51_PORT_P0, MCS51_PORT_P0) AM_READWRITE(baby_sound_p0_r, baby_sound_p0_w) diff --git a/src/mame/drivers/vigilant.c b/src/mame/drivers/vigilant.c index 7e185b6feb0..4979e6d1a4e 100644 --- a/src/mame/drivers/vigilant.c +++ b/src/mame/drivers/vigilant.c @@ -61,7 +61,7 @@ static WRITE8_HANDLER( kikcubic_coin_w ) -static ADDRESS_MAP_START( vigilant_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vigilant_map, AS_PROGRAM, 8, vigilant_state ) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* Fallthrough */ AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc020, 0xc0df) AM_RAM AM_BASE_SIZE_MEMBER(vigilant_state, m_spriteram, m_spriteram_size) @@ -70,7 +70,7 @@ static ADDRESS_MAP_START( vigilant_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( vigilant_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( vigilant_io_map, AS_IO, 8, vigilant_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_DEVWRITE("m72", m72_sound_command_byte_w) /* SD */ AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") AM_WRITE(vigilant_out2_w) /* OUT2 */ @@ -82,7 +82,7 @@ static ADDRESS_MAP_START( vigilant_io_map, AS_IO, 8 ) AM_RANGE(0x84, 0x84) AM_WRITE(vigilant_rear_color_w) /* RCOD */ ADDRESS_MAP_END -static ADDRESS_MAP_START( kikcubic_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( kikcubic_map, AS_PROGRAM, 8, vigilant_state ) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") /* Fallthrough */ AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xc0ff) AM_RAM AM_BASE_SIZE_MEMBER(vigilant_state, m_spriteram, m_spriteram_size) @@ -91,7 +91,7 @@ static ADDRESS_MAP_START( kikcubic_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( kikcubic_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( kikcubic_io_map, AS_IO, 8, vigilant_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("DSW1") AM_WRITE(kikcubic_coin_w) /* also flip screen, and...? */ AM_RANGE(0x01, 0x01) AM_READ_PORT("DSW2") @@ -102,12 +102,12 @@ static ADDRESS_MAP_START( kikcubic_io_map, AS_IO, 8 ) // AM_RANGE(0x07, 0x07) AM_WRITENOP /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vigilant_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, vigilant_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) AM_RANGE(0x80, 0x81) AM_READ(soundlatch_r) AM_DEVWRITE("m72", vigilant_sample_addr_w) /* STL / STH */ @@ -116,7 +116,7 @@ static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) AM_RANGE(0x84, 0x84) AM_DEVREAD("m72", m72_sample_r) /* S ROM C */ ADDRESS_MAP_END -static ADDRESS_MAP_START( buccanrs_sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( buccanrs_sound_io_map, AS_IO, 8, vigilant_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x02, 0x03) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/vindictr.c b/src/mame/drivers/vindictr.c index bb6a0be988e..cabc8aea567 100644 --- a/src/mame/drivers/vindictr.c +++ b/src/mame/drivers/vindictr.c @@ -81,7 +81,7 @@ static READ16_HANDLER( port1_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vindictr_state ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0x3fffff) AM_RANGE(0x000000, 0x05ffff) AM_ROM diff --git a/src/mame/drivers/viper.c b/src/mame/drivers/viper.c index 30c78d925b5..4202d515758 100644 --- a/src/mame/drivers/viper.c +++ b/src/mame/drivers/viper.c @@ -1802,7 +1802,7 @@ static READ64_HANDLER(e00000_r) /*****************************************************************************/ -static ADDRESS_MAP_START(viper_map, AS_PROGRAM, 64) +static ADDRESS_MAP_START(viper_map, AS_PROGRAM, 64, viper_state ) AM_RANGE(0x00000000, 0x00ffffff) AM_MIRROR(0x1000000) AM_RAM AM_RANGE(0x80000000, 0x800fffff) AM_READWRITE(epic_64be_r, epic_64be_w) AM_RANGE(0x82000000, 0x83ffffff) AM_READWRITE(voodoo3_r, voodoo3_w) diff --git a/src/mame/drivers/vmetal.c b/src/mame/drivers/vmetal.c index e38e12b7eb2..c8d7b693fa6 100644 --- a/src/mame/drivers/vmetal.c +++ b/src/mame/drivers/vmetal.c @@ -216,7 +216,7 @@ static WRITE8_DEVICE_HANDLER( vmetal_es8712_w ) } -static ADDRESS_MAP_START( varia_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( varia_program_map, AS_PROGRAM, 16, vmetal_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x11ffff) AM_RAM_WRITE(vmetal_texttileram_w) AM_BASE_MEMBER(vmetal_state, m_texttileram) AM_RANGE(0x120000, 0x13ffff) AM_RAM_WRITE(vmetal_mid1tileram_w) AM_BASE_MEMBER(vmetal_state, m_mid1tileram) diff --git a/src/mame/drivers/volfied.c b/src/mame/drivers/volfied.c index 458a291705d..96ca9ccd794 100644 --- a/src/mame/drivers/volfied.c +++ b/src/mame/drivers/volfied.c @@ -61,7 +61,7 @@ Stephh's notes (based on the game M68000 code and some tests) : MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, volfied_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM /* program */ AM_RANGE(0x080000, 0x0fffff) AM_ROM /* tiles */ AM_RANGE(0x100000, 0x103fff) AM_RAM /* main */ @@ -78,7 +78,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xf00c00, 0xf00c01) AM_WRITE(volfied_cchip_bank_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_map, AS_PROGRAM, 8, volfied_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8800) AM_DEVWRITE("tc0140syt", tc0140syt_slave_port_w) diff --git a/src/mame/drivers/vpoker.c b/src/mame/drivers/vpoker.c index 97b4c646ada..cadcff7b56d 100644 --- a/src/mame/drivers/vpoker.c +++ b/src/mame/drivers/vpoker.c @@ -179,7 +179,7 @@ static WRITE8_HANDLER( blitter_w ) } } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vpoker_state ) ADDRESS_MAP_GLOBAL_MASK(0x3fff) AM_RANGE(0x0000, 0x01ff) AM_RAM /* vpoker has 0x100, 5acespkr has 0x200 */ AM_RANGE(0x0400, 0x0407) AM_DEVREADWRITE_MODERN("6840ptm", ptm6840_device, read, write) diff --git a/src/mame/drivers/vroulet.c b/src/mame/drivers/vroulet.c index 203fe0b4846..1e80828d84b 100644 --- a/src/mame/drivers/vroulet.c +++ b/src/mame/drivers/vroulet.c @@ -119,7 +119,7 @@ static SCREEN_UPDATE_IND16(vroulet) /* Memory Maps */ -static ADDRESS_MAP_START( vroulet_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vroulet_map, AS_PROGRAM, 8, vroulet_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x8000, 0x8000) AM_NOP @@ -130,7 +130,7 @@ static ADDRESS_MAP_START( vroulet_map, AS_PROGRAM, 8 ) AM_RANGE(0xc000, 0xc000) AM_NOP ADDRESS_MAP_END -static ADDRESS_MAP_START( vroulet_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( vroulet_io_map, AS_IO, 8, vroulet_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREAD("aysnd", ay8910_r) AM_RANGE(0x00, 0x01) AM_DEVWRITE("aysnd", ay8910_data_address_w) diff --git a/src/mame/drivers/vsnes.c b/src/mame/drivers/vsnes.c index 5913906b69a..1341ec2feac 100644 --- a/src/mame/drivers/vsnes.c +++ b/src/mame/drivers/vsnes.c @@ -210,7 +210,7 @@ static WRITE8_DEVICE_HANDLER( psg_4017_w ) nes_psg_w(device, 0x17, data); } -static ADDRESS_MAP_START( vsnes_cpu1_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vsnes_cpu1_map, AS_PROGRAM, 8, vsnes_state ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_BASE_MEMBER(vsnes_state, m_work_ram) AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu1", ppu2c0x_device, read, write) AM_RANGE(0x4011, 0x4011) AM_DEVWRITE("dac1", dac_w) @@ -224,7 +224,7 @@ static ADDRESS_MAP_START( vsnes_cpu1_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( vsnes_cpu2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( vsnes_cpu2_map, AS_PROGRAM, 8, vsnes_state ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_BASE_MEMBER(vsnes_state, m_work_ram_1) AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE_MODERN("ppu2", ppu2c0x_device, read, write) AM_RANGE(0x4011, 0x4011) AM_DEVWRITE("dac2", dac_w) diff --git a/src/mame/drivers/vulgus.c b/src/mame/drivers/vulgus.c index 05c7728fb0d..1d1ff4fc28e 100644 --- a/src/mame/drivers/vulgus.c +++ b/src/mame/drivers/vulgus.c @@ -50,7 +50,7 @@ static INTERRUPT_GEN( vulgus_vblank_irq ) device_set_input_line_and_vector(device, 0, HOLD_LINE, 0xd7); /* RST 10h - vblank */ } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, vulgus_state ) AM_RANGE(0x0000, 0x9fff) AM_ROM AM_RANGE(0xc000, 0xc000) AM_READ_PORT("SYSTEM") AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P1") @@ -68,7 +68,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xe000, 0xefff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, vulgus_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_WRITEONLY diff --git a/src/mame/drivers/wallc.c b/src/mame/drivers/wallc.c index 649c6dbe14e..8952b4027aa 100644 --- a/src/mame/drivers/wallc.c +++ b/src/mame/drivers/wallc.c @@ -159,7 +159,7 @@ static WRITE8_HANDLER( wallc_coin_counter_w ) coin_counter_w(space->machine(), 0,data & 2); } -static ADDRESS_MAP_START( wallc_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wallc_map, AS_PROGRAM, 8, wallc_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(wallc_videoram_w) AM_MIRROR(0xc00) AM_BASE_MEMBER(wallc_state, m_videoram) /* 2114, 2114 */ AM_RANGE(0xa000, 0xa3ff) AM_RAM /* 2114, 2114 */ diff --git a/src/mame/drivers/wardner.c b/src/mame/drivers/wardner.c index e1c98843219..84802453643 100644 --- a/src/mame/drivers/wardner.c +++ b/src/mame/drivers/wardner.c @@ -197,7 +197,7 @@ void wardner_restore_bank(running_machine &machine) /***************************** Z80 Main Memory Map **************************/ -static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, wardner_state ) AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x7fff) AM_RAM @@ -212,7 +212,7 @@ static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8 ) AM_RANGE(0xc800, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( main_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( main_io_map, AS_IO, 8, wardner_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVWRITE_MODERN("crtc", mc6845_device, address_w) AM_RANGE(0x02, 0x02) AM_DEVWRITE_MODERN("crtc", mc6845_device, register_w) @@ -237,7 +237,7 @@ ADDRESS_MAP_END /***************************** Z80 Sound Memory Map *************************/ -static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8, wardner_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x807f) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") /* Shared RAM with Main Z80 */ @@ -245,7 +245,7 @@ static ADDRESS_MAP_START( sound_program_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, wardner_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x01) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w) ADDRESS_MAP_END @@ -253,13 +253,13 @@ ADDRESS_MAP_END /***************************** TMS32010 Memory Map **************************/ -static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( DSP_program_map, AS_PROGRAM, 16, wardner_state ) AM_RANGE(0x000, 0x5ff) AM_ROM ADDRESS_MAP_END /* $000 - 08F TMS32010 Internal Data RAM in Data Address Space */ -static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( DSP_io_map, AS_IO, 16, wardner_state ) AM_RANGE(0, 0) AM_WRITE(wardner_dsp_addrsel_w) AM_RANGE(1, 1) AM_READWRITE(wardner_dsp_r, wardner_dsp_w) AM_RANGE(3, 3) AM_WRITE(twincobr_dsp_bio_w) diff --git a/src/mame/drivers/warpsped.c b/src/mame/drivers/warpsped.c index 66b87e3ec6e..da7413bd79c 100644 --- a/src/mame/drivers/warpsped.c +++ b/src/mame/drivers/warpsped.c @@ -213,13 +213,13 @@ static SCREEN_UPDATE_IND16( warpspeed ) return 0; } -static ADDRESS_MAP_START( warpspeed_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( warpspeed_map, AS_PROGRAM, 8, warpspeed_state ) AM_RANGE(0x0000, 0x0dff) AM_ROM AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE( warpspeed_vidram_w ) AM_BASE_MEMBER(warpspeed_state, m_videoram) AM_RANGE(0x1c00, 0x1cff) AM_RAM AM_BASE_MEMBER(warpspeed_state, m_workram) ADDRESS_MAP_END -static ADDRESS_MAP_START ( warpspeed_io_map, AS_IO, 8) +static ADDRESS_MAP_START ( warpspeed_io_map, AS_IO, 8, warpspeed_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") diff --git a/src/mame/drivers/warpwarp.c b/src/mame/drivers/warpwarp.c index 5350559e51a..4b603b4a038 100644 --- a/src/mame/drivers/warpwarp.c +++ b/src/mame/drivers/warpwarp.c @@ -317,7 +317,7 @@ static WRITE8_HANDLER( warpwarp_out3_w ) -static ADDRESS_MAP_START( geebee_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( geebee_map, AS_PROGRAM, 8, warpwarp_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_MIRROR(0x400) AM_RAM_WRITE(geebee_videoram_w) AM_BASE_MEMBER(warpwarp_state, m_geebee_videoram) // mirror used by kaitei due to a bug AM_RANGE(0x3000, 0x37ff) AM_ROM AM_REGION("gfx1", 0) // 3000-33ff in geebee @@ -327,14 +327,14 @@ static ADDRESS_MAP_START( geebee_map, AS_PROGRAM, 8 ) AM_RANGE(0x7000, 0x7fff) AM_WRITE(geebee_out7_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( geebee_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( geebee_port_map, AS_IO, 8, warpwarp_state ) AM_RANGE(0x50, 0x53) AM_READ(geebee_in_r) AM_RANGE(0x60, 0x6f) AM_WRITE(geebee_out6_w) AM_RANGE(0x70, 0x7f) AM_WRITE(geebee_out7_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( bombbee_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( bombbee_map, AS_PROGRAM, 8, warpwarp_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM_WRITE(warpwarp_videoram_w) AM_BASE_MEMBER(warpwarp_state, m_videoram) @@ -345,7 +345,7 @@ static ADDRESS_MAP_START( bombbee_map, AS_PROGRAM, 8 ) AM_RANGE(0x6030, 0x603f) AM_WRITE(warpwarp_out3_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( warpwarp_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( warpwarp_map, AS_PROGRAM, 8, warpwarp_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0x4000, 0x47ff) AM_RAM_WRITE(warpwarp_videoram_w) AM_BASE_MEMBER(warpwarp_state, m_videoram) diff --git a/src/mame/drivers/warriorb.c b/src/mame/drivers/warriorb.c index 642e630963d..fa97bc3ab18 100644 --- a/src/mame/drivers/warriorb.c +++ b/src/mame/drivers/warriorb.c @@ -231,7 +231,7 @@ static WRITE16_HANDLER( tc0100scn_dual_screen_w ) MEMORY STRUCTURES ***********************************************************/ -static ADDRESS_MAP_START( darius2d_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( darius2d_map, AS_PROGRAM, 16, warriorb_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* main ram */ AM_RANGE(0x200000, 0x213fff) AM_DEVREAD("tc0100scn_1", tc0100scn_word_r) AM_WRITE(tc0100scn_dual_screen_w) /* tilemaps (all screens) */ @@ -247,7 +247,7 @@ static ADDRESS_MAP_START( darius2d_map, AS_PROGRAM, 16 ) AM_RANGE(0x830000, 0x830003) AM_READWRITE(warriorb_sound_r, warriorb_sound_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( warriorb_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( warriorb_map, AS_PROGRAM, 16, warriorb_state ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x200000, 0x213fff) AM_RAM AM_RANGE(0x300000, 0x313fff) AM_DEVREAD("tc0100scn_1", tc0100scn_word_r) AM_WRITE(tc0100scn_dual_screen_w) /* tilemaps (all screens) */ @@ -264,7 +264,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, warriorb_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/wc90.c b/src/mame/drivers/wc90.c index 9133bb889b3..340f84a73fb 100644 --- a/src/mame/drivers/wc90.c +++ b/src/mame/drivers/wc90.c @@ -108,7 +108,7 @@ static WRITE8_HANDLER( wc90_sound_command_w ) -static ADDRESS_MAP_START( wc90_map_1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wc90_map_1, AS_PROGRAM, 8, wc90_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM /* Main RAM */ AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(wc90_fgvideoram_w) AM_BASE_MEMBER(wc90_state, m_fgvideoram) /* fg video ram */ @@ -140,7 +140,7 @@ static ADDRESS_MAP_START( wc90_map_1, AS_PROGRAM, 8 ) AM_RANGE(0xfce0, 0xfce0) AM_WRITE(wc90_bankswitch_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( wc90_map_2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wc90_map_2, AS_PROGRAM, 8, wc90_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_BASE_SIZE_MEMBER(wc90_state, m_spriteram, m_spriteram_size) @@ -152,7 +152,7 @@ static ADDRESS_MAP_START( wc90_map_2, AS_PROGRAM, 8 ) AM_RANGE(0xfc01, 0xfc01) AM_WRITE(watchdog_reset_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wc90_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_RANGE(0xf800, 0xf803) AM_DEVREADWRITE("ymsnd", ym2608_r, ym2608_w) diff --git a/src/mame/drivers/wc90b.c b/src/mame/drivers/wc90b.c index e628312225b..a88833fa382 100644 --- a/src/mame/drivers/wc90b.c +++ b/src/mame/drivers/wc90b.c @@ -139,7 +139,7 @@ static WRITE8_HANDLER( adpcm_data_w ) } -static ADDRESS_MAP_START( wc90b_map1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wc90b_map1, AS_PROGRAM, 8, wc90b_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x9fff) AM_RAM /* Main RAM */ AM_RANGE(0xa000, 0xafff) AM_RAM_WRITE(wc90b_fgvideoram_w) AM_BASE_MEMBER(wc90b_state, m_fgvideoram) @@ -160,7 +160,7 @@ static ADDRESS_MAP_START( wc90b_map1, AS_PROGRAM, 8 ) AM_RANGE(0xfd08, 0xfd08) AM_READ_PORT("DSW2") ADDRESS_MAP_END -static ADDRESS_MAP_START( wc90b_map2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wc90b_map2, AS_PROGRAM, 8, wc90b_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xcfff) AM_RAM AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_BASE_SIZE_MEMBER(wc90b_state, m_spriteram, m_spriteram_size) @@ -172,7 +172,7 @@ static ADDRESS_MAP_START( wc90b_map2, AS_PROGRAM, 8 ) AM_RANGE(0xfc00, 0xfc00) AM_WRITE(wc90b_bankswitch1_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_cpu, AS_PROGRAM, 8, wc90b_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank3") AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("msm", adpcm_control_w) diff --git a/src/mame/drivers/wecleman.c b/src/mame/drivers/wecleman.c index a45448a1765..e29794d9012 100644 --- a/src/mame/drivers/wecleman.c +++ b/src/mame/drivers/wecleman.c @@ -500,7 +500,7 @@ static WRITE16_HANDLER( blitter_w ) static WRITE16_HANDLER( wecleman_soundlatch_w ); -static ADDRESS_MAP_START( wecleman_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wecleman_map, AS_PROGRAM, 16, wecleman_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM // ROM (03c000-03ffff used as RAM sometimes!) AM_RANGE(0x040494, 0x040495) AM_WRITE(wecleman_videostatus_w) AM_BASE_MEMBER(wecleman_state, m_videostatus) // cloud blending control (HACK) AM_RANGE(0x040000, 0x043fff) AM_RAM // RAM @@ -532,7 +532,7 @@ ADDRESS_MAP_END static WRITE16_HANDLER( hotchase_soundlatch_w ); -static ADDRESS_MAP_START( hotchase_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hotchase_map, AS_PROGRAM, 16, wecleman_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x040000, 0x041fff) AM_RAM // RAM AM_RANGE(0x060000, 0x063fff) AM_RAM // RAM @@ -562,7 +562,7 @@ ADDRESS_MAP_END WEC Le Mans 24 Sub CPU Handlers ***************************************************************************/ -static ADDRESS_MAP_START( wecleman_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wecleman_sub_map, AS_PROGRAM, 16, wecleman_state ) AM_RANGE(0x000000, 0x00ffff) AM_ROM // ROM AM_RANGE(0x060000, 0x060fff) AM_RAM AM_BASE_MEMBER(wecleman_state, m_roadram) AM_SIZE_MEMBER(wecleman_state, m_roadram_size) // Road AM_RANGE(0x070000, 0x073fff) AM_RAM AM_SHARE("share1") // RAM (Shared with main CPU) @@ -573,7 +573,7 @@ ADDRESS_MAP_END Hot Chase Sub CPU Handlers ***************************************************************************/ -static ADDRESS_MAP_START( hotchase_sub_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( hotchase_sub_map, AS_PROGRAM, 16, wecleman_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM // ROM AM_RANGE(0x020000, 0x020fff) AM_RAM AM_BASE_MEMBER(wecleman_state, m_roadram) AM_SIZE_MEMBER(wecleman_state, m_roadram_size) // Road AM_RANGE(0x040000, 0x043fff) AM_RAM AM_SHARE("share1") // Shared with main CPU @@ -630,7 +630,7 @@ static WRITE8_DEVICE_HANDLER( wecleman_K00723216_bank_w ) k007232_set_bank(device, 0, ~data&1 ); //* (wecleman062gre) } -static ADDRESS_MAP_START( wecleman_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wecleman_sound_map, AS_PROGRAM, 8, wecleman_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_RAM AM_RANGE(0x8500, 0x8500) AM_WRITENOP // incresed with speed (global volume)? @@ -723,7 +723,7 @@ static WRITE8_DEVICE_HANDLER( hotchase_k007232_w ) k007232_w(device, offset ^ 1, data); } -static ADDRESS_MAP_START( hotchase_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( hotchase_sound_map, AS_PROGRAM, 8, wecleman_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x100d) AM_DEVREADWRITE("konami1", hotchase_k007232_r, hotchase_k007232_w) // 3 x K007232 AM_RANGE(0x2000, 0x200d) AM_DEVREADWRITE("konami2", hotchase_k007232_r, hotchase_k007232_w) diff --git a/src/mame/drivers/welltris.c b/src/mame/drivers/welltris.c index ebbfc1c3c94..56049843ca5 100644 --- a/src/mame/drivers/welltris.c +++ b/src/mame/drivers/welltris.c @@ -354,7 +354,7 @@ static WRITE8_HANDLER( pending_command_clear_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, welltris_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x17ffff) AM_ROM AM_RANGE(0x800000, 0x81ffff) AM_RAM AM_BASE_MEMBER(welltris_state,m_pixelram) /* Graph_1 & 2*/ @@ -378,13 +378,13 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0xfff00e, 0xfff00f) AM_WRITENOP /* ?? */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, welltris_state ) AM_RANGE(0x0000, 0x77ff) AM_ROM AM_RANGE(0x7800, 0x7fff) AM_RAM AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bank1") ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, welltris_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_WRITE(welltris_sh_bankswitch_w) AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("ymsnd", ym2610_r, ym2610_w) diff --git a/src/mame/drivers/wgp.c b/src/mame/drivers/wgp.c index f3808561d6f..983f29cabac 100644 --- a/src/mame/drivers/wgp.c +++ b/src/mame/drivers/wgp.c @@ -647,7 +647,7 @@ static READ16_HANDLER( wgp_sound_r ) MEMORY STRUCTURES *****************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wgp_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x10ffff) AM_RAM /* main CPUA ram */ AM_RANGE(0x140000, 0x143fff) AM_RAM AM_BASE_SIZE_MEMBER(wgp_state, m_sharedram, m_sharedram_size) @@ -666,7 +666,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x700000, 0x701fff) AM_RAM_WRITE(paletteram16_RRRRGGGGBBBBxxxx_word_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 16 ) /* LAN areas not mapped... */ +static ADDRESS_MAP_START( cpu2_map, AS_PROGRAM, 16 /* LAN areas not mapped... */, wgp_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM AM_RANGE(0x140000, 0x143fff) AM_READWRITE(sharedram_r,sharedram_w) @@ -681,7 +681,7 @@ ADDRESS_MAP_END /***************************************************************************/ -static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( z80_sound_map, AS_PROGRAM, 8, wgp_state ) AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") /* Fallthrough */ AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/wheelfir.c b/src/mame/drivers/wheelfir.c index 4032e51eb78..c6b92b0d379 100644 --- a/src/mame/drivers/wheelfir.c +++ b/src/mame/drivers/wheelfir.c @@ -657,7 +657,7 @@ static WRITE16_HANDLER(coin_cnt_w) } -static ADDRESS_MAP_START( wheelfir_main, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wheelfir_main, AS_PROGRAM, 16, wheelfir_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM @@ -677,7 +677,7 @@ static ADDRESS_MAP_START( wheelfir_main, AS_PROGRAM, 16 ) /* sub is sound cpu? the program roms contain lots of samples */ -static ADDRESS_MAP_START( wheelfir_sub, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wheelfir_sub, AS_PROGRAM, 16, wheelfir_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM AM_RANGE(0x200000, 0x20ffff) AM_RAM diff --git a/src/mame/drivers/williams.c b/src/mame/drivers/williams.c index afeed4a7fdc..e2257872bf6 100644 --- a/src/mame/drivers/williams.c +++ b/src/mame/drivers/williams.c @@ -509,7 +509,7 @@ * *************************************/ -static ADDRESS_MAP_START( defender_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( defender_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0xbfff) AM_RAM AM_BASE_MEMBER(williams_state, m_videoram) /* range from 0xc000-0xcfff is mapped programmatically below */ AM_RANGE(0xc000, 0xc00f) AM_BASE_GENERIC(paletteram) @@ -546,7 +546,7 @@ void defender_install_io_space(address_space *space) * *************************************/ -static ADDRESS_MAP_START( williams_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x8fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_BASE_MEMBER(williams_state, m_videoram) AM_RANGE(0x9000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc00f) AM_MIRROR(0x03f0) AM_WRITEONLY AM_BASE_GENERIC(paletteram) @@ -561,7 +561,7 @@ static ADDRESS_MAP_START( williams_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( williams_extra_ram_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams_extra_ram_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x8fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_BASE_MEMBER(williams_state, m_videoram) AM_RANGE(0x9000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc00f) AM_MIRROR(0x03f0) AM_WRITEONLY AM_BASE_GENERIC(paletteram) @@ -584,7 +584,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( blaster_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( blaster_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x3fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_BASE_MEMBER(williams_state, m_videoram) AM_RANGE(0x4000, 0x8fff) AM_READ_BANK("bank2") AM_WRITEONLY AM_RANGE(0xbb00, 0xbbff) AM_WRITEONLY AM_BASE_MEMBER(williams_state, m_blaster_palette_0) @@ -612,7 +612,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( williams2_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams2_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x7fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_BASE_MEMBER(williams_state, m_videoram) AM_RANGE(0x8000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(williams2_tileram_w) AM_BASE_MEMBER(williams_state, m_williams2_tileram) @@ -634,7 +634,7 @@ static ADDRESS_MAP_START( williams2_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( williams2_extra_ram_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams2_extra_ram_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x7fff) AM_READ_BANK("bank1") AM_WRITEONLY AM_BASE_MEMBER(williams_state, m_videoram) AM_RANGE(0x8000, 0xbfff) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(williams2_tileram_w) AM_BASE_MEMBER(williams_state, m_williams2_tileram) @@ -664,14 +664,14 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( defender_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( defender_sound_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE_MODERN("pia_2", pia6821_device, read, write) AM_RANGE(0xb000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0080, 0x00ff) AM_RAM /* MC6810 RAM */ AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE_MODERN("pia_2", pia6821_device, read, write) @@ -679,7 +679,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END /* Same as above, but for second sound board */ -static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_b, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0080, 0x00ff) AM_RAM /* MC6810 RAM */ AM_RANGE(0x0400, 0x0403) AM_MIRROR(0x8000) AM_DEVREADWRITE_MODERN("pia_2b", pia6821_device, read, write) @@ -694,7 +694,7 @@ ADDRESS_MAP_END * *************************************/ -static ADDRESS_MAP_START( williams2_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( williams2_sound_map, AS_PROGRAM, 8, williams_state ) AM_RANGE(0x0000, 0x007f) AM_RAM /* internal RAM */ AM_RANGE(0x0080, 0x00ff) AM_RAM /* MC6810 RAM */ AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE_MODERN("pia_2", pia6821_device, read, write) diff --git a/src/mame/drivers/wink.c b/src/mame/drivers/wink.c index 0568775019d..5e660d12566 100644 --- a/src/mame/drivers/wink.c +++ b/src/mame/drivers/wink.c @@ -102,7 +102,7 @@ static WRITE8_HANDLER( sound_irq_w ) //space->machine().scheduler().synchronize(); } -static ADDRESS_MAP_START( wink_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wink_map, AS_PROGRAM, 8, wink_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("nvram") @@ -135,7 +135,7 @@ static WRITE8_HANDLER( prot_w ) //take a9-a15 and stuff them in a variable for later use. } -static ADDRESS_MAP_START( wink_io, AS_IO, 8 ) +static ADDRESS_MAP_START( wink_io, AS_IO, 8, wink_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x1f) AM_RAM_WRITE(paletteram_xxxxBBBBRRRRGGGG_le_w) AM_BASE_GENERIC(paletteram) //0x10-0x1f is likely to be something else // AM_RANGE(0x20, 0x20) AM_WRITENOP //??? seems unused.. @@ -158,13 +158,13 @@ static ADDRESS_MAP_START( wink_io, AS_IO, 8 ) AM_RANGE(0xe0, 0xff) AM_READ(prot_r) //load math unit from buffer & lower address-bus ADDRESS_MAP_END -static ADDRESS_MAP_START( wink_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wink_sound_map, AS_PROGRAM, 8, wink_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM AM_RANGE(0x8000, 0x8000) AM_READ(soundlatch_r) ADDRESS_MAP_END -static ADDRESS_MAP_START( wink_sound_io, AS_IO, 8 ) +static ADDRESS_MAP_START( wink_sound_io, AS_IO, 8, wink_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("aysnd", ay8910_r, ay8910_data_w) AM_RANGE(0x80, 0x80) AM_DEVWRITE("aysnd", ay8910_address_w) diff --git a/src/mame/drivers/wiping.c b/src/mame/drivers/wiping.c index eefd72ad96f..c851d46d6e5 100644 --- a/src/mame/drivers/wiping.c +++ b/src/mame/drivers/wiping.c @@ -71,7 +71,7 @@ static WRITE8_HANDLER( sound_irq_mask_w ) state->m_sound_irq_mask = data & 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, wiping_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x8000, 0x83ff) AM_BASE_MEMBER(wiping_state, m_videoram) AM_RANGE(0x8400, 0x87ff) AM_BASE_MEMBER(wiping_state, m_colorram) @@ -87,7 +87,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0xb800, 0xb800) AM_WRITE(watchdog_reset_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wiping_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_DEVWRITE("wiping", wiping_sound_w) AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("share1") diff --git a/src/mame/drivers/witch.c b/src/mame/drivers/witch.c index c5e32a66143..273db9e4195 100644 --- a/src/mame/drivers/witch.c +++ b/src/mame/drivers/witch.c @@ -459,7 +459,7 @@ static const ym2203_interface ym2203_interface_1 = NULL }; -static ADDRESS_MAP_START( map_main, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( map_main, AS_PROGRAM, 8, witch_state ) AM_RANGE(0x0000, UNBANKED_SIZE-1) AM_ROM AM_RANGE(UNBANKED_SIZE, 0x7fff) AM_ROMBANK("bank1") AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) @@ -478,7 +478,7 @@ static ADDRESS_MAP_START( map_main, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( map_sub, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( map_sub, AS_PROGRAM, 8, witch_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) AM_RANGE(0x8008, 0x8009) AM_DEVREADWRITE("ym2", ym2203_r, ym2203_w) diff --git a/src/mame/drivers/wiz.c b/src/mame/drivers/wiz.c index 5acb688f814..aa666230c3a 100644 --- a/src/mame/drivers/wiz.c +++ b/src/mame/drivers/wiz.c @@ -223,7 +223,7 @@ static WRITE8_HANDLER( wiz_main_nmi_mask_w ) state->m_main_nmi_mask = data & 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, wiz_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_WRITE(wiz_coin_counter_w) @@ -262,7 +262,7 @@ static WRITE8_HANDLER( wiz_sound_nmi_mask_w ) /* TODO: clean this up! */ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wiz_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READWRITE(soundlatch_r,wiz_sound_nmi_mask_w) /* Stinger/Scion */ @@ -272,7 +272,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) AM_RANGE(0x7000, 0x7000) AM_READWRITE(soundlatch_r,wiz_sound_nmi_mask_w) /* Wiz */ ADDRESS_MAP_END -static ADDRESS_MAP_START( stinger_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( stinger_sound_map, AS_PROGRAM, 8, wiz_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x2000, 0x23ff) AM_RAM AM_RANGE(0x3000, 0x3000) AM_READWRITE(soundlatch_r,wiz_sound_nmi_mask_w) /* Stinger/Scion */ diff --git a/src/mame/drivers/wldarrow.c b/src/mame/drivers/wldarrow.c index 3f07faee396..c5c90ce6c03 100644 --- a/src/mame/drivers/wldarrow.c +++ b/src/mame/drivers/wldarrow.c @@ -171,7 +171,7 @@ static WRITE8_DEVICE_HANDLER( wldarrow_dac_4_w ) * *************************************/ -static ADDRESS_MAP_START( wldarrow_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( wldarrow_map, AS_PROGRAM, 8, wldarrow_state ) AM_RANGE(0x0000, 0x37ff) AM_ROM AM_RANGE(0x3800, 0x3800) AM_READ_PORT("IN0") AM_RANGE(0x4000, 0x5fff) AM_RAM AM_BASE_MEMBER(wldarrow_state, m_videoram_0) AM_SIZE_MEMBER(wldarrow_state, m_videoram_size) diff --git a/src/mame/drivers/wolfpack.c b/src/mame/drivers/wolfpack.c index ee7380fdfe4..aad0a937f6f 100644 --- a/src/mame/drivers/wolfpack.c +++ b/src/mame/drivers/wolfpack.c @@ -109,7 +109,7 @@ static WRITE8_HANDLER( wolfpack_coldetres_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, wolfpack_state ) AM_RANGE(0x0000, 0x00ff) AM_RAM AM_MIRROR(0x100) AM_RANGE(0x1000, 0x1000) AM_READ_PORT("INPUTS") AM_RANGE(0x1000, 0x10ff) AM_WRITEONLY AM_BASE_MEMBER(wolfpack_state, m_alpha_num_ram) diff --git a/src/mame/drivers/wrally.c b/src/mame/drivers/wrally.c index c71a5d9a212..df89b2f7762 100644 --- a/src/mame/drivers/wrally.c +++ b/src/mame/drivers/wrally.c @@ -101,7 +101,7 @@ produces a high clock frequency, slow movements a low freq. #include "includes/wrally.h" -static ADDRESS_MAP_START( wrally_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( wrally_map, AS_PROGRAM, 16, wrally_state ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* ROM */ AM_RANGE(0x100000, 0x103fff) AM_RAM_WRITE(wrally_vram_w) AM_BASE_MEMBER(wrally_state, m_videoram) /* encrypted Video RAM */ AM_RANGE(0x108000, 0x108007) AM_RAM AM_BASE_MEMBER(wrally_state, m_vregs) /* Video Registers */ @@ -138,11 +138,11 @@ static WRITE8_HANDLER( dallas_share_w ) shareram[BYTE_XOR_LE(offset) ^ 1] = data; } -static ADDRESS_MAP_START( dallas_rom, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( dallas_rom, AS_PROGRAM, 8, wrally_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM /* Code in NVRAM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( dallas_ram, AS_IO, 8 ) +static ADDRESS_MAP_START( dallas_ram, AS_IO, 8, wrally_state ) AM_RANGE(0x0000, 0xffff) AM_READWRITE(dallas_share_r, dallas_share_w) AM_MASK(0x3fff) /* Shared RAM with the main CPU */ ADDRESS_MAP_END diff --git a/src/mame/drivers/wwfsstar.c b/src/mame/drivers/wwfsstar.c index 5dcb7950da5..752461b79c4 100644 --- a/src/mame/drivers/wwfsstar.c +++ b/src/mame/drivers/wwfsstar.c @@ -159,7 +159,7 @@ static WRITE16_HANDLER ( wwfsstar_scrollwrite ); Pretty Straightforward *******************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wwfsstar_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x080fff) AM_RAM_WRITE(wwfsstar_fg0_videoram_w) AM_BASE_MEMBER(wwfsstar_state,m_fg0_videoram) /* FG0 Ram */ AM_RANGE(0x0c0000, 0x0c0fff) AM_RAM_WRITE(wwfsstar_bg0_videoram_w) AM_BASE_MEMBER(wwfsstar_state,m_bg0_videoram) /* BG0 Ram */ @@ -177,7 +177,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* Work Ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wwfsstar_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x87ff) AM_RAM AM_RANGE(0x8800, 0x8801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/wwfwfest.c b/src/mame/drivers/wwfwfest.c index aef42551287..ba452d8e315 100644 --- a/src/mame/drivers/wwfwfest.c +++ b/src/mame/drivers/wwfwfest.c @@ -66,7 +66,7 @@ static WRITE16_HANDLER ( wwfwfest_irq_ack_w ); still some unknown writes however, sound cpu memory map is the same as dd3 *******************************************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, wwfwfest_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x0c0000, 0x0c1fff) AM_RAM_WRITE(wwfwfest_fg0_videoram_w) AM_BASE_MEMBER(wwfwfest_state, m_fg0_videoram) /* FG0 Ram - 4 bytes per tile */ AM_RANGE(0x0c2000, 0x0c3fff) AM_RAM AM_SHARE("spriteram") /* SPR Ram */ @@ -85,7 +85,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* Work Ram */ ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, wwfwfest_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_RANGE(0xc800, 0xc801) AM_DEVREADWRITE("ymsnd", ym2151_r, ym2151_w) diff --git a/src/mame/drivers/xain.c b/src/mame/drivers/xain.c index 41c6ebdc3cc..184daf21f1e 100644 --- a/src/mame/drivers/xain.c +++ b/src/mame/drivers/xain.c @@ -399,7 +399,7 @@ READ8_HANDLER( mcu_comm_reset_r ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, xain_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x2000, 0x27ff) AM_RAM_WRITE(xain_charram_w) AM_BASE_MEMBER(xain_state, m_charram) AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(xain_bgram1_w) AM_BASE_MEMBER(xain_state, m_bgram1) @@ -427,7 +427,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( cpu_map_B, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cpu_map_B, AS_PROGRAM, 8, xain_state ) AM_RANGE(0x0000, 0x1fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x2000, 0x2000) AM_WRITE(xain_irqA_assert_w) AM_RANGE(0x2800, 0x2800) AM_WRITE(xain_irqB_clear_w) @@ -436,7 +436,7 @@ static ADDRESS_MAP_START( cpu_map_B, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8, xain_state ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_READWRITE(xain_68705_port_a_r, xain_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_READWRITE(xain_68705_port_b_r, xain_68705_port_b_w) @@ -450,7 +450,7 @@ static ADDRESS_MAP_START( mcu_map, AS_PROGRAM, 8 ) AM_RANGE(0x0080, 0x07ff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, xain_state ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x1000, 0x1000) AM_READ(soundlatch_r) AM_RANGE(0x2800, 0x2801) AM_DEVWRITE("ym1", ym2203_w) diff --git a/src/mame/drivers/xexex.c b/src/mame/drivers/xexex.c index 93d06ecf697..766030257da 100644 --- a/src/mame/drivers/xexex.c +++ b/src/mame/drivers/xexex.c @@ -322,7 +322,7 @@ static TIMER_DEVICE_CALLBACK( xexex_interrupt ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xexex_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x08ffff) AM_RAM AM_BASE_MEMBER(xexex_state, m_workram) // work RAM @@ -369,7 +369,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, xexex_state ) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM diff --git a/src/mame/drivers/xmen.c b/src/mame/drivers/xmen.c index b144a05eb1f..d6fba865de9 100644 --- a/src/mame/drivers/xmen.c +++ b/src/mame/drivers/xmen.c @@ -111,7 +111,7 @@ static WRITE8_HANDLER( sound_bankswitch_w ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xmen_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_DEVREADWRITE("k053246", k053247_word_r, k053247_word_w) @@ -132,7 +132,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) AM_RANGE(0x18c000, 0x197fff) AM_DEVREADWRITE("k052109", k052109_lsb_r, k052109_lsb_w) ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, xmen_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank4") AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -144,7 +144,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( 6p_main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( 6p_main_map, AS_PROGRAM, 16, xmen_state ) AM_RANGE(0x000000, 0x03ffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_RANGE(0x100000, 0x100fff) AM_RAM AM_BASE_MEMBER(xmen_state, m_xmen6p_spriteramleft) /* sprites (screen 1) */ diff --git a/src/mame/drivers/xorworld.c b/src/mame/drivers/xorworld.c index 1b39139b5c2..ab9b379fc71 100644 --- a/src/mame/drivers/xorworld.c +++ b/src/mame/drivers/xorworld.c @@ -75,7 +75,7 @@ static WRITE16_HANDLER( xorworld_irq6_ack_w ) cputag_set_input_line(space->machine(), "maincpu", 6, CLEAR_LINE); } -static ADDRESS_MAP_START( xorworld_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( xorworld_map, AS_PROGRAM, 16, xorworld_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x200000, 0x200001) AM_READ_PORT("P1") AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P2") diff --git a/src/mame/drivers/xtheball.c b/src/mame/drivers/xtheball.c index 0a27afbcc2d..4484c24cdb8 100644 --- a/src/mame/drivers/xtheball.c +++ b/src/mame/drivers/xtheball.c @@ -206,7 +206,7 @@ static READ16_HANDLER( analogy_watchdog_r ) * *************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xtheball_state ) AM_RANGE(0x00000000, 0x0001ffff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x01000000, 0x010fffff) AM_RAM AM_BASE_MEMBER(xtheball_state, m_vram_bg) AM_RANGE(0x02000000, 0x020fffff) AM_RAM AM_BASE_MEMBER(xtheball_state, m_vram_fg) diff --git a/src/mame/drivers/xxmissio.c b/src/mame/drivers/xxmissio.c index ba970384c0c..c3ae8d3e756 100644 --- a/src/mame/drivers/xxmissio.c +++ b/src/mame/drivers/xxmissio.c @@ -88,7 +88,7 @@ static MACHINE_START( xxmissio ) /****************************************************************************/ -static ADDRESS_MAP_START( map1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( map1, AS_PROGRAM, 8, xxmissio_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8001) AM_DEVREADWRITE("ym1", ym2203_r, ym2203_w) @@ -111,7 +111,7 @@ static ADDRESS_MAP_START( map1, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( map2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( map2, AS_PROGRAM, 8, xxmissio_state ) AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank1") diff --git a/src/mame/drivers/xybots.c b/src/mame/drivers/xybots.c index acb3002fe92..109ebc35c41 100644 --- a/src/mame/drivers/xybots.c +++ b/src/mame/drivers/xybots.c @@ -83,7 +83,7 @@ static READ16_HANDLER( special_port1_r ) *************************************/ /* full map verified from schematics */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xybots_state ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000000, 0x007fff) AM_MIRROR(0x7c0000) AM_ROM AM_RANGE(0x008000, 0x00ffff) AM_MIRROR(0x7c0000) AM_ROM /* slapstic maps here */ diff --git a/src/mame/drivers/xyonix.c b/src/mame/drivers/xyonix.c index 9ad4f3b65a4..2b1ed800f58 100644 --- a/src/mame/drivers/xyonix.c +++ b/src/mame/drivers/xyonix.c @@ -134,13 +134,13 @@ static WRITE8_HANDLER ( xyonix_io_w ) /* Mem / Port Maps ***********************************************************/ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, xyonix_state ) AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM AM_RANGE(0xe000, 0xffff) AM_RAM_WRITE(xyonix_vidram_w) AM_BASE_MEMBER(xyonix_state,m_vidram) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, xyonix_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x20, 0x20) AM_READNOP AM_DEVWRITE("sn1", sn76496_w) /* SN76496 ready signal */ AM_RANGE(0x21, 0x21) AM_READNOP AM_DEVWRITE("sn2", sn76496_w) diff --git a/src/mame/drivers/yiear.c b/src/mame/drivers/yiear.c index 69a880ab76c..461ea0e41b2 100644 --- a/src/mame/drivers/yiear.c +++ b/src/mame/drivers/yiear.c @@ -127,7 +127,7 @@ static INTERRUPT_GEN( yiear_nmi_interrupt ) } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, yiear_state ) AM_RANGE(0x0000, 0x0000) AM_DEVREAD("vlm", yiear_speech_r) AM_RANGE(0x4000, 0x4000) AM_WRITE(yiear_control_w) AM_RANGE(0x4800, 0x4800) AM_WRITE(konami_SN76496_latch_w) diff --git a/src/mame/drivers/yunsun16.c b/src/mame/drivers/yunsun16.c index e5aedd6f1ba..82535b08602 100644 --- a/src/mame/drivers/yunsun16.c +++ b/src/mame/drivers/yunsun16.c @@ -112,7 +112,7 @@ static WRITE16_HANDLER( yunsun16_sound_bank_w ) } } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, yunsun16_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x800000, 0x800001) AM_READ_PORT("INPUTS") AM_RANGE(0x800018, 0x800019) AM_READ_PORT("SYSTEM") @@ -168,12 +168,12 @@ static DRIVER_INIT( magicbub ) ***************************************************************************/ -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, yunsun16_state ) AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sound_port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( sound_port_map, AS_IO, 8, yunsun16_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x11) AM_DEVREADWRITE("ymsnd", ym3812_r, ym3812_w ) AM_RANGE(0x18, 0x18) AM_READ(soundlatch_r ) // From Main CPU diff --git a/src/mame/drivers/yunsung8.c b/src/mame/drivers/yunsung8.c index c0aaf1d192c..f664e8d1ae8 100644 --- a/src/mame/drivers/yunsung8.c +++ b/src/mame/drivers/yunsung8.c @@ -65,7 +65,7 @@ static WRITE8_HANDLER( yunsung8_bankswitch_w ) d000-dfff Tiles "" */ -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, yunsung8_state ) AM_RANGE(0x0001, 0x0001) AM_WRITE(yunsung8_bankswitch_w) // ROM Bank (again?) AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1") // Banked ROM AM_RANGE(0x0000, 0xbfff) AM_ROM @@ -74,7 +74,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, yunsung8_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ_PORT("SYSTEM") AM_WRITE(yunsung8_videobank_w) // video RAM bank AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") AM_WRITE(yunsung8_bankswitch_w) // ROM Bank + Layers Enable @@ -115,7 +115,7 @@ static WRITE8_HANDLER( yunsung8_adpcm_w ) -static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, yunsung8_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank2") // Banked ROM AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("msm", yunsung8_sound_bankswitch_w ) // ROM Bank diff --git a/src/mame/drivers/zac2650.c b/src/mame/drivers/zac2650.c index ee0d7742d45..5d1845d4632 100644 --- a/src/mame/drivers/zac2650.c +++ b/src/mame/drivers/zac2650.c @@ -17,7 +17,7 @@ static WRITE8_HANDLER( tinvader_sound_w ); -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, zac2650_state ) AM_RANGE(0x0000, 0x17ff) AM_ROM AM_RANGE(0x1800, 0x1bff) AM_RAM_WRITE(tinvader_videoram_w) AM_BASE_MEMBER(zac2650_state, m_videoram) AM_RANGE(0x1c00, 0x1cff) AM_RAM @@ -30,7 +30,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) AM_RANGE(0x1f00, 0x1fff) AM_READWRITE(zac_s2636_r, zac_s2636_w) AM_BASE_MEMBER(zac2650_state, m_s2636_0_ram) ADDRESS_MAP_END -static ADDRESS_MAP_START( port_map, AS_IO, 8 ) +static ADDRESS_MAP_START( port_map, AS_IO, 8, zac2650_state ) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE") ADDRESS_MAP_END diff --git a/src/mame/drivers/zaccaria.c b/src/mame/drivers/zaccaria.c index cb748fdf009..6721e3260a4 100644 --- a/src/mame/drivers/zaccaria.c +++ b/src/mame/drivers/zaccaria.c @@ -258,7 +258,7 @@ static WRITE8_HANDLER( nmi_mask_w ) state->m_nmi_mask = data & 1; } -static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, zaccaria_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x63ff) AM_READONLY AM_RANGE(0x6400, 0x6407) AM_READ(zaccaria_prot1_r) @@ -300,7 +300,7 @@ ADDRESS_MAP_END 6821 PIA: CA1 comes from the master sound cpu's latch bit 7 (which is also connected to the AY chip at 4G's IOB1); CB1 comes from a periodic counter clocked by the 6802's clock, divided by 4096. CA2 and CB2 are disconnected. PA0-7 connect to the data busses of the AY-3-8910 chips; PB0 and PB1 connect to the BC1 and BDIR pins of the AY chip at 4G; PB2 and PB3 connect to the BC1 and BDIR pins of the AY chip at 4H. */ -static ADDRESS_MAP_START( sound_map_1, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_1, AS_PROGRAM, 8, zaccaria_state ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x500c, 0x500f) AM_DEVREADWRITE_MODERN("pia0", pia6821_device, read, write) AM_MIRROR(0x1ff0) AM_RANGE(0x8000, 0x9fff) AM_ROM AM_MIRROR(0x2000) // rom 13 @@ -327,7 +327,7 @@ ADDRESS_MAP_END 6821 PIA: PA0-7, CA2 and CB1 connect to the TMS5200; CA1 and CB2 are disconnected, though the test mode assumes there's something connected to CB2 (possibly another LED like the one connected to PB4); PB3 connects to 'ACS' which goes to the z80. */ -static ADDRESS_MAP_START( sound_map_2, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sound_map_2, AS_PROGRAM, 8, zaccaria_state ) AM_RANGE(0x0000, 0x007f) AM_RAM /* 6802 internal ram */ AM_RANGE(0x0090, 0x0093) AM_DEVREADWRITE_MODERN("pia1", pia6821_device, read, write) AM_MIRROR(0x8F6C) AM_RANGE(0x1000, 0x1000) AM_DEVWRITE("dac2", mc1408_data_w) AM_MIRROR(0x83FF) /* MC1408 */ diff --git a/src/mame/drivers/zaxxon.c b/src/mame/drivers/zaxxon.c index b1ea7c2741b..8258a237877 100644 --- a/src/mame/drivers/zaxxon.c +++ b/src/mame/drivers/zaxxon.c @@ -431,7 +431,7 @@ static CUSTOM_INPUT( zaxxon_coin_r ) *************************************/ /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( zaxxon_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( zaxxon_map, AS_PROGRAM, 8, zaxxon_state ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x6fff) AM_RAM AM_RANGE(0x8000, 0x83ff) AM_MIRROR(0x1c00) AM_RAM_WRITE(zaxxon_videoram_w) AM_BASE_MEMBER(zaxxon_state,m_videoram) @@ -454,7 +454,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( congo_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( congo_map, AS_PROGRAM, 8, zaxxon_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0x8fff) AM_RAM AM_RANGE(0xa000, 0xa3ff) AM_MIRROR(0x1800) AM_RAM_WRITE(zaxxon_videoram_w) AM_BASE_MEMBER(zaxxon_state,m_videoram) @@ -480,7 +480,7 @@ ADDRESS_MAP_END /* complete memory map derived from schematics */ -static ADDRESS_MAP_START( congo_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( congo_sound_map, AS_PROGRAM, 8, zaxxon_state ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0x4000, 0x47ff) AM_MIRROR(0x1800) AM_RAM AM_RANGE(0x6000, 0x6000) AM_MIRROR(0x1fff) AM_DEVWRITE("sn1", sn76496_w) diff --git a/src/mame/drivers/zn.c b/src/mame/drivers/zn.c index 710c33ac6a7..74bcbac0af5 100644 --- a/src/mame/drivers/zn.c +++ b/src/mame/drivers/zn.c @@ -419,7 +419,7 @@ static WRITE32_HANDLER( coin_w ) } } -static ADDRESS_MAP_START( zn_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( zn_map, AS_PROGRAM, 32, zn_state ) AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ AM_RANGE(0x00400000, 0x007fffff) AM_RAM AM_SHARE("share1") /* ram mirror */ AM_RANGE(0x1fa00000, 0x1fa00003) AM_READ_PORT("P1") @@ -445,7 +445,7 @@ static ADDRESS_MAP_START( zn_map, AS_PROGRAM, 32 ) AM_RANGE(0xfffe0130, 0xfffe0133) AM_WRITENOP ADDRESS_MAP_END -static ADDRESS_MAP_START( link_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( link_map, AS_PROGRAM, 8, zn_state ) ADDRESS_MAP_END static void zn_driver_init( running_machine &machine ) @@ -698,7 +698,7 @@ static MACHINE_RESET( coh1000c ) zn_machine_init(machine); } -static ADDRESS_MAP_START( qsound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( qsound_map, AS_PROGRAM, 8, zn_state ) AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank10") /* banked (contains music data) */ AM_RANGE(0xd000, 0xd002) AM_DEVWRITE("qsound", qsound_w) @@ -707,7 +707,7 @@ static ADDRESS_MAP_START( qsound_map, AS_PROGRAM, 8 ) AM_RANGE(0xf000, 0xffff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( qsound_portmap, AS_IO, 8 ) +static ADDRESS_MAP_START( qsound_portmap, AS_IO, 8, zn_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x00) AM_READ(soundlatch_r) ADDRESS_MAP_END @@ -1193,7 +1193,7 @@ static MACHINE_RESET( coh1000ta ) zn_machine_init(machine); } -static ADDRESS_MAP_START( fx1a_sound_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( fx1a_sound_map, AS_PROGRAM, 8, zn_state ) AM_RANGE(0x4000, 0x7fff) AM_ROMBANK("bank10") /* Fallthrough */ AM_RANGE(0x0000, 0x7fff) AM_ROM AM_RANGE(0xc000, 0xdfff) AM_RAM @@ -1659,7 +1659,7 @@ static MACHINE_RESET( coh1002e ) zn_machine_init(machine); } -static ADDRESS_MAP_START( psarc_snd_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( psarc_snd_map, AS_PROGRAM, 16, zn_state ) AM_RANGE(0x000000, 0x07ffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_RAM AM_RANGE(0x100000, 0x10001f) AM_DEVREADWRITE8( "ymf", ymf271_r, ymf271_w, 0x00ff ) @@ -2574,12 +2574,12 @@ static READ8_HANDLER( cbaj_z80_ready_r ) return ret; } -static ADDRESS_MAP_START( cbaj_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( cbaj_z80_map, AS_PROGRAM, 8, zn_state ) AM_RANGE( 0x0000, 0x7fff ) AM_ROM AM_RANGE( 0x8000, 0xffff ) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( cbaj_z80_port_map, AS_IO, 8) +static ADDRESS_MAP_START( cbaj_z80_port_map, AS_IO, 8, zn_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE( 0x84, 0x85 ) AM_DEVREADWRITE( "ymz", ymz280b_r, ymz280b_w ) AM_RANGE( 0x90, 0x90 ) AM_READWRITE( cbaj_z80_latch_r, cbaj_z80_latch_w ) diff --git a/src/mame/drivers/zr107.c b/src/mame/drivers/zr107.c index 04d0384194c..df58069d698 100644 --- a/src/mame/drivers/zr107.c +++ b/src/mame/drivers/zr107.c @@ -402,7 +402,7 @@ static MACHINE_START( zr107 ) ppcdrc_add_fastram(machine.device("maincpu"), 0x00000000, 0x000fffff, FALSE, state->m_workram); } -static ADDRESS_MAP_START( zr107_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( zr107_map, AS_PROGRAM, 32, zr107_state ) AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_BASE_MEMBER(zr107_state, m_workram) /* Work RAM */ AM_RANGE(0x74000000, 0x74003fff) AM_DEVREADWRITE("k056832", k056832_ram_long_r, k056832_ram_long_w) AM_RANGE(0x74020000, 0x7402003f) AM_DEVREADWRITE("k056832", k056832_long_r, k056832_long_w) @@ -430,7 +430,7 @@ static WRITE32_HANDLER( jetwave_palette_w ) palette_set_color_rgb(space->machine(), offset, pal5bit(data >> 10), pal5bit(data >> 5), pal5bit(data >> 0)); } -static ADDRESS_MAP_START( jetwave_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( jetwave_map, AS_PROGRAM, 32, zr107_state ) AM_RANGE(0x00000000, 0x000fffff) AM_MIRROR(0x80000000) AM_RAM /* Work RAM */ AM_RANGE(0x74000000, 0x740000ff) AM_MIRROR(0x80000000) AM_DEVREADWRITE("k001604", k001604_reg_r, k001604_reg_w) AM_RANGE(0x74010000, 0x7401ffff) AM_MIRROR(0x80000000) AM_RAM_WRITE(jetwave_palette_w) AM_BASE_GENERIC(paletteram) @@ -455,7 +455,7 @@ ADDRESS_MAP_END /**********************************************************************/ -static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( sound_memmap, AS_PROGRAM, 16, zr107_state ) AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x100000, 0x103fff) AM_RAM /* Work RAM */ AM_RANGE(0x200000, 0x2004ff) AM_DEVREADWRITE8_MODERN("konami1", k054539_device, read, write, 0xff00) @@ -485,7 +485,7 @@ static WRITE32_HANDLER( dsp_dataram_w ) state->m_sharc_dataram[offset] = data; } -static ADDRESS_MAP_START( sharc_map, AS_DATA, 32 ) +static ADDRESS_MAP_START( sharc_map, AS_DATA, 32, zr107_state ) AM_RANGE(0x400000, 0x41ffff) AM_READWRITE(cgboard_0_shared_sharc_r, cgboard_0_shared_sharc_w) AM_RANGE(0x500000, 0x5fffff) AM_READWRITE(dsp_dataram_r, dsp_dataram_w) AM_RANGE(0x600000, 0x6fffff) AM_READWRITE(K001005_r, K001005_w) diff --git a/src/mame/machine/asic65.c b/src/mame/machine/asic65.c index bfcf3d64a7f..751e59fb70f 100644 --- a/src/mame/machine/asic65.c +++ b/src/mame/machine/asic65.c @@ -513,12 +513,12 @@ static READ16_HANDLER( asci65_get_bio ) * *************************************/ -static ADDRESS_MAP_START( asic65_program_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( asic65_program_map, AS_PROGRAM, 16, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000, 0xfff) AM_ROM ADDRESS_MAP_END -static ADDRESS_MAP_START( asic65_io_map, AS_IO, 16 ) +static ADDRESS_MAP_START( asic65_io_map, AS_IO, 16, driver_device ) AM_RANGE(0, 0) AM_MIRROR(6) AM_READWRITE(asic65_68k_r, asic65_68k_w) AM_RANGE(1, 1) AM_MIRROR(6) AM_READWRITE(asic65_stat_r, asic65_stat_w) AM_RANGE(TMS32010_BIO, TMS32010_BIO) AM_READ(asci65_get_bio) diff --git a/src/mame/machine/buggychl.c b/src/mame/machine/buggychl.c index 5ce4ff46335..11105e95d81 100644 --- a/src/mame/machine/buggychl.c +++ b/src/mame/machine/buggychl.c @@ -183,7 +183,7 @@ READ8_DEVICE_HANDLER( buggychl_mcu_status_r ) return res; } -ADDRESS_MAP_START( buggychl_mcu_map, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( buggychl_mcu_map, AS_PROGRAM, 8, buggychl_mcu_device ) ADDRESS_MAP_GLOBAL_MASK(0x7ff) AM_RANGE(0x0000, 0x0000) AM_DEVREADWRITE("bmcu", buggychl_68705_port_a_r, buggychl_68705_port_a_w) AM_RANGE(0x0001, 0x0001) AM_DEVREADWRITE("bmcu", buggychl_68705_port_b_r, buggychl_68705_port_b_w) diff --git a/src/mame/machine/megadriv.c b/src/mame/machine/megadriv.c index 521905e572e..b484f3564ce 100644 --- a/src/mame/machine/megadriv.c +++ b/src/mame/machine/megadriv.c @@ -2070,7 +2070,7 @@ WRITE16_HANDLER( megadriv_68k_io_write ) -static ADDRESS_MAP_START( megadriv_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( megadriv_map, AS_PROGRAM, 16, driver_device ) AM_RANGE(0x000000, 0x3fffff) AM_ROM /* (0x000000 - 0x3fffff) == GAME ROM (4Meg Max, Some games have special banking too) */ @@ -2353,7 +2353,7 @@ static READ8_HANDLER( megadriv_z80_unmapped_read ) return 0xff; } -static ADDRESS_MAP_START( megadriv_z80_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( megadriv_z80_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAMBANK("bank1") AM_MIRROR(0x2000) // RAM can be accessed by the 68k AM_RANGE(0x4000, 0x4003) AM_DEVREADWRITE("ymsnd", ym2612_r,ym2612_w) @@ -2367,7 +2367,7 @@ static ADDRESS_MAP_START( megadriv_z80_map, AS_PROGRAM, 8 ) AM_RANGE(0x8000, 0xffff) AM_READWRITE(z80_read_68k_banked_data,z80_write_68k_banked_data) // The Z80 can read the 68k address space this way ADDRESS_MAP_END -static ADDRESS_MAP_START( megadriv_z80_io_map, AS_IO, 8 ) +static ADDRESS_MAP_START( megadriv_z80_io_map, AS_IO, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x0000, 0xff) AM_NOP ADDRESS_MAP_END @@ -2376,7 +2376,7 @@ ADDRESS_MAP_END /************************************ Megadrive Bootlegs *************************************/ // smaller ROM region because some bootlegs check for RAM there -static ADDRESS_MAP_START( md_bootleg_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( md_bootleg_map, AS_PROGRAM, 16, driver_device ) AM_RANGE(0x000000, 0x0fffff) AM_ROM /* Cartridge Program Rom */ AM_RANGE(0x200000, 0x2023ff) AM_RAM // tested @@ -3730,7 +3730,7 @@ _32X_MAP_RAM_WRITEHANDLERS(paletteram) // _32x_sh2_paletteram_w // SH2 memory maps /**********************************************************************************************/ -static ADDRESS_MAP_START( sh2_main_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( sh2_main_map, AS_PROGRAM, 32, driver_device ) AM_RANGE(0x00000000, 0x00003fff) AM_ROM AM_RANGE(0x00004000, 0x00004003) AM_READWRITE( _32x_sh2_master_4000_common_4002_r, _32x_sh2_master_4000_common_4002_w ) @@ -3759,7 +3759,7 @@ static ADDRESS_MAP_START( sh2_main_map, AS_PROGRAM, 32 ) AM_RANGE(0xc0000000, 0xc0000fff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( sh2_slave_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( sh2_slave_map, AS_PROGRAM, 32, driver_device ) AM_RANGE(0x00000000, 0x00003fff) AM_ROM AM_RANGE(0x00004000, 0x00004003) AM_READWRITE( _32x_sh2_slave_4000_common_4002_r, _32x_sh2_slave_4000_common_4002_w ) @@ -6767,7 +6767,7 @@ READ16_HANDLER( segacd_font_converted_r ) return retdata; } -static ADDRESS_MAP_START( segacd_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( segacd_map, AS_PROGRAM, 16, driver_device ) AM_RANGE(0x000000, 0x07ffff) AM_RAM AM_BASE(&segacd_4meg_prgram) AM_RANGE(0x080000, 0x0bffff) AM_READWRITE(segacd_sub_dataram_part1_r, segacd_sub_dataram_part1_w) AM_BASE(&segacd_dataram) @@ -7113,12 +7113,12 @@ static READ16_HANDLER( svp_68k_cell2_r ) return ((UINT16 *)state->m_dram)[a1]; } -static ADDRESS_MAP_START( svp_ssp_map, AS_PROGRAM, 16 ) +static ADDRESS_MAP_START( svp_ssp_map, AS_PROGRAM, 16, driver_device ) AM_RANGE(0x0000, 0x03ff) AM_ROMBANK("bank3") AM_RANGE(0x0400, 0xffff) AM_ROMBANK("bank4") ADDRESS_MAP_END -static ADDRESS_MAP_START( svp_ext_map, AS_IO, 16 ) +static ADDRESS_MAP_START( svp_ext_map, AS_IO, 16, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0xf) AM_RANGE(0*2, 0*2+1) AM_READWRITE(read_PM0, write_PM0) AM_RANGE(1*2, 1*2+1) AM_READWRITE(read_PM1, write_PM1) diff --git a/src/mame/machine/model1.c b/src/mame/machine/model1.c index d8174444094..60191b81df5 100644 --- a/src/mame/machine/model1.c +++ b/src/mame/machine/model1.c @@ -2246,7 +2246,7 @@ const mb86233_cpu_core model1_vr_tgp_config = }; /* TGP memory map */ -ADDRESS_MAP_START( model1_vr_tgp_map, AS_PROGRAM, 32 ) +ADDRESS_MAP_START( model1_vr_tgp_map, AS_PROGRAM, 32, driver_device ) AM_RANGE(0x00000000, 0x000007ff) AM_RAM AM_REGION("tgp", 0) AM_RANGE(0x00400000, 0x00407fff) AM_READWRITE(copro_ram_r, copro_ram_w) AM_RANGE(0xff800000, 0xff87ffff) AM_ROM AM_REGION("user2", 0) diff --git a/src/mame/machine/namco50.c b/src/mame/machine/namco50.c index 333c262ea26..11ebffde334 100644 --- a/src/mame/machine/namco50.c +++ b/src/mame/machine/namco50.c @@ -253,7 +253,7 @@ READ8_DEVICE_HANDLER( namco_50xx_read ) DEVICE INTERFACE ***************************************************************************/ -static ADDRESS_MAP_START( namco_50xx_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namco_50xx_map_io, AS_IO, 8, namco_50xx_device ) AM_RANGE(MB88_PORTK, MB88_PORTK) AM_READ(namco_50xx_K_r) AM_RANGE(MB88_PORTO, MB88_PORTO) AM_WRITE(namco_50xx_O_w) AM_RANGE(MB88_PORTR0, MB88_PORTR0) AM_READ(namco_50xx_R0_r) diff --git a/src/mame/machine/namco51.c b/src/mame/machine/namco51.c index bc6e4447869..f7ae6adbd36 100644 --- a/src/mame/machine/namco51.c +++ b/src/mame/machine/namco51.c @@ -352,7 +352,7 @@ READ8_DEVICE_HANDLER( namco_51xx_read ) DEVICE INTERFACE ***************************************************************************/ -static ADDRESS_MAP_START( namco_51xx_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namco_51xx_map_io, AS_IO, 8, namco_51xx_device ) // AM_RANGE(MB88_PORTK, MB88_PORTK) AM_READ(namco_51xx_K_r) // AM_RANGE(MB88_PORTO, MB88_PORTO) AM_WRITE(namco_51xx_O_w) // AM_RANGE(MB88_PORTR0, MB88_PORTR0) AM_READ(namco_51xx_R0_r) diff --git a/src/mame/machine/namco53.c b/src/mame/machine/namco53.c index c7b45d11d8e..3b5d3dfaa7b 100644 --- a/src/mame/machine/namco53.c +++ b/src/mame/machine/namco53.c @@ -144,7 +144,7 @@ READ8_DEVICE_HANDLER( namco_53xx_read ) DEVICE INTERFACE ***************************************************************************/ -static ADDRESS_MAP_START( namco_53xx_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namco_53xx_map_io, AS_IO, 8,namco_53xx_device ) AM_RANGE(MB88_PORTK, MB88_PORTK) AM_READ(namco_53xx_K_r) AM_RANGE(MB88_PORTO, MB88_PORTO) AM_WRITE(namco_53xx_O_w) AM_RANGE(MB88_PORTP, MB88_PORTP) AM_WRITE(namco_53xx_P_w) diff --git a/src/mame/machine/namco62.c b/src/mame/machine/namco62.c index 662e11d8504..090fc552bde 100644 --- a/src/mame/machine/namco62.c +++ b/src/mame/machine/namco62.c @@ -37,7 +37,7 @@ INLINE namco_62xx_state *get_safe_token(device_t *device) DEVICE INTERFACE ***************************************************************************/ -static ADDRESS_MAP_START( namco_62xx_map_io, AS_IO, 8 ) +static ADDRESS_MAP_START( namco_62xx_map_io, AS_IO, 8, namco_62xx_device ) // AM_RANGE(MB88_PORTK, MB88_PORTK) AM_READ(namco_62xx_K_r) // AM_RANGE(MB88_PORTO, MB88_PORTO) AM_WRITE(namco_62xx_O_w) // AM_RANGE(MB88_PORTR0, MB88_PORTR0) AM_READ(namco_62xx_R0_r) diff --git a/src/mame/machine/pcshare.c b/src/mame/machine/pcshare.c index 3244156a2d4..cabc578f74a 100644 --- a/src/mame/machine/pcshare.c +++ b/src/mame/machine/pcshare.c @@ -325,7 +325,7 @@ static const struct pit8253_config at_pit8254_config = } }; -ADDRESS_MAP_START( pcat32_io_common, AS_IO, 32 ) +ADDRESS_MAP_START( pcat32_io_common, AS_IO, 32, driver_device ) AM_RANGE(0x0000, 0x001f) AM_DEVREADWRITE8("dma8237_1", i8237_r, i8237_w, 0xffffffff) AM_RANGE(0x0020, 0x003f) AM_DEVREADWRITE8("pic8259_1", pic8259_r, pic8259_w, 0xffffffff) AM_RANGE(0x0040, 0x005f) AM_DEVREADWRITE8("pit8254", pit8253_r, pit8253_w, 0xffffffff) diff --git a/src/mame/machine/pgmprot1.c b/src/mame/machine/pgmprot1.c index 20c94878ef1..c0ba26c63a1 100644 --- a/src/mame/machine/pgmprot1.c +++ b/src/mame/machine/pgmprot1.c @@ -170,14 +170,14 @@ static WRITE32_HANDLER( pgm_arm7_type1_shareram_w ) /* 55857E? */ /* Knights of Valor, Photo Y2k */ /* no execute only space? */ -static ADDRESS_MAP_START( kov_map, AS_PROGRAM, 16) +static ADDRESS_MAP_START( kov_map, AS_PROGRAM, 16, pgm_arm_type1_state ) AM_IMPORT_FROM(pgm_mem) AM_RANGE(0x100000, 0x4effff) AM_ROMBANK("bank1") /* Game ROM */ AM_RANGE(0x4f0000, 0x4f003f) AM_READWRITE(pgm_arm7_type1_ram_r, pgm_arm7_type1_ram_w) /* ARM7 Shared RAM */ AM_RANGE(0x500000, 0x500005) AM_READWRITE(pgm_arm7_type1_68k_protlatch_r, pgm_arm7_type1_68k_protlatch_w) /* ARM7 Latch */ ADDRESS_MAP_END -static ADDRESS_MAP_START( 55857E_arm7_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( 55857E_arm7_map, AS_PROGRAM, 32, pgm_arm_type1_state ) AM_RANGE(0x00000000, 0x00003fff) AM_ROM AM_RANGE(0x08100000, 0x083fffff) AM_READ(pgm_arm7_type1_exrom_r) // unpopulated, returns 0 to keep checksum happy AM_RANGE(0x10000000, 0x100003ff) AM_RAM // internal ram for asic @@ -193,12 +193,12 @@ ADDRESS_MAP_END /**************************** SIMULATIONS *****************************/ -static ADDRESS_MAP_START( kov_sim_map, AS_PROGRAM, 16) +static ADDRESS_MAP_START( kov_sim_map, AS_PROGRAM, 16, pgm_arm_type1_state ) AM_IMPORT_FROM(pgm_mem) AM_RANGE(0x100000, 0x4effff) AM_ROMBANK("bank1") /* Game ROM */ ADDRESS_MAP_END -static ADDRESS_MAP_START( cavepgm_mem, AS_PROGRAM, 16) +static ADDRESS_MAP_START( cavepgm_mem, AS_PROGRAM, 16, pgm_arm_type1_state ) AM_IMPORT_FROM(pgm_base_mem) AM_RANGE(0x000000, 0x3fffff) AM_ROM /* protection devices installed (simulated) later */ diff --git a/src/mame/machine/pgmprot2.c b/src/mame/machine/pgmprot2.c index b1639d09b5b..0dbacb24cf6 100644 --- a/src/mame/machine/pgmprot2.c +++ b/src/mame/machine/pgmprot2.c @@ -119,7 +119,7 @@ static WRITE16_HANDLER( arm7_ram_w ) /* 55857F? */ /* Knights of Valor 2, Martial Masters, DoDonpachi 2 */ /* no execute only space? */ -static ADDRESS_MAP_START( kov2_mem, AS_PROGRAM, 16) +static ADDRESS_MAP_START( kov2_mem, AS_PROGRAM, 16, pgm_arm_type2_state ) AM_IMPORT_FROM(pgm_mem) AM_RANGE(0x100000, 0x5fffff) AM_ROMBANK("bank1") /* Game ROM */ AM_RANGE(0xd00000, 0xd0ffff) AM_READWRITE(arm7_ram_r, arm7_ram_w) /* ARM7 Shared RAM */ @@ -127,7 +127,7 @@ static ADDRESS_MAP_START( kov2_mem, AS_PROGRAM, 16) ADDRESS_MAP_END -static ADDRESS_MAP_START( 55857F_arm7_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( 55857F_arm7_map, AS_PROGRAM, 32, pgm_arm_type2_state ) AM_RANGE(0x00000000, 0x00003fff) AM_ROM AM_RANGE(0x08000000, 0x083fffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x10000000, 0x100003ff) AM_RAM diff --git a/src/mame/machine/pgmprot3.c b/src/mame/machine/pgmprot3.c index 25b4bd09d06..4861537213b 100644 --- a/src/mame/machine/pgmprot3.c +++ b/src/mame/machine/pgmprot3.c @@ -132,7 +132,7 @@ static WRITE32_HANDLER( svg_latch_arm_w ) /* 55857G? */ /* Demon Front, The Gladiator, Happy 6-in-1, Spectral Vs. Generation, Killing Blade EX */ /* the ones with an EXECUTE ONLY region of ARM space? */ -static ADDRESS_MAP_START( svg_68k_mem, AS_PROGRAM, 16) +static ADDRESS_MAP_START( svg_68k_mem, AS_PROGRAM, 16, pgm_arm_type3_state ) AM_IMPORT_FROM(pgm_mem) AM_RANGE(0x100000, 0x1fffff) AM_ROMBANK("bank1") /* Game ROM */ @@ -142,7 +142,7 @@ static ADDRESS_MAP_START( svg_68k_mem, AS_PROGRAM, 16) ADDRESS_MAP_END -static ADDRESS_MAP_START( 55857G_arm7_map, AS_PROGRAM, 32 ) +static ADDRESS_MAP_START( 55857G_arm7_map, AS_PROGRAM, 32, pgm_arm_type3_state ) AM_RANGE(0x00000000, 0x00003fff) AM_ROM AM_RANGE(0x08000000, 0x087fffff) AM_ROM AM_REGION("user1", 0) AM_RANGE(0x10000000, 0x100003ff) AM_RAM diff --git a/src/mame/machine/pgmprot4.c b/src/mame/machine/pgmprot4.c index 07b8e87db50..ce7de77607e 100644 --- a/src/mame/machine/pgmprot4.c +++ b/src/mame/machine/pgmprot4.c @@ -548,7 +548,7 @@ DRIVER_INIT( drgw3 ) } -static ADDRESS_MAP_START( killbld_mem, AS_PROGRAM, 16) +static ADDRESS_MAP_START( killbld_mem, AS_PROGRAM, 16, pgm_022_025_state ) AM_IMPORT_FROM(pgm_mem) AM_RANGE(0x100000, 0x2fffff) AM_ROMBANK("bank1") /* Game ROM */ AM_RANGE(0x300000, 0x303fff) AM_RAM AM_BASE_MEMBER(pgm_022_025_state, m_sharedprotram) // Shared with protection device diff --git a/src/mame/machine/pgmprot6.c b/src/mame/machine/pgmprot6.c index a9e3a61c106..b347a532d64 100644 --- a/src/mame/machine/pgmprot6.c +++ b/src/mame/machine/pgmprot6.c @@ -213,7 +213,7 @@ DRIVER_INIT( olds ) state->save_item(NAME(state->m_olds_cmd3)); } -static ADDRESS_MAP_START( olds_mem, AS_PROGRAM, 16) +static ADDRESS_MAP_START( olds_mem, AS_PROGRAM, 16, pgm_028_025_state ) AM_IMPORT_FROM(pgm_mem) AM_RANGE(0x100000, 0x3fffff) AM_ROMBANK("bank1") /* Game ROM */ AM_RANGE(0x400000, 0x403fff) AM_RAM AM_BASE_MEMBER(pgm_028_025_state, m_sharedprotram) // Shared with protection device diff --git a/src/mame/machine/segamsys.c b/src/mame/machine/segamsys.c index 3f2163a76ad..a19616d679e 100644 --- a/src/mame/machine/segamsys.c +++ b/src/mame/machine/segamsys.c @@ -30,14 +30,14 @@ static struct sms_vdp *md_sms_vdp; #define SMS_VDP_VRAM(address) chip->vram[(address)&0x3fff] #ifdef UNUSED_FUNCTION -static ADDRESS_MAP_START( sms_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( sms_map, AS_PROGRAM, 8, driver_device ) // AM_RANGE(0x0000 , 0xbfff) AM_ROM // AM_RANGE(0xc000 , 0xdfff) AM_RAM AM_MIRROR(0x2000) ADDRESS_MAP_END #endif -ADDRESS_MAP_START( sms_io_map, AS_IO, 8 ) +ADDRESS_MAP_START( sms_io_map, AS_IO, 8, driver_device ) ADDRESS_MAP_GLOBAL_MASK(0xff) ADDRESS_MAP_END diff --git a/src/mame/video/bfm_adr2.c b/src/mame/video/bfm_adr2.c index 0c103eb23a1..f7a28f9301e 100644 --- a/src/mame/video/bfm_adr2.c +++ b/src/mame/video/bfm_adr2.c @@ -494,7 +494,7 @@ void adder2_decode_char_roms(running_machine &machine) // adder2 board memorymap ///////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////// -ADDRESS_MAP_START( adder2_memmap, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( adder2_memmap, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x0000) AM_WRITE(adder2_screen_page_w) // screen access/display select AM_RANGE(0x0000, 0x7FFF) AM_ROMBANK("bank2") // 8k paged ROM (4 pages) diff --git a/src/mame/video/bfm_dm01.c b/src/mame/video/bfm_dm01.c index f3bf44b2dbf..c9d5b1479b3 100644 --- a/src/mame/video/bfm_dm01.c +++ b/src/mame/video/bfm_dm01.c @@ -214,7 +214,7 @@ static WRITE8_HANDLER( unknown_w ) /////////////////////////////////////////////////////////////////////////// -ADDRESS_MAP_START( bfm_dm01_memmap, AS_PROGRAM, 8 ) +ADDRESS_MAP_START( bfm_dm01_memmap, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x1fff) AM_RAM // 8k RAM AM_RANGE(0x2000, 0x2000) AM_READWRITE(control_r, control_w) // control reg AM_RANGE(0x2800, 0x2800) AM_READWRITE(mux_r,mux_w) // mux diff --git a/src/mame/video/cidelsa.c b/src/mame/video/cidelsa.c index db1bae8acd1..2f8ee14c274 100644 --- a/src/mame/video/cidelsa.c +++ b/src/mame/video/cidelsa.c @@ -113,12 +113,12 @@ WRITE_LINE_MEMBER( cidelsa_state::prd_w ) /* Page RAM */ -static ADDRESS_MAP_START( cidelsa_page_ram, AS_0, 8 ) +static ADDRESS_MAP_START( cidelsa_page_ram, AS_0, 8, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000, 0x3ff) AM_RAM ADDRESS_MAP_END -static ADDRESS_MAP_START( draco_page_ram, AS_0, 8 ) +static ADDRESS_MAP_START( draco_page_ram, AS_0, 8, driver_device ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x000, 0x7ff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/video/gp9001.c b/src/mame/video/gp9001.c index 55e07888bf3..be47c17ddf0 100644 --- a/src/mame/video/gp9001.c +++ b/src/mame/video/gp9001.c @@ -199,7 +199,7 @@ static WRITE16_DEVICE_HANDLER( gp9001_spram_w ) COMBINE_DATA(&vdp->sp.vram16[offset]); } -static ADDRESS_MAP_START( gp9001vdp_map, AS_0, 16 ) +static ADDRESS_MAP_START( gp9001vdp_map, AS_0, 16, gp9001vdp_device ) AM_RANGE(0x0000, 0x0fff) AM_DEVREADWRITE(DEVICE_SELF, gp9001_bg_tmap_r, gp9001_bg_tmap_w) AM_RANGE(0x1000, 0x1fff) AM_DEVREADWRITE(DEVICE_SELF, gp9001_fg_tmap_r, gp9001_fg_tmap_w) AM_RANGE(0x2000, 0x2fff) AM_DEVREADWRITE(DEVICE_SELF, gp9001_top_tmap_r, gp9001_top_tmap_w) diff --git a/src/mame/video/qix.c b/src/mame/video/qix.c index b4d21328afd..02b922a4255 100644 --- a/src/mame/video/qix.c +++ b/src/mame/video/qix.c @@ -344,7 +344,7 @@ static MC6845_UPDATE_ROW( update_row ) * *************************************/ -static ADDRESS_MAP_START( qix_video_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( qix_video_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x7fff) AM_READWRITE(qix_videoram_r, qix_videoram_w) AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("nvram") @@ -361,7 +361,7 @@ static ADDRESS_MAP_START( qix_video_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( zookeep_video_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( zookeep_video_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x7fff) AM_READWRITE(qix_videoram_r, qix_videoram_w) AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("nvram") @@ -380,7 +380,7 @@ static ADDRESS_MAP_START( zookeep_video_map, AS_PROGRAM, 8 ) ADDRESS_MAP_END -static ADDRESS_MAP_START( slither_video_map, AS_PROGRAM, 8 ) +static ADDRESS_MAP_START( slither_video_map, AS_PROGRAM, 8, driver_device ) AM_RANGE(0x0000, 0x7fff) AM_READWRITE(qix_videoram_r, slither_videoram_w) AM_RANGE(0x8000, 0x83ff) AM_RAM AM_SHARE("share1") AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("nvram") |