aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle
AgeCommit message (Collapse)Author
2018-07-25Merge pull request #800 from lioncash/setbunnei
set_sys: Implement SetColorSetId()
2018-07-24Merge pull request #806 from lioncash/friendbunnei
friend: Deduplicate interfaces
2018-07-24friend: Add friend:m, friend:s, and friend:v servicesLioncash
Given we already have friend:a and friend:u, we should add the remaining services as well.
2018-07-24friend/interface: Add missing CreateDaemonSuspendSessionService() to the ↵Lioncash
function handler table
2018-07-24friend: Deduplicate interfacesLioncash
2018-07-24svc: Resolve sign comparison warnings in WaitSynchronization()Lioncash
The loop's induction variable was signed, but we were comparing against an unsigned variable.
2018-07-24svc: Log parameters in SetMemoryAttribute()Lioncash
Provides slightly more context than only logging out the address value.
2018-07-24Merge pull request #797 from lioncash/explicitbunnei
core: Make converting constructors explicit where applicable
2018-07-24Merge pull request #795 from lioncash/declbunnei
apm/interface: Remove redundant declaration of InstallInterfaces()
2018-07-24Merge pull request #794 from lioncash/refbunnei
mutex: Pass SharedPtr to GetHighestPriorityMutexWaitingThread() by reference
2018-07-24time: Simplify interface creationLioncash
We can use one instance of the interface instead of duplicating code.
2018-07-24core_timing: Split off utility functions into core_timing_utilMerryMage
2018-07-24set_sys: Implement SetColorSetId()Lioncash
2018-07-24ipc_helper: Add helper member function for popping enum values to RequestParserLioncash
2018-07-23Merge pull request #793 from lioncash/privbunnei
ipc_helpers: Make member variables of ResponseBuilder private
2018-07-23core: Make converting constructors explicit where applicableLioncash
Avoids unwanted implicit conversions. Thankfully, given the large amount of cleanup in past PRs, only this tiny amount is left over to cover.
2018-07-23apm/interface: Remove redundant declaration of InstallInterfaces()Lioncash
This is already declared in apm/apm.h
2018-07-23mutex: Pass SharedPtr to GetHighestPriorityMutexWaitingThread() by referenceLioncash
The pointed to thread's members are simply observed in this case, so we don't need to copy it here.
2018-07-23VFS Regression and Accuracy Fixes (#776)Zach Hilman
* Regression and Mode Fixes * Review Fixes * string_view correction * Add operator& for FileSys::Mode * Return std::string from SanitizePath * Farming Simulator Fix * Use != With mode operator&
2018-07-23hle_ipc: Make constructors explicit where applicableLioncash
2018-07-23ipc_helpers: Make member variables of ResponseBuilder privateLioncash
These aren't used externally at all, so they can be made private.
2018-07-23Merge pull request #780 from lioncash/movebunnei
vi: Minor changes
2018-07-23Merge pull request #779 from lioncash/sharedbunnei
hle: Remove unused config_mem and shared_page source files
2018-07-23vi: Add std::is_trivially_copyable checks to Read and Write functionsLioncash
It's undefined behavior to memcpy an object that isn't considered trivially copyable, so put a compile-time check in to make sure this doesn't occur.
2018-07-23vi: std::move std::vector in constructors where applicableLioncash
Allows avoiding unnecessary copies of the vector depending on the calling code. While we're at it, remove a redundant no-parameter base constructor call
2018-07-23hle: Remove config_mem.h/.cppLioncash
This is just an unused hold-over from citra, so we can get rid of this to trim off an exposed global, among other things.
2018-07-23hle: Remove shared_page.h/.cppLioncash
This is a holdover from citra that's essentially unused.
2018-07-23set: Add missing log call in GetAvailableLanguageCodeCount()Lioncash
Forgot to include this in 22f448b6327044076959e338811ee576f3dcf093
2018-07-23Merge pull request #777 from lioncash/langbunnei
set: Amend return value of GetAvailableLanguageCodes()
2018-07-23set: Implement GetAvailableLanguageCodeCount()Lioncash
This just returns the size of the language code buffer.
2018-07-23set: Correct return code size of value in GetAvailableLanguageCodes()Lioncash
The return code should be 32-bit in size.
2018-07-22Merge pull request #774 from Subv/atomic_signalbunnei
Kernel/SVC: Perform atomic accesses in SignalProcessWideKey as per the real kernel.
2018-07-22Kernel/SVC: Perform atomic accesses in SignalProcessWideKey as per the real ↵Subv
kernel.
2018-07-22file_util, vfs: Use std::string_view where applicableLioncash
Avoids unnecessary construction of std::string instances where applicable.
2018-07-21Merge pull request #760 from lioncash/pathbunnei
file_util: Use an enum class for GetUserPath()
2018-07-21GPU: Implement the NVGPU_IOCTL_CHANNEL_KICKOFF_PB ioctl2 command.Subv
This behaves quite similarly to the SubmitGPFIFO command. Referenced from Ryujinx. Many thanks to @gdkchan for investigating this!
2018-07-21file_util: Use an enum class for GetUserPath()Lioncash
Instead of using an unsigned int as a parameter and expecting a user to always pass in the correct values, we can just convert the enum into an enum class and use that type as the parameter type instead, which makes the interface more type safe. We also get rid of the bookkeeping "NUM_" element in the enum by just using an unordered map. This function is generally low-frequency in terms of calls (and I'd hope so, considering otherwise would mean we're slamming the disk with IO all the time) so I'd consider this acceptable in this case.
2018-07-21Merge pull request #751 from Subv/tpidr_el0bunnei
CPU: Save and restore the TPIDR_EL0 system register on every context switch
2018-07-20CPU: Save and restore the TPIDR_EL0 system register on every context switch.Subv
Note that there's currently a dynarmic bug preventing this register from being written.
2018-07-20Merge pull request #742 from bunnei/misc-apmbunnei
apm: Improve stub for GetPerformanceConfiguration.
2018-07-20apm: Improve stub for GetPerformanceConfiguration.bunnei
2018-07-20ipc_helpers: Add PushEnum() member function to ResponseBuilderLioncash
Allows pushing strongly-typed enum members without the need to always cast them at the call sites. Note that we *only* allow strongly-typed enums in this case. The reason for this is that strongly typed enums have a guaranteed defined size, so the size of the data being pushed is always deterministic. With regular enums this can be a little more error-prone, so we disallow them. This function simply uses the underlying type of the enum to determine the size of the data. For example, if an enum is defined as: enum class SomeEnum : u16 { SomeEntry }; if PushEnum(SomeEnum::SomeEntry); is called, then it will push a u16-size amount of data.
2018-07-20Merge pull request #740 from Subv/acc_crashbunnei
HLE/ACC: Stub IManagerForApplication::GetAccountId to return an error.
2018-07-20Merge pull request #736 from lioncash/nullbunnei
audout_u/audren_u: Ensure null terminators are written out in ListAudioOutsImpl(), ListAudioDeviceName(), and GetActiveAudioDeviceName()
2018-07-20Merge pull request #734 from lioncash/threadbunnei
thread: Convert ThreadStatus into an enum class
2018-07-20HLE/ACC: Stub IManagerForApplication::GetAccountId to return an error.Subv
And make IManagerForApplication::CheckAvailability always return false. Returning a bogus id from GetAccountId causes games to crash on boot. We should investigate this with a hwtest and either stub it properly or implement it.
2018-07-19audren_u: Use a std::array instead of std::string for holding the audio ↵Lioncash
interface/device name std::string doesn't include the null-terminator in its data() + size() range. This ensures that the null-terminator will also be written to the buffer
2018-07-19audout_u: Use a std::array instead of std::string for holding the audio ↵Lioncash
interface name Uses a type that doesn't potentially dynamically allocate, and ensures that the name of the interface is properly null-terminated when writing it to the buffer.
2018-07-19thread: Convert ThreadStatus into an enum classLioncash
Makes the thread status strongly typed, so implicit conversions can't happen. It also makes it easier to catch mistakes at compile time.
2018-07-19pl_u: Simplify WriteBuffer() calls in GetSharedFontInOrderOfPriority()Lioncash
With the new overload, we can simply pass the container directly.