summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/tumbleb.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/tumbleb.cpp')
-rw-r--r--src/mame/drivers/tumbleb.cpp27
1 files changed, 25 insertions, 2 deletions
diff --git a/src/mame/drivers/tumbleb.cpp b/src/mame/drivers/tumbleb.cpp
index 1e7912fb151..dd25424db1c 100644
--- a/src/mame/drivers/tumbleb.cpp
+++ b/src/mame/drivers/tumbleb.cpp
@@ -651,6 +651,24 @@ void tumbleb_state::tumblepopb_main_map(address_map &map)
map(0x342400, 0x34247f).nopw();
}
+void tumbleb_state::tumblepopba_main_map(address_map &map)
+{
+ map(0x000000, 0x07ffff).rom();
+#if TUMBLEP_HACK
+ map(0x000000, 0x07ffff).writeonly(); /* To write levels modifications */
+#endif
+ //map(0x100000, 0x100001).rw(FUNC(tumbleb_state::tumblepb_prot_r), FUNC(tumbleb_state::tumblepb_oki_w)); // where's the oki mapped?
+ map(0x120000, 0x123fff).ram().share("mainram");
+ map(0x140000, 0x1407ff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette");
+ map(0x180000, 0x18000f).r(FUNC(tumbleb_state::tumblepopb_controls_r));
+ map(0x1a0000, 0x1a07ff).ram().share("spriteram"); /* Bootleg sprite buffer */
+ map(0x1a1000, 0x1a1fff).ram(); // ?
+ map(0x200000, 0x200fff).ram(); // ?
+ //map(0x300000, 0x30000f).w(FUNC(tumbleb_state::tumblepb_control_0_w)); // 0x180000?
+ map(0x320000, 0x320fff).w(FUNC(tumbleb_state::tumblepb_pf1_data_w)).share("pf1_data");
+ map(0x322000, 0x322fff).w(FUNC(tumbleb_state::tumblepb_pf2_data_w)).share("pf2_data");
+}
+
void tumbleb_state::fncywld_main_map(address_map &map)
{
map(0x000000, 0x0fffff).rom();
@@ -2056,6 +2074,11 @@ MACHINE_CONFIG_START(tumbleb_state::tumblepb)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
MACHINE_CONFIG_END
+MACHINE_CONFIG_START(tumbleb_state::tumblepba)
+ tumblepb(config);
+ MCFG_DEVICE_MODIFY("maincpu")
+ MCFG_DEVICE_PROGRAM_MAP(tumblepopba_main_map)
+MACHINE_CONFIG_END
MACHINE_CONFIG_START(tumbleb_state::tumbleb2)
@@ -2431,7 +2454,7 @@ ROM_START( tumbleb2 )
ROM_LOAD( "wj-1", 0x00000, 0x80000, CRC(fabbf15d) SHA1(de60be43a5cd1d4b93c142bde6cbfc48a25545a3) )
ROM_RELOAD(0x80000,0x80000)
- ROM_REGION(0x1500, "plds", 0 ) // not dumped one are soldered
+ ROM_REGION(0x1500, "plds", 0 ) // not dumped ones are soldered
ROM_LOAD( "palce16v8.1", 0x0000, 0x104, NO_DUMP )
ROM_LOAD( "palce20v8.2", 0x0000, 0x157, NO_DUMP )
ROM_LOAD( "palce16v8.3", 0x0200, 0x104, NO_DUMP )
@@ -3616,7 +3639,7 @@ void tumbleb_state::init_dquizgo()
/* Misc 'bootleg' hardware - close to base Tumble Pop */
GAME( 1991, tumbleb, tumblep, tumblepb, tumblepb, tumbleb_state, init_tumblepb, ROT0, "bootleg", "Tumble Pop (bootleg)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE )
GAME( 1991, tumbleb2, tumblep, tumbleb2, tumblepb, tumbleb_state, init_tumbleb2, ROT0, "bootleg", "Tumble Pop (bootleg with PIC)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) // PIC is protected, sound simulation not 100%
-GAME( 1991, tumblepba,tumblep, tumblepb, tumblepb, tumbleb_state, init_tumblepba,ROT0, "bootleg (Playmark)", "Tumble Pop (Playmark bootleg)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING ) // Playmark stickers on ROMs
+GAME( 1991, tumblepba,tumblep, tumblepba, tumblepb, tumbleb_state, init_tumblepba,ROT0, "bootleg (Playmark)", "Tumble Pop (Playmark bootleg)", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING ) // Playmark stickers on ROMs, offset pf1_alt tilemap, OKI not hooked up
GAME( 1993, jumpkids, 0, jumpkids, tumblepb, tumbleb_state, init_jumpkids, ROT0, "Comad", "Jump Kids", MACHINE_SUPPORTS_SAVE )