From fd62a1a1f8e57eba1f8b25e1004a996a6a04132b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Banaan=20Ananas?= Date: Sat, 29 Oct 2011 08:54:35 +0000 Subject: [PATCH] prelim fix for dirtdash slowdown. Remaining dirtdash issues are spot ram and textlayer related, but not strong enough to still mark it non-working, so.. New games added or promoted from NOT_WORKING status --------------------------------------------------- Dirt Dash [Phil Bennett, hap] --- src/mame/drivers/namcos22.c | 5 ++++- src/mame/video/namcos22.c | 5 +++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/mame/drivers/namcos22.c b/src/mame/drivers/namcos22.c index 9097e5a0c06..516d716ce9c 100644 --- a/src/mame/drivers/namcos22.c +++ b/src/mame/drivers/namcos22.c @@ -4924,6 +4924,9 @@ static INPUT_PORTS_START( dirtdash ) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) DRIVING_ANALOG_PORTS + PORT_MODIFY("STEER") // default is too sensitive + PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(100) PORT_KEYDELTA(3) PORT_NAME("Steering Wheel") + INPUT_PORTS_END /* Dirt Dash */ static INPUT_PORTS_START( tokyowar ) @@ -5711,7 +5714,7 @@ GAME( 1994, alpinerd, 0, namcos22s, alpiner, alpiner, ROT0, "Namco", " GAME( 1994, alpinerc, alpinerd, namcos22s, alpiner, alpiner, ROT0, "Namco", "Alpine Racer (Rev. AR2 Ver.C)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS ) GAME( 1995, airco22b, 0, namcos22s, airco22, airco22, ROT0, "Namco", "Air Combat 22 (Rev. ACS1 Ver.B, Japan)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS|GAME_NOT_WORKING ) // boots but missing sprite clear DMA? GAME( 1995, cybrcycc, 0, namcos22s, cybrcycc, cybrcyc, ROT0, "Namco", "Cyber Cycles (Rev. CB2 Ver.C)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS ) // 95/04/04 -GAME( 1995, dirtdash, 0, namcos22s, dirtdash, dirtdash, ROT0, "Namco", "Dirt Dash (Rev. DT2)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS|GAME_NOT_WORKING ) // 95/12/20 20:01:56. many issues: slowdown, text layer transparency, spot ram +GAME( 1995, dirtdash, 0, namcos22s, dirtdash, dirtdash, ROT0, "Namco", "Dirt Dash (Rev. DT2)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS ) // 95/12/20 20:01:56 GAME( 1995, timecris, 0, namcos22s, timecris, timecris, ROT0, "Namco", "Time Crisis (Rev. TS2 Ver.B)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS ) // 96/04/02 18:48:00 GAME( 1995, timecrisa,timecris, namcos22s, timecris, timecris, ROT0, "Namco", "Time Crisis (Rev. TS2 Ver.A)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS ) // 96/01/08 18:56:09 GAME( 1996, propcycl, 0, namcos22s, propcycl, propcycl, ROT0, "Namco", "Prop Cycle (Rev. PR2 Ver.A)" , GAME_IMPERFECT_SOUND|GAME_IMPERFECT_GRAPHICS ) // 96/06/18 21:22:13 diff --git a/src/mame/video/namcos22.c b/src/mame/video/namcos22.c index 4cd77e12069..3396131b0db 100644 --- a/src/mame/video/namcos22.c +++ b/src/mame/video/namcos22.c @@ -4,7 +4,7 @@ * todo (ordered by importance): * * - emulate slave dsp! - * - emulate spot (see testmode and dirtdash) + * - emulate spot (see testmode and dirtdash - other textlayer transparency issues in dirtdash is also spot related?) * - texture u/v mapping is often 1 pixel off, resulting in many glitch lines/gaps between textures * - tokyowar tanks are not shootable, same for timecris helicopter, there's still a very small hitbox but almost impossible to hit * (is this related to dsp? or cpu?) @@ -1830,7 +1830,8 @@ READ32_HANDLER( namcos22_tilemapattr_r ) // or maybe relative to posirq? if (space->machine().primary_screen->vblank()) lo = 0x1ff; else lo = space->machine().primary_screen->vpos() >> 1; - return hi|lo; + // dirtdash has slowdowns if high bit is clear, why?? + return hi | lo | 0x8000; } case 3: