Commit Graph

440 Commits (aae9fcf4a4071a408af10ca1c72180cdc04687b8)
 

Author SHA1 Message Date
bunnei aae9fcf4a4 Kernel: Made SyncRequest not pure virtual, with a default implementation of error (as this is not required for all kernel objects) 2014-06-13 09:51:08 +07:00
bunnei f5c7c15434 Kernel: Added real support for thread and event blocking
- SVC: Added ExitThread support
- SVC: Added SignalEvent support
- Thread: Added WAITTYPE_EVENT for waiting threads for event signals
- Thread: Added support for blocking on other threads to finish (e.g. Thread::Join)
- Thread: Added debug function for printing current threads ready for execution
- Thread: Removed hack/broken thread ready state code from Kernel::Reschedule
- Mutex: Moved WaitCurrentThread from SVC to Mutex::WaitSynchronization
- Event: Added support for blocking threads on event signalling

Kernel: Added missing algorithm #include for use of std::find on non-Windows platforms.
2014-06-13 09:51:02 +07:00
bunnei a002abf171 qt: updated disassembler to show 2X as many instructions 2014-06-05 01:08:54 +07:00
bunnei 174cc9a0ed hle: added a hokey way to force a thread reschedule during CPU single step mode (as used by the debugger) 2014-06-05 00:26:48 +07:00
bunnei 6cdad8390c arm: fixed a bug where ARM_Interpreter::ExecuteInstructions was actually executing one more instruction than expected 2014-06-05 00:25:32 +07:00
bunnei ce1c561278 kernel: changed current default thread priority back to 0x30 - I think this is more correct 2014-06-05 00:20:58 +07:00
bunnei 9ece9da50d arm: fixed bug in how thread context switch occurs with SkyEye 2014-06-05 00:20:11 +07:00
bunnei 870c6146e7 service: added a error log messages for unimplemented WaitSynchronization 2014-06-04 18:50:50 +07:00
bunnei c330a0a1d6 arm: reverting a change made with cb0663de - this has to have been a typo! 2014-06-04 18:41:44 +07:00
bunnei b78aff8585 svc: added optional name field to Event and Mutex (used for debugging) 2014-06-02 20:38:34 +07:00
bunnei 8c0f02a70c kernel: moved position of * for GetTypeName and GetName 2014-06-02 20:36:58 +07:00
bunnei 2773360f84 coprocessor: reenabled debug log 2014-06-02 20:36:34 +07:00
bunnei 477b0caca4 svc: updated WaitSynchronizationN to properly use first pointer argument 2014-06-02 17:54:07 +07:00
bunnei 4819e9a60f svc: changed DuplicateHandle log message from "error" to "debug" 2014-06-01 22:33:53 +07:00
bunnei 3fb31fbc57 svc: added GetThreadPriority and SetThreadPriority, added (incomplete) DuplicateHandle support 2014-06-01 22:12:54 +07:00
bunnei 10447d1f48 kernel: changed main thread priority to default, updated Kernel::Reschedule to use PrepareReschedule 2014-06-01 21:42:50 +07:00
bunnei e8a17ee6fd arm: added option to prepare CPU core (while mid-instruction) for thread reschedule 2014-06-01 21:40:10 +07:00
bunnei 15c7d81706 svc: cleaned up function_wrappers, updated various SVCs to make use of pointer arguments 2014-06-01 20:48:29 +07:00
bunnei 00adbc7817 log: updated MAX_LOGLEVEL to use correct log level enum type 2014-06-01 11:49:58 +07:00
bunnei 5cd922d151 log: updated GenericLog __attribute__ for newly added parameter 2014-06-01 11:05:48 +07:00
bunnei 2f55c9e55b svc: added missing function wrapper for SleepThread 2014-06-01 10:41:41 +07:00
bunnei 7dd18a8df9 gsp: always pass through synchronization barrier for commands 2014-06-01 10:41:23 +07:00
bunnei f2f638492b svc: updated waitSychronization to not overwrite handle on return, added stub for SleepThread (does nothing) 2014-06-01 10:37:19 +07:00
bunnei ba98e25e97 thread: updated Reschedule to sit at a synchronization barrier when no other threads are ready for execution 2014-06-01 10:35:42 +07:00
bunnei f7cececc5c event: added a hackish ability to set an event as "locked" to its current state, cleaned up some comments 2014-06-01 10:33:55 +07:00
bunnei 55325dea4c hle: added stubbed service for ndm_u 2014-05-30 00:24:04 +07:00
bunnei c451ad2835 service: cleaned up log messages 2014-05-30 00:22:39 +07:00
bunnei 2482be13df service: removed PT_A from, as this was just an alias for APT_U 2014-05-30 00:22:25 +07:00
bunnei 007b7edada srv: fix to log unimplemented service (instead of crash) 2014-05-29 23:54:09 +07:00
bunnei d8a2c8c657 mutex: fixed typo in ReleaseMutex 2014-05-29 23:31:01 +07:00
bunnei c404d22036 hle: cleaned up log messages 2014-05-29 23:26:58 +07:00
bunnei b0bad47c0e svc: updated OutputDebugString to use OS_LOG 2014-05-29 23:04:18 +07:00
bunnei 55a540eb02 arm: removed unnecessary code when calling SVC from skyeye 2014-05-29 23:03:47 +07:00
bunnei 6fc62f8c93 log: fixed to not print twice, enabled coloring, added OS print logging as its own type 2014-05-29 23:03:03 +07:00
bunnei 9839f3b6cd core: changed time delay before kernel reschedule to "approximate" a screen refresh 2014-05-29 20:30:17 +07:00
bunnei 6d267142ad svc: changed unimplemented SVC log messages from "debug" messages to "error" messages 2014-05-29 20:26:27 +07:00
bunnei 58af0da792 svc: added svcClearEvent, stubbed function for svcArbitrateAddress, and various fixes
- force kernel reschedule after svcWaitSynchronization
- fixed some bugs with passing in pointer arguments
- cleaned up some comments and log messages
2014-05-29 20:24:51 +07:00
bunnei d51c84dde2 event: added support for ClearEvent, fixed a bug with CreateEvent, fixed some comments 2014-05-29 20:00:44 +07:00
bunnei 545e6919ce service: added additional hack to return success on unimplemented service calls 2014-05-29 18:54:59 +07:00
bunnei b08b3c154f srv: changed a NOTICE_LOG to DEBUG_LOG 2014-05-29 18:53:45 +07:00
bunnei e7202e5b2d svc: added ArbitrationType enumeration 2014-05-29 18:52:57 +07:00
bunnei 4b4a6de1d8 apt: added stubbed function for InquireNotification 2014-05-28 23:33:24 +07:00
bunnei c4b5168b45 hle: properly cast 64-bit function wrapper parameters to (u64) 2014-05-28 22:03:10 +07:00
bunnei 9fd5d6c7d8 hle: removed PARAM64 macro (this was incorrect), made several bug fixes accordingly for decoding U64 function parameters 2014-05-28 21:20:00 +07:00
bunnei 46aef01d04 lcd: moved kFrameTicks to lcd.h for use in other modules 2014-05-28 21:19:13 +07:00
bunnei 70af9d620b service: changed interface to return 0 (no error) when a service method is unimplemented - hack to make apps boot further 2014-05-28 18:39:28 +07:00
bunnei 3972d4ca8b APT_U: added stubbed function for APT_U::Enable, fixed some log messages to be more consistent 2014-05-27 23:56:08 +07:00
bunnei 2ed6652f10 mutex: added preliminary SyncRequest/WaitSynchronization, added some comments/assertions 2014-05-27 22:42:16 +07:00
bunnei 47e781e80a svc: implemented WaitSynchronization1, WaitSynchronizationN, and CreateEvent 2014-05-27 22:41:09 +07:00
bunnei 94b30e8a38 APT_U: added event creation to Initialize method 2014-05-27 22:29:11 +07:00