Commit Graph
231 Commits
Author SHA1 Message Date
Henrik Rydgard 727058fc27 Remove an entry from GPUStats that didn't really belong. 2016-04-02 11:06:05 +02:00
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