german
d9d2a0aac7
Stub set and get NpadCommunicationMode
5 years ago
Lioncash
346271b80b
service: Eliminate usages of the global system instance
Completely removes all usages of the global system instance within the
services code by passing in the using system instance to the services.
5 years ago
comex
200a0bf755
codec: Fix `pragma GCC diagnostic pop` missing corresponding push
5 years ago
ReinUsesLisp
fe1efa971f
vk_shader_decompiler: Implement force early fragment tests
Force early fragment tests when the 3D method is enabled.
The established pipeline cache takes care of recompiling if needed.
This is implemented only on Vulkan to avoid invalidating the shader
cache on OpenGL.
5 years ago
Lioncash
064f17c5b1
core: Reduce string copies in GetGameFileFromPath()
Eliminates some minor string churn where applicable. Also eliminates an
unnecessary vector copy.
5 years ago
ameerj
0a89ea1ca7
Limit queue size to 10 frames
Workaround for ZLA, which seems to decode and queue twice as many frames as it displays.
5 years ago
german
56a8fee35a
Implement full mouse support
5 years ago
german
6708e0ec0e
Add multiple udp server support
5 years ago
ameerj
aa2d90b35c
Address PR feedback
remove some redundant moves, make deleter match naming guidelines.
Co-Authored-By: LC <712067+lioncash@users.noreply.github.com>
5 years ago
ReinUsesLisp
2600f1353d
common: Add Common::DivCeil and Common::DivCeilLog2
Add an equivalent to 'Common::AlignUp(n, d) / d' and a log2 alternative.
5 years ago
Jan Beich
805312e278
input_common: ignore some Clang warnings after c8aec32f12
error: unknown warning option '-Werror=unused-but-set-parameter'; did you mean '-Werror=unused-parameter'? [-Werror,-Wunknown-warning-option]
error: unknown warning option '-Werror=unused-but-set-variable'; did you mean '-Werror=unused-const-variable'? [-Werror,-Wunknown-warning-option]
5 years ago
ameerj
5beb990349
Queue decoded frames, cleanup decoders
5 years ago
ameerj
942dff1fd8
cleanup unneeded comments and newlines
5 years ago
Morph
9b00708d96
hid: Check if applet_resource exists in InitializeVibrationDevice
5 years ago
ameerj
a981e7d69c
Refactor MaxwellToSpirvComparison. Use Common::BitCast
Co-Authored-By: Rodrigo Locatti <reinuseslisp@airmail.cc>
5 years ago
ameerj
7d48b8be54
Address PR feedback from Rein
5 years ago
ameerj
47f8e43c22
vulkan_renderer: Alpha Test Culling Implementation
Used by various textures in many titles, e.g. SSBU menu.
5 years ago
bunnei
28843b094f
core: cpu_manager: Fix shutdown crash when closing before emulation starts.
5 years ago
bunnei
173d78f71e
frontend: yuzu (qt): Register a callback for ExecuteProgram.
5 years ago
bunnei
faffc3144c
service: am: Implement ExecuteProgram and required stubs.
- This is used by Super Mario 3D All-Stars.
5 years ago
bunnei
9f8d7748d9
core: loader: Implement support for loading indexed programs.
5 years ago
bunnei
5f53d285aa
hle: services: Fix a crash with improper NVFlinger lifetime management. ( #4977 )
* hle: services: Fix a crash with improper NVFlinger lifetime management.
- This crash would happen when attempting to shutdown yuzu early on in boot.
5 years ago
comex
00f2c7fbb9
nvdrv, video_core: Don't index out of bounds when given invalid syncpoint ID
- Use .at() instead of raw indexing when dealing with untrusted indices.
- For the special case of WaitFence with syncpoint id UINT32_MAX,
instead of crashing, log an error and ignore. This is what I get when
running Super Mario Maker 2.
5 years ago
bunnei
f2bb584578
input_common: Fix typo in gc_poller.cpp with [[maybe_unused]].
5 years ago
Chloe Marcec
f8d84ecae2
nvservices: Reintroducee IoctlCtrl
Fixes regression caused by #4907 which caused games like Breath of the Wild 1.0.0 not to boot.
5 years ago
bunnei
2382020d8d
input_common: Add more missing [[maybe_unused]] from #4927 .
5 years ago
bunnei
2ac1148798
Fix warnings in core/frontend/input.h with [[maybe_unused]]
Fixes build break due to #4927
5 years ago
comex
bb729eefce
Overhaul EmuWindow::PollEvents to fix yuzu-cmd calling SDL_PollEvents off main thread
EmuWindow::PollEvents was called from the GPU thread (or the CPU thread
in sync-GPU mode) when swapping buffers. It had three implementations:
- In GRenderWindow, it didn't actually poll events, just set a flag and
emit a signal to indicate that a frame was displayed.
- In EmuWindow_SDL2_Hide, it did nothing.
- In EmuWindow_SDL2, it did call SDL_PollEvents, but this is wrong
because SDL_PollEvents is supposed to be called on the thread that set
up video - in this case, the main thread, which was sleeping in a
busyloop (regardless of whether sync-GPU was enabled). On macOS this
causes a crash.
To fix this:
- Rename EmuWindow::PollEvents to OnFrameDisplayed, and give it a
default implementation that does nothing.
- In EmuWindow_SDL2, do not override OnFrameDisplayed, but instead have
the main thread call SDL_WaitEvent in a loop.
5 years ago
Lioncash
b038dcf23c
svc: Remove unnecessary [[maybe_unused]] tag
The parameter is used in this function, so this suppression isn't
necessary.
5 years ago
Lioncash
c8aec32f12
input_common: Treat warnings as errors
Migrates over warnings as errors for input common to match how the
common library treats warnings as errors.
5 years ago
Morph
75aa6e9beb
applets/controller: Use a pair of emulated controller index to controller type
5 years ago
Morph
a8ba5c5929
configure_input_player: Use the npad style set to show the available controllers
This will reduce the likelihood of an invalid controller type to be set within a game
5 years ago
ReinUsesLisp
6263722e4d
gl_rasterizer: Remove warning of untested alpha test
Alpha test has been proven to only affect the first render target.
5 years ago
bunnei
2f0eb8d38c
olsc: Move member initialization to after member functions.
5 years ago
Lioncash
953aff6f0e
async_shaders: emplace threads into the worker thread vector
Same behavior, but constructs the threads in place instead of moving
them.
5 years ago
Lioncash
a15dc601be
async_shaders: Simplify implementation of GetCompletedWork()
This is equivalent to moving all the contents and then clearing the
vector. This avoids a redundant allocation.
5 years ago
Lioncash
088767da00
async_shaders: Simplify moving data into the pending queue
5 years ago
Lioncash
8ac9c08758
async_shaders: std::move data within QueueVulkanShader()
Same behavior, but avoids redundant copies.
While we're at it, we can simplify the pushing of the parameters into
the pending queue.
5 years ago
Lioncash
ae52755d5c
gl_rasterizer: Make floating-point literal a float
Gets rid of an unnecessary expansion from float to double.
5 years ago
Lioncash
b482ef0f06
shader_bytecode: Make use of [[nodiscard]] where applicable
Ensures that all queried values are made use of.
5 years ago
Lioncash
b0172c1888
shader_bytecode: Eliminate variable shadowing
5 years ago
ReinUsesLisp
778c06d35b
common/bit_cast: Add function matching std::bit_cast without constexpr
Add a std::bit_cast-like function archiving the same runtime results as
the standard function, without compile time support.
This allows us to use bit_cast while we wait for compiler support, it
can be trivially replaced in the future.
5 years ago
bunnei
655892e84b
hle: service: Stub OLSC Initialize and SetSaveDataBackupSettingEnabled functions.
- Used by Animal Cross: New Horizons v1.6.0 update, minimal stub gets this update working.
5 years ago
german77
3edd74463f
Modify rumble amplification
5 years ago
Lioncash
638f982efc
virtual_buffer: Do nothing on resize() calls with same sizes
Prevents us from churning memory by freeing and reallocating a memory
block that would have already been adequate as is.
5 years ago
Lioncash
b4b63c878f
patch_manager: Remove usages of the global system instance
With this, only 19 usages of the global system instance remain within
the core library.
We're almost there.
5 years ago
Lioncash
82ef99b107
core: Remove unused private Init function for the System class
This isn't used, so it can be removed.
5 years ago
Lioncash
637aa4ddef
core: Make use of [[nodiscard]] with the System class
Given this is a central class, we should flag cases where the return
value of some functions not being used is likely a bug.
5 years ago
Lioncash
8e015472a3
configure_input_player: Use static qualifier for IsProfileNameValid()
This is a static member function, so we don't need use an existing
instance to call this function.
5 years ago
Lioncash
d02005bbe9
virtual_buffer: Add compile-time type-safety guarantees with VirtualBuffer
VirtualBuffer makes use of VirtualAlloc (on Windows) and mmap() (on
other platforms). Neither of these ensure that non-trivial objects are
properly constructed in the allocated memory.
To prevent potential undefined behavior occurring due to that, we can
add a static assert to loudly complain about cases where that is done.
5 years ago