Commit graph

230 commits

Author SHA1 Message Date
Henrik Rydgard
ad0da06f65 Forgot to remove these from the debug string. 2016-04-02 10:36:51 +02:00
Henrik Rydgard
5ef608fa50 GPU stats: Have each backend format its own string. 2016-03-31 10:17:02 +02:00
Henrik Rydgard
004c8b0fca Make debug stats more compact. 2016-03-31 09:47:25 +02:00
Unknown W. Brackets
3976e840a1 Fix some old savestates. 2016-03-20 23:03:48 -07:00
Henrik Rydgard
f7113bb2e3 Use separate pushbuffers for UBO/Index/Vertex. This will make decoding directly into the pushbuffers easier, plus other benefits later.
(For example, we'll often be able to avoid rebinding the vertex and
index buffers at new offsets by just keep counting upwards between draws,
if the vertex format is the same but other state changed)
2016-03-20 19:31:02 +01:00
Henrik Rydgard
e45c24b75f Show how much pushbuffer space is used each frame.
Optimizing this number (by avoiding redundant UBO uploads etc) will probably help performance.
2016-03-20 19:31:02 +01:00
Henrik Rydgard
e11d0a7e1c Minor GPU interface cleanup 2016-01-06 23:49:02 +01:00
Unknown W. Brackets
18dbaac3c7 Fix savestate compat with older versions. 2016-01-02 18:50:59 -08:00
Unknown W. Brackets
abede77059 Clean up some logging in sceDisplay. 2015-12-30 17:37:14 -08:00
Unknown W. Brackets
9327749f16 Allow setting the display off.
Final Fantasy Tactics does this to avoid some brief flicker.
2015-12-30 17:29:20 -08:00
Unknown W. Brackets
f982e777e5 Stop logging alphatested draws for debug stats.
Measured a small perf hit here, and we're not really using these stats
much anymore.
2015-12-30 10:24:54 -08:00
Henrik Rydgard
72ae497350 Remove glstate usage except in the GPU implementation. Prepare for moving it into PPSSPP. 2015-09-06 12:42:15 +02:00
Henrik Rydgard
2430c283a5 More GPU cleaning, removing uses of GPUState.h where not needed.
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.

Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Henrik Rydgård
0726912f09 sceDisplay, GPUState cleanup and comments 2015-07-25 09:46:11 +02:00
Unknown W. Brackets
8fdceba7ca Add timing for all the basics.
This way we can see overall stats for a frame.
2015-07-03 12:05:08 -07:00
Unknown W. Brackets
c642f92bfb Initialize a few display state values on init. 2015-03-28 13:01:30 -07:00
Unknown W. Brackets
fcf0518223 Update all the HLE tables with arg and ret info. 2015-03-22 20:51:55 -07:00
Unknown W. Brackets
c991dd7555 Oops, fix an important typo. 2015-03-05 08:31:59 -08:00
Unknown W. Brackets
22ce464e42 Don't wake a vblank waiting thread within 115us.
Fixes #6966, matches PSP behavior.
2015-03-01 18:31:25 -08:00
Henrik Rydgard
d6cf857a06 Make it impossible to set Auto Frameskip and Non-buffered together as they interact in a bad way 2015-02-09 23:11:45 +01:00
Unknown W. Brackets
42cd751060 Prevent a few savestate cross-compat issues.
We don't need to save gpu stats at all, so don't, makes it easier to
change it and dunno if anyone defines double as other than 64 bits.

Also, apparently there was padding in the event state but not on all
platforms.
2014-12-08 21:18:56 -08:00
Lioncash
4ccb838306 Core: Mark some module functions as static 2014-12-08 04:40:08 -05:00
Henrik Rydgard
02a89306d1 Warning fixes, sprintf->snprintf 2014-09-13 23:51:07 +02:00
Sacha
1ce39d7e95 Improve frame timing on non-Windows. Disable IdleTiming when audio is disabled. 2014-07-16 01:04:43 +10:00
Unknown W. Brackets
5cd4a17e88 Fix periodic events drifting when eating cycles.
Need to set the next timer before rescheduling threads or etc.
2014-07-01 00:26:15 -07:00
Unknown W. Brackets
5db79dcf11 Fix some missing semicolons on log statements. 2014-06-29 19:09:37 -07:00
Unknown W. Brackets
8172e838a5 Avoid a fast-forward effect when not drawing.
This fixes loading screens and such, which drop the fps down to 0 or 6
according to our measure, which can distort audio if we've got free time.

If the system is not keeping up, should have the same behavior as before.
2014-06-26 00:37:03 -07:00
Unknown W. Brackets
23dc69fc9b Time frames based on current, not last timestep.
We need to decide the nextFrameTime when we know how many vblanks it took,
not before.  Otherwise, we will miss-time when the fps changes.
2014-06-26 00:36:17 -07:00
Unknown W. Brackets
19f4ad8c5c Dumb mistake in "real time sync" fix. 2014-06-25 00:44:18 -07:00
Henrik Rydgård
fea0a26113 Merge pull request #6414 from unknownbrackets/resched
Reschedule immediately in many cases
2014-06-24 22:41:58 +02:00
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
8e80bd3928 Wake good pri threads immediately from vblank wait. 2014-06-24 00:45:08 -07:00
The Dax
eb94587391 sceDisplayGetVcount should apparently reschedule. Fixes #3234. 2014-06-18 19:35:16 -04: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
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
66d0cef0de Avoid calling select() with an error pointlessly.
It's just a spin loop unfortunately anyway.
2014-06-03 01:48:10 -07:00
Unknown W. Brackets
0bba5310b6 Fix lagsync with alternate speed set. 2014-06-03 01:36:20 -07:00
Unknown W. Brackets
39b1d97beb Make the lag sync adapt to minor variance. 2014-06-02 23:34:48 -07:00
Unknown W. Brackets
29f2519861 Add an experimental sync to keep real time sync.
May help input, audio, and network related lag problems.
2014-06-02 23:34:48 -07:00
sum2012
d2f7a9974f Add sceDisplaySetMode error code base on JPCSP 2014-04-26 04:41:01 +08:00
Unknown W. Brackets
ed99c33cd7 Interpret iForceMaxEmulatedFPS based on 1.001 NTSC. 2014-04-13 21:47:11 -07:00
Unknown W. Brackets
4c1c694d4b Use flags to avoid hashing textures when unchanged.
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.

Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Henrik Rydgard
2240cae3bf Prevent overrunning the debug print overlay buffer 2014-03-24 11:41:18 +01:00
Unknown W. Brackets
05ab192c9c Reduce includes in Core/HLE/.
Especially templates.
2014-03-15 11:22:19 -07:00
Henrik Rydgård
b7651b61c7 Merge pull request #5546 from chinhodado/fixes
some minor fixes and changes
2014-02-23 19:12:42 +07:00
chinhodado
20ed422c3a remove a duplicate assignment 2014-02-22 23:23:33 -05:00
sum2012
f0ad992b67 Add sceCtrl_driver and sceDisplay_driver 2014-02-17 20:46:57 +08:00
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