2022年10月19日 星期三

BGB 1.5.10

 GameBoy模擬器 BGB 發布新版,更新如下 :

  • Added experimental Xaudio2 support
  • Improved performance of VRAM viewer
  • Added support for "correct" order MMM01
  • Wine fixes: no graphcs on some setups. font related fixes.
  • Many accuracy improvements
  • Fixed many bugs

2022年10月13日 星期四

mGBA 0.10.0

 多機種模擬器 mGBA 發布新版,更新如下 :

Features
– Preliminary Lua scripting support
– Presets for Game Boy palettes
– Add Super Game Boy palettes for original Game Boy games
– Tool for converting scanned pictures of e-Reader cards to raw dotcode data
– Options for muting when inactive, minimized, or for different players in multiplayer
– Cheat code support in homebrew ports
– Acclerometer and gyro support for controllers on PC
– Support for combo “Super Game Boy Color” SGB + GBC ROM hacks
– Improved support for HuC-3 mapper, including RTC
– Support for 64 kiB SRAM saves used in some bootlegs
– Discord Rich Presence now supports time elapsed
– Additional scaling shaders
– Support for GameShark Advance SP (.gsv) save file importing
– Support for multiple saves per game using .sa2, .sa3, etc.
– Support for GBX format Game Boy ROMs
– New unlicensed GB mappers: NT (newer type), Sachen (MMC1, MMC2)
 
Emulation fixes
– ARM7: Fix unsigned multiply timing
– GB: Copy logo from ROM if not running the BIOS intro (fixes #2378)
– GB: Fix HALT breaking M-cycle alignment (fixes #250)
– GB Audio: Fix channel 1/2 reseting edge cases (fixes #1925)
– GB Audio: Properly apply per-model audio differences
– GB Audio: Revamp channel rendering
– GB Audio: Fix APU re-enable timing glitch
– GB I/O: Fix writing to WAVE RAM behavior (fixes #1334)
– GB MBC: Fix edge case with Pocket Cam register accesses (fixes #2557)
– GB Memory: Add cursory cartridge open bus emulation (fixes #2032)
– GB Serialize: Fix loading MBC1 states that affect bank 0 (fixes #2402)
– GB SIO: Fix bidirectional transfer starting (fixes #2290)
– GB Video: Draw SGB border pieces that overlap GB graphics (fixes #1339)
– GBA: Improve timing when not booting from BIOS
– GBA: Fix expected entry point for multiboot ELFs (fixes #2450)
– GBA: Fix booting multiboot ROMs with no JOY entrypoint
– GBA: Fix 1 MiB ROM mirroring to only mirror 4 times
– GBA Audio: Adjust PSG sampling rate with SOUNDBIAS
– GBA Audio: Sample FIFOs at SOUNDBIAS-set frequency
– GBA BIOS: Work around IRQ handling hiccup in Mario & Luigi (fixes #1059)
– GBA BIOS: Initial HLE timing estimation of UnLz77 functions (fixes #2141)
– GBA DMA: Fix DMA source direction bits being cleared (fixes #2410)
– GBA I/O: Redo internal key input, enabling edge-based key IRQs
– GBA I/O: Disable open bus behavior on invalid register 06A
– GBA Memory: Fix misaligned 32-bit I/O loads (fixes #2307)
– GBA Video: Fix OpenGL rendering on M1 Macs
– GBA Video: Ignore horizontally off-screen sprite timing (fixes #2391)
– GBA Video: Fix Hblank timing (fixes #2131, #2310)
– GBA Video: Fix rare crash in modes 3-5
– GBA Video: Fix sprites with mid-frame palette changes in GL (fixes #2476)
– GBA Video: Fix OBJ tile wrapping with 2D char mapping (fixes #2443)
– GBA Video: Fix horizontal lines in GL when charbase is changed (fixes #1631)
– GBA Video: Fix sprite layer priority updating in GL
 
Other fixes
– ARM: Disassemble Thumb mov pseudo-instruction properly
– ARM: Disassemble ARM asr/lsr #32 properly
– ARM: Disassemble ARM movs properly
– Core: Don’t attempt to restore rewind diffs past start of rewind
– Core: Fix the runloop resuming after a game has crashed (fixes #2451)
– Core: Fix crash if library can’t be opened
– Debugger: Fix crash with extremely long CLI strings
– Debugger: Fix multiple conditional watchpoints at the same address
– FFmpeg: Fix crash when encoding audio with some containers
– FFmpeg: Fix GIF recording (fixes #2393)
– GB: Fix temporary saves
– GB: Fix replacing the ROM crashing when accessing ROM base
– GB: Don’t try to map a 0-byte SRAM (fixes #2668)
– GB, GBA: Save writeback-pending masked saves on unload (fixes #2396)
– mGUI: Fix FPS counter after closing menu
– Qt: Fix some hangs when using the debugger console
– Qt: Fix crash when clicking past last tile in viewer
– Qt: Fix preloading for ROM replacing
– Qt: Fix screen not displaying on Wayland (fixes #2190)
– Qt: Fix crash when selecting 256-color sprite in sprite view
– Qt: Fix coloration of swatches on styles with distinct frame backgrounds
– VFS: Failed file mapping should return NULL on POSIX
 
Miscellaneous
– Core: Suspend runloop when a core crashes
– Core: Add wallclock offset RTC type
– Debugger: Save and restore CLI history
– Debugger: GDB now works while the game is paused
– Debugger: Add command to load external symbol file (fixes #2480)
– FFmpeg: Support dynamic audio sample rate
– GB: Support CGB0 boot ROM loading
– GB Audio: Increase sample rate
– GB MBC: Filter out MBC errors when cartridge is yanked (fixes #2488)
– GB MBC: Partially implement TAMA5 RTC
– GB Video: Add default SGB border
– GBA: Automatically skip BIOS if ROM has invalid logo
– GBA: Refine multiboot detection (fixes #2192)
– GBA Cheats: Implement “never” type codes (closes #915)
– GBA DMA: Enhanced logging (closes #2454)
– GBA Memory: Implement adjustable EWRAM waitstates (closes #1276)
– GBA Savedata: Store RTC data in savegames (closes #240)
– GBA Video: Implement layer placement for OpenGL renderer (fixes #1962)
– GBA Video: Fix highlighting for sprites with mid-frame palette changes
– mGUI: Add margin to right-aligned menu text (fixes #871)
– mGUI: Autosave less frequently when fast-forwarding
– Qt: Rearrange menus some
– Qt: Clean up cheats dialog
– Qt: Only set default controller bindings if loading fails (fixes #799)
– Qt: Save converter now supports importing GameShark Advance saves
– Qt: Save positions of multiplayer windows (closes #2128)
– Qt: Add optional frame counter to OSD (closes #1728)
– Qt: Add optional emulation-related information on reset (closes #1780)
– Qt: Add QOpenGLWidget cross-thread codepath for macOS (fixes #1754)
– Qt: Enable -b for Boot BIOS menu option (fixes #2074)
– Qt: Add tile range selection to tile viewer (closes #2455)
– Qt: Show warning if XQ audio is toggled while loaded (fixes #2295)
– Qt: Add e-Card passing to the command line (closes #2474)
– Qt: Boot both a multiboot image and ROM with CLI args (closes #1941)
– Qt: Improve cheat parsing (fixes #2297)
– Qt: Change lossless setting to use WavPack audio
– Qt: Use FFmpeg to convert additional camera formats, if available
– Qt: Resume crashed game when loading a save state
– Qt: Include cheats in bug report
– SDL: Support exposing an axis directly as the gyro value (closes #2531)
– Windows: Attach to console if present
– VFS: Early return NULL if attempting to map 0 bytes from a file
– Vita: Add bilinear filtering option (closes #344)

2022年10月7日 星期五

simple64 - 34b6c06 v2022.10.3

 N64模擬器 simple64 發布新版,更新如下 :

  • One last fix for Flatpak/Linux as a result of the new build system
https://github.com/simple64/simple64/releases

2022年10月6日 星期四

Flycast Dojo 0.5.6

 SEGA多機種模擬器 Flycast Dojo 發布新版,更新如下  :

  • Replays: Fix filename to use correct opponent name
  • Replays: correct replay save path when called outside working directory
  • Savestate retrieval: fix savestate download paths, force to emulator home directory
  • Command line game entry: fall back to Dreamcast CHD when arcade ZIP not present
    • More easily support expanded Dreamcast library in lobby integration. Minimizes manual work for future DC game lobby suggestions
  • New Game Defaults
    • Sonic Adventure 2: Audio Sync & Full Analog Online
    • Golf Shiyou Yo 2: Full Analog Online
https://github.com/blueminder/flycast-dojo/releases

2022年10月1日 星期六

Xebra 220924

 PS模擬器 Xebra 發布新版,更新如下 :

エミュレーションについての更新はありません。

・ファイル履歴による再オープン処理では、ゲーム内ディスク入替を想定していなかったため、
常に電源オン&リセットを不随実行していた。電源オン&フタ開の状態の場合は、
リセットではなくフタ閉を不随実行するように変更した。

・起動時にカレントフォルダにXEBRA.LNGファイルが存在しない場合は、
OSに設定されている略国名、英言語名に従ってコピーするようにした。
XEBRA.LNGを使用したくない人はLANGUAGEフォルダごと削除すること。

ares v130

 多平台多機種模擬器 ares 發布新版,更新如下 :

ares v130 has now been released.

The most notable changes to this build are the addition of Nintendo 64DD emulation and support for Parallel-RDP on macOS.

Universal Binaries are now available to macOS users, so Apple Silicon users no longer need to self-compile for best performance.

Many emulator cores have also had significant improvement, please see the changelog for full details.

User Interface

  • Simplify the codebase by removing the ability to disable emulation cores or ungroup them from the gui [Luke Usher]
  • Log status messages to console in addition to the status bar [Rasky]
  • Sort systems in the system list alphabetically by vendor [Luke Usher]
  • Document command line options via --help parameter [Raphnet]
  • Rename "Vulkan" to "GPU acceleration" [Rasky]
  • Allow hotkeys to be used even when the window is unfocused,provided "allow input when focus is lost" is enabled [Luke Usher]
  • Added entitlements to allow JIT when running as a signed application on macOS [Rasky]
  • Bundle libMoldenVK on macOS [Rasky]
  • Fix auto-detection of Famicom Disk System games when dragging/dropping [remutro]
  • Prevent polling host input at too-high intervals, reduces lag when games rapidly poll input registers [Luke Usher]

Build System

  • Detect incompatibile, outdated gcc versions [Rasky]
  • Enable link-time optimization by default, giving a performance boost for most users [Luke Usher]
  • Build as a Universal Application on macOS, allowing the same binary to run native on Intel and Apple Silicon [Rasky]
  • Detect when gcc is actually an alias for clang [Invertego]
  • Fix compiler warnings with newer versions of clang [Invertego]
  • Use pkg-config to detect dependencies of Ruby [Tobias Jakobi]
  • Switch exclusively to clang for Windows releases and nightly builds [Luke Usher]
  • Allow cross-compilation on macOS [Rasky]
  • Add support for compiling using ccache [Luke Usher]

Nall (Standard Library / Runtime)

  • Improve make_string to pass by reference [Invertego]
  • Fix memory issues in assignment operators for nall types [Invertego]
  • Fix new//delete mismatch in hashset [Invertego]
  • Make the Posix implementation of thread::join idempotent [Invertego]

Ruby (Video / Audio / Input driver layer)

  • Remove DirectDraw rendering backend, this has been deprecated since DirectX 7 [Luke Usher]
  • Fix swap interval on systems that require the use of glXSwapIntervalEXT [Luke Usher]
  • Workaround double-mouse events with xlib [Raphnet]

Atari 2600

  • Fix a buffer-overflow crash condition [Invertego]
  • Increase scale factor for screen size consistency with other cores [Luke Usher]

Sega Master System / Game Gear

  • Add support for Sega Mega Drive controllers (Mega Mouse, Sports Pad, 3-button/6-button) [Raphnet]
  • Add support for the Sports Pad controller [Raphnet]
  • Add support for the Paddle controller [Raphnet]
  • Expose output signals to controller port [Raphnet]
  • Prevent Game Gear running in 50hz mode as a 50hz Game Gear was never manufactured [Luke Usher]
  • Add support for running the Game Gear bios (Optional) [Luke Usher]
  • Fix writes to controller port 2 [Raphnet]
  • Fix port $3e and $3f operation on Game Gear [Luke Usher]
  • Implement support for NTSC-U and NTSC-J Game Gear models [Luke Usher]
  • Initialize ram to zero (fixes titles that break when a bios is not loaded) [Luke Usher]
  • Fix incorrect hcounter calculation [Luke Usher]
  • Various minor VDP emulation improvements [Luke Usher]
  • Fix a crash when running the Game Gear in Master System Mode [Luke Usher]
  • Fix two more Game Gear games that require Master System Mode: Taito Chase H.Q (Japan) and Chase H.Q (USA) [Luke Usher]

Sega Mega Drive

  • Add eeprom support for Wonder Boy V (J) [TascoDLX]
  • Fix SRAM support for Psy-O-Blade [FitzRoyX]
  • Add support for the Mega Mouse [Raphnet]
  • Fix incorrect aspect ratio (32:35) [Luke Usher]
  • Simplify cartridge emulation by combining standard and banked mappers [TascoDLX]
  • Latch Z80 bus-request on reset [Invertego]
  • Preserve Z80 bank register on reset [Invertego]
  • Implement custom mappers for Triple Play 96 & Triple Play Gold [TascoDLX]

Sega 32X

  • Implement support for the standard SEGA/SSF2 mapper [Ralakimus]
  • Fix eeprom support [Invertego]
  • Ensure unused bits of the adapter control register are set to zzero [TascoDLX]
  • Expose cartidge SRAM through the 0x900000 range [Invertego]
  • Improve synchronization between the main/sub SH-2 processors [Invertego]
  • Unify sync timing between interpreter and recompiler [Invertego]
  • Ensure upper bits of the interrupt control register return zero [Luke Usher]
  • Fix an issue where games would render garbage to the top/bottom border areas [Luke Usher]
  • Fix an issue that prevented Sega CD32X games from detecting the 32X add-on [Invertego]
  • Implement proper 32x reset behavior [Luke Usher]

Nintendo NES / Famicom

  • Implement (partial) support for iNES 2.0 format roms [Luke Usher]
  • Fix an issue where GTROM had 8k CHR-RAM instead of the correct 16k [Luke Usher]

Nintendo SNES / Super Famicom

  • Fix an issue with performance-ppu selection [Intertego]
  • Fix a typo that lead to broken background layer 4 in Pixel Accuracy mode [FitzRoyX]
  • Fix auto-detection of MSU-1 games [Luke Usher]

Nintendo Game Boy / Game Boy Color

  • Allow Game Boy Color to run in DMG mode [Luke Usher]
  • Implement display disable while stopped [Luke Usher]
  • Prevent incrementing DIV counter when stopped [Luke Usher]
  • Fix a minor 'oops' in KEY0 [Luke Usher]
  • Fix DIV initial value [Luke Usher]
  • Various fixes to MBC2 mapper [Luke Usher]
  • Implement bgEnable differences between DMG and CGB [Luke Usher]

Nintendo Game Boy Advance

  • Fix games using EEPROM saving [Luke Usher]

Nintendo 64

  • Implement Nintendo 64DD emulation [Luigiblood]
  • Use MoltenVK to support Parallel-RDP on macOS via Metal [Rasky]
  • Use sse2neon to enable vectorization on Apple Silicon, boosting performance [Rasky]
  • Use XXH3 instead of crc32 for RSP recompiler cache, boosting performance [Luke Usher]
  • Implement overflow exceptions in TRUNC [Rasky]
  • Add setting to disable VI post-processing/blur [Parashoe]
  • Add missing variables to RDP serialization [sp1187]
  • Implement support for RDP crashes [Rasky]
  • Improve support for FPU exceptions [Rasky]
  • Improve COP1/COP2 invalid instruction exceptions [Rasky]
  • Split the RSP recompiler cache into 256-byte chunks, improving performance [Luke Usher]
  • Rewrite VI resolution scaling [Rasky]
  • Use a native data type (u16) for RSP Program Counter, improving performance [Luke Usher]
  • Fix AI DMA enable bit handling [Rasky]
  • Fix AI IRQ [Rasky]
  • Fix an issue where the recompiler would invalidate incorrect ranges [Luke Usher]
  • Fix buffer overflows in MAME RDP [Rasky]
  • Fix Control Stick dead zone scaling [kev4cards]
  • Fix numerical instability in Gamepad reading logic [Invertego]
  • Fix support for interlaced resolutions [Rasky]
  • Leave PIF RAM as-is when no data was received [Raphnet]
  • Fix when "Nothing" is selected as a controller type [Raphnet]
  • Implement precise RDP block invalidation [Invertego]
  • Refactor AI emulation to always return audio samples [Rasky]
  • Fix a bug in update of DP_START during a RDP DMA transfer [Rasky]

Microsoft MSX

  • Implement the Arkanoid Vaus paddle controller [Raphnet]
  • Implement controller port 2 [Raphnet]
  • Fix detection of the R-Type specific vs generic ASC16 ROM mapper [Luke Usher]
  • Add database entry for Batman (Japan) [Luke Usher]

SNK Neo Geo

  • Improve performance by reducing unnecessary synchronization [Luke Usher]
  • Fix a crash caused by not clearing the screen thread on unload [Invertego]
  • Fix outer-edge rendering issues by clipping overscan [Luke Usher]
  • Fix FM/SSG audio pkayback [Luke Usher]
  • Fix support for games with non-power-of-two sized CROMs [Luke Usher]
  • Fix loading of roms that use .ep program roms instead of .p program roms [Luke Usher]
  • Fix incorrect sprite offset: they are relative to top-border rather than line 0 [Luke Usher]
  • Implement preliminary support for ADPCM-A audio [Luke Usher]
  • Implement preliminary support for ADPCM-B audio [Luke Usher]

Sony PlayStation

  • Increase precision fo volume input during amplification [Luke Usher]
  • Add simple idle loop detection, slight performance boost [Luke Usher]
  • Clamp f32->u8 colour conversions [Invertego]
  • Fix a crash when rendering using out-of-range vram co-ordinates [Luke Usher]
  • Fix broken input in most (but not all) games [Luke Usher]
  • Implement disc command GetParam [remutro]

Component Improvements

Changes to these components are not specific to cores/systems, but rather they impact all systems that use the updated component.

CPU: MOS 6502

  • Add support for many more unofficial/undocumented instructions, however, we are still missing some of the lesser used ones [Luke Usher]

CPU: Motorola 68000

  • Fix divs/divu negative flag [Invertego]
  • Fix memory read order for A/SBCD and ADD/SUBX [Invertego]

CPU: Hitatchi SH-2

  • Fix serial communication [TascoDLX]
  • Synchronize on uncached writes [Invertego]
  • Fix broken Illegal Instruction debug output [Luke Usher]
  • Fix PC-relative addressing in branch delay slots [Invertego]
  • Add preliminary emulation of the SH6704 internal bus [Invertego]
  • Fix an issue where the incorrect return address was stored in an exception frame [Invertego]

CPU: Nec V30MZ

  • Fix shift behavior [Invertego]

CPU: Zilog Z80

  • Fix timings for RET, LD (IX+d),n & LD (IY+d),n [TascoDLX]
  • Fix extended/prefixed instruction timing and behavior [TascoDLX]
  • Fix IM0 and simplify IRQ implementation [Luke Usher]
  • Fix various other instruction timings [TascoDLX]
  • Fix reset logic [TascoDLX]

Audio: YM2612

  • Fix pm vibrato effect [TascoDLX]
  • Fix envelope update logic [TascoDLX]
  • Fix volume floor [TascoDLX]
  • Various other improvements and fixes [TascoDLX]

Audio: AY38910

  • Keep a copy of the last data written to IO ports [Raphnet]

Audio: SN76489

  • Fix additional data writes to noise channel [Luke Usher]
https://ares-emu.net/

RetroArch 1.11.0

 多平台多機種模擬器 RetroArch 發布新版,更新如下 :

  • 3DS: Add unique ID’s
  • 3DS: Add bottom menu options
  • 3DS: Set bottom_asset directory default
  • 3DS: Only enable internal counter with CONSOLE_LOG defined
  • 3DS: Set default bottom font values
  • 3DS: Fix CIA installation issues
  • 3DS: Support latest libctru
  • ANDROID: Add HAVE_ACCESSIBILITY
  • ANDROID: Gingerbread support
  • ANDROID: Touchpads support
  • ANDROID: Builtin Xperia Play autoconfig profile
  • ANDROID: Disable Feral GameMode for Android – only available on Linux
  • ANDROID: Add a configurable workaround for Android reconnecting devices
  • ANDROID/FDROID: Add F-Droid metadata to repo in Fastlane format
  • AUDIO/AUDIO MIXER: Add missing locks for thread safety
  • AUDIO/AUDIO MIXER: Fix audio mixer memory leak + remove redundant ‘single threaded’ rthreads implementation
  • AUTOSAVE: Change/improve exit behavior of autosave thread – if condition variable is signaled, the loop is ran another last time so we can do a final check/save before stopping the thread.
  • CDROM: Fix memory leak caught with asan – buf passed to filestream_read_file
  • CORE INFO/NETPLAY: Ensure current core info is initialized at runloop_event_init_core when netplay is enabled
  • CHEEVOS: Upgrade to rcheevos 10.4
  • CHEEVOS: Allow creating auto savestate in hardcore
  • CHEEVOS: prevent invalid memory reference if game has achievements but core doesn’t expose memory
  • CHEEVOS: Release achievement badge textures when video driver is deinitialized
  • CHEEVOS: Re-enforce hardcore limitations once achievements are loaded
  • CHEEVOS/MENU/MATERIALUI: Show achievement badge icons in MaterialUI driver
  • D3D9: D3D9 has been split up into two drivers – D3D9 HLSL (max compatibility, no shader support yet) and D3D9 Cg (dependent on deprecated Nvidia Cg runtime library)
  • D3D9/HLSL/XMB: XMB fix
  • D3D9/CG: D3D9 Cg driver fixed
  • D3D11: Fix overlay not showing up
  • D3D11/12: Reduce lag with WaitForVBlank – this rather simple addition seems to make D3D11/12 very very close to Vulkan/GLCore regarding input lag.
  • D3D11/12: Add waitable swapchains and max frame latency option
  • D3D11/12: Make waitable swapchains optional
  • DATABASE: Reformat ‘rdb_entry_int’ – Nitpick adjustments for database entries: Capitalize “Release Date”, and remove space before : from Release Date rows which use integer
  • DATABASE/EXPLORE: Allow On-Demand Thumbnails in Explore menu
  • DATABASE/EXPLORE/MENU/OZONE/XMB/RGUI: Explore menu thumbnails
  • DISC CONTROL: Better Disc Control append focus
  • DOS/DJGPP: Add a workaround for libc bug
  • AUTOMATIC FRAME DELAY: Added slowmotion resiliency
  • AUTOMATIC FRAME DELAY: Added string representation for seeing the current effective delay without opening statistics
  • AUTOMATIC FRAME DELAY: Added “ms” to logging and “(ms)” to label just like in Audio Latency
  • GENERAL: Don’t bake in OpenAL and libcaca by default unless explicitly enabled with configure switch.
  • GENERAL: Reduce amount of strlen calls
  • GENERAL: Reduce or simply sin/cosf calls
  • GFX: Fix readability and precision issues in aspectratio_lut
  • GFX: Add option to manually enable/disable automatic refresh rate switching
  • GFX: Enable automatic configuration of ‘VSync Swap Interval’
  • GFX/FONT/FREETYPE: Use FT_New_Memory_Face – first read it from file to memory beforehand –
    this solves an asset extraction issue when selecting ‘Update Assets’ – apparently FT_New_Face keeps an open file handle to the font file which
    prevents it from being overwritten/deleted while the program is still running.
  • GFX/THUMBNAILS: Thumbnail aspect ratio fix
  • GFX/THREADED VIDEO: Optimizations, fixes and cleanups
  • GFX/VIDEO FILTERS: Add Upscale_240x160-320×240 video filter with ‘mixed’ method
  • GLSLANG: Fix compilation with ./configure –disable-builtinglslang – was missing linking against -lMachineIndependent and -lGenericCodeGen static libs
  • INPUT: Fix off by one error for input_block_timeout setting. Also default to 0 for this setting (pretty massive performance gain)
  • INPUT: Analog button mapping fixes
  • INPUT/HID/OSX: Fix DualShock3 support
  • INPUT/HID/LINUX: (qb) Disable HAVE_HID by default for now for Linux as long as there are no working backends for both
  • INPUT/HID/WINDOWS: (qb) Disable HAVE_HID by default for now for Windows as long as there are no working backends for both
  • INPUT/HID/WIIU: Fix DualShock3 support
  • INPUT/OVERLAY: Block pointer input when overlay is pressed
  • INPUT/REMAPPING: input_remapping_save_file – existing remapping file was needlessly reloaded
  • INPUT/REMAPPING: Add option to disable automatic saving of input remap files
  • INPUT/LINUX/UDEV: Fix lightgun scaling on Y axis
  • INPUT/LINUX/X11/LED: Add LED keyboard driver
  • INPUT/WINDOWS/LED: LED keyboard driver cleanup
  • INPUT/WINDOWS/WINRAW: Clear key states when unfocused
  • INPUT/WINDOWS/WINRAW: Fix pointer device position
  • IOS: iOS app icon fixes & revisions
  • LIBRETRO/SAVESTATES: Implement an api call for context awareness
  • LOCALIZATION: Updates
  • LOCALIZATION: Add Catalan language option
  • LOCALIZATION: Fix some bad localization
  • LINUX: Make memfd_create call more backwards compatible by calling it through syscall – on older systems, you’ll have to include linux/memfd.h for the MFD_ defines, and call memfd_create() via the the syscall(2) wrapper (and include unistd.h and sys/syscall.h for it work). We exclude linux/memfd.h header include because we already provide the MFD_ defines in case they are missing
  • LINUX/MALI FBDEV: Fix assertion failed on video threaded switch
  • MENU: Menu paging navigation adjustments
  • MENU: New Menu Items for disabling Info & Search buttons in the menu
  • MENU: Allow the user to use volume up/down/mute hotkeys from within the menu
  • MENU: Add missing sublabels for non-running Quick Menu
  • MENU: Reorganize Quick Menu Information
  • MENU: Savestate thumbnails – Savestate slot reset action
  • MENU: Allow changing savestate slots with left/right on save/load
  • MENU: Add ‘Ago’ to playlist last played styles
  • MENU: Add proper icons for shader items
  • MENU/MATERIALUI: Add icon for ‘Download Thumbnails’
  • MENU/XMB: Add options for hiding header and horizontal title margin
  • MENU/XMB: Dynamic wallpaper fixes
  • MENU/XMB: Add Daite XMB Icon Theme
  • MENU/XMB/OZONE: Savestate thumbnail aspect ratio
  • MENU/XMB/OZONE: Core option category icon refinements
  • MENU/XMB/OZONE: Fullscreen thumbnail browsing
  • MENU/XMB/OZONE: Add playlist icons under ‘Load Content’
  • MENU/XMB/OZONE: Thumbnail improvements
  • MENU/XMB/OZONE: Savestate thumbnail fullscreen + dropdown
  • MENU/XMB/OZONE: Prevent unnecessary thumbnail requests when scrolling through playlists
  • MENU/OZONE: Fix playlist thumbnail mouse hover after returning from Quick Menu
  • MENU/OZONE: Thumbnail visibility corrections
  • MENU/OZONE: Playlist metadata reformat
  • MENU/OZONE: Savestate thumbnail fixes
  • MENU/OZONE: Add savestate thumbnails
  • MENU/OZONE: Header icon spacing adjustment
  • MENU/RGUI: Savestate thumbnails
  • MENU/SETTINGS: Turn Advanced Settings on by default, this entire filtering of settings will need a complete rethink anyways
  • MENU/WIDGETS: Widget color + position adjustments
  • MIYOO: Exclude unused HAVE_HID for Miyoo
  • MIYOO: Enable screenshots
  • MIYOO: Enable rewind
  • NETWORK: Allow MITM server selection on OK callback
  • NETWORK: Replace socket_select calls
  • NETWORK: Implement binary network streams
  • NETWORK: Poll support
  • NETWORK: Check connect errno for successful connection
  • NETWORK: Get rid of the timeout_enable parameter for socket_connect
  • NETWORK: Fix getnameinfo_retro’s port value for HAVE_SOCKET_LEGACY platforms
  • NETWORK: Define inet_ntop and inet_pton for older Windows versions
  • NETWORK: Define isinprogress function
  • NETWORK/NATT: Move natt files to “network”
  • NETWORK/NETWORK STREAMS: Add function netstream_eof
  • NETWORK/NETPLAY: Fix game CRC parsing
  • NETWORK/NETPLAY: Disable and hide stateless mode
  • NETWORK/NETPLAY: Change default for input sharing to “no sharing”
  • NETWORK/NETPLAY: Enforce a timeout during connection
  • NETWORK/NETPLAY: Disallow clients from loading states and resetting
  • NETWORK/NETPLAY: Special saves directory for client
  • NETWORK/NETPLAY: Ensure current content is reloaded before joining a host
  • NETWORK/NETPLAY: Fix client info devices index
  • NETWORK/NETPLAY: Fix input for some cores when hosting
  • NETWORK/NETPLAY: Memory leak fixes
  • NETWORK/NETPLAY: Force a core update when starting netplay
  • NETWORK/NETPLAY: Fix NAT traversal announce for HAVE_SOCKET_LEGACY platforms
  • NETWORK/NETPLAY: Refactor fork arguments
  • NETWORK/NETPLAY: Fix content reload deadlocks on static core platforms
  • NETWORK/NETPLAY: Disallow netplay start when content is not loaded for static core platforms
  • NETWORK/NETPLAY: Show client slowdown information
  • NETWORK/NETPLAY: Improve check frames menu entry
  • NETWORK/NETPLAY: Do not try to receive new data if the data is in the buffer
  • NETWORK/NETPLAY: Copy data on receive, even if the buffer is full
  • NETWORK/NETPLAY: Fix lobby sublabel CRC display on some platforms
  • NETWORK/NETPLAY: Support for customizing chat colors
  • NETWORK/NETPLAY: Small launch compatibility patch adjustments
  • NETWORK/NETPLAY: Support for banning clients
  • NETWORK/NETPLAY: Minor tweaks to the find content task
  • NETWORK/NETPLAY: Support for gathering client info and kicking
  • NETWORK/NETPLAY: Fix possible deadlock
  • NETWORK/NETPLAY: Initialize client’s allow_pausing to true
  • NETWORK/NETPLAY: Disable netplay for unsupported cores – with stateless mode being disabled for now, there is no reason not to include this. Refuse to initialize netplay when the current core is not supported (no proper savestates support)
  • NETWORK/NETPLAY/DISCOVERY: Ensure fixed width ints on packet struct
  • NETWORK/NETPLAY/DISCOVERY: Support for IPv4 tunneling (6to4)
  • NETWORK/NETPLAY/DISCOVERY/TASKS: Netplay/LAN Discovery Task refactor – aims to prevent blocking the main thread while awaiting for the LAN discovery timeout; This is accomplished by moving the whole discovery functionality into its task and using a non-blocking timer to finish the task. Also fixes discovery sockets not being made non-blocking, which could cause the main thread to hang for very long periods of time every pre-frame.
  • NETWORK/NETPLAY/TASKS: Find content task refactor – fixes many issues along the way, including a couple of nasty memory leaks that would leak thousands of bytes each time the task ran. It also expands the original concept by matching currently run content by filename (CRC matching is always performed first though).
  • NETWORK/NETPLAY/TASKS: Find content task refactor – Ensure CRC32 is 8 characters long
  • NETWORK/NETPLAY/LOBBY: Add setting for filtering out rooms with non-installed cores
  • NETWORK/NETPLAY/LOBBY: Hide older (incompatible) rooms
  • NETWORK/NETPLAY/LOBBY: Add a toggleable filter for passworded rooms. In addition, move lobby filters into its own submenu for better organization.
  • NETWORK/NETPLAY/MENU: Chat supported info for the host kick submenu
  • NETWORK/NETPLAY/MENU: Localize relay servers
  • NETWORK/NETPLAY/MENU: Host Ban Submenu
  • NETWORK/NETPLAY/MENU: Add client devices info to the kick sub-menu
  • NETWORK/NETPLAY/MENU: Path: Netplay -> Host -> Kick Client – Allows the host to kick clients. Allows the host to view client information: connected clients (names), status (playing/spectating) and ping.
  • NETWORK/NETPLAY/VITA: Add net_ifinfo support
  • NETWORK/NETPLAY/VITA: Enable partial LAN discovery
  • NETWORK/NETPLAY/VITA: Change default UDP port to 19492
  • NETWORK/NETPLAY/VITA: Do not multiply negative timeout values
  • NETWORK/NETPLAY/VITA: Fix epoll’s timeout parameter
  • NETWORK/NETPLAY/VITA: Launch compatibility patch
  • NETWORK/NETPLAY/3DS: Launch compatibility patch
  • NETWORK/NETPLAY/3DS: Adapt POLL for 3DS platform
  • NETWORK/NETPLAY/PS3: Launch compatibility patch
  • NETWORK/NETPLAY/WII: Enable net_ifinfo for some features. In practice, this only allows the netplay’s UPnP task to succeed on the Wii.
  • NETWORK/NETPLAY/WIIU: Launch compatibility patch
  • NETWORK/NETPLAY/SWITCH: Launch compatibility patch
  • NETWORK/UPNP: Attempt support for remaining platforms
  • NETWORK/UPNP: Support for IPv4 tunneling
  • ODROID GO2: Increase DEFAULT_MAX_PADS to 8 for ODROIDGO2, since that impacts the RG351[X] consoles. The RG351[X] have a USB host controller and can have an arbitrary number of USB gamepads.
  • ONLINE UPDATER: Online Updater menu reorganizing
  • OSX: Fixed items of system top menu bar on macOS
  • OSX: Revision to macOS app icon set
  • PLAYLISTS: Ensure history list will contain CRC32
  • PLAYLISTS: Fix CRC32 comparison – as state->content_crc has “|crc” suffix.
  • PS4/ORBIS: Orbis/PS4 Support using OrbisDev toolchain
  • PS4/ORBIS: Update xxHash dependency
  • PS4/ORBIS: Shader cache
  • RETROFW: Exclude unused HAVE_HID for RetroFW
  • RETROFW: Support battery indicator on RetroFW
  • RETROFW: Enable menu toggle button on retrofw devices
  • SHADERS: Shader Preset Loading of Multiple additional #references lines for settings
  • SHADERS: Shader Load Extra Parameter Reference Files – this adds the ability to put additional #reference lines inside shader presets which will load additional settings. The first reference in the preset still needs to point at a chain of presets which ends with a shader chain, and subsequent #reference lines will load presets which only have parameter values adjustment. This allows presets to be made with a modular selection of settings. For example with the Mega Bezel one additional reference could point at a preset which contained settings for Night mode vs Day mode, and another reference could point to a preset which contained settings for how much the screen should be zoomed in.
  • SHADERS/MENU: Increase shader scale max value
  • SCANNER/DC: Fix Redump bin/cue scan for some DC games
  • SCANNER/GC/WII: Add RVZ/WIA scan support for GC/Wii
  • SCANNER/PS1: Improved success rate of Serial scanning on PS1 by adding support for the xx.xxx format
  • SCANNER/PS1: Changed return value of detect_ps1_game function to actually return a failure when the Serial couldn’t be extracted. Scanner will then fallback on crc check, and usually ends up finding the games in the database.
  • SWITCH: Enable RWAV (WAV audio file) support
  • STRING: Do not assume char is unsigned
  • TASKS: More thread-awareness in task callbacks
  • TASKS: Fix race condition at task_queue_wait
  • TVOS: Revised tvOS icons w/ updated alien.
  • VFS: Fix various VFS / file stream issues
  • VULKAN: Fix more validation errors
  • VULKAN: Attempt to fix validation errors with HDR swapchain. Always use final render pass type equal to swapchain format. Use more direct logic to expose if filter chain emits HDR10 color space or not
  • VULKAN/ANDROID: Honor SUBOPTIMAL on non-Android since you’d want to recreate swapchains then. On Android it can be promoted to SUCCESS.
  • SUBOPTIMAL_KHR can happen there when rotation (pre-rotate) is wrong.

  • VULKAN/DEBUG: Automatically mark buffer/images/memory with names
  • VULKAN/DEBUG: Move over to VK_EXT_debug_utils. Debug marker is deprecated years ago.
  • VULKAN/HDR: Fix leak of HDR UBO buffer
  • VULKAN/BFI: Fix BFI (Black Frame Insertion) regression
  • WINDOWS: Fix exclusive fullscreen video refresh rate when vsync swap interval is not equal to one – refresh rate in exclusive fullscreen mode was being incorrectly multiplied by vsync swap interval, breaking swap interval functionality at the gfx driver level
  • WIN32: Do optimization for Windows where we only update the title with SetWindowText when the previous title differs from the current title
  • WIN32: Skip console attach when logging to file
  • WIN32: Remove black margins with borderless non-fullscreen window
  • WIN32/TASKBAR: Release ITaskbarList3 on failed HrInit – pointer wasn’t NULL’d, thus set_window_progress would cause weird behavior
  • WII/GX: Fix potential datarace
  • WIIU: Implement sysconf and __clear_cache
  • WIIU: Add OS memory mapping imports
  • UWP: Added launch protocol arg ‘forceExit’ so a frontend can tell an already-running RetroArch UWP instance to quit.
  • UWP: Enable core downloader/updater
  • UWP: Remove copy permissions as its inefficient as we can just directly assign the new ACL and that works
  • Xbox/UWP: Remove expandedResources
  • Xbox/UWP: UWP OnSuspending crash fix
  • Xbox/UWP: Enable savestate file compression by default for UWP/Xbox – got told there are no more issues with it
  • Xbox/UWP: Add support for 4k to angle on xbox for MSVC2017 build
https://www.libretro.com/index.php/category/blog/