Commit Graph

2067 Commits

Author SHA1 Message Date
Henrik Rydgård
34f9947ad0 Merge pull request #3606 from unknownbrackets/callbacks
Wait func docs, sceKernelCreateCallback() cleanup, small refactor
2013-09-04 01:55:28 -07:00
Unknown W. Brackets
a8f100c94f Add vblank wait callback handlers.
Turns out it's a deadline to wake up by, which makes sense.

sceDisplayWaitVblankStartMultiCB 10
   -> Callback
      sceDisplayWaitVblankStartMultiCB 2
      +2 vblanks
   <- Thread
+8 more vblanks
2013-09-03 23:35:39 -07:00
Unknown W. Brackets
7f1a6154b2 Check if vblank waits were released before waking. 2013-09-03 23:26:23 -07:00
Unknown W. Brackets
543df7ca7a Refactor wait timeouts.
Also, make them not write the timeout ptr if the thread stopped waiting.
Feels safer.
2013-09-03 22:32:22 -07:00
Unknown W. Brackets
2a7e9a5afc Cleanup sceKernelCreateCallback().
And tweak sceKernelReferCallbackStatus().
2013-09-03 22:18:15 -07:00
Unknown W. Brackets
e53e842b3b Add some documentation to KernelWaitHelpers. 2013-09-03 22:16:24 -07:00
shenweip
f74aa2913e Typo 2013-09-04 11:35:16 +08:00
shenweip
c05100e0e3 Add sceHeap,some games will call this.
e.g. Linear ModeSenritsu no Stratus
2013-09-04 11:05:14 +08:00
Unknown W. Brackets
4ac0f7a345 Handle it better when umd waits trigger during cbs. 2013-09-03 01:21:52 -07:00
Unknown W. Brackets
b20bb3b609 Refactor down the begin/end callback stuff. 2013-09-03 01:21:52 -07:00
Unknown W. Brackets
1bf974aff6 Implement VPL/FPL callback handlers.
Smells like time to refactor, there are less differences than I expected.
2013-09-03 01:21:51 -07:00
Unknown W. Brackets
3903f27dfd Add handlers for callbacks during mbx waits. 2013-09-03 01:21:51 -07:00
Unknown W. Brackets
648dd5f154 Don't allow sceKernelWakeupThread() on cur thread.
I don't know why you wouldn't allow this, but the PSP firmware doesn't.
2013-09-03 01:21:50 -07:00
Unknown W. Brackets
722b878428 Fix sceKernelReferThreadRunStatus() layout.
Was missing size, so all fields were wrong.
2013-09-03 01:21:50 -07:00
Unknown W. Brackets
8bf1ef2616 Add handlers for delay and sleep callbacks. 2013-09-03 01:21:49 -07:00
Unknown W. Brackets
6e5426a528 Spend a lot less time calculating the hcount.
Tiny loss in precision, can't even notice.  Cuts time significantly in
Valkyrie Profile.
2013-09-03 00:50:21 -07:00
Unknown W. Brackets
994e2b3e5c Implement sceDisplayAdjustAccumulatedHcount().
And also make sure sceDisplayGetAccumulatedHcount() works right.
2013-09-03 00:50:20 -07:00
Unknown W. Brackets
db0c35a86d Start the Hcount at the beginning of vblank. 2013-09-03 00:49:17 -07:00
Henrik Rydgard
9dcd67fc31 Pass the new sha1/md5 test. 2013-09-03 00:36:55 +02:00
Unknown W. Brackets
2a478c26ca Fix mp3 bit rate info in sceMp3GetBitRate(). 2013-09-01 17:22:19 -07:00
Unknown W. Brackets
fe1f4d53c6 Return an error on bad SAS sample rate.
Also reorder the types to fit the PSP's flag values.
2013-09-01 16:59:37 -07:00
Unknown W. Brackets
8998a1b303 Don't trash a list the GE interrupt handler needs.
Even after it's marked COMPLETED, the CPU needs it to start and finish the
interrupt.  Fixes #2956, where an existing completed list was not having
its interrupt run correctly.
2013-09-01 12:39:45 -07:00
Unknown W. Brackets
7349de55d1 Fix some initialization/sprintf warnings. 2013-09-01 01:15:07 -07:00
Unknown W. Brackets
a05c78f8fc Keep unknown syscall reporting the same.
Oops.
2013-09-01 00:46:48 -07:00
Unknown W. Brackets
da0c9a86e5 Invalidate stubs/var imports when writing them. 2013-09-01 00:32:43 -07:00
Unknown W. Brackets
00412144c1 Get rid of the bad object errors on shutdown. 2013-08-31 18:45:05 -07:00
Unknown W. Brackets
842e972a36 Unresolve function imports, track in loader. 2013-08-31 18:45:05 -07:00
Unknown W. Brackets
dde39bd956 Optimize a bit by checking module names. 2013-08-31 17:45:17 -07:00
Unknown W. Brackets
33e001f017 Unexport var symbols when destroying modules.
The problem with a global list is that an unloaded module with unresolved
imports will get garbage written in.  This should be safer, and hopefully
not slower.

Next up: func imports.
2013-08-31 17:31:30 -07:00
Unknown W. Brackets
9311d405e9 Centralize and track imports/exports.
So that we can "unresolve" them.
2013-08-31 17:00:08 -07:00
Henrik Rydgård
42ec8bc3ef Merge pull request #3537 from unknownbrackets/utility-minor
Return wrong dialog type in screenshot/gamesharing
2013-08-31 14:44:35 -07:00
Unknown W. Brackets
08225cad23 Return wrong dialog type in screenshot/gamesharing.
Should at least reduce reports of these failing, and give us better info.
May also work more correctly.
2013-08-31 14:42:55 -07:00
Unknown W. Brackets
74a7376604 Add some reporting and fix some duplicates. 2013-08-31 13:55:51 -07:00
kaienfr
a8557ab839 Fix the crash of game "tiger x dragon" 2013-08-31 21:35:24 +02:00
Henrik Rydgard
67edc28aa5 Add reporting for some configurable systemparams that don't seem very interesting to keep 2013-08-30 23:06:21 +02:00
Henrik Rydgard
0d0b43818c Warning fixes and stuff 2013-08-30 20:14:16 +02:00
Unknown W. Brackets
0d0d036522 Clean up MAC address conversion in HLE.
Not planning to implement net, but this fixes a potential crash / buffer
overflow, and implements a commonly reported unimplemented function.
2013-08-29 23:47:03 -07:00
papel
d22e555e4f Fix volume and name of Latin American languages. 2013-08-29 13:25:29 -03:00
CPkmn
47ae4709ba Update sceKernelModule.cpp 2013-08-29 01:26:54 -07:00
Unknown W. Brackets
15a0f39fa1 Return yet more errors while inside interrupts. 2013-08-28 23:15:13 -07:00
Unknown W. Brackets
686d893d5c Return more correct errors inside interrupts. 2013-08-28 22:35:06 -07:00
Unknown W. Brackets
211c2bd955 Refuse a few more waits w/ dispatch/intr disabled. 2013-08-28 22:35:05 -07:00
Unknown W. Brackets
8f25829b06 Change sceAudioOutput* unreseved ch errors.
Tests show it should be this other error code.
2013-08-28 22:35:05 -07:00
Unknown W. Brackets
17a5a42a14 Disable some common waits inside interrupts. 2013-08-27 23:55:37 -07:00
Unknown W. Brackets
61fae4e920 Return proper errors while dispatch disabled.
In at least the majority of waits.
2013-08-27 23:55:37 -07:00
Unknown W. Brackets
252bf04c64 sceKernelDelaySysClockThread() cleanup.
It doesn't wait either of course.
2013-08-27 23:55:35 -07:00
Unknown W. Brackets
93b461774a Disable common wait funcs while intr disabled.
Per PSP tests.
2013-08-27 23:55:35 -07:00
Unknown W. Brackets
130f664030 Oops, disabling a subintr did not work. 2013-08-27 23:55:34 -07:00
Unknown W. Brackets
9aaad39b46 Disable sceKernelDelayThread() w/intr disabled.
But automatically resume the dispatch thread if only it is disabled.
2013-08-27 23:55:34 -07:00
Unknown W. Brackets
1c51564896 Stop practicing thread necromancy. 2013-08-27 23:55:34 -07:00