summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/namconb1.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/namconb1.cpp')
-rw-r--r--src/mame/drivers/namconb1.cpp118
1 files changed, 61 insertions, 57 deletions
diff --git a/src/mame/drivers/namconb1.cpp b/src/mame/drivers/namconb1.cpp
index 007a3597606..a82b42f2f2f 100644
--- a/src/mame/drivers/namconb1.cpp
+++ b/src/mame/drivers/namconb1.cpp
@@ -690,46 +690,48 @@ WRITE32_MEMBER(namconb1_state::share_w)
COMBINE_DATA(m_namconb_shareram+offset*2);
}
-ADDRESS_MAP_START(namconb1_state::namconb1_am)
- AM_RANGE(0x000000, 0x0fffff) AM_ROM
- AM_RANGE(0x100000, 0x10001f) AM_READ(gunbulet_gun_r)
- AM_RANGE(0x1c0000, 0x1cffff) AM_RAM
- AM_RANGE(0x1e4000, 0x1e4003) AM_READWRITE(randgen_r,srand_w)
- AM_RANGE(0x200000, 0x207fff) AM_READWRITE(share_r, share_w)
- AM_RANGE(0x208000, 0x2fffff) AM_RAM
- AM_RANGE(0x400000, 0x40001f) AM_READWRITE8(namconb1_cpureg_r, namconb1_cpureg_w, 0xffffffff)
- AM_RANGE(0x580000, 0x5807ff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0xffffffff)
- AM_RANGE(0x600000, 0x61ffff) AM_READWRITE16(c355_obj_ram_r,c355_obj_ram_w,0xffffffff) AM_SHARE("objram")
- AM_RANGE(0x620000, 0x620007) AM_READWRITE16(c355_obj_position_r,c355_obj_position_w,0xffffffff)
- AM_RANGE(0x640000, 0x64ffff) AM_READWRITE16(c123_tilemap_videoram_r,c123_tilemap_videoram_w,0xffffffff)
- AM_RANGE(0x660000, 0x66003f) AM_READWRITE16(c123_tilemap_control_r,c123_tilemap_control_w,0xffffffff)
- AM_RANGE(0x680000, 0x68000f) AM_RAM AM_SHARE("spritebank32")
- AM_RANGE(0x6e0000, 0x6e001f) AM_READ(custom_key_r) AM_WRITENOP
- AM_RANGE(0x700000, 0x707fff) AM_DEVREADWRITE8("c116", namco_c116_device, read, write, 0xffffffff)
-ADDRESS_MAP_END
-
-ADDRESS_MAP_START(namconb1_state::namconb2_am)
- AM_RANGE(0x000000, 0x0fffff) AM_ROM
- AM_RANGE(0x1c0000, 0x1cffff) AM_RAM
- AM_RANGE(0x1e4000, 0x1e4003) AM_READWRITE(randgen_r,srand_w)
- AM_RANGE(0x200000, 0x207fff) AM_READWRITE(share_r, share_w)
- AM_RANGE(0x208000, 0x2fffff) AM_RAM
- AM_RANGE(0x400000, 0x4fffff) AM_ROM AM_REGION("data", 0)
- AM_RANGE(0x600000, 0x61ffff) AM_READWRITE16(c355_obj_ram_r,c355_obj_ram_w,0xffffffff) AM_SHARE("objram")
- AM_RANGE(0x620000, 0x620007) AM_READWRITE16(c355_obj_position_r,c355_obj_position_w,0xffffffff)
- AM_RANGE(0x640000, 0x64000f) AM_RAM /* unknown xy offset */
- AM_RANGE(0x680000, 0x68ffff) AM_READWRITE16(c123_tilemap_videoram_r,c123_tilemap_videoram_w,0xffffffff)
- AM_RANGE(0x6c0000, 0x6c003f) AM_READWRITE16(c123_tilemap_control_r,c123_tilemap_control_w,0xffffffff)
- AM_RANGE(0x700000, 0x71ffff) AM_READWRITE16(c169_roz_videoram_r,c169_roz_videoram_w,0xffffffff) AM_SHARE("rozvideoram")
- AM_RANGE(0x740000, 0x74001f) AM_READWRITE16(c169_roz_control_r,c169_roz_control_w,0xffffffff)
- AM_RANGE(0x800000, 0x807fff) AM_DEVREADWRITE8("c116", namco_c116_device, read, write, 0xffffffff)
- AM_RANGE(0x900008, 0x90000f) AM_RAM AM_SHARE("spritebank32")
- AM_RANGE(0x940000, 0x94000f) AM_RAM AM_SHARE("tilebank32")
- AM_RANGE(0x980000, 0x98000f) AM_READWRITE16(c169_roz_bank_r,c169_roz_bank_w,0xffffffff)
- AM_RANGE(0xa00000, 0xa007ff) AM_DEVREADWRITE8("eeprom", eeprom_parallel_28xx_device, read, write, 0xffffffff)
- AM_RANGE(0xc00000, 0xc0001f) AM_READ(custom_key_r) AM_WRITENOP
- AM_RANGE(0xf00000, 0xf0001f) AM_READWRITE8(namconb2_cpureg_r, namconb2_cpureg_w, 0xffffffff)
-ADDRESS_MAP_END
+void namconb1_state::namconb1_am(address_map &map)
+{
+ map(0x000000, 0x0fffff).rom();
+ map(0x100000, 0x10001f).r(this, FUNC(namconb1_state::gunbulet_gun_r));
+ map(0x1c0000, 0x1cffff).ram();
+ map(0x1e4000, 0x1e4003).rw(this, FUNC(namconb1_state::randgen_r), FUNC(namconb1_state::srand_w));
+ map(0x200000, 0x207fff).rw(this, FUNC(namconb1_state::share_r), FUNC(namconb1_state::share_w));
+ map(0x208000, 0x2fffff).ram();
+ map(0x400000, 0x40001f).rw(this, FUNC(namconb1_state::namconb1_cpureg_r), FUNC(namconb1_state::namconb1_cpureg_w));
+ map(0x580000, 0x5807ff).rw(m_eeprom, FUNC(eeprom_parallel_28xx_device::read), FUNC(eeprom_parallel_28xx_device::write));
+ map(0x600000, 0x61ffff).rw(this, FUNC(namconb1_state::c355_obj_ram_r), FUNC(namconb1_state::c355_obj_ram_w)).share("objram");
+ map(0x620000, 0x620007).rw(this, FUNC(namconb1_state::c355_obj_position_r), FUNC(namconb1_state::c355_obj_position_w));
+ map(0x640000, 0x64ffff).rw(this, FUNC(namconb1_state::c123_tilemap_videoram_r), FUNC(namconb1_state::c123_tilemap_videoram_w));
+ map(0x660000, 0x66003f).rw(this, FUNC(namconb1_state::c123_tilemap_control_r), FUNC(namconb1_state::c123_tilemap_control_w));
+ map(0x680000, 0x68000f).ram().share("spritebank32");
+ map(0x6e0000, 0x6e001f).r(this, FUNC(namconb1_state::custom_key_r)).nopw();
+ map(0x700000, 0x707fff).rw(m_c116, FUNC(namco_c116_device::read), FUNC(namco_c116_device::write));
+}
+
+void namconb1_state::namconb2_am(address_map &map)
+{
+ map(0x000000, 0x0fffff).rom();
+ map(0x1c0000, 0x1cffff).ram();
+ map(0x1e4000, 0x1e4003).rw(this, FUNC(namconb1_state::randgen_r), FUNC(namconb1_state::srand_w));
+ map(0x200000, 0x207fff).rw(this, FUNC(namconb1_state::share_r), FUNC(namconb1_state::share_w));
+ map(0x208000, 0x2fffff).ram();
+ map(0x400000, 0x4fffff).rom().region("data", 0);
+ map(0x600000, 0x61ffff).rw(this, FUNC(namconb1_state::c355_obj_ram_r), FUNC(namconb1_state::c355_obj_ram_w)).share("objram");
+ map(0x620000, 0x620007).rw(this, FUNC(namconb1_state::c355_obj_position_r), FUNC(namconb1_state::c355_obj_position_w));
+ map(0x640000, 0x64000f).ram(); /* unknown xy offset */
+ map(0x680000, 0x68ffff).rw(this, FUNC(namconb1_state::c123_tilemap_videoram_r), FUNC(namconb1_state::c123_tilemap_videoram_w));
+ map(0x6c0000, 0x6c003f).rw(this, FUNC(namconb1_state::c123_tilemap_control_r), FUNC(namconb1_state::c123_tilemap_control_w));
+ map(0x700000, 0x71ffff).rw(this, FUNC(namconb1_state::c169_roz_videoram_r), FUNC(namconb1_state::c169_roz_videoram_w)).share("rozvideoram");
+ map(0x740000, 0x74001f).rw(this, FUNC(namconb1_state::c169_roz_control_r), FUNC(namconb1_state::c169_roz_control_w));
+ map(0x800000, 0x807fff).rw(m_c116, FUNC(namco_c116_device::read), FUNC(namco_c116_device::write));
+ map(0x900008, 0x90000f).ram().share("spritebank32");
+ map(0x940000, 0x94000f).ram().share("tilebank32");
+ map(0x980000, 0x98000f).rw(this, FUNC(namconb1_state::c169_roz_bank_r), FUNC(namconb1_state::c169_roz_bank_w));
+ map(0xa00000, 0xa007ff).rw(m_eeprom, FUNC(eeprom_parallel_28xx_device::read), FUNC(eeprom_parallel_28xx_device::write));
+ map(0xc00000, 0xc0001f).r(this, FUNC(namconb1_state::custom_key_r)).nopw();
+ map(0xf00000, 0xf0001f).rw(this, FUNC(namconb1_state::namconb2_cpureg_r), FUNC(namconb1_state::namconb2_cpureg_w));
+}
WRITE16_MEMBER(namconb1_state::mcu_shared_w)
{
@@ -752,11 +754,12 @@ WRITE16_MEMBER(namconb1_state::mcu_shared_w)
}
}
-ADDRESS_MAP_START(namconb1_state::namcoc75_am)
- AM_RANGE(0x002000, 0x002fff) AM_DEVREADWRITE("c352", c352_device, read, write)
- AM_RANGE(0x004000, 0x00bfff) AM_RAM_WRITE(mcu_shared_w) AM_SHARE("namconb_share")
- AM_RANGE(0x200000, 0x27ffff) AM_ROM AM_REGION("c75data", 0)
-ADDRESS_MAP_END
+void namconb1_state::namcoc75_am(address_map &map)
+{
+ map(0x002000, 0x002fff).rw("c352", FUNC(c352_device::read), FUNC(c352_device::write));
+ map(0x004000, 0x00bfff).ram().w(this, FUNC(namconb1_state::mcu_shared_w)).share("namconb_share");
+ map(0x200000, 0x27ffff).rom().region("c75data", 0);
+}
READ8_MEMBER(namconb1_state::port6_r)
@@ -835,18 +838,19 @@ READ8_MEMBER(namconb1_state::dac0_r)// bit 6
return (m_p3.read_safe(0xff)<<7)&0x80;
}
-ADDRESS_MAP_START(namconb1_state::namcoc75_io)
- 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)
- AM_RANGE(M37710_ADC6_L, M37710_ADC6_L) AM_READ(dac6_r)
- AM_RANGE(M37710_ADC5_L, M37710_ADC5_L) AM_READ(dac5_r)
- AM_RANGE(M37710_ADC4_L, M37710_ADC4_L) AM_READ(dac4_r)
- AM_RANGE(M37710_ADC3_L, M37710_ADC3_L) AM_READ(dac3_r)
- AM_RANGE(M37710_ADC2_L, M37710_ADC2_L) AM_READ(dac2_r)
- AM_RANGE(M37710_ADC1_L, M37710_ADC1_L) AM_READ(dac1_r)
- AM_RANGE(M37710_ADC0_L, M37710_ADC0_L) AM_READ(dac0_r)
-ADDRESS_MAP_END
+void namconb1_state::namcoc75_io(address_map &map)
+{
+ map(M37710_PORT6, M37710_PORT6).rw(this, FUNC(namconb1_state::port6_r), FUNC(namconb1_state::port6_w));
+ map(M37710_PORT7, M37710_PORT7).r(this, FUNC(namconb1_state::port7_r));
+ map(M37710_ADC7_L, M37710_ADC7_L).r(this, FUNC(namconb1_state::dac7_r));
+ map(M37710_ADC6_L, M37710_ADC6_L).r(this, FUNC(namconb1_state::dac6_r));
+ map(M37710_ADC5_L, M37710_ADC5_L).r(this, FUNC(namconb1_state::dac5_r));
+ map(M37710_ADC4_L, M37710_ADC4_L).r(this, FUNC(namconb1_state::dac4_r));
+ map(M37710_ADC3_L, M37710_ADC3_L).r(this, FUNC(namconb1_state::dac3_r));
+ map(M37710_ADC2_L, M37710_ADC2_L).r(this, FUNC(namconb1_state::dac2_r));
+ map(M37710_ADC1_L, M37710_ADC1_L).r(this, FUNC(namconb1_state::dac1_r));
+ map(M37710_ADC0_L, M37710_ADC0_L).r(this, FUNC(namconb1_state::dac0_r));
+}
/****************************************************************************/