diff options
author | 2008-11-15 17:39:17 +0000 | |
---|---|---|
committer | 2008-11-15 17:39:17 +0000 | |
commit | 44583b05fdeb412e5eebb7986d824368c76733e7 (patch) | |
tree | b6a561b0dd0c1a869ba42e48b110b4eecca2e1b1 /src | |
parent | b499b7d9227f9c2d3242981a347ed99da994b4bb (diff) |
Pre-irq rewrite submission part 2:
* Fixed Final Arch broken Test Mode;
* Demoted Super Major League / Final Arch as GAME_NOT_WORKING,they hangs randomly due of SH-2 master/slave communication RAM issues;
* Removed GAME_NOT_WORKING flag to Fighting Dragoon Legend Elan Doree,because protection affects only in-game graphics and not gameplay;
Diffstat (limited to 'src')
-rw-r--r-- | src/mame/drivers/stv.c | 11 | ||||
-rw-r--r-- | src/mame/drivers/stvinit.c | 11 |
2 files changed, 13 insertions, 9 deletions
diff --git a/src/mame/drivers/stv.c b/src/mame/drivers/stv.c index de4d593df07..848abf369a1 100644 --- a/src/mame/drivers/stv.c +++ b/src/mame/drivers/stv.c @@ -115,8 +115,10 @@ ToDo / Notes: (per-game issues) -groovef: hangs soon after loaded,caused by two memory addresses in the Work RAM-H range. Kludged for now to work. +-smleague / finlarch: it randomly hangs / crashes,it works if you use a ridiculous MDRV_INTERLEAVE number,might need strict + SH-2 synching. -various: find idle skip if possible. --suikoenb/shanhigw + others: why do we get 2 credits on startup? Cause should be by a communication with the M68k +-suikoenb/shanhigw + others: why do we get 2 credits on startup? Cause might be by a communication with the M68k -colmns97/puyosun/mausuke/cotton2/cottonbm: interrupt issues? we can't check the SCU mask on SMPC or controls fail -mausuke/bakubaku/grdforce: need to sort out transparency on the colour mapped sprites @@ -3670,8 +3672,6 @@ GAME( 1999, sanjeon, sasissu, stv, stv, sanjeon, ROT0, "Sega / Deniam" GAME( 1997, seabass, stvbios, stv, stv, seabass, ROT0, "A wave inc. (Able license)", "Sea Bass Fishing (JUET 971110 V0.001)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) GAME( 1995, shanhigw, stvbios, stv, stv, shanhigw, ROT0, "Sunsoft / Activision", "Shanghai - The Great Wall / Shanghai Triple Threat (JUE 950623 V1.005)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) GAME( 1997, shienryu, stvbios, stv, stv, shienryu, ROT270, "Warashi", "Shienryu (JUET 961226 V1.000)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) -GAME( 1995, smleague, stvbios, stv, stv, smleague, ROT0, "Sega", "Super Major League (U 960108 V1.000)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) -GAME( 1995, finlarch, smleague,stv, stv, finlarch, ROT0, "Sega", "Final Arch (J 950714 V1.001)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) GAME( 1998, sss, stvbios, stv, stv, sss, ROT0, "Capcom / Cave / Victor", "Steep Slope Sliders (JUET 981110 V1.000)", GAME_IMPERFECT_SOUND ) GAME( 1995, sandor, stvbios, stv, stv, sandor, ROT0, "Sega", "Puzzle & Action: Sando-R (J 951114 V1.000)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) GAME( 1997, thunt, sandor, stv, stv, thunt, ROT0, "Sega", "Puzzle & Action: Treasure Hunt (JUET 970901 V2.00E)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) @@ -3687,15 +3687,16 @@ GAME( 1997, nclubv3, stvbios, stv, stv, nameclv3, ROT0, "Sega", GAME( 1997, vmahjong, stvbios, stv, stvmp, stv, ROT0, "Micronet", "Virtual Mahjong (J 961214 V1.000)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) GAME( 1998, twcup98, stvbios, stv, stv, twcup98, ROT0, "Tecmo", "Tecmo World Cup '98 (JUET 980410 V1.000)", GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS|GAME_NOT_WORKING ) // player movement GAME( 1998, stress, stvbios, stv, stv, stv, ROT0, "Sega", "Stress Busters (J 981020 V1.000)", GAME_NOT_WORKING ) // needs printer +GAME( 1995, smleague, stvbios, stv, stv, smleague, ROT0, "Sega", "Super Major League (U 960108 V1.000)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) +GAME( 1995, finlarch, smleague,stv, stv, finlarch, ROT0, "Sega", "Final Arch (J 950714 V1.001)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) +GAME( 1998, elandore, stvbios, stv, stv, elandore, ROT0, "Sai-Mate", "Touryuu Densetsu Elan-Doree / Elan Doree - Legend of Dragoon (JUET 980922 V1.006)", GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS ) /* Doing Something.. but not enough yet */ -GAME( 1998, elandore, stvbios, stv, stv, elandore, ROT0, "Sai-Mate", "Touryuu Densetsu Elan-Doree / Elan Doree - Legend of Dragoon (JUET 980922 V1.006)", GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) GAME( 1995, vfremix, stvbios, stv, stv, vfremix, ROT0, "Sega", "Virtua Fighter Remix (JUETBKAL 950428 V1.000)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) GAME( 1997, findlove, stvbios, stv, stv, stv, ROT0, "Daiki / FCF", "Find Love (J 971212 V1.000)", GAME_IMPERFECT_SOUND | GAME_NOT_WORKING ) GAME( 1996, decathlt, stvbios, stv, stv, decathlt, ROT0, "Sega", "Decathlete (JUET 960709 V1.001)", GAME_NO_SOUND | GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION ) GAME( 1996, decathlo, decathlt,stv, stv, decathlt, ROT0, "Sega", "Decathlete (JUET 960424 V1.000)", GAME_NO_SOUND | GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION ) - /* not working,black screen */ GAME( 1999, ffreveng, stvbios, stv, stv, ffreveng, ROT0, "Capcom", "Final Fight Revenge (JUET 990714 V1.000)", GAME_UNEMULATED_PROTECTION | GAME_NO_SOUND | GAME_NOT_WORKING ) GAME( 1996, magzun, stvbios, stv, stv, stv, ROT0, "Sega", "Magical Zunou Power (J 961031 V1.000)", GAME_NOT_WORKING ) diff --git a/src/mame/drivers/stvinit.c b/src/mame/drivers/stvinit.c index 2fccd12b4b6..7bf2a99c247 100644 --- a/src/mame/drivers/stvinit.c +++ b/src/mame/drivers/stvinit.c @@ -1307,6 +1307,7 @@ DRIVER_INIT(twcup98) minit_boost_timeslice = sinit_boost_timeslice = ATTOTIME_IN_USEC(5); } +#ifdef UNUSED_FUNCTION static READ32_HANDLER( smleague_speedup_r ) { if (cpu_get_pc(space->cpu)==0x6063bf4) cpu_spinuntil_time(space->cpu, ATTOTIME_IN_USEC(20)); @@ -1319,6 +1320,7 @@ static void smleague_slave_speedup( UINT32 data ) if ( (data & 0x00800000) == 0 ) cpu_spinuntil_trigger(Machine->cpu[1], 1000); } +#endif DRIVER_INIT(smleague) { @@ -1327,27 +1329,28 @@ DRIVER_INIT(smleague) cpu_set_info_int(machine->cpu[1], CPUINFO_INT_SH2_PCFLUSH_SELECT, FIRST_SPEEDUP_SLOT); cpu_set_info_int(machine->cpu[1], CPUINFO_INT_SH2_PCFLUSH_ADDR, 0x6062bca); - cpu_set_info_fct(machine->cpu[1], CPUINFO_PTR_SH2_FTCSR_READ_CALLBACK, (genf*)smleague_slave_speedup ); - memory_install_read32_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x60ffc10, 0x60ffc13, 0, 0, smleague_speedup_r ); +// cpu_set_info_fct(machine->cpu[1], CPUINFO_PTR_SH2_FTCSR_READ_CALLBACK, (genf*)smleague_slave_speedup ); +// memory_install_read32_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x60ffc10, 0x60ffc13, 0, 0, smleague_speedup_r ); DRIVER_INIT_CALL(stv); minit_boost_timeslice = sinit_boost_timeslice = ATTOTIME_IN_USEC(50); } +#ifdef UNUSED_FUNCTION static READ32_HANDLER( finlarch_speedup_r ) { if (cpu_get_pc(space->cpu)==0x6064d60) cpu_spinuntil_int(space->cpu); return stv_workram_h[0x0ffc10/4]; } - +#endif DRIVER_INIT(finlarch) { cpu_set_info_int(machine->cpu[0], CPUINFO_INT_SH2_PCFLUSH_SELECT, FIRST_SPEEDUP_SLOT); cpu_set_info_int(machine->cpu[0], CPUINFO_INT_SH2_PCFLUSH_ADDR, 0x6064d60); - memory_install_read32_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x60ffc10, 0x60ffc13, 0, 0, finlarch_speedup_r ); +// memory_install_read32_handler(machine, 0, ADDRESS_SPACE_PROGRAM, 0x60ffc10, 0x60ffc13, 0, 0, finlarch_speedup_r ); //breaks test mode DRIVER_INIT_CALL(stv); |