summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author David Haywood <28625134+DavidHaywood@users.noreply.github.com>2020-09-20 15:34:59 +0100
committer GitHub <noreply@github.com>2020-09-20 10:34:59 -0400
commite486506cca55b9ab20bba85d67aaa3ec64c62848 (patch)
treea9f75cf0bc563b3c58d8aaf1a08af44786dbe3f1
parentfa267a66ebb4e686e1584b89d1a373719659d1ef (diff)
new WORKING machines (Plug & Play) (#7269)
* new WORKING machines ---- Wireless Tennis (PAL, Play Vision) [David Haywood, Sean Riddle] World Soccer TV Game 10-in-1 (PAL) [David Haywood, Sean Riddle] Solar Games 80-in-1 (PAL) [David Haywood, Sean Riddle] Out Run 2019 (Radica Plug & Play, Europe) [David Haywood, Sean Riddle] new NOT WORKING machines ----- 10 Jeux Interactifs / Jeux Pour Filles (France) [David Haywood, Sean Riddle, Team Europe] - added a note to indicate that the ROM from the Out Run 2019 Radica Plug & Play matches what is considered to be a 'Beta / Prototype' US version in NoIntro / MAME Software Lists. * correct hash
-rw-r--r--hash/megadriv.xml1
-rw-r--r--src/mame/drivers/megadriv_rad.cpp8
-rw-r--r--src/mame/drivers/nes_vt.cpp56
-rw-r--r--src/mame/drivers/spg2xx.cpp8
-rw-r--r--src/mame/drivers/vt1682.cpp6
-rw-r--r--src/mame/mame.lst7
6 files changed, 71 insertions, 15 deletions
diff --git a/hash/megadriv.xml b/hash/megadriv.xml
index 84cd4317942..e51fc4ec9c0 100644
--- a/hash/megadriv.xml
+++ b/hash/megadriv.xml
@@ -21423,6 +21423,7 @@ Notice that these are not working on real hardware due to bugged code with VDP i
</part>
</software>
+ <!-- this 'prototype' set has also been found on a PAL/UK Radica Out Run 2019 Plug & Play unit (see rad_orun in megadriv_rad.cpp) -->
<software name="outr2019up" cloneof="outr2019">
<description>Out Run 2019 (USA, Prototype)</description>
<year>1993</year>
diff --git a/src/mame/drivers/megadriv_rad.cpp b/src/mame/drivers/megadriv_rad.cpp
index e0abb5b2f6c..fb4c4d52d2f 100644
--- a/src/mame/drivers/megadriv_rad.cpp
+++ b/src/mame/drivers/megadriv_rad.cpp
@@ -195,7 +195,12 @@ ROM_START( rad_sonic )
ROM_LOAD16_WORD_SWAP( "supersonicgold.bin", 0x000000, 0x400000, CRC(853c9140) SHA1(cf70a9cdd3be4d8d1b6195698db3a941f4908791) )
ROM_END
-
+// once byteswapped this matches "outrun 2019 (usa) (beta).bin megadriv:outr2019up Out Run 2019 (USA, Prototype)"
+// this was dumped from a PAL/UK unit, so maybe that 'beta' is really an alt Euro release, or was simply dumped from one of these Radica units and mislabeled?
+ROM_START( rad_orun )
+ ROM_REGION( 0x400000, "maincpu", ROMREGION_ERASEFF )
+ ROM_LOAD16_WORD_SWAP( "outrun.bin", 0x000000, 0x100000, CRC(4fd6d653) SHA1(57f0e4550ff883e4bb7857caef2c893c21f80b42) )
+ROM_END
void megadriv_radica_state::init_megadriv_radica_6button_pal()
@@ -224,3 +229,4 @@ CONS( 2004, rad_sf2p, rad_sf2,0, megadriv_radica_6button_pal, megadriv_radica_6
CONS( 2004, rad_ssoc, 0, 0, megadriv_radica_3button_pal, megadriv_radica_3button, megadriv_radica_state, init_megadrie, "Radica / Sensible Software / Sega", "Sensible Soccer plus [Cannon Fodder, Mega lo Mania] (Radica, Arcade Legends) (Europe)", 0) // still branded as Arcade Legends even if none of these were ever arcade games
+CONS( 2004, rad_orun, 0, 0, megadriv_radica_3button_pal, megadriv_radica_3button_1player, megadriv_radica_state, init_megadrie, "Radica / Sega", "Out Run 2019 (Radica Plug & Play, Europe)", 0)
diff --git a/src/mame/drivers/nes_vt.cpp b/src/mame/drivers/nes_vt.cpp
index 011664ce788..6a7f0538b50 100644
--- a/src/mame/drivers/nes_vt.cpp
+++ b/src/mame/drivers/nes_vt.cpp
@@ -183,14 +183,14 @@ public:
void nes_vt_waixing_alt_pal_8mb(machine_config& config);
};
-class nes_vt_waixing_alt_duetpp_state : public nes_vt_waixing_alt_state
+class nes_vt_waixing_alt_sporzpp_state : public nes_vt_waixing_alt_state
{
public:
- nes_vt_waixing_alt_duetpp_state(const machine_config& mconfig, device_type type, const char* tag) :
+ nes_vt_waixing_alt_sporzpp_state(const machine_config& mconfig, device_type type, const char* tag) :
nes_vt_waixing_alt_state(mconfig, type, tag)
{ }
- void nes_vt_waixing_alt_4mb_duetpp(machine_config& config);
+ void nes_vt_waixing_alt_4mb_sporzpp(machine_config& config);
private:
uint8_t in1_r() override
@@ -201,6 +201,21 @@ private:
}
};
+class nes_vt_wldsoctv_state : public nes_vt_state
+{
+public:
+ nes_vt_wldsoctv_state(const machine_config& mconfig, device_type type, const char* tag) :
+ nes_vt_state(mconfig, type, tag)
+ { }
+
+private:
+ uint8_t in1_r() override
+ {
+ uint8_t i = machine().rand() & 0x18;
+ uint8_t ret = m_io1->read() & ~0x18;
+ return i | ret;
+ }
+};
class nes_vt_timetp36_state : public nes_vt_state
{
@@ -384,7 +399,7 @@ public:
m_plunger(*this, "PLUNGER")
{ }
- void nes_vt_waixing_alt_4mb_duetpp(machine_config& config);
+ void nes_vt_waixing_alt_4mb_sporzpp(machine_config& config);
protected:
virtual void machine_start() override;
@@ -889,7 +904,7 @@ void nes_vt_waixing_alt_state::nes_vt_waixing_alt_pal_8mb(machine_config &config
m_soc->set_8000_scramble(0x5, 0x4, 0x3, 0x2, 0x7, 0x6, 0x7, 0x8);
}
-void nes_vt_waixing_alt_duetpp_state::nes_vt_waixing_alt_4mb_duetpp(machine_config& config)
+void nes_vt_waixing_alt_sporzpp_state::nes_vt_waixing_alt_4mb_sporzpp(machine_config& config)
{
NES_VT_SOC(config, m_soc, NTSC_APU_CLOCK);
configure_soc(m_soc);
@@ -1428,7 +1443,7 @@ static INPUT_PORTS_START( ablpinb )
INPUT_PORTS_END
-static INPUT_PORTS_START( duetpp )
+static INPUT_PORTS_START( sporzpp )
PORT_START("IO0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1)
@@ -1763,7 +1778,7 @@ ROM_START( silv35 )
ROM_LOAD( "silverlit35.bin", 0x00000, 0x400000, CRC(7540e350) SHA1(a0cb456136560fa4d8a365dd44d815ec0e9fc2e7) )
ROM_END
-ROM_START( duetpp )
+ROM_START( sporzpp )
ROM_REGION( 0x400000, "mainrom", 0 )
ROM_LOAD( "gamesporzduetpingpong.bin", 0x00000, 0x400000, CRC(96af199b) SHA1(c14ff15683545c1edf03376cebcee7ac408da733) )
ROM_END
@@ -1773,6 +1788,21 @@ ROM_START( sporzbx )
ROM_LOAD( "sporzboxing.bin", 0x00000, 0x400000, CRC(8b832c0b) SHA1(8193955a81e894a01308a80d5153f2ecfe134da6) )
ROM_END
+ROM_START( sporztn )
+ ROM_REGION( 0x400000, "mainrom", 0 )
+ ROM_LOAD( "wirelesstennis.bin", 0x00000, 0x400000, CRC(e60f5ee1) SHA1(838ba7f4e9dcd0101eaaef5be883206d8856f45c) )
+ROM_END
+
+ROM_START( wldsoctv )
+ ROM_REGION( 0x400000, "mainrom", 0 )
+ ROM_LOAD( "worldsoccer.bin", 0x00000, 0x400000, CRC(8c0b184b) SHA1(fe1e7e83b9a2ae50dca1e7ea3bf7d691b8407511) )
+ROM_END
+
+ROM_START( solargm )
+ ROM_REGION( 0x800000, "mainrom", 0 )
+ ROM_LOAD( "solargames.bin", 0x00000, 0x800000, CRC(b49f0985) SHA1(68231614b333911c25168c533f1ae9bc79c36c38) )
+ROM_END
+
ROM_START( lpgm240 )
ROM_REGION( 0x800000, "mainrom", 0 )
ROM_LOAD( "w25q64jv.u1", 0x00000, 0x800000, CRC(b973e65b) SHA1(36ff137068ea56b4679c2db386ac0067de0a9eaf) )
@@ -2157,9 +2187,13 @@ CONS( 2016, msifrog, 0, 0, nes_vt_4mb_baddma, nes_vt_msi, nes_vt_state, emp
CONS( 2005, ablpinb, 0, 0, nes_vt_pal_2mb, ablpinb, nes_vt_ablpinb_state, empty_init, "Advance Bright Ltd", "Pinball (P8002, ABL TV Game)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
// need to map 2 player controls for Ping Pong, 'Eat-Bean' (the PacMan hack) gets stuck during intermission? (same happens on hardware?)
-CONS( 2004, duetpp, 0, 0, nes_vt_waixing_alt_4mb_duetpp, duetpp, nes_vt_waixing_alt_duetpp_state, empty_init, "Macro Winners", "Game Sporz Wireless Duet Play Ping-Pong", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-
-CONS( 2004, sporzbx, 0, 0, nes_vt_waixing_alt_4mb_duetpp, duetpp, nes_vt_waixing_alt_duetpp_state, empty_init, "Macro Winners", "Game Sporz Wireless Boxing", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+CONS( 2004, sporzpp, 0, 0, nes_vt_waixing_alt_4mb_sporzpp, sporzpp, nes_vt_waixing_alt_sporzpp_state, empty_init, "Macro Winners", "Game Sporz Wireless Duet Play Ping-Pong", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+// has some longer than expected delays when sounds should play on the Boxing part, but NES hacks are all functional
+CONS( 2004, sporzbx, 0, 0, nes_vt_waixing_alt_4mb_sporzpp, sporzpp, nes_vt_waixing_alt_sporzpp_state, empty_init, "Macro Winners", "Game Sporz Wireless Boxing", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+// has some longer than expected delays when sounds should play on the Tennis part, but NES hacks are all functional
+CONS( 2004, sporztn, 0, 0, nes_vt_pal_4mb, sporzpp, nes_vt_wldsoctv_state, empty_init, "Macro Winners (Play Vision license)", "Wireless Tennis (PAL, Play Vision)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+// missing PCM audio, but regular APU SFX work
+CONS( 200?, wldsoctv, 0, 0, nes_vt_pal_4mb, nes_vt, nes_vt_wldsoctv_state, empty_init, "Taikee", "World Soccer TV Game 10-in-1 (PAL)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
// should be VT03 based
// for testing 'Shark', 'Octopus', 'Harbor', and 'Earth Fighter' use the extended colour modes, other games just seem to use standard NES modes
@@ -2182,6 +2216,8 @@ CONS( 200?, megapad, 0, 0, nes_vt_waixing_2mb, nes_vt, nes_vt_waixing_
// 060303 date code on PCB
CONS( 2006, ablmini, 0, 0, nes_vt_waixing_alt_pal_8mb, nes_vt, nes_vt_waixing_alt_state, empty_init, "Advance Bright Ltd", "Double Players Mini Joystick 80-in-1 (MJ8500, ABL TV Game)", MACHINE_IMPERFECT_GRAPHICS )
+CONS( 200?, solargm, 0, 0, nes_vt_waixing_alt_pal_8mb, nes_vt, nes_vt_waixing_alt_state, empty_init, "<unknown>", "Solar Games 80-in-1 (PAL)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Solar Games logo is also found in the SunPlus based Millennium Arcade units
+
// silver 'N64' type controller design
CONS( 200?, zudugo, 0, 0, nes_vt_waixing_alt_4mb, nes_vt, nes_vt_waixing_alt_state, empty_init, "Macro Winners / Waixing", "Zudu-go / 2udu-go", MACHINE_IMPERFECT_GRAPHICS ) // the styling on the box looks like a '2' in places, a 'Z' in others.
diff --git a/src/mame/drivers/spg2xx.cpp b/src/mame/drivers/spg2xx.cpp
index 81cd5c7bb21..eeaeba1a12d 100644
--- a/src/mame/drivers/spg2xx.cpp
+++ b/src/mame/drivers/spg2xx.cpp
@@ -1862,6 +1862,11 @@ ROM_START( vtechtvsgr )
ROM_LOAD16_WORD_SWAP( "vtechtvstation_gr.bin", 0x000000, 0x800000, CRC(879f1b12) SHA1(c14d52bead2c190130ce88cbdd4f5e93145f13f9) )
ROM_END
+ROM_START( jouet )
+ ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
+ ROM_LOAD16_WORD_SWAP( "jouet.bin", 0x000000, 0x400000, CRC(da46097e) SHA1(f760f4d126a8291b7dacdea7a70691b25ad8b989) )
+ROM_END
+
ROM_START( senspeed )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
ROM_LOAD16_WORD_SWAP( "speedracer.bin", 0x000000, 0x800000, CRC(4efbcd39) SHA1(2edffbaa9ea309ad308fa60f32d8b7a98ee313c7) )
@@ -1989,6 +1994,9 @@ CONS( 2009, senwfit, 0, 0, gssytts, senwfit, spg2xx_game_senwfit_s
CONS( 2006, vtechtvssp, 0, 0, spg2xx, spg2xx, spg2xx_game_state, empty_init, "VTech", "TV Station (VTech, Spain)", MACHINE_NOT_WORKING )
CONS( 2006, vtechtvsgr, 0, 0, spg2xx, spg2xx, spg2xx_game_state, empty_init, "VTech", "TV Learning Station (VTech, Germany)", MACHINE_NOT_WORKING )
+// ROM checksum fails, but is expecting 0 as a result? shows 'CopyRight' when booting normally? protection?
+CONS( 200?, jouet, 0, 0, spg2xx, spg2xx, spg2xx_game_state, empty_init, "<unknown>", "10 Jeux Interactifs / Jeux Pour Filles (France)", MACHINE_NOT_WORKING )
+
CONS( 2008, senspeed, 0, 0, senspeed, senspeed, spg2xx_game_senspeed_state, empty_init, "Senario", "Speed Racer (Senario)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS )
CONS( 200?, jjstrip, 0, 0, tvsprt10, jjstrip, spg2xx_game_state, empty_init, "Shiggles Inc.", "Club Jenna Presents: Jenna Jameson's Strip Poker", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS )
diff --git a/src/mame/drivers/vt1682.cpp b/src/mame/drivers/vt1682.cpp
index cc0fdb1401e..a0ae04b87ab 100644
--- a/src/mame/drivers/vt1682.cpp
+++ b/src/mame/drivers/vt1682.cpp
@@ -6236,12 +6236,12 @@ CONS( 200?, dance555, 0, 0, vt1682_exsportp, dance555, vt1682_exsport_state
// manual explicitly states it has NTSC output only (unit can be connected to a TV) and both Ranning Horse + Explosion (Bomberman) are the NTSC versions
// has 21.477 Mhz XTAL
-CONS( 200?, njp60in1, 0, 0, vt1682_lxts3, njp60in1, vt1682_lxts3_state, njp60in1_init, "<unknown>", "NJ Pocket 60-in-1 handheld 'X zero' (NTSC)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND) // needs high colour line mode for main menu
+CONS( 200?, njp60in1, 0, 0, vt1682_lxts3, njp60in1, vt1682_lxts3_state, njp60in1_init, "<unknown>", "NJ Pocket 60-in-1 handheld 'X zero' (NTSC)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND) // RNG + linescroll issues
// this appears to be related to the NJ Pocket, claims 101-in-1 but has some duplicates.
// Like the 'Wow Wireless gaming' it incorrectly mixes the PAL version of 'Ranning Horse' with the NTSC version of 'Bomberman', it has no TV output.
// has 26.6017 Mhz (6xPAL) XTAL
-CONS( 200?, unk1682, 0, 0, vt1682_unk1682, lxts3, vt1682_lxts3_state, unk1682_init, "<unknown>", "unknown VT1682-based 101-in-1 handheld (PAL)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND) // needs high colour line mode for main menu
+CONS( 200?, unk1682, 0, 0, vt1682_unk1682, lxts3, vt1682_lxts3_state, unk1682_init, "<unknown>", "unknown VT1682-based 101-in-1 handheld (PAL)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND) // RNG + linescroll issues
-CONS( 2010, lxts3, 0, 0, vt1682_lxts3, lxts3, vt1682_lxts3_state, regular_init, "Lexibook", "Toy Story 3 (Lexibook)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // random number generation issues on 2 games, linescroll on racing games
+CONS( 2010, lxts3, 0, 0, vt1682_lxts3, lxts3, vt1682_lxts3_state, regular_init, "Lexibook", "Toy Story 3 (Lexibook)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // RNG + linescroll issues
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 39c08edf818..5edd346a952 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -22216,6 +22216,7 @@ rad_gen1 // (c)2004 Radica
rad_gen2 // (c)2004 Radica
rad_ssoc // (c)2004 Radica
rad_sonic
+rad_orun
@source:megaphx.cpp
megaphx // (c) 1991 Dinamic / Inder
@@ -32251,8 +32252,11 @@ zdog
otrail
denv150
techni4
-duetpp
+sporzpp
sporzbx
+sporztn
+wldsoctv
+solargm
ablmini
senwld
zonefusn
@@ -38126,6 +38130,7 @@ senspeed
ordentv
wfcentro
tiktokmm
+jouet
@source:spg2xx_digimake.cpp
rad_digi