jak-project/game/system
Ziemas f8bc883d48
Implement scheduling of IOP threads. (#1689)
* Use sleepthread in RPC loop

* Keep a pointer to current IOP thread

* Implement IOP thread scheduling based on priority

And implement DelayThread as an actual delay.

* Run IOP flat out

* Use information from scheduler in wait_run_iop

* Lock sif mutex in set_rpc_queue

* always use kernel dispatch with wait_run

* Loop in dispatch until no thread is ready

* Use timestamp for next wakeup

instead of duration

* Wrap IOP thread entrypoints for safety

Libco threads are not supposed to return from their entrypoint

* Use a queue for IOP thread wakeups from EE thread
2022-07-26 21:15:37 -04:00
..
vm [ckernel] split by game version (#1559) 2022-06-26 18:17:11 -04:00
Deci2Server.cpp [jak2] goalc supports multiple projects (#1619) 2022-07-06 21:18:08 -04:00
Deci2Server.h [jak2] goalc supports multiple projects (#1619) 2022-07-06 21:18:08 -04:00
deci_common.h [ckernel] split by game version (#1559) 2022-06-26 18:17:11 -04:00
IOP_Kernel.cpp Implement scheduling of IOP threads. (#1689) 2022-07-26 21:15:37 -04:00
IOP_Kernel.h Implement scheduling of IOP threads. (#1689) 2022-07-26 21:15:37 -04:00
iop_thread.cpp Implement scheduling of IOP threads. (#1689) 2022-07-26 21:15:37 -04:00
iop_thread.h Implement scheduling of IOP threads. (#1689) 2022-07-26 21:15:37 -04:00
newpad.cpp glfw, game: add rumble support (#1605) 2022-07-05 12:14:57 -04:00
newpad.h glfw, game: add rumble support (#1605) 2022-07-05 12:14:57 -04:00
SystemThread.cpp Set thread names of system threads (#1697) 2022-07-23 10:27:42 -04:00
SystemThread.h lint: add include sorting config to clang-format (#1517) 2022-06-22 23:37:46 -04:00