From 27038bb5672a15c5172a4a41ace8687922a4d9d1 Mon Sep 17 00:00:00 2001 From: Fabian Greffrath Date: Thu, 7 Jan 2021 12:17:55 +0100 Subject: [PATCH] fix aspect ration for the canonical screen resolutions (#162) Make sure to leave "Aspect Ratio" set to "Auto" and "Status Bar and Menu Appearance" to "Not Adjusted" for both 320x200 and 640x400. Fixes #94 and hopefully fixes #147. --- prboom2/src/SDL/i_video.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/prboom2/src/SDL/i_video.c b/prboom2/src/SDL/i_video.c index aef64edf7..4992c8eeb 100644 --- a/prboom2/src/SDL/i_video.c +++ b/prboom2/src/SDL/i_video.c @@ -1247,7 +1247,11 @@ void I_UpdateVideoMode(void) init_flags); sdl_renderer = SDL_CreateRenderer(sdl_window, -1, flags); - SDL_RenderSetLogicalSize(sdl_renderer, REAL_SCREENWIDTH, REAL_SCREENHEIGHT); + if ((SCREENWIDTH == 320 && SCREENHEIGHT == 200) || + (SCREENWIDTH == 640 && SCREENHEIGHT == 400)) + SDL_RenderSetLogicalSize(sdl_renderer, REAL_SCREENWIDTH, 6*REAL_SCREENHEIGHT/5); + else + SDL_RenderSetLogicalSize(sdl_renderer, REAL_SCREENWIDTH, REAL_SCREENHEIGHT); screen = SDL_CreateRGBSurface(0, SCREENWIDTH, SCREENHEIGHT, V_GetNumPixelBits(), 0, 0, 0, 0); buffer = SDL_CreateRGBSurface(0, REAL_SCREENWIDTH, REAL_SCREENHEIGHT, 32, 0, 0, 0, 0); @@ -1520,7 +1524,4 @@ void UpdateGrab(void) static void ApplyWindowResize(SDL_Event *resize_event) { - int w = resize_event->window.data1; - int h = resize_event->window.data2; - SDL_RenderSetLogicalSize(sdl_renderer, w, w * REAL_SCREENHEIGHT / REAL_SCREENWIDTH); }