1. RetroArch
  2. News

RetroArch News

RetroArch 1.14.0 release

RetroArch 1.14.0 has just been released.

Read the full article on our website here.

Check our Libretro Core Progress Report (May to December 2022) article here.

Changelog
  • CHEEVOS: Fix construction of Cheevos badge path
  • CLI: Fixed not getting any output when running --version or --features without --verbose
  • CLI: Fixed crash when running empty - parameter (it proceeded to content loading)
  • CLI: Reformatted --features to require less rows and to be more consistent
  • CLI: Added -V shorthand for --version
  • CLI: Tab removal + whitespace nits
  • CONFIG/MIDI: Prevent MIDI startup error with old configurations
  • D3D11: Fix when using shaders with TATE mode arcades etc
  • D3D12: Fix when using shaders with TATE mode arcades etc
  • D3D12: Added support for break on errors (development aid - define DEVICE_DEBUG to use)
  • D3D12: Added support for DRED (device remove extended data) (development aid - define DEVICE_DEBUG to use)
  • D3D12: Made D3D12 viewport and scissors to behave more like Vulkan drivers (or be more correct)
  • D3D12: Fixed validation error on start up due to buffers not being setup correctly for one frame
  • DATABASE/EXPLORE/VIEW: Bugfix - RGUI did not clear thumbnail on non-playlist items such as Save and Delete menu_explore_get_entry_playlist_index() returns -1 on invalid entries, but the variable where it was stored was unsigned
  • DATABASE/EXPLORE/VIEW: Bugfix - XMB+Ozone cleared thumbnail in Quick Menu when navigating away from Run
  • FASTFORWARD: Restore framelimit on fastforward toggle. Fast-forward was broken after toggling vrr_runloop off, since it will force frame limit to 1.0 (even on every frame) and never restores it. So let's make sure the wanted ratio is applied when toggling FF (Fastforward).
  • GFX/VIDEO FILTERS: (picoscale_256x_320x240) Added snn function to upscale Fuse (ZX Spectrum) core borderless output to 320x240. ZX Spectrum resolution of 256x192 was previously unsupported.
  • HOTKEYS: Further reorder internal hotkey items for consistency and removed SEND_DEBUG_INFO, OVERLAY_NEXT and OSK from visible hotkey bind list. "Send Debug Info" stuff is removed as much as possible without breakage due to translation files.
  • INPUT/AUTOCONFIG: Disable 'pause on controller disconnect' by default - was enabled by default on 1.13.0
  • INPUT/MENU: Device Index menu refactor
  • INPUT/OVERLAY: Fix analog drift blocking touch input (could occur on overlay_next if physical inputs shown on overlay)
  • INPUT/OVERLAY: Fix overlay_next buttons lighting up in unison
  • INPUT/OVERLAY: Skip meta keys in input_overlay_add_inputs (not supported by input_state_internal)
  • INPUT/WINDOWS/WINRAW: Fix mouse position when using input overlay with mouse cursor
  • INPUT/WINDOWS/WINRAW: Fixed mouse position to use the same method required for menu items and pointer when simulating input overlays with mouse, since it won't work with multi mouse method
  • INPUT/WINDOWS/WINRAW: Fixed passing mouse position to core also when using aforementioned method
  • LOCALIZATION: Updates
  • LOCALIZATION/INPUT/IME/MENU/ONSCREEN KEYBOARD: Extended IME and Korean OSK
  • MENU: Cleanup of help texts
  • MENU: Allow toggling info off with the same button
  • MENU: Allow menu wallpaper/background reset. Let's also remove the current wallpaper from the screen when pressing Start.
  • MENU: Null driver shows with different color (Added for all menus the ability to show "disabled" items with a muted color)
  • MENU/DRIVERS: Menu driver first, Audio Resampler removed because it is enough to exist under audio settings
  • MENU/INPUT: Moved "Confirm Quit" to Input menu
  • MENU/INPUT/HOTKEYS: Input hotkey menu completely overhauled to keep related entries together, and also adjusted some labels and sublabels
  • MENU/OVERLAY: Fix overlays behind menu without core running. "Show Overlay Behind Menu" is currently broken with Ozone and XMB (with any other color theme than Plain) when running without a core.
  • MENU/MATERIALUI: Fix home screen on first startup - no more stray entries
  • MENU/OZONE: Allowed drawing sidebar and thumbnail bar background color also when core is running
  • MENU/OZONE: Stopped using different padding and position for savestate thumbnails vs imageviewer
  • MENU/OZONE: Removed gradient background effect when core is running, because some themes already have gradient background, which creates ugly rough steps
  • MENU/OZONE: Fixed "Gray Light" theme from using the same background as "Gray Dark", which makes selection cursor near impossible to see
  • MENU/OZONE: Some whitespace corrections
  • MENU/UX: Extend OFF menu value colors
  • MENU/UX: Menu icon improvements - Menu Visibility icons (Quick Menu + Settings)
  • MENU/UX: Menu icon improvements - Playlist Manager icons
  • MENU/UX: Menu icon improvements - Explore icon as database icon
  • MENU/UX: Menu icon improvements - View and filter icons as cursor icon (folder icon in GLUI)
  • MENU/UX: Menu icon improvements - View save + delete icons
  • MENU/UX: Menu icon improvements - Moved Explore + Views below Standalone Cores
  • MENU/UX/OZONE: Removed icons from menus where others items don't have icons, and added icons to menus where the rest have icons
  • MENU/UX/OZONE: Changed the way "no icon" is handled from kludgy way of not drawing SUBSETTING icon
  • MENU/UX/XMB: Changed playlist entry index positioning to bottom right when thumbnails are in vertical mode, because big lists will overlap with arrow and current "breadcrumb" icons when the position is next to current selection
  • MENU/UX/XMB: Added a rather nasty hack to prevent showing wrong icons under Explore as "breadcrumb" icon
  • MENU/UX/XMB: Optimized certain icon drawing loops (Main horizontal icons were looped even when not visible, and all previous "breadcrumb" icons were looped when only one certain was needed)
  • MENU/UX/MATERIALUI: Fixed showing icons where there should not be any (Waitable Swapchains, Show Recording + Streaming)
  • SRAM: Don't init SRAM saving without content (gets rid of the redundant logging)

Ep128 core added

New core added for RetroArch Steam

https://store.steampowered.com/app/2234340/RetroArch__ep128emu/

You can download this core either from within RetroArch Steam by going to Manage Cores, or by simply downloading it for free from Steam.

There are now 54 cores available in total for RetroArch Steam.

Leverage the convenience of libretro/RetroArch to emulate the Z80 based home computers that the original ep128emu supports - that is, Enterprise 64/128, Videoton TVC, Amstrad CPC and ZX Spectrum. Focus is on Enterprise and TVC.

Since the emulated machines are 8-bit platforms from the 1980's, modern setups should have no problem emulating them. Tested on Raspberry Pi 2.

RetroArch 1.13.0 release

RetroArch 1.13.0 has just been released.

Read the full article on our website here.

Overlay / onscreen gamepad controls improvements

Android/iOS users in particular are going to benefit a lot in this release and upcoming versions from various improvements being made to neil4 to overhaul and improve touch controls.

Several gamepad overlays have already been updated to take advantage of these new features. These are as follows:

  • gamepads/neoretropad
  • gamepads/neoretropad-clear


There are also new ‘lite’ overlays that take advantage of all the new features described below. In particular, the lite overlays rely heavily on ‘exclusive’ hitboxes.

Let’s go into what has been added so far to this release:

[h2]Add eightway area types[/h2]

  • New descriptors: ‘dpad_area’ and ‘abxy_area’
  • Each has a diagonal sensitivity setting, 100% being 8-way symmetry
  • Buttons can be redefined in the cfg file


E.g. This would create a d-pad area, then redefine it to use analog directions:

overlay0_desc0 = “dpad_area,0.85,0.57,rect,0.166228,0.295516”
overlay0_desc0_up = “r_y_minus”
overlay0_desc0_down = “r_y_plus”
overlay0_desc0_left = “r_x_minus”
overlay0_desc0_right = “r_x_plus”

Note: If ‘Hide Overlay in Menu’ is enabled and the menu is up, the overlay preset will be read (loaded & unloaded without being shown) to know which overlay types are in the preset, i.e. whether to show eightway settings or not.

[h2]Add ‘reach’ and ‘exclusive’ for hitboxes[/h2]
These allow stretching (or shrinking) hitboxes and handling their overlap. Does not affect image, analog range, or analog/eightway center.

[h3]Hitbox Reach[/h3]
reach_up, reach_down, reach_left, reach_right:

  • Stretches hitbox in one direction:

reach_x, reach_y
  • Stretches hitbox symmetrically

E.g. In the overlay cfg, this creates a D-Pad area and extends its hitbox left & right 50%, up 15%, and down 30%:

overlay0_desc0 = “dpad_area,0.15,0.57,rect,0.166228,0.295516”
overlay0_desc0_reach_x = 1.5
overlay0_desc0_reach_up = 1.15
overlay0_desc0_reach_down = 1.3

[h3]Exclusive Hitboxes[/h3]
exclusive:

If true, blocks input from overlapped hitboxes

range_mod_exclusive:

Similar, but only applies when this hitbox is extended by range_mod
After range_mod takes effect, has priority over ‘exclusive’
E.g.

overlay0_desc0_exclusive = true
overlay0_desc1_range_mod_exclusive = true

Expected use cases:

  • A ‘range_mod_exclusive’ hitbox placed close enough to other hitboxes that its range_mod value would otherwise cause unwanted overlap.
  • A smaller ‘exclusive’ hitbox placed inside (or partially inside) a larger one; the smaller hitbox would “carve out” space for itself.
  • A combination of the two: A smaller ‘exclusive’ hitbox carves out space for itself, but the larger hitbox has ‘range_mod_exclusive’. Whichever is hit first effectively has priority.
  • Ignore hitboxes with zero area

I.e. Set ‘reach_x’ or ‘reach_y’ to zero to ensure no hitbox math is done.

This simplifies designating animation-only descriptors (e.g. for eightway areas) or obsolete descriptors.

Content scanning

PS1 and PS2 content scanning has been improved significantly in RetroArch. All PS2 discs should now be able to be scanned. Previously, only CD-based PS2 games could be scanned and not DVD-based ones.

PS1 content scanning has also been improved. More content should be able to be recognized now that the system is also able to scan PSX.EXE files on a disc. For instance, it was not possible to scan ‘Street Fighter: Real Battle on Film’ before because of this. Also, all LSP- titles were previously ignored, which has also been fixed.

Menu QoL improvements

Various improvements made to the menu system in terms of usability and UX thanks to sonninos.

  • Quick Menu entries were pretty random in regards of doing scrolling with left & right, so it’s been cleaned up a bit, and we made sure all submenus behave in unison.
  • Ozone – Show metadata helper in footer only with second thumbnail. Removed metadata toggle helper from footer when second thumbnail is not enabled – which is the default – because the button won’t do anything without second thumbnail enabled.
  • We made the background image selector usage more comfortable by starting from assets directory or current selection instead of drive letter root, and showing image previews while browsing.
  • File selector globally removes file from selection path, uses path instead and sets file as selection
  • File selector title corrected to have : separator
  • It’s possible to control the menu now with the right analog stick, or both at the same time if you want to do so.
  • Cursor memory for most menu screens
  • (Applicable to Ozone) Footer improvements – show metadata helper in footer only with second thumbnail, add “Cycle thumbnails” helper when suitable, show “Search” helper only when search function is enabled, fix “Thumbnails available” helper for save states, tighten padding between icon and title, and widen between helpers

For a more exhaustive list of all changes made to the menu, consult the Changelog.

Vulkan fix for HDR mode

After RetroArch 1.11.1, an unexpected side effect caused many shaders (e.g. crt-easymode-halation or newpixie.crt) to render an oversaturated and dark image when using Vulkan and HDR on Windows 10/11. To fix this now with the Vulkan driver, we only skip the tonemapper if HDR10 is explicitly enabled by the last shader pass. Otherwise, we are simply just inheriting the bit-depth of the swapchain.

Changelog
  • CHEEVOS: Upgrade to rcheevos 10.5
  • COMPILATION: Fixed compiling with –disable-menu
  • CONFIG: Don’t show override notification with appendconfig alone
  • DATABASE/PLAYLISTS: Playlist + database changes – Cleanup ‘entry_slot’, fallback label + logging
  • FRONTEND: Fix default remaps folder for various cores: remap should … …be nested in config folder
  • HOTKEYS: Fix shader toggle and add hotkey + sublabel
  • HOTKEYS: Cleanups and corrections – Keep hotkey pause and menu pause separate in order to not trigger unwanted pause when toggling menu regardless if menu will pause or not
  • HOTKEYS: Cleanups and corrections – Allow unpausing with Start (makes resuming more convenient after controller disconnect if menu does not pause)
  • INPUT: Fixed the way devices were previously indexed. Input devices were only being indexed in order and would stop at the first time an input has no device connected to it. The problem is when a device gets disconnected, that input will have no devices connected to it, but the next input may still have a device connected. So, that makes changing the port of the currently connected devices impossible.
  • INPUT/AUTOCONFIG: Add option for pause on controller disconnect
  • INPUT/AUTOCONFIG: Driver independent disconnection notification. Should show disconnect notification now properly on Windows with XInput and/or DirectInput pads
  • INPUT/HID: Added usb hid controllers for the famous ZeroDelay encoder and also for “Kade: Kick Ass Dynamic Encoder” to be able to use some custom arcade sticks.
  • INPUT/OVERLAY: Add eightway area types.
  • INPUT/OVERLAY: Fix overlay next_index for unnamed targets
  • INPUT/OVERLAY: Ignore hitboxes with zero area. I.e. Set ‘reach_x’ or ‘reach_y’ to zero to ensure no hitbox math is done. This simplifies designating animation-only descriptors (e.g. for eightway areas) or obsolete descriptors.
  • INPUT/OVERLAY: Add ‘reach’ and ‘exclusive’ for hitboxes. Allows stretching hitboxes and handling their overlap.
  • INPUT/MENU: Addition to analog stick menu navigation
  • INPUT/MENU: Enable menu navigation also with right analog stick
  • INPUT/MENU: Add option for swapping menu scrolling buttons
  • LOCALIZATION: Updates
  • LOCALIZATION: Add Hungarian language option
  • MENU: Thumbnail fullscreen toggle behavior correction
  • MENU: Consistent left-right scrolling for Quick Menu items
  • MENU: Remove useless sublabel from System Information
  • MENU: Improve widget appearance with missing assets
  • MENU/QT/WIMP: Remove SSL/TLS check at startup
  • MENU/OZONE: Show metadata helper in footer only with second thumbnail
  • MENU/OZONE: Footer improvements – Add “Cycle thumbnails” helper when suitable
  • MENU/OZONE: Footer improvements – Show “Search” helper only when search function is enabled
  • MENU/OZONE: Footer improvements – Fix “Thumbnails available” helper for save states
  • MENU/OZONE: Footer improvements – Tighten padding between icon and title, and widen between helpers
  • MENU/OZONE: Launching anything from a View no longer throws Quick Menu off the screen
  • MENU/OZONE: Save state thumbnails in slot dropdown obeys fullscreen toggle properly when content launched via CLI
  • MENU/OZONE: Save state thumbnail dropdown won’t allow fullscreen toggle when it shouldn’t
  • MENU/OZONE: Selection position remembering in non-playlists won’t flash the first entry
  • MENU/OZONE: Remember selection per main tabs
  • MENU/OZONE: Remove incomplete assets warning
  • MENU/OZONE: Add option to adjust cursor memory when changing menu tabs
  • MENU/OZONE: Further extend texture support for Core Option categories
  • MENU/XMB: Remove incomplete assets warning
  • MENU/XMB: Add truncate playlist name option
  • MENU/XMB: Improve background image selector
  • MENU/XMB: Add option to adjust cursor memory when changing menu tabs
  • MENU/XMB: Further extend texture support for Core Option categories
  • MENU/MATERIALUI: Remove incomplete assets warning
  • SCANNER/PS1: Improved scanning of PS1 discs
  • SCANNER/PS2: Added serial scanning of PS2 discs – should now scan DVDs and other discs which were previously missed
  • THREADED VIDEO/GLCORE: Fix regression ‘Shader presets dont load, when video driver is set to glcore’
  • VULKAN: Fix HDR inverse tonemapping. Only skip tonemapper if HDR10 is explicitly enabled by last shader pass. Otherwise, we are simply just inheriting the bit-depth of the swapchain.

RetroArch 1.12.0 release!

RetroArch 1.12.0 has just been released.

Read the full article on our website here.

Views

There is now an entirely new way to display and organize content – Views!
You can turn a filter set in the Explore menu into a so called “View” file which then gets listed alongside playlists. This also adds the ability to filter a category by range in the Explore menu and not just filter on exact matches.

The views are saved into .lvw (libretro view) files that just like playlist .lpl (libretro playlist) files are in JSON format and are stored in the same playlists directory.

You can combine several filters in whichever order you see fit and then save the results as a viewYou can combine several filters in whichever order you see fit and then save the results as a view
Here’s some examples of views that are now possible with the new range filtering:

  • Games made between 1992 and 1996 by developers Capcom and Capcom Production Studio 1
  • Games supporting 5 to 8 players
  • Games containing “Mario” in the title released between 1988 and 1994


These are just some examples of what is possible with this new system. It’s a pretty powerful system, and we hope this gives you a lot of flexibility to better organize your content.

Changelog
1.12.0

  • CONFIG/CLI: Allow use of –appendconfig with override cfgs instead of getting ignored
  • CONFIG/LOGGING: No more console startup logging if logging to file
  • CONFIG: Saves config on exit only once instead of (worst case scenario) 3 times
  • DATABASE/EXPLORE/VIEW: Add View feature – Add saving of a filter set in the Explore menu into a so called “View” file which then gets listed alongside playlists. This also adds the ability to filter a category by range in the Explore menu and not just filter on exact matches.
  • FILEBROWSER: Fix regression – certain extensions keep disappearing
  • INPUT/HAPTIC/OVERLAYS/ANDROID: Improve haptic feedback for input overlays
  • LINUX/MALI FBDEV: Add conditional support for OpenGL ES 3.x
  • LOCALIZATION: Updates
  • LOCALIZATION/ENGLISH: Add British English language option
  • LOGGING/QT: Increase log buffer to 2048 characters – Vulkan validation layer messages output correctly now.
  • MENU/XMB: Remember selection per main tabs. Addresses the following : collection playlists can contain hundreds or thousands of items. When scrolling through one, pressing left or right by accident can be common. This resets the playlist to the top
  • MIST/STEAM/STEAMDECK: Don’t expose Black Frame Insertion (BFI) if we are running on a Steam Deck
  • NETWORKING/WINDOWS: Disable poll support for MSVC 2010 and earlier. WSAPoll is not supported on Windows XP and earlier.
  • SAVESTATES/NOTIFICATIONS: Add delay to savestate notifications, so that GPU savestate screenshots stay untouched
  • SAVESTATES/SCREENSHOTS: Avoid ‘video_gpu_screenshot’ with savestates. Allow GPU screenshots with savestates only when there is no other way of getting a screenshot.
  • SCREENSHOTS/VULKAN: Unload screenshot widget texture early. Fixes Vulkan crash when closing content while a screenshot widget is still on-screen
  • SCREENSHOTS/VULKAN: Fix screenshot widget crash when ticker animating
  • WAYLAND: Set correct app ID

RetroArch 1.12.0

Changelog:
- CONFIG/CLI: Allow use of --appendconfig with override cfgs instead of getting ignored
- CONFIG/LOGGING: No more console startup logging if logging to file
- CONFIG: Saves config on exit only once instead of (worst case scenario) 3 times
- DATABASE/EXPLORE/VIEW: Add View feature - Add saving of a filter set in the Explore menu into a so called "View" file which then gets listed alongside playlists. This also adds the ability to filter a category by range in the Explore menu and not just filter on exact matches.
- FILEBROWSER: Fix regression - certain extensions keep disappearing
- INPUT/HAPTIC/OVERLAYS/ANDROID: Improve haptic feedback for input overlays
- LINUX/MALI FBDEV: Add conditional support for OpenGL ES 3.x
- LOCALIZATION: Updates
- LOCALIZATION/ENGLISH: Add British English language option
- LOGGING/QT: Increase log buffer to 2048 characters - Vulkan validation layer
messages output correctly now.
- MENU/XMB: Remember selection per main tabs. Addresses the following : collection playlists can contain hundreds or thousands of items. When scrolling through one, pressing left or right by accident can be common. This resets the playlist to the top
- MIST/STEAM/STEAMDECK: Don't expose Black Frame Insertion (BFI) if we are running on a Steam Deck
- NETWORKING/WINDOWS: Disable poll support for MSVC 2010 and earlier. WSAPoll is not supported on Windows XP and earlier.
- SAVESTATES/NOTIFICATIONS: Add delay to savestate notifications, so that GPU savestate screenshots stay untouched
- SAVESTATES/SCREENSHOTS: Avoid 'video_gpu_screenshot' with savestates. Allow GPU screenshots with savestates only when there is no other way of getting a screenshot.
- SCREENSHOTS/VULKAN: Unload screenshot widget texture early. Fixes Vulkan crash when closing content while a screenshot widget is still on-screen
- SCREENSHOTS/VULKAN: Fix screenshot widget crash when ticker animating
- WAYLAND: Set correct app ID