From 49ab9467df9c493e07d038b68cf60743afc0177d Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Sat, 16 Nov 2019 20:13:53 +1000 Subject: [PATCH] GPU: Set throttle frequency based on mode config --- src/core/gpu.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/core/gpu.cpp b/src/core/gpu.cpp index 5d8854c11..1366c2b50 100644 --- a/src/core/gpu.cpp +++ b/src/core/gpu.cpp @@ -278,6 +278,10 @@ void GPU::UpdateCRTCConfig() cs.horizontal_total = 3413; } + const TickCount ticks_per_frame = cs.horizontal_total * cs.vertical_total; + const double vertical_frequency = static_cast((u64(MASTER_CLOCK) * 11) / 7) / static_cast(ticks_per_frame); + m_system->GetHostInterface()->SetThrottleFrequency(vertical_frequency); + const u8 horizontal_resolution_index = m_GPUSTAT.horizontal_resolution_1 | (m_GPUSTAT.horizontal_resolution_2 << 2); cs.dot_clock_divider = dot_clock_dividers[horizontal_resolution_index]; cs.horizontal_display_start = static_cast(std::min(cs.regs.X1, cs.horizontal_total));