Skip to content

Commit

Permalink
tvgames: Added four TV games and two associated cartridges. (#12712)
Browse files Browse the repository at this point in the history
New working clones
------------------
Sega Toys Mega Drive Play TV 1 (Japan) [TeamEurope, David Haywood]

New systems marked not working
------------------------------
Bandai / Koto Dragon Ball Z: Scouter Battle Taikan Kamehameha: Ora to Omee to Scouter (Japan) [TeamEurope, David Haywood]
JoyPalette Anpanman: Let's Go! Ikunou Drive (Japan) [TeamEurope, David Haywood]
Takara / SSD Company LTD Bakutou Sengen Daigunder DX (Japan) [TeamEurope, David Haywood]

New software list items marked not working (takara_daigander_dx_cart.xml)
------------------------------------------
R-01 ROM Robo Aoki Inazuma Bulion [TeamEurope, David Haywood]
R-02 ROM Robo Jurassic Soldier Bonerex [TeamEurope, David Haywood]
  • Loading branch information
mamehaze committed Sep 1, 2024
1 parent a9eeca3 commit b96a129
Show file tree
Hide file tree
Showing 8 changed files with 222 additions and 11 deletions.
59 changes: 57 additions & 2 deletions hash/evio.xml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,63 @@ license:CC0-1.0
*eM17 - Minna no evio (orange)
*eM18 - Evio Challenge! (red/pink)
(more?)
Cartridge Pinout
A01|NC
A02|GND
A03|GND
A04|A16
A05|A17
A06|A18
A07|A19
A08|A20
A09|A21
A10|A22
A11|A23
A12|GND
A13|TO A18
A14|/CE
A15|NC (SEEPROM 6)
A16|NC (SEEPROM 5)
A17|NC
A18|TO A13 (internal ROM /CE)
A19|/OE
A20|NC (/WE)
A21|VCC (/RP)
A22|D00
A23|D01
A24|D02
A25|D03
A26|VCC
B01|NC
B02|VCC
B03|VCC
B04|A15
B05|A14
B06|A13
B07|A12
B08|A11
B09|A10
B10|A09
B11|A08
B12|A07
B13|A06
B14|A05
B15|A04
B16|A03
B17|A02
B18|A01
B19|A00
B20|VCC
B21|GND
B22|D07
B23|D06
B24|D05
B25|D04
B26|GND
-->

<software name="em1" supported="no">
Expand Down
90 changes: 90 additions & 0 deletions hash/takara_daigunder_dx_cart.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
<?xml version="1.0"?>
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
<!--
license:CC0-1.0
-->
<softwarelist name="takara_daigunder_dx_cart" description="Takara Daigunder DX cartridges">
<!-- cartridges contain the ROM only, the XaviX CPU and BIOS are in the base unit -->

<!-- Cartridge Pinout (same as evio)
A01|NC
A02|GND
A03|GND
A04|A16
A05|A17
A06|A18
A07|A19
A08|A20
A09|A21
A10|A22
A11|A23
A12|GND
A13|TO A18
A14|/CE
A15|NC (SEEPROM 6)
A16|NC (SEEPROM 5)
A17|NC
A18|TO A13 (internal ROM /CE)
A19|/OE
A20|NC (/WE)
A21|VCC (/RP)
A22|D00
A23|D01
A24|D02
A25|D03
A26|VCC
B01|NC
B02|VCC
B03|VCC
B04|A15
B05|A14
B06|A13
B07|A12
B08|A11
B09|A10
B10|A09
B11|A08
B12|A07
B13|A06
B14|A05
B15|A04
B16|A03
B17|A02
B18|A01
B19|A00
B20|VCC
B21|GND
B22|D07
B23|D06
B24|D05
B25|D04
B26|GND
-->

<software name="r01rom" supported="no">
<description>R-01 ROM Robo Aoki Inazuma Bulion</description>
<year>2002</year>
<publisher>Takara</publisher>
<info name="alt_title" value="R-01 ROMロボ 「蒼き稲妻」ブライオン" />
<part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x200000">
<rom name="bulion.bin" size="0x100000" crc="1e1d1b6f" sha1="5165a27aa556cff5e1379521e0ad84964a1472f3" />
</dataarea>
</part>
</software>

<software name="r02rom" supported="no">
<description>R-02 ROM Robo Jurassic Soldier Bonerex</description>
<year>2002</year>
<publisher>Takara</publisher>
<info name="alt_title" value="R-02 ROMロボ 「ジュラシックソルジャー」ボーンレックス" />
<part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x200000">
<rom name="bonerex.bin" size="0x100000" crc="40b65182" sha1="0399e5f5f1fd8438f4334e388de4bce547d79d73" />
</dataarea>
</part>
</software>

</softwarelist>
18 changes: 11 additions & 7 deletions src/mame/mame.lst
Original file line number Diff line number Diff line change
Expand Up @@ -39301,20 +39301,21 @@ ssf2mdb
twinktmb

@source:sega/megadriv_rad.cpp
rad_sf2 // (c)2004 Radica
rad_sf2uk // (c)2004 Radica
dgunl3227
mdtvp1j
msi_sf2
ra145
rad_gen1 // (c)2004 Radica
rad_gen2 // (c)2004 Radica
rad_md1
rad_md1uk
rad_md2uk
rad_ssoc // (c)2004 Radica
rad_orun
rad_sf2 // (c)2004 Radica
rad_sf2uk // (c)2004 Radica
rad_sonic
rad_sonicuk
rad_orun
msi_sf2
dgunl3227
ra145
rad_ssoc // (c)2004 Radica

@source:sega/megadriv_sunmix.cpp
sbubsm // (c) 1996 Sun Mixing
Expand Down Expand Up @@ -42207,6 +42208,7 @@ kkcount

@source:skeleton/koto_zevio.cpp
dbzonep //
dbzscout

@source:skeleton/kron.cpp
kron180 // 1995 Kron Ltd, Ukraine
Expand Down Expand Up @@ -45340,6 +45342,7 @@ jak_ths
wrlshunt // Wireless: Hunting Video Game System

@source:tvgames/generalplus_gpl16250_spi.cpp
anpanbd
bkrankp
prailpls

Expand Down Expand Up @@ -45709,6 +45712,7 @@ rad_ssxp //
taikodp //
taitons1 //
taitons2 //
tak_daig
tak_geig //
tcarnavi //
tomcpin //
Expand Down
6 changes: 6 additions & 0 deletions src/mame/sega/megadriv_rad.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -539,6 +539,11 @@ ROM_START( rad_md1uk )
ROM_LOAD16_WORD_SWAP( "radicauk.u2", 0x000000, 0x400000, CRC(03a6734b) SHA1(255048d46b593bc975b3a6c44e8b8e35917511c7) )
ROM_END

ROM_START( mdtvp1j )
ROM_REGION( 0x400000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "l08y6_i_32m.u2", 0x000000, 0x400000, CRC(740a8859) SHA1(cf1212ef28e75e2cea752cf10a06ea715a30ae07) ) // 04-07-23 date sticker (23 July 2004)
ROM_END

ROM_START( rad_gen2 )
ROM_REGION( 0x400000, "maincpu", 0 )
ROM_LOAD16_WORD_SWAP( "radica_genesis_vol2_red_usa.bin", 0x000000, 0x400000, CRC(7c1a0f0e) SHA1(a6441f75a4cd48f1563aeafdfbdde00202d4067c) )
Expand Down Expand Up @@ -709,6 +714,7 @@ void megadriv_ra145_state::init_ra145()
CONS( 2004, rad_gen1, 0, 0, megadriv_radica_3button_ntsc, radica_3button_1player, megadriv_radica_state, init_megadriv, "Radica / Sega", "Genesis Collection Volume 1 (Radica, Arcade Legends) (USA)", 0)
CONS( 2004, rad_md1, rad_gen1, 0, megadriv_radica_3button_pal, radica_3button_1player, megadriv_radica_state, init_megadrie, "Radica / Sega", "Mega Drive Collection Volume 1 (Radica, Arcade Legends) (Europe)", 0)
CONS( 2004, rad_md1uk, rad_gen1, 0, megadriv_radica_3button_pal, radica_3button_1player, megadriv_radica_state, init_megadrie, "Radica / Sega", "Mega Drive Collection Volume 1 (Radica, Arcade Legends) (UK)", 0)
CONS( 2004, mdtvp1j, rad_gen1, 0, megadriv_radica_3button_ntsc, radica_3button_1player, megadriv_radica_state, init_megadriv, "Sega Toys", "Mega Drive Play TV 1 (Japan)", 0) // expects US region despite being a Japanese unit (Bean Machine is region locked)

CONS( 2004, rad_gen2, 0, 0, megadriv_radica_3button_ntsc, radica_3button_1player, megadriv_radica_state, init_megadriv, "Radica / Sega", "Genesis Collection Volume 2 (Radica, Arcade Legends) (USA)", 0)
CONS( 2004, rad_md2uk, rad_gen2, 0, megadriv_radica_3button_pal, radica_3button_1player, megadriv_radica_state, init_megadrie, "Radica / Sega", "Mega Drive Collection Volume 2 (Radica, Arcade Legends) (UK)", 0)
Expand Down
8 changes: 7 additions & 1 deletion src/mame/skeleton/koto_zevio.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,12 @@ void zevio_state::zevio(machine_config &config)
}


// ドラゴンボールZ スカウターバトル体感かめはめ波 おらとおめえとスカウター
ROM_START( dbzscout )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
ROM_LOAD( "mr27t6402l.ic6", 0x000000, 0x800000, CRC(9cb896d6) SHA1(4185ee4593c2ef3b637f6004d1f80dadd4530902) )
ROM_END

ROM_START( dbzonep )
ROM_REGION( 0x800000, "maincpu", ROMREGION_ERASEFF )
ROM_LOAD( "mr27t6402l.u1", 0x000000, 0x800000, CRC(57f7c319) SHA1(65118a9c61defc75cefe5e45062c0a4788e2a26c) )
Expand All @@ -109,5 +115,5 @@ ROM_END

} // anonymous namespace

// 2007 - Dragon Ball Z: Scouter Battle Taikan Kamehameha: Ora to Omee to Scouter
CONS( 2007, dbzscout, 0, 0, zevio, zevio, zevio_state, empty_init, "Bandai / Koto", "Dragon Ball Z: Scouter Battle Taikan Kamehameha: Ora to Omee to Scouter (Japan)", MACHINE_IS_SKELETON )
CONS( 2008, dbzonep, 0, 0, zevio, zevio, zevio_state, empty_init, "Bandai / Koto", "Dragon Ball Z x One Piece: Battle Taikan Gum-Gum no Kamehameha: Omee no Koe de Ora o Yobu (Japan)", MACHINE_IS_SKELETON )
11 changes: 11 additions & 0 deletions src/mame/tvgames/generalplus_gpl16250_spi.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,14 @@ ROM_START( prailpls )
ROM_LOAD16_WORD_SWAP( "mx25l25635f.u9", 0x0000, 0x2000000, CRC(17faefb0) SHA1(1d31c5aa1a37882f74c08414f69c4285149352b7) )
ROM_END

ROM_START( anpanbd )
ROM_REGION16_BE( 0x40000, "maincpu:internal", ROMREGION_ERASE00 )
//ROM_LOAD16_WORD_SWAP( "internal.rom", 0x00000, 0x40000, NO_DUMP ) // used as bootstrap only (if it exists at all)

ROM_REGION(0x1000000, "maincpu", ROMREGION_ERASE00)
ROM_LOAD16_WORD_SWAP( "mx25l12835f.u2", 0x0000, 0x1000000, CRC(c4be09d7) SHA1(c9098d0c1c9db649a010f67469f500b69407372f) )
ROM_END


void generalplus_gpspispi_game_state::init_spi()
{
Expand Down Expand Up @@ -192,4 +200,7 @@ void generalplus_gpspispi_game_state::init_spi()
// ぼくはプラレール運転士 新幹線で行こう!プラス (I am a Plarail driver Let's go by Shinkansen! Plus)
CONS(2015, prailpls, 0, 0, generalplus_gpspispi, gcm394, generalplus_gpspispi_game_state, init_spi, "Takara Tomy", "Boku wa Plarail Untenshi Shinkansen de Ikou! Plus (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND) // has built-in screen, but can be connected to a TV

// this is a half-head shaped unit, SHP13017-R1 main PCB - アンパンマン レッツゴー!育脳ドライブ きみものれるよ!アンパンマンごう「それいけ!アンパンマン」
CONS(2014, anpanbd, 0, 0, generalplus_gpspispi, gcm394, generalplus_gpspispi_game_state, init_spi, "JoyPalette", "Anpanman: Let's Go! Ikunou Drive (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND)

CONS(2015, bkrankp, 0, 0, generalplus_gpspispi_bkrankp, gcm394, generalplus_gpspispi_bkrankp_game_state, init_spi, "Bandai", "Karaoke Ranking Party (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND)
30 changes: 29 additions & 1 deletion src/mame/tvgames/xavix.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1240,6 +1240,15 @@ static INPUT_PORTS_START( evio )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_NAME("Power Switch") // pressing this will turn the game off.
INPUT_PORTS_END

static INPUT_PORTS_START( daig )
PORT_INCLUDE(xavix)

PORT_MODIFY("IN0")

PORT_MODIFY("IN1")
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_POWER_OFF ) PORT_NAME("Power Switch") // pressing this will turn the game off.
INPUT_PORTS_END

static INPUT_PORTS_START( gcslottv ) // TODO: proper button names
PORT_INCLUDE(xavix)

Expand Down Expand Up @@ -1604,6 +1613,14 @@ void xavix_cart_state::xavix_cart_evio(machine_config &config)
SOFTWARE_LIST(config, "cart_list_evio").set_original("evio");
}

void xavix_cart_state::xavix_cart_daig(machine_config &config)
{
xavix_cart(config);
NVRAM(config, "nvram", nvram_device::DEFAULT_ALL_1);

SOFTWARE_LIST(config, "cart_list_daig").set_original("takara_daigunder_dx_cart");
}

void xavix_cart_gcslottv_state::xavix_cart_gcslottv(machine_config &config)
{
xavix_cart(config);
Expand Down Expand Up @@ -2109,6 +2126,13 @@ ROM_START( evio )
ROM_RELOAD(0x000000, 0x200000)
ROM_END

// 爆闘宣言ダイガンダー
ROM_START( tak_daig )
ROM_REGION( 0x800000, "bios", ROMREGION_ERASE00 )
ROM_LOAD( "robottransformer_unit.bin", 0x600000, 0x200000, CRC(02deddaa) SHA1(7d7b54684f8b0b92daf02738560779c7df627b91) )
ROM_RELOAD(0x000000, 0x200000)
ROM_END


// ガチンコ勝負! パチスロTV
ROM_START( gcslottv )
Expand Down Expand Up @@ -2272,7 +2296,11 @@ CONS( 2003, taikodp, 0, 0, xavix_i2c_taiko, taikodp, xavix_i2c_car

CONS( 2004, jpopira, 0, 0, xavix_i2c_jpopira,jpopira, xavix_i2c_cart_state, init_xavix, "Takara / SSD Company LTD", "Jumping Popira (Japan)", MACHINE_IMPERFECT_SOUND /*|MACHINE_IS_BIOS_ROOT*/ )

CONS( 2003, evio, 0, 0, xavix_cart_evio, evio, xavix_evio_cart_state, init_xavix, "Tomy / SSD Company LTD", "Evio (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*|MACHINE_IS_BIOS_ROOT*/ ) // inputs? it's a violin controller
CONS( 2003, evio, 0, 0, xavix_cart_evio, evio, xavix_evio_cart_state,init_xavix, "Tomy / SSD Company LTD", "Evio (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*|MACHINE_IS_BIOS_ROOT*/ ) // inputs? it's a violin controller

// 2 ROM expansion cartridges were available for this, in the form of other robots (the heads acts as cartridges) see takara_daigunder_dx_cart.xml
// a number of other robots were also available, but those act as controllers and don't plug into the ROM slot (presumably the signal sent is used to determine the character)
CONS( 2002, tak_daig, 0, 0, xavix_cart_daig, daig, xavix_daig_cart_state,init_xavix, "Takara / SSD Company LTD", "Bakutou Sengen Daigunder DX (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*|MACHINE_IS_BIOS_ROOT*/ ) // inputs? maybe IO interrupt?

CONS( 2002, gcslottv, 0, 0, xavix_cart_gcslottv, gcslottv, xavix_cart_gcslottv_state, init_xavix, "Takara / Sammy / DCT / SSD Company LTD", "Gachinko Shoubu! PachisloTV (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND /*|MACHINE_IS_BIOS_ROOT*/ )

Expand Down
11 changes: 11 additions & 0 deletions src/mame/tvgames/xavix.h
Original file line number Diff line number Diff line change
Expand Up @@ -717,6 +717,7 @@ class xavix_cart_state : public xavix_state
void xavix_cart_popira(machine_config &config);
void xavix_cart_ddrfammt(machine_config &config);
void xavix_cart_evio(machine_config &config);
void xavix_cart_daig(machine_config &config);

protected:

Expand Down Expand Up @@ -950,6 +951,16 @@ class xavix_evio_cart_state : public xavix_cart_state
virtual void write_io1(uint8_t data, uint8_t direction) override;
};

class xavix_daig_cart_state : public xavix_cart_state
{
public:
xavix_daig_cart_state(const machine_config &mconfig, device_type type, const char *tag)
: xavix_cart_state(mconfig,type,tag)
{ }

protected:
};

class xavix_ekara_state : public xavix_cart_state
{
public:
Expand Down

0 comments on commit b96a129

Please sign in to comment.