From bc5de01391d65a54563844f3959bd1855123163b Mon Sep 17 00:00:00 2001 From: Toni Wilen Date: Sat, 2 Dec 2023 19:54:29 +0200 Subject: [PATCH] Do not scale programmed modes if scale mode is default or TV --- od-win32/win32_scaler.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/od-win32/win32_scaler.cpp b/od-win32/win32_scaler.cpp index e331f3f6..90fb74ee 100644 --- a/od-win32/win32_scaler.cpp +++ b/od-win32/win32_scaler.cpp @@ -360,6 +360,13 @@ void getfilterrect2(int monid, RECT *sr, RECT *dr, RECT *zr, int dst_width, int if (scalemode == AUTOSCALE_STATIC_MAX || scalemode == AUTOSCALE_STATIC_NOMINAL || scalemode == AUTOSCALE_INTEGER || scalemode == AUTOSCALE_INTEGER_AUTOSCALE) { + if (scalemode == AUTOSCALE_STATIC_NOMINAL || scalemode == AUTOSCALE_STATIC_NOMINAL || scalemode == AUTOSCALE_STATIC_MAX) { + // do not default/TV scale programmed modes + if (beamcon0 & BEAMCON0_VARBEAMEN) { + goto cont; + } + } + if (specialmode) { cx = 0; cy = 0; @@ -371,7 +378,7 @@ void getfilterrect2(int monid, RECT *sr, RECT *dr, RECT *zr, int dst_width, int cw = avidinfo->drawbuffer.inwidth; ch = avidinfo->drawbuffer.inheight; cv = 1; - if (!(beamcon0 & BEAMCON0_VARBEAMEN) && (scalemode == AUTOSCALE_STATIC_NOMINAL)) { // || scalemode == AUTOSCALE_INTEGER)) { + if (scalemode == AUTOSCALE_STATIC_NOMINAL) { // || scalemode == AUTOSCALE_INTEGER)) { cx = 28 << currprefs.gfx_resolution; cy = 10 << currprefs.gfx_vresolution; cw -= 40 << currprefs.gfx_resolution; -- 2.47.3