From 0455f107931991a3a1c3e693bc5c1f4b8e32219d Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Tue, 5 Dec 2023 18:55:32 +0100 Subject: New working clones ------------------ Mahjong Gakuensai (Japan, set 2) [buffi] New clones marked not working ----------------------------- Rolling [Taksangs, charlie] --- src/mame/igs/goldstar.cpp | 34 +++++++++++++++++++++++++++++++++- src/mame/igs/goldstar.h | 2 ++ src/mame/mame.lst | 2 ++ src/mame/metro/metro.cpp | 44 ++++++++++++++++++++++++++++++++------------ 4 files changed, 69 insertions(+), 13 deletions(-) diff --git a/src/mame/igs/goldstar.cpp b/src/mame/igs/goldstar.cpp index d9686a66f5a..a99074c66ad 100644 --- a/src/mame/igs/goldstar.cpp +++ b/src/mame/igs/goldstar.cpp @@ -1318,7 +1318,7 @@ void goldstar_state::wcat3_map(address_map &map) /* newer / more capable hw */ void unkch_state::unkch_map(address_map &map) { - map(0x0000, 0x9fff).rom(); + map(0x0000, 0xbfff).rom(); map(0xc000, 0xc1ff).ram().w(m_palette, FUNC(palette_device::write8)).share("palette"); map(0xc800, 0xc9ff).ram().w(m_palette, FUNC(palette_device::write8_ext)).share("palette_ext"); @@ -8713,6 +8713,11 @@ static GFXDECODE_START( gfx_animalhs ) GFXDECODE_ENTRY( "gfx2", 0, animalhs_tiles8x32_layout, 128+64, 4 ) GFXDECODE_END +static GFXDECODE_START( gfx_rolling ) + GFXDECODE_ENTRY( "gfx1", 0, gfx_8x8x4_packed_lsb, 0, 16 ) + GFXDECODE_ENTRY( "gfx2", 0, animalhs_tiles8x32_layout, 0, 16 ) +GFXDECODE_END + void wingco_state::system_outputa_w(uint8_t data) { @@ -9782,7 +9787,12 @@ void unkch_state::unkch(machine_config &config) TICKET_DISPENSER(config, m_ticket_dispenser, attotime::from_msec(200), TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_LOW); } +void unkch_state::rolling(machine_config &config) +{ + unkch(config); + m_gfxdecode->set_info(gfx_rolling); +} // hw unknown - should be somewhat similar to cm void goldstar_state::pkrmast(machine_config &config) @@ -16555,6 +16565,26 @@ ROM_START( unkch4 ) // all roms unique ROM_END +ROM_START( rolling ) // Z80A + 95101 (AY8910) + Actel A40MX04 + 4 8-dip banks + ROM_REGION( 0x10000, "maincpu", 0 ) // two identical ROMs one near the other. Why? + ROM_LOAD( "tms27c512.u30", 0x00000, 0x10000, CRC(b4a92b43) SHA1(9e7bca314de40d3fdb4bb470c3da46750ae5fede) ) + ROM_LOAD( "tms27c512", 0x00000, 0x10000, CRC(b4a92b43) SHA1(9e7bca314de40d3fdb4bb470c3da46750ae5fede) ) // no u location on PCB + + ROM_REGION( 0x20000, "gfx1", 0 ) + ROM_LOAD( "tms27c010a.u32", 0x00000, 0x20000, CRC(6dc32bf5) SHA1(8bb242040b533bd0105be13ae10dc1cb2b3ff81e) ) + + ROM_REGION( 0x40000, "gfx2", 0 ) + ROM_LOAD( "tms27c020.u33", 0x00000, 0x40000, CRC(ef94ead5) SHA1(92b49181f3a7e6b9054ca28a98d4d22e1ebaaf8f) ) + + ROM_REGION( 0xa00, "plds", ROMREGION_ERASE00 ) + ROM_LOAD( "palce16v8n.u44", 0x000, 0x117, NO_DUMP ) + ROM_LOAD( "palce16v8n.u45", 0x200, 0x117, NO_DUMP ) + ROM_LOAD( "palce16v8n.u46", 0x400, 0x117, NO_DUMP ) + ROM_LOAD( "palce16v8n.u47", 0x600, 0x117, NO_DUMP ) + ROM_LOAD( "palce20v8h.u48", 0x800, 0x157, NO_DUMP ) +ROM_END + + ROM_START( cherry96 ) // all roms unique ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "new_96-16-3.u6", 0x00000, 0x10000, CRC(84d5f2fc) SHA1(e3ed0670350920c661c5a40581966671b8a8c7df) ) @@ -20463,6 +20493,8 @@ GAMEL(1999, unkch4, scmaster, unkch, unkch4, unkch_state, init_un GAME( 1996, cherry96, scmaster, unkch, unkch4, unkch_state, init_unkch4, ROT0, "bootleg", "New Cherry '96 (bootleg of New Fruit Bonus?)", MACHINE_NOT_WORKING ) // need to be moved to another machine... +GAME( 1998, rolling, scmaster, rolling, unkch4, unkch_state, empty_init, ROT0, "bootleg", "Rolling", MACHINE_NOT_WORKING ) // inputs, outputs + // this has a 4th reel GAME( 200?, ss2001, 0, ss2001, cmaster, cmaster_state, empty_init, ROT0, "bootleg", "Super Shanghai 2001", MACHINE_IS_SKELETON ) // TODO: everything diff --git a/src/mame/igs/goldstar.h b/src/mame/igs/goldstar.h index 80b43338368..f6c0458fc8d 100644 --- a/src/mame/igs/goldstar.h +++ b/src/mame/igs/goldstar.h @@ -414,6 +414,8 @@ public: void unkch(machine_config &config); void bonusch(machine_config &config); void feverch(machine_config &config); + void rolling(machine_config &config); + void bonusch_map(address_map &map); void feverch_map(address_map &map); void megaline_map(address_map &map); diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 18166fe0038..4827087d6da 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -19830,6 +19830,7 @@ ns8linesa // (c) 1985 Yamate (bootleg) pkrmast // (c) 199? unknown pkrmasta // (c) 199? unknown pokonl97 // (c) 1997 Amcoe +rolling // bootleg roypok96 // (c) 1996 Amcoe roypok96a // (c) 1996 Amcoe roypok96b // (c) 1996 Amcoe @@ -26892,6 +26893,7 @@ dokyusei // (c) 1995 Make Software / Elf / Media Trading dokyusp // (c) 1995 Make Software / Elf / Media Trading gakusai // (c) 1997 MakeSoft gakusai2 // (c) 1998 MakeSoft +gakusaia // (c) 1997 MakeSoft gstrik2 // (c) 1996 Human Amusement gstrik2j // (c) 1996 Human Amusement gunmast // (c) 1994 diff --git a/src/mame/metro/metro.cpp b/src/mame/metro/metro.cpp index 00f1e76330f..7a5e592d9af 100644 --- a/src/mame/metro/metro.cpp +++ b/src/mame/metro/metro.cpp @@ -4532,21 +4532,40 @@ Custom: I4300 095 ROM_START( gakusai ) ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */ - ROM_LOAD16_BYTE( "6.bin", 0x000000, 0x040000, CRC(6f8ab082) SHA1(18caf49a0c65f831d375f089f27b8570b094f029) ) - ROM_LOAD16_BYTE( "5.bin", 0x000001, 0x040000, CRC(010176c4) SHA1(48fcea18c02c1426a699a636f44b21cf7625e8a0) ) + ROM_LOAD16_BYTE( "6.u38", 0x000000, 0x040000, CRC(6f8ab082) SHA1(18caf49a0c65f831d375f089f27b8570b094f029) ) + ROM_LOAD16_BYTE( "5.u39", 0x000001, 0x040000, CRC(010176c4) SHA1(48fcea18c02c1426a699a636f44b21cf7625e8a0) ) ROM_REGION( 0x2000000, "vdp3", 0 ) /* Gfx + Data (Addressable by CPU & Blitter) */ - ROM_LOAD64_WORD( "2l.bin", 0x0000000, 0x400000, CRC(45dfb5c7) SHA1(04338d695bd6973fd7d7286a8da563250ae4f71b) ) - ROM_LOAD64_WORD( "4l.bin", 0x0000002, 0x400000, CRC(7ab64f49) SHA1(e4d9a7bf97635b41fe632b3542eee1f609db080a) ) - ROM_LOAD64_WORD( "1l.bin", 0x0000004, 0x400000, CRC(75093421) SHA1(cfe549e24abfedd740ead30cab235df494e9f45d) ) - ROM_LOAD64_WORD( "3l.bin", 0x0000006, 0x400000, CRC(4dcfcd98) SHA1(bfb882d99c854e68e86f4e8f8aa7d02dcf5e9cfc) ) - ROM_LOAD64_WORD( "2u.bin", 0x1000000, 0x400000, CRC(8d4f912b) SHA1(1fcf1dd50fd678cc908ab47bcccaa4ed7b2b6938) ) - ROM_LOAD64_WORD( "4u.bin", 0x1000002, 0x400000, CRC(1f83e98a) SHA1(10b2d3ceb4bda6a2ecf795b865c948563c2fb84d) ) - ROM_LOAD64_WORD( "1u.bin", 0x1000004, 0x400000, CRC(28b386d9) SHA1(d1e151fa112c86d2cb97b7a5439a1e549359055d) ) - ROM_LOAD64_WORD( "3u.bin", 0x1000006, 0x400000, CRC(87f3c5e6) SHA1(097c0a53b040399d928f17fe3e9f42755b1d72f3) ) + ROM_LOAD64_WORD( "2l.u26", 0x0000000, 0x400000, CRC(45dfb5c7) SHA1(04338d695bd6973fd7d7286a8da563250ae4f71b) ) + ROM_LOAD64_WORD( "4l.u27", 0x0000002, 0x400000, CRC(7ab64f49) SHA1(e4d9a7bf97635b41fe632b3542eee1f609db080a) ) + ROM_LOAD64_WORD( "1l.u24", 0x0000004, 0x400000, CRC(75093421) SHA1(cfe549e24abfedd740ead30cab235df494e9f45d) ) + ROM_LOAD64_WORD( "3l.u25", 0x0000006, 0x400000, CRC(4dcfcd98) SHA1(bfb882d99c854e68e86f4e8f8aa7d02dcf5e9cfc) ) + ROM_LOAD64_WORD( "2u.u21", 0x1000000, 0x400000, CRC(8d4f912b) SHA1(1fcf1dd50fd678cc908ab47bcccaa4ed7b2b6938) ) + ROM_LOAD64_WORD( "4u.u20", 0x1000002, 0x400000, CRC(1f83e98a) SHA1(10b2d3ceb4bda6a2ecf795b865c948563c2fb84d) ) + ROM_LOAD64_WORD( "1u.u23", 0x1000004, 0x400000, CRC(28b386d9) SHA1(d1e151fa112c86d2cb97b7a5439a1e549359055d) ) + ROM_LOAD64_WORD( "3u.u22", 0x1000006, 0x400000, CRC(87f3c5e6) SHA1(097c0a53b040399d928f17fe3e9f42755b1d72f3) ) ROM_REGION( 0x400000, "oki", 0 ) /* Samples */ - ROM_LOAD( "7.bin", 0x000000, 0x400000, CRC(34575a14) SHA1(53d458513f208f07844e1727d5889e85dcd4f0ed) ) + ROM_LOAD( "7.u11", 0x000000, 0x400000, CRC(34575a14) SHA1(53d458513f208f07844e1727d5889e85dcd4f0ed) ) +ROM_END + +ROM_START( gakusaia ) + ROM_REGION( 0x080000, "maincpu", 0 ) /* 68000 Code */ + ROM_LOAD16_BYTE( "6.u38", 0x000000, 0x040000, CRC(16155d87) SHA1(8fc44f9a9c03b211edc204deba1aa4ac9d455eeb) ) + ROM_LOAD16_BYTE( "5.u39", 0x000001, 0x040000, CRC(2564acb8) SHA1(fe526594c7fa2eba05eeb3c58081244c8966588f) ) + + ROM_REGION( 0x2000000, "vdp3", 0 ) /* Gfx + Data (Addressable by CPU & Blitter) */ + ROM_LOAD64_WORD( "2l.u26", 0x0000000, 0x400000, CRC(45dfb5c7) SHA1(04338d695bd6973fd7d7286a8da563250ae4f71b) ) + ROM_LOAD64_WORD( "4l.u27", 0x0000002, 0x400000, CRC(7ab64f49) SHA1(e4d9a7bf97635b41fe632b3542eee1f609db080a) ) + ROM_LOAD64_WORD( "1l.u24", 0x0000004, 0x400000, CRC(75093421) SHA1(cfe549e24abfedd740ead30cab235df494e9f45d) ) + ROM_LOAD64_WORD( "3l.u25", 0x0000006, 0x400000, CRC(4dcfcd98) SHA1(bfb882d99c854e68e86f4e8f8aa7d02dcf5e9cfc) ) + ROM_LOAD64_WORD( "2u.u21", 0x1000000, 0x400000, CRC(8d4f912b) SHA1(1fcf1dd50fd678cc908ab47bcccaa4ed7b2b6938) ) + ROM_LOAD64_WORD( "4u.u20", 0x1000002, 0x400000, CRC(1f83e98a) SHA1(10b2d3ceb4bda6a2ecf795b865c948563c2fb84d) ) + ROM_LOAD64_WORD( "1u.u23", 0x1000004, 0x400000, CRC(28b386d9) SHA1(d1e151fa112c86d2cb97b7a5439a1e549359055d) ) + ROM_LOAD64_WORD( "3u.u22", 0x1000006, 0x400000, CRC(87f3c5e6) SHA1(097c0a53b040399d928f17fe3e9f42755b1d72f3) ) + + ROM_REGION( 0x400000, "oki", 0 ) /* Samples */ + ROM_LOAD( "7.u11", 0x000000, 0x400000, CRC(34575a14) SHA1(53d458513f208f07844e1727d5889e85dcd4f0ed) ) ROM_END @@ -5495,7 +5514,8 @@ GAME( 1999, batlbubl, bangball, batlbubl, batlbubl, metro_state, init_balcub GAME( 1995, dokyusei, 0, dokyusei, dokyusei, metro_state, empty_init, ROT0, "Make Software / Elf / Media Trading", "Mahjong Doukyuusei", MACHINE_SUPPORTS_SAVE ) GAME( 1995, dokyusp, 0, dokyusp, gakusai, metro_state, empty_init, ROT0, "Make Software / Elf / Media Trading", "Mahjong Doukyuusei Special", MACHINE_SUPPORTS_SAVE ) GAME( 1996, mouja, 0, mouja, mouja, metro_state, init_mouja, ROT0, "Etona", "Mouja (Japan)", MACHINE_SUPPORTS_SAVE ) -GAME( 1997, gakusai, 0, gakusai, gakusai, metro_state, empty_init, ROT0, "MakeSoft", "Mahjong Gakuensai (Japan)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) +GAME( 1997, gakusai, 0, gakusai, gakusai, metro_state, empty_init, ROT0, "MakeSoft", "Mahjong Gakuensai (Japan, set 1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) +GAME( 1997, gakusaia, gakusai, gakusai, gakusai, metro_state, empty_init, ROT0, "MakeSoft", "Mahjong Gakuensai (Japan, set 2)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) GAME( 1998, gakusai2, 0, gakusai2, gakusai, metro_state, empty_init, ROT0, "MakeSoft", "Mahjong Gakuensai 2 (Japan)", MACHINE_SUPPORTS_SAVE ) // HUM-002 / HUM-003 -- cgit v1.2.3