From 45e3e6d549b0a99f33f50a1ee3a916a3c335dcea Mon Sep 17 00:00:00 2001 From: ramapcsx2 Date: Mon, 11 Feb 2013 17:10:22 +0000 Subject: [PATCH] GSdx: Added a crc hack for Steambot Chronicles, made by miseru99. It doesn't look perfect but at least it's rather playable now. Thanks miseru99 :) git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5555 96395faa-99c1-11dd-bbfe-3dabce05a288 --- plugins/GSdx/GSCrc.cpp | 1 + plugins/GSdx/GSCrc.h | 1 + plugins/GSdx/GSState.cpp | 23 +++++++++++++++++++++++ 3 files changed, 25 insertions(+) diff --git a/plugins/GSdx/GSCrc.cpp b/plugins/GSdx/GSCrc.cpp index 960374d56..54356966f 100644 --- a/plugins/GSdx/GSCrc.cpp +++ b/plugins/GSdx/GSCrc.cpp @@ -500,6 +500,7 @@ CRC::Game CRC::m_games[] = {0x0098F740, SeintoSeiya, NoRegion, 0}, // cutie comment {0xBDD9BAAD, UrbanReign, US, 0}, // cutie comment {0xAE4BEBD3, UrbanReign, EU, 0}, + {0x9F391882, SteambotChronicles, US, 0}, }; hash_map CRC::m_map; diff --git a/plugins/GSdx/GSCrc.h b/plugins/GSdx/GSCrc.h index 77b3c55fc..8669f70c3 100644 --- a/plugins/GSdx/GSCrc.h +++ b/plugins/GSdx/GSCrc.h @@ -173,6 +173,7 @@ public: Simple2000Vol114, SeintoSeiya, UrbanReign, + SteambotChronicles, TitleCount, }; diff --git a/plugins/GSdx/GSState.cpp b/plugins/GSdx/GSState.cpp index 6a5851803..eef0ec79a 100644 --- a/plugins/GSdx/GSState.cpp +++ b/plugins/GSdx/GSState.cpp @@ -5040,6 +5040,28 @@ bool GSC_UrbanReign(const GSFrameInfo& fi, int& skip) return true; } +bool GSC_SteambotChronicles(const GSFrameInfo& fi, int& skip) +{ + // Author: miseru99 on forums.pcsx2.net + if(fi.TME && fi.TPSM == PSM_PSMCT16S) + { + if(fi.FBP == 0x1180) + { + skip=1;//1 deletes some of the glitched effects + } + else if(fi.FBP == 0) + { + skip=100;//deletes most others(too high deletes the buggy sea completely;c, too low causes glitches to be visible) + } + else if(g_aggressive && fi.FBP != 0)//Agressive CRC + { + skip=19;//"speedhack", makes the game very light, vaporized water can disappear when not looked at directly, possibly some interface still, other value to try: 6 breaks menu background, possibly nothing(?) during gameplay, but it's slower, hence not much of a speedhack anymore + } + } + + return true; +} + #ifdef ENABLE_DYNAMIC_CRC_HACK #include @@ -5311,6 +5333,7 @@ bool GSState::IsBadFrame(int& skip, int UserHacks_SkipDraw) map[CRC::SoulCalibur3] = GSC_SoulCalibur3; map[CRC::Simple2000Vol114] = GSC_Simple2000Vol114; map[CRC::UrbanReign] = GSC_UrbanReign; + map[CRC::SteambotChronicles] = GSC_SteambotChronicles; } // TODO: just set gsc in SetGameCRC once