summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
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
commita3e90c182cac8401f887d5439a4dc906117bc087 (patch)
tree31c2df5adc5af036a604361036db82a0d32d8d73
parente8b765d2798626d0d8938a2d0934be602491e1b1 (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.xml11
-rw-r--r--hash/ekara_japan_sp.xml12
-rw-r--r--src/mame/drivers/spg2xx.cpp70
-rw-r--r--src/mame/mame.lst1
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 &amp; 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