diff --git a/src/frontend/KaizenGui.cpp b/src/frontend/KaizenGui.cpp index bb4f9f20..66655e14 100644 --- a/src/frontend/KaizenGui.cpp +++ b/src/frontend/KaizenGui.cpp @@ -93,6 +93,12 @@ void KaizenGui::HandleInput(SDL_Event event) { fileDialogOpen = true; } + fastForward = keys[SDL_SCANCODE_F]; + if(fastForward) + core->parallel.SetFramerateUnlocked(true); + else + core->parallel.SetFramerateUnlocked(false); + if(core->romLoaded) { if(keys[SDL_SCANCODE_P]) { emuThread.TogglePause(); @@ -159,6 +165,10 @@ void KaizenGui::RenderUI() { core->romLoaded = false; } + if(ImGui::Checkbox("Unlock framerate", &fastForward)) { + core->parallel.SetFramerateUnlocked(fastForward); + } + ImGui::EndDisabled(); if(ImGui::MenuItem("Options")) { diff --git a/src/frontend/KaizenGui.hpp b/src/frontend/KaizenGui.hpp index 62156a36..6b8822ce 100644 --- a/src/frontend/KaizenGui.hpp +++ b/src/frontend/KaizenGui.hpp @@ -12,6 +12,7 @@ public: ~KaizenGui(); double fpsCounter = -1.0; + bool fastForward = false; SettingsWindow settingsWindow; std::shared_ptr core;