aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle
AgeCommit message (Collapse)Author
2018-08-20profile_manager: Use INVALID_UUID in the initializer of last_opened_userLioncash
Makes it a little bit more self-documenting.
2018-08-20profile_manager: Remove unnecessary memcpy in GetProfileBaseAndData()Lioncash
Given the source and destination types are the same std::array type, we can simply use regular assignment to perform the same behavior.
2018-08-20profile_manager: Use type aliases for username data, profile data, and user ↵Lioncash
arrays Avoids the need to repeatedly specify the whole array type in multiple places.
2018-08-20profile_manager: Take ProfileInfo by const reference where applicableLioncash
ProfileInfo is quite a large struct in terms of data, and we don't need to perform a copy in these instances, so we can just pass constant references instead.
2018-08-20profile_manager: Make array parameter to CreateNewUser a const referenceLioncash
This doesn't modify the passed in array, so this can be a const reference.
2018-08-20profile_manager: Remove unnecessary staticLioncash
This can just be constexpr like the others
2018-08-20profile_manager: Simplify UUID's two param constructor, operator==, and ↵Lioncash
operator bool We can use the constructor initializer list and just compare the contained u128's together instead of comparing each element individually. Ditto for comparing against an invalid UUID.
2018-08-20profile_manager: Move UUID generation function to the cpp fileLioncash
This avoids needing to dump the contents of <random> into other files that include the profile manager header.
2018-08-20profile_manager: Remove unnecessary std::move in AddToProfiles() and ↵Lioncash
CreateNewUser() Moving a const reference isn't possible, so this just results in a copy (and given ProfileInfo is composed of trivial types and aggregates, a move wouldn't really do anything).
2018-08-20Merge pull request #1117 from ogniK5377/CheckFreeCommunicationPermissionbunnei
Added CheckFreeCommunicationPermission
2018-08-20Merge pull request #1017 from ogniK5377/better-accountbunnei
New account backend to allow for future extended support
2018-08-20Added CheckFreeCommunicationPermissionDavid Marcec
This fixes save files not loading in splatoon 2
2018-08-18filesystem: Add support for loading of system archivesZach Hilman
2018-08-17Implement SetIdleTimeDetectionExtension & GetIdleTimeDetectionExtension (#1059)greggameplayer
* Used by Mario Tennis Aces
2018-08-16correct coding stylegreggameplayer
2018-08-16Implement GetDefaultDisplayResolutionChangeEventgreggameplayer
Require by Toki Tori and Toki Tori 2+
2018-08-15Merge pull request #1005 from DarkLordZach/registered-fmtbunnei
file_sys: Add support for registration format
2018-08-15Merge pull request #1078 from lioncash/messagebunnei
lm: Handle threads and modules within the logger
2018-08-15Merge pull request #1051 from B3n30/UnscheduleEventThreadsafebunnei
Core::CoreTiming: add UnscheduleEventThreadsafe
2018-08-15Merge pull request #1080 from lioncash/retbunnei
sm/controller: Correct return value of QueryPointerBufferSize
2018-08-15kernel/server_session: Add IsSession() member functionLioncash
Allows querying the inverse of IsDomain() to make things more readable. This will likely also be usable in the event of implementing ConvertDomainToSession().
2018-08-15sm/controller: Correct return value of QueryPointerBufferSizeLioncash
This should be returning a u16 according to Switch Brew.
2018-08-15lm: Use LOG_DEBUG for printing out trace logsLioncash
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.
2018-08-15lm: Handle threads and modules within the loggerLioncash
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).
2018-08-14Merge pull request #1072 from lioncash/svcbunnei
kernel/svc: Log svcBreak parameters
2018-08-14Merge pull request #1056 from lioncash/mmbunnei
mm_u: Move interface class into the cpp file
2018-08-14kernel/svc: Log svcBreak parametersLioncash
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.
2018-08-14Merge pull request #1055 from lioncash/initbunnei
audout_u: Correct IAudioOut initializer list order
2018-08-13Merge pull request #1046 from ogniK5377/missing-channelsMat M
Added missing channel devices
2018-08-13mm_u: Forward all old variants of functions to the new onesLioncash
Ensures both variants go through the same interface, and while we're at it, add Finalize to provide the inverse of Initialize for consistency.
2018-08-13mm_u: Move implementation class into the cpp fileLioncash
Now if changes are ever made to the behavior of the class, it doesn't involve rebuilding everything that includes the mm_u header.
2018-08-13audout_u: Correct IAudioOut initializer list orderLioncash
Orders elements in the precise order they'll be initialized.
2018-08-13Core::CoreTiming: add UnscheduleEventThreadsafeB3n30
2018-08-13kernel/object: Tighten object against data racesLioncash
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.
2018-08-13Registered missing channel devicesDavid Marcec
2018-08-13Added missing channel devicesDavid Marcec
2018-08-12Merge pull request #1043 from Subv/timingbunnei
Use an approximated amortized amount of ticks when advancing timing.
2018-08-12Merge pull request #1036 from lioncash/threadbunnei
scheduler: Make HaveReadyThreads() a const member function
2018-08-12Merge pull request #1042 from Subv/racesbunnei
Fixed a bunch of race conditions when running in multicore mode.
2018-08-12Merge pull request #1041 from Subv/duplicated_mutexbunnei
Kernel/Mutex: Don't duplicate threads in the mutex waiter list.
2018-08-12Kernel/SVC: Don't reschedule the current core when creating a new thread.Subv
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.
2018-08-12Kernel/Threads: Lock the HLE mutex when executing the wakeup callback.Subv
Another thread might be in the middle of a reschedule, thus altering the state of the schedulers.
2018-08-12Kernel/Thread: Always use the threadsafe option when scheduling wakeups.Subv
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.
2018-08-12Kernel/Mutex: Don't duplicate threads in the mutex waiter list.Subv
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.
2018-08-12vfs: Make type hierarchy objects classes instead of structsLioncash
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.
2018-08-12Merge pull request #1035 from ogniK5377/audio-dev-revision-infobunnei
GetAudioDeviceServiceWithRevisionInfo (Used by Bloodstained: Curse of the Moon)
2018-08-12Merge pull request #1028 from ogniK5377/aoabunnei
Added GetAudioRendererSampleRate, GetAudioRendererSampleCount & GetAudioRendererMixBufferCount
2018-08-12scheduler: Make HaveReadyThreads() a const member functionLioncash
This function doesn't modify instance state, so the const qualifier can be added to it.
2018-08-12GetAudioDeviceServiceWithRevisionInfoDavid Marcec
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.
2018-08-12hid: disable clang-format around tablesLioncash
Prevents clang-format from butchering them.