aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle
AgeCommit message (Collapse)Author
2022-02-12hid: Stub IsUsbFullKeyControllerEnabledlat9nq
Used by Splatoon 2, when opening the inventory from a LAN battle lobby. Reference: https://switchbrew.org/wiki/HID_services
2022-02-10Merge pull request #7852 from Morph1984/new-uuidbunnei
common: Revise and fix the UUID implementation
2022-02-08hle: kernel: KCodeMemory: Remove unused QueryMemory.bunnei
2022-02-08hle: kernel: KCodeMemory: Correct m_page_group number of pages.bunnei
Credits to @xerpi for finding this issue and pointing it out on #7519.
2022-02-05general: Rename NewUUID to UUID, and remove the previous UUID implMorph
This completes the removal of the old UUID implementation.
2022-02-05profile: Migrate to the new UUID implementationMorph
2022-02-05hle: ipc_helpers: Ignore -Wclass-memaccessMorph
This warning is triggered by GCC when copying into non-trivially default constructible types, as it uses the more restrictive std::is_trivial (which includes std::is_trivially_default_constructible) to determine whether memcpy is safe instead of std::is_trivially_copyable.
2022-02-05service: Migrate to the new UUID implementationMorph
2022-02-04service: pm: Implement AtmosphereGetProcessInfotech-ticks
2022-02-02Merge pull request #7835 from bunnei/page-table-lockbunnei
hle: kernel: KPageTable: Migrate locks to KScopedLightLock.
2022-02-02general: Replace NonCopyable struct with equivalentsLioncash
2022-02-02general: Move deleted copy/move constructor/assignment operators to public ↵Lioncash
interface This allows for better compiler errors, where the compiler will state a copy or move couldn't occur due to the relevant function being deleted. Previously a compiler would warn about the relevant function not being accessible (which, while true, isn't as informative as it could be).
2022-02-01hle: kernel: KPageTable: Migrate locks to KScopedLightLock.bunnei
- More accurately reflects real kernel behavior by using guest locks.
2022-01-31svc: Add 32 bit SynchronizePreemptionStateNarr the Reg
Used by Espgaluda II
2022-01-27hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock ↵bunnei
that has migrated. - Previously, it was possible for a thread migration to occur from core A to core B. - Next, core B waits on a guest lock that must be released by a thread queued for core A. - Meanwhile, core A is still waiting on the core B's current thread lock - resulting in a deadlock. - Fix this by try-locking the thread lock. - Fixes softlocks in FF8 and Pokemon Legends Arceus.
2022-01-26Merge pull request #7762 from bunnei/un-map-improvebunnei
Kernel Memory Updates (Part 4): Improve Un/MapPages, and more.
2022-01-25Merge pull request #7771 from lioncash/assertMorph
kernel/k_affinity_mask: Remove duplicated assert
2022-01-24kernel/k_affinity_mask: Remove duplicated assertLioncash
This is already checked inside GetCoreBit()
2022-01-22hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount.bunnei
- Previously implementation was incorrect, and would occasionally underflow.
2022-01-22core: hle: kernel: KPageTable: Various improvements to MapPages and UnmapPages.bunnei
2022-01-22core: hle: kernel: KPageTable: MapProcessCode: Various cleanup.bunnei
2022-01-22core: hle: kernel: KPageTable: ReserveTransferMemory: Various cleanup.bunnei
2022-01-22core: hle: kernel: KPageTable: ResetTransferMemory: Various cleanup.bunnei
2022-01-22core: hle: kernel: KPageTable: SetMemoryAttribute: Various cleanup.bunnei
2022-01-22core: hle: kernel: KPageTable: Assert valid address on GetPhysicalAddr.bunnei
2022-01-22core: hle: kernel: KPageTable: Operate: Assert lock ownership.bunnei
2022-01-22core: hle: kernel: KPageTable: SetHeapSize: Cleanup & take physical memory lock.bunnei
2022-01-22core: hle: kernel: Refactor Un/MapPhysicalMemory to remove unnecessary methods.bunnei
2022-01-22core: hle: kernel: Rename Un/Map to Un/MapMeory.bunnei
2022-01-21Merge pull request #7737 from bunnei/fix-dummy-thread-leakbunnei
Various fixes to HLE service thread management
2022-01-21Merge pull request #7752 from Morph1984/SetCpuOverclockEnabledbunnei
service: apm: Stub ISession SetCpuOverclockEnabled
2022-01-21hle: kernel: KThread: Ensure host (dummy) threads block on locking.bunnei
- But do not enter the priority queue, as otherwise they will be scheduled. - Allows dummy threads to use guest synchronization primitives.
2022-01-21service/wlan: Update function tablesLioncash
2022-01-21service/usb: Update function tablesLioncash
2022-01-21service/set: Update function tablesLioncash
2022-01-21service/ns: Update function tablesLioncash
2022-01-21service/nim: Update unknown function table entriesLioncash
2022-01-21service/friend: Update unknown function table entriesLioncash
2022-01-21service/filsystem: Update fsp-srv function tableLioncash
2022-01-21service/btm: Update function tablesLioncash
2022-01-21service/audio: Update audctl unknown function namesLioncash
2022-01-21service/am: Update omm function tablesLioncash
2022-01-21service/acc: Update unknown function namesLioncash
Switchbrew has the function names now.
2022-01-20service: apm: Stub ISession SetCpuOverclockEnabledMorph
Since we don't currently support CPU overclocking within the emulated system, this can be stubbed for now, like APM IsCpuOverclockEnabled. - Used by Gravity Rider Zero
2022-01-20hle: kernel: Remove redundant tracking of dummy threads.bunnei
- These are already tracked by kernel's registered_objects member.
2022-01-20hle: kernel: KThread: DummyThread can be waited, ensure wait_queue is not ↵bunnei
nullptr.
2022-01-20hle: kernel: KThread: Decrease DummyThread priority to ensure it is never ↵bunnei
scheduled.
2022-01-20hle: kernel: service_thread: Ensure dummy thread is closed & destroyed on ↵bunnei
thread exit.
2022-01-20hle: kernel: KServerSession: Remove hack for CompleteSyncRequest.bunnei
- This does not appear to be necessary anymore.
2022-01-20hle: kernel: KServerSession: Simplify CompleteSyncRequest EndWait.bunnei
- Considering is_thread_waiting is never set, so we can remove IsThreadWaiting. - KThread::EndWait will take the scheduler lock, so we can remove the redundant lock.