From 00d56e6bcf2a71f3a5d2f672d5239d990c5389b3 Mon Sep 17 00:00:00 2001 From: Henrik Rydgard Date: Sun, 18 Aug 2013 22:48:53 +0200 Subject: [PATCH] Setting unlimited as an alternate speed is possible again. --- Core/HLE/sceDisplay.cpp | 4 +++- UI/GameSettingsScreen.cpp | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Core/HLE/sceDisplay.cpp b/Core/HLE/sceDisplay.cpp index 31741f70df..251ef7cfb6 100644 --- a/Core/HLE/sceDisplay.cpp +++ b/Core/HLE/sceDisplay.cpp @@ -309,6 +309,8 @@ enum { void DoFrameTiming(bool &throttle, bool &skipFrame, float timestep) { int fpsLimiter = PSP_CoreParameter().fpsLimit; throttle = !PSP_CoreParameter().unthrottle; + if (fpsLimiter == FPS_LIMIT_CUSTOM && g_Config.iFpsLimit == 0) + throttle = false; skipFrame = false; // Check if the frameskipping code should be enabled. If neither throttling or frameskipping is on, @@ -340,7 +342,7 @@ void DoFrameTiming(bool &throttle, bool &skipFrame, float timestep) { // Argh, we are falling behind! Let's skip a frame and see if we catch up. // Auto-frameskip automatically if speed limit is set differently than the default. - if (g_Config.iFrameSkip == 1 || (g_Config.iFrameSkip == 0 && fpsLimiter == FPS_LIMIT_CUSTOM)) { + if (g_Config.iFrameSkip == 1 || (g_Config.iFrameSkip == 0 && fpsLimiter == FPS_LIMIT_CUSTOM && g_Config.iFpsLimit > 60)) { // 1 == autoframeskip if (curFrameTime > nextFrameTime && doFrameSkip) { skipFrame = true; diff --git a/UI/GameSettingsScreen.cpp b/UI/GameSettingsScreen.cpp index afdcd1de21..fb56cc4a63 100644 --- a/UI/GameSettingsScreen.cpp +++ b/UI/GameSettingsScreen.cpp @@ -177,8 +177,8 @@ void PopupSliderChoiceFloat::Draw(UIContext &dc) { } -static const int alternateSpeedTable[8] = { - 15, 30, 45, 60, 75, 90, 120, 180 +static const int alternateSpeedTable[9] = { + 0, 15, 30, 45, 60, 75, 90, 120, 180 }; @@ -242,7 +242,7 @@ void GameSettingsScreen::CreateViews() { static const char *fpsChoices[] = {"None", "Speed", "FPS", "Both"}; graphicsSettings->Add(new CheckBox(&cap60FPS_, gs->T("Force 60 FPS or less (helps GoW)"))); - static const char *customSpeed[] = {"25%", "50%", "75%", "100%", "125%", "150%", "200%", "300%"}; + static const char *customSpeed[] = {"Unlimited", "25%", "50%", "75%", "100%", "125%", "150%", "200%", "300%"}; graphicsSettings->Add(new PopupMultiChoice(&iAlternateSpeedPercent_, gs->T("Alternative Speed"), customSpeed, 0, 8, 0, screenManager())); graphicsSettings->Add(new ItemHeader(gs->T("Features")));