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
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
Unknown W. Brackets
450e4c7fea
Factor out event queue logic to a template mixin.
2013-08-10 03:33:09 -07:00
Unknown W. Brackets
a80a7690c8
Fix SyncThread() not syncing during last event.
2013-08-09 23:18:37 -07: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
1226c3dbd9
Try to prevent a deadlock if CPU doesn't NEXTFRAME.
2013-08-09 22:57:53 -07:00
Unknown W. Brackets
3819886e2e
Add a way to synchronize with the GPU thread.
2013-08-09 22:41:32 -07:00
Unknown W. Brackets
02e301e5fe
Add a simple message event system to the GE.
...
With this, the CPU thread feature now mostly works.
2013-08-09 22:41:31 -07: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
Unknown W. Brackets
00fc5ec40e
Enable interrupts as a property of the list.
...
This way there's no behavior change when enqueue is async.
2013-08-07 00:32:30 -07:00
Unknown W. Brackets
f7a39d1b12
Move ReapplyGfxState() to GPUCommon.
...
This way it can be overridden, and simplifies some other things.
2013-08-04 15:15:50 -07:00
Unknown W. Brackets
89349eae7e
Consistently use a proper type for GE fb format.
2013-07-29 23:05:59 -07:00
Unknown W. Brackets
f8d6bda678
Add a better signal for VRAM copies in the GPU.
2013-06-09 23:55:32 -07:00
Unknown W. Brackets
3c0ed69fd2
Improve GPU invalidation interface, check fonts.
...
When a font is rendered, tell the GPU about it, but don't rehash.
This not only improves perf (less hashing) but makes font changes more
immediate (no deferred hashing.) But only if they use sceFont.
2013-05-05 22:52:01 -07:00
Peter Thoman
2212e7f609
Fixed threading issue pointed out by unknownbrackets and made texture scaling changes apply immediately
2013-04-30 17:58:05 +02:00
Unknown W. Brackets
b0ce9e934e
Split out the GPU vendor and the full detail.
...
This way we can sort things more easily.
2013-04-29 00:30:54 -07:00
Unknown W. Brackets
5cea38e405
Reporting: catch information about the GPU.
2013-04-29 00:26:43 -07:00
Unknown W. Brackets
f86e01707f
Use a struct for the GE stack entries, cleaner.
2013-04-15 23:06:56 -07:00
Unknown W. Brackets
2b4ec12aa9
Buildfix for iOS. Fixes #1220 .
2013-04-08 07:41:09 -07:00
Unknown W. Brackets
57770dbd95
Delay GPU signals and waits to simulate cycles.
2013-04-07 17:05:11 -07:00
Unknown W. Brackets
77311a121d
Don't listsync until after the signal handler.
2013-04-06 08:36:03 -07:00
Unknown W. Brackets
fb26941a27
Implement sceGeListSync().
2013-04-06 02:30:38 -07:00
Unknown W. Brackets
339b444703
Switch to a fixed size displaylist queue.
2013-04-05 00:32:34 -07:00
Unknown W. Brackets
7aa6112c24
Keep a flag to indicate display list bailout.
2013-04-05 00:32:32 -07:00
Unknown W. Brackets
7738b42b9c
Implement sceGeBreak()/sceGeContinue().
2013-04-04 00:36:43 -07:00
Unknown W. Brackets
74441fdc07
Handle displaylist state more like the PSP.
...
All these changes from Orphis' hard work. Things still looking good.
2013-04-03 23:05:54 -07:00
Unknown W. Brackets
514bf93bf9
Don't trigger an interrupt when cb = -1.
2013-04-03 08:09:34 -07:00
Unknown W. Brackets
b8e4c72f04
Maintain the stack per displaylist, not globally.
2013-03-31 23:57:03 -07:00
Unknown W. Brackets
affe91cb3b
Refactor some GPU methods to return errors.
2013-03-31 23:57:03 -07:00
Henrik Rydgard
bc15617392
Make un-buffered rendering much smarter, removing flicker.
...
This turns it into a very viable option for many games. You do lose some FX
but it can as a result even be used as a workaround for the massive glow
in Wipeout...
2013-03-03 13:00:21 +01:00
Xele02
2a6af9b8a3
Add displayList debug dialog
2013-02-17 01:28:43 +01:00
Xele02
381bffaa47
Remove Qt define
2013-02-10 18:15:01 +01:00
Xele02
69b837f18b
Add debug dialogs (DisAsm, Memory, VFPU).
...
New features : Breakpoint display, thread status, display list status
Update translation and start french translation
2013-02-10 17:33:34 +01:00
Unknown W. Brackets
2a6457b6ab
Cut down on h files including PointerWrap.
...
This makes changes to it a bit faster to build.
2013-02-04 08:26:59 -08:00
Florent Castelli
8004d360dd
Interrupt handler reorganization for easier GE interrupt support
2013-02-04 03:10:01 +01:00
Henrik Rydgard
d1b3fd0e49
Better window resize handling
2013-01-27 00:15:39 +01:00
Unknown W. Brackets
3861ce0376
Use sceKernelDcacheWritebackAll() as a hint only.
2013-01-05 17:07:19 -08:00
Unknown W. Brackets
97bdaf5dd2
Add support for selecting the GE callback per list.
...
Not sure if interrupts are right, but this should be more right.
2012-12-29 15:55:05 -08:00
Unknown W. Brackets
ea9f0be28a
Save more of the GPU's state, fix a crash.
...
Well, ReapplyGfxState() seems kinda dangerous now...
2012-12-29 11:41:33 -08:00
Florent Castelli
36a71eafd0
Move InterpretList and ProcessDLQueue to GPUCommon
2012-12-29 03:11:36 +01:00
Florent Castelli
6eec4f5d7f
Move display list management to common GPU class
2012-12-29 03:11:35 +01:00
Henrik Rydgård
57b4d658cc
Don't log display lists, instead dump them on demand.
...
Makes it fairly convenient to dump and look at display lists at run time
on non windows platforms. Adding a menu item on Windows should be
trivial.
2012-12-27 23:38:55 +01:00
Henrik Rydgård
d95dbca9be
Cleanup GPU init/shutdown a bit
2012-12-25 22:42:19 +01:00
Henrik Rydgård
d21647bbb9
Split code from GLES_GPU to TransformDrawEngine, cleanup
2012-12-25 22:39:37 +01:00
Henrik Rydgard
252845ecb6
Bugfix, remove hack
2012-12-21 23:55:19 +01:00
Henrik Rydgard
e42af096c8
Merge
2012-12-21 23:43:48 +01:00
Henrik Rydgard
980d13fe50
Assorted GPU fixes: Advance vertex pointer, fixes missing triangles in SPT. More logging. Separate proj matrices for through and normal mode (through matrix don't need to get updated as often). Some cleanup.
2012-11-28 13:45:22 +01:00
Henrik Rydgard
870ea6628b
Reasonably correct viewport handling. Optional debug stats overlay (not always 100% working).
2012-11-26 17:35:08 +01:00
Henrik Rydgard
f378f959e1
Fix issues with games that don't call sceDisplaySet mode. Add option to run without FBOs, may be useful on slow devices.
2012-11-20 10:59:23 +01:00
Henrik Rydgard
91e1cce17e
Some reorg in preparation for FBO work
2012-11-19 21:23:29 +01:00