diff --git a/hash/leapster.xml b/hash/leapster.xml index 9716b87bc51..49c4f63f8c0 100644 --- a/hash/leapster.xml +++ b/hash/leapster.xml @@ -189,7 +189,7 @@ - + Disney Princess - Worlds of Enchantment (USA) 2007? LeapFrog @@ -213,7 +213,7 @@ - + Finding Nemo (USA) 2005? LeapFrog @@ -261,7 +261,7 @@ - + Go Diego Go! - Animal Rescuer (USA) 2007? LeapFrog @@ -309,7 +309,7 @@ - + Lernen mit Leap (Ger) 2003 LeapFrog @@ -321,7 +321,7 @@ - + Lernst du Malen & Schreiben - Mit Bruno Bleistift (Ger) 2004? LeapFrog @@ -369,7 +369,7 @@ - + Ratatouille (Ger) 2003 LeapFrog @@ -405,6 +405,7 @@ + Spongebob Squarepants - Saves the Day (USA) 2003 @@ -441,7 +442,7 @@ - + Spider-Man - The Case of the Sinister Speller (USA) 2003 LeapFrog @@ -489,7 +490,7 @@ - + Toy Story 3 (USA) 2010? LeapFrog @@ -501,7 +502,7 @@ - + Wall-E (Ger) 2008? LeapFrog @@ -561,9 +562,189 @@ + + Star Wars - Jedi Reading (US) + 2008 + LeapFrog + + + + + + + + + + Up (US) + 2009 + LeapFrog + + + + + + + + + Scooby Doo! (US) + 2009 + LeapFrog + + + + + + + + + Cars 2 (US) + 2011 + LeapFrog + + + + + + + + + Learning with Leap (US) + 2003 + LeapFrog + + + + + + + + + + Kindergarten (US) + 2003 + LeapFrog + + + + + + + + + + Thomas and Friends - Calling all Engines! (US) + 2005 + LeapFrog + + + + + + + + + Scholastic I Spy - Challenger (US) + 2005 + LeapFrog + + + + + + + + + + Number Raiders (US) + 2005 + LeapFrog + + + + + + + + + + Scooby Doo! - Spooky Snacks! (US) + 2005 + LeapFrog + + + + + + + + + + Animal Genius (US) + 2005 + LeapFrog + + + + + + + + + + Letterpillar (US) + 2005 + LeapFrog + + + + + + + + + + Creature Create (US) + 2006 + LeapFrog + + + + + + + + + + Wall-E (US) + 2007 + LeapFrog + + + + + + + + + + Ratatouille (US) + 2006 + LeapFrog + + + + + + + + + + + + Numbers on the Run - Counting on Zero (USA, L-MAX) 2005? diff --git a/src/mame/drivers/leapster.cpp b/src/mame/drivers/leapster.cpp index 3456be99658..a3225fd5313 100644 --- a/src/mame/drivers/leapster.cpp +++ b/src/mame/drivers/leapster.cpp @@ -291,7 +291,7 @@ void leapster_state::machine_reset() } static ADDRESS_MAP_START( leapster_map, AS_PROGRAM, 32, leapster_state ) - AM_RANGE(0x00000000, 0x001fffff) AM_ROM AM_MIRROR(0x40000000) // pointers in the bios region seem to be to the 40xxxxxx region, either we mirror there or something (real bios?) is acutally missing + AM_RANGE(0x00000000, 0x007fffff) AM_ROM AM_MIRROR(0x40000000) // pointers in the bios region seem to be to the 40xxxxxx region, either we mirror there or something (real bios?) is acutally missing AM_RANGE(0x0180D800, 0x0180D803) AM_READ(leapster_random_r) AM_RANGE(0x03000000, 0x030007ff) AM_RAM // puts stack here, writes a pointer @ 0x03000000 on startup AM_RANGE(0x3c000000, 0x3c1fffff) AM_RAM // really ram, or has our code execution gone wrong? @@ -325,19 +325,34 @@ MACHINE_CONFIG_START(leapster_state::leapster) MCFG_SOFTWARE_LIST_ADD("cart_list", "leapster") MACHINE_CONFIG_END +#define ROM_LOAD_BIOS(bios,name,offset,length,hash) \ + ROMX_LOAD(name, offset, length, hash, ROM_BIOS(bios+1)) /* Note '+1' */ + +/* There are various build dates and revisions for different parts of the code, the date listed is the newest on in each rom. + This is always in the same place relative to the rest of the data + + V2.1 sets (except TV) are apparently larger because "Learning with Leap" was built in +*/ + ROM_START(leapster) - ROM_REGION(0x200000, "maincpu", ROMREGION_ERASE00) - ROM_LOAD( "155-10072-a.bin", 0x00000, 0x200000, CRC(af05e5a0) SHA1(d4468d060543ba7e44785041093bc98bcd9afa07) ) + ROM_REGION(0x800000, "maincpu", ROMREGION_ERASE00) + ROM_SYSTEM_BIOS( 0, "uni15", "Universal 1.5" ) /* 152-10346 Leapster BaseROM Universal v1.5 - Sep 04 2003 10:46:47 */ + ROM_LOAD_BIOS( 0, "155-10072-a.bin" , 0x00000, 0x200000, CRC(af05e5a0) SHA1(d4468d060543ba7e44785041093bc98bcd9afa07) ) + ROM_SYSTEM_BIOS( 1, "uk21", "UK 2.1" ) /* 152-11452 Leapster BaseROM UK v2.1 - Aug 30 2005 16:01:46 */ + ROM_LOAD_BIOS( 1, "leapster2_1004.bin", 0x00000, 0x800000, CRC(b466e14d) SHA1(910c234f03e76b7de55b8aa0a0c62fd1daae4910) ) + ROM_SYSTEM_BIOS( 2, "ger21", "German 2.1" ) /* 152-11435 Leapster BaseROM German v2.1 - Oct 21 2005 18:53:59 */ + ROM_LOAD_BIOS( 2, "leapster2_1006.bin", 0x00000, 0x800000, CRC(a69ed8ca) SHA1(e6aacba0c39b1465f344c2b07ff1cbd8a395adac) ) ROM_END ROM_START(leapstertv) - ROM_REGION(0x200000, "maincpu", ROMREGION_ERASE00) - ROM_LOAD( "am29pl160cb-90sf.bin", 0x00000, 0x200000, CRC(194cc724) SHA1(000a79d75c19f2e43532ce0b31f0dca0bed49eab) ) + ROM_REGION(0x800000, "maincpu", ROMREGION_ERASE00) + ROM_SYSTEM_BIOS( 0, "uni2111", "Universal 2.1.11" ) /* 152-11594 LeapsterTv Baserom Universal.v2.1.11 - Apr 13 2006 16:36:08 */ \ + ROM_LOAD_BIOS( 0, "am29pl160cb-90sf.bin", 0x00000, 0x200000, CRC(194cc724) SHA1(000a79d75c19f2e43532ce0b31f0dca0bed49eab) ) ROM_END DRIVER_INIT_MEMBER(leapster_state,leapster) { } -CONS( 2003, leapster, 0, 0, leapster, leapster, leapster_state, leapster, "LeapFrog", "Leapster (Germany)", MACHINE_IS_SKELETON ) -CONS( 2005, leapstertv, leapster, 0, leapster, leapster, leapster_state, leapster, "LeapFrog", "Leapster TV (Germany)", MACHINE_IS_SKELETON ) +CONS( 2003, leapster, 0, 0, leapster, leapster, leapster_state, leapster, "LeapFrog", "Leapster", MACHINE_IS_SKELETON ) +CONS( 2005, leapstertv, leapster, 0, leapster, leapster, leapster_state, leapster, "LeapFrog", "Leapster TV", MACHINE_IS_SKELETON ) diff --git a/src/mame/drivers/vii.cpp b/src/mame/drivers/vii.cpp index bcbfa7362db..42fca7eca5d 100644 --- a/src/mame/drivers/vii.cpp +++ b/src/mame/drivers/vii.cpp @@ -1396,6 +1396,11 @@ ROM_START( walle ) //ROM_LOAD16_WORD_SWAP( "walle.bin", 0x000000, 0x400000, CRC(6bc90b16) SHA1(184d72de059057aae7800da510fcf05ed1da9ec9)) ROM_END +ROM_START( zone40 ) + ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF ) + ROM_LOAD16_WORD_SWAP( "zone40.bin", 0x0000, 0x4000000, CRC(4ba1444f) SHA1(de83046ab93421486668a247972ad6d3cda19440) ) +ROM_END + ROM_START( zone60 ) ROM_REGION( 0x4000000, "maincpu", ROMREGION_ERASEFF ) ROM_LOAD16_WORD_SWAP( "zone60.bin", 0x0000, 0x4000000, CRC(4cb637d1) SHA1(1f97cbdb4299ac0fbafc2a3aa592066cb0727066)) @@ -1416,6 +1421,34 @@ ROM_START( rad_skatp ) // rom was dumped from the NTSC version, but region comes ROM_LOAD16_WORD_SWAP( "skateboarder.bin", 0x000000, 0x400000, CRC(08b9ab91) SHA1(6665edc4740804956136c68065890925a144626b) ) ROM_END +/* +Wireless Air 60 +(info provided with dump) + +System: Wireless Air 60 +ROM: Toshiba TC58NVG0S3ETA00 +RAM: ESMT M12L128168A + +This is a RAW NAND FLASH DUMP + +Interesting Strings: + +GPnandnand; (GP is General Plus, which is Sunplus by another name) +GLB_GP-F_5B_USBD_1.0.0 +SP_ToneMaker +GLB_GP-FS1_0405L_SPU_1.0.2.3 +SPF2ALP + +"GPnandnand" as a required signature appears to be referenced right here, in page 19 of a GeneralPlus document; +http://www.lcis.com.tw/paper_store/paper_store/GPL162004A-507A_162005A-707AV10_code_reference-20147131205102.pdf + +*/ + +ROM_START( wlsair60 ) + ROM_REGION( 0x8400000, "maincpu", ROMREGION_ERASEFF ) + ROM_LOAD16_WORD_SWAP( "wlsair60.nand", 0x0000, 0x8400000, CRC(eec23b97) SHA1(1bb88290cf54579a5bb51c08a02d793cd4d79f7a) ) +ROM_END + // YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS // VTech systems @@ -1437,3 +1470,9 @@ CONS( 2008, walle, 0, 0, batman, walle, spg2xx_game_sta // Radica TV games CONS( 2006, rad_skat, 0, 0, spg2xx_base, rad_skat, spg2xx_game_state, rad_skat, "Radica", "Play TV Skateboarder (NTSC)", MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) CONS( 2006, rad_skatp, rad_skat,0, spg2xx_basep,rad_skatp,spg2xx_game_state, rad_skat, "Radica", "Connectv Skateboarder (PAL)", MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) + +// might not fit here. First 0x8000 bytes are blank (not too uncommon for these) then rest of rom looks like it's probably encrypted at least +CONS( 200?, zone40, 0, 0, spg2xx_base, wirels60, spg2xx_game_state, wirels60, "Jungle Soft", "Zone 40", MACHINE_NO_SOUND | MACHINE_NOT_WORKING ) +// might not fit here, NAND dump, has internal bootstrap at least, see above. +CONS( 200?, wlsair60, 0, 0, spg2xx_base, wirels60, spg2xx_game_state, wirels60, "Jungle Soft", "Wireless Air 60", MACHINE_NO_SOUND | MACHINE_NOT_WORKING ) + diff --git a/src/mame/mame.lst b/src/mame/mame.lst index f01084b8ee1..69ecf068a36 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -37798,6 +37798,8 @@ vsmilef // vsmileg // walle // wirels60 // Wireless 60 +wlsair60 // Wireless Air 60 +zone40 // Zone 40 zone60 // Zone 60 rad_skat // rad_skatp //