aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Kernel/SupervisorCall/Syscall32.cs
AgeCommit message (Collapse)Author
2022-05-31Rewrite SVC handler using source generators rather than IL emit (#3371)gdkchan
* Implement syscall handlers using a source generator * Copy FlushProcessDataCache implementation to Syscall since it was only implemented on Syscall32 * Fix wrong argument order in some syscalls * Delete old Reflection.Emit based syscall handling code * Improvements to the code generation * ControlCodeMemory address and size is always 64-bit
2022-05-03Implement code memory syscalls (#2958)gdkchan
* Implement code memory syscalls * Remove owner process validation * Add 32-bit code memory syscalls * Remove unused field
2022-02-09misc: Make PID unsigned long instead of long (#3043)Mary
2022-01-29kernel: A bit of refactoring and fix GetThreadContext3 correctness (#3042)Mary
* Start refactoring kernel a bit and import some changes from kernel decoupling PR * kernel: Put output always at the start in Syscall functions * kernel: Rewrite GetThreadContext3 to use a structure and to be accurate * kernel: make KernelTransfer use generic types and simplify * Fix some warning and do not use getters on MemoryInfo * Address gdkchan's comment * GetThreadContext3: use correct pause flag
2021-12-30kernel: Implement thread pinning support (#2840)Mary
* kernel: Implement Thread pinning support This commit adds support for 8.x thread pinning changes and implement SynchronizePreemptionState syscall. Based on kernel 13.x reverse. * Address gdkchan's comment * kernel: fix missing critical section leave in SetActivity Fix Unity games * Implement missing bits on the interrupt handler and inline update pinning function as it cannot be generic * Fix some bugs in SetActivity and SetCoreAndAffinityMask * Address gdkchan's comments
2021-12-04kernel: Improve GetInfo readability and update to 13.0.0 (#2900)Mary
* kernel: Define InfoTYpe and make it less obscure when reading GetInfo Also map ThreadTickCount to 25 instead of 0xF0000002 like 13.x kernel. * kernel: Implement GetInfo IsApplication * kernel: Implement GetInfo FreeThreadCount
2021-10-24kernel: Add resource limit related syscalls (#2773)Mary
* kernel: Add resource limit related syscalls This commit implements all resource limit related syscalls. * Fix register mapping being wrong for SetResourceLimitLimitValue * Address gdkchan's comment
2021-10-24kernel: Implement SetMemoryPermission syscall (#2772)Mary
* kernel: Implement SetMemoryPermission syscall This commit implement the SetMemoryPermission syscall accurately. This also fix KMemoryPermission not being an unsigned 32 bits type and add the "DontCare" bit (used by shared memory, currently unused in Ryujinx) * Update MemoryPermission mask * Address gdkchan's comments * Fix a nit * Address gdkchan's comment
2021-06-23kernel: Implement MapTransferMemory and UnmapTransferMemory (#2386)Mary
Based on my reversing of kernel 12.0.0
2021-05-30Fix inverted low/high mask value on GetThreadCoreMask32 syscall (#2325)gdkchan
2020-12-02IPC refactor part 2: Use ReplyAndReceive on HLE services and remove special ↵gdkchan
handling from kernel (#1458) * IPC refactor part 2: Use ReplyAndReceive on HLE services and remove special handling from kernel * Fix for applet transfer memory + some nits * Keep handles if possible to avoid server handle table exhaustion * Fix IPC ZeroFill bug * am: Correctly implement CreateManagedDisplayLayer and implement CreateManagedDisplaySeparableLayer CreateManagedDisplaySeparableLayer is requires since 10.x+ when appletResourceUserId != 0 * Make it exit properly * Make ServiceNotImplementedException show the full message again * Allow yielding execution to avoid starving other threads * Only wait if active * Merge IVirtualMemoryManager and IAddressSpaceManager * Fix Ro loading data from the wrong process Co-authored-by: Thog <me@thog.eu>
2020-07-17Improve kernel IPC related syscalls (#1379)gdkchan
* Implement session count decrement when the handle is closed * Remove unused field * Implement SendSyncRequestWithUserBuffer, SendAsyncRequestWithUserBuffer and ReplyAndReceiveWithUserBuffer syscalls * Nits * Fix swapped copy dst/src * Add missing pointer buffer descriptor write on reply * Fix IPC unaligned buffer copy and restoring client attributes on reply * Oops * Fix SetIpcMappingPermission * Fix unaligned copy bugs * Free memory used for temporary IPC buffers
2020-05-04Move kernel state out of the Horizon class (#1107)gdkchan
* Move kernel state from Horizon to KernelContext * Merge syscalls partial classes, split 32 and 64-bit variants * Sort usings