summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/snk.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/snk.cpp')
-rw-r--r--src/mame/drivers/snk.cpp622
1 files changed, 311 insertions, 311 deletions
diff --git a/src/mame/drivers/snk.cpp b/src/mame/drivers/snk.cpp
index 4e0e22b5339..c3e162d92a2 100644
--- a/src/mame/drivers/snk.cpp
+++ b/src/mame/drivers/snk.cpp
@@ -822,49 +822,49 @@ CUSTOM_INPUT_MEMBER(snk_state::snk_bonus_r)
void snk_state::marvins_cpuA_map(address_map &map)
{
map(0x0000, 0x5fff).rom();
- map(0x6000, 0x6000).w(this, FUNC(snk_state::marvins_palette_bank_w));
+ map(0x6000, 0x6000).w(FUNC(snk_state::marvins_palette_bank_w));
map(0x8000, 0x8000).portr("IN0");
map(0x8100, 0x8100).portr("IN1");
map(0x8200, 0x8200).portr("IN2");
- map(0x8300, 0x8300).w(this, FUNC(snk_state::marvins_soundlatch_w));
+ map(0x8300, 0x8300).w(FUNC(snk_state::marvins_soundlatch_w));
map(0x8400, 0x8400).portr("DSW1");
map(0x8500, 0x8500).portr("DSW2");
- map(0x8600, 0x8600).w(this, FUNC(snk_state::marvins_flipscreen_w));
- map(0x8700, 0x8700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0x8600, 0x8600).w(FUNC(snk_state::marvins_flipscreen_w));
+ map(0x8700, 0x8700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
map(0xc000, 0xcfff).ram().share("spriteram"); // + work ram
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
map(0xd800, 0xdfff).ram().share("share3");
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
map(0xe800, 0xefff).ram().share("share5");
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
- map(0xf800, 0xf800).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xf900, 0xf900).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xfa00, 0xfa00).w(this, FUNC(snk_state::snk_fg_scrolly_w));
- map(0xfb00, 0xfb00).w(this, FUNC(snk_state::snk_fg_scrollx_w));
- map(0xfc00, 0xfc00).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xfd00, 0xfd00).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xfe00, 0xfe00).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xff00, 0xff00).w(this, FUNC(snk_state::marvins_scroll_msb_w));
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xf800, 0xf800).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xf900, 0xf900).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xfa00, 0xfa00).w(FUNC(snk_state::snk_fg_scrolly_w));
+ map(0xfb00, 0xfb00).w(FUNC(snk_state::snk_fg_scrollx_w));
+ map(0xfc00, 0xfc00).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xfd00, 0xfd00).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xfe00, 0xfe00).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xff00, 0xff00).w(FUNC(snk_state::marvins_scroll_msb_w));
}
void snk_state::marvins_cpuB_map(address_map &map)
{
map(0x0000, 0x5fff).rom();
- map(0x8700, 0x8700).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0x8700, 0x8700).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
map(0xc000, 0xcfff).ram().share("spriteram");
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
map(0xd800, 0xdfff).ram().share("share3");
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
map(0xe800, 0xefff).ram().share("share5");
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
- map(0xf800, 0xf800).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xf900, 0xf900).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xfa00, 0xfa00).w(this, FUNC(snk_state::snk_fg_scrolly_w));
- map(0xfb00, 0xfb00).w(this, FUNC(snk_state::snk_fg_scrollx_w));
- map(0xfc00, 0xfc00).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xfd00, 0xfd00).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xfe00, 0xfe00).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xff00, 0xff00).w(this, FUNC(snk_state::marvins_scroll_msb_w));
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xf800, 0xf800).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xf900, 0xf900).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xfa00, 0xfa00).w(FUNC(snk_state::snk_fg_scrolly_w));
+ map(0xfb00, 0xfb00).w(FUNC(snk_state::snk_fg_scrollx_w));
+ map(0xfc00, 0xfc00).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xfd00, 0xfd00).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xfe00, 0xfe00).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xff00, 0xff00).w(FUNC(snk_state::marvins_scroll_msb_w));
}
@@ -875,46 +875,46 @@ void snk_state::madcrash_cpuA_map(address_map &map)
map(0x8000, 0x8000).portr("IN0");
map(0x8100, 0x8100).portr("IN1");
map(0x8200, 0x8200).portr("IN2");
- map(0x8300, 0x8300).w(this, FUNC(snk_state::marvins_soundlatch_w));
+ map(0x8300, 0x8300).w(FUNC(snk_state::marvins_soundlatch_w));
map(0x8400, 0x8400).portr("DSW1");
map(0x8500, 0x8500).portr("DSW2");
- map(0x8600, 0x8600).mirror(0xff).w(this, FUNC(snk_state::marvins_flipscreen_w));
- map(0x8700, 0x8700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0x8600, 0x8600).mirror(0xff).w(FUNC(snk_state::marvins_flipscreen_w));
+ map(0x8700, 0x8700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
map(0xc000, 0xc7ff).ram().share("spriteram"); // + work ram
- map(0xc800, 0xc800).mirror(0xff).w(this, FUNC(snk_state::marvins_palette_bank_w));
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xc800, 0xc800).mirror(0xff).w(FUNC(snk_state::marvins_palette_bank_w));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share3");
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
map(0xe800, 0xefff).ram().share("share5");
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
- map(0xf800, 0xf800).mirror(0xff).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xf900, 0xf900).mirror(0xff).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xfa00, 0xfa00).mirror(0xff).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xfb00, 0xfb00).mirror(0xff).w(this, FUNC(snk_state::marvins_scroll_msb_w));
- map(0xfc00, 0xfc00).mirror(0xff).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xfd00, 0xfd00).mirror(0xff).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xfe00, 0xfe00).mirror(0xff).w(this, FUNC(snk_state::snk_fg_scrolly_w));
- map(0xff00, 0xff00).mirror(0xff).w(this, FUNC(snk_state::snk_fg_scrollx_w));
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xf800, 0xf800).mirror(0xff).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xf900, 0xf900).mirror(0xff).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xfa00, 0xfa00).mirror(0xff).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xfb00, 0xfb00).mirror(0xff).w(FUNC(snk_state::marvins_scroll_msb_w));
+ map(0xfc00, 0xfc00).mirror(0xff).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xfd00, 0xfd00).mirror(0xff).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xfe00, 0xfe00).mirror(0xff).w(FUNC(snk_state::snk_fg_scrolly_w));
+ map(0xff00, 0xff00).mirror(0xff).w(FUNC(snk_state::snk_fg_scrollx_w));
}
void snk_state::madcrash_cpuB_map(address_map &map)
{
map(0x0000, 0x9fff).rom();
- map(0x8700, 0x8700).w(this, FUNC(snk_state::snk_cpuB_nmi_ack_w)); // vangrd2
- map(0xa000, 0xa000).w(this, FUNC(snk_state::snk_cpuB_nmi_ack_w)); // madcrash
- map(0xc000, 0xc7ff).ram().w(this, FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
+ map(0x8700, 0x8700).w(FUNC(snk_state::snk_cpuB_nmi_ack_w)); // vangrd2
+ map(0xa000, 0xa000).w(FUNC(snk_state::snk_cpuB_nmi_ack_w)); // madcrash
+ map(0xc000, 0xc7ff).ram().w(FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
map(0xc800, 0xcfff).ram().share("share5");
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
- map(0xd800, 0xd800).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xd900, 0xd900).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xda00, 0xda00).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xdb00, 0xdb00).w(this, FUNC(snk_state::marvins_scroll_msb_w));
- map(0xdc00, 0xdc00).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xdd00, 0xdd00).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xde00, 0xde00).w(this, FUNC(snk_state::snk_fg_scrolly_w));
- map(0xdf00, 0xdf00).w(this, FUNC(snk_state::snk_fg_scrollx_w));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xd800, 0xd800).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xd900, 0xd900).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xda00, 0xda00).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xdb00, 0xdb00).w(FUNC(snk_state::marvins_scroll_msb_w));
+ map(0xdc00, 0xdc00).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xdd00, 0xdd00).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xde00, 0xde00).w(FUNC(snk_state::snk_fg_scrolly_w));
+ map(0xdf00, 0xdf00).w(FUNC(snk_state::snk_fg_scrollx_w));
map(0xe000, 0xe7ff).ram().share("spriteram");
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
map(0xf800, 0xffff).ram().share("share3");
}
@@ -924,47 +924,47 @@ void snk_state::madcrush_cpuA_map(address_map &map)
map(0x8000, 0x8000).portr("IN0");
map(0x8100, 0x8100).portr("IN1");
map(0x8200, 0x8200).portr("IN2");
- map(0x8300, 0x8300).w(this, FUNC(snk_state::marvins_soundlatch_w));
+ map(0x8300, 0x8300).w(FUNC(snk_state::marvins_soundlatch_w));
map(0x8400, 0x8400).portr("DSW1");
map(0x8500, 0x8500).portr("DSW2");
- map(0x8600, 0x8600).mirror(0xff).w(this, FUNC(snk_state::marvins_flipscreen_w));
- map(0x8700, 0x8700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0x8600, 0x8600).mirror(0xff).w(FUNC(snk_state::marvins_flipscreen_w));
+ map(0x8700, 0x8700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
map(0xc000, 0xc7ff).ram().share("spriteram"); // + work ram
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
- map(0xc800, 0xc800).mirror(0xff).w(this, FUNC(snk_state::marvins_palette_bank_w));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
+ map(0xc800, 0xc800).mirror(0xff).w(FUNC(snk_state::marvins_palette_bank_w));
map(0xd800, 0xdfff).ram().share("share5");
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
map(0xe800, 0xefff).ram().share("share3");
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
- map(0xf800, 0xf800).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xf900, 0xf900).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xfa00, 0xfa00).w(this, FUNC(snk_state::snk_fg_scrolly_w));
- map(0xfb00, 0xfb00).w(this, FUNC(snk_state::snk_fg_scrollx_w));
- map(0xfc00, 0xfc00).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xfd00, 0xfd00).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xfe00, 0xfe00).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xff00, 0xff00).w(this, FUNC(snk_state::marvins_scroll_msb_w));
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xf800, 0xf800).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xf900, 0xf900).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xfa00, 0xfa00).w(FUNC(snk_state::snk_fg_scrolly_w));
+ map(0xfb00, 0xfb00).w(FUNC(snk_state::snk_fg_scrollx_w));
+ map(0xfc00, 0xfc00).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xfd00, 0xfd00).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xfe00, 0xfe00).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xff00, 0xff00).w(FUNC(snk_state::marvins_scroll_msb_w));
}
void snk_state::madcrush_cpuB_map(address_map &map)
{
map(0x0000, 0x9fff).rom();
- map(0xa000, 0xa000).w(this, FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xa000, 0xa000).w(FUNC(snk_state::snk_cpuB_nmi_ack_w));
map(0xc000, 0xc7ff).ram().share("spriteram"); // + work ram
map(0xc800, 0xcfff).ram().share("share5");
- map(0xc800, 0xc800).mirror(0xff).w(this, FUNC(snk_state::marvins_palette_bank_w));
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram"); // ??
+ map(0xc800, 0xc800).mirror(0xff).w(FUNC(snk_state::marvins_palette_bank_w));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::marvins_fg_videoram_w)).share("fg_videoram");
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram"); // ??
map(0xe800, 0xefff).ram().share("share3");
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
- map(0xf800, 0xf800).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xf900, 0xf900).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xfa00, 0xfa00).w(this, FUNC(snk_state::snk_fg_scrolly_w));
- map(0xfb00, 0xfb00).w(this, FUNC(snk_state::snk_fg_scrollx_w));
- map(0xfc00, 0xfc00).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xfd00, 0xfd00).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xfe00, 0xfe00).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xff00, 0xff00).w(this, FUNC(snk_state::marvins_scroll_msb_w));
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xf800, 0xf800).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xf900, 0xf900).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xfa00, 0xfa00).w(FUNC(snk_state::snk_fg_scrolly_w));
+ map(0xfb00, 0xfb00).w(FUNC(snk_state::snk_fg_scrollx_w));
+ map(0xfc00, 0xfc00).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xfd00, 0xfd00).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xfe00, 0xfe00).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xff00, 0xff00).w(FUNC(snk_state::marvins_scroll_msb_w));
}
@@ -974,29 +974,29 @@ void snk_state::jcross_cpuA_map(address_map &map)
map(0xa000, 0xa000).portr("IN0");
map(0xa100, 0xa100).portr("IN1");
map(0xa200, 0xa200).portr("IN2");
- map(0xa300, 0xa300).w(this, FUNC(snk_state::sgladiat_soundlatch_w));
+ map(0xa300, 0xa300).w(FUNC(snk_state::sgladiat_soundlatch_w));
map(0xa400, 0xa400).portr("DSW1");
map(0xa500, 0xa500).portr("DSW2");
- map(0xa600, 0xa600).w(this, FUNC(snk_state::sgladiat_flipscreen_w)); // flip screen, bg palette bank
- map(0xa700, 0xa700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xd300, 0xd300).w(this, FUNC(snk_state::jcross_scroll_msb_w));
- map(0xd400, 0xd400).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xd500, 0xd500).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xd600, 0xd600).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xd700, 0xd700).w(this, FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xa600, 0xa600).w(FUNC(snk_state::sgladiat_flipscreen_w)); // flip screen, bg palette bank
+ map(0xa700, 0xa700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xd300, 0xd300).w(FUNC(snk_state::jcross_scroll_msb_w));
+ map(0xd400, 0xd400).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xd500, 0xd500).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xd600, 0xd600).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xd700, 0xd700).w(FUNC(snk_state::snk_bg_scrollx_w));
map(0xd800, 0xdfff).ram().share("spriteram"); // + work ram
- map(0xe000, 0xefff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xe000, 0xefff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
map(0xffff, 0xffff).nopw(); // simply a program patch to not write to two not existing video registers?
}
void snk_state::jcross_cpuB_map(address_map &map)
{
map(0x0000, 0x7fff).rom();
- map(0xa700, 0xa700).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xa700, 0xa700).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
map(0xc000, 0xc7ff).ram().share("spriteram");
- map(0xc800, 0xd7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xc800, 0xd7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1006,37 +1006,37 @@ void snk_state::sgladiat_cpuA_map(address_map &map)
map(0xa000, 0xa000).portr("IN0");
map(0xa100, 0xa100).portr("IN1");
map(0xa200, 0xa200).portr("IN2");
- map(0xa300, 0xa300).w(this, FUNC(snk_state::sgladiat_soundlatch_w));
+ map(0xa300, 0xa300).w(FUNC(snk_state::sgladiat_soundlatch_w));
map(0xa400, 0xa400).portr("DSW1");
map(0xa500, 0xa500).portr("DSW2");
- map(0xa600, 0xa600).w(this, FUNC(snk_state::sgladiat_flipscreen_w)); // flip screen, bg palette bank
- map(0xa700, 0xa700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xa600, 0xa600).w(FUNC(snk_state::sgladiat_flipscreen_w)); // flip screen, bg palette bank
+ map(0xa700, 0xa700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
map(0xd200, 0xd200).nopw(); // unknown
- map(0xd300, 0xd300).w(this, FUNC(snk_state::sgladiat_scroll_msb_w));
- map(0xd400, 0xd400).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xd500, 0xd500).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xd600, 0xd600).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xd700, 0xd700).w(this, FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xd300, 0xd300).w(FUNC(snk_state::sgladiat_scroll_msb_w));
+ map(0xd400, 0xd400).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xd500, 0xd500).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xd600, 0xd600).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xd700, 0xd700).w(FUNC(snk_state::snk_bg_scrollx_w));
map(0xd800, 0xdfff).ram().share("spriteram"); // + work ram
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
map(0xe800, 0xefff).ram();
- map(0xf000, 0xf7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xf000, 0xf7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::sgladiat_cpuB_map(address_map &map)
{
map(0x0000, 0x7fff).rom();
- map(0xa000, 0xa000).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
- map(0xa600, 0xa600).w(this, FUNC(snk_state::sgladiat_flipscreen_w)); // flip screen, bg palette bank
+ map(0xa000, 0xa000).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xa600, 0xa600).w(FUNC(snk_state::sgladiat_flipscreen_w)); // flip screen, bg palette bank
map(0xc000, 0xc7ff).ram().share("spriteram");
- map(0xc800, 0xcfff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xc800, 0xcfff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
map(0xda00, 0xda00).nopw(); // unknown
- map(0xdb00, 0xdb00).w(this, FUNC(snk_state::sgladiat_scroll_msb_w));
- map(0xdc00, 0xdc00).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xdd00, 0xdd00).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xde00, 0xde00).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xdf00, 0xdf00).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xe000, 0xe7ff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xdb00, 0xdb00).w(FUNC(snk_state::sgladiat_scroll_msb_w));
+ map(0xdc00, 0xdc00).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xdd00, 0xdd00).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xde00, 0xde00).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xdf00, 0xdf00).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xe000, 0xe7ff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1046,28 +1046,28 @@ void snk_state::hal21_cpuA_map(address_map &map)
map(0xc000, 0xc000).portr("IN0");
map(0xc100, 0xc100).portr("IN1");
map(0xc200, 0xc200).portr("IN2");
- map(0xc300, 0xc300).w(this, FUNC(snk_state::sgladiat_soundlatch_w));
+ map(0xc300, 0xc300).w(FUNC(snk_state::sgladiat_soundlatch_w));
map(0xc400, 0xc400).portr("DSW1");
map(0xc500, 0xc500).portr("DSW2");
- map(0xc600, 0xc600).w(this, FUNC(snk_state::hal21_flipscreen_w)); // flip screen, bg tile and palette bank
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xd300, 0xd300).w(this, FUNC(snk_state::jcross_scroll_msb_w));
- map(0xd400, 0xd400).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xd500, 0xd500).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xd600, 0xd600).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xd700, 0xd700).w(this, FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc600, 0xc600).w(FUNC(snk_state::hal21_flipscreen_w)); // flip screen, bg tile and palette bank
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xd300, 0xd300).w(FUNC(snk_state::jcross_scroll_msb_w));
+ map(0xd400, 0xd400).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xd500, 0xd500).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xd600, 0xd600).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xd700, 0xd700).w(FUNC(snk_state::snk_bg_scrollx_w));
map(0xe000, 0xe7ff).ram().share("spriteram"); // + work ram
- map(0xe800, 0xf7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xe800, 0xf7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::hal21_cpuB_map(address_map &map)
{
map(0x0000, 0x9fff).rom();
- map(0xa000, 0xa000).w(this, FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xa000, 0xa000).w(FUNC(snk_state::snk_cpuB_nmi_ack_w));
map(0xc000, 0xc7ff).ram().share("spriteram");
- map(0xd000, 0xdfff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
- map(0xe800, 0xefff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xd000, 0xdfff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xe800, 0xefff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1077,31 +1077,31 @@ void snk_state::aso_cpuA_map(address_map &map)
map(0xc000, 0xc000).portr("IN0");
map(0xc100, 0xc100).portr("IN1");
map(0xc200, 0xc200).portr("IN2");
- map(0xc400, 0xc400).w(this, FUNC(snk_state::snk_soundlatch_w));
+ map(0xc400, 0xc400).w(FUNC(snk_state::snk_soundlatch_w));
map(0xc500, 0xc500).portr("DSW1");
map(0xc600, 0xc600).portr("DSW2");
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xc800, 0xc800).w(this, FUNC(snk_state::aso_videoattrs_w)); // flip screen, scroll msb
- map(0xc900, 0xc900).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xca00, 0xca00).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xcb00, 0xcb00).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xcc00, 0xcc00).w(this, FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xc800, 0xc800).w(FUNC(snk_state::aso_videoattrs_w)); // flip screen, scroll msb
+ map(0xc900, 0xc900).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xca00, 0xca00).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xcb00, 0xcb00).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xcc00, 0xcc00).w(FUNC(snk_state::snk_bg_scrollx_w));
map(0xce00, 0xce00).nopw(); // always 05?
- map(0xcf00, 0xcf00).w(this, FUNC(snk_state::aso_bg_bank_w)); // tile and palette bank
+ map(0xcf00, 0xcf00).w(FUNC(snk_state::aso_bg_bank_w)); // tile and palette bank
map(0xd800, 0xdfff).ram().share("share1");
map(0xe000, 0xe7ff).ram().share("spriteram"); // + work ram
- map(0xe800, 0xf7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xe800, 0xf7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::aso_cpuB_map(address_map &map)
{
map(0x0000, 0xbfff).rom();
- map(0xc000, 0xc000).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xc000, 0xc000).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
map(0xc800, 0xcfff).ram().share("share1");
map(0xd000, 0xd7ff).ram().share("spriteram");
- map(0xd800, 0xe7ff).ram().w(this, FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xd800, 0xe7ff).ram().w(FUNC(snk_state::marvins_bg_videoram_w)).share("bg_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1113,31 +1113,31 @@ void snk_state::tnk3_cpuA_map(address_map &map)
map(0xc200, 0xc200).portr("IN2");
// c300 is an input in tnk3, output in athena/fitegolf (coin counter)
// and in countryc (trackball select) (see DRIVER_INIT).
- map(0xc300, 0xc300).portr("IN3").w(this, FUNC(snk_state::athena_coin_counter_w));
- map(0xc400, 0xc400).w(this, FUNC(snk_state::snk_soundlatch_w));
+ map(0xc300, 0xc300).portr("IN3").w(FUNC(snk_state::athena_coin_counter_w));
+ map(0xc400, 0xc400).w(FUNC(snk_state::snk_soundlatch_w));
map(0xc500, 0xc500).portr("DSW1");
map(0xc600, 0xc600).portr("DSW2");
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xc800, 0xc800).w(this, FUNC(snk_state::tnk3_videoattrs_w)); // flip screen, char bank, scroll msb
- map(0xc900, 0xc900).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xca00, 0xca00).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xcb00, 0xcb00).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xcc00, 0xcc00).w(this, FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xc800, 0xc800).w(FUNC(snk_state::tnk3_videoattrs_w)); // flip screen, char bank, scroll msb
+ map(0xc900, 0xc900).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xca00, 0xca00).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xcb00, 0xcb00).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xcc00, 0xcc00).w(FUNC(snk_state::snk_bg_scrollx_w));
map(0xcf00, 0xcf00).nopw(); // fitegolf/countryc only. Either 0 or 1. Video related?
map(0xd000, 0xd7ff).ram().share("spriteram"); // + work ram
- map(0xd800, 0xf7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xd800, 0xf7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::tnk3_cpuB_map(address_map &map)
{
map(0x0000, 0xbfff).rom();
- map(0xc000, 0xc000).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // tnk3, athena
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // fitegolf
+ map(0xc000, 0xc000).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // tnk3, athena
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // fitegolf
map(0xc800, 0xcfff).ram().share("spriteram");
- map(0xd000, 0xefff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xd000, 0xefff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xf000, 0xf7ff).ram();
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1147,54 +1147,54 @@ void snk_state::ikari_cpuA_map(address_map &map)
map(0xc000, 0xc000).portr("IN0");
map(0xc100, 0xc100).portr("IN1");
map(0xc200, 0xc200).portr("IN2");
- map(0xc300, 0xc300).portr("IN3").w(this, FUNC(snk_state::ikari_coin_counter_w)); // ikarijp doesn't use the coin counter
- map(0xc400, 0xc400).w(this, FUNC(snk_state::snk_soundlatch_w));
+ map(0xc300, 0xc300).portr("IN3").w(FUNC(snk_state::ikari_coin_counter_w)); // ikarijp doesn't use the coin counter
+ map(0xc400, 0xc400).w(FUNC(snk_state::snk_soundlatch_w));
map(0xc500, 0xc500).portr("DSW1");
map(0xc600, 0xc600).portr("DSW2");
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xc800, 0xc800).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xc880, 0xc880).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xc900, 0xc900).w(this, FUNC(snk_state::ikari_bg_scroll_msb_w));
- map(0xc980, 0xc980).w(this, FUNC(snk_state::ikari_unknown_video_w));
- map(0xca00, 0xca00).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xca80, 0xca80).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xcb00, 0xcb00).w(this, FUNC(snk_state::snk_sp32_scrolly_w));
- map(0xcb80, 0xcb80).w(this, FUNC(snk_state::snk_sp32_scrollx_w));
- map(0xcc00, 0xcc00).w(this, FUNC(snk_state::hardflags_scrolly_w));
- map(0xcc80, 0xcc80).w(this, FUNC(snk_state::hardflags_scrollx_w));
- map(0xcd00, 0xcd00).w(this, FUNC(snk_state::ikari_sp_scroll_msb_w));
- map(0xcd80, 0xcd80).w(this, FUNC(snk_state::hardflags_scroll_msb_w));
- map(0xce00, 0xce00).r(this, FUNC(snk_state::hardflags1_r));
- map(0xce20, 0xce20).r(this, FUNC(snk_state::hardflags2_r));
- map(0xce40, 0xce40).r(this, FUNC(snk_state::hardflags3_r));
- map(0xce60, 0xce60).r(this, FUNC(snk_state::hardflags4_r));
- map(0xce80, 0xce80).r(this, FUNC(snk_state::hardflags5_r));
- map(0xcea0, 0xcea0).r(this, FUNC(snk_state::hardflags6_r));
- map(0xcee0, 0xcee0).r(this, FUNC(snk_state::hardflags7_r));
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xc800, 0xc800).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xc880, 0xc880).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc900, 0xc900).w(FUNC(snk_state::ikari_bg_scroll_msb_w));
+ map(0xc980, 0xc980).w(FUNC(snk_state::ikari_unknown_video_w));
+ map(0xca00, 0xca00).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xca80, 0xca80).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xcb00, 0xcb00).w(FUNC(snk_state::snk_sp32_scrolly_w));
+ map(0xcb80, 0xcb80).w(FUNC(snk_state::snk_sp32_scrollx_w));
+ map(0xcc00, 0xcc00).w(FUNC(snk_state::hardflags_scrolly_w));
+ map(0xcc80, 0xcc80).w(FUNC(snk_state::hardflags_scrollx_w));
+ map(0xcd00, 0xcd00).w(FUNC(snk_state::ikari_sp_scroll_msb_w));
+ map(0xcd80, 0xcd80).w(FUNC(snk_state::hardflags_scroll_msb_w));
+ map(0xce00, 0xce00).r(FUNC(snk_state::hardflags1_r));
+ map(0xce20, 0xce20).r(FUNC(snk_state::hardflags2_r));
+ map(0xce40, 0xce40).r(FUNC(snk_state::hardflags3_r));
+ map(0xce60, 0xce60).r(FUNC(snk_state::hardflags4_r));
+ map(0xce80, 0xce80).r(FUNC(snk_state::hardflags5_r));
+ map(0xcea0, 0xcea0).r(FUNC(snk_state::hardflags6_r));
+ map(0xcee0, 0xcee0).r(FUNC(snk_state::hardflags7_r));
// note the mirror. ikari and victroad use d800, ikarijp uses d000
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).mirror(0x0800).share("bg_videoram");
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).mirror(0x0800).share("bg_videoram");
map(0xe000, 0xf7ff).ram().share("spriteram"); // + work ram
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::ikari_cpuB_map(address_map &map)
{
map(0x0000, 0xbfff).rom();
- map(0xc000, 0xc000).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
- map(0xc980, 0xc980).w(this, FUNC(snk_state::ikari_unknown_video_w));
- map(0xcc00, 0xcc00).w(this, FUNC(snk_state::hardflags_scrolly_w));
- map(0xcc80, 0xcc80).w(this, FUNC(snk_state::hardflags_scrollx_w));
- map(0xcd80, 0xcd80).w(this, FUNC(snk_state::hardflags_scroll_msb_w));
- map(0xce00, 0xce00).r(this, FUNC(snk_state::hardflags1_r));
- map(0xce20, 0xce20).r(this, FUNC(snk_state::hardflags2_r));
- map(0xce40, 0xce40).r(this, FUNC(snk_state::hardflags3_r));
- map(0xce60, 0xce60).r(this, FUNC(snk_state::hardflags4_r));
- map(0xce80, 0xce80).r(this, FUNC(snk_state::hardflags5_r));
- map(0xcea0, 0xcea0).r(this, FUNC(snk_state::hardflags6_r));
- map(0xcee0, 0xcee0).r(this, FUNC(snk_state::hardflags7_r));
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).mirror(0x0800).share("bg_videoram");
+ map(0xc000, 0xc000).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xc980, 0xc980).w(FUNC(snk_state::ikari_unknown_video_w));
+ map(0xcc00, 0xcc00).w(FUNC(snk_state::hardflags_scrolly_w));
+ map(0xcc80, 0xcc80).w(FUNC(snk_state::hardflags_scrollx_w));
+ map(0xcd80, 0xcd80).w(FUNC(snk_state::hardflags_scroll_msb_w));
+ map(0xce00, 0xce00).r(FUNC(snk_state::hardflags1_r));
+ map(0xce20, 0xce20).r(FUNC(snk_state::hardflags2_r));
+ map(0xce40, 0xce40).r(FUNC(snk_state::hardflags3_r));
+ map(0xce60, 0xce60).r(FUNC(snk_state::hardflags4_r));
+ map(0xce80, 0xce80).r(FUNC(snk_state::hardflags5_r));
+ map(0xcea0, 0xcea0).r(FUNC(snk_state::hardflags6_r));
+ map(0xcee0, 0xcee0).r(FUNC(snk_state::hardflags7_r));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).mirror(0x0800).share("bg_videoram");
map(0xe000, 0xf7ff).ram().share("spriteram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1204,62 +1204,62 @@ void snk_state::bermudat_cpuA_map(address_map &map)
map(0xc000, 0xc000).portr("IN0");
map(0xc100, 0xc100).portr("IN1");
map(0xc200, 0xc200).portr("IN2");
- map(0xc300, 0xc300).portr("IN3").w(this, FUNC(snk_state::ikari_coin_counter_w));
- map(0xc400, 0xc400).w(this, FUNC(snk_state::snk_soundlatch_w));
+ map(0xc300, 0xc300).portr("IN3").w(FUNC(snk_state::ikari_coin_counter_w));
+ map(0xc400, 0xc400).w(FUNC(snk_state::snk_soundlatch_w));
map(0xc500, 0xc500).portr("DSW1");
map(0xc600, 0xc600).portr("DSW2");
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xc800, 0xc800).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xc840, 0xc840).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xc880, 0xc880).w(this, FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
- map(0xc8c0, 0xc8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
- map(0xc900, 0xc900).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xc940, 0xc940).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xc980, 0xc980).w(this, FUNC(snk_state::snk_sp32_scrolly_w));
- map(0xc9c0, 0xc9c0).w(this, FUNC(snk_state::snk_sp32_scrollx_w));
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xc800, 0xc800).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xc840, 0xc840).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc880, 0xc880).w(FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
+ map(0xc8c0, 0xc8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xc900, 0xc900).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xc940, 0xc940).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xc980, 0xc980).w(FUNC(snk_state::snk_sp32_scrolly_w));
+ map(0xc9c0, 0xc9c0).w(FUNC(snk_state::snk_sp32_scrollx_w));
// the "turbo check" addresses are only used by bermudat/bermudaj, not bermudaa/worldwar or the other games
- map(0xca00, 0xca00).w(this, FUNC(snk_state::turbocheck16_1_w));
- map(0xca40, 0xca40).w(this, FUNC(snk_state::turbocheck16_2_w));
- map(0xca80, 0xca80).w(this, FUNC(snk_state::gwara_sp_scroll_msb_w));
- map(0xcac0, 0xcac0).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xcb00, 0xcb00).r(this, FUNC(snk_state::turbocheck16_1_r));
- map(0xcb10, 0xcb10).r(this, FUNC(snk_state::turbocheck16_2_r));
- map(0xcb20, 0xcb20).r(this, FUNC(snk_state::turbocheck16_3_r));
- map(0xcb30, 0xcb30).r(this, FUNC(snk_state::turbocheck16_4_r));
- map(0xcb40, 0xcb40).r(this, FUNC(snk_state::turbocheck16_5_r));
- map(0xcb50, 0xcb50).r(this, FUNC(snk_state::turbocheck16_6_r));
- map(0xcb60, 0xcb60).r(this, FUNC(snk_state::turbocheck16_7_r));
- map(0xcb70, 0xcb70).r(this, FUNC(snk_state::turbocheck16_8_r));
- map(0xcc00, 0xcc00).w(this, FUNC(snk_state::turbocheck32_1_w));
- map(0xcc40, 0xcc40).w(this, FUNC(snk_state::turbocheck32_2_w));
- map(0xcc80, 0xcc80).w(this, FUNC(snk_state::turbocheck_msb_w));
- map(0xccc0, 0xccc0).r(this, FUNC(snk_state::turbocheck32_1_r));
- map(0xccd0, 0xccd0).r(this, FUNC(snk_state::turbocheck32_2_r));
- map(0xcce0, 0xcce0).r(this, FUNC(snk_state::turbocheck32_3_r));
- map(0xccf0, 0xccf0).r(this, FUNC(snk_state::turbocheck32_4_r));
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xca00, 0xca00).w(FUNC(snk_state::turbocheck16_1_w));
+ map(0xca40, 0xca40).w(FUNC(snk_state::turbocheck16_2_w));
+ map(0xca80, 0xca80).w(FUNC(snk_state::gwara_sp_scroll_msb_w));
+ map(0xcac0, 0xcac0).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xcb00, 0xcb00).r(FUNC(snk_state::turbocheck16_1_r));
+ map(0xcb10, 0xcb10).r(FUNC(snk_state::turbocheck16_2_r));
+ map(0xcb20, 0xcb20).r(FUNC(snk_state::turbocheck16_3_r));
+ map(0xcb30, 0xcb30).r(FUNC(snk_state::turbocheck16_4_r));
+ map(0xcb40, 0xcb40).r(FUNC(snk_state::turbocheck16_5_r));
+ map(0xcb50, 0xcb50).r(FUNC(snk_state::turbocheck16_6_r));
+ map(0xcb60, 0xcb60).r(FUNC(snk_state::turbocheck16_7_r));
+ map(0xcb70, 0xcb70).r(FUNC(snk_state::turbocheck16_8_r));
+ map(0xcc00, 0xcc00).w(FUNC(snk_state::turbocheck32_1_w));
+ map(0xcc40, 0xcc40).w(FUNC(snk_state::turbocheck32_2_w));
+ map(0xcc80, 0xcc80).w(FUNC(snk_state::turbocheck_msb_w));
+ map(0xccc0, 0xccc0).r(FUNC(snk_state::turbocheck32_1_r));
+ map(0xccd0, 0xccd0).r(FUNC(snk_state::turbocheck32_2_r));
+ map(0xcce0, 0xcce0).r(FUNC(snk_state::turbocheck32_3_r));
+ map(0xccf0, 0xccf0).r(FUNC(snk_state::turbocheck32_4_r));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share2");
map(0xe000, 0xf7ff).ram().share("spriteram"); // + work ram
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::bermudat_cpuB_map(address_map &map)
{
map(0x0000, 0xbfff).rom();
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
- map(0xc800, 0xc800).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xc840, 0xc840).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xc880, 0xc880).w(this, FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
- map(0xc8c0, 0xc8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
- map(0xc900, 0xc900).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xc940, 0xc940).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xc980, 0xc980).w(this, FUNC(snk_state::snk_sp32_scrolly_w));
- map(0xc9c0, 0xc9c0).w(this, FUNC(snk_state::snk_sp32_scrollx_w));
- map(0xca80, 0xca80).w(this, FUNC(snk_state::gwara_sp_scroll_msb_w));
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xc800, 0xc800).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xc840, 0xc840).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc880, 0xc880).w(FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
+ map(0xc8c0, 0xc8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xc900, 0xc900).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xc940, 0xc940).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xc980, 0xc980).w(FUNC(snk_state::snk_sp32_scrolly_w));
+ map(0xc9c0, 0xc9c0).w(FUNC(snk_state::snk_sp32_scrollx_w));
+ map(0xca80, 0xca80).w(FUNC(snk_state::gwara_sp_scroll_msb_w));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share2");
map(0xe000, 0xf7ff).ram().share("spriteram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1269,37 +1269,37 @@ void snk_state::gwar_cpuA_map(address_map &map)
map(0xc000, 0xc000).portr("IN0");
map(0xc100, 0xc100).portr("IN1");
map(0xc200, 0xc200).portr("IN2");
- map(0xc300, 0xc300).portr("IN3").w(this, FUNC(snk_state::ikari_coin_counter_w));
- map(0xc400, 0xc400).w(this, FUNC(snk_state::snk_soundlatch_w));
+ map(0xc300, 0xc300).portr("IN3").w(FUNC(snk_state::ikari_coin_counter_w));
+ map(0xc400, 0xc400).w(FUNC(snk_state::snk_soundlatch_w));
map(0xc500, 0xc500).portr("DSW1");
map(0xc600, 0xc600).portr("DSW2");
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xc800, 0xc800).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xc840, 0xc840).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xc880, 0xc880).w(this, FUNC(snk_state::gwar_videoattrs_w)); // flip screen, scroll msb
- map(0xc8c0, 0xc8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
- map(0xc900, 0xc900).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xc940, 0xc940).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xc980, 0xc980).w(this, FUNC(snk_state::snk_sp32_scrolly_w));
- map(0xc9c0, 0xc9c0).w(this, FUNC(snk_state::snk_sp32_scrollx_w));
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xc800, 0xc800).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xc840, 0xc840).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc880, 0xc880).w(FUNC(snk_state::gwar_videoattrs_w)); // flip screen, scroll msb
+ map(0xc8c0, 0xc8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xc900, 0xc900).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xc940, 0xc940).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xc980, 0xc980).w(FUNC(snk_state::snk_sp32_scrolly_w));
+ map(0xc9c0, 0xc9c0).w(FUNC(snk_state::snk_sp32_scrollx_w));
map(0xca00, 0xca00).nopw(); // always 0?
map(0xca40, 0xca40).nopw(); // always 0?
- map(0xcac0, 0xcac0).w(this, FUNC(snk_state::snk_sprite_split_point_w));
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xcac0, 0xcac0).w(FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share2");
map(0xe000, 0xf7ff).ram().share("spriteram"); // + work ram
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::gwar_cpuB_map(address_map &map)
{
map(0x0000, 0xbfff).rom();
- map(0xc000, 0xc000).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
- map(0xc8c0, 0xc8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xc000, 0xc000).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xc8c0, 0xc8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share2");
map(0xe000, 0xf7ff).ram().share("spriteram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
@@ -1309,36 +1309,36 @@ void snk_state::gwara_cpuA_map(address_map &map)
map(0xc000, 0xc000).portr("IN0");
map(0xc100, 0xc100).portr("IN1");
map(0xc200, 0xc200).portr("IN2");
- map(0xc300, 0xc300).portr("IN3").w(this, FUNC(snk_state::ikari_coin_counter_w));
- map(0xc400, 0xc400).w(this, FUNC(snk_state::snk_soundlatch_w));
+ map(0xc300, 0xc300).portr("IN3").w(FUNC(snk_state::ikari_coin_counter_w));
+ map(0xc400, 0xc400).w(FUNC(snk_state::snk_soundlatch_w));
map(0xc500, 0xc500).portr("DSW1");
map(0xc600, 0xc600).portr("DSW2");
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xc800, 0xcfff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xc800, 0xcfff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share3");
map(0xe000, 0xf7ff).ram().share("spriteram"); // + work ram
- map(0xf800, 0xf800).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xf840, 0xf840).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xf880, 0xf880).w(this, FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
- map(0xf8c0, 0xf8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
- map(0xf900, 0xf900).w(this, FUNC(snk_state::snk_sp16_scrolly_w));
- map(0xf940, 0xf940).w(this, FUNC(snk_state::snk_sp16_scrollx_w));
- map(0xf980, 0xf980).w(this, FUNC(snk_state::snk_sp32_scrolly_w));
- map(0xf9c0, 0xf9c0).w(this, FUNC(snk_state::snk_sp32_scrollx_w));
- map(0xfa80, 0xfa80).w(this, FUNC(snk_state::gwara_sp_scroll_msb_w));
- map(0xfac0, 0xfac0).w(this, FUNC(snk_state::snk_sprite_split_point_w));
+ map(0xf800, 0xf800).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xf840, 0xf840).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xf880, 0xf880).w(FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
+ map(0xf8c0, 0xf8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xf900, 0xf900).w(FUNC(snk_state::snk_sp16_scrolly_w));
+ map(0xf940, 0xf940).w(FUNC(snk_state::snk_sp16_scrollx_w));
+ map(0xf980, 0xf980).w(FUNC(snk_state::snk_sp32_scrolly_w));
+ map(0xf9c0, 0xf9c0).w(FUNC(snk_state::snk_sp32_scrollx_w));
+ map(0xfa80, 0xfa80).w(FUNC(snk_state::gwara_sp_scroll_msb_w));
+ map(0xfac0, 0xfac0).w(FUNC(snk_state::snk_sprite_split_point_w));
}
void snk_state::gwara_cpuB_map(address_map &map)
{
map(0x0000, 0xbfff).rom();
- map(0xc000, 0xc000).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
- map(0xc800, 0xcfff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xc000, 0xc000).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w));
+ map(0xc800, 0xcfff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share3");
map(0xe000, 0xf7ff).ram().share("spriteram"); // + work ram
- map(0xf8c0, 0xf8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xf8c0, 0xf8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
}
@@ -1355,34 +1355,34 @@ void snk_state::tdfever_cpuA_map(address_map &map)
map(0xc380, 0xc380).portr("IN7");
map(0xc400, 0xc400).portr("IN8");
map(0xc480, 0xc480).portr("IN9");
- map(0xc500, 0xc500).w(this, FUNC(snk_state::snk_soundlatch_w));
+ map(0xc500, 0xc500).w(FUNC(snk_state::snk_soundlatch_w));
map(0xc580, 0xc580).portr("DSW1");
map(0xc600, 0xc600).portr("DSW2");
- map(0xc680, 0xc680).w(this, FUNC(snk_state::tdfever_coin_counter_w));
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
- map(0xc800, 0xc800).w(this, FUNC(snk_state::snk_bg_scrolly_w));
- map(0xc840, 0xc840).w(this, FUNC(snk_state::snk_bg_scrollx_w));
- map(0xc880, 0xc880).w(this, FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
- map(0xc8c0, 0xc8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
- map(0xc900, 0xc900).w(this, FUNC(snk_state::tdfever_sp_scroll_msb_w));
- map(0xc980, 0xc980).w(this, FUNC(snk_state::snk_sp32_scrolly_w));
- map(0xc9c0, 0xc9c0).w(this, FUNC(snk_state::snk_sp32_scrollx_w));
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xc680, 0xc680).w(FUNC(snk_state::tdfever_coin_counter_w));
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuB_nmi_trigger_r), FUNC(snk_state::snk_cpuA_nmi_ack_w));
+ map(0xc800, 0xc800).w(FUNC(snk_state::snk_bg_scrolly_w));
+ map(0xc840, 0xc840).w(FUNC(snk_state::snk_bg_scrollx_w));
+ map(0xc880, 0xc880).w(FUNC(snk_state::gwara_videoattrs_w)); // flip screen, scroll msb
+ map(0xc8c0, 0xc8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xc900, 0xc900).w(FUNC(snk_state::tdfever_sp_scroll_msb_w));
+ map(0xc980, 0xc980).w(FUNC(snk_state::snk_sp32_scrolly_w));
+ map(0xc9c0, 0xc9c0).w(FUNC(snk_state::snk_sp32_scrollx_w));
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share2");
- map(0xe000, 0xf7ff).ram().w(this, FUNC(snk_state::tdfever_spriteram_w)).share("spriteram"); // + work ram
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
+ map(0xe000, 0xf7ff).ram().w(FUNC(snk_state::tdfever_spriteram_w)).share("spriteram"); // + work ram
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram"); // + work RAM
}
void snk_state::tdfever_cpuB_map(address_map &map)
{
map(0x0000, 0xbfff).rom();
- map(0xc000, 0xc000).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // tdfever, tdfever2
- map(0xc700, 0xc700).rw(this, FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // fsoccer
- map(0xc8c0, 0xc8c0).w(this, FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
- map(0xd000, 0xd7ff).ram().w(this, FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
+ map(0xc000, 0xc000).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // tdfever, tdfever2
+ map(0xc700, 0xc700).rw(FUNC(snk_state::snk_cpuA_nmi_trigger_r), FUNC(snk_state::snk_cpuB_nmi_ack_w)); // fsoccer
+ map(0xc8c0, 0xc8c0).w(FUNC(snk_state::gwar_tx_bank_w)); // char and palette bank
+ map(0xd000, 0xd7ff).ram().w(FUNC(snk_state::snk_bg_videoram_w)).share("bg_videoram");
map(0xd800, 0xdfff).ram().share("share2");
- map(0xe000, 0xf7ff).ram().w(this, FUNC(snk_state::tdfever_spriteram_w)).share("spriteram");
- map(0xf800, 0xffff).ram().w(this, FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
+ map(0xe000, 0xf7ff).ram().w(FUNC(snk_state::tdfever_spriteram_w)).share("spriteram");
+ map(0xf800, 0xffff).ram().w(FUNC(snk_state::snk_tx_videoram_w)).share("tx_videoram");
}
/***********************************************************************/
@@ -1390,11 +1390,11 @@ void snk_state::tdfever_cpuB_map(address_map &map)
void snk_state::marvins_sound_map(address_map &map)
{
map(0x0000, 0x3fff).rom();
- map(0x4000, 0x4000).r(this, FUNC(snk_state::marvins_soundlatch_r));
+ map(0x4000, 0x4000).r(FUNC(snk_state::marvins_soundlatch_r));
map(0x8000, 0x8001).w("ay1", FUNC(ay8910_device::address_data_w));
map(0x8002, 0x8007).w("wave", FUNC(snkwave_device::snkwave_w));
map(0x8008, 0x8009).w("ay2", FUNC(ay8910_device::address_data_w));
- map(0xa000, 0xa000).r(this, FUNC(snk_state::marvins_sound_nmi_ack_r));
+ map(0xa000, 0xa000).r(FUNC(snk_state::marvins_sound_nmi_ack_r));
map(0xe000, 0xe7ff).ram();
}
@@ -1409,8 +1409,8 @@ void snk_state::jcross_sound_map(address_map &map)
{
map(0x0000, 0x3fff).rom();
map(0x8000, 0x87ff).ram();
- map(0xa000, 0xa000).r(this, FUNC(snk_state::sgladiat_soundlatch_r));
- map(0xc000, 0xc000).r(this, FUNC(snk_state::sgladiat_sound_nmi_ack_r));
+ map(0xa000, 0xa000).r(FUNC(snk_state::sgladiat_soundlatch_r));
+ map(0xc000, 0xc000).r(FUNC(snk_state::sgladiat_sound_nmi_ack_r));
map(0xe000, 0xe001).w("ay1", FUNC(ay8910_device::address_data_w));
map(0xe002, 0xe003).nopw(); // ? always FFFF, snkwave leftover?
map(0xe004, 0xe005).w("ay2", FUNC(ay8910_device::address_data_w));
@@ -1419,7 +1419,7 @@ void snk_state::jcross_sound_map(address_map &map)
void snk_state::jcross_sound_portmap(address_map &map)
{
map.global_mask(0xff);
- map(0x00, 0x00).r(this, FUNC(snk_state::sgladiat_sound_irq_ack_r));
+ map(0x00, 0x00).r(FUNC(snk_state::sgladiat_sound_irq_ack_r));
}
@@ -1427,8 +1427,8 @@ void snk_state::hal21_sound_map(address_map &map)
{
map(0x0000, 0x3fff).rom();
map(0x8000, 0x87ff).ram();
- map(0xa000, 0xa000).r(this, FUNC(snk_state::sgladiat_soundlatch_r));
- map(0xc000, 0xc000).r(this, FUNC(snk_state::sgladiat_sound_nmi_ack_r));
+ map(0xa000, 0xa000).r(FUNC(snk_state::sgladiat_soundlatch_r));
+ map(0xc000, 0xc000).r(FUNC(snk_state::sgladiat_sound_nmi_ack_r));
map(0xe000, 0xe001).w("ay1", FUNC(ay8910_device::address_data_w));
// AM_RANGE(0xe002, 0xe002) AM_WRITENOP // bitfielded(0-5) details unknown. Filter enable?
map(0xe008, 0xe009).w("ay2", FUNC(ay8910_device::address_data_w));
@@ -1446,10 +1446,10 @@ void snk_state::tnk3_YM3526_sound_map(address_map &map)
map(0x0000, 0x7fff).rom();
map(0x8000, 0x87ff).ram();
map(0xa000, 0xa000).r(m_soundlatch, FUNC(generic_latch_8_device::read));
- map(0xc000, 0xc000).r(this, FUNC(snk_state::tnk3_busy_clear_r));
+ map(0xc000, 0xc000).r(FUNC(snk_state::tnk3_busy_clear_r));
map(0xe000, 0xe001).rw("ym1", FUNC(ym3526_device::read), FUNC(ym3526_device::write));
- map(0xe004, 0xe004).r(this, FUNC(snk_state::tnk3_cmdirq_ack_r));
- map(0xe006, 0xe006).r(this, FUNC(snk_state::tnk3_ymirq_ack_r));
+ map(0xe004, 0xe004).r(FUNC(snk_state::tnk3_cmdirq_ack_r));
+ map(0xe006, 0xe006).r(FUNC(snk_state::tnk3_ymirq_ack_r));
}
void snk_state::aso_YM3526_sound_map(address_map &map)
@@ -1457,11 +1457,11 @@ void snk_state::aso_YM3526_sound_map(address_map &map)
map(0x0000, 0xbfff).rom();
map(0xc000, 0xc7ff).ram();
map(0xd000, 0xd000).r(m_soundlatch, FUNC(generic_latch_8_device::read));
- map(0xe000, 0xe000).r(this, FUNC(snk_state::tnk3_busy_clear_r));
+ map(0xe000, 0xe000).r(FUNC(snk_state::tnk3_busy_clear_r));
map(0xf000, 0xf001).rw("ym1", FUNC(ym3526_device::read), FUNC(ym3526_device::write));
// AM_RANGE(0xf002, 0xf002) AM_READNOP unknown
- map(0xf004, 0xf004).r(this, FUNC(snk_state::tnk3_cmdirq_ack_r));
- map(0xf006, 0xf006).r(this, FUNC(snk_state::tnk3_ymirq_ack_r));
+ map(0xf004, 0xf004).r(FUNC(snk_state::tnk3_cmdirq_ack_r));
+ map(0xf006, 0xf006).r(FUNC(snk_state::tnk3_ymirq_ack_r));
}
void snk_state::YM3526_YM3526_sound_map(address_map &map)
@@ -1473,7 +1473,7 @@ void snk_state::YM3526_YM3526_sound_map(address_map &map)
map(0xec00, 0xec00).w("ym1", FUNC(ym3526_device::write_port_w));
map(0xf000, 0xf000).rw("ym2", FUNC(ym3526_device::status_port_r), FUNC(ym3526_device::control_port_w));
map(0xf400, 0xf400).w("ym2", FUNC(ym3526_device::write_port_w));
- map(0xf800, 0xf800).rw(this, FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
+ map(0xf800, 0xf800).rw(FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
}
void snk_state::YM3812_sound_map(address_map &map)
@@ -1483,7 +1483,7 @@ void snk_state::YM3812_sound_map(address_map &map)
map(0xe000, 0xe000).r(m_soundlatch, FUNC(generic_latch_8_device::read));
map(0xe800, 0xe800).rw("ym1", FUNC(ym3812_device::status_port_r), FUNC(ym3812_device::control_port_w));
map(0xec00, 0xec00).w("ym1", FUNC(ym3812_device::write_port_w));
- map(0xf800, 0xf800).rw(this, FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
+ map(0xf800, 0xf800).rw(FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
}
void snk_state::YM3526_Y8950_sound_map(address_map &map)
@@ -1495,7 +1495,7 @@ void snk_state::YM3526_Y8950_sound_map(address_map &map)
map(0xec00, 0xec00).w("ym1", FUNC(ym3526_device::write_port_w));
map(0xf000, 0xf000).rw("ym2", FUNC(y8950_device::status_port_r), FUNC(y8950_device::control_port_w));
map(0xf400, 0xf400).w("ym2", FUNC(y8950_device::write_port_w));
- map(0xf800, 0xf800).rw(this, FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
+ map(0xf800, 0xf800).rw(FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
}
void snk_state::YM3812_Y8950_sound_map(address_map &map)
@@ -1507,7 +1507,7 @@ void snk_state::YM3812_Y8950_sound_map(address_map &map)
map(0xec00, 0xec00).w("ym1", FUNC(ym3812_device::write_port_w));
map(0xf000, 0xf000).rw("ym2", FUNC(y8950_device::status_port_r), FUNC(y8950_device::control_port_w));
map(0xf400, 0xf400).w("ym2", FUNC(y8950_device::write_port_w));
- map(0xf800, 0xf800).rw(this, FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
+ map(0xf800, 0xf800).rw(FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
}
void snk_state::Y8950_sound_map(address_map &map)
@@ -1517,7 +1517,7 @@ void snk_state::Y8950_sound_map(address_map &map)
map(0xe000, 0xe000).r(m_soundlatch, FUNC(generic_latch_8_device::read));
map(0xf000, 0xf000).rw("ym2", FUNC(y8950_device::status_port_r), FUNC(y8950_device::control_port_w));
map(0xf400, 0xf400).w("ym2", FUNC(y8950_device::write_port_w));
- map(0xf800, 0xf800).rw(this, FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
+ map(0xf800, 0xf800).rw(FUNC(snk_state::snk_sound_status_r), FUNC(snk_state::snk_sound_status_w));
}
/*********************************************************************/