
Changelog 1.9.6ARCHIVE: Fix archive delimiter detection when file path contains no slashesANDROID: Do not duplicate port 0 mouse and gun inputs to other portsAUDIO/XAUDIO2: Fail instead of crashing when disconnecting an audio deviceCHEEVOS: Reset cached progress each time menu is openedCRT/SWITCHRES: Add support for switchres.ini core and directory overridesD3D11: Don't use allow tearing flag with blit swap chains. Also disables the flip model if the allow tearing flag is not supported.D3D11: Disable DXGI's ALT+ENTER handlingD3D11: Don't pass ALLOW_TEARING when unsupportedD3D11: Fix non-vsynced output without flip, black screens in fullscreenD3D12: Relcoated 'd3d12_gfx_sync'D3D12: Fixed swap interval optionGFX: Fix uninitialized variables in gfx_display_draw_cursorHISTORY: Hide 'Add to Favorites' when viewing an entry of the favorites playlistINPUT: 'Analog to Digital Type' usability improvementsINPUT: Add support for mapping multiple controllers to a single input deviceINPUT/REMAPPING: Add support for mapping multiple controllers to a single input deviceINPUT/LIGHTGUN: Bind lightgun trigger to first mouse button by defaultINPUT/WINDOWS/RAWINPUT: Mouse access violation fixINPUT/UDEV: Only add mouse if it has buttons and add vebose device friendly namesINPUT/UDEV: Skip mouse with no button errors and keep the restINPUT/UDEV: Fix Game Focus modeINPUT/UDEV/X11: Change udev driver for dual lightgun support in X11LIBNX/SWITCH: Update to libnx 4.0.0LOCALIZATION: Fetch translations from CrowdinLOCALIZATION: Fix Switchres menu textsMENU/OZONE: Ensure sidebar display status is updated correctly when performing rapid menu navigationMENU/XMB: Dynamic wallpaper fixMENU/XMB: Icon opacity fixMENU/QT/WIMP: Fix default core detection when playlist file name does not match 'db_name'PLAYLISTS: Optimise scanning of large rom setsSECURITY: Plug so-called high-risk vulnerability related to Powershell - avoid injection - don't send speech input as commandline argumentUWP/XBOX: Add expanded resources Rescap to increase performance of UWP version in app mode on XboxWINDOWS/INSTALLER: Add smarter isEmptyDir reference implementation that looks for subdirectories from NSIS documentationWINDOWS/INSTALLER: Register new function DirectorySet that is called when pressing the "Next" button on the MUI_PAGE_DIRECTORY, aka the install folder selection GUI. DirectorySet contains the criteria for an acceptable folder, which are:IfFileExists "$INSTDIR\retroarch.exe" returns 1IfFileExists "$INSTDIR\*.* returns 0, there is no existing folderIfFileExists "$INSTDIR\*.*" returns 1, there is a folder, and isEmptyDir returns 1, therefore the folder is empty, including of subdirectoriesX11: Fix threaded video segfault