Skip to content

Releases: linuxserver/docker-duckstation

latest-ls71

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 08 Jul 04:18
874b3e9

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls71/index.html

LinuxServer Changes:

Full Changelog: latest-ls70...latest-ls71

Remote Changes:

Commits

  • abf946c88 Update ukrainian translation (#3762)
  • c80552f1c Ukrainian translation v2 (#3764)
  • ab30d1da5 FileSystem: Make CopyFilePath() atomic
  • acfd60ea5 Deps: Update to 20260702
  • 7be44a41c FullscreenUI: Fix incorrect effect in save state selector
  • 4c39eac52 FullscreenUI: Fix incorrect layout in ProgressDialog
  • 3441574be CDImage: Add some more helper functions
  • c3af062bf Qt: Move image verification logic to GameDatabase
  • c05726a48 FullscreenUI: Add image verification
  • 685b2f7d2 FullscreenUI: Add easing to ProgressDialog bar
  • 4bc8ace9b Qt: Add CardRadioButton
  • 866d23042 Qt: Add interface and view types to setup wizard
  • f31d99e77 Qt: Add animation to setup wizard
  • 7316cce3d Qt: Fix path in update-and-edit-english.bat script
  • bb3fede3f Qt: Update English plural translations
  • 9c1500f1a Qt: Add pause menu hotkey to setup wizard
  • 6d7163c54 Qt: Remove note about renderer from setup wizard
  • d9106576f Qt: Don't save window position when hidden
  • 5dd559c15 FullscreenUI: Fix transition glitch when loading with no states
  • fce1b1e30 Cheats: Use .org as insertion point in assembly codes
  • 7bed00d02 Cheats: Support branch labels in assembly codes
  • 36a85ffbf Cheats: Expand test coverage
  • 7c9351278 Cheats: Fix incorrect nullopt return
  • e79eb42f7 Cheats: Fix incorrect bitmask for 32-bit option values
  • 46efde0b1 Qt: Respect SH_Widget_Animation_Duration style hint
  • bf1801cb2 Qt: Add missing singular forms to English "translation"
  • f9cf0db0b FullscreenUI: Fix styling of input string dialogs
  • 4616c8513 FullscreenUI: Add custom title/disc set title/serial editing
  • a6d24175d FullscreenUI: Make game summary more compact
  • a0a4159c8 FullscreenUI: Fix overlap in modal progress with empty status text
  • 3968606be GameDatabase: Don't leave verify status text empty
  • e2a654715 FullscreenUI: Switch to list page on settings open from game list
  • 4f51c2dcb Qt: Warn when upscaling is enabled without PGXP
  • 0c87b0726 Cheats: Accept ".org 0x12345678" and "0x12345678:" to set pc
  • c8e6dc5c6 Qt: Add settings-window class to setup wizard
  • c0074b9b5 Qt: Use item view for game list directories
  • 82518c5b0 Scripts: Extend translation validation/linters
  • 083592488 Qt: Update ja and zh-CN translations
  • d79464128 Qt: Slightly increase settings category size
  • 584999e3f Qt: Give proper names to widgets in setup wizard
  • 79c08b648 Qt: Remove multiple sources of truth for supported formats
  • 5d4661310 Achievements: Centralize profile URL building
  • fb994670e Qt: Match achievements login between settings/setup wizard
  • 674af5152 Scripts: Relax rich-text checks in the translation validator
  • 90c96dc94 Qt: Fix a decent number of strings missing from lupdate
  • c46a1dc53 CI: Only validate changed translation files on PR
  • 3d544d4ed Qt: Fix upscaling warning always showing in setup wizard
  • 7d4b97d19 Qt: Fix missing translation of default update channel
  • 12df0cd11 Qt: Fix duplicate message context in debugger error
  • c2f8d3298 MediaCapture: Mark missing translatable strings
  • dd6354143 AudioStream: Fix backend name not translating
  • 2cf04c92a Qt: Remove duplicate translation strings
  • 982a35e6e Qt: Cancel search when pressing Esc (#3767)
  • 7dde4794b Update Spain translation (#3768)
  • bc057d9f7 Qt: Restore focus frame on QLineEdit with macOS native theme (#3771)
  • fa19df308 Update qttranslations.inl (#3772)
  • 2b1de6278 Qt: Fix empty gamesettings ini being saved on close
  • 7651d288b Qt: Use simpler text widgets in cover downloader and game summary (#3773)
  • 6194f08a9 Achievements: Always identify game on startup
  • 59247c84b Achievements: Move game hash calculation to system
  • eeda898c2 Achievements: Separate login and progress requests
  • 43294ac04 FullscreenUI: Avoid unnecessary mutex lock
  • aa6b3777a GameDatabase: Make track hashes private
  • 6931f890b GameDatabase: Fix revision not showing after verification
  • e7f2f101c Qt: Fix inverted delayed show condition in QtAsyncTaskWithProgressDialog

latest-ls70

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 01 Jul 05:30
65b7ce4

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls70/index.html

LinuxServer Changes:

Full Changelog: latest-ls69...latest-ls70

Remote Changes:

Commits

  • 498921157 dep/rcheevos: Bump to 9ade739
  • 63caefb96 dep/rcheevos: Add game list functions to rc_client
  • 2f3067ab4 CMake: Use C99 to build rcheevos
  • eae17a4d7 Util: Add SQLite helpers and dynamic loading
  • 1230c8398 Achievements: Update seed hash database
  • 98ec05550 Achievements: Swap to sqlite-backed storage
  • cfde5bf5c Achievements: Move achievement pinning to database
  • e9bd041e2 Achievements: Add missing DB load check in a couple of places
  • cd7d35cf7 SQLiteHelpers: Fix load failure on Windows
  • 3260ba807 Deps: Update to 20260614
  • a05171d08 Achievements: Fix crash in database updates on unknown media change
  • 1cce275db Achievements: Don't update game database on disc change
  • cdce0f7a3 CI: Bump to LLVM 22
  • a3dbace1a Hotkeys: Display reason why rewind is unavailable
  • 4144c1e09 GPU: Eliminate redundant type comparions in FillDrawCommand()
  • 77fe65995 GPU: Inline draw mode into state struct
  • 15ad0024d TimingEvent: Use const char* for name instead of string_view
  • d22950c57 GPU: Add disable texture/vertex lighting debug options
  • 9fe36d9c0 Misc: Reduce unnecessary struct padding
  • 31c218360 Qt: Use atomic for auto close flag
  • 4c698e735 Qt: Add menu item to refresh achievement database
  • f7ce14e81 ZipHelpers: Move to util project and source file
  • 97ae01391 Hotkeys: Add 'Select Next Slot and Save State'
  • 9d0eec772 Qt: Disable global save states by default
  • 64f0689b6 Qt: Remove unused signal in SettingsWindow
  • 0dd6e5cef Qt: Disable tab key navigation on game list (#3752)
  • c712c7b29 Qt: Fix keyboard navigation in game list after searching (#3753)
  • 8f6b1b630 FullscreenUI: Add reset option to directory selector
  • ef8a1fcee Core: Fix setting reset wiping out user preferences
  • c0a8d9dac FullscreenUI: Fix global states always showing in menu
  • b19347eed Add complete Ukrainian translation for Qt interface (#3754)
  • cd0c961ec Qt: Add Ukrainian translation to list
  • a64851a1f HTTPDownloader: Remove redunadant request \casts
  • 6357732c8 feat(shader): add Scanline Modern 4x2 adaptive retro filter (#3755)
  • 39cb9af98 update spanish translation (#3756)
  • e6694d1e2 Fix scanline flicker caused by precision drift at boundaries (#3758)
  • 553b133b9 Spanish (Spain) translation update 2026/06/22
  • 5828adfed Qt: Normalize x in es-ES translation
  • cd7b4e535 Qt: Remove placeholder text from a bunch of ui files
  • 5be86a0f3 Qt: Remove redundant translation strings in capture settings
  • 99498ad0c MSBuild: Flag ts files as correct type
  • ba6ae234b Qt: Rework speed controls to be less confusing
  • 6dd972a38 FullscreenUI: Add zoom/slide transition effects
  • 1ffee7175 Qt: Fix unused variable warning
  • b43807a2b CPU: Add MIPS assembler
  • efed642cf Qt: Add 'Patch Instruction' and 'Nop Instruction' to debugger
  • 34df972d8 Cheats: Add 'Assembly' code type
  • b1106392b Qt: Use fixed-width font for cheat code editor
  • 17f54f1a2 Qt: Fix missing styling of QPlainTextEdit
  • b4834b982 CPU: Add targeted icache invalidation
  • 74fac973e Cheats: Invalidate icache when writing (likely) assembly codes
  • 91273f2b3 CPU: Eliminate default branch in icache fill
  • 487a16193 FullscreenUI: Add a couple of missing transition effects
  • 7d002d352 FullscreenUI: Fix a couple of issues with modal progress
  • ef84883dd Sockets: Fix incorrect WSAStartup() call
  • 90c70407c VideoThread: Fix debug assertion tripping in single-threaded mode
  • 032d89447 Qt: Update redump hash lookup URL
  • c22c1cbc4 Settings: Load config for all memory cards
  • 75be5531a Qt: Add configuration of multitap memory cards
  • 352bb0d7f Qt: Move save state backup setting to memory card page
  • eccc1e054 FullscreenUI: Add start-in-big-picture-mode option
  • 4a9776541 Qt: Tidy up main() function
  • 73967c5c4 InputManager: Fix cloning multitap profiles
  • 9e4ef8bd6 System: Only use fast forward volume for >1 speed
  • e409f884d Settings: Remove unused function
  • 57a77b433 GameList: Force refresh when starting disc change
  • ad705e7d8 Qt: Fix saved geometry being lost in nogui mode
  • 92d3f8e6e Atualização Português do Brasil (#3760)
  • a9cc936ba Qt: Minor UI consistency fixes (#3761)
  • ffd9d40d6 Qt: Add Register button for achievements
  • fa1b4b748 CMake: Silence resource copy messages
  • f1e089374 System: Fix mute volume

latest-ls69

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 24 Jun 05:07
6b47c08

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls69/index.html

LinuxServer Changes:

Full Changelog: latest-ls68...latest-ls69

Remote Changes:

Commits

  • 2b1a6cf2b Qt: More appropriate icon for "Search on Redump" button
  • a90182445 Qt: Improve icon consistency
  • 15d8f68d3 Merge pull request #3747 from Pesa/overlap
  • 00149a5be Qt: Disable buttons if controller port is empty (#3748)
  • 2f0cd4d4c DiscDB: Remove duplicate entries for some multi-disc games
  • 8dd88aad2 Qt: Make verify serial mismatch message clearer
  • e21bf74f2 Qt: Replace most _L1 usage with _s
  • 22ee4c076 CMake: Build with immediate binding/full relro
  • e23bc84bb Achievements: Always prefetch game badge before achievement badges
  • 02a41fa06 GameDB: Add metadata to King's Field 3 - Pilot Style (#3749)
  • 8ac294d4f CDROM: Fix DisableReadSpeed() never having any effect
  • 2c6ac7d4f CDROM: Add manual control of lid state
  • 1d71915fb CDROM: Show effective read speed in debug window
  • 18f581ef9 CPU: Use ternary in CPU::WriteRegDelayed()
  • 667e1147a CPU: Add branch hints to interpreter dispatch
  • 2b5baa1b8 CPU: Add more branch hints to interpreter
  • 0b700d1b8 GTE: Eliminate bounds check in dispatcher
  • 2f8e9a851 MSBuild: Enable strict aliasing for clang
  • c660f8532 CPU: Use table lookup for mfc0
  • 1f7fcb8c9 GameList: Fix race condition when refreshing from two sources
  • 134f17239 Achievements: Don't tear down persistent state on enable toggle
  • 8bf9562c3 Achievements: Fix hardcore toggle not showing summary
  • 944beca2c Achievements: Populate saved credentials in ProcessStartup()
  • cae25968f Achievements: Move init functions to private header
  • 1e6a006bd Controller: Make center a distinct value
  • 24fb22acf Controller: Move helper functions into their own file
  • 0ec7d2bd4 Misc: Remove redundant static qualifier from force-inline functions
  • 37878497b Qt: Disable labels for controller setting descriptions
  • 2a32d7014 Qt: Fix white-on-light icon colours in Classic Windows theme
  • c1adcb5a4 Qt: Fix initial icon colours in native theme
  • a4e3afcdd Release MMPX Advanced v3.2: Optimize and Clean (#3750)
  • f228b009c CDROM: Hopefully fix rare case of command event loss with states
  • 0e0ef21d0 System: Clear memory save states on reset
  • 09008bb3a Qt: Round round texcoords only applies to 3D
  • ba08a6f70 Qt: Hide FSUI theme and font settings from game properties (#3751)
  • 770cc586f Settings: Don't copy advanced/hidden settings to game
  • a7a5faeb1 Qt: Fix warning in graphicssettingswidget.cpp
  • 76ca9b15d Qt: Suffix unavailable audio and video devices
  • fa167cab8 FullscreenUI: Add InputTextWithIcon()
  • b3e8543ba FullscreenUI: Make ResetFocusHere() return a boolean
  • 632aab3a0 FullscreenUI: Use InputTextWithIcon() for achievements login
  • 1c89c6436 FullscreenUI: Add search to game list
  • ce14eefd5 ObjectArchive: Swap to HTTPCache log channel
  • 3a9856660 FullscreenUI: Fix input text text colour in light theme
  • 6efef5b66 GameDB: PGXP-CPU for Digimon World 2
  • c1a9d78e7 RegTest: Fix crash on startup
  • c20a5c752 CPU: Copy entire value for zero shift cases
  • c8064e75d CPU: Fix flipped operands on PGXP shifts in recompiler
  • 0b4dfcd04 Settings: Remove unused field
  • b7b31ef97 Qt: Use 'Global' instead of 'Default' for inherited spinners
  • 2c527f4f2 Qt: Add reset buttons for tolerance/depth threshold
  • 7d1996827 Qt: Fix memory leaks in SVG helpers

latest-ls68

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 17 Jun 05:49
bc887ab

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls68/index.html

LinuxServer Changes:

Full Changelog: latest-ls67...latest-ls68

Remote Changes:

Commits

  • 2b1a6cf2b Qt: More appropriate icon for "Search on Redump" button
  • a90182445 Qt: Improve icon consistency
  • 15d8f68d3 Merge pull request #3747 from Pesa/overlap
  • 00149a5be Qt: Disable buttons if controller port is empty (#3748)
  • 2f0cd4d4c DiscDB: Remove duplicate entries for some multi-disc games
  • 8dd88aad2 Qt: Make verify serial mismatch message clearer
  • e21bf74f2 Qt: Replace most _L1 usage with _s
  • 22ee4c076 CMake: Build with immediate binding/full relro
  • e23bc84bb Achievements: Always prefetch game badge before achievement badges
  • 02a41fa06 GameDB: Add metadata to King's Field 3 - Pilot Style (#3749)
  • 8ac294d4f CDROM: Fix DisableReadSpeed() never having any effect
  • 2c6ac7d4f CDROM: Add manual control of lid state
  • 1d71915fb CDROM: Show effective read speed in debug window
  • 18f581ef9 CPU: Use ternary in CPU::WriteRegDelayed()
  • 667e1147a CPU: Add branch hints to interpreter dispatch
  • 2b5baa1b8 CPU: Add more branch hints to interpreter
  • 0b700d1b8 GTE: Eliminate bounds check in dispatcher
  • 2f8e9a851 MSBuild: Enable strict aliasing for clang
  • c660f8532 CPU: Use table lookup for mfc0
  • 1f7fcb8c9 GameList: Fix race condition when refreshing from two sources
  • 134f17239 Achievements: Don't tear down persistent state on enable toggle
  • 8bf9562c3 Achievements: Fix hardcore toggle not showing summary
  • 944beca2c Achievements: Populate saved credentials in ProcessStartup()
  • cae25968f Achievements: Move init functions to private header
  • 1e6a006bd Controller: Make center a distinct value
  • 24fb22acf Controller: Move helper functions into their own file
  • 0ec7d2bd4 Misc: Remove redundant static qualifier from force-inline functions
  • 37878497b Qt: Disable labels for controller setting descriptions
  • 2a32d7014 Qt: Fix white-on-light icon colours in Classic Windows theme
  • c1adcb5a4 Qt: Fix initial icon colours in native theme
  • a4e3afcdd Release MMPX Advanced v3.2: Optimize and Clean (#3750)
  • f228b009c CDROM: Hopefully fix rare case of command event loss with states
  • 0e0ef21d0 System: Clear memory save states on reset
  • 09008bb3a Qt: Round round texcoords only applies to 3D
  • ba08a6f70 Qt: Hide FSUI theme and font settings from game properties (#3751)
  • 770cc586f Settings: Don't copy advanced/hidden settings to game
  • a7a5faeb1 Qt: Fix warning in graphicssettingswidget.cpp
  • 76ca9b15d Qt: Suffix unavailable audio and video devices
  • fa167cab8 FullscreenUI: Add InputTextWithIcon()
  • b3e8543ba FullscreenUI: Make ResetFocusHere() return a boolean
  • 632aab3a0 FullscreenUI: Use InputTextWithIcon() for achievements login
  • 1c89c6436 FullscreenUI: Add search to game list
  • ce14eefd5 ObjectArchive: Swap to HTTPCache log channel
  • 3a9856660 FullscreenUI: Fix input text text colour in light theme
  • 6efef5b66 GameDB: PGXP-CPU for Digimon World 2
  • c1a9d78e7 RegTest: Fix crash on startup
  • c20a5c752 CPU: Copy entire value for zero shift cases
  • c8064e75d CPU: Fix flipped operands on PGXP shifts in recompiler
  • 0b4dfcd04 Settings: Remove unused field
  • b7b31ef97 Qt: Use 'Global' instead of 'Default' for inherited spinners
  • 2c527f4f2 Qt: Add reset buttons for tolerance/depth threshold
  • 7d1996827 Qt: Fix memory leaks in SVG helpers

latest-ls67

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 10 Jun 05:22
d3aa8e4

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls67/index.html

LinuxServer Changes:

Full Changelog: latest-ls66...latest-ls67

Remote Changes:

Commits

  • b0c277b10 optimization scanline-modern-ex.fx (#3733)
  • 717424209 GameDB: Various fixes (#3734)
  • 8dad651a2 GameDB: Add disc set for Persona 2 - Eternal Punishment (USA) (#3735)
  • 023c0823d Qt: Update French translation by Corrigo
  • ecc46d2d4 Qt: Don't draw OSD messages with zero opacity
  • 12450a1e0 CDImageCCD: Support loading ccd+img without sub
  • 6b5086900 Atualização Português do Brasil (#3737)
  • c71fdd60a GameDB: Decrease cdromMaxReadSpeedupCycles for Resident Evil 2 (#3736)
  • ee2530647 AudioStream: Reset staging buffer position (#3738)
  • faa37fd9c CI: Bump Xcode to 26.4 (#3713)
  • f6da96077 CI: Bump dependencies to 20260512
  • 7e98f1717 GameDB: Force Round Texture Coordinates for Lego Island 2
  • dfc894c88 AudioStream: Tidy up more state reset
  • 7b6316189 FullscreenUI: Fix unused variable warning
  • 33663c5ea Qt: Work around broken build in latest MSVC versions
  • e1d9414ec Qt: Make binding tooltips/multi-window localisable
  • a2a12da4b GPUDevice: Pack local state in struct
  • 22a3302fa DynamicLibrary: Add symbol resolution helpers
  • 7ee8fbc42 DiscordPresence: Use ResolveSymbols()
  • 16d1dcb84 GPUDevice: Use ResolveSymbols()
  • 4c89ddb00 VulkanDevice: Use ResolveSymbols()
  • ad70cffd9 MediaCapture: Use ResolveSymbols()
  • 59a3e09fa MediaCapture: Eliminate global load mutex
  • 2225d366b GPUDevice: Pack shaderc/spirv-cross function pointers together
  • 1758f43d9 ImGuiManager: Use 1/255 as opacity threshold
  • 32af8280b optimization scanline-modern shader (#3742)
  • 74cca15c2 Atualização Português do Brasil (#3741)
  • 833dd2c9b Update Russian translation (#3740)
  • dc5c5b7c3 GameDB: A few more fixes (#3739)
  • 77ecf9939 MSBuild: Enable segment heap via vsprops
  • 2307ad9b0 CMake: Drop Win32/MSVC specific paths. Use MSBuild.
  • 5e57ff57d CDROM: Fix incorrect stat response in test command
  • 1c936c496 DMA: Enforce read-only bits in OTC channel control
  • fc72f17a5 CI: Drop unused input (#3743)
  • 8f818af6d GPU/HW: Remove unnecessary reference to backend in texture cache
  • f484af5f4 GPU: Merge gpu.cpp and gpu_commands.cpp
  • b123c8e2b GPU: Convert frontend to namespace
  • 4e0374ef8 GPU: Slightly faster path for DMA writes
  • 3dd7497f6 GPU: Use InlineFIFOQueue
  • d89476ad2 GPU: Fix incorrect bitmask for command primitives
  • e6b938af3 CDROM: Fix incorrect date in comment
  • f2e629f7e Achievements: Fix game not loading after token-expired late login
  • cdb26ee7b ImGuiManager: Return wants_keyboard for all generic inputs
  • 590605b8d FullscreenUI: Don't override existing window in PauseAndOpenMenuFromCoreThread()
  • e903ff716 HTTPCache: Remove downloader mutex
  • cf62df552 HTTPCache: Notify host when downloader is active
  • 5b446d702 HTTPDownloader: Add owner tracking to requests
  • 2091cb101 HTTPDownloader: Don't poll requests when cancelling
  • 6e5877634 Achievements: Use request owner for waiting for server calls
  • de8f42733 Qt: Avoid double cancellation in updater
  • 8ae5c854e Qt: Add AsyncHTTPRequest class
  • fc8446de6 Qt: Use main HTTP downloader for updater
  • 29ba624f2 HTTPDownloader: Convert to namespace
  • d7464e295 Spanish (Spain) translation update (#3744)
  • 2467a7b1b Timers: Correctly handle sync mode 0/3 for timer 2
  • 8347d1de9 Bus: Add option for enabling PCSX expansion region
  • fab306cc7 FullscreenUI: Fix adapter list not updating on renderer change
  • 83a1b0c45 Deps: Update to 20260526
  • 2f4aafd0d Qt: Expose debugger and exit in toolbar
  • d7c2e7785 Qt: Minimize controller SVGs
  • 68da2ea9f Qt: Add monochrome icon theme
  • 4cf5f38a8 Qt: Add ThemeSVGIconEngine to replace use of Qt SVG
  • d58bfaacf Qt: Add more monochrome icons
  • 6fccb181d Qt: Remove separate colour icon SVGs
  • 65394a2b9 Qt: Remove unused PNG icons
  • 49f5f38c4 Qt: Don't use QIcon::fromTheme()
  • 538a82ad4 Qt: Set isMask property on menu bar action icons on MacOS
  • 891ae3d9e ImGuiOverlays: Don't draw outline on status indicators
  • 9e39295f0 Qt: Add icon to empty game list page
  • f0ee83489 FullscreenUI: Optimize SVGs
  • e4147da58 Qt: Optimize checkbox SVGs that were previously missed
  • f352619a9 Qt: Move ReadFileToByteArray() to QtUtils
  • 51457c22e Qt: Add SVGWidget
  • 099f8bdd2 Qt: Rename ThemeSVGIconEngine to SVGIconEngine
  • dddc09122 FullscreenUI: Fix double scaling of some UI elements
  • ad676f7e3 FullscreenUI: Preserve aspect ratio of SVG images
  • 8fe9077ca Qt: Store controller images in main data instead of qrc
  • de69bc496 FullscreenUI: Add images to controller settings
  • 5ad980b32 Qt: Fix incorrect icon path
  • 70ec9c491 SPU: show friendly reverb mode names in debug window
  • a3f4a086e SPU: increase volume display precision in debug window
  • ef7637413 SPU: Use display fractional volume for voices as well
  • 5a21a6c8d Host: Add icon to ConfirmMessageAsync()
  • 61b31b3e2 Update Azerbaijani Translation (#3745)
  • b429993e0 Qt: Move most recent migration to updater
  • 21c6ab582 Qt: Use SVGWidget for empty game list icon
  • 15bfa50ce Qt: Make SVGWidget respond to palette changes
  • c1165ab03 MediaCapture: Fix Media Foundation refusing to load
  • 00733714c CDImageCue: Remove unused variable
  • bbde5c661 CueParser: Switch to fmt for errors
  • e40105020 Qt: Preserve aspect ratio in SVGIconEngine
  • f93965b84 Qt: Handle icon state in SVGIconEngine
  • 11216ccd5 Qt: Tint non-coloured disabled icons in SVGIconEngine
  • 872d6092b Qt: Use SVGWidget for icon in debugging settings
  • 86b3c0e7d Qt: Fix missing monochrome in controller settings
  • e8938f063 Qt: Remove more unused icons

latest-ls66

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 03 Jun 05:50
1d1ea5c

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls66/index.html

LinuxServer Changes:

Full Changelog: latest-ls65...latest-ls66

Remote Changes:

Commits

  • b0c277b10 optimization scanline-modern-ex.fx (#3733)
  • 717424209 GameDB: Various fixes (#3734)
  • 8dad651a2 GameDB: Add disc set for Persona 2 - Eternal Punishment (USA) (#3735)
  • 023c0823d Qt: Update French translation by Corrigo
  • ecc46d2d4 Qt: Don't draw OSD messages with zero opacity
  • 12450a1e0 CDImageCCD: Support loading ccd+img without sub
  • 6b5086900 Atualização Português do Brasil (#3737)
  • c71fdd60a GameDB: Decrease cdromMaxReadSpeedupCycles for Resident Evil 2 (#3736)
  • ee2530647 AudioStream: Reset staging buffer position (#3738)
  • faa37fd9c CI: Bump Xcode to 26.4 (#3713)
  • f6da96077 CI: Bump dependencies to 20260512
  • 7e98f1717 GameDB: Force Round Texture Coordinates for Lego Island 2
  • dfc894c88 AudioStream: Tidy up more state reset
  • 7b6316189 FullscreenUI: Fix unused variable warning
  • 33663c5ea Qt: Work around broken build in latest MSVC versions
  • e1d9414ec Qt: Make binding tooltips/multi-window localisable
  • a2a12da4b GPUDevice: Pack local state in struct
  • 22a3302fa DynamicLibrary: Add symbol resolution helpers
  • 7ee8fbc42 DiscordPresence: Use ResolveSymbols()
  • 16d1dcb84 GPUDevice: Use ResolveSymbols()
  • 4c89ddb00 VulkanDevice: Use ResolveSymbols()
  • ad70cffd9 MediaCapture: Use ResolveSymbols()
  • 59a3e09fa MediaCapture: Eliminate global load mutex
  • 2225d366b GPUDevice: Pack shaderc/spirv-cross function pointers together
  • 1758f43d9 ImGuiManager: Use 1/255 as opacity threshold
  • 32af8280b optimization scanline-modern shader (#3742)
  • 74cca15c2 Atualização Português do Brasil (#3741)
  • 833dd2c9b Update Russian translation (#3740)
  • dc5c5b7c3 GameDB: A few more fixes (#3739)
  • 77ecf9939 MSBuild: Enable segment heap via vsprops
  • 2307ad9b0 CMake: Drop Win32/MSVC specific paths. Use MSBuild.
  • 5e57ff57d CDROM: Fix incorrect stat response in test command
  • 1c936c496 DMA: Enforce read-only bits in OTC channel control
  • fc72f17a5 CI: Drop unused input (#3743)
  • 8f818af6d GPU/HW: Remove unnecessary reference to backend in texture cache
  • f484af5f4 GPU: Merge gpu.cpp and gpu_commands.cpp
  • b123c8e2b GPU: Convert frontend to namespace
  • 4e0374ef8 GPU: Slightly faster path for DMA writes
  • 3dd7497f6 GPU: Use InlineFIFOQueue
  • d89476ad2 GPU: Fix incorrect bitmask for command primitives
  • e6b938af3 CDROM: Fix incorrect date in comment
  • f2e629f7e Achievements: Fix game not loading after token-expired late login
  • cdb26ee7b ImGuiManager: Return wants_keyboard for all generic inputs
  • 590605b8d FullscreenUI: Don't override existing window in PauseAndOpenMenuFromCoreThread()
  • e903ff716 HTTPCache: Remove downloader mutex
  • cf62df552 HTTPCache: Notify host when downloader is active
  • 5b446d702 HTTPDownloader: Add owner tracking to requests
  • 2091cb101 HTTPDownloader: Don't poll requests when cancelling
  • 6e5877634 Achievements: Use request owner for waiting for server calls
  • de8f42733 Qt: Avoid double cancellation in updater
  • 8ae5c854e Qt: Add AsyncHTTPRequest class
  • fc8446de6 Qt: Use main HTTP downloader for updater
  • 29ba624f2 HTTPDownloader: Convert to namespace
  • d7464e295 Spanish (Spain) translation update (#3744)
  • 2467a7b1b Timers: Correctly handle sync mode 0/3 for timer 2
  • 8347d1de9 Bus: Add option for enabling PCSX expansion region
  • fab306cc7 FullscreenUI: Fix adapter list not updating on renderer change
  • 83a1b0c45 Deps: Update to 20260526
  • 2f4aafd0d Qt: Expose debugger and exit in toolbar
  • d7c2e7785 Qt: Minimize controller SVGs
  • 68da2ea9f Qt: Add monochrome icon theme
  • 4cf5f38a8 Qt: Add ThemeSVGIconEngine to replace use of Qt SVG
  • d58bfaacf Qt: Add more monochrome icons
  • 6fccb181d Qt: Remove separate colour icon SVGs
  • 65394a2b9 Qt: Remove unused PNG icons
  • 49f5f38c4 Qt: Don't use QIcon::fromTheme()
  • 538a82ad4 Qt: Set isMask property on menu bar action icons on MacOS
  • 891ae3d9e ImGuiOverlays: Don't draw outline on status indicators
  • 9e39295f0 Qt: Add icon to empty game list page
  • f0ee83489 FullscreenUI: Optimize SVGs
  • e4147da58 Qt: Optimize checkbox SVGs that were previously missed
  • f352619a9 Qt: Move ReadFileToByteArray() to QtUtils
  • 51457c22e Qt: Add SVGWidget
  • 099f8bdd2 Qt: Rename ThemeSVGIconEngine to SVGIconEngine
  • dddc09122 FullscreenUI: Fix double scaling of some UI elements
  • ad676f7e3 FullscreenUI: Preserve aspect ratio of SVG images
  • 8fe9077ca Qt: Store controller images in main data instead of qrc
  • de69bc496 FullscreenUI: Add images to controller settings
  • 5ad980b32 Qt: Fix incorrect icon path
  • 70ec9c491 SPU: show friendly reverb mode names in debug window
  • a3f4a086e SPU: increase volume display precision in debug window
  • ef7637413 SPU: Use display fractional volume for voices as well
  • 5a21a6c8d Host: Add icon to ConfirmMessageAsync()
  • 61b31b3e2 Update Azerbaijani Translation (#3745)
  • b429993e0 Qt: Move most recent migration to updater
  • 21c6ab582 Qt: Use SVGWidget for empty game list icon
  • 15bfa50ce Qt: Make SVGWidget respond to palette changes
  • c1165ab03 MediaCapture: Fix Media Foundation refusing to load
  • 00733714c CDImageCue: Remove unused variable
  • bbde5c661 CueParser: Switch to fmt for errors
  • e40105020 Qt: Preserve aspect ratio in SVGIconEngine
  • f93965b84 Qt: Handle icon state in SVGIconEngine
  • 11216ccd5 Qt: Tint non-coloured disabled icons in SVGIconEngine
  • 872d6092b Qt: Use SVGWidget for icon in debugging settings
  • 86b3c0e7d Qt: Fix missing monochrome in controller settings
  • e8938f063 Qt: Remove more unused icons

latest-ls65

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 27 May 05:22
0bb8653

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls65/index.html

LinuxServer Changes:

Full Changelog: latest-ls64...latest-ls65

Remote Changes:

Commits

  • 3f502579f GPU/TextureCache: Dump textures to first disc directory
  • 23d79f8a5 Qt: Fix themed slider disabled state
  • 45460b906 PostProcessing/Slang: Skip over C-style comments in preset files
  • ae44fa6f7 PostProcessing/Slang: Support parsing simple/reference presets
  • 495141ab5 Qt: Fix postfx shader list with multiple nesting levels
  • 8bb8fdd20 Update gpu_hw_shadergen.cpp (#3728)
  • 558973f20 GPU/HW: Fix rare VRAM corruption after state load
  • 0d60433e9 GameDB: Otona no Asobi again
  • 4d95bb34e OpenGLDevice: Fix various issues in stream buffer
  • bbffe729a OpenGLDevice: Disable PBOs completely on NVIDIA
  • c7027a272 CDROM: Fix off-by-one error
  • c2041702d FullscreenUI: Always reset transition before executing it
  • 650c60e9e FullscreenUI: Fix fade transition on game exit
  • 73a74b359 System: Remove unnecessary state function
  • a94a90f34 CPU: Fix some unlikely-to-be-triggered issues
  • 566ef446d DMA: Fix DICR register write mask
  • ac7aa0d9f GPU: Fix incorrect debug log message
  • 5823a0103 MDEC: Fix incorrect halfword tracking for some commands
  • cfcfd8f86 CPU/Recompiler: Various minor error fixes
  • 4780bfa35 Pad: Fix incorrect log message
  • 50b545c36 Pad: Fix device_index with multitap 2 active
  • ba7b5cdef SPU: Fix a couple of log and debug window fields
  • acb546b87 SPU: Fix inverted volume level in voice register read
  • 0c41d8131 SPU: Fix incorrect DMA overread handling
  • 0b4b9a102 MemoryCard: Fix incorrect ACK at end of read
  • bde74c54d MemoryCard: Fix incorrect output byte at end of write
  • d85dcdb5f MemoryCard: Fix incorrect state/ack at end of ID read
  • 6bd6a8d12 Timers: Interrupt request should be cleared after mode write
  • 03a61b7ce Timers: Fix repeated IRQs possibly scheduling late
  • 8601189df Bus: Fix incorrect logging of EXP1 memory timing
  • 0eb8db8d2 Bus: Fix incorrect region pointer for RAMMirror3
  • 077f23450 Bus: Fix error propagation in InjectExecutable()
  • 2734a1bf1 Bus: Fix incorrect write mask for EXP1/EXP2 base
  • ebe6af96c GTE: INTPL should be 8 cycles
  • d80c5b9c3 VideoPresenter: Fix incorrect UVs for Rotate180 case
  • 0016ef0e7 VideoPresenter: Fix incorrect changed flag when reloading overlay
  • cc662e69b VideoThread: Fix dead code in VideoThreadEntryPoint()
  • 2c1894709 VideoThread: Fix incorrect command size
  • 3535455f4 ImGuiOverlays: Remove unused macro
  • fa38d4f3f ImGuiOverlays: Fix incorrect capture box height
  • 2d4259e17 ImGuiOverlays: Fix incorrect frame time calculation
  • da339e477 MemoryScanner: Set changed flag in RemoveEntryByDescription()
  • 63f5a6a5b SoundEffectManager: Fix buffer overallocation in upmix/shift path
  • 66ddcae05 Justifier: Remove unused function
  • 16ceae8bc Justifier: Last byte shouldn't ACK
  • da7a2ccbd PlayStationMouse: Fix X sensitivity being used for Y
  • c9c76453a InterruptController: Fix incorrect branch hint
  • 17bea4719 AudioStream: Fix backend names not being translated on lookup
  • 274d87ef1 CubebAudioStream: Fix a few logging errors
  • f40a3c85f SDLAudioStream: Fix inconsistent start API usage
  • 692e7ce03 WAVReader: Fix non-s16 handling in SeekToFrame()
  • cac0eac05 GameList: Remove unused function
  • 7b802e6b8 GameList: Fix incorrect constants in played time parsing
  • 9a440652b GameDatabase: Fix incorrect log messages
  • 3d43cfa42 GameDatabase: Fix setting wrong settings object
  • 385ee9d30 GameDatabase: Add missing flush check for SaveToCache()
  • 40b68939e System: Fix video capture args being read incorrectly
  • 66702bc71 System: Fix some incorrect error messages
  • ccfa0f493 System: Remove a couple of redundant comparisons
  • 21f683555 CDImagePPF: Fix possible overpatching on spanning sectors
  • 08015f192 CDImagePPF: Fix possible integer underflow in short files
  • efc623c98 CDImagePBP: Fix error propagation in SwitchSubImage()
  • 32f816304 CDImageMDS: Fix use of 32-bit fseek()
  • 4a24d2930 CDImageDevice: Fix incorrectly formatted log messages
  • 4e1cdd5d8 CDImageCue: Fix inconsistent size in ECMTrackFileInterface::Read()
  • 687059dda CDImageM3u: Simplify whitespace trimming
  • 1494c6b6f PostProcessing: Fix OOB write in ParseVector()
  • d5c22fc62 PostProcessing/FX: Fix PingPong state not being written back
  • 1c9b0a95b PostProcessing/Slang: Fix include depth not being tracked
  • 3ce975391 PostProcessing/Slang: Add missing Original scale type handling
  • a9da0d86a Sockets: Fix various issues
  • bd6f99800 ISOReader: Fix incorrect timestamp calculation
  • 29ca1cbc8 GPUDevice: Fix incorrect log message
  • fc9ce7fb2 GPUDevice: Fix incorrect RG16/RG16F pixel size
  • 4e963c1fb System: Add capture file name format options
  • 86aabe307 D3DCommon: Fix a bunch of copy/paste errors
  • 730c44fef D3D11Device: Fix a couple of incorrect log messages
  • 414f9f64a D3D12Device: Fix incorrect subresource calculation
  • 9706df029 D3D12Device: Use move in D3D12DownloadTexture destructor
  • 56f075688 MetalDevice: Fix various issues
  • 6f405d9ee GPUDevice: Don't reserve unnecessary byte in stream buffer
  • 690fcb674 System: Log disc details when booting
  • cece5222c OpenGLDevice: Fix incorrect mipmap step in upload
  • 49eb1ab23 OpenGLDevice: Fix off-by-one in Map() range check
  • d940fb391 OpenGLDevice: Fix incorrect DSB binding without binding layout
  • 2ac48161f OpenGLTexture: Fix a couple of incorrect format mappings
  • f0b6ea978 VulkanDevice: Fix incorrect pointer alignment check
  • a4904ddb0 VulkanDevice: Add missing swap of m_allocation
  • 0f5124996 Achievements: Fix null pointer check in BeginRefreshHashDatabase()
  • 2a85f6734 FullscreenUI: Fix possible OOB on bad config
  • 0e3c4714d FullscreenUI: Fix file dialog without filter set
  • 22378bd9c FullscreenUI: Add fade transition to file selector
  • 2b100621a FullscreenUI: Fix possible RemoveHook() call on wrong thread
  • d3edaf50e FullscreenUI: Use insert_or_assign() in SetCoverCacheEntry()
  • d2e94217c Qt: Fix config binding of audio capture extra args
  • 41a939f34 Qt: Fix resize-loading case for getCoverForEntry()
  • ecc1fe260 Qt: Fix a couple of incorrect config keys in reset path
  • d326c8bc7 Qt: Fix incorrect signal block in game summary
  • 4ae89e294 Qt: Fix reading from UI thread in computeImageHash()
  • 30583b444 Qt: Fix incorrect read in texture replacement settings export
  • 00c956f4a Qt: Fix incorrect settings save after automap
  • 182c87d76 Qt: Add missing master enable update in cheat settings
  • 387d8b378 Qt: Remove redundant setNewBinding() in effect binding
  • 0995654db Qt: Add null pointer check to hotkey setFilter()
  • 5de2b77d0 CPU/CodeCache: Fix redundant begin/end code write
  • 2af1cd640 CPU/CodeCache: lwc2/swc2 should not read rt in backprop
  • 0a816b657 CPU/CodeCache: Fix blocks ending up perpetually in interpreter fallback
  • 23c94c5bd TimingEvent: Add missing current_event check in SortEvent()
  • 89560f81d GDBServer: Fix incorrect shift in $G handler
  • dd25610e3 GDBServer: Fix incorrect hex decode in $M handler
  • 091d1b625 GDBServer: Fix double ack after single step
  • 59b4fb84a GDBServer: Send SIGTRAP on system pause
  • 6c6390286 Fix translation errors (AZ) (#3730)
  • df64109df TimingEvents: Fix overzealous assertion
  • f9254e23f CPU/CodeCache: Pack state in struct
  • abf3b8cc0 CPU/CodeCache: Move JIT write protect out of MemMap
  • 120d04958 Modern Lossless Dynamic Quantization Scanline Shader (#3731)
  • 12989d2bc VideoThread: Use thread instead of handle
  • 53c4176a1 CPU/CodeCache: Don't skip filling backprop for first instruction
  • 5d92da522 TimingEvents: Remove ticks_late parameter
  • dea048016 AudioStream: Reintroduce XAudio2 backend
  • c1d24b4e9 dep/cubeb: Bump to a37dadd
  • 242b4b814 FullscreenUI: Fix files showing in directory selector
  • 28297a3ae VideoThread: Pass clamped dimensions to thread
  • 153fa1d23 Core: Get rid of base settings layer overrides
  • 85c0b4eff System: Move gamescope screensaver hack to QtHost
  • 71dafa719 System: Move socket multiplexer into GDBServer
  • cc1775f0b System: Move Discord presence into its own file
  • 678b6101e System: Move more core functionality out of file
  • 70c6d5a1d VideoThread: Move private functions into own file
  • 0b6d41e63 Achievements: Don't defer badge prefetch on game load
  • 56783acc7 Qt: Use delete icon for restoring custom titles
  • 348eaeef6 TaskQueue: Support single-threaded operation
  • 735dc5ba2 Core: Centralize the async task queue
  • b2d0fbdcb clang-format: Add lambda options
  • 54c6a9faa Hotkeys: Make more formatting-friendly
  • 00908b1b1 Qt: Remove some unnecessary includes
  • 86fd69332 Qt: Use better title for capture file name format
  • 122bd30ba Qt: Move RAIntegration setting to advanced settings
  • 6513e4778 Achievements: Add progress indicator mode option
  • d2e770131 dep/rcheevos: Increase the time the progress tracker is shown
  • d1f597588 FullscreenUI: Fix load/save state leaving system paused
  • 8ddaac326 Achievements: Add alpha to progress bars
  • 38bbc115c Data: Add additional fonts
  • bbe65219a ImGuiManager: Support multiple text fonts
  • 9950e2243 SoundEffectManager: Fix low chance of deadlock on shutdown
  • f7d937cb0 Qt: Fix debugger ignoring all messages
  • acbb76c00 Qt: Fix off-by-one in edit RAM callback
  • f080e798e Qt: Fix possible underflow in debugger wheelEvent()
  • 9a410416e Qt: Fix incorrect colour of bytes in debugger
  • 9f385b27f Qt: Fix last-data buffer management in MemoryViewWidget
  • 970e191fa Qt: Improve debugger arrow drawing
  • 2f35493d2 scanline-modern-ex.fx Minor optimizations and adjustments (#3732)
  • 5731aa87a CI: Pass --fail to curl downloads
  • 3fb89483b GPU/HW: Fix MMPX Quality compilation in Metal
  • 730dcd9a9 VideoThread: Assert not on thread for async calls
  • 1200cd589 FullscreenUI: Rework pause menu opening
  • 75eddf171 Achievements: Adjust pause menu box padding
  • e4c55ad02 Achieve...
Read more

latest-ls64

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 20 May 05:06
179538d

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls64/index.html

LinuxServer Changes:

Full Changelog: latest-ls63...latest-ls64

Remote Changes:

Commits

  • 3f502579f GPU/TextureCache: Dump textures to first disc directory
  • 23d79f8a5 Qt: Fix themed slider disabled state
  • 45460b906 PostProcessing/Slang: Skip over C-style comments in preset files
  • ae44fa6f7 PostProcessing/Slang: Support parsing simple/reference presets
  • 495141ab5 Qt: Fix postfx shader list with multiple nesting levels
  • 8bb8fdd20 Update gpu_hw_shadergen.cpp (#3728)
  • 558973f20 GPU/HW: Fix rare VRAM corruption after state load
  • 0d60433e9 GameDB: Otona no Asobi again
  • 4d95bb34e OpenGLDevice: Fix various issues in stream buffer
  • bbffe729a OpenGLDevice: Disable PBOs completely on NVIDIA
  • c7027a272 CDROM: Fix off-by-one error
  • c2041702d FullscreenUI: Always reset transition before executing it
  • 650c60e9e FullscreenUI: Fix fade transition on game exit
  • 73a74b359 System: Remove unnecessary state function
  • a94a90f34 CPU: Fix some unlikely-to-be-triggered issues
  • 566ef446d DMA: Fix DICR register write mask
  • ac7aa0d9f GPU: Fix incorrect debug log message
  • 5823a0103 MDEC: Fix incorrect halfword tracking for some commands
  • cfcfd8f86 CPU/Recompiler: Various minor error fixes
  • 4780bfa35 Pad: Fix incorrect log message
  • 50b545c36 Pad: Fix device_index with multitap 2 active
  • ba7b5cdef SPU: Fix a couple of log and debug window fields
  • acb546b87 SPU: Fix inverted volume level in voice register read
  • 0c41d8131 SPU: Fix incorrect DMA overread handling
  • 0b4b9a102 MemoryCard: Fix incorrect ACK at end of read
  • bde74c54d MemoryCard: Fix incorrect output byte at end of write
  • d85dcdb5f MemoryCard: Fix incorrect state/ack at end of ID read
  • 6bd6a8d12 Timers: Interrupt request should be cleared after mode write
  • 03a61b7ce Timers: Fix repeated IRQs possibly scheduling late
  • 8601189df Bus: Fix incorrect logging of EXP1 memory timing
  • 0eb8db8d2 Bus: Fix incorrect region pointer for RAMMirror3
  • 077f23450 Bus: Fix error propagation in InjectExecutable()
  • 2734a1bf1 Bus: Fix incorrect write mask for EXP1/EXP2 base
  • ebe6af96c GTE: INTPL should be 8 cycles
  • d80c5b9c3 VideoPresenter: Fix incorrect UVs for Rotate180 case
  • 0016ef0e7 VideoPresenter: Fix incorrect changed flag when reloading overlay
  • cc662e69b VideoThread: Fix dead code in VideoThreadEntryPoint()
  • 2c1894709 VideoThread: Fix incorrect command size
  • 3535455f4 ImGuiOverlays: Remove unused macro
  • fa38d4f3f ImGuiOverlays: Fix incorrect capture box height
  • 2d4259e17 ImGuiOverlays: Fix incorrect frame time calculation
  • da339e477 MemoryScanner: Set changed flag in RemoveEntryByDescription()
  • 63f5a6a5b SoundEffectManager: Fix buffer overallocation in upmix/shift path
  • 66ddcae05 Justifier: Remove unused function
  • 16ceae8bc Justifier: Last byte shouldn't ACK
  • da7a2ccbd PlayStationMouse: Fix X sensitivity being used for Y
  • c9c76453a InterruptController: Fix incorrect branch hint
  • 17bea4719 AudioStream: Fix backend names not being translated on lookup
  • 274d87ef1 CubebAudioStream: Fix a few logging errors
  • f40a3c85f SDLAudioStream: Fix inconsistent start API usage
  • 692e7ce03 WAVReader: Fix non-s16 handling in SeekToFrame()
  • cac0eac05 GameList: Remove unused function
  • 7b802e6b8 GameList: Fix incorrect constants in played time parsing
  • 9a440652b GameDatabase: Fix incorrect log messages
  • 3d43cfa42 GameDatabase: Fix setting wrong settings object
  • 385ee9d30 GameDatabase: Add missing flush check for SaveToCache()
  • 40b68939e System: Fix video capture args being read incorrectly
  • 66702bc71 System: Fix some incorrect error messages
  • ccfa0f493 System: Remove a couple of redundant comparisons
  • 21f683555 CDImagePPF: Fix possible overpatching on spanning sectors
  • 08015f192 CDImagePPF: Fix possible integer underflow in short files
  • efc623c98 CDImagePBP: Fix error propagation in SwitchSubImage()
  • 32f816304 CDImageMDS: Fix use of 32-bit fseek()
  • 4a24d2930 CDImageDevice: Fix incorrectly formatted log messages
  • 4e1cdd5d8 CDImageCue: Fix inconsistent size in ECMTrackFileInterface::Read()
  • 687059dda CDImageM3u: Simplify whitespace trimming
  • 1494c6b6f PostProcessing: Fix OOB write in ParseVector()
  • d5c22fc62 PostProcessing/FX: Fix PingPong state not being written back
  • 1c9b0a95b PostProcessing/Slang: Fix include depth not being tracked
  • 3ce975391 PostProcessing/Slang: Add missing Original scale type handling
  • a9da0d86a Sockets: Fix various issues
  • bd6f99800 ISOReader: Fix incorrect timestamp calculation
  • 29ca1cbc8 GPUDevice: Fix incorrect log message
  • fc9ce7fb2 GPUDevice: Fix incorrect RG16/RG16F pixel size
  • 4e963c1fb System: Add capture file name format options
  • 86aabe307 D3DCommon: Fix a bunch of copy/paste errors
  • 730c44fef D3D11Device: Fix a couple of incorrect log messages
  • 414f9f64a D3D12Device: Fix incorrect subresource calculation
  • 9706df029 D3D12Device: Use move in D3D12DownloadTexture destructor
  • 56f075688 MetalDevice: Fix various issues
  • 6f405d9ee GPUDevice: Don't reserve unnecessary byte in stream buffer
  • 690fcb674 System: Log disc details when booting
  • cece5222c OpenGLDevice: Fix incorrect mipmap step in upload
  • 49eb1ab23 OpenGLDevice: Fix off-by-one in Map() range check
  • d940fb391 OpenGLDevice: Fix incorrect DSB binding without binding layout
  • 2ac48161f OpenGLTexture: Fix a couple of incorrect format mappings
  • f0b6ea978 VulkanDevice: Fix incorrect pointer alignment check
  • a4904ddb0 VulkanDevice: Add missing swap of m_allocation
  • 0f5124996 Achievements: Fix null pointer check in BeginRefreshHashDatabase()
  • 2a85f6734 FullscreenUI: Fix possible OOB on bad config
  • 0e3c4714d FullscreenUI: Fix file dialog without filter set
  • 22378bd9c FullscreenUI: Add fade transition to file selector
  • 2b100621a FullscreenUI: Fix possible RemoveHook() call on wrong thread
  • d3edaf50e FullscreenUI: Use insert_or_assign() in SetCoverCacheEntry()
  • d2e94217c Qt: Fix config binding of audio capture extra args
  • 41a939f34 Qt: Fix resize-loading case for getCoverForEntry()
  • ecc1fe260 Qt: Fix a couple of incorrect config keys in reset path
  • d326c8bc7 Qt: Fix incorrect signal block in game summary
  • 4ae89e294 Qt: Fix reading from UI thread in computeImageHash()
  • 30583b444 Qt: Fix incorrect read in texture replacement settings export
  • 00c956f4a Qt: Fix incorrect settings save after automap
  • 182c87d76 Qt: Add missing master enable update in cheat settings
  • 387d8b378 Qt: Remove redundant setNewBinding() in effect binding
  • 0995654db Qt: Add null pointer check to hotkey setFilter()
  • 5de2b77d0 CPU/CodeCache: Fix redundant begin/end code write
  • 2af1cd640 CPU/CodeCache: lwc2/swc2 should not read rt in backprop
  • 0a816b657 CPU/CodeCache: Fix blocks ending up perpetually in interpreter fallback
  • 23c94c5bd TimingEvent: Add missing current_event check in SortEvent()
  • 89560f81d GDBServer: Fix incorrect shift in $G handler
  • dd25610e3 GDBServer: Fix incorrect hex decode in $M handler
  • 091d1b625 GDBServer: Fix double ack after single step
  • 59b4fb84a GDBServer: Send SIGTRAP on system pause
  • 6c6390286 Fix translation errors (AZ) (#3730)
  • df64109df TimingEvents: Fix overzealous assertion
  • f9254e23f CPU/CodeCache: Pack state in struct
  • abf3b8cc0 CPU/CodeCache: Move JIT write protect out of MemMap
  • 120d04958 Modern Lossless Dynamic Quantization Scanline Shader (#3731)
  • 12989d2bc VideoThread: Use thread instead of handle
  • 53c4176a1 CPU/CodeCache: Don't skip filling backprop for first instruction
  • 5d92da522 TimingEvents: Remove ticks_late parameter
  • dea048016 AudioStream: Reintroduce XAudio2 backend
  • c1d24b4e9 dep/cubeb: Bump to a37dadd
  • 242b4b814 FullscreenUI: Fix files showing in directory selector
  • 28297a3ae VideoThread: Pass clamped dimensions to thread
  • 153fa1d23 Core: Get rid of base settings layer overrides
  • 85c0b4eff System: Move gamescope screensaver hack to QtHost
  • 71dafa719 System: Move socket multiplexer into GDBServer
  • cc1775f0b System: Move Discord presence into its own file
  • 678b6101e System: Move more core functionality out of file
  • 70c6d5a1d VideoThread: Move private functions into own file
  • 0b6d41e63 Achievements: Don't defer badge prefetch on game load
  • 56783acc7 Qt: Use delete icon for restoring custom titles
  • 348eaeef6 TaskQueue: Support single-threaded operation
  • 735dc5ba2 Core: Centralize the async task queue
  • b2d0fbdcb clang-format: Add lambda options
  • 54c6a9faa Hotkeys: Make more formatting-friendly
  • 00908b1b1 Qt: Remove some unnecessary includes
  • 86fd69332 Qt: Use better title for capture file name format
  • 122bd30ba Qt: Move RAIntegration setting to advanced settings
  • 6513e4778 Achievements: Add progress indicator mode option
  • d2e770131 dep/rcheevos: Increase the time the progress tracker is shown
  • d1f597588 FullscreenUI: Fix load/save state leaving system paused
  • 8ddaac326 Achievements: Add alpha to progress bars
  • 38bbc115c Data: Add additional fonts
  • bbe65219a ImGuiManager: Support multiple text fonts
  • 9950e2243 SoundEffectManager: Fix low chance of deadlock on shutdown
  • f7d937cb0 Qt: Fix debugger ignoring all messages
  • acbb76c00 Qt: Fix off-by-one in edit RAM callback
  • f080e798e Qt: Fix possible underflow in debugger wheelEvent()
  • 9a410416e Qt: Fix incorrect colour of bytes in debugger
  • 9f385b27f Qt: Fix last-data buffer management in MemoryViewWidget
  • 970e191fa Qt: Improve debugger arrow drawing
  • 2f35493d2 scanline-modern-ex.fx Minor optimizations and adjustments (#3732)
  • 5731aa87a CI: Pass --fail to curl downloads
  • 3fb89483b GPU/HW: Fix MMPX Quality compilation in Metal
  • 730dcd9a9 VideoThread: Assert not on thread for async calls
  • 1200cd589 FullscreenUI: Rework pause menu opening
  • 75eddf171 Achievements: Adjust pause menu box padding
  • e4c55ad02 Achieve...
Read more

latest-ls63

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 13 May 18:10
fbce41c

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls63/index.html

LinuxServer Changes:

Full Changelog: latest-ls62...latest-ls63

Remote Changes:

Commits

  • 3f502579f GPU/TextureCache: Dump textures to first disc directory
  • 23d79f8a5 Qt: Fix themed slider disabled state
  • 45460b906 PostProcessing/Slang: Skip over C-style comments in preset files
  • ae44fa6f7 PostProcessing/Slang: Support parsing simple/reference presets
  • 495141ab5 Qt: Fix postfx shader list with multiple nesting levels
  • 8bb8fdd20 Update gpu_hw_shadergen.cpp (#3728)
  • 558973f20 GPU/HW: Fix rare VRAM corruption after state load
  • 0d60433e9 GameDB: Otona no Asobi again
  • 4d95bb34e OpenGLDevice: Fix various issues in stream buffer
  • bbffe729a OpenGLDevice: Disable PBOs completely on NVIDIA
  • c7027a272 CDROM: Fix off-by-one error
  • c2041702d FullscreenUI: Always reset transition before executing it
  • 650c60e9e FullscreenUI: Fix fade transition on game exit
  • 73a74b359 System: Remove unnecessary state function
  • a94a90f34 CPU: Fix some unlikely-to-be-triggered issues
  • 566ef446d DMA: Fix DICR register write mask
  • ac7aa0d9f GPU: Fix incorrect debug log message
  • 5823a0103 MDEC: Fix incorrect halfword tracking for some commands
  • cfcfd8f86 CPU/Recompiler: Various minor error fixes
  • 4780bfa35 Pad: Fix incorrect log message
  • 50b545c36 Pad: Fix device_index with multitap 2 active
  • ba7b5cdef SPU: Fix a couple of log and debug window fields
  • acb546b87 SPU: Fix inverted volume level in voice register read
  • 0c41d8131 SPU: Fix incorrect DMA overread handling
  • 0b4b9a102 MemoryCard: Fix incorrect ACK at end of read
  • bde74c54d MemoryCard: Fix incorrect output byte at end of write
  • d85dcdb5f MemoryCard: Fix incorrect state/ack at end of ID read
  • 6bd6a8d12 Timers: Interrupt request should be cleared after mode write
  • 03a61b7ce Timers: Fix repeated IRQs possibly scheduling late
  • 8601189df Bus: Fix incorrect logging of EXP1 memory timing
  • 0eb8db8d2 Bus: Fix incorrect region pointer for RAMMirror3
  • 077f23450 Bus: Fix error propagation in InjectExecutable()
  • 2734a1bf1 Bus: Fix incorrect write mask for EXP1/EXP2 base
  • ebe6af96c GTE: INTPL should be 8 cycles
  • d80c5b9c3 VideoPresenter: Fix incorrect UVs for Rotate180 case
  • 0016ef0e7 VideoPresenter: Fix incorrect changed flag when reloading overlay
  • cc662e69b VideoThread: Fix dead code in VideoThreadEntryPoint()
  • 2c1894709 VideoThread: Fix incorrect command size
  • 3535455f4 ImGuiOverlays: Remove unused macro
  • fa38d4f3f ImGuiOverlays: Fix incorrect capture box height
  • 2d4259e17 ImGuiOverlays: Fix incorrect frame time calculation
  • da339e477 MemoryScanner: Set changed flag in RemoveEntryByDescription()
  • 63f5a6a5b SoundEffectManager: Fix buffer overallocation in upmix/shift path
  • 66ddcae05 Justifier: Remove unused function
  • 16ceae8bc Justifier: Last byte shouldn't ACK
  • da7a2ccbd PlayStationMouse: Fix X sensitivity being used for Y
  • c9c76453a InterruptController: Fix incorrect branch hint
  • 17bea4719 AudioStream: Fix backend names not being translated on lookup
  • 274d87ef1 CubebAudioStream: Fix a few logging errors
  • f40a3c85f SDLAudioStream: Fix inconsistent start API usage
  • 692e7ce03 WAVReader: Fix non-s16 handling in SeekToFrame()
  • cac0eac05 GameList: Remove unused function
  • 7b802e6b8 GameList: Fix incorrect constants in played time parsing
  • 9a440652b GameDatabase: Fix incorrect log messages
  • 3d43cfa42 GameDatabase: Fix setting wrong settings object
  • 385ee9d30 GameDatabase: Add missing flush check for SaveToCache()
  • 40b68939e System: Fix video capture args being read incorrectly
  • 66702bc71 System: Fix some incorrect error messages
  • ccfa0f493 System: Remove a couple of redundant comparisons
  • 21f683555 CDImagePPF: Fix possible overpatching on spanning sectors
  • 08015f192 CDImagePPF: Fix possible integer underflow in short files
  • efc623c98 CDImagePBP: Fix error propagation in SwitchSubImage()
  • 32f816304 CDImageMDS: Fix use of 32-bit fseek()
  • 4a24d2930 CDImageDevice: Fix incorrectly formatted log messages
  • 4e1cdd5d8 CDImageCue: Fix inconsistent size in ECMTrackFileInterface::Read()
  • 687059dda CDImageM3u: Simplify whitespace trimming
  • 1494c6b6f PostProcessing: Fix OOB write in ParseVector()
  • d5c22fc62 PostProcessing/FX: Fix PingPong state not being written back
  • 1c9b0a95b PostProcessing/Slang: Fix include depth not being tracked
  • 3ce975391 PostProcessing/Slang: Add missing Original scale type handling
  • a9da0d86a Sockets: Fix various issues
  • bd6f99800 ISOReader: Fix incorrect timestamp calculation
  • 29ca1cbc8 GPUDevice: Fix incorrect log message
  • fc9ce7fb2 GPUDevice: Fix incorrect RG16/RG16F pixel size
  • 4e963c1fb System: Add capture file name format options
  • 86aabe307 D3DCommon: Fix a bunch of copy/paste errors
  • 730c44fef D3D11Device: Fix a couple of incorrect log messages
  • 414f9f64a D3D12Device: Fix incorrect subresource calculation
  • 9706df029 D3D12Device: Use move in D3D12DownloadTexture destructor
  • 56f075688 MetalDevice: Fix various issues
  • 6f405d9ee GPUDevice: Don't reserve unnecessary byte in stream buffer
  • 690fcb674 System: Log disc details when booting
  • cece5222c OpenGLDevice: Fix incorrect mipmap step in upload
  • 49eb1ab23 OpenGLDevice: Fix off-by-one in Map() range check
  • d940fb391 OpenGLDevice: Fix incorrect DSB binding without binding layout
  • 2ac48161f OpenGLTexture: Fix a couple of incorrect format mappings
  • f0b6ea978 VulkanDevice: Fix incorrect pointer alignment check
  • a4904ddb0 VulkanDevice: Add missing swap of m_allocation
  • 0f5124996 Achievements: Fix null pointer check in BeginRefreshHashDatabase()
  • 2a85f6734 FullscreenUI: Fix possible OOB on bad config
  • 0e3c4714d FullscreenUI: Fix file dialog without filter set
  • 22378bd9c FullscreenUI: Add fade transition to file selector
  • 2b100621a FullscreenUI: Fix possible RemoveHook() call on wrong thread
  • d3edaf50e FullscreenUI: Use insert_or_assign() in SetCoverCacheEntry()
  • d2e94217c Qt: Fix config binding of audio capture extra args
  • 41a939f34 Qt: Fix resize-loading case for getCoverForEntry()
  • ecc1fe260 Qt: Fix a couple of incorrect config keys in reset path
  • d326c8bc7 Qt: Fix incorrect signal block in game summary
  • 4ae89e294 Qt: Fix reading from UI thread in computeImageHash()
  • 30583b444 Qt: Fix incorrect read in texture replacement settings export
  • 00c956f4a Qt: Fix incorrect settings save after automap
  • 182c87d76 Qt: Add missing master enable update in cheat settings
  • 387d8b378 Qt: Remove redundant setNewBinding() in effect binding
  • 0995654db Qt: Add null pointer check to hotkey setFilter()
  • 5de2b77d0 CPU/CodeCache: Fix redundant begin/end code write
  • 2af1cd640 CPU/CodeCache: lwc2/swc2 should not read rt in backprop
  • 0a816b657 CPU/CodeCache: Fix blocks ending up perpetually in interpreter fallback
  • 23c94c5bd TimingEvent: Add missing current_event check in SortEvent()
  • 89560f81d GDBServer: Fix incorrect shift in $G handler
  • dd25610e3 GDBServer: Fix incorrect hex decode in $M handler
  • 091d1b625 GDBServer: Fix double ack after single step
  • 59b4fb84a GDBServer: Send SIGTRAP on system pause
  • 6c6390286 Fix translation errors (AZ) (#3730)
  • df64109df TimingEvents: Fix overzealous assertion
  • f9254e23f CPU/CodeCache: Pack state in struct
  • abf3b8cc0 CPU/CodeCache: Move JIT write protect out of MemMap
  • 120d04958 Modern Lossless Dynamic Quantization Scanline Shader (#3731)
  • 12989d2bc VideoThread: Use thread instead of handle
  • 53c4176a1 CPU/CodeCache: Don't skip filling backprop for first instruction
  • 5d92da522 TimingEvents: Remove ticks_late parameter
  • dea048016 AudioStream: Reintroduce XAudio2 backend
  • c1d24b4e9 dep/cubeb: Bump to a37dadd
  • 242b4b814 FullscreenUI: Fix files showing in directory selector
  • 28297a3ae VideoThread: Pass clamped dimensions to thread
  • 153fa1d23 Core: Get rid of base settings layer overrides
  • 85c0b4eff System: Move gamescope screensaver hack to QtHost
  • 71dafa719 System: Move socket multiplexer into GDBServer
  • cc1775f0b System: Move Discord presence into its own file
  • 678b6101e System: Move more core functionality out of file
  • 70c6d5a1d VideoThread: Move private functions into own file
  • 0b6d41e63 Achievements: Don't defer badge prefetch on game load
  • 56783acc7 Qt: Use delete icon for restoring custom titles
  • 348eaeef6 TaskQueue: Support single-threaded operation
  • 735dc5ba2 Core: Centralize the async task queue
  • b2d0fbdcb clang-format: Add lambda options
  • 54c6a9faa Hotkeys: Make more formatting-friendly
  • 00908b1b1 Qt: Remove some unnecessary includes
  • 86fd69332 Qt: Use better title for capture file name format
  • 122bd30ba Qt: Move RAIntegration setting to advanced settings
  • 6513e4778 Achievements: Add progress indicator mode option
  • d2e770131 dep/rcheevos: Increase the time the progress tracker is shown
  • d1f597588 FullscreenUI: Fix load/save state leaving system paused
  • 8ddaac326 Achievements: Add alpha to progress bars
  • 38bbc115c Data: Add additional fonts
  • bbe65219a ImGuiManager: Support multiple text fonts
  • 9950e2243 SoundEffectManager: Fix low chance of deadlock on shutdown
  • f7d937cb0 Qt: Fix debugger ignoring all messages
  • acbb76c00 Qt: Fix off-by-one in edit RAM callback
  • f080e798e Qt: Fix possible underflow in debugger wheelEvent()
  • 9a410416e Qt: Fix incorrect colour of bytes in debugger
  • 9f385b27f Qt: Fix last-data buffer management in MemoryViewWidget
  • 970e191fa Qt: Improve debugger arrow drawing
  • 2f35493d2 scanline-modern-ex.fx Minor optimizations and adjustments (#3732)
  • 5731aa87a CI: Pass --fail to curl downloads
  • 3fb89483b GPU/HW: Fix MMPX Quality compilation in Metal
  • 730dcd9a9 VideoThread: Assert not on thread for async calls
  • 1200cd589 FullscreenUI: Rework pause menu opening
  • 75eddf171 Achievements: Adjust pause menu box padding
  • e4c55ad02 Achieve...
Read more

latest-ls62

Choose a tag to compare

@LinuxServer-CI LinuxServer-CI released this 13 May 04:54
91c22f2

CI Report:

https://ci-tests.linuxserver.io/linuxserver/duckstation/latest-ls62/index.html

LinuxServer Changes:

Full Changelog: latest-ls61...latest-ls62

Remote Changes:

Commits

  • 3f502579f GPU/TextureCache: Dump textures to first disc directory
  • 23d79f8a5 Qt: Fix themed slider disabled state
  • 45460b906 PostProcessing/Slang: Skip over C-style comments in preset files
  • ae44fa6f7 PostProcessing/Slang: Support parsing simple/reference presets
  • 495141ab5 Qt: Fix postfx shader list with multiple nesting levels
  • 8bb8fdd20 Update gpu_hw_shadergen.cpp (#3728)
  • 558973f20 GPU/HW: Fix rare VRAM corruption after state load
  • 0d60433e9 GameDB: Otona no Asobi again
  • 4d95bb34e OpenGLDevice: Fix various issues in stream buffer
  • bbffe729a OpenGLDevice: Disable PBOs completely on NVIDIA
  • c7027a272 CDROM: Fix off-by-one error
  • c2041702d FullscreenUI: Always reset transition before executing it
  • 650c60e9e FullscreenUI: Fix fade transition on game exit
  • 73a74b359 System: Remove unnecessary state function
  • a94a90f34 CPU: Fix some unlikely-to-be-triggered issues
  • 566ef446d DMA: Fix DICR register write mask
  • ac7aa0d9f GPU: Fix incorrect debug log message
  • 5823a0103 MDEC: Fix incorrect halfword tracking for some commands
  • cfcfd8f86 CPU/Recompiler: Various minor error fixes
  • 4780bfa35 Pad: Fix incorrect log message
  • 50b545c36 Pad: Fix device_index with multitap 2 active
  • ba7b5cdef SPU: Fix a couple of log and debug window fields
  • acb546b87 SPU: Fix inverted volume level in voice register read
  • 0c41d8131 SPU: Fix incorrect DMA overread handling
  • 0b4b9a102 MemoryCard: Fix incorrect ACK at end of read
  • bde74c54d MemoryCard: Fix incorrect output byte at end of write
  • d85dcdb5f MemoryCard: Fix incorrect state/ack at end of ID read
  • 6bd6a8d12 Timers: Interrupt request should be cleared after mode write
  • 03a61b7ce Timers: Fix repeated IRQs possibly scheduling late
  • 8601189df Bus: Fix incorrect logging of EXP1 memory timing
  • 0eb8db8d2 Bus: Fix incorrect region pointer for RAMMirror3
  • 077f23450 Bus: Fix error propagation in InjectExecutable()
  • 2734a1bf1 Bus: Fix incorrect write mask for EXP1/EXP2 base
  • ebe6af96c GTE: INTPL should be 8 cycles
  • d80c5b9c3 VideoPresenter: Fix incorrect UVs for Rotate180 case
  • 0016ef0e7 VideoPresenter: Fix incorrect changed flag when reloading overlay
  • cc662e69b VideoThread: Fix dead code in VideoThreadEntryPoint()
  • 2c1894709 VideoThread: Fix incorrect command size
  • 3535455f4 ImGuiOverlays: Remove unused macro
  • fa38d4f3f ImGuiOverlays: Fix incorrect capture box height
  • 2d4259e17 ImGuiOverlays: Fix incorrect frame time calculation
  • da339e477 MemoryScanner: Set changed flag in RemoveEntryByDescription()
  • 63f5a6a5b SoundEffectManager: Fix buffer overallocation in upmix/shift path
  • 66ddcae05 Justifier: Remove unused function
  • 16ceae8bc Justifier: Last byte shouldn't ACK
  • da7a2ccbd PlayStationMouse: Fix X sensitivity being used for Y
  • c9c76453a InterruptController: Fix incorrect branch hint
  • 17bea4719 AudioStream: Fix backend names not being translated on lookup
  • 274d87ef1 CubebAudioStream: Fix a few logging errors
  • f40a3c85f SDLAudioStream: Fix inconsistent start API usage
  • 692e7ce03 WAVReader: Fix non-s16 handling in SeekToFrame()
  • cac0eac05 GameList: Remove unused function
  • 7b802e6b8 GameList: Fix incorrect constants in played time parsing
  • 9a440652b GameDatabase: Fix incorrect log messages
  • 3d43cfa42 GameDatabase: Fix setting wrong settings object
  • 385ee9d30 GameDatabase: Add missing flush check for SaveToCache()
  • 40b68939e System: Fix video capture args being read incorrectly
  • 66702bc71 System: Fix some incorrect error messages
  • ccfa0f493 System: Remove a couple of redundant comparisons
  • 21f683555 CDImagePPF: Fix possible overpatching on spanning sectors
  • 08015f192 CDImagePPF: Fix possible integer underflow in short files
  • efc623c98 CDImagePBP: Fix error propagation in SwitchSubImage()
  • 32f816304 CDImageMDS: Fix use of 32-bit fseek()
  • 4a24d2930 CDImageDevice: Fix incorrectly formatted log messages
  • 4e1cdd5d8 CDImageCue: Fix inconsistent size in ECMTrackFileInterface::Read()
  • 687059dda CDImageM3u: Simplify whitespace trimming
  • 1494c6b6f PostProcessing: Fix OOB write in ParseVector()
  • d5c22fc62 PostProcessing/FX: Fix PingPong state not being written back
  • 1c9b0a95b PostProcessing/Slang: Fix include depth not being tracked
  • 3ce975391 PostProcessing/Slang: Add missing Original scale type handling
  • a9da0d86a Sockets: Fix various issues
  • bd6f99800 ISOReader: Fix incorrect timestamp calculation
  • 29ca1cbc8 GPUDevice: Fix incorrect log message
  • fc9ce7fb2 GPUDevice: Fix incorrect RG16/RG16F pixel size
  • 4e963c1fb System: Add capture file name format options
  • 86aabe307 D3DCommon: Fix a bunch of copy/paste errors
  • 730c44fef D3D11Device: Fix a couple of incorrect log messages
  • 414f9f64a D3D12Device: Fix incorrect subresource calculation
  • 9706df029 D3D12Device: Use move in D3D12DownloadTexture destructor
  • 56f075688 MetalDevice: Fix various issues
  • 6f405d9ee GPUDevice: Don't reserve unnecessary byte in stream buffer
  • 690fcb674 System: Log disc details when booting
  • cece5222c OpenGLDevice: Fix incorrect mipmap step in upload
  • 49eb1ab23 OpenGLDevice: Fix off-by-one in Map() range check
  • d940fb391 OpenGLDevice: Fix incorrect DSB binding without binding layout
  • 2ac48161f OpenGLTexture: Fix a couple of incorrect format mappings
  • f0b6ea978 VulkanDevice: Fix incorrect pointer alignment check
  • a4904ddb0 VulkanDevice: Add missing swap of m_allocation
  • 0f5124996 Achievements: Fix null pointer check in BeginRefreshHashDatabase()
  • 2a85f6734 FullscreenUI: Fix possible OOB on bad config
  • 0e3c4714d FullscreenUI: Fix file dialog without filter set
  • 22378bd9c FullscreenUI: Add fade transition to file selector
  • 2b100621a FullscreenUI: Fix possible RemoveHook() call on wrong thread
  • d3edaf50e FullscreenUI: Use insert_or_assign() in SetCoverCacheEntry()
  • d2e94217c Qt: Fix config binding of audio capture extra args
  • 41a939f34 Qt: Fix resize-loading case for getCoverForEntry()
  • ecc1fe260 Qt: Fix a couple of incorrect config keys in reset path
  • d326c8bc7 Qt: Fix incorrect signal block in game summary
  • 4ae89e294 Qt: Fix reading from UI thread in computeImageHash()
  • 30583b444 Qt: Fix incorrect read in texture replacement settings export
  • 00c956f4a Qt: Fix incorrect settings save after automap
  • 182c87d76 Qt: Add missing master enable update in cheat settings
  • 387d8b378 Qt: Remove redundant setNewBinding() in effect binding
  • 0995654db Qt: Add null pointer check to hotkey setFilter()
  • 5de2b77d0 CPU/CodeCache: Fix redundant begin/end code write
  • 2af1cd640 CPU/CodeCache: lwc2/swc2 should not read rt in backprop
  • 0a816b657 CPU/CodeCache: Fix blocks ending up perpetually in interpreter fallback
  • 23c94c5bd TimingEvent: Add missing current_event check in SortEvent()
  • 89560f81d GDBServer: Fix incorrect shift in $G handler
  • dd25610e3 GDBServer: Fix incorrect hex decode in $M handler
  • 091d1b625 GDBServer: Fix double ack after single step
  • 59b4fb84a GDBServer: Send SIGTRAP on system pause
  • 6c6390286 Fix translation errors (AZ) (#3730)
  • df64109df TimingEvents: Fix overzealous assertion
  • f9254e23f CPU/CodeCache: Pack state in struct
  • abf3b8cc0 CPU/CodeCache: Move JIT write protect out of MemMap
  • 120d04958 Modern Lossless Dynamic Quantization Scanline Shader (#3731)
  • 12989d2bc VideoThread: Use thread instead of handle
  • 53c4176a1 CPU/CodeCache: Don't skip filling backprop for first instruction
  • 5d92da522 TimingEvents: Remove ticks_late parameter
  • dea048016 AudioStream: Reintroduce XAudio2 backend
  • c1d24b4e9 dep/cubeb: Bump to a37dadd
  • 242b4b814 FullscreenUI: Fix files showing in directory selector
  • 28297a3ae VideoThread: Pass clamped dimensions to thread
  • 153fa1d23 Core: Get rid of base settings layer overrides
  • 85c0b4eff System: Move gamescope screensaver hack to QtHost
  • 71dafa719 System: Move socket multiplexer into GDBServer
  • cc1775f0b System: Move Discord presence into its own file
  • 678b6101e System: Move more core functionality out of file
  • 70c6d5a1d VideoThread: Move private functions into own file
  • 0b6d41e63 Achievements: Don't defer badge prefetch on game load
  • 56783acc7 Qt: Use delete icon for restoring custom titles
  • 348eaeef6 TaskQueue: Support single-threaded operation
  • 735dc5ba2 Core: Centralize the async task queue
  • b2d0fbdcb clang-format: Add lambda options
  • 54c6a9faa Hotkeys: Make more formatting-friendly
  • 00908b1b1 Qt: Remove some unnecessary includes
  • 86fd69332 Qt: Use better title for capture file name format
  • 122bd30ba Qt: Move RAIntegration setting to advanced settings
  • 6513e4778 Achievements: Add progress indicator mode option
  • d2e770131 dep/rcheevos: Increase the time the progress tracker is shown
  • d1f597588 FullscreenUI: Fix load/save state leaving system paused
  • 8ddaac326 Achievements: Add alpha to progress bars
  • 38bbc115c Data: Add additional fonts
  • bbe65219a ImGuiManager: Support multiple text fonts
  • 9950e2243 SoundEffectManager: Fix low chance of deadlock on shutdown
  • f7d937cb0 Qt: Fix debugger ignoring all messages
  • acbb76c00 Qt: Fix off-by-one in edit RAM callback
  • f080e798e Qt: Fix possible underflow in debugger wheelEvent()
  • 9a410416e Qt: Fix incorrect colour of bytes in debugger
  • 9f385b27f Qt: Fix last-data buffer management in MemoryViewWidget
  • 970e191fa Qt: Improve debugger arrow drawing
  • 2f35493d2 scanline-modern-ex.fx Minor optimizations and adjustments (#3732)
  • 5731aa87a CI: Pass --fail to curl downloads
  • 3fb89483b GPU/HW: Fix MMPX Quality compilation in Metal
  • 730dcd9a9 VideoThread: Assert not on thread for async calls
  • 1200cd589 FullscreenUI: Rework pause menu opening
  • 75eddf171 Achievements: Adjust pause menu box padding
  • e4c55ad02 Achieve...
Read more