german77
bb4ae5ee53
yuzu: Add button to boot mii edit from firmware
2023-09-23 20:13:36 -06:00
Fernando Sahmkow
57d8cd6c40
Query Cache: Fix Prefix Sums
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
bf0d6b8806
Query Cache: Fix behavior in Normal Accuracy
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
a07c88e686
Query Cache: Simplify Prefix Sum compute shader
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
c8237d5c31
Query Cache: Implement host side sample counting.
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
2fea1b8407
Query Cache: Fix guest side sample counting
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
282ae8fa51
Query Cache: address issues
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
aa6587d854
QueryCache: Implement dependant queries.
2023-09-23 23:05:29 +02:00
Fernando Sahmkow
57401589c2
Macro HLE: Add DrawIndirectByteCount
2023-09-23 23:05:29 +02:00
Fernando Sahmkow
f1a2e36711
Query Cachge: Fully rework Vulkan's query cache
2023-09-23 23:05:29 +02:00
Fernando Sahmkow
bdc01254a9
Query Cache: Setup Base rework
2023-09-23 23:05:29 +02:00
Fernando S
ace91dd0c0
Merge pull request #11567 from liamwhite/fixing-my-error
...
emit_spirv: fix incorrect use of descriptor index in image atomics
2023-09-23 13:00:31 +02:00
Charles Lombardo
5269a46399
android: Use smaller read buffer size for exporting user data
...
The File.readBytes() extension attempts to load an entire file into a byte array. This would cause crashes when loading huge files into memory.
2023-09-22 16:51:48 -04:00
Charles Lombardo
f3bc7354b1
android: Adjust valid user data check
2023-09-22 12:05:44 -04:00
liamwhite
bd5ae33153
Merge pull request #11561 from german77/hle_applet
...
am: mii_edit: Implement DB operations
2023-09-22 09:56:14 -04:00
liamwhite
16f1592e50
Merge pull request #11557 from GPUCode/brr-format
...
renderer_vulkan: Correct component order for A4B4G4R4_UNORM
2023-09-22 09:56:04 -04:00
liamwhite
fda08cbbb0
Merge pull request #11563 from Kelebek1/dma_regs
...
Fix DMA engine register offsets
2023-09-22 09:55:54 -04:00
Liam
1e24d02434
emit_spirv: fix incorrect use of descriptor index in image atomics
2023-09-22 00:39:09 -04:00
Narr the Reg
a57ca3fb66
am: mii_edit: Implement DB operations
2023-09-21 18:21:39 -06:00
Charles Lombardo
c619199bb4
Merge pull request #11564 from t895/overlay-inset-fix
...
android: Update androidx window library to 1.2.0-beta03
2023-09-21 19:15:36 -04:00
Charles Lombardo
703bf7cfce
android: Update androidx window library to 1.2.0-beta03
...
Fixes an issue with the input overlay on certain devices where the controls would appear offscreen.
2023-09-21 17:36:14 -04:00
Kelebek1
4f69be8169
Fix DMA engine register offsets
2023-09-21 20:21:00 +01:00
GPUCode
b6ad7e263b
vk_texture_cache: Limit srgb block to transcoding only
2023-09-21 21:46:35 +03:00
liamwhite
9e9cb28471
Merge pull request #11555 from yuzu-emu/revert-11551-allow-save-imports-always
...
Revert "android: Allow save imports always"
2023-09-21 09:21:19 -04:00
GPUCode
4a59dc2947
renderer_vulkan: Correct component order for A4B4G4R4_UNORM
2023-09-21 15:33:44 +03:00
Charles Lombardo
c644c1a90a
Revert "android: Allow save imports always"
2023-09-21 02:57:28 -04:00
rkfg
753bc3a448
pfs: Fix reading filenames past the buffer end
2023-09-21 05:12:05 +03:00
Charles Lombardo
a85325f56a
android: Remove unused strings related to the save manager
2023-09-20 15:01:03 -04:00
Charles Lombardo
bdb4fd208f
android: Allow importing saves even if no saves are found
...
Exporting still won't be allowed on an empty save directory.
2023-09-20 15:00:34 -04:00
Kelebek1
8992a62da4
Reduce core timing mutex contention
2023-09-19 23:10:03 +01:00
Charles Lombardo
1e740df9b8
android: Add import/export buttons for user data
2023-09-19 15:54:47 -04:00
Squall-Leonhart
02b897ce27
Reuse part of my previous idea to to use num_levels to check within AdjustMipBlockSize
...
The partial revert was not enough for Tsukihime, this might do the trick
2023-09-20 03:27:13 +10:00
liamwhite
df56ecc318
Merge pull request #11542 from t895/touch-offset-fix
...
android: Screen orientation and aspect ratio fixes
2023-09-19 09:25:09 -04:00
liamwhite
49cb89e324
Merge pull request #11526 from german77/mii_service_v2
...
service: mii: Update implementation Part2 - Mii database support
2023-09-19 09:24:49 -04:00
liamwhite
da8cbbf958
Merge pull request #11536 from abouvier/renderdoc
...
cmake: prefer system renderdoc header
2023-09-19 09:24:36 -04:00
liamwhite
55087ab08a
Merge pull request #11538 from cathyjf/renderdoc-check-correct-win32-symbol
...
renderdoc: Check for `_WIN32` symbol rather than `WIN32`
2023-09-19 09:24:23 -04:00
Charles Lombardo
7dd3d1b8ad
android: Ignore validation layers library in git
2023-09-19 00:31:43 -04:00
Charles Lombardo
fd09784231
android: Don't pause emulation when entering PiP
2023-09-19 00:31:43 -04:00
Charles Lombardo
3b612cff28
android: Fix showing input overlay in PiP
2023-09-19 00:31:43 -04:00
Charles Lombardo
32d65fc8de
android: Properly update emulation surface
...
Previously the emulation surface wasn't being updated during configuration changes and only during specific view events. This would break input and the screen dimensions after each orientation/aspect ratio change. Now a new surface is provided every time and the display dimensions are updated as needed.
2023-09-19 00:31:43 -04:00
Liam
3ff29de4a1
aoc: stub purchase info calls
2023-09-18 16:20:53 -04:00
Cathy J. Fitzpatrick
9fef6560f0
renderdoc: Check for _WIN32
symbol rather than WIN32
2023-09-18 12:09:51 -07:00
german77
dca36ebb87
service: mii: Address review comments
2023-09-18 11:08:04 -06:00
Alexandre Bouvier
f93f31f4ae
cmake: prefer system renderdoc header
2023-09-18 18:35:20 +02:00
liamwhite
974380fe10
Merge pull request #11258 from Squall-Leonhart/Z16_Assert_Fix
...
Fix a logged assert in the format lookup table for Z16
2023-09-18 09:31:05 -04:00
liamwhite
d6cf54dd2f
Merge pull request #11520 from Kelebek1/estimated_time
...
Do not consider voice commands in time estimation, fix adpcm estimate
2023-09-18 09:30:56 -04:00
Squall Leonhart
79f0202045
Partial revert of #10433
...
The If block in this change was causing some 2D textures to be treated as if their mip 0 was a 3D Slice, this could be ascertained as the same texture viewed from different distances would render fine, but then close up would look like a decoding failure.
It also resulted in some 3D ASTC textures not being scaled appropriate leading to broken graphical effects such as the jagged TOTK recall animation being a circle, as the If block was only accepting the image based on its original info without any adjustments applied.
2023-09-18 23:28:53 +10:00
Kelebek1
5d7571114e
Do not consider voice commands in time estimation, fix adpcm estimate
2023-09-18 10:38:14 +01:00
german77
2fb71aecb0
service: mii: Implement the rest of the service
2023-09-17 16:06:25 -06:00
german77
9a878de33f
service: mii: Implement database manager
2023-09-17 16:06:25 -06:00
german77
a50b50f8b4
service: mii: Implement figurine database
2023-09-17 16:06:25 -06:00
german77
bd409c3416
service: mii: Add device crc16
2023-09-17 16:06:25 -06:00
german77
2f22b53732
service: nfc: Fully Implement GetRegisterInfoPrivate
2023-09-17 16:06:25 -06:00
german77
1e8616bd01
service: mii: Complete structs and fix mistakes
2023-09-17 16:06:23 -06:00
Charles Lombardo
e3c546a1ed
android: Export PiP receiver on API 33 and later
...
Could cause crashes on API 33+ devices
2023-09-17 17:33:33 -04:00
lat9nq
77682aabd3
mii_types: Remove null terminator check
...
This is an OoB array access, causing a crash on at least the Linux
Flatpak releases.
Co-authored-by: german77 <juangerman-13@hotmail.com>
2023-09-17 15:23:57 -04:00
liamwhite
2fe92436b9
Merge pull request #11524 from t895/signing-ci
...
android: Set up signing config for release builds
2023-09-17 10:42:57 -04:00
liamwhite
e1b79610f8
Merge pull request #11522 from liamwhite/vfs-needs-results
...
registered_cache: correct file deletion case
2023-09-17 10:42:51 -04:00
liamwhite
474739a379
Merge pull request #11460 from Kelebek1/hw_opus
...
Reimplement HardwareOpus
2023-09-17 10:42:44 -04:00
Charles Lombardo
67eeb05692
android: Set up signing config for release builds
2023-09-17 01:22:16 -04:00
Charles Lombardo
af0c1b0cb7
android: Use 1 worker for shader compilation for all devices
2023-09-16 21:38:28 -04:00
Liam
13a7a297bb
registered_cache: correct file deletion case
2023-09-16 18:25:17 -04:00
Charles Lombardo
c484a61515
android: Collect task state once view is created
...
Before the viewLifecycleOwner wasn't ready and would cause a crash
2023-09-16 17:15:20 -04:00
Fernando Sahmkow
b99f94a7ff
Vulkan: add temporary workaround for AMDVLK
2023-09-16 11:59:20 -04:00
Fernando Sahmkow
6a1ecab2dd
Vulkan: Implement Depth Bias Control
2023-09-16 11:58:55 -04:00
Kelebek1
67e2d5c28b
Reimplement HardwareOpus
2023-09-16 11:56:25 -04:00
liamwhite
9912704234
Merge pull request #11519 from german77/system-policy
...
service: hid: Implement ApplyNpadSystemCommonPolicy
2023-09-16 11:40:42 -04:00
liamwhite
fe771b59f4
Merge pull request #11518 from german77/bad-npad
...
service: hid: Implement last active Npad and fix some errors.
2023-09-16 11:40:35 -04:00
liamwhite
d26c76180d
Merge pull request #11517 from german77/amiibo-format
...
service: nfc: Fix amiibo formatting
2023-09-16 11:40:26 -04:00
liamwhite
62d473305d
Merge pull request #11500 from liamwhite/debug-stuff
...
core: improve debug workflow
2023-09-16 11:40:17 -04:00
liamwhite
13d551846a
Merge pull request #11499 from Squall-Leonhart/bitlockerfix
...
add std::error_code for std::filesystem exceptions
2023-09-16 11:40:10 -04:00
liamwhite
c05ea35f78
Merge pull request #11492 from lat9nq/c-numeric-conversions
...
general: Remove uncaught usages of C++ string number conversions
2023-09-16 11:40:03 -04:00
liamwhite
7f705870d2
Merge pull request #11483 from FearlessTobi/save-size-max
...
am: Stub GetSaveDataSizeMax
2023-09-16 11:39:56 -04:00
liamwhite
821037e18f
Merge pull request #11475 from GPUCode/renderdoc-hotkey
...
debug: Add renderdoc capture hotkey
2023-09-16 11:39:50 -04:00
german77
a3f235f8a2
service: hid: Implement ApplyNpadSystemCommonPolicy
2023-09-16 08:38:10 -06:00
Merry
f70bafff1a
core_timing: Attempt to reduce heap sifting
2023-09-16 07:42:45 +01:00
Merry
3ad7eec9de
core_timing: Use a fibonacci heap
2023-09-16 07:42:45 +01:00
german77
260bfc4bd2
hid: service: Remove outdated field from npad
2023-09-16 00:31:45 -06:00
german77
8950fe79ad
hid: service: Implement Last active Npad
2023-09-16 00:31:19 -06:00
german77
c8b9467f50
service: hid: Ensure state is correct
2023-09-16 00:31:09 -06:00
german77
0d4aa9125e
service: nfc: Fix amiibo formatting
2023-09-15 22:02:57 -06:00
Charles Lombardo
832a2fcc69
android: Remove settings interface specifically for audio mute
2023-09-14 23:46:19 -04:00
Charles Lombardo
958bed4545
Merge pull request #11507 from t895/emulation-stop-fix
...
android: Return the correct status code on emulation stop
2023-09-14 23:22:00 -04:00
Charles Lombardo
0c688b0bf5
Merge pull request #11506 from t895/icon-fix
...
android: Use resource as shortcut intermediary
2023-09-14 23:21:45 -04:00
Charles Lombardo
7e2bd395bc
android: Return the correct status code on emulation stop
2023-09-14 23:08:06 -04:00
Charles Lombardo
19053ab631
Merge pull request #11505 from t895/config-patch
...
android: Don't reinitialize settings on emulation start
2023-09-14 22:20:45 -04:00
Charles Lombardo
6481f4e937
android: Use resource as shortcut intermediary
...
Fixes issue where the shortcut icon would appear cropped on certain devices
2023-09-14 22:19:08 -04:00
Charles Lombardo
d1deff6b07
Merge pull request #11504 from t895/emu-args
...
android: Fix emulation to settings navigation args
2023-09-14 21:25:58 -04:00
Charles Lombardo
e8aaab2fc1
android: Don't reinitialize settings on emulation start
...
Config is already initialized on application start
2023-09-14 21:25:17 -04:00
Charles Lombardo
21b133de40
android: Fix emulation to settings navigation args
2023-09-14 20:24:43 -04:00
Charles Lombardo
b394389170
android: Delay collecting UI state in games fragment
2023-09-14 20:02:48 -04:00
Liam
3ef9673360
core: improve debug workflow
2023-09-14 16:44:15 -04:00
Charles Lombardo
8baed5d95d
android: Refactor menu tags to enum
2023-09-14 15:18:56 -04:00
Charles Lombardo
4a3cbf0021
android: Use StateFlow instead of LiveData
2023-09-14 15:18:56 -04:00
Squall-Leonhart
21ecf01a17
add std::error_code for std::filesystem exceptions
...
Resolves a case on Windows where an unmounted bitlocker protected volume containing an assigned game directory would crash Yuzu at start.
May also resolve cases where a disconnected SMB volume causes similar crashes (needs testing)
2023-09-15 04:47:15 +10:00
lat9nq
5d52d73c4b
shared_widget: Use default literals more
2023-09-14 11:31:26 -04:00
lat9nq
fea5b758bc
settings_common: Fix typo
2023-09-14 11:30:14 -04:00
GPUCode
c656105a6c
debug: Add renderdoc capture hotkey
2023-09-14 16:37:41 +03:00
liamwhite
04352a9aef
Merge pull request #11496 from liamwhite/ngc
...
ngc: implement service
2023-09-14 09:24:46 -04:00
liamwhite
48dec7e0c9
Merge pull request #11479 from Kelebek1/check_all_fbs
...
Look for the most recently modified image for present
2023-09-14 09:24:27 -04:00
liamwhite
b5f99164f1
Merge pull request #11433 from liamwhite/shutdown-oopsie
...
polyfill_thread: ensure mutex was locked before signaling stop
2023-09-14 09:24:20 -04:00
liamwhite
eb4ddb2868
shader_recompiler: skip sampler for buffer textures ( #11435 )
2023-09-14 15:23:50 +02:00
Liam
9d7eebde7b
ngc: implement service
2023-09-14 09:14:08 -04:00
lat9nq
fe70c6f481
settings_setting: Don't remove the AudioEngine workaround
2023-09-13 15:59:44 -04:00
liamwhite
8fb9f78e83
Merge pull request #11385 from liamwhite/acceptcancel
...
internal_network: cancel pending socket operations on application process termination
2023-09-13 15:40:58 -04:00
lat9nq
c2961454fe
cmd/yuzu: Remove uncaught usage of stoi
...
Also fixes a style inconsistency
2023-09-13 13:52:09 -04:00
lat9nq
5ffa1049ae
cmd/config: Remove uncaught usage of stoul
2023-09-13 13:52:09 -04:00
lat9nq
3ae3706c84
shared_widget: Forward-port Citra changes
...
Seemed like a good time to move these over.
Also remove usage of std::sto{l,ll,ul,f,d}
2023-09-13 13:52:09 -04:00
lat9nq
2d2c176f03
configure_ui: Remove unnecessary usage of stoul
2023-09-13 13:52:09 -04:00
lat9nq
0eef4a6c94
cheat_engine: Remove uncaught usage of stoul
2023-09-13 13:51:58 -04:00
lat9nq
22be3008f8
ips_layer: Remove uncaught usage of stoul/ll
2023-09-13 13:36:25 -04:00
lat9nq
7f98f4a38b
key_manager: Remove uncaught usage of stoul
2023-09-13 13:36:25 -04:00
lat9nq
0098ecb609
settings: Retro-port Citra Settings work
...
This has yet to be PR'd on Citra, but regressions on yuzu that have
been fixed in Citra needed to appear here.
2023-09-13 13:36:25 -04:00
lat9nq
85e1754728
android/config: Remove uncaught usage of stoul
2023-09-13 13:36:25 -04:00
liamwhite
3f52b5167b
Merge pull request #11486 from liamwhite/system-verification
...
qt: add verification for installed contents
2023-09-13 09:39:27 -04:00
liamwhite
5b5c69b8f6
Merge pull request #11480 from german77/mii_service
...
service: mii: Update implementation Part1
2023-09-13 09:39:16 -04:00
liamwhite
9a0ea90018
Merge pull request #11473 from liamwhite/fix-launch-param
...
am: Implement UserChannel parameters
2023-09-13 09:39:06 -04:00
Liam
f8985d1cc5
qt: add verification for installed contents
2023-09-12 09:20:50 -04:00
liamwhite
ce5320c49f
Merge pull request #11447 from xcfrg/portable-compile-out
...
common: add a compile time option to allow disabling portable mode
2023-09-12 09:17:50 -04:00
Narr the Reg
4d138b760b
service: mii: Remove most magic values
2023-09-11 22:07:55 -06:00
FearlessTobi
a2150e456c
am: Stub GetSaveDataSizeMax
...
Needed for Minecraft Legends.
2023-09-12 00:21:03 +02:00
FearlessTobi
1b6852a36c
bsd: Demote "Select" log to dehug
...
This is very spammy in Minecraft Legends.
2023-09-12 00:20:42 +02:00
liamwhite
66f2947854
ci: fix msvc when used with LTO ( #11459 )
2023-09-11 23:25:21 +02:00
german77
ec25f847d8
mii: service: Address review
2023-09-11 09:54:32 -06:00
german77
bd169f417f
mii: Prepare Interface for new implementation
2023-09-11 00:58:46 -06:00
german77
571399930c
service: mii: Fix ver3 inconsistencies
2023-09-11 00:23:46 -06:00
german77
36290f9a0a
service: mii: move char info operations
2023-09-10 23:18:08 -06:00
german77
d6037efe5e
service: mii: Move store data operations
2023-09-10 23:18:03 -06:00
german77
81f50d5132
service: mii: Move core data operations
2023-09-10 22:52:33 -06:00
german77
8d7d62dc24
service: mii: Move ver3 operations
2023-09-10 22:42:38 -06:00
german77
27929d7ca2
service: mii: separate mii types into their own file
2023-09-10 22:18:25 -06:00
german77
63b239f5c6
service: mii: Move all raw data to it's file
2023-09-10 22:14:37 -06:00
german77
0cdc8b13b7
service: mii: Add mii util and result
2023-09-10 20:43:26 -06:00
Kelebek1
baad1238c3
Look for the most recently modified image for present
2023-09-11 03:11:29 +01:00
FearlessTobi
87c0ba129c
am: Implement UserChannel parameters
...
Used by the Super Mairo 3D All-Stars collection.
2023-09-10 15:39:25 -04:00
liamwhite
eb9e847380
Merge pull request #11450 from lat9nq/no-vk-device-fix
...
configure_graphics: Fix handling of broken Vulkan
2023-09-10 13:41:10 -04:00
liamwhite
5b8fdedf4d
Merge pull request #11436 from liamwhite/bad-format
...
shader_recompiler: always declare image format for image buffers
2023-09-10 13:40:47 -04:00
liamwhite
64130d9f01
Merge pull request #11456 from liamwhite/worse-integrity-verification
...
core: implement basic integrity verification
2023-09-10 13:40:39 -04:00
liamwhite
3df56dc790
Merge pull request #11465 from Kelebek1/skip_remaining_reset
...
[Audio] Do not reset the remaining command count each time
2023-09-10 13:40:32 -04:00
liamwhite
3b7d112c83
Merge pull request #11467 from Kelebek1/fix_decode
...
[audio] Fix data source version 1 command looping
2023-09-10 13:40:25 -04:00
liamwhite
b011ce023d
Merge pull request #11470 from GPUCode/bundle-vvl
...
android: Add option to bundle validation layer
2023-09-10 13:40:18 -04:00
FearlessTobi
36917d8a8f
am: Remove bcat from PopLaunchParameter
...
This never belonged here and has no use anymore since the Boxcat backend was removed.
.
2023-09-09 20:44:05 -04:00
GPUCode
24ab10c2f6
vk_buffer_cache: Respect max vertex bindings in BindVertexBuffers ( #11471 )
2023-09-10 02:19:45 +02:00
GPUCode
cad28abe61
renderer_vulkan: Remove debug report
...
* VVL has implemented the more modern alternative, thus we don't need to support it anymore
2023-09-08 23:28:46 +03:00
Liam
7bec8d1c5b
internal_network: log error on interrupt pipe read failure
2023-09-08 14:00:07 -04:00
Kelebek1
800d6f7d0d
Fix data source version 1 command looping
2023-09-08 15:03:21 +01:00
Kelebek1
4baaaf6a99
Do not reset the command buffer command count each time
2023-09-07 20:53:48 +01:00
Narr the Reg
57e7eed54c
service: mii: Fix broken mii on MK8
2023-09-07 11:46:12 -06:00
Feng Chen
e69eebb14a
video_core: Fix d24r8/s8d24 convert shader build error in moltenvk
2023-09-07 18:01:36 +08:00
Feng Chen
0145c89879
video_core: Add missing scissor update when viewport scale offset disable
2023-09-07 18:01:30 +08:00
xcfrg
a02d641042
add a compile time option to allow disabling portable mode
2023-09-06 18:53:39 -04:00
Liam
716e0a126a
core: implement basic integrity verification
2023-09-06 16:49:27 -04:00
liamwhite
69949e7964
Merge pull request #11428 from Kelebek1/adsp_rework
...
Rework ADSP into a wrapper for apps
2023-09-06 09:13:06 -04:00
liamwhite
5e424d791b
Merge pull request #11434 from danilaml/fix-warnings
...
msvc: set warning level to /W4 globally
2023-09-06 09:12:58 -04:00
liamwhite
70790711d2
Merge pull request #11437 from liamwhite/dump-shenanigans
...
qt: measure romfs dump completion by bytes read
2023-09-06 09:12:49 -04:00
liamwhite
d2e519494f
Merge pull request #11451 from german77/mob_mii
...
service: mii: Fix default mii database
2023-09-06 09:12:33 -04:00
lat9nq
d8943e5bac
yuzu-qt: Use Null when OpenGL is not compiled
2023-09-05 17:59:44 -04:00
lat9nq
e4ebabcd5b
yuzu-qt: Update API Text for broken Vulkan
...
Otherwise caused a blue Vulkan badge to appear in the status bar.
2023-09-05 17:59:10 -04:00
lat9nq
d078cff269
configure_graphics: Capture by reference
...
Small optimization.
2023-09-05 17:50:55 -04:00
Steveice10
0a51fe7854
core: Add support for loading NSPs with personalized tickets. ( #10048 )
...
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-09-05 21:09:42 +02:00
german77
ba4e5068bc
service: mii: Fix default mii database
2023-09-05 01:17:06 -06:00
lat9nq
ea46efd9a2
configure_graphics: Fix handling of broken Vulkan
...
The VSync combobox wouldn't populate if there was no Vulkan device,
which caused issues with trying to set VSync on other backends.
This also adds another layer to GetCurrentGraphicsBackend to check for
broken Vulkan and return OpenGL instead of Vulkan.
2023-09-04 20:21:14 -04:00
Kelebek1
ebd19dec99
Rework ADSP into a wrapper for apps
2023-09-04 17:12:16 +01:00
Danila Malyutin
785e480b62
msvc: set warning level to /W4 globally
...
And fix a bunch of warnings
2023-09-03 18:42:10 +04:00
Liam
8a9d4936d4
qt: measure romfs dump completion by bytes read
2023-09-02 22:04:37 -04:00
Liam
ba4b65e4bc
shader_recompiler: always declare image format for image buffers
2023-09-02 17:25:00 -04:00
liamwhite
1971403ab7
Merge pull request #11381 from liamwhite/romfs-dump
...
qt: fix romfs dumping for multiprogram applications
2023-09-02 14:42:48 -04:00
liamwhite
76bddd3673
Merge pull request #11383 from FernandoS27/are-you-a-wabbit
...
Fix regressions that damaged compute indirect & use reinterpret for copies with different byteblocksizes
2023-09-02 14:42:42 -04:00
liamwhite
2c5e8e6d40
Merge pull request #11384 from liamwhite/am-shutdown
...
am: shorten shutdown timeout when lock is not held
2023-09-02 14:42:35 -04:00
liamwhite
84eb1cdb65
Merge pull request #11393 from FernandoS27/bayo-got-busted-up
...
Maxwell3D: Improve Index buffer size estimation.
2023-09-02 14:42:28 -04:00
liamwhite
02e2aea50d
Merge pull request #11412 from liamwhite/key-area-keys
...
vfs: ensure key area keys are validated
2023-09-02 14:42:20 -04:00
liamwhite
32b2436f80
general: make -fwrapv generic to all architectures ( #11379 )
2023-09-02 20:41:21 +02:00
Liam
bdd09d6844
polyfill_thread: ensure mutex was locked before signaling stop
2023-09-02 11:51:40 -04:00
Liam
9245b426e3
shader_recompiler: fix emulation of 3D textureGrad
2023-09-01 22:41:01 -04:00
Charles Lombardo
50d4e0f4f7
android: Fix game content installer
...
Before this would run on the main thread and freeze the device. Additionally this fixes the result dialog not appearing if a config change happens during the installation by getting the activity's fragment manager when needed.
2023-08-30 19:05:33 -04:00
Charles Lombardo
d833fc383d
android: Combine LongMessageDialogFragment with MessageDialogFragment
2023-08-30 18:02:16 -04:00
Charles Lombardo
b48dbb18f2
android: Support dynamic app shortcuts
2023-08-30 16:26:10 -04:00
Charles Lombardo
a2f0caefd4
Merge pull request #11405 from t895/emulation-loading
...
android: Emulation loading UI and fixes
2023-08-30 16:24:46 -04:00
Charles Lombardo
5445e974e0
android: Separate emulation states from emulation mutex
...
Emulation states are repeatedly checked by input and performance stats. During startup and shutdown, this could lead to a long halt on the UI thread because the call to IsRunning will be waiting on the emulation mutex to be unlocked. Using atomics should replace the existing functionality without causing problems.
2023-08-30 15:19:23 -04:00
Charles Lombardo
b0a96d5216
android: Game loading/shutting down indicators
2023-08-30 15:19:23 -04:00
FearlessTobi
a7a5835ffb
hwopus: Implement GetWorkBufferSizeExEx
...
Allows Sea of Stars to boot.
Fixes https://github.com/yuzu-emu/yuzu/issues/11415 .
2023-08-30 18:29:43 +02:00
Charles Lombardo
270f430f70
android: Create custom game icon loader
2023-08-30 10:19:05 -04:00
Charles Lombardo
44bce11853
Merge pull request #11380 from t895/settings-integration
...
android: Settings rework
2023-08-29 22:20:59 -04:00
Charles Lombardo
4701eea646
android: Don't reload settings when stopping settings activity
2023-08-29 21:44:18 -04:00
Charles Lombardo
2f03fac9a0
Merge pull request #11413 from t895/intents
...
android: Support intents to emulation activity
2023-08-29 20:01:52 -04:00
Charles Lombardo
21ad5f5cc5
android: Add optional androidDefault property to settings
...
Certain settings have specific defaults for Android only. This lets us reflect them in the Kotlin side with very little code.
2023-08-29 19:42:42 -04:00
Charles Lombardo
45280a0342
android: Proper state restoration on settings dialogs
...
All dialog code (except for the Date/Time ones) has been extracted out into a generic settings dialog fragment that handles everything through a viewmodel. State for each dialog will now be retained and dialogs will stay shown through configuration changes.
I won't be changing the current state of the date and time dialog fragments until Google decides to make their classes non-final or if/when we migrate to Jetpack Compose.
2023-08-29 19:42:42 -04:00
Charles Lombardo
fd5c7b21dd
android: Add search for settings
2023-08-29 19:42:42 -04:00
Charles Lombardo
d786d19880
android: Implement paired settings
...
Enables and disables editing on settings that rely on other boolean settings.
2023-08-29 19:42:41 -04:00
Charles Lombardo
369d06292f
android: Prevent infinite switch toggle loop
...
If something like a lifecycle event happens when this switch is toggled (Ex. whenever the black backgrounds switch is toggled), this could move the switch from the default position and trigger the checked changed listener and restart the loop. Here I just removed the listener at the start so we recycle the view properly still, set the checked state and then add the new listener.
2023-08-29 19:42:41 -04:00
Charles Lombardo
95a939a49f
android: Migrate settings to navigation component
...
Consolidates all of the settings components to the fragment and activity with no interfaces and only the settings fragment presenter. This also includes new material animations and new viewmodel usage to prevent the fragment and activity directly interacting with one another.
2023-08-29 19:42:41 -04:00
Charles Lombardo
f5e6b12c74
android: Trim settings enums and items
...
Take advantage of the new settings interface to reduce the amount of code we need for each setting item. Additionally make all settings items non-null to improve brevity.
2023-08-29 19:40:18 -04:00
Charles Lombardo
6c8f2b355a
android: Expose interface for getting settings from native code
...
Completely removes code related to parsing the settings file on the java side. Now all settings are accessed via NativeConfig.kt and config.cpp has been modified to be closer to the core counterpart. Since the core currently uses QSettings, we can't remove reliance from Wini yet. This also includes simplifications to each settings interface to get closer to native code and prepare for per-game settings.
2023-08-29 19:40:17 -04:00
liamwhite
52c71e7eb6
Merge pull request #11408 from Kelebek1/fix_audio_node_id
...
[Audio] Fix node id index in DropVoices
2023-08-29 09:27:40 -04:00
liamwhite
1f04a3dd55
Merge pull request #11409 from liamwhite/splatoon-nsd-v2
...
sfdnsres: ensure lp1 is not resolved
2023-08-29 09:27:32 -04:00
liamwhite
d360abadba
Merge pull request #11112 from danilaml/nvdec-deinterlace
...
Use initial_frame to check interlaced flag
2023-08-29 09:27:22 -04:00
Charles Lombardo
2dbe067d74
android: Support intents to emulation activity
2023-08-29 02:57:20 -04:00
Charles Lombardo
2f18fa5cd1
Merge pull request #11392 from t895/layout-troubles
...
android: Emulation activity fixes
2023-08-29 02:11:13 -04:00
Liam
5a09ba7255
vfs: ensure key area keys are validated
2023-08-28 22:22:00 -04:00
Liam
9df3794a83
qt: ensure packed update nca is applied to the correct base
2023-08-28 21:14:35 -04:00
Liam
f260c74beb
qt: fix romfs dumping for multiprogram applications
2023-08-28 21:03:21 -04:00
liamwhite
1615a86375
Merge pull request #11390 from FearlessTobi/hwopus-multi
...
hwopus: Implement OpenHardwareOpusDecoderForMultiStreamEx and DecodeInterleavedForMultiStream
2023-08-28 19:14:44 -04:00
Liam
6c68b07a67
sfdnsres: ensure lp1 is not resolved
2023-08-28 11:55:53 -04:00
Kelebek1
1d201c71dc
Fix node id index in DropVoices
2023-08-28 10:35:30 +01:00
Liam
667ec28697
Address review comments
2023-08-27 19:45:25 -04:00
Danila Malyutin
164f880f23
Use initial_frame to check interlaced flag
...
If final frame was transferred from GPU, it won't carry the props.
Fixes #11089
2023-08-28 00:48:53 +04:00
Fernando Sahmkow
52544933d2
Maxwell3D: Improve Index buffer size estimation.
2023-08-27 22:14:37 +02:00
Liam
954144e22b
audio: allow more latency in cubeb initialization
2023-08-27 12:46:01 -04:00
FearlessTobi
c2f827b85e
hwopus: Implement OpenHardwareOpusDecoderForMultiStreamEx and DecodeInterleavedForMultiStream
...
Allows MLB The Show 22 to boot.
Fixes https://github.com/yuzu-emu/yuzu/issues/7911 .
2023-08-27 18:03:10 +02:00
Charles Lombardo
037f82025c
android: Don't set a default emulation orientation
...
Could cause unnecessary configuration change when setting an orientation other than "Landscape"
2023-08-27 00:19:03 -04:00
Charles Lombardo
338d6f29b1
android: Properly adjust emulation surface aspect ratio
...
Previously the emulation surface wouldn't respond properly to orientation changes. This would result in the screen appearing stretched when starting in one orientation and switching to another.
The code for calculating the bounds of the view have been changed to match the expected behavior now. Before the view would just match parent in height and width. Now instead of using setLeftTopRightBottom (which is intended to be used for animations) we pass newly calculated bounds for the view into super. Now the view bounds match the emulation output.
This also means that we don't need the overload for the SettingsActivity to launch it using an ActivityResultLauncher. We can just update the view in onResume.
2023-08-27 00:16:53 -04:00
Fernando S
ada4697300
Merge pull request #11389 from FernandoS27/discard-fix
...
Buffer Cache: fix discard writes.
2023-08-27 04:26:59 +02:00
Fernando Sahmkow
115792158d
VideoCore: Implement DispatchIndirect
2023-08-27 04:26:22 +02:00
Mario
5464423667
yuzu-qt: Track play time
2023-08-26 22:20:19 -04:00
Fernando Sahmkow
710ca3ca49
Shader Recompiler: Auto stub special registers and dump pipelines on exception.
2023-08-27 03:47:04 +02:00
Fernando Sahmkow
acc99433c7
Buffer Cache: fix discard writes.
2023-08-27 03:45:43 +02:00
liamwhite
6c4abd23be
Merge pull request #11356 from lat9nq/console-mode-pg
...
general,config-qt: Present Console Mode as an enum with separate options in game properties
2023-08-26 19:15:00 -04:00
liamwhite
84b384fbea
Merge pull request #11359 from Kelebek1/check_suitable_backend
...
Pre-test for valid audio backends
2023-08-26 19:14:47 -04:00
liamwhite
c5105b65d5
Merge pull request #11317 from Kelebek1/macro_dumps
...
Mark decompiled macros on dump, dump shaders after translation
2023-08-26 19:14:25 -04:00
Liam
531572b411
internal_network: cancel pending socket operations on application process termination
2023-08-26 18:19:51 -04:00
Liam
b7523d6fa7
am: shorten shutdown timeout when lock is not held
2023-08-26 17:12:05 -04:00
Fernando Sahmkow
8beda6a2bf
DMA Pusher: Fix regression caused by guest memory optimizations
2023-08-26 22:00:43 +02:00
Kelebek1
d7a0b8c373
Mark decompiled macros as decompiled on dump, dump shaders after translation
2023-08-25 21:47:47 -04:00
comex
32c453a5f1
Avoid $<CXX_COMPILER_ID:Clang>
because it doesn't include AppleClang.
2023-08-25 19:22:31 -04:00
comex
91eb5afd0b
Warnings cleanup for GCC 13 and Clang 16
...
Note: For GCC there are still a huge number of `-Warray-bounds` warnings
coming from `externals/dynarmic`. I could have added a workaround in
`externals/CMakeLists.txt` similar to what this PR does for other
externals, but given Dynarmic's close affiliation with Yuzu, it would be
better to fix it upstream.
Besides that, on my machine, this makes the build warning-free except
for some warnings from glslangValidator and AutoMoc.
Details:
- Disable some warnings in externals.
- Disable `-Wnullability-completeness`, which is a Clang warning triggered
by the Vulkan SDK where if any pointers in the header are marked
_Nullable, it wants all pointers to be marked _Nullable or _Nonnull.
Most of them are, but some aren't. Who knows why.
- `src/web_service/verify_user_jwt.cpp`: Disable another warning when
including `jwt.hpp`.
- `src/input_common/input_poller.cpp`: Add missing `override` specifiers.
- src/common/swap.h: Remove redundant `operator&`. In general, this
file declares three overloads of each operator. Using `+` as an
example, the overloads are:
- a member function for `swapped_t + integer`
- a member function for `swapped_t + swapped_t`
- a free function for `integer + swapped_t`
But for `operator&`, there was an additional free function for
`swapped_t + integer`, which was redundant with the member function.
This caused a GCC warning saying "ISO C++ says that these are
ambiguous".
2023-08-25 19:22:31 -04:00
liamwhite
bc4e58eb51
Merge pull request #11377 from BenjaminHalko/reverse-slider-input
...
ui: Fixed inverted controls on ReverseSlider widgets
2023-08-25 18:06:03 -04:00
liamwhite
8674724ef0
Merge pull request #11378 from t895/game-flag
...
android: Use appCategory to specify the app is a game
2023-08-25 18:05:58 -04:00
liamwhite
a8edbb7019
Merge pull request #11370 from FearlessTobi/fix-filesize
...
filesystem: Return correct error for RenameFile when dest_path already exists
2023-08-25 18:02:54 -04:00
liamwhite
d8c8fbe41f
Merge pull request #11371 from FearlessTobi/fix-cli-updates
...
yuzu/main: Ensure NCAs are registered in content provider when launching from CLI
2023-08-25 18:02:47 -04:00
liamwhite
234cc45192
ssl: tolerate handshake without hostname set ( #11328 )
2023-08-26 00:02:32 +02:00
liamwhite
b923f5aa7e
registered_cache: create fake CNMT entries for program updates of multiprogram applications ( #11319 )
2023-08-26 00:00:15 +02:00
liamwhite
18ad55be0b
kernel: offset code entry point for 39-bit address space type ( #11326 )
2023-08-25 23:59:32 +02:00
Charles Lombardo
4e71628097
android: Use appCategory to specify the app is a game
2023-08-25 17:17:48 -04:00
bunnei
92e6ff30a1
Merge pull request #11357 from liamwhite/lime-vfs
...
android: jni: ensure NCAs from loaded filepath are registered in manual content provider
2023-08-25 13:04:22 -07:00
BenjaminHalko
49df2b9715
ui: Fixed inverted controls on ReverseSlider widgets
...
fixes : #11236
2023-08-25 10:06:34 -07:00
Liam
9e134c3da2
nvhost_as_gpu: ensure mappings are aligned to big page size when deallocated
2023-08-25 09:39:18 -04:00
FearlessTobi
59b3c30f94
yuzu/main: Ensure NCAs are registered in content provider when launching from CLI
...
Fixes updates and DLC not being loaded when launching yuzu from the command line.
Similar to https://github.com/yuzu-emu/yuzu/pull/11357 .
Fixes https://github.com/yuzu-emu/yuzu/issues/8352 ,
2023-08-24 18:48:02 +02:00
FearlessTobi
a669e37ddb
filesystem: Return correct error for RenameFile when dest_path already exists
...
Allows Grid Autosport to boot.
Fixes https://github.com/yuzu-emu/yuzu/issues/8287 .
2023-08-24 17:07:39 +02:00
liamwhite
7d89f2c146
Merge pull request #11327 from liamwhite/skyline-2
...
sockets: avoid locking around socket session calls
2023-08-24 10:33:53 -04:00
FearlessTobi
e41655960e
game_list_worker: Display correct size for NAX games
...
This was a regression from https://github.com/yuzu-emu/yuzu/pull/1837 .
Fixes https://github.com/yuzu-emu/yuzu/issues/1938 .
2023-08-24 01:16:19 +02:00
lat9nq
1cdd11d9f5
main: Fix docked mode button, clang 14 error
2023-08-23 14:26:34 -04:00
Feng Chen
cc4736fa58
video_core: set vertex buffer num to 16, because mvk have when using more than 16
2023-08-23 23:22:55 +08:00
liamwhite
ccd163ab2c
Merge pull request #11352 from t895/recurse-subfolders
...
android: Search game directory recursively
2023-08-23 10:20:02 -04:00
Charles Lombardo
182fb83556
android: Set default build variant to mainlineRelWithDebInfo ( #11358 )
2023-08-23 16:12:39 +02:00
Kelebek1
39c8ddcda2
Pre-test opening a stream for audio backends, fall back to null if not suitable.
2023-08-23 08:33:26 +01:00
Liam
2c4ebeb51d
android: jni: ensure NCAs from loaded filepath are registered in manual content provider
2023-08-22 22:47:25 -04:00
lat9nq
00af46c356
native: Use Docked Mode helper
2023-08-22 22:40:36 -04:00
lat9nq
ce0f1baf51
main: Access by reference
...
Old Clang is fussy about this.
2023-08-22 22:35:55 -04:00
lat9nq
75f5b3177d
config-android: Translate console mode setting
...
Translates the previous boolean to the enum.
2023-08-22 22:00:28 -04:00
lat9nq
3c45452fae
general: Use console mode helper across project
2023-08-22 21:58:23 -04:00
lat9nq
ab862207d7
settings: Add docked mode helper function
2023-08-22 21:58:09 -04:00
lat9nq
7f8335f4ae
config(qt): Sanitize docked handheld controller
2023-08-22 16:07:53 -04:00
lat9nq
6ed5b581f0
shared_translation: Define use_docked_mode texts
2023-08-22 16:07:53 -04:00
lat9nq
387ede76d2
general: Convert use_docked_mode to an enumeration
...
Allows some special interactions with it in the Qt frontend.
2023-08-22 16:07:52 -04:00
lat9nq
8a4cb3f902
shared_widget: Implement radio groups
2023-08-22 16:07:52 -04:00
Charles Lombardo
35b77b9599
android: Search game directory recursively
2023-08-22 15:16:20 -04:00
liamwhite
bc4ad5e62d
Merge pull request #11302 from vonchenplus/vulkan_macos
...
Add macos moltenvk bundle, Add copy moltevk dylib script
2023-08-22 13:10:26 -04:00
liamwhite
ef61d129d3
Merge pull request #11303 from lat9nq/screenshots-configurable
...
yuzu-qt: Add configuration for screenshot resolution
2023-08-22 11:30:25 -04:00
liamwhite
b8bab551a4
Merge pull request #11316 from FernandoS27/stop-premature-christmas-decorating
...
Shader Recompiler: implement textureGrad 3D
2023-08-22 11:30:08 -04:00
liamwhite
a9f223cd9f
Merge pull request #11346 from t895/ktlint-fix
...
android: lint: Delete generated ktlint folder between builds
2023-08-22 11:30:01 -04:00
Feng Chen
87022a4833
Add macos moltenvk bundle, Add copy moltevk dylib script
2023-08-22 10:22:28 +08:00
Charles Lombardo
1bc832c9b1
android: lint: Delete generated ktlint folder between builds
...
There's a bug in ktlint where it will run into an error if you build the project, delete a source file, and then build again. It will be unable to find the file you deleted and can't recover until these files are deleted. This just deletes those files before every run.
2023-08-21 17:31:13 -04:00
Charles Lombardo
df00da1760
android: Show associated value in home settings ( #11272 )
2023-08-21 22:25:11 +02:00
liamwhite
9d6ac28999
Merge pull request #11309 from liamwhite/full-xci
...
file_sys/card_image: support dumps with prepended key area
2023-08-21 16:09:22 -04:00
liamwhite
a921851ba6
Merge pull request #11342 from liamwhite/skyline-4
...
patch_manager: apply manual HTML patches when present
2023-08-21 16:09:15 -04:00
liamwhite
18c08cee43
Merge pull request #11149 from ameerj/astc-perf-prod
...
host_shaders: ASTC compute shader optimizations
2023-08-21 16:08:51 -04:00
Charles Lombardo
062113374d
android: Use sensor landscape for landscape mode ( #11337 )
2023-08-21 21:56:12 +02:00
Liam
133ff3989b
patch_manager: apply manual HTML patches when present
2023-08-21 10:58:23 -04:00
Fernando S
861597eb2e
Merge pull request #11284 from liamwhite/nca-release
...
vfs: expand support for NCA reading
2023-08-21 16:29:04 +02:00
Liam
0cd9d51e06
sockets: avoid locking around socket session calls
2023-08-19 23:09:35 -04:00
Kelebek1
f2f99a8c31
Masked depthstencil clears
2023-08-19 03:29:46 +01:00
Fernando Sahmkow
c03f0b3c89
Shader Recomnpiler: implement textuzreGrad 3D emulation constant propagation
2023-08-18 22:17:02 -04:00
liamwhite
ae1421265a
Merge pull request #11278 from Kelebek1/dma_sync
...
Mark accelerated DMA destination buffers and images as GPU-modified
2023-08-18 09:12:27 -04:00
liamwhite
314d3858a1
Merge pull request #11288 from liamwhite/svc-tick
...
kernel: remove relative task registration
2023-08-18 09:12:19 -04:00
Feng Chen
1dcb0c2232
video_core: Fix vulkan assert error
2023-08-18 14:40:11 +08:00
Liam
8be3a041e0
file_sys/card_image: support dumps with prepended key area
2023-08-17 22:03:47 -04:00
liamwhite
ddedaa8875
Merge pull request #10989 from comex/epipe
...
sockets: Improve behavior when sending to closed connection
2023-08-17 11:59:47 -04:00
liamwhite
0e3a995bf4
cmake: mark warning disable for gcc 11 ( #11301 )
2023-08-17 16:03:34 +02:00
lat9nq
6af8cca2c1
uisettings: Add TODO for stretched aspect being ignored
2023-08-16 22:57:19 -04:00
Liam
775bf8e215
file_sys: tolerate empty NCA
2023-08-16 16:30:41 -04:00
lat9nq
e28b936950
configure_ui: Silence MSVC warning
2023-08-16 16:28:44 -04:00
lat9nq
6fe51b48e9
yuzu-qt: Screenshots depend more on the graphics settings
2023-08-16 16:12:42 -04:00
lat9nq
96c98d09cb
yuzu-qt: Implement unspecified screenshot ratio
2023-08-16 00:18:47 -04:00
lat9nq
76a03e99b6
bootmanager: Remove old path
...
Causes issues with different selected aspect ratios in graphics.
2023-08-16 00:18:16 -04:00
lat9nq
95409c6859
configure_ui: Update the screenshots data
2023-08-15 23:08:02 -04:00
lat9nq
227950ac99
config: Read the entire screenshots category
2023-08-15 23:07:49 -04:00
lat9nq
bc5ec10498
bootmanager: Consider the default resolution
2023-08-15 22:57:38 -04:00
lat9nq
d9275b7757
yuzu-qt: Enable specifying screenshot resolution
2023-08-15 22:42:28 -04:00
lat9nq
3e28e85468
settings: Add AspectRatio enum, split res scale function
2023-08-15 22:41:50 -04:00
comex
755bcc459b
Improve behavior when sending to closed connection
...
- On Unix, this would previously kill the Yuzu process with SIGPIPE.
Send MSG_NOSIGNAL to opt out of this.
- Add support for the proper error code in this situation, EPIPE.
- Windows has nonstandard behavior in this situation; translate it to
the standard behavior. Kind of pointless, but isn't it nice to be
correct?
2023-08-15 20:59:57 -04:00
Liam
50eee9b218
fssystem: rework for yuzu style
2023-08-15 17:47:40 -04:00
Liam
0398b34370
fssystem: reduce overalignment of unbuffered storage operations
2023-08-15 17:47:25 -04:00
Liam
86f6b6b7b2
vfs: expand support for NCA reading
2023-08-15 17:47:25 -04:00
Fernando S
a8c4f01f6c
Merge pull request #11287 from liamwhite/replaced-bytes
...
gdbstub: fixup replaced instruction bytes in memory reads
2023-08-15 15:36:14 +02:00
bunnei
6d665a94ea
Merge pull request #11256 from FearlessTobi/revert-10075
...
Partially Revert "Silence nifm spam"
2023-08-14 16:28:13 -07:00
bunnei
bbc6b08fc7
Merge pull request #11273 from t895/setup-completion
...
android: Setup additions
2023-08-14 15:41:35 -07:00
Liam
0bd9a4456c
kernel: remove relative task registration
2023-08-14 18:12:06 -04:00
Liam
fbda084acb
gdbstub: fixup replaced instruction bytes in memory reads
2023-08-14 16:33:27 -04:00
FearlessTobi
2694f81462
Revert "Silence nifm spam"
...
This reverts commit 4da4ecb1ff
.
2023-08-14 21:23:09 +02:00
bunnei
d5adaeafdf
Merge pull request #11271 from t895/settings-tweaks
...
android: Settings tweaks
2023-08-14 11:44:38 -07:00
liamwhite
58a4c86797
Merge pull request #11282 from ameerj/glasm-xfb
...
gl_graphics_pipeline: GLASM: Fix transform feedback with multiple buffers
2023-08-14 09:19:20 -04:00
liamwhite
35a77c3bb2
Merge pull request #11283 from ameerj/glasm-pipeline-detection
...
gl_graphics_pipeline: Fix GLASM storage buffer detection
2023-08-14 09:19:10 -04:00
liamwhite
c1016b68ae
Merge pull request #11281 from liamwhite/vi-scale-mode
...
nvnflinger: add missing scale mode
2023-08-14 09:19:03 -04:00
liamwhite
b30df50076
Merge pull request #11259 from german77/hid
...
service: hid: Implement functions needed by QLaunch
2023-08-14 09:18:55 -04:00
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