Commit Graph

22404 Commits

Author SHA1 Message Date
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
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
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
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