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