STLcardsWS
Administrator
-
RetroArch v1.8.2
Changes
We could write an entire book about all the changes, improvements and features that made this release what it is thanks to our dedicated inhouse team and all the generous contributors that continue to contribute to the project. So without further ado, view our changelist below – and realize that there are many things we might not have even covered in this release –
1.8.2
- BUG/CRASH/GLSLANG: Fix glslang crashing error – managed to reproduce an issue which has been plaguing users for a while, where glslang throws an assert after closing a game (and starting a new one). This would affect all video drivers that use Slang for shaders, such as D3D10/11/12/Vulkan/Metal
- CHEEVOS: Display Unofficial and Unsupported achievement states
- CHEEVOS: Pass RetroArch and core versions through User-Agent HTTP header
- CHEEVOS: Use PSX.EXE if SYSTEM.CNF cannot be found
- CHEEVOS: Prevent loading state while achievements are still being fetched from server
- CHEEVOS: Pause hardcore if core doesn't support achievements
- CHEEVOS/CRASH: Fix AddressSanitizer + CHD cause hard crash when Cheevos are enabled
- CORE UPDATER: Only download when new core is available
- CORE UPDATER: Add option to update all installed cores
- DRM/KMS: Better detection for the current video mode
- DYNAMIC RATE CONTROL: Support DRC even when using a vsync swap interval higher than 1
- EMSCRIPTEN: Fix bug in Emscripten input code
- EMSCRIPTEN: Changes to support upgraded emscripten SDK
- FFMPEG CORE: Hardware accelerated video decoding
- FFMPEG CORE: Implement send/receive encoding API, will allow for hardware accelerated AMD video encoding
- FFMPEG CORE: The video FIFO can be removed, since we have a ring buffer in its place. This removes unneeded copy operations and as a positive side improves overall decoding speed. Makes 8k60p SW and 4k60p HW decoding feasible on many systems. For now the ring buffer is 32 images deep. This limitation will be removed, once audio and video decoder have their own packet handling.
- INPUT: Fix 'Analog stick controls menu even if autoconfig disabled'
- INPUT/TURBO: Added alternate Turbo-Mode 'Single Button' – For systems supporting only a single button, the turbo-button will toggle firing that button without the need to hold it. When holding the button turbo will be suspended and resumed when the button is released. Holding the button may have a different function to just tapping it.
- IOS: Forcibly disable Threaded Video until UIWindow concurrency issues are fixed
- INPUT/ANALOG: Fix radial analog deadzone scaling
- INPUT/ANALOG: Implement proper analog button deadzone
- INPUT/MENU: Analog stick controls menu even if autoconfig disabled
- LOCALIZATION: Update Italian translation
- LOCALIZATION: Update French translation
- LOCALIZATION: Update Polish translation
- LOCALIZATION: Update Portuguese Brazilian Translation
- LOCALIZATION: Update Turkish translation
- LINUX/LOCALIZATION: Correct Droid Sans Fallback font path in Linux. This should fix Chinese/Korean font display issues on Fedora/RHEL/CentOS/openSUSE/SLE
- MENU/BUGFIX: When using a keyboard/gamepad/mouse wheel to navigate, the menu scroll position is always maintained and updated in a consistent (and expected) fashion
- MENU/BUGFIX: When resizing the window, or changing the orientation of a mobile device, the current scroll position is correctly preserved
- MENU/BUGFIX: All 'normal' pointer input is now inhibited when showing message boxes
- MENU/BUGFIX: The pointer actions 'select' and 'cancel' both now properly close a message box if it is currently being shown
- MENU/BUGFIX: Pointer 'select' and 'cancel' actions are now inhibited when an input bind dialog is active
- MENU/INPUT: Change 'User' terminology to 'Port' for input binding
- MENU/LINUX: Add proper drives to Load Content
- MENU/MATERIALUI: Halt scrolling when pointer is pressed/stationary
- MENU/MATERIALUI: Dual thumbnail view
- MENU/MATERIALUI: Fullscreen thumbnail viewer for boxart
- MENU/MATERIALUI: Scroll rapidly by press and holding the scrollbar
- MENU/RGUI: New theme 'Flux'
- MENU/OZONE: Thumbnails now have a fade-in animation
- MENU/OZONE: Fullscreen thumbnail viewer for boxart and pictures
- MENU/QT/WIMP: Fix dock titles getting cut off
- MENU/XMB: Fullscreen thumbnail viewer for boxart and pictures
- MENU/USABILITY: Selectively hide 'Disallow Non-Slave Mode Clients' if 'Allow Slave-Mode Clients' is disabled
- MENU/USABILITY: Hide 'Show desktop menu on startup' if 'Desktop menu' setting itself is disabled
MENU/USABILITY: Reimplement Quick Menu – > Shaders -> Watch shader files for changes – can now be turned on/off through touch - MENU/USABILITY: Refactor Quick Menu – Controls – each port now has its own submenu
- MENU/USABILITY: Quick Menu – Cheats – Delete All no longer requires five right button presses – this should fix this functionality for mobile touch users too
- MENU/USABILITY: Hide Refresh Rate options when Threaded Video is enabled – these settings do nothing with Threaded Video
- MENU/USABILITY: Hide Logging Verbosity levels behind Logging Verbosity
- MENU/USABILITY: Get rid of 'Port Number' label for Port Binds screen
- MENU/USABILITY/MOBILE: Should no longer crash when clicking on a cheat entry
- MENU/USABILITY: Shader parameters now have a dropdown list
- MENU/USABILITY: Shader passes now has a dropdown list
- MENU/USABILITY: Video – Hide Windowed Mode settings selectively
- MENU/USABILITY: Video – Hide Fullscreen Mode settings if windowed mode is not supported by context driver
- MENU/USABILITY: Selectively hide Network Command Port
- MENU/USABILITY: Selectively hide Relay Server Location
- MENU/USABILITY: User Interface -> Appearance – Selectively hide XMB Horizontal Animation setting
- MENU/USABILITY: Playlists – more selective hiding
- MENU/USABILITY: Selectively hide Rewind Settings
- MENU/USABILITY: Selectively hide Overlay Settings
- MENU/USABILITY: Selectively hide FPS Update Interval based on Display Framerate being enabled
- MENU/USABILITY: Selectively hide Onscreen Notifications BG Color Settings
- MENU/USABILITY: Settings -> Logging – Hide 'Log To File Timestamp' if 'Log To File' is disabled
- MENU/USABILITY: Video -> Scaling – Hide Custom Viewport X/Y when Integer Scale is enabled as description indicates
- MENU/USABILITY: Achievement submenu – selectively hide
- MENU/USABILITY: Settings -> Video -> Aspect ratio – selectively hide/show values based on whether you have Custom or Config selected
- MENU/USABILITY: Settings -> Video -> Selectively hide Hard Sync
- MENU/USABILITY: Settings -> Video -> Implement selective hiding for VSync and Hard Sync
- MENU/USABILITY: Selective hiding of Runahead settings based on global setting
- MENU/USABILITY: Add Input -> Haptic Feedback submenu
- MENU/USABILITY: Add Input -> Menu Controls submenu
- MENU/USABILITY: Settings -> Video -> Max Swapchain Images – Add OK action
- MENU/USABILITY: Input – Implement OK action for Bind Hold, Turbo Period and Duty Cycle
- MENU/USABILITY: Input – Hotkey Binds refactor
- MENU/USABILITY: Move 'Press Quit Twice' and 'Menu Toggle Gamepad Combo' to Input -> Hotkey Binds
- MENU/USABILITY: Video – Add sublabel for Video Output submenu
- MENU/USABILITY: If 'Favorites Tab' is disabled, don't show 'Add To Favorites' option in Quick Menu/Playlist menu
- MENU/USABILITY: If On-Demand Thumbnail Downloader is enabled, hide 'Download Thumbnails' from playlist menu screen
- MENU/USABILITY: Add Audio Driver setting to Audio -> Output
- MENU/USABILITY: Add Audio -> Resampler settings
- MENU/USABILITY: Add Audio -> Output and Audio -> Synchronization
- OPENGL: Shaders are now working properly (only in OpenGL) when rotating both from Core API rotation and from menu video rotation. The fix is clearly visible with crt-royale for example
- OPENGL: 1:1 PAR is now correct when rotating (both from Core API rotation and from menu video rotation, as you said, in the latter case you currently have to change Aspect Ratio after menu video rotation for it to work)
- OPENGL: When using Custom Aspect Ratio and rotation (both from Core API rotation and from menu video rotation), Integer Scaling is now working properly (correct multiples of internal resolution). Even when Integer Scaling is not activated, the Custom AR width / height are now correctly labeled using (1x), (2x), … suffixes. You also have to activate Integer Scaling after menu video rotation for it to work
- OPENGL: For all other Aspect Ratio options, Integer Scaling and rotation (both from Core API rotation and from menu video rotation) are now working properly together (correct multiples of internal resolution). You also have to activate Integer Scaling after menu video rotation for it to work
- OPENBSD/POWERPC: Should build now on OpenBSD PowerPC
- PLAYLISTS: Pressing 'Start' or long touching a playlist will bring you to a Playlist submenu where you can set a default core, setup thumbnail view, delete the playlist, etc
- OSX: Forcibly disable Threaded Video until NSWindow concurrency issues are fixed
- PSP: Solving issue exiting RetroArch by HOME button
- SCANNER: Manual scanner, not dependent on database files
- SCANNER/MANUAL: Add option to scan inside archives
- SCANNER/MANUAL: Enable automatic naming of arcade content via DAT files. This is compatible with DAT files in either Logiqx XML or MAME List XML format.
- VIDEO: Do not reinit video driver on SET_SYSTEM_AV_INFO unless needed
- VIDEO: Support DRC even when using a vsync swap interval higher than 1
- VIDEO LAYOUT: Fixed XML parsing of attributes with spaces, should fix issues with several video layouts
- VITA: GL1 driver support
- VITA/VITA2D: Several improvements to Vita 2D driver – menu widgets implemented
- VITA/VITA2D: Fix clipping and reduce number of calls
- VULKAN/ANDROID: Workaround weird WSI return codes in landscape mode – Android WSI wants you to use preTransform, and if it is not used correctly, Android 10 will return VK_SUBOPTIMAL_KHR, and we would create a new swapchain every frame. This workaround just ignores this error, since it's not really an error. A more "proper" fix is to use prerotate and modify the MVP matrices, which might help certain devices with crummy display processors
- VULKAN/ANDROID: Recreate swapchain on orientation change. ANativeWindow getWidth/Height does not detect any changes when using Vulkan, so use the old onContentRectChanged callback to get notified when size changed. Use those values instead when figuring out how large swapchain to create
- WINDOWS/XINPUT: Get rid of 128 byte device name limit for XInput device discover – when device name was too long, it would not be picked up by the XInput driver and would instead fallback to DirectInput
- WINDOWS: ANGLE OpenGL ES 2 support
- UWP: Fix crashes on startup / prompt for folder permissions when trying to load custom.ini
- UWP: Fix – Mouse input is offset on high DPI monitors
- UWP: Fix – Keyboard input hangs sometimes
- UWP: Fix – Multi-touch support
- UWP: Fix – Enable menu touch input by default
- UWP: Fix – Get user language
- UWP: Fix – Get CPU model name
- UWP: Fix – Use GLUI instead of XMB on Windows Mobile 10
- UWP: ANGLE OpenGL ES 2 support
Read Complete Release Notes @ libretro.com -
Vita improvements
.v1.8.2 Changes
- VITA: GL1 driver support
- VITA/VITA2D: Several improvements to Vita 2D driver – menu widgets implemented
- VITA/VITA2D: Fix clipping and reduce number of calls
The Vita platform port has seen some significant improvements too.
We have a bounty now where we stress the importance of bringing over OpenGL 1 hardware context support to libretro. Many old game platforms have fixed function GPUs with a featureset roughly comparable to OpenGL 1.4, so it makes sense to have a hardware context for GL 1.x. Right now, Libretro offers a couple of options for people wanting to make cores implementing OpenGL – you can either target desktop OpenGL (of any particular version), or you can target OpenGL ES 2/3. The key requirement for both though is that it requires the use of FBO (Frame Buffer Object) – if your GPU and/or API has no support for that, it's over and out as far as GL core support is concerned.
OpenGL 1.x had no notion yet of FBOs, so obviously this hardware context will not have any such requirements. We encourage you to contribute to this bounty if you are excited about the potential this can bring to older game console platforms and other older hardware. You can find the link here.
Vita now has an OpenGL 1 driver implemented. As soon as the Libretro GL 1.x support is done, Vita users can stand to benefit from the GL-centric cores that can be brought over to Vita as a result.
However, for now, we heavily recommend you use the Vita2D driver as your primary video driver. Speaking of which, several improvements have been made to it as well – menu widgets have been implemented, and it should be more optimal now due to a reduction of draw calls.
Core Changes / Additions
.MAME 2000 — Faster Z80/68K CPU cores for ARM — Big performance boost on Vita
The MAME 2000 libretro core is now using the ARM-optimized Cyclone and DrZ80 CPU cores on PS Vita. We're going to be testing this out on various other 32bit ARM devices as well and rolling it out there as well. This should give a significant boost in performance and bring it in-line with MAME4All for 32bit ARM devices.
NOTE: Only the games that make heavy use of Z80 and 68K CPU cores will see significant performance gains from this.
BlueMSX
The MSX emulator core finally works for the first time on PSP and PS Vita
RACE — new Neo Geo Pocket Color emulator core
-See Progress Report Tab for more info-
-
PSP Improvements
.v1.8.2 Changes:
- PSP: Solving issue exiting RetroArch by HOME button
BlueMSX
The MSX emulator core finally works for the first time on PSP and PS Vita
RACE — new Neo Geo Pocket Color emulator core
-
- See download link below for v1.8.2-PS2,
- No PlayStation 2 specific changes have been listed in v1.8.2 changelogs,
-
- Currently as of writing there is no v1.8.2 release yet for the PS3
-
- There was an unofficial release port made on the PS4 (likely could become official in the future), but you can view that port and more information here >>> Link
-
Libretro Cores progress Report — Beetle PSX HW Dynarec news, New Neo Geo Pocket emulator core, and more!
.
RACE — new Neo Geo Pocket Color emulator coreWe have released the new SNK Neo Geo Pocket Color emulator core for the following platforms –
Description: SNK Neo Geo Pocket Color emulator
- Android
- iOS
- macOS
- PSP
- PS Vita
- Linux
- Switch
- Windows
You can get it right now on the Core Updater.
There might still be some savestate and netplay issues with this core. However, the main attraction of this core and by far its ultimate selling point is the performance. It is orders of magnitude faster than Beetle NGP. Watch the video to see exactly how substantial the performance improvement is. For lower-spec systems like PSP, PS2 and 3DS, Beetle NGP (being based on NeoPop) is not able to run at fullspeed, whereas RACE runs at fullspeed on PSP and PS Vita right now.
Beetle PSX HW
Description: PlayStation 1 emulator
* (Vulkan) When rendering games above their native resolution, textures would often become corrupted. Turns out this was a rounding issue. This has been fixed.
* (Dynarec) The Linux/Android portion of the project is getting close to completion, while the Windows part has kinda languished. Therefore, we have made the decision with the current dynarec bounty coders that we focus right now primarily on Linux/Android for an initial release, which hopefully can happen around the end of January. We think that once it's in people's hands and results are satisfactory on Android/Linux that the Windows issues can be sorted out from there on out. With CPU-bound games, performance should be roughly 2 times faster.
We are currently assembling testers on our Discord to put the dynarec on Linux to the test.
Beetle PCE Fast
Description: NEC PC Engine emulator
* Added mouse support
* Fix turbo button core option
KronosDescription: Sega Saturn emulator
* Update to version 2.0
BlueMSX (PSP/VITA)
Description: MSX home computer emulator
The MSX emulator core finally works for the first time on PSP and PS Vita.
Game & Watch — GW
Description: Game & Watch emulator
A regression was fixed in this core, it should finally work on Android again.
Atari 800
Description: Atari 800 home computer emulator
Fix for non-working virtual keyboard.
Virtual Keyboard didn't work at all.
Right now not all keys are mapped, but at least most important are working now.
FB NeoDescription: Multiple arcade machine emulator
FB Neo has been updated to the latest version.
MAME 2000 — Faster Z80/68K CPU cores for ARM — Big performance boost on Vita
Description: Multiple arcade machine emulator
The MAME 2000 libretro core is now using the ARM-optimized Cyclone and DrZ80 CPU cores on PS Vita. We're going to be testing this out on various other 32bit ARM devices as well and rolling it out there as well. This should give a significant boost in performance and bring it in-line with MAME4All for 32bit ARM devices.
NOTE: Only the games that make heavy use of Z80 and 68K CPU cores will see significant performance gains from this.
MAME 2003 Plus
Description: Multiple arcade machine emulator
* Fix for Eagle Shot Golf on ARM hardware
Flycast
Description: Sega Dreamcast/NAOMI emulator
* Avoid TA data buffer overflow. Fixes Ooga Booga crashes on multiplayer (offline and online)
* Vulkan: Workaround for Intel driver bug when depth write is disabled
* Vulkan: Add anisotropic filtering core option.
Downloads @: retroarch.com
News Source(s): libretro.com / medium.com/@libretro/
Last edited: