bunnei
9b5e7971dc
hle: kernel: k_system_control: Add GetRealMemorySize and update GetKernelPhysicalBaseAddress.
4 years ago
bunnei
18e77a54c3
hle: kernel: k_memory_layout: Add GetPhysicalLinearRegion.
4 years ago
bunnei
06a21ac229
hle: kernel: k_memory_region_types: Update for new regions.
4 years ago
Narr the Reg
d44464829b
service: am: Update enum names to match documentation
4 years ago
bunnei
71f62a346d
hle: kernel: KSystemControl: Use 6GB memory layout when "use_extended_memory_layout" setting is enabled.
- This uses a larger 6GB DRAM memory layout, which is useful for some mods that require more memory.
4 years ago
bunnei
ca5e843bf6
core: hle: kernel: Remove resource limit hack for PhysicalMemory.
- With prior changes, we now report the correct amount of physical memory available to the emulated process.
4 years ago
bunnei
a74fddc98f
core: hle: kernel: KProcess: Pass in KResourceLimit on process creation.
- This allows us to have a resource limit per process, rather than use the global system resource limit.
4 years ago
bunnei
57ebcbf2c4
core: hle: kernel: KEvent: Pass in owner KProcess on event creation.
- This is necessary to ensure resource limits are freed from the right process.
4 years ago
bunnei
c7019db6f4
core: hle: kernel: KResourceLimit: Add a helper function for creating a KResourceLimit for a process.
4 years ago
bunnei
92b2e92620
fixup! core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
4 years ago
bunnei
c9260a75f6
core: hle: kernel: KPageTable: Fix UnmapPages.
- Fixes a logic bug in KPageTable::UnmapPages.
4 years ago
bunnei
1a16d055df
core: hle: kernel: KPageTable: Improve Un/MapPhysicalMemory.
- Improves the implementations of MapPhysicalMemory and UnmapPhysicalMemory to more closely reflect latest HOS.
4 years ago
Sergi Granell
c3242abe95
kernel: svc: Add OutputDebugString32, CreateCodeMemory32, ControlCodeMemory32
Very straightforward, they are just wrappers to the 64-bit version of
the SVC.
4 years ago
german77
b57d61010f
nfp: Allow files without password data
4 years ago
lat9nq
c5d22952bf
hid: Stub IsUsbFullKeyControllerEnabled
Used by Splatoon 2, when opening the inventory from a LAN battle lobby.
Reference: https://switchbrew.org/wiki/HID_services
4 years ago
Narr the Reg
6705439cf3
service/mnpp: Stub mnpp_app
Used in Super Nintendo Entertainment System™ - Nintendo Switch Online
4 years ago
Narr the Reg
6a1ad03153
nfp: Separate nfc tag from amiibo data
4 years ago
Narr the Reg
d0c7c3f64f
svc: Set unique names for function tables
4 years ago
bunnei
862dddf8c9
hle: kernel: KCodeMemory: Remove unused QueryMemory.
4 years ago
bunnei
d134ca68c6
hle: kernel: KCodeMemory: Correct m_page_group number of pages.
Credits to @xerpi for finding this issue and pointing it out on #7519 .
4 years ago
german77
e35c2fd5d0
nfp: Address compiler issues
4 years ago
Narr the Reg
29f9a454eb
nfp: Validate amiibo files
4 years ago
german77
fc9abd3c62
nfp: Improve implementation
5 years ago
german77
c001a2af25
nfp: Move IUser class to header and add missing enum and structs
5 years ago
german77
3d24eb54ec
nfp: Sort functions by command number
5 years ago
Morph
25db62ce15
general: Rename NewUUID to UUID, and remove the previous UUID impl
This completes the removal of the old UUID implementation.
4 years ago
Morph
dfe11d72e3
profile: Migrate to the new UUID implementation
4 years ago
Morph
f0340b8d22
hle: ipc_helpers: Ignore -Wclass-memaccess
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.
4 years ago
Morph
ee0547e4c4
service: Migrate to the new UUID implementation
4 years ago
tech-ticks
16bf50e610
service: pm: Implement AtmosphereGetProcessInfo
4 years ago
Lioncash
f785f73e92
general: Replace NonCopyable struct with equivalents
4 years ago
Lioncash
76d83ffbec
general: Move deleted copy/move constructor/assignment operators to public 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).
4 years ago
bunnei
995e27e9b7
hle: kernel: KPageTable: Migrate locks to KScopedLightLock.
- More accurately reflects real kernel behavior by using guest locks.
4 years ago
Narr the Reg
1ed22b4613
svc: Add 32 bit SynchronizePreemptionState
Used by Espgaluda II
4 years ago
bunnei
3a1a3dd0db
hle: kernel: KScheduler: Fix deadlock with core waiting for a thread lock 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.
4 years ago
Lioncash
2f12caccf9
kernel/k_affinity_mask: Remove duplicated assert
This is already checked inside GetCoreBit()
4 years ago
bunnei
59add00d4a
hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount.
- Previously implementation was incorrect, and would occasionally underflow.
4 years ago
bunnei
e791da9791
core: hle: kernel: KPageTable: Various improvements to MapPages and UnmapPages.
4 years ago
bunnei
07add23251
core: hle: kernel: KPageTable: MapProcessCode: Various cleanup.
4 years ago
bunnei
ee25e0a40b
core: hle: kernel: KPageTable: ReserveTransferMemory: Various cleanup.
4 years ago
bunnei
0cee5e1af8
core: hle: kernel: KPageTable: ResetTransferMemory: Various cleanup.
4 years ago
bunnei
ffcaf5af90
core: hle: kernel: KPageTable: SetMemoryAttribute: Various cleanup.
4 years ago
bunnei
2935c9d8de
core: hle: kernel: KPageTable: Assert valid address on GetPhysicalAddr.
4 years ago
bunnei
264bb5abf7
core: hle: kernel: KPageTable: Operate: Assert lock ownership.
4 years ago
bunnei
0137f2e6e1
core: hle: kernel: KPageTable: SetHeapSize: Cleanup & take physical memory lock.
4 years ago
bunnei
6d8e498f76
core: hle: kernel: Refactor Un/MapPhysicalMemory to remove unnecessary methods.
4 years ago
bunnei
b8b1b58f36
core: hle: kernel: Rename Un/Map to Un/MapMeory.
4 years ago
bunnei
615fb40416
hle: kernel: KThread: Ensure host (dummy) threads block on locking.
- But do not enter the priority queue, as otherwise they will be scheduled.
- Allows dummy threads to use guest synchronization primitives.
4 years ago
Lioncash
12bf8ca929
service/wlan: Update function tables
4 years ago
Lioncash
8dd6dc9a29
service/usb: Update function tables
4 years ago