A new RetroArch release is here, and this one primarily focuses on the Steam Deck. Now that some users have gotten their hands on the Steam Deck, the Libretro team is working on improving the Steam port of RetroArch and the overall experience. Steam users, and by extension, Steam Deck users, can now install cores from RetroArch itself, rather than the Steam game DLC page. Additionally, RetroArch will now bring up the Steam onscreen keyboard rather than the RetroArch default one, making it easier to type on should the need arise.
Thanks to Mist, here are some of the big new features for Steam users (and in particular, Steam Deck users):
As a result of these changes, the Steam port is starting to become its own thing rather than just a straightforward no-frills port of the Windows/Linux versions.
- You can now install and uninstall cores directly from inside RetroArch by going to ‘Manage Cores’ from inside the menu. No longer do you have to manually browse Steam with your webbrowser and download random core DLCs for RetroArch, you can do it from within the convenience of the app running itself.
- On Steam Deck, the native OSK (Onscreen Keyboard) will appear now instead of the RetroArch default OSK. This should give a more seamless experience. We have decided against enabling the Steam OSK with Big Picture since it seems partially broken and instantly dismisses itself (or at least those were our testing results on a Steam Deck).
As for general improvements, multiple cores now offer better audio latency, and the ability to lower the latency without distorting the sound. Snes9x, Flycast, Nestopia, and more all benefit from this change. Those that use RetroArch on the Nintendo Wii U will also now have better GamePad video output, thanks to a new dedicated "optimize for Gamepad" option. According to the developers, the scaling has been an issue with display on the GamePad in the past, and now it has been fixed. The explanation as to why is explained below.
The Wii U is a weird case with RetroArch because of the two screens (TV and Wii U GamePad). The Wii U can be configured to output video at 480p, 720p or 1080p (or interlaced equivalents), whereas the GamePad has a native 480-line display. While it is possible to send different images to the TV and GamePad, RetroArch currently sends the same image to both. This creates a bit of a conundrum as 480 does not divide evenly into any of the other available resolutions.
When running 240p content, setting the Wii U to 720p just works, because a 3x integer scale (240*3 = 720) on the TV also happens to be a 2x integer scale (240*2 = 480) on the GamePad. However, when running 480p content, having the Wii U set to 720p will result in a poor image all around, with non-integer scaling from 480->720 on the TV, and then even worse, 480->720->480 on the GamePad.
Running the Wii U at 1080p, you get the worst of all worlds. Absolutely nothing divides evenly into 1080, so no matter what content you’re playing, you’ll need either large borders or a filter/shader to stretch to that non-integer resolution, and putting that 1080p image back on the 480p GamePad makes it even worse again. Many users only use 720p because of the poor results you get from 1080p currently.
By running 1080p with a 960p viewport, you can do things like a 4x integer scale of 240p content which becomes a 2x integer scale on the GamePad, or a 2x scale of 480p content which becomes a 1x native display on the GamePad. Even more exotic resolutions like the Game Boy Advance (160p) are enhanced, with 160 dividing 6x into 960 or 3x into 480. This one change makes 1080p a lot less useless on Wii U.