aboutsummaryrefslogtreecommitdiff
path: root/frontend
diff options
context:
space:
mode:
authornotaz2011-10-10 01:19:06 +0300
committernotaz2011-10-10 01:52:52 +0300
commitfb005d8711c6bb5eef8bf200a67e4e6503dd7d79 (patch)
treecc2d826c4d843216b83f68af2aed7bf099c4f46a /frontend
parent67d399b0f9e6c4b3100e685c323c65e6296e44ee (diff)
downloadpcsx_rearmed-fb005d8711c6bb5eef8bf200a67e4e6503dd7d79.tar.gz
pcsx_rearmed-fb005d8711c6bb5eef8bf200a67e4e6503dd7d79.tar.bz2
pcsx_rearmed-fb005d8711c6bb5eef8bf200a67e4e6503dd7d79.zip
frontend: fix integer-prefer scaler
Diffstat (limited to 'frontend')
-rw-r--r--frontend/menu.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/frontend/menu.c b/frontend/menu.c
index 931468f..83ad1c4 100644
--- a/frontend/menu.c
+++ b/frontend/menu.c
@@ -2009,16 +2009,10 @@ void menu_notify_mode_change(int w, int h, int bpp)
g_layer_w = w; g_layer_h = h;
break;
- case SCALE_4_3:
- mult = 240.0f / (float)h * 4.0f / 3.0f;
- if (h > 256)
- mult *= 2.0f;
- g_layer_w = mult * (float)g_menuscreen_h;
- g_layer_h = g_menuscreen_h;
- printf(" -> %dx%d %.1f\n", g_layer_w, g_layer_h, mult);
- break;
-
case SCALE_4_3v2:
+ if (h > g_menuscreen_h || (240 < h && h <= 360))
+ goto fractional_4_3;
+
// 4:3 that prefers integer scaling
imult = g_menuscreen_h / h;
g_layer_w = w * imult;
@@ -2029,6 +2023,16 @@ void menu_notify_mode_change(int w, int h, int bpp)
printf(" -> %dx%d %.1f\n", g_layer_w, g_layer_h, mult);
break;
+ fractional_4_3:
+ case SCALE_4_3:
+ mult = 240.0f / (float)h * 4.0f / 3.0f;
+ if (h > 256)
+ mult *= 2.0f;
+ g_layer_w = mult * (float)g_menuscreen_h;
+ g_layer_h = g_menuscreen_h;
+ printf(" -> %dx%d %.1f\n", g_layer_w, g_layer_h, mult);
+ break;
+
case SCALE_FULLSCREEN:
g_layer_w = g_menuscreen_w;
g_layer_h = g_menuscreen_h;