| Age | Commit message (Collapse) | Author |
|
This commit instends on better naming the new purpose of this classes.
|
|
This commit moves ARM Interface and Scheduler handling into the kernel.
|
|
This was carried from Citra and wasn't really used on yuzu. It also adds
some runtime overhead. This commit removes it from yuzu's codebase.
|
|
Currently, the main memory management code is one of the remaining
places where we have global state. The next series of changes will aim
to rectify this.
This change simply introduces the main skeleton of the class that will
contain all the necessary state.
|
|
Kernel: Implement a New Thread Scheduler V2
|
|
|
|
|
|
Amends the initializer lists to be ordered in the same manner that
they're declared within the class.
|
|
General fixes to Async GPU
|
|
|
|
|
|
|
|
lm: Rewrite logger to use core reporting services
|
|
Migrates the HLE service code off the use of directly accessing the
global system instance where trivially able to do so.
This removes all usages of Core::CurrentProcess from the service code,
only 8 occurrences of this function exist elsewhere. There's still quite
a bit of "System::GetInstance()" being used, however this was able to
replace a few instances.
|
|
|
|
|
|
|
|
Allows centralized control over logging mechanisms.
|
|
am: Implement exit locking and self exit commands
|
|
Used to determine if yuzu should confirm before pausing or stopping a game.
|
|
|
|
This used to occur due to the VMManager being nullptr at the time cheats were registered (during load, but before it was done). This is bypassed by not accessing the VMManager for offset data until load is complete,
|
|
|
|
|
|
Co-Authored-By: jroweboy <jroweboy@gmail.com>
|
|
Avoids the use of global accessors, removing the reliance on global
state. This also makes dependencies explicit in the interface, as
opposed to being hidden
|
|
Implement GPU Synchronization Mechanisms & Correct NVFlinger
|
|
apm: Initial implementation of performance config and boost mode
|
|
fsp-srv: Implement Access Logging Functionality
|
|
|
|
|
|
Allows games to log data to the SD.
|
|
memory: Add class to manage and enforce memory freezing
|
|
|
|
|
|
kernel: Differentiate kernel and user processes when picking ID
|
|
core: Add detailed local reporting feature for development
|
|
|
|
|
|
This allows kernel internal type processes to be assigned IDs in the KIP range while userland processes are assigned in the user range.
|
|
The contents of these includes aren't used anywhere in this translation
unit.
|
|
This is a hold-over from Citra and doesn't apply to yuzu.
|
|
Makes the dependency explicit in the TelemetrySession's interface
instead of making it a hidden dependency.
This also revealed a hidden issue with the way the telemetry session was
being initialized. It was attempting to retrieve the app loader and log
out title-specific information. However, this isn't always guaranteed to
be possible.
During the initialization phase, everything is being constructed. It
doesn't mean an actual title has been selected. This is what the Load()
function is for. This potentially results in dead code paths involving
the app loader. Instead, we explicitly add this information when we know
the app loader instance is available.
|
|
Also cleanup of general stuff
|
|
|
|
Needed for backtrace decomposition
|
|
applets: Add AppletManager and implement PhotoViewer and Error applets
|
|
|
|
This gives us significantly more control over where in the
initialization process we start execution of the main process.
Previously we were running the main process before the CPU or GPU
threads were initialized (not good). This amends execution to start
after all of our threads are properly set up.
|
|
Now that we have dependencies on the initialization order, we can move
the creation of the main process to a more sensible area: where we
actually load in the executable data.
This allows localizing the creation and loading of the process in one
location, making the initialization of the process much nicer to trace.
|