summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2020-04-09 19:13:01 +0200
committer Ivan Vangelista <mesgnet@yahoo.it>2020-04-09 19:13:01 +0200
commit768c686633b6c3fd9d3e321e471f2eae0c73e34b (patch)
tree7f2c76ae774650008199317005161263d2acd2c7
parent2893f3b1a2e824e2d747f1481685237850c0208d (diff)
New machines marked as NOT_WORKING
---------------------------------- Happy Skill (Italy, V611IT) [caius, The Dumping Union]
-rw-r--r--src/mame/drivers/igs017.cpp66
-rw-r--r--src/mame/drivers/snk.cpp13
-rw-r--r--src/mame/mame.lst1
3 files changed, 73 insertions, 7 deletions
diff --git a/src/mame/drivers/igs017.cpp b/src/mame/drivers/igs017.cpp
index 7849ed274a8..9141f17c404 100644
--- a/src/mame/drivers/igs017.cpp
+++ b/src/mame/drivers/igs017.cpp
@@ -24,6 +24,7 @@ Year + Game PCB CPU Sound Custom
98 Mj Man Guan Caishen NO-0192-1 68000 M6295 IGS017 IGS025 IGS029 Battery
99 Tarzan (V107) NO-0228? Z180 M6295 IGS031 IGS025 IGS029 Battery
99 Tarzan (V109C) NO-0248-1 Z180 M6295 IGS031 IGS025 Battery
+9? Happy Skill (V611) NO-0281 Z180 M6295 (K668) IGS031 IGS025 Battery
00? Super Tarzan (V100I) NO-0230-1 Z180 M6295 IGS031 IGS025 Battery
?? Super Poker / Formosa NO-0187 Z180 M6295 YM2413 IGS017 IGS025 Battery
-------------------------------------------------------------------------------------------------------------
@@ -501,6 +502,7 @@ public:
void init_tarzana();
void init_lhzb2a();
void init_mgdha();
+ void init_happyskl();
protected:
virtual void video_start() override;
@@ -1012,6 +1014,43 @@ void igs017_state::init_starzan()
}
+void igs017_state::init_happyskl()
+{
+ u8 *rom = memregion("maincpu")->base();
+
+ for (int i = 0; i < 0x40000; i++)
+ {
+ u8 x = rom[i];
+
+ if ((i & 0x00011) == 0x00011) x ^= 0x01;
+ if ((i & 0x02180) == 0x00000) x ^= 0x01;
+ if ((i & 0x0280) != 0x00080) x ^= 0x20;
+ if ((i & 0x02a0) == 0x00280) x ^= 0x20;
+ if ((i & 0x0280) != 0x00080) x ^= 0x40;
+ if ((i & 0x01a0) != 0x00080) x ^= 0x80;
+
+ m_decrypted_opcodes[i] = x;
+ }
+
+ for (int i = 0; i < 0x40000; i++) // adapted from starzan, seems ok
+ {
+ u8 x = rom[i];
+
+ if ((i & 0x00011) == 0x00011) x ^= 0x01;
+ if ((i & 0x02180) == 0x00000) x ^= 0x01;
+ if ((i & 0x000a0) != 0x00000) x ^= 0x20;
+ if ((i & 0x001a0) == 0x00000) x ^= 0x20;
+ if ((i & 0x00060) != 0x00040) x ^= 0x40;
+ if ((i & 0x00260) == 0x00240) x ^= 0x40;
+ if ((i & 0x00020) == 0x00020) x ^= 0x80;
+ if ((i & 0x00260) == 0x00040) x ^= 0x80;
+
+ rom[i] = x;
+ }
+
+ tarzan_decrypt_tiles(); // seems ok
+}
+
// sdmg2
void igs017_state::init_sdmg2()
@@ -4602,6 +4641,32 @@ ROM_START( starzan )
ROM_LOAD( "palce22v10h_tar97_u20.u20", 0x2dd, 0x2dd, NO_DUMP )
ROM_END
+
+// IGS PCB NO-0281
+// Main CPU is a Zilog Z180 clocked @16MHz (XTAL and EXTAL pins directly tied to a 16MHz crystal)
+// OKI MSM6295 (actually a rebadged one marked 'K668 0003') clocked @1MHz, pin 7 is HIGH
+// A QFP208 custom ASIC marked 'IGS 031'
+// A PLCC68 custom IC marked 'IGS025 A9B2201 9931'
+// A Ni-MH 3.6V battery as seen in other IGS hardware
+ROM_START( happyskl )
+ ROM_REGION( 0x40000, "maincpu", 0 )
+ ROM_LOAD( "v611.u8", 0x00000, 0x40000, CRC(1fb3da98) SHA1(60674af9f5c53298b8ef856f1986c905b9bd7b96) )
+
+ ROM_REGION( 0x480000, "igs017_igs031:sprites", 0 )
+ ROM_LOAD( "happyskill_cg.u2", 0x00000, 0x080000, CRC(297a1893) SHA1(9be9e2cdaba1615ea376f3fb7087bf990e68b3b4) ) // FIXED BITS (xxxxxxx0xxxxxxxx)
+ ROM_LOAD( "igs_a2701_cg_v100.u3", 0x80000, 0x400000, CRC(f3756a51) SHA1(8dd4677584f309cec4b068be9f9370a7a172a031) ) // FIXED BITS (xxxxxxx0xxxxxxxx) - 1xxxxxxxxxxxxxxxxxxxxx = 0x00
+
+ ROM_REGION( 0x80000, "igs017_igs031:tilemaps", 0 )
+ ROM_LOAD( "happyskill_text.u11", 0x00000, 0x80000, CRC(c6f51041) SHA1(81a9a03e92c1c67f299113dec9e05ba77395ea31) )
+
+ ROM_REGION( 0x80000, "oki", ROMREGION_ERASE )
+ ROM_LOAD( "igs_s2702_sp_v100.u8", 0x00000, 0x80000, CRC(0ec9b1b5) SHA1(b8c7e068ddf6777a184339e6796be33e442a3df4) )
+
+ ROM_REGION( 0x2dd * 2, "plds", 0 )
+ ROM_LOAD( "atf22v10c.u10", 0x000, 0x2dd, NO_DUMP )
+ ROM_LOAD( "peel22cv10a.u20", 0x2dd, 0x2dd, NO_DUMP )
+ROM_END
+
/***************************************************************************
Super Poker (v100xD03) / Formosa
@@ -4650,6 +4715,7 @@ GAME( 1999, tarzanc, 0, iqblocka, iqblocka, igs017_state, init_tarzan,
GAME( 1999, tarzan, tarzanc, iqblocka, iqblocka, igs017_state, init_tarzan, ROT0, "IGS", "Tarzan Chuang Tian Guan (V109C, set 2)", MACHINE_NOT_WORKING )
GAME( 1999, tarzana, tarzanc, iqblocka, iqblocka, igs017_state, init_tarzana, ROT0, "IGS", "Tarzan (V107)", MACHINE_NOT_WORKING )
GAME( 2000?, starzan, 0, starzan, iqblocka, igs017_state, init_starzan, ROT0, "IGS (G.F. Gioca license)", "Super Tarzan (Italy, V100I)", MACHINE_NOT_WORKING )
+GAME( 2001?, happyskl, 0, starzan, iqblocka, igs017_state, init_happyskl, ROT0, "IGS", "Happy Skill (Italy, V611IT)", MACHINE_NOT_WORKING ) // IGS031 protection's game specific parameters not emulated yet
// Parent spk306us in driver spoker.cpp. Move this set to that driver?
GAME( ????, spkrform, spk306us, spkrform, spkrform, igs017_state, init_spkrform, ROT0, "IGS", "Super Poker (v100xD03) / Formosa", MACHINE_NOT_WORKING | MACHINE_UNEMULATED_PROTECTION )
diff --git a/src/mame/drivers/snk.cpp b/src/mame/drivers/snk.cpp
index 4b584a7931a..cdd717987b5 100644
--- a/src/mame/drivers/snk.cpp
+++ b/src/mame/drivers/snk.cpp
@@ -195,7 +195,6 @@ Notes:
1.xD - Fujitsu MB7134 Bi-polar PROM
1,2,3 - Fujitsu MB7122 Bi-Polar PROM
A6003* - PALs
- YM3526 - Yamaha YM3526
4559 - NEC uPC4559 Dual Operational Amplifier
YM3014 - Yamaha YM3014 DAC
YM3526 - Yamaha YM3526 FM Operator Type-L (OPL) Sound Chip. Clock 4.000MHz [8/2]
@@ -5624,7 +5623,7 @@ ROM_START( victroad )
ROM_REGION( 0x10000, "audiocpu", 0 )
ROM_LOAD( "p3.7k", 0x00000, 0x10000, CRC(bac745f6) SHA1(c118d94aff16cbf1b85615ff5a93292f6e98c149) )
- ROM_REGION( 0x0c00, "proms", 0 ) // top 3 are MB7122 or 82S137 or 63S441
+ ROM_REGION( 0x0c00, "proms", 0 ) // MB7122 or 82S137 or 63S441
ROM_LOAD( "c1.1k", 0x000, 0x400, CRC(491ab831) SHA1(2801d68d8a7fddaca5c48f09d421fc48ff53d244) ) // red
ROM_LOAD( "c2.2l", 0x400, 0x400, CRC(8feca424) SHA1(c3d666f4b4b914199b24ded02f9a1b643bf90d26) ) // green
ROM_LOAD( "c3.1l", 0x800, 0x400, CRC(220076ca) SHA1(a353c770c0ffb1105fb93c97977597ad2fda8ac8) ) // blue
@@ -5676,7 +5675,7 @@ ROM_START( dogosoke )
ROM_REGION( 0x10000, "audiocpu", 0 )
ROM_LOAD( "p3.7k", 0x00000, 0x10000, CRC(173fa571) SHA1(fb9c783e5377fa86f70afee6804c8ee9061b27fd) )
- ROM_REGION( 0x0c00, "proms", 0 ) // top 3 are MB7122 or 82S137 or 63S441
+ ROM_REGION( 0x0c00, "proms", 0 ) // MB7122 or 82S137 or 63S441
ROM_LOAD( "c1.1k", 0x000, 0x400, CRC(10a2ce2b) SHA1(8de93250b81fbabb012c96454ef3a888b2783ab5) ) // red
ROM_LOAD( "c2.2l", 0x400, 0x400, CRC(99dc9792) SHA1(dcdcea2bad524776e17eaeb70dd4882283f1b125) ) // green
ROM_LOAD( "c3.1l", 0x800, 0x400, CRC(e7213160) SHA1(bc762a346e1639c8a9636fe85c18d68a08c1b586) ) // blue
@@ -6116,7 +6115,7 @@ ROM_START( gwar )
ROM_REGION( 0x10000, "audiocpu", 0 )
ROM_LOAD( "3.7g", 0x00000, 0x10000, CRC(eb544ab9) SHA1(433af63feb4c4ef0e3bd383f2f9bc19e436fb103) )
- ROM_REGION( 0x0c00, "proms", 0 ) // top 3 are MB7122 or 82S137 or 63S441
+ ROM_REGION( 0x0c00, "proms", 0 ) // MB7122 or 82S137 or 63S441
ROM_LOAD( "3.9w", 0x0000, 0x0400, CRC(090236a3) SHA1(40d066e34291492c6baf8c120657e3d547274b59) ) // red
ROM_LOAD( "2.9v", 0x0400, 0x0400, CRC(9147de69) SHA1(e4b3b546e429c195e82f97322e2a295882e38a58) ) // green
ROM_LOAD( "1.9u", 0x0800, 0x0400, CRC(7f9c839e) SHA1(2fa60fa335f76891d961c9bd0066fa7f82f76779) ) // blue
@@ -6164,7 +6163,7 @@ ROM_START( gwarj )
ROM_REGION( 0x10000, "audiocpu", 0 )
ROM_LOAD( "3.7g", 0x00000, 0x10000, CRC(eb544ab9) SHA1(433af63feb4c4ef0e3bd383f2f9bc19e436fb103) )
- ROM_REGION( 0x0c00, "proms", 0 ) // top 3 are MB7122 or 82S137 or 63S441
+ ROM_REGION( 0x0c00, "proms", 0 ) // MB7122 or 82S137 or 63S441
ROM_LOAD( "3.9w", 0x0000, 0x0400, CRC(090236a3) SHA1(40d066e34291492c6baf8c120657e3d547274b59) ) // red
ROM_LOAD( "2.9v", 0x0400, 0x0400, CRC(9147de69) SHA1(e4b3b546e429c195e82f97322e2a295882e38a58) ) // green
ROM_LOAD( "1.9u", 0x0800, 0x0400, CRC(7f9c839e) SHA1(2fa60fa335f76891d961c9bd0066fa7f82f76779) ) // blue
@@ -6222,7 +6221,7 @@ ROM_START( gwara )
ROM_REGION( 0x10000, "audiocpu", 0 )
ROM_LOAD( "gv2.7k", 0x00000, 0x10000, CRC(896682dd) SHA1(dc2125c2378a01291197b2798a5eef6459cf5b99) )
- ROM_REGION( 0x1400, "proms", 0 ) // top 5 are MB7122 or 82S137 or 63S441
+ ROM_REGION( 0x1400, "proms", 0 ) // MB7122 or 82S137 or 63S441
ROM_LOAD( "1.1k", 0x0000, 0x0400, CRC(090236a3) SHA1(40d066e34291492c6baf8c120657e3d547274b59) ) // red
ROM_LOAD( "3.2l", 0x0400, 0x0400, CRC(9147de69) SHA1(e4b3b546e429c195e82f97322e2a295882e38a58) ) // green
ROM_LOAD( "2.1l", 0x0800, 0x0400, CRC(7f9c839e) SHA1(2fa60fa335f76891d961c9bd0066fa7f82f76779) ) // blue
@@ -6273,7 +6272,7 @@ ROM_START( gwarab )
ROM_REGION( 0x10000, "audiocpu", 0 )
ROM_LOAD( "gv2.7k", 0x00000, 0x10000, CRC(896682dd) SHA1(dc2125c2378a01291197b2798a5eef6459cf5b99) )
- ROM_REGION( 0x1400, "proms", 0 ) // top 5 are MB7122 or 82S137 or 63S441
+ ROM_REGION( 0x1400, "proms", 0 ) // MB7122 or 82S137 or 63S441
ROM_LOAD( "1.1k", 0x0000, 0x0400, CRC(090236a3) SHA1(40d066e34291492c6baf8c120657e3d547274b59) ) // red
ROM_LOAD( "3.2l", 0x0400, 0x0400, CRC(9147de69) SHA1(e4b3b546e429c195e82f97322e2a295882e38a58) ) // green
ROM_LOAD( "2.1l", 0x0800, 0x0400, CRC(7f9c839e) SHA1(2fa60fa335f76891d961c9bd0066fa7f82f76779) ) // blue
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 9785d5d26b7..a3b43f38ae6 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -16394,6 +16394,7 @@ xymg // (c) 1996
@source:igs017.cpp
genius6 // (c) 1998?
+happyskl // (c) 2001?
iqblocka // (c) 1996
iqblockf // (c) 1996
lhzb2 // (c) 1998