all repos — mgba @ a96c5e10e6d0863304b64adbfa8b27974639a4c4

mGBA Game Boy Advance Emulator

Qt: Preserve native FPS target when saving settings
Vicki Pfau vi@endrift.com
Wed, 22 May 2019 11:15:21 -0700
commit

a96c5e10e6d0863304b64adbfa8b27974639a4c4

parent

f5085dfc819fcce1aaa7bbeef8da6543c064dca8

1 files changed, 7 insertions(+), 1 deletions(-)

jump to
M src/platform/qt/SettingsView.cppsrc/platform/qt/SettingsView.cpp

@@ -355,7 +355,6 @@ saveSetting("sampleRate", m_ui.sampleRate);

saveSetting("videoSync", m_ui.videoSync); saveSetting("audioSync", m_ui.audioSync); saveSetting("frameskip", m_ui.frameskip); - saveSetting("fpsTarget", m_ui.fpsTarget); saveSetting("autofireThreshold", m_ui.autofireThreshold); saveSetting("lockAspectRatio", m_ui.lockAspectRatio); saveSetting("lockIntegerScaling", m_ui.lockIntegerScaling);

@@ -387,6 +386,13 @@ if (m_ui.fastForwardUnbounded->isChecked()) {

saveSetting("fastForwardRatio", "-1"); } else { saveSetting("fastForwardRatio", m_ui.fastForwardRatio); + } + + double nativeFps = double(GBA_ARM7TDMI_FREQUENCY) / double(VIDEO_TOTAL_LENGTH); + if (nativeFps - m_ui.fpsTarget->value() < 0.0001) { + m_controller->setOption("fpsTarget", QVariant(nativeFps)); + } else { + saveSetting("fpsTarget", m_ui.fpsTarget); } switch (m_ui.idleOptimization->currentIndex() + IDLE_LOOP_IGNORE) {