Commit graph

23917 commits

Author SHA1 Message Date
liamwhite
5afe1367ba
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
d1c878fb41 gl_texture_cache: Enable async downloads 2023-08-13 23:17:59 -05:00
Ameer J
9b112107e2 gl_buffer_cache: Enable async downloads 2023-08-13 23:17:54 -05:00
Ameer J
48b87d64de gl_staging_buffer_pool: Refactor allocation variables into a struct 2023-08-13 23:17:47 -05:00
Ameer J
f9ef721ca6 gl_graphics_pipeline: Fix GLASM storage buffer detection 2023-08-13 17:06:45 -04:00
Ameer J
c34ed4bbd8 gl_graphics_pipeline: GLASM: Fix transform feedback with multiple buffers 2023-08-13 16:50:01 -04:00
Liam
7351884588 nvnflinger: add missing scale mode 2023-08-13 13:57:02 -04:00
Kelebek1
5a37b8f2c1 Mark accelerted DMA destination buffers and images as GPU-modified 2023-08-13 02:22:39 +01:00
Charles Lombardo
242ce2a0b3 android: Page forward on setup step completion 2023-08-12 20:21:47 -04:00
Charles Lombardo
8ab3685a39 android: Adjust setup fragment layout
Fixes padding issues in small and large layouts and allows viewpager to reach into system insets.
2023-08-12 17:02:59 -04:00
Charles Lombardo
8bd0521b58 android: Show complete indicator during setup 2023-08-12 16:53:14 -04:00
Charles Lombardo
64ea5522d3 android: Remove redundant option from slider dialog
You can already reset any setting by long pressing the settings item.
2023-08-12 15:45:27 -04:00
Charles Lombardo
798a439eb1 android: Reduce opacity of non-editable settings 2023-08-12 15:42:55 -04:00
Charles Lombardo
786b609151 android: Use string resource for slider value/units 2023-08-12 15:42:54 -04:00
Charles Lombardo
89a2d308c3 android: Display setting value in setting list items 2023-08-12 14:38:46 -04:00
Charles Lombardo
0d4bf53ad9 android: Set switch listener before assigning new value
Previously the switch could have its old listener triggered when recycled.
2023-08-12 01:00:42 -04:00
Liam
8b98c4e5a0 ssl_backend_securetransport: remove stray .Code() 2023-08-11 23:32:46 -04:00
liamwhite
26ff214719
Merge pull request #11219 from zeltermann/title-id-search
Allow searching by a substring of the title ID
2023-08-11 16:53:27 -04:00
liamwhite
640f7cd945
Merge pull request #11253 from liamwhite/i-hate-this-toolchain
general: fix apple clang build
2023-08-11 16:53:20 -04:00
Liam
7d8f748696 vulkan_device: disable features associated with unloaded extensions 2023-08-11 14:54:12 -04:00
Narr the Reg
bdd96118d1 service: hid: Implement functions needed by QLaunch 2023-08-11 10:13:21 -06:00
Squall-Leonhart
e3dd78e414 Needed to make this an extra case so it didnt also start asserting in BOTW.
Thanks Liam
2023-08-11 08:45:15 +10:00
Squall Leonhart
b9ab44ed0e Fix an assert in the format lookup table fir Z16
Came across this while looking into Asterix and Obelix XXL glitching
2023-08-11 08:18:54 +10:00
zeltermann
1ed9e8812b Allow searching by a substring of the title ID 2023-08-11 00:07:12 +07:00
bunnei
9d3a293a4e
Merge pull request #11093 from liamwhite/result-ergonomics
core: remove ResultVal type
2023-08-09 21:24:31 -07:00
Liam
023b9b38cc general: fix apple clang build 2023-08-09 22:38:37 -04:00
Ameer J
5c25712af9 flatten color_values 2023-08-09 18:45:52 -04:00
Ameer J
0f7220c9c8 flatten encoding_values 2023-08-09 18:38:37 -04:00
Ameer J
71857e889e flatten result vector 2023-08-09 18:34:57 -04:00
Ameer J
70f8ffb787 GetUnquantizedWeightVector 2023-08-09 17:45:39 -04:00
Narr the Reg
6a43aff745 service: pctl: Partially revert 11221 2023-08-08 16:52:21 -06:00
Liam
1e394c6cdf fs: return result on null outputs 2023-08-08 16:12:04 -04:00
Liam
37b278a9a8 general: fix incorrect conversions 2023-08-08 11:09:37 -04:00
Liam
83eee1d226 ssl: remove ResultVal use 2023-08-08 11:09:37 -04:00
Liam
84cb20bc72 core: remove ResultVal type 2023-08-08 11:09:37 -04:00
liamwhite
85e3575496
Merge pull request #11216 from lat9nq/no-mesa-astc
gl_device: Detect Mesa to disable their ASTC
2023-08-07 11:34:22 -04:00
liamwhite
7f55c377b0
Merge pull request #11217 from german77/olsc
service: olsc: Implement IOlscServiceForSystemService ITransferTaskListController interfaces for QLaunch
2023-08-07 11:34:14 -04:00
liamwhite
9893a4d918
Merge pull request #11221 from german77/pctl
service: pctl: Implement functions needed for QLaunch
2023-08-07 11:34:07 -04:00
Ameer J
9058486b9b Revert "HACK: Avoid swizzling and reuploading ASTC image every frame"
This reverts commit b18c1fb1bb.
2023-08-06 14:55:05 -04:00
Ameer J
b18c1fb1bb HACK: Avoid swizzling and reuploading ASTC image every frame 2023-08-06 14:54:58 -04:00
Ameer J
913803bf65 Compute Replicate 2023-08-06 14:54:58 -04:00
Ameer J
31a0cff036 minor 2023-08-06 14:54:58 -04:00
Ameer J
b36e645fee undo uint 2023-08-06 14:54:58 -04:00
Ameer J
8ce158bce6 Revert "vulkan dims specialization"
This reverts commit e6243058f2269bd79ac8479d58e55feec2611e9d.
2023-08-06 14:54:58 -04:00
ameerj
5a78b35b1a vulkan dims specialization 2023-08-06 14:54:58 -04:00
Ameer J
7a0d7e7668 small_block opt 2023-08-06 14:54:58 -04:00
Ameer J
fd2051b401 remove TexelWeightParams 2023-08-06 14:54:57 -04:00
Ameer J
75ac7845ce error/void extent funcs 2023-08-06 14:54:57 -04:00
Ameer J
441b847107 more packing 2023-08-06 14:54:57 -04:00
Ameer J
f2cf81e0b6 Revert "uint result index"
This reverts commit 0e978786b5a8e7382005d8b1e16cfa12f3eeb775.
2023-08-06 14:54:57 -04:00
Ameer J
f41fb3ec0b Revert "bfe instead of mod"
This reverts commit 86006a3b09e8a8c17d2ade61be76736a79e3f58a.
2023-08-06 14:54:57 -04:00
Ameer J
553dd3e120 Revert "global endpoints"
This reverts commit d8f5bfd1df2b7469ef6abcee182aa110602d1751.
2023-08-06 14:54:57 -04:00
Ameer J
c077e467c4 global endpoints 2023-08-06 14:54:57 -04:00
Ameer J
5c16559694 bfe instead of mod 2023-08-06 14:54:57 -04:00
Ameer J
6b0b584eba uint result index 2023-08-06 14:54:57 -04:00
Ameer J
05ee37a1f0 amd opts 2023-08-06 14:54:57 -04:00
Ameer J
3494fce864 gl 2023-08-06 14:54:57 -04:00
Ameer J
5248fa926d const, pack result_vector and replicate tables,
undo amd opts
2023-08-06 14:54:57 -04:00
Ameer J
998246efc2 minor redundancy cleanup 2023-08-06 14:54:57 -04:00
Ameer J
d17a51bc59 extractbits robustness 2023-08-06 14:54:57 -04:00
Ameer J
0078e5a338 reuse vectors memory 2023-08-06 14:54:57 -04:00
Ameer J
b8ca47e094 EncodingData pack 2023-08-06 14:54:57 -04:00
Ameer J
27c8bb9615 flattening 2023-08-06 14:54:57 -04:00
Ameer J
ac09cc3504 weights refactor 2023-08-06 14:54:57 -04:00
Ameer J
6ff65abd62 params.max_weight 2023-08-06 14:54:57 -04:00
Ameer J
e0c59c7b0b skip bits 2023-08-06 14:54:57 -04:00
Ameer J
7ef879b296 restrict 2023-08-06 14:54:57 -04:00
german77
8d2f0dc707 service: audctl: Stub functions needed by Qlaunch 2023-08-05 20:16:26 -06:00
lat9nq
cb0b8442f0 gl_device: Filter more specifically for slow ASTC
Adds a check to find if the renderer is Intel DG (i.e. DG2).

gl_device: Detect Mesa to disable their ASTC

In our testing, our own ASTC decoder has shown itself to perform faster
than the included one from the driver. Disable theirs when Mesa is
detected.

Mesa detection depends on the vendor string. Some drivers never appear
outside of *nix contexts, so only check those in the *nix context.

gl_device: Internalize Intel DG detection
2023-08-05 15:19:16 -04:00
german77
089e385944 service: olsc: Implement IOlscServiceForSystemService ITransferTaskListController interfaces for QLaunch 2023-08-05 11:47:51 -06:00
german77
0d470b57ed service: pctl: Implement functions needed for QLaunch 2023-08-05 11:27:41 -06:00
liamwhite
4533769f7f
Merge pull request #11212 from Kelebek1/shader_stuff
Fix various misc pipeline/shader things
2023-08-05 12:58:39 -04:00
liamwhite
00d9a9c44e
Merge pull request #11210 from german77/settings
service: set: Implement system settings for Qlaunch
2023-08-05 12:58:32 -04:00
liamwhite
35bdd5fff3
Merge pull request #11208 from german77/interface
service: am: Fix wrong interface ILibraryAppletSelfAccessor
2023-08-05 12:58:20 -04:00
Narr the Reg
7707768f80 service: set: Add more system settings and address comments 2023-08-04 17:20:40 -06:00
Kelebek1
dfb7fc8293 Fix shader dumps with nvdisasm
skip fragment shaders when rasterizer is disabled
initialize env_ptrs
2023-08-03 15:30:27 +01:00
Narr the Reg
4bd4a95d84 service: set: Implement system settings for Qlaunch 2023-08-02 22:33:42 -06:00
Ameer J
cd80cbc420 vulkan_device: Fix subgroup_size_control detection on Vulkan 1.3 2023-08-02 20:45:03 -04:00
Ameer J
c7c44dc238 vulkan_device: Fix VK_EXT_subgroup_size_control detection 2023-08-02 19:25:14 -04:00
Narr the Reg
dd1cbd9c56 service: am: Fix wrong interface 2023-08-02 13:00:30 -06:00
liamwhite
096644c01c
Merge pull request #11202 from abouvier/vulkan-config
vulkan: centralize config
2023-08-02 14:26:03 -04:00
liamwhite
fca7d975fd
Merge pull request #10839 from lat9nq/pgc-plus
general: Reimplement per-game configurations
2023-08-02 14:25:52 -04:00
lat9nq
32b4d63a5b config(qt): Fix name of network category
Turns out the network interface is in the Services category. Can't wait
get rid of this whole config.

Addresses yuzu-emu/yuzu/issues/11205
2023-08-02 12:21:43 -04:00
lat9nq
09e265c116 config(qt): Use qt_config directly to read config
ReadSetting with the default is a convenience function reading
settings,  not for use in an internal environment. It tries to manage
the default value of a setting.
2023-08-02 12:20:19 -04:00
Liam
d6d43e11a3 vulkan_device: disable EDS3 blending on all AMD drivers 2023-08-01 20:46:05 -04:00
Alexandre Bouvier
9d6f8e88b2 vulkan: centralize config 2023-08-02 00:05:14 +02:00
Morph
d31676935e vulkan_device: Test depth stencil blit support by format 2023-07-31 19:14:20 -04:00
Morph
9bca45aa15 audren_u: Fix parameter alignment
The reduction in size from 0x38 to 0x34 caused the parameter to be misaligned. Skipping 1 word fixes this.
2023-07-31 18:40:16 -04:00
liamwhite
2a9eab5e1b
Merge pull request #11188 from abouvier/vma-fix
vma: enable options everywhere
2023-07-31 15:28:35 -04:00
liamwhite
083fb8a15f
Merge pull request #11181 from Kelebek1/audrenparaminternal
Fix AudioRendererParameterInternal's size
2023-07-31 15:28:24 -04:00
liamwhite
06fa13a014
Merge pull request #11169 from GPUCode/desc-stuff
vk_descriptor_pool: Disallow descriptor set free
2023-07-31 09:11:19 -04:00
liamwhite
1ed6e3e51d
Merge pull request #11173 from Morph1984/atleast_nanosecond_precision
wall_clock: Increase precision requirements
2023-07-31 09:11:11 -04:00
liamwhite
e2623d64de
Merge pull request #11186 from lat9nq/tz-gen-once
tz_content_man: Generate the time zone binary once
2023-07-31 09:11:01 -04:00
Alexandre Bouvier
ed3f9bab11 vma: enable options everywhere 2023-07-31 13:01:21 +02:00
Moonlacer
deafa92122 Formatting fix 2023-07-30 23:02:07 -05:00
Moonlacer
c6458970ad Match log warning 2023-07-30 22:50:22 -05:00
lat9nq
eaf2ab5289 tz_content_man: Generate the time zone binary once
Fixes a memory leak with time zone binaries accumulating on theirselves.
2023-07-30 12:55:19 -04:00
lat9nq
7aa848080d shared_widget: Only save global settings as needed
Fixes a potential but not reproduced issue where the custom config
is being applied to the global config.
2023-07-30 12:26:55 -04:00
lat9nq
55c0b55d1d config(qt): Write the UiGeneral category 2023-07-30 12:09:32 -04:00
Moonlacer
a4a106bb25 Formatting fix 2023-07-30 04:29:51 -05:00
Moonlacer
f4e5d07619 Address feedback and change log warning 2023-07-30 04:01:29 -05:00
Kelebek1
70f37be9b9 Fix AudioRendererParameterInternal's size 2023-07-30 06:50:59 +01:00
Moonlacer
36d48cef50
Revert "Revert "Blacklist EDS3 blending from new AMD drivers"" 2023-07-30 00:21:51 -05:00
lat9nq
d90c622549 Merge branch 'pgc-plus' of github.com:lat9nq/yuzu into pgc-plus 2023-07-29 13:23:14 -04:00
lat9nq
05c8063ac1 config(qt): Fix generic read setting
Previously was not respecting whether the setting was default.
2023-07-29 13:23:06 -04:00
liamwhite
689dc4a17b
Merge pull request #11155 from liamwhite/memory3
memory: check page against address space size
2023-07-28 09:29:21 -04:00
liamwhite
9352a0f2e6
Merge pull request #11156 from 8bitDream/localize
android: Only label language with language
2023-07-28 09:29:11 -04:00
Morph
bb4e676155 wall_clock: Increase precision requirements
We are providing a conversion to nanoseconds in NativeClock, which is more precise than the GPU tick.
2023-07-27 18:40:56 -04:00
GPUCode
8c2411da29 vk_descriptor_pool: Disallow descriptor set free 2023-07-27 18:08:56 +03:00
Morph
26658c2e93 vulkan_device: Return true if either depth/stencil format supports blit
On devices that don't support D24S8 but supports D32S8, this should still return true if D32S8 supports src and dst blit
2023-07-26 20:21:37 -04:00
Moonlacer
4007142b91
Revert "Blacklist EDS3 blending from new AMD drivers" 2023-07-26 15:02:48 -05:00
liamwhite
a1c355051e
Merge pull request #11128 from german77/discord
yuzu: Replace httplib with QtNetworkRequest
2023-07-26 11:04:57 -04:00
liamwhite
d3da1e6517
Merge pull request #10990 from comex/ubsan
Fixes and workarounds to make UBSan happier on macOS
2023-07-26 10:33:28 -04:00
liamwhite
6ffcc3d5d2
Merge pull request #11142 from german77/avoid_crash
yuzu: Avoid reading broken games
2023-07-26 10:33:14 -04:00
Morph
01b379fe20 Address feedback 2023-07-26 00:41:24 -04:00
lat9nq
195403c87c (ui)settings: Add more runtime_modifiable settings 2023-07-25 23:14:13 -04:00
lat9nq
1bc0b673aa backend: Remove usage of explicit operator overload
Causes a crash on MSVC from a race condition on application quit.

Intended to address yuzu-emu/yuzu/issues/11137
2023-07-25 22:53:58 -04:00
lat9nq
397333b2d5 settings: Correct Linkage member impl location 2023-07-25 15:57:55 -04:00
flodavid
b881949b6d yuzu: Enable controller interaction in Controller Applet 2023-07-25 19:03:12 +02:00
Abandoned Cart
e2ea46f6ef android: Only label language with language 2023-07-25 10:38:30 -04:00
Liam
07f71e2620 memory: check page against address space size 2023-07-25 09:51:06 -04:00
lat9nq
b1716a9e14 settings: Set GPU as default ASTC decoder 2023-07-24 16:28:13 -04:00
liamwhite
18000df5e9
Merge pull request #11095 from liamwhite/memory2
memory: cleanup
2023-07-24 13:47:11 -04:00
liamwhite
bb0edb53ae
Merge pull request #11135 from liamwhite/getaddrinfo
core: implement GetGaiStringErrorRequest, IContextRegistrar
2023-07-24 13:47:02 -04:00
german77
a0ed0e4e10 yuzu: Avoid reading broken games 2023-07-24 08:59:14 -06:00
lat9nq
ab2921121e shared_widget: Determine default request earlier
Fixes a bug where a restore button could be created for an unmanaged
widget.
2023-07-23 17:08:25 -04:00
lat9nq
f84e7b4656 settings_common: Document specializations 2023-07-23 16:21:08 -04:00
Liam
dad0d076ee ssa_rewrite_pass: use proper maps 2023-07-23 11:38:01 -04:00
Liam
3e3294e1c2 core: implement GetGaiStringErrorRequest, IContextRegistrar 2023-07-22 23:29:45 -04:00
lat9nq
fc1bb93b01 shared_widget: Use QRegularExpression 2023-07-22 15:07:34 -04:00
lat9nq
fb7da1fa11 config: Read the Network category 2023-07-22 14:50:32 -04:00
Liam
9f3f615e05 core: reduce TOCTTOU memory access 2023-07-22 11:19:29 -04:00
Liam
d144168442 memory: minimize dependency on process 2023-07-22 11:19:29 -04:00
liamwhite
b1aed2c5b7
Merge pull request #11094 from liamwhite/get
kernel: misc cleanup of page table accessors
2023-07-22 11:17:36 -04:00
liamwhite
0ea138fb5b
Merge pull request #11098 from GPUCode/texel-buffers
buffer_cache: Increase number of texture buffers
2023-07-22 11:17:27 -04:00
lat9nq
85ed10f31f configure_audio/cpu: Sort settings
Was producing out of order settings as a result of the switch to vectors
2023-07-22 00:42:15 -04:00
bunnei
482c957f5d
Merge pull request #11113 from liamwhite/nsd1
nsd: add GetApplicationServerEnvironmentType
2023-07-21 21:24:36 -07:00
lat9nq
33d118509a configure_dialog: Focus the button box on start
Without this, the Reset All Settings button would be selected by default
2023-07-21 23:56:01 -04:00
lat9nq
1d4f813c6a qt/configuration: Use deleteLater 2023-07-21 23:25:22 -04:00
lat9nq
17b9c1e171 common,qt-config: Remove usage of forward_list 2023-07-21 23:09:09 -04:00
Liam
05bc024260 core: remove remaining uses of dynamic_cast 2023-07-21 19:37:29 -04:00
Liam
4bee333d84 general: reduce use of dynamic_cast 2023-07-21 19:22:14 -04:00
Narr the Reg
c067046387 yuzu: Replace httplib with QtNetworkRequest 2023-07-21 16:53:06 -06:00
liamwhite
8927f016e1
Merge pull request #11069 from lat9nq/mingw-no-tzdb
common: Use arithmetic instead of string ops to get time zone
2023-07-21 15:05:59 -04:00
lat9nq
2911988b85 settings_common: Use a vector in category linkage
Improve storage requirements.
2023-07-21 10:56:55 -04:00
lat9nq
ffb384463f settings: Remove sorting from log
Unecessary, and would run every time the settings are logged.
2023-07-21 10:56:55 -04:00
lat9nq
b54c3fba68 configure_system: Use lambda template to group settings 2023-07-21 10:56:55 -04:00
lat9nq
b55a763618 config-android: Update memory layout member name 2023-07-21 10:56:55 -04:00
lat9nq
8e91554e11 k_system_control: Always return some memory size 2023-07-21 10:56:55 -04:00
lat9nq
3211623192 common: Move global configuration state modifiers back to settings 2023-07-21 10:56:55 -04:00
lat9nq
b02e7eea78 settings_setting: Fix typo 2023-07-21 10:56:55 -04:00
lat9nq
1e093767a8 common,configure_system: Rename method to GetCategory
Fixes essentially a shadowing issue.
2023-07-21 10:56:55 -04:00
lat9nq
267f3c7905 settings: Cleanup
Addresses review feedback

Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-07-21 10:56:55 -04:00
lat9nq
35872ad95b shared_translation: Update memory layout mode strings 2023-07-21 10:56:55 -04:00
lat9nq
127b3da0f1 core,common: Give memory layout setting an enum
Allows for 6GB and 8GB layouts to be selected.
2023-07-21 10:56:55 -04:00
lat9nq
ff6a5031d5 settings: Require time zone setting value for stirng 2023-07-21 10:56:55 -04:00
lat9nq
07e8477f5a shared_translation: Add missing time zones 2023-07-21 10:56:55 -04:00
lat9nq
ef6406a666 shared_translation: Add controller_applet_disabled 2023-07-21 10:56:55 -04:00
lat9nq
a14d2a6f83 shared_translation: Add barrier_feedback_loops 2023-07-21 10:56:55 -04:00
toast2903
c1717b3f47 cmake: Reposition preprocessor switch comment
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-07-21 10:56:55 -04:00
lat9nq
ca8509d205 configuration: Use enum index 2023-07-21 10:56:55 -04:00
lat9nq
e7f01128f1 settings: Give indices to enums 2023-07-21 10:56:55 -04:00
lat9nq
ecc1feff64 cmake: Use standard preprocessor on MSVC 2023-07-21 10:56:55 -04:00
lat9nq
52cc7b438b settings_common: Remove unncessary enum spec 2023-07-21 10:56:55 -04:00
lat9nq
9186f08c3c shared_translation: Deobfuscate auto time zone 2023-07-21 10:56:55 -04:00
lat9nq
8497fb0a04 settings_enums: Remove casting
Not sure how I missed this earlier, but these vectors can be constructed
using the type of the enum.
2023-07-21 10:56:55 -04:00
lat9nq
54d58130a0 settings_setting: Silence shadowing warnings 2023-07-21 10:56:55 -04:00
lat9nq
926f3e3d3e settings,configuration: Add a default suffix 2023-07-21 10:56:55 -04:00
lat9nq
9de50d6194 configuration: Use paired settings 2023-07-21 10:56:55 -04:00
lat9nq
7f708e8d77 settings: Define paired settings
settings_common: Remove unused optional
2023-07-21 10:56:55 -04:00
lat9nq
d1de1c3bed shared_widget: Internalize component restoring 2023-07-21 10:56:55 -04:00
lat9nq
21723879e7 configuration: Use specialization of settings
Reduces some ugliness in frontend code.
2023-07-21 10:56:55 -04:00
lat9nq
b2438f1fb7 settings: Define specializations for settings
Suggests to a frontend how to represent each setting.
2023-07-21 10:56:55 -04:00
lat9nq
ad645c29a4 configuration: Use a builder to create widgets
This gets rid of some repeated code and sets us up to send more
information to the new widget.
2023-07-21 10:56:55 -04:00
lat9nq
62ffaa730f shared_translation: Fix context usage
Currently unused, but I don't want to start headaches when someone
decides to use it the first time.
2023-07-21 10:56:55 -04:00
lat9nq
8b28aa45b9 settings,translation: Fix time zone enum
Renames enum values to conform to naming convention.
2023-07-21 10:56:55 -04:00
lat9nq
8366736b67 settings,opengl,yuzu-qt: Fix AA, Filter maximums
The new enum macros don't support setting values directly.
For LastAA and LastFilter, this means we need a simpler approach to loop
around the toggle in the frontend...
2023-07-21 10:56:55 -04:00
lat9nq
7ffbffe170 settings_enums: More aggressively use macros
This lets us define an enum and all the textual representations
of its values in one swing. All for the price of some ugly macros.
2023-07-21 10:56:55 -04:00
lat9nq
02c48a80f6 config_shared: Remove storing the group from tab 2023-07-21 10:56:55 -04:00
lat9nq
fdbeb84168 settings,uisettings: Remove leading underscore 2023-07-21 10:56:55 -04:00
lat9nq
81a96bafe2 configuration: Move speed_limit to core 2023-07-21 10:56:55 -04:00
lat9nq
3a7705e774 settings: Move speed_limit to core 2023-07-21 10:56:55 -04:00
lat9nq
69bc8ea148 android-config: Update enum labels 2023-07-21 10:56:55 -04:00
lat9nq
3f0cc544cf common,yuzu-qt: Avoid explicit instantiation on old clang
Clang versions < 15 have compile issues with explicit instantiation.
Disable it for these versions.
2023-07-21 10:56:55 -04:00
lat9nq
c97cbd089b settings_setting: Fix MSVC error 2023-07-21 10:56:55 -04:00
lat9nq
89f89cf1df shared_widget: Correct spelling 2023-07-21 10:56:55 -04:00
lat9nq
ab795fe0e2 (android)config: Clang format 2023-07-21 10:56:55 -04:00
lat9nq
ee32b17782 common,yuzu-qt: GCC warning silences
Fixes -Wshadow, -Wdeprecated, and catch by copy rather than by ref.
2023-07-21 10:56:55 -04:00
lat9nq
916c6cd1a0 configure_graphics: Simplify UpdateAPILayout
Reduces branching/swictch cases for simplicity/code size
2023-07-21 10:56:54 -04:00
lat9nq
57a00e01d6 configure_graphcs: Fix setting shader/device in custom config 2023-07-21 10:56:54 -04:00
lat9nq
a7ee9d999f configuration: Use shorter constructor as needed
Reduces some confusion hopefully, since some parameters specified were not
specific to the setting in question.
2023-07-21 10:56:54 -04:00
lat9nq
6935332cba shared_widget: Some documentation, add shorter constructor
The shorter constructor enables us to specify some options without needing to
specify the default values of multiplier which wasn't always appropriate and
could be confusing.
2023-07-21 10:56:54 -04:00
lat9nq
3240d199a2 config: Remove unused functions 2023-07-21 10:56:54 -04:00
lat9nq
a0883526d6 settings: Delete cpu_accuracy_first_time
Almost a 2 year old migration setting now
2023-07-21 10:56:54 -04:00
lat9nq
7c52bb2772 shared_widget: Improve logging, use Setting::Ranged 2023-07-21 10:56:54 -04:00
lat9nq
27e53990ed settings: Document BasicSetting, add Ranged 2023-07-21 10:56:54 -04:00
lat9nq
b4f2ad3ff5 settings: Move IsConfiguringGlobal to settings_common 2023-07-21 10:56:54 -04:00
lat9nq
3b0650b70d configuration/shared: Clean up includes [IWYU] 2023-07-21 10:56:54 -04:00
lat9nq
512fb3abff configure_graphics: Fix vulkan_device bug 2023-07-21 10:56:54 -04:00
lat9nq
11e7e1b8ce settings: Move some simple data to BasicSetting
Reduces the need for the compiler to duplicate this code, by about
100KB executable size.
2023-07-21 10:56:54 -04:00
lat9nq
4903f40efe settings_setting: Fix errors
ToString didn't have a constexpr if statement where needed.
Canonicalize missed an else, causing unreachable code error on MSVC.
2023-07-21 10:56:54 -04:00
lat9nq
04d4b6ab80 (ui,)settings: Use explicit instantiation
Reduces compile times a tad on clang.
2023-07-21 10:56:54 -04:00
lat9nq
02265f19d9 settings: Remove redundant false literals 2023-07-21 10:56:54 -04:00
lat9nq
7515c502c5 shared_widget: Avoid calling QWidgetPrivate::setVisible
This particular setVisible function is unnecessary.
It also has horrible runtime performance, so much that it consumed maybe
80% of the time used to create a widget.
2023-07-21 10:56:54 -04:00
lat9nq
79024bb955 FIXME configuration: Avoid unnecessary allocations
ConfigurationShared::Widget needs to be created with a builder. This
would avoid some duplicated code.
2023-07-21 10:56:54 -04:00
lat9nq
c5f8b909ec shared_widget: Add SPDX header 2023-07-21 10:56:54 -04:00
lat9nq
0193add060 general: Add typeinfo where needed
Using typeid without including typeinfo first produces an ill-formed program.
2023-07-21 10:56:54 -04:00
lat9nq
2fba913d0b settings_enums: Add const type where needed 2023-07-21 10:56:54 -04:00
lat9nq
fe6e765b2d shared_widget: Use actionTriggered for user input signals
Clicking the slider without directly interacting with the slider handle would
change the value, but not trigger the restore button.
2023-07-21 10:56:54 -04:00
lat9nq
47d870b11f shared_translation: Populate combobox enums with macro 2023-07-21 10:56:54 -04:00
lat9nq
b86171d2b5 settings: yuzu is not capitalized why is it capitalized stop no bad 2023-07-21 10:56:54 -04:00
lat9nq
81e9cf0934 configuration: Document odd widget cases
Explain why we need to do things differently at times, to serve as a
reference.
2023-07-21 10:56:54 -04:00
lat9nq
163f229d26 settings: Reorder
Groups graphics audio and system settings together in a way that
reflects the frontend. This also just conceptually groups them more
nicely than they were.
2023-07-21 10:56:54 -04:00
lat9nq
681ebcf4a5 shared_translation: Add translation for use video framrate 2023-07-21 10:56:54 -04:00
lat9nq
78b2709373 settings: Report all contained settings values
Also adds a couple characters that denotes the state of the setting.
M for modified, or not default.
C for custom, in context of per-game settings.
2023-07-21 10:56:54 -04:00
lat9nq
8c17a945f7 settings_enums: Cannonicalize settings names
Gives every option of the enums a string literal via a macro.
2023-07-21 10:56:54 -04:00
lat9nq
d146dd9d12 settings,general: Rename non-confirming enums 2023-07-21 10:56:54 -04:00
lat9nq
9e3c94bb3d configuration: Use IDs to sort holds 2023-07-21 10:56:07 -04:00
lat9nq
f7948b7b64 settings,general: Rename/reorder setting ids 2023-07-21 10:56:07 -04:00
lat9nq
25cea2ef27 shared_widget: Fix includes 2023-07-21 10:56:07 -04:00
lat9nq
9a2a92673c shared_widget: Complete refactoring
Reduces code bloat a good bit by moving code specific to each sub widget
to their own functions.
2023-07-21 10:56:07 -04:00
lat9nq
d7dd023409 shared_widget: Refactor again
Starting with combobox

Putting code specific to the sub-widget in their own function.
2023-07-21 10:56:07 -04:00
lat9nq
d373cc3d3f android-config: Adapt settings rework 2023-07-21 10:56:07 -04:00
lat9nq
e6d65bf61c c_per_game: Inform when settings might not be configurable 2023-07-21 10:56:07 -04:00
lat9nq
cd1d8adc49 shared_translation: Fix pragma once 2023-07-21 10:56:07 -04:00
lat9nq
09f61656e3 shared_translation: Add translation for AstcRecompression 2023-07-21 10:56:07 -04:00
lat9nq
81860b4317 configure_system: Hide locale warn at start 2023-07-21 10:56:07 -04:00
lat9nq
b570b719de shared_widget: Force min width of 100 for restore button
Dark theme mandates a 100px minimum width for QAbstractButton, even
though this is not desired here.
2023-07-21 10:56:07 -04:00
lat9nq
3d932416e3 configuration: Workaround for Windows Qt bug
Odd issue happens that dragging the cpu or system tabs in custom configs
would cause the window to take up the entire verticle space of the
screen.
2023-07-21 10:56:07 -04:00
lat9nq
7734127f9e shared_translation: Add missing tooltips 2023-07-21 10:56:07 -04:00
lat9nq
3281ea935f settings: Make volume runtime-configurable 2023-07-21 10:56:07 -04:00
lat9nq
217fa04080 configuration: Clean up includes a bit 2023-07-21 10:56:07 -04:00
lat9nq
3337250746 configuration_shared: Remove old custom config setup functions 2023-07-21 10:56:07 -04:00
lat9nq
daa31121ee configure_cpu: Generate UI 2023-07-21 10:56:07 -04:00
lat9nq
c5a3642cb6 configuration: Use a mapping of setting value to name
Makes comboboxes always correspond to the value of the setting they're
modifying.
2023-07-21 10:56:07 -04:00
lat9nq
86ed82cdde settings, shared_widget: typo fixes 2023-07-21 10:56:07 -04:00
lat9nq
432f68ad29 configure_audio: Implement ui generation
Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.

general: Partial audio config implmentation

configure_audio: Implement ui generation

Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.

general: Partial audio config implmentation

settings: Make audio settings as enums
2023-07-21 10:56:07 -04:00
lat9nq
88d3de4e85 settings: Split enums to new file 2023-07-21 10:56:07 -04:00
lat9nq
f055f2dcf4 shared_widget: Use a better icon
This one looks more relevant on Windows.
2023-07-21 10:56:07 -04:00
lat9nq
4ff8255e4a shared_widget: Refactor helpers
Makes checkbox creation an option as opposed to a label.
2023-07-21 10:56:07 -04:00
lat9nq
4c4bc134a9 settings, uisettings: Initialize linkage counter 2023-07-21 10:56:07 -04:00
lat9nq
8e15146026 configure_system: Implement with for loop 2023-07-21 10:56:07 -04:00
lat9nq
56960bf9f8 per_game: Remove general tab
It's empty.
2023-07-21 10:56:07 -04:00
lat9nq
b11a2a206f shared_widget: Internalize extra setting configuration 2023-07-21 10:56:07 -04:00
lat9nq
cdb5dea269 settings: Move runtime and save to parameters
These don't need to be whole new types.
2023-07-21 10:56:07 -04:00
lat9nq
df2bd251fa graphics: Set speed limit to spinbox 2023-07-21 10:56:07 -04:00
lat9nq
97674bc888 shared_widget: Support checkbox + spinbox 2023-07-21 10:56:07 -04:00
lat9nq
def00e8c55 configure_debug: Reorganize 2023-07-21 10:56:07 -04:00
lat9nq
23f874ae60 configure_graphics: Reimplement bg_color
To specialized a setting to be worth adding to the shared_widget imo,
so add it roughly like before.
2023-07-21 10:56:07 -04:00
lat9nq
c1748b229a shared_widget: Make button creation static 2023-07-21 10:56:07 -04:00
lat9nq
8c03ae793e configure_general: Hide reset button in custom configs 2023-07-21 10:56:07 -04:00
lat9nq
e2de48f14b configure_general: Sort data 2023-07-21 10:56:07 -04:00
lat9nq
827082c5ac configure_general: Generate UI using containers
This leaves per-game config's General tab empty?
2023-07-21 10:56:07 -04:00
lat9nq
c530532de7 shared_translation: Add UI widget translations 2023-07-21 10:56:07 -04:00
lat9nq
d3d9c3568e shared_widget: Fix header 2023-07-21 10:56:07 -04:00
lat9nq
464aad52cd settings: Add UiGeneral class 2023-07-21 10:56:07 -04:00
lat9nq
ea4afbfc54 config: Don't merge the maps
Me shooting myself in the foot 3 days in advance.
2023-07-21 10:56:07 -04:00
lat9nq
640e7db60e configure_graphics: Remove redundant log 2023-07-21 10:56:07 -04:00
lat9nq
f66d617107 configuration: Move CreateWidget to a class
We were passing so many objects between the function and the caller that
it needed to be redesigned.
2023-07-21 10:56:07 -04:00
lat9nq
d35577d3ed configuration: Implement slider 2023-07-21 10:56:07 -04:00
lat9nq
39a1ffbb91 configuration: Use buttons instead of highlights
Only for updated configs at the moment
2023-07-21 10:56:07 -04:00
lat9nq
d72ff01726 shared_translations: Re flow strings 2023-07-21 10:56:07 -04:00
lat9nq
9a844bbf0c configure_graphics: More complete reimplementation 2023-07-21 10:56:07 -04:00
lat9nq
3a7a5edcea settings: Define base renderer runtime modifiable settings 2023-07-21 10:56:07 -04:00
lat9nq
05c26411a3 configuration_shared: Fix blank state hiding check box 2023-07-21 10:56:07 -04:00
lat9nq
a4de202cbd settings: Add anisotropy mode enum 2023-07-21 10:56:07 -04:00
lat9nq
cfb63c68db shared_translation: Finish using int ids 2023-07-21 10:56:07 -04:00
lat9nq
bafd569b47 settings,uisettings: Add IDs to settings 2023-07-21 10:56:07 -04:00
lat9nq
f8435d676f configure_graphics: Partial runtime implementation 2023-07-21 10:56:07 -04:00
lat9nq
75d7e40113 settings: Recategorize a bit
Will help with generating config UI later.
2023-07-21 10:56:07 -04:00
lat9nq
4a825268d6 shared_translation: Add the rest of the settings 2023-07-21 10:56:07 -04:00
lat9nq
4f545e3024 shared_translation: Add copyright and license 2023-07-21 10:56:07 -04:00
lat9nq
a007ac6b9c configure_graphics_advance: Generate UI at runtime
We can iterate through the AdvancedGraphics settings and generate the UI
during runtime. This doesn't help runtime efficiency, but it helps a ton
in reducing the amount of work a developer needs in order to add a new
setting.
2023-07-21 10:56:07 -04:00
lat9nq
b11b4be7cb configure_per_game: Rename group to tab_group 2023-07-21 10:56:07 -04:00
lat9nq
d3b94d64d4 configuration: Add base class to tabs
Tabs that largely configure SwitchableSetting's are now Tabs and grouped
together.
2023-07-21 10:56:07 -04:00
lat9nq
e5b981e1e4 configuration_shared: Create Tab base class 2023-07-21 10:56:07 -04:00
lat9nq
60773194a0 settings: Add a registry of settings
LoadString: Sanitize input

settings: Handle empty string, remove redundant category

settings: Rename Input to Controls, FS to DataStorage

settings: Fix Controls groups information

settings: Move use_docked_mode to System (again)

settings: Document

settings: Add type identification function

settings: Move registry into values

settings: Move global_reset_registry into values

settings: Separate AdvGraphics from Renderer

settings: More document

squash

settings: Use linkage object

uisettings: Move registry into settings

Probably wont build without

uisettings: Use settings linkage object

config: Load settings with a map

Uses the new all_settings vector to load settings.

qt-config: Rename settings category

qt config: Rename to read category

config: Read/write contols category with for_each

This is extremely limited due to the complexity of the Controls group,
but this handles the the settings that use the interface.

qt-config: Use new settings registry

qt-config: Read/write advgrphics

qt-config: Use settings linkage object

yuzu_cmd: Load setting off of vector

cmd-config: Finish settings rename

config: Read controls settings group with for_each

cmd/config: Move registry into values

cmd: Read adv graphics

cmd-config: Use settings linkage object
2023-07-21 10:56:07 -04:00
lat9nq
e7543e8b84 uisettings: Fix typings 2023-07-21 10:56:07 -04:00
lat9nq
4133165607 settings,core,config_sys: Remove optional type from custom_rtc, rng_seed
core: Fix MSVC errors
2023-07-21 10:56:07 -04:00
lat9nq
5ccfaf0517 settings: Pool SetGlobal functions 2023-07-21 10:56:07 -04:00
lat9nq
5cffa34288 settings,video_core: Consolidate ASTC decoding options
Just puts them all neatly into one place.
2023-07-21 10:56:07 -04:00
liamwhite
c0202da9ac
Merge pull request #11096 from german77/amiibooo
service: nfc: Update Implementation to match with latest RE
2023-07-21 09:21:48 -04:00
liamwhite
014ca709c9
Merge pull request #11116 from lat9nq/clang-shadowing
general: Silence -Wshadow{,-uncaptured-local} warnings
2023-07-19 17:14:55 -04:00
liamwhite
86bbfe3b1d
Merge pull request #11114 from Kelebek1/warnings
Mark SetIdleTimeDetectionExtension logging as debug
2023-07-19 17:14:45 -04:00
lat9nq
4ecedc4991 vk_buffer_cache: Format 2023-07-18 19:56:20 -04:00
lat9nq
71b3b2a2f0 general: Silence -Wshadow{,-uncaptured-local} warnings
These occur in the latest commits in LLVM Clang.
2023-07-18 19:31:35 -04:00
Kelebek1
80cd67ed7b Debug SetIdleTimeDetectionExtension 2023-07-18 10:16:14 +01:00
Liam
8f1d48fda6 nsd: add GetApplicationServerEnvironmentType 2023-07-17 21:34:23 -04:00
Morph
16c238e4b9 ssl: Link with crypt32 for secure channel backend 2023-07-17 15:46:24 -04:00
Morph
e0fb1d3d17 ssl: Reorder inclusions 2023-07-17 15:46:24 -04:00
Morph
5bbc3aef13 network: Forward declarations 2023-07-17 15:36:03 -04:00
Narr the Reg
54f150b70a service: nfc: Update Implementation to match with latest RE 2023-07-17 11:24:23 -06:00
liamwhite
5593bed08a
Merge pull request #10934 from abouvier/cmake-vma
cmake: allow using system VMA library
2023-07-17 10:42:41 -04:00
liamwhite
8750564bd2
Merge pull request #11102 from v1993/your-mom-is-encrypted
android: fix links to re-dumping guides
2023-07-17 10:42:31 -04:00
liamwhite
2461c78e3f
Merge pull request #10912 from comex/ssl
Implement SSL service
2023-07-16 16:56:47 -04:00
Valeri Ochinski
50fe45f1e4
android: fix links to re-dumping guides 2023-07-16 20:22:27 +03:00
GPUCode
4347dd26c6 buffer_cache: Increase number of texture buffers 2023-07-15 23:09:58 +03:00
comex
d7c532d889 Fixes and workarounds to make UBSan happier on macOS
There are still some other issues not addressed here, but it's a start.

Workarounds for false-positive reports:

- `RasterizerAccelerated`: Put a gigantic array behind a `unique_ptr`,
  because UBSan has a [hardcoded limit](https://stackoverflow.com/questions/64531383/c-runtime-error-using-fsanitize-undefined-object-has-a-possibly-invalid-vp)
  of how big it thinks objects can be, specifically when dealing with
  offset-to-top values used with multiple inheritance.  Hopefully this
  doesn't have a performance impact.

- `QueryCacheBase::QueryCacheBase`: Avoid an operation that UBSan thinks
  is UB even though it at least arguably isn't.  See the link in the
  comment for more information.

Fixes for correct reports:

- `PageTable`, `Memory`: Use `uintptr_t` values instead of pointers to
  avoid UB from pointer overflow (when pointer arithmetic wraps around
  the address space).

- `KScheduler::Reload`: `thread->GetOwnerProcess()` can be `nullptr`;
  avoid calling methods on it in this case.  (The existing code returns
  a garbage reference to a field, which is then passed into
  `LoadWatchpointArray`, and apparently it's never used, so it's
  harmless in practice but still triggers UBSan.)

- `KAutoObject::Close`: This function calls `this->Destroy()`, which
  overwrites the beginning of the object with junk (specifically a free
  list pointer).  Then it calls `this->UnregisterWithKernel()`.  UBSan
  complains about a type mismatch because the vtable has been
  overwritten, and I believe this is indeed UB.  `UnregisterWithKernel`
  also loads `m_kernel` from the 'freed' object, which seems to be
  technically safe (the overwriting doesn't extend as far as that
  field), but seems dubious.  Switch to a `static` method and load
  `m_kernel` in advance.
2023-07-15 12:00:28 -07:00
Liam
474db2d8da kernel: reduce page table region checking 2023-07-14 22:33:10 -04:00
Liam
a85ce8ea56 k_process: PageTable -> GetPageTable 2023-07-14 21:43:15 -04:00
Tobias
04868ab9da
file_sys/content_archive: Detect compressed NCAs (#11047) 2023-07-12 23:17:18 +02:00
lat9nq
63a0a1f826 time_zone: Clean up includes 2023-07-12 03:03:03 -04:00
lat9nq
9e0d6f7d54 time_zone: Swap subtraction order 2023-07-12 03:02:45 -04:00
lat9nq
13755c0903 time_zone: Account for leap years
Protects against invalid hour offsets during transitions to years
following leap years.
2023-07-12 02:34:02 -04:00
Alexandre Bouvier
c3050c1b48 cmake: allow using system VMA library 2023-07-12 04:51:45 +02:00
bunnei
28598c9090
Merge pull request #10985 from liamwhite/handle-translate
k_server_session: translate special header for non-HLE requests
2023-07-11 16:49:24 -07:00
bunnei
11cb4d88f0
Merge pull request #11070 from t895/home-setting-warning
android: Visualize disabled home options
2023-07-11 16:48:57 -07:00
Charles Lombardo
4b870b28e8 android: Visualize disabled home options
Allow for displaying options in the home options that are disabled with messages that explain why they are disabled.

This includes reasoning for the GPU driver installation button.
2023-07-10 22:17:19 -04:00
bunnei
ce7c418e0c
Merge pull request #10996 from Kelebek1/readblock_optimisation
Use spans over guest memory where possible instead of copying data
2023-07-10 18:54:19 -07:00
bunnei
169b198d08
Merge pull request #11050 from SuperSamus/sdl-button-labels
input_common: set `SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS` to 0
2023-07-10 18:53:16 -07:00
lat9nq
833306bf5e settings: Disable C++20 tzdb path on MinGW
This path always results in Etc/UTC on MinGW, which often is not
close to the local time zone.
2023-07-10 17:52:35 -04:00
lat9nq
90d76333da time_zone: Remove string ops for determing zone
MinGW's strftime implementation does not work and cannot be used to
determine the time zone. Besides that, the string operations are
actually unnecessary since we can get the offset from
std::localtime.

Compare localtime to gmtime to find the zone offset on all platforms.
2023-07-10 17:51:34 -04:00
bunnei
e32ce6cc69
Merge pull request #11067 from t895/fragile-data
android: Don't prompt to save user data on uninstall
2023-07-09 17:20:14 -07:00
Morph
79e289404b
Merge pull request #11055 from lat9nq/tzdb-catch-
settings: Catch runtime error from STL
2023-07-09 19:27:41 -04:00
Charles Lombardo
a6e467cd55 android: Don't prompt to save user data on uninstall
While this can be convenient in some scenarios, this will be a big problem for users trying to sideload different APK versions. If they forget the last one they had installed, they could have problems installing a new copy.
2023-07-09 19:02:42 -04:00
Morph
8a87a41f2d
Merge pull request #11063 from liamwhite/oops
arm_interface: correct breakpoint rewind condition
2023-07-09 16:24:49 -04:00
Liam
82568412f6 arm_interface: correct breakpoint rewind condition 2023-07-09 12:03:25 -04:00
lat9nq
1255196731 settings: Catch runtime error from STL
This function throws a runtime error we can catch on old Windows 10
installs, so we can catch it here rather than disable this path for
everybody.
2023-07-09 02:26:58 -04:00
Morph
9ce5d39829
Merge pull request #11030 from lat9nq/tz-restrict-msvc
settings: Disable C++20 time zone path on MSVC
2023-07-09 01:45:00 -04:00
Liam
4540bcfaf7 k_server_session: translate special header for non-HLE requests 2023-07-08 01:01:49 -04:00
Martino Fontana
aa882cdaa8 input_common: set SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS to 0
This allows to share the mappings between Nintendo and non-Nintendo controllers.
Breaks the controller configuration for existing users who are using a Nintendo controller.

(Documentation of the hint 92b3c53c92/include/SDL_hints.h (L512-L532))
2023-07-07 21:59:47 +02:00
liamwhite
45ea712d39
Merge pull request #10999 from Morph1984/fix-install-progress
main: Fix install progress calculation
2023-07-06 18:57:25 -04:00
liamwhite
95c5b715b1
Merge pull request #11031 from german77/zero
input_common: Avoid potential division by zero
2023-07-06 18:57:07 -04:00
liamwhite
8bf46f48f8
vfs_real: use open file size for getting size (#11016) 2023-07-06 23:43:53 +02:00
Morph
9d7671ec3b main: Use 1_MiB as a constant for copy buffer size 2023-07-06 13:04:27 -04:00
Morph
5d0a051abb main: Fix install progress calculation
The increased buffer size means that that progress bar size has to be adjusted
2023-07-06 00:22:38 -04:00
Narr the Reg
4c84bce171 input_common: Avoid potential division by zero 2023-07-05 17:42:16 -06:00
lat9nq
302a735135 settings: Disable C++20 path on MSVC
Even though it compiles and runs fine on the latest Windows versions,
older LTSC builds will crash due to lacking support somewhere in the OS.

For now just disable it for MSVC until either Microsoft fixes this or we
no longer support 1809 LTSC.
2023-07-05 15:58:12 -04:00
liamwhite
d8eb37fbec
Merge pull request #10994 from liamwhite/ue4-preferred
vulkan_common: use device local preferred for image memory
2023-07-05 09:23:56 -04:00
liamwhite
ef7d44e243
Merge pull request #11006 from german77/nfc_nfc
service: nfc: Ensure controller is in the correct mode
2023-07-05 09:23:47 -04:00
liamwhite
f71140fbd9
Merge pull request #11012 from gidoly/metroid-fix
Fix regression by unreal engine fix pr #11009
2023-07-05 09:23:34 -04:00
Kelebek1
f1cfd9c219 Fix ScratchBuffer moves 2023-07-04 16:02:58 +01:00
bunnei
1462db4694 video_core: vulkan_device: Disable timeline semaphore on Turnip, fix qcom version check. 2023-07-03 19:25:06 -07:00
bunnei
44af2e32a4
Merge pull request #10964 from bunnei/gpu-remove-qcom-check
video_core: vulkan_device: Fix S8Gen2 dynamic state checks.
2023-07-03 16:59:29 -07:00
bunnei
3c88547c74
Merge pull request #10943 from t895/stick-modifiers
android: Input overlay updates
2023-07-03 14:44:15 -07:00
bunnei
cef7aaa8ec video_core: vulkan_device: Change to driver version check. 2023-07-03 14:25:06 -07:00
german77
b41006004b android: Reintroduce launch mode as single top 2023-07-03 09:31:02 -06:00
gidoly
408a9cd50d
oops re open 2023-07-03 20:25:23 +09:00
zeltermann
d2b62ae401
Use toUtf8() for string passed to DBus 2023-07-03 14:46:17 +07:00
german77
9cd698e8ad service: nfc: Ensure controller is in the correct mode 2023-07-02 19:21:16 -06:00
Charles Lombardo
68f6f2671b android: Version the input overlay
Now within the Input Overlay file, there is a version that will determine when the overlay will be reset. This is intended for breaking changes like the ones we had with the additions of percentage based layouts or the addition of foldable/portrait layouts. This also includes versions for each individual layout so we don't have to reset every layout if only one is broken.

Additionally, this includes new L3/R3 buttons.
2023-07-02 20:19:01 -04:00
Kelebek1
6f7cb69c94 Use spans over guest memory where possible instead of copying data. 2023-07-02 23:09:48 +01:00
liamwhite
95ceae40e6
Merge pull request #10998 from Morph1984/qt-stop-messing-with-me
core_timing: Remove GetCurrentTimerResolution in CoreTiming loop
2023-07-02 17:38:28 -04:00
liamwhite
5e3695ecaa
Merge pull request #10479 from GPUCode/format-list
Add support for VK_KHR_image_format_list
2023-07-02 17:38:21 -04:00
liamwhite
daaf03942f
Merge pull request #10969 from Morph1984/k-synchronize
kernel: Synchronize
2023-07-02 17:38:14 -04:00
Morph
c3fbc8d2fe core_timing: Remove GetCurrentTimerResolution in CoreTiming loop
Other programs may change this value, but if thousands of syscalls in this loop is undesirable, then we can just set this once.
2023-07-02 15:08:04 -04:00
liamwhite
657ab0287d
Merge pull request #10949 from t895/memory-requirements
android: Rework MemoryUtil
2023-07-02 11:29:08 -04:00
liamwhite
eaa62aee98
Merge pull request #10942 from FernandoS27/android-is-a-pain-in-the-a--
Memory Tracking: Add mechanism to register small writes when gpu page is contested by GPU
2023-07-02 11:29:01 -04:00
liamwhite
87080e71c5
Merge pull request #10710 from liamwhite/romfs2
fsmitm_romfsbuild: avoid full path lookups
2023-07-02 11:28:55 -04:00
comex
644c3ce609 Rename variables to avoid -Wshadow warnings under GCC 2023-07-01 22:03:21 -07:00
Liam
ad1946b893 vulkan_common: use device local preferred for image memory 2023-07-01 23:44:57 -04:00
Liam
34c448bad4 Revert "texture_cache: Fix incorrect logic for AccelerateDMA"
This reverts commit 1fc47361a1.
2023-07-01 23:37:50 -04:00
liamwhite
146769f44e
Merge pull request #10984 from comex/cob
Minor cleanup in BufferCacheRuntime::ReserveNullBuffer
2023-07-01 22:38:33 -04:00
liamwhite
ae7e9b5469
Merge pull request #10974 from Steveice10/macos_vk
vulkan: Improvements to macOS surface creation
2023-07-01 22:38:26 -04:00
liamwhite
971b89b979
Merge pull request #10970 from Morph1984/thing
general: Misc changes that did not deserve their own PRs
2023-07-01 22:38:18 -04:00
liamwhite
7f5ccd0151
Merge pull request #10966 from Morph1984/heap-corruption
sink_stream: Resolve heap buffer corruption due to out of bounds write
2023-07-01 22:38:10 -04:00
liamwhite
595d55d485
Merge pull request #10950 from german77/mouse_tune
input_common: Tune mouse controls
2023-07-01 22:38:01 -04:00
comex
0ed1cb7266 ...actually add the SecureTransport backend to Git. 2023-07-01 17:48:36 -07:00
comex
0e191c2711 Updates:
- Address PR feedback.
- Add SecureTransport backend for macOS.
2023-07-01 17:27:35 -07:00
comex
98685d48e3 Merge remote-tracking branch 'origin/master' into ssl 2023-07-01 15:01:11 -07:00
Steveice10
aa89ec9214 yuzu: Use test window with VulkanSurface to check for present modes.
It is probably not correct to create a surface on a non-VulkanSurface window.
On macOS this causes a preferences crash due to missing CAMetalLayer.
2023-07-01 14:15:26 -07:00
Morph
b94e576653 kernel: Synchronize 2023-07-01 16:21:22 -04:00
comex
1e3b2328a6 Minor cleanup in BufferCacheRuntime::ReserveNullBuffer
As far as I can tell, there is no reason to OR this bit in separately.
2023-07-01 12:00:25 -07:00
GPUCode
272916eeaf renderer_vulkan: Fix some missing view formats
* Many times the format itself wouldn't have been added to the list causing device losses for nvidia GPUs

* Also account for ASTC acceleration storage views
2023-07-01 16:03:35 +03:00
GPUCode
95cefaf993 renderer_vulkan: Add support for VK_KHR_image_format_list 2023-07-01 16:03:29 +03:00
Steveice10
e146a00345 vulkan: Use newer VK_EXT_metal_surface to create surface for MoltenVK. 2023-06-30 23:46:03 -07:00
Morph
1a46823ec5 parcel: Optimize small_vector sizes 2023-06-30 22:05:28 -04:00
Morph
5a09fa5012 maxwell_dma: Specify dst_operand.pitch instead of a temp var 2023-06-30 21:49:59 -04:00
Morph
310b6cf4af general: Use ScratchBuffer where possible 2023-06-30 21:49:59 -04:00
german77
da8df6488d yuzu: Ensure mouse panning can't be enabled with real mouse emulation 2023-06-30 18:59:39 -06:00
Fernando S
a10bdaf934
Merge pull request #10953 from FernandoS27/oh-oopsies-yfc
Texture cache: Fix YFC regression due to code testing
2023-06-30 20:25:09 +02:00
Charles Lombardo
ff6d35f2c7 android: Show memory warning once 2023-06-30 13:46:35 -04:00
Morph
fbd85417ff ring_buffer: Fix const usage on std::span 2023-06-30 13:33:14 -04:00
Morph
b8c906f9d1 scratch_buffer: Add member types to ScratchBuffer
Allows for implicit conversion to std::span<T>.
2023-06-30 13:33:13 -04:00
Fernando S
9252ad4e10
Merge pull request #10956 from FernandoS27/pikmin-another-game-ill-hate
AccelerateDMA: Don't accelerate 3D texture DMA operations
2023-06-30 09:37:07 +02:00
Charles Lombardo
11991fbd7f android: Rework MemoryUtil
Uses string templates and rounds up memory amount for potentially inaccurate checks now
2023-06-30 01:00:19 -04:00
Morph
ea8d5ef5e8 sink_stream: Resolve heap buffer corruption due to out of bounds write
Also, remove the use of ScratchBuffer when upmixing, as other channels may not be initialized with zeroed out data.
2023-06-30 00:54:23 -04:00
bunnei
ddcd89afd4 video_core: vulkan_device: Scope S8Gen2 checks to just Qualcomm. 2023-06-29 18:41:38 -07:00
bunnei
dfa040502a video_core: vulkan_device: Fix S8Gen2 dynamic state checks. 2023-06-29 17:37:42 -07:00
Fernando Sahmkow
596a6132b9 AccelerateDMA: Don't accelerate 3D texture DMA operations 2023-06-29 17:23:29 +02:00
Charles Lombardo
45be4c3214
Merge pull request #10955 from 8bitDream/gradle
android: Suppress a known incompatibility
2023-06-29 11:07:00 -04:00
liamwhite
5e70db0d43
Merge pull request #10935 from Morph1984/mwaitx
x64: Make use of monitorx instructions for power efficient sleeps (AMD)
2023-06-29 10:01:26 -04:00
liamwhite
4c705db73e
Merge pull request #10937 from german77/ring
input_common: Remove duplicated enum and fix ring detection
2023-06-29 10:01:19 -04:00
liamwhite
7de778ad39
Merge pull request #10946 from goldenx86/amdBlending
Blacklist EDS3 blending from new AMD drivers
2023-06-29 10:01:11 -04:00
Abandoned Cart
13506e7782 android: Suppress a known incompatibility
Android Gradle plugin 8.0.2 is designed for API 33, but a newer plugin hasn't been released yet. The warning message is rather extravagant, but also suggests adding this property if you are aware of the risks.
2023-06-29 07:32:12 -04:00
Fernando Sahmkow
0e6b559c98 Memory Tracker: Use 64 bit atomics instead of 128 bits 2023-06-29 12:25:12 +02:00
Fernando Sahmkow
b62121fd60 Texture cache: Fix YFC regression due to code testing 2023-06-29 11:58:45 +02:00
german77
ac755476cd input_common: Allow timeouts to happen while scanning for a ring 2023-06-29 01:07:39 -06:00
Narr the Reg
3f407417c1 input_common: Tune mouse controls 2023-06-28 21:04:33 -06:00
Charles Lombardo
a1dd5dfba5 android: Make MemoryUtil an object 2023-06-28 20:00:25 -04:00
Matías Locatti
ed93cbd462
Blacklist EDS3 blending from new AMD drivers 2023-06-28 20:10:27 -03:00
Charles Lombardo
b76b698c17 android: Android 14 support
Specifies the permissions needed for the changes to foreground services in Android 14.
2023-06-28 16:15:18 -04:00
Fernando Sahmkow
da440da9f5 Memory Tracking: Optimize tracking to only use atomic writes when contested with the host GPU 2023-06-28 21:32:45 +02:00
Fernando Sahmkow
47d0d292d5 MemoryTracking: Initial setup of atomic writes. 2023-06-28 19:34:21 +02:00
german77
df9685a21c input_common: Remove duplicated DriverResult enum 2023-06-28 09:49:47 -06:00
Morph
295fc7d0f8 x64: cpu_wait: Implement MWAITX for non-MSVC compilers 2023-06-28 01:39:15 -04:00
Morph
2b68a3cbbf x64: cpu_wait: Remove magic values 2023-06-28 01:39:06 -04:00
Morph
3d868baaa4 x64: cpu_wait: Make use of MWAITX in MicroSleep
MWAITX is equivalent to UMWAIT on Intel's Alder Lake CPUs.
We can emulate TPAUSE by using MONITORX in conjunction with MWAITX to wait for 100K cycles.
2023-06-28 01:38:55 -04:00
Morph
4303ed614d x64: Add detection of monitorx instructions
monitorx introduces 2 instructions: MONITORX and MWAITX.
2023-06-28 01:36:06 -04:00
Liam
edd54abee4 fsmitm_romfsbuild: avoid full path lookups 2023-06-27 23:25:47 -04:00
GPUCode
ddcc958336 renderer_vulkan: Prevent crashes when blitting depth stencil 2023-06-27 18:00:09 -07:00
GPUCode
eac46ad7ce video_core: Add BCn decoding support 2023-06-27 18:00:09 -07:00
GPUCode
b8c96cee5f renderer_vulkan: Add more feature checking 2023-06-27 18:00:09 -07:00
GPUCode
220a42896d renderer_vulkan: Don't assume debug tool with debug renderer
* Causes crashes because mali drivers don't support debug utils
2023-06-27 18:00:09 -07:00
GPUCode
1522b95658 renderer_vulkan: Bump minimum SPIRV version
* 1.3 is guaranteed on all 1.1 drivers
2023-06-27 18:00:09 -07:00
GPUCode
c339af37a7 renderer_vulkan: Respect viewport limit 2023-06-27 18:00:09 -07:00
GPUCode
a9b44d37e1 renderer_vulkan: Don't add transform feedback flag if unsupported 2023-06-27 18:00:09 -07:00
GPUCode
72e7f5b4dd renderer_vulkan: Add suport for debug report callback 2023-06-27 18:00:09 -07:00
liamwhite
0fe44071f8
Merge pull request #10933 from merryhime/dunno
arm_dynarmic_32: Remove disabling of block linking on arm64
2023-06-27 20:50:24 -04:00
lat9nq
21675c9b68 settings: Clean up includes
Adds <version> since we are looking at C++ implementation version
details. Also moves exception header includes into the if preprocessor
command since we only use it there.
2023-06-27 19:13:54 -04:00
Merry
e3c548d081 arm_dynarmic_32: Remove disabling of block linking on arm64 2023-06-27 23:51:49 +01:00
lat9nq
32475efbc4 settings: Catch runtime_error, fallback time zone
Windows will let you select time zones that  will fail in their
own C++ implementation library. Evidently from the stack trace, we get a
runtime error to work with, so catch it and use the fallback.
2023-06-27 18:12:26 -04:00
german77
30544fbfa5 yuzu: Fix clang format 2023-06-27 15:55:23 -06:00
Narr the Reg
112b660456
Merge pull request #9663 from EBADBEEF/disable-controller-applet
qt: add option to disable controller applet
2023-06-27 10:32:51 -06:00
liamwhite
2b3bfafb9e
Merge pull request #10867 from Kelebek1/dma_safe
Use safe reads in DMA engine
2023-06-27 11:21:47 -04:00
liamwhite
c6959449d1
Merge pull request #10473 from GPUCode/vma
Use vulkan memory allocator
2023-06-27 11:21:36 -04:00
liamwhite
20111c86b6
Merge pull request #10495 from bm01/master
input_common: Redesign mouse panning
2023-06-27 11:21:28 -04:00
liamwhite
f254ce2c60
Merge pull request #10679 from zeltermann/wakelock-reason
Only use SDL wakelock on Linux
2023-06-27 11:21:20 -04:00
liamwhite
dafbc86366
Merge pull request #10916 from ameerj/lolmem
OpenGL: Add Local Memory warmup shader for Nvidia
2023-06-27 11:21:10 -04:00
Charles Lombardo
9074a70b01 android: Fix size check for content uris
Fix for checking file size for android content uris
2023-06-26 22:24:18 -04:00
liamwhite
2ed8b3cbb9
Merge pull request #10908 from kiri11/clarify-ring-ui
Clarify Ring-Con configuration message in UI
2023-06-26 14:31:30 -04:00
liamwhite
b82c649b0f
Merge pull request #10903 from german77/nfc_state
input_common: Improve nfc state handling and 3rd party support
2023-06-26 14:31:23 -04:00
liamwhite
ce990adae5
Merge pull request #10901 from german77/sdl_fix
input_common: Make use of new SDL features
2023-06-26 14:31:14 -04:00
liamwhite
28df6ac0aa
Merge pull request #10888 from 8bitDream/native
android: (native) Parameter types from Android Studio
2023-06-26 14:31:00 -04:00
liamwhite
0030fa9721
Merge pull request #10865 from t895/extension-meme
android: Clean up file extension checks
2023-06-26 14:30:49 -04:00
Charles Lombardo
0f31039831 android: Clean up file extension checks 2023-06-26 13:25:56 -04:00
GPUCode
b6c6dcc576 externals: Use cmake subdirectory 2023-06-26 18:59:24 +03:00
Kelebek1
ffbaf574ca Use safe reads in DMA engine 2023-06-26 11:34:02 +01:00
comex
d885dd5b64 PR feedback + constification 2023-06-25 19:24:49 -07:00
comex
b9f9d0a642 network.cpp: include expected.h 2023-06-25 18:51:39 -07:00
comex
cd4b8f037c re-format 2023-06-25 17:09:54 -07:00
comex
ac939f08a4 Fix more Windows build errors
I did test this beforehand, but not on MinGW, and the error that showed
up on the msvc builder didn't happen for me...
2023-06-25 17:06:57 -07:00
comex
42015de49b ssl: fix compatibility with OpenSSL 1.1.1
Turns out changes were needed after all.
2023-06-25 16:09:16 -07:00
ameerj
4f160633d3 OpenGL: Limit lmem warmup to NVIDIA
🐸
2023-06-25 19:06:51 -04:00
ameerj
405eae3734 shaders: Track local memory usage 2023-06-25 18:59:33 -04:00
ameerj
b198339580 emit_glasm: Fix lmem size computation 2023-06-25 18:43:52 -04:00
ameerj
82107b33a2 OpenGL: Add Local Memory warmup shader 2023-06-25 18:43:23 -04:00
comex
4a35569921 Fixes:
- Add missing virtual destructor on `SSLBackend`.

- On Windows, filter out `POLLWRBAND` (one of the new flags added) when
  calling `WSAPoll`, because despite the constant being defined on
  Windows, passing it calls `WSAPoll` to yield `EINVAL`.

- Reduce OpenSSL version requirement to satisfy CI; I haven't tested
  whether it actually builds (or runs) against 1.1.1, but if not, I'll
  figure it out.

- Change an instance of memcpy to memmove, even though the arguments
  cannot overlap, to avoid a [strange GCC
  error](https://github.com/yuzu-emu/yuzu/pull/10912#issuecomment-1606283351).
2023-06-25 15:06:52 -07:00
comex
8905142f43 ssl: rename argument to avoid false positive codespell warning
The original name `larg` was copied from the OpenSSL documentation and
is not a typo of 'large' but rather an abbreviation of '`long`
argument'.  But whatever, no harm in adding an underscore.
2023-06-25 13:10:41 -07:00
comex
7cc428ddf6 socket_types: Improve comment 2023-06-25 13:10:15 -07:00
comex
8e703e08df Implement SSL service
This implements some missing network APIs including a large chunk of the SSL
service, enough for Mario Maker (with an appropriate mod applied) to connect to
the fan server [Open Course World](https://opencourse.world/).

Connecting to first-party servers is out of scope of this PR and is a
minefield I'd rather not step into.

 ## TLS

TLS is implemented with multiple backends depending on the system's 'native'
TLS library.  Currently there are two backends: Schannel for Windows, and
OpenSSL for Linux.  (In reality Linux is a bit of a free-for-all where there's
no one 'native' library, but OpenSSL is the closest it gets.)  On macOS the
'native' library is SecureTransport but that isn't implemented in this PR.
(Instead, all non-Windows OSes will use OpenSSL unless disabled with
`-DENABLE_OPENSSL=OFF`.)

Why have multiple backends instead of just using a single library, especially
given that Yuzu already embeds mbedtls for cryptographic algorithms?  Well, I
tried implementing this on mbedtls first, but the problem is TLS policies -
mainly trusted certificate policies, and to a lesser extent trusted algorithms,
SSL versions, etc.

...In practice, the chance that someone is going to conduct a man-in-the-middle
attack on a third-party game server is pretty low, but I'm a security nerd so I
like to do the right security things.

My base assumption is that we want to use the host system's TLS policies.  An
alternative would be to more closely emulate the Switch's TLS implementation
(which is based on NSS).  But for one thing, I don't feel like reverse
engineering it.  And I'd argue that for third-party servers such as Open Course
World, it's theoretically preferable to use the system's policies rather than
the Switch's, for two reasons

1. Someday the Switch will stop being updated, and the trusted cert list,
   algorithms, etc. will start to go stale, but users will still want to
   connect to third-party servers, and there's no reason they shouldn't have
   up-to-date security when doing so.  At that point, homebrew users on actual
   hardware may patch the TLS implementation, but for emulators it's simpler to
   just use the host's stack.

2. Also, it's good to respect any custom certificate policies the user may have
   added systemwide.  For example, they may have added custom trusted CAs in
   order to use TLS debugging tools or pass through corporate MitM middleboxes.
   Or they may have removed some CAs that are normally trusted out of paranoia.

Note that this policy wouldn't work as-is for connecting to first-party
servers, because some of them serve certificates based on Nintendo's own CA
rather than a publicly trusted one.  However, this could probably be solved
easily by using appropriate APIs to adding Nintendo's CA as an alternate
trusted cert for Yuzu's connections.  That is not implemented in this PR
because, again, first-party servers are out of scope.

(If anything I'd rather have an option to _block_ connections to Nintendo
servers, but that's not implemented here.)

To use the host's TLS policies, there are three theoretical options:

a) Import the host's trusted certificate list into a cross-platform TLS
   library (presumably mbedtls).

b) Use the native TLS library to verify certificates but use a cross-platform
   TLS library for everything else.

c) Use the native TLS library for everything.

Two problems with option a).  First, importing the trusted certificate list at
minimum requires a bunch of platform-specific code, which mbedtls does not have
built in.  Interestingly, OpenSSL recently gained the ability to import the
Windows certificate trust store... but that leads to the second problem, which
is that a list of trusted certificates is [not expressive
enough](https://bugs.archlinux.org/task/41909) to express a modern certificate
trust policy.  For example, Windows has the concept of [explicitly distrusted
certificates](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/dn265983(v=ws.11)),
and macOS requires Certificate Transparency validation for some certificates
with complex rules for when it's required.

Option b) (using native library just to verify certs) is probably feasible, but
it would miss aspects of TLS policy other than trusted certs (like allowed
algorithms), and in any case it might well require writing more code, not less,
compared to using the native library for everything.

So I ended up at option c), using the native library for everything.

What I'd *really* prefer would be to use a third-party library that does option
c) for me.  Rust has a good library for this,
[native-tls](https://docs.rs/native-tls/latest/native_tls/).  I did search, but
I couldn't find a good option in the C or C++ ecosystem, at least not any that
wasn't part of some much larger framework.  I was surprised - isn't this a
pretty common use case?  Well, many applications only need TLS for HTTPS, and they can
use libcurl, which has a TLS abstraction layer internally but doesn't expose
it.  Other applications only support a single TLS library, or use one of the
aforementioned larger frameworks, or are platform-specific to begin with, or of
course are written in a non-C/C++ language, most of which have some canonical
choice for TLS.  But there are also many applications that have a set of TLS
backends just like this; it's just that nobody has gone ahead and abstracted
the pattern into a library, at least not a widespread one.

Amusingly, there is one TLS abstraction layer that Yuzu already bundles: the
one in ffmpeg.  But it is missing some features that would be needed to use it
here (like reusing an existing socket rather than managing the socket itself).
Though, that does mean that the wiki's build instructions for Linux (and macOS
for some reason?) already recommend installing OpenSSL, so no need to update
those.

 ## Other APIs implemented

- Sockets:
    - GetSockOpt(`SO_ERROR`)
    - SetSockOpt(`SO_NOSIGPIPE`) (stub, I have no idea what this does on Switch)
    - `DuplicateSocket` (because the SSL sysmodule calls it internally)
    - More `PollEvents` values

- NSD:
    - `Resolve` and `ResolveEx` (stub, good enough for Open Course World and
      probably most third-party servers, but not first-party)

- SFDNSRES:
    - `GetHostByNameRequest` and `GetHostByNameRequestWithOptions`
    - `ResolverSetOptionRequest` (stub)

 ## Fixes

- Parts of the socket code were previously allocating a `sockaddr` object on
  the stack when calling functions that take a `sockaddr*` (e.g. `accept`).
  This might seem like the right thing to do to avoid illegal aliasing, but in
  fact `sockaddr` is not guaranteed to be large enough to hold any particular
  type of address, only the header.  This worked in practice because in
  practice `sockaddr` is the same size as `sockaddr_in`, but it's not how the
  API is meant to be used.  I changed this to allocate an `sockaddr_in` on the
  stack and `reinterpret_cast` it.  I could try to do something cleverer with
  `aligned_storage`, but casting is the idiomatic way to use these particular
  APIs, so it's really the system's responsibility to avoid any aliasing
  issues.

- I rewrote most of the `GetAddrInfoRequest[WithOptions]` implementation.  The
  old implementation invoked the host's getaddrinfo directly from sfdnsres.cpp,
  and directly passed through the host's socket type, protocol, etc. values
  rather than looking up the corresponding constants on the Switch.  To be
  fair, these constants don't tend to actually vary across systems, but
  still... I added a wrapper for `getaddrinfo` in
  `internal_network/network.cpp` similar to the ones for other socket APIs, and
  changed the `GetAddrInfoRequest` implementation to use it.  While I was at
  it, I rewrote the serialization to use the same approach I used to implement
  `GetHostByNameRequest`, because it reduces the number of size calculations.
  While doing so I removed `AF_INET6` support because the Switch doesn't
  support IPv6; it might be nice to support IPv6 anyway, but that would have to
  apply to all of the socket APIs.

  I also corrected the IPC wrappers for `GetAddrInfoRequest` and
  `GetAddrInfoRequestWithOptions` based on reverse engineering and hardware
  testing.  Every call to `GetAddrInfoRequestWithOptions` returns *four*
  different error codes (IPC status, getaddrinfo error code, netdb error code,
  and errno), and `GetAddrInfoRequest` returns three of those but in a
  different order, and it doesn't really matter but the existing implementation
  was a bit off, as I discovered while testing `GetHostByNameRequest`.

  - The new serialization code is based on two simple helper functions:

    ```cpp
    template <typename T> static void Append(std::vector<u8>& vec, T t);
    void AppendNulTerminated(std::vector<u8>& vec, std::string_view str);
    ```

    I was thinking there must be existing functions somewhere that assist with
    serialization/deserialization of binary data, but all I could find was the
    helper methods in `IOFile` and `HLERequestContext`, not anything that could
    be used with a generic byte buffer.  If I'm not missing something, then
    maybe I should move the above functions to a new header in `common`...
    right now they're just sitting in `sfdnsres.cpp` where they're used.

- Not a fix, but `SocketBase::Recv`/`Send` is changed to use `std::span<u8>`
  rather than `std::vector<u8>&` to avoid needing to copy the data to/from a
  vector when those methods are called from the TLS implementation.
2023-06-25 12:53:31 -07:00
Kirill Ignatev
b6e89bdf2c
Hyphenate Joy-Con and clarify further 2023-06-25 12:51:16 -04:00
Kirill Ignatev
b6025cf62f
Clarify Ring-Con configuration message in UI
Not obvious how left controller should be set up
Mention that it should be left physical dual emulated
2023-06-25 11:52:15 -04:00
german77
bf641e2964 core: hid: Allow to read bin files while switch controller is available 2023-06-24 18:59:55 -06:00
german77
5aa208e264 input_common: Dont try to read/write data from 3rd party controllers 2023-06-24 18:59:55 -06:00
german77
474fa13a1a input_common: Make use of new SDL features 2023-06-24 17:42:56 -06:00
zeltermann
482fbded9b Only use SDL wakelock on Linux
SDL has internally fixed shenanigans related to wakelocking through DBus
from inside sandboxes from around August 2022, so we can now remove the
workaround we used since 2021.
2023-06-24 14:51:41 +07:00
Abandoned Cart
b53945a99f android: define [[maybe_unused]] (const) auto 2023-06-23 14:05:14 -04:00
Abandoned Cart
a58a1403ba android: Parameter types from Android Studio
Android Studio marked these parameters as errors because it is an instance, not a class, that is being passed from Java.
2023-06-23 10:36:30 -04:00
liamwhite
5ab4aa1edb
Merge pull request #10811 from 8bitDream/pip_mute
android: Add a PiP interface to mute / unmute
2023-06-23 09:27:28 -04:00
liamwhite
a674022434
Merge pull request #10859 from liamwhite/no-more-atomic-wait
general: remove atomic signal and wait
2023-06-23 09:27:14 -04:00
liamwhite
87b9b5d10f
Merge pull request #10842 from german77/native_mifare
input_common: Implement native mifare/skylander support for joycons/pro controller
2023-06-23 09:27:00 -04:00
Liam
1dd166f766 vfs_real: lock concurrent accesses 2023-06-23 00:57:24 -04:00
bunnei
2fc5dedf69
Merge pull request #10457 from Kelebek1/optimise
Remove memory allocations in some hot paths
2023-06-22 21:53:07 -07:00
bunnei
3f3e4efb30
Merge pull request #10806 from liamwhite/worst-fs-implementation-ever
vfs_real: misc optimizations
2023-06-22 21:46:50 -07:00
bunnei
5558fc4aa5
Merge pull request #10794 from 8bitDream/multiples
android: Add support for multiple installs
2023-06-22 14:26:24 -07:00
Morph
7f12c6159f
Merge pull request #10878 from GPUCode/log-droid
android: Log settings
2023-06-22 16:16:20 -04:00
bunnei
dfa0e9479d
Merge pull request #10869 from 8bitDream/memory
android: Add a notice when RAM inadequate
2023-06-22 10:26:32 -07:00
GPUCode
c133509368 android: Log settings 2023-06-22 20:17:52 +03:00
GPUCode
75fb29e08e vulkan_common: Remove required flags
* Allows VMA to fallback to system RAM instead of crashing
2023-06-22 20:03:12 +03:00
Liam
1586f1c0b1 general: remove atomic signal and wait 2023-06-22 09:25:23 -04:00
Kelebek1
5da70f7197 Remove memory allocations in some hot paths 2023-06-22 08:05:10 +01:00
bunnei
e3122c5b46
Merge pull request #10086 from Morph1984/coretiming-ng-1
core_timing: Use CNTPCT as the guest CPU tick
2023-06-21 21:12:46 -07:00
bunnei
7eb7d56b1b
Merge pull request #10777 from liamwhite/no-barrier
video_core: optionally skip barriers on feedback loops
2023-06-21 21:10:08 -07:00
bunnei
8cb6b33809
Merge pull request #10841 from liamwhite/math-is-hard
vfs_concat: fix offset calculation when not aligned to file boundary
2023-06-21 21:07:08 -07:00
bunnei
8ad64bc253
Merge pull request #10863 from lat9nq/tz-end-of-string
time_zone_manager: Stop on comma
2023-06-21 21:05:03 -07:00
Narr the Reg
84d43489c5 input_common: Implement native mifare support 2023-06-21 17:54:58 -06:00
Abandoned Cart
1a85d8804a android: Generalize string message dialog 2023-06-21 18:25:15 -04:00
Abandoned Cart
6c7e284f64 android: Add support for concurrent installs 2023-06-21 18:25:15 -04:00
Abandoned Cart
8b841aa7ba android: Convert memory sizes to resource 2023-06-21 18:24:49 -04:00
Abandoned Cart
699e78c666 android: Add a notice when RAM inadequate 2023-06-21 18:24:49 -04:00
Abandoned Cart
cfc6ef42d9 android: Refactor native and corresponding variables 2023-06-21 18:23:13 -04:00
Abandoned Cart
e35371e50c Fix JNI and expose mute settings to Android 2023-06-21 18:23:13 -04:00
Abandoned Cart
e31152ee34 android: Add a PiP interface to mute / unmute 2023-06-21 17:21:36 -04:00
Charles Lombardo
e684515578 android: Don't show custom driver button on mali and x86 2023-06-20 20:06:36 -04:00
lat9nq
ae1a8a7dc7 time_zone_manager: Add null terminator
We aren't null-terminating this string after the copy, and we need to.
2023-06-20 15:54:28 -04:00
lat9nq
fd5d7947f6 time_zone_manager: Stop on comma
This is a deviation from the reference time zone implementation. The
actual code will set a pointer to the time zone name here, but for us we
have a limited number of characters to work with, and the name of the
time zone here could be larger than 8 characters.

We can make the assumption that time zone names greater than five
characters in length include a comma that denotes more data. Nintendo
just truncates that data for the name, so we can do the same.

time_zone_manager: Check for length of array

Just to be double sure that we never break past the array length,
directly compare against it.
2023-06-20 15:54:05 -04:00
liamwhite
f1e12e3b08
Merge pull request #10818 from vonchenplus/render_target_samples
video_core: add samples check when find render target
2023-06-20 09:55:23 -04:00
liamwhite
93061d1ea1
Merge pull request #10835 from lat9nq/intel-restrict-compute-disable
vulkan_device: Restrict compute disable only to affected Intel drivers
2023-06-20 09:55:14 -04:00
liamwhite
6d12e7320b
Merge pull request #10840 from Kelebek1/unbug_blinks_brain
Use current GPU address when unmapping GPU pages, not the base
2023-06-20 09:55:01 -04:00
toast2903
78ff2862f6 vulkan_device: Remove brace initializer
Co-authored-by: Tobias <thm.frey@gmail.com>
2023-06-19 17:35:12 -04:00
lat9nq
197e13d93d video_core: Check broken compute earlier
Checks it as the system is determining what settings to enable. Reduces
the need to check settings while the system is running.
2023-06-19 17:33:30 -04:00
Liam
e5f1b22e16 vfs_concat: verify short read 2023-06-19 09:47:05 -04:00
Liam
b0beca52a3 vfs_concat: fix offset calculation when not aligned to file boundary 2023-06-18 22:21:29 -04:00
Kelebek1
711190bb67 Use current GPU address when unmapping GPU pages, not the base 2023-06-19 00:19:50 +01:00
lat9nq
b9a86b040b vk_device_info: Check only affected Intel drivers
Renames is_intel_proprietary to has_broken_compute for accuracy.

vk_device_info: Use vulkan::device to check compute
2023-06-18 16:15:51 -04:00
lat9nq
346c253cd2 video_core: Formalize HasBrokenCompute
Also limits it to only affected Intel proprietrary driver versions.

vulkan_device: Move broken compute determination

vk_device: Remove errant back quote
2023-06-18 16:15:47 -04:00
liamwhite
23371fa187
Merge pull request #10829 from lat9nq/remove-external-mem
vulkan_device: Remove external memory extension
2023-06-18 09:43:03 -04:00
liamwhite
af7f3f078c
Merge pull request #10486 from lat9nq/vk-device-find-once
yuzu-qt: Load Vulkan device info at startup
2023-06-18 09:42:55 -04:00
liamwhite
66b8042b59
Merge pull request #10798 from vonchenplus/draw_texture_scale
video_core: drawtexture support upscale
2023-06-18 09:42:41 -04:00
liamwhite
8acf728d5d
Merge pull request #10809 from Kelebek1/reduce_vertex_bindings
Synchronize vertex buffer even when it doesn't require binding
2023-06-18 09:42:32 -04:00
GPUCode
ee0d68300e renderer_vulkan: Add missing initializers 2023-06-18 14:14:03 +03:00
GPUCode
7b2f680468 renderer_vulkan: Use VMA for buffers 2023-06-18 12:45:18 +03:00
GPUCode
48e39756f1 renderer_vulkan: Use VMA for images 2023-06-18 12:45:18 +03:00
GPUCode
c60eed36b7 memory_allocator: Remove OpenGL interop
* Appears to be unused atm
2023-06-18 12:45:18 +03:00
lat9nq
6448eade2e externals: Add vma and initialize it
video_core: Move vma implementation to library
2023-06-18 12:45:12 +03:00
bunnei
6e293be20b
Merge pull request #10797 from lat9nq/tzdb-patch
time: Various time zone fixes
2023-06-17 23:47:16 -07:00
lat9nq
8a526b2c26 vulkan_device: Remove external memory extension
Unused in yuzu. Enables yuzu to boot games in Wine using Vulkan.
2023-06-18 01:20:08 -04:00
Liam
565a1226d7 renderer_vulkan: add missing include 2023-06-17 23:57:47 -04:00
lat9nq
b99c4dd568 time_zone_service: Always write time zone rule data
Switch firmware will initialize this data even if the given parameters
are invalid. We should do the same.
2023-06-17 20:53:39 -04:00
Morph
c0fd793ef6
Merge pull request #10813 from lat9nq/no-atomic-bool
k_thread: Use a mutex and cond_var to sync bool
2023-06-17 20:29:57 -04:00
Fernando S
27a36cd51b
Merge pull request #10744 from Wollnashorn/af-for-all
video_core: Improved anisotropic filtering heuristics
2023-06-18 00:02:05 +02:00
Kelebek1
e681f5678c Synchronize vertex buffer even when it doesn't require binding 2023-06-17 17:47:00 -04:00
lat9nq
e34e1b1c95 k_thread: Use a mutex and cond_var to sync bool
std::atomic<bool> is broken on MinGW and causes deadlocks there.
Use a normal cond var in its stead.
2023-06-17 15:25:36 -04:00
FengChen
76a676883a video_core: add samples check when find render target 2023-06-17 23:48:51 +08:00
Wollnashorn
3e47ebe2e9 video_core: Only apply AF to 2D (array) image types 2023-06-17 14:20:44 +02:00
Wollnashorn
c309a1c69b video_core: Removed AF for all mip modes option as it's default now 2023-06-17 11:19:39 +02:00
bunnei
ec423c6919
Merge pull request #10783 from liamwhite/memory
video_core: preallocate fewer IR blocks
2023-06-16 16:53:25 -07:00
bunnei
24e1e4dcee
Merge pull request #10808 from t895/settings-stuffs
android: Expose settings
2023-06-16 16:52:54 -07:00
bunnei
975122f4bb
Merge pull request #10807 from t895/ktlint-fixes
android: Ktlint fixes
2023-06-16 16:47:14 -07:00
liamwhite
a1adcc31d3
Merge pull request #10731 from german77/misc_fixes
service: nfc: Accuracy fixes
2023-06-16 18:18:24 -04:00
Liam
94e7cb05da vfs_real: ensure size cache is reset on write 2023-06-16 16:43:14 -04:00
Charles Lombardo
9f92104f3e android: Expose audio output engine setting 2023-06-16 16:42:56 -04:00
Charles Lombardo
330358cd16 android: Bump ktlint version to 0.47.1 2023-06-16 16:32:08 -04:00
Charles Lombardo
fc6a2fe779 android: Disable import-ordering ktlint check 2023-06-16 16:31:49 -04:00
Liam
bf47f777b1 patch_manager: remove unnecessary GetSize calls 2023-06-16 16:29:10 -04:00
Liam
734242c5bc vfs_real: misc optimizations 2023-06-16 16:29:06 -04:00
Charles Lombardo
13a4de647d android: Expose CPU debugging option 2023-06-16 16:25:06 -04:00
Charles Lombardo
3ac2c74e85 android: Expose fastmem option 2023-06-16 16:24:40 -04:00
Charles Lombardo
5aca03d0ff android: Support changing multiple settings at once 2023-06-16 15:49:49 -04:00
Abandoned Cart
c89be0dfab android: Fix aspect ratio when rotating screen 2023-06-16 10:11:18 -04:00
Feng Chen
b77a247e8c video_core: drawtexture support upscale 2023-06-16 20:51:15 +08:00
Wollnashorn
2dc0ff79ec video_core: Use sampler IDs instead pointers in the pipeline config
The previous approach of storing pointers returned by `GetGraphicsSampler`/`GetComputeSampler` caused UB, as these functions can cause reallocation of the sampler slot vector and therefore invalidate the pointers
2023-06-16 13:45:14 +02:00
liamwhite
41295ff8fe
Merge pull request #10795 from german77/foomiibo
input_common: Add foomiibo support
2023-06-16 00:08:30 -04:00
lat9nq
8d8f850bd6 time_zone_manager: Compare to the correct boolean
Reference implementation does not compare the booleans as we had them.
Use the correct ones as in the reference.

Also adds an assert. I have been made aware of a crash here and am
not able to reproduce currently.
2023-06-15 23:05:41 -04:00
lat9nq
03e8d9aca7 nx_tzdb: Correct Antarctica spelling 2023-06-15 23:03:54 -04:00
Charles Lombardo
d0be850f25 android: Apply ktlint codestyle 2023-06-15 22:36:54 -04:00
Charles Lombardo
d85129aa17 Android: Use ktlint for Kotlin code style 2023-06-15 22:22:49 -04:00
Charles Lombardo
a29fa119e0 android: Enable android linting 2023-06-15 22:19:58 -04:00
bunnei
9a04793ae8
Merge pull request #10796 from bunnei/fix-saf
android: fs: Fix Exists / IsFile for SAF.
2023-06-15 18:39:14 -07:00
bunnei
0114abad9a
Merge pull request #10790 from liamwhite/arm-driver-moment
vulkan_device: disable extended_dynamic_state2 on ARM drivers
2023-06-15 18:34:31 -07:00
bunnei
ca1cb9fd19
Merge pull request #10775 from liamwhite/cb2
renderer_vulkan: propagate conditional barrier support
2023-06-15 17:37:03 -07:00
Narr the Reg
0c90a0926f input_common: Add amiibo with originality signature support 2023-06-15 18:22:13 -06:00
bunnei
5384fa4998 android: fs: Fix Exists / IsFile for SAF. 2023-06-15 17:20:56 -07:00
bunnei
3c217a5574
Merge pull request #10639 from 8bitDream/pictureinpicture
android: Support for Picture in Picture / Portrait
2023-06-15 16:40:13 -07:00
Wollnashorn
a3b7b5b22a video_core: Fallback to default anisotropy instead to 1x anisotropy 2023-06-15 23:16:26 +02:00
Wollnashorn
745d16132b video_core: Disable AF for non-color image formats 2023-06-15 20:59:33 +02:00
Wollnashorn
3e8cd91d54 video_core: Fixed compilation errors because of name shadowing 2023-06-15 18:46:40 +02:00
Liam
3304d58edb vulkan_device: disable extended_dynamic_state2 on ARM drivers 2023-06-15 12:29:54 -04:00
Wollnashorn
42c944b250 video_core: Add per-image anisotropy heuristics (format & mip count) 2023-06-15 18:19:32 +02:00
Liam
2c01669046 video_core: preallocate fewer IR blocks 2023-06-14 21:37:57 -04:00
bunnei
ce0510913a
Merge pull request #10729 from liamwhite/windows-is-a-meme
vfs_real: add file LRU cache for open file limits
2023-06-14 18:32:25 -07:00
Narr the Reg
61b4588517 service: nfc: Read tag protocol only for nfc backend 2023-06-14 18:16:23 -06:00
Narr the Reg
b1b13ddc6b service: nfc: Accuracy fixes 2023-06-14 18:08:35 -06:00
Morph
702a2ac631
Merge pull request #10749 from Morph1984/strong-typing
buffer_cache_base: Specify buffer type in HostBindings
2023-06-14 18:03:11 -04:00
Abandoned Cart
0e957c2e35 android: Move overlays to their own layout 2023-06-14 16:43:24 -04:00
Abandoned Cart
e20c4fbbd4 android: Initialize defaults for each orientations 2023-06-14 16:35:58 -04:00
Abandoned Cart
f34535f362 android: Display FPS with emulation on hinge 2023-06-14 16:35:57 -04:00
Abandoned Cart
724823c193 android: Remove PiP reliance on fragment 2023-06-14 16:35:56 -04:00
Abandoned Cart
0b442b6dd2 android: Set layout by fragment, not view 2023-06-14 16:35:54 -04:00
Abandoned Cart
2b5dde162a android: Add a separate foldable layout set 2023-06-14 16:34:23 -04:00
Abandoned Cart
fb28f9fd96 android: Set portrait default control params 2023-06-14 16:34:22 -04:00
Abandoned Cart
eb4026e3db android: Actually implement portrait controls 2023-06-14 16:34:19 -04:00
Abandoned Cart
0ef93541b4 android: Enable automated portrait controls 2023-06-14 16:34:16 -04:00
Abandoned Cart
de9100ea81 android: Add Picture in Picture / Orientation 2023-06-14 16:34:14 -04:00
Charles Lombardo
b79c993328 android: Adapt EmulationActivity to navigation component 2023-06-14 14:55:25 -04:00
Liam
8d6aefdcc4 video_core: optionally skip barriers on feedback loops 2023-06-14 14:11:46 -04:00
Liam
cc4334870b renderer_vulkan: propagate conditional barrier support 2023-06-14 10:49:40 -04:00
Wollnashorn
0de6b9e3f5 video_core: Apply AF only to samplers with normal LOD range [0, 1+x] 2023-06-14 13:27:27 +02:00
Wollnashorn
a9e4dddad5 video_core: Fix default anisotropic heuristic 2023-06-14 11:21:22 +02:00
Wollnashorn
44f616edb9 video_core: Never apply AF to None mipmap mode
Should fix some artifacts with the "apply anisotropic filtering for all mipmap modes" option
2023-06-14 03:57:39 +02:00
Liam
ed7c4af915 vfs_real: require file existence on open 2023-06-13 17:22:47 -04:00
Liam
dbbe237668 vfs_real: add simplified open file cache 2023-06-13 17:16:14 -04:00
bunnei
698a3eda50
Merge pull request #10603 from lat9nq/tz-more-complete
core,common: Implement missing time zone data/computations
2023-06-13 13:28:45 -07:00
Charles Lombardo
190eed8199
Merge pull request #10760 from FearlessTobi/translations
android: Declare languages in locales_config.xml
2023-06-13 15:48:45 -04:00
Wollnashorn
b9bba3ac89 video_core: Disable anisotropic filtering for samplers with depth compare 2023-06-13 21:32:32 +02:00
FearlessTobi
00fe302e60 android: Declare languages in locales_config.xml
This is required to make per-app language swithcing possible on Android 13.
2023-06-13 20:26:45 +02:00
Charles Lombardo
0644c9d6cb
Merge pull request #10751 from german77/touch
android: Fix touch input
2023-06-13 14:01:02 -04:00
bunnei
14d25e2c75
Merge pull request #10747 from liamwhite/arm-interface-decouple
core: decouple ARM interface from Dynarmic
2023-06-13 09:45:09 -07:00
Liam
0e7eaaba5a vfs_real: lazily open files 2023-06-13 10:37:34 -04:00
Liam
f25236a4d6 vfs_real: add file LRU cache for open file limits 2023-06-13 10:37:34 -04:00
german77
322ac1c20c android: Fix touch input 2023-06-13 00:17:10 -06:00
Morph
925586f97b buffer_cache_base: Specify buffer type in HostBindings
Avoid reinterpret-casting from void pointer since the type is already known at compile time.
2023-06-13 00:59:42 -04:00
bunnei
e2f6199225
Merge pull request #10746 from bunnei/update-android-settings
android: Update settings, remove unused translations
2023-06-12 21:15:26 -07:00
Liam
8506915208 core: decouple ARM interface from Dynarmic 2023-06-12 22:11:51 -04:00
Wollnashorn
0eacf547c0 video_core: Option to apply anisotropic filtering for all mipmap modes 2023-06-13 03:21:01 +02:00
liamwhite
e0de6dd63f
Merge pull request #10675 from liamwhite/scaler
image_info: adjust rescale thresholds and refactor constant use
2023-06-12 21:16:36 -04:00
bunnei
bcdd35e8be android: settings: Disable force_max_clock by default. 2023-06-12 17:57:48 -07:00
bunnei
f8a33f85ef android: settings: Add reactive flushing as a default-disabled setting. 2023-06-12 17:56:44 -07:00
bunnei
306ad012c8 android: res: Remove translated strings that no longer exist. 2023-06-12 17:45:02 -07:00
bunnei
f9197f4dae
Merge pull request #10743 from FearlessTobi/translations
android: Add translation files manually
2023-06-12 17:20:27 -07:00
bunnei
9bee930045
Merge pull request #10705 from german77/updates
android: Add update and DLC support
2023-06-12 17:03:44 -07:00
FearlessTobi
26cdd7d980 android: Add translation files manually 2023-06-13 01:00:23 +02:00
bunnei
5144ca8bb6
Merge pull request #10728 from t895/game-hash
android: Use autogenerated hash code function for Game class
2023-06-12 14:45:18 -07:00
bunnei
5a2e0d5b76
Merge pull request #10724 from t895/auto-version-property
android: Use autoVersion when gradle property is set
2023-06-12 13:12:32 -07:00
Matías Locatti
42b2bc204f
Merge pull request #10699 from liamwhite/conditional-barrier
shader_recompiler: remove barriers in conditional control flow when device lacks support
2023-06-12 16:50:59 -03:00
bunnei
ad8f122ab1
Merge pull request #10693 from liamwhite/f64-to-f32
shader_recompiler: translate f64 to f32 when unsupported on host
2023-06-12 12:46:54 -07:00
Narr the Reg
a338de7850 android: Add update support 2023-06-11 23:33:50 -06:00
Morph
333f792e10
Merge pull request #10718 from liamwhite/buffered-io
qt: use larger buffer for update install
2023-06-12 00:58:34 -04:00
Charles Lombardo
eb7ccf5249 android: Use autogenerated hash code function for Game class 2023-06-11 21:15:13 -04:00
Charles Lombardo
5751822e31 android: Use autoVersion when gradle property is set 2023-06-11 20:04:08 -04:00
Baptiste Marie
8e3d4e3396 input_common: Redesign mouse panning 2023-06-12 00:47:52 +02:00
bunnei
569f8d3b44
Merge pull request #10668 from Kelebek1/reduce_vertex_bindings
Combine vertex/transform feedback buffer binding into a single call
2023-06-11 11:33:48 -07:00
bunnei
f4c383392d
Merge pull request #10713 from t895/gradle-updates
android: Gradle updates
2023-06-11 11:31:03 -07:00
Liam
b1081329b9 qt: use larger buffer for update install 2023-06-11 11:43:04 -04:00
Charles Lombardo
92d49ad652 android: Update dependencies 2023-06-11 02:17:29 -04:00
Charles Lombardo
f23a2b514b android: Differentiate build types with new names
Change the applicationIdSuffix and app launcher title based on build type
2023-06-11 02:16:45 -04:00
Charles Lombardo
37e135d74d Android: Remove unused relWithVersionCode build type 2023-06-11 02:15:28 -04:00
Charles Lombardo
16fe64ad0c android: Use ContentResolver to get file extension
Fixes an issue where we try to resolve file extension from URIs. Sometimes the URI will not contain the file name at all and instead a string of numbers. Here we query the content resolver and guarantee that we get a file name every time.
2023-06-11 01:41:58 -04:00
bunnei
ea716eb5cc android: Fix screen orientation & blurriness. 2023-06-10 15:13:06 -07:00
bunnei
6b898c6d69
Merge pull request #10670 from liamwhite/fxaa2
vk_blit_screen: use higher bit depth for fxaa
2023-06-10 14:35:23 -07:00
Liam
2f1e87dd83 shader_recompiler: translate f64 to f32 when unsupported on host 2023-06-10 12:38:49 -04:00
Liam
2bb7ea436d shader_recompiler: remove barriers in conditional control flow when device lacks support 2023-06-10 12:30:39 -04:00
Morph
fa5dfcb712
Merge pull request #10685 from liamwhite/serialization-is-hard
qt: persist framerate sync option
2023-06-10 12:28:00 -04:00
bunnei
f759ff3a5c
Merge pull request #10691 from t895/nro-check
android: Add proper homebrew check
2023-06-09 23:59:51 -07:00
Charles Lombardo
72d9dc9a3f android: Add proper homebrew check 2023-06-09 20:17:51 -04:00
Charles Lombardo
3cce51d25b android: Fix input overlay version check 2023-06-09 15:15:57 -04:00
liamwhite
4d395b3b72
Merge pull request #10614 from xcfrg/shader-backend-status-bar
yuzu: add opengl shader backend info in status bar
2023-06-09 09:46:11 -04:00
Liam
5a0d4e1d38 qt: persist framerate sync option 2023-06-09 09:40:34 -04:00
liamwhite
b3e2c9f9f1
Merge pull request #10623 from german77/backup
service: nfc: Add backup support
2023-06-08 21:54:12 -04:00
liamwhite
2a1acbfb4d
Merge pull request #10666 from liamwhite/my-framerate-is-fine
nvnflinger: allow locking framerate during video playback
2023-06-08 21:53:57 -04:00
liamwhite
a57150afbd
Merge pull request #10676 from bunnei/fix-mi-5-android
android: EmulationActivity: Fix orientation on Mi Pad 5.
2023-06-08 21:53:51 -04:00
bunnei
064bad6ddf android: EmulationActivity: Fix orientation on Mi Pad 5. 2023-06-08 17:20:13 -07:00
Tokarev Artem
007c3fa7df Fix potentially uninitialized local variable warning 2023-06-09 05:12:22 +05:00
Liam
05b66877d1 image_info: adjust rescale thresholds and refactor constant use 2023-06-08 17:46:40 -04:00
Liam
74671186bf vk_blit_screen: use higher bit depth for fxaa 2023-06-08 11:27:57 -04:00
Kelebek1
ace6c2318b Combine vertex/transform feedback buffer binding into a single call 2023-06-08 12:13:27 +01:00
Liam
6c34adb1de nvnflinger: allow locking framerate during video playback 2023-06-08 01:15:51 -04:00
Morph
3e6d81a008 nvdisp: Fix SingleCore frametime reporting 2023-06-07 22:04:02 -04:00
Morph
2e1e725443 core_timing: Fix SingleCore cycle timer 2023-06-07 21:44:42 -04:00
Morph
907507886d (wall, native)_clock: Add GetGPUTick
Allows us to directly calculate the GPU tick without double conversion to and from the host clock tick.
2023-06-07 21:44:42 -04:00
Morph
9dcc7bde8b time: Use compile time division for TimeSpanType conversion 2023-06-07 21:44:42 -04:00
Morph
8e56a84566 core_timing: Use CNTPCT as the guest CPU tick
Previously, we were mixing the raw CPU frequency and CNTFRQ.
The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available.
2023-06-07 21:44:42 -04:00
Morph
bbd502f67a nvnflinger: Acquire lock prior to signaling the vsync variable 2023-06-07 21:44:42 -04:00
Morph
1492a65454 (wall, native)_clock: Rework NativeClock 2023-06-07 21:44:42 -04:00
Morph
dd12dd4c67 x64: Deduplicate RDTSC usage 2023-06-07 21:44:42 -04:00
bunnei
9c6fc44a59
Merge pull request #10650 from qurious-pixel/android_tv
Android TV banner
2023-06-07 16:32:25 -07:00
qurious-pixel
45f80f2b06
remove version code declaration 2023-06-07 13:27:51 -07:00
liamwhite
86cbd867d2
Merge pull request #10655 from Morph1984/msvc-cxx20
CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modules
2023-06-07 14:04:25 -04:00
liamwhite
5c79a07a36
Merge pull request #10635 from mrcmunir/l4t-tx1-nvidia
Make VK_EXT_robustness2 optional
2023-06-07 14:04:14 -04:00
liamwhite
cfb76d8f3e
Merge pull request #10476 from ameerj/gl-memory-maps
OpenGL: Make use of persistent buffer maps in buffer cache
2023-06-07 14:03:57 -04:00
liamwhite
6907d30258
Merge pull request #10583 from ameerj/ill-logic
AccelerateDMA: Fix incorrect check in Buffer<->Texture copies
2023-06-07 14:03:40 -04:00
liamwhite
219bd90152
Merge pull request #10591 from keve1227/localized-game-icons
Localize game icons
2023-06-07 14:03:28 -04:00
Morph
f62f43c0da CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modules
The latest version of MSVC STL brings C++23 standard library modules, which conflict with precompiled headers.
Disabling with /experimental:module- has no effect, so force C++20 in the meantime while we wait for module support in other compilers.
2023-06-06 20:20:09 -04:00
german77
107aa52cdb service: nfc: Add backup support 2023-06-06 17:06:21 -06:00
Live session user
9611a9e220 Android TV banner 2023-06-06 11:32:25 -07:00
Narr the Reg
4d61319307 android: Set version code 2023-06-06 12:14:38 -06:00
Carlos Estrague / Mrc_munir
b854981917
Updated to lexicographical order suggestions 2023-06-06 19:33:52 +02:00
Abandoned Cart
0968e315f4 android: Improve Gradle build configuration 2023-06-06 12:46:21 -04:00
lat9nq
013c34cb32 vk_device_info: Clean up includes [IWYU] 2023-06-06 01:54:44 -04:00
lat9nq
f9fc996083 vk_device_info: Add SPDX data 2023-06-06 01:54:44 -04:00
lat9nq
fc0c4db20d yuzu-qt: Load Vulkan device info at startup
Loading it when the configuration opens now incurs a noticeable delay.
We also don't need to rediscover the same data repeatedly each time the
configuration opens.

Moves vulkan device info discovery to yuzu's startup as opposed to the
configure_graphics constructor.
2023-06-06 01:54:44 -04:00
bunnei
069d7e6be4 android: audio_core: sink_stream: Remove unnecessary check. 2023-06-05 21:47:36 -07:00
bunnei
cb95d7fe1b
Merge pull request #10508 from yuzu-emu/lime
Project Lime - yuzu Android Port
2023-06-05 21:43:43 -07:00
Carlos Estrague / Mrc_munir
19d05bd4d7
Make VK_EXT_robustness2 optional
For some reason nvidia implemented Vulkan 1.2 supported without support for VK_EXT_robustness2 in tegra X1/X2 .

Fix vulkan work in TX1/TX2  L4T drivers .
2023-06-06 06:32:47 +02:00
bunnei
036996429e
Merge pull request #10633 from t895/variable-surface-ratio
android: Use a custom view for changing emulation aspect ratio
2023-06-05 20:27:58 -07:00
bunnei
dc2a0b2e50
Merge pull request #10578 from PabloG02/lime-firmware&logs
Add UI to import firmware and share logs
2023-06-05 17:41:19 -07:00
bunnei
e1078ec0f4 android: HomeSettingsFragment: Use string resource for "Share log". 2023-06-05 17:40:43 -07:00
Charles Lombardo
c8b91b3a89 android: Use a custom view for changing emulation aspect ratio
Credit to the Skyline team for the FixedRatioSurfaceView.
2023-06-05 20:24:36 -04:00
bunnei
db7b106f1d
Merge pull request #10611 from liamwhite/audio-deadlock
audio_renderer: resolve adsp thread deadlock shutdown
2023-06-05 17:15:19 -07:00
bunnei
71766f3269
Merge pull request #10618 from t895/licenses
android: Add licenses page
2023-06-05 17:14:15 -07:00
PabloG02
409ff26f02 Address feedback 2023-06-06 00:07:54 +02:00
lat9nq
8f9afbcd91 tz_manager: Fix comparison to wrong integer 2023-06-05 15:15:23 -04:00
lat9nq
3218313c22 tz_manager: Implement missing transition times
time_zone_manager: Use s64 storage
2023-06-05 15:15:23 -04:00
lat9nq
78a47f1ee8 tz_manager: Warn on unimplemented code 2023-06-05 15:15:23 -04:00
lat9nq
dea61f5d00 tz_manager: Fix character offset not advancing 2023-06-05 15:15:23 -04:00
lat9nq
63c51abe42 tz_manager: Fix off-by-one error 2023-06-05 15:15:23 -04:00
lat9nq
de1fe66d81 time_zone: Handle offset time zones
time_zone: Remove maybe_unused

time_zone: Use s64 storages

time_zone: Catch by reference
2023-06-05 15:15:23 -04:00
lat9nq
84642bdd3f time_zone_binary: Add zoneinfo data
Adds the basic time zone data for the system archive.

time_zone_binary: Implement full system archive

time_zone_binary: Remove unneeded template

tz_binary: Make GenerateFiles static
2023-06-05 15:15:23 -04:00
Narr the Reg
a40e0fdf9e time: Implement missing services
Implements GetTotalLocationNameCount LoadLocationNameList and
GetTimeZoneRuleVersion.

tz-manager: Fix sign issue
2023-06-05 15:15:11 -04:00
lat9nq
8d52dc163a time_zone_manager: Implement go_ahead/go_back 2023-06-05 15:15:11 -04:00
lat9nq
5d9dd88387 tz_content_manager: Try the system time zone first
If we can't find the normal time zone string, try searching for the
closest one.
2023-06-05 15:15:11 -04:00
lat9nq
3979c7daa4 common: Move system time zone string detection
Moves it from Settings to Common::TimeZone, since this algorithm doesn't
depend on the setting. It also lets us use it in other libraries.

common: Various fixes

time_zone: Don't double up the std::abs

Too many absolute values were causing mirrored time zones to resolve
as the same.
2023-06-05 15:15:11 -04:00
lat9nq
011438fa95 configure_system: Remove external offset on custom rtc 2023-06-05 15:15:11 -04:00
lat9nq
a39b9134db time: Remove auto timezone consideration
GetTimeZoneString no longer reports a setting unique to yuzu, so we
can assume a valid timezone string in core.
2023-06-05 15:15:11 -04:00
lat9nq
3e68a284ae settings: Always report a valid time zone
Prevents needing to deduce the non-Switch setting in core. Instead, we
deduce the meaning of this setting where the heresy is committed, in
common.

settings: Remove strftime usage

GetTimeZoneString: Use standard features

Also forces GMT on MinGW due to broken strftime.
2023-06-05 15:15:11 -04:00
lat9nq
9e2164be74 time_manager: Don't offset RTC by system time zone
This causes the emulated system's universal time to be on the user's clock, and the user time to
be off if they set a time zone.

time_manager: Remove GetExternalRtcTime
2023-06-05 15:15:11 -04:00
lat9nq
c378cbbc2d tz_content_manager: Detect system time zone
Uses C++20 tzdb to determine the system timezone. The switch uses the
597 posix time zones, so this needs tests if the system time zone isn't
posix-compliant.
2023-06-05 15:15:11 -04:00
Charles Lombardo
cba5865afe android: Create licenses page 2023-06-05 14:34:23 -04:00
bunnei
2f7658bd75
Merge pull request #10613 from t895/settings-changes
android: String and settings organization changes
2023-06-04 19:17:42 -07:00
Charles Lombardo
5e58af0616 android: Move settings to debug submenu 2023-06-04 19:53:27 -04:00
Charles Lombardo
0078f97227 android: Load settings at the start of each activity 2023-06-04 19:37:10 -04:00
xcfrg
a64ad8315f
yuzu: add opengl shader backend info in status bar 2023-06-04 17:24:30 -04:00
bunnei
e6fce1cbbd
Merge pull request #10594 from liamwhite/double-patch
fsp-srv: avoid patching romfs multiple times
2023-06-04 13:24:47 -07:00
PabloG02
3733187c14 Attempt to move the unzip coroutine to a ViewModel 2023-06-04 20:52:12 +02:00
PabloG02
72597b8ffe android: update strings 2023-06-04 20:52:12 +02:00
PabloG02
8713c442e9 android: add option to share log 2023-06-04 20:52:12 +02:00
PabloG02
5435f0be5e android: add option to install firmware 2023-06-04 20:52:12 +02:00
PabloG02
19674ec78d android: move unzip function to FileUtil and use SecurityException 2023-06-04 20:50:00 +02:00
Charles Lombardo
5de8c5b5c7 android: Several string changes 2023-06-04 13:30:56 -04:00
Liam
e96a3a1713 audio_renderer: resolve adsp thread deadlock shutdown 2023-06-04 13:00:10 -04:00
bunnei
125a0e5a07
Merge pull request #10588 from liamwhite/vfs-cached
vfs: add vfs_cached for romfs build
2023-06-03 23:23:45 -07:00
Abandoned Cart
00a391ce10 android: Resolve a couple Gradle warnings 2023-06-04 02:06:38 -04:00
Abandoned Cart
cfa8bec5b9 android: Add support for split foldable view 2023-06-03 22:57:28 -04:00
Kevin Sundqvist Norlén
a2cfe3749a
Fix typo
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2023-06-03 21:31:44 +02:00
Abandoned Cart
b394a6b937 android: Replace deprecated and Java code 2023-06-03 15:16:25 -04:00
Liam
a75bc759fe fsp-srv: avoid patching romfs multiple times 2023-06-03 14:27:08 -04:00
Keve1227
a0f235f4fd
Update Chinese NX language names
... as per the TLoZ: TotK icon files. Would this conflict with older games?
2023-06-03 17:23:14 +02:00
Keve1227
27313fe576
Issue a reload if the system language changed 2023-06-03 17:17:03 +02:00
Keve1227
d0aa63069f
Pick game icon based on the configured system language 2023-06-03 17:13:24 +02:00
Liam
6e23c84669 romfs: use vfs_cached for romfs output 2023-06-03 08:56:59 -04:00
Liam
790f91fcc5 vfs: add vfs_cached for romfs build 2023-06-03 08:50:54 -04:00
Charles Lombardo
a789046127 android: Fix crash on importing invalid save 2023-06-03 00:06:08 -07:00
bunnei
db6737f2ba android: vk_presentation_manager: Fix unusued needs_recreation. 2023-06-03 00:06:08 -07:00
Charles Lombardo
f94eb320ff android: Rename "Input Overlay" to "Overlay Options" 2023-06-03 00:06:08 -07:00
Charles Lombardo
c927a30d09 android: Adjust import/export saves dialog 2023-06-03 00:06:08 -07:00
Charles Lombardo
20abd49a21 android: Warning dialogs for key errors 2023-06-03 00:06:08 -07:00
bunnei
df70fdc95b android: vk_turbo_mode: Remove unnecessary device recreation.
- Fixes a rare crash.
2023-06-03 00:06:08 -07:00
bunnei
4ac9778652 android: EmulationFragment: Remove unnecessary surface destroy on pause. 2023-06-03 00:06:08 -07:00
bunnei
098e2c4077 android: renderer_vulkan: Fix crash with surface recreation. 2023-06-03 00:06:07 -07:00
bunnei
057117f009 android: Fix presentation layout on foldable and tablet devices. 2023-06-03 00:06:07 -07:00
Charles Lombardo
ca4b07a2d7 android: Enable overlay scale/opacity dialog 2023-06-03 00:06:07 -07:00
PabloG02
1957b7e6cc Add image to card_game.xml to preview in the Layout Editor 2023-06-03 00:06:07 -07:00
PabloG02
a7e0a0d5b1 Save the position of buttons as a percentage 2023-06-03 00:06:07 -07:00
Charles Lombardo
8e8627a258 android: Don't crash the app when selecting a zip that causes a SecurityException 2023-06-03 00:06:07 -07:00
bunnei
eb4ab9bc58 input_common: Fix virtual amiibos 2023-06-03 00:06:06 -07:00
bunnei
40e938376b android: audio_core: Avoid shutdown hang. 2023-06-03 00:06:06 -07:00
bunnei
9ca8687b5f android: ForegroundService: Handle null intent. 2023-06-03 00:06:06 -07:00
bunnei
17ae85e724 android: ImportExportSavesFragment: Cleanup strings. 2023-06-03 00:06:06 -07:00
bunnei
b325ad16bc Update src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/ImportExportSavesFragment.kt 2023-06-03 00:06:06 -07:00
PabloG02
4010764279 Remove ?. 2023-06-03 00:06:06 -07:00
PabloG02
9650c1d02d Check if folder exists before letting the user import/export saves 2023-06-03 00:06:06 -07:00
PabloG02
33d36ded28 Add save import/export in UI 2023-06-03 00:06:06 -07:00
Charles Lombardo
ad9c2356a8 android: Fix FPS text getting cut off by rounded display corners 2023-06-03 00:06:05 -07:00
Charles Lombardo
fdd200d33f android: Prevent deleting the settings file while a game is running 2023-06-03 00:06:05 -07:00
Charles Lombardo
4e87a01db6 android: Fix link text color for base theme dialog 2023-06-03 00:06:05 -07:00
bunnei
ee8caac82f android: Various fixes for CI. 2023-06-03 00:06:05 -07:00
bunnei
17b5ed9baf android: externals: Update libadrenotools, use useLegacyPackaging. 2023-06-03 00:06:05 -07:00
Charles Lombardo
0f9c5b8d6a android: Re-enable service notification 2023-06-03 00:06:05 -07:00
Charles Lombardo
09747ca2d3 android: Ensure keys are loaded before populating games list 2023-06-03 00:06:05 -07:00
Charles Lombardo
897b748895 android: Use dialog fragment for the reset settings dialog 2023-06-03 00:06:05 -07:00
Charles Lombardo
9c1d42342d android: Upgrade AGP to 8.0.2 2023-06-03 00:06:04 -07:00
Charles Lombardo
7de86266fd android: Show notification permission page during setup 2023-06-03 00:06:04 -07:00
Charles Lombardo
419daf770d android: DIsable FPS counter by default 2023-06-03 00:06:04 -07:00
Charles Lombardo
bfb4e3bcaa android: Improve searches with one character
The Jaccard algorithm is great for searches with 2 or more characters but nothing is returned for searches with one character. To get around this, just search with JaroWinkler for single character searches.
2023-06-03 00:06:04 -07:00
Charles Lombardo
0cbae33790 android: Stop building x86 packages in APKs
This was really only meant for building the app to run in an emulator. If this is necessary, just add manually.
2023-06-03 00:06:04 -07:00
Charles Lombardo
d49eb7faad android: Add FPS toggle 2023-06-03 00:06:04 -07:00
Charles Lombardo
8426e97f45 android: Clean up app build.gradle
Removes the conflicting declaration of "version" and changes to versionCode that did nothing.
2023-06-03 00:06:04 -07:00
bunnei
cf9f4f67dd video_core: vk_rasterizer: Decrease draw dispatch count for Android. 2023-06-03 00:06:04 -07:00
bunnei
b4725332a2 android: config: Expose VSync as a configurable setting. 2023-06-03 00:06:04 -07:00
bunnei
f0ed20c8a2 android: GPU: Enable async presentation, increase frames in flight. 2023-06-03 00:06:03 -07:00
Charles Lombardo
116e2b5f02 android: Enable onBackInvokedCallback
For now this enables the ability to see the new Android 13 back gesture animations but later we can create custom animations that follow the back gesture.
2023-06-03 00:06:03 -07:00
Charles Lombardo
7812de4ade android: Remove deprecated use of onBackPressed() 2023-06-03 00:06:03 -07:00
Charles Lombardo
ffba83d568 android: Add option for touch overlay haptics
Disabled by default
2023-06-03 00:06:03 -07:00
Charles Lombardo
5dbf842a46 android: Improve missing game handling
Previously the app would crash if you selected a game that no longer existed. Now we show an error message and reload the games list to remove any invalid games from the list.
2023-06-03 00:06:03 -07:00
Charles Lombardo
c11c5b2eb7 android: Clean up dependencies
Additionally updates material and androidx core libraries
2023-06-03 00:06:03 -07:00
Charles Lombardo
a10b1c8ef5 android: Delete java code style file 2023-06-03 00:06:03 -07:00
Charles Lombardo
e42c966110 android: Settings UI tweaks
New spacing and fonts for list items
2023-06-03 00:06:03 -07:00
Charles Lombardo
412c95e0b0 android: Simplify setup in search and games fragments 2023-06-03 00:06:03 -07:00
Charles Lombardo
aa8a48e94c android: Use collapsing toolbar layout in settings 2023-06-03 00:06:03 -07:00
Charles Lombardo
b31ab11842 android: Remove unnecessary JvmStatic/JvmField annotations 2023-06-03 00:06:02 -07:00
Charles Lombardo
8d3288b6ff android: Fix navigation rail animation in rtl layout 2023-06-03 00:06:02 -07:00
Charles Lombardo
c930b2bad2 android: Use cutout insets on setup fragment 2023-06-03 00:06:02 -07:00
Charles Lombardo
ee57aa83a4 android: Button to reset all settings 2023-06-03 00:06:02 -07:00
Charles Lombardo
0f06e73a7c android: Use proguard file in relWithDebInfo 2023-06-03 00:06:02 -07:00
Charles Lombardo
a0a0703f30 android: Fix background color within inset areas 2023-06-03 00:06:02 -07:00
Charles Lombardo
070d250858 android: Shortcut to settings activity on reselection 2023-06-03 00:06:01 -07:00
Charles Lombardo
c31a37c828 android: Expose custom RTC setting 2023-06-03 00:06:01 -07:00
Charles Lombardo
f7934bdaf7 android: Reset setting on long press 2023-06-03 00:06:01 -07:00
Charles Lombardo
2289f7ad15 android: Fix issues with ea/main icons and version codes
Now all yuzu icon variants are taken care of and now we have a build variant that uses the versioning we need for the play store.
2023-06-03 00:06:01 -07:00
Charles Lombardo
5213701e18 android: Move theme options out of advanced settings 2023-06-03 00:06:01 -07:00
Charles Lombardo
bafd4d344f android: Check if cached games are valid
Fixes bug when you close yuzu, delete games, and reopen to an instant crash.
2023-06-03 00:06:01 -07:00
german77
aa957df0dc android: Invert rotation to match phone orientation 2023-06-03 00:06:01 -07:00
bunnei
5d43594a70 android: vulkan_device: Skip BGR565 emulation on S8gen2. 2023-06-03 00:06:01 -07:00
bunnei
1a424ea6c6 android: config: Use default anisotropic filtering. 2023-06-03 00:06:01 -07:00
Charles Lombardo
41c20f8460 android: Remove top padding from in game menu items 2023-06-03 00:06:00 -07:00
Charles Lombardo
ec81c6cf44 android: Use different icons for mainline/ea 2023-06-03 00:06:00 -07:00
Charles Lombardo
f69bc78dc5 android: Add early access upgrade fragment
We now have a second build flavor that will determine whether the "Get Early Access" button appears.
2023-06-03 00:06:00 -07:00
bunnei
8b8123b733 android: vulkan_device: Only compile OverrideBcnFormats when used. 2023-06-03 00:06:00 -07:00
Liam
6b2e89a865 android: remove spurious warnings about BCn formats when patched with adrenotools 2023-06-03 00:06:00 -07:00
bunnei
befd477279 android: video_core: Disable some problematic things on GPU Normal. 2023-06-03 00:06:00 -07:00
bunnei
6b093224c1 android: settings: Use mailbox vsync by default. 2023-06-03 00:06:00 -07:00
bunnei
8dc7fe0c96 android: video_core: Disable problematic compute shaders.
- Fixes #104.
2023-06-03 00:06:00 -07:00
Charles Lombardo
1c9dae7cac android: Update progard to fix settings crash
R8 full mode was removing important classes from Wini that would cause a crash on saving settings. This keeps the relevant classes and suppresses warnings about irrelevant ones.
2023-06-03 00:05:59 -07:00
bunnei
117bc2ae6c android: vulkan: Recreate surface after suspension & adapt to async. presentation. 2023-06-03 00:05:59 -07:00
Charles Lombardo
65dc35a1a5 android: Game data cache 2023-06-03 00:05:59 -07:00
Charles Lombardo
b0bef6173a android: Update to Kotlin 1.8.21 2023-06-03 00:05:59 -07:00
Charles Lombardo
c16e663f70 android: Disable jetifier
We no longer depend on any legacy libraries that required this flag
2023-06-03 00:05:59 -07:00
Charles Lombardo
d8bacdfc14 android: Update dependencies 2023-06-03 00:05:59 -07:00
Charles Lombardo
56d3711e34 android: Migrate to AGP 8.0.1 2023-06-03 00:05:59 -07:00
Charles Lombardo
48065c7a0e android: Enable non-transitive R classes
New default going forward for new android projects. Best to follow the new standard.
2023-06-03 00:05:59 -07:00
bunnei
570c4a2c1b android: config: Enable asynchronous presentation by default on Android. 2023-06-03 00:05:59 -07:00
bunnei
ca4bf3844e video_core: Enable support_descriptor_aliasing on Turnip, disable storage atomic otherwise. 2023-06-03 00:05:58 -07:00
german77
e5bdb7011b android: fix deadzone calculation 2023-06-03 00:05:58 -07:00
Charles Lombardo
13b29c3f49 android: Fix background color when starting emulation 2023-06-03 00:05:58 -07:00
Charles Lombardo
34b7d58157 android: Persistent scrollbars on home settings fragment 2023-06-03 00:05:58 -07:00
Charles Lombardo
f461465a92 android: Use short build hash 2023-06-03 00:05:58 -07:00
Charles Lombardo
86e395595a android: Use navigation bar shade view 2023-06-03 00:05:58 -07:00
Charles Lombardo
21e8a8277a android: About fragment 2023-06-03 00:05:58 -07:00
Charles Lombardo
09e7b14d0e android: Use x-axis animation for navigation rail 2023-06-03 00:05:58 -07:00
Charles Lombardo
03541703fa android: Sort games alphabetically by default 2023-06-03 00:05:58 -07:00
Charles Lombardo
9f433e281a android: New icons for navigation bar 2023-06-03 00:05:57 -07:00
Charles Lombardo
efc054e47f android: New icons for home settings fragment 2023-06-03 00:05:57 -07:00
Charles Lombardo
9f6f21946c android: Add navigation rail 2023-06-03 00:05:57 -07:00
Charles Lombardo
6df030998a android: Search Fragment 2023-06-03 00:05:57 -07:00
Charles Lombardo
3281dc597e android: Fix potential zip traversal exploit 2023-06-03 00:05:57 -07:00
german77
d1fb7ea58b android: Add dedicated show overlay checkbox 2023-06-03 00:05:57 -07:00
Charles Lombardo
912bf6a0c6 android: Add user directory shortcut 2023-06-03 00:05:57 -07:00
german77
265b9139e0 android: Fix inline keyboard input 2023-06-03 00:05:57 -07:00
Charles Lombardo
7131432037 android: Fix grammatical mistake in video core error message 2023-06-03 00:05:56 -07:00
Charles Lombardo
4bb82e4860 android: Adjust wording on GPU driver install button 2023-06-03 00:05:56 -07:00
Narr the Reg
c46a1da5dc android: Add deadzone to stick input 2023-06-03 00:05:56 -07:00
german77
166bff88b8 android: Move motion listener to emulation activity 2023-06-03 00:05:56 -07:00
Narr the Reg
5c1310dc5d core: hid: Finish linking motion from virtual controllers 2023-06-03 00:05:56 -07:00
Charles Lombardo
d015b0db93 android: Change wording for "Add Games" button (#100)
Co-authored-by: bunnei <bunneidev@gmail.com>
2023-06-03 00:05:56 -07:00
Charles Lombardo
0d16805445 android: Scroll shortcut for games list
If you reselect the "Games" menu item in the bottom navigation menu, the list smoothly scrolls to the top.
2023-06-03 00:05:56 -07:00
Charles Lombardo
274b2be24f android: Setup screen hotfix
Added help button link for add games warning and a check for whether a task was completed on a given screen.
2023-06-03 00:05:56 -07:00
Charles Lombardo
792ce5cb2f android: Swap Default and Install buttons for GPU driver installation dialog 2023-06-03 00:05:56 -07:00
Charles Lombardo
72247a2324 android: Add warnings to setup screens 2023-06-03 00:05:56 -07:00
Charles Lombardo
71667e4d6d android: Allow search bar to scroll offscreen 2023-06-03 00:05:55 -07:00
Charles Lombardo
3b9791d887 android: Update app icon
Small icon updates from Flam
2023-06-03 00:05:55 -07:00
Charles Lombardo
c070a588b9 android: Change organization of the settings tab in the home screen 2023-06-03 00:05:55 -07:00
Charles Lombardo
c29f14fa0f android: Properly pop setup fragment from the back stack 2023-06-03 00:05:55 -07:00
Charles Lombardo
f41939b66e android: Vertically scalable setup pages
Previously the setup pages would remain at a fixed height but now the icon and two text boxes will give up space as a device gets shorter. This eliminates the need for a scrolling view further problems with padding.
2023-06-03 00:05:55 -07:00
Charles Lombardo
48c506682d android: Fix setup rotation bug
If you rotated the device at the "Add Games" screen the buttons would disappear until you trigged them from the beginning page swap. Now button state is saved across recreation.
2023-06-03 00:05:55 -07:00
Charles Lombardo
61e0042633 android: Temporarily switch for a fixed version code for testing 2023-06-03 00:05:55 -07:00
Charles Lombardo
986f858e6f android: Fix alignment of SwipeRefreshLayout 2023-06-03 00:05:55 -07:00
Charles Lombardo
388dc0757f android: Shape/spacing adjustments to game card
Ripple effect now reaches into rounded corners, icon size changed, company text removed, title font adjusted, and spacing around the card was adjusted as well. Text also doesn't get cut off anymore and instead scrolls indefinitely on one line.
2023-06-03 00:05:55 -07:00
Charles Lombardo
f984775f12 android: Manual tweaks for dialog colors
Small fix for Flam
2023-06-03 00:05:54 -07:00
Charles Lombardo
f2cadc4ce1 android: Fix black backgrounds bug
Start using a specific night mode check because black backgrounds could apply incorrectly when using the light app mode, dark system mode, and black backgrounds. Launching the settings activity will show light mode colors/navigation bars but with black backgrounds.
2023-06-03 00:05:54 -07:00
Charles Lombardo
033adb9723 android: Use navigation bar shade view for settings activity 2023-06-03 00:05:54 -07:00
Charles Lombardo
cfa3d73f2f android: Disable editing themes during emulation 2023-06-03 00:05:54 -07:00
Charles Lombardo
62c47011a0 android: Prevent situation where binding is called on a null view 2023-06-03 00:05:54 -07:00
Charles Lombardo
d7178ed16e android: Add black backgrounds toggle 2023-06-03 00:05:54 -07:00
Charles Lombardo
d9684a2010 android: Add theme mode picker 2023-06-03 00:05:54 -07:00
Charles Lombardo
f0ba58f5aa android: Add theme picker 2023-06-03 00:05:54 -07:00
Charles Lombardo
5b26ac9293 android: Prevent potential abstract settings crash 2023-06-03 00:05:54 -07:00
Charles Lombardo
b6f57da70a android: Fix cast for abstract settings 2023-06-03 00:05:54 -07:00
Charles Lombardo
7531641ecc android: Create xml for Material You theme 2023-06-03 00:05:54 -07:00
Charles Lombardo
89593d70bf android: Remove check for API 29 in themes 2023-06-03 00:05:53 -07:00
Charles Lombardo
8cef21a0b0 android: Adjustments to home option card
Several spacing/color adjustments provided by Flam
2023-06-03 00:05:53 -07:00
Charles Lombardo
a82f8fe1c1 android: Use different colors for logo in options menu
Reverting to the official logo colors
2023-06-03 00:05:53 -07:00
Charles Lombardo
9673974f73 android: New default theme colors 2023-06-03 00:05:53 -07:00
Charles Lombardo
6549348656 android: Use libnx default icon
Credit to jaames for the original icon
2023-06-03 00:05:53 -07:00
Liam
8b4c5a9939 android: enable LTO 2023-06-03 00:05:53 -07:00
Charles Lombardo
83dae1739c android: Show error if invalid keys file is selected
There aren't MIME types specific enough for filtering out files that aren't amiibo or production keys. So here we just check for the extensions "bin" or "keys" where appropriate and stop the process if incorrect. Previously you could select any document and it could cause the app to hang.
2023-06-03 00:05:53 -07:00
Charles Lombardo
d8c102444c android: Fix first time setup scrolling bug
If you quickly scrolled from the second page to the first and then back, the next/back buttons would disappear.
2023-06-03 00:05:53 -07:00
Charles Lombardo
45d81dc6bd android: Fix A button preference key 2023-06-03 00:05:53 -07:00
Charles Lombardo
59525ddbeb android: First time setup screen 2023-06-03 00:05:52 -07:00
Charles Lombardo
766655fa41 android: Prevent editing unsafe settings at runtime
There currently isn't a visual "disabled" cue for any of the view holders that aren't the switch setting. This will be improved in the future.
2023-06-03 00:05:52 -07:00
Charles Lombardo
c609847e49 android: Abstract settings
Previously we could only add settings that would change our ini file. Now we can create abstract settings in our presenter to alter things like shared preferences for theme support!
2023-06-03 00:05:52 -07:00
german77
6dfe4240ac android: Implement gamepad input 2023-06-03 00:05:52 -07:00
Charles Lombardo
f5c48f92f2 android: Bump minimum version to Android 11 2023-06-03 00:05:52 -07:00
Charles Lombardo
9c9d9131b5 android: Decouple status bar shade from navigation bar visibility 2023-06-03 00:05:52 -07:00
Charles Lombardo
d57ae50f17 android: Enable code minification 2023-06-03 00:05:52 -07:00
Charles Lombardo
921e6dddcc android: Switch from a colored status bar to a custom view
Allows for smoother transitions with the search bar
2023-06-03 00:05:52 -07:00
Charles Lombardo
3f2b832371 android: Adjustments to card_game
Removed a currently unused text view and moved to material text views.
2023-06-03 00:05:51 -07:00
Charles Lombardo
233ae9ab69 android: MainActivity overhaul
This moves several parts of the main activity into fragments that manage themselves to react to changes. UI changes like the appearance of a new search view or when the games list changes now gets updated via multiple view models. This also starts a conversion to the androidx navigation component which furthers the goals mentioned previously with more fragment responsibility. This will eventually allow us to use one activity with interchanging fragments and multiple view models that are stored within that central activity.

fdas
2023-06-03 00:05:51 -07:00
Charles Lombardo
859c40f00e android: Enforce Vulkan 1.1 support as minimum 2023-06-03 00:05:51 -07:00
Charles Lombardo
e5487243d3 android: Update gradle version to 8.1 2023-06-03 00:05:51 -07:00
Charles Lombardo
b1ebc1c395 android: Update app dependencies 2023-06-03 00:05:51 -07:00
Charles Lombardo
ab87f74998 android: Convert gradle scripts to Kotlin DSL 2023-06-03 00:05:51 -07:00
bunnei
12c9e18b55 android: vulkan: Disable vertex_input_dynamic_state on Qualcomm. 2023-06-03 00:05:51 -07:00
bunnei
d2e55558df android: settings: Add scaling filter & anti-aliasing options. (#66) 2023-06-03 00:05:50 -07:00
bunnei
4006468f73 android: video_core: Add support for disk shader cache. (#64) 2023-06-03 00:05:50 -07:00
bunnei
6d2e7de2e0 android: vulkan_debug_callback: Ignore many innocuous errors. 2023-06-03 00:05:50 -07:00
bunnei
30bf5d5b07 android: config: Change docked mode and GPU accuracy to favor performance on Android. 2023-06-03 00:05:50 -07:00
german77
dc52152a81 service: account: Save user profile folder on first user creation 2023-06-03 00:05:50 -07:00
german77
f9974f7ef3 android: Initialize account manager 2023-06-03 00:05:50 -07:00
german77
5aec62930c android: Remove unsafe null check 2023-06-03 00:05:50 -07:00
Charles Lombardo
78f02ab9a6 android: Scale input overlay independently of system display scale 2023-06-03 00:05:50 -07:00
Charles Lombardo
aeaddf407b android: Use apply instead of commit for shared preferences
Previously we were operating on the assumption that apply'd settings wouldn't be visible immediately. This isn't true and settings will be accessible via memory before being stored to disk. This reduces any potential stutters caused by saving to shared preferences.
2023-06-03 00:05:50 -07:00
Charles Lombardo
fcbf08ca98 android: Add DPad slide toggle 2023-06-03 00:05:50 -07:00
Charles Lombardo
bebc822334 android: Add relative stick center toggle 2023-06-03 00:05:49 -07:00
Charles Lombardo
63819af214 android: Make hash and branch accessible from BuildConfig 2023-06-03 00:05:49 -07:00
Charles Lombardo
f5055ca930 android: Backup shared preferences where applicable 2023-06-03 00:05:49 -07:00
Charles Lombardo
940dbdcff2 android: Enable retaining app data after uninstall 2023-06-03 00:05:49 -07:00
Charles Lombardo
1cc8011355 android: Remove unused doFrame function 2023-06-03 00:05:49 -07:00
Charles Lombardo
4d9011a8f0 android: Convert NativeLibrary to Kotlin 2023-06-03 00:05:49 -07:00
Charles Lombardo
a827486391 android: Remove LocalBroadcastManager
This causes a couple of minor changes to directory initialization. We don't have a lengthy initialization step so we could spend less time creating state receivers and just run initialization on the main thread. We also don't have a situation where external storage will be a concern so checks are removed in favor of a binary check to see if initialization is ready.

This additionally removes the unused DoFrame callback.
2023-06-03 00:05:49 -07:00
Charles Lombardo
9d7a60346f android: Remove game database
The content provider + database solution was excessive and is now replaced with the simple file checks from before but turned into an array list held within a viewmodel.
2023-06-03 00:05:49 -07:00
Charles Lombardo
4816d5158e android: Adjust game icon loading 2023-06-03 00:05:49 -07:00
Charles Lombardo
730c63df7e android: Remove unused dimensions files 2023-06-03 00:05:48 -07:00
Charles Lombardo
83b1459af5 android: Slightly reduce game card size 2023-06-03 00:05:48 -07:00
Charles Lombardo
ac417a4ffa android: Only show company text view if it has content 2023-06-03 00:05:48 -07:00
Charles Lombardo
c0aa5392b9 android: Fix check for ok text in software keyboard 2023-06-03 00:05:48 -07:00
Narr the Reg
ca4be4283d android: Implement amiibo reading from nfc tag 2023-06-03 00:05:48 -07:00
bunnei
b2aeb50229 android: vulkan_device: Disable VK_EXT_custom_border_color on Adreno.
- Causes crashes on sampler creation with Super Mario Odyssey.
2023-06-03 00:05:48 -07:00
Charles Lombardo
1ea84854bd android: Add toggle controls option to input overlay 2023-06-03 00:05:48 -07:00
Charles Lombardo
8b99a1e49b android: Do not update FPS text on null view 2023-06-03 00:05:48 -07:00
Charles Lombardo
d30103b69f android: Convert keyboard applet to kotlin and refactor 2023-06-03 00:05:48 -07:00
bunnei
d5ebfc8e21 android: Implement basic software keyboard applet. 2023-06-03 00:05:47 -07:00
bunnei
58ede89c60 android: config: Disable shader cache by default on Android. 2023-06-03 00:05:47 -07:00
german77
a862c33fc4 android: Fix fps counter not showing up 2023-06-03 00:05:47 -07:00
Charles Lombardo
ec048361af android: Prevent showing games on an invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo
b0a434b99f android: Re-implement overlay editing 2023-06-03 00:05:47 -07:00
Charles Lombardo
5807cf1b4d android: Fix popup menu going out of bounds 2023-06-03 00:05:47 -07:00
Charles Lombardo
3878c6ced1 android: Use autofit grid for games fragment 2023-06-03 00:05:47 -07:00
Charles Lombardo
9cb7e7072d android: Prevent updating empty game list text on invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo
295ffd4d47 android: Persist settings across configuration changes
Mostly things get refactored here to remove previous assumptions made about how the activity/fragment lifecycles would operate. The important change for persistence is removing the assumption that the user will be at the first settings fragment on recreation when deciding whether or not to reload settings. Now we check a flag in Settings to know if we loaded the settings within this lifecycle.
2023-06-03 00:05:47 -07:00
Charles Lombardo
aaefe8a0e0 android: Store settings object in viewmodel 2023-06-03 00:05:47 -07:00
Charles Lombardo
06e58cf088 android: Remove configChanges exceptions 2023-06-03 00:05:46 -07:00
Charles Lombardo
35e9a99452 Android: Enable resizeable activities 2023-06-03 00:05:46 -07:00
Charles Lombardo
89b9285627 android: Fix emulation fragment comments 2023-06-03 00:05:46 -07:00
Charles Lombardo
273e81bb94 android: Use modal navigation drawer as in game menu 2023-06-03 00:05:46 -07:00
Charles Lombardo
1f3b41366c android: Make Game class parcelable 2023-06-03 00:05:46 -07:00
Charles Lombardo
c53e927368 android: Add kotlin parcelize plugin 2023-06-03 00:05:46 -07:00
Charles Lombardo
e2a7143a3d android: Remove deprecated use of onActivityResult 2023-06-03 00:05:46 -07:00
Charles Lombardo
d9e7e71a8e android: Fix RTL layouts 2023-06-03 00:05:46 -07:00
Charles Lombardo
3c9aa8d230 android: Use ellipsis character 2023-06-03 00:05:46 -07:00
Charles Lombardo
16c7afbd46 android: Move all array strings to main strings file 2023-06-03 00:05:46 -07:00
Charles Lombardo
03d9247527 android: Remove unused strings 2023-06-03 00:05:45 -07:00
Charles Lombardo
bf584d85ad android: Remove unused colors 2023-06-03 00:05:45 -07:00
Charles Lombardo
9a842deba5 android: Remove citra date time picker 2023-06-03 00:05:45 -07:00
Charles Lombardo
87211c8aec android: Remove unused premium header layout 2023-06-03 00:05:45 -07:00
Charles Lombardo
1c93ac8e03 android: Remove unused fragment animations 2023-06-03 00:05:45 -07:00
Charles Lombardo
27ec749bdf android: Remove unused string arrays 2023-06-03 00:05:45 -07:00
Charles Lombardo
dafa6dff07 android: Remove unused integer xmls 2023-06-03 00:05:45 -07:00
Charles Lombardo
74653f1e80 android: Refactor ic_launcher.xml to drawables 2023-06-03 00:05:45 -07:00
Charles Lombardo
8a34e58ad6 android: Suppress lint in InsetsHelper 2023-06-03 00:05:45 -07:00
Charles Lombardo
1b40a3df19 android: Add data extraction rules 2023-06-03 00:05:44 -07:00
Charles Lombardo
93d6a1fc9c android: Remove requestLegacyExternalStorage attribute 2023-06-03 00:05:44 -07:00
Charles Lombardo
c803d9e5c7 android: Remove unused permissions 2023-06-03 00:05:44 -07:00
Charles Lombardo
d3c3b69755 android: Inset input overlay based on system cutouts 2023-06-03 00:05:44 -07:00
Narr the Reg
3f35b34515 Use yuzu as category instead of citra 2023-06-03 00:05:44 -07:00
Charles Lombardo
1634391bff android: Stop updating fps counter when emulation stops 2023-06-03 00:05:44 -07:00
Charles Lombardo
a49a24b079 android: Move driver installation off of main thread
Additionally creates an indeterminate loading dialog during installation
2023-06-03 00:05:44 -07:00
Charles Lombardo
72bef4fa95 android: Fix crash when decodeGameIcon creates a null Bitmap 2023-06-03 00:05:44 -07:00
Charles Lombardo
72679c7bae android: Use view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo
e49e6cac7e android: Enable view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo
4de3abdd5a android: Refactor CheckBoxSetting to SwitchSetting 2023-06-03 00:05:44 -07:00
bunnei
b5b4e50c32 android: EmulationActivity: Fix variable shadowing in fragment creation. 2023-06-03 00:05:43 -07:00
bunnei
f45a0b94d6 android: res: fragment_emulation: Ensure FPS counter is shown. 2023-06-03 00:05:43 -07:00
Liam
b19754c73f common: link libandroid on android 2023-06-03 00:05:43 -07:00
Liam
616cf70a80 build: only enable adrenotools on arm64 2023-06-03 00:05:43 -07:00
Charles Lombardo
515f3deea1 android: Use Skyline's document provider 2023-06-03 00:05:43 -07:00
Charles Lombardo
55e4c2d87b android: Use androidx splash screen 2023-06-03 00:05:43 -07:00
Charles Lombardo
3fcc6b1104 android: Replace Picasso with Coil 2023-06-03 00:05:43 -07:00
Charles Lombardo
37cc94526b android: New swipe to refresh color scheme 2023-06-03 00:05:43 -07:00
Charles Lombardo
352559b83d android: New settings fragment animations 2023-06-03 00:05:43 -07:00
Charles Lombardo
f40059e4ba android: Use edge to edge 2023-06-03 00:05:43 -07:00
Charles Lombardo
5840d60724 android: Use Material 3 components 2023-06-03 00:05:42 -07:00
Charles Lombardo
18f4ef436d android: Modernize theme system 2023-06-03 00:05:42 -07:00
Charles Lombardo
09780c76aa android: Use vector icons 2023-06-03 00:05:42 -07:00
Charles Lombardo
527229c8b3 android: Use adaptive icon 2023-06-03 00:05:42 -07:00
bunnei
c385b2b07b android: settings: Dynamically evaluate valueAsString
Co-Authored-By: bunnei <bunneidev@gmail.com>
2023-06-03 00:05:42 -07:00
Charles Lombardo
2d934720f5 android: Add license identifier 2023-06-03 00:05:42 -07:00
Charles Lombardo
95af1b2a23 android: Convert YuzuApplication to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo
1a4de8d213 android: Convert Action1 to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo
7a0d7bb3f3 android: Convert GameViewHolder to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
8a4eb062e8 android: Remove ThemeUtil 2023-06-03 00:05:41 -07:00
Charles Lombardo
b8eb8bd2b5 android: Convert StartupHandler to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
de1dff557d android: Convert Log to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
a05c6deb66 android: Convert GpuDriverMetadata to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
d2f9cf133d android: Convert GpuDriverHelper to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
bf0c383024 android: Convert GameIconRequestHandler to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
5d5233ec32 android: Convert ForegroundService to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
7b54c2b2e2 android: Convert FileUtil to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
7fb7f3e83f android: Convert FileBrowserHelper to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo
c9d2d74f1f android: Convert EmulationMenuSettings to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
2444df2bf4 android: Convert DocumentsTree to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
711aedeaae android: Convert DirectoryStateReceiver to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
a8994a57d6 android: Convert DirectoryInitialization to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
b9f1f70688 android: Convert ControllerMappingHelper to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
c02a27ebd2 android: Convert BiMap to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
8710c6e14c android: Convert AddDirectoryHelper to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
e83de8eefb android: Convert PlatformGamesView to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
fcce7b898f android: Convert PlatformGamesPresenter to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
0b2350ad5b android: Convert PlatformGamesFragment to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo
67c2e89d2c android: Convert MainView to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
0f742b3464 android: Convert MainPresenter to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
42b3e72e96 android: Convert InputOverlayDrawableJoystick to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
5c8372a566 android: Convert MainActivity to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
f4508b255f android: Remove ExampleInstrumentedTest 2023-06-03 00:05:39 -07:00
Charles Lombardo
482d3e0b5f android: Remove TwoPaneOnBackPressedCallback
Leftover UI code for dolphin's cheat system. Removing for now.
2023-06-03 00:05:39 -07:00
Charles Lombardo
d85678a80f android: Convert InputOverlayDrawableDpad to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
0177e908e9 android: Convert InputOverlayDrawableButton to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
a1c57de466 android: Convert InputOverlay to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo
096cdc57bb android: Remove DividerItemDecoration
Removed in favor of material components version
2023-06-03 00:05:39 -07:00
Charles Lombardo
24ade95a13 android: Inherit from Material 3 themes
Partially breaks the UI for now but is necessary to use new material components.
2023-06-03 00:05:38 -07:00
Charles Lombardo
b5819594ba android: Convert MinimalDocumentFile to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
9e8ab499dc android: Convert GameProvider to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
4ce86a526c android: Convert GameDatabase to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
bbe5dee9f8 android: Convert Game to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
66079923ae android: Convert EmulationFragment to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
0e4256651a android: Convert SettingsFile to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
a29c615f8d android: Convert SettingsFrameLayout to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
c39bf17f83 android: Convert SettingsFragmentView to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
14d156701f android: Convert SettingsFragmentPresenter to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo
1fc66f1b30 android: Convert SettingsFragment to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
469f0ec019 android: Convert SettingsActivityView to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
34ce4877bd android: Convert SettingsActivityPresenter to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
b10e13c090 android: Convert SettingsActivity to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
ed83650ee4 android: Convert SubmenuViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
6044d924f7 android: Convert SliderViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
fd1801aec4 android: Convert SingleChoiceViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
c42eb92557 android: Convert SettingViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
d472f41580 android: Convert HeaderViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
e02e33826b android: Convert DateTimeViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo
3a5b9ecba2 android: Convert CheckBoxSettingViewHolder to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
f0a9fcf100 android: Convert StringSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
412ec72d26 android: Convert SettingSection to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
6f80f9d5b0 android: Convert Setting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
6e7fdcb484 android: Convert IntSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
2439fc8374 android: Convert FloatSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
88b9d484e8 android: Convert BooleanSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
b98aaf1635 android: Convert SubmenuSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
91884976a1 android: Convert StringSingleChoiceSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
89eed93ce0 android: Convert SliderSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo
a0e91e3a93 android: Convert SingleChoiceSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
22b44be0b2 android: Convert SettingsItem to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
537c16d4cf android: Convert HeaderSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
21841b6520 android: Convert DateTimeSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
4d9cfc6798 android: Convert CheckBoxSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
0d044e9f2f android: Convert GameAdapter to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
87f4c3f105 android: Convert SettingsAdapter to Kotlin
Update SettingsAdapter.kt
2023-06-03 00:05:35 -07:00
Charles Lombardo
39a65f8446 android: Convert EmulationActivity to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
7cd72a7c6d android: Use material slider in settings dialog 2023-06-03 00:05:35 -07:00
Charles Lombardo
fa38c7be4f android: Convert Settings to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo
753a0c6b5d android: Use androidx preferences 2023-06-03 00:05:34 -07:00
bunnei
2dfbfadf82 android: frontend: Add unique error strings for Vulkan initialization errors. 2023-06-03 00:05:34 -07:00
german77
bde568c3c5 android: Use the center of the object and reduce draw calls 2023-06-03 00:05:34 -07:00
german77
7dd02363a3 android: Replace old buttons with vectors 2023-06-03 00:05:34 -07:00
Charles Lombardo
834d53fbbf android: Enable Kotlin support 2023-06-03 00:05:34 -07:00
Charles Lombardo
96ea063b45 android: Upgrade java version to 11 2023-06-03 00:05:33 -07:00
Charles Lombardo
9191ae23ec android: Upgrade dependencies 2023-06-03 00:05:33 -07:00
Charles Lombardo
82dca7e586 android: Upgrade to AGP 7.4.2 2023-06-03 00:05:33 -07:00
Charles Lombardo
fc785972f9 android: Replace lintOptions with lint 2023-06-03 00:05:33 -07:00
Charles Lombardo
9507e99165 android: Move namespace to app module build.gradle 2023-06-03 00:05:33 -07:00
Charles Lombardo
fc0c5fa86f android: bump compile/target sdk to 33 2023-06-03 00:05:33 -07:00
Charles Lombardo
9762646112 android: Upgrade gradle to 8.0.1 2023-06-03 00:05:33 -07:00
liushuyu
e26bd1421e video_core: fix clang-format errors 2023-06-03 00:05:33 -07:00
liushuyu
19eec22b38 CMake: fix pkg-config behavior when building for Android 2023-06-03 00:05:33 -07:00
liushuyu
1d0329a065 CI: add Android build systems 2023-06-03 00:05:33 -07:00
bunnei
26ee6844c2 android: build.gradle: Cleanup build types. 2023-06-03 00:05:32 -07:00
bunnei
4769d716fc android: frontend: settings: Add graphics debugging. 2023-06-03 00:05:32 -07:00
bunnei
0276197744 android: jni: Ensure system is only initialized once.
- Fixes likelihood that fastmem allocation succeeds.
2023-06-03 00:05:32 -07:00
bunnei
ff2f370946 video_core: vulkan_device: Correct error message for unsuitable driver. 2023-06-03 00:05:32 -07:00
bunnei
dcbf0c43c0 android: frontend: Cleanup framerate counter. 2023-06-03 00:05:32 -07:00
bunnei
8248d69093 android: vulkan: Implement adrenotools turbo mode. 2023-06-03 00:05:32 -07:00
bunnei
21320d80d9 android: vulkan_device: Disable VK_EXT_extended_dynamic_state2 on Qualcomm.
- Newer drivers report this as supported, but it is broken.
2023-06-03 00:05:32 -07:00
bunnei
b0f8aef057 android: frontend: Add support for GPU driver selection. 2023-06-03 00:05:32 -07:00
bunnei
4c38220a64 android: native: Add support for custom Vulkan driver loading. 2023-06-03 00:05:31 -07:00
bunnei
ae099d583c core: frontend: Refactor GraphicsContext to its own module. 2023-06-03 00:05:31 -07:00
bunnei
32cf6beee3 common: dynamic_library: Add ctor for existing handle. 2023-06-03 00:05:31 -07:00
bunnei
e9f35d3260 android: EmulationFragment: Always reset overlay.
- Ensures correct placement until we have better overlay configuration.
2023-06-03 00:05:31 -07:00
Billy Laws
b4a12b889e Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUs
This crashes their shader compiler for some reason.
2023-06-03 00:05:31 -07:00
Billy Laws
158a1896ec Implement scaled vertex buffer format emulation
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead.
2023-06-03 00:05:31 -07:00
Billy Laws
206f1304d6 Disable push descriptors on adreno drivers
Regular descriptors are around 1.5x faster to update.
2023-06-03 00:05:31 -07:00
Billy Laws
26bdecbf45 Disable VK_EXT_extended_dynamic_state on mali 2023-06-03 00:05:31 -07:00
Billy Laws
a3c261d940 Disable multithreaded pipeline compilation on Qualcomm drivers
This causes crashes during compilation on several 6xx and 5xx driver versions.
2023-06-03 00:05:31 -07:00
Narr the Reg
f1bb2f3685 android: Add motion sensor 2023-06-03 00:05:30 -07:00
Narr the Reg
92fb7cc4e4 android: Hook jni input properly 2023-06-03 00:05:30 -07:00
Narr the Reg
5b80dee181 android: cleanup touch update loop 2023-06-03 00:05:30 -07:00
Narr the Reg
3be891ea6f android: Clean joystick overlay 2023-06-03 00:05:30 -07:00
Narr the Reg
639a1f885c android: Clean dpad overlay 2023-06-03 00:05:30 -07:00
Narr the Reg
1ab269775d android: Clean button overlay 2023-06-03 00:05:30 -07:00
Narr the Reg
43e43021a3 android: Add all buttons to screen controller 2023-06-03 00:05:30 -07:00
Narr the Reg
58531ecf4f android: Apply clang format 2023-06-03 00:05:30 -07:00
bunnei
0e52d11ede android: frontend: Implement game grid view. (#9) 2023-06-03 00:05:30 -07:00
german77
5ed8d46340 android: Replace notification icon with yuzu 2023-06-03 00:05:30 -07:00
bunnei
7a89c2fe3a android: strings: Refresh key dumping URL. 2023-06-03 00:05:29 -07:00
bunnei
ddf10cdb18 android: frontend: Modify ROM load messaging for invalid keys. 2023-06-03 00:05:29 -07:00
bunnei
93cf8c3090 android: frontend: Integrate key installation for SAF. 2023-06-03 00:05:29 -07:00
bunnei
63a98e3e1c android: jni: Add function to reload keys. 2023-06-03 00:05:29 -07:00
bunnei
93bad47edb core: crypto: key_manager: Add methods to reload & validate keys. 2023-06-03 00:05:29 -07:00
bunnei
f33776af67 android: EmulationActivity: Temporarily disable running notification. 2023-06-03 00:05:29 -07:00
bunnei
ef605f7d8f android: Implement SAF support & migrate to SDK 31. (#4) 2023-06-03 00:05:29 -07:00
bunnei
39ab81a098 android: Harden emulation shutdown when loader fails. 2023-06-03 00:05:29 -07:00
bunnei
e12e1efa40 android: SettingsFragmentPresenter: Fix default renderer backend. 2023-06-03 00:05:29 -07:00
bunnei
d6a41b3290 android: jni: native: Add lock around HaltEmulation, tighten run loop. 2023-06-03 00:05:29 -07:00
bunnei
d553fd4c3a android: jni: native: Refactor locking for is_running. 2023-06-03 00:05:28 -07:00
bunnei
104ff475d2 android: jni: native: Remove unnecessary atomic for is_running. 2023-06-03 00:05:28 -07:00
bunnei
9ba67eab4f android: jni: native: Tighten up emulation start/stop signaling. 2023-06-03 00:05:28 -07:00
bunnei
1e94d16dad android: jni: native: Consolidate emulation state into EmulationSession singleton.
- Fixes state management issues across multiple boots.
- Fixes crashes related to unsafe access of perf stats.
2023-06-03 00:05:28 -07:00
bunnei
6cc21a56d9 android: Frontend: Fix rendering aspect ratio & add a setting for it. 2023-06-03 00:05:28 -07:00
bunnei
4f903d8d35 android: Integrate settings frontend with yuzu & remove unused code. 2023-06-03 00:05:28 -07:00
Liam
f7a3f1ddf4 externals: add adrenotools for bcenabler 2023-06-03 00:05:28 -07:00
Liam
7cdeaa90af device_memory: Use smaller virtual reservation size for compatibility with 39-bit paging 2023-06-03 00:05:28 -07:00
bunnei
2972a3ccc7 video_core: vulkan_device: Device initialization for Adreno. 2023-06-03 00:05:28 -07:00
bunnei
91350524c2 video_core: vk_pipeline_cache: Disable support_descriptor_aliasing on Android. 2023-06-03 00:05:28 -07:00
bunnei
6ed62a9f10 video_core: vk_swapchain: Fix image format for Android. 2023-06-03 00:05:28 -07:00
bunnei
5e198d1421 android: Minimize frontend & convert to yuzu. 2023-06-03 00:05:27 -07:00
bunnei
18527a8c42 video_core: vk_blit_screen: Rotate viewport for Android landscape. 2023-06-03 00:05:27 -07:00
bunnei
cdbab60bbb common: error: Fix for Android. 2023-06-03 00:05:27 -07:00
bunnei
f8b87e6fab common: fs: Implement for Android. 2023-06-03 00:05:27 -07:00
bunnei
99296a1510 common: logging: Implement Android logcat backend. 2023-06-03 00:05:26 -07:00
bunnei
afdee9abea common: host_memory: Implement for Android. 2023-06-03 00:05:26 -07:00
bunnei
e6d5dbb58e android: Minimal JNI for yuzu. 2023-06-03 00:05:26 -07:00
bunnei
bb2cbbfba3 android: Add Citra frontend. 2023-06-03 00:05:26 -07:00
bunnei
851b1008a8 cmake: Integrate bundled FFmpeg for Android. 2023-06-03 00:05:26 -07:00
ameerj
1fc47361a1 texture_cache: Fix incorrect logic for AccelerateDMA 2023-06-02 18:07:52 -04:00
kkoniuszy
584e8b5c52 host_memory: merge adjacent placeholder mappings on Linux
Track the private anonymous placeholder mappings created by Unmap() and
wherever possible, replace existing placeholders with larger ones
instead of creating many small ones.

This helps with the buildup of mappings in /proc/YUZU_PID/maps after a
longer gaming session, improving stability without having to increase
vm.max_map_count to a ridiculous value. The amount of placeholder
mappings will no longer outgrow the amount of actual memfd mappings in
cases of high memory fragmentation.
2023-06-01 22:57:27 +02:00
liamwhite
d89b98d8e8
Merge pull request #10091 from Kelebek1/bc_bugggggg
Fix buffer overlap checking skipping a page for stream score right expand
2023-06-01 09:06:07 -04:00
liamwhite
00b6bef65a
Merge pull request #10530 from Kelebek1/syncpt_oob
Fix incorrect syncpt id bounds check and potential out of bounds lookup
2023-06-01 09:05:42 -04:00
liamwhite
988f486061
Merge pull request #10474 from GPUCode/you-left-me-waiting
Remove timeline semaphore wait
2023-06-01 09:05:30 -04:00
liamwhite
5ab5987e74
Merge pull request #10352 from grimkor/add-context-menu-status-bar-settings
add context menu for status bar settings
2023-06-01 09:05:23 -04:00
liamwhite
1a4f3b37f1
Merge pull request #10482 from german77/gamelist
yuzu: Disable game list while game is running
2023-06-01 09:05:18 -04:00
Kelebek1
6839341f17 Fix incorrect id check and potential out of bounds lookup 2023-05-31 19:10:00 +01:00
Kelebek1
661375a222 Skip BufferCache tickframe with no channel state set 2023-05-30 21:57:13 +01:00
12101111
f78f82e08d
input_common: rename PAGE_SIZE to avoid conflict
See also: https://github.com/yuzu-emu/yuzu/issues/8779
2023-05-30 16:59:06 +08:00
german77
e5be1835ab yuzu: Disable game list while game is running 2023-05-29 10:00:34 -06:00
Morph
9950a388d2 externals: Update to fmt 10 and add format_as formatter for BitField
Implicit conversions are now disallowed in fmt 10. Use format_as to convert to the underlying type.
2023-05-28 15:05:55 -04:00
liamwhite
381caf4c00
Merge pull request #10483 from ameerj/gl-cpu-astc
gl_texture_cache: Fix ASTC CPU decoding with compression disabled
2023-05-28 13:18:31 -04:00
liamwhite
379d4b5e6a
Merge pull request #10280 from danilaml/cmake-bin-dir
Use TARGET_FILE_DIR generator expression
2023-05-28 13:18:06 -04:00
liamwhite
bf3f450211
Merge pull request #10283 from danilaml/support-interlaced-videos
Add support for deinterlaced video playback
2023-05-28 13:17:58 -04:00
liamwhite
93c17ee4da
Merge pull request #10463 from liamwhite/this-is-why-we-need-g
vfs_concat: fix time complexity of read
2023-05-28 13:17:42 -04:00
liamwhite
18595738fd
Merge pull request #10464 from liamwhite/clear-cache
qt: add menu item to remove cache storage
2023-05-28 13:17:33 -04:00
liamwhite
e994388b43
Merge pull request #10469 from Kelebek1/bc_state
Move buffer bindings to per-channel state
2023-05-28 13:17:26 -04:00
ameerj
ea2e155b0b gl_texture_cache: Fix ASTC CPU decoding with compression disabled
gl_format was incorrectly being overwritten when compression was disabled
2023-05-28 13:14:51 -04:00
ameerj
cb0a410907 gl_staging_buffers: Optimization to reduce fence waiting 2023-05-28 00:38:47 -04:00
ameerj
642c14f0c7 OpenGL: Make use of persistent buffer maps in buffer cache downloads
Persistent buffer maps were already used by the texture cache, this extends their usage for the buffer cache.

In my testing, using the memory maps for uploads was slower than the existing "ImmediateUpload" path, so the memory map usage is limited to downloads for the time being.
2023-05-28 00:38:46 -04:00
GPUCode
4a292efbff renderer_vulkan: Remove timeline semaphore wait 2023-05-28 02:39:44 +03:00
Kelebek1
9c2b211f12 Audren wait as suggested by ByLaws 2023-05-27 17:38:07 +01:00
Kelebek1
b0bea13ed8 Move buffer bindings to per-channel state 2023-05-27 17:04:18 +01:00
Liam
fcd48eb239 qt: add menu item to remove cache storage 2023-05-26 23:29:44 -04:00
Matías Locatti
d6db422098
Merge pull request #10414 from liamwhite/anv-push-descriptor
vulkan_device: Enable VK_KHR_push_descriptor on newer ANV
2023-05-26 17:36:37 -03:00
Matías Locatti
919b54848b
Merge pull request #10418 from liamwhite/blink-and-youll-miss-it
texture_cache: process aliases and overlaps in the correct order
2023-05-26 17:36:09 -03:00
Liam
0596a4afb1 vfs_concat: fix time complexity of read 2023-05-26 16:07:38 -04:00
Kelebek1
7ce181edcf Fix buffer overlap checking skipping a page for stream score right expand 2023-05-26 10:35:46 +01:00
Liam
13d25063a1 shader_recompiler: fix copy-paste error 2023-05-26 00:36:12 -04:00
bunnei
83b502c08c
Merge pull request #10221 from Kelebek1/partial_dsp_revert
Add a 5ms tiemout to the DSP processing wait
2023-05-25 21:34:50 -07:00
bunnei
ffa1fba7d6
Merge pull request #10396 from german77/amiibo_write
input_common: Implement amiibo writing
2023-05-25 14:07:16 -07:00
liamwhite
a596c6e438
Merge pull request #10454 from 521337/fix-u-option
Don't exit when using "-u" option in yuzu-cmd
2023-05-25 14:12:51 -04:00
Fernando S
3c3830953a
Merge pull request #10452 from liamwhite/ibgc
video_core: don't garbage collect during configuration
2023-05-25 20:09:08 +02:00
Ariel Cabello
7d5df4f0ba Don't exit when using "-u" option in yuzu-cmd 2023-05-25 20:07:52 +02:00
Liam
904dc1a567 video_core: don't garbage collect during configuration 2023-05-25 12:03:12 -04:00
Ariel Cabello
d33bdc97d0 Add short "-u" option for yuzu_cmd.
The -u short option was documented but not implemented in yuzu_cmd.
The same long option --user worked before.
2023-05-25 16:05:22 +02:00
bunnei
e264ab4ad0
Merge pull request #10415 from german77/amiibo-no-key
service: nfc: Remove encryption key requirement
2023-05-24 22:14:55 -07:00
bunnei
73a0ea0738
Merge pull request #10435 from FernandoS27/gotta-clean-mess-ups
Texture cache: revert wrong acceleration assumption
2023-05-24 21:00:53 -07:00
Fernando Sahmkow
be3a7f4096 Texture cache: revert wrong acceleration assumption 2023-05-24 10:52:02 +02:00
Fernando Sahmkow
01c4568786 Texture Cache Util: Fix block depth adjustment on slices. 2023-05-24 10:06:58 +02:00
Fernando Sahmkow
72c1ee1bf9 texture_cache: process aliases and overlaps in the correct order 2023-05-24 09:53:42 +02:00
Fernando S
72a14a6817
Merge pull request #10422 from liamwhite/gc
video_core: tune garbage collection aggressiveness
2023-05-24 03:58:49 +02:00
Fernando S
4ee4fdf78c
Merge pull request #10417 from liamwhite/check-state
k_memory_block_manager: remove auditing calls
2023-05-24 03:56:58 +02:00
Fernando S
76f6388969
Merge pull request #10398 from liamwhite/bcn
video_core: add ASTC recompression
2023-05-24 03:55:45 +02:00
grimkor
b3ebfd2481 add context menu for filter and anti-aliasing status buttons 2023-05-24 00:21:04 +00:00
Liam
3b1172c10f video_core: tune garbage collection aggressiveness 2023-05-23 12:55:14 -04:00
Liam
415c78b87c textures: add BC1 and BC3 compressors and recompression setting 2023-05-23 12:54:40 -04:00
liamwhite
a5d4c3e5ad
Merge pull request #10388 from GPUCode/fence-wait
vk_master_semaphore: Move fence wait on separate thread
2023-05-23 09:42:56 -04:00
liamwhite
58be9b12f4
Merge pull request #10402 from liamwhite/uh
renderer_vulkan: barrier attachment feedback loops
2023-05-23 09:42:49 -04:00
liamwhite
09ed5ec665
Merge pull request #10411 from scorpion81/gc-steamdeck-fix-attempt
Limit device access memory for integrated devices to 4 GB
2023-05-23 09:42:39 -04:00
Liam
5e3b3c6643 k_memory_block_manager: remove auditing calls 2023-05-23 09:15:16 -04:00
Narr the Reg
f63586c5f5 service: nfc: Remove encryption key requirement 2023-05-22 18:42:09 -06:00
Liam
8bba9f7dea vulkan_device: Enable VK_KHR_push_descriptor on newer ANV 2023-05-22 19:53:20 -04:00
Liam
8758932031 renderer_vulkan: barrier attachment feedback loops 2023-05-22 18:10:16 -04:00
scorpion81
f8e7b44d28
Limit the device access memory to 4 GB
Hardly limiting the device access memory to 4 GB for integrated vulkan devices here. This works for the Steam Deck in order not to go above 4 GB VRAM usage any more (above this value the likelihood to crash when the RAM exceeds 12 GB as well raises).

But there will be perhaps a detection mechanism necessary for detecting the real memory limit for integrated vulkan devices. Those likely might have small limits anyway, but what about integrated GPUs on machines with > 16 GB RAM, aka larger amounts ?
2023-05-22 16:48:55 +02:00
Narr the Reg
fdb2002f77 input_common: Implement amiibo writting 2023-05-21 21:09:20 -06:00
Danila Malyutin
7701a00a02 Add support for deinterlaced videos playback
This is a follow up to #10254 to improve the playback of cut scenes in Layton's Mystery Journey.
It uses ffmpeg's yadif filter for deinterlacing.
2023-05-22 01:43:44 +04:00
GPUCode
4e491ab59b vk_master_semaphore: Move fence wait on separate thread 2023-05-20 19:23:53 +03:00
german77
dbcdb3523b input_common: Map motion with relative values not absolute ones 2023-05-19 21:19:29 -06:00
bunnei
1e398e6c36
Merge pull request #10344 from german77/pro-amiibo
input_common: Fix pro controller amiibo support
2023-05-18 18:10:38 -07:00
Liam
de7c92d7c4 renderer_vulkan: remove wrong constexpr 2023-05-18 18:01:01 -04:00
Kelebek1
d75bcdd077 Smooth out the DSP callback by adding a 5ms wait time limit 2023-05-18 13:03:32 +01:00
lat9nq
c1a8a508bc vulkan_device: Disable VK_KHR_push_descriptor on ANV
Mesa commit ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc breaks
VK_KHR_push_descriptor usage on ANV drivers 22.3.0, so disable it
and allow games to boot.
2023-05-17 22:19:57 -04:00
bunnei
9d4a2de72b
Merge pull request #10262 from liamwhite/depth-clamp
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-17 12:19:03 -07:00
Narr the Reg
5693434b8a input_common: Fix pro controller amiibo support 2023-05-16 18:37:22 -06:00
liamwhite
47c5c37bed
Merge pull request #10217 from Kelebek1/clear_value
Use the rendertarget format of the correct RT rather than the first valid
2023-05-16 10:06:30 -04:00
liamwhite
a540d248f3
Merge pull request #10107 from grimkor/allow-fully-customised-hotkeys
Allow fully customised controller hotkeys
2023-05-16 10:06:15 -04:00
liamwhite
bbb6b58aa4
Merge pull request #10181 from lat9nq/intel-compute-toggle
configure_graphics: Add option to enable compute pipelines for Intel proprietary
2023-05-15 12:05:24 -04:00
liamwhite
736a31e4ff
Merge pull request #10234 from Kelebek1/clouds_depth
Fix Tears of the Kingdom flickering clouds and depths geometry.
2023-05-15 12:03:31 -04:00
liamwhite
6060685609
Merge pull request #10249 from FernandoS27/sorry-i-am-late
Buffer Cache: Clear sync code.
2023-05-15 12:03:25 -04:00
liamwhite
5b85925469
Merge pull request #10254 from danilaml/fix-h264-decode
Fix missing pic_order_present_flag in h264 header
2023-05-15 12:03:14 -04:00
liamwhite
033aa264cf
Merge pull request #10265 from german77/amiibo-lag
input_common: Make amiibo scanning less demanding
2023-05-15 12:03:08 -04:00
liamwhite
9087fe10e9
Merge pull request #10294 from german77/vibration_span
service: hid: Use span instead of vector reference
2023-05-15 12:03:00 -04:00
german77
6e54615b16 service: hid: Use span instead of vector reference 2023-05-14 18:07:04 -06:00
Fernando Sahmkow
c4bfbc6d25 Buffer Cache: Clear sync code. 2023-05-15 01:50:21 +02:00
liamwhite
e9069dfe76
Merge pull request #10288 from liamwhite/vram-limits
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 17:02:15 -04:00
Liam
2be751100b vulkan_device: reserve extra memory to prevent swaps 2023-05-14 16:49:59 -04:00
german77
ac531aa15f input_common: Make amiibo scanning less demanding 2023-05-14 09:04:37 -06:00
Liam
122435e080 vulkan_common: fix incompatible property flags 2023-05-14 01:13:11 -04:00
Danila Malyutin
c9c5d140b8 Use TARGET_FILE_DIR generator expression
Use $<TARGET_FILE_DIR:...> where appropriate instead of trying to guess where the binary will end up.
2023-05-13 23:58:17 +04:00
Liam
856838f7ce vulkan_common: disable depth clamp dynamic state for older radv 2023-05-13 00:37:17 -04:00
Fernando S
9c739f1506
Merge pull request #10244 from liamwhite/lower-upper
time: implement ContinuousAdjustmentTimePoint
2023-05-13 03:51:05 +02:00
Fernando S
075d73f076
Merge pull request #10243 from Kelebek1/red_dot
Correctly track render target index in the framebuffer for image aspects
2023-05-13 03:50:31 +02:00
bunnei
021e503cc8
Merge pull request #10237 from liamwhite/cache-storage
fs: stub cache storage
2023-05-12 16:42:17 -07:00
Danila Malyutin
9367769fe7 Fix missing pic_order_present_flag in h264 header
Fixes #9635
2023-05-12 22:30:59 +04:00
Liam
a22c5a3880 time: implement ContinuousAdjustmentTimePoint 2023-05-11 21:05:27 -04:00
Kelebek1
cd0ded7771 Correctly track RT indexes for image aspect lookup during clears 2023-05-12 01:40:21 +01:00
Liam
351079a4ba fs: adjust future save path 2023-05-11 17:30:30 -04:00
Liam
62bcb99ba8 am: stub CreateCacheStorage 2023-05-11 17:26:02 -04:00
Liam
13e4ceb990 fs: stub cache storage and fix params alignment 2023-05-11 17:23:28 -04:00
Liam
bb94beed15 nvnflinger: fix Parcel serialization 2023-05-11 17:09:19 -04:00
Liam
6e10a0c130 nvnflinger: fix producer slot fence init 2023-05-11 17:08:14 -04:00
Kelebek1
e42b4a16b6 Fix Tears of the Kingdom flickering clouds and depths. 2023-05-11 19:25:24 +01:00
liamwhite
182221b9ff
Merge pull request #10132 from Kelebek1/fermi_blit2
Allow Fermi blit accelerate to work without images in cache
2023-05-11 10:45:59 -04:00
liamwhite
2643ea80df
Merge pull request #10216 from Kelebek1/buffer_cache_region_checks
Swap order of checking/setting region modifications in the buffer_cache
2023-05-11 10:45:47 -04:00
Kelebek1
bf08bc3c0f Allow Fermi blit accelerate to add src/dst to the cache if they don't exist already. Use ScratchBuffers in the software blit path. 2023-05-11 06:42:38 +01:00
grimkor
ceb65c259a Allow fully customisable controller hotkeys 2023-05-10 19:28:11 +01:00
Liam
67fd1df762 renderer_vulkan: separate guest and host compute descriptor queues 2023-05-10 13:46:48 -04:00
liamwhite
b7f60e9123
Merge pull request #10207 from german77/amiibo_cheater
service: nfp: Allow to load with a different amiibo id
2023-05-10 10:25:48 -04:00
Narr the Reg
3ec027400e
Merge pull request #10119 from marius851000/improved_non_hd_feeback
Attempt at improving HD Rumble emulation
2023-05-09 22:59:32 -06:00
Narr the Reg
42e1db4b0e service: nfc: Seed all random values 2023-05-09 17:54:07 -06:00
german77
1968cc7b10 service: nfp: Allow to load with a different amiibo id 2023-05-09 17:51:59 -06:00
Kelebek1
a386003b64 Use the rendertarget format of the correct RT rather than the first valid 2023-05-09 22:13:15 +01:00
Kelebek1
b3691fc33c Swap order of checking/setting region modifications in the buffer_cache 2023-05-09 20:21:08 +01:00
liamwhite
7944f271dc
Merge pull request #10183 from liamwhite/mods
vfs_vector: avoid n^2 lookup in layeredfs building
2023-05-09 09:47:36 -04:00
liamwhite
5890b96ce5
Merge pull request #10203 from german77/calibration
core: hid: Allow to calibrate gyro sensor
2023-05-09 09:47:29 -04:00
liamwhite
1f14b58315
Merge pull request #10206 from FernandoS27/astc-3d
Texture Cache: Fix 3D ASTC textures
2023-05-09 09:47:22 -04:00
german77
cb1487d774 input_common: Fix nfc detection for joycons 2023-05-09 00:32:53 -06:00
Fernando Sahmkow
8a214e5530 Texture Cache: Fix ASTC textures 2023-05-09 02:42:10 +02:00
Jan Beich
a4362765a6 qt_common: consistently ifdef QPlatform after cbd79df233
src/yuzu/qt_common.cpp:45:33: error: member access into incomplete type 'QPlatformNativeInterface'
    wsi.display_connection = pni->nativeResourceForWindow("display", window);
                                ^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
      ^
src/yuzu/qt_common.cpp:47:42: error: member access into incomplete type 'QPlatformNativeInterface'
        wsi.render_surface = window ? pni->nativeResourceForWindow("surface", window) : nullptr;
                                         ^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
      ^
2023-05-08 20:47:16 +00:00
Narr the Reg
e1838f51a3 yuzu: Make 3d cube with joycon shape 2023-05-08 12:06:39 -06:00
Narr the Reg
97bd6d6418 core: hid: Allow to calibrate gyro sensor 2023-05-08 12:06:38 -06:00
lat9nq
40f3e2fbf1 configure_graphics_advanced: Hide input compute toggle a little later
SetColoredTristate causes the setting to become visible as it calls
`show()` on it.
2023-05-08 12:32:56 -04:00
bunnei
b70a205a96
Merge pull request #10075 from Kelebek1/silence_nifm_spam
Silence network spam
2023-05-07 17:45:32 -07:00
Liam
bdb7c11d8e bootmanager: remove stop_token header 2023-05-07 19:20:09 -04:00
liamwhite
8f605b542c
Merge pull request #10195 from german77/mutex
core: hid: Update motion on a better place
2023-05-07 19:06:10 -04:00
Liam
d100de27ee vfs_layered: avoid n^2 lookup in layeredfs building 2023-05-07 19:03:41 -04:00
german77
cf023aa8ec core: hid: Update motion on a better place 2023-05-07 17:01:57 -06:00
Fernando Sahmkow
8014dd8259 Texture cache: Only force flush the dma downloads 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
2df19ef0fd Buffer Cache: disable reactive flushing in it. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
016c6feb49 Texture cache: reverse inmediate flush changes 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
36c302fa32 Buffer cache: always use async buffer downloads and fix regression. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
6f90dff293 Address feedback, add CR notice, etc 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
ab0c0a469c Query cache: stop updating pages as it's not affected by cpu writes 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
92da86290c Settings: add option to enable / disable reactive flushing 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
0f4f18265f Texture cache: sync the first flush. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow
c6cac2ffaa GPU: Add Reactive flushing 2023-05-07 23:46:12 +02:00
Liam
5792a72c29 vfs_vector: avoid n^2 lookup in layeredfs building 2023-05-07 16:50:35 -04:00
bunnei
e58090c9c7
Merge pull request #10097 from german77/nfp_full
service: nfc: Merge device interfaces and create the device manager
2023-05-07 12:18:09 -07:00
liamwhite
0c5bdc7241
Merge pull request #10081 from Kelebek1/copy_overlap_tick
Sort overlap_ids by modification tick before copy
2023-05-07 14:09:10 -04:00
liamwhite
cb49c3b64c
Merge pull request #10172 from Kelebek1/debug_validation_names
Log object names with debug renderer, add a GPU address to ImageViews
2023-05-07 14:09:03 -04:00
QGJ
4366a21eae yuzu/applets/qt_profile_select: connect double-click to accept()
In the profile selection window:

Allow the user to start the game by double-clicking a profile to avoid having to additionally click the OK button. This avoids an unnecessary "step" to the start of the game...
2023-05-07 18:05:42 +02:00
Kelebek1
6fed48b3a4 Fix address space allocator slow path to avoid OOB 2023-05-07 15:11:16 +01:00
bunnei
f36b5dfd18
Merge pull request #10180 from german77/debug
input_common: Revert debugging changes
2023-05-06 22:26:53 -07:00
german77
91695a453b input_common: Revert debugging changes 2023-05-06 23:06:44 -06:00
lat9nq
55c77dd25b yuzu-qt/config: Add option to disable compute on Intel
This option is only visible if an Intel GPU using the proprietary
driver is found during Vulkan device enumeration.

configure_graphics: More directly get driver id

Vulkan::Device does quite a bit more than we need just to see the
driver ID here.
2023-05-07 01:06:22 -04:00
lat9nq
6ed6e6e18e vk_pipeline_cache: Use setting to disable intel compute 2023-05-07 01:06:22 -04:00
lat9nq
725aacb4bc settings: Add enable compute pipelines
For the Intel proprietary driver's deficiencies.

settings: Restore compute option global state
2023-05-07 01:06:20 -04:00
bunnei
3547248ec2
Merge pull request #10125 from lat9nq/vsync-select
configuration: Expose separate swap present modes
2023-05-06 21:55:39 -07:00
bunnei
82188b2f79
Merge pull request #10174 from german77/motriod
input_common: Add experimental motion to button
2023-05-06 21:40:20 -07:00
liamwhite
27ff00acb1
Merge pull request #10162 from lat9nq/sdl-remove-old
yuzu-sdl,audio_core: Remove antiquated warning ignore
2023-05-06 23:10:09 -04:00
liamwhite
9c9b4616c3
Merge pull request #10167 from german77/motion_preview
yuzu: Add motion preview to controller input
2023-05-06 23:09:55 -04:00
Roni Kirla
a13fd5f7cc Fix read access violation 2023-05-07 00:13:33 +03:00
german77
9b771bcb8f input_common: Add experimental motion to button 2023-05-05 22:49:56 -06:00
Narr the Reg
94151097b9 service: nfc: Merge device interfaces and create the device manager 2023-05-05 22:02:59 -06:00
Kelebek1
ca6bf06ef7 Log object names with debug renderer, add a GPU address to ImageViews 2023-05-06 04:48:32 +01:00
Narr the Reg
f017335fef input_common: Add property to invert an axis button 2023-05-05 17:18:35 -06:00
Narr the Reg
46e835f2d6 yuzu: Add motion preview to controller input 2023-05-05 13:53:38 -06:00
bunnei
bb2e407772
Merge pull request #10159 from german77/home_screenshot
core: hid: Fix state of capture and home buttons
2023-05-05 12:02:15 -07:00
marius david
0a6bd8b236 Improve emulation of HD Rumble 2023-05-05 19:30:40 +02:00
lat9nq
740c349820 yuzu-sdl,audio_core: Remove antiquated warning ignore
Issue was fixed a long time ago, both by SDL2 and in yuzu by including
SDL2 as a system library.
2023-05-05 03:48:28 -04:00
german77
8df3aed2f1 core: hid: Fix state of capture and home buttons 2023-05-04 22:36:59 -06:00
liamwhite
16939b1a6e
Merge pull request #10128 from Kelebek1/audren_terminate
Wait for the terminate event before destroying a system instance
2023-05-04 14:44:09 -04:00
liamwhite
60d54d911e
Merge pull request #10145 from Kelebek1/code_size
Fix shader code resize to use word size rather than byte size
2023-05-04 14:44:02 -04:00
Fernando S
2506594c50
Merge pull request #10153 from FernandoS27/a-quickie-fixie
Memory manager: Fix possible softlock
2023-05-04 03:56:53 +02:00
Fernando S
7d5683c63c
Merge pull request #10154 from liamwhite/optimistic
settings: remove pessimistic flushing
2023-05-04 01:55:51 +02:00
bunnei
055ee84024
Merge pull request #10142 from FernandoS27/missing-astc
GPU: implement missing ASTC
2023-05-03 16:49:27 -07:00
Liam
ae59ffc56c settings: remove pessimistic flushing 2023-05-03 18:52:42 -04:00
Fernando Sahmkow
1c13c74295 Memory manager: Fix possible softlock 2023-05-04 00:15:21 +02:00
lat9nq
a71498d163 qt_common: Remove yuzu prefix 2023-05-03 18:11:53 -04:00
bunnei
a661c547d8
Merge pull request #10088 from FernandoS27/100-gelato-flavor-test-builds-later
Y.F.C Implement Asynchronous Fence manager and Rework Query async downloads
2023-05-03 15:10:22 -07:00
bunnei
737e1ca101
Merge pull request #10117 from liamwhite/sync-register
kernel: match calls to Register and Unregister
2023-05-03 09:07:19 -07:00
Fernando Sahmkow
87a9be8dec GPU: implement missing ASTC 2023-05-03 11:33:28 -04:00
liamwhite
ffeb5cdd8d
Merge pull request #10151 from GPUCode/no-softlocks-please
Fix softlocks when disabling async present
2023-05-03 10:54:24 -04:00
Morph
8dd3baa562
Merge pull request #10144 from liamwhite/dont-turbo
vulkan: disable turbo when debugging tool is attached
2023-05-03 10:53:03 -04:00
Morph
daf7936095
Merge pull request #10143 from liamwhite/fruit-company-moment
video_core: fix build on Apple Clang
2023-05-03 10:52:56 -04:00
Morph
627022bef9
Merge pull request #10124 from liamwhite/pebkac
settings: rename extended memory layout to unsafe, move from general to system
2023-05-03 10:52:45 -04:00
GPUCode
f3fcc15ad5 vk_present_manager: Fix softlocks when disabling async present 2023-05-03 07:50:10 +03:00
lat9nq
35e7f36a39 configure_graphics: No there isn't a hyphen in VSync
Most sources seem to suggest VSync and not V-Sync
2023-05-02 21:52:43 -04:00
lat9nq
d82cad3fb3 configure_input_player: Add missing include
Cleaning up includes in bootmanager and configure_graphics has exposed a
missing include here.
2023-05-02 21:52:43 -04:00
lat9nq
cd2981ee12 configure_graphics: Clean up includes [IWYU] 2023-05-02 21:52:43 -04:00
lat9nq
0c0f5b7ccc bootmanager: Clean up includes [IWYU]
bootmanager: Remove system-specific headers

IWYU can be too complete I suppose.
2023-05-02 21:52:43 -04:00
lat9nq
a546ecbb12 configure_graphics: Actively find present modes
When Vulkan devices are enumerated, this also determines the available
present modes for each device, maps them to a vector, and gives
those options to the user.
OpenGL options are limited to On/Off.

Required creating a VkSurfaceKHR during device enumeration, which
may or may not be desireable. For the sake of a less confusing UI.

Also fixes a bug where if a graphics device disappears on the host, we
don't try and select the non-existant devices.

configure_graphics: Remove vsync runtime lock for Vulkan

configure_graphics: Recommend Mailbox present mode

configure_graphics: Fix type-limits warning

configure_graphics: Clean up includes

configure_graphics: Add tooltip
2023-05-02 21:52:43 -04:00
lat9nq
952b271092 vk_swapchain: Use certain modes for unlocked
Uses mailbox, then immediate for unlocked framerate depending on
support for either. Also adds support for FIFO_RELAXED.

This function now assumes vsync_mode was originially configured to a value
that the driver supports.

vk_swapchain: ChooseSwapPresentMode determines updates

Simplifies swapchain a bit and allows us to change the present mode
during guest runtime.

vk_swapchain: Fix MSVC error

vk_swapchain: Enforce available present modes

Some frontends don't check the value of vsync_mode before comitting it.
Just as well, since a driver update or misconfiguration could problems
in the swap chain.

vk_swapchain: Silence warnings

Silences GCC warnings implicit-fallthrough and shadow, which apparently
are not enabled on clang.
2023-05-02 21:52:43 -04:00
lat9nq
a090a380be bootmanager: Remove inaccurate switch
Those vulkan settings do not correspond 1:1 to the swap intervals that
they set for OpenGL, so remove it.

bootmanager: Add missing include

I didn't add this log why did it break
2023-05-02 21:51:30 -04:00
lat9nq
cbd79df233 qt_common: Move window info function out of bootmanager
Function is useful outside of bootmanager, so put it in a common place.

qt_common: Add missing include

qt_common: Add some newlines

qt_common: Add trailing newline

qt_common: Add trainline newline
2023-05-02 21:51:30 -04:00
lat9nq
c6c11c1553 vulkan_surface: Pass only window info for surface creation
We don't need the whole EmuWindow when creating a surface,
and it creates onerous requirements outside of typical usage for
creating a surface elsewhere.
2023-05-02 21:51:30 -04:00
lat9nq
2528cf7c54 settings: Enable FIFO relaxed
Not entirely sure if we need this, but there's also no reason not to
support it.

settings: Give VSyncMode values
2023-05-02 21:51:30 -04:00
lat9nq
6b973c5986 configure_graphics: Fix another typo 2023-05-02 21:51:29 -04:00
lat9nq
40f062f749 telemetry_session: Make translate function static
Addresses review feedback

Co-authored-by: Lioncash <mathew1800@gmail.com>
2023-05-02 21:51:29 -04:00
lat9nq
29a56496bf bootmanager: Return value in impossible case
The setting is ranged, so this return statement is unreachable.
But GCC can't tell I guess.
2023-05-02 21:51:29 -04:00
lat9nq
41a103c0fc configure_graphics: Fix typo 2023-05-02 21:51:29 -04:00
lat9nq
66ed1c1872 default_ini: Update V-Sync description
default_ini: Update vsync text

default_ini: Add tooltip from configure_graphics
2023-05-02 21:51:29 -04:00
lat9nq
6f0929df82 configuration: Expose separate swap present modes
Previously, yuzu would try and guess which vsync mode to use given
different scenarios, but apparently we didn't always get it right. This
exposes the separate modes in a drop-down the user can select.

If a mode isn't available in Vulkan, it defaults to FIFO.
2023-05-02 21:51:29 -04:00
bunnei
8f43b05d6b
Merge pull request #9973 from GPUCode/async-present
Implement asynchronous presentation
2023-05-02 17:54:57 -07:00
Kelebek1
f902cc2a2b Fix code resize to use word size rather than byte size 2023-05-02 23:52:21 +01:00
liamwhite
451b1bba26
Merge pull request #10133 from lat9nq/clang-shadow-and-fallthrough
CMakeLists: Enable more checks on Clang
2023-05-02 18:18:46 -04:00
liamwhite
494cc992eb
Merge pull request #10130 from liamwhite/keys
qt: warn on inoperable keys
2023-05-02 18:17:24 -04:00
liamwhite
f603dc9763
Merge pull request #10123 from Kelebek1/sample_mask
Define SampleMask as an array
2023-05-02 18:17:15 -04:00
Liam
4df49631de vulkan: disable turbo when debugging tool is attached 2023-05-02 18:14:57 -04:00
Liam
e1c74cea10 video_core: fix build on Apple Clang 2023-05-02 18:05:30 -04:00
lat9nq
f7292c776b CMake: Enable type limits on Clang 2023-05-02 02:07:36 -04:00
lat9nq
2007d0e4a0 CMakeLists: Enable checks on Clang
Enables shadow-uncaptured-locals and implicit-fallthrough for Clang.
implicit-fallthrough is not enabled by default in -Wall or -Wextra, and
shadow-uncaptured-local doesn't seem to be enabled by default by
-Wshadow, even though GCC has both of these by their respective cases.
2023-05-02 01:57:22 -04:00
GPUCode
f403d27941 vk_present_manager: Add toggle for async presentation 2023-05-01 23:13:24 +03:00
GPUCode
1d7abac84b vk_blit_screen: Recreate FSR when frame is recreated
* Depends on the layout dimentions and thus should be recreated as well
2023-05-01 23:13:24 +03:00
GPUCode
50791cb974 renderer_vulkan: Fix crashing when updating descriptors
* During pipeline configure the function would acquire some payload space from the descriptor update queue,
  write the descriptor data on the GPU thread and give the scheduler a pointer to the beginning of said space to update it later.
  TickFrame resets the payload cursor, used to track acquires, back to the beginning of the buffer.
  This wasn't a problem before since WaitWorker was called at the end of the frame but now it is.
  If a frame writes to a cursor before the scheduler catches up, it will crash

* To fix this the payload buffer has been increased to account for the in flight frames that are allowed to exist now.
  TickFrame will switch between the payload spaces instead of resetting
2023-05-01 23:13:24 +03:00
GPUCode
2ad9acf795 renderer_vulkan: Async presentation 2023-05-01 23:13:24 +03:00
Morph
47938541c2
Merge pull request #10084 from FernandoS27/yuzu-goes-broom-broom
Y.F.C Buffer Cache Revamp
2023-05-01 11:08:02 -04:00
liamwhite
3f4315e4c6
Merge pull request #10116 from liamwhite/deboost
kernel: remove boost intrusive lists
2023-05-01 09:27:23 -04:00
Fernando Sahmkow
d6f565e5da BufferCache: Fixes and address feedback 2023-05-01 11:43:26 +02:00
Liam
7ec66db22c qt: warn on inoperable keys 2023-04-30 23:47:42 -04:00
Kelebek1
2feb40f14d Wait for the terminate event before destroying a system instance 2023-05-01 00:27:12 +01:00
Liam
2cd9e1ecb6 settings: rename extended memory layout to unsafe, move from general to system 2023-04-30 14:24:22 -04:00
Kelebek1
b566c98258 Define SampleMask as an array 2023-04-30 18:37:37 +01:00
bunnei
689f9a75a7
Merge pull request #10110 from Morph1984/intel-disable-compute
vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers
2023-04-29 23:02:45 -07:00
Liam
b143ce8134 kernel: remove general boost lists 2023-04-29 22:11:32 -04:00
Liam
1b5c87ab6a kernel: match calls to Register and Unregister 2023-04-29 21:52:26 -04:00
Liam
2afaa7aed7 common: add intrusive list type 2023-04-29 17:46:26 -04:00
Fernando Sahmkow
4bc5469f52 Texture Cache: Release stagging buffers on tick frame 2023-04-29 15:31:38 +02:00
Fernando Sahmkow
f8d31d1ae1 Buffer Cache: Release stagging buffers on tick frame 2023-04-29 00:46:31 +02:00
Fernando Sahmkow
fff6155bc3 Tests: Add memory tracker tests. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow
80480fe3f7 Clang: format and ficx compile errors. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow
ed4553806a Implement Async downloads in normal and fix a few issues. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow
f2d3212de9 Buffer Cache rework: Setup async downloads. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow
a16c261131 Buffer Cache: Fully rework the buffer cache. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow
58d1c7c77a Address Feedback & Clang Format 2023-04-29 00:18:21 +02:00
Fernando Sahmkow
56c9730a16 Maxwell3D: only update parameters on High 2023-04-29 00:18:21 +02:00
Fernando Sahmkow
e3a2ca96bd Accelerate DMA: Use texture cache async downloads to perform the copies
to host.

WIP
2023-04-29 00:18:21 +02:00
Fernando Sahmkow
3fbee093b2 TextureCache: refactor DMA downloads to allow multiple buffers. 2023-04-29 00:18:21 +02:00
Morph
cb092af3f0 vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers
Intel's SPIR-V shader compiler is broken. For now, skip compiling any compute pipelines until they fix this issue.
This is not a perfect workaround, as there are a small subset of non-compute pipelines that still cause it to crash, but this should cover the majority of crashes.
It is unfortunate that even with a test case reported 6 months ago the issue has not been fixed in favor of fixing "the most popular games and apps".
Intel, you can do better than this.
2023-04-28 17:59:36 -04:00
Fernando Sahmkow
2f15876524 QueryCache: Fix write invalidation. 2023-04-28 23:53:46 +02:00
Fernando Sahmkow
9a7c172f76 MemoryManager: Fix race conditions. 2023-04-28 23:53:02 +02:00
german77
5e16fe4579 core: service: Add FunctionInfoTyped to allow expanding existing interfaces 2023-04-25 23:36:24 -06:00
Fernando Sahmkow
e4dc73f61e Clang format and ddress feedback 2023-04-24 12:38:47 +02:00
Fernando S
9bf19b04f6
Merge pull request #10051 from liamwhite/surface-capabilities
vulkan: pick alpha composite flags based on available values
2023-04-24 12:37:13 +02:00
Fernando S
47cd0586ee
Merge pull request #10056 from vonchenplus/audout_u
core: audio: return result when audio_out initialize failed
2023-04-24 12:36:52 +02:00
Fernando S
2311fa7c84
Merge pull request #10069 from liamwhite/log
maxwell_3d: fix out of bounds array access in size estimation
2023-04-24 12:36:24 +02:00
Narr the Reg
00d76fc5f5 service: nfc: Create mifare interface 2023-04-23 23:28:09 -06:00
Narr the Reg
a3fa64fcc4 service: nfc: Create interface 2023-04-23 23:28:09 -06:00
Fernando Sahmkow
e29ced29fa QueryCache: rework async downloads. 2023-04-23 22:04:14 +02:00
Fernando Sahmkow
7e76c1642c Accuracy Normal: reduce accuracy further for perf improvements in Project Lime 2023-04-23 22:03:44 +02:00
Fernando Sahmkow
fca72beb2d Fence Manager: implement async fence management in a sepparate thread. 2023-04-23 04:48:50 +02:00
Liam
eb7c2314f6 maxwell_3d: fix out of bounds array access in size estimation 2023-04-22 10:35:26 -04:00
Kelebek1
4da4ecb1ff Silence nifm spam 2023-04-22 14:29:58 +01:00
Kelebek1
3346de365a Sort overlap_ids by modification tick before copy 2023-04-22 14:02:10 +01:00
Fernando S
d600183583
Merge pull request #10074 from Kelebek1/fermi_blit
Account for a pre-added offset when using Corner sample mode for 2D blits
2023-04-22 12:06:00 +02:00
bunnei
0f1ff5f34e
Merge pull request #10076 from german77/TryPopMyFriend
core: am: Demote TryPopFromFriendInvitationStorageChannel Log level
2023-04-21 23:15:07 -07:00
bunnei
d0e6eafe23
Merge pull request #10068 from twitchax/twitchax/dr_bind_address
Allow passing `--bind-address` to dedicated room.
2023-04-21 23:13:51 -07:00
bunnei
74d203fbe3
Merge pull request #10060 from german77/no_dead
core: hid: Remove deadzone of virtual controller
2023-04-21 23:13:21 -07:00
german77
7ffc42c397 core: am: Demote TryPopFromFriendInvitationStorageChannel Log level 2023-04-21 22:35:45 -06:00
Kelebek1
4e14b64bfc Account for a pre-added offset when using Corner sample mode for 2D blits 2023-04-21 19:08:21 +01:00
bunnei
0cfeb2e8d7
Merge pull request #10057 from liamwhite/its-not-in-the-timeline
vulkan: use plain fences when timeline semaphores are not available
2023-04-19 16:50:24 -07:00
Aaron Roney
79e32127b3 Run clang-format to fix all. 2023-04-19 17:52:09 +00:00
bunnei
799579c8d2
Merge pull request #10053 from german77/nfp_full
service: nfp: Implement all interfaces
2023-04-19 10:36:28 -07:00
Aaron Roney
3e7af5fbd7 Fix formatting. 2023-04-19 16:26:49 +00:00
Aaron Roney
34d0d94df0 Allow passing bind_address to dedicated room. 2023-04-19 05:37:30 +00:00
FengChen
55a33342cc core: audio: return result when audio_out initialize failed 2023-04-16 12:31:54 +08:00
german77
70a97fb5c7 core: hid: Remove deadzone of virtual controller 2023-04-15 18:41:09 -06:00
Liam
e3fb9b5e00 vulkan: use plain fences when timeline semaphores are not available 2023-04-14 22:53:37 -04:00
bunnei
e0895a8581
Merge pull request #10030 from Wollnashorn/botw-amd-fix
shader_recompiler: Fix ImageGather rounding on AMD/Intel
2023-04-14 16:56:34 -07:00
Narr the Reg
307371e01d service: nfp: Implement debug Interface 2023-04-14 17:03:58 -06:00
Narr the Reg
00800d5289 service: nfp: Implement system interface 2023-04-14 17:03:57 -06:00
Valeri
60c4032b68
input_common: minor fix to mouse movement 2023-04-14 21:27:35 +03:00
Narr the Reg
101c0df79c service: nfp: Use an unique interface 2023-04-13 22:24:27 -06:00
Liam
e37e1d24f9 vulkan: pick alpha composite flags based on available values 2023-04-13 16:38:20 -04:00
Wollnashorn
c0e5ecc399 video_core: Enable ImageGather rounding fix on AMD open source drivers 2023-04-12 17:11:02 +02:00
liamwhite
54b4c84ab6
Merge pull request #10008 from vonchenplus/texture_cache
video_core: update imageinfo implement
2023-04-11 11:59:18 -04:00
liamwhite
4f77275cd5
Merge pull request #10027 from bylaws/master
Add some explicit latency to sample count reporting
2023-04-10 09:23:48 -04:00
Liam
baf4d1c22e kernel: move more memory to application in 8GB arrangement 2023-04-09 19:50:27 -04:00
Liam
abb785f269 kernel: switch extended memory setting to 8GB arrangement 2023-04-08 17:47:26 -04:00
Billy Laws
8908663f12 Use GetGlobalTimeNs as opposed to clock ticks 2023-04-08 21:54:19 +01:00
Wollnashorn
82b78cde73 shader_recompiler: Use vector arithmetic rather than component-wise in ImageGatherSubpixelOffset
Should be more efficient and better readable
2023-04-08 16:13:08 +02:00
Wollnashorn
fe91066f46 video_core: Enable ImageGather with subpixel offset on Intel 2023-04-08 16:12:44 +02:00
Wollnashorn
780240e697 shader_recompiler: Add subpixel offset for correct rounding at ImageGather
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures.
See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary.

This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957, #6956).
2023-04-08 16:12:30 +02:00
bunnei
25c4ae6e11
Merge pull request #10022 from liamwhite/gcc-13
general: fixes for gcc 13
2023-04-08 00:09:06 -07:00
Billy Laws
0afb9631b5 Add some explicit latency to sample count reporting
Some games have very tight scheduling requirements for their audio which can't really be matched on the host, adding a constant to the reported value helps to provide some leeway.
2023-04-03 23:11:36 +01:00
liamwhite
bbdfe1fab1
Merge pull request #10024 from german77/crysis
service: hid: Fix handle validation
2023-04-03 13:06:07 -04:00
liamwhite
ff386e794b
Merge pull request #10004 from Kelebek1/cubemap
[texture_cache] Only upload GPU-modified overlaps
2023-04-03 13:05:52 -04:00
Liam
a9623d5f55 general: fixes for gcc 13 2023-04-02 19:02:04 -04:00
german77
d2ae39bf4b service: hid: Fix handle validation 2023-04-02 02:21:54 -06:00
bunnei
756f013d8a
Merge pull request #10020 from merryhime/update-dynarmic
externals: Update dynarmic to 6.4.6
2023-04-01 21:57:45 -07:00
bunnei
9c94faaa2b core: arm_dynarmic_32: Update SaveContext/LoadContext. 2023-04-01 17:03:08 -07:00
bunnei
6775a6ee02
Merge pull request #9969 from bylaws/master
Audio synchronisation improvements
2023-04-01 14:34:59 -07:00
liamwhite
1ab052952d
Merge pull request #10006 from german77/profile_select
service: am: Improve profile select applet
2023-04-01 09:49:22 -04:00
liamwhite
b2772bcb0d
Merge pull request #9997 from german77/cancel_controller
applet: controller: Implement cancel button
2023-04-01 09:49:08 -04:00
liamwhite
ff4fbaf152
Merge pull request #9999 from german77/new_hid_hurra
service: hid: Implement SetNpadJoyAssignmentModeSingleWithDestination
2023-04-01 09:48:53 -04:00
liamwhite
986336b0d8
Merge pull request #10017 from jbeich/vk-246
externals: update Vulkan-Headers to v1.3.246 to fix -Werror=switch with system package
2023-04-01 09:44:52 -04:00
bunnei
0730dc6c44
Merge pull request #10005 from liamwhite/kernel-atomics
kernel: fix unbounded stack usage in atomics
2023-04-01 01:54:36 -07:00
Jan Beich
083d913eab externals: update Vulkan-Headers to v1.3.246 2023-04-01 05:38:54 +00:00
Feng Chen
ff2089fdf5 video_core: Keep the definition of DimensionControl consistent with nvidia open doc 2023-03-31 12:33:07 +08:00
german77
11edba4974 applet: controller: Implement cancel button 2023-03-30 07:49:44 -06:00
german77
8e84381038 service: hid: Implement SetNpadJoyAssignmentModeSingleWithDestination
Used by Let's Get Fit
2023-03-29 22:03:49 -06:00
Max Dunbar
e446f368d7 Fixes 'Continous' typo 2023-03-29 19:26:12 -07:00
Narr the Reg
668eb5b8da service: am: Improve profile select applet 2023-03-29 08:53:19 -06:00
liamwhite
8bdc51b620
Merge pull request #9505 from liamwhite/request-exit
applets: implement RequestExit
2023-03-29 09:11:34 -04:00
Liam
9efd95cda5 kernel: fix unbounded stack usage in atomics 2023-03-28 22:28:27 -04:00
liamwhite
9c96d40586
Merge pull request #10003 from german77/disconnect
service: hid: Silence warning on MergeSingleJoyAsDualJoy
2023-03-28 09:09:47 -04:00
Kelebek1
c68b4bee2c Only upload GPU-modified overlaps 2023-03-28 11:07:39 +01:00
Morph
cdc846677c telemetry: Add waitpkg instruction 2023-03-27 17:45:22 -04:00
Morph
981bc8aa1c x64: Simplify RDTSC on non-MSVC compilers
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2023-03-27 17:45:22 -04:00
Morph
e1bce50d8b core_timing: Make use of MicroSleep for x64 CPUs
For CPUs that support tpause, this should result in significant CPU power savings over thread yield in this spin wait.
2023-03-27 17:45:22 -04:00
Morph
27c33ab73f x64: Add MicroSleep
MicroSleep allows the processor to pause for a "short" amount of time (in the microsecond range). This is useful for spin-waiting that does not require nanosecond precision.
This uses the new TPAUSE instruction introduced on Intel's newest processors as part of the waitpkg instructions. For CPUs that do not support waitpkg instructions, this is equivalent to yield().

Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2023-03-27 17:45:22 -04:00
Morph
d2cfe25b07 x64: cpu_detect: Add detection of waitpkg instructions
waitpkg introduces 3 instructions, UMONITOR, UMWAIT and TPAUSE.
2023-03-27 17:45:22 -04:00
Billy Laws
530fe24768 audio_core: No longer stall when sink queue is full
Now the audout and audren update rates are tied to the sink status stalling is no longer necessary.
2023-03-27 22:01:41 +01:00
Billy Laws
237934b736 Run clang-format 2023-03-27 22:01:41 +01:00
Billy Laws
ea5dd02db9 audio: Wait for samples on the emulated DSP side to avoid desyncs
Waiting on the host side is inaccurate and leads to desyncs in the event of the sink missing a deadline that require stalls to fix. By waiting for the sink to have space before even starting rendering such desyncs can be avoided.
2023-03-27 21:34:28 +01:00
liamwhite
fbbf532d42
Merge pull request #10002 from german77/log
qt: Fix log softlock
2023-03-27 15:37:44 -04:00
Narr the Reg
c2c7386dfd service: hid: Silence warning on MergeSingleJoyAsDualJoy 2023-03-27 13:25:15 -06:00
Narr the Reg
2fbadc7e1f qt: Fix log softlock 2023-03-27 12:18:46 -06:00
liamwhite
0661f5ccd1
Merge pull request #9984 from liamwhite/global-memory
memory: rename global memory references to application memory
2023-03-27 12:16:40 -04:00
liamwhite
3b30f5d823
Merge pull request #9995 from german77/plain
service: nfp: Add plain amiibo support
2023-03-27 12:16:24 -04:00
Billy Laws
d8fc3f403b audio: Interpolate system manager sample count using host sink sample info
This avoids the need to stall if the host sink sporadically misses the deadline, in such a case the previous implementation would report them samples as being played on-time, causing the guest to send more samples and leading to a gradual buildup.
2023-03-26 22:48:57 +01:00
german77
8802646730 service: nfp: Add plain amiibo support 2023-03-26 14:26:36 -06:00
Liam
1476ffd865 tests: mark integer literals as unsigned 2023-03-26 15:39:07 -04:00
Liam
7017f04ee8 container_hash: use climits 2023-03-26 10:24:33 -04:00
Morph
49f6deecb8 video_core/macro: Make use of Common::HashValue 2023-03-25 23:52:26 -04:00
Morph
f09d192aac tests: Implement tests for verifying HashValue
Values were randomly generated and the verification was done against boost 1.79.
2023-03-25 23:52:26 -04:00
Morph
9971cd1d55 common: Port boost's hash_value implementation
Ports a small subset of boost's hash_value implementation (<= 1.80.0).
2023-03-25 23:52:25 -04:00
Liam
50a59487eb qt: implement RequestExit for applets 2023-03-25 14:49:43 -04:00
Liam
950db851ea applets: implement RequestExit 2023-03-25 12:44:26 -04:00
bunnei
09da9da6fb
Merge pull request #9985 from liamwhite/funny-meme
vulkan: fix scheduler chunk reserve
2023-03-24 23:40:17 -07:00
Ross Schlaikjer
f38ae8e953 Pass GPU page table by reference 2023-03-25 00:25:02 -04:00
liamwhite
cfb9672093
Merge pull request #9983 from Morph1984/boost
CMakeLists: Update boost to 1.81.0
2023-03-24 10:53:30 -04:00
liamwhite
462c430c8b
Merge pull request #9981 from german77/nfp_connect
nfc: Initialize device when controller is connected
2023-03-24 10:53:05 -04:00
Liam
5a2dff87bf vulkan: fix scheduler chunk reserve 2023-03-24 09:09:01 -04:00
Morph
7a8a7545f2
Merge pull request #9975 from liamwhite/more-waiting
vulkan: fix more excessive waiting in scheduler
2023-03-24 00:19:43 -04:00
Morph
abe2ad7aac zstd: Use ZSTD_getFrameContentSize instead of ZSTD_getDecompressedSize 2023-03-23 22:16:20 -04:00
Liam
41d99aa89d memory: rename global memory references to application memory 2023-03-23 20:28:47 -04:00
liamwhite
ac3927074b
Merge pull request #9971 from Morph1984/q
bounded_threadsafe_queue: Use simplified impl of bounded queue
2023-03-23 10:00:31 -04:00
liamwhite
c41a4baf06
Merge pull request #9964 from liamwhite/typed-address
kernel: use KTypedAddress for addresses
2023-03-23 10:00:19 -04:00
Morph
6adaa0d5e2
Merge pull request #9962 from Kelebek1/disable_srgb
[video_core] Disable SRGB border color conversion in samplers
2023-03-23 03:07:00 -04:00
Liam
fb49ec19c1 kernel: use KTypedAddress for addresses 2023-03-22 09:35:16 -04:00
Morph
197d756560 bounded_threadsafe_queue: Refactor Pop
Introduces PopModes to bring waiting logic into Pop, similar to Push.
2023-03-21 22:33:58 -04:00
Morph
8c56481249 bounded_threadsafe_queue: Add producer cv to avoid busy waiting 2023-03-21 22:33:57 -04:00
Narr the Reg
6ff4bf9b1c nfc: Initialize device when controller is connected 2023-03-21 20:09:36 -06:00
bunnei
dba86ee007
Merge pull request #9965 from german77/thankYouEpicBoy
config: Fix controller config from resetting
2023-03-21 17:52:25 -07:00
Morph
407dc917f1 bounded_threadsafe_queue: Deduplicate and add PushModes
Adds the PushModes Try and Wait to allow producers to specify how they want to push their data to the queue if the queue is full.
If the queue is full:
- Try will fail to push to the queue, returning false. Try only returns true if it successfully pushes to the queue. This may result in items not being pushed into the queue.
- Wait will wait until a slot is available to push to the queue, resulting in potential for deadlock if a consumer is not running.
2023-03-21 19:20:21 -04:00
Morph
15d573194c bounded_threadsafe_queue: Add TryPush 2023-03-21 19:17:38 -04:00
Morph
f28ca5361f logging: Make use of bounded queue 2023-03-21 19:17:38 -04:00
Morph
306840a580 bounded_threadsafe_queue: Use simplified impl of bounded queue
Provides a simplified SPSC, MPSC, and MPMC bounded queue implementation using mutexes.
2023-03-21 19:17:32 -04:00
bunnei
3d4c113037
Merge pull request #9970 from bunnei/string-util-view
common: string_util: Use std::string_view for UTF16ToUTF8/UTF8ToUTF16W.
2023-03-19 11:10:16 -07:00
Liam
b9b1318bea vulkan: fix more excessive waiting in scheduler 2023-03-19 13:40:33 -04:00
Liam
43d909949e kernel: fix LOG_TRACE in ipc 2023-03-19 10:02:20 -04:00
bunnei
00d401d639 common: string_util: Use std::string_view for UTF16ToUTF8/UTF8ToUTF16W. 2023-03-18 22:42:25 -07:00
bunnei
0eb3fa05e5 common: bounded_threadsafe_queue: Use polyfill_thread. 2023-03-17 23:42:17 -07:00
bunnei
889454f9bf
Merge pull request #9778 from behunin/my-box-chevy
gpu_thread: Use bounded queue
2023-03-17 22:14:29 -07:00
bunnei
8bcaa8c2e4
Merge pull request #9953 from german77/amiibo_crc
service: nfp: Actually write correct crc
2023-03-17 22:13:57 -07:00
Narr the Reg
c95baf92ce config: Fix controller config from resetting 2023-03-17 22:08:16 -06:00
Kelebek1
a7651168dd Disable SRGB border color conversion for now, to fix shadows in Xenoblade. 2023-03-17 04:46:38 +00:00
Narr the Reg
075a3d1172 service: nfp: Replace crc function with boost equivalent 2023-03-16 17:47:32 -06:00
liamwhite
6d76a54d37
Merge pull request #9955 from liamwhite/color-blend-equation
vulkan: disable extendedDynamicState3ColorBlendEquation on radv
2023-03-15 20:19:45 -04:00
liamwhite
a04061e6ae
Merge pull request #9931 from liamwhite/sched
vk_scheduler: split work queue waits and execution waits
2023-03-15 20:19:35 -04:00
Narr the Reg
7187732454 service: nfp: Close app area and recreate crc 2023-03-15 17:01:06 -06:00
Narr the Reg
5031f5b8b0 service: nfp: Convert mii colors to v3 2023-03-15 17:01:05 -06:00
Liam
da83afdeaf vulkan: disable extendedDynamicState3ColorBlendEquation on radv 2023-03-15 15:55:07 -04:00
Narr the Reg
026fe2e4f4 service: nfp: Actually write correct crc 2023-03-14 23:42:41 -06:00
liamwhite
0c7149d222
Merge pull request #9933 from vonchenplus/texture_format
video_core: Update texture format
2023-03-14 11:35:37 -04:00
FengChen
11ffbee5ae video_core: Better defined ImageInfo parameters 2023-03-14 22:36:34 +08:00
Morph
4c678cfbc8 configure_audio: Fix output mode setting not saving 2023-03-13 17:41:30 -04:00
liamwhite
8870fae674
Merge pull request #9939 from german77/vibration
input_common: sdl: Only send last vibration command
2023-03-13 13:45:40 -04:00
liamwhite
8348c41eab
Merge pull request #9941 from german77/settings
yuzu: Move audio settings to audio section
2023-03-13 13:45:29 -04:00
liamwhite
638044820d
Merge pull request #9943 from vonchenplus/gentleman
video_core: Fix inline_index and draw_texture error
2023-03-13 13:45:17 -04:00
german77
96b8a3ecac input_common: sdl: Only send last vibration command 2023-03-12 21:30:02 -06:00
Liam
c352381ce9 kernel: additional style fixes to KThread, KProcess 2023-03-12 22:10:27 -04:00
Liam
9775a73d1a kernel: fix clang build 2023-03-12 22:10:27 -04:00
Liam
088c434d65 kernel: remove unnecessary finalize calls 2023-03-12 22:10:27 -04:00
Liam
9863db9db4 kernel: convert KProcess to new style 2023-03-12 22:09:27 -04:00
Liam
6bfb4c8f71 kernel: convert KThread to new style 2023-03-12 22:09:09 -04:00
Liam
ac6cbb7134 kernel: prefer std::addressof 2023-03-12 22:09:09 -04:00
Liam
641783df8f kernel: convert KResourceLimit 2023-03-12 22:09:09 -04:00
Liam
c0b9e93b77 kernel: remove kernel_ 2023-03-12 22:09:09 -04:00
Liam
9368e17a92 kernel: remove gratitutous attribute usage 2023-03-12 22:09:09 -04:00
Liam
91fd4e30f2 kernel/svc: convert to new style 2023-03-12 22:09:08 -04:00
Liam
57f1d8ef8d kernel: convert miscellaneous 2023-03-12 22:06:53 -04:00
Liam
d1b53c8d82 kernel: conver KScopedLock, KScopedResourceReservation, KSessionRequest, KSharedMemory, KSpinLock 2023-03-12 22:06:53 -04:00
Liam
7322c99e5f kernel: convert KAbstractSchedulerLock 2023-03-12 22:06:53 -04:00
Liam
467adc1acd kernel: convert KMemoryLayout, KMemoryRegion*, KPageTableSlabHeap, KPriorityQueue 2023-03-12 22:06:53 -04:00
Liam
0483dfae1a kernel: move KMemoryLayout for NX board 2023-03-12 22:06:53 -04:00
Liam
8d1f5bfbd2 kernel: remove KLinkedList 2023-03-12 22:06:53 -04:00
Liam
fdf90c6d75 kernel: convert KConditionVariable, KLightConditionVariable, KLightLock 2023-03-12 22:06:53 -04:00
Liam
097c25b164 kernel: convert KPort, KSession 2023-03-12 22:06:53 -04:00
Liam
d24ab14126 kernel: convert GlobalSchedulerContext, KAddressArbiter, KScopedSchedulerLockAndSleep, KThreadQueue to new style 2023-03-12 22:06:53 -04:00
Liam
3f261f22c9 vk_scheduler: split work queue waits and execution waits 2023-03-12 17:19:44 -04:00
Liam
600f325d87 general: fix spelling mistakes 2023-03-12 11:33:01 -04:00
FengChen
44f10c8dee video_core: Fix ogl status error when draw_texture 2023-03-12 13:33:31 +08:00
FengChen
4e42ba54e5 video_core: Invalid index_buffer flag when inline_index draw 2023-03-12 13:21:26 +08:00
german77
e090a1c6bd yuzu: Move audio settings to audio section 2023-03-11 20:04:36 -06:00
german77
e8af3f29d2 yuzu: Remove console id setting 2023-03-11 19:33:31 -06:00
Fernando S
49643d8134
Merge pull request #9913 from ameerj/acc-dma-refactor
AccelerateDMA: Refactor Buffer/Image copy code and implement for OGL
2023-03-11 20:04:19 +01:00
liamwhite
92c89312fc
Merge pull request #9923 from liamwhite/kht
kernel: add timer pointer to KThreadQueue
2023-03-10 16:19:41 -05:00
liamwhite
e0bd27b674
Merge pull request #9928 from german77/super_nfp
service: nfp: Improve implementation
2023-03-10 13:55:28 -05:00
liamwhite
103380134f
Merge pull request #9925 from ameerj/gl-sync-signal
OpenGL: Prefer glClientWaitSync for OGLSync objects
2023-03-10 13:55:22 -05:00
liamwhite
021af4fd00
Merge pull request #9917 from Morph1984/the-real-time
native_clock: Re-adjust the RDTSC frequency to its real frequency
2023-03-10 13:55:11 -05:00
Feng Chen
c8ad039612 video_core: Update texture format 2023-03-10 21:48:50 +08:00
Narr the Reg
8d5cde6eff service: nfp: Improve implementation 2023-03-09 19:29:28 -06:00
liamwhite
ec4e2d1fab
Merge pull request #9916 from liamwhite/fpu
kernel: clone fpu status on CreateThread
2023-03-09 09:19:15 -05:00
liamwhite
b5c0c1e163
Merge pull request #9822 from ameerj/buffcache-ssbo-addr
buffer_cache: Add logic for non-NVN storage buffer tracking
2023-03-09 09:18:39 -05:00
ameerj
03137086db OpenGL: Prefer glClientWaitSync for OGLSync objects
At least on Nvidia, glClientWaitSync with a timeout of 0 (non-blocking) is faster than glGetSynciv of GL_SYNC_STATUS.
2023-03-08 20:29:25 -05:00
bunnei
4562f7af9a
Merge pull request #9906 from german77/metroid2
input_common: Increase mouse sensitivity range
2023-03-08 10:43:38 -08:00
liamwhite
f3f57f90fe
Merge pull request #9912 from liamwhite/err
hle: rename legacy errors to Results
2023-03-08 09:16:27 -05:00
liamwhite
b5d61f214d
Merge pull request #9904 from liamwhite/ws
kernel: fix WaitSynchronization
2023-03-08 09:16:17 -05:00
liamwhite
3cf88a4d6c
Merge pull request #9896 from Kelebek1/d24s8
Check all swizzle components for red, not just [0]
2023-03-08 09:16:06 -05:00
Morph
67560296c6 perf_stats: Check multicore first
SpeedLimiting is SC only. Since MC is performance oriented we should check for it first to skip checking use_speed_limit.
2023-03-07 23:11:01 -05:00
Morph
d72d753b1a
Merge pull request #9921 from liamwhite/override
general: fix type inconsistencies
2023-03-07 22:42:40 -05:00
Morph
a3ffea6a64
Merge pull request #9918 from liamwhite/fwrapv
kernel: avoid signed overflow UB on MSVC
2023-03-07 22:42:32 -05:00
Morph
b014fdacdb
Merge pull request #9920 from liamwhite/constexpr-bit-cast
common: make BitCast constexpr
2023-03-07 22:42:19 -05:00
Morph
1073346c7f hid: Use nanosecond timestamps instead of ticks 2023-03-07 21:17:47 -05:00
Morph
3053a62375 core: Promote CPU/GPU threads to time critical
And also demote Audren and CoreTiming to High thread priority.
2023-03-07 21:17:46 -05:00
Morph
d718eab351 native_clock: Wait for 10 seconds instead of 30
It was experimentally determined to be sufficient.
2023-03-07 21:17:46 -05:00
Morph
c27a626b5b native_clock: Use RealTimeClock instead of SteadyClock
We want to synchronize RDTSC to real time.
2023-03-07 21:17:46 -05:00
Morph
6f9918552c steady_clock: Introduce a real time clock 2023-03-07 21:17:46 -05:00
Morph
dcd13a7566 native_clock: Re-adjust the RDTSC frequency
The RDTSC frequency reported by CPUID is not accurate to its true frequency.
We will spawn a separate thread to calculate the true RDTSC frequency after a measurement period of 30 seconds has elapsed.
2023-03-07 21:17:46 -05:00
Narr the Reg
757aafa582
input_common: Minor typo issues (#9922) 2023-03-08 03:15:46 +01:00
Liam
1776448df2 kernel: add timer pointer to KThreadQueue 2023-03-07 20:51:29 -05:00
german77
9a9e5844d3 input_common: Increase mouse sensitivity range 2023-03-07 19:31:52 -06:00
Liam
64dcb40db1 common: make BitCast constexpr 2023-03-07 20:26:56 -05:00
Liam
ba4213d956 general: fix type inconsistencies 2023-03-07 20:05:19 -05:00
Liam
d45ac00d48 kernel: avoid signed overflow UB on MSVC 2023-03-07 19:46:48 -05:00
Liam
484641003c kernel: clone fpu status on CreateThread 2023-03-07 19:18:06 -05:00
liamwhite
a7792e5ff8
Merge pull request #9889 from Morph1984/time-is-ticking
core_timing: Reduce CPU usage on Windows
2023-03-07 10:54:13 -05:00
ameerj
268942c8fe gl_rasterizer: Implement AccelerateDMA DmaBufferImageCopy 2023-03-06 22:57:52 -05:00
ameerj
6b9cc0ed23 Refactor AccelerateDMA code 2023-03-06 22:57:45 -05:00
Liam
1d0fe75e7c hle: rename legacy errors to Results 2023-03-06 20:58:42 -05:00
liamwhite
6d61430311
Merge pull request #9890 from Kelebek1/reverb_fix
Fix a bug with the Reverb command in reading from the pre delay line
2023-03-06 11:23:34 -05:00
liamwhite
b210174087
Merge pull request #9910 from jbeich/libc++
kernel: add missing header for libc++
2023-03-06 11:21:51 -05:00
liamwhite
e6349fcd3b
Merge pull request #9905 from german77/usbssl
Service: USB, SSL, PSC: Update
2023-03-06 11:21:37 -05:00
liamwhite
f7e6bda5cd
Merge pull request #9907 from german77/joycon
input_common: joycon: Add stick input from passive reports
2023-03-06 11:21:27 -05:00
liamwhite
31f0fa1065
Merge pull request #9908 from german77/pfp
service: acc: Replace default image with a 32x32 image
2023-03-06 11:21:17 -05:00
Jan Beich
859fb469b8 kernel: add missing header for libc++
In file included from src/core/hle/kernel/k_light_lock.cpp:4:
In file included from src/./core/hle/kernel/k_light_lock.h:8:
src/./core/hle/kernel/k_scoped_lock.h:25:51: error: no member named 'addressof' in namespace 'std'
    explicit KScopedLock(T& l) : KScopedLock(std::addressof(l)) {}
                                             ~~~~~^
2023-03-06 11:49:25 +00:00
Ikko Eltociear Ashimine
c161e3f433
fix typo in settings.h
Intial -> Initial
2023-03-06 20:28:47 +09:00
Narr the Reg
8a501ff30b service: acc: Replace default image with a 32x32 image 2023-03-05 16:36:19 -06:00
german77
97704b8da9 input_common: joycon: Add stick input from passive reports 2023-03-05 12:50:15 -06:00
Narr the Reg
1f57ae6949 service: psc: Update names 2023-03-05 12:02:10 -06:00
Narr the Reg
f01540da6c service: ssl: Add missing properties and update names 2023-03-05 12:02:04 -06:00
Narr the Reg
54711df739 service: usb: Update names 2023-03-05 10:45:24 -06:00
Liam
644ee0043e kernel: fix WaitSynchronization 2023-03-05 10:29:10 -05:00
Fernando Sahmkow
8a3411b417 Engines: Implement Accelerate DMA Texture. 2023-03-05 12:18:00 +01:00
Morph
376a414f5b native_clock: Round RDTSC frequency to the nearest 1000 2023-03-05 02:36:31 -05:00
Morph
026eaddbee timer_resolution: Set current process to High QoS
Ensures that this process is treated as a high performance process by the Windows scheduler.
2023-03-05 02:36:31 -05:00
Morph
194cf0b497 hardware_properties: Update BASE_CLOCK_RATE to exactly 1020 MHz 2023-03-05 02:36:31 -05:00
Morph
bff1453282 core_timing: Use higher precision sleeps on Windows
The precision of sleep_for and wait_for is limited to 1-1.5ms on Windows.
Using SleepForOneTick() allows us to sleep for exactly one interval of the current timer resolution.
This allows us to take advantage of systems that have a timer resolution of 0.5ms to reduce CPU overhead in the event loop.
2023-03-05 02:36:31 -05:00
Morph
7e353082ac main: (Windows) Set the current timer resolution to the maximum
Increases the precision of thread sleeps on Windows.
2023-03-05 02:36:31 -05:00
Morph
7fffdf83b7 wall_clock: Make use of SteadyClock 2023-03-05 02:36:31 -05:00
Morph
1ed49f92dd common: Implement a method to change the Windows timer resolution
This utilizes undocumented NtDll functions to change the current timer resolution from the default of 1ms.
2023-03-05 01:41:28 -05:00
Morph
bd09c82521 common: Implement a high resolution steady clock
This implementation provides a consistent, high performance, and high resolution clock where/when std::chrono::steady_clock does not provide sufficient precision.
2023-03-05 01:41:19 -05:00
Morph
ce8f4da638
Merge pull request #9884 from liamwhite/service-cleanup
service: miscellaneous cleanups
2023-03-03 22:51:17 -05:00
Kelebek1
a7fb80e612 Check all swizzle components for red, not just [0], pass float border color rather than int 2023-03-04 02:33:50 +00:00
Behunin
44518b225c gpu_thread: Use bounded queue 2023-03-03 18:20:56 -07:00
bunnei
1f98634371
Merge pull request #9855 from liamwhite/kern-16-support
kernel: support for 16.0.0
2023-03-03 14:42:00 -08:00
Kelebek1
104cb6aa0a Fix a bug with the Reverb command in reading from the pre_delay line. 2023-03-02 06:00:55 +00:00
Liam
ec6ee04c64 vulkan_common: disable vertexInputDynamicState on unsupported driver 2023-03-01 22:48:12 -05:00
Liam
97f7f7bad5 kernel: be more careful about kernel address keys 2023-03-01 10:42:45 -05:00
Liam
c4ba088a5d kernel: refactor priority inheritance to represent locks as C++ objects 2023-03-01 10:42:45 -05:00
Liam
96bd7ea42d kernel: simplify AddressSpaceInfo, update values 2023-03-01 10:42:45 -05:00
Liam
367e89f984 kernel: barrier memory before condition variable write 2023-03-01 10:42:45 -05:00
Liam
9f9b64cda2 kernel: document previous location of interrupt disables in arbiter/condvar 2023-03-01 10:42:45 -05:00
Liam
4165ac0680 kernel: adjust pool allocations 2023-03-01 10:42:45 -05:00
Liam
62711fec02 kernel: simplify KAbstractSchedulerLock::Lock 2023-03-01 10:42:45 -05:00
Liam
0746a2084e kernel: add InfoType::IoRegionHint 2023-03-01 10:42:45 -05:00
Liam
809148e1a5 nvnflinger: fix name 2023-03-01 10:39:49 -05:00
Liam
65be230fdd service: move hle_ipc from kernel 2023-03-01 10:39:49 -05:00
Liam
4a1aa98598 sm:: remove unused member 2023-03-01 10:39:36 -05:00
liamwhite
97f7a560f3
Merge pull request #9832 from liamwhite/hle-mp
service: HLE multiprocess
2023-03-01 10:38:20 -05:00
Alexandre Bouvier
57fd8b1f45 cmake: use correct boost imported targets 2023-02-28 17:56:01 +01:00
liamwhite
22432668be
Merge pull request #9859 from liamwhite/tmem-use
service: avoid direct pointer access of transfer memory objects
2023-02-27 19:46:10 -05:00
liamwhite
50575c317e
Merge pull request #9874 from german77/violet
service: btm: Fix handle functions
2023-02-27 19:46:01 -05:00
Matías Locatti
5f2cbf53d7
Merge pull request #9872 from goldenx86/partialLTO
Partial LTO
2023-02-27 19:38:36 -03:00
Matías Locatti
c38bb96a2c Partially apply LTO to only core and video_core projects. 2023-02-27 18:44:14 -03:00
Narr the Reg
71ca956d5c service: btm: Fix handle functions 2023-02-27 12:40:47 -06:00
Narr the Reg
ff11fdb07e
Revert "yuzu: config: Remove player 8 and 9 from config file" 2023-02-26 14:39:13 -06:00
liamwhite
26c1edf2f0
Merge pull request #9849 from ameerj/async-astc
texture_cache: Add asynchronous ASTC texture decoding
2023-02-26 09:20:12 -05:00
Narr the Reg
60688bf0d5 yuzu: config: Remove player 8 and 9 from config file 2023-02-25 22:20:32 -06:00
ameerj
2ce5bb9bd6 buffer_cache: Add logic for non-NVN storage buffer tracking 2023-02-25 16:24:21 -05:00
liamwhite
833afb7ce3
Merge pull request #9848 from german77/metroid_motion
input_common: Implement dedicated motion from mouse
2023-02-25 12:44:13 -05:00
liamwhite
290ec3eb2f
Merge pull request #9857 from german77/fwupdate
core: Update service function tables to 16.0.0+
2023-02-25 12:44:06 -05:00
liamwhite
d5bfc36e90
Merge pull request #9861 from german77/bustype
core: hidbus: Fix BusType size
2023-02-25 12:44:00 -05:00
german77
cfd69e2e58 config: Fix per game Force max clock 2023-02-25 10:12:07 -06:00
Narr the Reg
5e4ea04a64 core: hidbus: Fix BusType size 2023-02-24 21:22:27 -06:00
Narr the Reg
39ca7b2928 core: Update service function tables to 16.0.0+ 2023-02-24 18:17:36 -06:00
Liam
975186ad4d am: avoid direct pointer access of transfer memory objects 2023-02-24 12:50:54 -05:00
Liam
de4e5db330 hid: avoid direct pointer access of transfer memory objects 2023-02-24 12:48:07 -05:00
ameerj
b5bcd8c71b configuration: Add async ASTC decode setting 2023-02-22 18:21:09 -05:00
ameerj
090bc588e5 texture_cache: Add async texture decoding 2023-02-22 00:26:07 -05:00
Narr the Reg
739a81055f core: hid: Restore motion state on refresh and clamp motion values 2023-02-21 21:55:23 -06:00
Narr the Reg
673accd630 input_common: Implement dedicated motion from mouse 2023-02-21 21:55:22 -06:00
Narr the Reg
db2785082b settings: Add more input settings to the log 2023-02-21 19:48:38 -06:00
Narr the Reg
9477181d09 core: hid: Fix native mouse mappings 2023-02-21 19:48:38 -06:00
liamwhite
8f3e2a1b48
Merge pull request #9847 from german77/timeout
yuzu: Set a lower timeout for discord presence
2023-02-21 20:39:19 -05:00
Narr the Reg
d482ec32a4 yuzu: Set a lower timeout for discord presence 2023-02-21 18:23:58 -06:00
liamwhite
11f6bb1532
Merge pull request #9846 from merryhime/type-const
svc: Fix type consistency (exposed on macOS)
2023-02-21 18:58:04 -05:00
liamwhite
ba05301e1b
Merge pull request #9841 from abouvier/httplib-update
externals: Update cpp-httplib to latest
2023-02-21 18:57:55 -05:00
Merry
c9678bda24 svc: Fix type consistency (exposed on macOS) 2023-02-21 21:39:17 +00:00
Alexandre Bouvier
83afc12475 externals: Update cpp-httplib to latest 2023-02-21 20:55:37 +01:00
MonsterDruide1
d746cfc018 net: translate ECONNRESET network error 2023-02-21 20:47:59 +01:00
Liam
72e5552409 sm:: fix lingering session initialization issues 2023-02-21 12:19:25 -05:00
Liam
87749d217e cheat_engine: add check for hid initialization 2023-02-21 12:19:25 -05:00
Liam
6e0a33089b sm:: support service registration deferral 2023-02-21 12:19:25 -05:00
Liam
a936972614 service: refactor server architecture
Converts services to have their own processes
2023-02-21 12:19:25 -05:00
Liam
23151ff498 core: defer cpu shutdown 2023-02-21 12:19:25 -05:00
german77
165ebbb63c Qt: Reintroduce scaling for touch input 2023-02-19 17:52:44 -06:00
liamwhite
898c5d35a5
Merge pull request #9771 from ameerj/host-thread-id
kernel: Refactor thread_local variable usage
2023-02-19 13:12:43 -05:00
liamwhite
a4d0663158
Merge pull request #9588 from liamwhite/bylaws-reverts
Revert "shader_recompiler: Align SSBO offsets to meet host requirements"
2023-02-19 13:11:57 -05:00
liamwhite
e531d1fae9
Merge pull request #9815 from german77/qt-mouse
Qt: Fix mouse scalling
2023-02-18 16:25:48 -05:00
Morph
41183b622f
Merge pull request #9825 from liamwhite/object-name
kernel: add KObjectName
2023-02-18 16:22:50 -05:00
bunnei
e91ff9b7bd
Merge pull request #9810 from Kelebek1/nvdec_threads
Allow >1 cpu threads on video decoding, disable multi-frame decoding
2023-02-17 09:44:38 -08:00
Liam
1773a1039f kernel: add KObjectName 2023-02-17 09:16:05 -05:00
Mai
61b1772e51
Merge pull request #9817 from german77/save
yuzu: Write to config file on important config changes
2023-02-16 22:58:29 -05:00
Narr the Reg
0a88c7dbbe yuzu: Shutdown game on restart to reload per game config 2023-02-16 21:17:30 -06:00
Narr the Reg
df9c8bdfd9 yuzu: Write to config file on important config changes 2023-02-16 21:17:01 -06:00
bunnei
889bfce447
Merge pull request #9802 from Kelebek1/wait_data_cache
Re-add the invalidate_texture_data_cache register
2023-02-16 12:27:24 -08:00
bunnei
744434de38
Merge pull request #9769 from Kelebek1/audio_oob
[audio_core] Fix depop prepare
2023-02-16 12:26:23 -08:00
Narr the Reg
17207939e5 input_common: Split mouse input into individual devices 2023-02-16 14:22:13 -06:00
german77
57aaf00a0c Qt: Fix mouse scalling 2023-02-15 20:57:45 -06:00
liamwhite
6d77de96da
Merge pull request #9796 from liamwhite/current
general: rename CurrentProcess to ApplicationProcess
2023-02-15 17:42:45 -05:00
liamwhite
04d2d2ef5f
Merge pull request #9782 from arades79/fix-consexpr-value-declaration-usage
Fix consexpr value declaration usage
2023-02-15 17:42:38 -05:00
bunnei
0eb40117af
Merge pull request #9809 from liamwhite/unused-service
service: remove deleted services
2023-02-15 12:33:59 -08:00
arades79
98631b45b6
remove constexpr from virtual function
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14 19:14:29 -05:00
liamwhite
58a2c19982
Revert "main: Fix borderless fullscreen for high dpi scaled displays" 2023-02-14 16:29:35 -05:00
Kelebek1
3b50906f00 Reimplement the invalidate_texture_data_cache register 2023-02-14 19:34:10 +00:00
Kelebek1
139b645aa2 Allow >1 cpu threads on video decoding, disable multi-frame decoding 2023-02-14 18:55:46 +00:00
Liam
79fbdfca17 service: remove deleted services 2023-02-14 12:38:21 -05:00
arades79
880b6e9795 use a string view to skip allocation
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14 12:35:40 -05:00
arades79
683019878f remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistency
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14 12:35:39 -05:00
arades79
26e44a3be4 apply clang-format
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14 12:35:39 -05:00
arades79
392a029ef4 don't use static inside constexpr function
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14 12:33:11 -05:00
arades79
45e13b03f3 add static lifetime to constexpr values to force compile time evaluation where possible
Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14 12:33:11 -05:00
liamwhite
5f5a6e4b2e
Merge pull request #9795 from Kelebek1/biquad_fix
[audio_core] Use different state offset for each biquad filter channel
2023-02-14 09:11:26 -05:00
liamwhite
d87db919f9
Merge pull request #9793 from Morph1984/borderless-hidpi
main: Fix borderless fullscreen for high dpi scaled displays
2023-02-14 09:11:15 -05:00
Liam
ceda2d280e general: rename CurrentProcess to ApplicationProcess 2023-02-13 19:03:12 -05:00
Kelebek1
3a90ed99be Fix biquad filter command's state buffer offset 2023-02-13 16:21:29 +00:00
Liam
4363ca304a kernel: use GetCurrentProcess 2023-02-13 11:05:14 -05:00
bunnei
770a49616d
Merge pull request #9784 from m-HD/master
settings: added missing graphical settings to RestoreGlobalState()
2023-02-12 21:49:45 -08:00
Morph
d6677b50f6 main: Fix borderless fullscreen for high dpi scaled displays
On Windows, a borderless window will be treated the same as exclusive fullscreen
when the window geometry matches the physical dimensions of the screen.
However, with High DPI scaling, when the devicePixelRatioF() is > 1, the borderless
window apparently is not treated as exclusive fullscreen and functions correctly.
One can verify and replicate this behavior by using a high resolution (4K) display,
and switching between 100% and 200% scaling in Windows' display settings.
At 100%, without the addition of 1, it is treated as exclusive fullscreen.
At 200%, with or without the addition of 1, it is treated as borderless windowed.
Therefore, we can use (read: abuse) this difference in behavior to fix this issue for
those with higher resolution displays when the Qt scaling ratio is > 1.
Should this behavior be changed in the future, please revisit this workaround.
2023-02-12 21:58:49 -05:00
bunnei
8b74047b1b
Merge pull request #9757 from german77/gyro
core: hid: Use gyro thresholds modes set by the game
2023-02-12 00:19:22 -08:00
bunnei
f70fcdb873
Merge pull request #9746 from ameerj/ogl-msaa-texcache
texture_cache: OpenGL: Implement MSAA uploads and copies
2023-02-12 00:18:52 -08:00
m-HD
9df92bad2a
Update settings.cpp
added missing graphical settings to RestoreGlobalState()
2023-02-12 02:58:39 +01:00
ameerj
93cf2b3ca8 texture_cache: OpenGL: Implement MSAA uploads and copies 2023-02-11 15:43:07 -05:00
Colin Kinloch
868ab0d3b4 kernel/svc: Fix undefined info_id 2023-02-11 18:00:34 +00:00
liamwhite
c97b5c9ff9
Merge pull request #9777 from vonchenplus/speed_up_video_copy
video_core: Speed up video frame data copy
2023-02-11 12:35:16 -05:00
Kelebek1
2e02ed8bb5 Add fallback for memory read/write in case the address goes over a 4K page 2023-02-11 16:27:43 +00:00
liamwhite
709879cfc1
Merge pull request #9773 from bunnei/fix-process-resource
core: kernel: k_process: Use application system resource.
2023-02-11 10:28:50 -05:00
liamwhite
89c09d639a
Merge pull request #9768 from merryhime/biquad-rounding
biquad_filter: Fix rounding in ApplyBiquadFilterInt
2023-02-11 10:28:42 -05:00
liamwhite
1040f1f503
Merge pull request #9744 from behunin/quick-release
gpu_thread: Remove OnCommandListEndCommand
2023-02-11 10:28:30 -05:00
FengChen
4adf39edf2 video_core: Speed up video frame data copy 2023-02-11 22:18:54 +08:00
Kelebek1
19e1ea6a02 Fix depop prepare receiving bad mix infos and writing out of bounds, and update aux a bit, may help 2023-02-11 10:21:25 +00:00
bunnei
abd826ba87
Merge pull request #9742 from liamwhite/svc-wrap-only
kernel/svc: switch to generated wrappers
2023-02-10 21:41:22 -08:00
bunnei
023ac943aa
Merge pull request #9759 from german77/pro_controller
input_common: Reintroduce custom pro controller support
2023-02-10 21:14:40 -08:00
bunnei
e79270507b core: kernel: k_process: Use application system resource. 2023-02-10 21:03:39 -08:00
ameerj
5e746da981 kernel: Refactor thread_local variable usage
On MSVC at least, there seems to be a non-trivial overhead to calling GetHostThreadId().

This slightly reworks the host_thread_id variable to reduce some of the complexity around its usage, along with some small refactors around current_thread and dummy thread
2023-02-10 20:43:06 -05:00
Merry
3c60bc36a1 biquad_filter: Clamp f64 in ApplyBiquadFilterFloat 2023-02-10 20:43:34 +00:00
Merry
9bdcb1070f biquad_filter: Fix rounding in ApplyBiquadFilterInt 2023-02-10 20:34:52 +00:00
liamwhite
b3a8c0dc49
Merge pull request #9761 from Morph1984/oops
main: Re-add QtWebEngine zoom factor
2023-02-10 10:54:10 -05:00
Liam
36b70dec05 kernel: avoid usage of bit_cast 2023-02-10 09:13:58 -05:00
Morph
3fbb93e5c9 main: Re-add QtWebEngine zoom factor
For some reason, I had removed this in ad6cec71ec

This should fix any improperly scaled web applets.
2023-02-09 22:57:37 -05:00
liamwhite
c5743d5499
Merge pull request #9736 from Kelebek1/dynamic_vertex_attribs
Remove fake vertex bindings when dynamic state is enabled
2023-02-09 22:14:55 -05:00
liamwhite
cbb289fbee
Merge pull request #9750 from ameerj/glsl-sample-id-mask
glsl_emit_context: Remove redeclarations of gl_SampleID and gl_SampleMask
2023-02-09 22:14:47 -05:00
Narr the Reg
acba9a6b76 input_common: Reintroduce custom pro controller support 2023-02-09 20:08:54 -06:00
Narr the Reg
7c0dcea96c audio: cubeb: Fix yuzu crashing when it test for latency 2023-02-09 19:38:03 -06:00
Narr the Reg
5e9fa5def5 core: hid: Use gyro thresholds modes set by the game 2023-02-09 19:07:50 -06:00
ameerj
eb9f16dce4 buffer_base: Partially revert changes from #9559
This fixes a regression where Yoshi's Crafted World (and potentially other titles) would enter an infinite loop when GPU Accuracy was set to "Normal"
2023-02-08 19:37:23 -05:00
ameerj
04139cb3ed glsl_emit_context: Remove redeclarations of gl_SampleID and gl_SampleMask
These built-ins seem to be available without needing to be declared for fragment shaders, similar i.e. to gl_FragDepth
2023-02-08 19:34:39 -05:00
liamwhite
f6477b91f9
Merge pull request #9747 from german77/SetSupportedNpadIdTypes
service: hid: Return error if arguments of SetSupportedNpadIdType is invalid
2023-02-08 10:09:26 -05:00
Narr the Reg
c27006e99d service: hid: Return error if arguments of SetSupportedNpadIdType is invalid 2023-02-07 21:11:39 -06:00
Mai
f3b532d091
Merge pull request #9739 from liamwhite/old-gcc-fix
kernel: fix compilation with older gcc
2023-02-07 22:10:35 -05:00
Behunin
8551ac6008 Remove OnCommandListEndCommand
Call rasterizer->ReleaseFences() directly
2023-02-07 17:21:17 -07:00
Liam
2415d37ea2 kernel/svc: switch to generated wrappers 2023-02-06 23:57:44 -05:00
liamwhite
1f3e8d633a
Merge pull request #4949 from Morph1984/hidpi-temp-fix
main: Enable High DPI fixes for Qt >= 5.14
2023-02-06 23:20:49 -05:00
bunnei
ecbf74b87a
Merge pull request #9644 from SaiKai/volume_quicksetting
add volume quicksetting with volume slider
2023-02-06 17:10:44 -08:00
Liam
82c2a3da9f kernel: fix compilation with older gcc 2023-02-06 13:14:27 -05:00
Matías Locatti
69eaad18a5
Update yuzu_cmd's default_ini.h
Rename FSR, add missing resolution multipliers, and SMAA
2023-02-06 06:01:51 -03:00
Kelebek1
8ae2a664d2 Remove fake vertex bindings when dynamic state is enabled 2023-02-05 22:28:03 +00:00
Liam
92eb091ddb kernel/svc: Split implementations into separate files 2023-02-04 22:37:43 -05:00
bunnei
a64fc3ee77
Merge pull request #9720 from SoRadGaming/discordPresenceUpdate
Game Image with Discord RPC
2023-02-04 18:37:21 -08:00
Sorab
923c17f1ae Add Game Icon for Discord RPC
Connected to Yuzu Compatibility Page
2023-02-05 12:40:57 +11:00
liamwhite
f5ed51bdf3
Merge pull request #9730 from german77/cmd_arg
yuzu_cmd: Order arguments alphabetically and port arguments from Qt
2023-02-04 15:01:17 -05:00
liamwhite
236b54376d
Merge pull request #9729 from german77/sdl_input
yuzu_cmd: Fix touch and controller input
2023-02-04 15:01:07 -05:00
german77
3cd0b816cc yuzu_cmd: Order arguments alphabetically and port arguments from Qt 2023-02-04 11:33:29 -06:00
german77
ebca59b8e9 yuzu_cmd: Fix mismatching controller input 2023-02-04 11:05:57 -06:00
german77
424643f9af yuzu_cmd: Fix touch input 2023-02-04 10:31:12 -06:00
ameerj
4678f53463 shader_recompiler/value.h: Remove lingering references to S32 2023-02-04 00:13:47 -05:00
bunnei
5aca9386cf
Merge pull request #9717 from german77/less_is_better
input_common: Simplify stick from button
2023-02-03 16:09:29 -08:00
Jonas Gutenschwager
2a491f7aaa
remove disambiguation argument from mute text
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-02-04 00:00:20 +01:00
ameerj
979e4d9950 fsp_srv: Copy HLE Read Buffer for OutputAccessLogToSdCard 2023-02-03 00:12:16 -05:00
ameerj
2d2522693e Revert "Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span"
This reverts commit 25fc5c0e11, reversing
changes made to af20e25081.
2023-02-03 00:08:45 -05:00
Mai
9083ad816f
Merge pull request #9713 from unfamiliarplace/master
Added 'Hide empty rooms' toggle to lobby
2023-02-02 23:54:48 -05:00
bunnei
25fc5c0e11
Merge pull request #9718 from yuzu-emu/revert-9508-hle-ipc-buffer-span
Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer"
2023-02-02 19:04:50 -08:00
bunnei
af20e25081
Merge pull request #9704 from liamwhite/das
kernel: add KDeviceAddressSpace
2023-02-02 19:00:23 -08:00
Luke Sawczak
54ab154696 added 'Hide empty rooms' toggle to lobby
fixed typo

fixed typo

fixed typo

clang
2023-02-02 18:46:28 -06:00
liamwhite
b01698775b
Revert "hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer" 2023-02-02 15:53:28 -05:00
Narr the Reg
2f2e88c3fb input_common: Simplify stick from button 2023-02-02 10:13:27 -06:00
liamwhite
8a33f8bd30
Merge pull request #9708 from ameerj/gl-context-flush
gl_shader_cache: Force context flush when loading disk shader cache
2023-02-01 22:38:13 -05:00
liamwhite
a9a860a4f7
Merge pull request #9703 from ameerj/txq-ms
shaders: Fix TXQ with MSAA textures
2023-02-01 22:38:00 -05:00
Liam
7d1c3a3f59 kernel: add KDeviceAddressSpace 2023-02-01 17:18:21 -05:00
bunnei
92c5ab33b7
Merge pull request #9696 from german77/please_forgive_me_for_this_sin
input_common: Implement turbo buttons
2023-02-01 12:08:34 -08:00
german77
ce1895497d yuzu: config: Draw turbo buttons with a different color 2023-02-01 12:42:06 -06:00
german77
75e81885b0 input_common: Implement turbo buttons 2023-02-01 12:42:05 -06:00
bunnei
de28cd0c2d
Merge pull request #9697 from liamwhite/kcap
kernel: add KCapabilities
2023-01-31 10:51:10 -08:00
bunnei
ed4a88bd93
Merge pull request #9508 from ameerj/hle-ipc-buffer-span
hle_ipc: Use std::span to avoid heap allocations/copies when calling ReadBuffer
2023-01-30 12:17:09 -08:00
liamwhite
e74660673b
Merge pull request #9701 from german77/common_protocol
input_common: joycon: Remove Magic numbers from common protocol
2023-01-30 09:02:12 -05:00
liamwhite
9de88cb5a7
Merge pull request #9631 from vonchenplus/vulkan_clear
video_core: Implement vulkan clear specified channel
2023-01-30 09:01:55 -05:00
Liam
67a8740af6 kernel: add KCapabilities 2023-01-29 22:08:28 -05:00
ameerj
720ff38097 gl_compute_pipeline: Force context flush when loading shader cache 2023-01-29 21:32:12 -05:00
Narr the Reg
c318a4c80b input_common: joycon: Remove Magic numbers from common protocol 2023-01-29 20:12:58 -06:00
ameerj
01eeda74a6 gl_graphics_pipeline: Force context flush when loading shader cache 2023-01-29 20:26:49 -05:00
Narr the Reg
11fea5deea input_common: joycon: Fill missing enum data 2023-01-29 19:11:46 -06:00
Levi Behunin
d5fc56db4b Move to Clang Format 15
Depends on https://github.com/yuzu-emu/build-environments/pull/69

clang-15 primary run
2023-01-29 17:49:42 -07:00
ameerj
a63e17566a spirv: Fix TXQ with MSAA textures 2023-01-29 13:47:30 -05:00
ameerj
a1d8306bfd emit_glasm_image: Fix TXQ with MSAA textures 2023-01-29 13:42:34 -05:00
ameerj
08feba2b56 emit_glsl_image: Implement TXQ with MSAA textures
Also fixes for texture buffers, which do not have mips eithers.
2023-01-29 13:31:47 -05:00
liamwhite
3aab574521
Merge pull request #9699 from ameerj/texture-pass-desc
texture_pass: Fix texture descriptors comparisons
2023-01-29 12:27:41 -05:00
liamwhite
149271923c
Merge pull request #9698 from ameerj/texture-pass-handle
texture_pass: Refactor texture handle retrieval
2023-01-29 12:27:33 -05:00
liamwhite
208e635f37
Merge pull request #9694 from ameerj/txq-mips
shader_recompiler: TXQ: Skip QueryLevels when possible
2023-01-29 12:27:26 -05:00
liamwhite
d960723dc9
Merge pull request #9684 from liamwhite/read-the-spec
polyfill_thread: satisfy execution ordering requirements of stop_callback
2023-01-29 09:35:42 -05:00
bunnei
9170387e71
Merge pull request #9689 from german77/joycon-calibration
input_common: joycon: Remove magic numbers from calibration protocol
2023-01-29 02:43:14 -08:00
bunnei
a3aedcce65
Merge pull request #9691 from ameerj/msaa-texcache
texture_cache: Fix tracking of MSAA image views
2023-01-28 23:47:45 -08:00
liamwhite
236f591bde
Merge pull request #9690 from german77/whoops
yuzu: config: Avoid reading deleted object
2023-01-28 22:28:38 -05:00
ameerj
0d820f2dab texture_pass: Fix texture descriptors comparisons 2023-01-28 21:23:52 -05:00
ameerj
9bb429999e texture_pass: Refactor texture handle retrieval 2023-01-28 21:11:38 -05:00
bunnei
40e7d78179
Merge pull request #9687 from ameerj/ogl-shader-ms
glasm, glsl: Implement multisampled Image Fetch
2023-01-28 16:32:11 -08:00
bunnei
159aab9a97
Merge pull request #9682 from ameerj/shader-s32
shader_recompiler: Remove S32 IR type
2023-01-28 14:00:11 -08:00
ameerj
2c2e019a44 shader_recompiler: TXQ: Skip QueryLevels when possible 2023-01-28 16:25:18 -05:00
ameerj
c0cedbae94 emit_glsl_image: Fix ImageFetch for MSAA textures 2023-01-28 14:39:27 -05:00
Narr the Reg
e84a441d75 yuzu: config: Avoid reading deleted object 2023-01-28 12:50:27 -06:00
liamwhite
cd138540e2
Merge pull request #9661 from SoRadGaming/LDNhostnameSupport
LDN hostname support in direct connect
2023-01-28 12:09:57 -05:00
SoRadGaming
ad712926d6 LDN Hostname Support in Direct Connect
- Added IPv6 & Namespace support in direct connection Regex
- Updated Tooltip for Direct Connect UI
- Removed Dropdown Connection Type in Direct Connect
2023-01-28 18:33:21 +11:00
ameerj
c2fb7b64ce texture_cache: Adjust image view sizes by MSAA samples 2023-01-28 00:15:29 -05:00
FengChen
818631a412 video_core: Implement vulkan clear specified channel 2023-01-28 12:53:05 +08:00
Liam
619c0e70f0 polyfill_thread: satisfy execution ordering requirements of stop_callback 2023-01-27 21:34:49 -05:00
bunnei
2efe42fc93
Merge pull request #9677 from Morph1984/sleep-one
polyfill_thread: Implement StoppableTimedWait
2023-01-27 18:28:03 -08:00
Narr the Reg
4e29afefc4 input_common: joycon: Replace ReadSPI vector with span 2023-01-27 18:45:25 -06:00
liamwhite
6fa86989f1
Merge pull request #9539 from Wollnashorn/opengl-fsr
video_core/opengl: Added FSR upscaling filter to the OpenGL renderer
2023-01-27 19:28:35 -05:00
Narr the Reg
8647c72778 input_common: joycon: Remove magic numbers from calibration protocol 2023-01-27 17:12:04 -06:00
bunnei
32b2a72e7b
Merge pull request #9666 from liamwhite/wait-for-me
kernel: fix incorrect locking order in suspension
2023-01-27 15:06:09 -08:00
ameerj
0f795603fc glasm: Add MS sampler types 2023-01-27 02:09:18 -05:00
ameerj
5710e90150 glsl: Add MS sampler types 2023-01-27 02:09:17 -05:00
Liam
e9e1e7aa3a kernel: unbreak min/max template deduction on Apple Clang 2023-01-26 17:43:37 -05:00
Wollnashorn
c4a49eb1dd video_core/opengl: Add FSR upscaling filter to the OpenGL renderer 2023-01-26 21:43:33 +01:00
bunnei
7d0a77a825
Merge pull request #9683 from german77/high_power_joycon
input_common: Implement SetLowPowerMode and TriggersElapsed
2023-01-26 10:56:31 -08:00
Narr the Reg
49707916db input_common: Implement SetLowPowerMode and TriggersElapsed for the joycon driver 2023-01-26 11:21:04 -06:00
bunnei
5669692b4e
Merge pull request #9670 from merryhime/revert-af5ecb0b15d4449f58434e70eed835cf71fc5527
Revert "MemoryManager: use fastmem directly."
2023-01-25 22:28:55 -08:00
bunnei
58ba508e9a
Merge pull request #9652 from liamwhite/ms
spirv: fix multisampled image fetch
2023-01-25 22:28:18 -08:00
bunnei
2158ccda3b
Merge pull request #9604 from liamwhite/pt
kernel: KPageTable: update
2023-01-25 22:27:48 -08:00
ameerj
93cc6e4d99 shader_recompiler: Remove S32 IR type
The frontend IR opcodes do not distinguish between signed and unsigned integer types.

Fixes broken shaders when IR validation/graphics debugging is enabled for shaders that used BitCastS32F32
2023-01-25 22:03:15 -05:00
Morph
ad6cec71ec main: Convert to device independent coordinates for scaling
devicePixelRatioF() returns the scaling ratio when high dpi scaling is enabled.
When high dpi scaling is enabled, the raw screen coordinate system is scaled to device independent coordinates.
2023-01-25 21:16:05 -05:00
Morph
5be85c556e main: Use passthrough scaling for non-windows OSes
They should be better than windows when handling fractional scaling ratios.
2023-01-25 21:16:04 -05:00
Morph
6a1b089a50 main: Enable High DPI fixes for Qt >= 5.14
This uses Qt's new high DPI application attributes for scaling the current window.
However, these aren't perfect as scaling with non integer scales will cause artifacts in UI, icons and other elements.
Therefore, we use a heuristic to select an appropriate integer scale value depending on the current screen resolution and applies this to the application.
2023-01-25 21:16:04 -05:00
Morph
b6e5a6bda8 main: Only set AA_DisableWindowContextHelpButton below Qt6
This is fortunately disabled by default on Qt6, so we just have to check whether we are compiling with Qt6 or not.
2023-01-25 18:45:22 -05:00
liamwhite
0d1a9a12c9
Merge pull request #9675 from Morph1984/ini-concat
default_ini: Split and concatenate the config string literal
2023-01-25 17:57:09 -05:00
liamwhite
4ec50dfd4f
Merge pull request #9668 from Morph1984/qt-why-is-this-not-the-default
main: Globally disable the "?" button on dialogs
2023-01-25 17:56:58 -05:00
liamwhite
abda68f3a4
Merge pull request #9676 from german77/revert-stick-range
Revert #9617 and fix it on input_common
2023-01-25 17:56:47 -05:00
Morph
c55147b24a input_common: Make use of StoppableTimedWait 2023-01-25 16:43:04 -05:00
Morph
9b0563fa87 polyfill_thread: Implement StoppableTimedWait
StoppableTimedWait allows for a timed wait to be stopped immediately after a stop is requested.
This is useful in cases where long duration thread sleeps are needed and allows for immediate joining of waiting threads after a stop is requested.

Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2023-01-25 16:43:04 -05:00
Jan Beich
20c7084892 input_common: add missing header for libc++ after 340f15d1fa
src/input_common/drivers/joycon.cpp:187:26: error: no member named 'find_if' in namespace 'std::ranges'
            std::ranges::find_if(left_joycons, [](auto& device) { return !device->IsConnected(); });
            ~~~~~~~~~~~~~^
src/input_common/drivers/joycon.cpp:193:54: error: no member named 'find_if' in namespace 'std::ranges'
        const auto unconnected_device = std::ranges::find_if(
                                        ~~~~~~~~~~~~~^
src/input_common/drivers/joycon.cpp:393:51: error: no member named 'find_if' in namespace 'std::ranges'
        const auto matching_device = std::ranges::find_if(
                                     ~~~~~~~~~~~~~^
src/input_common/drivers/joycon.cpp:402:51: error: no member named 'find_if' in namespace 'std::ranges'
        const auto matching_device = std::ranges::find_if(
                                     ~~~~~~~~~~~~~^
2023-01-25 19:52:56 +00:00
Narr the Reg
cc821bfae1 Revert 9617 and fix it on input_common 2023-01-25 13:52:50 -06:00
Morph
4cdf69c378 default_ini: Split and concatenate the config string literal
We are dangerously close to MSVC's 16384 character limit for string literals. Breaking this string up and concatenating will allow for more settings to be added in the future.
2023-01-25 14:06:06 -05:00
Merry
dc7ab4c5d6 Revert "MemoryManager: use fastmem directly."
This reverts commit af5ecb0b15.
2023-01-25 10:12:04 +00:00
Morph
cdfb3795af main: Globally disable the "?" button on dialogs
Sets the AA_DisableWindowContextHelpButton attribute to disable this useless button globally.
2023-01-25 01:12:50 -05:00
bunnei
44b981fd3e
Merge pull request #9662 from abouvier/cmake-llvm
cmake: prefer system llvm library
2023-01-24 11:03:14 -08:00
liamwhite
a68af583ea
Merge pull request #9492 from german77/joycon_release
Input_common: Implement custom joycon driver v2
2023-01-24 09:29:37 -05:00
Liam
693cad8e9b kernel: split SetAddressKey into user and kernel variants 2023-01-23 20:31:03 -05:00
Liam
5086380a63 kernel: fix incorrect locking order in suspension 2023-01-23 17:14:41 -05:00
Liam
76a4356e55 spirv: fix multisampled image fetch 2023-01-23 12:03:19 -05:00
EBADBEEF
a84ad180e8 qt: add option to disable controller applet
- add checkbox to disable the controller applet UI
- when controller applet is disabled, use the yuzu-cmd fallback
  controller applet that applies controller config based on rules
- See https://github.com/yuzu-emu/yuzu/issues/8552 for some discussion
2023-01-22 23:36:40 -08:00
Alexandre Bouvier
34b1ea9c19 cmake: prefer system llvm library 2023-01-23 06:23:00 +01:00
liamwhite
f99f618d45
Merge pull request #9555 from abouvier/catch2-update
tests: update catch2 to 3.0.1
2023-01-22 18:22:47 -05:00
Liam
31e54c4573 kernel: KPageTable: update 2023-01-22 13:17:29 -05:00
liamwhite
78df1ddce8
Merge pull request #9660 from german77/koreaToTaiwan
yuzu: Fix language comobox crash
2023-01-22 13:14:38 -05:00
liamwhite
9184b6ed2b
Merge pull request #9656 from liamwhite/nsight
nsight_aftermath_tracker: update for latest Aftermath SDK
2023-01-22 13:14:28 -05:00
liamwhite
ff2bbc8205
Merge pull request #9637 from SaiKai/repeat_shortcuts
allow volume up/down hotkeys to be repeated
2023-01-22 13:14:19 -05:00
liamwhite
02ac593257
Merge pull request #9617 from german77/off_by_one
core: hid: Fix stick minimum range
2023-01-22 13:14:10 -05:00
liamwhite
9705094a57
Merge pull request #9613 from Kelebek1/demangle
Add stacktrace symbol demangling
2023-01-22 13:13:58 -05:00
german77
a436467152 yuzu: Fix language comobox crash 2023-01-22 10:42:59 -06:00
Liam
c6eab71d5c nsight_aftermath_tracker: update for latest Aftermath SDK 2023-01-21 13:01:19 -05:00
bunnei
f78068d7bf
Merge pull request #9611 from liamwhite/patch-1
debugger: add host fastmem pointer fetch command
2023-01-20 10:00:33 -08:00
Narr the Reg
d9ee7c3297 core: hid: Make use of SCOPE_EXIT and SCOPE_GUARD where applicable 2023-01-20 00:51:46 -06:00
german77
fafa92cfb8 input_common: Fix joycon mappings 2023-01-20 00:51:46 -06:00
german77
340f15d1fa input_common: Address byte review 2023-01-20 00:51:45 -06:00
bunnei
7d77798f0e
Merge pull request #9640 from german77/why_sdl
input_common: reset sdl motion if data is invalid
2023-01-19 18:47:21 -08:00
Narr the Reg
4a307a7b3a core: hid: Only set the polling mode to the correct side 2023-01-19 18:05:23 -06:00
german77
b40aefb39e input_common: Drop Pro controller support from custom driver 2023-01-19 18:05:22 -06:00
german77
d05ea2f3eb input_common: Fix issue where ring and irs are enabled at the same time 2023-01-19 18:05:22 -06:00
Narr the Reg
459fb2b213 input_common: Implement joycon ir camera 2023-01-19 18:05:22 -06:00
german77
5cb437703f yuzu: Add ring controller test button 2023-01-19 18:05:22 -06:00
german77
527dad7097 input_common: Use DriverResult on all engines 2023-01-19 18:05:22 -06:00
german77
e1a3bda4d9 Address review comments 2023-01-19 18:05:22 -06:00
Narr the Reg
1c08d532e0 core: hid: Fix input regressions 2023-01-19 18:05:22 -06:00
german77
6d6b7bdbc3 input_common: Implement joycon nfc 2023-01-19 18:05:21 -06:00
Narr the Reg
6e33731f29 input_common: Add dual joycon support 2023-01-19 18:05:21 -06:00
Narr the Reg
751d36e739 input_common: Add support for joycon ring controller 2023-01-19 18:05:21 -06:00
Narr the Reg
f09a023292 input_common: Add support for joycon input reports 2023-01-19 18:05:21 -06:00
Narr the Reg
5676c2e17f input_common: Use calibration from joycon 2023-01-19 18:05:21 -06:00
Narr the Reg
594b2ade6d input_common: Add support for joycon generic functions 2023-01-19 18:05:21 -06:00
Narr the Reg
6aa6301acd input_common: Add joycon low level functions 2023-01-19 18:05:21 -06:00
Narr the Reg
36d5e0a411 service: hid: Set led pattern and fix color detection 2023-01-19 18:05:20 -06:00
Narr the Reg
ed5fa10e97 core: hid: Enable pulling color data from controllers 2023-01-19 18:05:20 -06:00
Narr the Reg
a4074001fe core: hid: Migrate ring from emulated devices to emulated controller 2023-01-19 18:05:20 -06:00
Narr the Reg
18c9f8eeed yuzu: Update controller colors and button names 2023-01-19 18:05:20 -06:00
Narr the Reg
2d802893e7 input_common: Disable SDL driver with switch controllers 2023-01-19 18:05:20 -06:00
Narr the Reg
d80e6c399b input_common: Initial skeleton for custom joycon driver 2023-01-19 18:05:20 -06:00
liamwhite
475370c8f8
Merge pull request #9556 from vonchenplus/draw_texture
video_core: Implement maxwell3d draw texture method
2023-01-19 14:58:53 -05:00
bunnei
9ca3a4758a
Merge pull request #9623 from liamwhite/wp-oops
memory: fix watchpoint use when fastmem is enabled
2023-01-19 10:50:21 -08:00
Jonas Gutenschwager
4653effad8 add volume quicksetting with volume slider 2023-01-19 15:13:23 +01:00
Narr the Reg
67c3c65f7b
Merge pull request #9638 from Kelebek1/firmware4
Demote maxwell3d Firmware4 call log to debug
2023-01-18 23:15:22 -06:00
bunnei
413df0811d
Merge pull request #9619 from liamwhite/timing-spaghetti
timing: wait for completion on unregister
2023-01-18 15:13:38 -08:00
german77
db6cb9cc0a input_common: reset sdl motion if data is invalid 2023-01-18 10:05:55 -06:00
Jonas Gutenschwager
887ed5c0e2 fix format 2023-01-18 15:49:47 +01:00
bunnei
82e2ac6026
Merge pull request #9615 from merryhime/upsample-ob1
audio_core: Corrective fixes to upsampler
2023-01-17 23:34:12 -08:00
bunnei
1551f97950
Merge pull request #9608 from liamwhite/fps
nvnflinger: correct swap interval handling
2023-01-17 23:13:47 -08:00
Kelebek1
5a106cf11e Demote maxwell3d Firmware4 call log to debug 2023-01-18 01:59:11 +00:00
Jonas Gutenschwager
83754e4789 allow volume up/down hotkeys to be repeated 2023-01-18 00:39:31 +01:00
Feng Chen
9fc7ca1731 Address feedback 2023-01-16 10:27:57 +08:00
Liam
f1a0ce0e70 memory: fix watchpoint use when fastmem is enabled 2023-01-15 10:24:31 -05:00
Liam
0953cdd271 timing: wait for completion on unregister 2023-01-14 15:48:01 -05:00
Kelebek1
42b16bb33a Be careful of mangled out of bounds read 2023-01-14 19:53:55 +00:00
german77
50c86b3c2a core: hid: Fix stick minimum range 2023-01-14 11:53:43 -06:00
Merry
a0e8e5b22e upsample: Fix coefficient format 2023-01-14 17:09:03 +00:00
Merry
122a8faa38 audio_core: Fix off-by-one error in upsampler 2023-01-14 15:19:11 +00:00
Kelebek1
ce0b8d618d Move demangle impl to cpp 2023-01-14 05:12:41 +00:00
Kelebek1
80a55c1663 Add stacktrace symbol demangling 2023-01-14 04:43:21 +00:00
Matías Locatti
d7dbd8e774
Update settings.h 2023-01-13 04:56:25 -03:00
Matías Locatti
4294429a07
CPP 2023-01-13 04:55:26 -03:00
Matías Locatti
bb2aec00a2
UI change 2023-01-13 04:54:29 -03:00
Matías Locatti
3ba53f2511 1.5X resolution scaler option 2023-01-13 02:34:24 -03:00
Liam
e9c3d16f6f debugger: add host fastmem pointer fetch command 2023-01-12 18:35:14 -05:00
Liam
2f2ef5b147 nvnflinger: correct swap interval handling 2023-01-11 22:05:08 -05:00
bunnei
0e8f98a441
Merge pull request #9605 from german77/mouse_mapping
yuzu: Read mouse scroll
2023-01-10 17:32:58 -08:00
Narr the Reg
87b02f78e1 yuzu: Read mouse wheel input 2023-01-10 18:20:58 -06:00
Morph
c277dad25f
Merge pull request #9596 from liamwhite/mvk
MoltenVK: restrict number of vertex attributes/bindings to 16
2023-01-10 18:11:44 -05:00
liamwhite
cbcf210c19
Merge pull request #9582 from yuzu-emu/revert-9518-revert-9504-pg2
Revert "Revert "k_page_group: synchronize""
2023-01-10 15:27:33 -05:00
liamwhite
0eae0b6803
Merge pull request #9601 from liamwhite/it-never-ends
qt: unlock during signal emission
2023-01-10 15:27:12 -05:00
liamwhite
74404261d2
Merge pull request #9598 from liamwhite/indirect
vulkan_common: fix indirect draw with count
2023-01-10 15:27:02 -05:00
liamwhite
e2c68edd35
Merge pull request #9595 from liamwhite/per-game
qt: fix configuration weirdness on turbo
2023-01-10 15:26:49 -05:00
liamwhite
9f974ea818
Merge pull request #9565 from MonsterDruide1/tas-multiplayer-lengths
TAS: Show all script lengths for multiplayer
2023-01-10 15:26:36 -05:00
Liam
385ddef8c3 qt: unlock during signal emission 2023-01-10 12:46:01 -05:00
Liam
fa8581e900 vulkan_common: fix indirect draw with count 2023-01-10 09:43:36 -05:00
TellowKrinkle
eaf425bd32 MoltenVK: restrict number of vertex attributes/bindings to 16 2023-01-09 19:01:09 -05:00
Liam
1caa84e652 qt: fix configuration weirdness on turbo 2023-01-09 17:54:49 -05:00
UltraHDR
fda0e7e989
macOS: Make Yuzu show up in the Launchpad Games folder (#9594)
https://developer.apple.com/documentation/bundleresources/information_property_list/lsapplicationcategorytype
This makes it show up in the Launchpad Games folder
2023-01-09 16:43:45 -05:00
Morph
6bf1436f5c
Merge pull request #9589 from liamwhite/default
renderer_vulkan: disable turbo by default
2023-01-09 16:23:24 -05:00
Morph
ffb12f4f9f
Merge pull request #9581 from liamwhite/turbo2
renderer_vulkan: pause turbo submissions on inactive queue
2023-01-09 16:23:16 -05:00
Morph
a4cd747122
Merge pull request #9530 from liamwhite/vk-feature-init
vulkan_device: refactor feature testing
2023-01-09 16:23:04 -05:00
Morph
3be8312120
Merge pull request #9569 from liamwhite/shutdown-wars
qt: additional fixes for reentrant shutdown
2023-01-09 16:21:27 -05:00
Liam
279005448a vulkan_device: refactor feature testing 2023-01-09 16:12:16 -05:00
Liam
0df43e4e07 renderer_vulkan: disable turbo by default 2023-01-08 11:38:30 -05:00
Fernando Sahmkow
efbb6fe288 VideoCore: Fix OGL cache invalidation. 2023-01-07 21:56:17 -05:00
bunnei
a5693afa03
Revert "Revert "k_page_group: synchronize"" 2023-01-07 15:32:10 -08:00
bunnei
66e4a48b75
Merge pull request #9563 from german77/crash_not_allowed
input_common: Create an update engine
2023-01-07 13:41:27 -08:00
Liam
505923f0f3 Revert "shader_recompiler: Align SSBO offsets to meet host requirements"
This reverts commit 8804a4eb23.
2023-01-07 15:50:58 -05:00
Liam
57a4388e2d Revert "Vulkan, OpenGL: Hook up storage buffer alignment code"
This reverts commit 9e2997c4b6.
2023-01-07 15:48:50 -05:00
MonsterDruide1
115bf20448 TAS: Show all script lengths for multiplayer 2023-01-07 21:15:37 +01:00
Liam
c19c8ac92c renderer_vulkan: pause turbo submissions on inactive queue 2023-01-07 14:35:11 -05:00
Billy Laws
d34275a260
Avoid OOB array access reading passthrough attr mask
YFC 1.5 extended the size of the varying mask used to hold passthrough attrs without considering this
2023-01-07 18:38:21 +00:00
Narr the Reg
432d48d9c8
Merge pull request #9570 from liamwhite/less-clock-boost
renderer_vulkan: disable clock boost on unvalidated devices
2023-01-07 10:41:37 -06:00
Liam
444b25bae1 vulkan_device: avoid attempt to access empty optional 2023-01-06 21:23:21 -05:00
Liam
2e4dde12c7 renderer_vulkan: disable clock boost on unvalidated devices 2023-01-06 19:07:47 -05:00
Liam
9ed4c13758 qt: additional fixes for reentrant shutdown 2023-01-06 18:50:01 -05:00
Narr the Reg
4bda2b475f opengl: Sanitize antialiasing config 2023-01-06 13:42:20 -06:00
Wollnashorn
457826a83b video_core/vulkan: Fixed loading of Vulkan driver pipeline cache
The header size of the Vulkan driver pipeline cache files was incorrectly in PipelineCache::LoadVulkanPipelineCache, for which the pipeline cache wasn't read correctly and got invalidated on each load.
2023-01-06 16:52:41 +01:00
Fernando S
8b251fc3f6
Merge pull request #9535 from bylaws/master
Port over several shader-compiler fixes from skyline
2023-01-06 10:06:45 -05:00
liamwhite
3c05988df2
Merge pull request #9561 from liamwhite/update-dynarmic
externals: update dynarmic, xbyak
2023-01-06 10:00:18 -05:00
liamwhite
6d74490139
Merge pull request #9558 from MonsterDruide1/network-timeout-noerror
net: Silently translate ETIMEDOUT network error
2023-01-06 10:00:09 -05:00
liamwhite
020dbcdbc7
Merge pull request #9552 from liamwhite/turbo
vulkan: implement 'turbo mode' clock booster
2023-01-06 09:59:59 -05:00
Fernando S
5bcbb8de45
Merge pull request #9559 from FernandoS27/cached-writes
VideoCore: Implement Cached Writes, use fastmem for reading GPU memory and eliminate old stuffs
2023-01-06 07:31:39 -05:00
Fernando Sahmkow
f6245dc40a MacroHLE: eliminate 2 rushed macros. 2023-01-05 20:53:31 -05:00
Narr the Reg
8042ce7e19 input_common: Create an update engine 2023-01-05 19:24:29 -06:00
liamwhite
eaca61e073
Merge pull request #9528 from liamwhite/mvk-nulldesc
renderer_vulkan: implement fallback path for null buffer descriptors
2023-01-05 18:31:55 -05:00
liamwhite
3e33a878dc
Merge pull request #9536 from liamwhite/debug-utils
vulkan_common: unify VK_EXT_debug_utils and selection of validation layer
2023-01-05 18:31:45 -05:00
Liam
1ee0540f82 externals: update dynarmic, xbyak 2023-01-05 18:06:06 -05:00
Billy Laws
58fec43768 Run clang-format 2023-01-05 22:18:10 +00:00
Billy Laws
68ed60cee4 shader_recompiler: Fix shuffle partitioning for >64 invoc-per-subgroup GPUs
The existing implementation only supports 64 invoc-per-subgroup GPUs, and misbehaves on adreno when invocations need to be split into 4 emulated subgroups.
2023-01-05 22:13:07 +00:00
Billy Laws
6c812a0c84 Vulkan, OpenGL: Hook up geometry shader passthrough emulation 2023-01-05 22:13:07 +00:00
Billy Laws
625a4af73a shader_recompiler: Add support for lowering geometry passthrough
Reuses most of the existing code for generating the gl_Layer passthrough. Fixes geometry in Nier: Automata on GPUs without HW passthrough support.
2023-01-05 22:13:07 +00:00
Billy Laws
9e2997c4b6 Vulkan, OpenGL: Hook up storage buffer alignment code 2023-01-05 22:13:07 +00:00
Billy Laws
8804a4eb23 shader_recompiler: Align SSBO offsets to meet host requirements
We can take advantage of SSBO addresses being passed in a constant bufer to account for the extra alignment requirements in the shader itself.
2023-01-05 22:13:07 +00:00
Billy Laws
3f0985c7b0 shader_recompiler: SPIRV: Only enable int64 feature when supported 2023-01-05 22:13:07 +00:00
Billy Laws
c1cc99584c shader_recompiler: Add comparison operators to descriptor types 2023-01-05 22:13:07 +00:00
Billy Laws
bbfad79c89 Vulkan: Add a workaround for input_position on Adreno drivers
Adreno drivers will crash compiling geometry shaders if the input position is not wrapped in a gl_in struct.
2023-01-05 22:13:07 +00:00
Wollnashorn
e07976a22b video_core/vulkan: Vulkan driver pipelines now contain cache version
So that old cache can get deleted when the cache version changes and does not grow infinitely
2023-01-05 21:03:01 +01:00
Wollnashorn
9c9008ac81 video_core/vulkan: Driver pipeline cache will now be deleted with the shader cache 2023-01-05 21:03:01 +01:00
Wollnashorn
8945fafcc0 config: Set the Vulkan driver pipeline cache option to be global 2023-01-05 21:03:01 +01:00
Wollnashorn
f2aa816679 video_core/vulkan: Added check if Vulkan pipeline path has been set 2023-01-05 21:03:01 +01:00
Wollnashorn
f4626512ff config: Better wording for VK pipeline cache option and enable by default 2023-01-05 21:03:01 +01:00
Wollnashorn
67d4f190f7 yuzu-cmd: Removed use_vulkan_driver_pipeline_cache from default_ini.h
The addition of the use_vulkan_driver_pipeline_cache option into the default ini string literal caused the 16,384-byte limit of the MSVC compiler to be exceeded.
2023-01-05 21:03:01 +01:00
Wollnashorn
16809c1fa7 video_core/vulkan: Added VkPipelineCache to store Vulkan pipelines
As an optional feature which can be enabled in the advanced graphics configuration, all pipelines that get built at the initial shader loading are stored in a VkPipelineCache object and are dumped to the disk.

These vendor specific pipeline cache files are located at `/shader/GAME_ID/vulkan_pipelines.bin`. This feature was mainly added because of an issue with the AMD driver (see yuzu-emu#8507) causing invalidation of the cache files the driver builds automatically.
2023-01-05 21:02:44 +01:00
Fernando Sahmkow
b56ad93bbc BufferBase: Don't ignore GPU pages. 2023-01-05 14:00:10 -05:00
Fernando Sahmkow
2d0c4f2b1d Fermi2D: sync cache flushes 2023-01-05 06:43:28 -05:00
Fernando Sahmkow
af5ecb0b15 MemoryManager: use fastmem directly. 2023-01-05 06:06:33 -05:00
MonsterDruide1
688a9fbfa6 net: Silently translate ETIMEDOUT network error 2023-01-05 11:54:36 +01:00
Fernando Sahmkow
6c7eb81f7d video_core: Cache GPU internal writes. 2023-01-05 05:23:39 -05:00
Fernando Sahmkow
4d9af4a9d2 Vulkan: Fix drivers that don't support dynamic_state_2 up 2023-01-05 00:11:16 -05:00
Feng Chen
013b689153 video_core: Implement opengl/vulkan draw_texture 2023-01-05 12:41:33 +08:00
Feng Chen
1e8cee2ddf video_core: Implement maxwell3d draw texture method 2023-01-05 12:41:28 +08:00
Alexandre Bouvier
d0fe27708e tests: update catch2 to 3.0.1 2023-01-05 04:58:31 +01:00
Liam
a4269c285a common: add setting for renderer clock workaround 2023-01-04 22:22:01 -05:00
Liam
301e9bbc03 vulkan: implement 'turbo mode' clock booster 2023-01-04 22:22:01 -05:00
Liam
66ae79de13 renderer_vulkan: implement fallback path for null descriptors 2023-01-04 22:14:01 -05:00
liamwhite
b78328f19a
Merge pull request #9501 from FernandoS27/yfc-rel-2
Yuzu Fried Chicken Part 1.5: MacroHLE Rework and Dynamic State
2023-01-04 21:20:00 -05:00
Fernando Sahmkow
3ecc03ec1b yuzu-ui: Add setting for disabling macro HLE 2023-01-04 14:56:52 -05:00
Fernando Sahmkow
a0c697124c Video_core: Address feedback 2023-01-04 14:39:42 -05:00
Fernando Sahmkow
03ccd8bf43 Texture Cache: Implement async texture downloads. 2023-01-03 22:52:15 -05:00
liamwhite
bbeb6e460c
Merge pull request #9518 from gidoly/revert-9504-pg2
Revert "k_page_group: synchronize"
2023-01-03 21:40:57 -05:00
Fernando Sahmkow
ddbf851ef6 Vulkan: Update blacklisting to latest driver versions. 2023-01-03 21:16:43 -05:00
Fernando Sahmkow
a045e860dd ShaderCompiler: Inline driver specific constants. 2023-01-03 16:29:25 -05:00
Fernando Sahmkow
b62ffb612d Vulkan: rework stencil tracking. 2023-01-03 16:29:16 -05:00
MonsterDruide1
04cb05fce0 TAS: Immediately switch stick to TAS on input
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2023-01-03 20:08:25 +01:00
Alexandre Bouvier
eceee8c3d9 cmake: move find-modules to root cmake dir 2023-01-02 18:22:07 +01:00
liamwhite
6804a43f49
Merge pull request #9540 from MonsterDruide1/tas-sanitized-record
TAS: Record sanitized instead of raw stick inputs
2023-01-02 09:51:29 -05:00
german77
80bcc18788 service: nifm: Initialize request state 2023-01-01 20:58:08 -06:00
german77
ebd811b535 service: nifm: Match documentation names 2023-01-01 20:58:01 -06:00
Liam
f9c6d39a6c vulkan_common: blacklist radv from extended_dynamic_state2 on drivers before 22.3.1 2023-01-01 16:43:58 -05:00
Liam
4814d87385 video_core: fix build 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
d09aa0182f MacroHLE: Final cleanup and fixes. 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
581a7d785b Rasterizer: Setup skeleton for Host Conditional rendering 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
3630bfaef3 RasterizerMemory: Add filtering for flushing/invalidation operations. 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
2793304117 Vulkan: Allow stagging buffer deferrals. 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
8d694701bc MacroHLE: Add OpenGL Support 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
4c82e47edd Vulkan: Add other additional pipeline specs 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
d33251db93 Vulkan: Implement Dynamic State 3 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
f800e485c9 Vulkan Implement Dynamic State 2 LogicOp and PatchVertices 2023-01-01 16:43:58 -05:00
Fernando Sahmkow
c897c55e3c Vulkan: Implement Dynamic States 2 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
cb1497d0d7 DMAPusher: Improve collection of non executing methods 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
ce448ce770 Revert Buffer cache changes and setup additional macros. 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
18637766ef MacroHLE: Reduce massive calculations on sizing estimation. 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
aad0cbf024 MacroHLE: Add HLE replacement for base vertex and base instance. 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
93ac5a6a6d MacroHLE: Add Index Buffer size estimation. 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
c541559767 MacroHLE: Refactor MacroHLE system. 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
0f89828073 MacroHLE: Implement DrawIndexedIndirect & DrawArraysIndirect. 2023-01-01 16:43:57 -05:00
Fernando Sahmkow
a5a94f52ff MacroHLE: Add MultidrawIndirect HLE Macro. 2023-01-01 16:43:57 -05:00
MonsterDruide1
d46c9c4659 TAS: Record sanitized instead of raw stick inputs
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2023-01-01 22:39:18 +01:00
Merry
bee395d2f0 vfs: Replace cstr concat with char concat 2023-01-01 18:52:02 +00:00
Liam
aa13ee5c4a vulkan_common: unify VK_EXT_debug_utils and selection of validation layer 2023-01-01 11:59:47 -05:00
liamwhite
92103d4ff3
Merge pull request #9533 from merryhime/overcommit
host_memory: mmap changes for virtual_base
2023-01-01 10:24:07 -05:00
liamwhite
0b228fde15
Merge pull request #9514 from ColinKinloch/en_gb
settings: warn on invalid regon/language combinations
2023-01-01 10:23:46 -05:00
Merry
fd1831b65b host_memory: Use transparent huge pages where available 2023-01-01 11:40:35 +00:00
Merry
4d7be85e73 host_memory: Allocate virtual_base with MAP_NORESERVE
Specify that we do not require swap to be reserved for this address range;
allow overcommitting.
2023-01-01 11:40:35 +00:00
Colin Kinloch
28cfc2146f settings: comment language blocklist columns 2022-12-30 13:51:35 +00:00
bunnei
05c709bebe core: hid: emulated_console: Avoid a crash if frontend does not configure touch_from_button_maps. 2022-12-30 00:14:53 -08:00
bunnei
c3af6d8372
Merge pull request #9515 from liamwhite/cmake-refactor
CMake: make more features optional
2022-12-29 23:37:25 -05:00