1070 Commits

Author SHA1 Message Date
raven02
2dd75b5b97 ClearBuffer() 2013-08-15 03:32:43 +08:00
raven02
9f0ca16df7 boolean fix 2013-08-15 03:21:42 +08:00
raven02
f49e5535a7 Few more boolean fix 2013-08-15 03:20:06 +08:00
Henrik Rydgard
96373132bb Android buildfix 2013-08-14 20:42:13 +02:00
Henrik Rydgård
b66bd085ce Merge pull request #3108 from raven02/patch-13
Fix wrong size generated FB which uses for render-to-texture
2013-08-14 08:38:27 -07:00
Unknown W. Brackets
f53426db9d Obviously no reason for this to be virtual. 2013-08-13 21:42:48 -07:00
raven02
fad8b77044 Merge remote-tracking branch 'upstream/master' into patch-13 2013-08-14 07:29:56 +08:00
Unknown W. Brackets
8a59463351 Disabling warnings you don't understand = bad. 2013-08-13 01:01:40 -07:00
Unknown W. Brackets
49c7b9628a Fix some correctness warnings. 2013-08-12 23:40:22 -07:00
Unknown W. Brackets
008052e6d6 Fix some variable hiding warnings. 2013-08-12 23:32:38 -07:00
Unknown W. Brackets
49ab98c7fd Use atomic operations on Android + warning fixes. 2013-08-12 08:51:49 -07:00
Unknown W. Brackets
24203b1a5d Improve performance on x86 as well using movq. 2013-08-12 08:40:54 -07:00
Unknown W. Brackets
5c96782f29 Improve performance on x64 at least.
Maybe can just ignore for 32?  I'm not sure how bad it would be if it read
in between...
2013-08-12 02:42:30 -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
9109882c04 More microoptimization 2013-08-11 22:12:14 +02:00
Henrik Rydgard
8e2c485373 Some microoptimization 2013-08-11 22:12:14 +02:00
Henrik Rydgård
12275d0e3a Merge pull request #3125 from raven02/patch-15
Some games like FF Type-0 inits viewport as 0x0
2013-08-11 13:01:11 -07:00
Unknown W. Brackets
e6b42768fe Add a class to manage IO on a separate thread.
Also separate the logic for exiting the loop based on coreState.  IO and
audio won't necessarily be tied to the frame.
2013-08-11 11:46:55 -07:00
raven02
1eaada15df Reference and modified code from @arnastia 2013-08-12 02:30:17 +08:00
raven02
c2a86d647f Fix wrong size generated of FBO for some games which uses it as render-to-texture 2013-08-12 02:20:55 +08:00
raven02
6c889e556b Some games like FF Type-0 inits viewport as 0x0 2013-08-12 02:15:42 +08:00
Unknown W. Brackets
e0f699fd5f Use a possibly harmless hack to prevent hangs.
Not sure where the problem is, but this fixes it pretty consistently for
me... seems like lists are somehow not being processed after becoming
processable?
2013-08-10 20:03:43 -07:00
Unknown W. Brackets
639ab8306b SyncThread before deciding if the fbo is dirty.
Fixes fps drops in yet other games with multithreading enabled.
2013-08-10 18:45:07 -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
Unknown W. Brackets
cfb1d02182 Oops, left these here. 2013-08-10 17:18:31 -07:00
Unknown W. Brackets
55c07bdc73 Avoid a possible thread sync issue.
Could be that it's about to wake listsync, does, and then we wait.
2013-08-10 17:18:31 -07:00
Unknown W. Brackets
abc396cbe1 Sync the GPU thread on list/draw sync.
Otherwise, the CPU gets ahead (inside the frame) and games get confused.
I don't think there's any good workaround to avoid this.
2013-08-10 15:16:49 -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
Henrik Rydgard
a517b8d53f Fix #3117 (by reverting part of a previous change), plus a minor change that might speed GT up. 2013-08-10 23:25:55 +02:00
Henrik Rydgard
8ba8b3ddd2 gcc warning fix 2013-08-10 18:39:28 +02:00
Henrik Rydgard
4d4b2990ec GPU ShaderManager: Naming convention, inline a function 2013-08-10 18:39:27 +02:00
Unknown W. Brackets
1b838c4403 Move ThreadEventQueue to its own file. 2013-08-10 09:08:31 -07:00
raven02
6f994ec05f Fix texture broken in God of War 2013-08-10 21:56:52 +08: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
e82bae3708 Simplify easy_guard to avoid coding errors. 2013-08-09 22:57:53 -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
e71cf2ec7e Don't queue Flush() etc. while on GPU thread.
Oops, that makes it not actually flush properly of course.

Also made a simpler guard wrapper to avoid extra braces in too many
places.  Reduced contention areas slightly.
2013-08-09 22:57:52 -07:00
Unknown W. Brackets
68fb78e203 Be more careful with the stall address.
In case it's moved while running the list.
2013-08-09 22:57:52 -07:00
Unknown W. Brackets
8c69020fa8 Use separate condition vars/locks for GPU sync. 2013-08-09 22:57:51 -07:00
Unknown W. Brackets
b0e6967697 Rename UseCPUThread to SeparateCPUThread. 2013-08-09 22:41:33 -07:00
Unknown W. Brackets
a56cac1eb3 Bail when CPU thread disabled to ensure good perf. 2013-08-09 22:41:32 -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
Unknown W. Brackets
52ca93aab2 Add mutex locks around list management.
This way we can safely execute lists on a separate thread.
2013-08-09 22:41:31 -07:00
Unknown W. Brackets
e7c7c5b3db Add a setting to launch a separate CPU thread. 2013-08-09 22:41:30 -07:00
The Dax
01e9111ac5 Remove Stream VBO option. 2013-08-09 05:18:24 -04:00
Henrik Rydgård
f01279f2cf Merge pull request #3082 from raven02/patch-12
Fix black/missing textures in few games
2013-08-09 00:58:38 -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