diff --git a/src/devices/cpu/m6502/oxavix.lst b/src/devices/cpu/m6502/oxavix.lst index d2084aa2f27..34e5b66309b 100644 --- a/src/devices/cpu/m6502/oxavix.lst +++ b/src/devices/cpu/m6502/oxavix.lst @@ -34,6 +34,11 @@ retf_imp TMP2 = read(SP); m_farbank = TMP2; } + else + { + // namcons2: because apparently 0x0300ea isn't correctly mirroring 0x0000ea despite logic in xavix.cpp looking correct? + m_farbank = 0; + } read_pc(); prefetch(); diff --git a/src/mame/drivers/rad_eu3a05.cpp b/src/mame/drivers/rad_eu3a05.cpp index 6f4e56f1144..1236e3bf988 100644 --- a/src/mame/drivers/rad_eu3a05.cpp +++ b/src/mame/drivers/rad_eu3a05.cpp @@ -20,6 +20,12 @@ Tetris Space Invaders + Possible other games on this hardawre + + ConnecTV Football (aka ConnecTV International Football) + - Soccer game, not the same as Play TV Football, or Play TV Soccer + (it has the same XTAL etc. as this driver at least) + --- The XaviX ones seem to have a XaviX logo on the external packaging while the ones for this driver don't seem to have any specific marking. diff --git a/src/mame/drivers/xavix.cpp b/src/mame/drivers/xavix.cpp index 0e397a0f6ad..25a8f1a2614 100644 --- a/src/mame/drivers/xavix.cpp +++ b/src/mame/drivers/xavix.cpp @@ -21,9 +21,17 @@ SSD COMPANY LIMITED is already working on their next chip called "XaviX II" that is said to be a 32-bit RISC processor with 3D capabilities. - Important addresses + Notes: + + To access service mode in Monster Truck hold Horn and Nitro on startup - 0x18340 in Monster Truck is the self-test mode, shows me which registers need to retain their values etc. + + Some games have Serial EEPROMs + + Nostalgia 24LC04 + XaviXTennis 24C08 + Jedi 24C02 + LOTR 24C02 ***************************************************************************/ @@ -34,7 +42,7 @@ #include "screen.h" #include "speaker.h" - +// not confirmed for all games #define MAIN_CLOCK XTAL(21'477'272) class xavix_state : public driver_device @@ -154,7 +162,6 @@ public: DECLARE_DRIVER_INIT(xavix); DECLARE_DRIVER_INIT(taitons1); DECLARE_DRIVER_INIT(rad_box); - DECLARE_DRIVER_INIT(rad_crdn); void xavix_map(address_map &map); protected: @@ -1605,6 +1612,34 @@ static INPUT_PORTS_START( rad_boxp ) INPUT_PORTS_END +static INPUT_PORTS_START( rad_snow ) + PORT_INCLUDE(xavix) + + PORT_MODIFY("IN0") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("Go") // is this a button, or 'up' ? + + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) + PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) +INPUT_PORTS_END + +static INPUT_PORTS_START( rad_snowp ) + PORT_INCLUDE(rad_snow) + + PORT_MODIFY("REGION") // PAL/NTSC flag + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SPECIAL ) +INPUT_PORTS_END + +static INPUT_PORTS_START( namcons2 ) + PORT_INCLUDE(xavix) + + PORT_MODIFY("IN0") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON4 ) +INPUT_PORTS_END + /* correct, 4bpp gfxs */ static const gfx_layout charlayout = { @@ -1741,6 +1776,7 @@ MACHINE_CONFIG_START(xavix_state::xavix) /* basic machine hardware */ MCFG_CPU_ADD("maincpu",XAVIX,MAIN_CLOCK) MCFG_CPU_PROGRAM_MAP(xavix_map) + MCFG_M6502_DISABLE_DIRECT() MCFG_CPU_VBLANK_INT_DRIVER("screen", xavix_state, interrupt) MCFG_XAVIX_VECTOR_CALLBACK(xavix_state, get_vectors) @@ -1796,12 +1832,6 @@ DRIVER_INIT_MEMBER(xavix_state, rad_box) m_alt_addressing = 2; } -DRIVER_INIT_MEMBER(xavix_state, rad_crdn) -{ - DRIVER_INIT_CALL(xavix); - m_alt_addressing = 2; -} - /*************************************************************************** Game driver(s) @@ -1813,6 +1843,11 @@ ROM_START( taitons1 ) ROM_LOAD( "taitonostalgia1.u3", 0x000000, 0x200000, CRC(25bd8c67) SHA1(a109cd2da6aa4596e3ca3abd1afce2d0001a473f) ) ROM_END +ROM_START( namcons2 ) + ROM_REGION( 0x100000, "bios", ROMREGION_ERASE00 ) + ROM_LOAD( "nostalgia.bin", 0x000000, 0x100000, CRC(03f7f755) SHA1(bdf1b10ab0104ed580951b0c428c4e93e7373afe) ) +ROM_END + ROM_START( rad_box ) ROM_REGION(0x200000, "bios", ROMREGION_ERASE00) ROM_LOAD("boxing.bin", 0x000000, 0x200000, CRC(5cd40714) SHA1(165260228c029a9502ca0598c84c24fd9bdeaebe) ) @@ -1833,6 +1868,17 @@ ROM_START( rad_bassp ) ROM_LOAD("bassfishin.bin", 0x000000, 0x100000, CRC(b54eb1c5) SHA1(084faa9349369f2b8846950765f9c8f758db3e9e) ) ROM_END +ROM_START( rad_snow ) + ROM_REGION(0x100000, "bios", ROMREGION_ERASE00) + ROM_LOAD("snoblu.bin", 0x000000, 0x100000, CRC(593e40b3) SHA1(03483ac39eddd7746470fb60018e704382b0da59) ) +ROM_END + +ROM_START( rad_snowp ) + ROM_REGION(0x100000, "bios", ROMREGION_ERASE00) + ROM_LOAD("snoblu.bin", 0x000000, 0x100000, CRC(593e40b3) SHA1(03483ac39eddd7746470fb60018e704382b0da59) ) +ROM_END + + ROM_START( rad_ping ) ROM_REGION( 0x100000, "bios", ROMREGION_ERASE00 ) ROM_LOAD( "pingpong.bin", 0x000000, 0x100000, CRC(629f7f47) SHA1(2bb19fd202f1e6c319d2f7d18adbfed8a7669235) ) @@ -1872,6 +1918,8 @@ ROM_END CONS( 2006, taitons1, 0, 0, xavix, xavix, xavix_state, taitons1, "Bandai / SSD Company LTD / Taito", "Let's! TV Play Classic - Taito Nostalgia 1", MACHINE_IS_SKELETON ) +CONS( 2006, namcons2, 0, 0, xavix, namcons2, xavix_state, taitons1, "Bandai / SSD Company LTD / Namco", "Let's! TV Play Classic - Namco Nostalgia 2", MACHINE_IS_SKELETON ) + CONS( 2000, rad_ping, 0, 0, xavix, xavix, xavix_state, xavix, "Radica / SSD Company LTD / Simmer Technology", "Play TV Ping Pong", MACHINE_IS_SKELETON ) // "Simmer Technology" is also known as "Hummer Technology Co., Ltd" CONS( 2003, rad_mtrk, 0, 0, xavix, rad_mtrk, xavix_state, xavix, "Radica / SSD Company LTD", "Play TV Monster Truck (NTSC)", MACHINE_IS_SKELETON ) @@ -1879,15 +1927,19 @@ CONS( 2003, rad_mtrkp, rad_mtrk, 0, xavixp, rad_mtrkp,xavix_state, xavix, CONS( 200?, rad_box, 0, 0, xavix, rad_box, xavix_state, rad_box, "Radica / SSD Company LTD", "Play TV Boxing (NTSC)", MACHINE_IS_SKELETON) CONS( 200?, rad_boxp, rad_box, 0, xavixp, rad_boxp, xavix_state, rad_box, "Radica / SSD Company LTD", "ConnecTV Boxing (PAL)", MACHINE_IS_SKELETON) - -CONS( 200?, rad_crdn, 0, 0, xavix, rad_crdn, xavix_state, rad_crdn, "Radica / SSD Company LTD", "Play TV Card Night (NTSC)", MACHINE_IS_SKELETON) -CONS( 200?, rad_crdnp, rad_crdn, 0, xavixp, rad_crdnp,xavix_state, rad_crdn, "Radica / SSD Company LTD", "ConnecTV Card Night (PAL)", MACHINE_IS_SKELETON) + +CONS( 200?, rad_crdn, 0, 0, xavix, rad_crdn, xavix_state, rad_box, "Radica / SSD Company LTD", "Play TV Card Night (NTSC)", MACHINE_IS_SKELETON) +CONS( 200?, rad_crdnp, rad_crdn, 0, xavixp, rad_crdnp,xavix_state, rad_box, "Radica / SSD Company LTD", "ConnecTV Card Night (PAL)", MACHINE_IS_SKELETON) CONS( 2002, rad_bb2, 0, 0, xavix, xavix, xavix_state, xavix, "Radica / SSD Company LTD", "Play TV Baseball 2", MACHINE_IS_SKELETON ) // contains string "Radica RBB2 V1.0" CONS( 2001, rad_bass, 0, 0, xavix, xavix, xavix_state, rad_box, "Radica / SSD Company LTD", "Play TV Bass Fishin'", MACHINE_IS_SKELETON) CONS( 2001, rad_bassp, rad_bass, 0, xavixp, xavixp, xavix_state, rad_box, "Radica / SSD Company LTD", "ConnecTV Bass Fishin'", MACHINE_IS_SKELETON) +// there is another 'Snowboarder' with a white coloured board, it appears to be a newer game closer to 'SSX Snowboarder' but without the SSX license. +CONS( 2001, rad_snow, 0, 0, xavix, rad_snow, xavix_state, rad_box, "Radica / SSD Company LTD", "Play TV Snowboarder (Blue)", MACHINE_IS_SKELETON) +CONS( 2001, rad_snowp, rad_snow, 0, xavixp, rad_snowp,xavix_state, rad_box, "Radica / SSD Company LTD", "ConnecTV Snowboarder (Blue)", MACHINE_IS_SKELETON) + CONS (200?, eka_strt, 0, 0, xavix, xavix, xavix_state, xavix, "Takara / SSD Company LTD", "e-kara Starter", MACHINE_IS_SKELETON) /* The 'XaviXPORT' isn't a real console, more of a TV adapter, all the actual hardware (CPU including video hw, sound hw) is in the cartridges and controllers @@ -1923,8 +1975,12 @@ ROM_START( ttv_sw ) ROM_LOAD( "jedi.bin", 0x000000, 0x800000, CRC(51cae5fd) SHA1(1ed8d556f31b4182259ca8c766d60c824d8d9744) ) ROM_END +ROM_START( ttv_lotr ) + ROM_REGION( 0x800000, "bios", ROMREGION_ERASE00 ) + ROM_LOAD( "lotr.bin", 0x000000, 0x800000, CRC(a034ecd5) SHA1(264a9d4327af0a075841ad6129db67d82cf741f1) ) +ROM_END + CONS( 2004, xavtenni, 0, 0, xavix, xavix, xavix_state, xavix, "SSD Company LTD", "XaviX Tennis (XaviXPORT)", MACHINE_IS_SKELETON ) CONS( 2005, ttv_sw, 0, 0, xavix, xavix, xavix_state, xavix, "Tiger / SSD Company LTD", "Star Wars Saga Edition - Lightsaber Battle Game", MACHINE_IS_SKELETON ) - - +CONS( 2005, ttv_lotr, 0, 0, xavix, xavix, xavix_state, xavix, "Tiger / SSD Company LTD", "Lord Of The Rings - Warrior of Middle-Earth", MACHINE_IS_SKELETON ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 1df28cc56b6..c9a2d55af3e 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -38976,6 +38976,7 @@ xsleenaj // TA-0019 (c) 1986 @source:xavix.cpp taitons1 // +namcons2 // rad_ping // rad_mtrk // rad_mtrkp // @@ -38986,9 +38987,12 @@ rad_crdn // rad_crdnp // rad_bass // rad_bassp // +rad_snow // +rad_snowp // eka_strt // xavtenni // ttv_sw // +ttv_lotr // @source:xbox.cpp xbox //