trunk/src/mame/drivers/namcos23.c
| r23461 | r23462 | |
| 30 | 30 | |
| 31 | 31 | - Add the sh2 in Gunmen Wars (no rom, controls the camera) |
| 32 | 32 | |
| 33 | | - Super System 23 tests irqs in the post. timecrs2c's code can |
| 33 | - Super System 23 tests irqs in the post. timecrs2v4a's code can |
| 34 | 34 | potentially test 7 sources, but only actually test 5. With each |
| 35 | 35 | source there is code to clear the interrupt and code to raise it. |
| 36 | 36 | Levels 0 and 1 are not connected to anything according to the code. |
| r23461 | r23462 | |
| 67 | 67 | a6400006.h = fffb |
| 68 | 68 | a6400006.h = 0 |
| 69 | 69 | |
| 70 | | RS323 (level 6, not tested by timecrs2c): |
| 70 | RS323 (level 6, not tested by timecrs2v4a): |
| 71 | 71 | clear: nothing |
| 72 | 72 | raise: nothing |
| 73 | 73 | |
| 74 | | Timer (level 7, not tested by timecrs2c): |
| 74 | Timer (level 7, not tested by timecrs2v4a): |
| 75 | 75 | clear: c0.Compare = 10d880 |
| 76 | 76 | raise: c0.Count = 10c8e0 |
| 77 | 77 | c0.Compare = 10d880 |
| r23461 | r23462 | |
| 2227 | 2227 | { |
| 2228 | 2228 | switch (offset) |
| 2229 | 2229 | { |
| 2230 | | /* According to timecrs2c, +0 is the status word with bits being: |
| 2230 | /* According to timecrs2v4a, +0 is the status word with bits being: |
| 2231 | 2231 | 15: test mode flag (huh?) |
| 2232 | 2232 | 10: fifo data ready |
| 2233 | 2233 | 9: cmd ram data ready |
| r23461 | r23462 | |
| 3369 | 3369 | if ((!strcmp(machine().system().name, "motoxgo")) || |
| 3370 | 3370 | (!strcmp(machine().system().name, "panicprk")) || |
| 3371 | 3371 | (!strcmp(machine().system().name, "rapidrvr")) || |
| 3372 | | (!strcmp(machine().system().name, "rapidrvr2")) || |
| 3372 | (!strcmp(machine().system().name, "rapidrvrv2c")) || |
| 3373 | 3373 | (!strcmp(machine().system().name, "rapidrvrp")) || |
| 3374 | 3374 | (!strcmp(machine().system().name, "finfurl")) || |
| 3375 | 3375 | (!strcmp(machine().system().name, "gunwars")) || |
| r23461 | r23462 | |
| 3378 | 3378 | (!strcmp(machine().system().name, "finfurl2j")) || |
| 3379 | 3379 | (!strcmp(machine().system().name, "raceon")) || |
| 3380 | 3380 | (!strcmp(machine().system().name, "crszone")) || |
| 3381 | | (!strcmp(machine().system().name, "crszonea")) || |
| 3382 | | (!strcmp(machine().system().name, "crszoneb")) || |
| 3383 | | (!strcmp(machine().system().name, "crszonec")) || |
| 3384 | | (!strcmp(machine().system().name, "timecrs2b")) || |
| 3381 | (!strcmp(machine().system().name, "crszonev3b")) || |
| 3382 | (!strcmp(machine().system().name, "crszonev3a")) || |
| 3383 | (!strcmp(machine().system().name, "crszonev2a")) || |
| 3384 | (!strcmp(machine().system().name, "timecrs2v2b")) || |
| 3385 | 3385 | (!strcmp(machine().system().name, "timecrs2"))) |
| 3386 | 3386 | { |
| 3387 | 3387 | m_has_jvsio = 1; |
| r23461 | r23462 | |
| 3575 | 3575 | MCFG_SOUND_ROUTE(3, "lspeaker", 1.00) |
| 3576 | 3576 | MACHINE_CONFIG_END |
| 3577 | 3577 | |
| 3578 | | static MACHINE_CONFIG_DERIVED( timecrs2c, ss23 ) |
| 3578 | static MACHINE_CONFIG_DERIVED( timecrs2v4a, ss23 ) |
| 3579 | 3579 | |
| 3580 | 3580 | MCFG_CPU_MODIFY("subcpu") |
| 3581 | 3581 | MCFG_CPU_IO_MAP( s23h8iomap ) |
| r23461 | r23462 | |
| 3661 | 3661 | ROM_END |
| 3662 | 3662 | |
| 3663 | 3663 | |
| 3664 | | ROM_START( rapidrvr2 ) |
| 3664 | ROM_START( rapidrvrv2c ) |
| 3665 | 3665 | ROM_REGION32_BE( 0x400000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 3666 | 3666 | ROM_LOAD16_BYTE( "rd2verc.ic2", 0x000000, 0x200000, CRC(234fc2f4) SHA1(64374f4de19855f1980d8e088049b0c112107f43) ) |
| 3667 | 3667 | ROM_LOAD16_BYTE( "rd2verc.ic1", 0x000001, 0x200000, CRC(651c5da4) SHA1(0e73e2cfafda626597d2ce08bf07458509fb79de) ) |
| r23461 | r23462 | |
| 3886 | 3886 | ROM_END |
| 3887 | 3887 | |
| 3888 | 3888 | |
| 3889 | | ROM_START( motoxgoa ) |
| 3889 | ROM_START( motoxgov2a ) |
| 3890 | 3890 | ROM_REGION32_BE( 0x400000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 3891 | 3891 | ROM_LOAD16_BYTE( "mg2vera.ic2", 0x000000, 0x200000, CRC(66093336) SHA1(c87874245a70a1642fb9ecfc94cbbc89f0fd633f) ) |
| 3892 | 3892 | ROM_LOAD16_BYTE( "mg2vera.ic1", 0x000001, 0x200000, CRC(3dc7736f) SHA1(c5137aa449918a124415f8ea5581e037f841129c) ) |
| r23461 | r23462 | |
| 3934 | 3934 | ROM_END |
| 3935 | 3935 | |
| 3936 | 3936 | |
| 3937 | | ROM_START( motoxgob ) |
| 3937 | ROM_START( motoxgov1a ) |
| 3938 | 3938 | ROM_REGION32_BE( 0x400000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 3939 | 3939 | ROM_LOAD16_BYTE( "mg1vera.ic2", 0x000000, 0x200000, CRC(5ba13d9e) SHA1(7f6484df644772f2478155c05844532f8abbd196) ) |
| 3940 | 3940 | ROM_LOAD16_BYTE( "mg1vera.ic1", 0x000001, 0x200000, CRC(6b2bda52) SHA1(922ea739c8a62c7147126bf20ed3ffe8faec8842) ) |
| r23461 | r23462 | |
| 3982 | 3982 | ROM_END |
| 3983 | 3983 | |
| 3984 | 3984 | |
| 3985 | | ROM_START( motoxgoc ) |
| 3985 | ROM_START( motoxgov1a2 ) |
| 3986 | 3986 | ROM_REGION32_BE( 0x400000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 3987 | 3987 | ROM_LOAD16_BYTE( "mg1vera1.ic2", 0x000000, 0x200000, CRC(532ec687) SHA1(1e822b9afa00a897c0ad2341e33ebc93962a8244) ) |
| 3988 | 3988 | ROM_LOAD16_BYTE( "mg1vera1.ic1", 0x000001, 0x200000, CRC(3154b80a) SHA1(ecec56dfd594f5fc651478fa3ae8963182cb94c3) ) |
| r23461 | r23462 | |
| 4073 | 4073 | ROM_END |
| 4074 | 4074 | |
| 4075 | 4075 | |
| 4076 | | ROM_START( timecrs2b ) |
| 4076 | ROM_START( timecrs2v2b ) |
| 4077 | 4077 | ROM_REGION32_BE( 0x400000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 4078 | 4078 | ROM_LOAD16_BYTE( "tss2verb.ic2", 0x000000, 0x200000, BAD_DUMP CRC(9f56a4df) SHA1(5ecb3cd93726ab6be02762853fd6a45266d6c0bc) ) |
| 4079 | 4079 | ROM_LOAD16_BYTE( "tss2verb.ic1", 0x000001, 0x200000, BAD_DUMP CRC(aa147f71) SHA1(e00267d1a8286942c83dc35289ad65bd3cb6d8db) ) |
| r23461 | r23462 | |
| 4116 | 4116 | ROM_END |
| 4117 | 4117 | |
| 4118 | 4118 | |
| 4119 | | ROM_START( timecrs2c ) |
| 4119 | ROM_START( timecrs2v4a ) |
| 4120 | 4120 | ROM_REGION32_BE( 0x400000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 4121 | 4121 | ROM_LOAD16_BYTE( "tss4vera.2", 0x000000, 0x200000, CRC(c84edd3b) SHA1(0b577a8ef6e74afa991dd81c2db19041787724da) ) |
| 4122 | 4122 | ROM_LOAD16_BYTE( "tss4vera.1", 0x000001, 0x200000, CRC(26f57c83) SHA1(c8983c26b7524a35257a242b66a9413eb354ca0d) ) |
| r23461 | r23462 | |
| 4548 | 4548 | ROM_END |
| 4549 | 4549 | |
| 4550 | 4550 | |
| 4551 | | ROM_START( crszonea ) |
| 4551 | ROM_START( crszonev3b ) |
| 4552 | 4552 | ROM_REGION32_BE( 0x800000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 4553 | 4553 | ROM_LOAD16_WORD_SWAP( "cszo3verb.ic4", 0x400000, 0x400000, CRC(4cb26465) SHA1(078dfd0d8c920707df14e9a26658fa63421fcb0b) ) |
| 4554 | 4554 | ROM_CONTINUE( 0x000000, 0x400000 ) |
| r23461 | r23462 | |
| 4601 | 4601 | ROM_END |
| 4602 | 4602 | |
| 4603 | 4603 | |
| 4604 | | ROM_START( crszoneb ) |
| 4604 | ROM_START( crszonev3a ) |
| 4605 | 4605 | ROM_REGION32_BE( 0x800000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 4606 | 4606 | ROM_LOAD16_WORD_SWAP( "cszo3vera.ic4", 0x400000, 0x400000, CRC(09b0c91e) SHA1(226c3788d6a50272e2544d04d9ca20df81014fb6) ) |
| 4607 | 4607 | ROM_CONTINUE( 0x000000, 0x400000 ) |
| r23461 | r23462 | |
| 4654 | 4654 | ROM_END |
| 4655 | 4655 | |
| 4656 | 4656 | |
| 4657 | | ROM_START( crszonec ) |
| 4657 | ROM_START( crszonev2a ) |
| 4658 | 4658 | ROM_REGION32_BE( 0x800000, "user1", 0 ) /* 4 megs for main R4650 code */ |
| 4659 | 4659 | ROM_LOAD16_WORD_SWAP( "cszo2vera.ic4", 0x400000, 0x400000, CRC(1426d8d0) SHA1(e8049df1b2db1180f9edf6e5fa9fe8692ae81086) ) |
| 4660 | 4660 | ROM_CONTINUE( 0x000000, 0x400000 ) |
| r23461 | r23462 | |
| 4709 | 4709 | |
| 4710 | 4710 | /* Games */ |
| 4711 | 4711 | #define GAME_FLAGS (GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND) |
| 4712 | | // YEAR, NAME, PARENT, MACHINE, INPUT, INIT, MNTR, COMPANY, FULLNAME, FLAGS |
| 4713 | | GAME( 1997, rapidrvr, 0, gorgon, rapidrvr, namcos23_state, s23, ROT0, "Namco", "Rapid River (RD3 Ver. C)", GAME_FLAGS ) // 97/11/27, USA |
| 4714 | | GAME( 1997, rapidrvr2, rapidrvr, gorgon, rapidrvr, namcos23_state, s23, ROT0, "Namco", "Rapid River (RD2 Ver. C)", GAME_FLAGS ) // 97/11/27, Europe |
| 4715 | | GAME( 1997, rapidrvrp, rapidrvr, gorgon, rapidrvrp, namcos23_state, s23, ROT0, "Namco", "Rapid River (prototype)", GAME_FLAGS ) // 97/11/10, USA |
| 4716 | | GAME( 1997, finfurl, 0, gorgon, finfurl, namcos23_state, s23, ROT0, "Namco", "Final Furlong (FF2 Ver. A)", GAME_FLAGS ) |
| 4717 | | GAME( 1997, downhill, 0, s23, s23, namcos23_state, s23, ROT0, "Namco", "Downhill Bikers (DH3 Ver. A)", GAME_FLAGS ) |
| 4718 | | GAME( 1997, motoxgo, 0, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG3 Ver. A)", GAME_FLAGS ) |
| 4719 | | GAME( 1997, motoxgoa, motoxgo, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG2 Ver. A)", GAME_FLAGS ) |
| 4720 | | GAME( 1997, motoxgob, motoxgo, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG1 Ver. A, set 1)", GAME_FLAGS ) |
| 4721 | | GAME( 1997, motoxgoc, motoxgo, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG1 Ver. A, set 2)", GAME_FLAGS ) |
| 4722 | | GAME( 1997, timecrs2, 0, timecrs2, timecrs2, namcos23_state, s23, ROT0, "Namco", "Time Crisis II (TSS3 Ver. B)", GAME_FLAGS ) |
| 4723 | | GAME( 1997, timecrs2b, timecrs2, timecrs2, timecrs2, namcos23_state, s23, ROT0, "Namco", "Time Crisis II (TSS2 Ver. B)", GAME_FLAGS ) |
| 4724 | | GAME( 1997, timecrs2c, timecrs2, timecrs2c, timecrs2, namcos23_state, s23, ROT0, "Namco", "Time Crisis II (TSS4 Ver. A)", GAME_FLAGS ) |
| 4725 | | GAME( 1998, panicprk, 0, s23, s23, namcos23_state, s23, ROT0, "Namco", "Panic Park (PNP2 Ver. A)", GAME_FLAGS ) |
| 4726 | | GAME( 1998, gunwars, 0, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Gunmen Wars (GM1 Ver. A)", GAME_FLAGS ) |
| 4727 | | GAME( 1998, raceon, 0, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Race On! (RO2 Ver. A)", GAME_FLAGS ) |
| 4728 | | GAME( 1998, 500gp, 0, ss23, s23, namcos23_state, s23, ROT0, "Namco", "500 GP (5GP3 Ver. C)", GAME_FLAGS ) |
| 4729 | | GAME( 1999, finfurl2, 0, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Final Furlong 2 (World)", GAME_FLAGS ) |
| 4730 | | GAME( 1999, finfurl2j, finfurl2, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Final Furlong 2 (Japan)", GAME_FLAGS ) |
| 4731 | | GAME( 2000, crszone, 0, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO4 Ver. B)", GAME_FLAGS ) |
| 4732 | | GAME( 2000, crszonea, crszone, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO3 Ver. B)", GAME_FLAGS ) |
| 4733 | | GAME( 2000, crszoneb, crszone, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO3 Ver. A)", GAME_FLAGS ) |
| 4734 | | GAME( 2000, crszonec, crszone, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO2 Ver. A)", GAME_FLAGS ) |
| 4712 | // YEAR, NAME, PARENT, MACHINE, INPUT, INIT, MNTR, COMPANY, FULLNAME, FLAGS |
| 4713 | GAME( 1997, rapidrvr, 0, gorgon, rapidrvr, namcos23_state, s23, ROT0, "Namco", "Rapid River (RD3 Ver. C)", GAME_FLAGS ) // 97/11/27, USA |
| 4714 | GAME( 1997, rapidrvrv2c, rapidrvr, gorgon, rapidrvr, namcos23_state, s23, ROT0, "Namco", "Rapid River (RD2 Ver. C)", GAME_FLAGS ) // 97/11/27, Europe |
| 4715 | GAME( 1997, rapidrvrp, rapidrvr, gorgon, rapidrvrp, namcos23_state, s23, ROT0, "Namco", "Rapid River (prototype)", GAME_FLAGS ) // 97/11/10, USA |
| 4716 | GAME( 1997, finfurl, 0, gorgon, finfurl, namcos23_state, s23, ROT0, "Namco", "Final Furlong (FF2 Ver. A)", GAME_FLAGS ) |
| 4717 | GAME( 1997, downhill, 0, s23, s23, namcos23_state, s23, ROT0, "Namco", "Downhill Bikers (DH3 Ver. A)", GAME_FLAGS ) |
| 4718 | GAME( 1997, motoxgo, 0, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG3 Ver. A)", GAME_FLAGS ) |
| 4719 | GAME( 1997, motoxgov2a, motoxgo, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG2 Ver. A)", GAME_FLAGS ) |
| 4720 | GAME( 1997, motoxgov1a, motoxgo, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG1 Ver. A, set 1)", GAME_FLAGS ) |
| 4721 | GAME( 1997, motoxgov1a2, motoxgo, s23, s23, namcos23_state, s23, ROT0, "Namco", "Motocross Go! (MG1 Ver. A, set 2)", GAME_FLAGS ) |
| 4722 | GAME( 1997, timecrs2, 0, timecrs2, timecrs2, namcos23_state, s23, ROT0, "Namco", "Time Crisis II (TSS3 Ver. B)", GAME_FLAGS ) |
| 4723 | GAME( 1997, timecrs2v2b, timecrs2, timecrs2, timecrs2, namcos23_state, s23, ROT0, "Namco", "Time Crisis II (TSS2 Ver. B)", GAME_FLAGS ) |
| 4724 | GAME( 1997, timecrs2v4a, timecrs2, timecrs2v4a, timecrs2, namcos23_state, s23, ROT0, "Namco", "Time Crisis II (TSS4 Ver. A)", GAME_FLAGS ) |
| 4725 | GAME( 1998, panicprk, 0, s23, s23, namcos23_state, s23, ROT0, "Namco", "Panic Park (PNP2 Ver. A)", GAME_FLAGS ) |
| 4726 | GAME( 1998, gunwars, 0, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Gunmen Wars (GM1 Ver. A)", GAME_FLAGS ) |
| 4727 | GAME( 1998, raceon, 0, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Race On! (RO2 Ver. A)", GAME_FLAGS ) |
| 4728 | GAME( 1998, 500gp, 0, ss23, s23, namcos23_state, s23, ROT0, "Namco", "500 GP (5GP3 Ver. C)", GAME_FLAGS ) |
| 4729 | GAME( 1999, finfurl2, 0, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Final Furlong 2 (World)", GAME_FLAGS ) |
| 4730 | GAME( 1999, finfurl2j, finfurl2, gmen, s23, namcos23_state, s23, ROT0, "Namco", "Final Furlong 2 (Japan)", GAME_FLAGS ) |
| 4731 | GAME( 2000, crszone, 0, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO4 Ver. B)", GAME_FLAGS ) |
| 4732 | GAME( 2000, crszonev3b, crszone, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO3 Ver. B)", GAME_FLAGS ) |
| 4733 | GAME( 2000, crszonev3a, crszone, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO3 Ver. A)", GAME_FLAGS ) |
| 4734 | GAME( 2000, crszonev2a, crszone, ss23e2, s23, namcos23_state, s23, ROT0, "Namco", "Crisis Zone (CSZO2 Ver. A)", GAME_FLAGS ) |