- Apr 05, 2019
-
-
Lioncash authored
Makes the return type consistently uniform (like the intrinsics we're wrapping). This also conveniently silences a truncation warning within the kernel multi_level_queue.
-
- Apr 04, 2019
-
-
ReinUsesLisp authored
TXQ returns integer types. Shaders usually do: R0 = TXQ(); // => int R0 = static_cast<float>(R0); If we don't treat it as an integer, it will cast a binary float value as float - resulting in a corrupted number.
-
Lioncash authored
In several places, we have request parsers where there's nothing to really parse, simply because the HLE function in question operates on buffers. In these cases we can just remove these instances altogether. In the other cases, we can retrieve the relevant members from the parser and at least log them out, giving them some use.
-
Lioncash authored
Quite a few unused includes have built up over time, particularly on core/memory.h. Removing these includes means the source files including those files will no longer need to be rebuilt if they're changed, making compilation slightly faster in this scenario.
-
Lioncash authored
While we're at it, don't use <QtGui> and <QtWidgets> and instead include exactly which headers we actually need.
-
Lioncash authored
Allows these strings to have no allocation cost when used at runtime.
-
Lioncash authored
Rather than scream that the file doesn't exist, we can clearly state what specifically doesn't exist, to avoid ambiguity, and make it easier to understand for non-primary English speakers/readers.
-
Lioncash authored
We can just make the trailing portion of the string part of the formatting, getting rid of the need to make another temporary string.
-
Lioncash authored
Simplifies the amount of string conversions necessary. We also don't need to log out what occurs here.
-
Lioncash authored
There's no need to construct a QFile instance just to check for its existence.
-
Lioncash authored
Quite a bit of these were out of sync with Switchbrew (and in some cases entirely wrong). While we're at it, also expand the section of named members. A segment within the control metadata is used to specify maximum values for the user, device, and cache storage max sizes and journal sizes. These appear to be generally used by the am service (e.g. in CreateCacheStorage, etc).
-
- Apr 03, 2019
-
-
Lioncash authored
For whatever reason, shared memory was being used here instead of transfer memory, which (quite clearly) will not work based off the name of the function. This corrects this wonky usage of shared memory.
-
Lioncash authored
Also amend erroneous use of size_t. We should be using u64 here.
-
Lioncash authored
Like the previous change, this allows Qt to handle proper translations of the UI buttons, rather than us needing to handle it.
-
Lioncash authored
Makes for shorter code, while also not requiring the buttons to be directly translated, they'll be handled by Qt itself.
-
Lioncash authored
The AddressArbiter type isn't actually used, given the arbiter itself isn't a direct kernel object (or object that implements the wait object facilities). Given this, we can remove the enum entry entirely.
-
Lioncash authored
Moves includes into the cpp file where necessary. This way, microprofile-related stuff isn't dumped into other UI-related code when the dialog header gets included.
-
- Apr 02, 2019
-
-
Lioncash authored
Similarly like svcGetProcessList, this retrieves the list of threads from the current process. In the kernel itself, a process instance maintains a list of threads, which are used within this function. Threads are registered to a process' thread list at thread initialization, and unregistered from the list upon thread destruction (if said thread has a non-null owning process). We assert on the debug event case, as we currently don't implement kernel debug objects.
-
Lioncash authored
This service function simply copies out a specified number of kernel process IDs, while simultaneously reporting the total number of processes.
-
ReinUsesLisp authored
-
bunnei authored
-
- Apr 01, 2019
-
-
Lioncash authored
Now that ShouldWait() is a const qualified member function, this one can be made const qualified as well, since it can handle passing a const qualified this pointer to ShouldWait().
-
Lioncash authored
Given this is intended as a querying function, it doesn't make sense to allow the implementer to modify the state of the given thread.
-
Lioncash authored
Previously this was performing a u64 + int sign conversion. When dealing with addresses, we should generally be keeping the arithmetic in the same signedness type. This also gets rid of the static lifetime of the constant, as there's no need to make a trivial type like this potentially live for the entire duration of the program.
-
Lioncash authored
The pointed to member is never actually modified, so it can be made const.
-
Lioncash authored
This doesn't really provide any benefit to the resource limit interface. There's no way for callers to any of the service functions for resource limits to provide a custom name, so all created instances of resource limits other than the system resource limit would have a name of "Unknown". The system resource limit itself is already trivially identifiable from its limit values, so there's no real need to take up space in the object to identify one object meaningfully out of N total objects.
-
Lioncash authored
Since C++17, the introduction of deduction guides for locking facilities means that we no longer need to hardcode the mutex type into the locks themselves, making it easier to switch mutex types, should it ever be necessary in the future.
-
- Mar 30, 2019
-
-
Lioncash authored
Since C++17, we no longer need to explicitly specify the type of the mutex within the lock_guard. The type system can now deduce these with deduction guides.
-
Lioncash authored
-
Lioncash authored
Resolves a -Wextra-semi warning.
-
Lioncash authored
Based off RE, most of these structure members are register values, which makes, sense given this service is used to convey fatal errors. One member indicates the program entry point address, one is a set of bit flags used to determine which registers to print, and one member indicates the architecture type. The only member that still isn't determined is the final member within the data structure.
- Mar 29, 2019
-
-
Lioncash authored
Nothing from this header is used, so we can remove this include, getting rid of a dependency on it.
-
Lioncash authored
The kernel makes sure that the given size to unmap is always the same size as the entire region managed by the shared memory instance, otherwise it returns an error code signifying an invalid size. This is similarly done for transfer memory (which we already check for).
-
Lioncash authored
Many of these functions are carried over from Dolphin (where they aren't used anymore). Given these have no use (and we really shouldn't be screwing around with OS-specific thread scheduler handling from the emulator, these can be removed. The function for setting the thread name is left, however, since it can have debugging utility usages.
-
unknown authored
gl_shader_disk_cache: Use LZ4HC with compression level 9 instead of compression level 12 for less compression time
-
unknown authored
-
unknown authored
-
unknown authored
gl_shader_disk_cache: Use better compression for transferable and precompiled shader disk chache files
-