Commit Graph
6223 Commits
Author SHA1 Message Date
Unknown W. Brackets 87b3a7e566 Avoid overly long lags, recover if system too slow.
This will recover better if the system took too long.  Also, fixes #6415
by never waiting too long.
2014-06-24 08:27:21 -07:00
Unknown W. Brackets 3ba78c865e Fix low-level atrac3/atrac3+ decoding.
Fixes #6400.
2014-06-24 01:18:00 -07:00
Unknown W. Brackets 412eee0bd9 Wake good pri threads immediately from timeouts. 2014-06-24 00:49:36 -07:00
Unknown W. Brackets 4626e63294 Wake good pri threads immediately from delays. 2014-06-24 00:45:38 -07:00
Unknown W. Brackets 610ada8721 Wake good pri threads immediately from io waits. 2014-06-24 00:45:26 -07:00
Unknown W. Brackets 8e80bd3928 Wake good pri threads immediately from vblank wait. 2014-06-24 00:45:08 -07:00
Unknown W. Brackets bacae6106b Wake good pri threads immediately from ctrl waits. 2014-06-24 00:44:40 -07:00
Unknown W. Brackets d8cff4509e Wake good pri threads immediately from audio. 2014-06-24 00:44:35 -07:00
Unknown W. Brackets 6c4a614205 Wake good pri threads immediately from HLE delays. 2014-06-24 00:44:02 -07:00
Unknown W. Brackets 118736ff75 Don't eat extra cycles when idling.
Rescheduling between threads takes about 3000 cycles, but that's not true
for both sides of e.g. a delay.

Fixes #6409 (assuming 60fps is what a PSP gets.)
2014-06-23 23:02:46 -07:00
Henrik Rydgard ae09b521c3 Logging reductions 2014-06-23 20:05:12 +02:00
Unknown W. Brackets ec94498342 When scanning or relocating, check replacements.
Just to make sure we don't wrongly detect the length or unresolve a var
wrong etc.
2014-06-23 08:18:56 -07:00
Henrik Rydgård 5436d2f935 Merge pull request #6403 from unknownbrackets/sched-cycles
Eat cycles when context switching and delaying
2014-06-23 08:34:28 +02:00
Unknown W. Brackets 17496330ce Don't wake a killed list in ge callback end.
Fixes #3198, some homebrew demos locking up.
2014-06-22 23:21:10 -07:00
Unknown W. Brackets 633120b895 Fix a crash on read from stdin.
Found in a homebrew demo.
2014-06-22 23:18:39 -07:00
Unknown W. Brackets 5e8716f9cc Adjust strlen() cycle approximation.
The hashed implementations take several cycles per character.
2014-06-22 23:18:06 -07:00
Unknown W. Brackets c1e293fe7c Fix a warning on 32-bit that might be bad... 2014-06-22 22:17:48 -07:00
Unknown W. Brackets 392edb4f84 Eat some cycles when switching threads.
There's a cost and it seems to be at least this much.  Matters for
Wipeout Pure when callbacks are allowed to wait.
2014-06-22 22:17:47 -07:00
Unknown W. Brackets e8803c4e9b Improve sceKernelDelayThread() timing.
A delay of 0 never reschedules, actually, unless there's a better priority
thread.  A greater delay depends on if a >= or similar check matches, but
generally is at least 200us.

It seems like this actually completes in at least another 10-20us.
2014-06-22 19:47:54 -07:00
Unknown W. Brackets 8851fc1685 Remove savedIdRegister/MIPS_CALL_ID.
We've never trusted it anyway, simpler without dealing with this stuff.
2014-06-22 11:29:47 -07:00
Henrik Rydgard cefc0bc96f Play the game's SND0.AT3 when a game is selected in the menu and on the "game screen". 2014-06-22 17:02:04 +02:00
Henrik Rydgard 1d0cc3417c Audio stuff: Cleanup, delete dead code 2014-06-22 14:01:23 +02:00
Henrik Rydgard 2236b3a52b sceAtrac3 minor cleanup: Get rid of mutable globals, add another sanity check with reporting 2014-06-22 10:42:27 +02:00
Henrik Rydgård b5435260b0 Merge pull request #6389 from unknownbrackets/intrman
Correct error codes and dup checks in inter registration
2014-06-22 08:54:40 +02:00
Unknown W. Brackets 3498b33033 Allow sub interrupts to be enabled before register.
Could've caused interrupts, primarily vblanks, not to run because we
implicitly disabled them on register.
2014-06-21 21:43:44 -07:00
Unknown W. Brackets 87ee0bc650 Return error codes in register/release subintr.
This checks for duplicate registrations and other thigns that could've
been causing wrong behavior.
2014-06-21 21:27:58 -07:00
sum2012 f3826bc608 Further add a codecType check 2014-06-22 06:49:02 +08:00
Henrik Rydgård 0fee05d945 Merge pull request #6369 from thedax/reschedule
sceDisplayGetVcount should apparently reschedule. Fixes #3234.
2014-06-21 21:15:53 +02:00
Unknown W. Brackets de2a3834e0 Abuse esBuffer to track the vid/aud stream id. 2014-06-21 09:27:39 -07:00
Henrik Rydgård 42e28b0c75 Merge pull request #6381 from sum2012/sceAtrac
Add a codecType check in sceAtracSetHalfwayBufferAndGetID
2014-06-21 13:33:04 +02:00
sum2012 6fe74d938e Change to report 2014-06-21 08:00:16 +08:00
sum2012 846eda836f Add a codecType check in sceAtracSetHalfwayBufferAndGetID
Fix crash in #6363
2014-06-21 05:44:29 +08:00
Unknown W. Brackets ae13d51cef Don't skip the first psmf frame when syncing audio.
Fixes #6374.
2014-06-20 09:07:18 -07:00
Unknown W. Brackets 9efbc2694b Add an invalidate all method to the jit. 2014-06-19 01:13:06 -07:00
Unknown W. Brackets 5f4a0d8174 Fix a few minor warnings. 2014-06-19 00:47:58 -07:00
The Dax eb94587391 sceDisplayGetVcount should apparently reschedule. Fixes #3234. 2014-06-18 19:35:16 -04:00
Unknown W. Brackets 913914a4c1 Fix some type conversion warnings. 2014-06-15 10:01:54 -07:00
Henrik Rydgard 4e6baaf360 wasPaused int->bool 2014-06-15 00:03:55 +02:00
Henrik Rydgard 3b2fed472e Correct timing on resume, avoids small speed burst when resuming gameplay from pause 2014-06-14 23:56:16 +02:00
Unknown W. Brackets 03f86f364f Skip debug stepping time in list/func time.
Just makes the debug stats actually useful while stepping.  A bit of
overengineering, but it makes it easy to go frame-by-frame looking for
perf issues.
2014-06-14 08:42:18 -07:00
Henrik Rydgård cb6aa5a708 Merge pull request #6305 from unknownbrackets/resched
Reschedule after many cases of eating cycles
2014-06-13 20:46:51 +02:00
Unknown W. Brackets aa6355a9e5 Reschedule after many cases of eating cycles.
All of these eat enough cycles they could cause issues in a loop, and I'm
pretty sure they would reschedule.
2014-06-13 00:30:21 -07:00
Unknown W. Brackets c29062de9f Add memory breakpoints on sceIo read/write. 2014-06-12 00:42:25 -07:00
Unknown W. Brackets dd4b191003 Correct Gods Eater Burst tex download size.
Probably takes care of #6289, although it doesn't crash for me.
2014-06-10 22:59:08 -07:00
Sacha c745072b55 Update Symbian to GCC 4.8.3 2014-06-11 03:10:50 +10:00
Sacha 37b7667038 Remove some unnecessary #ifdef's relating to Symbian. 2014-06-10 23:06:00 +10:00
Henrik Rydgard d6b51d4dfa Reduce some excessive logging 2014-06-09 19:40:05 +02:00
Unknown W. Brackets a926b19c03 Hook Tales of Phantasia X save pictures.
Maybe other games will use the same func even.  This makes save pictures
work correctly the first time.
2014-06-08 16:38:43 -07:00
Henrik Rydgard a31194a877 Add some sanity checks when looking up syscalls.
This may avoid crashing the emu when it starts executing junk (still not good of course, heh).
2014-06-08 13:03:03 +02:00
sum2012 cfa0e752e1 Fix Replace_memcpy crash
Fix Replace_memcpy crash in #5496
2014-06-08 01:01:47 +08:00