mirror of
https://github.com/holub/mame
synced 2025-04-20 23:42:22 +03:00
new NOT WORKING clones (JAKKS Pacific / SunPlus) + WORKING machine (Geigeki Shooter XaviX) etc. (#4714)
* new NOT WORKING --- Spider-Man (JAKKS Pacific TV Game) (older hardare) [Sean Riddle, external donators] looks like this is SPG110 or similar, die markings to be confirmed, does things a little different to Pinball, so might just be a different mode, or slightly different die, we'll find out later. * new NOT WORKING machines --- I Can Play Piano [Sean Riddle, external donators] new NOT WORKING software list entries --- icanpian:pianfav Piano Favorites [Sean Riddle, external donators] * specify unsupported (nw) * (nw) * add a known cartridges list to icanpian (nw) * list some known carts here too (nw) * (nw) * visual inspection of die from Sean suggests it's the same (nw) * (nw) * add pinout information from Sean for the I Can Play Guitar and Piano carts * new WORKING machines --- Geigeki Go Go Shooting (Japan) [Peter Wilhelmsen, Sean Riddle, ShouTime, David Haywood] new NOT WORKING machines --- e-kara Mix (Japan) [Peter Wilhelmsen, Sean Riddle, ShouTime, David Haywood] (e-kara mix is designed to connect to a PC, don't think it displays other than the startup warning message unless you do that, might also require specific carts)
This commit is contained in:
parent
6b67495d92
commit
390b7c812c
@ -1,7 +1,49 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
|
||||
|
||||
<!--
|
||||
Known cartridges (*=dumped)
|
||||
there could be more
|
||||
|
||||
*Guitar Favorites (K7357)
|
||||
Barbie Guitar Party
|
||||
Hot Wheels Road Tunes
|
||||
Nashville Hits
|
||||
Rock 101
|
||||
Spongebob Squarepants Surf's Up
|
||||
American Idol Guitar Greats
|
||||
|
||||
cartridge pinout (not identical to I Can Play Piano)
|
||||
|
||||
1 ground 2 ground
|
||||
3 A0 4 A1
|
||||
5 A2 6 A3
|
||||
7 A4 8 A5
|
||||
9 A6 10 A7
|
||||
11 A17 12 A18
|
||||
13 A21 14 A20
|
||||
15 A19 16 A8
|
||||
17 A9 18 A10
|
||||
19 A11 20 A12
|
||||
21 A13 22 A14
|
||||
23 A15 24 A16
|
||||
25 /CE 26 ground
|
||||
27 ground 28 /OE
|
||||
29 D15 30 D7
|
||||
31 D14 32 D6
|
||||
33 D13 34 D5
|
||||
35 D12 36 D4
|
||||
37 Vcc 38 Vcc
|
||||
39 D11 40 D3
|
||||
41 D10 42 D2
|
||||
43 D9 44 D1
|
||||
45 D8 46 D0
|
||||
47 ground 48 Gnd
|
||||
|
||||
-->
|
||||
|
||||
<softwarelist name="icanguit_cart" description="Fisher-Price / Mattel I Can Play Guitar cartridges">
|
||||
<software name="guitfav">
|
||||
<software name="guitfav" supported="no">
|
||||
<description>Guitar Favorites</description>
|
||||
<year>2007</year>
|
||||
<publisher>Fisher-Price / Mattel</publisher>
|
||||
|
61
hash/icanpian.xml
Normal file
61
hash/icanpian.xml
Normal file
@ -0,0 +1,61 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
|
||||
|
||||
<!--
|
||||
Known cartridges (*=dumped)
|
||||
there could be more
|
||||
|
||||
*Piano Favourites (J7522)
|
||||
Jammin Jungle Safari (Disney The Lion King, Disney The Jungle Book, Disney Tarzan)
|
||||
Jungle Boogie
|
||||
Scooby-Doo! Monster Mayhem
|
||||
Rockin' Dance Party
|
||||
Nicktoons Show Tunes
|
||||
Holiday Wonderland
|
||||
Barbie Princess Enchanted Sounds
|
||||
Pop Hits
|
||||
Dora the Explorer Musical Adventure
|
||||
American Idol - Take The Stage
|
||||
Disney Princess Magical Melodies
|
||||
The Wizard of Oz - We're Off to Play the Piano
|
||||
|
||||
cartridge pinout (not identical to I Can Play Guitar)
|
||||
|
||||
1 ground 2 ground
|
||||
3 A1 4 A0
|
||||
5 A3 6 A2
|
||||
7 A5 8 A4
|
||||
9 A7 10 A6
|
||||
11 A18 12 A17
|
||||
13 A20 14 A21
|
||||
15 A8 16 A19
|
||||
17 A10 18 A9
|
||||
19 A12 20 A11
|
||||
21 A14 22 A13
|
||||
23 A16 24 A15
|
||||
25 /OE 26 Vcc
|
||||
27 /CS 28 RW
|
||||
29 Res 30 R7
|
||||
31 D7 32 D15
|
||||
33 D6 34 D14
|
||||
35 D5 36 D13
|
||||
37 D4 38 D12
|
||||
39 D3 40 D11
|
||||
41 D2 42 D10
|
||||
43 D1 44 D9
|
||||
45 D0 46 D8
|
||||
47 ground 48 Gnd
|
||||
-->
|
||||
|
||||
<softwarelist name="icanpian_cart" description="Fisher-Price / Mattel I Can Play Piano cartridges">
|
||||
<software name="pianfav" supported="no">
|
||||
<description>Piano Favorites</description>
|
||||
<year>2007</year>
|
||||
<publisher>Fisher-Price / Mattel</publisher>
|
||||
<part name="cart" interface="icanpian_cart">
|
||||
<dataarea name="rom" size="0x800000">
|
||||
<rom name="icpppianofavorites.bin" size="0x800000" crc="cca31d78" sha1="4724df29c008e9518345ec4fc77288b7ec138c29" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</softwarelist>
|
@ -8,6 +8,8 @@
|
||||
|
||||
"SunPlus PA7801" ( known as Sunplus SPG110? )
|
||||
Classic Arcade Pinball
|
||||
EA Sports (NHL95 + Madden 95)
|
||||
Spiderman 5-in-1 (original release)
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
@ -78,5 +80,12 @@ ROM_START( jak_capb )
|
||||
ROM_LOAD16_WORD_SWAP( "classicarcadepinball.bin", 0x000000, 0x200000, CRC(b643dab0) SHA1(f57d546758ba442e28b5f0f48b3819b2fc2eb7f7) )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( jak_spdmo )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
|
||||
ROM_LOAD16_WORD_SWAP( "spidermaneyes.bin", 0x000000, 0x200000, CRC(d5eaa6ae) SHA1(df226d378b41cf6ef90b9f72e48ff5e66385dcba) )
|
||||
ROM_END
|
||||
|
||||
// JAKKS Pacific Inc TV games
|
||||
CONS( 2004, jak_capb, 0, 0, spg110_base, spg110, spg110_game_state, empty_init, "JAKKS Pacific Inc / HotGen Ltd", "Classic Arcade Pinball (JAKKS Pacific TV Game)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 2004, jak_capb, 0, 0, spg110_base, spg110, spg110_game_state, empty_init, "JAKKS Pacific Inc / HotGen Ltd", "Classic Arcade Pinball (JAKKS Pacific TV Game)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS )
|
||||
CONS( 2004, jak_spdmo, jak_spdm, 0, spg110_base, spg110, spg110_game_state, empty_init, "JAKKS Pacific Inc / Digital Eclipse", "Spider-Man (JAKKS Pacific TV Game) (older hardare)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // this is the smaller more 'square' style joystick that was originally released before the GameKey slot was added.
|
||||
|
@ -7,38 +7,53 @@
|
||||
Systems which run on the SPG243 SoC
|
||||
|
||||
die markings show
|
||||
"SunPlus QL8041" ( known as Sunplus SPG240? )
|
||||
JAKKS WWE
|
||||
Fantastic 4
|
||||
Justice League
|
||||
Dora the Explorer
|
||||
Mattel Classic Sports
|
||||
"SunPlus QL8041" ( also known as Sunplus SPG240 & PAC300 )
|
||||
|
||||
(all GameKeyReady units?)
|
||||
Disney Princess (GKR)
|
||||
Wheel of Fortune (GKR)
|
||||
(all GameKeyReady units?)
|
||||
JAKKS WWE (GKR)
|
||||
Fantastic 4 (GKR)
|
||||
Justice League (GKR)
|
||||
Dora the Explorer Nursery Rhyme (GKR)
|
||||
Dora the Explorer Play Park (GKR)
|
||||
Spiderman 5-in-1 (GKR)
|
||||
etc.
|
||||
|
||||
"SunPlus QL8041C" ( known as Sunplus SPG2?? )
|
||||
(other non GKR JAKKS games)
|
||||
X-Men (Wolverine pad)
|
||||
Avatar: The Last Airbender
|
||||
|
||||
(other games)
|
||||
Mattel Classic Sports
|
||||
|
||||
"SunPlus QL8041C" ( known as Sunplus SPG2??, seems to be compatible with above, so probably just a chip revision )
|
||||
Clickstart ( see clickstart.cpp instead)
|
||||
Wheel of Fortune 2nd Edition
|
||||
|
||||
Spider-man - Villain Roundup
|
||||
|
||||
"SunPlus PA7801" ( known as Sunplus SPG110? ) see spg110.cpp instead
|
||||
Classic Arcade Pinball
|
||||
EA Sports (NHL95 + Madden 95)
|
||||
Spiderman 5-in-1 (original release)
|
||||
|
||||
It is unknown if the following are close to this architecture or not (no dumps yet)
|
||||
|
||||
"SunPlus QU7073-P69A"
|
||||
Mortal Kombat
|
||||
|
||||
"Sunplus PU7799-P680?" (difficult to read)
|
||||
Mission Paintball
|
||||
|
||||
"Sunplus QL8167"
|
||||
Disney Princess (older)
|
||||
Disney Princess (newer?)
|
||||
Go Diego Go
|
||||
Shrek - Over the Hedge (this unit shows a GameKey Unlock More Games' on startup, but has no port, not even on the internal PCB)
|
||||
Marvel Heroes (Spider-man)
|
||||
Spiderman 3 (Movie - black)
|
||||
|
||||
|
||||
Disney Princess non-GKR is Sunplus QL8167.
|
||||
|
||||
Status:
|
||||
Status:
|
||||
|
||||
Mostly working
|
||||
|
||||
@ -271,6 +286,7 @@ public:
|
||||
{ }
|
||||
|
||||
void icanguit(machine_config &config);
|
||||
void icanpian(machine_config &config);
|
||||
|
||||
private:
|
||||
virtual void machine_start() override;
|
||||
@ -976,52 +992,52 @@ INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( icanguit ) // this has something like 55 buttons, and some strings to map, must be multiplexed somehow?
|
||||
PORT_START("P1")
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "P1" )
|
||||
PORT_DIPNAME( 0x0001, 0x0000, "P1" )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0008, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0080, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0100, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0200, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0400, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x0800, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x1000, 0x1000, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x1000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x2000, 0x2000, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x2000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x4000, 0x4000, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x4000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x8000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
|
||||
@ -1076,10 +1092,87 @@ static INPUT_PORTS_START( icanguit ) // this has something like 55 buttons, and
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
|
||||
PORT_START("P3")
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "P3" )
|
||||
PORT_DIPNAME( 0x0001, 0x0000, "P3" )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON1 ) // Enter?
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON1 ) // Enter?
|
||||
PORT_DIPNAME( 0x0004, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0100, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0200, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_NAME("Power Switch") // presumably power, kils the game
|
||||
PORT_DIPNAME( 0x0800, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x1000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x2000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x4000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x8000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static INPUT_PORTS_START( icanpian ) // this has an entire piano keyboard + extras
|
||||
PORT_START("P1") // the keyboard keys are in here, but each seems triple mapped to 3 octaves so there must be multiplexing
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON4 )
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_BUTTON5 )
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_BUTTON6 )
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON7 )
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON8 )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON9 )
|
||||
PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_BUTTON10 )
|
||||
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_BUTTON11 )
|
||||
PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_BUTTON12 )
|
||||
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_BUTTON13 )
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_BUTTON14 )
|
||||
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_BUTTON15 )
|
||||
PORT_DIPNAME( 0x1000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x2000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x4000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x8000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
|
||||
PORT_START("P2")
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "P2" )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
@ -1104,7 +1197,9 @@ static INPUT_PORTS_START( icanguit ) // this has something like 55 buttons, and
|
||||
PORT_DIPNAME( 0x0200, 0x0200, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_NAME("Power Switch") // presumably power, kils the game
|
||||
PORT_DIPNAME( 0x0400, 0x0400, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0800, 0x0800, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
@ -1120,6 +1215,44 @@ static INPUT_PORTS_START( icanguit ) // this has something like 55 buttons, and
|
||||
PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
|
||||
PORT_START("P3")
|
||||
PORT_DIPNAME( 0x0001, 0x0000, "P3" ) // must be 'ON' to boot
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_BUTTON1 )
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON2 )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON3 )
|
||||
PORT_DIPNAME( 0x0040, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0100, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0200, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x0400, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_NAME("Power Switch") // presumably power, kils the game
|
||||
PORT_DIPNAME( 0x1000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x2000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x4000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x8000, 0x0000, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
@ -1475,6 +1608,24 @@ void icanguit_state::icanguit(machine_config &config)
|
||||
SOFTWARE_LIST(config, "icanguit_cart").set_original("icanguit");
|
||||
}
|
||||
|
||||
void icanguit_state::icanpian(machine_config &config)
|
||||
{
|
||||
SPG24X(config, m_spg, XTAL(27'000'000), m_maincpu, m_screen);
|
||||
|
||||
spg2xx_base(config);
|
||||
|
||||
m_spg->porta_in().set_ioport("P1");
|
||||
m_spg->portb_in().set_ioport("P2");
|
||||
m_spg->portc_in().set_ioport("P3");
|
||||
|
||||
GENERIC_CARTSLOT(config, m_cart, generic_plain_slot, "icanpian_cart");
|
||||
m_cart->set_width(GENERIC_ROM16_WIDTH);
|
||||
m_cart->set_device_load(device_image_load_delegate(&icanguit_state::device_image_load_icanguit_cart, this));
|
||||
m_cart->set_must_be_loaded(true);
|
||||
|
||||
SOFTWARE_LIST(config, "icanpian_cart").set_original("icanpian");
|
||||
}
|
||||
|
||||
|
||||
void spg2xx_game_state::wireless60(machine_config &config)
|
||||
{
|
||||
@ -1858,6 +2009,10 @@ ROM_START( icanguit )
|
||||
// no internal ROM, requires a cartridge
|
||||
ROM_END
|
||||
|
||||
ROM_START( icanpian )
|
||||
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASE00 )
|
||||
// no internal ROM, requires a cartridge
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
Wireless Air 60
|
||||
@ -2078,6 +2233,7 @@ CONS( 2005, mattelcs, 0, 0, rad_skat, mattelcs, spg2xx_game_state, emp
|
||||
CONS( 2007, dreamlif, 0, 0, rad_skat, rad_crik, spg2xx_game_state, empty_init, "Hasbro", "Dream Life", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND )
|
||||
|
||||
CONS( 2007, icanguit, 0, 0, icanguit, icanguit, icanguit_state, empty_init, "Mattel / Fisher-Price", "I Can Play Guitar", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND )
|
||||
CONS( 2007, icanpian, 0, 0, icanpian, icanpian, icanguit_state, empty_init, "Mattel / Fisher-Price", "I Can Play Piano", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND )
|
||||
|
||||
// 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
|
||||
// could be later model VT based instead? even after decrypting (simple word xor) the vectors have a different format and are at a different location to the SunPlus titles
|
||||
|
@ -1159,6 +1159,30 @@ static INPUT_PORTS_START( nostalgia )
|
||||
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( tak_geig )
|
||||
PORT_INCLUDE(xavix)
|
||||
|
||||
PORT_MODIFY("IN0")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1) // pause
|
||||
|
||||
PORT_MODIFY("IN1")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) // pause
|
||||
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static INPUT_PORTS_START( rad_bb )
|
||||
PORT_INCLUDE(xavix)
|
||||
|
||||
@ -1776,6 +1800,10 @@ ROM_START( ltv_tam )
|
||||
ROM_END
|
||||
|
||||
|
||||
ROM_START( tak_geig )
|
||||
ROM_REGION(0x400000, "bios", ROMREGION_ERASE00)
|
||||
ROM_LOAD("geigeki.bin", 0x000000, 0x400000, CRC(bd0c3576) SHA1(06f614dbec0225ce4ed866b98450912986d72faf) )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
The e-kara cartridges require the BIOS rom to map into 2nd external bus space as they fetch palette data from
|
||||
@ -1819,6 +1847,13 @@ ROM_START( epitch )
|
||||
ROM_RELOAD(0x000000, 0x100000)
|
||||
ROM_END
|
||||
|
||||
ROM_START( ekaramix )
|
||||
ROM_REGION( 0x800000, "bios", ROMREGION_ERASE00 )
|
||||
// also has a MX87L100C 28-pin chip in the unit, possibly the USB controller. Part of the ROM contains a FAT filesystem that could possibly appear as a USB drive on the PC?
|
||||
ROM_LOAD( "ekaramix.bin", 0x600000, 0x200000, CRC(ee71576e) SHA1(26f8c9edcbbed77e86a1cb5a0b91c92a16fef433) )
|
||||
ROM_RELOAD(0x000000, 0x200000)
|
||||
ROM_END
|
||||
|
||||
ROM_START( ddrfammt )
|
||||
ROM_REGION( 0x800000, "bios", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "ekara_ddr_ha010_81947.bin", 0x600000, 0x200000, CRC(737d5d1a) SHA1(a1043047056dd27bca69767ee2044461ec549465) )
|
||||
@ -1924,6 +1959,7 @@ CONS( 2002, epo_dmon, 0, 0, xavix_i2c_24c02, xavix_i2c,xavix_i2c_sta
|
||||
|
||||
CONS( 200?, has_wamg, 0, 0, xavix, has_wamg, xavix_state, init_xavix, "Hasbro / Milton Bradley / SSD Company LTD", "TV Wild Adventure Mini Golf (NTSC)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND )
|
||||
|
||||
CONS( 2002, tak_geig, 0, 0, xavix_nv, tak_geig, xavix_state, init_xavix, "Takara / SSD Company LTD", "Geigeki Go Go Shooting (Japan)", MACHINE_IMPERFECT_SOUND )
|
||||
|
||||
/* Music titles: Emulation note:
|
||||
SEEPROM write appears to work (save NVRAM file looks valid) but game fails to read it back properly, fails backup data checksum, and blanks it again.
|
||||
@ -1939,6 +1975,9 @@ CONS( 2002, ekaraphs, ekara, 0, xavix_cart_ekara, ekara, xavix_ekara_s
|
||||
// epitch (at least the pichi pichi pitch mermaid starter pack) uses the same internal rom as the Japanese ekara, but has less buttons, so some features aren't available (some games also seem to expect to read it with a different layout eg 'a7' cart, but 'a5' cart doesn't, so must be a way to enable that mode, or bug in code?)
|
||||
CONS( 2003, epitch, 0, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-pitch (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ ) // shows Japanese message without cart
|
||||
|
||||
// e-kara mix was another unit that allowed you to connect to a PC, unlike e-kara web it also functions as a regular device
|
||||
CONS( 200?, ekaramix, 0, 0, xavix_cart_ekara, ekara, xavix_ekara_state, init_xavix, "Takara / SSD Company LTD", "e-kara Mix (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*| MACHINE_IS_BIOS_ROOT*/ )
|
||||
|
||||
|
||||
CONS( 2001, ddrfammt, 0, 0, xavix_cart_ddrfammt,ddrfammt, xavix_cart_state, init_xavix, "Takara / Konami / SSD Company LTD", "Dance Dance Revolution Family Mat (Japan)", MACHINE_IMPERFECT_SOUND/*|MACHINE_IS_BIOS_ROOT*/ )
|
||||
|
||||
@ -1952,7 +1991,6 @@ CONS( 2003, taikodp, 0, 0, xavix_i2c_taiko, taikodp, xavix_i2c_car
|
||||
CONS( 2006, ltv_tam, 0, 0, xavix_i2c_24lc04, ltv_tam,xavix_i2c_ltv_tam_state, init_xavix, "Bandai / SSD Company LTD", "Let's! TV Play Chou Ninki Spot! Korogashi-Houdai Tamagotchi Resort (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND )
|
||||
|
||||
|
||||
|
||||
/* SuperXaviX(?) (XaviX 2000 type CPU) hardware titles (2nd XaviX generation?)
|
||||
|
||||
these use the SSD 2000 NEC 85605-621 type CPU
|
||||
|
@ -38717,6 +38717,7 @@ vigilanto // (c) 1988 (US)
|
||||
|
||||
@source:spg110.cpp
|
||||
jak_capb //
|
||||
jak_spdmo //
|
||||
|
||||
@source:vii.cpp
|
||||
jak_batm // The Batman, 2004
|
||||
@ -38752,6 +38753,7 @@ rad_fb2 //
|
||||
mattelcs //
|
||||
dreamlif //
|
||||
icanguit //
|
||||
icanpian //
|
||||
|
||||
@source:vsmile.cpp
|
||||
vsmile //
|
||||
@ -39924,6 +39926,7 @@ rad_sbw //
|
||||
rad_bdp //
|
||||
has_wamg //
|
||||
ltv_tam //
|
||||
tak_geig //
|
||||
ban_onep //
|
||||
ekara //
|
||||
ekaraa //
|
||||
@ -39931,6 +39934,7 @@ ekaraj //
|
||||
ekarag //
|
||||
ekaraphs //
|
||||
epitch //
|
||||
ekaramix //
|
||||
ddrfammt //
|
||||
popira //
|
||||
popira2 //
|
||||
|
Loading…
Reference in New Issue
Block a user