From e952f16a0d6fe17034f9eebc0142d28bbe767bb8 Mon Sep 17 00:00:00 2001 From: Philip Bennett Date: Mon, 18 Sep 2023 07:03:08 -0700 Subject: New working machines ---------- Beat Player 2000 [Phil Bennett, system11] Fishing Maniac 2+ [Phil Bennett, system11] Let's Dance [Phil Bennett, system11] --- src/mame/mame.lst | 3 + src/mame/misc/dgpix.cpp | 166 +++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 153 insertions(+), 16 deletions(-) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index a7514d6b7ff..84025d7e080 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -28917,10 +28917,13 @@ dfruit // gemcrush @source:misc/dgpix.cpp +btplay2k // (c) 2000 dgPIX Entertainment Inc elfin // (c) 1999 dgPIX Entertainment Inc +fmaniac2p // (c) 2000 Saero Entertainment fmaniac3 // (c) 2002 Saero Entertainment jumpjump // (c) 1999 dgPIX Entertainment Inc kdynastg // (c) 1999 EZ Graphics +letsdnce // (c) 1999 dgPIX Entertainment Inc xfiles // (c) 1999 dgPIX Entertainment Inc xfilesk // (c) 1999 dgPIX Entertainment Inc (censored for the Korean market) diff --git a/src/mame/misc/dgpix.cpp b/src/mame/misc/dgpix.cpp index d50122de17b..7dd5cc0e568 100644 --- a/src/mame/misc/dgpix.cpp +++ b/src/mame/misc/dgpix.cpp @@ -10,6 +10,9 @@ - Jump Jump (c) 1999 dgPIX Entertainment Inc. - The X-Files (2 sets) (c) 1999 dgPIX Entertainment Inc. - King of Dynast Gear (version 1.8) (c) 1999 EZ Graphics [*] + - Let's Dance (c) 1999 dgPIX Entertainment Inc. + - Beat Player 2000 (c) 2000 dgPIX Entertainment Inc. + - Fishing Maniac 2+ (c) 2000 Saero Entertainment - Fishing Maniac 3 (c) 2002 Saero Entertainment [*] the version number is written in the flash roms at the beginning of the game settings @@ -17,8 +20,6 @@ Note: There is known to exist an alternate version of The X-Files titled The Sex Files which is undumped The following additional games are also known to be undumped -- Beat Player 2000, using the VRender0 Minus Rev5 PCB, with an undocumented BMkey Flash Rev2 dgPIX Entertainment 1999 subboard. -- Let's Dance, using the VRender0 Minus Rev5 PCB, with an undocumented BMkey Flash Rev2 dgPIX Entertainment 1999 subboard. - Fishing Maniac, using the VRender0 Minus Rev5 PCB, with a Flash Module Type-A REV2 dgPIX Entertainment Inc. 1999 subboard. - Fishing Maniac 2, using the VRender0 Minus Rev5 PCB, with a Flash Module Type-A REV2 dgPIX Entertainment Inc. 1999 subboard. @@ -152,7 +153,7 @@ Notes: FLASH - Intel DA28F320J5 32M x8 StrataFlash surface-mounted FlashROM (SSOP56) CONN1,CONN2, CONN3 - Connectors for joining small sub-board to main board - U100 - A custom programmed PIC (Programmable Interrupt Controller), rebadged as 'dgPIX-PR1' (DIP18) + U100 - A custom programmed PIC microcontroller, rebadged as 'dgPIX-PR1' (DIP18) *********************************************************************/ @@ -186,6 +187,9 @@ public: void init_xfiles(); void init_xfilesk(); void init_kdynastg(); + void init_letsdnce(); + void init_btplay2k(); + void init_fmaniac2p(); void init_fmaniac3(); protected: @@ -485,6 +489,7 @@ void dgpix_state::dgpix(machine_config &config) /* + Elfin dgPIX Entertainment Inc. 1999 @@ -499,7 +504,7 @@ ROM_START( elfin ) ROM_LOAD16_WORD_SWAP( "flash.u8", 0x1800000, 0x400000, CRC(eb56d7ca) SHA1(7c1cfcc68579cf3bdd9707da7d745a410223b8d9) ) ROM_LOAD16_WORD_SWAP( "flash.u9", 0x1c00000, 0x400000, CRC(cbf64ef4) SHA1(1a231872ee14e6d718c3f8888185ede7483e79dd) ) /* game settings & highscores are saved in here */ - ROM_REGION( 0x400000, "ks0164", 0 ) /* sound rom */ + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROM */ ROM_LOAD16_WORD_SWAP( "flash.u10", 0x000000, 0x400000, CRC(d378fe55) SHA1(5cc7bc5ae258cd48816857793a262e7c6c330795) ) ROM_REGION( 0x1000, "cpu2", ROMREGION_ERASEFF ) /* PIC */ @@ -507,6 +512,7 @@ ROM_START( elfin ) ROM_END /* + Jump Jump dgPIX Entertainment Inc. 1999 @@ -521,7 +527,7 @@ ROM_START( jumpjump ) ROM_LOAD16_WORD_SWAP( "jumpjump.u8", 0x1800000, 0x400000, CRC(210dfd8b) SHA1(a1aee4ec8c01832e77d2e4e334a62c246d7e3635) ) ROM_LOAD16_WORD_SWAP( "jumpjump.u9", 0x1c00000, 0x400000, CRC(16d1e352) SHA1(3c43974fb8d90b0c84472dd9f2167eb983142095) ) - ROM_REGION( 0x400000, "ks0164", 0 ) /* sound rom */ + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROM */ ROM_LOAD16_WORD_SWAP( "jumpjump.u10", 0x000000, 0x400000, CRC(2152ecce) SHA1(522d389952a07fa0830ca8aaa6de3aacf834e32e) ) ROM_REGION( 0x1000, "cpu2", ROMREGION_ERASEFF ) /* PIC */ @@ -546,7 +552,7 @@ ROM_START( xfiles ) ROM_LOAD16_WORD_SWAP( "flash.u8", 0x1800000, 0x400000, CRC(231ad82a) SHA1(a1cc5c4122605e564d51137f1dca2afa82616202) ) ROM_LOAD16_WORD_SWAP( "flash.u9", 0x1c00000, 0x400000, CRC(d68994b7) SHA1(c1752d6795f7aaa6beef73643327205a1c32f0f5) ) - ROM_REGION( 0x400000, "ks0164", 0 ) /* sound rom */ + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROM */ ROM_LOAD16_WORD_SWAP( "flash.u10", 0x0000000, 0x400000, CRC(1af33cda) SHA1(9bbcfb07a4a5bcff3efc1c7bcc51bc16c47ca9e6) ) ROM_REGION( 0x1000, "cpu2", 0 ) /* PIC */ @@ -579,7 +585,7 @@ ROM_START( xfilesk ) ROM_LOAD16_WORD_SWAP( "u8.bin", 0x1800000, 0x400000, CRC(3b2c2bc1) SHA1(1c07fb5bd8a8c9b5fb169e6400fef845f3aee7aa) ) ROM_LOAD16_WORD_SWAP( "u9.bin", 0x1c00000, 0x400000, CRC(6ecdd1eb) SHA1(e26c9711e589865cc75ec693d382758fa52528b8) ) - ROM_REGION( 0x400000, "ks0164", 0 ) /* sound rom */ + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROM */ ROM_LOAD16_WORD_SWAP( "u10.bin", 0x0000000, 0x400000, CRC(f2ef1eb9) SHA1(d033d140fce6716d7d78509aa5387829f0a1404c) ) ROM_REGION( 0x1000, "cpu2", 0 ) /* PIC */ @@ -587,6 +593,7 @@ ROM_START( xfilesk ) ROM_END /* + King of Dynast Gear EZ Graphics, 1999 @@ -603,7 +610,7 @@ ROM_START( kdynastg ) ROM_LOAD16_WORD_SWAP( "flash.u8", 0x1800000, 0x400000, CRC(1016b61c) SHA1(eab4934e1f41cc26259e5187a94ceebd45888a94) ) ROM_LOAD16_WORD_SWAP( "flash.u9", 0x1c00000, 0x400000, CRC(093d9243) SHA1(2a643acc7144193aaa3606a84b0c67aadb4c543b) ) - ROM_REGION( 0x400000, "ks0164", 0 ) /* sound rom */ + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROM */ ROM_LOAD16_WORD_SWAP( "flash.u10", 0x0000000, 0x400000, CRC(3f103cb1) SHA1(2ff9bd73f3005f09d872018b81c915b01d6703f5) ) ROM_REGION( 0x1000, "cpu2", 0 ) /* PIC */ @@ -611,6 +618,97 @@ ROM_START( kdynastg ) ROM_END /* + +Let's Dance +dgPIX Entertainment Inc. 1999 + +PCB combo: +VRender0 Minus Rev5 dgPIX Entertainment Inc. 1999 +BMkey Flash Rev2 dgPIX Entertainment 1999 + +*/ +ROM_START( letsdnce ) + ROM_REGION32_BE( 0x2000000, "flash", ROMREGION_ERASE00 ) /* Hyperstone CPU Code & Data */ + /* 0 - 0x17fffff empty space */ + ROM_LOAD16_WORD_SWAP( "flash.u9", 0x1800000, 0x400000, CRC(90e181d6) SHA1(c698b842c045f95a5f3a5483b5e5d12ca06c8f08) ) + ROM_LOAD16_WORD_SWAP( "flash.u10", 0x1c00000, 0x400000, CRC(1416acb3) SHA1(097b89d5cebeaa29742abec8ed84b50313f0b387) ) + + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROMs - TODO: banking */ + ROM_LOAD16_WORD_SWAP( "flash.u20", 0x0000000, 0x400000, CRC(e88ccc12) SHA1(6d988fe337a166f6e77ed67e83de7a64688958d1) ) + ROM_LOAD16_WORD_SWAP( "flash.u21", 0x0000000, 0x400000, CRC(ffbbde83) SHA1(a6307d782024cd1b6c9fd83ffeef64c31c6bd22d) ) + ROM_LOAD16_WORD_SWAP( "flash.u22", 0x0000000, 0x400000, CRC(068c376a) SHA1(622db2b76d84d53bc235fd77aea85cdb2d8c286c) ) + ROM_LOAD16_WORD_SWAP( "flash.u23", 0x0000000, 0x400000, CRC(ab033dc7) SHA1(e46c0902bc5cc2608011bbb27fb136d9ccae1789) ) + ROM_LOAD16_WORD_SWAP( "flash.u24", 0x0000000, 0x400000, CRC(23a556d8) SHA1(8ed58febbb1c51f4315494859afa04c916155471) ) + ROM_LOAD16_WORD_SWAP( "flash.u25", 0x0000000, 0x400000, CRC(2a0f0e06) SHA1(9b1d6978a72c354aa1ef97ca4aa5902985f0aaed) ) + ROM_LOAD16_WORD_SWAP( "flash.u26", 0x0000000, 0x400000, CRC(2a0c396b) SHA1(a8eead3de11c85997c930f000ed48c783bcee07c) ) + + ROM_REGION( 0x1000, "cpu2", ROMREGION_ERASEFF ) /* PIC */ + ROM_LOAD( "letsdnce_pic", 0x0000, 0x1000, NO_DUMP ) // protected - labeled S831D dgPIX-PR1 + + ROM_REGION( 0x117, "pals", 0 ) + ROM_LOAD( "palce16v8h.u11", 0x0000, 0x117, CRC(47e474c9) SHA1(f13ef4050072ab000a45140c180a3b97dacd8675) ) +ROM_END + +/* + +Beat Player 2000 +dgPIX Entertainment Inc. 2000 + +PCB combo: +VRender0 Minus Rev5 dgPIX Entertainment Inc. 1999 +BMkey Flash Rev2 dgPIX Entertainment 1999 + +*/ +ROM_START( btplay2k ) + ROM_REGION32_BE( 0x2000000, "flash", ROMREGION_ERASE00 ) /* Hyperstone CPU Code & Data */ + /* 0 - 0x17fffff empty space */ + ROM_LOAD16_WORD_SWAP( "flash.u9", 0x1800000, 0x400000, CRC(28d5a2cb) SHA1(69082810849031379018babe6d87c5528e97cfba) ) + ROM_LOAD16_WORD_SWAP( "flash.u10", 0x1c00000, 0x400000, CRC(4f6c963b) SHA1(775df9c33ff73a85bf478e695f09577d3a07c997) ) + + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROMs - TODO: banking */ + ROM_LOAD16_WORD_SWAP( "flash.u20", 0x0000000, 0x400000, CRC(cbbb5c11) SHA1(dfc9eeadb077efb86277ff73fbd0e51608c2a2eb) ) + ROM_LOAD16_WORD_SWAP( "flash.u21", 0x0000000, 0x400000, CRC(f1dc0d33) SHA1(6e1e4f8da2a8ea59703e8684613c05a05c60d0ac) ) + ROM_LOAD16_WORD_SWAP( "flash.u22", 0x0000000, 0x400000, CRC(b783feb6) SHA1(86ca43262a4ccd64f4bd079ad8eaa0a3c113db1f) ) + ROM_LOAD16_WORD_SWAP( "flash.u23", 0x0000000, 0x400000, CRC(fa298e11) SHA1(9c54d4f37fd2ed367b6f9fdb01c361b25b6f2048) ) + ROM_LOAD16_WORD_SWAP( "flash.u24", 0x0000000, 0x400000, CRC(29827f0c) SHA1(050e6ed33cf38d5ed45b7d05d039e618f06b5c5b) ) + ROM_LOAD16_WORD_SWAP( "flash.u25", 0x0000000, 0x400000, CRC(81b974fa) SHA1(30c11fa926437f144fa6929df2eb85751777bcac) ) + ROM_LOAD16_WORD_SWAP( "flash.u26", 0x0000000, 0x400000, CRC(6ff2f3ec) SHA1(8193851b5fdf5248d328f14c0edc2501d12233f3) ) + + ROM_REGION( 0x1000, "cpu2", ROMREGION_ERASEFF ) /* PIC */ + ROM_LOAD( "btplay2k_pic", 0x0000, 0x1000, NO_DUMP ) // protected - labeled S831D dgPIX-PR1 + + ROM_REGION( 0x117, "pals", 0 ) + ROM_LOAD( "palce16v8h.u11", 0x0000, 0x117, CRC(47e474c9) SHA1(f13ef4050072ab000a45140c180a3b97dacd8675) ) +ROM_END + + +/* + +Fishing Maniac 2+ +Saero Entertainment, 2000 + +PCB combo: +VRender0 Minus Rev4 dgPIX Entertainment Inc. 1999 +Flash Module Type-A REV2 dgPIX Entertainment Inc. 1999 + +U100 18 pin socket for the PIC chip is unused + +*/ +ROM_START( fmaniac2p ) + ROM_REGION32_BE( 0x2000000, "flash", ROMREGION_ERASE00 ) /* Hyperstone CPU Code & Data */ + /* 0 - 0x17fffff empty space */ + ROM_LOAD16_WORD_SWAP( "flash.u8", 0x1800000, 0x400000, CRC(acc7da30) SHA1(8c4ffbf646777104a0e108c9d1b49446c12adddc) ) + ROM_LOAD16_WORD_SWAP( "flash.u9", 0x1c00000, 0x400000, CRC(b7f7079d) SHA1(2c97d106a8a28e6fa2a18fb324412533e24f46cc) ) + + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROM */ + ROM_LOAD16_WORD_SWAP( "flash.u10", 0x000000, 0x400000, CRC(9a4b15fa) SHA1(64a7c6eff049b15a005a9f2d87b340c81c2ee69c) ) + + ROM_REGION( 0x1000, "cpu2", ROMREGION_ERASEFF ) /* PIC */ + // not present +ROM_END + +/* + Fishing Maniac 3 Saero Entertainment, 2002 @@ -618,7 +716,7 @@ PCB combo: VRender0 Minus Rev4 dgPIX Entertainment Inc. 1999 Flash Module Type-A REV2 dgPIX Entertainment Inc. 1999 - U100 18 pin socket for the PIC chip is unused +U100 18 pin socket for the PIC chip is unused */ ROM_START( fmaniac3 ) @@ -627,7 +725,7 @@ ROM_START( fmaniac3 ) ROM_LOAD16_WORD_SWAP( "flash.u8", 0x1800000, 0x400000, CRC(dc08a224) SHA1(4d14145eb84ad13674296f81e90b9d60403fa0de) ) ROM_LOAD16_WORD_SWAP( "flash.u9", 0x1c00000, 0x400000, CRC(c1fee95f) SHA1(0ed5ed9fa18e7da9242a6df2c210c46de25a2281) ) - ROM_REGION( 0x400000, "ks0164", 0 ) /* sound rom */ + ROM_REGION( 0x400000, "ks0164", 0 ) /* sound ROM */ ROM_LOAD16_WORD_SWAP( "flash.u10", 0x000000, 0x400000, CRC(dfeb91a0) SHA1(a4a79073c3f6135957ea8a4a66a9c71a3a39893c) ) ROM_REGION( 0x1000, "cpu2", ROMREGION_ERASEFF ) /* PIC */ @@ -715,6 +813,39 @@ void dgpix_state::init_kdynastg() m_flash_roms = 4; } +void dgpix_state::init_letsdnce() +{ + u8 *rom = memregion("flash")->base() + 0x1c00000; + + rom[BYTE4_XOR_BE(0x3a9eb2)] = 3; + rom[BYTE4_XOR_BE(0x3a9eb3)] = 0; + rom[BYTE4_XOR_BE(0x3a9eb4)] = 3; + rom[BYTE4_XOR_BE(0x3a9eb5)] = 0; + rom[BYTE4_XOR_BE(0x3a9eb6)] = 3; + rom[BYTE4_XOR_BE(0x3a9eb7)] = 0; + + m_flash_roms = 2; +} + +void dgpix_state::init_btplay2k() +{ + u8 *rom = memregion("flash")->base() + 0x1c00000; + + rom[BYTE4_XOR_BE(0x3a7914)] = 3; + rom[BYTE4_XOR_BE(0x3a7915)] = 0; + rom[BYTE4_XOR_BE(0x3a7916)] = 3; + rom[BYTE4_XOR_BE(0x3a7917)] = 0; + rom[BYTE4_XOR_BE(0x3a7918)] = 3; + rom[BYTE4_XOR_BE(0x3a7919)] = 0; + + m_flash_roms = 2; +} + +void dgpix_state::init_fmaniac2p() +{ + m_flash_roms = 2; +} + void dgpix_state::init_fmaniac3() { m_flash_roms = 2; @@ -723,9 +854,12 @@ void dgpix_state::init_fmaniac3() } // anonymous namespace -GAME( 1999, elfin, 0, dgpix, dgpix, dgpix_state, init_elfin, ROT0, "dgPIX Entertainment Inc.", "Elfin", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) -GAME( 1999, jumpjump, 0, dgpix, dgpix, dgpix_state, init_jumpjump, ROT0, "dgPIX Entertainment Inc.", "Jump Jump", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) -GAME( 1999, xfiles, 0, dgpix, dgpix, dgpix_state, init_xfiles, ROT0, "dgPIX Entertainment Inc.", "The X-Files", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) -GAME( 1999, xfilesk, xfiles, dgpix, dgpix, dgpix_state, init_xfilesk, ROT0, "dgPIX Entertainment Inc.", "The X-Files (Censored, Korea)", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) -GAME( 1999, kdynastg, 0, dgpix, dgpix, dgpix_state, init_kdynastg, ROT0, "EZ Graphics", "King of Dynast Gear (version 1.8)", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) -GAME( 2002, fmaniac3, 0, dgpix, dgpix, dgpix_state, init_fmaniac3, ROT0, "Saero Entertainment", "Fishing Maniac 3", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, elfin, 0, dgpix, dgpix, dgpix_state, init_elfin, ROT0, "dgPIX Entertainment Inc.", "Elfin", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, jumpjump, 0, dgpix, dgpix, dgpix_state, init_jumpjump, ROT0, "dgPIX Entertainment Inc.", "Jump Jump", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, xfiles, 0, dgpix, dgpix, dgpix_state, init_xfiles, ROT0, "dgPIX Entertainment Inc.", "The X-Files", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, xfilesk, xfiles, dgpix, dgpix, dgpix_state, init_xfilesk, ROT0, "dgPIX Entertainment Inc.", "The X-Files (Censored, Korea)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, kdynastg, 0, dgpix, dgpix, dgpix_state, init_kdynastg, ROT0, "EZ Graphics", "King of Dynast Gear (version 1.8)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, letsdnce, 0, dgpix, dgpix, dgpix_state, init_letsdnce, ROT0, "dgPIX Entertainment Inc.", "Let's Dance", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 2000, btplay2k, 0, dgpix, dgpix, dgpix_state, init_btplay2k, ROT0, "dgPIX Entertainment Inc.", "Beat Player 2000", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 2000, fmaniac2p, 0, dgpix, dgpix, dgpix_state, init_fmaniac2p, ROT0, "Saero Entertainment", "Fishing Maniac 2+", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 2002, fmaniac3, 0, dgpix, dgpix, dgpix_state, init_fmaniac3, ROT0, "Saero Entertainment", "Fishing Maniac 3", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) -- cgit v1.2.3