mirror of
https://github.com/mamedev/mame.git
synced 2024-11-18 10:06:19 +01:00
Fixed protection check in Tecmo World Cup '98, game is now playable (Tecmo logo & Title Screen still garbled) [Angelo Salese]
This commit is contained in:
parent
737daef258
commit
bc0e2f76e3
3 changed files with 22 additions and 2 deletions
|
@ -4769,7 +4769,8 @@ void saturn_state::stv_vdp2_check_tilemap(bitmap_rgb32 &bitmap, const rectangle
|
||||||
/* Dragon Ball Z 0x3800 - 0x2c00 */
|
/* Dragon Ball Z 0x3800 - 0x2c00 */
|
||||||
/* Assault Suit Leynos 2 0x0200*/
|
/* Assault Suit Leynos 2 0x0200*/
|
||||||
/* Bug! 0x8800 */
|
/* Bug! 0x8800 */
|
||||||
if(STV_VDP2_SFPRMD & ~0xff75)
|
/* Wonder 3 0x0018 */
|
||||||
|
if(STV_VDP2_SFPRMD & ~0xff7d)
|
||||||
popmessage("Special Priority Mode enabled %04x, contact MAMEdev",STV_VDP2_SFPRMD);
|
popmessage("Special Priority Mode enabled %04x, contact MAMEdev",STV_VDP2_SFPRMD);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2835,7 +2835,7 @@ GAME( 1997, winterht, stvbios, stv, stv, saturn_state, winterht,
|
||||||
GAME( 1997, znpwfv, stvbios, stv, stv, saturn_state, znpwfv, ROT0, "Sega", "Zen Nippon Pro-Wrestling Featuring Virtua (J 971123 V1.000)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS )
|
GAME( 1997, znpwfv, stvbios, stv, stv, saturn_state, znpwfv, ROT0, "Sega", "Zen Nippon Pro-Wrestling Featuring Virtua (J 971123 V1.000)", GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS )
|
||||||
|
|
||||||
/* Almost */
|
/* Almost */
|
||||||
GAME( 1998, twcup98, stvbios, stv, stv, saturn_state, 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, twcup98, stvbios, stv, stv, saturn_state, twcup98, ROT0, "Tecmo", "Tecmo World Cup '98 (JUET 980410 V1.000)", GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS )
|
||||||
GAME( 1998, elandore, stvbios, stv, stv6b, saturn_state, elandore, ROT0, "Sai-Mate", "Touryuu Densetsu Elan-Doree / Elan Doree - Legend of Dragoon (JUET 980922 V1.006)", GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS )
|
GAME( 1998, elandore, stvbios, stv, stv6b, saturn_state, elandore, ROT0, "Sai-Mate", "Touryuu Densetsu Elan-Doree / Elan Doree - Legend of Dragoon (JUET 980922 V1.006)", GAME_NOT_WORKING | GAME_UNEMULATED_PROTECTION | GAME_IMPERFECT_SOUND | GAME_IMPERFECT_GRAPHICS )
|
||||||
|
|
||||||
/* Unemulated printer / camera devices */
|
/* Unemulated printer / camera devices */
|
||||||
|
|
|
@ -113,6 +113,21 @@ static UINT8 char_offset; //helper to jump the decoding of the NULL chars.
|
||||||
*
|
*
|
||||||
************************/
|
************************/
|
||||||
|
|
||||||
|
/*
|
||||||
|
0x200214
|
||||||
|
0x20de94
|
||||||
|
wpset 0x200214,0x20de94-0x200214,r
|
||||||
|
dump twcup98.dmp,0x200214,0x20de94-0x200214,4,0,0
|
||||||
|
protection tests the data 0x201220 at
|
||||||
|
bp 0x6009a9e
|
||||||
|
with 0x60651f8
|
||||||
|
*/
|
||||||
|
|
||||||
|
static UINT32 twcup_prot_data[8] =
|
||||||
|
{
|
||||||
|
0x23232323, 0x23232323, 0x4c4c4c4c, 0x4c156301
|
||||||
|
};
|
||||||
|
|
||||||
static READ32_HANDLER( twcup98_prot_r )
|
static READ32_HANDLER( twcup98_prot_r )
|
||||||
{
|
{
|
||||||
UINT32 *ROM = (UINT32 *)space.machine().root_device().memregion("abus")->base();
|
UINT32 *ROM = (UINT32 *)space.machine().root_device().memregion("abus")->base();
|
||||||
|
@ -139,6 +154,10 @@ static READ32_HANDLER( twcup98_prot_r )
|
||||||
res = ROM[ctrl_index / 4] & 0xffff0000;
|
res = ROM[ctrl_index / 4] & 0xffff0000;
|
||||||
res |= ROM[ctrl_index / 4] & 0xffff;
|
res |= ROM[ctrl_index / 4] & 0xffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(ctrl_index >= 0xD215A4+0x100c && ctrl_index < 0xD215A4+0x100c+8*4)
|
||||||
|
res = twcup_prot_data[(ctrl_index-(0xD215A4+0x100c))/4];
|
||||||
|
|
||||||
ctrl_index+=4;
|
ctrl_index+=4;
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue