Qt: Add turbo speed setting

This commit is contained in:
Connor McLaughlin
2021-01-11 01:57:10 +10:00
parent d73fedcef1
commit 54f5563321
8 changed files with 64 additions and 5 deletions

View File

@ -604,7 +604,9 @@ bool CommonHostInterface::ResumeSystemFromMostRecentState()
void CommonHostInterface::UpdateSpeedLimiterState()
{
const float target_speed = m_fast_forward_enabled ? g_settings.fast_forward_speed : g_settings.emulation_speed;
const float target_speed = m_turbo_enabled ?
g_settings.turbo_speed :
(m_fast_forward_enabled ? g_settings.fast_forward_speed : g_settings.emulation_speed);
m_speed_limiter_enabled = (target_speed != 0.0f);
const bool is_non_standard_speed = (std::abs(target_speed - 1.0f) > 0.05f);
@ -1435,6 +1437,9 @@ void CommonHostInterface::RegisterGeneralHotkeys()
TRANSLATABLE("Hotkeys", "Fast Forward"), [this](bool pressed) {
m_fast_forward_enabled = pressed;
UpdateSpeedLimiterState();
AddOSDMessage(m_fast_forward_enabled ? TranslateStdString("OSDMessage", "Fast forwarding...") :
TranslateStdString("OSDMessage", "Stopped fast forwarding."),
2.0f);
});
RegisterHotkey(StaticString(TRANSLATABLE("Hotkeys", "General")), StaticString("ToggleFastForward"),
@ -1449,6 +1454,27 @@ void CommonHostInterface::RegisterGeneralHotkeys()
2.0f);
}
});
RegisterHotkey(StaticString(TRANSLATABLE("Hotkeys", "General")), StaticString("Turbo"),
TRANSLATABLE("Hotkeys", "Turbo"), [this](bool pressed) {
m_turbo_enabled = pressed;
UpdateSpeedLimiterState();
AddOSDMessage(m_turbo_enabled ? TranslateStdString("OSDMessage", "Turboing...") :
TranslateStdString("OSDMessage", "Stopped turboing."),
2.0f);
});
RegisterHotkey(StaticString(TRANSLATABLE("Hotkeys", "General")), StaticString("ToggleTurbo"),
StaticString(TRANSLATABLE("Hotkeys", "Toggle Turbo")), [this](bool pressed) {
if (pressed)
{
m_turbo_enabled = !m_turbo_enabled;
UpdateSpeedLimiterState();
AddOSDMessage(m_turbo_enabled ? TranslateStdString("OSDMessage", "Turboing...") :
TranslateStdString("OSDMessage", "Stopped turboing."),
2.0f);
}
});
#ifndef ANDROID
RegisterHotkey(StaticString(TRANSLATABLE("Hotkeys", "General")), StaticString("ToggleFullscreen"),
StaticString(TRANSLATABLE("Hotkeys", "Toggle Fullscreen")), [this](bool pressed) {

View File

@ -349,6 +349,7 @@ protected:
bool m_frame_step_request = false;
bool m_fast_forward_enabled = false;
bool m_turbo_enabled = false;
bool m_timer_resolution_increased = false;
bool m_speed_limiter_enabled = true;