Lioncash
ade44ac2ea
common_types: Remove NonCopyable struct
Now that we're moved over to the YUZU_ defines, we can get rid of this
struct.
4 years ago
Lioncash
f785f73e92
general: Replace NonCopyable struct with equivalents
4 years ago
Lioncash
76d83ffbec
general: Move deleted copy/move constructor/assignment operators to public interface
This allows for better compiler errors, where the compiler will state a
copy or move couldn't occur due to the relevant function being deleted.
Previously a compiler would warn about the relevant function not being
accessible (which, while true, isn't as informative as it could be).
4 years ago
Lioncash
40d31b8b8a
configure_filesystem: Add missing changeEvent() override
This allows the dialog to be retranslated during runtime if the language
is changed.
4 years ago
Lioncash
b9f06bd599
configure_filesystem: Normalize member function casing
All other dialog types we have use CamelCase naming.
4 years ago
Narr the Reg
330b31ae2e
yuzu: Disable auto repeat on hotkeys again
4 years ago
Lioncash
5c4ed30c21
configure_motion_touch: Use functor versions of invokeMethod
Same behavior, but ensures that the functions we're calling exist, since
they can be checked at compile-time.
4 years ago
Lioncash
e2a86e2c8a
configure_input_player: Eliminate variable shadowing
4 years ago
Lioncash
2dba59d1ff
configure_input_player: std::move input setters in HandleClick
4 years ago
Lioncash
9ba6bab920
configure_input_player: Avoid unnecessary ParamPackage copies
Avoids churning allocations.
4 years ago
Lioncash
cd4aa50207
yuzu/game_list: Use non-deprecated version of QString's split() function
The previous overload of split() was deprecated in 5.14.
4 years ago
Lioncash
8f32bab4c9
common/file: Remove [[nodiscard]] from Open()
Since this has a void return value, there's nothing that can actually be
used.
4 years ago
Lioncash
360a97ab54
video_core/shader_cache: Remove unused algorithm include
4 years ago
Lioncash
540ed72e99
video_core/shader_cache: Take std::span in RemoveShadersFromStorage()
Same behavior, but without the need to move into the function to avoid
an allocation.
4 years ago
Narr the Reg
1ed22b4613
svc: Add 32 bit SynchronizePreemptionState
Used by Espgaluda II
4 years ago
Fernando Sahmkow
8a6e6465a7
Rasterizer: Refactor inlineToMemory.
4 years ago
Morph
6267110b69
common: wall_clock: Check precision against the emulated CPU and CNTFRQ
In addition to requiring nanosecond precision, using the native clock requires that the hardware TSC has a precision greater than the emulated CPU and its clock counter.
4 years ago
Morph
4e766280c4
common: wall_clock: Utilize constants for ms, us, and ns ratios
4 years ago
german77
3d2d77eb3f
input_common: Add home and hard touch press buttons to UDP controllers
4 years ago
ameerj
e394e1ecc4
emit_glsl_atomic: Implement 32x2 fallback atomic ops
4 years ago
ameerj
90a0506d56
lower_int64_to_int32: Add 64-bit atomic fallbacks
4 years ago
ameerj
ad58d7eae7
shaders: Add U64->U32x2 Atomic fallback functions
4 years ago
Fernando Sahmkow
d0a5a48948
GPU: Improve syncing.
4 years ago
Fernando Sahmkow
4258d515e6
Rasterizer: Implement Inline2Memory Acceleration.
4 years ago
Fernando Sahmkow
f54280dafd
Inline2Memory: Flush before writting buffer.
4 years ago
ameerj
4790ba7839
spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomics
Some drivers do not support 64-bit atomics, and fallback to atomically modifying U32x2 vectors. This change ensures that U32x2 storage vectors are defined in the spir-v shader when 64-bit atomics are used.
Fixes a hang on some devices, notably Intel GPUs, when booting Pokemon Legends Arceus
4 years ago
ameerj
beaf7654bb
emit_spirv: Add Xfb execution mode when transform feedback is used
Fixes Transform Feedback on Vulkan AMD drivers.
4 years ago
german77
fea05a17ea
hotkeys: Don't translate hotkey buttons
4 years ago
german77
e4c63d432d
wall_clock: use standard wall clock if rtsc frequency is too low
4 years ago
ameerj
f300a1d54b
buffer_cache: Reduce stream buffer allocations when expanding from the left
The existing stream buffer optimization accounts for size increases at the end of the allocated buffer.
This adds the same optimization, increasing the size from the beginning of the buffer as well to reduce buffer allocations when expanding the same buffer from the left.
4 years ago
bunnei
3a1a3dd0db
hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock that has migrated.
- Previously, it was possible for a thread migration to occur from core A to core B.
- Next, core B waits on a guest lock that must be released by a thread queued for core A.
- Meanwhile, core A is still waiting on the core B's current thread lock - resulting in a deadlock.
- Fix this by try-locking the thread lock.
- Fixes softlocks in FF8 and Pokemon Legends Arceus.
4 years ago
ameerj
74e6e3623f
video_minimum_maximum: Implement src operand selectors
Used by Pokemon Legends: Arceus
4 years ago
Narr the Reg
fd1cef5616
input_common: Add DS5 to HD rumble list
4 years ago
Lioncash
f6a049337e
common/xbyak_api: Make BuildRegSet() constexpr
This allows us to eliminate any static constructors that would have been
emitted due to the function not being constexpr.
4 years ago
Lioncash
a8a4f37628
video_core/macro: Add missing <cstring> header
Necessary since memcpy is used.
4 years ago
Lioncash
81d1a1133d
video_core/macro_interpreter: Move impl class to the cpp file
Keeps the implementation hidden from the intended API and lessens the
header dependencies on the interpreter's header.
4 years ago
Lioncash
cfd9f7d25b
video_core/macro_hle: Return unique_ptr directly from GetHLEProgram()
Same behavior, but less code and header dependencies.
4 years ago
Lioncash
a05d9405b9
video_core/macro: Remove unused parameter from Execute()
Simplifies the function interface.
4 years ago
Lioncash
74f80299b0
video_core/macro_jit_x64: Remove unused impl class member
Reduces the size of the impl class a tiny bit.
4 years ago
Lioncash
f11eefed56
video_core/macro_jit_x64: Decouple PersistentCallerSavedRegs() from impl
This doesn't depend on class state and can just be a regular function.
4 years ago
Lioncash
6b873b72ae
video_core/macro_jit_x64: Move impl class into cpp file
Keeps the implementation internalized and also reduces API-facing header
dependencies.
Notably, this fully internalizes all of the xbyak externals.
4 years ago
Lioncash
a3c81745b1
video_core/macro_hle: Move impl class into cpp file
Given it's intended to be an internal implementation class, we can move
it into the cpp file to ensure that.
This also lets us move some header dependencies into the cpp file as
well.
4 years ago
Lioncash
d8486a9968
gpu: Tidy up forward declarations
Over time a few forward declarations became unnecessary, so we can
remove these to tidy up the header a little bit.
4 years ago
Lioncash
9b38c8ef08
gpu: Remove obsoleted CDMAPusher() accessors
These were obsoleted in 2c47f8aa18 but
were accidentally overlooked.
4 years ago
Lioncash
e7af84670d
vk_fsr: Replace comma operator with semicolon
Generally, we should be ending statements with a semicolon not a comma
Resolves a clang diagnostic.
4 years ago
Lioncash
b46ec4efea
shader_recompiler: Remove unnecessary [[nodiscard]]
Since ConvertLegacyToGeneric has a void return value, there's nothing
that is actually returned by the function.
4 years ago
Lioncash
651358d0b6
input_common/input_engine: Ensure PadIdentifier UUIDs have a valid initial state
The default constructor of a UUID instance doesn't initialize the
underlying array.
4 years ago
Lioncash
187c9d7e33
input_common/input_mapping: Simplify UUID validity checks
Makes the checks a little more intuitive to read and doesn't construct
an extra UUID instance
4 years ago
Lioncash
0849be094e
input_common/input_mapping: Add missing includes
Ensures that the class always sees the types it needs.
4 years ago
Lioncash
8bb39750a1
input_common/input_mapping: Remove const from return value
Top-level const on a return by value can inhibit move semantics, and is
unnecessary.
4 years ago