summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author David Haywood <28625134+DavidHaywood@users.noreply.github.com>2021-06-01 19:11:00 +0100
committer GitHub <noreply@github.com>2021-06-01 14:11:00 -0400
commit50be96c46d2e8a866c596e70e51eb0f06292bc3f (patch)
treec2cf9ff8531f04f8e9d9937e1acc6e6bf9e1b724
parent973373e712369e52e30bed4a590f9c00a10952f5 (diff)
new educational / plug and play dumps / cartridges from Sean [Sean Riddle, Dave "Foxhack" Silva] (#8113)
* add some dumped data to the innotab2 driver, split from storio [Sean Riddle] * new NOT WORKING software list entry ------ leapfrog_zippity_cart.xml: The Princess and the Frog - Magical Bayou Adventure (500-13779-A) (UK) [Sean Riddle] * new NOT WORKING machines ----- Compact Cyber Arcade TV - 120 in 1 (JL2370) [Sean Riddle, taizou] Leapster Explorer [David Haywood] * new NOT WORKING software list entries ------------ leapfrog_leapster_explorer_cart.xml: TinkerBell and the Lost Treasure (500-14226-A) [Dave "Foxhack" Silva] Mr. Pencil Saves Doodleburg (500-14221-A) [Dave "Foxhack" Silva] Adventure Sketchers (500-15340-A) (Creativity Learning Game) [Dave "Foxhack" Silva] * new NOT WORKING software list entries ------- vtech_innotab_cart.xml: The Penguins of Madagascar (80-230500, US) [Dave "Foxhack" Silva] Teenage Mutant Ninja Turtles - Turtle Power! (80-231300, US) [Dave "Foxhack" Silva] * mobigo_cart.xml: remove jakenevalt, it's a bad dump "80-252800 - Jake and the Neverland Pirates (US).bin FIXED BITS (xxxxxx1xxxxxxxxx)" * mobigo_cart.xml: remove dprinces, it's a bad dump "mobigo_251100.bin BADADDRxxxxxxxxx-xxxxxxxxxxxxxx" * new NOT WORKING software list entries ------ mobigo_cart.xml: Disney/Pixar Cars 2 (USA, rev 2?) [Sean Riddle, Dave "Foxhack" Silva] Thomas & Friends - Really Useful Engines (USA, rev 2?) [Sean Riddle, Dave "Foxhack" Silva] * - added German ltleappad BIOS [Team Europe, Sean Riddle] * new NOT WORKING software list entries ------ vtech_storio_cart.xml: Cars 2 (USA) [Sean Riddle, Dave "Foxhack" Silva] Dora and the 3 Little Pigs (USA) [Sean Riddle, Dave "Foxhack" Silva] Hello Kitty's Surprise (USA) [Sean Riddle, Dave "Foxhack" Silva] Disney Princess - A Gift From The Heart &amp; Belle's Special Treat (USA) [Sean Riddle, Dave "Foxhack" Silva] TinkerBell and the Great Fairy Rescue (USA) [Sean Riddle, Dave "Foxhack" Silva] Mickey Mouse Clubhouse (USA) [Sean Riddle, Dave "Foxhack" Silva] * update notes in storio xml * add some more known cartridge info to juicebox.xml
-rw-r--r--hash/juicebox.xml58
-rw-r--r--hash/leapfrog_leapster_explorer_cart.xml44
-rw-r--r--hash/leapfrog_zippity_cart.xml12
-rw-r--r--hash/mobigo_cart.xml55
-rw-r--r--hash/vtech_innotab_cart.xml27
-rw-r--r--hash/vtech_storio_cart.xml115
-rw-r--r--scripts/target/mame/mess.lua28
-rw-r--r--src/mame/drivers/leapfrog_leappad.cpp2
-rw-r--r--src/mame/drivers/leapfrog_leapster_explorer.cpp108
-rw-r--r--src/mame/drivers/nes_vt369_vtunknown.cpp32
-rw-r--r--src/mame/drivers/storio.cpp14
-rw-r--r--src/mame/drivers/vtech_innotab.cpp218
-rw-r--r--src/mame/mame.lst68
-rw-r--r--src/mame/mess.flt2
14 files changed, 652 insertions, 131 deletions
diff --git a/hash/juicebox.xml b/hash/juicebox.xml
index 6d8f9784999..dac6c95c6df 100644
--- a/hash/juicebox.xml
+++ b/hash/juicebox.xml
@@ -5,25 +5,45 @@ license:CC0
-->
<softwarelist name="juicebox" description="Mattel Juice Box SmartMedia Flash ROM">
-<!-- Undumped items
-
-* H???? - Juice Box Music Video
-* H2682 - Juiceware Animated Assortment
-* H2684 - Ed, Edd n Eddy vol.1
-* H2686 - Winx Club
-* H2687 - The Grim Adventures of Billy and Mandy vol.1
-* H2688 - Vans Triple Crown vol.1
-* H2689 - Vans Triple Crown vol.2
-* H2690 - Vans Pipeline Masters
-* H2692 - Teenage Mutant Ninja Turtles vol.1
-* H2694 - Trading Spaces vol.1
-* H2698 - WWE Rey Mysterio vol.1
-* H2701 - Dexter's Laboratory vol.1
-* H2702 - WWE Chris Benoit vol.1
-* H2706 - MyScene Jammin in Jamaica vol.1
-* H2707 - MyScene Masquerade Madness
-* H2708 - WWE Eugene vol.1
-* H2709 - Music Video Liz Phair Skye Bnip Stacie
+<!-- known items (* = dumped)
+ (many still missing from this list)
+
+ H2679 - Ed, Edd n Eddy Episode #39
+ H2682 - Juiceware Animated Assortment
+* H2683 - Codename: Kids Next Door vol.1
+ H2684 - Ed, Edd n Eddy vol.1
+* H2685 - Yu-Gi-Oh! vol.1
+ H2686 - Winx Club
+ H2687 - The Grim Adventures of Billy and Mandy vol.1
+ H2688 - Vans Triple Crown vol.1
+ H2689 - Vans Triple Crown vol.2
+ H2690 - Vans Pipeline Masters
+ H2692 - Teenage Mutant Ninja Turtles vol.1
+ H2694 - Trading Spaces vol.1
+ H2697 - Megas XLR Vol. 1
+ H2698 - WWE Rey Mysterio vol.1
+ H2699 - Motocycle Mania 1 vol.1
+ H2701 - Dexter's Laboratory vol.1
+ H2702 - WWE Chris Benoit vol.1
+ H2706 - MyScene Jammin in Jamaica vol.1
+ H2707 - MyScene Masquerade Madness
+ H2708 - WWE Eugene vol.1
+ H2709 - Music Video Liz Phair Skye Bnip Stacie
+
+ H6225 - Juice Box Music Video (Ashlee Simpson, The Cure, Vanessa Carlton, Fan_3)
+ H6228 - Juice Box Music Video (Avril Lavine, The Calling, Clay Miken, Ruben Studdard)
+ H6232 - Juice Box Music Video (Zoegirl, Jumps, Baha Men, Atomic Kitten)
+ H6248 - Codename: Kids Next Door - Episode #19
+ H6254 - Juice Box Music Video (Liz Flair, Stacie Orrico, Skye Sweetnam, Zoegirl) (full part # H6254-0971G1)
+ H6259 - SonicX Episode 3: Missile Wrist Rampage
+ H6260 - Teenage Mutant Ninja Turtles Episode 36
+
+ H7416 - Streetball Classics Vol.1
+
+ H8084 - Yu-Gi-Oh! Episode 175
+ H8085 - Good Times with Carey Hart
+ H8143 - Yu-Gi-Oh! Episode 176
+
-->
<software name="kidsnedo">
diff --git a/hash/leapfrog_leapster_explorer_cart.xml b/hash/leapfrog_leapster_explorer_cart.xml
new file mode 100644
index 00000000000..306e7274575
--- /dev/null
+++ b/hash/leapfrog_leapster_explorer_cart.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0"?>
+<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
+<!-- license:CC0 -->
+
+<softwarelist name="leapfrog_leapster_explorer_cart" description="LeapFrog Leapster Explorer Cartridges">
+
+ <software name="tblt" supported="no">
+ <description>TinkerBell and the Lost Treasure (USA)</description>
+ <year>2010</year>
+ <publisher>LeapFrog</publisher>
+ <info name="serial" value="500-14226-A"/>
+ <part name="cart" interface="leapfrog_leapster_explorer_cart">
+ <dataarea name="rom" size="0x4200000" width="32" endianness="big">
+ <rom loadflag="load16_word_swap" name="leapster_explorer_tinker_bell_lost_treasure_mxic_c276.bin" size="0x4200000" crc="1d88cffa" sha1="50941cf44bcbec559f0110f9151ee98b82d755ca" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="mrpencil" supported="no">
+ <description>Mr. Pencil Saves Doodleburg (USA)</description>
+ <year>2010</year>
+ <publisher>LeapFrog</publisher>
+ <info name="serial" value="500-14221-A"/>
+ <part name="cart" interface="leapfrog_leapster_explorer_cart">
+ <dataarea name="rom" size="0x4200000" width="32" endianness="big">
+ <rom loadflag="load16_word_swap" name="leapster_explorer_mr_pencil_saves_doodleburg_mxic_c276.bin" size="0x4200000" crc="e30fdc01" sha1="fe58616c7d61c1651380bb71c11ad639e22d00da" />
+ </dataarea>
+ </part>
+ </software>
+
+ <!-- this has the same form factor as a Leapster Explorer cart, and is the same colour, but is marked 'Creativity Learning Game' instead, is it the same system? -->
+ <software name="advsktch" supported="no">
+ <description>Adventure Sketchers (USA) (Creativity Learning Game)</description>
+ <year>2013</year>
+ <publisher>LeapFrog</publisher>
+ <info name="serial" value="500-15340-A"/>
+ <part name="cart" interface="leapfrog_leapster_explorer_cart">
+ <dataarea name="rom" size="0x4200000" width="32" endianness="big">
+ <rom loadflag="load16_word_swap" name="leapster_explorer_adventure_sketchers_mxic_c276.bin" size="0x4200000" crc="ecf7a832" sha1="98dda23b39c9f66e0d9783e7c9ce7b703235526d" />
+ </dataarea>
+ </part>
+ </software>
+
+</softwarelist>
diff --git a/hash/leapfrog_zippity_cart.xml b/hash/leapfrog_zippity_cart.xml
index 4bb398526df..8c978684672 100644
--- a/hash/leapfrog_zippity_cart.xml
+++ b/hash/leapfrog_zippity_cart.xml
@@ -7,7 +7,6 @@ license:CC0
<!--
Not dumped:
- The Princess and the Frog
Toy Story 3
(it also needs confirming if US / UK cartridges are different, dumps are all from UK cartridges)
@@ -15,6 +14,17 @@ license:CC0
-->
<softwarelist name="leapfrog_zippity_cart" description="LeapFrog Zippity Cartridges">
+ <software name="prinfrog" supported="no">
+ <description>The Princess and the Frog - Magical Bayou Adventure (500-13779-A) (UK)</description>
+ <year>2009</year>
+ <publisher>LeapFrog</publisher>
+ <part name="cart" interface="leapfrog_zippity_cart">
+ <dataarea name="rom" size="0x4200000">
+ <rom name="500-13779-A - The Princess and the Frog - Magical Bayou Adventure.bin" size="0x4200000" crc="f41715d0" sha1="c6654f021ac0b12fecb056f1d21058957a6e1e30" />
+ </dataarea>
+ </part>
+ </software>
+
<software name="cars" supported="no">
<description>The World of Cars - Driven to Learn (500-13589-B) (UK)</description>
<year>2009</year>
diff --git a/hash/mobigo_cart.xml b/hash/mobigo_cart.xml
index b9f0c4c7acf..cc83a287435 100644
--- a/hash/mobigo_cart.xml
+++ b/hash/mobigo_cart.xml
@@ -45,7 +45,20 @@ license:CC0
</part>
</software>
- <software name="cars2g" supported="no">
+ <!-- offset 0x12 is '0x02' is this a version number? cartridge was still only marked as 80-251900(US) -->
+ <software name="cars2" supported="no">
+ <description>Disney/Pixar Cars 2 (USA, rev 2?)</description>
+ <year>2011</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-251900(US)"/>
+ <part name="cart" interface="mobigo_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="mobigo_251900_2.bin" size="0x1000000" crc="9d0da1ef" sha1="2fc4e5e4251508b391067541fcca0230b6cf5b16"/>
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="cars2g" cloneof="cars2" supported="no">
<description>Disney/Pixar Cars 2 (Germany)</description>
<year>2011</year>
<publisher>VTech</publisher>
@@ -124,18 +137,6 @@ license:CC0
<info name="serial" value="80-251100(US)"/>
<part name="cart" interface="mobigo_cart">
<dataarea name="rom" size="0x1000000">
- <rom name="mobigo_251100.bin" size="0x1000000" crc="5d9d8f5f" sha1="359ba58fe4266b31aefa8397121069ce2ec33318"/>
- </dataarea>
- </part>
- </software>
-
- <software name="dprincesalt" cloneof="dprinces" supported="no">
- <description>Disney Princess (USA, alt)</description>
- <year>2010</year>
- <publisher>VTech</publisher>
- <info name="serial" value="80-251100(US)"/>
- <part name="cart" interface="mobigo_cart">
- <dataarea name="rom" size="0x1000000">
<rom name="80-251100 - Disney Princess (US).bin" size="0x1000000" crc="fd9d04fc" sha1="af9ae160faf3087eb4d3a375c484e569465d4fc4"/>
</dataarea>
</part>
@@ -189,18 +190,6 @@ license:CC0
</part>
</software>
- <software name="jakenevalt" cloneof="jakenev" supported="no">
- <description>Disney Jake and the Neverland Pirates (USA, alt)</description>
- <year>2012</year>
- <publisher>VTech</publisher>
- <info name="serial" value="80-252800(US)"/>
- <part name="cart" interface="mobigo_cart">
- <dataarea name="rom" size="0x1000000">
- <rom name="80-252800 - Jake and the Neverland Pirates (US).bin" size="0x1000000" crc="eebe529e" sha1="7a8dc059e6713470937631b2b4d65cf87f9d3d20"/>
- </dataarea>
- </part>
- </software>
-
<software name="jakenevg" cloneof="jakenev" supported="no">
<description>Jake und die Nimmerland Piraten (Germany)</description>
<year>2012</year>
@@ -439,8 +428,9 @@ license:CC0
</part>
</software>
+ <!-- offset 0x12 is '0x01' is this a version number? cartridge was still only marked as 80-252700(US) -->
<software name="thomas" supported="no">
- <description>Thomas &amp; Friends - Really Useful Engines (USA)</description>
+ <description>Thomas &amp; Friends - Really Useful Engines (USA, rev 1?)</description>
<year>2012</year>
<publisher>VTech</publisher>
<info name="serial" value="80-252700(US)"/>
@@ -451,6 +441,19 @@ license:CC0
</part>
</software>
+ <!-- offset 0x12 is '0x02' is this a version number? cartridge was still only marked as 80-252700(US) -->
+ <software name="thomasa" cloneof="thomas" supported="no">
+ <description>Thomas &amp; Friends - Really Useful Engines (USA, rev 2?)</description>
+ <year>2012</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-252700(US)"/>
+ <part name="cart" interface="mobigo_cart">
+ <dataarea name="rom" size="0x1000000">
+ <rom name="mobigo_252700_2.bin" size="0x1000000" crc="a5515438" sha1="3a9896c28479aff95d43692da2562e97f974c44d"/>
+ </dataarea>
+ </part>
+ </software>
+
<software name="thomasg" cloneof="thomas" supported="no">
<description>Thomas &amp; seine Freunde - Wirklich Nützliche Loks (Germany)</description>
<year>2012</year>
diff --git a/hash/vtech_innotab_cart.xml b/hash/vtech_innotab_cart.xml
index 9a0523fe5d5..ad7778af36e 100644
--- a/hash/vtech_innotab_cart.xml
+++ b/hash/vtech_innotab_cart.xml
@@ -15,11 +15,36 @@ license:CC0
<description>Mickey Mouse Clubhouse (UK)</description>
<year>2011</year>
<publisher>VTech</publisher>
- <part name="cart" interface="vtech_storio_cart">
+ <info name="serial" value="80-230403-103"/>
+ <part name="cart" interface="vtech_innotab_cart">
<dataarea name="rom" size="0x8400000">
<rom name="80-230403-103 - Mickey Mouse Clubhouse (UK).bin" size="0x8400000" crc="839567a9" sha1="bd4e2c8138d6f62bcac1978745a2b752bcefb07d" />
</dataarea>
</part>
</software>
+ <software name="pengmad" supported="no">
+ <description>The Penguins of Madagascar (USA)</description>
+ <year>2012</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-230500(US)"/>
+ <part name="cart" interface="vtech_innotab_cart">
+ <dataarea name="rom" size="0x8400000">
+ <rom name="innotab_penguins_of_madagascar_gpr27p01ga_c279.bin" size="0x8400000" crc="5c2d33fa" sha1="6ad8e167b96fed824c164b55f8d011928fd142d5" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="tmnttp" supported="no">
+ <description>Teenage Mutant Ninja Turtles - Turtle Power! (USA)</description>
+ <year>2013</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-231300(US)"/>
+ <part name="cart" interface="vtech_innotab_cart">
+ <dataarea name="rom" size="0x8400000">
+ <rom name="innotab_tmnt_turtle_power_gpr27p01ga_c279.bin" size="0x8400000" crc="3928e80c" sha1="f3048f990fc9c5e8d29d81a536da90496befa7b4" />
+ </dataarea>
+ </part>
+ </software>
+
</softwarelist>
diff --git a/hash/vtech_storio_cart.xml b/hash/vtech_storio_cart.xml
index 30207f54b71..23cfd329853 100644
--- a/hash/vtech_storio_cart.xml
+++ b/hash/vtech_storio_cart.xml
@@ -36,7 +36,7 @@ license:CC0
| 80-280123(??) | Toy Story 3 (Netherlands)
| 80-280200(US) | Mr. Men and Little Miss - Mr. Messy and the Missing Sock
| 80-280203(UK) | Mr. Men and Little Miss - Mr. Messy and the Missing Sock
- | 80-280300(US) | Disney Fairies - Tinkerbell and The Great Fairy Rescue
+ XX | 80-280300(US) | Disney Fairies - Tinkerbell and The Great Fairy Rescue
| 80-280303(UK) | Disney Fairies - Tinkerbell and The Great Fairy Rescue
| 80-280304(GER) | Disney Fairies - Tinkerbell Ein Sommer Voller Abenteuer
| 80-280323(??) | Disney Fairies - Tinkerbell en de Grote Reddingsoperatie (Netherlands)
@@ -50,19 +50,19 @@ license:CC0
| 80-280700(US) | The Little Engine That Could
| 80-280804(GER) | Rufus in der Stadt (Storio Pack-in cart)
| 80-280???(??) | Rufus arriva in città (Italy, Storio Pack-in cart, product code unconfirmed)
- | 80-280900(US) | Dora the Explorer - Dora and the Three Little Pigs
+ XX | 80-280900(US) | Dora the Explorer - Dora and the Three Little Pigs
| 80-280903(UK) | Dora the Explorer - Dora and the Three Little Pigs
XX | 80-280904(GER) | Dora - Dora und die drei Schweinchen
| 80-280905(FR) | Dora l'exploratrice - Dora et les trois petit cochons
| 80-280922(SP) | Dora la exploradora - Dora y los Tres Cerditos
| 80-280923(??) | Dora - Dora en de Drie Kleine Biggetjes (Netherlands)
- | 80-281000(US) | Mickey Mouse Clubhouse
+ XX | 80-281000(US) | Mickey Mouse Clubhouse
| 80-281003(UK) | Mickey Mouse Clubhouse
XX | 80-281004(GER) | Micky Maus Wunderhaus
| 80-281005(FR) | La Maison de Mickey
| 80-281022(SP) | La casa de Mickey Mouse
| 80-281023(??) | Mickey Mouse Clubhuis - Mickey zoekt en vindt! (Netherlands)
- | 80-281100(US) | Disney Princess - Belle's Special Treat / A Gift from the Heart
+ XX | 80-281100(US) | Disney Princess - Belle's Special Treat / A Gift from the Heart
| 80-281103(UK) | Disney Princess - Belle's Special Treat / A Gift from the Heart
| 80-281104(GER) | Disney Princess - Eine besondere Überraschung für Belle / Das Geburtstagsgeschenk
| 80-281105(FR) | Disney Princess - Une surprise pour Belle / Un cadeau qui vient du coeur
@@ -89,7 +89,7 @@ license:CC0
| 80-281723(??) | De Pinguïns van Madagascar - De Helm (Netherlands)
| 80-281800(US) | Kung Fu Panda 2
| 80-281803(UK) | Kung Fu Panda 2
- | 80-281900(US) | Disney/Pixar Cars 2
+ XX | 80-281900(US) | Disney/Pixar Cars 2
| 80-281903(UK) | Disney/Pixar Cars 2
| 80-281904(GER) | Disney/Pixar Cars 2
| 80-281905(FR) | Disney/Pixar Cars 2
@@ -109,7 +109,7 @@ license:CC0
| 80-282222(SP) | Madagascar 3 - De marcha por Europa
| 80-282223(??) | Madagascar 3 - Op Avontuur in Europa (Netherlands)
| 80-282300(US) | Dinosaur Train - T.Rex Teeth
- | 80-282400(US) | Hello Kitty - Hello Kitty's Surprise
+ XX | 80-282400(US) | Hello Kitty - Hello Kitty's Surprise
| 80-282403(UK) | Hello Kitty - Hello Kitty's Surprise
| 80-282404(GER) | Hello Kitty - Hello Kittys Überraschung!
| 80-282422(SP) | Hello Kitty - La sorpresa de Hello Kitty
@@ -135,29 +135,70 @@ license:CC0
<publisher>VTech</publisher>
<part name="cart" interface="vtech_storio_cart">
<dataarea name="rom" size="0x4200000">
- <rom name="80-280422 - scooby-doo-scooby-doo y la momia (SP).bin" size="0x4200000" crc="cd1ee924" sha1="83e561af5910dc547829d54c84fbef60350f4f54" offset="0" />
+ <rom name="80-280422 - scooby-doo-scooby-doo y la momia (SP).bin" size="0x4200000" crc="cd1ee924" sha1="83e561af5910dc547829d54c84fbef60350f4f54" />
</dataarea>
</part>
</software>
- <software name="doragr" supported="no">
+ <software name="dora3pig" supported="no">
+ <description>Dora and the 3 Little Pigs (USA)</description>
+ <year>2010</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-280900(US)"/>
+ <part name="cart" interface="vtech_storio_cart">
+ <dataarea name="rom" size="0x4200000">
+ <rom name="v.reader_dora_and_the_3_little_pigs_n23512t_c276.bin" size="0x4200000" crc="b46e42c8" sha1="292d9fc201448df38c03e530a69ead497b477a1c" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="doragr" cloneof="dora3pig" supported="no">
<description>Dora und die drei Schweinchen (Germany)</description>
<year>2011</year>
<publisher>VTech</publisher>
<part name="cart" interface="vtech_storio_cart">
<dataarea name="rom" size="0x4200000">
- <rom name="80-280904 - Dora und die drei Schweinchen (GER).bin" size="0x4200000" crc="34f85a56" sha1="93b27d5c2a5b9e23470a3cb48099e3aa1f36bde6" offset="0" />
+ <rom name="80-280904 - Dora und die drei Schweinchen (GER).bin" size="0x4200000" crc="34f85a56" sha1="93b27d5c2a5b9e23470a3cb48099e3aa1f36bde6" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="mmclub" supported="no">
+ <description>Mickey Mouse Clubhouse (USA)</description>
+ <year>2010</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-281000(US)"/>
+ <part name="cart" interface="vtech_storio_cart">
+ <dataarea name="rom" size="0x4200000">
+ <rom name="v.reader_mickey_mouse_clubhouse_n231gt_c276.bin" size="0x4200000" crc="67dea606" sha1="cdee41449bd5ba15fd8b9e5e6ca4ad2836397eae" />
</dataarea>
</part>
</software>
- <software name="mickeychgr" supported="no">
+ <!-- this cartridge looked identical to the above, but contained a normal flash chip instead of an OTP device
+ the data structure is very different, and doesn't start with the FAT16 filesystem?
+ does the system BIOS detect different cartridge types and handle them in different ways? -->
+ <software name="mmcluba" cloneof="mmclub" supported="no">
+ <description>Mickey Mouse Clubhouse (USA, flash chip)</description>
+ <year>2010</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-281000(US)"/>
+ <part name="cart" interface="vtech_storio_cart">
+ <dataarea name="rom" size="0x4200000">
+ <rom name="v.reader_mickey_mouse_clubhouse_h27u518s2ctr_ad76.bin" size="0x4200000" crc="8b7eb4b5" sha1="f68d4e826b786710d0bea6669ab62648b0a09ff1" />
+ </dataarea>
+ </part>
+ </software>
+
+
+
+ <software name="mickeychgr" cloneof="mmclub" supported="no">
<description>Micky Maus Wunderhaus (Germany)</description>
<year>2011</year>
<publisher>VTech</publisher>
<part name="cart" interface="vtech_storio_cart">
<dataarea name="rom" size="0x4200000">
- <rom name="80-281004 - Micky Maus Wunderhaus (GER).bin" size="0x4200000" crc="036fc056" sha1="28f5b7c13eaceadeca5f4e8ec8b1ef2f2d85d1ba" offset="0" />
+ <rom name="80-281004 - Micky Maus Wunderhaus (GER).bin" size="0x4200000" crc="036fc056" sha1="28f5b7c13eaceadeca5f4e8ec8b1ef2f2d85d1ba" />
</dataarea>
</part>
</software>
@@ -168,7 +209,7 @@ license:CC0
<publisher>VTech</publisher>
<part name="cart" interface="vtech_storio_cart">
<dataarea name="rom" size="0x4200000">
- <rom name="80-281404 - Spongebob Schwammkopf - Ein Schwamm will nach oben (GER).bin" size="0x4200000" crc="f1a68329" sha1="95c39150ab86233575f4f32574f7077436077adf" offset="0" />
+ <rom name="80-281404 - Spongebob Schwammkopf - Ein Schwamm will nach oben (GER).bin" size="0x4200000" crc="f1a68329" sha1="95c39150ab86233575f4f32574f7077436077adf" />
</dataarea>
</part>
</software>
@@ -179,7 +220,55 @@ license:CC0
<publisher>VTech</publisher>
<part name="cart" interface="vtech_storio_cart">
<dataarea name="rom" size="0x4200000">
- <rom name="80-281504 - Rapunzel - Neu verfohnt (GER).bin" size="0x4200000" crc="70fd0039" sha1="85823b4fcbcb3ff644154c3c0f3f3bd962846e50" offset="0" />
+ <rom name="80-281504 - Rapunzel - Neu verfohnt (GER).bin" size="0x4200000" crc="70fd0039" sha1="85823b4fcbcb3ff644154c3c0f3f3bd962846e50" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="cars2" supported="no">
+ <description>Cars 2 (USA)</description>
+ <year>2011</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-281900(US)"/>
+ <part name="cart" interface="vtech_storio_cart">
+ <dataarea name="rom" size="0x8400000">
+ <rom name="v.reader_cars_2_n231gt_c279.bin" size="0x8400000" crc="c59126cc" sha1="8bd36e0dc2633ebf8ec6ac4d05edc6a60ca94e45" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="hkitty" supported="no">
+ <description>Hello Kitty's Surprise (USA)</description>
+ <year>2012</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-282400(US)"/>
+ <part name="cart" interface="vtech_storio_cart">
+ <dataarea name="rom" size="0x4200000">
+ <rom name="v.reader_Hello_Kittys_Surprise_GPR27P512A_c276.bin" size="0x4200000" crc="f8ecdc4e" sha1="9e5b60f03a2526225b621f7bd3e52cad53afeda4" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="dprinc" supported="no">
+ <description>Disney Princess - A Gift From The Heart &amp; Belle's Special Treat (USA)</description>
+ <year>2010</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-281100(US)"/>
+ <part name="cart" interface="vtech_storio_cart">
+ <dataarea name="rom" size="0x4200000">
+ <rom name="v.reader_Princess_Gift_From_the_Heart_Belles_Special_Treat_GPR27P512A_c276.bin" size="0x4200000" crc="43159ded" sha1="dec9f3cafa4382fabb2a7596d9b35ec2292b4b0c" />
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="tbell" supported="no">
+ <description>TinkerBell and the Great Fairy Rescue (USA)</description>
+ <year>2010</year>
+ <publisher>VTech</publisher>
+ <info name="serial" value="80-280300(US)"/>
+ <part name="cart" interface="vtech_storio_cart">
+ <dataarea name="rom" size="0x4200000">
+ <rom name="v.reader_tinkerbell_great_fairy_rescue_n23512t_c276.bin" size="0x4200000" crc="79989a39" sha1="25d6a200556f8aa8784a4e86e25e65d80c797e50" />
</dataarea>
</part>
</software>
diff --git a/scripts/target/mame/mess.lua b/scripts/target/mame/mess.lua
index c034b9b403b..a8863d06bc8 100644
--- a/scripts/target/mame/mess.lua
+++ b/scripts/target/mame/mess.lua
@@ -2838,6 +2838,7 @@ createMESSProjects(_target, _subtarget, "leapfrog")
files {
MAME_DIR .. "src/mame/drivers/leapster.cpp",
MAME_DIR .. "src/mame/drivers/leapfrog_leappad.cpp",
+ MAME_DIR .. "src/mame/drivers/leapfrog_leapster_explorer.cpp",
MAME_DIR .. "src/mame/drivers/leapfrog_iquest.cpp",
}
@@ -4305,39 +4306,40 @@ files {
createMESSProjects(_target, _subtarget, "vtech")
files {
+ MAME_DIR .. "src/mame/drivers/clickstart.cpp",
MAME_DIR .. "src/mame/drivers/crvision.cpp",
MAME_DIR .. "src/mame/includes/crvision.h",
MAME_DIR .. "src/mame/drivers/gamemachine.cpp",
- MAME_DIR .. "src/mame/audio/nl_gamemachine.h",
MAME_DIR .. "src/mame/audio/nl_gamemachine.cpp",
+ MAME_DIR .. "src/mame/audio/nl_gamemachine.h",
MAME_DIR .. "src/mame/drivers/geniusiq.cpp",
MAME_DIR .. "src/mame/drivers/geniusjr.cpp",
MAME_DIR .. "src/mame/drivers/gkidabc.cpp",
MAME_DIR .. "src/mame/drivers/glcx.cpp",
- MAME_DIR .. "src/mame/drivers/vtech_eu3a12.cpp",
+ MAME_DIR .. "src/mame/drivers/innotv_innotabmax.cpp",
+ MAME_DIR .. "src/mame/drivers/inteladv.cpp",
MAME_DIR .. "src/mame/drivers/iqunlim.cpp",
MAME_DIR .. "src/mame/drivers/laser3k.cpp",
MAME_DIR .. "src/mame/drivers/lcmate2.cpp",
+ MAME_DIR .. "src/mame/drivers/pc2000.cpp",
MAME_DIR .. "src/mame/drivers/pc4.cpp",
MAME_DIR .. "src/mame/includes/pc4.h",
MAME_DIR .. "src/mame/video/pc4.cpp",
- MAME_DIR .. "src/mame/drivers/pc2000.cpp",
MAME_DIR .. "src/mame/drivers/prestige.cpp",
- MAME_DIR .. "src/mame/drivers/vtech1.cpp",
- MAME_DIR .. "src/mame/drivers/vtech2.cpp",
- MAME_DIR .. "src/mame/includes/vtech2.h",
- MAME_DIR .. "src/mame/machine/vtech2.cpp",
- MAME_DIR .. "src/mame/video/vtech2.cpp",
MAME_DIR .. "src/mame/drivers/socrates.cpp",
MAME_DIR .. "src/mame/audio/socrates.cpp",
MAME_DIR .. "src/mame/audio/socrates.h",
- MAME_DIR .. "src/mame/drivers/inteladv.cpp",
- MAME_DIR .. "src/mame/includes/vsmile.h",
+ MAME_DIR .. "src/mame/drivers/storio.cpp",
MAME_DIR .. "src/mame/drivers/vsmile.cpp",
+ MAME_DIR .. "src/mame/includes/vsmile.h",
MAME_DIR .. "src/mame/drivers/vsmileb.cpp",
- MAME_DIR .. "src/mame/drivers/clickstart.cpp",
- MAME_DIR .. "src/mame/drivers/storio.cpp",
- MAME_DIR .. "src/mame/drivers/innotv_innotabmax.cpp",
+ MAME_DIR .. "src/mame/drivers/vtech1.cpp",
+ MAME_DIR .. "src/mame/drivers/vtech2.cpp",
+ MAME_DIR .. "src/mame/includes/vtech2.h",
+ MAME_DIR .. "src/mame/video/vtech2.cpp",
+ MAME_DIR .. "src/mame/machine/vtech2.cpp",
+ MAME_DIR .. "src/mame/drivers/vtech_eu3a12.cpp",
+ MAME_DIR .. "src/mame/drivers/vtech_innotab.cpp",
}
createMESSProjects(_target, _subtarget, "wang")
diff --git a/src/mame/drivers/leapfrog_leappad.cpp b/src/mame/drivers/leapfrog_leappad.cpp
index 197b24d5547..87798e65ed9 100644
--- a/src/mame/drivers/leapfrog_leappad.cpp
+++ b/src/mame/drivers/leapfrog_leappad.cpp
@@ -217,6 +217,8 @@ ROM_START( ltleappad )
ROM_DEFAULT_BIOS("mar_10_2005")
ROM_SYSTEM_BIOS( 0, "mar_10_2005", "Mar 10 2005" )
ROMX_LOAD( "littletouchleappadbios.bin", 0x000000, 0x400000, CRC(13687b26) SHA1(6ec1a47aaef9c9ed134bb143c2631f4d89d7c236), ROM_BIOS(0) ) // contains "Mar 10 2005 07:01:53 152-11244" and "Copyright (c) 2002-2005 LeapFrog Enterprises, Inc."
+ ROM_SYSTEM_BIOS( 1, "germany", "Germany, Jan 11 2005" )
+ ROMX_LOAD( "leappad_little_touch_german.bin", 0x000000, 0x400000, CRC(39ee76a2) SHA1(34f1b6e075e10e14380d925944f4c84d068ec58e), ROM_BIOS(1) ) // contains "Jan 11 2005 10:45:42 152-11010 Full Base ROM: V1.0 - Germany"
ROM_END
// year, name, parent, compat, machine, input, class, init, company, fullname, flags
diff --git a/src/mame/drivers/leapfrog_leapster_explorer.cpp b/src/mame/drivers/leapfrog_leapster_explorer.cpp
new file mode 100644
index 00000000000..af34683cb9c
--- /dev/null
+++ b/src/mame/drivers/leapfrog_leapster_explorer.cpp
@@ -0,0 +1,108 @@
+// license:BSD-3-Clause
+// copyright-holders:David Haywood
+/******************************************************************************
+
+ LeapFrog Leapster Explorer
+
+ - runs Linux
+ - unknown ARM9 based SoC
+
+ Internal ROM not currently dumped, this file exists to reference the
+ Software List
+
+*******************************************************************************/
+
+#include "emu.h"
+
+#include "cpu/arm7/arm7.h"
+#include "cpu/arm7/arm7core.h"
+
+#include "bus/generic/slot.h"
+#include "bus/generic/carts.h"
+
+#include "screen.h"
+#include "softlist.h"
+#include "speaker.h"
+
+class leapfrog_leapster_explorer_state : public driver_device
+{
+public:
+ leapfrog_leapster_explorer_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ , m_screen(*this, "screen")
+ , m_cart(*this, "cartslot")
+ , m_cart_region(nullptr)
+ { }
+
+ void leapfrog_leapster_explorer(machine_config &config);
+
+private:
+ virtual void machine_start() override;
+
+ DECLARE_DEVICE_IMAGE_LOAD_MEMBER(cart_load);
+
+ required_device<cpu_device> m_maincpu;
+
+ required_device<screen_device> m_screen;
+ required_device<generic_slot_device> m_cart;
+ memory_region *m_cart_region;
+
+ uint32_t screen_update_innotab(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+};
+
+uint32_t leapfrog_leapster_explorer_state::screen_update_innotab(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
+{
+ return 0;
+}
+
+void leapfrog_leapster_explorer_state::machine_start()
+{
+ // if there's a cart, override the standard mapping
+ if (m_cart && m_cart->exists())
+ {
+ m_cart_region = memregion(std::string(m_cart->tag()) + GENERIC_ROM_REGION_TAG);
+ }
+}
+
+DEVICE_IMAGE_LOAD_MEMBER(leapfrog_leapster_explorer_state::cart_load)
+{
+ uint32_t size = m_cart->common_get_size("rom");
+
+ m_cart->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_LITTLE);
+ m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
+
+ return image_init_result::PASS;
+}
+
+static INPUT_PORTS_START( leapfrog_leapster_explorer )
+INPUT_PORTS_END
+
+
+void leapfrog_leapster_explorer_state::leapfrog_leapster_explorer(machine_config& config)
+{
+ ARM9(config, m_maincpu, 393000000); // unknown ARM9 type
+
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_refresh_hz(60);
+ m_screen->set_size(320, 262);
+ m_screen->set_visarea(0, 320 - 1, 0, 240 - 1);
+ m_screen->set_screen_update(FUNC(leapfrog_leapster_explorer_state::screen_update_innotab));
+
+ SPEAKER(config, "lspeaker").front_left();
+ SPEAKER(config, "rspeaker").front_right();
+
+ GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "leapfrog_leapster_explorer_cart");
+ m_cart->set_width(GENERIC_ROM16_WIDTH);
+ m_cart->set_device_load(FUNC(leapfrog_leapster_explorer_state::cart_load));
+
+ SOFTWARE_LIST(config, "cart_list").set_original("leapfrog_leapster_explorer_cart");
+}
+
+ROM_START( leapexpr )
+ ROM_REGION( 0x0100000, "maincpu", ROMREGION_ERASEFF )
+ // unknown internal ROM
+ ROM_LOAD( "internal.rom", 0x000000, 0x0100000, NO_DUMP )
+ROM_END
+
+CONS( 2010, leapexpr, 0, 0, leapfrog_leapster_explorer, leapfrog_leapster_explorer, leapfrog_leapster_explorer_state, empty_init, "LeapFrog", "Leapster Explorer", MACHINE_IS_SKELETON )
diff --git a/src/mame/drivers/nes_vt369_vtunknown.cpp b/src/mame/drivers/nes_vt369_vtunknown.cpp
index 1be6d6b7f1a..421691e63fb 100644
--- a/src/mame/drivers/nes_vt369_vtunknown.cpp
+++ b/src/mame/drivers/nes_vt369_vtunknown.cpp
@@ -617,6 +617,11 @@ ROM_START( rtvgc300fz )
ROM_LOAD( "jg7800fz.bin", 0x00000, 0x4000000, CRC(c9d319d2) SHA1(9d0d1435b802f63ce11b94ce54d11f4065b324cc) )
ROM_END
+ROM_START( lxccatv )
+ ROM_REGION( 0x2000000, "mainrom", 0 )
+ ROM_LOAD( "120n1.bin", 0x00000, 0x2000000, CRC(6b9cf537) SHA1(44276c3ef928c76a3ecf404d2e531cd3ce5561af) )
+ROM_END
+
// The maximum address space a VT chip can see is 32MB, so these 64MB roms are actually 2 programs (there are vectors in the first half and the 2nd half)
// there must be a bankswitch bit that switches the whole 32MB space. Loading the 2nd half in Star Wars does actually boot straight to a game.
ROM_START( lxcmcy )
@@ -901,25 +906,26 @@ CONS( 2017, fapocket, 0, 0, nes_vt369_vtunknown_fa_4x16mb, nes_vt369_v
// don't even get to menu. very enhanced chipset, VT368/9?
CONS( 2012, dgun2561, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "dreamGEAR", "My Arcade Portable Gaming System with 140 Games (DGUN-2561)", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmcy, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmc250, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - 250-in-1 (JL2375)", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmcysw, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - Star Wars Rebels", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmcyfz, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - Frozen", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmcydp, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - Disney Princess", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmcysp, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - Marvel Ultimate Spider-Man", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmcycr, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - Cars", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxcmcypj, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - PJ Masks", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 2012, lxccatv, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade TV - 120 in 1 (JL2370)", MACHINE_NOT_WORKING ) // 32MByte ROM, 2011 on case, 2012 on PCB
+CONS( 200?, lxcmcy, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmc250, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade - 250-in-1 (JL2375)", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmcysw, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade - Star Wars Rebels", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmcyfz, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade - Frozen", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmcydp, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade - Disney Princess", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmcysp, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade - Marvel Ultimate Spider-Man", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmcycr, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade - Cars", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmcypj, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Compact Cyber Arcade - PJ Masks", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
// the data order is swapped for this one, maybe other internal differences?
-CONS( 200?, lxcmcypp, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, init_lxcmcypp, "Lexibook", "Lexibook Compact Cyber Arcade - Paw Patrol", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxcmcypp, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, init_lxcmcypp, "Lexibook", "Compact Cyber Arcade - Paw Patrol", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxccminn, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Console Colour - Minnie Mouse", MACHINE_NOT_WORKING ) // 64Mbyte (used) ROM, must be externally banked, or different addressing scheme
-CONS( 200?, lxccplan, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Console Colour - Disney's Planes", MACHINE_NOT_WORKING ) // 64Mbyte (used) ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxccminn, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Console Colour - Minnie Mouse", MACHINE_NOT_WORKING ) // 64Mbyte (used) ROM, must be externally banked, or different addressing scheme
+CONS( 200?, lxccplan, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Console Colour - Disney's Planes", MACHINE_NOT_WORKING ) // 64Mbyte (used) ROM, must be externally banked, or different addressing scheme
// GB-NO13-Main-VT389-2 on PCBs
-CONS( 2016, rtvgc300, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Retro TV Game Console - 300 Games", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
-CONS( 2017, rtvgc300fz,0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Lexibook Retro TV Game Console - Frozen - 300 Games", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 2016, rtvgc300, 0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Retro TV Game Console - 300 Games", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
+CONS( 2017, rtvgc300fz,0, 0, nes_vt369_vtunknown_cy_bigger, nes_vt369_vtunknown, nes_vt369_vtunknown_cy_state, empty_init, "Lexibook", "Retro TV Game Console - Frozen - 300 Games", MACHINE_NOT_WORKING ) // 64Mbyte ROM, must be externally banked, or different addressing scheme
/* The following are also confirmed to be NES/VT derived units, most having a standard set of games with a handful of lazy graphic mods thrown in to fit the unit theme
diff --git a/src/mame/drivers/storio.cpp b/src/mame/drivers/storio.cpp
index 7e3b6560bd8..da45315139a 100644
--- a/src/mame/drivers/storio.cpp
+++ b/src/mame/drivers/storio.cpp
@@ -45,7 +45,6 @@ public:
{ }
void vtech_storio(machine_config &config);
- void vtech_innotab(machine_config &config);
private:
virtual void machine_start() override;
@@ -122,12 +121,6 @@ void vtech_storio_state::vtech_storio(machine_config &config)
SOFTWARE_LIST(config, "cart_list").set_original("vtech_storio_cart");
}
-void vtech_storio_state::vtech_innotab(machine_config &config)
-{
- vtech_storio_base(config);
- SOFTWARE_LIST(config, "cart_list").set_original("vtech_innotab_cart");
-}
-
// BIOS is 1 GBIT (128M × 8 BIT) CMOS NAND EEPROM (Toshiba TC58NVG0S3ETA00)
// ROM image from VTech, not padded to the real ROM size
@@ -185,11 +178,6 @@ ROM_START( storionl )
ROM_LOAD( "nldut-pack_20111017.bin", 0x000000, 0x03af81c6, CRC(6cfac599) SHA1(d16b45fd287c9d823bde13b88eb6c8158ac2b475) )
ROM_END
-ROM_START( innotab2 )
- ROM_REGION( 0x08400000, "maincpu", ROMREGION_ERASEFF )
- ROM_LOAD( "innotab2.bin", 0x000000, 0x08400000, NO_DUMP )
-ROM_END
-
// year, name, parent, compat, machine, input, class, init, company, fullname, flags
CONS( 2011, vreader, 0, 0, vtech_storio, vtech_storio, vtech_storio_state, empty_init, "VTech", "V.Reader (US, English, 2011-10-17)", MACHINE_IS_SKELETON )
CONS( 2011, vreadercaen, vreader, 0, vtech_storio, vtech_storio, vtech_storio_state, empty_init, "VTech", "V.Reader (CA, English, 2011-10-17)", MACHINE_IS_SKELETON )
@@ -200,5 +188,3 @@ CONS( 2011, storioes, vreader, 0, vtech_storio, vtech_storio, vtech_sto
CONS( 2011, storioesa, vreader, 0, vtech_storio, vtech_storio, vtech_storio_state, empty_init, "VTech", "Storio (ES, Spanish, 2011-06-17?)", MACHINE_IS_SKELETON )
CONS( 2011, storiofr, vreader, 0, vtech_storio, vtech_storio, vtech_storio_state, empty_init, "VTech", "Storio (FR, French, 2011-10-17)", MACHINE_IS_SKELETON )
CONS( 2011, storionl, vreader, 0, vtech_storio, vtech_storio, vtech_storio_state, empty_init, "VTech", "Storio (NL, Dutch, 2011-10-17)", MACHINE_IS_SKELETON )
-// the InnoTAB 1/2/3 seem closely related?
-CONS( 2011, innotab2, 0, 0, vtech_innotab, vtech_storio, vtech_storio_state, empty_init, "VTech", "InnoTAB 2 (UK)", MACHINE_IS_SKELETON )
diff --git a/src/mame/drivers/vtech_innotab.cpp b/src/mame/drivers/vtech_innotab.cpp
new file mode 100644
index 00000000000..ff5509b8fed
--- /dev/null
+++ b/src/mame/drivers/vtech_innotab.cpp
@@ -0,0 +1,218 @@
+// license:BSD-3-Clause
+// copyright-holders:David Haywood
+/******************************************************************************
+
+ VTech InnoTab 1/2/3
+ NOT InnoTab MAX
+
+ InnoTab 1/2/3 appear to be compatible with each other (updated internal
+ software etc.)
+
+ where do the InnoTab 3S and InnoTab 2 Baby fit in?
+
+*******************************************************************************/
+
+#include "emu.h"
+
+#include "cpu/arm7/arm7.h"
+#include "cpu/arm7/arm7core.h"
+
+#include "bus/generic/slot.h"
+#include "bus/generic/carts.h"
+
+#include "screen.h"
+#include "softlist.h"
+#include "speaker.h"
+
+class vtech_innotab_state : public driver_device
+{
+public:
+ vtech_innotab_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ , m_screen(*this, "screen")
+ , m_cart(*this, "cartslot")
+ , m_cart_region(nullptr)
+ { }
+
+ void vtech_innotab(machine_config &config);
+
+private:
+ virtual void machine_start() override;
+
+ DECLARE_DEVICE_IMAGE_LOAD_MEMBER(cart_load);
+
+ required_device<cpu_device> m_maincpu;
+
+ required_device<screen_device> m_screen;
+ required_device<generic_slot_device> m_cart;
+ memory_region *m_cart_region;
+
+ uint32_t screen_update_innotab(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
+};
+
+uint32_t vtech_innotab_state::screen_update_innotab(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
+{
+ return 0;
+}
+
+void vtech_innotab_state::machine_start()
+{
+ // if there's a cart, override the standard mapping
+ if (m_cart && m_cart->exists())
+ {
+ m_cart_region = memregion(std::string(m_cart->tag()) + GENERIC_ROM_REGION_TAG);
+ }
+}
+
+DEVICE_IMAGE_LOAD_MEMBER(vtech_innotab_state::cart_load)
+{
+ uint32_t size = m_cart->common_get_size("rom");
+
+ m_cart->rom_alloc(size, GENERIC_ROM16_WIDTH, ENDIANNESS_LITTLE);
+ m_cart->common_load_rom(m_cart->get_rom_base(), size, "rom");
+
+ return image_init_result::PASS;
+}
+
+static INPUT_PORTS_START( vtech_innotab )
+INPUT_PORTS_END
+
+
+void vtech_innotab_state::vtech_innotab(machine_config& config)
+{
+ ARM9(config, m_maincpu, 240000000); // unknown ARM type
+
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_refresh_hz(60);
+ m_screen->set_size(320, 262);
+ m_screen->set_visarea(0, 320 - 1, 0, 240 - 1);
+ m_screen->set_screen_update(FUNC(vtech_innotab_state::screen_update_innotab));
+
+ SPEAKER(config, "lspeaker").front_left();
+ SPEAKER(config, "rspeaker").front_right();
+
+ GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "vtech_innotab_cart");
+ m_cart->set_width(GENERIC_ROM16_WIDTH);
+ m_cart->set_device_load(FUNC(vtech_innotab_state::cart_load));
+
+ SOFTWARE_LIST(config, "cart_list").set_original("vtech_innotab_cart");
+}
+
+/*
+**************************************************************
+APP Version : 10.90
+ Device : THGBM4G4D1HBAIR(ISP)_4Bit
+**************************************************************
+
+
+File Name :
+*******************************************************************
+D:\Xgpro\UserData\EMMC_Data
+ECSD_CSD.BIN
+*******************************************************************
+
+
+ <1> -- Production Info.and Device life time--
+
+ MID : 11
+ PNM : 002G49
+ Product Date : 5-2012
+ Version : MMC V4.41
+
+ Device life time Type A : Not defined
+ Device life time Type B : Not defined
+ Device life time (PRE_EOL_INFO) : Not Defined
+
+ <2> -- Partition Size Info.--
+
+ BOOT1 SIZE : 1024 KB
+ BOOT2 SIZE : 1024 KB
+ RPMB SIZE : 128 KB
+ GPP1 SIZE : 0 KB
+ GPP2 SIZE : 0 KB
+ GPP3 SIZE : 0 KB
+ GPP4 SIZE : 0 KB
+ USER SIZE : 1,916,928 KB
+ ( 0x 00_7500_0000 )
+ Password Protect Features : YES
+
+ <5> -- other Informations --
+
+ MAX_READ_BL_LEN : 1024 bytes
+ MAX_WRITE_BL_LEN : 512 bytes
+ MAX_TRAN_SPEED : 55.000 MHZ
+
+ BOOT_BUS_CONDITIONS[177] : 00
+ BOOT_CONFIG_PROT[178] : 00
+ PARTITION_CONFIG[179] : 00
+ RST_n_FUNCTION[162] : 00
+
+ ENH_START_ADDR : 00000000
+ ENH_SIZE_MULT : 000000
+ MAX_ENH_SIZE_MULT : 0003A8
+ PARTITIONS_ATTRIBUTE : 00
+ WR_REL_SET : 00
+ WR_REL_PARAM : 05
+ PARTITION_SETTING_COMPLETED : 00
+
+ HC_WP_GRP_SIZE : 1
+ HC_ERASE_GRP_SIZE : 2
+ WP_GRP_ENABLE : 1
+ WP_GRP_SIZE : 1
+ ERASE_GRP_MULT : 31
+ ERASE_GRP_SIZE : 31
+ CCC : 00F5
+ DSR implemented : 0
+ PARTITION_ACCESS : 10 ms
+ ERASED_MEM_CONT : 01
+ DYNCAP_NEEDED : 00
+ SECURE_WP_INFO : 00
+ SEC_ERASE_MULT : 10
+ ERASE_TIMEOUT_MULT: 02
+ NATIVE_SECTOR_SIZE: 00 (512B)
+ INI_TIMEOUT_AP : 3000 ms
+ INI_TIMEOUT_EMU : 0 ms
+
+----------------------------------------------------------------------------------------------------------------------
+----------------------------------------------------------------------------------------------------------------------
+
+**************************************************************
+APP Version : 10.90
+ Device : THGBM4G4D1HBAIR(ISP)_4Bit
+**************************************************************
+
+Init EMMC... OK! ( OCR register: 80FF8080 )
+Verifing CSD Succeeded
+Verifing ECSD Succeeded
+Verifing BOOT1 : Succeeded. Time : 0. 47 S -- Partition Size :1024 KB Processing Size from the File : 1024 KB )
+Verifing BOOT2 : Succeeded. Time : 0. 47 S -- Partition Size :1024 KB Processing Size from the File : 1024 KB )
+Analysis file is complete, Space usage: 20.26% time: 13S
+Verifing User Area : Succeeded. Time : 36.531 S -- Partition Size :1916928 KB( Processing Size from the File : 1916928 KB )
+32 bits CheckSum : 0x 86F14222
+
+*/
+
+ROM_START( innotab2 )
+ ROM_REGION( 0x0100000, "maincpu", ROMREGION_ERASEFF )
+ // are there any other dumpable devices?, or internal ROM in the CPU for booting from?
+
+
+ // this uses a "eMMC" type ROM chip, should it be treated as a CHD, or like a NAND ROM?
+ ROM_REGION( 0x0100000, "emmc_boot", ROMREGION_ERASEFF )
+ // these are both blank, unused, or read protected in some way?
+ //ROM_LOAD( "boot1.bin", 0x000000, 0x0100000, CRC(956bac74) SHA1(bf0b121670df23f2cc64302d9f215e7c81187bbb ) // FIXED BITS (11111111)
+ //ROM_LOAD( "boot2.bin", 0x000000, 0x0100000, CRC(956bac74) SHA1(bf0b121670df23f2cc64302d9f215e7c81187bbb ) // FIXED BITS (11111111)
+
+ ROM_REGION( 0x220, "emmc_misc1", ROMREGION_ERASEFF )
+ ROM_LOAD( "ecsd_csd.bin", 0x000000, 0x220, CRC(a30bcb97) SHA1(ba83c5b2c73f26ad89ac7cc44b0ea6971050cfa4) )
+
+ ROM_REGION( 0x75000000, "emmc_user", ROMREGION_ERASEFF )
+ ROM_LOAD( "userdata.bin", 0x000000, 0x75000000, CRC(3c063d5d) SHA1(41a980b9e19e9fdf00f5175bf332b50f741aecb9) )
+
+ //ROM_REGION( 0x3712, "emmc_misc2", ROMREGION_ERASEFF )
+ // this appears to be a project file used by the dumping software, not a ROM
+ //ROM_LOAD( "emmc_ghost.mpj", 0x000000, 0x3712, CRC(16b705da) SHA1(fdb576385cf46984ea40d8e8b83758d94f67507e) )
+ROM_END
+
+CONS( 2011, innotab2, 0, 0, vtech_innotab, vtech_innotab, vtech_innotab_state, empty_init, "VTech", "InnoTAB 2 (UK)", MACHINE_IS_SKELETON )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 45c49d31d63..393fceabc08 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -19666,6 +19666,9 @@ leappad // (c) 2001 LeapFrog / Knowledge Kids Enterprise
mfleappad // (c) 2002 LeapFrog
ltleappad // (c) 2005 LeapFrog
+@source:leapfrog_leapster_explorer.cpp
+leapexpr
+
@source:leapster.cpp
leapster //
leapster2 //
@@ -32719,50 +32722,51 @@ fcpocket
rminitv
@source:nes_vt369_vtunknown.cpp
+240in1ar
bittboy
-mc_pg150
-mc_hh210
-dvnimbus
-unkra200
+denv150
+dgun2561
dgun2577
-lxcyber
+dgun2593
+dvnimbus
+egame150
+fapocket
+gcs2mgp
gtct885
-rd5_240
hkb502
hkb502a
+lpgm240
lxcap
-retro400
-myarccn
-fapocket
-sy889
-sy888b
-mc_cb280
-mog_m320
-dgun2561
-dgun2593
-lxcmcy
+lxccatv
+lxccminn
+lxccplan
lxcmc250
-lxcmcysw
-lxcmcyfz
-lxcmcydp
-lxcmcysp
+lxcmcy
lxcmcycr
+lxcmcydp
+lxcmcyfz
lxcmcypj
lxcmcypp
-lxccminn
-lxccplan
+lxcmcysp
+lxcmcysw
+lxcyber
+mc_cb280
+mc_hh210
+mc_pg150
+mog_m320
+myarccn
+otrail
+rd5_240
+red5mam
+retro400
rtvgc300
rtvgc300fz
-red5mam
-240in1ar
-denv150
-egame150
-lpgm240
+sealvt
+sy888b
+sy889
tup240
-otrail
+unkra200
zonefusn
-sealvt
-gcs2mgp
@source:newbrain.cpp
newbrain //
@@ -38560,7 +38564,6 @@ supreme
arcade10
@source:storio.cpp
-innotab2 // (c) 2011 V.Tech
storio // (c) 2011 V.Tech
storiode // (c) 2011 V.Tech
storioes // (c) 2011 V.Tech
@@ -42135,6 +42138,9 @@ laser700 // 1984? Laser 700
@source:vtech_eu3a12.cpp
vreadere
+@source:vtech_innotab.cpp
+innotab2 // (c) 2011 V.Tech
+
@source:vulgus.cpp
mach9 // bootleg (ITISA)
vulgus // 5/1984 (c) 1984
diff --git a/src/mame/mess.flt b/src/mame/mess.flt
index 8521372ca94..bdaa6019121 100644
--- a/src/mame/mess.flt
+++ b/src/mame/mess.flt
@@ -524,6 +524,7 @@ lc80.cpp
lcmate2.cpp
leapfrog_iquest.cpp
leapfrog_leappad.cpp
+leapfrog_leapster_explorer.cpp
leapster.cpp
learnwin.cpp
lee1214.cpp
@@ -1150,6 +1151,7 @@ vta2000.cpp
vtech1.cpp
vtech2.cpp
vtech_eu3a12.cpp
+vtech_innotab.cpp
wangpc.cpp
wicat.cpp
wizard.cpp