0f0b756775
Merge pull request #4309 from Morph1984/fix-romfs-bug
...
fs: Fix RomFS building when zero byte files are present
2020-07-17 17:01:20 -04:00
4f473cda64
Drop settings namespace
2020-07-17 17:23:24 +10:00
85d7a8f466
Rebase for per game settings
2020-07-17 14:26:14 +10:00
c783cf443e
Merge pull request #4347 from lioncash/logging
...
settings: Make use of std::string_view over std::string for logging
2020-07-17 13:25:06 +10:00
92f37a229e
Merge pull request #4371 from lioncash/cmake2
...
core/CMakeLists: Add missing physical_memory.h header file
2020-07-17 13:22:19 +10:00
adbf5ca50b
Merge pull request #4357 from lioncash/unused4
...
kernel: Remove unused variables
2020-07-17 13:18:31 +10:00
69f8b6a53e
Merge pull request #4358 from lioncash/unused5
...
kernel/thread: Remove unimplemented function prototype
2020-07-17 13:17:52 +10:00
311f500753
core/CMakeLists: Add missing physical_memory.h header file
...
Allows this header file to show up in IDE CMake generators.
2020-07-16 22:56:31 -04:00
e07eb5b223
constants: Add missing <array> include
...
Eliminates reliance on an indirect include.
2020-07-16 21:43:20 -04:00
e54c940abf
mii/manager: Resolve sign mismatch warnings
...
Previously the loop termination condition was testing variables of
different signedness.
2020-07-16 21:07:04 -04:00
7f989378c0
mii/manager: Make use of designated initializers
...
Allows returning the structure in a more concise manner.
2020-07-16 20:45:33 -04:00
3bbf4462db
Merge pull request #4292 from bunnei/mii-rewrite
...
hle: service: mii: Rewrite service to properly support creation of random and default miis.
2020-07-16 20:05:40 -04:00
104c523d3d
Merge pull request #4327 from lioncash/desig2
...
address_space_info: Make use of designated initializers
2020-07-16 17:41:55 -03:00
8bef49cde5
kernel/thread: Remove unimplemented function prototype
...
This isn't used, so it can be removed.
2020-07-16 14:32:46 -04:00
2bab07c367
kernel: Remove unused variables
...
Resolves some compiler warnings in the Linux build.
2020-07-16 14:17:50 -04:00
07d080ecc8
kernel: Add missing include
2020-07-16 13:51:51 -04:00
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.
2020-07-16 13:30:56 -04:00
51546ce57e
cpu_manager: Remove unused preemption_count variable
...
Shrinks the data structure by 8 bytes.
2020-07-16 13:24:25 -04:00
201514cb50
cpu_manager: Add missing includes
...
Previously this header was relying on indirect inclusions that are no
longer satisfied.
2020-07-16 13:22:58 -04:00
2781201bfb
Merge pull request #4337 from lat9nq/fix-per-game-async
...
main: Set async gpu properly after loading per-game setting
2020-07-16 11:33:51 -04:00
0648e023ea
Merge pull request #4346 from lioncash/thread
...
kernel/handle_table: Remove usages of the global system instance
2020-07-16 23:02:04 +10:00
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
2020-07-16 22:28:49 +10:00
815f30dc10
Merge pull request #4249 from Morph1984/delete-update-aoc-on-overwrite
...
registered_cache: Remove previous update/dlc if it exists on install
2020-07-16 20:36:22 +10:00
f66e3181dc
Check for empty section0 and CNMT prior to install
2020-07-16 05:22:51 -04:00
5892fc1555
Add comment to clarify the nullptr check
2020-07-16 00:15:27 -04:00
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
2020-07-16 00:15:27 -04:00
f26f53f35b
Merge pull request #4328 from lioncash/unused-var3
...
memory_layout: Remove unused data member
2020-07-15 22:08:05 -04:00
0435b7d361
core_timing: Remove unused data member
...
Shrinks the size of the CoreTiming class by 8 bytes.
2020-07-15 19:41:37 -04:00
bef1844a51
core_timing: Make TimedCallback take std::chrono::nanoseconds
...
Enforces our desired time units directly with a concrete type.
2020-07-15 19:41:22 -04:00
8b50c660df
core_timing: Make use of std::chrono with ScheduleEvent
2020-07-15 18:54:15 -04:00
af5a56ddc4
settings: Resolve a sign conversion warning within GetTimeZoneString()
...
A sign conversion warning was occurring due to an int < size_t
comparison.
2020-07-15 13:45:22 -04:00
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.
2020-07-15 13:40:18 -04:00
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.
2020-07-15 13:40:15 -04:00
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.
2020-07-15 13:37:33 -04:00
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.
2020-07-15 13:28:05 -04:00
0ca7b8269a
clang format
2020-07-15 13:27:04 -04:00
1bbc61f5f1
Use proper install result when overwriting files
2020-07-15 13:27:04 -04:00
8794e623d9
Remove global system instance and address feedback
2020-07-15 13:27:04 -04:00
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
2020-07-15 13:27:04 -04:00
e90802e762
clang-format
2020-07-15 01:22:52 +02:00
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
2020-07-15 01:19:22 +02:00
a683e42516
clang-format
2020-07-14 13:46:42 -04:00
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.
2020-07-14 13:36:09 -04:00
e2730372b8
Merge pull request #4294 from MerryMage/cpu-opt-settings
...
configuration: Add settings to enable/disable specific CPU optimizations
2020-07-14 12:38:03 -04:00
450cbcfee6
Merge pull request #4282 from Morph1984/fs-size
...
filesystem: Set various NAND partition sizes to their defaults
2020-07-14 12:16:42 -04:00
f2f876e3ff
memory_layout: Remove unused data member
...
This isn't used, so it can be removed entirely, shrinking the structure
size by 8 bytes.
2020-07-13 10:51:23 -04:00
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.
2020-07-13 10:42:52 -04:00
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.
2020-07-13 10:42:49 -04:00
9b38f4fc55
kernel/scheduler: Use std::mutex instead of spin lock
...
Profiling shows that this is a highly contested mutex, causing dimishing
results compared to a OS lock. std::mutex implementations can spin for a
while before falling back to an OS lock.
This avoids wasting precious CPU cycles in a no-op.
2020-07-12 21:27:24 -03:00
739d90ee66
Merge pull request #4265 from Morph1984/file-rename
...
vfs_real: Fix MoveFile
2020-07-12 13:00:09 -04:00