Skip to content

Releases: stenzek/duckstation

v0.1-10413

20 Dec 02:46
ea8d7b0

Choose a tag to compare

Commits

  • 9790c1b Updated Swedish translation (#3660)
  • f248c1c Atualização Português do Brasil (#3659)
  • 4c38484 Qt: Failed to retrieve update change list is not fatal
  • 9ba0bb9 MSBuild: Only remove source paths in ReleaseLTCG
  • e06d880 MSBuild: Set -Wno-invalid-offsetof
  • c9177bc Common: Add vector rectangle helper functions
  • 9eaf586 Qt: Simplify cover and icon invalidation
  • ed531da Qt: Move wireframe rendering to debug tab
  • 69784d1 GPU: Move draw helper functions to cpp file
  • 97582bc GPU: Use vectors/rects for presentation
  • 986e66b GPU: Use vectors in draw rect calculation
  • c6a44ff GPU: Add "Fine Crop" settings
  • 7cf6e04 GPU/HW: Chunk skewed+overlapping copies
  • 3fc563e Qt: Invalidate tooltips for title changes as well
  • 351e787 Common: Fix a bunch of errors in ARM vector wrapper
  • 37d7cd4 Common: Silence deprecation warnings on MacOS
  • 2498e66 MetalDevice: Fix compile warnings
  • 1ee0f73 Achievements: Use rc_client API for fetching game titles (#3658)
  • 900d06c FullscreenUI: Fix inconsistent notification colour gradient
  • 86ba9ea ImGuiManager: Add colour gradient to OSD messages
  • f99601e dep/rcheevos: Bump to b77013b
  • cda367d Achievements: Use badge_url for downloads
  • 708e3b8 Achievements: Use rc_client_create_subset_list()
  • f52a5af System: Fix fullscreen state persisting between games
  • a777466 Qt: Invalidate covers when all titles are invalidated
  • 547b76f SDLInputSource: Use auto mode for enhanced reports
  • b3caf07 Qt: Make enhanced controllers reports option more clear
  • 1ccd750 CMake: Avoid using system zlib outside of MacOS
  • b10eba4 VulkanDevice: Disable fbfetch on LLVMpipe
  • 7a539ba GPUDevice: Reduce GraphicsConfig struct size
  • fe8d2e0 VulkanDevice: Set rasterization order attachment access bit on blend state
  • 6521355 CMake: Don't copy desktop file to resources
  • b8b576e Qt: Override application font on Linux
  • 89946cc Qt: Provide theme icons for most used Qt StandardIcons
  • 6062f5e Qt: Use same changed colour in memory scanner as view
  • 93f62c4 CI: Fix cache key in upload caches workflow
  • bc72d58 Achievements: Preserve hardcore mode when toggling encore/spectator/unofficial settings (#3661)
  • 9857835 GameDB: Add mouse support for compatible games (#3662)
  • a72d21f Win32RawInputSource: Support device hotplugging
  • 0af8b74 InputManager: Move device notification from main window
  • 51986e7 InputManager: Fix some low-risk races during reload
  • 822024d Qt: Fix empty text box after image verification
  • 9712883 ProgressCallback: Add a variant with alert/confirm
  • d5dc9fb FullscreenUI: Fix bg load after close->reopen
  • 1c06b68 GameDB: add missing compatibility entry for original release of A Bug’s Life (#3664)
  • 7d31ab9 GameDB: Fix typo in FF7's sort title
  • b8c8941 GameDB: Add sort title to FF7 and FF8 demo discs
  • ea8d7b0 VulkanDevice: Only enable KHR_maintenance5 with dynamic rendering

v0.1-10365

13 Dec 01:23
9b31d8b

Choose a tag to compare

Commits

  • 5b91141 GameList: Add option to download all game icons (#3655)
  • 972dcd7 Achievements: Tidy up badge downloader
  • a870f62 Achievements: Use main HTTP for badge downloads
  • 1541200 Qt: Name consistency improvements
  • 3867c84 Qt: Allow cancelling icon downloads
  • 42c872e FullscreenUI: Add achievement game icon download
  • ea4933a Achievements: Add progress to progress database refresh
  • f7ca150 InputManager: Fix possible use-after-free on source reload
  • d9f8302 Qt: Increase idle polling interval
  • 4b82191 Qt: Fix use-after-free in edit/remove cheat (#3657)
  • e2fc40c FullscreenUI: Fix infinite loading at end of leaderboard
  • 56d8750 FullscreenUI: Add floating nav bar widgets
  • 7214ec0 FullscreenUI: Improve leaderboard display
  • 75380e7 FullscreenUI: Improve styling consistency between achievements/leaderboards
  • ac0a299 FullscreenUI: Add achievement subset selection
  • 4da93d7 FullscreenUI: Set scrollbar rounding
  • de01bf7 FullscreenUI: Remember the last-opened achievement subset
  • 6070bff dep/rcheevos: Bump to 9aa1352
  • 6e5291d Qt: Update English plural strings
  • 43074cf FullscreenUI: Slightly improve achievement notifications
  • e9767ba FullscreenUI: Tweak achievement notification animation
  • 0e0e82d ImGuiManager: Apply same change to OSD messages
  • bde06fe Settings: Disable wireframe+downsample in Safe Mode
  • d1f2b80 Data: Update game controller database
  • dbd8288 Common: Fix implicit conversions in ARM vector wrapper
  • 95a1961 Build: Fix RC version field

v0.1-10339

06 Dec 03:03
9b31d8b

Choose a tag to compare

Commits

  • 5d9309c Qt: Make parented progress callback dialog window modal
  • c9c4997 PostProcessing/Slang: Separate original and input textures
  • fd24d99 CI: Work around Mac runner failing
  • e3332d1 Qt: Fix open button icon in ISO browser (#3638)
  • d4e2f4f GameDB: Disable auto analog for Tenchu (#3636)
  • 795e2d2 ImGuiOverlays: Fix bold with ICache enabled
  • b531623 Settings: Slightly reduce struct size
  • 2290f31 ImGuiManager: Remove multiple sources of truth for prescale/margins
  • 1cc5fe0 ImGuiManager: Remove duration parameter from OSD messages
  • e02883e Settings: Make OSD message durations customizable
  • eb518c8 Qt: Eliminate OSD from debug RAM dumping
  • 302ce03 Qt: Async messageReported() signal should not block
  • db72c78 ImGuiManager: Fix incorrect condition in OSD rendering
  • b5392ee Regtest: Build fix
  • ce37f0e ImGuiManager: Support non-font icons in OSD
  • e012d97 Achievements: Use RA icon for some notifications
  • a14433e FullscreenUI: Fix ImGui asset tripping on empty game grid
  • 267e81f README: Remove compatibility list link
  • 79bfa1a System: Fix inverted save state overclock warning
  • afc019d FullscreenUI: Avoid drawing OSD messages over achievement badges
  • 618d154 Qt: Swap table for tree in Game Properties track list
  • 1728415 Qt: Swap table view for tree in setup wizard game list
  • 21daf6c Qt: Fix window icon for setup wizard
  • f9ca1f2 Qt: Disable game compat comments button instead of hiding it (#3639)
  • 63f929e Qt: Fix centering of secondary windows
  • 3b25e7b Qt: Use Close button in ControllerCustomSettingsDialog
  • 952b6c9 ImGuiOverlays: Add missing space
  • 225623b GameDB: Disable auto analog for some games and add missing info (#3640)
  • f84990b Spanish (Spain) translation update 2025-11-25 (#3641)
  • 0302d6e Qt: Use metaobject class name for saving/restoration
  • f352350 FullscreenUI: Add gradient to achievement notification background
  • 8311a0c FullscreenUI: Fix moving achievement points badge
  • 73823ed Qt: Make message box utility parameter order consistent
  • 459ee19 Qt: Add QtUtils::AsyncMessageBox()
  • 5626fe0 Qt: Replace most blocking message boxes with async
  • c00aac6 GameDB: Increase cdromMaxReadSpeedupCycles for Alundra 2 (#3642)
  • 6369f38 GameDB: Disable read speedup for Gundam Battle Assault 2 (#3643)
  • e142a32 CDImagePBP: Fix TOC misreporting for some images
  • 249f8cf System: Always use async hardcore cancel on boot
  • 93f3be4 Achievements: Remove ConfirmHardcoreModeDisable
  • 08f357f System: Avoid load state message on HC disable confirm
  • 7b6fd22 System: Confirm HC disable on undo load state/reset
  • 7ce8959 System: Use ConfirmMessageAsync() for SBI-less boot
  • 5e2b32f Host: Remove blocking ConfirmMessage()
  • 90ec75b Achievements: Don't display points badge for 0 points
  • 48ec261 Qt: Center game properties window too (#3644)
  • 5488874 Misc: Eliminate usage of modal progress callback functions
  • 4290f75 ProgressCallback: Remove modal methods
  • 82a44b1 ProgressCallback: Avoid unnecessary struct padding
  • 3f882cf Qt: Add QtAsyncTaskWithProgress class
  • d1519aa Qt: Use QtAsyncTaskWithProgress for dump verification
  • d8e1418 Qt: Use QtAsyncTaskWithProgress for padtest download
  • cc6bfeb Qt: Use QtAsyncTaskWithProgress for ISO Browser extraction
  • 5b1e011 Qt: Compile warning fix
  • cbbfecc HTTPDownloader: Set initial indeterminate state
  • ee1defd Qt: Don't try to center on an invisible window
  • 4cbd01d Qt: Get rid of nested event loops in achievement login
  • 2b26690 GPU: Simplify PAR calculation
  • 6761652 Qt: Remove QtAsyncProgressThread
  • 8fcdf10 Qt: Get rid of nested event loop in updater
  • f6bfb73 Qt: Remove QtModalProgressCallback
  • 243a8af Qt: Simplify updater configuration and process
  • 1ba3efa Qt: Better layout for updater window
  • e026117 Qt: Make auto updater window-modal
  • 9d61e8c Qt: Do blocking game list refresh with autoboot without batch
  • 9fb1172 GameDB: Disable auto analog for some titles (#3645)
  • 58cb4f2 FullscreenUI: Update loading/notification run idle on shutdown
  • 0c6cbf8 Qt: Remove redundant grid layout in updater
  • 97c9daf Qt: Remove unused EmuThread::SystemLock
  • cc64286 Qt: Remove unsafe EmuThread isFullscreen() from UI thread
  • c91446c Qt: Remove unused cover downloader signal
  • 33b532d Qt: Remove unused focusDisplayWidget()
  • 3c00c4d Qt: Remove main window surfaceless hackery
  • b13207a Qt: Remove unused fields
  • a5755d1 Qt: Get rid of multiple sources of truth for fullscreen
  • f069570 Qt: Show update dialog after fullscreen exit completes
  • 9ee1b02 Qt: Remove a bunch of unnecessary QSignalBlockers
  • 8bc3f04 Qt: Try to work out the "real" display scale on MacOS
  • 03c2ec2 OpenGLDevice: Fix creation on MacOS
  • 480d002 Log: Only include function names for warn/error
  • 3d27de7 Qt: Fix inverted fullscreen condition
  • e71a022 Qt: Fix crash on updater exit
  • a171c25 PostProcessing/Slang: Handle option names containing "//"
  • d6f7084 HTTPDownloader: Use release-acquire ordering for request state
  • e2b3f65 HTTPDownloaderCurl: Use worker thread for processing
  • a116273 HTTPDownloader: Remove InternalPollRequests()
  • fe8b8f0 HTTPDownloader: Remove unused default user agent
  • db9a9e7 Qt: Add indication that update check is in progress
  • e0a0745 Qt: Fix devbuild check
  • de36fef GPU: Re-add missing AR correction
  • 65e890f Qt: Fix incorrect use of toggled signal
  • b723a88 GPU: Update CRTC configuration on line offset change
  • 9aeb6ee GameDB: Max speedup cycles and other fixes for some games (#3647)
  • e3dfc85 Atualização Português do Brasil (#3649)
  • d106639 Qt: Reload game settings after reset to default (#3651)
  • 9fa42e2 Qt: Add close button to "About" dialog
  • 7a929b1 Qt: Allow copying the version string from interface settings
  • d8a92f7 Qt: Fix styling of checked push buttons
  • d612f8e Qt: Support populating game list entry at runtime
  • ed71c45 Qt: Simplify updateEmulationActions() and updateShortcutActions()
  • 6f80a19 Qt: Pack main window local state in struct
  • 4a445a0 Qt: Disable Game Properties for PSF/GPUDump
  • 521a23f Qt: Make disc select dialog window-modal
  • 51524d7 GameDB: Adjust cropping in a number of titles
  • 577f74a GameDB: Increase cdromMaxReadSpeedupCycles for Dino Crisis 2
  • e1ca130 GameDB: Set DisableFastForwardMemoryCardAccess for Lunar
  • c3b1859 HTTPDownloaderCurl: Use INT_MAX timeout
  • 177afb2 Achievements: Executable read error should not show when starting BIOS
  • 1706dac System: Fix possible deadlock when starting
  • 5859f0d Achievements: Don't try to enable HC mode when starting without disc
  • 8cfbaca Achievements: Don't enable HC mode on reset without game
  • 682d007 Achievements: Add missing lock in OnSystemDestroyed()
  • 547d349 HTTPDownloaderCurl: Fix crash in worker thread
  • f3e0fe9 Qt: Rename QtAsyncTaskWithProgress to QtAsyncTaskWithProgressDialog
  • d1d9008 Qt: Add QtAsyncTaskWithProgress
  • 1fccee2 Qt: Use QtAsyncTaskWithProgress for cover downloader
  • 259cd84 Qt: Use fine-grained cover invalidate in downloader
  • 6216497 Qt: Disable window rounded corners is only needed on Win32
  • 521eee4 Qt: Remove unnecessary application syncs
  • 843558a Qt: Don't create wasteful display container on KDE
  • df75127 Qt: Disable AA_DontCreateNativeWidgetSiblings hack on KDE
  • 11a0aba Qt: Improve widget device pixel ratio detection
  • 1bf7431 Updated Swedish translation (#3648)
  • 7970287 GameList: Fix memcard icon extraction for non-database games
  • 8e3a65c MemoryCard: Show game icon when saving
  • ceb199b System: Add missing game list lock
  • 3e32dee Qt: Fix power off system hotkey when fullscreen
  • c5c5a80 Achievements: Fix challenge badge display in pause menu
  • af29ce0 Achievements: Show points for most recent unlock
  • 0172f22 GPU/HW: Draw small fill sprites with software if TC is enabled
  • 42c26cf Qt: Use ShowOrRaiseWindow() for main window
  • 84aa425 Qt: Move lock in ConfirmMessageAsync()
  • 60dbc5a Qt: Remove unused block_until_done parameter
  • b42f26f SDLInputSource: Log the joystick GUID as well (#3653)
  • e92fb99 Qt: Update padtest URL
  • b4b05ed README: Remove non-functional link
  • 9a8d9d7 Hotkeys: Fix rotation hotkeys not having any effect
  • 941b62e FullscreenUI: Slight tweak to font weights
  • 241f720 FullscreenUI: Avoid png/svg name clash for disc icon
  • 760b7b4 CI: Revert hardcoded Mac cache key
  • 5650880 Deps: Set QT_PREFIX_PATH for Qt on Linux
  • 801114f Deps: Bump SDL3 to 3.2.28
  • 1d28a4b Deps: Disable GTK when building Qt
  • 27802bf Deps: Set PKG_CONFIG_PATH when building
  • 0eaf1dd GameDB: Add various fixes for some games (#3654)
  • 9b31d8b GameDB: Adjust cropping in a number of titles (part 2) (#3656)

v0.1-10193

22 Nov 06:14
86bf551

Choose a tag to compare

Commits

  • 2bf14f8 Qt: Don't copy QtConcurrent DLL
  • b14c17b Qt: Set attributes on popup menus
  • c025da4 Qt: Invoke popup menus asynchronously
  • c5f60c1 Qt: Don't display two popup messages on card open failure
  • c8ef05a Qt: Fix non-native message boxes in Dark Fusion on MacOS
  • b4f9bc7 InputManager: Remove setting of unused config variable
  • e3a044a Log: Move FastWrite() into macro
  • 4850471 Qt: Remove a few more instances of QDialog::exec() (#3623)
  • d45f630 Qt: Further tidy up for 4850471
  • 87847ed Qt: Fix crash when changing toolbar icons
  • 6c3c02f Qt: Use bundled fixed-width font where appropriate
  • 23d45a3 Data: Swap Roboto Mono for JetBrains Mono
  • 8ce216e Qt: Improve readability of changed bytes in memory view
  • 6720846 ImGuiOverlays: Tidy up font weight in OSD
  • 75aee64 Qt: Set appropriate window icons for subwindows
  • b338509 Qt: Provide a central point for getting the app logo
  • c396f0a Qt: Set game icon as window icon in Game Properties
  • 5a26f38 Qt: Add icons to tools menu actions
  • 085c02d Qt: Add more actions to toolbar (hidden by default)
  • f5bd7c1 Qt: Don't include calling function name in Qt logs
  • 1e57a5b Qt: Make the memory card modified state more obvious
  • 63b99a6 Qt: Use theme icons in Memory Card Editor
  • f6976c4 Qt: Remove unused function
  • a293792 Qt: Remove a bunch of old/unused resources
  • 4d9f318 Qt: Use icon theme enum for sort icons
  • d5037f1 Qt: Remove setDesktopFileName() icon workaround
  • 483f9ba Qt: Allow overriding cover placeholder image
  • e4d9bed Qt: Get rid of the last few QMenu::exec() (#3628)
  • 16e56d7 Qt: Use icon text instead of duplicate actions
  • acadbff Achievements: Allow overriding host through config
  • 8f5a1fd Updater: Replace incorrect ANSI Win32 calls
  • 65ddf1a Updater: Make high DPI aware
  • bda75db Updater: Compute window size dynamically
  • 942422b Updater: Set application icon
  • 4a5e172 Updater: Close button should be disabled
  • bea07e7 Updater: Set default title
  • b949c17 Qt: Improve text elision in InputBindingWidget (#3629)
  • c8a2f93 Update the Simplified-Chinese Translation. (#3630)
  • 542a2cf Atualização Português do Brasil (#3631)
  • e7862b9 Qt: Prefer eliding source over the middle of the binding
  • b9571a2 GameDatabase: Add DisableAllBordersCrop trait
  • defbe70 GameDB: Set DisableAllBordersCrop for Alundra 2
  • aecdfd5 GPU: Align the memory allocation rather than the class
  • 012c7de GPU/HW: Slightly rearrange data fields
  • 938a0e5 GPU/HW: Add field for software renderer drawing
  • a8967b2 Settings: Shouldn't be accessing the global object
  • 654587e System: Add 'Low VRAM' rewind mode
  • 857a767 Qt: Fix QAction memory leak on shutdown
  • e9966cf Qt: Fix QEventLoop leak on shutdown
  • b4900c9 dep/imgui: Fix memory leak in imgui_freetype
  • 704cdef Deps: Bump to Qt 6.10.1
  • 9556334 Deps: Revert Qt window-modal dialog disabling on Tahoe
  • f7e6c20 CMake: Bump Qt version requirement
  • b79d69b Update Russian translation (#3634)
  • 5b56399 CI: Update GitHub actions
  • 30a0b94 CI: Download all artifacts into the same directory
  • 6146d33 Qt: Fix game list background on MacOS
  • 7829d43 Qt: Add proper alert titles in a couple of areas
  • 573734e Qt: Swap form for grid layouts in setup wizard
  • 783e767 Qt: Swap remaining form layouts for grid
  • 3a43f59 Update the Simplified-Chinese Translation. (#3635)
  • 1f7a44c Qt: Remove a couple of left-over spacer size hints
  • 86bf551 Qt: Warn when executable has been renamed

v0.1-10130

15 Nov 04:58
3d6627c

Choose a tag to compare

Commits

  • 26323f4 GPU/HW: Fix incorrect clamp UV state on setting change
  • 361bcde FullscreenUI: Fix loading screen progress going negative
  • bdeeece GPU/HW: Clamp after round with round upscaling fix
  • 127cc70 GameDB: Enable PGXP-CPU for Tekken 3
  • a1a763c GameDB: Set tolerance for Tekken 3
  • 639aa3c ImGuiOverlays: Fix inconsistent font weight
  • cb609fc ImGuiOverlays: Polish frame time graph
  • 013cce5 Qt: Return size hint for covers
  • 475b69b Qt: Save/restore painter state in achievements delegate
  • 0b28657 Qt, FullscreenUI, PostProcessing: Add shader enable/disable toggle. (#3621)
  • c06e4fe Atualização Português do Brasil (#3624)
  • a9b9e89 PostProcessing: Rename Enabled -> StageEnabled
  • 3a1e8fe PostProcessing: Load shaders even if disabled
  • fc97cf5 PostProcessing/slang: Flip textures if using OpenGL
  • a301066 Qt: Use QSizeF for device scaled sizes
  • fa965cf Qt: Use delegate for drawing covers
  • cad8b43 PostProcessing: Fix starting with all stages disabled
  • 6581e8e PostProcessing: Fix unscaled input sizes if first stage disabled
  • 29d5598 PostProcessing: Fix slang+overlay+odd shader count combination
  • a742164 GameDB: Increase cdromMaxReadSpeedupCycles for Discworld Noir (#3625)
  • 66c924e GameDB: Max speedup cycles for Bugs Bunny - Lost in Time & Bugs Bunny and Taz - Time Busters (#3626)
  • e2cd5e7 GameDB: Max speedup cycles for Street Fighter Alpha 2 & 3 and Super Puzzle Fighter II (#3627)
  • 34484d4 CDImageDevice: Fix compiling in Unicode mode
  • fa793ce Updater: Fix compiling in Unicode mode
  • 65be533 Build: Use C17 for MSBuild
  • c953480 Build: Use Unicode as default MSBuild character set
  • d532acb Build: Use VS2026 build tools
  • 7e7e51d D3D12Device: Remove unused class member
  • df54719 README: Bump VS version requirement to 2026
  • ef2086b Qt: Silence new warning from VS2026
  • d1f26ee Qt: Fix a bunch of implicit conversion warnings
  • 35e3d9a Qt: Get window sizes from OS instead of scaling Qt size
  • 3099f5f Qt: Fix game grid selection rect bottom/right edges
  • 4c56f06 Qt: Style check boxes in Darker Fusion
  • 0edf71b GPU: Fix 480i resolution display with force progressive
  • 982035f GPU: Remove implicit bool conversion
  • 754591f StringUtil: Add GetUTF8CharacterCount()
  • b9b1b13 Qt: QtConcurrent is no longer needed
  • 3d6627c Qt: Speed up interface page creation

v0.1-10091

08 Nov 08:44
4a246a7

Choose a tag to compare

Commits

  • e7f4034 FileSystem: Add LockedFile helper class
  • 84806d3 GameList: Use LockedFile class
  • ac4634c Add StringPool and BumpStringPool classes
  • a035c48 GameList: Fall back to achievement badges for game icons
  • 3d2c3c9 GameList: Avoid a couple of heap allocations
  • 89e3ba2 Qt: Fix warning
  • 2b3c7e0 Qt: Initialize COM before Qt
  • 2ff9c67 Qt: Replace table widget in Game List Settings
  • 70185cb Update Russian translation (#3587)
  • e96a85d Atualização Português do Brasil (#3588)
  • bd6e747 GameDB: Fix serials for Black-Matrix +
  • 2a0fe0a GameDB: Add disc set for GT2 US
  • 41b8f2b CI: Remove Flatpak builds
  • a49d0b6 PostProcessing/GLSL: Skip recompile on target size change
  • 8520e3f System: Work around lupdate bug causing hang
  • f2291ea Deps: Build Qt Declarative/ShaderTools
  • 33a3427 Deps: Remove build directory after each library
  • 7deb374 Deps: Hopefully work around path length limits
  • bae05a7 SDLInputSource: Change default for WGI to off
  • 5653f8d ImGuiManager: Don't let non-imgui keys through
  • 2c03fb9 ImGuiManager: Use static key map
  • 1fbf083 FullscreenUI: Move ImGuiFullscreen to core
  • 836fd9b FullscreenUI: Make file naming consistent
  • fab4b05 FullscreenUI: Remove ImGuiFullscreen namespace
  • e36ea9e FullscreenUI: Remove more redundancy
  • 9cbcf78 FullscreenUI: Move transition handling to widgets file
  • 8c25144 FullscreenUI: Always initialize widgets
  • 983cde3 FullscreenUI: Make notifications/toasts thread-safe
  • b1cd562 System: Don't add to the pause timer when we're already paused
  • 2bc387f FullscreenUI: Fix returning to window that was open
  • ba28a3f Achievements: Cache user badge path
  • dc7a7ed FullscreenUI: Split settings into its own file
  • cc2ee00 FullscreenUI: Split game list into its own file
  • f4f8aa5 FullscreenUI: Defer more resource loads
  • 10a7d8a FullscreenUI: More scope clean up
  • bed758a FullscreenUI: Move translation strings to own file
  • 32aa86a FullscreenUI: Move achievements to its own file
  • 45d3c66 FullscreenUI: Simplify game properties state
  • 476c1c5 FullscreenUI: Make OpenOrUpdateLoadingScreen() thread safe
  • 9ca1c97 Mini: Compile fix
  • f2dd91c RegTest: Compile fix
  • a52020b DMA: Reduce linked list header read time
  • aa980a4 GPU: Don't save settings to save state
  • 9977e1d FullscreenUI: Disable rewind options when runahead is enabled (#3589)
  • b4a868c Update the Simple-Chinese Translation to latest. (#3591)
  • 7517813 Settings: Remove CD speedup above 6x
  • cab6669 DMA: Speed up RAM write with CDROM speedup
  • 93b4c34 FullscreenUI: Fix missing logo on landing page
  • 3d6c042 FullscreenUI: Fix missing lock for settings read
  • 9fa8b17 FullscreenUI: Fix a couple of missing strings
  • e48649b FullscreenUI: Remove unused variable
  • 0776e2f Qt: Clear style sheet before applying theme
  • 2fb3773 Qt: NativeThemeStylesheetNeedsUpdate() should not apply to Fusion
  • d9e363f Qt: Add message box helpers
  • db7598f Qt: Use message box wrapper functions
  • 8775ca0 Qt: Convert more message boxes to window modal
  • 6432ac1 Qt: Fix non-rounded buttons in achievement login
  • 326a6e3 CMake: Fix scmversion.cpp always updating on Mac
  • 7414ed9 Update the Simplified-Chinese Translation. (#3592)
  • eb23999 Atualização Português do Brasil (#3593)
  • b237604 GPUDevice: Don't log warning for WARP driver
  • 5818a05 Achievements: Add point count to unlock popup
  • 5a7094b Achievements: Use consistent icon style in list
  • de08a2f CMake: Only remap source path in Release builds
  • a44c846 CMake: Fix Xcode project debugging
  • 0fec148 GPU/HW: Add missing padding to UBOs
  • eefcd90 GPU/HW: Avoid some redundant calls in Metal
  • 24ae4a5 FullscreenUI: Fix uniform push before pipeline set
  • b858fe5 GPUDevice: Display OSD message if debug settings are enabled
  • 2c2fb1d D3D12Device: Fix incorrect StencilBeginningAccess/StencilEndingAccess
  • cff3ece VulkanDevice: Fix incorrect struct type
  • 05701fe GPUDevice: Make dyn libs public
  • fcde8c7 dep/reshadefx: Cherry-pick upstream 74e95dd
  • a038c88 dep/reshadefx: Work around inability to discard in function in DXC
  • d82ae47 CI: Bump minimum macOS version to 13.0
  • e89ab83 Qt: Misc code cleanups
  • 49762aa Qt: Fix column width estimation in game list
  • 59d0f3c Qt: Fix game icon size and row height in game list
  • 458ad13 Qt: Take header width into account for all columns
  • 94cfc9b Update the Simplified-Chinese Translation. (#3594)
  • efa6e4a Common: Use NSAlert for assertion failures/panics
  • c5d9358 GameDatabase: Add DisableFastForwardMemoryCardAccess trait
  • 1999b0d GameDB: Set DisableFastForwardMemoryCardAccess for Twisted Metal 4
  • f6cdf95 Qt: Fix positioning of game list achievements icon
  • cd8d6d8 Qt: Remove game icon extra size
  • d542344 Qt: Don't need these functions defined in the header
  • b8764e8 Qt: Add exit specific message for confirmation dialog
  • 88802e0 GameList: Fix achievement game ID not set for disc sets
  • 8c08788 Qt: Normalize shut down labels
  • 7bba98a Update the Simplified-Chinese Translation. (#3596)
  • 5f6b690 Atualização Português do Brasil (#3597)
  • d0bbf8c GameDB: Set DisableFastForwardMemoryCardAccess for Tales of Destiny
  • 5a49db0 Qt: Reflect DisableFastForwardMemoryCardAccess trait in the settings UI
  • 97db72c Achievements: Fix display of game completion time (#3599)
  • bfc6da2 GameDB: Disable disc speedup on MDEC for Warcraft II (#3600)
  • a929aaf Update Russian translation (#3601)
  • b797aae GPU: Fix a couple instances of reading wrong thread settings
  • 0841ab4 Qt: Fix disc swap from game list incorrectly pausing
  • c33354e Qt: Don't hold game list lock on popup
  • dc5b57a Qt: Missed a couple of shutdown -> close messages
  • b483d2f ImGuiManager: Add title variants for OSD messages
  • 529da22 System: Use new OSD message variants
  • 0d4ffde Qt: Allow command line boot of device path
  • 2222085 Qt: Fix recommended value for "Challenge Indicators" (#3603)
  • 3e6dd9b System: Simplify and polish more OSD messages
  • 899d500 GPU: Fix compile warning
  • 5de231c System: Fix regtest build
  • 863b9b1 Qt: Minor layout fixes in analog controller binding widget (#3604)
  • 683ccbf GPUDevice: Swap ImGui rendering to use UBO
  • 6848f07 GPUDevice: Combine draw and push constant functions
  • 916b23f GPUDevice: Use separate buffer for push constants
  • 47c8204 GPUDevice: Add MultiTextureAndUBOAndPushConstants pipeline layout
  • b43111f GPUDevice: Remap input attributes when transpiling to HLSL
  • 4729e22 GPUDevice: Handle non-contiguous texture bindings in SPV transpiling
  • 08317d9 GPUDevice: Set fixed names for UBO/push constants in SPV transpiling
  • 9a5eadd GPUDevice: Add SRGBA8 texture format
  • af5c3fa GPUDevice: Fix mipmap generation on targets
  • d06f306 GPUDevice: Ensure clear is committed in MakeReadyForSampling()
  • eb0a889 MetalDevice: Fix creating mipmapped textures with generate flag
  • fc618b8 SPIRVModule: Add class for iterating/manipulating SPIR-V
  • 81fb801 PostProcessing: Support unscaled input
  • 8a732de PostProcessing: Support loading slang shaders/presets
  • 77b1abf MemoryCard: Fix off-by-one reporting in card number
  • 9a5e0c9 ShaderGen: Fix ImGui rendering with Vulkan
  • 5da178e Update the Simplified-Chinese Translation. (#3605)
  • 4ec6752 GPUPresenter: Handle padding for unscaled/slang input
  • b04b87a PostProcessing: Use titled OSD messages
  • 042bc79 ImGuiManager: Use different OSD title/text colours
  • 5ca3536 CPU/Recompiler: Set up frame pointer on Windows ARM64
  • 49a1446 Common: Fix SSE2 build
  • 85275a1 Qt: Add missing help text in Interface Settings
  • b0689d5 FullscreenUI: Move loading screen progress callback into namespace
  • b4d71cb Qt: Save position of settings windows
  • 70352b6 Qt: Center windows when they don't have saved positions
  • f5fc247 Qt: Resolve command line paths before autobooting
  • 520502d FileSystem: Fix RealPath() with relative paths
  • e91db67 Qt: Reload icons and tooltips when game list rows change (#3609)
  • a1889a2 Qt: Add standard shortcut to open settings (#3608)
  • 0c7e8f3 Qt: Fix overlapping widgets in cheat settings (#3607)
  • a5e2051 Update the Simplified-Chinese Translation. (#3606)
  • 2a35096 FullscreenUI: Fix misdetection of some light themes
  • cebb134 FullscreenUI: Fix button-held colour in menus
  • de2e89e Settings: Ensure slang shaders subdirectory is created
  • a8e922c Qt: Improve Darker Fusion style
  • 7080e98 PostProcessing/slang: Don't balk at duplicate option names
  • a88cfbe PostProcessing/slang: Raise error if too many textures are bound
  • d6f4fc7 PostProcessing: Ensure input buffer matches present format
  • 14481af Qt: Bring toolbar checked background closer to combo background
  • d58f2d0 Qt: Make auto/clear bindings buttons QPushButtons
  • a22d3a7 Qt: Style more widgets in Darker Fusion
  • f9cab70 INISettingsInterface: Use case sensitive storage
  • dd0c7ec GPU: Insert null field buffer if display disabled
  • 8b217b5 GPU: Fix OSD reporting of non-interleaved interlaced resolution
  • df4d04c Qt: Style patches widget on Mac
  • d598470 Scripts: Remove Flatpak manifest
  • 42cf66c FullscreenUI: Fix achievement points placement with short description
  • 3d39fe2 GPU: Don't crash if first frame is interlaced+black
  • 15d70ff GameDB: Max speedup cycles for Discworld and Discworld Noir (#3611)
  • 51726e3 Atualização Português do Brasil (#3612)
  • fbc9991 PostProcessing/Slang: Remap and skip binding unused textures
  • dca565a GameDB: Adjust crop area for Gran Turismo 2 (#3613)
  • 28b9111 Deps: Bump MacOS deployment target to 13.0
  • 9ed5254 Deps: Patch Linguist to build without Qt Quick
  • d797ca4 Deps: Don't build qtdeclarative
  • 8302a6b Deps: Remove unused CMake argument
  • 082ba2...
Read more

v0.1-9903

14 Oct 02:19
8f0c9dd

Choose a tag to compare

Commits

  • 7df21b2 Deps: Bump cpuinfo version
  • 86f36ad Deps: Remap paths in libbacktrace
  • 7e4f0ce Deps: Update to FreeType 2.14.1
  • 29aa0fa Deps: Update Harfbuzz to 11.5.0
  • 2624914 Deps: Patch libpng for apng support
  • f2cee19 HeapArray: Add size_bytes()
  • bcc066a Image: Fix a couple of random bugs
  • 8f78f83 Image: Don't use png_read_image()
  • 9d14a4a Tests: Add tests for Image class
  • 102af48 AnimatedImage: Add class for reading APNGs
  • 8e65beb GameList: Save APNGs for memory card icons
  • ea11ce2 Tests: Add for CueParser and ElfFile
  • d4c6905 Tests: Linux build fix
  • 5caa560 FileSystem: Disallow control characters on Linux/Mac as well
  • 93a13a6 FullscreenUI: Draw generated covers when not present
  • 4ee8738 FullscreenUI: Stop icons leaking into cover cache
  • ecf13de Qt: Add Memory Editor window
  • da47112 Qt: Link memory scanner address double-click to editor
  • b40ff8b Qt: Add optional animation of icons in game list
  • a904544 Update the Simple-Chinese translation to latest. (#3577)
  • bb9dbf9 Qt: Avoid casts on animation delegate
  • 50c9f63 Qt: Hackfix game list background on stylesheet themes
  • daf5fee Qt: Don't bother using worker for background resize
  • ea57a42 Qt: Don't use static storage for app icon
  • 3832b39 Qt: Fix disabling patches not removing empty ini
  • 6c1ee0c Settings: Store custom aspect ratios in main key
  • c5d309f Settings: Avoid log.h include
  • fb60691 Cheats: Pack state in struct
  • fa8a995 Cheats: Fix uninitialized data read in parsing
  • eadca6c Settings: Prefer widescreen patches over GTE hack
  • 0a25dd0 Atualização Português do Brasil (#3578)
  • 3fada38 Update the Simple-Chinese Translation to latest. (#3579)
  • 3d41156 Achievements: Fix unused variable warning
  • a50997a Qt: Fix app icon ending up as null
  • 38bb240 Qt: Avoid extra string storage
  • 5c9e28f Updated Swedish translation (#3580)
  • 9807948 Qt: Remove old vsync mode migration function
  • 975b9b1 AnalogController: Fix inverted motor display in OSD
  • e5c1788 Qt: Fix vibration binding not applying immediately
  • c790972 System: Warn if geometry tolerance is not default
  • 51942df Use DualSense Mic Mute LED for Analog Mode (#3574)
  • ffa0e8d Qt: Refactor LED bindings
  • cf8b1a5 Qt: Re-introduce FlowLayout
  • 982753d Qt: Allow binding both active and inactive LED colours
  • a048e09 Qt: Make LED settings clearer
  • 6cb727f GameDB: Disable auto analog in Alien Resurrection
  • 21c8344 Misc: Add error checking to LocalTime()
  • 570f041 Deps: Bump to Qt 6.9.3
  • 2adf7a1 CI: Bump MacOS runner to macos-15 + Xcode 26
  • 3624474 Controller: Remove unused InAnalogMode()
  • f0c67e9 Controller: Remove GetInputOverlayIconColor()
  • 9d8d81d InputManager: Only update vibration once per frame
  • 1b49f82 Controller: Merge all binds into one index space
  • 424f9a9 Controller: Simplify deadzone calculation
  • 10f9039 Controller: Skip runahead replay when analog is unchanged
  • 3966a9e System: Serialize PGXP state for runahead
  • 95e9cba Update the Simple-Chinese Translation to latest. (#3581)
  • cf0b602 Settings: Rearrange fields
  • e6788b3 System: Add 'Runahead for Analog Input' option
  • 22399c2 FullscreenUI: Fix localization of 'None' background
  • f57eeb3 CI: Simplify Windows/Linux workflows
  • 1665cb6 InputManager: Refactor and simplify vibration mapping
  • f219c2c AnalogController: Fix sync/readback value for vibration
  • 78db5ad Qt: Fix flicker when changing cover size
  • 7b991de Qt: Bump currently-visible covers to front on scale change
  • 9cc29fb Qt: Use QSize throughout GameListWidget
  • 4e797f3 CI: Remove redundant prefix on AppImage cross job
  • e373be9 CMake: Bump required dependency versions
  • 24a3dcb InputManager: Sync effect state on connection
  • 848833b CI: Fix Windows build symbol upload
  • 3a80673 Qt: Fix cover title being clipped
  • 1b7e429 Update the Simplified Chinese Translation to latest. (#3582)
  • 733df6a Qt: Show screenshot in resume game popup
  • 39eb2c5 Qt: Don't include git hash in window title
  • 7575050 Controller: Don't indirectly include settings.h
  • 267b74c Atualização Português do Brasil (#3583)
  • dbf2849 Misc: Move SettingInfo declaration to input_types.h
  • 9876196 Cheats: Remove unnecessary std::move()
  • 5afa6b2 Controller: Remove unused helper function
  • 76facb3 FullscreenUI: Fix default value for theme
  • 97c49a9 CDImageDevice: Use g_settings for ignore host subcode
  • 4f0d35c VulkanDevice: Make current command buffer lookup consistent
  • c039a94 Updated Swedish translation (#3584)
  • 5508581 Update the Simplified Chinese Translation. (#3585)
  • 00a2f5a FullscreenUI: Fix crash opening settings
  • cd37cd7 Deps: Update to Qt 6.10.0
  • 05a5828 CPU/PGXP: Handle SXYP mirror reads
  • 8bce5b0 CPU/PGXP: Make register writes more readable
  • 27d2679 CPU/GTE: Remove unnecessary struct padding
  • 4d516c5 dep/rcheevos: Bump external client image URL buffer size
  • 29d73cb GameDB: Remove PGXP vertex cache from Touge Max G
  • 330eb05 Scripts: Hopefully fix AppImage build
  • 50a9f04 dep/rcheevos: Bump to 6755915
  • 3552a5b Qt: Fix rare bug where covers get stuck in loading state
  • 505753d Deps: Update to FFmpeg 8.0
  • 4587c45 MediaCapture: Improve FFmpeg load error message
  • a1c1774 CI: Fix AppImage build (again)
  • f0f7475 FullscreenUI: Modernize blocking loading dialog
  • b5e1087 Qt: Fix submenu accessibility on MacOS
  • e0e245d Qt: Swap most out-of-toolbar QToolButtons to QPushButtons
  • a654ce6 Qt: Style QMenu and QToolButton with stylesheet on MacOS
  • 00042a5 Qt: Default to native theme on MacOS
  • adbfe7f Qt: Display hash in game properties summary
  • f8c720a Qt: Tab should change focus in edit cheat dialog
  • 08556f3 Qt: Normalize line endings in cheat edit dialog
  • bfcd3d4 Cheats: Strip whitespace on code body when editing
  • 286f9dd Qt: Validate cheats before saving edits
  • c4c6357 Qt: Improve column width behaviour in cheat list
  • ec96dd7 Qt: Don't use hash cheat list when PPFs exist
  • 90e6078 Cheats: Show OSD warning when parsing fails
  • c117059 GPU/HW: Fix crash when preloading texture replacements
  • 8ed329f Qt: Fix serial mismatch error when verifying
  • a08996d Spanish (Spain) 2025/10/12 translation update (#3586)
  • 114c263 Qt: Fix initial button state in memory card editor
  • 3c632c8 Qt: Fix hang on theme change on MacOS
  • 8f0c9dd Qt: Fix disabled menu items in MacOS native theme

v0.1-9787

23 Sep 13:10
94efd00

Choose a tag to compare

Commits

  • aee897e Qt: Disable UI of settings forced via gamedb, part two (#3561)
  • d367e7e Qt: Alternating row colors for Hotkeys settings (#3559)
  • 022d9f3 Qt: Pass game list entry to settings window
  • c4ac3d1 Qt: Improve padding in hotkey rows
  • c9156fd Qt: Pack host local state in struct
  • 17aa588 Qt: Add shadow to placeholder cover text
  • e214241 Qt: Use Roboto for cover placeholder text
  • aca4e6b Qt: Use Roboto for cover captions too
  • 7bf3b79 Qt: Fix hotkey alt row colours on Mac
  • 96c90a4 Qt: Use colorScheme() for dark mode detection on system themes
  • 5c7b976 Updated Swedish translation (#3562)
  • 2459ac7 Achievements: Fix crash on unknown game
  • a8bbd2c CrashHandler: Catch exceptions and std::terminate
  • 1cdde2c Path: Add IsFileNameValid()
  • f453508 GameList: Don't balk on cover titles that end in dot
  • f0ff520 GameList: Improve custom title cover handling
  • 65f6209 GameDB: Various fixes for Einhänder
  • 9ae09a7 GameDB: Disable widescreen and enable PGXPPreserveProjFP for Evil Dead
  • d694bc2 GameDB: Various fixes for Mega Man games
  • 66d6e28 GameDB: PGXP CPU mode for Tony Hawk's Pro Skater
  • b95f2b1 Atualização Português do Brasil (#3564)
  • c6666a3 Qt: Show tooltip when adjusting icon/cover scale (#3563)
  • edeaae6 dep/rcheevos: Bump to 4570cb7
  • d8912cb System: Allow RVO in GetExecutableNameForImage()
  • fe09b5d ISOReader: Allow zero-length root directory entries
  • 56665d6 Achievements: Simplify hash-to-string routine
  • 8f247c9 Qt: Move zoom logic entirely to game list widget
  • 78bc53f Qt: Stop slider tooltip showing on keyboard shortcut
  • e0a51e1 CI/Flatpak: Replace with a wrapped AppImage
  • 84c6be7 Deps: Simplify Linux build scripts
  • 6126209 CMake: Remove Flatpak specific commands
  • ee9f321 dep/rcheevos: Remove files deleted upstream
  • 456d341 Enable/Disable View menu items according to state
  • 1f07bfc Added "View > Sort By" menu
  • df49eba Added icons and mnemonics in View menu
  • 17a1b23 Keep Game List/Grid view options enabled if rendering to separate window
  • a9c36f3 Use statusTip instead of toolTip for menus
  • cdcfbea Updated Swedish translation (#3566)
  • a790f52 Qt: Don't try to replace AppImage when running as Flatpak
  • e038a1d Qt: Fix some size values truncated in game list
  • 4d5b047 Qt: Don't show fractional sizes in game list
  • 9877cc0 Qt: Move list background config logic to GameListWidget
  • f39a067 Qt: Add tooltips to menu actions
  • 3554467 Qt: Set status tip for actions to tooltips
  • 08d5448 Qt: Disable capture frame option if not running
  • ae570b0 Qt: Remove multiple source of truth for column titles
  • 7807a68 Misc: Fix a couple of code analysis warnings
  • cb7c33c Qt: Synchronize horizontal header with sort actions
  • 640769c System: Remove unnecessary c_str()
  • aa92937 Host: Pack locals in struct
  • ae77a82 Common: Add helper for thread-safe localtime()
  • 2346f67 dep/fmt: Update to v11.2.0
  • 328c93b FullscreenUI: Fix OOB on start+load state
  • 5778630 Qt: Replace named slot usage with functors
  • 339f425 Qt: Remove named slot declarations
  • 31c75a2 Qt: Remove Q_OBJECT where unnecessary
  • 9e3dda6 Qt: Remove unused variables
  • 66bef3e Achievements: Allow background reads
  • 0088bb0 Qt: Make titlebar match current UI theme (Light/Dark) (#3568)
  • ff23462 dep/rcheevos: Bump to fae1e23
  • 8a431b7 GameDB: Disable PGXP on 2D polygons in Wipeout games
  • bb50fc9 CDROM: Improve subchannel file detection
  • 9a1a8c2 Qt: Allow transparent padding for covers
  • eeb1555 Qt: Fix tooltip typo
  • e138030 Updated Swedish translation (#3569)
  • 4bf2aa5 Update the Simple-Chinese translation. (#3570)
  • 1e41408 Atualização Português do Brasil (#3571)
  • ceb6757 Qt: Work around broken dialogs in MacOS 26
  • a39d370 Qt: Don't show main window when changing setup wizard options
  • 2369b32 Qt: Partially revert "Remove Q_OBJECT where unnecessary"
  • 05af0c1 FullscreenUI: Fix title display in game properties
  • ea3c8a3 Qt: Add a theme changed event and use it for hotkey rows
  • 3724a38 Qt: Remove MainWindow::updateTheme()
  • 6caf2d5 Qt: Resize fixed columns on theme change
  • 4c81a98 Qt: Fix detection of system language (#3573)
  • a13aa8f Adicionada uma atualização da tradução para português europeu
  • 073335c Qt: Don't break size of larger game icons
  • 1ac7fc2 SaveStateSelectorUI: Scale save state selector to LayoutScale
  • 83d518c Qt: Fix about dialog link colour
  • 749ce48 Qt: Theme colours can be constexpr
  • 1a4ca3b Qt: Add 'Darker Fusion' theme
  • e3c4f77 Qt: Fix tab order in settings pages
  • f1fe00c Data: Update SDL game controller database
  • 5e253d0 Qt: Add toggle button class
  • a90184a CDROM: Tidy up warnings
  • fb318ca Qt: Fix toggle button not updating
  • 95bcff8 Qt: Darker Fusion tweaks
  • 0d3c775 Qt: Fix Cheats menu shortcut
  • bb63bf9 Qt: Remove multiple sources of truth for dark theme
  • e6c49f0 Qt: Fix uncentered toggle widget thumb
  • 41a4f07 CI: Remove Flatpak verification steps
  • 81f5b74 Qt: Add icon for multi-disc games
  • c4069ee CMake: Avoid search path conflicts
  • 5e32871 CI: Remove unneeded install on Mac
  • 24bf2bc Qt: Default to darker fusion theme
  • f1047af Qt: Make checked menu item visible in Darker Fusion
  • 77bc1ae Qt: Fix incorrect size hint in FolderSettingsWidget
  • 85c4e02 Qt: Remove redundant title update in Game Properties
  • e877ae4 Qt: Fix display of uncompressed size
  • 49b5ea3 DMA: Skip chopping on tiny blocks
  • 109bbf6 GameDB: Recompiler ICache for Dotchi Mecha!
  • e183ec3 CPU/Interpreter: Use aligned address for membps in lwl/lwr
  • b106392 CPU/PGXP: Implement lwl/lwr/swl/swr
  • 0de2aaf CPU/Interpreter: Memory read failures are unlikely
  • 7de8481 System: Fix changing GPU thread state when inactive
  • ba0390f System: Fix patch settings not clearing on game change
  • 9baa09a InputManager: Use TinyString for key-to-string function
  • 055caf5 Qt: Log input state when binding
  • fcf6739 Qt: Require non-zero displacement for reverse axis binding
  • 03cbfc2 CI: Auto-retry patch download
  • 790ac23 GPU: Get present parameters before allocating command
  • c2bbef0 System: Simplify memory card opening
  • dc1882d System: Fix patch setting override desync on safe mode toggle
  • 36ebaf8 Spanish (Spain) translation update 2025/09/22 (#3576)
  • 598d393 System: Don't create any memory cards in PSF/GPU Dump mode
  • 65d6ecc Qt: Don't use style hints as source of truth for dark mode
  • 5b4cf75 Qt: Fix game list icon colours on theme change
  • 94efd00 Qt: Add fallback if system colour scheme is unknown

v0.1-9669

09 Sep 09:24
d0840c0

Choose a tag to compare

Commits

  • 54ab073 SDLInputSource: Add options for XBox HIDAPI/rawinput
  • 5bdcde7 Qt: Expose advanced SDL options
  • 33b3a6e InputSource: Support querying current values
  • c0c0225 System: Synchronize input binding state on startup
  • 327e9b5 XInputSource: Set initial state on connection
  • 8597873 SDLInputSource: Fix DirectInput
  • d9d3b6a GameDB: disable auto analog mode for Pepsiman (#3511)
  • f340bdb CI: Bump actions/checkout to v5 (#3508)
  • 13ce646 GameDB: Disable widescreen on Alone in the Dark - The New Nightmare (#3509)
  • 962198f GameDB: Adjust crop area for Final Fantasy IV (#3510)
  • 006de3a Qt: Don't manually populate combos for enums
  • 7a359e5 GPU: Add separate scaling and FMV scaling options
  • 95ccd7c FullscreenUI: Update translation strings
  • 414ddf7 Achievements: Display warning for unsupported achievements
  • edf9b53 GameDB: Disable PGXP and widescreen for Chrono Trigger
  • f7c334b GameDB: Disable PGXP and widescreen on Lunar games
  • 276211b GameDB: Disable auto analog mode on Echo Night (#3514)
  • 1bc9f1e update the Simple-Chinese translation to latest. (#3515)
  • 1743bfa Qt: Fix double translation in GameListWidget
  • a8fdeb8 GameDB: Tighten DMA for Hot Wheels Turbo Racing
  • 921190a Atualização Português do Brasil (#3517)
  • d526818 GameDB: Disable auto analog mode on Shadow Tower (#3516)
  • bcb6f98 Common: Eliminate more static functions in headers
  • 4e39c30 GameDB: Rollcage Stage II
  • 0fe6928 GameDB: disable auto analog for some shoot'em up games (#3518)
  • f5d668f GameDB: Disable auto analog mode on Armored Core games (#3519)
  • 4c349ff GameDB: Disable widescreen and speedup on MDEC for Legend of Mana (#3520)
  • c7a4505 Qt: Check screen bounds when restoring window positions
  • e00d696 GameDB: Disable auto analog mode on Backstreet Billiards (#3521)
  • d302401 GameDB: Increase max speedup cycles for Brave Fencer Musashi
  • 40383f5 GameDB: Increase max speedup cycles for Breath of Fire III
  • ae99e8d GameDB: Disable widescreen on Suikoden
  • 0ff6a5c GameDB: Add compatibility rating to a few games
  • 28db2be GameDB: Disable auto analog on more games (#3523)
  • c1e7182 Qt: Disable UI for fast boot & disc speedup if marked incompatible in the DB (#3525)
  • 826eff3 GameDB: Set max speedup cycles to 70k for Resident Evil 3 too (#3524)
  • 86006e3 System: Apply setting restrictions before gamedb
  • 6e864a3 GameDatabase: Allow CPU overclock override
  • c1d0cf3 GameDB: Titan Wars overrides
  • 6e92604 GPUDevice: Move options to create flags
  • 34e0eab CPU/Recompiler: Check downcount in interpret block
  • 7de367f CPU/Recompiler: Remove unused function pointer
  • 80fcd14 CPU/Recompiler/RISCV64: Replace lwu with lw in a couple of places
  • 19f1700 GameDB: Max speedup cycles for Driver/Driver 2
  • 645344b Animated icon in memcard editor (#3526)
  • e907bbf Qt: Use a delegate to lazily resize/render icon pixmaps
  • 686c4b8 Qt: Add custom code view for debugger
  • da18a95 Qt: Sync debugger breakpoint list with main
  • e551a96 Qt: Don't disable debugger code view while running
  • 6bef5a4 OpenGLDevice: Disable PBOs on Panfrost driver
  • fda28ea DMA: Decrease slice size when MDEC is active/decoding
  • b67bf20 Mini: Fix missing format in FormatNumber()
  • a1f81d9 InputManager: Pack state in struct
  • 7d8e11d InputManager: Make macro button storage dynamic
  • d4b85ef InputManager: Increase macros per pad
  • 3b1dcde Qt: Force memory card editor icons to 32x32
  • 8533ab7 Qt: Fix editing second memory card
  • b3d6b37 GameDB: PGXP CPU mode for Azure Dreams
  • 4e96fde GameDB: Disable disc speedup on MDEC for Diablo
  • 24e4961 GameDB: Fix metadata for Darkstone
  • fb56c99 GameDB: Disable widescreen in Fear Effect 2
  • 2f39820 GameDB: PGXP CPU mode for Nightmare Creatures II
  • bbd1508 CompressHelpers: Tidy up and add Deflate
  • 1ef1a2d System: Add XZ save state compression
  • dcb6730 Spanish (Spain) translation update 2025/08/25 (#3530)
  • 7c398c4 GameDB: Turn PGXPPreserveProjFP off for Persona
  • f0c0ca3 GameDB: Fix metadata for Nightmare Creatures I & II
  • 2bd7fe8 Qt: Disable column sorting indicator and adjust labels in memcard editor (#3528)
  • de39ff5 GPUDevice: Fix ROV support being disabled
  • 63350c3 GPU/HW: Fix uninitialized pipeline fields
  • eedf417 CMake: Add possible missing include directory
  • e5fd12a Qt: Disable game widget while system is starting
  • 87f2c54 FullscreenUI: Unify Prefer GLES option name
  • a46e43f GameDB: Enable PGXPPreserveProjFP for Ghost in the Shell (#3531)
  • c76a891 Update the Simple-Chinese Translation to latest. (#3533)
  • f303d57 GameDB: Disable auto analog mode on several SMT games (#3532)
  • b0a63f9 Qt: Sharp Bilinear scaling for memcard icons (#3536)
  • 7f36401 Update duckstation-qt_it.ts (#3534)
  • 2c28e45 Updater Application Icon Update (#3535)
  • 835390f Cheats: Make message OSD key consistent
  • f6fd1e9 Atualização Português do Brasil (#3538)
  • 2182a0d Update the Simple-Chinese Translation to latest.
  • 4738fce Updater: Fix pause until mouse move on Mac
  • d13d3d8 Resources: Relocate PromptFont key glyphs to high range
  • 1aa92c7 GameDB: Normalize multi-line strings
  • a8b4bb3 GameDatabase: Add sort title, localized title, and save title fields
  • 6e421b9 GameDB: Add unsuffixed display names
  • d00b897 GameDB: Add sortName for games starting with 'The'
  • 8bfc31a GameDatabase: Refactor disc sets
  • 29327b3 GameDB: Add localized names
  • 2ed8c02 Qt: Show English and localized names in tooltip
  • 39fcbf7 GameDB: Add sort name to Crash/Final Fantasy games
  • 970f2ed GameDB: Fix lint errors
  • 17872fe Qt: Fix compile warning
  • e35b49d GameDB: More instances of sort titles
  • 2b519b1 GameDatabase: Check timestamp of discsets.yaml
  • dec06fa GameDatabase: Use once_flag for thread-safe initialization
  • 86333e9 System: Fix crash on starting non-database game
  • d77c92d FullscreenUI: Fix incorrect disc set window title
  • 92c0561 Update the Simple-Chinese translation to latest. (#3540)
  • c1bb183 FullscreenUI: Fix selecting disc set entries in list/grid
  • 7cd0d41 Settings: Fix portable mode for AppImages
  • 0a271cd StringUtil: Fix CompareNoCase for prefixes
  • 56e1713 GameList: Support scanning and caching relative paths
  • b0dd909 Qt: Resizable game list icons (#3539)
  • 6765b2f Qt: Delete some redundant code in GameListModel
  • d499d8e Qt: Avoid a full reset when toggling show cover titles / localized titles
  • abde6e4 Qt: Move scaling helper to cpp file
  • 48ac353 Qt: Disable game list toolbar when no games found
  • 5f8716a Qt: Simplify icon scaling
  • f2f06a7 FullscreenUI: Fix game properties title
  • e1c0753 Qt: Use path as tie breaker when sort titles equal
  • 3cb275d Qt: Use grid layout in cheat code editor (#3543)
  • b8952da Qt: Don't use memcard icon cache for window icon when scaled
  • db2f563 dep/googletest: Update to v1.17.0
  • faa7599 Tests: Add more unit tests for common classes
  • e32e644 StringUtil: Fix logical errors
  • d69935e Qt: Fix warning
  • e89590b Qt: Avoid QPixmap -> QIcon conversion in getIconForGame()
  • 44908fe Qt: Respond to DPR change in memory card editor
  • e933716 GameDB: Add sort name to several more game series (#3544)
  • 6a0249b Qt: Hide game list vertical header (#3545)
  • 91f25b6 Controller: Add Start/Select bindings for the Pop'n Controller (#3546)
  • 6dd78b1 MediaCapture: Fix default video codec on MacOS
  • 126171f Qt: Fix memory card icons drawing on themselves
  • 019636b Qt: Use DevicePixelRatioChange for DisplayWidget
  • 0867dec Qt: Use widget-local device pixel ratio for game list
  • ddaac7e GameList: Use save title for cover image lookup
  • 4b472dd GameList: Improve grid size calculations
  • fc29fba Qt: Don't try to load directory as background image
  • 2215f41 GameDB: Restore "(Soviet)" suffix on disc 2 of some C&C games
  • 2514814 GameDB: A few more sort names
  • 6d2f3dc Qt: Fix zooming with mouse wheel in game list (#3549)
  • fd9c3cd Update duckstation-qt_pt-BR.ts (#3548)
  • d2a2a78 Update the Simple-Chinese Translation to latest. (#3547)
  • 2d3ebc8 System: Fix safe mode details not showing
  • 59542b0 Deps: Update Qt, SDL and zlib-ng
  • a390797 Data: Add new PromptFont glyphs
  • 25b44f4 Qt: Wire up new key glyphs
  • 7c2585d Deps: Make Qt build options more consistent
  • e02c991 Deps: Patch Qt fusion style
  • e573f18 GameDB: Disable auto analog for Hellnight (#3551)
  • 3d73c5c Qt: Fix possible cover loss during load
  • 8327282 GameList: Fix covers for disc sets sometimes missing
  • 76e386c CrashHandler: Debug break on abort() if debugger attached
  • fb1bd1e FullscreenUI: Fix crash when toggling localized titles
  • 08901c0 Qt: Fix scroll bar desyncing on icon size change
  • c33131d InputManager: Use scancodes for key mapping
  • d9dc507 InputManager: Map 'old' key names to new on load
  • 78fa543 SmallString: Make constructors explicit
  • 979e850 Qt: Include full binding text in tooltip
  • 21bede8 ImGuiManager: Initialize to default text font order
  • f7edbde Qt: Remove unused signal
  • b5d5cfd GameList: Pack state in struct
  • 393724a Qt: Save one lookup when loading covers
  • 7e04671 GameList: Use fixed size for icon column
  • 3ff6287 GameList: Use size_t for indexing
  • 587e73d Sharper icon scaling (#3553)
  • 5cd8444 Qt: Consider title when sizing icon column
  • 14b2302 Qt: Fix compile warning
  • 0aa8374 MSBuild: Don't merge qt_LANG.qm when qtbase_LANG.qm exists
  • 26c4eec Qt: Fix another compiler warning
  • da64db6 System: Don't print DATE/TIME
  • 843234f MSBuild: Set /d1trimfile and /PDBALTPATH
  • ca504bd CMake: Set -fmacro-prefix-map and -ffile-prefix-map
  • 4c6375a Qt: Fix inconsistent cover caption size at startup
  • 78d22b8 Qt: Swap point size for pixel size ...
Read more

v0.1-9483

13 Aug 06:49
09a3c99

Choose a tag to compare

Commits

  • 3426bcd Deps: Update for July 2025
  • 6c4300c CI/Flatpak: Simplify deps build
  • 83d521f CMake: Drop Flatpak workarounds
  • 47fe487 README: Add migration instructions for Flatpak->AppImage
  • e82218f Qt: Fix changing language while game running
  • 1c8699b Host: Add FormatNumber()
  • 9b353f8 Misc: Use host locale formatting for dates
  • f91ee34 Qt: Merge qttranslations.cpp with qthost.cpp
  • ef320c6 Qt: Cache app locale object
  • 7f5f903 Qt: Use application locale in most places
  • c82351a Qt: Implement 'System Language' language option
  • 96c2244 Qt: Use selected language locale for formatting
  • 29e9270 FullscreenUI: Add option to hide grid view labels
  • 4423714 FullscreenUI: Fix remaining fixed date/time formatting locations
  • 2b18df0 MediaCapture: Don't crash if video codec supports 0 formats
  • 634fac4 CrashHandler: Fix recursive backtrace on Linux
  • 36718c6 CMake: Force debug symbols on Linux
  • 0de3ffa Data: Update SDL game controller database
  • 71591e8 Qt: Use localized date/time formatting in a few more places
  • 70d6a2d Achievements: Revert back to long date format for unlock/submit time
  • 351f67a CMake: Use -g1 for Release builds
  • 5bfe5cf dep/imgui: Remap non-breaking space to space
  • 300d158 FullscreenUI: Fix clock position in pause menu
  • df65879 GPU: Fix typo
  • 168b80d Qt: Add tooltips to game list
  • fac47b1 Update the Simple-Chinese translation to latest. (#3495)
  • 042930d FullscreenUI: Fix focus loss with grid/list button
  • 188be7d Deps: Revert Harfbuzz to 11.2.1
  • e821b13 GameDB: Tweak compat settings for Parasite Eve 2 (#3492)
  • fbca692 GameDB: Set max speedup cycles to 70000 for Resident Evil 2 (#3496)
  • f569448 System: Centralize pause checks
  • acf7897 Qt: Create main window before starting EmuThread
  • e5593c9 CI/Flatpak: Hopefully fix build cache
  • ce53e29 Qt: Fix possible crash on shutdown
  • 30df16c Scripts: Remove PKGBUILD
  • 5ed7961 Qt: Refuse to start in known broken environments
  • 690f843 Qt: Auto switch between any/changed values in memory scanner
  • 3768940 Qt: Fix assertion on shutdown after resize
  • a9ce005 Qt: Fix maximized state not saving to config
  • fef553f Qt: Display 'First Value' in memory scanner
  • c8dd999 GameDatabase: Remove redundant SetRymlCallbacks()
  • 52d9f73 Misc: Replace a bunch of static qualifiers with inline
  • 02a1ccb Qt: Persist memory scanner watch list across instances
  • a27feda Qt: Various fixes to memory scanner UI
  • 4644db0 GPU: Fix screenshot size in uncorrected mode
  • b81dfa2 GPU: Simplify screenshot size calculation
  • 6c9d339 PerformanceCounters: Align to 4 elements
  • f464d42 AudioStream: Fix glitches when disabling fast-forwarding
  • 9b4698d AudioStream: Back off resets that don't pass threshold over time
  • d3f04dc AudioStream: SIMD averaging window calculation
  • 143ae49 AudioStream: Use larger target size only when intentionally running slow
  • be48e5c dep/imgui: Demo window should not enabled
  • fe11c65 ImGuiOverlays: Fix save state selector out-of-order drawing
  • 628e41f ImGuiManager: Don't render when skipping present
  • 5c682d2 ImGuiOverlays: Frame time history is aligned
  • e98871a Settings: Remove middle padding
  • 501380e Achievements: Split up overlay setting
  • a2222d8 Qt: Fix inability to exit with HC mode active
  • d2caabd Qt: Fix exit on separate window close with FSUI active
  • bc908aa GameDB: Adjust crop area for Silent Hill
  • 2669b02 Qt: Remove obsolete comment
  • a080228 Qt: Don't reset model for every scanned game
  • 76fdbb0 Qt: Add tooltips for more fields in game list
  • 73f326c Qt: Use header resize mode for game list column widths
  • bb78331 Qt: Use header resize mode for memory scanner
  • c6c8039 Qt: Use header resize mode for settings panels
  • 93d6fc6 Qt: Use header resize mode for memory card editor
  • 6700271 Qt: Use header resize mode for disc windows
  • edd63df Qt: Remove now-unused resize column helpers
  • ebbc1e9 Qt/Updater: Move Download Size indicator to the top (#3499)
  • 5c48f85 GameDB: Fix cropping in Tomb Raider 4 & 5 (#3500)
  • e380398 Achievements: Infer and display beaten/completed time
  • aa2a0cd Data: Update SDL game controller database
  • 5fc4fbc Qt: Improve display of version in updater
  • 45a2257 CMake: Update version requirements
  • 09e7855 Qt: Fix updater download size display
  • 42dc5e4 CI: Fix PR builds failing
  • 20e9b8d Qt: Fix buffer size help text (#3501)
  • 1984d8c GameDB: Disable widescreen for Arc the Lad II
  • 2f8460b GameDB: Disable disc speedup on MDEC for Chrono Cross
  • 474d5dc GameDB: Delete obsolete comment
  • 4e662f1 GameDB: Add compatibility rating to a couple of games
  • a5c6138 GameDB: Disable disc speedup on MDEC for Star Ocean - The Second Story
  • 7830a6d Deps: Bump to SDL3 3.2.20
  • a84d583 CI: Missed one workflow
  • b75be05 Achievements: Fix counting progression achievements (#3503)
  • 9b99d99 Achievements: Fix display of game completion date
  • d65c8a3 Achievements: Keep track of the earliest unlocked win condition (#3504)
  • 2a2a011 FullscreenUI: Improve title padding of achievements
  • c519d3c GameDB: Add analog joystick to supported games
  • de2d6d1 Qt: More accurate game list column width estimation (#3505)
  • 9576a3a Achievements: Fix "beaten" condition (#3506)
  • cdd0086 Qt: Fix toggling read/write breakpoints
  • fc129a9 GameDB: Alien Resurrection
  • a2c015b GameDB: Disable WS/PGXP on 2D Final Fantasy games
  • 47e8d90 GPU: Fix screenshot size when showing VRAM
  • 0fc9de7 Qt: Fix crash toggling achievements in per-game settings
  • 0a53bc4 Qt: Remove redundant layout from AchievementSettingsWidget
  • 09a3c99 AudioStream: Fix crash with timestretch disabled