trunk/src/mame/video/cps1.c
| r21869 | r21870 | |
| 464 | 464 | #define CPS_B_21_QS4 0x2e,0x0c01, -1, -1, -1, -1, 0x1c,0x1e,0x08, 0x16,{0x00,0x02,0x28,0x2a},0x2c, {0x04,0x08,0x10,0x00,0x00} |
| 465 | 465 | #define CPS_B_21_QS5 0x1e,0x0c02, -1, -1, -1, -1, 0x0c, -1, -1, 0x2a,{0x2c,0x2e,0x30,0x32},0x1c, {0x04,0x08,0x10,0x00,0x00} |
| 466 | 466 | #define HACK_B_1 -1, -1, -1, -1, -1, -1, -1, -1, -1, 0x14,{0x12,0x10,0x0e,0x0c},0x0a, {0x0e,0x0e,0x0e,0x30,0x30} |
| 467 | #define HACK_H_3 -1, -1, -1, -1, -1, -1, -1, -1, -1, 0x04,{0x12,0x10,0x0e,0x0c},0x0a, {0x02,0xc4,0x18,0x00,0x00} |
| 467 | 468 | |
| 468 | 469 | /* |
| 469 | 470 | CPS_B_21_DEF is CPS-B-21 at default settings (no battery) |
| r21869 | r21870 | |
| 1385 | 1386 | {"sf2dkot2", CPS_B_21_DEF, mapper_S9263B, 0x36 }, |
| 1386 | 1387 | {"sf2m1", CPS_B_21_DEF, mapper_S9263B, 0x36 }, |
| 1387 | 1388 | {"sf2m2", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 1 }, |
| 1388 | | {"sf2m3", CPS_B_21_DEF, mapper_S9263B, 0x36 }, |
| 1389 | {"sf2m3", HACK_H_3, mapper_S9263B, 0, 0, 0, 1 }, |
| 1389 | 1390 | {"sf2m4", HACK_B_1, mapper_S9263B, 0x36, 0, 0, 1 }, |
| 1390 | 1391 | {"sf2m5", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 1 }, |
| 1391 | 1392 | {"sf2m6", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 1 }, |
| 1392 | 1393 | {"sf2m7", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 1 }, |
| 1394 | {"sf2m8", HACK_H_3, mapper_S9263B, 0, 0, 0, 1 }, |
| 1393 | 1395 | {"sf2dongb", CPS_B_21_DEF, mapper_S9263B, 0x36 }, |
| 1394 | | //sf2m8 unsupported |
| 1395 | 1396 | {"sf2yyc", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 1 }, |
| 1396 | 1397 | {"sf2koryu", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 1 }, |
| 1397 | 1398 | {"sf2mdt", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 1 }, |
trunk/src/mame/drivers/cps1.c
| r21869 | r21870 | |
| 264 | 264 | return (in << 8) | in; |
| 265 | 265 | } |
| 266 | 266 | |
| 267 | READ16_MEMBER(cps_state::cps1_in1_r) |
| 268 | { |
| 269 | int in = ioport("IN1")->read(); |
| 270 | return (in << 8) | in; |
| 271 | } |
| 272 | |
| 273 | READ16_MEMBER(cps_state::cps1_in2_r) |
| 274 | { |
| 275 | int in = ioport("IN2")->read(); |
| 276 | return (in << 8) | in; |
| 277 | } |
| 278 | |
| 279 | READ16_MEMBER(cps_state::cps1_in3_r) |
| 280 | { |
| 281 | int in = ioport("IN3")->read(); |
| 282 | return (in << 8) | in; |
| 283 | } |
| 284 | |
| 267 | 285 | READ16_MEMBER(cps_state::forgottn_dial_0_r) |
| 268 | 286 | { |
| 269 | 287 | return ((ioport("DIAL0")->read() - m_dial[0]) >> (8 * offset)) & 0xff; |
| r21869 | r21870 | |
| 622 | 640 | AM_RANGE(0xf000, 0xffff) AM_RAM AM_SHARE("qsound_ram2") |
| 623 | 641 | ADDRESS_MAP_END |
| 624 | 642 | |
| 643 | static ADDRESS_MAP_START( sf2m3_map, AS_PROGRAM, 16, cps_state ) |
| 644 | AM_RANGE(0x000000, 0x3fffff) AM_ROM |
| 645 | AM_RANGE(0x800010, 0x800011) AM_READ_PORT("IN1") /* Player input ports */ |
| 646 | AM_RANGE(0x800028, 0x80002f) AM_READ(cps1_hack_dsw_r) /* System input ports / Dip Switches */ |
| 647 | AM_RANGE(0x800030, 0x800037) AM_WRITE(cps1_coinctrl_w) |
| 648 | AM_RANGE(0x800100, 0x80013f) AM_WRITE(cps1_cps_a_w) AM_SHARE("cps_a_regs") /* CPS-A custom */ |
| 649 | AM_RANGE(0x800140, 0x80017f) AM_MIRROR(0x80) AM_READWRITE(cps1_cps_b_r, cps1_cps_b_w) AM_SHARE("cps_b_regs") /* CPS-B custom */ |
| 650 | AM_RANGE(0x800186, 0x800187) AM_READ(cps1_in2_r) /* Buttons 4,5,6 for both players */ |
| 651 | AM_RANGE(0x800190, 0x800197) AM_WRITE(cps1_soundlatch_w) /* Sound command */ |
| 652 | AM_RANGE(0x800198, 0x80019f) AM_WRITE(cps1_soundlatch2_w) /* Sound timer fade */ |
| 653 | AM_RANGE(0x8001a0, 0x8001bf) AM_WRITE(cps1_cps_a_w) |
| 654 | AM_RANGE(0x900000, 0x92ffff) AM_RAM_WRITE(cps1_gfxram_w) AM_SHARE("gfxram") |
| 655 | AM_RANGE(0xff0000, 0xffffff) AM_RAM |
| 656 | ADDRESS_MAP_END |
| 657 | |
| 625 | 658 | /*********************************************************** |
| 626 | 659 | INPUT PORTS, DIPs |
| 627 | 660 | ***********************************************************/ |
| r21869 | r21870 | |
| 3276 | 3309 | MCFG_EEPROM_ADD("eeprom", qsound_eeprom_interface) |
| 3277 | 3310 | MACHINE_CONFIG_END |
| 3278 | 3311 | |
| 3312 | static MACHINE_CONFIG_DERIVED( sf2m3, cps1_12MHz) |
| 3313 | MCFG_CPU_MODIFY("maincpu") |
| 3314 | MCFG_CPU_PROGRAM_MAP(sf2m3_map) |
| 3315 | MACHINE_CONFIG_END |
| 3279 | 3316 | |
| 3317 | |
| 3280 | 3318 | /*************************************************************************** |
| 3281 | 3319 | |
| 3282 | 3320 | Game driver(s) |
| r21869 | r21870 | |
| 8581 | 8619 | ROMX_LOAD( "yyc-d", 0x200004, 0x80000, CRC(92a8b572) SHA1(cbad24e519f0152989764c054da914f55e2b118c), ROM_GROUPWORD | ROM_SKIP(6) ) |
| 8582 | 8620 | ROM_CONTINUE( 0x200006, 0x80000) |
| 8583 | 8621 | ROMX_LOAD( "yyc-e", 0x400000, 0x80000, CRC(61138469) SHA1(dec3b3af6e3f4fedf51600ddf0515f61b2122493), ROM_GROUPWORD | ROM_SKIP(6) ) |
| 8584 | | ROM_CONTINUE( 0x400002, 0x80000) |
| 8585 | | ROMX_LOAD( "yyc-f", 0x400004, 0x80000, CRC(b800dcdb) SHA1(2ec3251b78159b15032d55a5ee5138f159e67190), ROM_GROUPWORD | ROM_SKIP(6) ) |
| 8622 | ROM_CONTINUE( 0x400004, 0x80000) |
| 8623 | ROMX_LOAD( "yyc-f", 0x400002, 0x80000, CRC(b800dcdb) SHA1(2ec3251b78159b15032d55a5ee5138f159e67190), ROM_GROUPWORD | ROM_SKIP(6) ) |
| 8586 | 8624 | ROM_CONTINUE( 0x400006, 0x80000) |
| 8587 | 8625 | /* extra gfx layer roms loaded over the former ones to remove the capcom copyright logo */ |
| 8588 | 8626 | ROMX_LOAD( "yyc-6.1", 0x400000, 0x10000, CRC(94778332) SHA1(c0b9a05c710b89864ee5df1a53b39de30c994e2d), ROM_SKIP(7) ) |
| r21869 | r21870 | |
| 11269 | 11307 | GAME( 1992, sf2dkot2, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (Double K.O. Turbo II, bootleg)", GAME_SUPPORTS_SAVE ) // 902140 !!! - based on USA version |
| 11270 | 11308 | GAME( 1992, sf2m1, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (M1, bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) |
| 11271 | 11309 | GAME( 1992, sf2m2, sf2ce, cps1_12MHz, sf2m2, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (M2, bootleg)", GAME_SUPPORTS_SAVE ) // 920313 - based on World version |
| 11272 | | GAME( 1992, sf2m3, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (M3, bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) |
| 11310 | GAME( 1992, sf2m3, sf2ce, sf2m3, sf2hack, cps_state, cps1, ROT0, "bootleg", "Street Fighter II': Champion Edition (M3, bootleg)", GAME_IMPERFECT_GRAPHICS | GAME_SUPPORTS_SAVE ) |
| 11273 | 11311 | GAME( 1992, sf2m4, sf2ce, cps1_12MHz, sf2m4, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (M4, bootleg)", GAME_SUPPORTS_SAVE ) // 920322 - based on Japan version |
| 11274 | 11312 | GAME( 1992, sf2m5, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (M5, bootleg)", GAME_SUPPORTS_SAVE ) // 920313 - based on World version |
| 11275 | 11313 | GAME( 1992, sf2m6, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (M6, bootleg)", GAME_SUPPORTS_SAVE ) // 811102 !!! - based on World version |
| 11276 | 11314 | GAME( 1992, sf2m7, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (M7, bootleg)", GAME_SUPPORTS_SAVE ) // 920313 - based on World version |
| 11277 | | GAME( 1992, sf2m8, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (M8, bootleg)", GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_SUPPORTS_SAVE ) |
| 11315 | GAME( 1992, sf2m8, sf2ce, sf2m3, sf2hack, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (M8, bootleg)", GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_SUPPORTS_SAVE ) |
| 11278 | 11316 | GAME( 1992, sf2yyc, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (YYC, bootleg)", GAME_SUPPORTS_SAVE ) // 920313 - based on World version |
| 11279 | 11317 | GAME( 1992, sf2koryu, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "bootleg", "Street Fighter II': Champion Edition (Xiang Long, Chinese bootleg)", GAME_SUPPORTS_SAVE ) // 811102 !!! - based on World version |
| 11280 | | GAME( 1992, sf2dongb, sf2ce, cps1_12MHz, sf2, cps_state, sf2dongb, ROT0, "bootleg", "Street Fighter II': Champion Edition (Dongfang Bubai protection, bootleg)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) // 920313 - based on World version |
| 11318 | GAME( 1992, sf2dongb, sf2ce, cps1_12MHz, sf2, cps_state, sf2dongb, ROT0, "bootleg", "Street Fighter II': Champion Edition (Dongfang Bubai protection, bootleg)", GAME_SUPPORTS_SAVE ) // 920313 - based on World version |
| 11281 | 11319 | GAME( 1992, cworld2j, 0, cps1_12MHz, cworld2j, cps_state, cps1, ROT0, "Capcom", "Adventure Quiz Capcom World 2 (Japan 920611)", GAME_SUPPORTS_SAVE ) |
| 11282 | 11320 | GAME( 1992, varth, 0, cps1_12MHz, varth, cps_state, cps1, ROT270, "Capcom", "Varth: Operation Thunderstorm (World 920714)", GAME_SUPPORTS_SAVE ) // "ETC" // 12MHz verified |
| 11283 | 11321 | GAME( 1992, varthr1, varth, cps1_12MHz, varth, cps_state, cps1, ROT270, "Capcom", "Varth: Operation Thunderstorm (World 920612)", GAME_SUPPORTS_SAVE ) // "ETC" |