Last time i checked, accuracy profile would improve one game, Air Strike Patrol's shadow. Other than that the balanced profile would be the same. Has this changed lately?
Not in ways you'd be likely to notice. Some very recent findings were:
* the horizontal scroll latch behavior was wrong, and caused stuttering on the Pacman (PD) title screen.
* hires and interlace mosaic was wrong, which I think was only used briefly in Tokimeki Memorial and in a way that you really wouldn't notice it was wrong.
There've also been CPU DMA improvements, better randomization approximation for some issues with games that don't pre-initialize RAM before using it, etc. Yeah, we're still improving SNES emulation in 2017.
These kinds of things could be backported, but I had to drop my balanced profile because it was just too much work to have three SNES emulators on top of seven other system emulators.
Is this something that would be hard to set up as just a config value? i.e. report 240 vs 480 resolution to the libretro API?
No idea.
Retroarch is simply not user friendly at all
Well, regardless, it's clear a whole lot of people here use it. It's not ideal for them to use very old code, and it's bad of me to go around complaining about that, so I'm happy we can work together and get this resolved finally.
Plus the 480p framebuffer shader issue, at least until that gets fixed on RetroArch's end.
Being fair, higan hasn't fixed this either. I'm less optimistic they'll be willing to make a libretro API change for this, but I guess we'll see how things go.
I honestly don't know shit about programming or shaders, but I imagine when you double the amount of pixels to work with, especially in one direction, it's going to make the image look very different and probably be distracting in normal play.
That's basically exactly it. Only minor addition I have is, the image you showed had the entire screen at 512x224. The textboxes in-game only have part of the screen in hires. So yeah, it's an absolutely unbelievable undertaking to split the image into region sections, filter each through separate shaders, and then fuse them back together, trying to avoid nasty seams.
The issue as described earlier is that higan would report every game to the libretro wrapper as running in the full high resolution
Technically, that is true.
higan's always been idealistic over pragmatic. The SNES can actually change between the lores (256-width) and hires (512-width) modes in the middle of a scanline, not even just between scanlines. This has been confirmed with a tech demo ROM.
I always have to render the screen at the full 512-width because of this, even though no commercial game ever tries this. But my goal is 100% accuracy no matter what.
It would be possible to track the hires state the entire frame, and if it has ever been enabled during the active display, output the display width as 512, and otherwise, crush the video by dropping every other pixel and output it as 256 width.
My solution may end up like that, or it may end up simply informing the shaders of the perceived virtual resolution for the frame.
It gets a lot tricker on the PC Engine, where there are three video modes you can change at any time during display.