Skip to content

Commit

Permalink
New working clones
Browse files Browse the repository at this point in the history
------------------
Jungle King (V103A) [Ioannis Bampoulas, TeamEurope]

New systems marked not working
------------------------------
Super 70's (V100US) [Ioannis Bampoulas, TeamEurope]

- astrocorp/astropc.cpp: verified chip under heatsink for recently added sets [TeamEurope]

- igs/igs017.cpp: verified cpoker2 dump with another PCB  [Ioannis Bampoulas, TeamEurope]
  • Loading branch information
Osso13 committed Oct 4, 2024
1 parent 878081b commit a9dcae6
Show file tree
Hide file tree
Showing 4 changed files with 93 additions and 29 deletions.
6 changes: 3 additions & 3 deletions src/mame/astrocorp/astropc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -309,7 +309,7 @@ ROM_END
// Astro ROHS (GFX chip?) and 2x LY621024SL RAMs.


// main PCB: unmarked with AMD Geode CS5536AD, W83627HG-AW IOC, RTL8100C ethernet controller, big heat-sinked chip,
// main PCB: unmarked with AMD Geode CS5536AD, W83627HG-AW IOC, RTL8100C ethernet controller, AMD GEODE ALXD800EEXJ2VD (heat-sinked),
// 4x HY5DU121622CTP SRAM (mounted on SO-DIMM), Realtek ALC203 + Yamaha YDA138-E (mounted on Yamaha_Audio_A riser board)
// with 24.576 MHz XTAL, Trascend Compact Flash
ROM_START( carnivac )
Expand All @@ -324,8 +324,8 @@ ROM_START( carnivac )
ROM_LOAD( "carnival_us.004.d.img", 0x0000, 0xf618000, CRC(566b9fbf) SHA1(14364b05151db60b1882c2230d896ac8c632395b) )
ROM_END

// main PCB: Astro AS-LX800 A5 with AMD Geode CS5536AD, big heat-sinked chip, 4x HY5DU121622CTP SRAM (directly on PCB),
// Realtek ALC203 + Yamaha YDA138-E with 24.576 MHz XTAL (directly on PCB), Trascend Compact Flash
// main PCB: Astro AS-LX800 A5 with AMD Geode CS5536AD, RTL8100C ethernet controller, AMD GEODE ALXD800EEXJ2VD (heat-sinked),
// 4x HY5DU121622CTP SRAM (directly on PCB), Realtek ALC203 + Yamaha YDA138-E with 24.576 MHz XTAL (directly on PCB), Trascend Compact Flash
ROM_START( santacl )
ROM_REGION32_LE(0x80000, "pci:12.0", 0)
ROM_LOAD( "phoenixbios.u30", 0x00000, 0x80000, CRC(4e24ffdb) SHA1(8b4bba02183da5eae27755b86eca830d06fe05ae) )
Expand Down
87 changes: 61 additions & 26 deletions src/mame/igs/igs017.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ Year + Game PCB CPU Sound
99 Tarzan (V107) NO-0228? Z180 U6295 IGS031 IGS025 IGS029 Battery
99 Tarzan (V109C) NO-0248-1 Z180 U6295 IGS031 IGS025 Battery
00 Chaoji Damanguan 2 - Jiaqiang Ban (V100C) NO-0271 68000 K668 IGS031 IGS025 Battery
00? Jungle King (V103A) NO-0230-1 Z180 U6295 IGS031 IGS025 (N9) Battery
00? Super Tarzan (V100I) NO-0230-1 Z180 K668 IGS031 IGS025 Battery
00? Happy Skill (V611IT) NO-0281 Z180 K668 IGS031 IGS025 Battery
00? Champion Poker 2 (V100A) unreadable Z180 M6295 IGS031 IGS025 Battery
Expand Down Expand Up @@ -658,6 +659,7 @@ class igs017_state : public driver_device
void init_cpoker2();
void init_happyskl();
void init_iqblocka();
void init_jking103a();
void init_lhzb2();
void init_lhzb2a();
void init_mgcs();
Expand Down Expand Up @@ -1326,6 +1328,15 @@ void igs017_state::init_starzan()
// m_igs_string->dump("starzan_string.key", 0xa86f, 0xa966, false);
}

void igs017_state::init_jking103a()
{
starzan_decrypt_program_rom();
m_igs017_igs031->tarzan_decrypt_tiles(1);
m_igs017_igs031->tarzan_decrypt_sprites(0, 0);

// m_igs_string->dump("jking103a_string.key", 0xb14d, 0xb244, false);
}


void igs017_state::init_happyskl()
{
Expand Down Expand Up @@ -5680,6 +5691,28 @@ ROM_START( tarzanc )
ROM_LOAD( "tarzan_string.key", 0x00, 0xec, CRC(595fe40c) SHA1(0b46983400d237d8bde97a72eaa99b718a03387e) )
ROM_END

// IGS PCB NO-0248
ROM_START( tarzanb ) // V110 TARZAN C
ROM_REGION( 0x40000, "maincpu", 0 )
ROM_LOAD( "t.z._v110.u19", 0x00000, 0x40000, CRC(16026d12) SHA1(df08641b4bc1437648f0a8cd5f7a8a4786c07041) )

ROM_REGION( 0x400000, "igs017_igs031:sprites", ROMREGION_ERASE00 )
ROM_LOAD( "igs_a2103_cg_v100f.u15", 0x000000, 0x200000, CRC(afe56ed5) SHA1(656cee6a59f2930eec9acd11b84b416cc7354e01) )

ROM_REGION( 0x80000, "igs017_igs031:tilemaps", 0 )
ROM_LOAD( "t.z._text_u5.u5", 0x00000, 0x80000, CRC(1724e039) SHA1(d628499b61f98f7c9034d70b82ee25e002190ece) )

ROM_REGION( 0x80000, "oki", 0 )
ROM_LOAD( "igs_s2102_sp_v102.u14", 0x00000, 0x80000, CRC(90dda82d) SHA1(67fbc1e8d76b85e124136e2f1df09c8b6c5a8f97) )

ROM_REGION( 0x2dd * 2, "plds", ROMREGION_ERASE )
ROM_LOAD( "eg.u20", 0x000, 0x2dd, NO_DUMP )
ROM_LOAD( "eg.u21", 0x2dd, 0x2dd, NO_DUMP )

ROM_REGION( 0xec, "igs_string", 0 )
ROM_LOAD( "tarzanb_string.key", 0x00, 0xec, CRC(595fe40c) SHA1(0b46983400d237d8bde97a72eaa99b718a03387e) )
ROM_END

// sets below are guesswork, assembled from partial dumps...

// IGS NO-0248-1? Mislabeled?
Expand Down Expand Up @@ -5727,27 +5760,6 @@ ROM_START( tarzana )
ROM_LOAD( "tarzan_string.key", 0x00, 0xec, CRC(595fe40c) SHA1(0b46983400d237d8bde97a72eaa99b718a03387e) )
ROM_END

// IGS PCB NO-0248
ROM_START( tarzanb ) // V110 TARZAN C
ROM_REGION( 0x40000, "maincpu", 0 )
ROM_LOAD( "t.z._v110.u19", 0x00000, 0x40000, CRC(16026d12) SHA1(df08641b4bc1437648f0a8cd5f7a8a4786c07041) )

ROM_REGION( 0x400000, "igs017_igs031:sprites", ROMREGION_ERASE00 )
ROM_LOAD( "igs_a2103_cg_v100f.u15", 0x000000, 0x200000, CRC(afe56ed5) SHA1(656cee6a59f2930eec9acd11b84b416cc7354e01) )

ROM_REGION( 0x80000, "igs017_igs031:tilemaps", 0 )
ROM_LOAD( "t.z._text_u5.u5", 0x00000, 0x80000, CRC(1724e039) SHA1(d628499b61f98f7c9034d70b82ee25e002190ece) )

ROM_REGION( 0x80000, "oki", 0 )
ROM_LOAD( "igs_s2102_sp_v102.u14", 0x00000, 0x80000, CRC(90dda82d) SHA1(67fbc1e8d76b85e124136e2f1df09c8b6c5a8f97) )

ROM_REGION( 0x2dd * 2, "plds", ROMREGION_ERASE )
ROM_LOAD( "eg.u20", 0x000, 0x2dd, NO_DUMP )
ROM_LOAD( "eg.u21", 0x2dd, 0x2dd, NO_DUMP )

ROM_REGION( 0xec, "igs_string", 0 )
ROM_LOAD( "tarzanb_string.key", 0x00, 0xec, CRC(595fe40c) SHA1(0b46983400d237d8bde97a72eaa99b718a03387e) )
ROM_END

/***************************************************************************
Expand Down Expand Up @@ -5820,6 +5832,29 @@ ROM_START( starzan )
ROM_LOAD( "starzan_string.key", 0x00, 0xec, CRC(b33f5050) SHA1(900d3c48944dbdd95d9e48d74c355e82e00ac012) )
ROM_END

// default settings password is all start button
ROM_START( jking103a )
ROM_REGION( 0x40000, "maincpu", 0 )
ROM_LOAD( "jungleking_v103a.u9", 0x00000, 0x40000, CRC(acd23f7e) SHA1(84d487c240d6773c81c04ee12a4aafa7e34affc7) )

ROM_REGION( 0x400000, "igs017_igs031:sprites", 0 )
ROM_LOAD( "igs_a2104_cg_v110.u3", 0x00000, 0x400000, CRC(dcbff16f) SHA1(2bf77ef4448c26124c8d8d18bb7ffe4105cfa940) ) // FIXED BITS (xxxxxxx0xxxxxxxx)
// empty u2

ROM_REGION( 0x80000, "igs017_igs031:tilemaps", 0 )
ROM_LOAD( "igs_t2105_cg_v110.u11", 0x00000, 0x80000, CRC(1d4be260) SHA1(6374c61735144b3ff54d5e490f26adac4a10b14d) )

ROM_REGION( 0x80000, "oki", 0 )
ROM_LOAD( "igs_s2102_sp_v102.u8", 0x00000, 0x80000, CRC(90dda82d) SHA1(67fbc1e8d76b85e124136e2f1df09c8b6c5a8f97) )

ROM_REGION( 0x2dd * 2, "plds", ROMREGION_ERASE )
ROM_LOAD( "eg.u20", 0x000, 0x2dd, NO_DUMP )
ROM_LOAD( "eg.u21", 0x2dd, 0x2dd, NO_DUMP )

ROM_REGION( 0xec, "igs_string", 0 )
ROM_LOAD( "jking103a_string.key", 0x00, 0xec, BAD_DUMP CRC(8d288f5e) SHA1(19c184600d80838ef04be8ab29c93d91cf3161c9) ) // TODO: check this
ROM_END


/***************************************************************************
Expand Down Expand Up @@ -5855,18 +5890,17 @@ ROM_START( happyskl )
ROM_END


// PCB was heavily corroded and not working
// dump confirmed from two PCBs
ROM_START( cpoker2 )
ROM_REGION( 0x40000, "maincpu", 0 )
ROM_LOAD( "u9.bin", 0x00000, 0x40000, CRC(8d79eb4d) SHA1(9cad09013f83335ec78c3ff78715bc5d9a989eb7) )
ROM_LOAD( "champion_2_v100a.u9", 0x00000, 0x40000, CRC(8d79eb4d) SHA1(9cad09013f83335ec78c3ff78715bc5d9a989eb7) )

ROM_REGION( 0x400000, "igs017_igs031:sprites", 0 )
// the following ROM wasn't readable on this PCB, but it's the same as the one in happyskl. Assuming same contents for now
ROM_LOAD( "igs_a2701_cg_v100.u3", 0x00000, 0x400000, BAD_DUMP CRC(f3756a51) SHA1(8dd4677584f309cec4b068be9f9370a7a172a031) ) // FIXED BITS (xxxxxxx0xxxxxxxx) - 1xxxxxxxxxxxxxxxxxxxxx = 0x00
ROM_LOAD( "igs_a2701_cg_v100.u3", 0x00000, 0x400000, CRC(f3756a51) SHA1(8dd4677584f309cec4b068be9f9370a7a172a031) )
// U2 (overlay) not populated

ROM_REGION( 0x80000, "igs017_igs031:tilemaps", 0 )
ROM_LOAD( "u11.bin", 0x00000, 0x80000, CRC(34475c83) SHA1(376ff68d89c25471483b074dcf7542f42f954e67) ) // 1xxxxxxxxxxxxxxxxxx = 0x00
ROM_LOAD( "champion_2_text.u11", 0x00000, 0x80000, CRC(34475c83) SHA1(376ff68d89c25471483b074dcf7542f42f954e67) ) // 1xxxxxxxxxxxxxxxxxx = 0x00

ROM_REGION( 0x80000, "oki", 0 )
ROM_LOAD( "igs_s2702_sp_v100.u8", 0x00000, 0x80000, CRC(0ec9b1b5) SHA1(b8c7e068ddf6777a184339e6796be33e442a3df4) ) // same as happyskl
Expand Down Expand Up @@ -5940,6 +5974,7 @@ GAME ( 1999, tarzana, tarzanc, tarzan, tarzan, igs017_state, init_tarzana
GAME ( 1999, tarzanb, tarzanc, tarzan, tarzan, igs017_state, init_tarzanc, ROT0, "IGS", "Tarzan Chuang Tian Guan (China, V110)", 0 )
GAME ( 2000, sdmg2p, 0, sdmg2p, sdmg2p, igs017_state, init_sdmg2p, ROT0, "IGS", "Maque Wangchao / Chaoji Damanguan 2 - Jiaqiang Ban (China, V100C)", MACHINE_UNEMULATED_PROTECTION | MACHINE_NOT_WORKING ) // 麻雀王朝 / 超級大滿貫 2 -加強版 protection kicks in after starting game, hopper isn't hooked up correctly
GAMEL( 2000?, starzan, 0, starzan, starzan, igs017_state, init_starzan, ROT0, "IGS (G.F. Gioca license)", "Super Tarzan (Italy, V100I)", 0, layout_igsslot )
GAMEL( 2000?, jking103a,starzan, starzan, starzan, igs017_state, init_jking103a,ROT0, "IGS", "Jungle King (V103A)", 0, layout_igsslot )
GAMEL( 2000?, happyskl, 0, happyskl, happyskl, igs017_state, init_happyskl, ROT0, "IGS", "Happy Skill (Italy, V611IT)", 0, layout_igspoker )
GAMEL( 2000?, cpoker2, 0, cpoker2, cpoker2, igs017_state, init_cpoker2, ROT0, "IGS", "Champion Poker 2 (V100A)", 0, layout_igspoker )
GAME ( 2000?, spkrform, spk306us, spkrform, spkrform, igs017_state, init_spkrform, ROT0, "IGS", "Super Poker (V100xD03) / Formosa", MACHINE_UNEMULATED_PROTECTION ) // poker game enabling forced with a patch. Parent spk306us in driver spoker.cpp
27 changes: 27 additions & 0 deletions src/mame/igs/igs_m036.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -418,6 +418,31 @@ ROM_START( lhzbgqb )
ROM_END


// this PCB has IGS036 MCU, R5F21256SN MCU, TT5665, ALTERA EPM3032ALC44-10N (stickered IS U15)
// ROM labels actually are written "super 70's..."
ROM_START( super70s )
ROM_REGION( 0x04000, "maincpu", 0 )
// Internal ROM of IGS036 ARM based MCU
ROM_LOAD( "f9_igs036.u28", 0x00000, 0x4000, NO_DUMP )

ROM_REGION( 0x8000, "mcu", 0 )
ROM_LOAD( "r5f21256sn.u32", 0x0000, 0x8000, NO_DUMP )

// this seems to be dumped half sized if compared to other dumps in the driver of this same kind of ROM
ROM_REGION32_LE( 0x200000, "user1", 0 ) // external ARM data / prg
ROM_LOAD( "super_70s_v-100us.u31", 0x000000, 0x100000, BAD_DUMP CRC(60020aa3) SHA1(f6be4f9588192ef1e57182e5a61228440e5cfa64) ) // EV29LV160, BADADDR xxxxxxxxxxxxxxxxxx-x

// this seems to be dumped half sized if compared to other dumps in the driver of this same kind of ROM
ROM_REGION( 0x400000, "tt5665", 0 ) // samples
ROM_LOAD( "super_70s_v100us_u27.u27", 0x000000, 0x400000, BAD_DUMP CRC(a57fbc1c) SHA1(c7b0c72e678cd4120f576283eca8d718c058994c) ) // EV29LV640, 11xxxxxxxxxxxxxxxxxxxx = 0x00

// these seem to be dumped half sized if compared to other dumps in the driver of this same kind of ROM
ROM_REGION( 0x800000, "gfx", 0 )
ROM_LOAD( "super_70s_v100us_u25.u25", 0x000000, 0x400000, BAD_DUMP CRC(41baefa5) SHA1(1817bf43b3f72df35d50ef1ceb151d77ecfb988b) ) // EV29LV640
ROM_LOAD( "super_70s_v100us_u26.u26", 0x400000, 0x400000, BAD_DUMP CRC(39bb6c75) SHA1(bc52e51f1ad3588253cb42eb61baa11d0720c5a5) ) // EV29LV640
ROM_END


void igs_m036_state::pgm_create_dummy_internal_arm_region(void)
{
uint16_t *temp16 = (uint16_t *)memregion("maincpu")->base();
Expand Down Expand Up @@ -547,6 +572,8 @@ GAME( 200?, lhzb3in1, 0, igs_m036_tt, igs_m036, igs_m036_state, init_cjddzsp

GAME( 200?, igsm312, 0, igs_m036_tt, igs_m036, igs_m036_state, init_igsm312, ROT0, "IGS", "unknown 'IGS 6POKER2' game (V312CN)", MACHINE_IS_SKELETON ) // there's very little code and no gfx ROMs, might be a 'set/clear' chip for a gambling game.

GAME( 200?, super70s, 0, igs_m036_tt, igs_m036, igs_m036_state, init_igsm312, ROT0, "IGS", "Super 70's (V100US)", MACHINE_IS_SKELETON )

GAME( 2010, lhfy, 0, igs_m036_tt, igs_m036, igs_m036_state, init_igsm312, ROT0, "IGS", "Long Hu Feng Yun Gao Qing Ban (V206CN)", MACHINE_IS_SKELETON )

GAME( 2010, lhzbgqb, 0, igs_m036_tt, igs_m036, igs_m036_state, init_igsm312, ROT0, "IGS", "Long Hu Zheng Ba Gao Qing Ban (V105CN)", MACHINE_IS_SKELETON )
Expand Down
2 changes: 2 additions & 0 deletions src/mame/mame.lst
Original file line number Diff line number Diff line change
Expand Up @@ -20293,6 +20293,7 @@ genius6b // (c) 1997
happyskl // (c) 2000?
iqblocka // (c) 1996
iqblockf // (c) 1996
jking103a // (c) 1999
lhzb2 // (c) 1998
lhzb2a // (c) 1998
mgcs // (c) 1998
Expand Down Expand Up @@ -20378,6 +20379,7 @@ lhzb3in1 // (c) 200?
lhzbgqb // (c) 2010
mghammer // (c) 2015
qhzb // (c) 2007
super70s // (c) 200?

@source:igs/igspoker.cpp
chleague // (c) 199? IGS
Expand Down

0 comments on commit a9dcae6

Please sign in to comment.