Added Haunting Ground to the list of games that get their post processing automatically removed.
The game still shows a badly blended fog but is otherwise nicely playable now.

Hacks are from an unknown coder. Thanks for figuring it out! ;)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3642 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
ramapcsx2 2010-08-15 14:48:07 +00:00
parent d05dcc48f7
commit cad4158283
3 changed files with 29 additions and 0 deletions

View File

@ -57,6 +57,11 @@ CRC::Game CRC::m_games[] =
{0xdc2a467e, FFXII, EU, 0}, {0xdc2a467e, FFXII, EU, 0},
{0xca284668, FFXII, EU, 0}, {0xca284668, FFXII, EU, 0},
{0x280AD120, FFXII, JP, 0}, {0x280AD120, FFXII, JP, 0},
{0x08C1ED4D, HauntingGround, Unknown, 0},
{0x2CD5794C, HauntingGround, EU, 0},
{0x867BB945, HauntingGround, JP, 0},
{0xE263BC4B, HauntingGround, JP, 0},
{0x901AAC09, HauntingGround, US, 0},
{0x8BE3D7B2, ShadowHearts, Unknown, 0}, {0x8BE3D7B2, ShadowHearts, Unknown, 0},
{0xDEFA4763, ShadowHearts, US, 0}, {0xDEFA4763, ShadowHearts, US, 0},
{0x21068223, Okami, US, 0}, {0x21068223, Okami, US, 0},

View File

@ -38,6 +38,7 @@ public:
FFX, FFX,
FFX2, FFX2,
FFXII, FFXII,
HauntingGround,
ShadowHearts, ShadowHearts,
Okami, Okami,
MetalGearSolid3, MetalGearSolid3,

View File

@ -2525,6 +2525,28 @@ bool GSC_RadiataStories(const GSFrameInfo& fi, int& skip)
return true; return true;
} }
bool GSC_HauntingGround(const GSFrameInfo& fi, int& skip)
{
if(skip == 0)
{
if(fi.TME && fi.FPSM == fi.TPSM && fi.TPSM == PSM_PSMCT16S && fi.FBMSK == 0x03FFF)
{
skip = 1;
}
else if(fi.TME && fi.FBP == 0x3000 && fi.TBP0 == 0x3380)
{
skip = 1; // bloom
}
else if(fi.TME && fi.FBP == fi.TBP0 && fi.TBP0 == 0x3000 && fi.FBMSK == 0xFFFFFF &&
GSUtil::HasSharedBits(fi.FBP, fi.FPSM, fi.TBP0, fi.TPSM))
{
skip = 1;
}
}
return true;
}
bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw) bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw)
{ {
GSFrameInfo fi; GSFrameInfo fi;
@ -2578,6 +2600,7 @@ bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw)
map[CRC::StarOcean3] = GSC_StarOcean3; map[CRC::StarOcean3] = GSC_StarOcean3;
map[CRC::ValkyrieProfile2] = GSC_ValkyrieProfile2; map[CRC::ValkyrieProfile2] = GSC_ValkyrieProfile2;
map[CRC::RadiataStories] = GSC_RadiataStories; map[CRC::RadiataStories] = GSC_RadiataStories;
map[CRC::HauntingGround] = GSC_HauntingGround;
} }
// TODO: just set gsc in SetGameCRC once // TODO: just set gsc in SetGameCRC once