Commit Graph

1937 Commits

Author SHA1 Message Date
Henrik Rydgard
664d74a9b7 Another frameskipping attempt. Now: 0=no frameskip, 1=auto frameskipt, 2-9=fixed frameskip.
There is still some flicker remaining in non-buffered rendering that I can't seem to get rid off.
2013-08-16 01:00:26 +02:00
Unknown W. Brackets
83bc12ea08 Reschedule in sceKernelReferThreadStatus().
It's often called in loops waiting for a thread to wake up.

Fixes .hack//Link's sluggish performance.
2013-08-15 07:56:35 -07:00
raven02
94ded4c00c Break fix title CG missing in Midlight club 3 2013-08-15 21:58:18 +08:00
Unknown W. Brackets
846178a588 Optimize thread switching a bit.
~2.5% improvement in Zettai Hero Project (while multithreading.)
2013-08-15 01:26:16 -07:00
Unknown W. Brackets
0d5c66676d Correct result of sceKernelGetThreadExitStatus(0).
Fixes Zettai Hero Project's options menu.
2013-08-14 23:58:23 -07:00
Henrik Rydgard
c41540d108 Remove checks the check whether the framebuffer already was set, shouldn't have any effect really 2013-08-14 17:54:58 +02:00
Henrik Rydgård
ebb2aba2e0 Merge pull request #3164 from unknownbrackets/savestates
Fix savestate difference on 64/32 bit + warnings/minor
2013-08-14 08:12:44 -07:00
The Dax
0f59767984 Add SceNpDrmOpen to the table so it can be logged properly. 2013-08-14 09:23:58 -04:00
Unknown W. Brackets
8ab67b1674 Fix some warnings. 2013-08-13 21:05:54 -07:00
shenweip
1527934d25 Fixed wrong log message 2013-08-14 07:22:22 +08:00
shenweip
75fe4296b7 Update 2013-08-14 01:58:32 +08:00
shenweip
d17e6064de Update 2013-08-14 01:33:02 +08:00
shenweip
f0fc6178da Implemented support for export module entry size 5 2013-08-14 01:03:40 +08:00
Unknown W. Brackets
49c7b9628a Fix some correctness warnings. 2013-08-12 23:40:22 -07:00
Unknown W. Brackets
8830d3603e Fix some overflow/null deref warnings. 2013-08-12 23:33:52 -07:00
Unknown W. Brackets
008052e6d6 Fix some variable hiding warnings. 2013-08-12 23:32:38 -07:00
Unknown W. Brackets
c8716d9a02 Fix a few minor typos + small reporting change. 2013-08-12 23:02:39 -07:00
Unknown W. Brackets
7ac67a8931 Add a function to walk the stack, not yet perfect.
Could use improvements, but with a decent symbol table does very well so
far in the games I tested it in.
2013-08-12 01:54:14 -07:00
Unknown W. Brackets
cf7c718706 Use a timer to keep gpu/cpu in sync periodically.
Fixes Diva Extend demo, at least, losing FPS.
2013-08-11 13:41:42 -07:00
Henrik Rydgard
7c4d273879 Count numFlips in a way consistent with our frame timing. 2013-08-11 22:12:15 +02:00
Unknown W. Brackets
fe8850b34d Set the IO thread's name for debugging. 2013-08-11 12:22:01 -07:00
Unknown W. Brackets
dd1cbe55d4 Give sceIoWrite the same treatment, for savedata. 2013-08-11 12:04:38 -07:00
Unknown W. Brackets
193a336189 Run sceIoRead operations on a separate thread.
This should improve stutter.  Also verified via a timer to improve
performance (although, not very much, ~0.07 seconds during an entire
game load.)
2013-08-11 11:53:21 -07:00
Unknown W. Brackets
85ad4a80dd Start and stop a separate thread for IO.
Not actually running anything on it yet.
2013-08-11 11:51:36 -07:00
Unknown W. Brackets
26c072df51 Don't wait directly from GPUCommon, do it in sceGe.
Makes debugging a bit easier.
2013-08-10 18:24:40 -07:00
Henrik Rydgård
85e17f03cc Merge pull request #3118 from unknownbrackets/io-async
Prep work for pspFileSystem and two small fixes
2013-08-10 14:32:59 -07:00
Unknown W. Brackets
3bba464451 Add one more missing sceCcc func. 2013-08-10 14:04:42 -07:00
Unknown W. Brackets
54ca1e212f Unmount filesystems during HLE shutdown.
Fixes #3115.
2013-08-10 14:04:07 -07:00
Unknown W. Brackets
333cc33efb Handle OpenFile() errors in a more threadsafe way.
Probably needs better cleanup though.
2013-08-10 09:54:14 -07:00
Henrik Rydgard
ca6de59019 Another attempt at frame timing / flip detection. Might solve some flicker issue. 2013-08-10 18:39:27 +02:00
Unknown W. Brackets
5e363bcbd2 Don't allow gpu->Flush() to be called publicly. 2013-08-09 22:57:54 -07:00
Unknown W. Brackets
4803f72b36 Add a "multithreaded" UI option on Windows.
Not on other platforms since not yet tested.
2013-08-09 22:57:50 -07:00
Unknown W. Brackets
3819886e2e Add a way to synchronize with the GPU thread. 2013-08-09 22:41:32 -07:00
CPkmn
1cf0b62e70 Try fixing sceJpegGetOutputInfo again
I guess the colour info address isn't supposed to be updated if the jpeg errors out, or I think so based on reports from the God Eater Burst thread in the forums. This shouldn't affect working jpegs since the address is still being updated before returning, just not if it errors out. If this doesn't work for the save from the forums, it would have never worked in PPSSPP builds up to today (it basically makes the function _only_ return null without updating the colour address, making it the equivalent of the only implementation other than mine, which was a stub, if it errors out). The previous commit I made worked in the Japanese version, but still bounced back in the US version (wtf?).
2013-08-07 16:39:42 -07:00
Henrik Rydgard
bc00a7e302 Process frame timing on frame boundaries instead of flips. Frameskipping works better in many games. 2013-08-07 23:32:28 +02:00
Henrik Rydgard
51ffdfa132 Rename gpuStats.numFrames to numVBlanks. Switch to using numFlips for things like cache expirations. 2013-08-07 22:34:00 +02:00
CPkmn
76dbd9c22b Fix sceJpegGetOutputInfo
Return better responses for errors (should allow weird God Eater Burst saves from real PSPs to not bounce back to the titlescreen). Not sure why some God Eater Burst saves would send bad jpeg data. The data sent through sceJpeg is supposed to be a normal jpeg (ie it should be perfectly viewable in photoshop or whatever image viewer/editor). The reason it doesn't send a good, decodable jpeg should still be researched but in the meantime let's not push users getting that error back to the titlescreen. Returning getYCbCrBufferSize(0, 0) on error seems like it would be more correct as well (or, at least God Eater Burst recognises that as an error unlike 0xC000...I didn't think that error code was right but no saves gave me bad jpeg data before).
2013-08-07 08:08:12 -07:00
Unknown W. Brackets
b1344f8254 Get rid of CoreTiming::AdvanceQuick().
It basically existed for savestates, so no longer needed.
Fixes issues with events not running when they should.
2013-08-07 00:32:29 -07:00
Unknown W. Brackets
b298432e8f Use threadsafe events for GE communication.
Hopefully this doesn't cause problems again for 3rd Birthday or FF Type-0.
Kinda need it.
2013-08-07 00:32:28 -07:00
Unknown W. Brackets
fff0af844b Fix bounds check in sceKernelPrintf().
Wasn't allowing a string ending in %08x.
2013-08-06 23:52:38 -07:00
Unknown W. Brackets
04e2a78f82 Fix table checks in sceCcc.
Was checking for the wrong table.
2013-08-06 23:39:12 -07:00
Unknown W. Brackets
e51265d26e Reschedule in time spin loops.
It seems like rescheduling should potentially happen much more often, but
it could be a bit dangerous as far as compatibility.

Improves sound quality in Crimson Gem Saga and Where Is My Heart?
2013-08-04 10:11:56 -07:00
Unknown W. Brackets
a9557a8297 Report unexpected export sizes too. 2013-08-01 00:38:34 -07:00
Henrik Rydgård
90d6c0cd5e Merge pull request #3021 from unknownbrackets/report-server
Minor reporting related tweaks
2013-07-31 08:28:09 -07:00
Unknown W. Brackets
c2c9179406 Fix TLS allocation (been there a while...)
This worked for the most common case, but was a typo.
2013-07-31 08:15:07 -07:00
Unknown W. Brackets
4a4f07df8e Add waiting/resuming to TLS funcs.
Nice and simple, no callbacks or timeouts.
2013-07-31 00:22:36 -07:00
Unknown W. Brackets
9a241e8e24 Add a couple new HLE functions for logging. 2013-07-31 00:01:21 -07:00
Unknown W. Brackets
90e56db174 Don't report 0, it seems like it's okay. 2013-07-31 00:00:45 -07:00
Henrik Rydgård
6bb2bf07eb Merge pull request #3007 from Ced2911/module_endian
Fix crypted elf crashes on big endian
2013-07-30 11:20:29 -07:00
Ced2911
340881c319 fix some loading 2013-07-30 19:39:32 +02:00