Commit Graph

22608 Commits

Author SHA1 Message Date
Fernando Sahmkow 7f78d844ab Query Cache: Setup Base rework 2023-09-23 23:05:29 +02:00
Fernando S e3fdc931b6 Merge pull request #11567 from liamwhite/fixing-my-error
emit_spirv: fix incorrect use of descriptor index in image atomics
2023-09-23 13:00:31 +02:00
Charles Lombardo 4e485766bd android: Use smaller read buffer size for exporting user data
The File.readBytes() extension attempts to load an entire file into a byte array. This would cause crashes when loading huge files into memory.
2023-09-22 16:51:48 -04:00
Charles Lombardo 6315cb8010 android: Adjust valid user data check 2023-09-22 12:05:44 -04:00
liamwhite 0a2428c0a5 Merge pull request #11561 from german77/hle_applet
am: mii_edit: Implement DB operations
2023-09-22 09:56:14 -04:00
liamwhite 8216a30e35 Merge pull request #11557 from GPUCode/brr-format
renderer_vulkan: Correct component order for A4B4G4R4_UNORM
2023-09-22 09:56:04 -04:00
liamwhite df4c75213e Merge pull request #11563 from Kelebek1/dma_regs
Fix DMA engine register offsets
2023-09-22 09:55:54 -04:00
Liam 47ea64c9a5 emit_spirv: fix incorrect use of descriptor index in image atomics 2023-09-22 00:39:09 -04:00
Narr the Reg 8b011a8447 am: mii_edit: Implement DB operations 2023-09-21 18:21:39 -06:00
Charles Lombardo 156c12d97d Merge pull request #11564 from t895/overlay-inset-fix
android: Update androidx window library to 1.2.0-beta03
2023-09-21 19:15:36 -04:00
Charles Lombardo 68068a8113 android: Update androidx window library to 1.2.0-beta03
Fixes an issue with the input overlay on certain devices where the controls would appear offscreen.
2023-09-21 17:36:14 -04:00
Kelebek1 ac61186061 Fix DMA engine register offsets 2023-09-21 20:21:00 +01:00
GPUCode 20994b9e95 vk_texture_cache: Limit srgb block to transcoding only 2023-09-21 21:46:35 +03:00
liamwhite 3808491644 Merge pull request #11555 from yuzu-emu/revert-11551-allow-save-imports-always
Revert "android: Allow save imports always"
2023-09-21 09:21:19 -04:00
GPUCode 400b9449ac renderer_vulkan: Correct component order for A4B4G4R4_UNORM 2023-09-21 15:33:44 +03:00
Charles Lombardo e6c468f8a4 Revert "android: Allow save imports always" 2023-09-21 02:57:28 -04:00
rkfg e65b34058f pfs: Fix reading filenames past the buffer end 2023-09-21 05:12:05 +03:00
Charles Lombardo 93ab5df3ee android: Remove unused strings related to the save manager 2023-09-20 15:01:03 -04:00
Charles Lombardo e68fb0a884 android: Allow importing saves even if no saves are found
Exporting still won't be allowed on an empty save directory.
2023-09-20 15:00:34 -04:00
Kelebek1 f9f340064f Reduce core timing mutex contention 2023-09-19 23:10:03 +01:00
Charles Lombardo a6a0aaa013 android: Add import/export buttons for user data 2023-09-19 15:54:47 -04:00
Squall-Leonhart 55e400acd9 Reuse part of my previous idea to to use num_levels to check within AdjustMipBlockSize
The partial revert was not enough for Tsukihime, this might do the trick
2023-09-20 03:27:13 +10:00
liamwhite 49b783c9a2 Merge pull request #11542 from t895/touch-offset-fix
android: Screen orientation and aspect ratio fixes
2023-09-19 09:25:09 -04:00
liamwhite 253a6aeb54 Merge pull request #11526 from german77/mii_service_v2
service: mii: Update implementation Part2 - Mii database support
2023-09-19 09:24:49 -04:00
liamwhite 8f69b66dba Merge pull request #11536 from abouvier/renderdoc
cmake: prefer system renderdoc header
2023-09-19 09:24:36 -04:00
liamwhite bdb2eb84e0 Merge pull request #11538 from cathyjf/renderdoc-check-correct-win32-symbol
renderdoc: Check for `_WIN32` symbol rather than `WIN32`
2023-09-19 09:24:23 -04:00
Charles Lombardo eac616b224 android: Ignore validation layers library in git 2023-09-19 00:31:43 -04:00
Charles Lombardo 88b8509c53 android: Don't pause emulation when entering PiP 2023-09-19 00:31:43 -04:00
Charles Lombardo ff4322ca01 android: Fix showing input overlay in PiP 2023-09-19 00:31:43 -04:00
Charles Lombardo 329403d279 android: Properly update emulation surface
Previously the emulation surface wasn't being updated during configuration changes and only during specific view events. This would break input and the screen dimensions after each orientation/aspect ratio change. Now a new surface is provided every time and the display dimensions are updated as needed.
2023-09-19 00:31:43 -04:00
Liam b6940c53f4 aoc: stub purchase info calls 2023-09-18 16:20:53 -04:00
Cathy J. Fitzpatrick fe3e925719 renderdoc: Check for `_WIN32` symbol rather than `WIN32` 2023-09-18 12:09:51 -07:00
german77 4e16712bea service: mii: Address review comments 2023-09-18 11:08:04 -06:00
Alexandre Bouvier 6c2231980f cmake: prefer system renderdoc header 2023-09-18 18:35:20 +02:00
liamwhite 8f2351603d Merge pull request #11258 from Squall-Leonhart/Z16_Assert_Fix
Fix a logged assert in the format lookup table for Z16
2023-09-18 09:31:05 -04:00
liamwhite 7052af7e34 Merge pull request #11520 from Kelebek1/estimated_time
Do not consider voice commands in time estimation, fix adpcm estimate
2023-09-18 09:30:56 -04:00
Squall Leonhart 0ec7d7ec28 Partial revert of #10433
The If block in this change was causing some 2D textures to be treated as if their mip 0 was a 3D Slice, this could be ascertained as the same texture viewed from different distances would render fine, but then close up would look like a decoding failure.

It also resulted in some 3D ASTC textures not being scaled appropriate leading to broken graphical effects such as the jagged TOTK recall animation being a circle, as the If block was only accepting the image based on its original info without any adjustments applied.
2023-09-18 23:28:53 +10:00
Kelebek1 ae492d8a74 Do not consider voice commands in time estimation, fix adpcm estimate 2023-09-18 10:38:14 +01:00
german77 fbc8db57d0 service: mii: Implement the rest of the service 2023-09-17 16:06:25 -06:00
german77 854dbcc479 service: mii: Implement database manager 2023-09-17 16:06:25 -06:00
german77 89da19cd99 service: mii: Implement figurine database 2023-09-17 16:06:25 -06:00
german77 f347e2069b service: mii: Add device crc16 2023-09-17 16:06:25 -06:00
german77 da7883dbc5 service: nfc: Fully Implement GetRegisterInfoPrivate 2023-09-17 16:06:25 -06:00
german77 3eb0bc88bc service: mii: Complete structs and fix mistakes 2023-09-17 16:06:23 -06:00
Charles Lombardo 755928ffd1 android: Export PiP receiver on API 33 and later
Could cause crashes on API 33+ devices
2023-09-17 17:33:33 -04:00
lat9nq 521b048287 mii_types: Remove null terminator check
This is an OoB array access, causing a crash on at least the Linux
Flatpak releases.

Co-authored-by: german77 <juangerman-13@hotmail.com>
2023-09-17 15:23:57 -04:00
liamwhite 9c62223511 Merge pull request #11524 from t895/signing-ci
android: Set up signing config for release builds
2023-09-17 10:42:57 -04:00
liamwhite 3b8b123ca1 Merge pull request #11522 from liamwhite/vfs-needs-results
registered_cache: correct file deletion case
2023-09-17 10:42:51 -04:00
liamwhite 01f19cbd4c Merge pull request #11460 from Kelebek1/hw_opus
Reimplement HardwareOpus
2023-09-17 10:42:44 -04:00
Charles Lombardo 2940967210 android: Set up signing config for release builds 2023-09-17 01:22:16 -04:00
Charles Lombardo a8e3f2652d android: Use 1 worker for shader compilation for all devices 2023-09-16 21:38:28 -04:00
Liam d8bd6aa253 registered_cache: correct file deletion case 2023-09-16 18:25:17 -04:00
Charles Lombardo 6af676e2ce android: Collect task state once view is created
Before the viewLifecycleOwner wasn't ready and would cause a crash
2023-09-16 17:15:20 -04:00
Fernando Sahmkow dcf5c4bec0 Vulkan: add temporary workaround for AMDVLK 2023-09-16 11:59:20 -04:00
Fernando Sahmkow 6dcc62ae86 Vulkan: Implement Depth Bias Control 2023-09-16 11:58:55 -04:00
Kelebek1 07b63b15ad Reimplement HardwareOpus 2023-09-16 11:56:25 -04:00
liamwhite d3fb5e07d6 Merge pull request #11519 from german77/system-policy
service: hid: Implement ApplyNpadSystemCommonPolicy
2023-09-16 11:40:42 -04:00
liamwhite 99a6311436 Merge pull request #11518 from german77/bad-npad
service: hid: Implement last active Npad and fix some errors.
2023-09-16 11:40:35 -04:00
liamwhite 393a13bb28 Merge pull request #11517 from german77/amiibo-format
service: nfc: Fix amiibo formatting
2023-09-16 11:40:26 -04:00
liamwhite 424d7d422f Merge pull request #11500 from liamwhite/debug-stuff
core: improve debug workflow
2023-09-16 11:40:17 -04:00
liamwhite 8e8e1d4910 Merge pull request #11499 from Squall-Leonhart/bitlockerfix
add std::error_code for std::filesystem exceptions
2023-09-16 11:40:10 -04:00
liamwhite f56103605e Merge pull request #11492 from lat9nq/c-numeric-conversions
general: Remove uncaught usages of C++ string number conversions
2023-09-16 11:40:03 -04:00
liamwhite a821c64716 Merge pull request #11483 from FearlessTobi/save-size-max
am: Stub GetSaveDataSizeMax
2023-09-16 11:39:56 -04:00
liamwhite 12bf67e68d Merge pull request #11475 from GPUCode/renderdoc-hotkey
debug: Add renderdoc capture hotkey
2023-09-16 11:39:50 -04:00
german77 ef869803f8 service: hid: Implement ApplyNpadSystemCommonPolicy 2023-09-16 08:38:10 -06:00
Merry 6b1bac89fd core_timing: Attempt to reduce heap sifting 2023-09-16 07:42:45 +01:00
Merry 4e5157a6f1 core_timing: Use a fibonacci heap 2023-09-16 07:42:45 +01:00
german77 5318d8059b hid: service: Remove outdated field from npad 2023-09-16 00:31:45 -06:00
german77 d6aef45e6d hid: service: Implement Last active Npad 2023-09-16 00:31:19 -06:00
german77 7f1f2ac887 service: hid: Ensure state is correct 2023-09-16 00:31:09 -06:00
german77 3bca24616a service: nfc: Fix amiibo formatting 2023-09-15 22:02:57 -06:00
Charles Lombardo f6b02d059e android: Remove settings interface specifically for audio mute 2023-09-14 23:46:19 -04:00
Charles Lombardo 1fd72951b8 Merge pull request #11507 from t895/emulation-stop-fix
android: Return the correct status code on emulation stop
2023-09-14 23:22:00 -04:00
Charles Lombardo 3ce204e7ba Merge pull request #11506 from t895/icon-fix
android: Use resource as shortcut intermediary
2023-09-14 23:21:45 -04:00
Charles Lombardo 52d7075ae0 android: Return the correct status code on emulation stop 2023-09-14 23:08:06 -04:00
Charles Lombardo a1b80ed37a Merge pull request #11505 from t895/config-patch
android: Don't reinitialize settings on emulation start
2023-09-14 22:20:45 -04:00
Charles Lombardo ebcde602e7 android: Use resource as shortcut intermediary
Fixes issue where the shortcut icon would appear cropped on certain devices
2023-09-14 22:19:08 -04:00
Charles Lombardo b1e7638eab Merge pull request #11504 from t895/emu-args
android: Fix emulation to settings navigation args
2023-09-14 21:25:58 -04:00
Charles Lombardo 136e1f395d android: Don't reinitialize settings on emulation start
Config is already initialized on application start
2023-09-14 21:25:17 -04:00
Charles Lombardo 003ee32d6d android: Fix emulation to settings navigation args 2023-09-14 20:24:43 -04:00
Charles Lombardo e6595bb31d android: Delay collecting UI state in games fragment 2023-09-14 20:02:48 -04:00
Liam efef3d8487 core: improve debug workflow 2023-09-14 16:44:15 -04:00
Charles Lombardo 89660a50bf android: Refactor menu tags to enum 2023-09-14 15:18:56 -04:00
Charles Lombardo 0c2cbd2469 android: Use StateFlow instead of LiveData 2023-09-14 15:18:56 -04:00
Squall-Leonhart e263eb1a98 add std::error_code for std::filesystem exceptions
Resolves a case on Windows where an unmounted bitlocker protected volume containing an assigned game directory would crash Yuzu at start.

May also resolve cases where a disconnected SMB volume causes similar crashes (needs testing)
2023-09-15 04:47:15 +10:00
lat9nq 9264e1d1ad shared_widget: Use default literals more 2023-09-14 11:31:26 -04:00
lat9nq cd0fb12c62 settings_common: Fix typo 2023-09-14 11:30:14 -04:00
GPUCode cc2c6d8805 debug: Add renderdoc capture hotkey 2023-09-14 16:37:41 +03:00
liamwhite 4c4208c8e9 Merge pull request #11496 from liamwhite/ngc
ngc: implement service
2023-09-14 09:24:46 -04:00
liamwhite 9e364d0b1b Merge pull request #11479 from Kelebek1/check_all_fbs
Look for the most recently modified image for present
2023-09-14 09:24:27 -04:00
liamwhite 8b2bb90e36 Merge pull request #11433 from liamwhite/shutdown-oopsie
polyfill_thread: ensure mutex was locked before signaling stop
2023-09-14 09:24:20 -04:00
liamwhite 9530b96e5f shader_recompiler: skip sampler for buffer textures (#11435) 2023-09-14 15:23:50 +02:00
Liam 08191b07e3 ngc: implement service 2023-09-14 09:14:08 -04:00
lat9nq 4fc1f4ec1a settings_setting: Don't remove the AudioEngine workaround 2023-09-13 15:59:44 -04:00
liamwhite 2a0025937d Merge pull request #11385 from liamwhite/acceptcancel
internal_network: cancel pending socket operations on application process termination
2023-09-13 15:40:58 -04:00
lat9nq 359254f345 cmd/yuzu: Remove uncaught usage of stoi
Also fixes a style inconsistency
2023-09-13 13:52:09 -04:00
lat9nq 05ee2fa033 cmd/config: Remove uncaught usage of stoul 2023-09-13 13:52:09 -04:00
lat9nq c750d6965a shared_widget: Forward-port Citra changes
Seemed like a good time to move these over.
Also remove usage of std::sto{l,ll,ul,f,d}
2023-09-13 13:52:09 -04:00
lat9nq 81debaff3b configure_ui: Remove unnecessary usage of stoul 2023-09-13 13:52:09 -04:00
lat9nq d7d4e66657 cheat_engine: Remove uncaught usage of stoul 2023-09-13 13:51:58 -04:00
lat9nq 41a08286c8 ips_layer: Remove uncaught usage of stoul/ll 2023-09-13 13:36:25 -04:00
lat9nq 2eb9d34e33 key_manager: Remove uncaught usage of stoul 2023-09-13 13:36:25 -04:00
lat9nq 8d8e9552aa settings: Retro-port Citra Settings work
This has yet to be PR'd on Citra, but regressions on yuzu that have
been fixed in Citra needed to appear here.
2023-09-13 13:36:25 -04:00
lat9nq a681050e24 android/config: Remove uncaught usage of stoul 2023-09-13 13:36:25 -04:00
liamwhite eb7f0f2359 Merge pull request #11486 from liamwhite/system-verification
qt: add verification for installed contents
2023-09-13 09:39:27 -04:00
liamwhite ffd5076088 Merge pull request #11480 from german77/mii_service
service: mii: Update implementation Part1
2023-09-13 09:39:16 -04:00
liamwhite 4b68df6ef8 Merge pull request #11473 from liamwhite/fix-launch-param
am: Implement UserChannel parameters
2023-09-13 09:39:06 -04:00
Liam 07a6563a93 qt: add verification for installed contents 2023-09-12 09:20:50 -04:00
liamwhite 4e96b630b4 Merge pull request #11447 from xcfrg/portable-compile-out
common: add a compile time option to allow disabling portable mode
2023-09-12 09:17:50 -04:00
Narr the Reg be2ccb036e service: mii: Remove most magic values 2023-09-11 22:07:55 -06:00
FearlessTobi 67e57a29d5 am: Stub GetSaveDataSizeMax
Needed for Minecraft Legends.
2023-09-12 00:21:03 +02:00
FearlessTobi 8850cadc54 bsd: Demote "Select" log to dehug
This is very spammy in Minecraft Legends.
2023-09-12 00:20:42 +02:00
liamwhite b111203a0f ci: fix msvc when used with LTO (#11459) 2023-09-11 23:25:21 +02:00
german77 fb1b1b2725 mii: service: Address review 2023-09-11 09:54:32 -06:00
german77 6377a46668 mii: Prepare Interface for new implementation 2023-09-11 00:58:46 -06:00
german77 f1d7f23049 service: mii: Fix ver3 inconsistencies 2023-09-11 00:23:46 -06:00
german77 64e9fdd8fc service: mii: move char info operations 2023-09-10 23:18:08 -06:00
german77 b97f872a35 service: mii: Move store data operations 2023-09-10 23:18:03 -06:00
german77 1675343e86 service: mii: Move core data operations 2023-09-10 22:52:33 -06:00
german77 15619d2052 service: mii: Move ver3 operations 2023-09-10 22:42:38 -06:00
german77 e51d54de30 service: mii: separate mii types into their own file 2023-09-10 22:18:25 -06:00
german77 15342ada16 service: mii: Move all raw data to it's file 2023-09-10 22:14:37 -06:00
german77 e05834e9c4 service: mii: Add mii util and result 2023-09-10 20:43:26 -06:00
Kelebek1 517702f3f8 Look for the most recently modified image for present 2023-09-11 03:11:29 +01:00
FearlessTobi ff92a0c8f4 am: Implement UserChannel parameters
Used by the Super Mairo 3D All-Stars collection.
2023-09-10 15:39:25 -04:00
liamwhite d51a537d15 Merge pull request #11450 from lat9nq/no-vk-device-fix
configure_graphics: Fix handling of broken Vulkan
2023-09-10 13:41:10 -04:00
liamwhite d84e8dc67b Merge pull request #11436 from liamwhite/bad-format
shader_recompiler: always declare image format for image buffers
2023-09-10 13:40:47 -04:00
liamwhite c9a6e59029 Merge pull request #11456 from liamwhite/worse-integrity-verification
core: implement basic integrity verification
2023-09-10 13:40:39 -04:00
liamwhite 80c47115e6 Merge pull request #11465 from Kelebek1/skip_remaining_reset
[Audio] Do not reset the remaining command count each time
2023-09-10 13:40:32 -04:00
liamwhite b91988517b Merge pull request #11467 from Kelebek1/fix_decode
[audio] Fix data source version 1 command looping
2023-09-10 13:40:25 -04:00
liamwhite 4d34ba4d9d Merge pull request #11470 from GPUCode/bundle-vvl
android: Add option to bundle validation layer
2023-09-10 13:40:18 -04:00
FearlessTobi abf45c2d0b am: Remove bcat from PopLaunchParameter
This never belonged here and has no use anymore since the Boxcat backend was removed.

.
2023-09-09 20:44:05 -04:00
GPUCode 065305c627 vk_buffer_cache: Respect max vertex bindings in BindVertexBuffers (#11471) 2023-09-10 02:19:45 +02:00
GPUCode 75213f8c49 renderer_vulkan: Remove debug report
* VVL has implemented the more modern alternative, thus we don't need to support it anymore
2023-09-08 23:28:46 +03:00
Liam 5009a2db52 internal_network: log error on interrupt pipe read failure 2023-09-08 14:00:07 -04:00
Kelebek1 0d50c09352 Fix data source version 1 command looping 2023-09-08 15:03:21 +01:00
Kelebek1 4ef3915a8c Do not reset the command buffer command count each time 2023-09-07 20:53:48 +01:00
Narr the Reg 9fc8535c6a service: mii: Fix broken mii on MK8 2023-09-07 11:46:12 -06:00
Feng Chen 666bdc1125 video_core: Fix d24r8/s8d24 convert shader build error in moltenvk 2023-09-07 18:01:36 +08:00
Feng Chen a356e6b8d5 video_core: Add missing scissor update when viewport scale offset disable 2023-09-07 18:01:30 +08:00
xcfrg 6178343f3f add a compile time option to allow disabling portable mode 2023-09-06 18:53:39 -04:00
Liam 76671fdede core: implement basic integrity verification 2023-09-06 16:49:27 -04:00
liamwhite 7ee4a4c2f8 Merge pull request #11428 from Kelebek1/adsp_rework
Rework ADSP into a wrapper for apps
2023-09-06 09:13:06 -04:00
liamwhite a0ca0f7bb0 Merge pull request #11434 from danilaml/fix-warnings
msvc: set warning level to /W4 globally
2023-09-06 09:12:58 -04:00
liamwhite 925f6c4248 Merge pull request #11437 from liamwhite/dump-shenanigans
qt: measure romfs dump completion by bytes read
2023-09-06 09:12:49 -04:00
liamwhite 4e8d049bbe Merge pull request #11451 from german77/mob_mii
service: mii: Fix default mii database
2023-09-06 09:12:33 -04:00
lat9nq bc97eff1f3 yuzu-qt: Use Null when OpenGL is not compiled 2023-09-05 17:59:44 -04:00
lat9nq f8614a483d yuzu-qt: Update API Text for broken Vulkan
Otherwise caused a blue Vulkan badge to appear in the status bar.
2023-09-05 17:59:10 -04:00
lat9nq 217640aad4 configure_graphics: Capture by reference
Small optimization.
2023-09-05 17:50:55 -04:00
Steveice10 d5cac207fb core: Add support for loading NSPs with personalized tickets. (#10048)
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-09-05 21:09:42 +02:00
german77 24bbc30675 service: mii: Fix default mii database 2023-09-05 01:17:06 -06:00
lat9nq 7d94588301 configure_graphics: Fix handling of broken Vulkan
The VSync combobox wouldn't populate if there was no Vulkan device,
which caused issues with trying to set VSync on other backends.

This also adds another layer to GetCurrentGraphicsBackend to check for
broken Vulkan and return OpenGL instead of Vulkan.
2023-09-04 20:21:14 -04:00
Kelebek1 de326e42bb Rework ADSP into a wrapper for apps 2023-09-04 17:12:16 +01:00
Danila Malyutin 7f0de0f204 msvc: set warning level to /W4 globally
And fix a bunch of warnings
2023-09-03 18:42:10 +04:00
Liam 6978a4895c qt: measure romfs dump completion by bytes read 2023-09-02 22:04:37 -04:00
Liam 152beedc51 shader_recompiler: always declare image format for image buffers 2023-09-02 17:25:00 -04:00
liamwhite fa8a654fe8 Merge pull request #11381 from liamwhite/romfs-dump
qt: fix romfs dumping for multiprogram applications
2023-09-02 14:42:48 -04:00
liamwhite 230e40a2d6 Merge pull request #11383 from FernandoS27/are-you-a-wabbit
Fix regressions that damaged compute indirect & use reinterpret for copies with different byteblocksizes
2023-09-02 14:42:42 -04:00
liamwhite 33234fe87d Merge pull request #11384 from liamwhite/am-shutdown
am: shorten shutdown timeout when lock is not held
2023-09-02 14:42:35 -04:00
liamwhite a2971a3540 Merge pull request #11393 from FernandoS27/bayo-got-busted-up
Maxwell3D: Improve Index buffer size estimation.
2023-09-02 14:42:28 -04:00
liamwhite 32052702c0 Merge pull request #11412 from liamwhite/key-area-keys
vfs: ensure key area keys are validated
2023-09-02 14:42:20 -04:00
liamwhite bd1a352c01 general: make -fwrapv generic to all architectures (#11379) 2023-09-02 20:41:21 +02:00
Liam 1da6fd9d74 polyfill_thread: ensure mutex was locked before signaling stop 2023-09-02 11:51:40 -04:00
Liam 024fb4fae9 shader_recompiler: fix emulation of 3D textureGrad 2023-09-01 22:41:01 -04:00
Charles Lombardo 3d1a408a99 android: Fix game content installer
Before this would run on the main thread and freeze the device. Additionally this fixes the result dialog not appearing if a config change happens during the installation by getting the activity's fragment manager when needed.
2023-08-30 19:05:33 -04:00
Charles Lombardo b737fe66aa android: Combine LongMessageDialogFragment with MessageDialogFragment 2023-08-30 18:02:16 -04:00
Charles Lombardo 6cd58e9bd3 android: Support dynamic app shortcuts 2023-08-30 16:26:10 -04:00
Charles Lombardo c9d85211fe Merge pull request #11405 from t895/emulation-loading
android: Emulation loading UI and fixes
2023-08-30 16:24:46 -04:00
Charles Lombardo 351caad5db android: Separate emulation states from emulation mutex
Emulation states are repeatedly checked by input and performance stats. During startup and shutdown, this could lead to a long halt on the UI thread because the call to IsRunning will be waiting on the emulation mutex to be unlocked. Using atomics should replace the existing functionality without causing problems.
2023-08-30 15:19:23 -04:00
Charles Lombardo 5b69f2967e android: Game loading/shutting down indicators 2023-08-30 15:19:23 -04:00
FearlessTobi a6855b92a2 hwopus: Implement GetWorkBufferSizeExEx
Allows Sea of Stars to boot.

Fixes https://github.com/yuzu-emu/yuzu/issues/11415.
2023-08-30 18:29:43 +02:00
Charles Lombardo 2b09d48329 android: Create custom game icon loader 2023-08-30 10:19:05 -04:00
Charles Lombardo 483a39e4fb Merge pull request #11380 from t895/settings-integration
android: Settings rework
2023-08-29 22:20:59 -04:00
Charles Lombardo 1b4e4f9992 android: Don't reload settings when stopping settings activity 2023-08-29 21:44:18 -04:00
Charles Lombardo e335b84dd3 Merge pull request #11413 from t895/intents
android: Support intents to emulation activity
2023-08-29 20:01:52 -04:00
Charles Lombardo 27049027b4 android: Add optional androidDefault property to settings
Certain settings have specific defaults for Android only. This lets us reflect them in the Kotlin side with very little code.
2023-08-29 19:42:42 -04:00
Charles Lombardo ea9f569361 android: Proper state restoration on settings dialogs
All dialog code (except for the Date/Time ones) has been extracted out into a generic settings dialog fragment that handles everything through a viewmodel. State for each dialog will now be retained and dialogs will stay shown through configuration changes.

I won't be changing the current state of the date and time dialog fragments until Google decides to make their classes non-final or if/when we migrate to Jetpack Compose.
2023-08-29 19:42:42 -04:00
Charles Lombardo b5176a035c android: Add search for settings 2023-08-29 19:42:42 -04:00
Charles Lombardo 7673cdc6e5 android: Implement paired settings
Enables and disables editing on settings that rely on other boolean settings.
2023-08-29 19:42:41 -04:00
Charles Lombardo 38c7d26ffa android: Prevent infinite switch toggle loop
If something like a lifecycle event happens when this switch is toggled (Ex. whenever the black backgrounds switch is toggled), this could move the switch from the default position and trigger the checked changed listener and restart the loop. Here I just removed the listener at the start so we recycle the view properly still, set the checked state and then add the new listener.
2023-08-29 19:42:41 -04:00
Charles Lombardo 484189d435 android: Migrate settings to navigation component
Consolidates all of the settings components to the fragment and activity with no interfaces and only the settings fragment presenter. This also includes new material animations and new viewmodel usage to prevent the fragment and activity directly interacting with one another.
2023-08-29 19:42:41 -04:00
Charles Lombardo ccacd84582 android: Trim settings enums and items
Take advantage of the new settings interface to reduce the amount of code we need for each setting item. Additionally make all settings items non-null to improve brevity.
2023-08-29 19:40:18 -04:00
Charles Lombardo 26d3fa2d01 android: Expose interface for getting settings from native code
Completely removes code related to parsing the settings file on the java side. Now all settings are accessed via NativeConfig.kt and config.cpp has been modified to be closer to the core counterpart. Since the core currently uses QSettings, we can't remove reliance from Wini yet. This also includes simplifications to each settings interface to get closer to native code and prepare for per-game settings.
2023-08-29 19:40:17 -04:00
liamwhite 5da0108540 Merge pull request #11408 from Kelebek1/fix_audio_node_id
[Audio] Fix node id index in DropVoices
2023-08-29 09:27:40 -04:00
liamwhite cd75d82e31 Merge pull request #11409 from liamwhite/splatoon-nsd-v2
sfdnsres: ensure lp1 is not resolved
2023-08-29 09:27:32 -04:00
liamwhite 444ab81700 Merge pull request #11112 from danilaml/nvdec-deinterlace
Use initial_frame to check interlaced flag
2023-08-29 09:27:22 -04:00
Charles Lombardo 99ae57c433 android: Support intents to emulation activity 2023-08-29 02:57:20 -04:00
Charles Lombardo 4de246efe7 Merge pull request #11392 from t895/layout-troubles
android: Emulation activity fixes
2023-08-29 02:11:13 -04:00
Liam 3a8fb9bf5f vfs: ensure key area keys are validated 2023-08-28 22:22:00 -04:00
Liam a30be8aea3 qt: ensure packed update nca is applied to the correct base 2023-08-28 21:14:35 -04:00
Liam cfa7d49937 qt: fix romfs dumping for multiprogram applications 2023-08-28 21:03:21 -04:00
liamwhite 1e3766c5e8 Merge pull request #11390 from FearlessTobi/hwopus-multi
hwopus: Implement OpenHardwareOpusDecoderForMultiStreamEx and DecodeInterleavedForMultiStream
2023-08-28 19:14:44 -04:00
Liam 56f7b53540 sfdnsres: ensure lp1 is not resolved 2023-08-28 11:55:53 -04:00
Kelebek1 007b1e9652 Fix node id index in DropVoices 2023-08-28 10:35:30 +01:00
Liam 1dc47986ee Address review comments 2023-08-27 19:45:25 -04:00
Danila Malyutin beec962363 Use initial_frame to check interlaced flag
If final frame was transferred from GPU, it won't carry the props.

Fixes #11089
2023-08-28 00:48:53 +04:00
Fernando Sahmkow a571250875 Maxwell3D: Improve Index buffer size estimation. 2023-08-27 22:14:37 +02:00
Liam b12322b8fe audio: allow more latency in cubeb initialization 2023-08-27 12:46:01 -04:00
FearlessTobi a0a93f966d hwopus: Implement OpenHardwareOpusDecoderForMultiStreamEx and DecodeInterleavedForMultiStream
Allows MLB The Show 22 to boot.

Fixes https://github.com/yuzu-emu/yuzu/issues/7911.
2023-08-27 18:03:10 +02:00
Charles Lombardo daee8fe1d4 android: Don't set a default emulation orientation
Could cause unnecessary configuration change when setting an orientation other than "Landscape"
2023-08-27 00:19:03 -04:00
Charles Lombardo b3fac55a35 android: Properly adjust emulation surface aspect ratio
Previously the emulation surface wouldn't respond properly to orientation changes. This would result in the screen appearing stretched when starting in one orientation and switching to another.

The code for calculating the bounds of the view have been changed to match the expected behavior now. Before the view would just match parent in height and width. Now instead of using setLeftTopRightBottom (which is intended to be used for animations) we pass newly calculated bounds for the view into super. Now the view bounds match the emulation output.

This also means that we don't need the overload for the SettingsActivity to launch it using an ActivityResultLauncher. We can just update the view in onResume.
2023-08-27 00:16:53 -04:00
Fernando S bbbe7c3b11 Merge pull request #11389 from FernandoS27/discard-fix
Buffer Cache: fix discard writes.
2023-08-27 04:26:59 +02:00
Fernando Sahmkow 94dd857cda VideoCore: Implement DispatchIndirect 2023-08-27 04:26:22 +02:00
Mario 54a5b8062e yuzu-qt: Track play time 2023-08-26 22:20:19 -04:00
Fernando Sahmkow 8fcab24644 Shader Recompiler: Auto stub special registers and dump pipelines on exception. 2023-08-27 03:47:04 +02:00
Fernando Sahmkow 47d921e04d Buffer Cache: fix discard writes. 2023-08-27 03:45:43 +02:00
liamwhite e392005f94 Merge pull request #11356 from lat9nq/console-mode-pg
general,config-qt: Present Console Mode as an enum with separate options in game properties
2023-08-26 19:15:00 -04:00
liamwhite ee7e1c9f8b Merge pull request #11359 from Kelebek1/check_suitable_backend
Pre-test for valid audio backends
2023-08-26 19:14:47 -04:00
liamwhite 0560b267b3 Merge pull request #11317 from Kelebek1/macro_dumps
Mark decompiled macros on dump, dump shaders after translation
2023-08-26 19:14:25 -04:00
Liam 109b96ba86 internal_network: cancel pending socket operations on application process termination 2023-08-26 18:19:51 -04:00
Liam 7a26dc51eb am: shorten shutdown timeout when lock is not held 2023-08-26 17:12:05 -04:00
Fernando Sahmkow 8208becc49 DMA Pusher: Fix regression caused by guest memory optimizations 2023-08-26 22:00:43 +02:00
Kelebek1 334a0eaa9c Mark decompiled macros as decompiled on dump, dump shaders after translation 2023-08-25 21:47:47 -04:00
comex 774b7d07ae Avoid `$<CXX_COMPILER_ID:Clang>` because it doesn't include AppleClang. 2023-08-25 19:22:31 -04:00
comex 4285e35375 Warnings cleanup for GCC 13 and Clang 16
Note: For GCC there are still a huge number of `-Warray-bounds` warnings
coming from `externals/dynarmic`.  I could have added a workaround in
`externals/CMakeLists.txt` similar to what this PR does for other
externals, but given Dynarmic's close affiliation with Yuzu, it would be
better to fix it upstream.

Besides that, on my machine, this makes the build warning-free except
for some warnings from glslangValidator and AutoMoc.

Details:

- Disable some warnings in externals.

- Disable `-Wnullability-completeness`, which is a Clang warning triggered
  by the Vulkan SDK where if any pointers in the header are marked
  _Nullable, it wants all pointers to be marked _Nullable or _Nonnull.
  Most of them are, but some aren't.  Who knows why.

- `src/web_service/verify_user_jwt.cpp`: Disable another warning when
  including `jwt.hpp`.

- `src/input_common/input_poller.cpp`: Add missing `override` specifiers.

- src/common/swap.h: Remove redundant `operator&`.  In general, this
  file declares three overloads of each operator.  Using `+` as an
  example, the overloads are:

  - a member function for `swapped_t + integer`
  - a member function for `swapped_t + swapped_t`
  - a free function for `integer + swapped_t`

  But for `operator&`, there was an additional free function for
  `swapped_t + integer`, which was redundant with the member function.
  This caused a GCC warning saying "ISO C++ says that these are
  ambiguous".
2023-08-25 19:22:31 -04:00
liamwhite 8923a03bc0 Merge pull request #11377 from BenjaminHalko/reverse-slider-input
ui: Fixed inverted controls on ReverseSlider widgets
2023-08-25 18:06:03 -04:00
liamwhite 1a4f40ff50 Merge pull request #11378 from t895/game-flag
android: Use appCategory to specify the app is a game
2023-08-25 18:05:58 -04:00
liamwhite 658eaacf21 Merge pull request #11370 from FearlessTobi/fix-filesize
filesystem: Return correct error for RenameFile when dest_path already exists
2023-08-25 18:02:54 -04:00
liamwhite d886f2a718 Merge pull request #11371 from FearlessTobi/fix-cli-updates
yuzu/main: Ensure NCAs are registered in content provider when launching from CLI
2023-08-25 18:02:47 -04:00
liamwhite f03291268a ssl: tolerate handshake without hostname set (#11328) 2023-08-26 00:02:32 +02:00
liamwhite 5552856663 registered_cache: create fake CNMT entries for program updates of multiprogram applications (#11319) 2023-08-26 00:00:15 +02:00
liamwhite aa16fd2422 kernel: offset code entry point for 39-bit address space type (#11326) 2023-08-25 23:59:32 +02:00
Charles Lombardo 64e569ee75 android: Use appCategory to specify the app is a game 2023-08-25 17:17:48 -04:00
bunnei 22e7d8d36d Merge pull request #11357 from liamwhite/lime-vfs
android: jni: ensure NCAs from loaded filepath are registered in manual content provider
2023-08-25 13:04:22 -07:00
BenjaminHalko efff61637b ui: Fixed inverted controls on ReverseSlider widgets
fixes: #11236
2023-08-25 10:06:34 -07:00
Liam a8ceb25eb6 nvhost_as_gpu: ensure mappings are aligned to big page size when deallocated 2023-08-25 09:39:18 -04:00
FearlessTobi 0bb04b1ca1 yuzu/main: Ensure NCAs are registered in content provider when launching from CLI
Fixes updates and DLC not being loaded when launching yuzu from the command line.

Similar to https://github.com/yuzu-emu/yuzu/pull/11357.
Fixes https://github.com/yuzu-emu/yuzu/issues/8352,
2023-08-24 18:48:02 +02:00
FearlessTobi 87575638fe filesystem: Return correct error for RenameFile when dest_path already exists
Allows Grid Autosport to boot.

Fixes https://github.com/yuzu-emu/yuzu/issues/8287.
2023-08-24 17:07:39 +02:00
liamwhite 728ced5458 Merge pull request #11327 from liamwhite/skyline-2
sockets: avoid locking around socket session calls
2023-08-24 10:33:53 -04:00
FearlessTobi f3d0f6ce74 game_list_worker: Display correct size for NAX games
This was a regression from https://github.com/yuzu-emu/yuzu/pull/1837.

Fixes https://github.com/yuzu-emu/yuzu/issues/1938.
2023-08-24 01:16:19 +02:00
lat9nq da2ca69c08 main: Fix docked mode button, clang 14 error 2023-08-23 14:26:34 -04:00
Feng Chen ce0c210173 video_core: set vertex buffer num to 16, because mvk have when using more than 16 2023-08-23 23:22:55 +08:00
liamwhite df1a6d30a0 Merge pull request #11352 from t895/recurse-subfolders
android: Search game directory recursively
2023-08-23 10:20:02 -04:00
Charles Lombardo 7305df2e3f android: Set default build variant to mainlineRelWithDebInfo (#11358) 2023-08-23 16:12:39 +02:00
Kelebek1 5c4e9a276f Pre-test opening a stream for audio backends, fall back to null if not suitable. 2023-08-23 08:33:26 +01:00
Liam 45957b2ab1 android: jni: ensure NCAs from loaded filepath are registered in manual content provider 2023-08-22 22:47:25 -04:00
lat9nq 1bf14338b7 native: Use Docked Mode helper 2023-08-22 22:40:36 -04:00
lat9nq 3b8b50a228 main: Access by reference
Old Clang is fussy about this.
2023-08-22 22:35:55 -04:00
lat9nq 7bc06e2c9d config-android: Translate console mode setting
Translates the previous boolean to the enum.
2023-08-22 22:00:28 -04:00
lat9nq 81d209ee34 general: Use console mode helper across project 2023-08-22 21:58:23 -04:00
lat9nq 8980108234 settings: Add docked mode helper function 2023-08-22 21:58:09 -04:00
lat9nq c272548832 config(qt): Sanitize docked handheld controller 2023-08-22 16:07:53 -04:00
lat9nq 145321abbe shared_translation: Define use_docked_mode texts 2023-08-22 16:07:53 -04:00
lat9nq 447ec24378 general: Convert use_docked_mode to an enumeration
Allows some special interactions with it in the Qt frontend.
2023-08-22 16:07:52 -04:00
lat9nq 02b7e0364b shared_widget: Implement radio groups 2023-08-22 16:07:52 -04:00
Charles Lombardo 72da1cd4d2 android: Search game directory recursively 2023-08-22 15:16:20 -04:00
liamwhite ed224b8712 Merge pull request #11302 from vonchenplus/vulkan_macos
Add macos moltenvk bundle, Add copy moltevk dylib script
2023-08-22 13:10:26 -04:00
liamwhite 4c4ee1b088 Merge pull request #11303 from lat9nq/screenshots-configurable
yuzu-qt: Add configuration for screenshot resolution
2023-08-22 11:30:25 -04:00
liamwhite c67b2ffec0 Merge pull request #11316 from FernandoS27/stop-premature-christmas-decorating
Shader Recompiler: implement textureGrad 3D
2023-08-22 11:30:08 -04:00
liamwhite 453fd52d82 Merge pull request #11346 from t895/ktlint-fix
android: lint: Delete generated ktlint folder between builds
2023-08-22 11:30:01 -04:00
Feng Chen ec643e7e9d Add macos moltenvk bundle, Add copy moltevk dylib script 2023-08-22 10:22:28 +08:00
Charles Lombardo 4165adc80f android: lint: Delete generated ktlint folder between builds
There's a bug in ktlint where it will run into an error if you build the project, delete a source file, and then build again. It will be unable to find the file you deleted and can't recover until these files are deleted. This just deletes those files before every run.
2023-08-21 17:31:13 -04:00
Charles Lombardo b3646c33ae android: Show associated value in home settings (#11272) 2023-08-21 22:25:11 +02:00
liamwhite f4b28d3df7 Merge pull request #11309 from liamwhite/full-xci
file_sys/card_image: support dumps with prepended key area
2023-08-21 16:09:22 -04:00
liamwhite a4ad3e2707 Merge pull request #11342 from liamwhite/skyline-4
patch_manager: apply manual HTML patches when present
2023-08-21 16:09:15 -04:00
liamwhite 62fbba8575 Merge pull request #11149 from ameerj/astc-perf-prod
host_shaders: ASTC compute shader optimizations
2023-08-21 16:08:51 -04:00
Charles Lombardo 4decc08f2b android: Use sensor landscape for landscape mode (#11337) 2023-08-21 21:56:12 +02:00
Liam 82be3bde98 patch_manager: apply manual HTML patches when present 2023-08-21 10:58:23 -04:00
Fernando S 8d0f19d7ae Merge pull request #11284 from liamwhite/nca-release
vfs: expand support for NCA reading
2023-08-21 16:29:04 +02:00
Liam 9b39e25805 sockets: avoid locking around socket session calls 2023-08-19 23:09:35 -04:00
Kelebek1 5d1961ad67 Masked depthstencil clears 2023-08-19 03:29:46 +01:00
Fernando Sahmkow 01858648d1 Shader Recomnpiler: implement textuzreGrad 3D emulation constant propagation 2023-08-18 22:17:02 -04:00
liamwhite 1f584c14e7 Merge pull request #11278 from Kelebek1/dma_sync
Mark accelerated DMA destination buffers and images as GPU-modified
2023-08-18 09:12:27 -04:00
liamwhite fba72cc462 Merge pull request #11288 from liamwhite/svc-tick
kernel: remove relative task registration
2023-08-18 09:12:19 -04:00
Feng Chen c8c4aa6ef7 video_core: Fix vulkan assert error 2023-08-18 14:40:11 +08:00
Liam f9870c754f file_sys/card_image: support dumps with prepended key area 2023-08-17 22:03:47 -04:00
liamwhite 7445cf1feb Merge pull request #10989 from comex/epipe
sockets: Improve behavior when sending to closed connection
2023-08-17 11:59:47 -04:00
liamwhite 5d794eabaf cmake: mark warning disable for gcc 11 (#11301) 2023-08-17 16:03:34 +02:00
lat9nq 251481a19c uisettings: Add TODO for stretched aspect being ignored 2023-08-16 22:57:19 -04:00
Liam a1ea1c3dd3 file_sys: tolerate empty NCA 2023-08-16 16:30:41 -04:00
lat9nq 73111dbc46 configure_ui: Silence MSVC warning 2023-08-16 16:28:44 -04:00
lat9nq e6fb92574b yuzu-qt: Screenshots depend more on the graphics settings 2023-08-16 16:12:42 -04:00
lat9nq 9433d04259 yuzu-qt: Implement unspecified screenshot ratio 2023-08-16 00:18:47 -04:00
lat9nq b4932708b5 bootmanager: Remove old path
Causes issues with different selected aspect ratios in graphics.
2023-08-16 00:18:16 -04:00
lat9nq 19a8bd5593 configure_ui: Update the screenshots data 2023-08-15 23:08:02 -04:00
lat9nq cb5231b2ba config: Read the entire screenshots category 2023-08-15 23:07:49 -04:00
lat9nq 24fa548bbd bootmanager: Consider the default resolution 2023-08-15 22:57:38 -04:00
lat9nq 5c5eea2336 yuzu-qt: Enable specifying screenshot resolution 2023-08-15 22:42:28 -04:00
lat9nq 276bc80544 settings: Add AspectRatio enum, split res scale function 2023-08-15 22:41:50 -04:00
comex f117a873f8 Improve behavior when sending to closed connection
- On Unix, this would previously kill the Yuzu process with SIGPIPE.
  Send MSG_NOSIGNAL to opt out of this.

- Add support for the proper error code in this situation, EPIPE.

- Windows has nonstandard behavior in this situation; translate it to
  the standard behavior.  Kind of pointless, but isn't it nice to be
  correct?
2023-08-15 20:59:57 -04:00
Liam 1cecd1d96a fssystem: rework for yuzu style 2023-08-15 17:47:40 -04:00
Liam c8f0a5a18d fssystem: reduce overalignment of unbuffered storage operations 2023-08-15 17:47:25 -04:00
Liam 5e3139e7c6 vfs: expand support for NCA reading 2023-08-15 17:47:25 -04:00
Fernando S ec3d07e683 Merge pull request #11287 from liamwhite/replaced-bytes
gdbstub: fixup replaced instruction bytes in memory reads
2023-08-15 15:36:14 +02:00
bunnei 2f2dbd9dfb Merge pull request #11256 from FearlessTobi/revert-10075
Partially Revert "Silence nifm spam"
2023-08-14 16:28:13 -07:00
bunnei 5be144671f Merge pull request #11273 from t895/setup-completion
android: Setup additions
2023-08-14 15:41:35 -07:00
Liam 50ce2f0b7b kernel: remove relative task registration 2023-08-14 18:12:06 -04:00
Liam efa3409a30 gdbstub: fixup replaced instruction bytes in memory reads 2023-08-14 16:33:27 -04:00
FearlessTobi 8c40577952 Revert "Silence nifm spam"
This reverts commit 325a8febfc.
2023-08-14 21:23:09 +02:00
bunnei f471bd56ab Merge pull request #11271 from t895/settings-tweaks
android: Settings tweaks
2023-08-14 11:44:38 -07:00
liamwhite 71bb69c1f4 Merge pull request #11282 from ameerj/glasm-xfb
gl_graphics_pipeline: GLASM: Fix transform feedback with multiple buffers
2023-08-14 09:19:20 -04:00
liamwhite ade4a97659 Merge pull request #11283 from ameerj/glasm-pipeline-detection
gl_graphics_pipeline: Fix GLASM storage buffer detection
2023-08-14 09:19:10 -04:00
liamwhite 36b8c187dc Merge pull request #11281 from liamwhite/vi-scale-mode
nvnflinger: add missing scale mode
2023-08-14 09:19:03 -04:00
liamwhite 4f6853b7e6 Merge pull request #11259 from german77/hid
service: hid: Implement functions needed by QLaunch
2023-08-14 09:18:55 -04:00
liamwhite b3c9497bc2 Merge pull request #11263 from liamwhite/my-feature-branch
vulkan_device: disable features associated with unloaded extensions
2023-08-14 09:18:47 -04:00
Ameer J c6aafc55ab gl_graphics_pipeline: Fix GLASM storage buffer detection 2023-08-13 17:06:45 -04:00
Ameer J 4e1813a2c3 gl_graphics_pipeline: GLASM: Fix transform feedback with multiple buffers 2023-08-13 16:50:01 -04:00
Liam dedb9a1132 nvnflinger: add missing scale mode 2023-08-13 13:57:02 -04:00
Kelebek1 5de54129b3 Mark accelerted DMA destination buffers and images as GPU-modified 2023-08-13 02:22:39 +01:00
Charles Lombardo 279d14f8b1 android: Page forward on setup step completion 2023-08-12 20:21:47 -04:00