libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
10.39k stars 1.84k forks source link

Blargg_NTSC_SNES CPU Filter bug with any SNES core #12231

Open Michael-Prince-Sharpe opened 3 years ago

Michael-Prince-Sharpe commented 3 years ago

Description

It appears to be a problem with the aspect ratio and whenever the filter goes into one of the snes' hi-res modes, there's more about it here https://forums.libretro.com/t/possible-bug-with-blarggs-filters-in-the-snes9x-core/32746/6

Expected behavior

To display the video output proportionately an accurately

Actual behavior

Doom (J)-210404-183229

Steps to reproduce the bug

Not entirely sure

  1. Select your bsnes core with game as you normally would
  2. Apply your shader which is fine
  3. Apply the BLARGG NTSC RGB CPU filter under video settings

Bisect Results

Occasionally the aspect ratio goes too slim in some games like the image above, on DOOM it's the intermission screens and startup screens.

Version/Commit

git: cf6ca2a

Environment information

Michael-Prince-Sharpe commented 3 years ago

It seems to be a problem with the blargg ntsc snes filter itself in correspondence with Retroarch regardless of snes core or preset (RF, Composite, s-video or RGB). When you try it with the snes9x core with Doom you get the same problem but you get 2 of the squashed screens next to each other. The filter has no problems at all in the stand-alone versions of bsnes, snes9x and zsnes.

Michael-Prince-Sharpe commented 3 years ago

The problem either lies in this file https://github.com/libretro/RetroArch/blob/master/gfx/video_filters/blargg_ntsc_snes.c or in the blargg_ntsc_snes DLL that's included with the Windows x64 build compiled for Retroarch which I've also attached in a zip file blargg_ntsc_snes.zip