From 91e239e11f02b12d05dca9d6c3c97037903ab6e2 Mon Sep 17 00:00:00 2001 From: nattthebear Date: Sun, 11 Jun 2017 07:15:51 -0400 Subject: [PATCH] use the ancient zen art of copy paste to give libsnes the same aspect ratio fix that snes9x has. --- .../Consoles/Nintendo/SNES/LibsnesCore.IVideoProvider.cs | 4 ++-- .../Consoles/Nintendo/SNES/LibsnesCore.cs | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.IVideoProvider.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.IVideoProvider.cs index 1d426410b5..67876f698b 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.IVideoProvider.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.IVideoProvider.cs @@ -4,9 +4,9 @@ namespace BizHawk.Emulation.Cores.Nintendo.SNES { public partial class LibsnesCore : IVideoProvider { - public int VirtualWidth => (int)(_videoWidth * 1.146); + public int VirtualWidth { get; private set; } = 293; - public int VirtualHeight => _videoHeight; + public int VirtualHeight { get; private set; } = 224; public int BufferWidth => _videoWidth; diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.cs index 2e7d98a608..0d708f31e8 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/SNES/LibsnesCore.cs @@ -532,6 +532,14 @@ namespace BizHawk.Emulation.Cores.Nintendo.SNES } } } + + VirtualHeight = BufferHeight; + VirtualWidth = BufferWidth; + if (VirtualHeight * 2 < VirtualWidth) + VirtualHeight *= 2; + if (VirtualHeight > 240) + VirtualWidth = 512; + VirtualWidth = (int)Math.Round(VirtualWidth * 1.146); } private void RefreshMemoryCallbacks(bool suppress)