| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-08-03 | core/memory: Get rid of 3DS leftovers | Lioncash | |
| Removes leftover code from citra that isn't needed. | |||
| 2018-08-01 | kernel: Move object class to its own source files | Lioncash | |
| General moving to keep kernel object types separate from the direct kernel code. Also essentially a preliminary cleanup before eliminating global kernel state in the kernel code. | |||
| 2018-04-20 | Qt: Update the WaitTree widget to show info about the current mutex of each ↵ | Subv | |
| thread. | |||
| 2018-03-16 | kernel: Move stack region outside of application heap. | bunnei | |
| 2018-01-24 | hle: Remove Domain and SyncObject kernel objects. | bunnei | |
| 2018-01-16 | clang-format | MerryMage | |
| 2018-01-14 | kernel: Increase default stack size to 64K. | bunnei | |
| 2018-01-08 | kernel: Rename Semaphore to ConditionVariable. | bunnei | |
| 2017-12-28 | kernel: Add basic support for Domain object. | bunnei | |
| 2017-08-23 | Merge pull request #2839 from Subv/global_kernel_lock | James Rowe | |
| Kernel/HLE: Use a mutex to synchronize access to the HLE kernel state between the cpu thread and any other possible threads that might touch the kernel (network thread, etc). | |||
| 2017-08-22 | Kernel/HLE: Use a mutex to synchronize access to the HLE kernel state ↵ | Subv | |
| between the cpu thread and any other possible threads that might touch the kernel (network thread, etc). This mutex is acquired in SVC::CallSVC, ie, as soon as the guest application enters the HLE kernel, and should be acquired by the aforementioned threads before modifying kernel structures. | |||
| 2017-08-21 | Warnings: Add UNREACHABLE macros to switches that contemplate all possible ↵ | Subv | |
| values. | |||
| 2017-05-29 | Kernel: Move HandleTable to a separate file | Yuri Kunde Schlesner | |
| 2017-05-29 | Kernel: Move WaitObject to a separate file | Yuri Kunde Schlesner | |
| Now that HandleTable doesn't directly depend on WaitObject anymore, this can be separated from the main kernel.h header. | |||
| 2017-05-29 | Kernel: Removed HandleTable::GetWaitObject | Yuri Kunde Schlesner | |
| This isn't necessary anymore since plain Get works correctly for WaitObjects. | |||
| 2017-05-29 | Kernel: Extract dynamic Object pointer cast into its own function | Yuri Kunde Schlesner | |
| 2017-05-24 | Kernel: Centralize error definitions in errors.h | Yuri Kunde Schlesner | |
| 2017-01-10 | Merge pull request #2397 from Subv/pulse | bunnei | |
| Kernel: Implemented Pulse event and timers. | |||
| 2017-01-05 | Kernel: Implemented Pulse event and timers. | Subv | |
| Closes #1904 | |||
| 2017-01-04 | Kernel/Mutex: Update a mutex priority when a thread stops waiting on it. | Subv | |
| 2017-01-04 | Kernel/Mutex: Implemented priority inheritance. | Subv | |
| The implementation is based on reverse engineering of the 3DS's kernel. A mutex holder's priority will be temporarily boosted to the best priority among any threads that want to acquire any of its held mutexes. When the holder releases the mutex, it's priority will be boosted to the best priority among the threads that want to acquire any of its remaining held mutexes. | |||
| 2017-01-04 | Kernel: Object ShouldWait and Acquire calls now take a thread as a parameter. | Subv | |
| This will be useful when implementing mutex priority inheritance. | |||
| 2016-12-21 | core: Remove HLE module, consolidate code & various cleanups. | bunnei | |
| 2016-12-16 | Merge pull request #2260 from Subv/scheduling | bunnei | |
| Threading: Reworked the way our scheduler works. | |||
| 2016-12-09 | WaitSynch: Removed unused variables and reduced SharedPtr copies. | Subv | |
| Define a variable with the value of the sync timeout error code. Use a boost::flat_map instead of an unordered_map to hold the equivalence of objects and wait indices in a WaitSynchN call. | |||
| 2016-12-05 | Kernel: Remove the Redirection handle type. | Subv | |
| 2016-12-03 | Threading: Reworked the way our scheduler works. | Subv | |
| Threads will now be awakened when the objects they're waiting on are signaled, instead of repeating the WaitSynchronization call every now and then. The scheduler is now called once after every SVC call, and once after a thread is awakened from sleep by its timeout callback. This new implementation is based off reverse-engineering of the real kernel. See https://gist.github.com/Subv/02f29bd9f1e5deb7aceea1e8f019c8f4 for a more detailed description of how the real kernel handles rescheduling. | |||
| 2016-11-30 | Fixed the rebase mistakes. | Subv | |
| 2016-11-30 | fixup! Kernel/IPC: Use Ports and Sessions as the fundamental building block ↵ | Subv | |
| of Inter Process Communication. | |||
| 2016-11-30 | Kernel/IPC: Use Ports and Sessions as the fundamental building block of ↵ | Subv | |
| Inter Process Communication. All handles obtained via srv::GetServiceHandle or svcConnectToPort are references to ClientSessions. Service modules will wait on the counterpart of those ClientSessions (Called ServerSessions) using svcReplyAndReceive or svcWaitSynchronization[1|N], and will be awoken when a SyncRequest is performed. HLE Interfaces are now ClientPorts which override the HandleSyncRequest virtual member function to perform command handling immediately. | |||
| 2016-11-19 | Kernel/Loader: Grab the system mode from the NCCH ExHeader. | Subv | |
| 3dsx and elf files default to system mode 2 (96MB allocated to the application). This allows Home Menu to boot without modifications. Closes #1849 | |||
| 2016-09-22 | move ResetType to kernel.h | wwylele | |
| 2016-09-22 | implement wait tree widget | wwylele | |
| 2016-09-21 | Remove empty newlines in #include blocks. | Emmanuel Gil Peyrot | |
| This makes clang-format useful on those. Also add a bunch of forgotten transitive includes, which otherwise prevented compilation. | |||
| 2016-09-18 | Manually tweak source formatting and then re-run clang-format | Yuri Kunde Schlesner | |
| 2016-09-18 | Sources: Run clang-format on everything. | Emmanuel Gil Peyrot | |
| 2016-06-11 | Kernel/SVC: Implemented svcCreatePort. | Subv | |
| 2016-06-05 | Kernel: Added ClientPort and ServerPort classes. | Subv | |
| This is part of an ongoing effort to implement support for multiple processes. | |||
| 2015-07-12 | Kernel: Add CodeSet case to Object::IsWaitable | Yuri Kunde Schlesner | |
| 2015-07-11 | Core: Properly configure address space when loading a binary | Yuri 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-06-28 | Common: Cleanup key_map includes. | Emmanuel Gil Peyrot | |
| 2015-06-16 | kernel: Fix svcWaitSynch to always acquire requested wait objects. | bunnei | |
| 2015-05-21 | Kernel: Fix a warning introduced with ResourceLimit, and remove the fallback ↵ | Emmanuel Gil Peyrot | |
| code to prevent it from happening again. | |||
| 2015-05-14 | Core/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-08 | Kernel: Remove g_program_id | Yuri Kunde Schlesner | |
| This has been obsoleted by the field in Process. | |||
| 2015-05-08 | Kernel: Introduce skeleton Process class to hold process data | Yuri Kunde Schlesner | |
| 2015-05-07 | Common: Remove common.h | Yuri Kunde Schlesner | |
| 2015-05-06 | Move typedefs from kernel.h to more appropriate places | Yuri Kunde Schlesner | |
| 2015-05-01 | Kernel: Properly initialize and shutdown all modules. | bunnei | |
| 2015-02-12 | Build: Fixed some warnings | Subv | |
