Morph
7f908ceb00
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
bunnei
3f9b1b22bc
Merge pull request #4328 from lioncash/unused-var3
memory_layout: Remove unused data member
6 years ago
Lioncash
66e6dccc66
core_timing: Remove unused data member
Shrinks the size of the CoreTiming class by 8 bytes.
6 years ago
Lioncash
56054fe86d
core_timing: Make TimedCallback take std::chrono::nanoseconds
Enforces our desired time units directly with a concrete type.
6 years ago
Lioncash
9e113a2b67
core_timing: Make use of std::chrono with ScheduleEvent
6 years ago
Lioncash
3ce5234599
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
1d41247fce
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
9346d1e257
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
8c0ba1ce84
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
7deb699566
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
63f16db2e6
clang format
6 years ago
Morph
9dc8b2f03c
Use proper install result when overwriting files
6 years ago
Morph
c530630c1c
Remove global system instance and address feedback
6 years ago
Morph
5054a6c429
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
67310a4623
clang-format
6 years ago
VolcaEM
bec0bdabc8
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
Rodrigo Locatti
9dd2647098
Merge pull request #4342 from lioncash/endian
common/swap: Make use of std::endian
6 years ago
Lioncash
589f33c54c
common/swap: Make use of std::endian
Allows removing a bunch of defines in favor of a two liner.
6 years ago
Lioncash
7d3ba83dde
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
bunnei
4d15c4ae6f
Merge pull request #4242 from ReinUsesLisp/maxwell-dma
maxwell_dma: Match official doc and support pitch->voxel copies
6 years ago
lat9nq
ca132f7dfb
clang-format
6 years ago
lat9nq
be59d82047
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
ed995fe27e
Rebase to master
6 years ago
bunnei
c4ce38fcb5
Merge pull request #4294 from MerryMage/cpu-opt-settings
configuration: Add settings to enable/disable specific CPU optimizations
6 years ago
bunnei
f1b2cb5eec
Merge pull request #4282 from Morph1984/fs-size
filesystem: Set various NAND partition sizes to their defaults
6 years ago
bunnei
add2133f18
Merge pull request #4338 from ameerj/disconnected-adapter
gcadapter: Fix crash if gc configured but adapter not connected
6 years ago
Ameer
2b38468a0b
Fix crash if gc configured but adapter not connected
6 years ago
bunnei
f18dca4b04
Merge pull request #4314 from lioncash/input-warn
gcadapter: Tidy up compiler warnings
6 years ago
bunnei
1434f790a0
Merge pull request #4315 from lioncash/udp-warn
udp: Silence a C++20 deprecation warning
6 years ago
LC
c717088763
Merge pull request #4335 from lat9nq/fix-set-per-game-multicore
configure_general: Explicitly guard use_multi_core when applying setting
6 years ago
lat9nq
688bae221f
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
73c7843bff
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
8d7fa4e28c
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
LC
e15aa03b49
Merge pull request #4280 from jbeich/system-libusb
cmake: pass libusb include directory
6 years ago
Ameer
a8deadbb2b
input_common: drop unused libusb.h include
Remnant of an early implementation.
6 years ago
Lioncash
869f37566e
vk_graphics_pipeline: Make use of designated initializers where applicable
Avoids redundant variable name repetitions.
6 years ago
Jan Beich
cfc73b4188
input_common: make libusb private to gc_adapter
6 years ago
Lioncash
ed658d92dc
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
14332845af
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
c8b9f7bd14
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
a068ce4c32
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
44fb3cf920
video_core: Fix DXT4 and RGB565
6 years ago
ReinUsesLisp
716ab93365
video_core/format_lookup_table: Add formats with existing PixelFormat
6 years ago
ReinUsesLisp
46c327d2d9
video_core: Fix B5G6R5_UNORM render target format
6 years ago
ReinUsesLisp
12937875a5
video_core: Fix B5G6R5U
6 years ago
ReinUsesLisp
ac8eeffbbc
video_core: Implement RGBA32_SINT render target
6 years ago
ReinUsesLisp
59610b129f
video_core: Implement RGBA32_SINT render target
6 years ago
ReinUsesLisp
5ba68f5fab
video_core: Implement RGBA16_SINT render target
6 years ago
ReinUsesLisp
f8136072ff
video_core: Implement RGBA8_SINT render target
6 years ago
ReinUsesLisp
ad494d0a3c
video_core: Implement RG32_SINT render target
6 years ago