diff options
author | David Haywood <28625134+DavidHaywood@users.noreply.github.com> | 2021-02-26 15:50:48 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-27 02:50:48 +1100 |
commit | a3e90c182cac8401f887d5439a4dc906117bc087 (patch) | |
tree | 31c2df5adc5af036a604361036db82a0d32d8d73 | |
parent | e8b765d2798626d0d8938a2d0934be602491e1b1 (diff) |
-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]
-rw-r--r-- | hash/ekara_japan_gk.xml | 11 | ||||
-rw-r--r-- | hash/ekara_japan_sp.xml | 12 | ||||
-rw-r--r-- | src/mame/drivers/spg2xx.cpp | 70 | ||||
-rw-r--r-- | 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 </dataarea> </part> </software> - - <software name="gk2"> + + <software name="gk2" supported="no"> <description>GK-2 - Disney Princess: Princess Debut (Japan)</description> <year>2004</year> <publisher>Takara</publisher> @@ -43,16 +43,17 @@ license:CC0 </dataarea> </part> </software> - - <software name="gk3"> + + <software name="gk3" supported="no"> <description>GK-3 - Disney Tinkerbell to Tinkle Star Uranai (Japan)</description> <year>2004</year> <publisher>Takara</publisher> <part name="cart" interface="ekara_cart"> + <feature name="slot" value="rom_24c08_epitch"/> <!-- FIXME: actually 24c04 --> <dataarea name="rom" size="0x200000"> <rom name="gk3.u1" size="0x200000" crc="5877877b" sha1="c789b96ffcb3c303d552b236e01fd5fb587df7d3"/> </dataarea> </part> - </software> + </software> </softwarelist> 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 <year>2004</year> <publisher>Takara</publisher> <part name="cart" interface="ekara_cart"> - <feature name="slot" value="rom_24lc04"/> + <feature name="slot" value="rom_24c08_epitch"/> <!-- FIXME: actually 24c04 --> <dataarea name="rom" size="0x200000"> <rom name="sp02.u1" size="0x200000" crc="c8a84ded" sha1="02ffa04cdc7732fd3ab75505c5cc68bda130c7ee"/> </dataarea> @@ -53,7 +53,7 @@ license:CC0 <year>2004</year> <publisher>Takara</publisher> <part name="cart" interface="ekara_cart"> - <feature name="slot" value="rom_24lc04"/> + <feature name="slot" value="rom_24c08_epitch"/> <!-- FIXME: actually 24c04 --> <dataarea name="rom" size="0x200000"> <rom name="sp03.u1" size="0x200000" crc="cd7dbbaf" sha1="cc62c10f8f83015e4c472bc41e9a1fd7ac497655"/> </dataarea> @@ -65,23 +65,23 @@ license:CC0 <year>2004</year> <publisher>Takara</publisher> <part name="cart" interface="ekara_cart"> - <feature name="slot" value="rom_24lc04"/> + <feature name="slot" value="rom_24c08_epitch"/> <!-- FIXME: actually 24c04 --> <dataarea name="rom" size="0x200000"> <rom name="sp04.u1" size="0x200000" crc="77818ddb" sha1="708980b1ae30864bd3395ef663de1c57ecbc113c"/> </dataarea> </part> </software> - + <software name="sp05"> <description>SP-05 Super Cartridge - TV POP Junior with Chibi Marukochan & Anpanman (Japan)</description> <year>2004</year> <publisher>Takara</publisher> <part name="cart" interface="ekara_cart"> - <feature name="slot" value="rom_24lc04"/> + <feature name="slot" value="rom_24c08_epitch"/> <!-- FIXME: actually 24c04 --> <dataarea name="rom" size="0x200000"> <rom name="sp05.u1" size="0x200000" crc="f5ae63b2" sha1="d471ee862aa2ab790defb57873a10862531fd76b"/> </dataarea> </part> - </software> + </software> </softwarelist> 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, "<unknown>", "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 |