From a3e90c182cac8401f887d5439a4dc906117bc087 Mon Sep 17 00:00:00 2001 From: David Haywood <28625134+DavidHaywood@users.noreply.github.com> Date: Fri, 26 Feb 2021 15:50:48 +0000 Subject: [PATCH] -New WORKING machine (Dora TV Adventure Globe) (#7821) new WORKING machine ------ Dora the Explorer - Dora TV Adventure Globe [Sean Riddle, David Haywood] -Set some of the previous ekara additions to unsupported as they actually use the alt seeprom hookup that isn't currently functional, and lock up in places as a result. [David Haywood] --- hash/ekara_japan_gk.xml | 11 +++--- hash/ekara_japan_sp.xml | 12 +++---- src/mame/drivers/spg2xx.cpp | 70 ++++++++++++++++++++++++++++++++++++- src/mame/mame.lst | 1 + 4 files changed, 82 insertions(+), 12 deletions(-) diff --git a/hash/ekara_japan_gk.xml b/hash/ekara_japan_gk.xml index ff4b921c771..a105ae7e1fc 100644 --- a/hash/ekara_japan_gk.xml +++ b/hash/ekara_japan_gk.xml @@ -31,8 +31,8 @@ license:CC0 - - + + GK-2 - Disney Princess: Princess Debut (Japan) 2004 Takara @@ -43,16 +43,17 @@ license:CC0 - - + + GK-3 - Disney Tinkerbell to Tinkle Star Uranai (Japan) 2004 Takara + - + diff --git a/hash/ekara_japan_sp.xml b/hash/ekara_japan_sp.xml index 95d4923955f..0f8d60d34f0 100644 --- a/hash/ekara_japan_sp.xml +++ b/hash/ekara_japan_sp.xml @@ -41,7 +41,7 @@ license:CC0 2004 Takara - + @@ -53,7 +53,7 @@ license:CC0 2004 Takara - + @@ -65,23 +65,23 @@ license:CC0 2004 Takara - + - + SP-05 Super Cartridge - TV POP Junior with Chibi Marukochan & Anpanman (Japan) 2004 Takara - + - + diff --git a/src/mame/drivers/spg2xx.cpp b/src/mame/drivers/spg2xx.cpp index f344089fca7..c22d2bd664d 100644 --- a/src/mame/drivers/spg2xx.cpp +++ b/src/mame/drivers/spg2xx.cpp @@ -1129,6 +1129,65 @@ static INPUT_PORTS_START( doraphone ) INPUT_PORTS_END +static INPUT_PORTS_START( doraglobe ) + PORT_START("P1") + PORT_CONFNAME( 0x0070, 0x0060, "On/Off Mode Slider" ) + PORT_CONFSETTING( 0x0030, "Play Alone (no video)" ) + PORT_CONFSETTING( 0x0060, "Play on TV" ) + + // TODO: check if these region bits are the same + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_CUSTOM ) // this setting is US NTSC, ACTIVE_LOW gives US PAL (invalid?) no way to switch to non-US? + PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_CUSTOM ) // must be 0x0200 or resets over and over + PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_START("P1_ROW1") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_NAME("Continent Button: Asia") + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) PORT_NAME("Continent Button: North America") + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON10 ) PORT_PLAYER(1) PORT_NAME("Mode Button: Learn and Explore") + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON14 ) PORT_PLAYER(1) PORT_NAME("Repeat") + + PORT_START("P1_ROW2") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) PORT_NAME("Continent Button: Europe") + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) PORT_NAME("Continent Button: South America") + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_NAME("Enter") + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_NAME("Back") + + PORT_START("P1_ROW3") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1) PORT_NAME("Continent Button: Africa") + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON8 ) PORT_PLAYER(1) PORT_NAME("Continent Button: Antarctica") + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON11 ) PORT_PLAYER(1) PORT_NAME("Mode Button: Adventure Play") + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON13 ) PORT_PLAYER(1) PORT_NAME("Show Answer") + + PORT_START("P1_ROW4") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON9 ) PORT_PLAYER(1) PORT_NAME("Continent Button: Australia") + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED ) // skips over some cutscenes and makes a 'button press' sound, but doesn't seem to be a real input on the device + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_PLAYER(1) PORT_NAME("Reset") + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON12 ) PORT_PLAYER(1) PORT_NAME("Mode Button: Explore and Find") + + PORT_START("P1_ROW5") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) + + PORT_START("P1_ROW6") + PORT_BIT( 0x000f, IP_ACTIVE_LOW, IPT_UNUSED ) // no response to these + + PORT_START("P2") + PORT_BIT( 0xff7f, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_CUSTOM ) // battery state + + PORT_START("P3") + PORT_BIT( 0xffff, IP_ACTIVE_LOW, IPT_UNUSED ) +INPUT_PORTS_END + + void spg2xx_game_state::machine_start() { if (m_bank) @@ -1963,6 +2022,11 @@ ROM_START( doraphon ) ROM_LOAD16_WORD_SWAP( "doraphone.bin", 0x000000, 0x800000, CRC(a79c154b) SHA1(f5b9bf63ea52d058252ab6702508b519fbdee0cc) ) ROM_END +ROM_START( doraglob ) + ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 ) + ROM_LOAD16_WORD_SWAP( "doraglobe.bin", 0x000000, 0x800000, CRC(6f454c50) SHA1(201e2de3d90abe017a8dc141613cbf6383423d13) ) +ROM_END + ROM_START( senspeed ) ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 ) @@ -2092,7 +2156,11 @@ CONS( 2006, vtechtvssp, 0, 0, spg2xx, spg2xx, spg2xx_game_state, CONS( 2006, vtechtvsgr, 0, 0, spg2xx, spg2xx, spg2xx_game_state, empty_init, "VTech", "TV Learning Station (VTech, Germany)", MACHINE_NOT_WORKING ) // "Boots's" is used on the title screen and in the manual, even if "Boots'" is usually used outside of this game. -CONS( 200?, doraphon, 0, 0, doraphone, doraphone, spg2xx_game_doraphone_state,empty_init, "VTech", "Dora the Explorer - Dora TV Explorer Phone / Boots's Special Day", MACHINE_IMPERFECT_SOUND ) +CONS( 2006, doraphon, 0, 0, doraphone, doraphone, spg2xx_game_doraphone_state,empty_init, "VTech", "Dora the Explorer - Dora TV Explorer Phone / Boots's Special Day", MACHINE_IMPERFECT_SOUND ) +// This was from a 'cost reduced' unit with the 'non-TV' mode switch and internal speaker removed, however it looks like the code was not disabled or removed as the mode is fully functional. +// The ZC-Infinity video for this on YouTube shows the map scrolling to center the continent, there doesn't appear to be an input for this, different revision? +// A Dutch localized version also exists, which again must be different code +CONS( 2007, doraglob, 0, 0, doraphone, doraglobe, spg2xx_game_doraphone_state,empty_init, "VTech", "Dora the Explorer - Dora TV Adventure Globe", MACHINE_IMPERFECT_SOUND ) // 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, "", "10 Jeux Interactifs / Jeux Pour Filles (France)", MACHINE_NOT_WORKING ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index d6727f3deed..582d410f176 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -38513,6 +38513,7 @@ tmntbftc gssytts senwfit jjstrip +doraglob // (c) 2007 VTech doraphon // (c) 2006 VTech vtechtvssp // (c) 2006 VTech vtechtvsgr // (c) 2006 VTech