Commit Graph

97 Commits

Author SHA1 Message Date
bunnei
7c0b006076 thread: removed unused SwitchContext/Reschedule reason field, added missing arg parameter to SVC CreateThread 2014-05-22 19:32:45 -04:00
bunnei
d26f3d4c1f kernel: refactored function naming to remove "__" prefix 2014-05-22 19:06:12 -04:00
bunnei
14bd37c5dc thread: moved ThreadStatus/WaitType to header, added support for arg on CreateThread, added correct CPSR reset 2014-05-22 18:50:36 -04:00
bunnei
9fddba6843 APT_U: added a debug log on calling GetLockHandle 2014-05-22 18:48:14 -04:00
bunnei
6a78be5930 thread: fixed bug where result of __NextThread was not being properly checked when NULL 2014-05-21 21:42:18 -04:00
bunnei
06e3c3d55a svc: added Kernel::Reschedule to svc WaitSynchronization1, updated log messages to include newly created handles 2014-05-21 21:41:40 -04:00
bunnei
706584f007 svc: enabled use of newly created kernel thread handle 2014-05-20 23:36:35 -04:00
bunnei
eb537c560a mutex: refactored the interface to code to return a Mutex* handle 2014-05-20 23:23:58 -04:00
bunnei
978e1d4653 mutex: initial commit of HLE module 2014-05-20 23:03:45 -04:00
bunnei
08e6a9bf89 svc: added some comments 2014-05-20 22:57:54 -04:00
bunnei
1c5802c35a kernel: fixed include, in general include "common.h" not "common_types.h" 2014-05-20 22:27:46 -04:00
bunnei
9bf7ce535a service: removed redundant include of common_types.h 2014-05-20 22:27:12 -04:00
bunnei
203541da11 thread: added correct lowest thread priority, added a thread priority check, and added some comments 2014-05-20 21:02:35 -04:00
bunnei
bed4e920fa thread: exposed ResumeThreadFromWait function for use in other kernel modules 2014-05-20 21:00:10 -04:00
bunnei
75c6d2a8fa thread: moved threading calls to the Kernel namespace 2014-05-20 19:37:46 -04:00
bunnei
49dc2ce8ac ARM_Interface: added SaveContext and LoadContext functions for HLE thread switching 2014-05-20 18:50:16 -04:00
bunnei
143bba2045 renamed "syscall" module to "svc" (more accurate naming) 2014-05-20 18:28:38 -04:00
bunnei
f654a03f1f thread: whitespace change - fixed * and & placement 2014-05-20 18:20:35 -04:00
bunnei
44336329ed - created a Kernel namespace
- cleaned up Kernel code a bit (moved stuff into namespace, fixed whitespace issues)
- added handle types for all different CTROS handles
2014-05-20 18:13:25 -04:00
bunnei
0886dc70ed apt: changed stubbed handle to be something other than 0xDEADBEEF (used as a magic value in other places) so that I can track how it propagates through the app code 2014-05-19 22:21:17 -04:00
bunnei
f5a119a367 thread: added declaration for __KernelReschedule to be used by syscall module 2014-05-19 22:19:48 -04:00
bunnei
088a2de9a6 renamed "session" to "handle" 2014-05-18 22:24:26 -04:00
bunnei
112904b832 - renamed NewHandle to CreateHandle
- updated CreateHandle/DeleteHandle to use KernelObject's
2014-05-18 22:09:08 -04:00
bunnei
16d55842c5 fix warning 2014-05-18 21:43:41 -04:00
bunnei
eab6fd01d7 - updated service(s) to be KernelObject's
- various cleanups
2014-05-18 21:43:29 -04:00
bunnei
725d240bf7 renamed "UID" to "Handle" where appropriate 2014-05-18 18:24:24 -04:00
bunnei
772abad778 - moved Handle/Result definitions to kernel.h
- added ResetType enum
2014-05-18 18:12:29 -04:00
bunnei
8fba88d5d5 - added stub for CreateEvent
- changed some stubbed SVCs to return unique handle names for debugging purposes
2014-05-18 17:52:02 -04:00
bunnei
6a6c7eeccb added stubbed function for WaitSynchronizationN 2014-05-17 23:37:25 -04:00
bunnei
09b8e8fb6a changed a comment 2014-05-17 13:47:55 -04:00
bunnei
cfea5fdd58 cleanups to SVC CreateThread 2014-05-17 13:47:44 -04:00
bunnei
14ae026386 - added enum ThreadProcessorId
- reorganized some kernel thread functions
- added placeholder __KernelWaitThread_Synchronization function
2014-05-17 00:56:00 -04:00
bunnei
7cdb705059 - replaced KERNELOBJECT_MAX_NAME_LENGTH with KERNEL_MAX_NAME_LENGTH
- added KERNEL_DEFAULT_STACK_SIZE definition (0x4000)
2014-05-16 23:48:15 -04:00
bunnei
39ee75fc8d added stubbed GetProcSemaphore - does nothing but avoids an exception 2014-05-16 23:25:16 -04:00
bunnei
540a693eae updated APT_U::GetLockHandle to return a valid handle 2014-05-16 23:23:56 -04:00
bunnei
0b1ba2f37a Merge master into threading to add support for VFP 2014-05-16 22:24:34 -04:00
bunnei
145a91f21f - reenabled MCR and MRC functions now that VFP is attached
- removed HLE::CallMCR function (was pointless)
2014-05-16 20:52:46 -04:00
bunnei
4fba4f36bf - added SVC stubs for QueryMemory and GetThreadId
- added SVC structs MemoryInfo and PageInfo
2014-05-15 20:17:30 -04:00
bunnei
940330c6e1 completely gutted/refactored threading code to be simpler 2014-05-15 18:27:08 -04:00
bunnei
a7cc430aa4 changed "UID" to "Handle" to be a little more consistent with CTR naming 2014-05-15 18:26:28 -04:00
bunnei
367d63691f - added ThreadContext struct
- cleaned up CreateThread svc
2014-05-15 18:25:56 -04:00
bunnei
b99a5da65b - added helper function for __KernelCreateThread
- added __KernelSwitchToThread for enabling a thread
- added __KernelRotateThreadReadyQueue
2014-05-14 20:50:30 -04:00
bunnei
9f5588725c changed primary thread priority to 0x30 - this is typical, not 0x31 2014-05-14 20:49:27 -04:00
bunnei
4d7f3c74fd added function stubs for EatCycles and ReSchedule 2014-05-14 20:49:02 -04:00
bunnei
0de78eb3c4 fixed thread reset to not set stack address 2014-05-13 23:18:28 -04:00
bunnei
7d078189da various cleanups / remove unused code 2014-05-13 22:29:31 -04:00
bunnei
3838d46b90 added a bunch of threading code, recycled from PPSSPP, with lots of hacks in for 3DS... doesn't really do much yet. Just a jumping off point 2014-05-13 22:00:11 -04:00
bunnei
b5ef630c9c added CreateThread, CreateMutex, and ReleaseMutex SVC stubs (just parameter decoding for now) 2014-05-13 21:58:26 -04:00
bunnei
1583d2b6f3 - added __KernelLoadExec function
- fixed some logging
2014-05-13 21:57:12 -04:00
bunnei
6b264518a5 added initial kernel/thread modules 2014-05-09 22:11:18 -04:00