Commit Graph

9098 Commits

Author SHA1 Message Date
OpenSauce04
8e1ffc1bdc Fixed a possible app crash when calling AndroidStorage::GetUserDirectory 2026-03-08 18:46:09 +00:00
OpenSauce04
96485a22f8 android: Split path resolution logic of getUserDirectory into seperate function 2026-03-08 18:46:09 +00:00
OpenSauce04
97c9a51015 android: Re-implement title uninstallation via Service::AM::UninstallProgram 2026-03-08 18:46:09 +00:00
OpenSauce04
a8ebd0f551 DocumentsTree: Put resolvePath under a strict directory whitelist 2026-03-08 18:46:09 +00:00
OpenSauce04
fac63ce6b1 DocumentsTree: Re-implement getFilename without resolvePath 2026-03-08 18:46:09 +00:00
OpenSauce04
c71b2dc822 Move AndroidCanUseRawFS and AndroidTranslateFilename into AndroidStorage namespace 2026-03-08 18:46:09 +00:00
PabloMK7
e87635095a android: Fully use raw FS access on vanilla builds 2026-03-08 18:46:09 +00:00
PabloMK7
0c624f16a7
core: Stub AC::CancelConnectAsync (#1846) 2026-03-08 19:26:39 +01:00
PabloMK7
d1d14cef79
core: Disable BOSS for enabled LLE online services (#1847) 2026-03-08 19:24:52 +01:00
PabloMK7
7d5da9eaeb
core: Fix application jump parameters (#1845) 2026-03-08 18:41:31 +01:00
lannoene
abc1980418
Add DLP:SRVR + misc bug fixes (#1828)
* Add DLP:SRVR + add friend code seed hack for LM1 + add multiple filters in IPC debugger + fix cia_container smdh offset not being applied, possible IF statement underflowing + default initialize boss variables + fix IPC header asserts in AM functions + add extra debug info to IPC param assert

* Make server & client more resistant to high ping conditions

* Remove DLP from list of online recommended modules

* Fix license headers + fix clang formatting + fix server create network assert

* Fix recorder.cpp license header
2026-03-08 15:48:09 +01:00
Fausto Núñez Alberro
70c9e18eea
libretro: enable VK_EXT_custom_border_color extension (#1825)
Fixes crash on startup with Vulkan renderer. The extension and its
features must be enabled during device creation for samplers using
custom border colors to work.

Fixes #1824
2026-03-07 21:56:44 +01:00
PabloMK7
46ca83cc36
core: Enable LLE CECD and BOSS when online LLE modules are enabled (#1842) 2026-03-07 21:11:45 +01:00
PabloMK7
1e0df67cc4
file_util: Fix file behaviour on Windows (#1841) 2026-03-07 20:33:29 +01:00
PabloMK7
ced1ec0112
core: nwm: Implement NWM_SOC::GetMACAddress (#1840) 2026-03-07 17:53:10 +01:00
Fausto Núñez Alberro
1b41c78afc
libretro: expose large_screen_proportion as a core option (#1833)
Adds the large_screen_proportion setting to libretro core options,
allowing users to adjust the ratio between the large and small screens
in the "Large Screen, Small Screen" layout.

This is useful on devices like the Steam Deck where the default 4x ratio
makes the small screen too tiny to be practical.

Values range from 1.00x to 6.00x in 0.25 increments.

Closes #1832
2026-03-07 16:44:27 +01:00
PabloMK7
748b97ac5e
core: ndm: Implement suspend daemons count (#1839) 2026-03-07 14:26:40 +01:00
PabloMK7
2207be30a9
core: Add "toggle unique data console type" option (#1826) 2026-03-06 01:23:35 +01:00
PabloMK7
8d284aeccf
video_core: Fix a few vulkan validation issues (#1818) 2026-03-04 21:05:22 +01:00
jbm11208
d49aa070fd
qt: Always receive camera data from UI thread (#1812)
* Make camera functions thread-safe

* Revert redundant changes to qt_multimedia_camera.h and add comments to qt_camera_base.cpp
2026-03-04 16:58:20 +01:00
OpenSauce04
92cd488754 Move version numbers to end of release file filenames 2026-03-04 14:48:04 +00:00
OpenSauce04
efccedbbd2 cmake: Version info generation improvements
- Allow GIT-COMMIT and GIT-TAG files to override real git info (useful for testing version-related functionality such as update checks)
- Always re-configure scm_rev.cpp when configuring with CMake (fixes an issue where the version number would just not update in incremental builds)
2026-03-04 11:45:55 +00:00
OpenSauce04
93e831decb android: Fixed invalid default config content, resulting in a crash 2026-03-03 18:34:53 +00:00
OpenSauce04
d6fadff3ee Updated translations via Transifex 2026-03-03 16:30:03 +00:00
OpenSauce04
af980b4117 Remove _android suffix from Android libretro core filename 2026-03-03 16:26:08 +00:00
OpenSauce
068d6598bc
Configuration backend improvements Pt. 1 (#1762)
* Convert all setting keys in settings.h into hana strings

* Derive libretro setting keys from common/settings.h hana strings

* settings.h: Reduce code repetition in key definitions via macro

* Implemented mechanism to pass our C++ setting keys to Android/Kotlin

None of the Android keys have been moved over as of this commit, this is just prep work

* jni_settings_keys.cpp.in: Removed redundant code

* Migrate (almost) all Android setting string keys over to SettingKeys

Also some slight cleanup

* Updated license headers

* Fixed top custom width erroneously being used in place of top custom height

* Migrate (probably) all setting string keys to Settings::QKeys

* Migrated several previously missed string keys to generated keys

* SettingKeys.kt: Visually seperate shared and Android-exclusive keys, similar to GenerateSettingKeys.cmake

* android: sdl2_config --> android_config

Not sure why these values are named this way. Hold-over from SDL2 frontend?

* android: Generate and validate default config.ini dynamically

* Settings: Assume C-style string keys by default

Relative to the previous commit, the following names have changed:
- Settings::Keys --> Settings::HKeys
- Settings::CKeys --> Settings::Keys

* default_ini.h: Fixed formatting warning

* Comment cleanup

* android: Fixed compilation failure due to incorrect namespace

* config.cpp: Use ASSERT_MSG instead of LOG_ERROR and ASSERT(false)
2026-03-02 23:26:43 +00:00
TeamPuzel
fe2f637467 Fix UI freeze on macOS game-list population
it seems like the initial call to `GameList::PopulateAsync` in the window constructor is too early in the app life-cycle and doesn't run asynchronously, or Qt is using macOS API in an esoteric way, or maybe it's something else entirely.

Moving the list population to happen before the window is shown instead appears to fix the issue.
2026-03-02 22:55:40 +00:00
PabloMK7
0f9d5f29f3
video_core: Move shader and pipeline compilation into separate workers (#1802) 2026-03-01 23:09:13 +01:00
Eric Warmenhoven
cb09d1e064
libretro: add portability_subset extension if required (#1791) 2026-02-28 15:23:03 +01:00
Richard
526d9d4cea
android: Add auto-map controller button with long-press to clear all bindings (#1769) 2026-02-27 19:57:41 +01:00
David Griswold
b477ba09c1
Ability to select which layouts to cycle with the cycle layout hotkey (#1430) 2026-02-27 13:21:53 +01:00
David Griswold
6b2ac400eb
Android: Hotkey Enable Button (#1464) 2026-02-26 18:40:42 +01:00
David Griswold
5ac0ef8fde
hide portrait layout menu on landscape and vice versa (#1473) 2026-02-26 14:27:18 +01:00
David Griswold
3255620934
Implement integer scaling (#1400) 2026-02-26 13:33:13 +01:00
keynote
03d62efe13
artic_base_client: Fix high cpu usage (#1789)
Fixes high CPU usage by adding a small sleep to the Client::Read and Client::Write methods
2026-02-25 21:34:52 +01:00
PabloMK7
7d19679cc5
video_core: vk_texture_runtime: Refactor and fix resource leak (#1790) 2026-02-25 19:53:03 +01:00
PabloMK7
b3fd0b6c89
video_core: Apply texture filter to color surfaces (#1784) 2026-02-25 13:08:18 +01:00
RedBlackAka
15bdd27b9c
citra-meta: Use dedicated GPU by default on AMD (#1783) 2026-02-24 18:06:29 +01:00
Eric Warmenhoven
17f4c52e56 libretro: default system type to New 3DS 2026-02-23 22:49:02 +00:00
Eric Warmenhoven
27c3e0e5c3 libretro: better safety on vkDevice feature checks 2026-02-23 22:49:02 +00:00
Eric Warmenhoven
8fac24d2a4 libretro: better load failure check 2026-02-23 22:49:02 +00:00
Eric Warmenhoven
fe59958b63 older tvos hardware does not support layered rendering 2026-02-23 22:49:02 +00:00
RedBlackAka
13e0fdeac1
libretro core: Add some ifdefs (#1765) 2026-02-23 21:35:02 +01:00
PabloMK7
8b72dcb235
video_core: Do not spam file IO when reading vulkan shader disk cache (#1774) 2026-02-23 15:45:26 +01:00
PabloMK7
fcb345e273
logging: Check filter before log format (#1773) 2026-02-23 14:26:20 +01:00
PabloMK7
4c054ff2e7
video_core: Fix transferability issue in vulkan shader disk cache (#1770) 2026-02-22 22:41:24 +01:00
lannoene
43cecd1692
Update File Core and Add HLE DLP Client (#1741) 2026-02-22 17:07:24 +01:00
OpenSauce04
ac0ec5edea Updated translations via Transifex 2026-02-21 17:17:12 +00:00
Chase Harkcom
c55165e19b
Fix segfault when resetting default settings (#1751) 2026-02-20 23:40:39 +01:00
jbm11208
1092295f2a
Fix Shadow Rendering / Texture Filtering (#1675)
* video_core/renderer_vulkan: Add texture filtering

* Fix Shadow Rendering (again...)

* Make individual image views per res scale

* Refactor texture runtime

* Fix some magic numbers

* More fixes and filter pipeline cache.

* Refactor Surface and Handle move and destructor

---------

Co-authored-by: PabloMK7 <hackyglitch2@gmail.com>
2026-02-20 23:39:04 +01:00
RedBlackAka
9628300ff5
citra_meta: Use integrated SSE4.2 detection method (#1753) 2026-02-20 21:34:21 +01:00
RedBlackAka
4010f4bc1f
common/cpu_detect: Remove SSE/SSE2 detection (#1754) 2026-02-20 21:34:03 +01:00
OpenSauce04
f3fb0b729e Kill SDL2 frontend
Good riddance
2026-02-20 16:02:41 +00:00
Alexandre Bouvier
7bcbf8aba4 cmake: fix import name
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-libretro / android (push) Has been cancelled
citra-libretro / linux (push) Has been cancelled
citra-libretro / windows (push) Has been cancelled
citra-libretro / macos (arm64) (push) Has been cancelled
citra-libretro / macos (x86_64) (push) Has been cancelled
citra-libretro / ios (push) Has been cancelled
citra-libretro / tvos (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
azahar-stale / stale-issues (push) Has been cancelled
2026-02-20 14:41:31 +00:00
Eric Warmenhoven
d9b77cc21e
Implement libretro core (#1215)
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-libretro / android (push) Waiting to run
citra-libretro / linux (push) Waiting to run
citra-libretro / windows (push) Waiting to run
citra-libretro / macos (arm64) (push) Waiting to run
citra-libretro / macos (x86_64) (push) Waiting to run
citra-libretro / ios (push) Waiting to run
citra-libretro / tvos (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
* libretro core

* Bringing citra libretro implementation over
* libretro: hook up vulkan renderer
* libretro: github actions
* libretro: gyro
* libretro: core options v2
* libretro: on ios turn off shader jit if unavailable
* moltenvk 1.3.0 introduces 8-bit indexes but allocates 16-bit for metal; this ends up allocating stream buffer * 2 = 132MiB. Instead, just use 16-bit indexes. (This will be necessary for standalone when bumping moltenvk version.)

* libretro core: address review feedback

* libretro: microphone support

* cmake: Add ENABLE_ROOM_STANDALONE to list of incompatible libretro flags

* libretro: proper initial geometry

* libretro: fix software renderer

* libretro: address review feedback

* .github/libretro.yml: Pin macOS runners at macOS 26

* ci: Remove explicit selection of Xcode 16.0

* .github/libretro.yml: remove unnecessary windows builder apt commands

* .github/libretro.yml: bump min macos version to 11.0

* ci: Re-enable CI jobs for all libretro cores

This is under the condition that we don't introduce build cache for these builds

---------

Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
Co-authored-by: PabloMK7 <hackyglitch2@gmail.com>
2026-02-19 22:30:25 +00:00
OpenSauce04
354f5d698f Updated translations via Transifex 2026-02-17 13:36:36 +00:00
PabloMK7
c43f24e489
video_core: Fixes to vulkan disk cache (#1748) 2026-02-17 14:22:48 +01:00
RedBlackAka
5d4aef81fe
common/cpu_detect: Remove FMA4 detection (#1746) 2026-02-17 13:21:21 +01:00
RedBlackAka
6c6dd68780
Windows: Fix game shortcut character corruption (#1745) 2026-02-17 10:32:01 +01:00
PabloMK7
304db9173b
video_core: vulkan: Add disk shader cache (#1725)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-02-16 15:59:22 +01:00
PabloMK7
91abe7f7d0
common: Add NATVIS to BitField class for better VS debugging (#1731)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
azahar-stale / stale-issues (push) Has been cancelled
2026-02-13 14:30:04 +01:00
OpenSauce04
0c478d7614 Add "Enable display refresh rate detection" setting on desktop 2026-02-09 20:08:34 +00:00
OpenSauce04
37e688f82d qt: Fixed some setting tooltips not having automatic line breaks
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-02-06 20:00:38 +00:00
PabloMK7
f010863ece
video_core: vulkan: Only store hashes in shader cache maps (#1710)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-02-02 18:25:03 +01:00
OpenSauce04
dd65ef4749 Updated translations via Transifex
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-01-29 12:17:35 +00:00
PabloMK7
fc137b0229
frontend: Revert removal of .3ds support (#1701)
* frontend: Revert removal of .3ds support

* Added 3ds extension to Info.plist

* Added .3ds extension to org.azahar_emu.Azahar.xml

* game_list.h: Removed leftover definitions

---------

Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
2026-01-29 12:10:02 +00:00
lannoene
a9923b6844
core: small fixes to local play (#1690)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-01-27 10:30:26 +01:00
OpenSauce04
0a705b7449 Updated translations via Transifex
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-01-25 00:58:03 +00:00
David Griswold
a6688abcf5 update language and use UP instead of DOWN on axis mapping 2026-01-24 23:31:01 +00:00
OpenSauce04
6d72a6f447 plgldr: Fixed plugins that should load for all titles failing to load due to a missing check 2026-01-24 22:59:59 +00:00
PabloMK7
f1fa564733
Revert: video_core/renderer_vulkan: Add texture filtering (#1678) 2026-01-24 23:48:54 +01:00
Immersion95
ad9ab71301
qt: Mention in the tooltip that async presentation adds 1 frame of input lag (#1669)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
Async Presentation (Vulkan) adds 1 frame of input lag - Mention in the tooltip
2026-01-23 15:35:59 +01:00
PabloMK7
93f54be3f9 video_core: Fix custom textures when loading a savestate
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
2026-01-22 19:42:21 +01:00
PabloMK7
95a6814752 video_core: Make all state dirty after loading a savestate 2026-01-22 19:42:21 +01:00
PabloMK7
b0fea112e8 core: Fix accurate multiplication loading (home menu and savestate)
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
2026-01-22 15:11:38 +01:00
PabloMK7
94b558d3f1 hacks: Force accurate multiplication for M&L Paper Jam 2026-01-22 15:11:38 +01:00
PabloMK7
6e666a1831
log: Fix compilation with gcc backtrace (#1668) 2026-01-22 14:45:30 +01:00
David Griswold
102f7d24fc
android: prioritize non-built-in displays (#1667) 2026-01-22 12:55:58 +01:00
OpenSauce
a5ac24adc5
qt: Workaround for Qt directoryChanged event spam on macOS (#1665)
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
* qt: Workaround for Qt directoryChanged event spam on macOS

* Use steady_clock instead of system_clock
2026-01-21 21:15:49 +00:00
OpenSauce04
3fdcd6b7dc qt: Implement Update Channel setting 2026-01-21 19:49:10 +00:00
OpenSauce04
d48d51828e android: Fix desynced default value for use_vsync setting
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
2026-01-20 22:51:03 +00:00
Marcin Serwin
79d73bbcb9 citra_meta: search for Qt6::GuiPrivate before using it
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
Otherwise, the configuration on darwin fails for me with the following
error:

```
CMake Error at src/citra_meta/CMakeLists.txt:64 (target_link_libraries):
  Target "citra_meta" links to:

    Qt6::GuiPrivate

  but the target was not found.
```

Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2026-01-20 21:33:41 +00:00
RedBlackAka
e9846de5be
qt: Exclude some features logic if disabled at compile time (#1630)
* Qt: Exclude more logic if disabled

* Fix license

* Fix

* Exclude stress test logic

* Fix RequestStop
2026-01-20 18:31:56 +01:00
Cool Guy
671faf8dca
qt: Do not preload textures when custom textures are off (#1629)
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
2026-01-20 15:07:54 +01:00
Francesco Saltori
c7e0364342
cheats: Fix previous cheats not being cleaned up when a game has no cheats file (#1640) 2026-01-20 14:38:44 +01:00
OpenSauce04
0805711cba Updated translations via Transifex
Some checks failed
citra-transifex / transifex (push) Waiting to run
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-01-19 21:17:42 +00:00
OpenSauce04
54f2221ec6 cmake: Fix build info sometimes not generating correctly 2026-01-19 21:13:18 +00:00
PabloMK7
f71844b87f log: Close file after stop and fallback to stderr 2026-01-19 21:01:55 +00:00
PabloMK7
6634b8c9d9 citra_meta: Move DetachedTasks construction to main.cpp 2026-01-19 21:01:55 +00:00
jbm11208
0571187bd3
video_core/renderer_vulkan: fix shadow rendering (#1634)
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
2026-01-18 23:56:35 +01:00
OpenSauce
4deb7e63b5
DirectoryInitialization.kt: Switch to getFilesDir for internalUserPath (#1646)
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (googleplay) (push) Waiting to run
citra-build / android (vanilla) (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
* DirectoryInitialization.kt: Switch to getFilesDir for internalUserPath

Was previously getExternalFilesDir

filesDir is used here, which is just recommended shorthand for getFilesDir

* DirectoryInitialization.kt: Updated license header
2026-01-18 18:41:54 +00:00
OpenSauce04
f5053868b4 Updated translations via Transifex
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (googleplay) (push) Has been cancelled
citra-build / android (vanilla) (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2026-01-15 11:42:46 +00:00
RedBlackAka
e37cbcf2ff
UI: Skip Vulkan in API quick selection if unavailable (#1618) 2026-01-12 16:38:11 +01:00
OpenSauce04
6be1934af2 Updated translations via Transifex 2026-01-11 21:01:03 +00:00
PabloMK7
2b7de66245
core: Revert some hash operations to CityHash64 (#1609) 2026-01-11 16:26:46 +01:00
PabloMK7
ce02bd6630
Revert "Fallback to silence when no samples have been captured. (#955)" (#1610)
This reverts commit 1ff5042685.
2026-01-11 15:55:38 +01:00
OpenSauce04
7d2735b118 Updated translations via Transifex 2026-01-10 23:36:17 +00:00
OpenSauce04
c2f4e06901 android: Clean up flavor checking implementation 2026-01-10 23:32:05 +00:00
OpenSauce04
0ed010166d android: "Fix" flickering toggle controls layout + misaligned clickboxes
This doesn't really address the root cause of the problem because I have absolutely no idea what it is, but this does get around the issue by just forcing the dialog into a pre-determined size rather than letting it automatically set its own size
2026-01-10 22:39:44 +00:00
OpenSauce04
ceb082e777 android: Clean up long press dialog layout 2026-01-10 21:33:06 +00:00
PabloMK7
624be242c4 core: Add ability to insert cartridges 2026-01-10 20:51:28 +00:00
PabloMK7
5c863db0f2
video_core: Add patches for 3D Classics shaders (#1593) 2026-01-09 18:28:40 +01:00
PabloMK7
7de2d7b846
video_core: Switch to xxHash and improve ShaderSetup behaviour (#1592) 2026-01-09 18:01:49 +01:00
PabloMK7
8acdb35798
core: Move plugin FB address ownership to MemorySystem (#1572) 2026-01-09 10:26:12 +01:00
PabloMK7
47cd41cc58
core: Improve MemorySystem::GetPhysicalPointer (#1587) 2026-01-09 10:23:44 +01:00
OpenSauce04
19641fc29c android: Fixed crash on Google Play when selecting user dir on SD card 2026-01-08 23:48:45 +00:00
PabloMK7
0f9457e0d1
video_core: Fix crash caused by malformed geo shaders (#1585) 2026-01-08 21:00:05 +01:00
OpenSauce04
b2a48187f8 RemovableStorageHelper.kt: Add /storage/ as external storage mount path 2026-01-06 18:37:24 +00:00
OpenSauce04
15735c0cfa android_storage: No longer always use full rename+move process
This was intentionally included for testing, as per the comments.
2026-01-05 13:49:25 +00:00
David Griswold
4bdcf342b6
video_core: Stereo Settings Improvements: Full Width SBS, Swap Eyes, Select which display(s) to render on (#1212) 2026-01-03 21:40:59 +01:00
David Griswold
48cbeb0993
Android: Bug fix for incorrect screen size detection (#1495) 2026-01-03 14:09:45 +01:00
David Griswold
b1717b6fc2
Android: Keep track of the axis direction when mapping axes (also allows inversion for external pads) (#1483) 2026-01-03 12:15:49 +01:00
OpenSauce
8c53dcef31
renderer_vulkan: Fix incorrect MaxTexelBufferElements return type (#1563) 2026-01-03 00:05:52 +01:00
jbm11208
88d1523b3b
video_core/renderer_vulkan: fix linear filtering toggle (#1513) 2026-01-02 16:42:28 +01:00
PabloMK7
a826f5ffa1
video_core/renderer_vulkan: Fix fb image view usage (#1561) 2026-01-02 16:26:03 +01:00
PabloMK7
4ac18f5e18
core: Fix memory mode handling and n3ds exclusive app detection (#1560) 2026-01-02 15:03:23 +01:00
Chance
43e044ad9a Fix simple typo that prevented debug builds (MSVC) 2025-12-31 20:55:37 +00:00
Kleidis
f31bd1bcdd
android: Add support for compressing and decompressing files (#1458) 2025-12-31 15:38:22 +01:00
PabloMK7
40d512cafd
plgldr: Fix plugin memory management (#1554) 2025-12-30 22:21:44 +01:00
PabloMK7
be259fc9b8
qt: Do not refresh game directory while powered on (#1553) 2025-12-30 21:13:24 +01:00
OpenSauce
e035bd3a21
android: Fix rename + move behaviour for Google Play build (#1545)
* android: Fix rename + move behaviour for Google Play build

* android_storage: Handle rename/move with same source and destination
2025-12-29 17:55:51 +00:00
OpenSauce04
6751c20f52 android: Implemented googlePlay build variants 2025-12-29 15:00:34 +00:00
PabloMK7
4085ce6bf8
core: Add SMDH region free patch setting (#1541) 2025-12-29 01:20:26 +01:00
David Griswold
41f1be91eb
poll all displays (#1455) 2025-12-27 22:27:03 +01:00
David Griswold
b7540aa019
store opacity in layout to avoid applying opacity incorrectly (#1496) 2025-12-27 16:15:36 +01:00
PabloMK7
8384eaa0c2
core: Fix memory mode handling during app launch (#1534) 2025-12-27 13:38:06 +01:00
PabloMK7
f60f3eed1f
core: Implement AM:CancelImportProgram (#1535) 2025-12-27 12:11:07 +01:00
OpenSauce04
5f5ba99168 common: Move playtime tracker file to sysdata directory 2025-12-24 12:48:06 +00:00
OpenSauce
c0a04cef39
android: Begin migration to raw fs access, starting with Rename reimplementation (#1511)
* Add setup step to grant `MANAGE_EXTERNAL_STORAGE`

* WIP re-implementation of Android `Rename` using native filesystem manipulation

* Applied clang-format and updated license headers

* Support user directories on removable storage devices

* If `MANAGE_EXTERNAL_STORAGE` is lost, re-request it

* Fix missing permission dialog appearing during initial setup

* Added empty code branches to prep for old Android support

* Fixed permission setup completion not accounting for external storage permission

* Implement code for Android <11

* Fixed emulation error if a renamed file is then opened for R/W

* Detect if the current user directory cannot be located, and prompt re-selection

* If an invalid user directory is selected, reject and re-prompt
2025-12-24 12:18:13 +00:00
OpenSauce04
1d2591ab8c macos: Fixed real camera not activating during emulation
This was due to a plugin which is required for handling camera permissions being missing
2025-12-23 22:24:47 +00:00
PabloMK7
fe92815b04
audio_core: Add DSP sleep and wakeup functionality (#1529) 2025-12-23 22:57:56 +01:00
PabloMK7
275d818cd4
video_core: Change unimplemented gas stub behaviour (#1525)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2025-12-22 15:48:47 +01:00
PabloMK7
7a2f3fdda9 audio_core: Update teakra for new memory ownership
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (appimage-wayland) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (push) Waiting to run
citra-build / docker (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
2025-12-22 11:51:22 +01:00
PabloMK7
2edc8b4b73 audio_core: Move dsp memory ownership to memory system 2025-12-22 11:51:22 +01:00
PabloMK7
109f5fb730
core: Fix home menu garbled suspended application image (#1518)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2025-12-20 21:34:23 +01:00
jbm11208
f7eaf13a4d video_core/renderer_vulkan: Add texture filtering
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (appimage-wayland) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (push) Has been cancelled
citra-build / docker (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2025-12-09 18:52:12 +00:00
PabloMK7
4fdc45a771 qt: Add batch Z3DS compression/decompression 2025-12-09 18:32:07 +00:00
lenore
6b05944116
android: Force app to use max available refresh rate in menus (#1492)
* [android]: Force app to use the displays max set refresh rate

Since Android 15, google automatically forces "games" to be 60 hrz. This ensures the display's max refresh rate is actually used. Tested on a Google Pixel 7 Pro with Android 16

Emulation Activity was excluded for battery usage concerns

* force60Hrz option

* Code cleanup

* Expanded refresh rate explaination comment

* Moved `enforceRefreshRate` calls to earlier in `onCreate`

This probably doesn't actually do anything, it's a bit of a nitpick

* Moved `enforceRefreshRate` SDK version check to within the function

---------

Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
2025-12-09 16:21:09 +00:00
PabloMK7
b0fe4d190d
core: Temporary workaround for MSVC compiler bug (#1505) 2025-12-07 22:27:50 +01:00
Marcin Serwin
254ab96b63
cmake: Don't install zstd_seekable and use header from externals (#1305)
* Use zstd_seekable header from externals

Specifying the full path relies on the system installed header.

Signed-off-by: Marcin Serwin <marcin@serwin.dev>

* Don't install zstd_seekable

Signed-off-by: Marcin Serwin <marcin@serwin.dev>

---------

Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-12-06 18:59:32 +01:00
OpenSauce04
aac54d648c android: Upgrade AGP to 8.13.1 2025-12-05 18:08:16 +00:00
David Griswold
356aa3d3ae make it so clearing to default ACTUALLY clears gamepad settings 2025-12-05 13:08:04 +00:00
OpenSauce04
f1a59b2186 android: Added relWithDebInfoLite build profile 2025-12-05 13:01:28 +00:00
OpenSauce04
4cc9792f66 configure_graphics.cpp: Corrected indentation
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
2025-11-29 14:43:24 +00:00
OpenSauce04
4574b91561 Move VSync setting key from use_vsync_new to use_vsync
Some checks are pending
citra-build / source (push) Waiting to run
citra-build / linux (appimage) (push) Waiting to run
citra-build / linux (fresh) (push) Waiting to run
citra-build / macos (arm64) (push) Waiting to run
citra-build / macos (x86_64) (push) Waiting to run
citra-build / macos-universal (push) Blocked by required conditions
citra-build / windows (msvc) (push) Waiting to run
citra-build / windows (msys2) (push) Waiting to run
citra-build / android (push) Waiting to run
citra-format / clang-format (push) Waiting to run
citra-transifex / transifex (push) Waiting to run
This resets the VSync setting for all existing user configurations. Note in changelog.
2025-11-29 14:38:32 +00:00
David Griswold
04b6c69083 Default VSync to false on Android
Co-authored-by: OpenSauce04 <opensauce04@gmail.com>
2025-11-29 14:37:30 +00:00
OpenSauce04
375c8c1910 video_core: Fixed occasional launch crash on certain platforms due to unsafe SDL_Init
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
2025-11-27 14:27:10 +00:00
OpenSauce
67f6735f02
qt: Add game launch stress test functionality behind new ENABLE_DEVELOPER_OPTIONS CMake option (#1442)
Some checks failed
citra-build / source (push) Has been cancelled
citra-build / linux (appimage) (push) Has been cancelled
citra-build / linux (fresh) (push) Has been cancelled
citra-build / macos (arm64) (push) Has been cancelled
citra-build / macos (x86_64) (push) Has been cancelled
citra-build / windows (msvc) (push) Has been cancelled
citra-build / windows (msys2) (push) Has been cancelled
citra-build / android (push) Has been cancelled
citra-format / clang-format (push) Has been cancelled
citra-transifex / transifex (push) Has been cancelled
citra-build / macos-universal (push) Has been cancelled
* qt: Implemented game launch stress test

* qt: Hide stress test behind ENABLE_DEVELOPER_OPTIONS CMake option
2025-10-21 16:29:15 +01:00
OpenSauce04
1f483e1d33 cmake: Fixed build issues on *nix introduced by Qt 6.10.0 2025-10-21 14:45:40 +00:00
David Griswold
f309d4881a android: Add Display Listener methods for smoother secondary display updates 2025-10-03 17:04:57 +00:00