Commit graph

182 commits

Author SHA1 Message Date
Henrik Rydgård
9bea246509 Upgrade savestates correctly for the brightnessLevel addition. 2014-02-04 17:10:46 +01:00
raven02
b783723098 Implement sceDisplaySetBrightness()/sceDisplayGetBrightness() 2014-02-04 22:22:06 +08:00
DanyalZia
251b0e86ee Separates out auto-skip from frameskipping 2014-01-26 00:50:00 +05:00
Unknown W. Brackets
10454654bf Ignore unreasonable timestep values.
This fixes #5202 (Crisis Core stuttering) and improves Mana Khemia's "Who
are you?" sound effect while loading savedata.  May also improve Monster
Hunter's similar issue.
2014-01-24 23:55:19 -08:00
Unknown W. Brackets
4541ec4b05 Smooth out detected FPS changes.
Helps reduce uneven FPS rates and sound effect glitches during transitions
(e.g. between a 30 fps scene and a 60 fps menu, or etc.)
2014-01-23 22:23:43 -08:00
Unknown W. Brackets
f8883279b5 Eat some cycles when flipping the framebuffer. 2014-01-19 12:53:19 -08:00
Unknown W. Brackets
bf37e55b9f Don't return latched framebuf if not latched. 2014-01-12 23:29:03 -08:00
Unknown W. Brackets
4f585fd7a6 Fix a few minor typos. 2014-01-11 22:59:52 -08:00
Henrik Rydgård
79ff2f0ba8 Start untangling our include mess a little. 2013-12-29 23:34:45 +01:00
Unknown W. Brackets
9e9c6c0719 Allow auto frameskip to skip > 1 frame. 2013-12-15 13:27:16 -08:00
Unknown W. Brackets
160ee740d2 Fix some vblank callback wait problems.
Stupid mistake, missing this.  May help #3680.
2013-12-05 23:26:59 -08:00
Henrik Rydgård
7c7c4aaadc Add "u_time" uniform to postprocessing shaders. 2013-12-02 17:24:55 +01:00
Henrik Rydgard
1a6b4ceafb Compensate frame delay for the PSP refreshing at 59.94 Hz 2013-11-20 23:53:28 +01:00
Unknown W. Brackets
425ea8b846 Track hcount as an integer, not a double.
Since it's even with NTSC.  Makes much more sense.
2013-11-18 08:12:49 -08:00
Unknown W. Brackets
2b74f7f812 Switch to 59.94 fps rather than 60. 2013-11-18 08:06:09 -08:00
Unknown W. Brackets
39cd7f812a Move ctrl to after vblank, not before.
Tests I'd done long ago suggested this wasn't right, but we made other
timing fixes since then, and now tests are showing this is the right
order.

May improve Patapon/etc. timing, or may hurt it...
2013-11-17 19:32:20 -08:00
Sacha
fb7c3d96fd Introduce Timer Hack.
Has been used in previous Symbian releases to improve speed. Was thought to only work on Wipeout but actually works on most games?
Games that run based on internal timer will experience 60 VPS without frameskip.
2013-11-16 02:16:17 +10:00
The Dax
d56114e30d Fix VS2013. 2013-11-12 18:37:06 -05:00
Sacha
91ddddc2ef Remove unused Thread.{cpp,h} 2013-11-13 02:50:46 +10:00
Sacha
d616cc72a2 Add Blackberry statistics overlay option. 2013-10-28 14:19:27 +10:00
Unknown W. Brackets
100c188df6 Fix savestate backwards compat.
Broken since 80702109f5.
2013-10-24 20:01:14 -07:00
danyalzia
036a180708 Update sceDisplay.cpp 2013-09-17 11:41:12 +05:00
Unknown W. Brackets
50e9e45d65 Check version in each DoState() func.
They bail on PointerWrap error or bad version.
2013-09-14 20:23:03 -07:00
Unknown W. Brackets
c3839a53e5 Fix some minor warnings. 2013-09-07 22:40:08 -07:00
Henrik Rydgard
324cde5a79 Let's actually use the log category mechanism. A first step. 2013-09-07 21:19:21 +02:00
Unknown W. Brackets
e6f6564a32 Dumb typo. 2013-09-05 23:10:29 -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
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
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
93b461774a Disable common wait funcs while intr disabled.
Per PSP tests.
2013-08-27 23:55:35 -07:00
Henrik Rydgard
6360fcb0ae Add some stats to get some idea of much alpha tested drawing we do.
Turns out it's one hell of a lot and we really should fix this by
checking both vertices and textures to deduce when we can just skip
alpha testing safely, probably quite often.

I care about this because alpha testing drawing is very expensive
on some mobile chips.
2013-08-27 21:01:17 +02:00
Unknown W. Brackets
57d057d661 Watch for consistently high flips, not spurts. 2013-08-26 20:12:26 -07:00
Unknown W. Brackets
2d806b4820 When fps cap is hit, delay current thread only.
Fixes Jeanne d'Arc freezing.  Unfortunately, small hit to perf in God of
War, but may improve audio quality anyway...
2013-08-25 09:46:21 -07:00
Henrik Rydgard
dfb91d4532 Track number of GPU commands executed per call level.
This is to get an idea if it would be beneficial to compile and cache display lists. Looks like it would be for some games, for example in GTA it's often 20k/80k/20k commands per frame - that is 100k executed commands per frame that could potentially just be executed instead of interpreted. Likewise in Wipeout. Of course, this means yet another cache with invalidation issues etc..
2013-08-23 11:29:55 +02:00
Henrik Rydgard
b186294132 UI tweaks. Change to cleaner background image. 2013-08-20 00:49:25 +02:00
Henrik Rydgard
6ca3b43b9a Measure actual fps (frameskip+unthrottle included), show all three on one line if you choose "both" (which I probably should rename)
Also prevent annoying scrolls in key mapping dialog
2013-08-19 22:06:49 +02:00
Henrik Rydgard
00d56e6bcf Setting unlimited as an alternate speed is possible again. 2013-08-18 22:48:53 +02:00
Henrik Rydgard
a48e1de2d4 Fix slow-motion alternate speeds 2013-08-18 22:40:42 +02:00
Henrik Rydgard
0265ab874f Change FPS limit to "alternate speed", expressed in a percentage.
Fix it so it works correctly for 30fps games.

Some menu tweaks.
2013-08-18 18:55:42 +02:00
Henrik Rydgard
5f11ac4142 Calculate FPS in sceDisplaySetFramebuf like before. 2013-08-16 12:53:35 +02:00
Henrik Rydgard
d97b09a88d Revert "Break fix title CG missing in Midlight club 3"
This reverts commit 94ded4c00c.
2013-08-16 09:00:40 +02:00
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
raven02
94ded4c00c Break fix title CG missing in Midlight club 3 2013-08-15 21:58:18 +08: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 Rydgard
7c4d273879 Count numFlips in a way consistent with our frame timing. 2013-08-11 22:12:15 +02:00
Henrik Rydgard
ca6de59019 Another attempt at frame timing / flip detection. Might solve some flicker issue. 2013-08-10 18:39:27 +02:00