Markus Wick
9be819faaf
common: Move assert failure handling into a cpp file.
...
Advantage: Altering the handler does not need a full recompilation.
Disadvantage: noreturn is droped, so the caller is a bit slower.
We quite often run yuzu with a YOLO assertion handler. In fact, only very few
games run at all with asserts. This patch allows developers to patch the handler
without recompiling everything. The overhead of the missing "noreturn" attribute
shoul be negletable.
2021-04-04 21:19:33 +02:00
lat9nq
33ed02a239
configure_graphics: Prevent stack-use-after-scope
...
Address Sanitizer reports stack-use-after-scope on line 231
`vulkan_devices.push_back(QString::fromStdString(name));`. Instead of
using a pointer, copy the string into a std::string and use that,
instead.
2021-04-04 15:05:22 -04:00
bunnei
c92a211e7c
Merge pull request #6127 from german77/udpSingleConnection
...
InputCommon: Improve UDP communications
2021-04-03 23:14:23 -07:00
bunnei
c5ca8675c8
Merge pull request #6132 from MerryMage/code_size
...
arm_dynarmic: Increase size of code cache
2021-04-02 18:47:04 -07:00
Morph
aca6ab6417
Merge pull request #6131 from german77/rightjoyconSLSR
...
HID: Fix SL and SR buttons for right joycon
2021-04-02 15:48:04 -04:00
MerryMage
0fbd7752c3
arm_dynarmic: Increase size of code cache
2021-04-02 18:09:15 +01:00
german77
eaf0c4af11
HID: Fix SL and SR buttons for right joycon
2021-04-02 09:03:11 -05:00
bunnei
d69421b1db
Merge pull request #6106 from MerryMage/nullptr-jit
...
[test] arm_dynarmic: Always have a 'valid' jit instance
2021-04-01 09:50:00 -07:00
bunnei
e44622860a
Merge pull request #6126 from Morph1984/stub-SetAlbumImageTakenNotificationEnabled
...
ISelfController: Stub SetAlbumImageTakenNotificationEnabled
2021-03-30 21:32:01 -07:00
german77
bb3dce9363
Use a single connection for UDP server, make connection test longer and check all pads instead of only the first one
2021-03-30 22:17:08 -05:00
Rodrigo Locatti
5ee669466f
Merge pull request #5927 from ameerj/astc-compute
...
video_core: Accelerate ASTC texture decoding using compute shaders
2021-03-30 19:31:52 -03:00
bunnei
eeea426c74
Merge pull request #6116 from german77/userArgument
...
yuzu/main: Add user command line argument
2021-03-30 15:01:33 -07:00
Morph
ca30190fad
ISelfController: Stub SetAlbumImageTakenNotificationEnabled
...
This service call sets an internal flag whether a notification is shown when an image is captured.
Currently we do not support capturing images via the capture button, so this can be stubbed for now.
2021-03-30 13:45:00 -04:00
ameerj
54c1e0897d
configuration: Add auto stub toggle that resets on boot
...
Auto-stub is an experimental debugging feature that may cause unforseen bugs. This adds a toggle to only allow auto-stubbing unimplemented functions when explicitly enabled when yuzu is launched.
2021-03-30 13:40:31 -04:00
ameerj
e6e61424d4
service: Auto stub fallback
...
For simple services we can implement an automatic stub fallback to help with compatibility until a proper implementation is done.
Co-Authored-By: Chloe <25727384+ognik5377@users.noreply.github.com>
2021-03-30 13:40:31 -04:00
bunnei
b3f68098d5
Merge pull request #6124 from jbeich/vulkan+opengl
...
vulkan_common: enable OpenGL interop on other Unices
2021-03-30 09:37:00 -07:00
bunnei
f234531f92
Merge pull request #6109 from german77/gestureID
...
HID: Initialize correctly the gesture finger_id and filter invalid inputs
2021-03-29 18:00:47 -07:00
Jan Beich
9b50b23a50
vulkan_common: enable OpenGL interop on other Unices
2021-03-30 00:25:25 +00:00
bunnei
fb7dcbf7af
Merge pull request #6102 from ogniK5377/fd-pass
...
nvdrv: Pass device fd and handle device create methods for device opening and closing
2021-03-29 12:53:55 -07:00
bunnei
f8561c7a65
Merge pull request #6115 from bunnei/fix-kernel-init
...
hle: kernel: Initialize preemption task after schedulers.
2021-03-28 12:13:39 -07:00
german77
9cebde760f
yuzu/main: Add user command line argument
2021-03-27 12:34:48 -05:00
bunnei
cb7f2e5616
hle: kernel: Initialize preemption task after schedulers.
...
- Fixes a startup crash that occurs if CoreTiming tries to preempt before kernel initialization completes.
2021-03-27 10:04:13 -07:00
Morph
3b98fab850
service: friend: Change logging class from ACC to Friend
2021-03-27 11:11:07 -04:00
Narr the Reg
7c26a9aefe
HID: Initialize correctly the gesture finger_id and filter invalid results
2021-03-26 11:13:18 -06:00
ameerj
2f83d9a61b
astc_decoder: Refactor for style and more efficient memory use
2021-03-25 16:53:51 -04:00
Chloe Marcec
99fdfa1fcd
nvdrv: Pass device fd and handle device create methods for device opening and closing
...
We pass the fd to the ioctl as well as alert the device when it's opened or closed to allow for fd unique actions to take place
2021-03-25 12:56:42 +11:00
bunnei
65774084fd
Merge pull request #6101 from ogniK5377/alloc-as-ex
...
nvdrv: Change InitializeEx to AllocAsEx
2021-03-24 17:37:01 -07:00
Jan Beich
8c016b02e7
gl_device: unblock async shaders on other Unix systems
...
Mesa is the primary OpenGL provider on all FreeDesktop systems.
For example, iris is used on Intel GPU + FreeBSD by default.
2021-03-24 19:59:20 +00:00
MerryMage
52dae41d7f
arm_dynarmic: Always have a 'valid' jit instance
2021-03-24 18:47:17 +00:00
bunnei
716285fab8
Merge pull request #6100 from bunnei/arm-fix
...
core: arm_dynarmic: Ensure JIT state is saved/restored on page table changes.
2021-03-23 17:08:37 -07:00
bunnei
dde074eaab
Merge pull request #6092 from ivan-boikov/cancel-dir-select
...
Fix cancelation of getExistingDirectory dialog
2021-03-22 17:55:18 -07:00
Chloe Marcec
875183e7c5
nvdrv: Change InitializeEx to AllocAsEx
...
Wee also report the correct "big page size" now in GetVARegions & fix up the struct for IoctlAllocAsEx
2021-03-22 19:59:30 +11:00
LC
a50133fc5e
Merge pull request #6095 from lat9nq/async-shader-block
...
gl_device: Block async shaders on AMD and Intel
2021-03-21 23:29:49 -04:00
bunnei
a35717b245
core: arm_dynarmic: Ensure JIT state is saved/restored on page table changes.
...
- We re-create the JIT here without preserving any state.
2021-03-21 15:25:25 -07:00
lat9nq
538f097f97
gl_device: Block async shaders on AMD and Intel
...
Currently, the Windows versions of the Intel OpenGL driver and the AMD
proprietary OpenGL driver do not properly support (or in fact degrade)
when asynchronous shader compilation is enabled. This blocks
specifically those drivers from using this feature. This affects
AMDGPU-PRO on Linux, and AMD's and Intel's OpenGL drivers on Windows.
2021-03-21 01:25:45 -04:00
ivan-boikov
afa4bcbb3b
Fix cancelation of choose directory dialog
2021-03-20 15:52:22 +01:00
bunnei
2e85ee250d
Merge pull request #6052 from Morph1984/vi-getindirectlayerimagemap
...
IApplicationDisplayService: Stub GetIndirectLayerImageMap
2021-03-19 22:59:25 -07:00
bunnei
cb48ed2e1a
Merge pull request #6056 from zkitX/spl-updates
...
service: Refactor spl
2021-03-18 15:49:41 -07:00
bunnei
4aa8189328
Merge pull request #6055 from MerryMage/exceed-the-limit
...
[testing] fiber: Double default stack size
2021-03-17 20:46:45 -07:00
Morph
ec514a4d1b
IApplicationDisplayService: Stub GetIndirectLayerImageMap
...
Used by games invoking the inline software keyboard such as GNOSIA
2021-03-17 03:25:12 -04:00
bunnei
e1f7938a3b
Merge pull request #6070 from Morph1984/sysver-11.0.1
...
system_version: Update to 11.0.1
2021-03-16 18:13:12 -07:00
Morph
8441094ba3
bsd: Avoid writing empty buffers
...
Silences log spam on empty buffer writes
2021-03-16 12:50:44 -04:00
bunnei
0687a8370d
Merge pull request #6069 from Morph1984/ngWord
...
system_archive: Update NgWord archive version
2021-03-15 15:44:04 -07:00
Morph
824e53149d
system_version: Update to 11.0.1
2021-03-14 08:47:36 -04:00
Morph
9761618a8d
system_archive: Update NgWord archive version
2021-03-14 08:33:48 -04:00
bunnei
d3a4a192fe
Merge pull request #6054 from Morph1984/time-GetClockSnapshot
...
time: Assign the current time point to the ClockSnapshot
2021-03-13 23:15:54 -08:00
Rodrigo Locatti
2f30c10584
astc_decoder: Reimplement Layers
...
Reimplements the approach to decoding layers in the compute shader. Fixes multilayer astc decoding when using Vulkan.
2021-03-13 12:16:03 -05:00
ameerj
c7553abe89
astc_decoder: Fix out of bounds memory access
...
resolves a crash with some anamolous textures found in Astral Chain.
2021-03-13 12:16:03 -05:00
ameerj
20eb368e14
renderer_vulkan: Accelerate ASTC decoding
...
Co-Authored-By: Rodrigo Locatti <reinuseslisp@airmail.cc>
2021-03-13 12:16:03 -05:00
ameerj
f6566338eb
host_shaders: Modify shader cmake integration to allow for larger shaders
...
using a raw string to encapsulate the entire shader code limits us to shaders of size less than 2KB. This change overcomes this limitation.
2021-03-13 12:16:03 -05:00
ameerj
2985e5e94c
renderer_opengl: Accelerate ASTC texture decoding with a compute shader
...
ASTC texture decoding is currently handled by a CPU decoder for GPU's without native ASTC decoding support (most desktop GPUs). This is the cause for noticeable performance degradation in titles which use the format extensively.
This commit adds support to accelerate ASTC decoding using a compute shader on OpenGL for GPUs without native support.
2021-03-13 12:16:03 -05:00
bunnei
3b85ac2ac4
Merge pull request #6053 from Morph1984/time-CalculateSpanBetween
...
time: Fix CalculateSpanBetween implementation
2021-03-12 23:31:09 -08:00
bunnei
4735d18bb9
Merge pull request #6028 from bunnei/raster-cache
...
video_core: rasterizer_accelerated: Use a flat array instead of interval_map for cached pages.
2021-03-12 21:57:27 -08:00
bunnei
a9d24b0df3
video_core: rasterizer_accelerated: Fix un/signed mismatch.
2021-03-12 21:52:49 -08:00
bunnei
5dae45b958
Merge pull request #5327 from AniLeo/master
...
qt: Set DISPLAY env var when not present
2021-03-12 12:10:28 -08:00
bunnei
827dcad26e
Merge pull request #6040 from german77/toggleKeyboard
...
Enable toggle buttons for keyboard and mouse
2021-03-11 11:00:44 -08:00
zkitx
4439801c0f
Fix casing on DeallocateAesKeySlot
2021-03-11 02:46:22 -05:00
zkitx
ad653550eb
Update SPL to fit N's service refactor (4.0.0+) which split into new services.
2021-03-11 02:36:48 -05:00
MerryMage
59173ff7a7
fiber: Double default stack size
...
Stack overflow occurs with some guest applications
2021-03-10 20:37:56 +00:00
Morph
87cfe5b1da
time: Fix CalculateSpanBetween implementation
...
CalculateSpanBetween passes in the ClockSnapshots through 2 input buffers and not as raw arguments. Fix this by reading the 2 input buffers instead of popping raw arguments.
Partially fixes Super Smash Bros. Ultimate's Spirit Board
2021-03-10 11:42:59 -05:00
Morph
2490ffbbce
time: Assign the current time point to the ClockSnapshot
...
Fixes the timer in Super Smash Bros Ultimate's Spirit Board.
2021-03-10 11:40:51 -05:00
Rodrigo Locatti
daf5c5060b
Merge pull request #5891 from ameerj/bgra-ogl
...
renderer_opengl: Use compute shaders to swizzle BGR textures on copy
2021-03-09 02:47:51 -03:00
bunnei
d1a7b2eca7
Merge pull request #6021 from ReinUsesLisp/skip-cache-heuristic
...
buffer_cache: Heuristically decide to skip cache on uniform buffers
2021-03-08 17:48:55 -08:00
bunnei
9c4c9f1e7d
Merge pull request #5990 from german77/mousePanningV2
...
InputCommon: Mouse fixes
2021-03-08 14:50:58 -08:00
bunnei
8f7eb194af
common: Fiber: use a reference for YieldTo.
...
- Fixes another small leak.
2021-03-07 13:46:53 -08:00
Ani
cd7abba1a9
qt: Set DISPLAY env var when not present
...
Fixes web browser opening (Help > Open Mods Page, Help > Open Quickstart
Guide)
2021-03-07 15:56:22 +00:00
german77
41e94b7b99
Enable mouse toggle buttons
2021-03-06 13:27:02 -06:00
german
4bcc5bacff
Add toggle button option for normal buttons
2021-03-06 07:36:41 -06:00
bunnei
68ffac250a
common: fiber: Use weak_ptr when yielding.
...
- Avoids a memory leak, as taking a strong reference of the fiber here causes a circular reference.
- Supersedes #6006 with a more narrow fix.
2021-03-05 22:10:03 -08:00
german
1f228c51ca
Enable button toggle for keyboard in the modifier button
2021-03-05 19:21:04 -06:00
bunnei
4cf5b860bd
Merge pull request #6036 from bunnei/thread-leak
...
hle: kernel: KThread: Rework dummy threads & fix memory leak.
2021-03-05 17:15:35 -08:00
bunnei
47af34003b
hle: kernel: KThread: Rework dummy threads & fix memory leak.
...
- Dummy threads are created on thread local storage for all host threads.
- Fixes a leak by removing creation of fibers, which are not applicable here.
2021-03-05 17:10:57 -08:00
LC
97415ad07a
Merge pull request #6029 from Morph1984/compile-utf8
...
CMakeLists: Add /utf-8 compile option for MSVC
2021-03-05 20:09:37 -05:00
bunnei
a5ab85ac37
Revert "core: Switch to unique_ptr for usage of Common::Fiber."
2021-03-05 17:08:17 -08:00
bunnei
9d010be483
Merge pull request #6034 from Morph1984/mbedtls
...
externals: Update mbedtls to 2.16.9
2021-03-05 15:48:28 -08:00
bunnei
34a3ee1631
Merge pull request #6006 from bunnei/fiber-unique-ptr
...
core: Switch to unique_ptr for usage of Common::Fiber.
2021-03-04 23:59:06 -08:00
Morph
96c9e67b1b
aes_util: Remove malformed mbedtls_cipher_finish function call
2021-03-05 02:05:05 -05:00
Morph
e7038344aa
CMakeLists: Add /utf-8 compile option for MSVC
...
Ensures that the source and execution character sets are in UTF-8
2021-03-05 01:46:56 -05:00
ameerj
5213f70230
texture_cache: Blacklist BGRA8 copies and views on OpenGL
...
In order to force the BGRA8 conversion on Nvidia using OpenGL, we need to forbid texture copies and views with other formats.
This commit also adds a boolean relating to this, as this needs to be done only for the OpenGL api, Vulkan must remain unchanged.
2021-03-04 14:14:49 -05:00
ameerj
0639244d85
renderer_opengl: Swizzle BGR textures on copy
...
OpenGL does not natively support BGR internal formats, which causes many BGR textures to render incorrectly, with Red and Blue channels swapped.
This commit aims to address this by swizzling the blue and red channels on texture copies when a BGR format is encountered.
2021-03-04 14:14:19 -05:00
bunnei
b8b5891585
Merge pull request #5989 from ReinUsesLisp/cmdpool
...
vk_command_pool: Reduce the command pool size from 4096 to 4
2021-03-04 11:07:31 -08:00
bunnei
394475c4e3
Merge pull request #6004 from german77/udprandom
...
InputCommon: Use an unique client id for each udp socket instance
2021-03-03 15:45:32 -08:00
bunnei
50ee9c46ab
video_core: rasterizer_accelerated: Fix delta check ordering.
2021-03-02 17:48:02 -08:00
bunnei
6ab839462c
video_core: rasterizer_accelerated: Improve error handling & fix implicit conversion.
2021-03-02 17:44:02 -08:00
bunnei
f8bfec3109
Merge pull request #5815 from comex/net-error-reform
...
Network error handling reform
2021-03-02 17:08:47 -08:00
bunnei
94da1e8a7e
video_core: rasterizer_accelerated: Use a flat array instead of interval_map for cached pages.
...
- Uses a fixed 64MB for the cache instead of an ever growing map.
- Slightly faster by using atomics instead of a single mutex for access.
- Thanks for Rodrigo for the idea.
2021-03-02 16:57:53 -08:00
ReinUsesLisp
5ad62e7bfc
buffer_cache: Heuristically decide to skip cache on uniform buffers
...
Some games benefit from skipping caches (Pokémon Sword), and others
don't (Animal Crossing: New Horizons). Add an heuristic to decide this
at runtime.
The cache hit ratio has to be ~98% or better to not skip the cache.
There are 16 frames of buffer.
2021-03-02 02:44:19 -03:00
bunnei
925671071c
core: Shutdown: Move kernel cleanup to later in shutdown.
...
- Fixes a shutdown crash due to a race condition with GPU still accessing memory.
2021-03-01 21:42:06 -08:00
Kelebek1
c7a7e47615
Fix default bcat_backend init
2021-03-02 03:20:16 +00:00
german
9b3af0027b
inputCommon: Use an unique client id for each socket instance
2021-03-01 09:19:33 -06:00
ameerj
52e9d7fa49
gpu_thread: Remove Async NVDEC placeholders
...
This commit removes early placeholders for an implementation of async nvdec. With recent changes to the source code, the placeholders are no longer accurate, and can cause a nullptr dereference due to the nature of the cdma_pusher lifetime.
2021-02-28 22:03:00 -05:00
comex
2910aa77b2
[network] Error handling reform
...
`network.cpp` has several error paths which either:
- report "Unhandled host socket error=n" and return `SUCCESS`, or
- switch on a few possible errors, log them, and translate them to
Errno; the same switch statement is copied and pasted in multiple
places in the code
Convert these paths to use a helper function `GetAndLogLastError`, which
is roughly the equivalent of one of the switch statements, but:
- handling more cases (both ones that were already in `Errno`, and a few
more I added), and
- using OS functions to convert the error to a string when logging, so
it'll describe the error even if it's not one of the ones in the
switch statement.
- To handle this, refactor the logic in `GetLastErrorMsg` to expose a
new function `NativeErrorToString` which takes the error number
explicitly as an argument. And improve the Windows version a bit.
Also, add a test which exercises two random error paths.
2021-02-28 17:25:31 -05:00
bunnei
9e9341f4b4
Merge pull request #6007 from bunnei/ldn-error
...
core: hle: ldn: Error out on call to Initialization.
2021-02-28 13:34:20 -08:00
Morph
ee9ebeeb80
Merge pull request #5276 from german77/gestures
...
HID: Implement gestures
2021-02-27 22:18:41 -05:00
german
e895ab7d6f
Implements touch, pan, pinch and rotation gestures
2021-02-27 19:54:42 -06:00
german77
4738e14cb0
inputCommon: Mouse fixes
2021-02-27 17:53:10 -06:00
bunnei
55f556c53e
Merge pull request #5984 from jbeich/gcc-freebsd
...
common,video-core: unbreak GCC 11 build on FreeBSD 13
2021-02-27 14:15:00 -07:00
bunnei
ab65cb499d
core: hle: ldn: Error out on call to Initialization.
...
- Since we do not emulate LDN, returning an error here makes more sense.
2021-02-27 11:59:29 -08:00
bunnei
51fb0a6f96
core: Switch to unique_ptr for usage of Common::Fiber.
...
- With using unique_ptr instead of shared_ptr, we have more explicit ownership of the context.
- Fixes a memory leak due to circular reference of the shared pointer.
2021-02-27 11:56:04 -08:00
bunnei
09f7c355c6
Merge pull request #5953 from bunnei/memory-refactor-1
...
Kernel Rework: Memory updates and refactoring (Part 1)
2021-02-27 12:48:35 -07:00