ReinUsesLisp
210cc0204d
decode/other: Implement S2R.LaneId
This maps to host's thread id.
- Fixes graphical issues on Paper Mario.
6 years ago
ReinUsesLisp
88e57b13e0
gl_arb_decompiler: Execute BAR even when inside control flow
Unlike GLSL, GLASM allows us to call BAR inside control flow.
- Fixes graphical artifacts in Paper Mario.
6 years ago
ReinUsesLisp
a5a72cbd20
renderer_{opengl,vulkan}: Clamp shared memory to host's limit
This stops shaders from failing to build when the exceed host's shared
memory size limit. An error is logged.
6 years ago
Lioncash
8bef49cde5
kernel/thread: Remove unimplemented function prototype
This isn't used, so it can be removed.
6 years ago
Lioncash
2bab07c367
kernel: Remove unused variables
Resolves some compiler warnings in the Linux build.
6 years ago
Lioncash
07d080ecc8
kernel: Add missing include
6 years ago
Lioncash
f0125b2be8
cpu_manager: Mark function getters as static
All these do are return std::function instances of static functions, so
these can be used without an instance of the CPU manager.
6 years ago
Lioncash
51546ce57e
cpu_manager: Remove unused preemption_count variable
Shrinks the data structure by 8 bytes.
6 years ago
Lioncash
201514cb50
cpu_manager: Add missing includes
Previously this header was relying on indirect inclusions that are no
longer satisfied.
6 years ago
Ameer
94f5f29573
Refactor adapter code
6 years ago
David Marcec
0319cc1c37
hid: Only update keyboard & debug pad inputs if enabled
Previously we would ignore this setting and would update the states regardless of the user setting
6 years ago
Morph
f66e3181dc
Check for empty section0 and CNMT prior to install
6 years ago
Morph
5892fc1555
Add comment to clarify the nullptr check
6 years ago
Morph
2079bb4090
filesystem: Create subdirectories prior to creating a file
If subdirectories exist in the given path parameter and don't exist in the real filesystem create them prior to creating the files within.
This fixes the softlocks upon save creation in The Legend of Zelda: Breath of the Wild
6 years ago
Lioncash
0435b7d361
core_timing: Remove unused data member
Shrinks the size of the CoreTiming class by 8 bytes.
6 years ago
Lioncash
bef1844a51
core_timing: Make TimedCallback take std::chrono::nanoseconds
Enforces our desired time units directly with a concrete type.
6 years ago
Lioncash
8b50c660df
core_timing: Make use of std::chrono with ScheduleEvent
6 years ago
Lioncash
af5a56ddc4
settings: Resolve a sign conversion warning within GetTimeZoneString()
A sign conversion warning was occurring due to an int < size_t
comparison.
6 years ago
Lioncash
73bb87c06b
kernel/process: Move name and system context to the bottom of the member list
These aren't directly important or commonly used within the process, so
we can move these to the bottom to allow everything else to be more
likely to be within a cache line.
6 years ago
Lioncash
52e83f0d5c
kernel/handle_table: Remove usages of the global system instance
Removes even more usages of the global system instance, trimming away
more dependencies on global variables and making them explicit in the
interface.
6 years ago
Lioncash
5dbf91d739
settings: Make use of std::string_view over std::string for logging
In all usages of LogSetting(), string literals are provided.
std::string_view is better suited here, as we won't churn a bunch of
string allocations every time the settings are logged out.
While we're at it, we can fold LogSetting() into LogSettings(), given
it's only ever used there.
6 years ago
Lioncash
4ad69ca96e
kernel/thread: Remove global GetCurrentThread()
This is only used in one place, so we can fold it into the calling code,
eliminating a place for the global system instance to be used.
6 years ago
Morph
0ca7b8269a
clang format
6 years ago
Morph
1bbc61f5f1
Use proper install result when overwriting files
6 years ago
Morph
8794e623d9
Remove global system instance and address feedback
6 years ago
Morph
a82fdea1ac
registered_cache: Remove previous update/dlc if it exists on install
- This checks for and removes old updates or dlc based on title id. If a content meta nca exists within the registered cache, it will attempt to remove all the ncas associated with the content meta before installing a new update/dlc
6 years ago
VolcaEM
e90802e762
clang-format
6 years ago
VolcaEM
b608acd688
dmnt_cheat_vm: Implement opcode 0xC3 (ReadWriteStaticRegister)
This was based on Atmosphére's DMNT Cheat VM:
- https://github.com/Atmosphere-NX/Atmosphere/blob/master/stratosphere/dmnt/source/cheat/impl/dmnt_cheat_vm.hpp
- https://github.com/Atmosphere-NX/Atmosphere/blob/master/stratosphere/dmnt/source/cheat/impl/dmnt_cheat_vm.cpp
From Atmosphére's documentation: "Code type 0xC3 reads or writes a static register with a given register"
There are now only two remaining opcodes to implement (PauseProcess and BreakProcess)
This is untested because I don't have any experience in testing cheats on yuzu
6 years ago
Lioncash
9f027b1af2
common/swap: Make use of std::endian
Allows removing a bunch of defines in favor of a two liner.
6 years ago
Lioncash
969100d41a
shader_cache: Make use of std::erase_if
Now that we use C++20, we can also make use of std::erase_if instead of
needing to do the erase-remove idiom.
6 years ago
lat9nq
a683e42516
clang-format
6 years ago
lat9nq
6d1477f214
settings: Move settings sanitization to its own function
Creates a new function that can be expanded later to fix other settings that are known to cause emulation errors across executables.
6 years ago
Ameer
ab65de2f96
Fix crash if gc configured but adapter not connected
6 years ago
lat9nq
8160e142e1
main: Set async gpu properly after loading per-game setting
Another error that got pass me and only noticed when I was doing the per-game settings UI rework. This prevents asynchronous GPU emulation from being disabled while multi core is enabled as a result of a poorly put together per-game config.
6 years ago
lat9nq
e02687ff47
configure_general: Explicitly guard use_multi_core when applying settings
This is likely an oversight during a rebase. Guards use_multi_core to be only set when the global value is in use. It should not make a difference given the current code base, but makes the code sensible.
6 years ago
Lioncash
0f8b977663
vk_device: Make use of designated initializers where applicable
Avoids redundant repetitions of variable names, and allows assignment
all in one statement.
6 years ago
Ameer
b284c43385
input_common: drop unused libusb.h include
Remnant of an early implementation.
6 years ago
Lioncash
0475a167f8
vk_graphics_pipeline: Make use of designated initializers where applicable
Avoids redundant variable name repetitions.
6 years ago
Jan Beich
883fab2fff
input_common: make libusb private to gc_adapter
6 years ago
Lioncash
f2f876e3ff
memory_layout: Remove unused data member
This isn't used, so it can be removed entirely, shrinking the structure
size by 8 bytes.
6 years ago
Lioncash
ed0fe04b4f
address_space_info: Use type alias to simplify code
We can define an alias for the index arrays and then just reuse it to
make the code nicer to read.
6 years ago
Lioncash
c3eb42de65
address_space_info: Make use of designated initializers
We can alter the structure so that we can use designated initializers in
the array, eliminating the comments that indicate their field names.
6 years ago
ReinUsesLisp
fbc232426d
video_core: Rearrange pixel format names
Normalizes pixel format names to match Vulkan names. Previous to this
commit pixel formats had no convention, leading to confusion and
potential bugs.
6 years ago
ReinUsesLisp
eda37ff26b
video_core: Fix DXT4 and RGB565
6 years ago
ReinUsesLisp
a8dab2ffb3
video_core/format_lookup_table: Add formats with existing PixelFormat
6 years ago
ReinUsesLisp
480850ffe7
video_core: Fix B5G6R5_UNORM render target format
6 years ago
ReinUsesLisp
990b14f181
video_core: Fix B5G6R5U
6 years ago
ReinUsesLisp
1d20aac795
video_core: Implement RGBA32_SINT render target
6 years ago
ReinUsesLisp
9338599d72
video_core: Implement RGBA32_SINT render target
6 years ago
ReinUsesLisp
95c0f5afe5
video_core: Implement RGBA16_SINT render target
6 years ago