diff options
author | 2012-04-15 22:44:14 +0000 | |
---|---|---|
committer | 2012-04-15 22:44:14 +0000 | |
commit | 6efb52a7b349cf9b5efc2d562884b158822aa980 (patch) | |
tree | 15c313291b03281f303169df662b3173c2842051 | |
parent | 1dd1388ed81317596a353e70aebf9014ea8517d3 (diff) |
Several more driver regression fixes.
Seek & destroy on duplicate AM_SHAREs.
44 files changed, 281 insertions, 264 deletions
diff --git a/src/mame/drivers/atarisy2.c b/src/mame/drivers/atarisy2.c index 8371010d464..0dfa438ab8f 100644 --- a/src/mame/drivers/atarisy2.c +++ b/src/mame/drivers/atarisy2.c @@ -214,7 +214,7 @@ DIRECT_UPDATE_HANDLER( atarisy2_direct_handler ) if (address >= 0x8000 && address < 0x8200) { atarisy2_state *state = machine.driver_data<atarisy2_state>(); - direct.explicit_configure(0x8000, 0x81ff, 0x1ff, (UINT8 *)state->m_slapstic_base); + direct.explicit_configure(0x8000, 0x81ff, 0x1ff, reinterpret_cast<UINT8 *>(state->m_slapstic_base.target())); return ~0; } return address; diff --git a/src/mame/drivers/battlane.c b/src/mame/drivers/battlane.c index 60987c1f748..5480dbd50b5 100644 --- a/src/mame/drivers/battlane.c +++ b/src/mame/drivers/battlane.c @@ -99,8 +99,8 @@ static INTERRUPT_GEN( battlane_cpu1_interrupt ) 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_SHARE("tileram") - AM_RANGE(0x1800, 0x18ff) AM_RAM_WRITE(battlane_spriteram_w) AM_SHARE("share3") AM_SHARE("spriteram") + AM_RANGE(0x1000, 0x17ff) AM_RAM_WRITE(battlane_tileram_w) AM_SHARE("tileram") + AM_RANGE(0x1800, 0x18ff) AM_RAM_WRITE(battlane_spriteram_w) AM_SHARE("spriteram") AM_RANGE(0x1c00, 0x1c00) AM_READ_PORT("P1") AM_WRITE(battlane_video_ctrl_w) AM_RANGE(0x1c01, 0x1c01) AM_READ_PORT("P2") AM_WRITE(battlane_scrollx_w) AM_RANGE(0x1c02, 0x1c02) AM_READ_PORT("DSW1") AM_WRITE(battlane_scrolly_w) diff --git a/src/mame/drivers/cyberbal.c b/src/mame/drivers/cyberbal.c index c8815795a54..63c70cb066d 100644 --- a/src/mame/drivers/cyberbal.c +++ b/src/mame/drivers/cyberbal.c @@ -156,14 +156,14 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, cyberbal_state ) AM_RANGE(0xfd8000, 0xfd9fff) AM_WRITE_LEGACY(atarigen_sound_upper_w) AM_RANGE(0xfe0000, 0xfe0fff) AM_READ(special_port0_r) AM_RANGE(0xfe1000, 0xfe1fff) AM_READ_PORT("IN1") - AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_1_w) AM_SHARE("share1") AM_SHARE("paletteram_1") - AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_0_w) AM_SHARE("share2") AM_SHARE("paletteram_0") - AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE_LEGACY(atarigen_playfield2_w) AM_SHARE("share3") AM_SHARE("playfield2") - AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE_LEGACY(atarigen_alpha2_w) AM_SHARE("share4") AM_SHARE("alpha2") + AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_1_w) AM_SHARE("paletteram_1") + AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_0_w) AM_SHARE("paletteram_0") + AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE_LEGACY(atarigen_playfield2_w) AM_SHARE("playfield2") + AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE_LEGACY(atarigen_alpha2_w) AM_SHARE("alpha2") AM_RANGE(0xff3000, 0xff37ff) AM_READWRITE_LEGACY(atarimo_1_spriteram_r, atarimo_1_spriteram_w) AM_RANGE(0xff3800, 0xff3fff) AM_RAM AM_SHARE("share6") - AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE_LEGACY(atarigen_playfield_w) AM_SHARE("share7") AM_SHARE("playfield") - AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE_LEGACY(atarigen_alpha_w) AM_SHARE("share8") AM_SHARE("alpha") + AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE_LEGACY(atarigen_playfield_w) AM_SHARE("playfield") + AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE_LEGACY(atarigen_alpha_w) AM_SHARE("alpha") AM_RANGE(0xff7000, 0xff77ff) AM_READWRITE_LEGACY(atarimo_0_spriteram_r, atarimo_0_spriteram_w) AM_RANGE(0xff7800, 0xff9fff) AM_RAM AM_SHARE("share10") AM_RANGE(0xffa000, 0xffbfff) AM_READONLY AM_WRITENOP AM_SHARE("share11") @@ -183,14 +183,14 @@ static ADDRESS_MAP_START( extra_map, AS_PROGRAM, 16, cyberbal_state ) AM_RANGE(0xfc0000, 0xfdffff) AM_WRITE_LEGACY(atarigen_video_int_ack_w) AM_RANGE(0xfe0000, 0xfe0fff) AM_READ(special_port0_r) AM_RANGE(0xfe1000, 0xfe1fff) AM_READ_PORT("IN1") - AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_1_w) AM_SHARE("share1") - AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_0_w) AM_SHARE("share2") - AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE_LEGACY(atarigen_playfield2_w) AM_SHARE("share3") - AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE_LEGACY(atarigen_alpha2_w) AM_SHARE("share4") + AM_RANGE(0xfe8000, 0xfe8fff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_1_w) AM_SHARE("paletteram_1") + AM_RANGE(0xfec000, 0xfecfff) AM_RAM_WRITE_LEGACY(cyberbal_paletteram_0_w) AM_SHARE("paletteram_0") + AM_RANGE(0xff0000, 0xff1fff) AM_RAM_WRITE_LEGACY(atarigen_playfield2_w) AM_SHARE("playfield2") + AM_RANGE(0xff2000, 0xff2fff) AM_RAM_WRITE_LEGACY(atarigen_alpha2_w) AM_SHARE("alpha2") AM_RANGE(0xff3000, 0xff37ff) AM_READWRITE_LEGACY(atarimo_1_spriteram_r, atarimo_1_spriteram_w) AM_RANGE(0xff3800, 0xff3fff) AM_RAM AM_SHARE("share6") - AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE_LEGACY(atarigen_playfield_w) AM_SHARE("share7") - AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE_LEGACY(atarigen_alpha_w) AM_SHARE("share8") + AM_RANGE(0xff4000, 0xff5fff) AM_RAM_WRITE_LEGACY(atarigen_playfield_w) AM_SHARE("playfield") + AM_RANGE(0xff6000, 0xff6fff) AM_RAM_WRITE_LEGACY(atarigen_alpha_w) AM_SHARE("alpha") AM_RANGE(0xff7000, 0xff77ff) AM_READWRITE_LEGACY(atarimo_0_spriteram_r, atarimo_0_spriteram_w) AM_RANGE(0xff7800, 0xff9fff) AM_RAM AM_SHARE("share10") AM_RANGE(0xffa000, 0xffbfff) AM_RAM AM_SHARE("share11") diff --git a/src/mame/drivers/darius.c b/src/mame/drivers/darius.c index c21b66ac2af..5b3a5b58c60 100644 --- a/src/mame/drivers/darius.c +++ b/src/mame/drivers/darius.c @@ -250,9 +250,9 @@ static ADDRESS_MAP_START( darius_map, AS_PROGRAM, 16, darius_state ) AM_RANGE(0xd40000, 0xd40003) AM_DEVWRITE_LEGACY("pc080sn", pc080sn_xscroll_word_w) AM_RANGE(0xd50000, 0xd50003) AM_DEVWRITE_LEGACY("pc080sn", pc080sn_ctrl_word_w) AM_RANGE(0xd80000, 0xd80fff) AM_RAM_WRITE(paletteram_xBBBBBGGGGGRRRRR_word_w) AM_SHARE("paletteram")/* palette */ - AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE("share1") AM_SHARE("spriteram") + AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xe01000, 0xe02fff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE("share3") AM_SHARE("fg_ram") + AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE("fg_ram") AM_RANGE(0xe10000, 0xe10fff) AM_RAM /* ??? */ ADDRESS_MAP_END @@ -261,9 +261,9 @@ static ADDRESS_MAP_START( darius_cpub_map, AS_PROGRAM, 16, darius_state ) AM_RANGE(0x040000, 0x04ffff) AM_RAM /* local RAM */ AM_RANGE(0xc00000, 0xc0007f) AM_WRITE(darius_ioc_w) /* only writes $c00050 (?) */ AM_RANGE(0xd80000, 0xd80fff) AM_WRITE(paletteram_xBBBBBGGGGGRRRRR_word_w) - AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE("share1") + AM_RANGE(0xe00100, 0xe00fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xe01000, 0xe02fff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE("share3") + AM_RANGE(0xe08000, 0xe0ffff) AM_RAM_WRITE(darius_fg_layer_w) AM_SHARE("fg_ram") ADDRESS_MAP_END diff --git a/src/mame/drivers/eprom.c b/src/mame/drivers/eprom.c index e47c9ff2ade..9d409424318 100644 --- a/src/mame/drivers/eprom.c +++ b/src/mame/drivers/eprom.c @@ -158,7 +158,7 @@ WRITE16_MEMBER(eprom_state::sync_w) static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, eprom_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE_LEGACY(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") - AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("share2") + AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("sync_data") AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE_LEGACY(atarigen_eeprom_enable_w) AM_RANGE(0x260000, 0x26000f) AM_READ_PORT("260000") @@ -183,7 +183,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( guts_map, AS_PROGRAM, 16, eprom_state ) AM_RANGE(0x000000, 0x09ffff) AM_ROM AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE_LEGACY(atarigen_eeprom_r, atarigen_eeprom_w) AM_SHARE("eeprom") - AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("share2") + AM_RANGE(0x16cc00, 0x16cc01) AM_RAM AM_SHARE("sync_data") AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1") AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE_LEGACY(atarigen_eeprom_enable_w) AM_RANGE(0x260000, 0x26000f) AM_READ_PORT("260000") @@ -215,7 +215,7 @@ ADDRESS_MAP_END 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_SHARE("sync_data") + AM_RANGE(0x16cc00, 0x16cc01) AM_READWRITE(sync_r, sync_w) AM_SHARE("sync_data") AM_RANGE(0x160000, 0x16ffff) AM_RAM AM_SHARE("share1") AM_RANGE(0x260000, 0x26000f) AM_READ_PORT("260000") AM_RANGE(0x260010, 0x26001f) AM_READ(special_port1_r) diff --git a/src/mame/drivers/flower.c b/src/mame/drivers/flower.c index 47cd9f4ca86..864c051a735 100644 --- a/src/mame/drivers/flower.c +++ b/src/mame/drivers/flower.c @@ -121,14 +121,14 @@ static ADDRESS_MAP_START( flower_cpu1_2, AS_PROGRAM, 8, flower_state ) AM_RANGE(0xa102, 0xa102) AM_READ_PORT("IN0CPU0") AM_RANGE(0xa103, 0xa103) AM_READ_PORT("IN1CPU0") AM_RANGE(0xa400, 0xa400) AM_WRITE(sound_command_w) - AM_RANGE(0xc000, 0xddff) AM_SHARE("share1") AM_RAM - AM_RANGE(0xde00, 0xdfff) AM_SHARE("share2") AM_RAM AM_SHARE("spriteram") - AM_RANGE(0xe000, 0xe7ff) AM_SHARE("share3") AM_RAM_WRITE(flower_textram_w) AM_SHARE("textram") - AM_RANGE(0xe000, 0xefff) AM_SHARE("share4") AM_RAM // only cleared? - AM_RANGE(0xf000, 0xf1ff) AM_SHARE("share5") AM_RAM_WRITE(flower_bg0ram_w) AM_SHARE("bg0ram") - AM_RANGE(0xf200, 0xf200) AM_SHARE("share6") AM_RAM AM_SHARE("bg0_scroll") - AM_RANGE(0xf800, 0xf9ff) AM_SHARE("share7") AM_RAM_WRITE(flower_bg1ram_w) AM_SHARE("bg1ram") - AM_RANGE(0xfa00, 0xfa00) AM_SHARE("share8") AM_RAM AM_SHARE("bg1_scroll") + AM_RANGE(0xc000, 0xddff) AM_RAM + AM_RANGE(0xde00, 0xdfff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(flower_textram_w) AM_SHARE("textram") + AM_RANGE(0xe000, 0xefff) AM_RAM // only cleared? + AM_RANGE(0xf000, 0xf1ff) AM_RAM_WRITE(flower_bg0ram_w) AM_SHARE("bg0ram") + AM_RANGE(0xf200, 0xf200) AM_RAM AM_SHARE("bg0_scroll") + AM_RANGE(0xf800, 0xf9ff) AM_RAM_WRITE(flower_bg1ram_w) AM_SHARE("bg1ram") + AM_RANGE(0xfa00, 0xfa00) AM_RAM AM_SHARE("bg1_scroll") ADDRESS_MAP_END static ADDRESS_MAP_START( flower_sound_cpu, AS_PROGRAM, 8, flower_state ) diff --git a/src/mame/drivers/galaga.c b/src/mame/drivers/galaga.c index 1766c5c9f66..28518e58388 100644 --- a/src/mame/drivers/galaga.c +++ b/src/mame/drivers/galaga.c @@ -926,16 +926,16 @@ static ADDRESS_MAP_START( bosco_map, AS_PROGRAM, 8, bosco_state ) AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE_LEGACY("06xx_0", namco_06xx_data_r, namco_06xx_data_w) AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE_LEGACY("06xx_0", namco_06xx_ctrl_r, namco_06xx_ctrl_w) AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1") - AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE_LEGACY(bosco_videoram_w) AM_SHARE("videoram") AM_SHARE("bvr") /* + sprite registers */ + AM_RANGE(0x8000, 0x8fff) AM_RAM_WRITE_LEGACY(bosco_videoram_w) AM_SHARE("videoram")/* + sprite registers */ AM_RANGE(0x9000, 0x90ff) AM_DEVREADWRITE_LEGACY("06xx_1", namco_06xx_data_r, namco_06xx_data_w) AM_RANGE(0x9100, 0x9100) AM_DEVREADWRITE_LEGACY("06xx_1", namco_06xx_ctrl_r, namco_06xx_ctrl_w) - AM_RANGE(0x9800, 0x980f) AM_WRITEONLY AM_SHARE("share2") AM_SHARE("bosco_radarattr") + AM_RANGE(0x9800, 0x980f) AM_WRITEONLY AM_SHARE("bosco_radarattr") AM_RANGE(0x9810, 0x9810) AM_WRITE_LEGACY(bosco_scrollx_w) AM_RANGE(0x9820, 0x9820) AM_WRITE_LEGACY(bosco_scrolly_w) - AM_RANGE(0x9830, 0x9830) AM_WRITEONLY AM_SHARE("bosco_starcontrol") AM_SHARE("bsc") + AM_RANGE(0x9830, 0x9830) AM_WRITEONLY AM_SHARE("bosco_starcontrol") AM_RANGE(0x9840, 0x9840) AM_WRITE_LEGACY(bosco_starclr_w) AM_RANGE(0x9870, 0x9870) AM_WRITE(bosco_flip_screen_w) - AM_RANGE(0x9874, 0x9875) AM_WRITEONLY AM_SHARE("bosco_starblink") AM_SHARE("bsb") + AM_RANGE(0x9874, 0x9875) AM_WRITEONLY AM_SHARE("bosco_starblink") ADDRESS_MAP_END @@ -947,11 +947,11 @@ static ADDRESS_MAP_START( galaga_map, AS_PROGRAM, 8, galaga_state ) AM_RANGE(0x6830, 0x6830) AM_WRITE(watchdog_reset_w) AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE_LEGACY("06xx", namco_06xx_data_r, namco_06xx_data_w) AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE_LEGACY("06xx", namco_06xx_ctrl_r, namco_06xx_ctrl_w) - AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(galaga_videoram_w) AM_SHARE("videoram") AM_SHARE("gvr") - AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE("share1") AM_SHARE("galaga_ram1") - AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("share2") AM_SHARE("galaga_ram2") - AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE("share3") AM_SHARE("galaga_ram3") - AM_RANGE(0xa000, 0xa005) AM_WRITEONLY AM_SHARE("galaga_starcontrol") AM_SHARE("gsc") + AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(galaga_videoram_w) AM_SHARE("videoram") + AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE("galaga_ram1") + AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("galaga_ram2") + AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE("galaga_ram3") + AM_RANGE(0xa000, 0xa005) AM_WRITEONLY AM_SHARE("galaga_starcontrol") AM_RANGE(0xa007, 0xa007) AM_WRITE(galaga_flip_screen_w) ADDRESS_MAP_END @@ -965,13 +965,13 @@ static ADDRESS_MAP_START( xevious_map, AS_PROGRAM, 8, xevious_state ) AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE_LEGACY("06xx", namco_06xx_data_r, namco_06xx_data_w) AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE_LEGACY("06xx", namco_06xx_ctrl_r, namco_06xx_ctrl_w) AM_RANGE(0x7800, 0x7fff) AM_RAM AM_SHARE("share1") /* work RAM */ - AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("share2") AM_SHARE("xevious_sr1") /* work RAM + sprite registers */ - AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("share3") AM_SHARE("xevious_sr2") /* work RAM + sprite registers */ - AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share4") AM_SHARE("xevious_sr3") /* work RAM + sprite registers */ - AM_RANGE(0xb000, 0xb7ff) AM_RAM_WRITE_LEGACY(xevious_fg_colorram_w) AM_SHARE("xevious_fg_colorram") AM_SHARE("fgc") - AM_RANGE(0xb800, 0xbfff) AM_RAM_WRITE_LEGACY(xevious_bg_colorram_w) AM_SHARE("xevious_bg_colorram") AM_SHARE("bgc") - AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE_LEGACY(xevious_fg_videoram_w) AM_SHARE("xevious_fg_videoram") AM_SHARE("fgv") - AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE_LEGACY(xevious_bg_videoram_w) AM_SHARE("xevious_bg_videoram") AM_SHARE("bgv") + AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("xevious_sr1") /* work RAM + sprite registers */ + AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("xevious_sr2") /* work RAM + sprite registers */ + AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("xevious_sr3") /* work RAM + sprite registers */ + AM_RANGE(0xb000, 0xb7ff) AM_RAM_WRITE_LEGACY(xevious_fg_colorram_w) AM_SHARE("xevious_fg_colorram") + AM_RANGE(0xb800, 0xbfff) AM_RAM_WRITE_LEGACY(xevious_bg_colorram_w) AM_SHARE("xevious_bg_colorram") + AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE_LEGACY(xevious_fg_videoram_w) AM_SHARE("xevious_fg_videoram") + AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE_LEGACY(xevious_bg_videoram_w) AM_SHARE("xevious_bg_videoram") AM_RANGE(0xd000, 0xd07f) AM_WRITE_LEGACY(xevious_vh_latch_w) AM_RANGE(0xf000, 0xffff) AM_READWRITE_LEGACY(xevious_bb_r, xevious_bs_w) ADDRESS_MAP_END @@ -984,10 +984,10 @@ static ADDRESS_MAP_START( digdug_map, AS_PROGRAM, 8, digdug_state ) AM_RANGE(0x6830, 0x6830) AM_WRITE(watchdog_reset_w) AM_RANGE(0x7000, 0x70ff) AM_DEVREADWRITE_LEGACY("06xx", namco_06xx_data_r, namco_06xx_data_w) AM_RANGE(0x7100, 0x7100) AM_DEVREADWRITE_LEGACY("06xx", namco_06xx_ctrl_r, namco_06xx_ctrl_w) - AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE_LEGACY(digdug_videoram_w) AM_SHARE("videoram") AM_SHARE("dvr")/* tilemap RAM (bottom half of RAM 0 */ + AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE_LEGACY(digdug_videoram_w) AM_SHARE("videoram") /* tilemap RAM (bottom half of RAM 0 */ AM_RANGE(0x8400, 0x87ff) AM_RAM AM_SHARE("share1") /* work RAM (top half for RAM 0 */ - AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE("share2") AM_SHARE("digdug_objram") /* work RAM + sprite registers */ - AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("share3") AM_SHARE("digdug_posram") /* work RAM + sprite registers */ + AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE("digdug_objram") /* work RAM + sprite registers */ + AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("digdug_posram") /* work RAM + sprite registers */ AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE("share4") AM_SHARE("digdug_flpram") /* work RAM + sprite registers */ AM_RANGE(0xa000, 0xa007) AM_READNOP AM_WRITE_LEGACY(digdug_PORT_w) /* video latches (spurious reads when setting latch bits) */ AM_RANGE(0xb800, 0xb83f) AM_DEVREADWRITE("earom", atari_vg_earom_device, read, write) /* non volatile memory data */ diff --git a/src/mame/drivers/gradius3.c b/src/mame/drivers/gradius3.c index 65dd7d6d50d..d9b7e485e76 100644 --- a/src/mame/drivers/gradius3.c +++ b/src/mame/drivers/gradius3.c @@ -171,7 +171,7 @@ static ADDRESS_MAP_START( gradius3_map, AS_PROGRAM, 16, gradius3_state ) AM_RANGE(0x0f0000, 0x0f0001) AM_WRITE(sound_irq_w) AM_RANGE(0x100000, 0x103fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x14c000, 0x153fff) AM_READWRITE(k052109_halfword_r, k052109_halfword_w) - AM_RANGE(0x180000, 0x19ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_SHARE("gfxram") AM_SHARE("share2") + AM_RANGE(0x180000, 0x19ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_SHARE("gfxram") ADDRESS_MAP_END @@ -181,7 +181,7 @@ static ADDRESS_MAP_START( gradius3_map2, AS_PROGRAM, 16, gradius3_state ) AM_RANGE(0x140000, 0x140001) AM_WRITE(cpuB_irqenable_w) AM_RANGE(0x200000, 0x203fff) AM_RAM AM_SHARE("share1") AM_RANGE(0x24c000, 0x253fff) AM_READWRITE(k052109_halfword_r, k052109_halfword_w) - AM_RANGE(0x280000, 0x29ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_SHARE("share2") + AM_RANGE(0x280000, 0x29ffff) AM_RAM_WRITE(gradius3_gfxram_w) AM_SHARE("gfxram") AM_RANGE(0x2c0000, 0x2c000f) AM_READWRITE(k051937_halfword_r, k051937_halfword_w) AM_RANGE(0x2c0800, 0x2c0fff) AM_READWRITE(k051960_halfword_r, k051960_halfword_w) AM_RANGE(0x400000, 0x5fffff) AM_READ(gradius3_gfxrom_r) /* gfx ROMs are mapped here, and copied to RAM */ diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c index 7ecd44e2894..5b543f0e762 100644 --- a/src/mame/drivers/harddriv.c +++ b/src/mame/drivers/harddriv.c @@ -438,10 +438,10 @@ ADDRESS_MAP_END 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_SHARE("msp_ram") - AM_RANGE(0x00700000, 0x007fffff) AM_RAM AM_SHARE("share1") + AM_RANGE(0x00000000, 0x000fffff) AM_RAM AM_SHARE("msp_ram") + AM_RANGE(0x00700000, 0x007fffff) AM_RAM AM_SHARE("msp_ram") AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE_LEGACY(tms34010_io_register_r, tms34010_io_register_w) - AM_RANGE(0xfff00000, 0xffffffff) AM_RAM AM_SHARE("share1") + AM_RANGE(0xfff00000, 0xffffffff) AM_RAM AM_SHARE("msp_ram") ADDRESS_MAP_END diff --git a/src/mame/drivers/hyprduel.c b/src/mame/drivers/hyprduel.c index 29da8d5e472..7fe869263a4 100644 --- a/src/mame/drivers/hyprduel.c +++ b/src/mame/drivers/hyprduel.c @@ -446,14 +446,14 @@ static ADDRESS_MAP_START( hyprduel_map, AS_PROGRAM, 16, hyprduel_state ) ADDRESS_MAP_END 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(0x000000, 0x003fff) AM_RAM AM_SHARE("sharedram1") /* shadow ($c00000 - $c03fff : vector) */ + AM_RANGE(0x004000, 0x007fff) AM_READONLY AM_WRITENOP AM_SHARE("sharedram3") /* shadow ($fe4000 - $fe7fff : read only) */ AM_RANGE(0x400000, 0x400003) AM_DEVREADWRITE8_LEGACY("ymsnd", ym2151_r, ym2151_w, 0x00ff ) AM_RANGE(0x400004, 0x400005) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff) AM_RANGE(0x800000, 0x800001) AM_NOP - AM_RANGE(0xc00000, 0xc07fff) AM_RAM AM_SHARE("share1") + AM_RANGE(0xc00000, 0xc07fff) AM_RAM AM_SHARE("sharedram1") AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3") + AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("sharedram3") ADDRESS_MAP_END @@ -482,13 +482,13 @@ static ADDRESS_MAP_START( magerror_map, AS_PROGRAM, 16, hyprduel_state ) AM_RANGE(0x8788aa, 0x8788ab) AM_RAM AM_SHARE("rombank") /* Rom Bank */ AM_RANGE(0x8788ac, 0x8788ad) AM_RAM AM_SHARE("screenctrl") /* Screen Control */ AM_RANGE(0x879700, 0x879713) AM_RAM AM_SHARE("videoregs") /* Video Registers */ - AM_RANGE(0xc00000, 0xc1ffff) AM_RAM AM_SHARE("share1") AM_SHARE("sharedram1") + AM_RANGE(0xc00000, 0xc1ffff) AM_RAM AM_SHARE("sharedram1") AM_RANGE(0xe00000, 0xe00001) AM_READ_PORT("SERVICE") AM_WRITENOP AM_RANGE(0xe00002, 0xe00003) AM_READ_PORT("DSW") AM_RANGE(0xe00004, 0xe00005) AM_READ_PORT("P1_P2") AM_RANGE(0xe00006, 0xe00007) AM_READ_PORT("SYSTEM") AM_RANGE(0xfe0000, 0xfe3fff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("share3") AM_SHARE("sharedram3") + AM_RANGE(0xfe4000, 0xffffff) AM_RAM AM_SHARE("sharedram3") ADDRESS_MAP_END static ADDRESS_MAP_START( magerror_map2, AS_PROGRAM, 16, hyprduel_state ) diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c index cd82398a7c8..0903f0f7a48 100644 --- a/src/mame/drivers/itech32.c +++ b/src/mame/drivers/itech32.c @@ -899,7 +899,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, itech32_state ) - AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("main_ram") AM_SHARE("nvram") + AM_RANGE(0x000000, 0x003fff) AM_RAM AM_SHARE("nvram") AM_RANGE(0x040000, 0x040001) AM_READ_PORT("P1") AM_RANGE(0x048000, 0x048001) AM_READ_PORT("P2") AM_RANGE(0x050000, 0x050001) AM_READ_PORT("SYSTEM") AM_WRITE(timekill_intensity_w) @@ -917,7 +917,7 @@ ADDRESS_MAP_END /*------ BloodStorm and later games memory layout ------*/ static ADDRESS_MAP_START( bloodstm_map, AS_PROGRAM, 16, itech32_state ) - AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_SHARE("main_ram") AM_SHARE("nvram") + AM_RANGE(0x000000, 0x00ffff) AM_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") AM_RANGE(0x180000, 0x180001) AM_READ_PORT("P3") @@ -981,7 +981,7 @@ static ADDRESS_MAP_START( drivedge_map, AS_PROGRAM, 32, itech32_state ) 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) #endif - AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x40000) AM_RAM AM_SHARE("main_ram") AM_SHARE("nvram") + AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x40000) AM_RAM AM_SHARE("nvram") AM_RANGE(0x080000, 0x080003) AM_READ_PORT("80000") AM_RANGE(0x082000, 0x082003) AM_READ_PORT("82000") AM_RANGE(0x084000, 0x084003) AM_READWRITE(sound_data32_r, sound_data32_w) @@ -998,20 +998,20 @@ AM_RANGE(0x000c00, 0x007fff) AM_MIRROR(0x40000) AM_READWRITE(test2_r, test2_w) AM_RANGE(0x1e4000, 0x1e4003) AM_WRITE(tms_reset_assert_w) AM_RANGE(0x1ec000, 0x1ec003) AM_WRITE(tms_reset_clear_w) AM_RANGE(0x200000, 0x200003) AM_READ_PORT("200000") - AM_RANGE(0x280000, 0x280fff) AM_RAM_WRITE(tms1_68k_ram_w) AM_SHARE("share1") - AM_RANGE(0x300000, 0x300fff) AM_RAM_WRITE(tms2_68k_ram_w) AM_SHARE("share2") + AM_RANGE(0x280000, 0x280fff) AM_RAM_WRITE(tms1_68k_ram_w) AM_SHARE("tms1_ram") + AM_RANGE(0x300000, 0x300fff) AM_RAM_WRITE(tms2_68k_ram_w) AM_SHARE("tms2_ram") AM_RANGE(0x380000, 0x380003) AM_WRITENOP // AM_WRITE(watchdog_reset16_w) AM_RANGE(0x600000, 0x607fff) AM_ROM AM_REGION("user1", 0) AM_SHARE("main_rom") ADDRESS_MAP_END static ADDRESS_MAP_START( drivedge_tms1_map, AS_PROGRAM, 32, itech32_state ) AM_RANGE(0x000000, 0x001fff) AM_RAM AM_SHARE("tms1_boot") - AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x400) AM_RAM_WRITE(tms1_trigger_w) AM_SHARE("share1") AM_SHARE("tms1_ram") + AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x400) AM_RAM_WRITE(tms1_trigger_w) AM_SHARE("tms1_ram") AM_RANGE(0x080000, 0x0bffff) AM_RAM ADDRESS_MAP_END 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_SHARE("tms2_ram") + AM_RANGE(0x008000, 0x0083ff) AM_MIRROR(0x8400) AM_RAM_WRITE(tms2_trigger_w) AM_SHARE("tms2_ram") AM_RANGE(0x080000, 0x08ffff) AM_RAM ADDRESS_MAP_END @@ -3951,6 +3951,8 @@ ROM_END static void init_program_rom(running_machine &machine) { itech32_state *state = machine.driver_data<itech32_state>(); + if (state->m_main_ram == NULL) + state->m_main_ram.set_target(state->m_nvram, state->m_nvram.bytes()); memcpy(state->m_main_ram, state->m_main_rom, 0x80); } diff --git a/src/mame/drivers/kyugo.c b/src/mame/drivers/kyugo.c index f72ec4c6921..2042f065cf8 100644 --- a/src/mame/drivers/kyugo.c +++ b/src/mame/drivers/kyugo.c @@ -43,7 +43,7 @@ static ADDRESS_MAP_START( kyugo_main_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0xa800, 0xa800) AM_WRITE(kyugo_scroll_x_lo_w) AM_RANGE(0xb000, 0xb000) AM_WRITE(kyugo_gfxctrl_w) AM_RANGE(0xb800, 0xb800) AM_WRITE(kyugo_scroll_y_w) - AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("share1") AM_SHARE("shared_ram") + AM_RANGE(0xf000, 0xf7ff) AM_RAM AM_SHARE("shared_ram") ADDRESS_MAP_END @@ -82,7 +82,7 @@ ADDRESS_MAP_END 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(0x4000, 0x47ff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0x8000, 0x8000) AM_READ_PORT("P2") AM_RANGE(0x8040, 0x8040) AM_READ_PORT("P1") AM_RANGE(0x8080, 0x8080) AM_READ_PORT("SYSTEM") @@ -91,7 +91,7 @@ ADDRESS_MAP_END 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(0xa000, 0xa7ff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P2") AM_RANGE(0xc040, 0xc040) AM_READ_PORT("P1") AM_RANGE(0xc080, 0xc080) AM_READ_PORT("SYSTEM") @@ -100,7 +100,7 @@ ADDRESS_MAP_END 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(0x8000, 0x87ff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0xf400, 0xf400) AM_READ_PORT("SYSTEM") AM_RANGE(0xf401, 0xf401) AM_READ_PORT("P1") AM_RANGE(0xf402, 0xf402) AM_READ_PORT("P2") @@ -109,7 +109,7 @@ ADDRESS_MAP_END 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(0xc000, 0xc7ff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0xf800, 0xf800) AM_READ_PORT("SYSTEM") AM_RANGE(0xf801, 0xf801) AM_READ_PORT("P1") AM_RANGE(0xf802, 0xf802) AM_READ_PORT("P2") @@ -121,7 +121,7 @@ static ADDRESS_MAP_START( flashgala_sub_map, AS_PROGRAM, 8, kyugo_state ) AM_RANGE(0xc040, 0xc040) AM_READ_PORT("SYSTEM") AM_RANGE(0xc080, 0xc080) AM_READ_PORT("P1") AM_RANGE(0xc0c0, 0xc0c0) AM_READ_PORT("P2") - AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") + AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("shared_ram") ADDRESS_MAP_END diff --git a/src/mame/drivers/m52.c b/src/mame/drivers/m52.c index b6d699eea2b..4596712efa0 100644 --- a/src/mame/drivers/m52.c +++ b/src/mame/drivers/m52.c @@ -79,7 +79,7 @@ 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_SHARE("videoram") AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(m52_colorram_w) AM_SHARE("colorram") - AM_RANGE(0xc800, 0xc9ff) AM_WRITEONLY AM_SHARE("spriteram") AM_SHARE("share1") // bigger or mirrored? + AM_RANGE(0xc800, 0xc9ff) AM_WRITEONLY AM_SHARE("spriteram") // bigger or mirrored? AM_RANGE(0xd000, 0xd000) AM_READ_PORT("IN0") AM_WRITE_LEGACY(irem_sound_cmd_w) AM_RANGE(0xd001, 0xd001) AM_READ_PORT("IN1") AM_WRITE(alpha1v_flipscreen_w) AM_RANGE(0xd002, 0xd002) AM_READ_PORT("IN2") diff --git a/src/mame/drivers/mappy.c b/src/mame/drivers/mappy.c index dd8a4ed7c35..2d8982b54ac 100644 --- a/src/mame/drivers/mappy.c +++ b/src/mame/drivers/mappy.c @@ -907,8 +907,8 @@ static ADDRESS_MAP_START( superpac_cpu1_map, AS_PROGRAM, 8, mappy_state ) ADDRESS_MAP_END 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_SHARE("videoram") /* video RAM */ - AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share3") /* shared RAM with CPU #2/sprite RAM*/ + AM_RANGE(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("videoram") /* video RAM */ + AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") /* shared RAM with CPU #2/sprite RAM*/ AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE_LEGACY("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with the sound CPU */ AM_RANGE(0x4800, 0x480f) AM_DEVREADWRITE_LEGACY("namcoio_1", namcoio_r, namcoio_w) /* custom I/O chips interface */ AM_RANGE(0x4810, 0x481f) AM_DEVREADWRITE_LEGACY("namcoio_2", namcoio_r, namcoio_w) /* custom I/O chips interface */ @@ -950,8 +950,8 @@ ADDRESS_MAP_END /* extra CPU only present in Phozon */ 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(0x0000, 0x07ff) AM_RAM_WRITE(superpac_videoram_w) AM_SHARE("videoram") /* video RAM */ + AM_RANGE(0x0800, 0x1fff) AM_RAM AM_SHARE("spriteram") /* shared RAM with CPU #2/sprite RAM*/ AM_RANGE(0x4000, 0x43ff) AM_DEVREADWRITE_LEGACY("namco", namco_snd_sharedram_r, namco_snd_sharedram_w) /* shared RAM with CPU #2 */ AM_RANGE(0xa000, 0xa7ff) AM_RAM /* RAM */ AM_RANGE(0xe000, 0xffff) AM_ROM /* ROM */ diff --git a/src/mame/drivers/namcos23.c b/src/mame/drivers/namcos23.c index 56de25d7703..8d8fc697e26 100644 --- a/src/mame/drivers/namcos23.c +++ b/src/mame/drivers/namcos23.c @@ -1336,7 +1336,7 @@ public: required_shared_ptr<UINT32> m_shared_ram; required_shared_ptr<UINT32> m_charram; required_shared_ptr<UINT32> m_textram; - required_shared_ptr<UINT32> m_gmen_sh2_shared; + optional_shared_ptr<UINT32> m_gmen_sh2_shared; UINT8 m_jvssense; INT32 m_has_jvsio; bool m_ctl_vbl_active; diff --git a/src/mame/drivers/ninjaw.c b/src/mame/drivers/ninjaw.c index 7a0be8e3cca..e585fdb7d94 100644 --- a/src/mame/drivers/ninjaw.c +++ b/src/mame/drivers/ninjaw.c @@ -451,7 +451,7 @@ static ADDRESS_MAP_START( ninjaw_slave_map, AS_PROGRAM, 16, ninjaw_state ) AM_RANGE(0x200000, 0x200001) AM_DEVREADWRITE8_LEGACY("tc0220ioc", tc0220ioc_portreg_r, tc0220ioc_portreg_w, 0x00ff) AM_RANGE(0x200002, 0x200003) AM_DEVREADWRITE8_LEGACY("tc0220ioc", tc0220ioc_port_r, tc0220ioc_port_w, 0x00ff) AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE("share1") - AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("share2") + AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x280000, 0x293fff) AM_DEVREAD_LEGACY("tc0100scn_1", tc0100scn_word_r) AM_WRITE(tc0100scn_triple_screen_w) /* tilemaps (1st screen/all screens) */ AM_RANGE(0x340000, 0x340007) AM_DEVREADWRITE_LEGACY("tc0110pcr_1", tc0110pcr_word_r, tc0110pcr_step1_word_w) /* palette (1st screen) */ AM_RANGE(0x350000, 0x350007) AM_DEVREADWRITE_LEGACY("tc0110pcr_2", tc0110pcr_word_r, tc0110pcr_step1_word_w) /* palette (2nd screen) */ @@ -466,7 +466,7 @@ static ADDRESS_MAP_START( darius2_master_map, AS_PROGRAM, 16, ninjaw_state ) AM_RANGE(0x210000, 0x210001) AM_WRITE(cpua_ctrl_w) AM_RANGE(0x220000, 0x220003) AM_READWRITE(ninjaw_sound_r,ninjaw_sound_w) AM_RANGE(0x240000, 0x24ffff) AM_RAM AM_SHARE("share1") - AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("share2") AM_SHARE("spriteram") + AM_RANGE(0x260000, 0x263fff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0x280000, 0x293fff) AM_DEVREAD_LEGACY("tc0100scn_1", tc0100scn_word_r) AM_WRITE(tc0100scn_triple_screen_w) /* tilemaps (1st screen/all screens) */ AM_RANGE(0x2a0000, 0x2a000f) AM_DEVREADWRITE_LEGACY("tc0100scn_1", tc0100scn_ctrl_word_r, tc0100scn_ctrl_word_w) AM_RANGE(0x2c0000, 0x2d3fff) AM_DEVREADWRITE_LEGACY("tc0100scn_2", tc0100scn_word_r, tc0100scn_word_w) /* tilemaps (2nd screen) */ diff --git a/src/mame/drivers/nmk16.c b/src/mame/drivers/nmk16.c index 7d9f7c56c12..cce970e29a0 100644 --- a/src/mame/drivers/nmk16.c +++ b/src/mame/drivers/nmk16.c @@ -4632,8 +4632,8 @@ static ADDRESS_MAP_START( afega, AS_PROGRAM, 16, nmk16_state ) /**/AM_RANGE(0x090000, 0x093fff) AM_RAM_WRITE(nmk_bgvideoram0_w) AM_SHARE("nmk_bgvideoram0") // Layer 0 // ? /**/AM_RANGE(0x09c000, 0x09c7ff) AM_RAM_WRITE(nmk_txvideoram_w) AM_SHARE("nmk_txvideoram") // Layer 1 - AM_RANGE(0x0c0000, 0x0cffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("share1") AM_SHARE("mainram") - AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("share1") + AM_RANGE(0x0c0000, 0x0cffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("mainram") + AM_RANGE(0x0f0000, 0x0fffff) AM_RAM_WRITE(nmk16_mainram_strange_w) AM_SHARE("mainram") ADDRESS_MAP_END diff --git a/src/mame/drivers/nova2001.c b/src/mame/drivers/nova2001.c index bd754702bf2..0c212c32fa4 100644 --- a/src/mame/drivers/nova2001.c +++ b/src/mame/drivers/nova2001.c @@ -201,8 +201,8 @@ static ADDRESS_MAP_START( ninjakun_cpu1_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0xa001, 0xa001) AM_READ_PORT("IN1") AM_RANGE(0xa002, 0xa002) AM_READ_PORT("IN2") AM_WRITE(ninjakun_cpu1_io_A002_w) AM_RANGE(0xa003, 0xa003) AM_WRITE(pkunwar_flipscreen_w) - AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE("fg_videoram") AM_SHARE("share1") - AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_SHARE("bg_videoram") AM_SHARE("share2") + AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE("fg_videoram") + AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share3") AM_RANGE(0xd800, 0xd9ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_SHARE("paletteram") AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("share5") @@ -220,8 +220,8 @@ static ADDRESS_MAP_START( ninjakun_cpu2_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0xa001, 0xa001) AM_READ_PORT("IN1") AM_RANGE(0xa002, 0xa002) AM_READ_PORT("IN2") AM_WRITE(ninjakun_cpu2_io_A002_w) AM_RANGE(0xa003, 0xa003) AM_WRITE(nova2001_flipscreen_w) - AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE("share1") - AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_SHARE("share2") + AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(nova2001_fg_videoram_w) AM_SHARE("fg_videoram") + AM_RANGE(0xc800, 0xcfff) AM_READWRITE(ninjakun_bg_videoram_r, ninjakun_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("share3") AM_RANGE(0xd800, 0xd9ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_SHARE("paletteram") AM_RANGE(0xe000, 0xe3ff) AM_RAM AM_SHARE("share6") /* swapped wrt CPU1 */ @@ -260,7 +260,7 @@ static ADDRESS_MAP_START( raiders5_cpu1_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0xc002, 0xc003) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w) AM_RANGE(0xc003, 0xc003) AM_DEVREAD_LEGACY("ay2", ay8910_r) AM_RANGE(0xd000, 0xd1ff) AM_RAM_WRITE(ninjakun_paletteram_w) AM_SHARE("paletteram") - AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") + AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("fg_videoram") ADDRESS_MAP_END static ADDRESS_MAP_START( raiders5_cpu2_map, AS_PROGRAM, 8, nova2001_state ) @@ -270,7 +270,7 @@ static ADDRESS_MAP_START( raiders5_cpu2_map, AS_PROGRAM, 8, nova2001_state ) AM_RANGE(0x8002, 0x8003) AM_DEVWRITE_LEGACY("ay2", ay8910_address_data_w) AM_RANGE(0x8003, 0x8003) AM_DEVREAD_LEGACY("ay2", ay8910_r) AM_RANGE(0x9000, 0x9000) AM_READNOP /* unknown */ - AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("share1") + AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("fg_videoram") AM_RANGE(0xc000, 0xc000) AM_READNOP /* unknown */ AM_RANGE(0xc800, 0xc800) AM_READNOP /* unknown */ AM_RANGE(0xd000, 0xd000) AM_READNOP /* unknown */ diff --git a/src/mame/drivers/pandoras.c b/src/mame/drivers/pandoras.c index 892b7729912..ec6d643a125 100644 --- a/src/mame/drivers/pandoras.c +++ b/src/mame/drivers/pandoras.c @@ -129,9 +129,9 @@ WRITE8_MEMBER(pandoras_state::pandoras_z80_irqtrigger_w) static ADDRESS_MAP_START( pandoras_master_map, AS_PROGRAM, 8, pandoras_state ) - AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("share1") AM_SHARE("spriteram") /* Work RAM (Shared with CPU B) */ - AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("share2") AM_SHARE("colorram") /* Color RAM (shared with CPU B) */ - AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("share3") AM_SHARE("videoram") /* Video RAM (shared with CPU B) */ + AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("spriteram") /* Work RAM (Shared with CPU B) */ + AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("colorram") /* Color RAM (shared with CPU B) */ + AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("videoram") /* Video RAM (shared with CPU B) */ AM_RANGE(0x1800, 0x1807) AM_WRITE(pandoras_int_control_w) /* INT control */ AM_RANGE(0x1a00, 0x1a00) AM_WRITE(pandoras_scrolly_w) /* bg scroll */ AM_RANGE(0x1c00, 0x1c00) AM_WRITE(pandoras_z80_irqtrigger_w) /* cause INT on the Z80 */ @@ -144,9 +144,9 @@ static ADDRESS_MAP_START( pandoras_master_map, AS_PROGRAM, 8, pandoras_state ) ADDRESS_MAP_END 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) */ + AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("spriteram") /* Work RAM (Shared with CPU A) */ + AM_RANGE(0x1000, 0x13ff) AM_RAM_WRITE(pandoras_cram_w) AM_SHARE("colorram") /* Color RAM (shared with CPU A) */ + AM_RANGE(0x1400, 0x17ff) AM_RAM_WRITE(pandoras_vram_w) AM_SHARE("videoram") /* Video RAM (shared with CPU A) */ AM_RANGE(0x1800, 0x1800) AM_READ_PORT("DSW1") AM_RANGE(0x1800, 0x1807) AM_WRITE(pandoras_int_control_w) /* INT control */ AM_RANGE(0x1a00, 0x1a00) AM_READ_PORT("SYSTEM") diff --git a/src/mame/drivers/raiden.c b/src/mame/drivers/raiden.c index 311764adb3c..aee2e4a19a1 100644 --- a/src/mame/drivers/raiden.c +++ b/src/mame/drivers/raiden.c @@ -49,7 +49,7 @@ 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_SHARE("shared_ram") + AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0x0b000, 0x0b001) AM_READ_PORT("P1_P2") AM_RANGE(0x0b002, 0x0b003) AM_READ_PORT("DSW") AM_RANGE(0x0b000, 0x0b007) AM_WRITE(raiden_control_w) @@ -64,7 +64,7 @@ static ADDRESS_MAP_START( sub_map, AS_PROGRAM, 16, raiden_state ) AM_RANGE(0x02000, 0x027ff) AM_RAM_WRITE(raiden_background_w) AM_SHARE("back_data") AM_RANGE(0x02800, 0x02fff) AM_RAM_WRITE(raiden_foreground_w) AM_SHARE("fore_data") AM_RANGE(0x03000, 0x03fff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_word_w) AM_SHARE("paletteram") - AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("share1") + AM_RANGE(0x04000, 0x04fff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0x07ffe, 0x0afff) AM_WRITENOP AM_RANGE(0xc0000, 0xfffff) AM_ROM ADDRESS_MAP_END @@ -74,7 +74,7 @@ ADDRESS_MAP_END 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_SHARE("shared_ram") + AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0x0a000, 0x0a00d) AM_READWRITE_LEGACY(seibu_main_word_r, seibu_main_word_w) AM_RANGE(0x0c000, 0x0c7ff) AM_WRITE(raiden_text_w) AM_SHARE("videoram") AM_RANGE(0x0e000, 0x0e001) AM_READ_PORT("P1_P2") @@ -90,7 +90,7 @@ 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_SHARE("scroll_ram") - AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("share1") AM_SHARE("shared_ram") + AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("shared_ram") AM_RANGE(0x0b000, 0x0b001) AM_READ_PORT("P1_P2") AM_RANGE(0x0b002, 0x0b003) AM_READ_PORT("DSW") AM_RANGE(0x0b000, 0x0b007) AM_WRITE(raidena_control_w) @@ -105,7 +105,7 @@ static ADDRESS_MAP_START( raidenu_sub_map, AS_PROGRAM, 16, raiden_state ) AM_RANGE(0x06000, 0x067ff) AM_RAM_WRITE(raiden_background_w) AM_SHARE("back_data") AM_RANGE(0x06800, 0x06fff) AM_RAM_WRITE(raiden_foreground_w) AM_SHARE("fore_data") AM_RANGE(0x07000, 0x07fff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_word_w) AM_SHARE("paletteram") - AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("share1") + AM_RANGE(0x08000, 0x08fff) AM_RAM AM_SHARE("shared_ram") //AM_RANGE(0x07ffe, 0x0afff) AM_WRITENOP AM_RANGE(0xc0000, 0xfffff) AM_ROM ADDRESS_MAP_END diff --git a/src/mame/drivers/retofinv.c b/src/mame/drivers/retofinv.c index 2af54e19ee3..fc6c2f6226d 100644 --- a/src/mame/drivers/retofinv.c +++ b/src/mame/drivers/retofinv.c @@ -99,9 +99,9 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, retofinv_state ) AM_RANGE(0x7fff, 0x7fff) AM_WRITE(coincounter_w) AM_RANGE(0x7b00, 0x7bff) AM_ROM /* space for diagnostic ROM? The code looks */ /* for a string here, and jumps if it's present */ - AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE("share2") AM_SHARE("fg_videoram") - AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE("share1") AM_SHARE("sharedram") - AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE("share3") AM_SHARE("bg_videoram") + AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE("fg_videoram") + AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE("sharedram") + AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xb800, 0xb802) AM_WRITE(retofinv_gfx_ctrl_w) AM_RANGE(0xc000, 0xc000) AM_READ_PORT("P1") AM_RANGE(0xc001, 0xc001) AM_READ_PORT("P2") @@ -126,9 +126,9 @@ ADDRESS_MAP_END 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") - AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE("share3") + AM_RANGE(0x8000, 0x87ff) AM_RAM_WRITE(retofinv_fg_videoram_w) AM_SHARE("fg_videoram") + AM_RANGE(0x8800, 0x9fff) AM_RAM AM_SHARE("sharedram") + AM_RANGE(0xa000, 0xa7ff) AM_RAM_WRITE(retofinv_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xc804, 0xc804) AM_WRITE(irq1_ack_w) ADDRESS_MAP_END diff --git a/src/mame/drivers/shangkid.c b/src/mame/drivers/shangkid.c index b2ed64ac8e1..f5b35371f9b 100644 --- a/src/mame/drivers/shangkid.c +++ b/src/mame/drivers/shangkid.c @@ -247,9 +247,9 @@ static ADDRESS_MAP_START( chinhero_main_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2") AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1") AM_RANGE(0xc000, 0xc002) AM_WRITEONLY AM_SHARE("videoreg") - AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("videoram") AM_SHARE("share1") + AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("videoram") AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share3") + AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END static ADDRESS_MAP_START( shangkid_main_map, AS_PROGRAM, 8, shangkid_state ) @@ -268,9 +268,9 @@ static ADDRESS_MAP_START( shangkid_main_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2") AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1") AM_RANGE(0xc000, 0xc002) AM_WRITEONLY AM_SHARE("videoreg") - AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("videoram") AM_SHARE("share1") + AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("videoram") AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share3") + AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END /***************************************************************************************/ @@ -288,9 +288,9 @@ static ADDRESS_MAP_START( chinhero_bbx_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0xb801, 0xb801) AM_READ_PORT("SYSTEM") AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2") AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1") - AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("share1") + AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("videoram") AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("share3") + AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END static ADDRESS_MAP_START( shangkid_bbx_map, AS_PROGRAM, 8, shangkid_state ) @@ -307,9 +307,9 @@ static ADDRESS_MAP_START( shangkid_bbx_map, AS_PROGRAM, 8, shangkid_state ) AM_RANGE(0xb801, 0xb801) AM_READ_PORT("SYSTEM") AM_RANGE(0xb802, 0xb802) AM_READ_PORT("P2") AM_RANGE(0xb803, 0xb803) AM_READ_PORT("P1") - AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("share1") + AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(shangkid_videoram_w) AM_SHARE("videoram") AM_RANGE(0xe000, 0xfdff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("share3") + AM_RANGE(0xfe00, 0xffff) AM_RAM AM_SHARE("spriteram") ADDRESS_MAP_END static ADDRESS_MAP_START( chinhero_bbx_portmap, AS_IO, 8, shangkid_state ) diff --git a/src/mame/drivers/snk.c b/src/mame/drivers/snk.c index d77f0897d44..5affde5a403 100644 --- a/src/mame/drivers/snk.c +++ b/src/mame/drivers/snk.c @@ -852,12 +852,12 @@ static ADDRESS_MAP_START( marvins_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x8500, 0x8500) AM_READ_PORT("DSW2") AM_RANGE(0x8600, 0x8600) AM_WRITE(marvins_flipscreen_w) AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w) - AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share1") // + work ram - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share2") AM_SHARE("fg_videoram") + AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("fg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share4") AM_SHARE("bg_videoram") + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share5") - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w) AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w) @@ -871,12 +871,12 @@ ADDRESS_MAP_END 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") - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share2") + AM_RANGE(0xc000, 0xcfff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("fg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share4") + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share5") - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w) AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w) @@ -899,13 +899,13 @@ static ADDRESS_MAP_START( madcrash_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x8500, 0x8500) AM_READ_PORT("DSW2") AM_RANGE(0x8600, 0x8600) AM_MIRROR(0xff) AM_WRITE(marvins_flipscreen_w) AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w) - AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share1") // + work ram + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") // + work ram AM_RANGE(0xc800, 0xc800) AM_MIRROR(0xff) AM_WRITE(marvins_palette_bank_w) - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_SHARE("bg_videoram") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4") AM_SHARE("fg_videoram") + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("fg_videoram") AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share5") - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM AM_RANGE(0xf800, 0xf800) AM_MIRROR(0xff) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xf900, 0xf900) AM_MIRROR(0xff) AM_WRITE(snk_bg_scrollx_w) AM_RANGE(0xfa00, 0xfa00) AM_MIRROR(0xff) AM_WRITE(snk_sprite_split_point_w) @@ -920,9 +920,9 @@ 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 - AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4") + AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("fg_videoram") AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share5") - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") AM_RANGE(0xd800, 0xd800) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xd900, 0xd900) AM_WRITE(snk_bg_scrollx_w) AM_RANGE(0xda00, 0xda00) AM_WRITE(snk_sprite_split_point_w) @@ -931,8 +931,8 @@ static ADDRESS_MAP_START( madcrash_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xdd00, 0xdd00) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xde00, 0xde00) AM_WRITE(snk_fg_scrolly_w) AM_RANGE(0xdf00, 0xdf00) AM_WRITE(snk_fg_scrollx_w) - AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") + AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share3") ADDRESS_MAP_END @@ -946,13 +946,13 @@ static ADDRESS_MAP_START( madcrush_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0x8500, 0x8500) AM_READ_PORT("DSW2") AM_RANGE(0x8600, 0x8600) AM_MIRROR(0xff) AM_WRITE(marvins_flipscreen_w) AM_RANGE(0x8700, 0x8700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w) - AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share1") // + work ram - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4") AM_SHARE("fg_videoram") + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("fg_videoram") AM_RANGE(0xc800, 0xc800) AM_MIRROR(0xff) AM_WRITE(marvins_palette_bank_w) AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share5") - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_SHARE("bg_videoram") + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") AM_SHARE("tx_videoram") + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w) AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w) @@ -966,13 +966,13 @@ ADDRESS_MAP_END 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 + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") // + work ram AM_RANGE(0xc800, 0xc800) AM_MIRROR(0xff) AM_WRITE(marvins_palette_bank_w) - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("share4") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(marvins_fg_videoram_w) AM_SHARE("fg_videoram") AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share5") - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") // ?? + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") // ?? AM_RANGE(0xe800, 0xefff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share6") + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_sp16_scrolly_w) AM_RANGE(0xf900, 0xf900) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xfa00, 0xfa00) AM_WRITE(snk_fg_scrolly_w) @@ -999,18 +999,18 @@ static ADDRESS_MAP_START( jcross_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xd500, 0xd500) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xd600, 0xd600) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xd700, 0xd700) AM_WRITE(snk_bg_scrollx_w) - AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share1") // + work ram - AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_SHARE("bg_videoram") - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xe000, 0xefff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM 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, 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") - AM_RANGE(0xc800, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xc800, 0xd7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1030,25 +1030,25 @@ static ADDRESS_MAP_START( sgladiat_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xd500, 0xd500) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xd600, 0xd600) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xd700, 0xd700) AM_WRITE(snk_bg_scrollx_w) - AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share1") // + work ram - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_SHARE("bg_videoram") + AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xe800, 0xefff) AM_RAM - AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END 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 - AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("share1") - AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xda00, 0xda00) AM_WRITENOP // unknown AM_RANGE(0xdb00, 0xdb00) AM_WRITE(sgladiat_scroll_msb_w) AM_RANGE(0xdc00, 0xdc00) AM_WRITE(snk_sp16_scrolly_w) AM_RANGE(0xdd00, 0xdd00) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xde00, 0xde00) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xdf00, 0xdf00) AM_WRITE(snk_bg_scrollx_w) - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1067,17 +1067,17 @@ static ADDRESS_MAP_START( hal21_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xd500, 0xd500) AM_WRITE(snk_sp16_scrollx_w) AM_RANGE(0xd600, 0xd600) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xd700, 0xd700) AM_WRITE(snk_bg_scrollx_w) - AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("spriteram") AM_SHARE("share1") // + work ram - AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") AM_SHARE("bg_videoram") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END 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") - AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share2") - AM_RANGE(0xe800, 0xefff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xd000, 0xdfff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") + AM_RANGE(0xe800, 0xefff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1098,18 +1098,18 @@ static ADDRESS_MAP_START( aso_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xce00, 0xce00) AM_WRITENOP // always 05? AM_RANGE(0xcf00, 0xcf00) AM_WRITE(aso_bg_bank_w) // tile and palette bank AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share1") - AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share2") AM_SHARE("spriteram") // + work ram - AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share3") AM_SHARE("bg_videoram") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xe800, 0xf7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END 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") - AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xd800, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("share3") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") + AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xd800, 0xe7ff) AM_RAM_WRITE(marvins_bg_videoram_w) AM_SHARE("bg_videoram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1131,19 +1131,19 @@ static ADDRESS_MAP_START( tnk3_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xcb00, 0xcb00) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xcc00, 0xcc00) AM_WRITE(snk_bg_scrollx_w) AM_RANGE(0xcf00, 0xcf00) AM_WRITENOP // fitegolf/countryc only. Either 0 or 1. Video related? - AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("share1") AM_SHARE("spriteram") // + work ram - AM_RANGE(0xd800, 0xf7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2") AM_SHARE("bg_videoram") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xd800, 0xf7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END 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 - AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("share1") - AM_RANGE(0xd000, 0xefff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2") + AM_RANGE(0xc800, 0xcfff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xd000, 0xefff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xf000, 0xf7ff) AM_RAM - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share3") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1177,9 +1177,9 @@ static ADDRESS_MAP_START( ikari_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xcea0, 0xcea0) AM_READ(hardflags6_r) AM_RANGE(0xcee0, 0xcee0) AM_READ(hardflags7_r) // note the mirror. ikari and victroad use d800, ikarijp uses d000 - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE("share2") AM_SHARE("bg_videoram") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") AM_SHARE("spriteram") // + work ram - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE("bg_videoram") + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END static ADDRESS_MAP_START( ikari_cpuB_map, AS_PROGRAM, 8, snk_state ) @@ -1196,9 +1196,9 @@ static ADDRESS_MAP_START( ikari_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xce80, 0xce80) AM_READ(hardflags5_r) AM_RANGE(0xcea0, 0xcea0) AM_READ(hardflags6_r) AM_RANGE(0xcee0, 0xcee0) AM_READ(hardflags7_r) - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE("share2") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_MIRROR(0x0800) AM_SHARE("bg_videoram") + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1240,10 +1240,10 @@ static ADDRESS_MAP_START( bermudat_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xccd0, 0xccd0) AM_READ(turbocheck32_2_r) AM_RANGE(0xcce0, 0xcce0) AM_READ(turbocheck32_3_r) AM_RANGE(0xccf0, 0xccf0) AM_READ(turbocheck32_4_r) - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") AM_SHARE("bg_videoram") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") AM_SHARE("spriteram") // + work ram - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END static ADDRESS_MAP_START( bermudat_cpuB_map, AS_PROGRAM, 8, snk_state ) @@ -1258,10 +1258,10 @@ static ADDRESS_MAP_START( bermudat_cpuB_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xc980, 0xc980) AM_WRITE(snk_sp32_scrolly_w) AM_RANGE(0xc9c0, 0xc9c0) AM_WRITE(snk_sp32_scrollx_w) AM_RANGE(0xca80, 0xca80) AM_WRITE(gwara_sp_scroll_msb_w) - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1286,20 +1286,20 @@ static ADDRESS_MAP_START( gwar_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xca00, 0xca00) AM_WRITENOP // always 0? AM_RANGE(0xca40, 0xca40) AM_WRITENOP // always 0? AM_RANGE(0xcac0, 0xcac0) AM_WRITE(snk_sprite_split_point_w) - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") AM_SHARE("bg_videoram") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") AM_SHARE("spriteram") // + work ram - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") // + work ram + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END 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 - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END @@ -1313,10 +1313,10 @@ static ADDRESS_MAP_START( gwara_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xc500, 0xc500) AM_READ_PORT("DSW1") AM_RANGE(0xc600, 0xc600) AM_READ_PORT("DSW2") AM_RANGE(0xc700, 0xc700) AM_READWRITE(snk_cpuB_nmi_trigger_r, snk_cpuA_nmi_ack_w) - AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share1") AM_SHARE("tx_videoram") // + work RAM - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2") AM_SHARE("bg_videoram") + AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share4") AM_SHARE("spriteram") // + work ram + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") // + work ram AM_RANGE(0xf800, 0xf800) AM_WRITE(snk_bg_scrolly_w) AM_RANGE(0xf840, 0xf840) AM_WRITE(snk_bg_scrollx_w) AM_RANGE(0xf880, 0xf880) AM_WRITE(gwara_videoattrs_w) // flip screen, scroll msb @@ -1332,10 +1332,10 @@ ADDRESS_MAP_END 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") - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share2") + AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share3") - AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("share4") AM_SHARE("spriteram") // + work ram + AM_RANGE(0xe000, 0xf7ff) AM_RAM AM_SHARE("spriteram") // + work ram AM_RANGE(0xf8c0, 0xf8c0) AM_WRITE(gwar_tx_bank_w) // char and palette bank ADDRESS_MAP_END @@ -1364,10 +1364,10 @@ static ADDRESS_MAP_START( tdfever_cpuA_map, AS_PROGRAM, 8, snk_state ) AM_RANGE(0xc900, 0xc900) AM_WRITE(tdfever_sp_scroll_msb_w) AM_RANGE(0xc980, 0xc980) AM_WRITE(snk_sp32_scrolly_w) AM_RANGE(0xc9c0, 0xc9c0) AM_WRITE(snk_sp32_scrollx_w) - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") AM_SHARE("bg_videoram") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE("share3") AM_SHARE("spriteram") // + work ram - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") AM_SHARE("tx_videoram") // + work RAM + AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE("spriteram") // + work ram + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") // + work RAM ADDRESS_MAP_END static ADDRESS_MAP_START( tdfever_cpuB_map, AS_PROGRAM, 8, snk_state ) @@ -1375,10 +1375,10 @@ static ADDRESS_MAP_START( tdfever_cpuB_map, AS_PROGRAM, 8, snk_state ) 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 AM_RANGE(0xc8c0, 0xc8c0) AM_WRITE(gwar_tx_bank_w) // char and palette bank - AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("share1") + AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(snk_bg_videoram_w) AM_SHARE("bg_videoram") AM_RANGE(0xd800, 0xdfff) AM_RAM AM_SHARE("share2") - AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE("share3") - AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("share4") + AM_RANGE(0xe000, 0xf7ff) AM_RAM_WRITE(tdfever_spriteram_w) AM_SHARE("spriteram") + AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(snk_tx_videoram_w) AM_SHARE("tx_videoram") ADDRESS_MAP_END /***********************************************************************/ diff --git a/src/mame/drivers/taitojc.c b/src/mame/drivers/taitojc.c index 33dfa2c2117..8c9e6b1541a 100644 --- a/src/mame/drivers/taitojc.c +++ b/src/mame/drivers/taitojc.c @@ -858,7 +858,7 @@ static ADDRESS_MAP_START( taitojc_map, AS_PROGRAM, 32, taitojc_state ) AM_RANGE(0x06600010, 0x06600013) AM_WRITE(jc_coin_counters_w) AM_RANGE(0x06600040, 0x0660004f) AM_WRITE(jc_control_w) //AM_RANGE(0x06800000, 0x06801fff) AM_NOP // unknown - AM_RANGE(0x06a00000, 0x06a01fff) AM_READWRITE(f3_share_r, f3_share_w) AM_SHARE("f3_shared") AM_SHARE("f3_shared_ram") + AM_RANGE(0x06a00000, 0x06a01fff) AM_READWRITE(f3_share_r, f3_share_w) AM_SHARE("f3_shared") AM_RANGE(0x06c00000, 0x06c0001f) AM_READ(jc_lan_r) AM_WRITENOP // Dangerous Curves AM_RANGE(0x06e00000, 0x06e00007) AM_WRITE(jc_meters_w) AM_RANGE(0x08000000, 0x080fffff) AM_RAM AM_SHARE("main_ram") diff --git a/src/mame/drivers/tceptor.c b/src/mame/drivers/tceptor.c index 404e3bd799b..e9dfb6678e4 100644 --- a/src/mame/drivers/tceptor.c +++ b/src/mame/drivers/tceptor.c @@ -169,7 +169,7 @@ static ADDRESS_MAP_START( m6809_map, AS_PROGRAM, 8, tceptor_state ) AM_RANGE(0x4f03, 0x4f03) AM_READ_PORT("STICKY") // analog input (up/down) AM_RANGE(0x4f00, 0x4f03) AM_WRITENOP // analog input control? AM_RANGE(0x5000, 0x5006) AM_WRITE(tceptor_bg_scroll_w) // bg scroll - AM_RANGE(0x6000, 0x7fff) AM_RAM AM_SHARE("share1") AM_SHARE("m68k_shared_ram") // COM RAM + AM_RANGE(0x6000, 0x7fff) AM_RAM AM_SHARE("m68k_shared_ram") // COM RAM AM_RANGE(0x8000, 0x8000) AM_WRITE(m6809_irq_disable_w) AM_RANGE(0x8800, 0x8800) AM_WRITE(m6809_irq_enable_w) AM_RANGE(0x8000, 0xffff) AM_ROM @@ -205,7 +205,7 @@ static ADDRESS_MAP_START( m68k_map, AS_PROGRAM, 16, tceptor_state ) AM_RANGE(0x400000, 0x4001ff) AM_WRITEONLY AM_SHARE("sprite_ram") AM_RANGE(0x500000, 0x51ffff) AM_WRITE_LEGACY(namco_road16_w) AM_RANGE(0x600000, 0x600001) AM_WRITE(m68k_irq_enable_w) // not sure - AM_RANGE(0x700000, 0x703fff) AM_READWRITE(m68k_shared_word_r, m68k_shared_word_w) AM_SHARE("share1") + AM_RANGE(0x700000, 0x703fff) AM_READWRITE(m68k_shared_word_r, m68k_shared_word_w) AM_SHARE("m68k_shared_ram") ADDRESS_MAP_END diff --git a/src/mame/drivers/tehkanwc.c b/src/mame/drivers/tehkanwc.c index 049d5294ead..c2f62d9313c 100644 --- a/src/mame/drivers/tehkanwc.c +++ b/src/mame/drivers/tehkanwc.c @@ -217,12 +217,12 @@ 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") - AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(tehkanwc_videoram_w) AM_SHARE("share2") AM_SHARE("videoram") - AM_RANGE(0xd400, 0xd7ff) AM_RAM_WRITE(tehkanwc_colorram_w) AM_SHARE("share3") AM_SHARE("colorram") + AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(tehkanwc_videoram_w) AM_SHARE("videoram") + AM_RANGE(0xd400, 0xd7ff) AM_RAM_WRITE(tehkanwc_colorram_w) AM_SHARE("colorram") AM_RANGE(0xd800, 0xddff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_byte_be_w) AM_SHARE("paletteram") AM_RANGE(0xde00, 0xdfff) AM_RAM AM_SHARE("share5") /* unused part of the palette RAM, I think? Gridiron uses it */ - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(tehkanwc_videoram2_w) AM_SHARE("share6") AM_SHARE("videoram2") - AM_RANGE(0xe800, 0xebff) AM_RAM AM_SHARE("share7") AM_SHARE("spriteram") /* sprites */ + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(tehkanwc_videoram2_w) AM_SHARE("videoram2") + AM_RANGE(0xe800, 0xebff) AM_RAM AM_SHARE("spriteram") /* sprites */ AM_RANGE(0xec00, 0xec01) AM_RAM_WRITE(tehkanwc_scroll_x_w) AM_RANGE(0xec02, 0xec02) AM_RAM_WRITE(tehkanwc_scroll_y_w) AM_RANGE(0xf800, 0xf801) AM_READWRITE(tehkanwc_track_0_r, tehkanwc_track_0_reset_w) /* track 0 x/y */ @@ -243,12 +243,12 @@ 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") - AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(tehkanwc_videoram_w) AM_SHARE("share2") - AM_RANGE(0xd400, 0xd7ff) AM_RAM_WRITE(tehkanwc_colorram_w) AM_SHARE("share3") + AM_RANGE(0xd000, 0xd3ff) AM_RAM_WRITE(tehkanwc_videoram_w) AM_SHARE("videoram") + AM_RANGE(0xd400, 0xd7ff) AM_RAM_WRITE(tehkanwc_colorram_w) AM_SHARE("colorram") AM_RANGE(0xd800, 0xddff) AM_RAM_WRITE(paletteram_xxxxBBBBGGGGRRRR_byte_be_w) AM_SHARE("paletteram") AM_RANGE(0xde00, 0xdfff) AM_RAM AM_SHARE("share5") /* unused part of the palette RAM, I think? Gridiron uses it */ - AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(tehkanwc_videoram2_w) AM_SHARE("share6") - AM_RANGE(0xe800, 0xebff) AM_RAM AM_SHARE("share7") /* sprites */ + AM_RANGE(0xe000, 0xe7ff) AM_RAM_WRITE(tehkanwc_videoram2_w) AM_SHARE("videoram2") + AM_RANGE(0xe800, 0xebff) AM_RAM AM_SHARE("spriteram") /* sprites */ AM_RANGE(0xec00, 0xec01) AM_RAM_WRITE(tehkanwc_scroll_x_w) AM_RANGE(0xec02, 0xec02) AM_RAM_WRITE(tehkanwc_scroll_y_w) AM_RANGE(0xf860, 0xf860) AM_READ(watchdog_reset_r) diff --git a/src/mame/drivers/tetrisp2.c b/src/mame/drivers/tetrisp2.c index a295e5f23ac..3a7cead701d 100644 --- a/src/mame/drivers/tetrisp2.c +++ b/src/mame/drivers/tetrisp2.c @@ -307,7 +307,7 @@ static ADDRESS_MAP_START( tetrisp2_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x600000, 0x60ffff) AM_RAM_WRITE(tetrisp2_vram_rot_w) AM_SHARE("vram_rot") // Rotation AM_RANGE(0x650000, 0x651fff) AM_RAM_WRITE(tetrisp2_vram_rot_w) // Rotation (mirror) AM_RANGE(0x800000, 0x800003) AM_DEVREADWRITE8_LEGACY("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound - AM_RANGE(0x900000, 0x903fff) AM_READ(tetrisp2_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") AM_SHARE("nvram") // NVRAM + AM_RANGE(0x900000, 0x903fff) AM_READ(tetrisp2_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") // NVRAM AM_RANGE(0x904000, 0x907fff) AM_READ(tetrisp2_nvram_r) AM_WRITE(tetrisp2_nvram_w) // NVRAM (mirror) AM_RANGE(0xb00000, 0xb00001) AM_WRITE(tetrisp2_coincounter_w) // Coin Counter AM_RANGE(0xb20000, 0xb20001) AM_WRITENOP // ??? @@ -369,7 +369,7 @@ static ADDRESS_MAP_START( nndmseal_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x800000, 0x800003) AM_DEVREADWRITE8("oki", okim6295_device, read, write, 0x00ff ) // Sound - AM_RANGE(0x900000, 0x903fff) AM_READWRITE(tetrisp2_nvram_r, tetrisp2_nvram_w) AM_SHARE("nvram") AM_SHARE("nvram") // NVRAM + AM_RANGE(0x900000, 0x903fff) AM_READWRITE(tetrisp2_nvram_r, tetrisp2_nvram_w) AM_SHARE("nvram") // NVRAM AM_RANGE(0xb00000, 0xb00001) AM_WRITE(nndmseal_coincounter_w) // Coin Counter AM_RANGE(0xb20000, 0xb20001) AM_WRITE(nndmseal_b20000_w) // ??? @@ -408,7 +408,7 @@ static ADDRESS_MAP_START( rockn1_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x408000, 0x409fff) AM_RAM // ??? AM_RANGE(0x500000, 0x50ffff) AM_RAM // Line AM_RANGE(0x600000, 0x60ffff) AM_RAM_WRITE(tetrisp2_vram_rot_w) AM_SHARE("vram_rot") // Rotation - AM_RANGE(0x900000, 0x903fff) AM_READ(rockn_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") AM_SHARE("nvram") // NVRAM + AM_RANGE(0x900000, 0x903fff) AM_READ(rockn_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") // NVRAM AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume AM_RANGE(0xa40000, 0xa40003) AM_DEVREADWRITE8_LEGACY("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound AM_RANGE(0xa44000, 0xa44001) AM_READWRITE(rockn_adpcmbank_r, rockn_adpcmbank_w) // Sound Bank @@ -442,7 +442,7 @@ static ADDRESS_MAP_START( rockn2_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(tetrisp2_vram_fg_w) AM_SHARE("vram_fg") // Foreground AM_RANGE(0x804000, 0x807fff) AM_RAM_WRITE(tetrisp2_vram_bg_w) AM_SHARE("vram_bg") // Background AM_RANGE(0x808000, 0x809fff) AM_RAM // ??? - AM_RANGE(0x900000, 0x903fff) AM_READ(rockn_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") AM_SHARE("nvram") // NVRAM + AM_RANGE(0x900000, 0x903fff) AM_READ(rockn_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") // NVRAM AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume AM_RANGE(0xa40000, 0xa40003) AM_DEVREADWRITE8_LEGACY("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound AM_RANGE(0xa44000, 0xa44001) AM_READWRITE(rockn_adpcmbank_r, rockn2_adpcmbank_w) // Sound Bank @@ -476,7 +476,7 @@ static ADDRESS_MAP_START( rocknms_main_map, AS_PROGRAM, 16, tetrisp2_state ) AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(tetrisp2_vram_fg_w) AM_SHARE("vram_fg") // Foreground AM_RANGE(0x804000, 0x807fff) AM_RAM_WRITE(tetrisp2_vram_bg_w) AM_SHARE("vram_bg") // Background // AM_RANGE(0x808000, 0x809fff) AM_RAM // ??? - AM_RANGE(0x900000, 0x903fff) AM_READ(rockn_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") AM_SHARE("nvram") // NVRAM + AM_RANGE(0x900000, 0x903fff) AM_READ(rockn_nvram_r) AM_WRITE(tetrisp2_nvram_w) AM_SHARE("nvram") // NVRAM AM_RANGE(0xa30000, 0xa30001) AM_READWRITE(rockn_soundvolume_r, rockn_soundvolume_w) // Sound Volume AM_RANGE(0xa40000, 0xa40003) AM_DEVREADWRITE8_LEGACY("ymz", ymz280b_r, ymz280b_w, 0x00ff) // Sound AM_RANGE(0xa44000, 0xa44001) AM_READWRITE(rockn_adpcmbank_r, rockn_adpcmbank_w) // Sound Bank diff --git a/src/mame/drivers/tubep.c b/src/mame/drivers/tubep.c index cd05947afeb..019f7545035 100644 --- a/src/mame/drivers/tubep.c +++ b/src/mame/drivers/tubep.c @@ -149,7 +149,7 @@ static ADDRESS_MAP_START( tubep_main_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_RANGE(0xc000, 0xc7ff) AM_WRITE(tubep_textram_w) AM_SHARE("textram") /* RAM on GFX PCB @B13 */ AM_RANGE(0xe000, 0xe7ff) AM_WRITEONLY AM_SHARE("share1") - AM_RANGE(0xe800, 0xebff) AM_WRITEONLY AM_SHARE("share4") /* row of 8 x 2147 RAMs on main PCB */ + AM_RANGE(0xe800, 0xebff) AM_WRITEONLY AM_SHARE("backgroundram") /* row of 8 x 2147 RAMs on main PCB */ ADDRESS_MAP_END @@ -202,8 +202,8 @@ static ADDRESS_MAP_START( tubep_second_map, AS_PROGRAM, 8, tubep_state ) AM_RANGE(0xa000, 0xa000) AM_WRITE(tubep_background_a000_w) AM_RANGE(0xc000, 0xc000) AM_WRITE(tubep_background_c000_w) AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("share1") /* 6116 #1 */ - AM_RANGE(0xe800, 0xebff) AM_WRITEONLY AM_SHARE("share4") AM_SHARE("backgroundram") /* row of 8 x 2147 RAMs on main PCB */ - AM_RANGE(0xf000, 0xf3ff) AM_WRITEONLY AM_SHARE("share3") /* sprites color lookup table */ + AM_RANGE(0xe800, 0xebff) AM_WRITEONLY AM_SHARE("backgroundram") /* row of 8 x 2147 RAMs on main PCB */ + AM_RANGE(0xf000, 0xf3ff) AM_WRITEONLY AM_SHARE("sprite_color") /* sprites color lookup table */ AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share2") /* program copies here part of shared ram ?? */ ADDRESS_MAP_END @@ -361,7 +361,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, tubep_state ) - AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("share3") AM_SHARE("sprite_color") + AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("sprite_color") AM_RANGE(0x0800, 0x0fff) AM_RAM AM_SHARE("share2") AM_RANGE(0x2000, 0x2009) AM_WRITE(tubep_sprite_control_w) AM_RANGE(0x200a, 0x200b) AM_WRITENOP /* not used by the games - perhaps designed for debugging */ diff --git a/src/mame/drivers/tx1.c b/src/mame/drivers/tx1.c index 5cf780e5822..5a55c717a7e 100644 --- a/src/mame/drivers/tx1.c +++ b/src/mame/drivers/tx1.c @@ -501,7 +501,7 @@ static ADDRESS_MAP_START( tx1_main, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x04000, 0x04fff) AM_MIRROR(0x1000) AM_RAM AM_SHARE("nvram") AM_RANGE(0x06000, 0x06fff) AM_READWRITE(tx1_crtc_r, tx1_crtc_w) AM_RANGE(0x08000, 0x09fff) AM_RAM AM_SHARE("vram") - AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("share1") AM_SHARE("rcram") + AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("rcram") AM_RANGE(0x0b000, 0x0b001) AM_READWRITE(dipswitches_r, z80_busreq_w) AM_RANGE(0x0c000, 0x0c001) AM_WRITE(tx1_scolst_w) AM_RANGE(0x0d000, 0x0d003) AM_WRITE(tx1_slincs_w) @@ -514,7 +514,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( tx1_math, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("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") + AM_RANGE(0x01000, 0x01fff) AM_RAM AM_SHARE("rcram") AM_RANGE(0x02000, 0x022ff) AM_RAM AM_SHARE("objram") AM_RANGE(0x02400, 0x027ff) AM_WRITE(tx1_bankcs_w) AM_RANGE(0x02800, 0x02bff) AM_WRITE(halt_math_w) @@ -552,7 +552,7 @@ 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_SHARE("vram") - AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("share1") AM_SHARE("rcram") + AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("rcram") AM_RANGE(0x0b000, 0x0b001) AM_READWRITE(dipswitches_r, z80_busreq_w) AM_RANGE(0x0c000, 0x0c001) AM_WRITE(buggyboy_scolst_w) AM_RANGE(0x0d000, 0x0d003) AM_WRITE(tx1_slincs_w) @@ -567,7 +567,7 @@ 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_SHARE("vram") - AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("share1") AM_SHARE("rcram") + AM_RANGE(0x0a000, 0x0afff) AM_RAM AM_SHARE("rcram") AM_RANGE(0x0b000, 0x0b001) AM_READWRITE(dipswitches_r, z80_busreq_w) AM_RANGE(0x0c000, 0x0c001) AM_WRITE(buggyboy_scolst_w) AM_RANGE(0x0d000, 0x0d003) AM_WRITE(tx1_slincs_w) @@ -581,7 +581,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( buggyboy_math, AS_PROGRAM, 16, tx1_state ) AM_RANGE(0x00000, 0x007ff) AM_RAM AM_SHARE("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") + AM_RANGE(0x01000, 0x01fff) AM_RAM AM_SHARE("rcram") AM_RANGE(0x02000, 0x022ff) AM_RAM AM_SHARE("objram") AM_RANGE(0x02400, 0x024ff) AM_WRITE(buggyboy_gas_w) AM_RANGE(0x03000, 0x03fff) AM_READWRITE(buggyboy_math_r, buggyboy_math_w) diff --git a/src/mame/drivers/wardner.c b/src/mame/drivers/wardner.c index 9e1d0dfb336..664968e2ded 100644 --- a/src/mame/drivers/wardner.c +++ b/src/mame/drivers/wardner.c @@ -210,7 +210,7 @@ static ADDRESS_MAP_START( main_program_map, AS_PROGRAM, 8, wardner_state ) AM_RANGE(0xa000, 0xadff) AM_WRITE(paletteram_xBBBBBGGGGGRRRRR_byte_le_w) AM_SHARE("paletteram") AM_RANGE(0xae00, 0xafff) AM_RAM AM_SHARE("rambase_ae00") AM_RANGE(0xb000, 0xbfff) AM_ROM - AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("rambase_c000") AM_SHARE("share1") /* Shared RAM with Sound Z80 */ + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("rambase_c000") /* Shared RAM with Sound Z80 */ AM_RANGE(0xc800, 0xffff) AM_ROM ADDRESS_MAP_END @@ -242,7 +242,7 @@ ADDRESS_MAP_END 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 */ + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("rambase_c000") /* Shared RAM with Main Z80 */ AM_RANGE(0xc800, 0xcfff) AM_RAM ADDRESS_MAP_END diff --git a/src/mame/drivers/xxmissio.c b/src/mame/drivers/xxmissio.c index 3ac133162d0..fcd3fed7ba6 100644 --- a/src/mame/drivers/xxmissio.c +++ b/src/mame/drivers/xxmissio.c @@ -97,9 +97,9 @@ static ADDRESS_MAP_START( map1, AS_PROGRAM, 8, xxmissio_state ) AM_RANGE(0xa002, 0xa002) AM_WRITE(xxmissio_status_m_w) AM_RANGE(0xa003, 0xa003) AM_WRITE(xxmissio_flipscreen_w) - AM_RANGE(0xc000, 0xc7ff) AM_SHARE("share1") AM_RAM AM_SHARE("fgram") - AM_RANGE(0xc800, 0xcfff) AM_SHARE("share2") AM_READWRITE(xxmissio_bgram_r, xxmissio_bgram_w) AM_SHARE("bgram") - AM_RANGE(0xd000, 0xd7ff) AM_SHARE("share3") AM_RAM AM_SHARE("spriteram") + AM_RANGE(0xc000, 0xc7ff) AM_RAM AM_SHARE("fgram") + AM_RANGE(0xc800, 0xcfff) AM_READWRITE(xxmissio_bgram_r, xxmissio_bgram_w) AM_SHARE("bgram") + AM_RANGE(0xd000, 0xd7ff) AM_RAM AM_SHARE("spriteram") AM_RANGE(0xd800, 0xdaff) AM_SHARE("paletteram") AM_RAM_WRITE(xxmissio_paletteram_w) @@ -122,9 +122,9 @@ static ADDRESS_MAP_START( map2, AS_PROGRAM, 8, xxmissio_state ) AM_RANGE(0xa002, 0xa002) AM_WRITE(xxmissio_status_s_w) AM_RANGE(0xa003, 0xa003) AM_WRITE(xxmissio_flipscreen_w) - AM_RANGE(0xc000, 0xc7ff) AM_SHARE("share1") AM_RAM - AM_RANGE(0xc800, 0xcfff) AM_SHARE("share2") AM_READWRITE(xxmissio_bgram_r, xxmissio_bgram_w) - AM_RANGE(0xd000, 0xd7ff) AM_SHARE("share3") AM_RAM + AM_RANGE(0xc000, 0xc7ff) AM_SHARE("fgram") AM_RAM + AM_RANGE(0xc800, 0xcfff) AM_SHARE("bgram") AM_READWRITE(xxmissio_bgram_r, xxmissio_bgram_w) + AM_RANGE(0xd000, 0xd7ff) AM_SHARE("spriteram") AM_RAM AM_RANGE(0xd800, 0xdaff) AM_SHARE("paletteram") AM_RAM_WRITE(xxmissio_paletteram_w) diff --git a/src/mame/includes/40love.h b/src/mame/includes/40love.h index d1446fbe019..ece1fd0692d 100644 --- a/src/mame/includes/40love.h +++ b/src/mame/includes/40love.h @@ -16,7 +16,7 @@ public: required_shared_ptr<UINT8> m_spriteram; required_shared_ptr<UINT8> m_colorram; required_shared_ptr<UINT8> m_spriteram2; - required_shared_ptr<UINT8> m_mcu_ram; + optional_shared_ptr<UINT8> m_mcu_ram; /* video-related */ bitmap_ind16 *m_tmp_bitmap1; diff --git a/src/mame/includes/astrof.h b/src/mame/includes/astrof.h index 605c8a24cc4..1bb6ae2bb9f 100644 --- a/src/mame/includes/astrof.h +++ b/src/mame/includes/astrof.h @@ -20,7 +20,7 @@ public: UINT8 * m_colorram; required_shared_ptr<UINT8> m_astrof_color; - required_shared_ptr<UINT8> m_tomahawk_protection; + optional_shared_ptr<UINT8> m_tomahawk_protection; UINT8 m_astrof_palette_bank; UINT8 m_red_on; diff --git a/src/mame/includes/atarisy2.h b/src/mame/includes/atarisy2.h index 66a7c7ca7ce..b4be360d277 100644 --- a/src/mame/includes/atarisy2.h +++ b/src/mame/includes/atarisy2.h @@ -10,12 +10,16 @@ class atarisy2_state : public atarigen_state { public: atarisy2_state(const machine_config &mconfig, device_type type, const char *tag) - : atarigen_state(mconfig, type, tag) { } + : atarigen_state(mconfig, type, tag), + m_slapstic_base(*this, "slapstic_base"), + m_bankselect(*this, "bankselect"), + m_rombank1(*this, "rombank1"), + m_rombank2(*this, "rombank2") { } - UINT16 * m_slapstic_base; + required_shared_ptr<UINT16> m_slapstic_base; UINT8 m_interrupt_enable; - UINT16 * m_bankselect; + required_shared_ptr<UINT16> m_bankselect; INT8 m_pedal_count; @@ -26,8 +30,8 @@ public: UINT8 m_p2portwr_state; UINT8 m_p2portrd_state; - UINT16 * m_rombank1; - UINT16 * m_rombank2; + required_shared_ptr<UINT16> m_rombank1; + required_shared_ptr<UINT16> m_rombank2; UINT8 m_sound_reset_state; diff --git a/src/mame/includes/dynax.h b/src/mame/includes/dynax.h index 21d6db5115b..39555be2207 100644 --- a/src/mame/includes/dynax.h +++ b/src/mame/includes/dynax.h @@ -135,9 +135,9 @@ public: int m_okibank; UINT8 m_rongrong_blitter_busy_select; - required_shared_ptr<UINT16> m_dsw_sel16; - required_shared_ptr<UINT16> m_protection1; - required_shared_ptr<UINT16> m_protection2; + optional_shared_ptr<UINT16> m_dsw_sel16; + optional_shared_ptr<UINT16> m_protection1; + optional_shared_ptr<UINT16> m_protection2; UINT8 m_prot_val; UINT16 m_prot_16; UINT16 m_quiz365_protection[2]; diff --git a/src/mame/includes/galaxold.h b/src/mame/includes/galaxold.h index db9329102f4..e432adaf927 100644 --- a/src/mame/includes/galaxold.h +++ b/src/mame/includes/galaxold.h @@ -35,11 +35,11 @@ public: required_shared_ptr<UINT8> m_videoram; required_shared_ptr<UINT8> m_spriteram; - required_shared_ptr<UINT8> m_spriteram2; + optional_shared_ptr<UINT8> m_spriteram2; required_shared_ptr<UINT8> m_attributesram; required_shared_ptr<UINT8> m_bulletsram; - required_shared_ptr<UINT8> m_rockclim_videoram; - required_shared_ptr<UINT8> m_racknrol_tiles_bank; + optional_shared_ptr<UINT8> m_rockclim_videoram; + optional_shared_ptr<UINT8> m_racknrol_tiles_bank; int m_irq_line; UINT8 m__4in1_bank; diff --git a/src/mame/includes/itech32.h b/src/mame/includes/itech32.h index 50ec6c6d9e6..eec74ff8f2c 100644 --- a/src/mame/includes/itech32.h +++ b/src/mame/includes/itech32.h @@ -20,6 +20,7 @@ public: itech32_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag) , m_main_ram(*this, "main_ram"), + m_nvram(*this, "nvram"), m_video(*this, "video"), m_main_rom(*this, "main_rom"), m_drivedge_zbuf_control(*this, "drivedge_zctl"), @@ -27,7 +28,8 @@ public: m_tms1_ram(*this, "tms1_ram"), m_tms2_ram(*this, "tms2_ram"){ } - required_shared_ptr<UINT16> m_main_ram; + optional_shared_ptr<UINT16> m_main_ram; + required_shared_ptr<UINT16> m_nvram; required_shared_ptr<UINT16> m_video; required_shared_ptr<UINT16> m_main_rom; required_shared_ptr<UINT32> m_drivedge_zbuf_control; diff --git a/src/mame/includes/nmk16.h b/src/mame/includes/nmk16.h index 6ec81778404..ba031fa6cd3 100644 --- a/src/mame/includes/nmk16.h +++ b/src/mame/includes/nmk16.h @@ -27,8 +27,8 @@ public: required_shared_ptr<UINT16> m_nmk_bgvideoram1; required_shared_ptr<UINT16> m_nmk_bgvideoram2; required_shared_ptr<UINT16> m_nmk_bgvideoram3; - required_shared_ptr<UINT16> m_afega_scroll_0; - required_shared_ptr<UINT16> m_afega_scroll_1; + optional_shared_ptr<UINT16> m_afega_scroll_0; + optional_shared_ptr<UINT16> m_afega_scroll_1; int m_simple_scroll; int m_redraw_bitmap; UINT16 *m_spriteram_old; diff --git a/src/mame/includes/snowbros.h b/src/mame/includes/snowbros.h index 93e0272d086..d84e268d168 100644 --- a/src/mame/includes/snowbros.h +++ b/src/mame/includes/snowbros.h @@ -14,7 +14,7 @@ public: int m_sb3_music; UINT8 m_semicom_prot_offset; UINT8 *m_spriteram; - required_shared_ptr<UINT16> m_bootleg_spriteram16; + optional_shared_ptr<UINT16> m_bootleg_spriteram16; required_device<cpu_device> m_maincpu; DECLARE_WRITE16_MEMBER(snowbros_flipscreen_w); diff --git a/src/mame/includes/system1.h b/src/mame/includes/system1.h index 18d703ff614..d40375277f9 100644 --- a/src/mame/includes/system1.h +++ b/src/mame/includes/system1.h @@ -10,8 +10,8 @@ public: required_shared_ptr<UINT8> m_ram; required_shared_ptr<UINT8> m_spriteram; - required_shared_ptr<UINT8> m_nob_mcu_latch; - required_shared_ptr<UINT8> m_nob_mcu_status; + optional_shared_ptr<UINT8> m_nob_mcu_latch; + optional_shared_ptr<UINT8> m_nob_mcu_status; UINT8 *m_videoram; void (*m_videomode_custom)(running_machine &machine, UINT8 data, UINT8 prevdata); diff --git a/src/mame/includes/taito_f3.h b/src/mame/includes/taito_f3.h index 472b0c3e497..d28ffad5a2d 100644 --- a/src/mame/includes/taito_f3.h +++ b/src/mame/includes/taito_f3.h @@ -49,7 +49,7 @@ public: UINT16 *m_videoram; UINT16 *m_spriteram; - required_shared_ptr<UINT32> m_f3_ram; + optional_shared_ptr<UINT32> m_f3_ram; UINT16 *m_f3_vram; UINT16 *m_f3_line_ram; UINT16 *m_f3_pf_data; diff --git a/src/mame/machine/atarigen.c b/src/mame/machine/atarigen.c index f27266d56f1..26020f774d2 100644 --- a/src/mame/machine/atarigen.c +++ b/src/mame/machine/atarigen.c @@ -992,7 +992,7 @@ void atarivc_reset(screen_device &screen, UINT16 *eof_data, int playfields) atarigen_state *state = screen.machine().driver_data<atarigen_state>(); /* this allows us to manually reset eof_data to NULL if it's not used */ - state->m_atarivc_eof_data = eof_data; + state->m_atarivc_eof_data.set_target(eof_data, 0x100); state->m_atarivc_playfields = playfields; /* clear the RAM we use */ diff --git a/src/mame/machine/atarigen.h b/src/mame/machine/atarigen.h index 43fcf2f9a04..3a5db7a6972 100644 --- a/src/mame/machine/atarigen.h +++ b/src/mame/machine/atarigen.h @@ -98,7 +98,16 @@ public: : driver_device(mconfig, type, tag), m_earom(*this, "earom"), m_eeprom(*this, "eeprom"), - m_eeprom32(*this, "eeprom") { } + m_eeprom32(*this, "eeprom"), + m_playfield(*this, "playfield"), + m_playfield2(*this, "playfield2"), + m_playfield_upper(*this, "playfield_upper"), + m_alpha(*this, "alpha"), + m_alpha2(*this, "alpha2"), + m_xscroll(*this, "xscroll"), + m_yscroll(*this, "yscroll"), + m_atarivc_data(*this, "atarivc_data"), + m_atarivc_eof_data(*this, "atarivc_eof_data") { } // users must call through to these virtual void machine_start(); @@ -126,13 +135,13 @@ public: UINT8 m_cpu_to_sound_ready; UINT8 m_sound_to_cpu_ready; - UINT16 * m_playfield; - UINT16 * m_playfield2; - UINT16 * m_playfield_upper; - UINT16 * m_alpha; - UINT16 * m_alpha2; - UINT16 * m_xscroll; - UINT16 * m_yscroll; + optional_shared_ptr<UINT16> m_playfield; + optional_shared_ptr<UINT16> m_playfield2; + optional_shared_ptr<UINT16> m_playfield_upper; + optional_shared_ptr<UINT16> m_alpha; + optional_shared_ptr<UINT16> m_alpha2; + optional_shared_ptr<UINT16> m_xscroll; + optional_shared_ptr<UINT16> m_yscroll; UINT32 * m_playfield32; UINT32 * m_alpha32; @@ -142,8 +151,8 @@ public: tilemap_t * m_alpha_tilemap; tilemap_t * m_alpha2_tilemap; - UINT16 * m_atarivc_data; - UINT16 * m_atarivc_eof_data; + optional_shared_ptr<UINT16> m_atarivc_data; + optional_shared_ptr<UINT16> m_atarivc_eof_data; atarivc_state_desc m_atarivc_state; /* internal state */ diff --git a/src/mame/video/atarisy2.c b/src/mame/video/atarisy2.c index bc1130458f1..f1e9d65edb0 100644 --- a/src/mame/video/atarisy2.c +++ b/src/mame/video/atarisy2.c @@ -96,8 +96,8 @@ VIDEO_START( atarisy2 ) atarisy2_state *state = machine.driver_data<atarisy2_state>(); /* initialize banked memory */ - state->m_alpha = &state->m_vram[0x0000]; - state->m_playfield = &state->m_vram[0x2000]; + state->m_alpha.set_target(&state->m_vram[0x0000], 0x2000); + state->m_playfield.set_target(&state->m_vram[0x2000], 0x2000); /* initialize the playfield */ state->m_playfield_tilemap = tilemap_create(machine, get_playfield_tile_info, tilemap_scan_rows, 8,8, 128,64); |