Unknown W. Brackets
7055788f0b
Simplify argument passing for mipscalls.
2013-02-02 18:01:34 -08:00
Unknown W. Brackets
14cfb84633
Allow rescheduling in a mipscall, not a callback.
2013-02-02 17:57:44 -08:00
Unknown W. Brackets
31eeb3d50b
Make sceKernelStartModule() do something.
...
Doesn't work right, but gets somewhere?
2013-02-02 16:22:33 -08:00
Unknown W. Brackets
afccf2fc88
Buildfix.
2013-01-28 00:48:59 -08:00
Unknown W. Brackets
aeadc80045
Recover from an interrupt during a callback.
2013-01-27 18:43:38 -08:00
Unknown W. Brackets
dcc9f1ae5f
Always check for more callbacks after running one.
2013-01-27 18:43:12 -08:00
Unknown W. Brackets
54e6a39e74
Optimize callback checking.
...
Since it's checked every resched, it happens a lot.
This could save as much as 1.6% of time.
2013-01-27 17:01:17 -08:00
Unknown W. Brackets
5af5eef908
Refactor thread deletion so it can be consistent.
2013-01-27 16:55:43 -08:00
Unknown W. Brackets
7f4e322266
Cut thread switching time down.
...
Based on profiling release Windows.
Took these funcs from taking 1.6% to 0.5% time.
2013-01-26 11:29:20 -08:00
Unknown W. Brackets
a6094e25ff
Get rid of waitTypeStrings and resched reason copy.
2013-01-26 11:29:20 -08:00
Unknown W. Brackets
1cb7a88137
Don't use a dynamic string for wait debugging.
...
Happens in release, and shows up on the profiler.
Not huge, but should save ~0.5% of cpu time.
2013-01-26 11:29:19 -08:00
KentuckyCompass
9ce1887566
fix a bad format string in a DEBUG_LOG
2013-01-22 06:39:06 -08:00
Unknown W. Brackets
862c88d61a
More warning fixes, switches and printfs, etc.
...
This time ones not reported by Visual Studio.
2013-01-19 18:32:37 -08:00
Unknown W. Brackets
140fd171ef
Fix some 64-bit type conversion warnings.
2013-01-19 13:48:20 -08:00
Unknown W. Brackets
4a56873541
Properly wake semaphores in priority order.
2013-01-18 01:38:13 -08:00
Unknown W. Brackets
dcd3045cd5
Always use -1 for failed allocs in block allocator.
...
Before it used 0 and -1, confusing.
2013-01-18 01:38:12 -08:00
Henrik Rydgård
e23365dfa9
Merge pull request #430 from unknownbrackets/thread-funcs
...
Remove some thread stack hacks that aren't needed.
2013-01-15 23:40:19 -08:00
Unknown W. Brackets
8c07a5c87f
Remove some thread stack hacks that aren't needed.
2013-01-15 19:46:52 -08:00
Henrik Rydgard
3615b36a82
Store fcr0 and fcr31 in context (why was this commented out?)
2013-01-10 12:52:30 +01:00
Henrik Rydgard
789c4781c0
Merge remote-tracking branch 'origin/master' into armjit
...
Conflicts:
Core/HLE/sceKernelThread.cpp
2013-01-09 00:43:44 +01:00
Henrik Rydgard
8c06edc47b
It's getting close to the first totally unoptimized jit run.
2013-01-08 17:03:17 +01:00
Unknown W. Brackets
1f21ea4236
Implement sceKernelReleaseWaitThread().
2013-01-07 19:44:39 -08:00
Unknown W. Brackets
0eb13142aa
Avoid calling thread->getName() in release builds.
...
Profile shows this will save a couple percentage points.
2013-01-07 18:09:26 -08:00
Unknown W. Brackets
138b3a0823
Add warnings to sceKernelCreateThread().
...
Trying to check when it's being misused.
2013-01-07 18:09:23 -08:00
Unknown W. Brackets
ea9e87b355
Correct error codes for sceKernelWaitThreadEnd().
2013-01-07 15:43:37 -08:00
Unknown W. Brackets
3b5d1efd56
Implement timeouts for sceKernelWaitThreadEnd().
2013-01-07 11:11:23 -08:00
Unknown W. Brackets
666ba6ecc3
Properly set thread status on create/term/start.
2013-01-07 10:45:56 -08:00
Unknown W. Brackets
c88ae1e34c
Make sceKernelWaitThreadEnd return the exit status.
...
Also fix the exit status not being recorded properly.
2013-01-07 10:31:19 -08:00
Unknown W. Brackets
5ac7f6a211
Clean up sceKernelWaitThreadEnd() wrappers.
2013-01-07 10:02:11 -08:00
Henrik Rydgard
2f69250fc0
Store fcr0 and fcr31 in context (why was this commented out?)
2013-01-07 13:42:05 +01:00
Unknown W. Brackets
21cfd087e1
Move Action out of Common, don't use savedV0.
...
Compiler error was annoying me anyway.
2013-01-06 15:56:13 -08:00
Unknown W. Brackets
0d8bdfe989
Allow mipscalls to change the return value.
...
At least, seems like mpeg needs this.
2013-01-06 14:58:04 -08:00
Henrik Rydgard
b8eab42add
Add support for a couple of sceIoIoctl commands. Init some vars.
2013-01-06 09:54:43 +01:00
Henrik Rydgard
596dee2871
Turn down log level for sceKernelDelaySysClockThread. Minimum wait time 200.
2013-01-05 23:54:55 +01:00
Henrik Rydgard
9fe592e83a
Implement sceKernelDelaySysClockThreadCB
2013-01-05 23:24:05 +01:00
Henrik Rydgard
b283b915cb
Implement sceKernelReferThreadRunStatus
2013-01-05 23:07:13 +01:00
Henrik Rydgard
6ecf2d235c
Fix integer overflow in scheduling.
2013-01-05 22:44:30 +01:00
Henrik Rydgard
5ba5ceff19
Merge branch 'master' into mediaengine
2013-01-05 16:22:08 +01:00
Arthur Blot
b12bc54dda
Fixed threads/k0 test, updated pspautotests
2013-01-04 17:07:17 +01:00
Arthur Blot
a693081b17
Fixed $k0 overwriting $sp content & stack address
2013-01-04 00:58:36 +01:00
Henrik Rydgard
972e4ea4e4
Warning fixes, prevent a possible (but unlikely) crash
2013-01-02 21:05:00 +01:00
Henrik Rydgård
1ea34bb6e8
Stub out all of VTimer.
2012-12-30 21:30:33 +01:00
Unknown W. Brackets
6f9f9e1c98
Merge branch 'master' into mediaengine.
...
Note: doesn't compile, just fixes conflicts.
Conflicts:
Core/HLE/sceKernel.cpp
Core/HLE/sceKernelThread.cpp
Core/HLE/sceKernelThread.h
2012-12-28 22:32:56 -08:00
Unknown W. Brackets
bcecd881b1
Savestate cleanup + be more careful with vectors.
...
For some reason I debugged it going into std::string so I just made
them all more explicit which fixed everything.
2012-12-28 13:55:31 -08:00
Unknown W. Brackets
4b39e39455
Start save stating the filesystem state.
...
Plus minor fixes and at least an attempt to make states the same
on both 32 and 64 bit.
2012-12-28 13:55:27 -08:00
Unknown W. Brackets
b81899876f
Don't leak MipsCall objects.
2012-12-28 13:55:26 -08:00
Unknown W. Brackets
a8c9c31e16
Add a registry for actions so they can be stated.
...
Also add late loaders to ensure things are hooked up properly.
2012-12-28 13:55:26 -08:00
Unknown W. Brackets
f5dd7f03e8
Change threadqueue and currentThread to be SceUIDs.
...
hmm, kind of a big change. Tried to add some checks to be safe.
2012-12-28 13:55:25 -08:00
Unknown W. Brackets
595759ef78
Implement a factory for kernel objects.
...
Couldn't think of a better way to do this, maybe there's some fancy
one I don't know about.
Also finished up a couple left over kernel objects.
Maybe a quarter the way there?
2012-12-28 13:55:22 -08:00
Unknown W. Brackets
23db819e90
No longer need this forward decl.
2012-12-24 01:42:33 -08:00