Fernando Sahmkow
01c4568786
Texture Cache Util: Fix block depth adjustment on slices.
2023-05-24 10:06:58 +02:00
Fernando Sahmkow
72c1ee1bf9
texture_cache: process aliases and overlaps in the correct order
2023-05-24 09:53:42 +02:00
Fernando S
72a14a6817
Merge pull request #10422 from liamwhite/gc
...
video_core: tune garbage collection aggressiveness
2023-05-24 03:58:49 +02:00
Fernando S
4ee4fdf78c
Merge pull request #10417 from liamwhite/check-state
...
k_memory_block_manager: remove auditing calls
2023-05-24 03:56:58 +02:00
Fernando S
76f6388969
Merge pull request #10398 from liamwhite/bcn
...
video_core: add ASTC recompression
2023-05-24 03:55:45 +02:00
grimkor
b3ebfd2481
add context menu for filter and anti-aliasing status buttons
2023-05-24 00:21:04 +00:00
Liam
3b1172c10f
video_core: tune garbage collection aggressiveness
2023-05-23 12:55:14 -04:00
Liam
415c78b87c
textures: add BC1 and BC3 compressors and recompression setting
2023-05-23 12:54:40 -04:00
liamwhite
a5d4c3e5ad
Merge pull request #10388 from GPUCode/fence-wait
...
vk_master_semaphore: Move fence wait on separate thread
2023-05-23 09:42:56 -04:00
liamwhite
58be9b12f4
Merge pull request #10402 from liamwhite/uh
...
renderer_vulkan: barrier attachment feedback loops
2023-05-23 09:42:49 -04:00
liamwhite
09ed5ec665
Merge pull request #10411 from scorpion81/gc-steamdeck-fix-attempt
...
Limit device access memory for integrated devices to 4 GB
2023-05-23 09:42:39 -04:00
Liam
5e3b3c6643
k_memory_block_manager: remove auditing calls
2023-05-23 09:15:16 -04:00
Narr the Reg
f63586c5f5
service: nfc: Remove encryption key requirement
2023-05-22 18:42:09 -06:00
Liam
8bba9f7dea
vulkan_device: Enable VK_KHR_push_descriptor on newer ANV
2023-05-22 19:53:20 -04:00
Liam
8758932031
renderer_vulkan: barrier attachment feedback loops
2023-05-22 18:10:16 -04:00
scorpion81
f8e7b44d28
Limit the device access memory to 4 GB
...
Hardly limiting the device access memory to 4 GB for integrated vulkan devices here. This works for the Steam Deck in order not to go above 4 GB VRAM usage any more (above this value the likelihood to crash when the RAM exceeds 12 GB as well raises).
But there will be perhaps a detection mechanism necessary for detecting the real memory limit for integrated vulkan devices. Those likely might have small limits anyway, but what about integrated GPUs on machines with > 16 GB RAM, aka larger amounts ?
2023-05-22 16:48:55 +02:00
Narr the Reg
fdb2002f77
input_common: Implement amiibo writting
2023-05-21 21:09:20 -06:00
Danila Malyutin
7701a00a02
Add support for deinterlaced videos playback
...
This is a follow up to #10254 to improve the playback of cut scenes in Layton's Mystery Journey.
It uses ffmpeg's yadif filter for deinterlacing.
2023-05-22 01:43:44 +04:00
GPUCode
4e491ab59b
vk_master_semaphore: Move fence wait on separate thread
2023-05-20 19:23:53 +03:00
german77
dbcdb3523b
input_common: Map motion with relative values not absolute ones
2023-05-19 21:19:29 -06:00
bunnei
1e398e6c36
Merge pull request #10344 from german77/pro-amiibo
...
input_common: Fix pro controller amiibo support
2023-05-18 18:10:38 -07:00
Liam
de7c92d7c4
renderer_vulkan: remove wrong constexpr
2023-05-18 18:01:01 -04:00
Kelebek1
d75bcdd077
Smooth out the DSP callback by adding a 5ms wait time limit
2023-05-18 13:03:32 +01:00
lat9nq
c1a8a508bc
vulkan_device: Disable VK_KHR_push_descriptor on ANV
...
Mesa commit ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc breaks
VK_KHR_push_descriptor usage on ANV drivers 22.3.0, so disable it
and allow games to boot.
2023-05-17 22:19:57 -04:00
bunnei
9d4a2de72b
Merge pull request #10262 from liamwhite/depth-clamp
...
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-17 12:19:03 -07:00
Narr the Reg
5693434b8a
input_common: Fix pro controller amiibo support
2023-05-16 18:37:22 -06:00
liamwhite
47c5c37bed
Merge pull request #10217 from Kelebek1/clear_value
...
Use the rendertarget format of the correct RT rather than the first valid
2023-05-16 10:06:30 -04:00
liamwhite
a540d248f3
Merge pull request #10107 from grimkor/allow-fully-customised-hotkeys
...
Allow fully customised controller hotkeys
2023-05-16 10:06:15 -04:00
liamwhite
bbb6b58aa4
Merge pull request #10181 from lat9nq/intel-compute-toggle
...
configure_graphics: Add option to enable compute pipelines for Intel proprietary
2023-05-15 12:05:24 -04:00
liamwhite
736a31e4ff
Merge pull request #10234 from Kelebek1/clouds_depth
...
Fix Tears of the Kingdom flickering clouds and depths geometry.
2023-05-15 12:03:31 -04:00
liamwhite
6060685609
Merge pull request #10249 from FernandoS27/sorry-i-am-late
...
Buffer Cache: Clear sync code.
2023-05-15 12:03:25 -04:00
liamwhite
5b85925469
Merge pull request #10254 from danilaml/fix-h264-decode
...
Fix missing pic_order_present_flag in h264 header
2023-05-15 12:03:14 -04:00
liamwhite
033aa264cf
Merge pull request #10265 from german77/amiibo-lag
...
input_common: Make amiibo scanning less demanding
2023-05-15 12:03:08 -04:00
liamwhite
9087fe10e9
Merge pull request #10294 from german77/vibration_span
...
service: hid: Use span instead of vector reference
2023-05-15 12:03:00 -04:00
german77
6e54615b16
service: hid: Use span instead of vector reference
2023-05-14 18:07:04 -06:00
Fernando Sahmkow
c4bfbc6d25
Buffer Cache: Clear sync code.
2023-05-15 01:50:21 +02:00
liamwhite
e9069dfe76
Merge pull request #10288 from liamwhite/vram-limits
...
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 17:02:15 -04:00
Liam
2be751100b
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 16:49:59 -04:00
german77
ac531aa15f
input_common: Make amiibo scanning less demanding
2023-05-14 09:04:37 -06:00
Liam
122435e080
vulkan_common: fix incompatible property flags
2023-05-14 01:13:11 -04:00
Danila Malyutin
c9c5d140b8
Use TARGET_FILE_DIR generator expression
...
Use $<TARGET_FILE_DIR:...> where appropriate instead of trying to guess where the binary will end up.
2023-05-13 23:58:17 +04:00
Liam
856838f7ce
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-13 00:37:17 -04:00
Fernando S
9c739f1506
Merge pull request #10244 from liamwhite/lower-upper
...
time: implement ContinuousAdjustmentTimePoint
2023-05-13 03:51:05 +02:00
Fernando S
075d73f076
Merge pull request #10243 from Kelebek1/red_dot
...
Correctly track render target index in the framebuffer for image aspects
2023-05-13 03:50:31 +02:00
bunnei
021e503cc8
Merge pull request #10237 from liamwhite/cache-storage
...
fs: stub cache storage
2023-05-12 16:42:17 -07:00
Danila Malyutin
9367769fe7
Fix missing pic_order_present_flag in h264 header
...
Fixes #9635
2023-05-12 22:30:59 +04:00
Liam
a22c5a3880
time: implement ContinuousAdjustmentTimePoint
2023-05-11 21:05:27 -04:00
Kelebek1
cd0ded7771
Correctly track RT indexes for image aspect lookup during clears
2023-05-12 01:40:21 +01:00
Liam
351079a4ba
fs: adjust future save path
2023-05-11 17:30:30 -04:00
Liam
62bcb99ba8
am: stub CreateCacheStorage
2023-05-11 17:26:02 -04:00
Liam
13e4ceb990
fs: stub cache storage and fix params alignment
2023-05-11 17:23:28 -04:00
Liam
bb94beed15
nvnflinger: fix Parcel serialization
2023-05-11 17:09:19 -04:00
Liam
6e10a0c130
nvnflinger: fix producer slot fence init
2023-05-11 17:08:14 -04:00
Kelebek1
e42b4a16b6
Fix Tears of the Kingdom flickering clouds and depths.
2023-05-11 19:25:24 +01:00
liamwhite
182221b9ff
Merge pull request #10132 from Kelebek1/fermi_blit2
...
Allow Fermi blit accelerate to work without images in cache
2023-05-11 10:45:59 -04:00
liamwhite
2643ea80df
Merge pull request #10216 from Kelebek1/buffer_cache_region_checks
...
Swap order of checking/setting region modifications in the buffer_cache
2023-05-11 10:45:47 -04:00
Kelebek1
bf08bc3c0f
Allow Fermi blit accelerate to add src/dst to the cache if they don't exist already. Use ScratchBuffers in the software blit path.
2023-05-11 06:42:38 +01:00
grimkor
ceb65c259a
Allow fully customisable controller hotkeys
2023-05-10 19:28:11 +01:00
Liam
67fd1df762
renderer_vulkan: separate guest and host compute descriptor queues
2023-05-10 13:46:48 -04:00
liamwhite
b7f60e9123
Merge pull request #10207 from german77/amiibo_cheater
...
service: nfp: Allow to load with a different amiibo id
2023-05-10 10:25:48 -04:00
Narr the Reg
3ec027400e
Merge pull request #10119 from marius851000/improved_non_hd_feeback
...
Attempt at improving HD Rumble emulation
2023-05-09 22:59:32 -06:00
Narr the Reg
42e1db4b0e
service: nfc: Seed all random values
2023-05-09 17:54:07 -06:00
german77
1968cc7b10
service: nfp: Allow to load with a different amiibo id
2023-05-09 17:51:59 -06:00
Kelebek1
a386003b64
Use the rendertarget format of the correct RT rather than the first valid
2023-05-09 22:13:15 +01:00
Kelebek1
b3691fc33c
Swap order of checking/setting region modifications in the buffer_cache
2023-05-09 20:21:08 +01:00
liamwhite
7944f271dc
Merge pull request #10183 from liamwhite/mods
...
vfs_vector: avoid n^2 lookup in layeredfs building
2023-05-09 09:47:36 -04:00
liamwhite
5890b96ce5
Merge pull request #10203 from german77/calibration
...
core: hid: Allow to calibrate gyro sensor
2023-05-09 09:47:29 -04:00
liamwhite
1f14b58315
Merge pull request #10206 from FernandoS27/astc-3d
...
Texture Cache: Fix 3D ASTC textures
2023-05-09 09:47:22 -04:00
german77
cb1487d774
input_common: Fix nfc detection for joycons
2023-05-09 00:32:53 -06:00
Fernando Sahmkow
8a214e5530
Texture Cache: Fix ASTC textures
2023-05-09 02:42:10 +02:00
Jan Beich
a4362765a6
qt_common: consistently ifdef QPlatform after cbd79df233
...
src/yuzu/qt_common.cpp:45:33: error: member access into incomplete type 'QPlatformNativeInterface'
wsi.display_connection = pni->nativeResourceForWindow("display", window);
^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
^
src/yuzu/qt_common.cpp:47:42: error: member access into incomplete type 'QPlatformNativeInterface'
wsi.render_surface = window ? pni->nativeResourceForWindow("surface", window) : nullptr;
^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
^
2023-05-08 20:47:16 +00:00
Narr the Reg
e1838f51a3
yuzu: Make 3d cube with joycon shape
2023-05-08 12:06:39 -06:00
Narr the Reg
97bd6d6418
core: hid: Allow to calibrate gyro sensor
2023-05-08 12:06:38 -06:00
lat9nq
40f3e2fbf1
configure_graphics_advanced: Hide input compute toggle a little later
...
SetColoredTristate causes the setting to become visible as it calls
`show()` on it.
2023-05-08 12:32:56 -04:00
bunnei
b70a205a96
Merge pull request #10075 from Kelebek1/silence_nifm_spam
...
Silence network spam
2023-05-07 17:45:32 -07:00
Liam
bdb7c11d8e
bootmanager: remove stop_token header
2023-05-07 19:20:09 -04:00
liamwhite
8f605b542c
Merge pull request #10195 from german77/mutex
...
core: hid: Update motion on a better place
2023-05-07 19:06:10 -04:00
Liam
d100de27ee
vfs_layered: avoid n^2 lookup in layeredfs building
2023-05-07 19:03:41 -04:00
german77
cf023aa8ec
core: hid: Update motion on a better place
2023-05-07 17:01:57 -06:00
Fernando Sahmkow
8014dd8259
Texture cache: Only force flush the dma downloads
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
2df19ef0fd
Buffer Cache: disable reactive flushing in it.
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
016c6feb49
Texture cache: reverse inmediate flush changes
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
36c302fa32
Buffer cache: always use async buffer downloads and fix regression.
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
6f90dff293
Address feedback, add CR notice, etc
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
ab0c0a469c
Query cache: stop updating pages as it's not affected by cpu writes
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
92da86290c
Settings: add option to enable / disable reactive flushing
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
0f4f18265f
Texture cache: sync the first flush.
2023-05-07 23:46:12 +02:00
Fernando Sahmkow
c6cac2ffaa
GPU: Add Reactive flushing
2023-05-07 23:46:12 +02:00
Liam
5792a72c29
vfs_vector: avoid n^2 lookup in layeredfs building
2023-05-07 16:50:35 -04:00
bunnei
e58090c9c7
Merge pull request #10097 from german77/nfp_full
...
service: nfc: Merge device interfaces and create the device manager
2023-05-07 12:18:09 -07:00
liamwhite
0c5bdc7241
Merge pull request #10081 from Kelebek1/copy_overlap_tick
...
Sort overlap_ids by modification tick before copy
2023-05-07 14:09:10 -04:00
liamwhite
cb49c3b64c
Merge pull request #10172 from Kelebek1/debug_validation_names
...
Log object names with debug renderer, add a GPU address to ImageViews
2023-05-07 14:09:03 -04:00
QGJ
4366a21eae
yuzu/applets/qt_profile_select: connect double-click to accept()
...
In the profile selection window:
Allow the user to start the game by double-clicking a profile to avoid having to additionally click the OK button. This avoids an unnecessary "step" to the start of the game...
2023-05-07 18:05:42 +02:00
Kelebek1
6fed48b3a4
Fix address space allocator slow path to avoid OOB
2023-05-07 15:11:16 +01:00
bunnei
f36b5dfd18
Merge pull request #10180 from german77/debug
...
input_common: Revert debugging changes
2023-05-06 22:26:53 -07:00
german77
91695a453b
input_common: Revert debugging changes
2023-05-06 23:06:44 -06:00
lat9nq
55c77dd25b
yuzu-qt/config: Add option to disable compute on Intel
...
This option is only visible if an Intel GPU using the proprietary
driver is found during Vulkan device enumeration.
configure_graphics: More directly get driver id
Vulkan::Device does quite a bit more than we need just to see the
driver ID here.
2023-05-07 01:06:22 -04:00
lat9nq
6ed6e6e18e
vk_pipeline_cache: Use setting to disable intel compute
2023-05-07 01:06:22 -04:00
lat9nq
725aacb4bc
settings: Add enable compute pipelines
...
For the Intel proprietary driver's deficiencies.
settings: Restore compute option global state
2023-05-07 01:06:20 -04:00
bunnei
3547248ec2
Merge pull request #10125 from lat9nq/vsync-select
...
configuration: Expose separate swap present modes
2023-05-06 21:55:39 -07:00
bunnei
82188b2f79
Merge pull request #10174 from german77/motriod
...
input_common: Add experimental motion to button
2023-05-06 21:40:20 -07:00
liamwhite
27ff00acb1
Merge pull request #10162 from lat9nq/sdl-remove-old
...
yuzu-sdl,audio_core: Remove antiquated warning ignore
2023-05-06 23:10:09 -04:00
liamwhite
9c9b4616c3
Merge pull request #10167 from german77/motion_preview
...
yuzu: Add motion preview to controller input
2023-05-06 23:09:55 -04:00
Roni Kirla
a13fd5f7cc
Fix read access violation
2023-05-07 00:13:33 +03:00
german77
9b771bcb8f
input_common: Add experimental motion to button
2023-05-05 22:49:56 -06:00
Narr the Reg
94151097b9
service: nfc: Merge device interfaces and create the device manager
2023-05-05 22:02:59 -06:00
Kelebek1
ca6bf06ef7
Log object names with debug renderer, add a GPU address to ImageViews
2023-05-06 04:48:32 +01:00
Narr the Reg
f017335fef
input_common: Add property to invert an axis button
2023-05-05 17:18:35 -06:00
Narr the Reg
46e835f2d6
yuzu: Add motion preview to controller input
2023-05-05 13:53:38 -06:00
bunnei
bb2e407772
Merge pull request #10159 from german77/home_screenshot
...
core: hid: Fix state of capture and home buttons
2023-05-05 12:02:15 -07:00
marius david
0a6bd8b236
Improve emulation of HD Rumble
2023-05-05 19:30:40 +02:00
lat9nq
740c349820
yuzu-sdl,audio_core: Remove antiquated warning ignore
...
Issue was fixed a long time ago, both by SDL2 and in yuzu by including
SDL2 as a system library.
2023-05-05 03:48:28 -04:00
german77
8df3aed2f1
core: hid: Fix state of capture and home buttons
2023-05-04 22:36:59 -06:00
liamwhite
16939b1a6e
Merge pull request #10128 from Kelebek1/audren_terminate
...
Wait for the terminate event before destroying a system instance
2023-05-04 14:44:09 -04:00
liamwhite
60d54d911e
Merge pull request #10145 from Kelebek1/code_size
...
Fix shader code resize to use word size rather than byte size
2023-05-04 14:44:02 -04:00
Fernando S
2506594c50
Merge pull request #10153 from FernandoS27/a-quickie-fixie
...
Memory manager: Fix possible softlock
2023-05-04 03:56:53 +02:00
Fernando S
7d5683c63c
Merge pull request #10154 from liamwhite/optimistic
...
settings: remove pessimistic flushing
2023-05-04 01:55:51 +02:00
bunnei
055ee84024
Merge pull request #10142 from FernandoS27/missing-astc
...
GPU: implement missing ASTC
2023-05-03 16:49:27 -07:00
Liam
ae59ffc56c
settings: remove pessimistic flushing
2023-05-03 18:52:42 -04:00
Fernando Sahmkow
1c13c74295
Memory manager: Fix possible softlock
2023-05-04 00:15:21 +02:00
lat9nq
a71498d163
qt_common: Remove yuzu prefix
2023-05-03 18:11:53 -04:00
bunnei
a661c547d8
Merge pull request #10088 from FernandoS27/100-gelato-flavor-test-builds-later
...
Y.F.C Implement Asynchronous Fence manager and Rework Query async downloads
2023-05-03 15:10:22 -07:00
bunnei
737e1ca101
Merge pull request #10117 from liamwhite/sync-register
...
kernel: match calls to Register and Unregister
2023-05-03 09:07:19 -07:00
Fernando Sahmkow
87a9be8dec
GPU: implement missing ASTC
2023-05-03 11:33:28 -04:00
liamwhite
ffeb5cdd8d
Merge pull request #10151 from GPUCode/no-softlocks-please
...
Fix softlocks when disabling async present
2023-05-03 10:54:24 -04:00
Morph
8dd3baa562
Merge pull request #10144 from liamwhite/dont-turbo
...
vulkan: disable turbo when debugging tool is attached
2023-05-03 10:53:03 -04:00
Morph
daf7936095
Merge pull request #10143 from liamwhite/fruit-company-moment
...
video_core: fix build on Apple Clang
2023-05-03 10:52:56 -04:00
Morph
627022bef9
Merge pull request #10124 from liamwhite/pebkac
...
settings: rename extended memory layout to unsafe, move from general to system
2023-05-03 10:52:45 -04:00
GPUCode
f3fcc15ad5
vk_present_manager: Fix softlocks when disabling async present
2023-05-03 07:50:10 +03:00
lat9nq
35e7f36a39
configure_graphics: No there isn't a hyphen in VSync
...
Most sources seem to suggest VSync and not V-Sync
2023-05-02 21:52:43 -04:00
lat9nq
d82cad3fb3
configure_input_player: Add missing include
...
Cleaning up includes in bootmanager and configure_graphics has exposed a
missing include here.
2023-05-02 21:52:43 -04:00
lat9nq
cd2981ee12
configure_graphics: Clean up includes [IWYU]
2023-05-02 21:52:43 -04:00
lat9nq
0c0f5b7ccc
bootmanager: Clean up includes [IWYU]
...
bootmanager: Remove system-specific headers
IWYU can be too complete I suppose.
2023-05-02 21:52:43 -04:00
lat9nq
a546ecbb12
configure_graphics: Actively find present modes
...
When Vulkan devices are enumerated, this also determines the available
present modes for each device, maps them to a vector, and gives
those options to the user.
OpenGL options are limited to On/Off.
Required creating a VkSurfaceKHR during device enumeration, which
may or may not be desireable. For the sake of a less confusing UI.
Also fixes a bug where if a graphics device disappears on the host, we
don't try and select the non-existant devices.
configure_graphics: Remove vsync runtime lock for Vulkan
configure_graphics: Recommend Mailbox present mode
configure_graphics: Fix type-limits warning
configure_graphics: Clean up includes
configure_graphics: Add tooltip
2023-05-02 21:52:43 -04:00
lat9nq
952b271092
vk_swapchain: Use certain modes for unlocked
...
Uses mailbox, then immediate for unlocked framerate depending on
support for either. Also adds support for FIFO_RELAXED.
This function now assumes vsync_mode was originially configured to a value
that the driver supports.
vk_swapchain: ChooseSwapPresentMode determines updates
Simplifies swapchain a bit and allows us to change the present mode
during guest runtime.
vk_swapchain: Fix MSVC error
vk_swapchain: Enforce available present modes
Some frontends don't check the value of vsync_mode before comitting it.
Just as well, since a driver update or misconfiguration could problems
in the swap chain.
vk_swapchain: Silence warnings
Silences GCC warnings implicit-fallthrough and shadow, which apparently
are not enabled on clang.
2023-05-02 21:52:43 -04:00
lat9nq
a090a380be
bootmanager: Remove inaccurate switch
...
Those vulkan settings do not correspond 1:1 to the swap intervals that
they set for OpenGL, so remove it.
bootmanager: Add missing include
I didn't add this log why did it break
2023-05-02 21:51:30 -04:00
lat9nq
cbd79df233
qt_common: Move window info function out of bootmanager
...
Function is useful outside of bootmanager, so put it in a common place.
qt_common: Add missing include
qt_common: Add some newlines
qt_common: Add trailing newline
qt_common: Add trainline newline
2023-05-02 21:51:30 -04:00
lat9nq
c6c11c1553
vulkan_surface: Pass only window info for surface creation
...
We don't need the whole EmuWindow when creating a surface,
and it creates onerous requirements outside of typical usage for
creating a surface elsewhere.
2023-05-02 21:51:30 -04:00
lat9nq
2528cf7c54
settings: Enable FIFO relaxed
...
Not entirely sure if we need this, but there's also no reason not to
support it.
settings: Give VSyncMode values
2023-05-02 21:51:30 -04:00
lat9nq
6b973c5986
configure_graphics: Fix another typo
2023-05-02 21:51:29 -04:00
lat9nq
40f062f749
telemetry_session: Make translate function static
...
Addresses review feedback
Co-authored-by: Lioncash <mathew1800@gmail.com>
2023-05-02 21:51:29 -04:00
lat9nq
29a56496bf
bootmanager: Return value in impossible case
...
The setting is ranged, so this return statement is unreachable.
But GCC can't tell I guess.
2023-05-02 21:51:29 -04:00
lat9nq
41a103c0fc
configure_graphics: Fix typo
2023-05-02 21:51:29 -04:00
lat9nq
66ed1c1872
default_ini: Update V-Sync description
...
default_ini: Update vsync text
default_ini: Add tooltip from configure_graphics
2023-05-02 21:51:29 -04:00
lat9nq
6f0929df82
configuration: Expose separate swap present modes
...
Previously, yuzu would try and guess which vsync mode to use given
different scenarios, but apparently we didn't always get it right. This
exposes the separate modes in a drop-down the user can select.
If a mode isn't available in Vulkan, it defaults to FIFO.
2023-05-02 21:51:29 -04:00
bunnei
8f43b05d6b
Merge pull request #9973 from GPUCode/async-present
...
Implement asynchronous presentation
2023-05-02 17:54:57 -07:00
Kelebek1
f902cc2a2b
Fix code resize to use word size rather than byte size
2023-05-02 23:52:21 +01:00
liamwhite
451b1bba26
Merge pull request #10133 from lat9nq/clang-shadow-and-fallthrough
...
CMakeLists: Enable more checks on Clang
2023-05-02 18:18:46 -04:00
liamwhite
494cc992eb
Merge pull request #10130 from liamwhite/keys
...
qt: warn on inoperable keys
2023-05-02 18:17:24 -04:00
liamwhite
f603dc9763
Merge pull request #10123 from Kelebek1/sample_mask
...
Define SampleMask as an array
2023-05-02 18:17:15 -04:00
Liam
4df49631de
vulkan: disable turbo when debugging tool is attached
2023-05-02 18:14:57 -04:00
Liam
e1c74cea10
video_core: fix build on Apple Clang
2023-05-02 18:05:30 -04:00
lat9nq
f7292c776b
CMake: Enable type limits on Clang
2023-05-02 02:07:36 -04:00
lat9nq
2007d0e4a0
CMakeLists: Enable checks on Clang
...
Enables shadow-uncaptured-locals and implicit-fallthrough for Clang.
implicit-fallthrough is not enabled by default in -Wall or -Wextra, and
shadow-uncaptured-local doesn't seem to be enabled by default by
-Wshadow, even though GCC has both of these by their respective cases.
2023-05-02 01:57:22 -04:00
GPUCode
f403d27941
vk_present_manager: Add toggle for async presentation
2023-05-01 23:13:24 +03:00
GPUCode
1d7abac84b
vk_blit_screen: Recreate FSR when frame is recreated
...
* Depends on the layout dimentions and thus should be recreated as well
2023-05-01 23:13:24 +03:00
GPUCode
50791cb974
renderer_vulkan: Fix crashing when updating descriptors
...
* During pipeline configure the function would acquire some payload space from the descriptor update queue,
write the descriptor data on the GPU thread and give the scheduler a pointer to the beginning of said space to update it later.
TickFrame resets the payload cursor, used to track acquires, back to the beginning of the buffer.
This wasn't a problem before since WaitWorker was called at the end of the frame but now it is.
If a frame writes to a cursor before the scheduler catches up, it will crash
* To fix this the payload buffer has been increased to account for the in flight frames that are allowed to exist now.
TickFrame will switch between the payload spaces instead of resetting
2023-05-01 23:13:24 +03:00
GPUCode
2ad9acf795
renderer_vulkan: Async presentation
2023-05-01 23:13:24 +03:00
Morph
47938541c2
Merge pull request #10084 from FernandoS27/yuzu-goes-broom-broom
...
Y.F.C Buffer Cache Revamp
2023-05-01 11:08:02 -04:00
liamwhite
3f4315e4c6
Merge pull request #10116 from liamwhite/deboost
...
kernel: remove boost intrusive lists
2023-05-01 09:27:23 -04:00
Fernando Sahmkow
d6f565e5da
BufferCache: Fixes and address feedback
2023-05-01 11:43:26 +02:00
Liam
7ec66db22c
qt: warn on inoperable keys
2023-04-30 23:47:42 -04:00
Kelebek1
2feb40f14d
Wait for the terminate event before destroying a system instance
2023-05-01 00:27:12 +01:00
Liam
2cd9e1ecb6
settings: rename extended memory layout to unsafe, move from general to system
2023-04-30 14:24:22 -04:00
Kelebek1
b566c98258
Define SampleMask as an array
2023-04-30 18:37:37 +01:00
bunnei
689f9a75a7
Merge pull request #10110 from Morph1984/intel-disable-compute
...
vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers
2023-04-29 23:02:45 -07:00
Liam
b143ce8134
kernel: remove general boost lists
2023-04-29 22:11:32 -04:00
Liam
1b5c87ab6a
kernel: match calls to Register and Unregister
2023-04-29 21:52:26 -04:00
Liam
2afaa7aed7
common: add intrusive list type
2023-04-29 17:46:26 -04:00
Fernando Sahmkow
4bc5469f52
Texture Cache: Release stagging buffers on tick frame
2023-04-29 15:31:38 +02:00
Fernando Sahmkow
f8d31d1ae1
Buffer Cache: Release stagging buffers on tick frame
2023-04-29 00:46:31 +02:00
Fernando Sahmkow
fff6155bc3
Tests: Add memory tracker tests.
2023-04-29 00:46:31 +02:00
Fernando Sahmkow
80480fe3f7
Clang: format and ficx compile errors.
2023-04-29 00:46:31 +02:00
Fernando Sahmkow
ed4553806a
Implement Async downloads in normal and fix a few issues.
2023-04-29 00:46:31 +02:00
Fernando Sahmkow
f2d3212de9
Buffer Cache rework: Setup async downloads.
2023-04-29 00:46:31 +02:00
Fernando Sahmkow
a16c261131
Buffer Cache: Fully rework the buffer cache.
2023-04-29 00:46:31 +02:00
Fernando Sahmkow
58d1c7c77a
Address Feedback & Clang Format
2023-04-29 00:18:21 +02:00
Fernando Sahmkow
56c9730a16
Maxwell3D: only update parameters on High
2023-04-29 00:18:21 +02:00
Fernando Sahmkow
e3a2ca96bd
Accelerate DMA: Use texture cache async downloads to perform the copies
...
to host.
WIP
2023-04-29 00:18:21 +02:00
Fernando Sahmkow
3fbee093b2
TextureCache: refactor DMA downloads to allow multiple buffers.
2023-04-29 00:18:21 +02:00
Morph
cb092af3f0
vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers
...
Intel's SPIR-V shader compiler is broken. For now, skip compiling any compute pipelines until they fix this issue.
This is not a perfect workaround, as there are a small subset of non-compute pipelines that still cause it to crash, but this should cover the majority of crashes.
It is unfortunate that even with a test case reported 6 months ago the issue has not been fixed in favor of fixing "the most popular games and apps".
Intel, you can do better than this.
2023-04-28 17:59:36 -04:00
Fernando Sahmkow
2f15876524
QueryCache: Fix write invalidation.
2023-04-28 23:53:46 +02:00
Fernando Sahmkow
9a7c172f76
MemoryManager: Fix race conditions.
2023-04-28 23:53:02 +02:00
german77
5e16fe4579
core: service: Add FunctionInfoTyped to allow expanding existing interfaces
2023-04-25 23:36:24 -06:00
Fernando Sahmkow
e4dc73f61e
Clang format and ddress feedback
2023-04-24 12:38:47 +02:00
Fernando S
9bf19b04f6
Merge pull request #10051 from liamwhite/surface-capabilities
...
vulkan: pick alpha composite flags based on available values
2023-04-24 12:37:13 +02:00
Fernando S
47cd0586ee
Merge pull request #10056 from vonchenplus/audout_u
...
core: audio: return result when audio_out initialize failed
2023-04-24 12:36:52 +02:00
Fernando S
2311fa7c84
Merge pull request #10069 from liamwhite/log
...
maxwell_3d: fix out of bounds array access in size estimation
2023-04-24 12:36:24 +02:00
Narr the Reg
00d76fc5f5
service: nfc: Create mifare interface
2023-04-23 23:28:09 -06:00
Narr the Reg
a3fa64fcc4
service: nfc: Create interface
2023-04-23 23:28:09 -06:00
Fernando Sahmkow
e29ced29fa
QueryCache: rework async downloads.
2023-04-23 22:04:14 +02:00
Fernando Sahmkow
7e76c1642c
Accuracy Normal: reduce accuracy further for perf improvements in Project Lime
2023-04-23 22:03:44 +02:00
Fernando Sahmkow
fca72beb2d
Fence Manager: implement async fence management in a sepparate thread.
2023-04-23 04:48:50 +02:00
Liam
eb7c2314f6
maxwell_3d: fix out of bounds array access in size estimation
2023-04-22 10:35:26 -04:00
Kelebek1
4da4ecb1ff
Silence nifm spam
2023-04-22 14:29:58 +01:00
Kelebek1
3346de365a
Sort overlap_ids by modification tick before copy
2023-04-22 14:02:10 +01:00
Fernando S
d600183583
Merge pull request #10074 from Kelebek1/fermi_blit
...
Account for a pre-added offset when using Corner sample mode for 2D blits
2023-04-22 12:06:00 +02:00
bunnei
0f1ff5f34e
Merge pull request #10076 from german77/TryPopMyFriend
...
core: am: Demote TryPopFromFriendInvitationStorageChannel Log level
2023-04-21 23:15:07 -07:00
bunnei
d0e6eafe23
Merge pull request #10068 from twitchax/twitchax/dr_bind_address
...
Allow passing `--bind-address` to dedicated room.
2023-04-21 23:13:51 -07:00
bunnei
74d203fbe3
Merge pull request #10060 from german77/no_dead
...
core: hid: Remove deadzone of virtual controller
2023-04-21 23:13:21 -07:00
german77
7ffc42c397
core: am: Demote TryPopFromFriendInvitationStorageChannel Log level
2023-04-21 22:35:45 -06:00
Kelebek1
4e14b64bfc
Account for a pre-added offset when using Corner sample mode for 2D blits
2023-04-21 19:08:21 +01:00
bunnei
0cfeb2e8d7
Merge pull request #10057 from liamwhite/its-not-in-the-timeline
...
vulkan: use plain fences when timeline semaphores are not available
2023-04-19 16:50:24 -07:00
Aaron Roney
79e32127b3
Run clang-format to fix all.
2023-04-19 17:52:09 +00:00
bunnei
799579c8d2
Merge pull request #10053 from german77/nfp_full
...
service: nfp: Implement all interfaces
2023-04-19 10:36:28 -07:00
Aaron Roney
3e7af5fbd7
Fix formatting.
2023-04-19 16:26:49 +00:00
Aaron Roney
34d0d94df0
Allow passing bind_address
to dedicated room.
2023-04-19 05:37:30 +00:00
FengChen
55a33342cc
core: audio: return result when audio_out initialize failed
2023-04-16 12:31:54 +08:00
german77
70a97fb5c7
core: hid: Remove deadzone of virtual controller
2023-04-15 18:41:09 -06:00
Liam
e3fb9b5e00
vulkan: use plain fences when timeline semaphores are not available
2023-04-14 22:53:37 -04:00
bunnei
e0895a8581
Merge pull request #10030 from Wollnashorn/botw-amd-fix
...
shader_recompiler: Fix ImageGather rounding on AMD/Intel
2023-04-14 16:56:34 -07:00
Narr the Reg
307371e01d
service: nfp: Implement debug Interface
2023-04-14 17:03:58 -06:00
Narr the Reg
00800d5289
service: nfp: Implement system interface
2023-04-14 17:03:57 -06:00
Valeri
60c4032b68
input_common: minor fix to mouse movement
2023-04-14 21:27:35 +03:00
Narr the Reg
101c0df79c
service: nfp: Use an unique interface
2023-04-13 22:24:27 -06:00
Liam
e37e1d24f9
vulkan: pick alpha composite flags based on available values
2023-04-13 16:38:20 -04:00
Wollnashorn
c0e5ecc399
video_core: Enable ImageGather rounding fix on AMD open source drivers
2023-04-12 17:11:02 +02:00
liamwhite
54b4c84ab6
Merge pull request #10008 from vonchenplus/texture_cache
...
video_core: update imageinfo implement
2023-04-11 11:59:18 -04:00
liamwhite
4f77275cd5
Merge pull request #10027 from bylaws/master
...
Add some explicit latency to sample count reporting
2023-04-10 09:23:48 -04:00
Liam
baf4d1c22e
kernel: move more memory to application in 8GB arrangement
2023-04-09 19:50:27 -04:00
Liam
abb785f269
kernel: switch extended memory setting to 8GB arrangement
2023-04-08 17:47:26 -04:00
Billy Laws
8908663f12
Use GetGlobalTimeNs as opposed to clock ticks
2023-04-08 21:54:19 +01:00
Wollnashorn
82b78cde73
shader_recompiler: Use vector arithmetic rather than component-wise in ImageGatherSubpixelOffset
...
Should be more efficient and better readable
2023-04-08 16:13:08 +02:00
Wollnashorn
fe91066f46
video_core: Enable ImageGather with subpixel offset on Intel
2023-04-08 16:12:44 +02:00
Wollnashorn
780240e697
shader_recompiler: Add subpixel offset for correct rounding at ImageGather
...
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures.
See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary.
This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957 , #6956 ).
2023-04-08 16:12:30 +02:00
bunnei
25c4ae6e11
Merge pull request #10022 from liamwhite/gcc-13
...
general: fixes for gcc 13
2023-04-08 00:09:06 -07:00
Billy Laws
0afb9631b5
Add some explicit latency to sample count reporting
...
Some games have very tight scheduling requirements for their audio which can't really be matched on the host, adding a constant to the reported value helps to provide some leeway.
2023-04-03 23:11:36 +01:00
liamwhite
bbdfe1fab1
Merge pull request #10024 from german77/crysis
...
service: hid: Fix handle validation
2023-04-03 13:06:07 -04:00
liamwhite
ff386e794b
Merge pull request #10004 from Kelebek1/cubemap
...
[texture_cache] Only upload GPU-modified overlaps
2023-04-03 13:05:52 -04:00
Liam
a9623d5f55
general: fixes for gcc 13
2023-04-02 19:02:04 -04:00
german77
d2ae39bf4b
service: hid: Fix handle validation
2023-04-02 02:21:54 -06:00
bunnei
756f013d8a
Merge pull request #10020 from merryhime/update-dynarmic
...
externals: Update dynarmic to 6.4.6
2023-04-01 21:57:45 -07:00
bunnei
9c94faaa2b
core: arm_dynarmic_32: Update SaveContext/LoadContext.
2023-04-01 17:03:08 -07:00
bunnei
6775a6ee02
Merge pull request #9969 from bylaws/master
...
Audio synchronisation improvements
2023-04-01 14:34:59 -07:00
liamwhite
1ab052952d
Merge pull request #10006 from german77/profile_select
...
service: am: Improve profile select applet
2023-04-01 09:49:22 -04:00
liamwhite
b2772bcb0d
Merge pull request #9997 from german77/cancel_controller
...
applet: controller: Implement cancel button
2023-04-01 09:49:08 -04:00
liamwhite
ff4fbaf152
Merge pull request #9999 from german77/new_hid_hurra
...
service: hid: Implement SetNpadJoyAssignmentModeSingleWithDestination
2023-04-01 09:48:53 -04:00
liamwhite
986336b0d8
Merge pull request #10017 from jbeich/vk-246
...
externals: update Vulkan-Headers to v1.3.246 to fix -Werror=switch with system package
2023-04-01 09:44:52 -04:00
bunnei
0730dc6c44
Merge pull request #10005 from liamwhite/kernel-atomics
...
kernel: fix unbounded stack usage in atomics
2023-04-01 01:54:36 -07:00
Jan Beich
083d913eab
externals: update Vulkan-Headers to v1.3.246
2023-04-01 05:38:54 +00:00
Feng Chen
ff2089fdf5
video_core: Keep the definition of DimensionControl consistent with nvidia open doc
2023-03-31 12:33:07 +08:00
german77
11edba4974
applet: controller: Implement cancel button
2023-03-30 07:49:44 -06:00
german77
8e84381038
service: hid: Implement SetNpadJoyAssignmentModeSingleWithDestination
...
Used by Let's Get Fit
2023-03-29 22:03:49 -06:00
Max Dunbar
e446f368d7
Fixes 'Continous' typo
2023-03-29 19:26:12 -07:00
Narr the Reg
668eb5b8da
service: am: Improve profile select applet
2023-03-29 08:53:19 -06:00
liamwhite
8bdc51b620
Merge pull request #9505 from liamwhite/request-exit
...
applets: implement RequestExit
2023-03-29 09:11:34 -04:00
Liam
9efd95cda5
kernel: fix unbounded stack usage in atomics
2023-03-28 22:28:27 -04:00
liamwhite
9c96d40586
Merge pull request #10003 from german77/disconnect
...
service: hid: Silence warning on MergeSingleJoyAsDualJoy
2023-03-28 09:09:47 -04:00
Kelebek1
c68b4bee2c
Only upload GPU-modified overlaps
2023-03-28 11:07:39 +01:00
Morph
cdc846677c
telemetry: Add waitpkg instruction
2023-03-27 17:45:22 -04:00
Morph
981bc8aa1c
x64: Simplify RDTSC on non-MSVC compilers
...
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2023-03-27 17:45:22 -04:00
Morph
e1bce50d8b
core_timing: Make use of MicroSleep for x64 CPUs
...
For CPUs that support tpause, this should result in significant CPU power savings over thread yield in this spin wait.
2023-03-27 17:45:22 -04:00
Morph
27c33ab73f
x64: Add MicroSleep
...
MicroSleep allows the processor to pause for a "short" amount of time (in the microsecond range). This is useful for spin-waiting that does not require nanosecond precision.
This uses the new TPAUSE instruction introduced on Intel's newest processors as part of the waitpkg instructions. For CPUs that do not support waitpkg instructions, this is equivalent to yield().
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2023-03-27 17:45:22 -04:00
Morph
d2cfe25b07
x64: cpu_detect: Add detection of waitpkg instructions
...
waitpkg introduces 3 instructions, UMONITOR, UMWAIT and TPAUSE.
2023-03-27 17:45:22 -04:00
Billy Laws
530fe24768
audio_core: No longer stall when sink queue is full
...
Now the audout and audren update rates are tied to the sink status stalling is no longer necessary.
2023-03-27 22:01:41 +01:00
Billy Laws
237934b736
Run clang-format
2023-03-27 22:01:41 +01:00
Billy Laws
ea5dd02db9
audio: Wait for samples on the emulated DSP side to avoid desyncs
...
Waiting on the host side is inaccurate and leads to desyncs in the event of the sink missing a deadline that require stalls to fix. By waiting for the sink to have space before even starting rendering such desyncs can be avoided.
2023-03-27 21:34:28 +01:00
liamwhite
fbbf532d42
Merge pull request #10002 from german77/log
...
qt: Fix log softlock
2023-03-27 15:37:44 -04:00
Narr the Reg
c2c7386dfd
service: hid: Silence warning on MergeSingleJoyAsDualJoy
2023-03-27 13:25:15 -06:00
Narr the Reg
2fbadc7e1f
qt: Fix log softlock
2023-03-27 12:18:46 -06:00
liamwhite
0661f5ccd1
Merge pull request #9984 from liamwhite/global-memory
...
memory: rename global memory references to application memory
2023-03-27 12:16:40 -04:00
liamwhite
3b30f5d823
Merge pull request #9995 from german77/plain
...
service: nfp: Add plain amiibo support
2023-03-27 12:16:24 -04:00
Billy Laws
d8fc3f403b
audio: Interpolate system manager sample count using host sink sample info
...
This avoids the need to stall if the host sink sporadically misses the deadline, in such a case the previous implementation would report them samples as being played on-time, causing the guest to send more samples and leading to a gradual buildup.
2023-03-26 22:48:57 +01:00
german77
8802646730
service: nfp: Add plain amiibo support
2023-03-26 14:26:36 -06:00
Liam
1476ffd865
tests: mark integer literals as unsigned
2023-03-26 15:39:07 -04:00
Liam
7017f04ee8
container_hash: use climits
2023-03-26 10:24:33 -04:00
Morph
49f6deecb8
video_core/macro: Make use of Common::HashValue
2023-03-25 23:52:26 -04:00
Morph
f09d192aac
tests: Implement tests for verifying HashValue
...
Values were randomly generated and the verification was done against boost 1.79.
2023-03-25 23:52:26 -04:00
Morph
9971cd1d55
common: Port boost's hash_value implementation
...
Ports a small subset of boost's hash_value implementation (<= 1.80.0).
2023-03-25 23:52:25 -04:00
Liam
50a59487eb
qt: implement RequestExit for applets
2023-03-25 14:49:43 -04:00
Liam
950db851ea
applets: implement RequestExit
2023-03-25 12:44:26 -04:00
bunnei
09da9da6fb
Merge pull request #9985 from liamwhite/funny-meme
...
vulkan: fix scheduler chunk reserve
2023-03-24 23:40:17 -07:00
Ross Schlaikjer
f38ae8e953
Pass GPU page table by reference
2023-03-25 00:25:02 -04:00
liamwhite
cfb9672093
Merge pull request #9983 from Morph1984/boost
...
CMakeLists: Update boost to 1.81.0
2023-03-24 10:53:30 -04:00
liamwhite
462c430c8b
Merge pull request #9981 from german77/nfp_connect
...
nfc: Initialize device when controller is connected
2023-03-24 10:53:05 -04:00
Liam
5a2dff87bf
vulkan: fix scheduler chunk reserve
2023-03-24 09:09:01 -04:00
Morph
7a8a7545f2
Merge pull request #9975 from liamwhite/more-waiting
...
vulkan: fix more excessive waiting in scheduler
2023-03-24 00:19:43 -04:00
Morph
abe2ad7aac
zstd: Use ZSTD_getFrameContentSize instead of ZSTD_getDecompressedSize
2023-03-23 22:16:20 -04:00
Liam
41d99aa89d
memory: rename global memory references to application memory
2023-03-23 20:28:47 -04:00
liamwhite
ac3927074b
Merge pull request #9971 from Morph1984/q
...
bounded_threadsafe_queue: Use simplified impl of bounded queue
2023-03-23 10:00:31 -04:00
liamwhite
c41a4baf06
Merge pull request #9964 from liamwhite/typed-address
...
kernel: use KTypedAddress for addresses
2023-03-23 10:00:19 -04:00
Morph
6adaa0d5e2
Merge pull request #9962 from Kelebek1/disable_srgb
...
[video_core] Disable SRGB border color conversion in samplers
2023-03-23 03:07:00 -04:00
Liam
fb49ec19c1
kernel: use KTypedAddress for addresses
2023-03-22 09:35:16 -04:00
Morph
197d756560
bounded_threadsafe_queue: Refactor Pop
...
Introduces PopModes to bring waiting logic into Pop, similar to Push.
2023-03-21 22:33:58 -04:00
Morph
8c56481249
bounded_threadsafe_queue: Add producer cv to avoid busy waiting
2023-03-21 22:33:57 -04:00
Narr the Reg
6ff4bf9b1c
nfc: Initialize device when controller is connected
2023-03-21 20:09:36 -06:00
bunnei
dba86ee007
Merge pull request #9965 from german77/thankYouEpicBoy
...
config: Fix controller config from resetting
2023-03-21 17:52:25 -07:00
Morph
407dc917f1
bounded_threadsafe_queue: Deduplicate and add PushModes
...
Adds the PushModes Try and Wait to allow producers to specify how they want to push their data to the queue if the queue is full.
If the queue is full:
- Try will fail to push to the queue, returning false. Try only returns true if it successfully pushes to the queue. This may result in items not being pushed into the queue.
- Wait will wait until a slot is available to push to the queue, resulting in potential for deadlock if a consumer is not running.
2023-03-21 19:20:21 -04:00
Morph
15d573194c
bounded_threadsafe_queue: Add TryPush
2023-03-21 19:17:38 -04:00
Morph
f28ca5361f
logging: Make use of bounded queue
2023-03-21 19:17:38 -04:00
Morph
306840a580
bounded_threadsafe_queue: Use simplified impl of bounded queue
...
Provides a simplified SPSC, MPSC, and MPMC bounded queue implementation using mutexes.
2023-03-21 19:17:32 -04:00
bunnei
3d4c113037
Merge pull request #9970 from bunnei/string-util-view
...
common: string_util: Use std::string_view for UTF16ToUTF8/UTF8ToUTF16W.
2023-03-19 11:10:16 -07:00
Liam
b9b1318bea
vulkan: fix more excessive waiting in scheduler
2023-03-19 13:40:33 -04:00
Liam
43d909949e
kernel: fix LOG_TRACE in ipc
2023-03-19 10:02:20 -04:00
bunnei
00d401d639
common: string_util: Use std::string_view for UTF16ToUTF8/UTF8ToUTF16W.
2023-03-18 22:42:25 -07:00
bunnei
0eb3fa05e5
common: bounded_threadsafe_queue: Use polyfill_thread.
2023-03-17 23:42:17 -07:00
bunnei
889454f9bf
Merge pull request #9778 from behunin/my-box-chevy
...
gpu_thread: Use bounded queue
2023-03-17 22:14:29 -07:00
bunnei
8bcaa8c2e4
Merge pull request #9953 from german77/amiibo_crc
...
service: nfp: Actually write correct crc
2023-03-17 22:13:57 -07:00
Narr the Reg
c95baf92ce
config: Fix controller config from resetting
2023-03-17 22:08:16 -06:00
Kelebek1
a7651168dd
Disable SRGB border color conversion for now, to fix shadows in Xenoblade.
2023-03-17 04:46:38 +00:00
Narr the Reg
075a3d1172
service: nfp: Replace crc function with boost equivalent
2023-03-16 17:47:32 -06:00
liamwhite
6d76a54d37
Merge pull request #9955 from liamwhite/color-blend-equation
...
vulkan: disable extendedDynamicState3ColorBlendEquation on radv
2023-03-15 20:19:45 -04:00
liamwhite
a04061e6ae
Merge pull request #9931 from liamwhite/sched
...
vk_scheduler: split work queue waits and execution waits
2023-03-15 20:19:35 -04:00
Narr the Reg
7187732454
service: nfp: Close app area and recreate crc
2023-03-15 17:01:06 -06:00
Narr the Reg
5031f5b8b0
service: nfp: Convert mii colors to v3
2023-03-15 17:01:05 -06:00
Liam
da83afdeaf
vulkan: disable extendedDynamicState3ColorBlendEquation on radv
2023-03-15 15:55:07 -04:00
Narr the Reg
026fe2e4f4
service: nfp: Actually write correct crc
2023-03-14 23:42:41 -06:00
liamwhite
0c7149d222
Merge pull request #9933 from vonchenplus/texture_format
...
video_core: Update texture format
2023-03-14 11:35:37 -04:00
FengChen
11ffbee5ae
video_core: Better defined ImageInfo parameters
2023-03-14 22:36:34 +08:00
Morph
4c678cfbc8
configure_audio: Fix output mode setting not saving
2023-03-13 17:41:30 -04:00
liamwhite
8870fae674
Merge pull request #9939 from german77/vibration
...
input_common: sdl: Only send last vibration command
2023-03-13 13:45:40 -04:00
liamwhite
8348c41eab
Merge pull request #9941 from german77/settings
...
yuzu: Move audio settings to audio section
2023-03-13 13:45:29 -04:00
liamwhite
638044820d
Merge pull request #9943 from vonchenplus/gentleman
...
video_core: Fix inline_index and draw_texture error
2023-03-13 13:45:17 -04:00
german77
96b8a3ecac
input_common: sdl: Only send last vibration command
2023-03-12 21:30:02 -06:00
Liam
c352381ce9
kernel: additional style fixes to KThread, KProcess
2023-03-12 22:10:27 -04:00
Liam
9775a73d1a
kernel: fix clang build
2023-03-12 22:10:27 -04:00
Liam
088c434d65
kernel: remove unnecessary finalize calls
2023-03-12 22:10:27 -04:00
Liam
9863db9db4
kernel: convert KProcess to new style
2023-03-12 22:09:27 -04:00
Liam
6bfb4c8f71
kernel: convert KThread to new style
2023-03-12 22:09:09 -04:00
Liam
ac6cbb7134
kernel: prefer std::addressof
2023-03-12 22:09:09 -04:00
Liam
641783df8f
kernel: convert KResourceLimit
2023-03-12 22:09:09 -04:00
Liam
c0b9e93b77
kernel: remove kernel_
2023-03-12 22:09:09 -04:00
Liam
9368e17a92
kernel: remove gratitutous attribute usage
2023-03-12 22:09:09 -04:00
Liam
91fd4e30f2
kernel/svc: convert to new style
2023-03-12 22:09:08 -04:00
Liam
57f1d8ef8d
kernel: convert miscellaneous
2023-03-12 22:06:53 -04:00
Liam
d1b53c8d82
kernel: conver KScopedLock, KScopedResourceReservation, KSessionRequest, KSharedMemory, KSpinLock
2023-03-12 22:06:53 -04:00
Liam
7322c99e5f
kernel: convert KAbstractSchedulerLock
2023-03-12 22:06:53 -04:00
Liam
467adc1acd
kernel: convert KMemoryLayout, KMemoryRegion*, KPageTableSlabHeap, KPriorityQueue
2023-03-12 22:06:53 -04:00
Liam
0483dfae1a
kernel: move KMemoryLayout for NX board
2023-03-12 22:06:53 -04:00
Liam
8d1f5bfbd2
kernel: remove KLinkedList
2023-03-12 22:06:53 -04:00
Liam
fdf90c6d75
kernel: convert KConditionVariable, KLightConditionVariable, KLightLock
2023-03-12 22:06:53 -04:00
Liam
097c25b164
kernel: convert KPort, KSession
2023-03-12 22:06:53 -04:00
Liam
d24ab14126
kernel: convert GlobalSchedulerContext, KAddressArbiter, KScopedSchedulerLockAndSleep, KThreadQueue to new style
2023-03-12 22:06:53 -04:00
Liam
3f261f22c9
vk_scheduler: split work queue waits and execution waits
2023-03-12 17:19:44 -04:00
Liam
600f325d87
general: fix spelling mistakes
2023-03-12 11:33:01 -04:00
FengChen
44f10c8dee
video_core: Fix ogl status error when draw_texture
2023-03-12 13:33:31 +08:00
FengChen
4e42ba54e5
video_core: Invalid index_buffer flag when inline_index draw
2023-03-12 13:21:26 +08:00
german77
e090a1c6bd
yuzu: Move audio settings to audio section
2023-03-11 20:04:36 -06:00
german77
e8af3f29d2
yuzu: Remove console id setting
2023-03-11 19:33:31 -06:00
Fernando S
49643d8134
Merge pull request #9913 from ameerj/acc-dma-refactor
...
AccelerateDMA: Refactor Buffer/Image copy code and implement for OGL
2023-03-11 20:04:19 +01:00
liamwhite
92c89312fc
Merge pull request #9923 from liamwhite/kht
...
kernel: add timer pointer to KThreadQueue
2023-03-10 16:19:41 -05:00
liamwhite
e0bd27b674
Merge pull request #9928 from german77/super_nfp
...
service: nfp: Improve implementation
2023-03-10 13:55:28 -05:00
liamwhite
103380134f
Merge pull request #9925 from ameerj/gl-sync-signal
...
OpenGL: Prefer glClientWaitSync for OGLSync objects
2023-03-10 13:55:22 -05:00
liamwhite
021af4fd00
Merge pull request #9917 from Morph1984/the-real-time
...
native_clock: Re-adjust the RDTSC frequency to its real frequency
2023-03-10 13:55:11 -05:00
Feng Chen
c8ad039612
video_core: Update texture format
2023-03-10 21:48:50 +08:00
Narr the Reg
8d5cde6eff
service: nfp: Improve implementation
2023-03-09 19:29:28 -06:00
liamwhite
ec4e2d1fab
Merge pull request #9916 from liamwhite/fpu
...
kernel: clone fpu status on CreateThread
2023-03-09 09:19:15 -05:00
liamwhite
b5c0c1e163
Merge pull request #9822 from ameerj/buffcache-ssbo-addr
...
buffer_cache: Add logic for non-NVN storage buffer tracking
2023-03-09 09:18:39 -05:00
ameerj
03137086db
OpenGL: Prefer glClientWaitSync for OGLSync objects
...
At least on Nvidia, glClientWaitSync with a timeout of 0 (non-blocking) is faster than glGetSynciv of GL_SYNC_STATUS.
2023-03-08 20:29:25 -05:00
bunnei
4562f7af9a
Merge pull request #9906 from german77/metroid2
...
input_common: Increase mouse sensitivity range
2023-03-08 10:43:38 -08:00
liamwhite
f3f57f90fe
Merge pull request #9912 from liamwhite/err
...
hle: rename legacy errors to Results
2023-03-08 09:16:27 -05:00
liamwhite
b5d61f214d
Merge pull request #9904 from liamwhite/ws
...
kernel: fix WaitSynchronization
2023-03-08 09:16:17 -05:00
liamwhite
3cf88a4d6c
Merge pull request #9896 from Kelebek1/d24s8
...
Check all swizzle components for red, not just [0]
2023-03-08 09:16:06 -05:00
Morph
67560296c6
perf_stats: Check multicore first
...
SpeedLimiting is SC only. Since MC is performance oriented we should check for it first to skip checking use_speed_limit.
2023-03-07 23:11:01 -05:00
Morph
d72d753b1a
Merge pull request #9921 from liamwhite/override
...
general: fix type inconsistencies
2023-03-07 22:42:40 -05:00
Morph
a3ffea6a64
Merge pull request #9918 from liamwhite/fwrapv
...
kernel: avoid signed overflow UB on MSVC
2023-03-07 22:42:32 -05:00
Morph
b014fdacdb
Merge pull request #9920 from liamwhite/constexpr-bit-cast
...
common: make BitCast constexpr
2023-03-07 22:42:19 -05:00
Morph
1073346c7f
hid: Use nanosecond timestamps instead of ticks
2023-03-07 21:17:47 -05:00
Morph
3053a62375
core: Promote CPU/GPU threads to time critical
...
And also demote Audren and CoreTiming to High thread priority.
2023-03-07 21:17:46 -05:00
Morph
d718eab351
native_clock: Wait for 10 seconds instead of 30
...
It was experimentally determined to be sufficient.
2023-03-07 21:17:46 -05:00
Morph
c27a626b5b
native_clock: Use RealTimeClock instead of SteadyClock
...
We want to synchronize RDTSC to real time.
2023-03-07 21:17:46 -05:00
Morph
6f9918552c
steady_clock: Introduce a real time clock
2023-03-07 21:17:46 -05:00
Morph
dcd13a7566
native_clock: Re-adjust the RDTSC frequency
...
The RDTSC frequency reported by CPUID is not accurate to its true frequency.
We will spawn a separate thread to calculate the true RDTSC frequency after a measurement period of 30 seconds has elapsed.
2023-03-07 21:17:46 -05:00
Narr the Reg
757aafa582
input_common: Minor typo issues ( #9922 )
2023-03-08 03:15:46 +01:00
Liam
1776448df2
kernel: add timer pointer to KThreadQueue
2023-03-07 20:51:29 -05:00
german77
9a9e5844d3
input_common: Increase mouse sensitivity range
2023-03-07 19:31:52 -06:00
Liam
64dcb40db1
common: make BitCast constexpr
2023-03-07 20:26:56 -05:00
Liam
ba4213d956
general: fix type inconsistencies
2023-03-07 20:05:19 -05:00
Liam
d45ac00d48
kernel: avoid signed overflow UB on MSVC
2023-03-07 19:46:48 -05:00
Liam
484641003c
kernel: clone fpu status on CreateThread
2023-03-07 19:18:06 -05:00
liamwhite
a7792e5ff8
Merge pull request #9889 from Morph1984/time-is-ticking
...
core_timing: Reduce CPU usage on Windows
2023-03-07 10:54:13 -05:00
ameerj
268942c8fe
gl_rasterizer: Implement AccelerateDMA DmaBufferImageCopy
2023-03-06 22:57:52 -05:00
ameerj
6b9cc0ed23
Refactor AccelerateDMA code
2023-03-06 22:57:45 -05:00
Liam
1d0fe75e7c
hle: rename legacy errors to Results
2023-03-06 20:58:42 -05:00
liamwhite
6d61430311
Merge pull request #9890 from Kelebek1/reverb_fix
...
Fix a bug with the Reverb command in reading from the pre delay line
2023-03-06 11:23:34 -05:00
liamwhite
b210174087
Merge pull request #9910 from jbeich/libc++
...
kernel: add missing header for libc++
2023-03-06 11:21:51 -05:00
liamwhite
e6349fcd3b
Merge pull request #9905 from german77/usbssl
...
Service: USB, SSL, PSC: Update
2023-03-06 11:21:37 -05:00
liamwhite
f7e6bda5cd
Merge pull request #9907 from german77/joycon
...
input_common: joycon: Add stick input from passive reports
2023-03-06 11:21:27 -05:00
liamwhite
31f0fa1065
Merge pull request #9908 from german77/pfp
...
service: acc: Replace default image with a 32x32 image
2023-03-06 11:21:17 -05:00
Jan Beich
859fb469b8
kernel: add missing header for libc++
...
In file included from src/core/hle/kernel/k_light_lock.cpp:4:
In file included from src/./core/hle/kernel/k_light_lock.h:8:
src/./core/hle/kernel/k_scoped_lock.h:25:51: error: no member named 'addressof' in namespace 'std'
explicit KScopedLock(T& l) : KScopedLock(std::addressof(l)) {}
~~~~~^
2023-03-06 11:49:25 +00:00
Ikko Eltociear Ashimine
c161e3f433
fix typo in settings.h
...
Intial -> Initial
2023-03-06 20:28:47 +09:00
Narr the Reg
8a501ff30b
service: acc: Replace default image with a 32x32 image
2023-03-05 16:36:19 -06:00
german77
97704b8da9
input_common: joycon: Add stick input from passive reports
2023-03-05 12:50:15 -06:00
Narr the Reg
1f57ae6949
service: psc: Update names
2023-03-05 12:02:10 -06:00
Narr the Reg
f01540da6c
service: ssl: Add missing properties and update names
2023-03-05 12:02:04 -06:00
Narr the Reg
54711df739
service: usb: Update names
2023-03-05 10:45:24 -06:00
Liam
644ee0043e
kernel: fix WaitSynchronization
2023-03-05 10:29:10 -05:00
Fernando Sahmkow
8a3411b417
Engines: Implement Accelerate DMA Texture.
2023-03-05 12:18:00 +01:00
Morph
376a414f5b
native_clock: Round RDTSC frequency to the nearest 1000
2023-03-05 02:36:31 -05:00
Morph
026eaddbee
timer_resolution: Set current process to High QoS
...
Ensures that this process is treated as a high performance process by the Windows scheduler.
2023-03-05 02:36:31 -05:00
Morph
194cf0b497
hardware_properties: Update BASE_CLOCK_RATE to exactly 1020 MHz
2023-03-05 02:36:31 -05:00
Morph
bff1453282
core_timing: Use higher precision sleeps on Windows
...
The precision of sleep_for and wait_for is limited to 1-1.5ms on Windows.
Using SleepForOneTick() allows us to sleep for exactly one interval of the current timer resolution.
This allows us to take advantage of systems that have a timer resolution of 0.5ms to reduce CPU overhead in the event loop.
2023-03-05 02:36:31 -05:00
Morph
7e353082ac
main: (Windows) Set the current timer resolution to the maximum
...
Increases the precision of thread sleeps on Windows.
2023-03-05 02:36:31 -05:00
Morph
7fffdf83b7
wall_clock: Make use of SteadyClock
2023-03-05 02:36:31 -05:00
Morph
1ed49f92dd
common: Implement a method to change the Windows timer resolution
...
This utilizes undocumented NtDll functions to change the current timer resolution from the default of 1ms.
2023-03-05 01:41:28 -05:00
Morph
bd09c82521
common: Implement a high resolution steady clock
...
This implementation provides a consistent, high performance, and high resolution clock where/when std::chrono::steady_clock does not provide sufficient precision.
2023-03-05 01:41:19 -05:00
Morph
ce8f4da638
Merge pull request #9884 from liamwhite/service-cleanup
...
service: miscellaneous cleanups
2023-03-03 22:51:17 -05:00
Kelebek1
a7fb80e612
Check all swizzle components for red, not just [0], pass float border color rather than int
2023-03-04 02:33:50 +00:00
Behunin
44518b225c
gpu_thread: Use bounded queue
2023-03-03 18:20:56 -07:00
bunnei
1f98634371
Merge pull request #9855 from liamwhite/kern-16-support
...
kernel: support for 16.0.0
2023-03-03 14:42:00 -08:00
Kelebek1
104cb6aa0a
Fix a bug with the Reverb command in reading from the pre_delay line.
2023-03-02 06:00:55 +00:00
Liam
ec6ee04c64
vulkan_common: disable vertexInputDynamicState on unsupported driver
2023-03-01 22:48:12 -05:00
Liam
97f7f7bad5
kernel: be more careful about kernel address keys
2023-03-01 10:42:45 -05:00
Liam
c4ba088a5d
kernel: refactor priority inheritance to represent locks as C++ objects
2023-03-01 10:42:45 -05:00
Liam
96bd7ea42d
kernel: simplify AddressSpaceInfo, update values
2023-03-01 10:42:45 -05:00
Liam
367e89f984
kernel: barrier memory before condition variable write
2023-03-01 10:42:45 -05:00
Liam
9f9b64cda2
kernel: document previous location of interrupt disables in arbiter/condvar
2023-03-01 10:42:45 -05:00
Liam
4165ac0680
kernel: adjust pool allocations
2023-03-01 10:42:45 -05:00
Liam
62711fec02
kernel: simplify KAbstractSchedulerLock::Lock
2023-03-01 10:42:45 -05:00
Liam
0746a2084e
kernel: add InfoType::IoRegionHint
2023-03-01 10:42:45 -05:00
Liam
809148e1a5
nvnflinger: fix name
2023-03-01 10:39:49 -05:00
Liam
65be230fdd
service: move hle_ipc from kernel
2023-03-01 10:39:49 -05:00
Liam
4a1aa98598
sm:: remove unused member
2023-03-01 10:39:36 -05:00
liamwhite
97f7a560f3
Merge pull request #9832 from liamwhite/hle-mp
...
service: HLE multiprocess
2023-03-01 10:38:20 -05:00
Alexandre Bouvier
57fd8b1f45
cmake: use correct boost imported targets
2023-02-28 17:56:01 +01:00
liamwhite
22432668be
Merge pull request #9859 from liamwhite/tmem-use
...
service: avoid direct pointer access of transfer memory objects
2023-02-27 19:46:10 -05:00
liamwhite
50575c317e
Merge pull request #9874 from german77/violet
...
service: btm: Fix handle functions
2023-02-27 19:46:01 -05:00
Matías Locatti
5f2cbf53d7
Merge pull request #9872 from goldenx86/partialLTO
...
Partial LTO
2023-02-27 19:38:36 -03:00
Matías Locatti
c38bb96a2c
Partially apply LTO to only core and video_core projects.
2023-02-27 18:44:14 -03:00
Narr the Reg
71ca956d5c
service: btm: Fix handle functions
2023-02-27 12:40:47 -06:00
Narr the Reg
ff11fdb07e
Revert "yuzu: config: Remove player 8 and 9 from config file"
2023-02-26 14:39:13 -06:00
liamwhite
26c1edf2f0
Merge pull request #9849 from ameerj/async-astc
...
texture_cache: Add asynchronous ASTC texture decoding
2023-02-26 09:20:12 -05:00
Narr the Reg
60688bf0d5
yuzu: config: Remove player 8 and 9 from config file
2023-02-25 22:20:32 -06:00
ameerj
2ce5bb9bd6
buffer_cache: Add logic for non-NVN storage buffer tracking
2023-02-25 16:24:21 -05:00
liamwhite
833afb7ce3
Merge pull request #9848 from german77/metroid_motion
...
input_common: Implement dedicated motion from mouse
2023-02-25 12:44:13 -05:00
liamwhite
290ec3eb2f
Merge pull request #9857 from german77/fwupdate
...
core: Update service function tables to 16.0.0+
2023-02-25 12:44:06 -05:00
liamwhite
d5bfc36e90
Merge pull request #9861 from german77/bustype
...
core: hidbus: Fix BusType size
2023-02-25 12:44:00 -05:00
german77
cfd69e2e58
config: Fix per game Force max clock
2023-02-25 10:12:07 -06:00
Narr the Reg
5e4ea04a64
core: hidbus: Fix BusType size
2023-02-24 21:22:27 -06:00
Narr the Reg
39ca7b2928
core: Update service function tables to 16.0.0+
2023-02-24 18:17:36 -06:00
Liam
975186ad4d
am: avoid direct pointer access of transfer memory objects
2023-02-24 12:50:54 -05:00
Liam
de4e5db330
hid: avoid direct pointer access of transfer memory objects
2023-02-24 12:48:07 -05:00
ameerj
b5bcd8c71b
configuration: Add async ASTC decode setting
2023-02-22 18:21:09 -05:00
ameerj
090bc588e5
texture_cache: Add async texture decoding
2023-02-22 00:26:07 -05:00
Narr the Reg
739a81055f
core: hid: Restore motion state on refresh and clamp motion values
2023-02-21 21:55:23 -06:00
Narr the Reg
673accd630
input_common: Implement dedicated motion from mouse
2023-02-21 21:55:22 -06:00
Narr the Reg
db2785082b
settings: Add more input settings to the log
2023-02-21 19:48:38 -06:00
Narr the Reg
9477181d09
core: hid: Fix native mouse mappings
2023-02-21 19:48:38 -06:00
liamwhite
8f3e2a1b48
Merge pull request #9847 from german77/timeout
...
yuzu: Set a lower timeout for discord presence
2023-02-21 20:39:19 -05:00
Narr the Reg
d482ec32a4
yuzu: Set a lower timeout for discord presence
2023-02-21 18:23:58 -06:00
liamwhite
11f6bb1532
Merge pull request #9846 from merryhime/type-const
...
svc: Fix type consistency (exposed on macOS)
2023-02-21 18:58:04 -05:00
liamwhite
ba05301e1b
Merge pull request #9841 from abouvier/httplib-update
...
externals: Update cpp-httplib to latest
2023-02-21 18:57:55 -05:00
Merry
c9678bda24
svc: Fix type consistency (exposed on macOS)
2023-02-21 21:39:17 +00:00
Alexandre Bouvier
83afc12475
externals: Update cpp-httplib to latest
2023-02-21 20:55:37 +01:00
MonsterDruide1
d746cfc018
net: translate ECONNRESET network error
2023-02-21 20:47:59 +01:00
Liam
72e5552409
sm:: fix lingering session initialization issues
2023-02-21 12:19:25 -05:00
Liam
87749d217e
cheat_engine: add check for hid initialization
2023-02-21 12:19:25 -05:00
Liam
6e0a33089b
sm:: support service registration deferral
2023-02-21 12:19:25 -05:00
Liam
a936972614
service: refactor server architecture
...
Converts services to have their own processes
2023-02-21 12:19:25 -05:00
Liam
23151ff498
core: defer cpu shutdown
2023-02-21 12:19:25 -05:00