From f3cc43065b5838a3fbf73c81db0f0e4946375f39 Mon Sep 17 00:00:00 2001 From: DavidHaywood <28625134+DavidHaywood@users.noreply.github.com> Date: Thu, 30 Jul 2020 17:14:50 +0100 Subject: [PATCH] new NOT WORKING machines ----- Lexibook Compact Cyber Arcade - Cars [TeamEurope, David Haywood] NJ Pocket 60-in-1 handheld 'X zero' (NTSC) [Takashi Omoto / https://twitter.com/takashioomoto , TeamEurope, David Haywood] --- src/mame/drivers/nes_vt.cpp | 8 +++++++ src/mame/drivers/vt1682.cpp | 44 ++++++++++++++++++++++++++++++++++++- src/mame/mame.lst | 2 ++ 3 files changed, 53 insertions(+), 1 deletion(-) diff --git a/src/mame/drivers/nes_vt.cpp b/src/mame/drivers/nes_vt.cpp index 038ec5ea147..2b7680b3051 100644 --- a/src/mame/drivers/nes_vt.cpp +++ b/src/mame/drivers/nes_vt.cpp @@ -1585,6 +1585,11 @@ ROM_START( lxcmcysp ) ROM_LOAD( "lexibookspiderman.bin", 0x00000, 0x4000000, CRC(ef6e8847) SHA1(0012df193c52fd48595d85886fd431619c5d5e3e) ) ROM_END +ROM_START( lxcmcycr ) + ROM_REGION( 0x4000000, "mainrom", 0 ) + ROM_LOAD( "lexibook cars.bin", 0x00000, 0x4000000, CRC(198fe11b) SHA1(5e35caa3fc319ec69812c187a3ec89f01749f749) ) +ROM_END + ROM_START( lxcmcypp ) ROM_REGION( 0x4000000, "mainrom", 0 ) // marked 512mbit, possible A22 / A23 are swapped as they were marked on the board in a different way. @@ -2046,8 +2051,11 @@ CONS( 200?, lxcmcysw, 0, 0, nes_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_stat CONS( 200?, lxcmcyfz, 0, 0, nes_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_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_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_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_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_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_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_state, empty_init, "Lexibook", "Lexibook Compact Cyber Arcade - Cars", 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_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_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?, lxccminn, 0, 0, nes_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_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_vt_cy_bigger, nes_vt, nes_vt_cy_lexibook_state, empty_init, "Lexibook", "Lexibook Console Colour - Disney's Planes", MACHINE_NOT_WORKING ) // 64Mbyte (used) ROM, must be externally banked, or different addressing scheme diff --git a/src/mame/drivers/vt1682.cpp b/src/mame/drivers/vt1682.cpp index 2db8043a856..2edbf8008fd 100644 --- a/src/mame/drivers/vt1682.cpp +++ b/src/mame/drivers/vt1682.cpp @@ -688,6 +688,7 @@ public: void vt1682_unk1682(machine_config& config); void unk1682_init(); + void njp60in1_init(); protected: uint8_t uio_porta_r(); @@ -5690,6 +5691,18 @@ static INPUT_PORTS_START( lxts3 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) INPUT_PORTS_END +static INPUT_PORTS_START( njp60in1 ) + PORT_START("IN0") + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) +INPUT_PORTS_END + static INPUT_PORTS_START( exsprt48 ) PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) @@ -6031,6 +6044,16 @@ void vt1682_lxts3_state::unk1682_init() ROM[0x7ef45] = 0xea; } +void vt1682_lxts3_state::njp60in1_init() +{ + regular_init(); + + uint8_t* ROM = memregion("mainrom")->base(); + // first jsr in the code is for some port based security(?) check, might be SEEPROM + ROM[0x7ff44] = 0xea; + ROM[0x7ff45] = 0xea; + ROM[0x7ff46] = 0xea; +} // the VT1682 can have 0x1000 bytes of internal ROM, but none of the software dumped makes use of it. @@ -6115,6 +6138,18 @@ ROM_START( unk1682 ) ROM_CONTINUE(0x0800000, 0x0800000) ROM_CONTINUE(0x1000000, 0x0800000) ROM_CONTINUE(0x1800000, 0x0800000) + + // also has a 24c02N SEEPROM, no accesses noted (maybe accessed from 'internal ROM' code?) +ROM_END + +ROM_START( njp60in1 ) + ROM_REGION( 0x2000000, "mainrom", 0 ) // the 6Mbyte - 7Mbyte region of the ROM is missing, causing Extreme Power Soccer to fail + ROM_LOAD( "60-in-1.bin", 0x00000, 0x0800000, CRC(7b2ee951) SHA1(fc7c214704908b85676efc64a21930483d24a457) ) + ROM_CONTINUE(0x0800000, 0x0800000) + ROM_CONTINUE(0x1000000, 0x0800000) + ROM_CONTINUE(0x1800000, 0x0800000) + + // also has a 24c02n SEEPROM, seems to access it on startup (security check?) ROM_END @@ -6199,7 +6234,14 @@ CONS( 200?, dance555, 0, 0, vt1682_exsportp, dance555, vt1682_exsport_state // NJ Pocket 60-in-1 (NJ-250) is meant to have similar games to the mini-games found in wowwg and 110dance, so almost certainly fits here -// this appears to be related to the NJ Pocket, claims 101-in-1 but has some duplicates. It once again seems to incorrectly have the PAL version of 'Ranning Horse' but the NTSC version of 'Bomberman' +// manual explicitly states it has NTSC output only (unit can be connected to a TV) and both Ranning Horse + Explosion (Bomberman) are the NTSC versions +// has 21.477 Mhz XTAL +CONS( 200?, njp60in1, 0, 0, vt1682_lxts3, njp60in1, vt1682_lxts3_state, njp60in1_init, "", "NJ Pocket 60-in-1 handheld 'X zero' (NTSC)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND) // needs high colour line mode for main menu + +// this appears to be related to the NJ Pocket, claims 101-in-1 but has some duplicates. +// Like the 'Wow Wireless gaming' it incorrectly mixes the PAL version of 'Ranning Horse' with the NTSC version of 'Bomberman', it has no TV output. +// has 26.6017 Mhz (6xPAL) XTAL CONS( 200?, unk1682, 0, 0, vt1682_unk1682, lxts3, vt1682_lxts3_state, unk1682_init, "", "unknown VT1682 based 101-in-1 handheld (PAL)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND) // needs high colour line mode for main menu CONS( 2010, lxts3, 0, 0, vt1682_lxts3, lxts3, vt1682_lxts3_state, regular_init, "Lexibook", "Toy Story 3 (Lexibook)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // random number generation issues on 2 games, linescroll on racing games + diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 996af757aad..f5059ada4a4 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -32088,6 +32088,7 @@ lxcmcyfz lxcmcydp lxcmcysp lxcmcypp +lxcmcycr lxccminn lxccplan rtvgc300 @@ -32178,6 +32179,7 @@ wowwg 110dance lxts3 unk1682 +njp60in1 @source:newbrain.cpp newbrain //