From 542b8e64cbaae9114ed04c93f899025a2622457b Mon Sep 17 00:00:00 2001 From: negativeExponent Date: Wed, 6 May 2020 05:45:24 +0800 Subject: [PATCH] Use proper geometry when switching ntsc filter on or off - Width changes previously was not respected when using ntsc filter. With full use of overscan, nes width is 602 px when ntsc filter is used and 256 px on normal --- src/drivers/libretro/libretro.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/drivers/libretro/libretro.c b/src/drivers/libretro/libretro.c index 73d1eff..ab6e46f 100644 --- a/src/drivers/libretro/libretro.c +++ b/src/drivers/libretro/libretro.c @@ -968,13 +968,14 @@ void retro_get_system_av_info(struct retro_system_av_info *info) unsigned width = NES_WIDTH - (overscan_h ? 16 : 0); unsigned height = NES_HEIGHT - (overscan_v ? 16 : 0); #endif - info->geometry.base_width = width; - info->geometry.base_height = height; #ifdef HAVE_NTSC_FILTER + info->geometry.base_width = (use_ntsc ? NES_NTSC_OUT_WIDTH(width) : width); info->geometry.max_width = (use_ntsc ? NTSC_WIDTH : NES_WIDTH); #else + info->geometry.base_width = width; info->geometry.max_width = NES_WIDTH; #endif + info->geometry.base_height = height; info->geometry.max_height = NES_HEIGHT; info->geometry.aspect_ratio = (float)(use_par ? NES_8_7_PAR : NES_4_3); info->timing.sample_rate = (float)sndsamplerate;