GSdx HW: CRC hackfix for "Black"

Minor updates to GameDB.

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4630 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
shadowladyngemu 2011-05-07 01:59:18 +00:00
parent 3523626462
commit f039383a1b
4 changed files with 37 additions and 5 deletions

View File

@ -4111,7 +4111,7 @@ Compat = 4
Serial = SLUS-20571
Name = Ty the Tasmanian Tiger
Region = NTSC-U
Compat = 2
Compat = 5
---------------------------------------------
Serial = SLUS-20572
Name = Tiger Woods PGA Tour 2003
@ -4930,6 +4930,10 @@ Serial = SLUS-20759
Name = Growlanser Generations [Disc2of2]
Region = NTSC-U
Compat = 4
[patches = 4AD529BB]
comment=IPU freeze fix
patch=0,EE,00109d04,word,00000000
[/patches]
[patches = 4CD3663F]
comment=IPU freeze fix
patch=0,EE,00109d04,word,00000000
@ -6930,7 +6934,7 @@ Compat = 5
Serial = SLUS-21193
Name = Inuyasha - Feudal Combat
Region = NTSC-U
Compat = 2
Compat = 5
---------------------------------------------
Serial = SLUS-21194
Name = Phantasy Star Universe
@ -7332,7 +7336,7 @@ Compat = 5
Serial = SLUS-21277
Name = Barnyard
Region = NTSC-U
Compat = 4
Compat = 5
---------------------------------------------
Serial = SLUS-21278
Name = SSX on Tour
@ -25484,12 +25488,14 @@ Name = Venus & Braves [Premium Pack]
Region = NTSC-J
Compat = 5
SkipMPEGHack = 1
EETimingHack = 1
---------------------------------------------
Serial = SLPS-25196
Name = Venus & Braves
Region = NTSC-J
Compat = 5
SkipMPEGHack = 1
EETimingHack = 1
---------------------------------------------
Serial = SLPS-25197
Name = Kingdom Hearts - Final Mix [Limited Edition]
@ -28659,7 +28665,7 @@ Region = PAL-Unk
Serial = SCES-50139
Name = World Rally Championship
Region = PAL-M7
Compat = 4
Compat = 5
---------------------------------------------
Serial = SCES-50240
Name = Extermination

View File

@ -180,7 +180,7 @@ CRC::Game CRC::m_games[] =
{0x774DE8E2, ValkyrieProfile2, JP, 0},
{0x04CCB600, ValkyrieProfile2, EU, 0},
{0xB65E141B, ValkyrieProfile2, EU, 0}, // PAL German
{0xC70FC973, ValkyrieProfile2, EU, 0}, // PAL Italy
{0xC70FC973, ValkyrieProfile2, IT, 0},
{0x47B9B2FD, RadiataStories, US, 0},
{0xE8FCF8EC, SMTNocturne, US, ZWriteMustNotClear}, // saves/reloads z buffer around shadow drawing, same issue with all the SMT games following
{0xF0A31EE3, SMTNocturne, EU, ZWriteMustNotClear}, // SMTNocturne (Lucifers Call in EU)
@ -226,6 +226,7 @@ CRC::Game CRC::m_games[] =
{0x2498951B, SilentHill3, US, 0},
{0x5088CCDB, SilentHill3, EU, 0},
{0x8E8E384B, SilentHill2, US, 0},
{0xFE06A030, SilentHill2, US, 0}, //greatest hits
{0x6DF62AEA, BleachBladeBattlers, JP, 0},
{0x6EB71AB0, BleachBladeBattlers, JP, 0}, //2nd
{0x3A446111, CastlevaniaCoD, US, 0},
@ -233,6 +234,9 @@ CRC::Game CRC::m_games[] =
{0x28270F7D, CastlevaniaLoI, US, 0},
{0x306CDADA, CastlevaniaLoI, EU, 0},
{0xA36CFF6C, CastlevaniaLoI, JP, 0},
{0x5C891FF1, Black, US, 0},
{0xCAA04879, Black, EU, 0},
{0xB3A9F9ED, Black, JP, 0},
};
hash_map<uint32, CRC::Game*> CRC::m_map;

View File

@ -101,6 +101,7 @@ public:
BleachBladeBattlers,
CastlevaniaCoD,
CastlevaniaLoI,
Black,
TitleCount,
};

View File

@ -2790,6 +2790,26 @@ bool GSC_Castlevania(const GSFrameInfo& fi, int& skip)
return true;
}
bool GSC_Black(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x008c0) && fi.FPSM == PSM_PSMCT16 && fi.TBP0 == 0x01a40 && fi.TPSM == PSM_PSMZ16 || (GSUtil::HasSharedBits(fi.FBP, fi.FPSM, fi.TBP0, fi.TPSM)) )
{
skip = 5;
}
}
else
{
if(fi.TME && (fi.FBP == 0x00000 || fi.FBP == 0x008c0) && fi.FPSM == PSM_PSMCT32 && fi.TPSM == PSM_PSMT4)
{
skip = 0;
}
}
return true;
}
bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw)
{
GSFrameInfo fi;
@ -2862,6 +2882,7 @@ bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw)
map[CRC::BleachBladeBattlers] = GSC_BleachBladeBattlers;
map[CRC::CastlevaniaCoD] = GSC_Castlevania;
map[CRC::CastlevaniaLoI] = GSC_Castlevania;
map[CRC::Black] = GSC_Black;
}
// TODO: just set gsc in SetGameCRC once