Skip to content

Commit efb24dc

Browse files
committed
retroarch: update to the 1.21.0 version
This bumps the RetroArch version to 1.21.0 from 1.19.0 The new version has a regression on KMS/DRM for RGUI, reported upstream, which is worked around by setting `rgui_aspect_ratio_lock` to `0` until (if) it's fixed. This will make the RGUI stretch/shrink to the current core provided resolution instead of staying the same. Release announcements for the new versions: - 1.21 (April 2025) https://www.libretro.com/index.php/retroarch-1-21-0-release/ - 1.20 (January 2025) https://www.libretro.com/index.php/retroarch-1-20-0-release/ Abbreviated changelog from 1.19.0, focused on features relevant to Linux/RetroPie: * AUTOCONF: Enable alternative display name in autoconfig files (v1.21) * AUTOCONF: Make autoconfig failure messages optional (v1.21) * AUDIO: Option to mute on rewind (v1.21) * AUDIO/PIPEWIRE: Fix app launch when pipewire service is stopped (v1.21) * AUDIO/PIPEWIRE: Fix speedup with threaded video mode (v1.21) * AUDIO/PIPEWIRE: Fix latency setting and microphone handling (v1.21) * AUDIO/PIPEWIRE: Pass the new rate to the audio driver (v1.21) * AUDIO: Fix audio handling in case of RARCH_NETPLAY_CTL_USE_CORE_PACKET_INTERFACE (v1.20) * AUDIO: Include missing audio filters on some platforms (v1.20) * AUDIO: Add PipeWire audio driver (v1.20) * AUDIO: Add PipeWire microphone driver (v1.20) * CHEEVOS: Add rarity and points to achievement unlock widget (v1.20) * CHEEVOS: Add rank to leaderboard submission notification (v1.20) * CHEEVOS: Update to rcheevos 11.6 (v1.20) * CHEEVOS: Show rcheevos game image in Discord rich presence (v1.20) * CHEEVOS: Use translated strings for achievement messages (v1.20) * CHEEVOS: Include achievement state in netplay states (v1.21) * CHEEVOS: Fix crash when entering achievements in quick menu while client is not present (v1.21) * CRT/SWITCHRES: Update switchres to 2.2.1 (v1.20) * GENERAL: Fix save state auto increment (v1.21) * GENERAL: Fix softpatching with periods/dots in the file name (v1.21) * GENERAL: Allow asset directory redefinition and other directory overrides via environment variables (v1.21) * GENERAL: Fix performance counter option not remembered between sessions (v1.21) * GENERAL: Use core fps instead of screen refresh for calculating dropped frames (v1.21) * GENERAL: Support for mbedtls v3 (v1.20) * GENERAL: Automatic Frame Delay refactor (v1.20) * GENERAL: Remove Frame Rest, obsoleted by Frame Delay refactor (v1.20) * GENERAL: Wrap around auto increment save state indexes when amount of states is limited (v1.20) * GENERAL: Enable CHD hashing for Switch and DOS (v1.20) * GENERAL: Enable auto save state when new content is loaded (v1.20) * GENERAL: Improve Preemptive Frames when pointing device is used (v1.20) * GENERAL: Fix building with menu disabled (v1.20) * INPUT: Fix a crash when initializing illuminance sensor on Linux (v1.21) * INPUT: Analog-to-digital refactor, fixing behavior when analogs are assigned to keys (v1.21) * INPUT: Turbo fire overhaul. See #17633 (v1.21) * INPUT: Allow to select a preferred/reserved device for each player (v1.20) * INPUT: Enable Caps, Num, Scroll Lock modifiers on multiple platforms (v1.20) * INPUT: Autoconfig extension with alternative name/vid/pid (v1.20) * INPUT: Fix autoconfig profile saving when device is not in the default port (v1.20) * INPUT: Change classic turbo mode to work independently of which key was pressed first (v1.20) * INPUT: Pointer and lightgun handling sanitization on Windows and Linux desktop platforms. These input drivers will now report edge and offscreen positions in a harmonized way, and will not return 0 instead. (v1.20) * INPUT/Remaps: Sort and apply remaps based on the specific connected controller (v1.20) * INPUT/UDEV: Enable mouse buttons 4 and 5 (v1.20) * INPUT/WAYLAND: Enable horizontal scroll and mouse buttons 4 and 5 (v1.20) * INPUT/WAYLAND: Simulate lightgun input for cores (v1.20) * INPUT/WAYLAND: Support for cursor-shape-v1 and content-type-v1 protocol (v1.20) * INPUT/X11: Enable mouse buttons 4 and 5 (v1.20) * INPUT/LINUX/X11: Extend X11 input driver with XInput2 extensions for multi-mouse (v1.21) * LIBRETRO: Support RETRO_ENVIRONMENT_GET_FILE_BROWSER_START_DIRECTORY (v1.20) * LIBRETRO: Support “/” as a file extension for loading a directory as content (v1.20) * MENU/XMB: Allow playlist icons to be individually customized, by looking for images in Named_Logos (v1.20) * MENU/OZONE: Add Selenium theme for Ozone (v1.20) * MENU/OZONE: Touchscreen improvements (v1.20) * MENU/OZONE: Add a touch-sensitive Resume button in the lower right corner (v1.20) * MENU: Support local thumbnails in other image formats than png (jpg/jpeg, bmp, tga) (v1.20) * MENU: Delete also savestate thumbnails when savestates are garbage collected (v1.20) * MENU: Option to disable analog stick menu navigation (v1.20) * MENU: Fix pause toggle to not clear fast forward state (v1.20) * MENU: Fix search playlist index in XMB/Ozone (v1.20) * MENU: Fix renamed entry display (v1.20) * MENU: Filter unknown extensions also inside zip files (v1.20) * MENU: Add icons for present / missing firmware on core info page (v1.20) * MENU: Ignore other hotkeys when menu toggle is pressed (v1.20) * MENU: Fix menu jumping when using L3+R3 combo (v1.20) * MENU: System Information now only shows features relevant for the platform (v1.20) * MENU: Add warning to BFI and related menu items (v1.21) * MENU: Fix latency statistics when using runahead (v1.21) * MENU: Fix opening file inside archive with core selection (v1.21) * MENU: Main menu unified between different menu drivers (v1.21) * MENU: Visibility toggle for playlist tabs (v1.21) * MENU: Color the notification icon by message category (v1.21) * MENU: Gray Dark+Light theme adjustments (v1.21) * MENU/PLAYLISTS: Random selection/shuffle function (v1.21) * MENU/RGUI: Cleanups of certain menu items (v1.21) * MENU/RGUI: Thumbnail fixes (v1.21) * MENU/OZONE: Fix messagebox background (v1.21) * MENU/XMB: Fix Light theme, font shadow (v1.21) * MENU/XMB: Appearance menu cleanup (v1.21) * MENU/XMB: Icon thumbnail can be any of the existing types (v1.21) * MIDI: Fix lingering notes on close in Alsa driver (v1.20) * MIDI: Add dropdown items for midi device selection (v1.21) * OVERLAY: Add option to load overlay based on system name (v1.20) * OVERLAY: Fix overlay lightgun, mouse & pointer (v1.21) * OVERLAY: Preferred overlay loading is now default only on mobile platforms (v1.21) * OVERLAY: Improve analog recentering when touching the area just outside the recentering zone (v1.21) * REPLAY: Replay format extended to support external tools (v1.20) * REPLAY: Fix issue when replaying old format input recordings in newer RetroArch (v1.21) * RECORDING: New WAV recording driver (audio only) (v1.20) * REMOTE RETROPAD: Add gyro/acceleration/light sensor test screen (v1.20) * REMOTE RETROPAD: Add pointer test screen (v1.20) * SAVESTATES: Reset state index when loading new content (v1.21) * VIDEO/KMS: Force fullscreen when KMS is used (v1.20) * VIDEO/OpenGLES: Improve version directive granularity (v1.20) * VIDEO/SHADERS: Fix memory leak when shader parameter step is 0.0 (v1.20) * VIDEO/SHADERS: Add 2 uniforms, OriginalAspect and OriginalAspectRot. (v1.20) * VIDEO/SHADERS: Add CoreFPS and FrameTimeDelta uniforms. (v1.20) * VIDEO/SLANG: Support optional includes (v1.20) * VIDEO/VULKAN: Fix Vulkan window freezes when swapchain becomes suboptimal (v1.20) * VIDEO/VULKAN: Prefer IMMEDIATE mode without vsync (v1.20) * VIDEO/X11: Support inhibit of Xss screensaver (v1.20) * VIDEO: Show and use exact refresh rate (3 decimals) and interlace/doublestrike where available (v1.20) * VIDEO: Allow setting viewport bias to offset viewport horizontally/vertically (v1.20) * VIDEO: Support viewport bias also with integer overscale and custom aspect ratios (v1.20) * VIDEO: Use shader path from CLI for shader cycling (v1.20) * VIDEO: Pixel perfect integer scaling improvements: axis options, smart mode (v1.20) * VIDEO: Add upscale 1.66x filter (v1.20) * VIDEO/OpenGLES: Fix FP/sRGB FBO support (v1.21) * VIDEO/SHADERS: Allow exact refresh rate sync with shader subframes (v1.21) * VIDEO/SHADERS: FIX shader wildcards (v1.21) * VIDEO/VULKAN: Enable adaptive vsync (v1.21) * WAYLAND: Fix segfault when relative pointer is not supported (v1.20) * WAYLAND: Use reverse DNS name for desktop file and icon (v1.20) * WAYLAND: Commit viewport resizes for more responsive display when resizing window (v1.20)
1 parent d4ff462 commit efb24dc

1 file changed

Lines changed: 10 additions & 4 deletions

File tree

scriptmodules/emulators/retroarch.sh

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
rp_module_id="retroarch"
1313
rp_module_desc="RetroArch - frontend to the libretro emulator cores - required by all lr-* emulators"
1414
rp_module_licence="GPL3 https://raw.githubusercontent.com/libretro/RetroArch/master/COPYING"
15-
rp_module_repo="git https://github.com/retropie/RetroArch.git retropie-v1.19.0"
15+
rp_module_repo="git https://github.com/retropie/RetroArch.git retropie-v1.21.0"
1616
rp_module_section="core"
1717

1818
function depends_retroarch() {
@@ -233,7 +233,8 @@ function configure_retroarch() {
233233

234234
# rgui by default
235235
iniSet "menu_driver" "rgui"
236-
iniSet "rgui_aspect_ratio_lock" "2"
236+
# RGUI aspect ratio - set it to 4:3 for non-KMS platforms due to RA issue #17650)
237+
! isPlatform "kms" && iniSet "rgui_aspect_ratio_lock" "2"
237238
iniSet "rgui_browser_directory" "$romdir"
238239
iniSet "rgui_switch_icons" "false"
239240
iniSet "menu_rgui_shadows" "true"
@@ -295,8 +296,13 @@ function configure_retroarch() {
295296
# if no menu_driver is set, force RGUI, as the default has now changed to XMB.
296297
_set_config_option_retroarch "menu_driver" "rgui"
297298

298-
# set RGUI aspect ratio to "Integer Scaling" to prevent stretching
299-
_set_config_option_retroarch "rgui_aspect_ratio_lock" "2"
299+
# set RGUI aspect ratio to "Auto" on KMS (due to issue RA#17650) or 'Integer Scaling' for other platforms,
300+
# the latter prevents the resizing of the menu to the core viewport size
301+
if isPlatform "kms"; then
302+
iniSet "rgui_aspect_ratio_lock" "0"
303+
else
304+
_set_config_option_retroarch "rgui_aspect_ratio_lock" "2"
305+
fi
300306

301307
# if no menu_unified_controls is set, force it on so that keyboard player 1 can control
302308
# the RGUI menu which is important for arcade sticks etc that map to keyboard inputs

0 commit comments

Comments
 (0)