summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/svc_wrap.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* kernel/svc: Implement svcCreateEvent()Lioncash2018-12-041-0/+13
| | | | | | | | | | | | | | | svcCreateEvent operates by creating both a readable and writable event and then attempts to add both to the current process' handle table. If adding either of the events to the handle table fails, then the relevant error from the handle table is returned. If adding the readable event after the writable event to the table fails, then the writable event is removed from the handle table and the relevant error from the handle table is returned. Note that since we do not currently test resource limits, we don't check the resource limit table yet.
* svc: Implement svcCreateResourceLimit()Lioncash2018-11-271-0/+8
| | | | | | | | | | | | | | | This function simply creates a ResourceLimit instance and attempts to create a handle for it within the current process' handle table. If the kernal fails to either create the ResourceLimit instance or create a handle for the ResourceLimit instance, it returns a failure code (OUT_OF_RESOURCE, and HANDLE_TABLE_FULL respectively). Finally, it exits by providing the output parameter with the handle value for the ResourceLimit instance and returning that it was successful. Note: We do not return OUT_OF_RESOURCE because, if yuzu runs out of available memory, then new will currently throw. We *could* allocate the kernel instance with std::nothrow, however this would be inconsistent with how all other kernel objects are currently allocated.
* Stubbed SetMemoryPermissionFrederic Laing2018-11-031-0/+5
|
* svc: Implement svcGetProcessInfoLioncash2018-10-131-0/+8
| | | | | | | A fairly basic service function, which only appears to currently support retrieving the process state. This also alters the ProcessStatus enum to contain all of the values that a kernel process seems to be able of reporting with regards to state.
* Changed all casts in svc_wrap.h to be static_cast insteadDavid Marcec2018-10-101-25/+28
|
* Fixed incorrect types for svcBreakDavid Marcec2018-10-101-0/+5
| | | | svcBreak reason should be a u32, not a u64.
* kernel/svc: Implement svcGetThreadContext()Lioncash2018-09-301-0/+5
| | | | | | | | | Now that we have all of the rearranging and proper structure sizes in place, it's fairly trivial to implement svcGetThreadContext(). In the 64-bit case we can more or less just write out the context as is, minus some minor value sanitizing. In the 32-bit case we'll need to clear out the registers that wouldn't normally be accessible from a 32-bit AArch32 exectuable (or process).
* svc_wrap: Convert the PARAM macro into a functionLioncash2018-09-181-37/+36
| | | | | | This can just be a regular function, getting rid of the need to also explicitly undef the define at the end of the file. Given FuncReturn() was already converted into a function, it's #undef can also be removed.
* svc: Correct parameter type for OutputDebugString()Lioncash2018-09-121-2/+2
| | | | This should be a u64 to represent size.
* Add additional missing format.Michael Scire2018-06-221-2/+6
|
* Kernel/Arbiters: Add stubs for 4.x SignalToAddress/WaitForAddres SVCs.Michael Scire2018-06-211-0/+10
|
* core: Implement multicore support.bunnei2018-05-111-12/+12
|
* svc: Stub out SetThreadActivity, GetThreadContext.bunnei2018-04-031-0/+5
|
* svc: Stub GetThreadCoreMask.bunnei2018-03-301-0/+15
|
* Add UnmapSharedMemoryN00byKing2018-02-251-0/+5
| | | | | | | | C++11 requires spaces on the Identifier Add inttypes include clang
* Added CreateSharedMemory & UNIMPLEMENTED() for non existent services. (#113)David2018-01-201-0/+9
| | | | | | | | | | | | * Added svcCreateSharedMemory * Services which are not implemented now throw UNIMPLEMENTED() * clang-format * changed perms to u32 * removed camelcase
* svc: Implement svcMapSharedMemory.bunnei2018-01-141-0/+5
|
* yuzu: Update license text to be consistent across project.bunnei2018-01-131-1/+1
|
* svc: Implement GetSystemTick.bunnei2018-01-121-0/+8
|
* svc: Stub ResetSignal and CreateTransferMemorySubv2018-01-111-0/+8
|
* svc: Stub SetMemoryAttributeSubv2018-01-111-0/+6
|
* SVC: Fixed WaitSynchronization with multiple handles when at least one of them is ready.Subv2018-01-091-2/+5
|
* kernel: Rename Semaphore to ConditionVariable.bunnei2018-01-091-1/+1
|
* svc: Implement svcSignalProcessWideKey.bunnei2018-01-071-2/+2
|
* svc: Implement svcWaitProcessWideKeyAtomic.bunnei2018-01-061-0/+5
|
* hle: Move SVC code to kernel namespace.bunnei2018-01-031-0/+155