Skip to content

Commit b723a88

Browse files
committed
GPU: Update CRTC configuration on line offset change
Fixes offsets not applying immediately in interlaced modes that do not flip buffers.
1 parent 65e890f commit b723a88

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

src/core/gpu.cpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,11 @@ void GPU::UpdateSettings(const Settings& old_settings)
104104
m_console_is_pal = System::IsPALRegion();
105105
UpdateCRTCConfig();
106106
}
107-
else if (g_settings.display_crop_mode != old_settings.display_crop_mode)
107+
else if (g_settings.display_crop_mode != old_settings.display_crop_mode ||
108+
g_settings.display_active_start_offset != old_settings.display_active_start_offset ||
109+
g_settings.display_active_end_offset != old_settings.display_active_end_offset ||
110+
g_settings.display_line_start_offset != old_settings.display_line_start_offset ||
111+
g_settings.display_line_end_offset != old_settings.display_line_end_offset)
108112
{
109113
// Crop mode calls this, so recalculate the display area
110114
UpdateCRTCDisplayParameters();

src/core/system.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4538,7 +4538,10 @@ void System::CheckForSettingsChanges(const Settings& old_settings)
45384538
g_settings.gpu_max_run_ahead != old_settings.gpu_max_run_ahead ||
45394539
g_settings.gpu_force_video_timing != old_settings.gpu_force_video_timing ||
45404540
g_settings.display_crop_mode != old_settings.display_crop_mode ||
4541-
g_settings.display_aspect_ratio != old_settings.display_aspect_ratio)
4541+
g_settings.display_active_start_offset != old_settings.display_active_start_offset ||
4542+
g_settings.display_active_end_offset != old_settings.display_active_end_offset ||
4543+
g_settings.display_line_start_offset != old_settings.display_line_start_offset ||
4544+
g_settings.display_line_end_offset != old_settings.display_line_end_offset)
45424545
{
45434546
g_gpu.UpdateSettings(old_settings);
45444547
}

0 commit comments

Comments
 (0)