summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/svc.h (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-02-21svc: Fix type consistency (exposed on macOS)Merry1-9/+9
2023-02-07kernel/svc: switch to generated wrappersLiam1-150/+514
2023-02-05kernel/svc: Split implementations into separate filesLiam1-0/+156
2022-04-23general: Convert source file copyright comments over to SPDXMorph1-3/+2
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2020-04-17core: kernel: Move SVC to its own namesapce.bunnei1-3/+3
2019-04-08kernel/svc: Deglobalize the supervisor call handlersLioncash1-1/+5
Adjusts the interface of the wrappers to take a system reference, which allows accessing a system instance without using the global accessors. This also allows getting rid of all global accessors within the supervisor call handling code. While this does make the wrappers themselves slightly more noisy, this will be further cleaned up in a follow-up. This eliminates the global system accessors in the current code while preserving the existing interface.
2018-12-12vm_manager: Migrate MemoryInfo and PageInfo to vm_manager.hLioncash1-16/+0
Gets the two structures out of an unrelated header and places them with the rest of the memory management code. This also corrects the structures. PageInfo appears to only contain a 32-bit flags member, and the extra padding word in MemoryInfo isn't necessary.
2018-10-26svc: Localize the GetInfo enum class to the function itselfLioncash1-32/+0
Nothing from this enum is intended to be used outside of this function.
2018-10-26svc: Implement svcGetInfo command 0xF0000002Lioncash1-0/+1
This retrieves: if (curr_thread == handle_thread) { result = total_thread_ticks + (hardware_tick_count - last_context_switch_ticks); } else if (curr_thread == handle_thread && sub_id == current_core_index) { result = hardware_tick_count - last_context_switch_ticks; }
2018-10-15svc: Clarify enum values for AddressSpaceBaseAddr and AddressSpaceSize in svcGetInfo()Lioncash1-2/+2
So, one thing that's puzzled me is why the kernel seemed to *not* use the direct code address ranges in some cases for some service functions. For example, in svcMapMemory, the full address space width is compared against for validity, but for svcMapSharedMemory, it compares against 0xFFE00000, 0xFF8000000, and 0x7FF8000000 as upper bounds, and uses either 0x200000 or 0x8000000 as the lower-bounds as the beginning of the compared range. Coincidentally, these exact same values are also used in svcGetInfo, and also when initializing the user address space, so this is actually retrieving the ASLR extents, not the extents of the address space in general.
2018-05-26Add & correct miscellaneous things (#470)greggameplayer1-0/+3
* add some InfoType * correct OpenApplicationProxy cmd number * add IDisplayController functions * fix clang-format * add more system languages
2018-01-19svc: Add additional fields to MemoryInfo struct.bunnei1-0/+4
2018-01-17SVC: Add 4.0.0+ comment to GetInfoType enum values.Subv1-0/+1
2018-01-16Added more svcGetInfo pairsDavid Marcec1-0/+13
2018-01-13yuzu: Update license text to be consistent across project.bunnei1-1/+1
2018-01-10Threads: Added enum values for the Switch's 4 cpu cores and implemented svcGetInfo(AllowedCpuIdBitmask)Subv1-0/+1
2018-01-09kernel: Rename Semaphore to ConditionVariable.bunnei1-1/+1
2018-01-03hle: Move SVC code to kernel namespace.bunnei1-9/+3
2018-01-01svc: Improve svcGetInfo.bunnei1-28/+12
2017-10-20hle: Fix QueryMemory response for MemoryInfo.bunnei1-2/+3
2017-10-14svc: Update MemoryInfo flags for 64-bit.bunnei1-5/+5
2016-03-13svc: Move ResetType enum to the kernel event headerLioncash1-6/+0
2016-03-12svc: Remove unused ArbitrationType enumLioncash1-9/+0
An equivalent enum already exists within address_arbiter.h
2016-03-12svc: Make ResetType an enum classLioncash1-5/+4
2015-12-01Kernel: Implement svcGetSystemInfoYuri Kunde Schlesner1-0/+29
This makes smealum/ctrulib@b96dd51d3349961189d4ab1bc2a5c45deff21c09 work with Citra.
2015-07-21dyncom: Pass SVC immediates directly.Lioncash1-1/+1
Previously it would just re-read the already decoded instruction and extract the immediate value.
2015-05-06HLE: Clean up SVC dispatch mechanismYuri Kunde Schlesner1-1/+1
2015-01-09Move ThreadContext to core/core.h and deal with the falloutYuri Kunde Schlesner1-15/+0
2014-12-21License changepurpasmart961-1/+1
2014-11-19Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generatedEmmanuel Gil Peyrot1-1/+1
2014-06-05arm: fixed bug in how thread context switch occurs with SkyEyebunnei1-0/+4
2014-05-30svc: added ArbitrationType enumerationbunnei1-0/+9
2014-05-21renamed "syscall" module to "svc" (more accurate naming)bunnei1-2/+2
2014-05-19- moved Handle/Result definitions to kernel.hbunnei1-4/+8
- added ResetType enum
2014-05-16- added SVC stubs for QueryMemory and GetThreadIdbunnei1-0/+11
- added SVC structs MemoryInfo and PageInfo
2014-05-16- added ThreadContext structbunnei1-0/+14
- cleaned up CreateThread svc
2014-04-12- renamed hle_syscall to just syscallbunnei1-0/+19
- added service.h as an initial service interface