aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle
AgeCommit message (Collapse)Author
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-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.
2018-08-12hid: Stub DisconnectNpad()Lioncash
This is required by ARMS.
2018-08-12Pushed the requested sample rate instead of our fixed sample rateDavid Marcec
2018-08-12Added GetAudioRendererSampleRate, GetAudioRendererSampleCount & ↵David Marcec
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
2018-08-12Stub UpdateUserPresenceDavid Marcec
Needed for Retro City Rampage to go in game
2018-08-11friend: Stub DeclareCloseOnlinePlaySession.bunnei
- Used by Splatoon 2.
2018-08-11friend: Fix CreateFriendService to return an IFriendService interface.bunnei
2018-08-11server_session: Provide more useful information and don't crash on bad IPC ↵bunnei
request.
2018-08-10video_core; Get rid of global g_toggle_framelimit_enabled variableLioncash
Instead, we make a struct for renderer settings and allow the renderer to update all of these settings, getting rid of the need for global-scoped variables. This also uncovered a few indirect inclusions for certain headers, which this commit also fixes.
2018-08-09Merge pull request #997 from lioncash/const-funcbunnei
core: Make function reference parameters const where applicable
2018-08-09Merge pull request #990 from lioncash/entrybunnei
fsp_srv: Emplace entries first when building index instead of emplacing last
2018-08-09Merge pull request #897 from DarkLordZach/vfs-accuracy-2bunnei
vfs: Add VfsFilesystem and fix RealVfs* implementations
2018-08-09buffer_queue: Make reference parameter of SetPreallocatedBuffer constLioncash
This is simply copied by value, so there's no need to make it a modifiable reference. While we're at it, make the names of the parameters match its definition.
2018-08-09hle_ipc: Make WriteToOutgoingCommandBuffer()'s reference parameter constLioncash
This function doesn't modify anything within the reference Thread instance.
2018-08-08Merge pull request #986 from mailwl/acc-loadimagebunnei
Service/Account: stub LoadImage function
2018-08-08core: Port core to VfsFilesystem for file accessZach Hilman
2018-08-08filesystem: Remove unnecessary if conditionsZach Hilman
2018-08-08Merge pull request #978 from bunnei/fixioctlbunnei
nvhost_gpu: Don't over copy IoctlSubmitGpfifo.
2018-08-08fsp_srv: Use std::string_view's copy() function instead of strncpy()Lioncash
Given elements inserted into a vector are zeroed out, we can just copy MAX_LEN - 1 elements and the data will already be properly null terminated.
2018-08-08fsp_srv: Emplace entries first when building index instead of emplacing lastLioncash
The current way were doing it would require copying a 768 character buffer (part of the Entry struct) to the new element in the vector. Given it's a plain array, std::move won't eliminate that. Instead, we can emplace an instance directly into the destination buffer and then fill it out, avoiding the need to perform any unnecessary copies. Given this is done in a loop, we can request the destination to allocate all of the necessary memory ahead of time, avoiding the need to potentially keep reallocating over and over on every few insertions into the vector.
2018-08-08Merge pull request #975 from bunnei/am-stubbunnei
am: Stub SetScreenShotImageOrientation.
2018-08-08Merge pull request #958 from lioncash/nv-globalbunnei
nvdrv: Get rid of global std::weak_ptr
2018-08-08Service/Account: stub LoadImage functionmailwl
2018-08-08Merge pull request #965 from lioncash/unused-filesbunnei
hle: Remove unused romfs.cpp/.h
2018-08-08Merge pull request #974 from lioncash/accbunnei
acc: Add missing function table entries for GetUserCount
2018-08-08hid: fix IsSixAxisSensorAtRest() responsemailwl