Unknown W. Brackets
72921e0a3c
If the mipscall id doesn't match, don't create.
...
Fixes a crash when savestating.
2013-03-31 12:09:59 -07:00
Unknown W. Brackets
2a9c640739
When starting a thread, put old thread at end.
...
This matters so the right thread is run later when scheduling switches
back.
2013-03-31 09:45:41 -07:00
Unknown W. Brackets
fe60677f75
Make mutexes handle callbacks better + before.
...
Mutex and semaphores (but NOT lwmutexes) call callbacks before attempting
the lock, but only if it would not generate errors.
Have not yet tested other wait types.
2013-03-30 16:12:38 -07:00
Unknown W. Brackets
eace0e75c1
sceKernelWaitSemaCB() should run callbacks first.
...
Patapon 2 gets back to the menu with this.
2013-03-30 16:12:38 -07:00
Unknown W. Brackets
d2abdf17be
Add a waittype registry to handle callbacks right.
2013-03-30 16:12:37 -07:00
Unknown W. Brackets
e4223dbcb0
Simplify adding report messages, add a bunch more.
2013-03-26 00:54:00 -07:00
Unknown W. Brackets
f89358d6ff
Add some reporting in other thread functions.
2013-03-26 00:39:18 -07:00
Unknown W. Brackets
480c5c3e31
Add some reporting for broken callback situations.
2013-03-26 00:36:46 -07:00
Unknown W. Brackets
276037675f
Prevent waiting on semas while dispatch disabled.
...
Does relatively well on tests this way.
2013-03-24 23:30:32 -07:00
Unknown W. Brackets
783df9f0c3
sceKernelResumeDispatchThread() always returns 0.
2013-03-24 20:53:51 -07:00
Unknown W. Brackets
64445e0c8d
Resume dispatch on thread start.
2013-03-24 20:52:18 -07:00
Unknown W. Brackets
c9e1b01545
Don't reschedule while interrupts are disabled.
2013-03-24 19:43:56 -07:00
Unknown W. Brackets
b2fd023038
Fix return value of sceKernelSuspendDispatchThread.
2013-03-24 19:30:17 -07:00
Henrik Rydgard
84d292010a
Oops, sceKernelCheckThreadStack was already implemented. Let's hope both copies are the same.
2013-03-23 14:41:13 +01:00
Henrik Rydgard
6a4ae5bb51
Implement sceKernelCheckThreadStack
2013-03-23 14:26:54 +01:00
Unknown W. Brackets
2500910d72
Fix dumb typo in sceKernelRotateThreadReadyQueue().
2013-03-20 14:11:13 -07:00
Unknown W. Brackets
96f2d860e4
Revert thread optimization, appears to have broken things.
...
Fixes #1033 .
This reverts commit ea91632ff5 and
commit 543dfcd4d8 .
2013-03-20 14:10:20 -07:00
Unknown W. Brackets
ea91632ff5
Allow the thread ready queue to shrink, simplify.
2013-03-20 08:11:24 -07:00
Unknown W. Brackets
cd8e0e675c
Small optimization to sceKernelRotateThreadReadyQueue().
2013-03-20 00:06:19 -07:00
Unknown W. Brackets
543dfcd4d8
Optimize thread ready queue pop_front().
2013-03-19 23:51:40 -07:00
Unknown W. Brackets
14e065cbb2
Avoid dynamic_cast() for threads where possible.
...
It's reasonable to trust currentThread and threadReadyQueue, and these eat
a few percentage points of time.
2013-03-16 11:17:44 -07:00
Unknown W. Brackets
d8dd889bfd
Couple more minor warning fixes.
2013-03-15 08:19:02 -07:00
Unknown W. Brackets
6e54ce5551
Fix some minor warnings.
2013-03-15 00:45:47 -07:00
Unknown W. Brackets
acd7e1b6af
Handle dispatch suspend/resume slightly better.
2013-03-13 23:49:39 -07:00
Unknown W. Brackets
0b9c248856
Reschedule in sceIoLseek() etc.
...
Also make it so we can return u64s easily in places...
2013-03-11 02:50:32 -07:00