mirror of https://github.com/PCSX2/pcsx2.git
Gsdx: Adjust Front Mission 5 crc hacks.
Move CRC hacks do DX level. Hack that fixes shadows: Shadows/glitchy black ground textures can be fixed with Preload Frame Data. Hack that removed vertical stripes: D3D10/11 correctly emulates texture shuffle but also needs depth support.
This commit is contained in:
parent
1d7cef08a7
commit
6496e6db11
|
@ -963,23 +963,6 @@ bool GSC_FightingBeautyWulong(const GSFrameInfo& fi, int& skip)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool GSC_FrontMission5(const GSFrameInfo& fi, int& skip)
|
|
||||||
{
|
|
||||||
if(skip == 0)
|
|
||||||
{
|
|
||||||
if(fi.TPSM == PSM_PSMT8H && fi.FBMSK == 0)
|
|
||||||
{
|
|
||||||
skip = 1;
|
|
||||||
}
|
|
||||||
if(fi.TME && (fi.FBP ==0x1000) && (fi.TBP0 ==0x2e00 || fi.TBP0 ==0x3200) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT32)
|
|
||||||
{
|
|
||||||
skip = 1; //fi.TBP0 ==0x1f00
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool GSC_GodHand(const GSFrameInfo& fi, int& skip)
|
bool GSC_GodHand(const GSFrameInfo& fi, int& skip)
|
||||||
{
|
{
|
||||||
if(skip == 0)
|
if(skip == 0)
|
||||||
|
@ -1145,6 +1128,27 @@ bool GSC_FinalFightStreetwise(const GSFrameInfo& fi, int& skip)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool GSC_FrontMission5(const GSFrameInfo& fi, int& skip)
|
||||||
|
{
|
||||||
|
if(skip == 0)
|
||||||
|
{
|
||||||
|
if(fi.TPSM == PSM_PSMT8H && fi.FBMSK == 0)
|
||||||
|
{
|
||||||
|
// Texture shuffle and depth support.
|
||||||
|
// Correctly emulated on OGL.
|
||||||
|
skip = 1;
|
||||||
|
}
|
||||||
|
if(fi.TME && (fi.FBP ==0x1000) && (fi.TBP0 ==0x2e00 || fi.TBP0 ==0x3200) && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT32)
|
||||||
|
{
|
||||||
|
// Shadows, glitchy black ground textures.
|
||||||
|
// Can be Fixed with Preload Frame Data hw hack, DX needs depth support.
|
||||||
|
skip = 1; //fi.TBP0 ==0x1f00
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
bool GSC_HauntingGround(const GSFrameInfo& fi, int& skip)
|
bool GSC_HauntingGround(const GSFrameInfo& fi, int& skip)
|
||||||
{
|
{
|
||||||
if(skip == 0)
|
if(skip == 0)
|
||||||
|
@ -2222,7 +2226,6 @@ void GSState::SetupCrcHack()
|
||||||
lut[CRC::DevilMayCry3] = GSC_DevilMayCry3;
|
lut[CRC::DevilMayCry3] = GSC_DevilMayCry3;
|
||||||
lut[CRC::EvangelionJo] = GSC_EvangelionJo;
|
lut[CRC::EvangelionJo] = GSC_EvangelionJo;
|
||||||
lut[CRC::FightingBeautyWulong] = GSC_FightingBeautyWulong;
|
lut[CRC::FightingBeautyWulong] = GSC_FightingBeautyWulong;
|
||||||
lut[CRC::FrontMission5] = GSC_FrontMission5;
|
|
||||||
lut[CRC::Genji] = GSC_Genji;
|
lut[CRC::Genji] = GSC_Genji;
|
||||||
lut[CRC::GodHand] = GSC_GodHand;
|
lut[CRC::GodHand] = GSC_GodHand;
|
||||||
lut[CRC::HeavyMetalThunder] = GSC_HeavyMetalThunder;
|
lut[CRC::HeavyMetalThunder] = GSC_HeavyMetalThunder;
|
||||||
|
@ -2295,6 +2298,7 @@ void GSState::SetupCrcHack()
|
||||||
lut[CRC::Bully] = GSC_Bully;
|
lut[CRC::Bully] = GSC_Bully;
|
||||||
lut[CRC::BullyCC] = GSC_BullyCC;
|
lut[CRC::BullyCC] = GSC_BullyCC;
|
||||||
lut[CRC::FinalFightStreetwise] = GSC_FinalFightStreetwise; // + blending
|
lut[CRC::FinalFightStreetwise] = GSC_FinalFightStreetwise; // + blending
|
||||||
|
lut[CRC::FrontMission5] = GSC_FrontMission5;
|
||||||
lut[CRC::GodOfWar2] = GSC_GodOfWar2;
|
lut[CRC::GodOfWar2] = GSC_GodOfWar2;
|
||||||
lut[CRC::ICO] = GSC_ICO;
|
lut[CRC::ICO] = GSC_ICO;
|
||||||
lut[CRC::LordOfTheRingsTwoTowers] = GSC_LordOfTheRingsTwoTowers;
|
lut[CRC::LordOfTheRingsTwoTowers] = GSC_LordOfTheRingsTwoTowers;
|
||||||
|
|
Loading…
Reference in New Issue