| Age | Commit message (Collapse) | Author |
|
Require by Toki Tori and Toki Tori 2+
|
|
file_sys: Add support for registration format
|
|
lm: Handle threads and modules within the logger
|
|
Core::CoreTiming: add UnscheduleEventThreadsafe
|
|
sm/controller: Correct return value of QueryPointerBufferSize
|
|
Allows querying the inverse of IsDomain() to make things more readable.
This will likely also be usable in the event of implementing
ConvertDomainToSession().
|
|
This should be returning a u16 according to Switch Brew.
|
|
Using LOG_TRACE here isn't a good idea because LOG_TRACE is only enabled
when yuzu is compiled in debug mode. Debug mode is also quite slow, and
so we're potentially throwing away logging messages that can provide
value when trying to boot games.
|
|
The thread field serves to indicate which thread a log is related to and
provides the length of the thread's name, so we can print that out,
ditto for modules.
Now we can know what threads are potentially spawning off logging
messages (for example Lydie & Suelle bounces between MainThread and
LoadingThread when initializing the game).
|
|
kernel/svc: Log svcBreak parameters
|
|
mm_u: Move interface class into the cpp file
|
|
Given if we hit here all is lost, we should probably be logging the
break reason code and associated information to distinguish between the
causes.
|
|
audout_u: Correct IAudioOut initializer list order
|
|
Added missing channel devices
|
|
Ensures both variants go through the same interface, and while we're at
it, add Finalize to provide the inverse of Initialize for consistency.
|
|
Now if changes are ever made to the behavior of the class, it doesn't
involve rebuilding everything that includes the mm_u header.
|
|
Orders elements in the precise order they'll be initialized.
|
|
|
|
Despite being covered by a global mutex, we should still ensure that the
class handles its reference counts properly. This avoids potential
shenanigans when it comes to data races.
Given this is the root object that drives quite a bit of the kernel
object hierarchy, ensuring we always have the correct behavior (and no
races) is a good thing.
|
|
|
|
|
|
Use an approximated amortized amount of ticks when advancing timing.
|
|
scheduler: Make HaveReadyThreads() a const member function
|
|
Fixed a bunch of race conditions when running in multicore mode.
|
|
Kernel/Mutex: Don't duplicate threads in the mutex waiter list.
|
|
The current core may have nothing to do with the core where the new thread was scheduled to run. In case it's the same core, then the following PrepareReshedule call will take care of that.
|
|
Another thread might be in the middle of a reschedule, thus altering the state of the schedulers.
|
|
WakeAfterDelay might be called from any host thread, so err on the side of caution and use the thread-safe CoreTiming::ScheduleEventThreadsafe.
Note that CoreTiming is still far from thread-safe, there may be more things we have to work on for it to be up to par with what we want.
|
|
Exit from AddMutexWaiter early if the thread is already waiting for a mutex owned by the owner thread.
This accounts for the possibility of a thread that is waiting on a condition variable being awakened twice in a row.
Also added more validation asserts.
This should fix one of the random crashes in Breath Of The Wild.
|
|
struct should be used when the data type is very simple or otherwise has
no invariants associated with it. Given these are used to form a
hierarchy, class should be used instead.
|
|
GetAudioDeviceServiceWithRevisionInfo (Used by Bloodstained: Curse of the Moon)
|
|
Added GetAudioRendererSampleRate, GetAudioRendererSampleCount & GetAudioRendererMixBufferCount
|
|
This function doesn't modify instance state, so the const qualifier can
be added to it.
|
|
As we're not handling any anything about the revision data for GetAudioDeviceServiceWithRevisionInfo, it's currently marked as stubbed. However for games this shouldn't affect the result. Proper revision info would be more for homebrew.
|
|
Prevents clang-format from butchering them.
|
|
This is required by ARMS.
|
|
|
|
GetAudioRendererMixBufferCount
GetAudioRendererSampleRate is set as a "STUB" as a game could check if the sample rate it sent and the sample rate it wants don't match. Just a thought of something which could happen so keeping it as stub for the mean time
|
|
Needed for Retro City Rampage to go in game
|
|
|
|
- Used by Splatoon 2.
|
|
|
|
request.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|