Previous 199869 Revisions Next

r18705 Thursday 25th October, 2012 at 16:48:32 UTC by Tafoid
Emulate protection in sf2rb, sf2rb2's (cps1.c) and ichirjbl (segac2.c) rather than simply patch it out.  [IQ_132]


New games promoted from NOT_WORKING status
------------------------------------------
Fighting Fantasy (bootleg with 68705)  [IQ_132]


New clones added
----------------
The King of Fighters '97 Oroshi Plus 2003 (bootleg)  [The Dumping Union, Smitdogg, IQ_132]
[src/mame]mame.lst
[src/mame/drivers]cps1.c dec0.c neodrvr.c segac2.c
[src/mame/includes]cps1.h dec0.h neogeo.h
[src/mame/machine]neoboot.c
[src/mame/video]cps1.c

trunk/src/mame/drivers/neodrvr.c
r18704r18705
79927992   ROM_LOAD16_BYTE( "232-c6.c6", 0x2000001, 0x400000, CRC(4ff4d47b) SHA1(4d5689ede24a5fe4330bd85d4d3f4eb2795308bb) ) /* Plane 2,3 */ /* TC5332205 */
79937993ROM_END
79947994
7995ROM_START( kof97oro )
7996   ROM_REGION( 0x500000, "maincpu", 0 )
7997   ROM_LOAD16_WORD_SWAP( "orochi-p1.bin",  0x0000000, 0x100000, CRC(6dcb2946) SHA1(3ccb3fdf3d32a75c7fcfefff5db1f3c75054731f) )
7998   ROM_LOAD16_WORD_SWAP( "orochi-p21.bin", 0x0200000, 0x100000, CRC(6e1c4d8c) SHA1(f514638a599a8a582c5f4df72f6a957bab776b7e) )
7999   ROM_CONTINUE( 0x100000, 0x100000 )
8000   ROM_LOAD16_WORD_SWAP( "orochi-p29.bin", 0x0400000, 0x100000, CRC(4c7c0221) SHA1(fdd05927743cb12210b74768155bb3f59bff01b5) )
8001   ROM_CONTINUE( 0x300000, 0x100000 )
8002
8003   NEO_SFIX_128K( "orochi-s1.bin", CRC(4ee2149a) SHA1(180a1a90021031eac1a643b769d9cdeda56518f5) )
8004
8005   NEO_BIOS_AUDIO_128K( "orochi-m1.bin", CRC(45348747) SHA1(ed77cbae2b208d1177a9f5f6e8cd57070e90b65b) )
8006
8007   ROM_REGION( 0xc00000, "ymsnd", 0 )
8008   ROM_LOAD( "orochi-v1.bin", 0x000000, 0x0400000, CRC(22a2b5b5) SHA1(ebdbc977332e6d93e266755000b43857e0082965) )
8009   ROM_LOAD( "orochi-v2.bin", 0x400000, 0x0400000, CRC(2304e744) SHA1(98d283e2bcc9291a53f52afd35ef76dfb0828432) )
8010   ROM_LOAD( "orochi-v3.bin", 0x800000, 0x0400000, CRC(759eb954) SHA1(54e77c4e9e6b89458e59824e478ddc33a9c72655) )
8011
8012   NO_DELTAT_REGION
8013
8014   ROM_REGION( 0x2800000, "sprites", 0 )
8015   // The C1 and C2 here are reconstructed but very likely to be correct.
8016   ROM_LOAD16_BYTE( "orochi-c1.bin",  0x0000000, 0x1000000, BAD_DUMP CRC(f13e841c) SHA1(e24b3fb5f7e1c1f4752cad382c264f5f93e737a0) ) /* Plane 0,1 */
8017   ROM_LOAD16_BYTE( "orochi-c2.bin",  0x0000001, 0x1000000, BAD_DUMP CRC(2db1f6d3) SHA1(13d957c04bd69f0db140e4633c39db4a9e44eab8) ) /* Plane 2,3 */
8018   ROM_LOAD16_BYTE( "orochi-c51.bin", 0x2000000, 0x0200000, CRC(a90340cb) SHA1(97eaa89f0e860e2c591ca3a995fd910d8116347d) ) /* Plane 0,1 */
8019   ROM_LOAD16_BYTE( "orochi-c61.bin", 0x2000001, 0x0200000, CRC(188e351a) SHA1(ab724250bc07ace0873fc825b798ace934260988) ) /* Plane 2,3 */
8020   ROM_LOAD16_BYTE( "orochi-c52.bin", 0x2400000, 0x0200000, CRC(d4eec50a) SHA1(0930cce5346fbbd5c1524f9148d0577cbe634420) ) /* Plane 0,1 */
8021   ROM_LOAD16_BYTE( "orochi-c62.bin", 0x2400001, 0x0200000, CRC(031b1ad5) SHA1(d47b3452953b553348be0a55473b863ce2872f6e) ) /* Plane 2,3 */
8022ROM_END
8023
79958024ROM_START( kog )
79968025   ROM_REGION( 0x600000, "maincpu", 0 )
79978026   ROM_LOAD16_WORD_SWAP( "5232-p1.bin", 0x000000, 0x200000, CRC(d2413ec6) SHA1(c0bf409d1e714cba5fdc6f79e4c2aec805316634) )
r18704r18705
98129841   DRIVER_INIT_CALL(neogeo);
98139842}
98149843
9844DRIVER_INIT_MEMBER(neogeo_state,kof97oro)
9845{
9846   kof97oro_px_decode(machine());
9847   neogeo_bootleg_sx_decrypt(machine(), 1);
9848   neogeo_bootleg_cx_decrypt(machine());
9849   DRIVER_INIT_CALL(neogeo);
9850}
9851
98159852DRIVER_INIT_MEMBER(neogeo_state,kog)
98169853{
98179854   /* overlay cartridge ROM */
r18704r18705
99219958      if(strcmp(crypt_feature,"mslugx_prot") == 0)      { DRIVER_INIT_CALL(mslugx); }
99229959      else if(strcmp(crypt_feature,"fatfury2_prot") == 0) { DRIVER_INIT_CALL(fatfury2); }
99239960      else if(strcmp(crypt_feature,"kog_prot") == 0)      { DRIVER_INIT_CALL(kog); }
9961      else if(strcmp(crypt_feature,"kof97oro_prot") == 0)   { DRIVER_INIT_CALL(kof97oro); }
99249962      else if(strcmp(crypt_feature,"kof98_prot") == 0)   { DRIVER_INIT_CALL(kof98); }
99259963      else if(strcmp(crypt_feature,"kof99_prot") == 0)   { DRIVER_INIT_CALL(kof99); }
99269964      else if(strcmp(crypt_feature,"kof99k_prot") == 0)   { DRIVER_INIT_CALL(kof99k); }
r18704r18705
1006910107GAME( 1997, kof97h,     kof97,    neogeo,   neogeo, neogeo_state,   neogeo,   ROT0, "SNK", "The King of Fighters '97 (NGH-2320)", GAME_SUPPORTS_SAVE )
1007010108GAME( 1997, kof97k,     kof97,    neogeo,   neogeo, neogeo_state,   neogeo,   ROT0, "SNK", "The King of Fighters '97 (Korean release)", GAME_SUPPORTS_SAVE )
1007110109GAME( 1997, kof97pls,   kof97,    neogeo,   neogeo, neogeo_state,   neogeo,   ROT0, "bootleg", "The King of Fighters '97 Plus (bootleg)", GAME_SUPPORTS_SAVE )
10072GAME( 1997, kog,        kof97,    neogeo,   kog, neogeo_state,      kog,      ROT0, "bootleg", "King of Gladiator (The King of Fighters '97 bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) // protected bootleg
10110GAME( 1997, kof97oro,   kof97,    neogeo,   neogeo, neogeo_state,   kof97oro, ROT0, "bootleg", "The King of Fighters '97 Oroshi Plus 2003 (bootleg)", GAME_SUPPORTS_SAVE )
10111GAME( 1997, kog,        kof97,    neogeo,   kog,    neogeo_state,   kog,      ROT0, "bootleg", "King of Gladiator (The King of Fighters '97 bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) // protected bootleg
1007310112GAME( 1997, lastblad,   neogeo,   neogeo,   neogeo, neogeo_state,   neogeo,   ROT0, "SNK", "The Last Blade / Bakumatsu Roman - Gekka no Kenshi (NGM-2340)", GAME_SUPPORTS_SAVE )
1007410113GAME( 1997, lastbladh,  lastblad, neogeo,   neogeo, neogeo_state,   neogeo,   ROT0, "SNK", "The Last Blade / Bakumatsu Roman - Gekka no Kenshi (NGH-2340)", GAME_SUPPORTS_SAVE )
1007510114GAME( 1997, lastsold,   lastblad, neogeo,   neogeo, neogeo_state,   neogeo,   ROT0, "SNK", "The Last Soldier (Korean release of The Last Blade)", GAME_SUPPORTS_SAVE )
trunk/src/mame/drivers/segac2.c
r18704r18705
21862186   segac2_common_init(machine(), prot_func_ichirj);
21872187}
21882188
2189static READ16_HANDLER( ichirjbl_prot_r )
2190{
2191   return 0x00f5;
2192}
2193
21892194DRIVER_INIT_MEMBER(segac2_state,ichirjbl)
21902195{
2191   /* when did this actually work? - the protection is patched but the new check fails? */
2192   UINT16 *rom = (UINT16 *)machine().root_device().memregion("maincpu")->base();
2193   rom[0x390/2] = 0x6600;
2196   segac2_common_init(machine(), NULL);
21942197
2195   segac2_common_init(machine(), NULL);
2198   machine().device("maincpu")->memory().space(AS_PROGRAM).install_legacy_read_handler(0x840108, 0x840109, FUNC(ichirjbl_prot_r) );
21962199}
21972200
21982201DRIVER_INIT_MEMBER(segac2_state,puyopuy2)
trunk/src/mame/drivers/cps1.c
r18704r18705
1068310683
1068410684DRIVER_INIT_MEMBER(cps_state,forgottn)
1068510685{
10686
1068710686   /* Forgotten Worlds has a NEC uPD4701AC on the B-board handling dial inputs from the CN-MOWS connector. */
1068810687   /* The memory mapping is handled by PAL LWIO */
1068910688   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x800040, 0x800041, write16_delegate(FUNC(cps_state::forgottn_dial_0_reset_w),this));
r18704r18705
1069910698   DRIVER_INIT_CALL(cps1);
1070010699}
1070110700
10701READ16_MEMBER(cps_state::sf2rb_prot_r)
10702{
10703   switch (offset)
10704   {
10705      case 0x01201/2:
10706         return 0x0002;
10707
10708      case 0x81201/2:
10709         return 0x0040;
10710   }
10711
10712   return 0;
10713}
10714
10715DRIVER_INIT_MEMBER(cps_state,sf2rb)
10716{
10717   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x200000, 0x2fffff, read16_delegate(FUNC(cps_state::sf2rb_prot_r),this));
10718
10719   DRIVER_INIT_CALL(cps1);
10720}
10721
10722READ16_MEMBER(cps_state::sf2rb2_prot_r)
10723{
10724   switch (offset)
10725   {
10726      case 0x01201/2:
10727         return 0x0000;
10728
10729      case 0x81201/2:
10730         return 0x0040;
10731   }
10732
10733   return 0;
10734}
10735
10736DRIVER_INIT_MEMBER(cps_state,sf2rb2)
10737{
10738   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x200000, 0x2fffff, read16_delegate(FUNC(cps_state::sf2rb2_prot_r),this));
10739
10740   DRIVER_INIT_CALL(cps1);
10741}
10742
1070210743DRIVER_INIT_MEMBER(cps_state,sf2ee)
1070310744{
1070410745   /* This specific revision of SF2 has the CPS-B custom mapped at a different address. */
r18704r18705
1092110962GAME( 1992, sf2ceja,     sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "Capcom", "Street Fighter II': Champion Edition (Japan 920322)", GAME_SUPPORTS_SAVE )
1092210963GAME( 1992, sf2cejb,     sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "Capcom", "Street Fighter II': Champion Edition (Japan 920513)", GAME_SUPPORTS_SAVE )
1092310964GAME( 1992, sf2cejc,     sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "Capcom", "Street Fighter II': Champion Edition (Japan 920803)", GAME_SUPPORTS_SAVE )
10924GAME( 1992, sf2rb,       sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "bootleg", "Street Fighter II': Champion Edition (Rainbow set 1, bootleg)", GAME_SUPPORTS_SAVE )         // 920322 - based on World version
10925GAME( 1992, sf2rb2,      sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "bootleg", "Street Fighter II': Champion Edition (Rainbow set 2, bootleg)", GAME_SUPPORTS_SAVE )         // 920322 - based on World version
10965GAME( 1992, sf2rb,       sf2ce,    cps1_12MHz, sf2, cps_state,        sf2rb,    ROT0,   "bootleg", "Street Fighter II': Champion Edition (Rainbow set 1, bootleg)", GAME_SUPPORTS_SAVE )         // 920322 - based on World version
10966GAME( 1992, sf2rb2,      sf2ce,    cps1_12MHz, sf2, cps_state,        sf2rb2,   ROT0,   "bootleg", "Street Fighter II': Champion Edition (Rainbow set 2, bootleg)", GAME_SUPPORTS_SAVE )         // 920322 - based on World version
1092610967GAME( 1992, sf2rb3,      sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "bootleg", "Street Fighter II': Champion Edition (Rainbow set 3, bootleg)", GAME_SUPPORTS_SAVE )         // 920322 - based on World version
1092710968GAME( 1992, sf2red,      sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "bootleg", "Street Fighter II': Champion Edition (Red Wave, bootleg)", GAME_SUPPORTS_SAVE )         // 920313 - based on World version
1092810969GAME( 1992, sf2v004,     sf2ce,    cps1_12MHz, sf2, cps_state,        cps1,     ROT0,   "bootleg", "Street Fighter II': Champion Edition (V004, bootleg)", GAME_SUPPORTS_SAVE )            // 102092 !!! - based on (heavily modified) World version
trunk/src/mame/drivers/dec0.c
r18704r18705
10041004   PORT_DIPNAME( 0x4000, 0x4000, "Enemy Power Decrease on Continue" ) PORT_DIPLOCATION("SW2:7")
10051005   PORT_DIPSETTING(      0x4000, "2 Dots" )   // 2 Dots less
10061006   PORT_DIPSETTING(      0x0000, DEF_STR( None ) )   // 0 Dot less
1007INPUT_PORTS_END
10071008
1009static INPUT_PORTS_START( ffantasybl )
1010   PORT_INCLUDE( hippodrm )
1011
1012   PORT_MODIFY("DSW")
1013   PORT_DIPNAME( 0x4000, 0x4000, "Enemy Power Decrease on Continue" ) PORT_DIPLOCATION("SW2:7")
1014   PORT_DIPSETTING(      0x4000, "2 Dots" )   // 2 Dots less
1015   PORT_DIPSETTING(      0x0000, DEF_STR( None ) )   // 0 Dot less
1016
1017   PORT_MODIFY("SYSTEM")
1018   PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) // Game does not want vblank here
10081019INPUT_PORTS_END
10091020
10101021static INPUT_PORTS_START( slyspy )
r18704r18705
16381649   MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_hippodrm)
16391650MACHINE_CONFIG_END
16401651
1652static MACHINE_CONFIG_DERIVED( ffantasybl, dec0_base_sound )
1653
1654   /* basic machine hardware */
1655   MCFG_CPU_ADD("maincpu", M68000, XTAL_20MHz / 2)
1656   MCFG_CPU_PROGRAM_MAP(dec0_map)
1657   MCFG_CPU_VBLANK_INT_DRIVER("screen", dec0_state,  irq6_line_assert)/* VBL */
1658
1659   MCFG_CPU_ADD("audiocpu", M6502, XTAL_12MHz / 8)
1660   MCFG_CPU_PROGRAM_MAP(dec0_s_map)
1661
1662//   MCFG_CPU_ADD("sub", H6280, XTAL_21_4772MHz / 16)
1663//   MCFG_CPU_PROGRAM_MAP(hippodrm_sub_map)
1664
1665//   MCFG_QUANTUM_TIME(attotime::from_hz(300))   /* Interleave between H6280 & 68000 */
1666
1667   /* video hardware */
1668   MCFG_SCREEN_ADD("screen", RASTER)
1669//  MCFG_SCREEN_REFRESH_RATE(57.41)
1670//  MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(529) /* 57.41 Hz, 529us Vblank */)
1671   MCFG_SCREEN_RAW_PARAMS(DEC0_PIXEL_CLOCK,DEC0_HTOTAL,DEC0_HBEND,DEC0_HBSTART,DEC0_VTOTAL,DEC0_VBEND,DEC0_VBSTART)
1672//  MCFG_SCREEN_SIZE(32*8, 32*8)
1673//  MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
1674   MCFG_SCREEN_UPDATE_DRIVER(dec0_state, screen_update_hippodrm)
1675MACHINE_CONFIG_END
1676
16411677MACHINE_RESET_MEMBER(dec0_state,slyspy)
16421678{
16431679   // set initial memory map
r18704r18705
30493085   machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x00180014, 0x00180015, write16_delegate(FUNC(dec0_state::midres_sound_w),this));
30503086}
30513087
3088READ16_MEMBER(dec0_state::ffantasybl_242024_r)
3089{
3090/*
3091   000152: 41F9 0024 2020             lea     $242020.l, A0
3092   000158: 4A68 0004                  tst.w   ($4,A0)
3093   00015C: 6700 00A0                  beq     $1fe
3094
3095   This allows us to at insert a coin...
3096*/
3097
3098   return 0xffff;
3099}
3100
3101READ16_MEMBER(dec0_state::ffantasybl_vblank_r)
3102{
3103   return ioport("VBLANK")->read();
3104}
3105
3106DRIVER_INIT_MEMBER(dec0_state,ffantasybl)
3107{
3108   machine().device("maincpu")->memory().space(AS_PROGRAM).install_ram(0x24c880, 0x24cbff); // what is this? layer 3-related??
3109
3110   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x00242024, 0x00242025, read16_delegate(FUNC(dec0_state::ffantasybl_242024_r),this));
3111   machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x00ff87ee, 0x00ff87ef, read16_delegate(FUNC(dec0_state::ffantasybl_vblank_r),this));
3112}
3113
30523114/******************************************************************************/
30533115
30543116//    YEAR, NAME,       PARENT,   MACHINE,  INPUT,    INIT,     MONITOR,COMPANY,FULLNAME,FLAGS
r18704r18705
30823144
30833145// this is a common bootleg board
30843146GAME( 1989, midresb,    midres,   midresb,  midresb, dec0_state,  midresb,  ROT0,   "bootleg", "Midnight Resistance (bootleg with 68705)", 0 ) // need to hook up 68705?
3085GAME( 1989, ffantasybl, hippodrm, midres,   midres, driver_device,   0,        ROT0,   "bootleg", "Fighting Fantasy (bootleg with 68705)", GAME_NOT_WORKING ) // 68705 not dumped, might be the same as midresb
3147GAME( 1989, ffantasybl, hippodrm, ffantasybl, ffantasybl, dec0_state, ffantasybl,   ROT0,   "bootleg", "Fighting Fantasy (bootleg with 68705)", GAME_IMPERFECT_GRAPHICS ) // 68705 not dumped, might be the same as midresb
30863148/* A Bad Dudes bootleg with 68705 like the midres and ffantasy ones exists, but is not dumped */
30873149
30883150// these are different to the above but quite similar to each other
trunk/src/mame/mame.lst
r18704r18705
70967096kof97h         // 0232 (c) 1997 SNK
70977097kof97k         // 0232 (c) 1997 SNK
70987098kof97pls      // bootleg of kof97
7099kof97oro      // bootleg of kof97
70997100kog         // bootleg of kof97
71007101magdrop3      // 0233 (c) 1997 Data East Corporation
71017102lastblad      // 0234 (c) 1997 SNK
trunk/src/mame/machine/neoboot.c
r18704r18705
130130}
131131
132132
133/* The King of Fighters '97 Oroshi Plus 2003 (bootleg) */
134
135void kof97oro_px_decode( running_machine &machine )
136{
137   int i;
138   UINT16 *tmp = auto_alloc_array(machine, UINT16, 0x500000 );
139   UINT16 *src = (UINT16*)machine.root_device().memregion("maincpu")->base();
140
141   for (i = 0; i < 0x500000/2; i++) {
142      tmp[i] = src[i ^ 0x7ffef];
143   }
144
145   memcpy (src, tmp, 0x500000);
146
147   auto_free (machine, tmp);
148}
149
150
133151/* The King of Fighters 10th Anniversary (The King of Fighters 2002 bootleg) */
134152
135153
trunk/src/mame/includes/neogeo.h
r18704r18705
201201   DECLARE_DRIVER_INIT(jockeygp);
202202   DECLARE_DRIVER_INIT(vliner);
203203   DECLARE_DRIVER_INIT(kog);
204   DECLARE_DRIVER_INIT(kof97oro);
204205   DECLARE_DRIVER_INIT(lans2004);
205206   DECLARE_DRIVER_INIT(sbp);
206207   DECLARE_DRIVER_INIT(mvs);
r18704r18705
277278/*----------- defined in machine/neoboot.c -----------*/
278279
279280void kog_px_decrypt(running_machine &machine);
281void kof97oro_px_decode( running_machine &machine );
280282void neogeo_bootleg_cx_decrypt(running_machine &machine);
281283void install_kof10th_protection(running_machine &machine);
282284void decrypt_kof10th(running_machine &machine);
trunk/src/mame/includes/cps1.h
r18704r18705
159159   DECLARE_WRITE16_MEMBER(qsound_sharedram2_w);
160160   DECLARE_WRITE8_MEMBER(qsound_banksw_w);
161161   DECLARE_READ16_MEMBER(sf2mdt_r);
162   DECLARE_READ16_MEMBER(sf2rb_prot_r);
163   DECLARE_READ16_MEMBER(sf2rb2_prot_r);
162164   DECLARE_READ16_MEMBER(cps1_dsw_r);
163165   DECLARE_WRITE16_MEMBER(cps1_coinctrl_w);
164166   DECLARE_READ16_MEMBER(qsound_sharedram1_r);
r18704r18705
173175   DECLARE_WRITE16_MEMBER(cps2_objram1_w);
174176   DECLARE_WRITE16_MEMBER(cps2_objram2_w);
175177   DECLARE_WRITE8_MEMBER(cps1_oki_pin7_w);
178   DECLARE_DRIVER_INIT(sf2rb);
179   DECLARE_DRIVER_INIT(sf2rb2);
176180   DECLARE_DRIVER_INIT(sf2thndr);
177181   DECLARE_DRIVER_INIT(dinohunt);
178182   DECLARE_DRIVER_INIT(forgottn);
trunk/src/mame/includes/dec0.h
r18704r18705
6262   DECLARE_WRITE16_MEMBER(dec0_paletteram_rg_w);
6363   DECLARE_WRITE16_MEMBER(dec0_paletteram_b_w);
6464   DECLARE_WRITE16_MEMBER(dec0_priority_w);
65   DECLARE_READ16_MEMBER(ffantasybl_242024_r);
66   DECLARE_READ16_MEMBER(ffantasybl_vblank_r);
6567   DECLARE_DRIVER_INIT(robocop);
6668   DECLARE_DRIVER_INIT(hippodrm);
6769   DECLARE_DRIVER_INIT(hbarrel);
r18704r18705
6971   DECLARE_DRIVER_INIT(birdtry);
7072   DECLARE_DRIVER_INIT(baddudes);
7173   DECLARE_DRIVER_INIT(midresb);
74   DECLARE_DRIVER_INIT(ffantasybl);
7275   DECLARE_VIDEO_START(dec0);
7376   DECLARE_MACHINE_RESET(slyspy);
7477   DECLARE_VIDEO_START(dec0_nodma);
trunk/src/mame/video/cps1.c
r18704r18705
15161516      m_game_config = pCFG;
15171517   }
15181518
1519   if (strcmp(gamename, "sf2rb") == 0)
1520   {
1521      /* Patch out protection check */
1522      UINT16 *rom = (UINT16 *)machine().root_device().memregion("maincpu")->base();
1523      rom[0xe5464 / 2] = 0x6012;
1524   }
1525
1526   if (strcmp(gamename, "sf2rb2") == 0)
1527   {
1528      /* Patch out protection check */
1529      UINT16 *rom = (UINT16 *)machine().root_device().memregion("maincpu")->base();
1530      rom[0xe5332 / 2] = 0x6014;
1531   }
1532
15331519#if 0
15341520   if (strcmp(gamename, "sf2accp2") == 0)
15351521   {

Previous 199869 Revisions Next


© 1997-2024 The MAME Team