aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
AgeCommit message (Collapse)Author
2016-01-30Memory: Implement MMIOMerryMage
2016-01-14HLE/SVC: Implement UnmapMemoryBlock.Subv
This implementation will need to be (almost completely) changed when we implement multiprocess support.
2015-12-29HLE/Timers: Reset OneShot timers when they are acquired instead of when ↵Subv
they're triggered. Closes #1139
2015-12-27SVC: Fixed ArbitrateAddress to behave as it does on hardware.Subv
This was verified with hwtests that i plan to upload later on.
2015-11-30Kernel: Implement svcGetSystemInfoYuri Kunde Schlesner
This makes smealum/ctrulib@b96dd51d3349961189d4ab1bc2a5c45deff21c09 work with Citra.
2015-10-06Silence -Wsign-compare warnings.Rohit Nirmal
2015-09-16general: Silence some warnings when using clangLioncash
2015-09-10General: Fix up doxygen commentsLioncash
2015-08-27Kernel: Fix wrong linear heap base on titles using newer kernelsYuri Kunde Schlesner
Typo which sneaked in through review on #1025
2015-08-26Kernel: Fix assertion failure when ControlMemory is called with size=0Yuri Kunde Schlesner
2015-08-26Core: Improve APT Shared Font hackYuri Kunde Schlesner
Should fix invalid read loops in some games
2015-08-16Kernel: Remove unused legacy heap MapBlock_* functionsYuri Kunde Schlesner
2015-08-16Kernel: Implement svcGetProcessInfo in a basic wayYuri Kunde Schlesner
This also adds some basic memory usage accounting. These two types are used by Super Smash Bros. during startup.
2015-08-16Kernel: Add more infrastructure to support different memory layoutsYuri Kunde Schlesner
This adds some structures necessary to support multiple memory regions in the future. It also adds support for different system memory types and the new linear heap mapping at 0x30000000.
2015-08-16Move core/mem_map.{cpp,h} => core/hle/kernel/memory.{cpp,h}Yuri Kunde Schlesner
2015-08-16Memory: Move address type conversion routines to memory.cpp/hYuri Kunde Schlesner
These helpers aren't really part of the kernel, and mem_map.cpp/h is going to be moved there next.
2015-08-16Process: Store kernel compatibility version during loadingYuri Kunde Schlesner
2015-08-16Kernel: Properly implement ControlMemory FREE and COMMITYuri Kunde Schlesner
2015-08-16VMManager: Introduce names for used ResultCodesYuri Kunde Schlesner
2015-08-16VMManager: Make LogLayout log level configurable as a parameterYuri Kunde Schlesner
2015-08-16VMManager: Change block offsets to size_tYuri Kunde Schlesner
2015-07-25dyncom: Rename armdefs.h to armstate.hLioncash
2015-07-20Kernel/Scheduling: Clean up a thread's wait_objects when its scheduled.Subv
They'll be reset if needed during the next svcWaitSynchronization call (if there's any pending)
2015-07-17Ensure all kernel objects are released during shutdownYuri Kunde Schlesner
This commit fixes several kernel object leaks. The most severe of them was threads not being removed from the private handle table used for CoreTiming events. This resulted in Threads never being released, which in turn held references to Process, causing CodeSets to never be freed when loading other applications.
2015-07-12Merge pull request #921 from linkmauve/fix-appletbunnei
Fix applet includes using iwyu
2015-07-12Kernel: Add CodeSet case to Object::IsWaitableYuri Kunde Schlesner
2015-07-12Core: Fix applet includes using iwyu.Emmanuel Gil Peyrot
2015-07-11Core: Properly configure address space when loading a binaryYuri Kunde Schlesner
The code now properly configures the process image to match the loaded binary segments (code, rodata, data) instead of just blindly allocating a large chunk of dummy memory.
2015-07-11Kernel: Remove unused member from EventYuri Kunde Schlesner
2015-06-28Core: Cleanup file_sys includes.Emmanuel Gil Peyrot
2015-06-28Core: Cleanup core includes.Emmanuel Gil Peyrot
2015-06-28Common: Cleanup key_map includes.Emmanuel Gil Peyrot
2015-06-22Add helpers to create IPC command buffer headers and descriptorsYuri Kunde Schlesner
2015-06-16kernel: Fix svcWaitSynch to always acquire requested wait objects.bunnei
2015-05-29Merge pull request #810 from yuriks/memmapYuri Kunde Schlesner
Kernel: Add VMManager to manage process address spaces
2015-05-29Remove every trailing whitespace from the project (but externals).Emmanuel Gil Peyrot
2015-05-27Kernel: Add VMManager to manage process address spacesYuri Kunde Schlesner
This enables more dynamic management of the process address space, compared to just directly configuring the page table for major areas. This will serve as the foundation upon which the rest of the Kernel memory management functions will be built.
2015-05-21Kernel: Fix a warning introduced with ResourceLimit, and remove the fallback ↵Emmanuel Gil Peyrot
code to prevent it from happening again.
2015-05-20Kernel: Move reschedules from SVCs to actual mechanisms that reschedule.bunnei
2015-05-18Merge pull request #772 from lioncash/warnbunnei
core/video_core: Fix a few warnings when compiling on MSVC.
2015-05-14Core/ResourceLimits: Implemented the basic structure of ResourceLimits.Subv
Implemented svcs GetResourceLimit, GetResourceLimitCurrentValues and GetResourceLimitLimitValues. Note that the resource limits do not currently keep track of used objects, since we have no way to distinguish between an object created by the application, and an object created by some HLE module once we're inside Kernel::T::Create.
2015-05-15Memmap: Re-organize memory function in two filesYuri Kunde Schlesner
memory.cpp/h contains definitions related to acessing memory and configuring the address space mem_map.cpp/h contains higher-level definitions related to configuring the address space accoording to the kernel and allocating memory.
2015-05-14process: Get rid of warningsLioncash
Sign mismatches and "forcing value to bool" warnings.
2015-05-14thread: Fix a conditional check in RescheduleLioncash
2015-05-11Merge pull request #748 from Subv/tls_maxbunnei
Core/Memory: Add TLS support for creating up to 300 threads
2015-05-11Merge pull request #751 from yuriks/idle-threadbunnei
Thread: Remove the idle thread
2015-05-11Merge pull request #757 from Subv/schedulingbunnei
Core/Scheduling: Prepare the new priority in the thread queue when svcSetPriority is called
2015-05-11Thread: Remove the idle threadYuri Kunde Schlesner
Instead just use nullptr to represent no thread is active.
2015-05-11Core/Memory: Add TLS support for creating up to 300 threadsSubv
2015-05-11Merge pull request #750 from Subv/process_svcYuri Kunde Schlesner
Core/HLE: Implemented the SVCs GetProcessId and GetProcessIdOfThread