RetroArch 1.8.8 has just been released.

Grab it here.

Read our latest Libretro Cores Progress Report blog post here. It’s an exhaustive list, and especially the older consoles have received a lot of new cores and improvements.

Remember that this project exists for the benefit of our users, and that we wouldn’t keep doing this were it not for spreading the love with our users. This project exists because of your support and belief in us to keep going doing great things. If you’d like to show your support, consider donating to us. Check here in order to learn more. In addition to being able to support us on Patreon, there is now also the option to sponsor us on Github Sponsors! You can also help us out by buying some of our merch on our Teespring store!

Highlights

Add option to sort playlists after name truncation (Ozone)

A couple of users have complained about a feature we made in 1.8.7 (Fix sidebar playlist sort order when ‘Truncate Playlist Names’ is enabled). This new addition makes the new sidebar playlist sorting behaviour optional via a Sort Playlists After Name Truncation setting under User Interface > Appearance. When disabled, playlists will be sorted the old way (according to file name), not by display name.

Localization – big updates and crowdsourced

A new language has been added, Slovakian. And plenty of the existing languages have received big updates as far as localization goes.

But by far the biggest change is our transition to Crowdin. This allows non-programmers to more easily contribute localization changes/additions to RetroArch. You can see the completion status of the various languages on our Crowdin page.

Improved shader preset dirs

1.8.8 restores the original behavior of the “Save Shader Preset As” option, and improves the cycling of shaders by allowing to cycle the shaders on fallback directories if the Video Shader directory does not contain any preset.

Input Remapping Fixes

In 1.8.7, pressing RetroPad Start to reset a core input remap to the default setting did not work correctly – analog stick inputs get the wrong defaults, and inputs that are left undefined by the core are not set to the proper RARCH_UNMAPPED value.

1.8.8 fixes the issue.

RetroArch WiiU: Gamepad hotplugging support, theoretical multi-gamepad support

1.8.8 adds support for hotplugging WiiU Gamepads. Critically for users, this makes the driver no longer assume a Gamepad is present, so when it’s broken or out of battery or missing; the first Wiimote gets slot 1 instead (helpful when All Users Control Menu is off). I [quarkawesome] also made it check Gamepad channel 2 – while it’s impossible to connect a second Gamepad on a retail console, the code to do it still appears to be there. If that feature ever becomes a thing through CFWs, it’ll work here.

RetroArch P2 – New SDK/toolchain – big improvements

fjtrujy spent a lot of time adapting RetroArch PlayStation2 to the latest PS2 SDK. RetroArch PS2 is now being built with a modern version of the GCC compiler, and certain cores are already seeing massive speedups as a result.

As can be seen by the tweet, QuickNES went from 255fps with the old SDK to 429fps with the new SDK. This makes the core more than fast enough to use runahead – on a PlayStation2 of all things!

A newer C/C++ toolchain also will make it much easier to port over software to PS2, it was previously quite difficult to port C++ cores over to PS2.

fjtrujy also added Theodore to the list of cores supported.

Changelog

What you’ve read above is just a small sampling of what 1.8.8 has to offer. There might be things that we forgot to list in the changelog listed below, but here it is for your perusal regardless.

1.8.8

  • AUDIO/JACK: Fix regression introduced after 1.8.4 – would hang at startup
  • CHEEVOS: Disable hardcore when cheats are enabled
  • CHD: Return false when special track cannot be found
  • DISCORD/MATCHMAKING: Fix Discord ‘Ask To Join’ functionality
  • FILE PATH: Various file path handling optimisations
  • FONT: Fix Arabic, Chinese and Korean font rendering
  • INPUT MAPPING/REMAPPING: Restore broken ‘reset to default’ functionality with RetroPad ‘start’ button
  • INPUT MAPPING/REMAPPING: Fix ‘reset to default’ action for analog sticks and undefined core inputs
  • LIBRETRO: Add new message extension allowing for richer messages
  • LOCALIZATION: Update Arabic translation
  • LOCALIZATION: Update Chinese (Simplified) translation
  • LOCALIZATION: Update Chinese (Traditional) translation
  • LOCALIZATION: Update German translation
  • LOCALIZATION: Update Greek translation
  • LOCALIZATION: Update Spanish translation
  • LOCALIZATION: Update French translation
  • LOCALIZATION: Update Italian translation
  • LOCALIZATION: Update Japanese translation
  • LOCALIZATION: Update Korean translation
  • LOCALIZATION: Update Dutch translation
  • LOCALIZATION: Update Polish translation
  • LOCALIZATION: Update Portuguese Brazilian translation
  • LOCALIZATION: Update Russian translation
  • LOCALIZATION: Update Turkish translation
  • LOCALIZATION: Update Vietnamese translation
  • LOCALIZATION: Add Slovak translation
  • MENU: Small buffer optimizations
  • MENU/THUMBNAILS/BUGFIX: Fix heap-use-after-free error
  • MENU/OZONE: Add option to sort playlists after name truncation
  • MENU/OZONE/ANDROIDTV: Default to Ozone menu driver
  • MENU/OZONE/ANDROID: Gamepad-like devices default to Ozone now (Shield Portable)
  • NETPLAY: Lower announcement rate
  • OVERLAYS: Fix memory leak when loading overlays
  • SHADER PRESETS: Improved shader preset dirs
  • TIME/DATE: Enable configuration of date seperator in clock and runtime ‘last played’ displays
  • VITA: Fix upside-down vertical games
  • UWP: Enable playlist and savefile compression by default (because of slow file I/O)
  • VIDEO/WIDGETS: Fix overlapping text when simultaneous pop-up notifications and core/shader messages are being displayed
  • WIIU: Gamepad hotplugging support
  • WIIU: Theoretical multi-gamepad support
  • X11: Fix crash in x11_display_server_get_screen_orientation
  • X11/XSHM: Allow X11/XHSM video driver to operate without SHM extension
  • X11/XSHM: Fix compatibility with X11 input driver
  • XVIDEO: Fix keyboard input initialization
  • XVIDEO/XWAYLAND: Fix XVideo support on xwayland (by supporting I420 and YZ12)