Implement warning when trying to play Ghost of Sparta with a modified CPU clock, as suggested by unknownbrackets in #7411

This commit is contained in:
Henrik Rydgård 2017-12-17 13:14:06 +01:00
parent ef66892f70
commit 525cce095a
4 changed files with 18 additions and 1 deletions

View File

@ -54,6 +54,7 @@ void Compatibility::CheckSettings(IniFile &iniFile, const std::string &gameID) {
CheckSetting(iniFile, gameID, "FakeMipmapChange", &flags_.FakeMipmapChange);
CheckSetting(iniFile, gameID, "RequireBufferedRendering", &flags_.RequireBufferedRendering);
CheckSetting(iniFile, gameID, "RequireBlockTransfer", &flags_.RequireBlockTransfer);
CheckSetting(iniFile, gameID, "RequireDefaultCPUClock", &flags_.RequireDefaultCPUClock);
CheckSetting(iniFile, gameID, "DisableReadbacks", &flags_.DisableReadbacks);
CheckSetting(iniFile, gameID, "DisableAccurateDepth", &flags_.DisableAccurateDepth);
}

View File

@ -18,7 +18,7 @@
#pragma once
#include <string>
#include <stdint.h>
#include <cstdint>
// Compatibility flags are controlled by assets/compat.ini.
// Alternatively, if PSP/SYSTEM/compat.ini exists, it is merged on top, to enable editing
@ -54,6 +54,7 @@ struct CompatFlags {
bool FakeMipmapChange;
bool RequireBufferedRendering;
bool RequireBlockTransfer;
bool RequireDefaultCPUClock;
bool DisableReadbacks;
bool DisableAccurateDepth;
};

View File

@ -226,6 +226,11 @@ void EmuScreen::bootGame(const std::string &filename) {
host->NotifyUserMessage(gr->T("BlockTransferRequired", "Warning: This game requires Simulate Block Transfer Mode to be set to On."), 15.0f);
}
if (PSP_CoreParameter().compat.flags().RequireDefaultCPUClock && g_Config.iLockedCPUSpeed != 0) {
I18NCategory *gr = GetI18NCategory("Graphics");
host->NotifyUserMessage(gr->T("DefaultCPUClockRequired", "Warning: This game requires the CPU clock to be set to default."), 15.0f);
}
loadingViewColor_->Divert(0xFFFFFFFF, 0.15f);
loadingViewVisible_->Divert(UI::V_VISIBLE, 0.15f);
}

View File

@ -316,3 +316,13 @@ ULJM05242 = true
ULJM05371 = true
NPJH50304 = true
ULES00703 = true
[RequireDefaultCPUClock]
# GOW : Ghost of Sparta
UCUS98737 = true
UCAS40323 = true
NPHG00092 = true
NPEG00044 = true
NPJG00120 = true
UCJS10114 = true
UCES01401 = true