GSdx: Move GSC_GTASanAndreas crc hack to aggressive state.

Can be used as an upscaling hack, but it removes some nice effect so
Aggressive only.
This commit is contained in:
lightningterror 2018-12-21 05:03:45 +01:00
parent f41b536682
commit eb000f0f41
1 changed files with 14 additions and 16 deletions

View File

@ -1546,19 +1546,6 @@ bool GSC_Grandia3(const GSFrameInfo& fi, int& skip)
return true; return true;
} }
bool GSC_GTASanAndreas(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && (fi.FBP ==0x0a00 || fi.FBP ==0x08c0) && (fi.TBP0 ==0x1b80 || fi.TBP0 ==0x1a40) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT32)
{
skip = 1; // Ghosting
}
}
return true;
}
bool GSC_YakuzaGames(const GSFrameInfo& fi, int& skip) bool GSC_YakuzaGames(const GSFrameInfo& fi, int& skip)
{ {
if(skip == 0) if(skip == 0)
@ -1611,6 +1598,19 @@ bool GSC_BleachBladeBattlers(const GSFrameInfo& fi, int& skip)
return true; return true;
} }
bool GSC_GTASanAndreas(const GSFrameInfo& fi, int& skip)
{
if(Aggressive && skip == 0)
{
if(fi.TME && (fi.FBP ==0x0a00 || fi.FBP ==0x08c0) && (fi.TBP0 ==0x1b80 || fi.TBP0 ==0x1a40) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT32)
{
skip = 1; // Ghosting
}
}
return true;
}
bool GSC_MetalGearSolid3(const GSFrameInfo& fi, int& skip) bool GSC_MetalGearSolid3(const GSFrameInfo& fi, int& skip)
{ {
// Halfscreen bottom issue // Halfscreen bottom issue
@ -1992,6 +1992,7 @@ void GSState::SetupCrcHack()
lut[CRC::FFX2] = GSC_FFXGames; lut[CRC::FFX2] = GSC_FFXGames;
lut[CRC::FFX] = GSC_FFXGames; lut[CRC::FFX] = GSC_FFXGames;
lut[CRC::FFXII] = GSC_FFXGames; lut[CRC::FFXII] = GSC_FFXGames;
lut[CRC::GTASanAndreas] = GSC_GTASanAndreas; // RW frame buffer. UserHacks_AutoFlush allow to emulate it correctly. Can be used as an upscaling hack.
lut[CRC::ResidentEvil4] = GSC_ResidentEvil4; lut[CRC::ResidentEvil4] = GSC_ResidentEvil4;
lut[CRC::ShinOnimusha] = GSC_ShinOnimusha; lut[CRC::ShinOnimusha] = GSC_ShinOnimusha;
lut[CRC::SimpsonsGame] = GSC_SimpsonsGame; lut[CRC::SimpsonsGame] = GSC_SimpsonsGame;
@ -2050,9 +2051,6 @@ void GSState::SetupCrcHack()
// Dedicated shader for channel effect // Dedicated shader for channel effect
lut[CRC::TalesOfAbyss] = GSC_TalesOfAbyss; lut[CRC::TalesOfAbyss] = GSC_TalesOfAbyss;
// RW frame buffer. UserHacks_AutoFlush allow to emulate it correctly
lut[CRC::GTASanAndreas] = GSC_GTASanAndreas;
// Accumulation blend // Accumulation blend
lut[CRC::NanoBreaker] = GSC_NanoBreaker; lut[CRC::NanoBreaker] = GSC_NanoBreaker;
} }