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
Henrik Rydgård
0ef02cddfa
Merge pull request #3119 from unknownbrackets/gpu-thread
...
Sync the GPU thread on list/draw sync
2013-08-10 15:25:05 -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 Rydgard
408e570469
Typo fix
2013-08-10 23:41:29 +02:00
Henrik Rydgard
89ddbb51bb
Oops, XMM0 might be taken by temps. Also, s/GC_ALIGN16/MEMORY_ALIGN16
2013-08-10 23:39:24 +02: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
4c6006190f
Of course, found the real bug causing #3117 immediately after the revert. Fixed.
2013-08-10 23:32:12 +02: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
Unknown W. Brackets
3bba464451
Add one more missing sceCcc func.
2013-08-10 14:04:42 -07:00
Henrik Rydgard
0dac2b4783
Update native, minor UI stuff and cleanups
2013-08-10 23:04:23 +02:00
Unknown W. Brackets
f68ebfe230
Fix savestates while not running.
...
Fixes #2791 .
2013-08-10 14:04:23 -07:00
Unknown W. Brackets
54ca1e212f
Unmount filesystems during HLE shutdown.
...
Fixes #3115 .
2013-08-10 14:04:07 -07:00
Unknown W. Brackets
00ae811446
Shutdown the filesystem after HLE.
2013-08-10 14:01:44 -07:00
Henrik Rydgard
d32e10ff0b
Error handling improvements
2013-08-10 19:56:47 +02:00
Henrik Rydgard
1da49273b5
Address some complaints about touch button opacity
2013-08-10 19:23:50 +02:00
Henrik Rydgard
bc84c135b3
Revert vscmp, didn't make a difference in the tests anyway
2013-08-10 19:22:33 +02:00
Unknown W. Brackets
333cc33efb
Handle OpenFile() errors in a more threadsafe way.
...
Probably needs better cleanup though.
2013-08-10 09:54:14 -07:00
Henrik Rydgard
8ba8b3ddd2
gcc warning fix
2013-08-10 18:39:28 +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
Henrik Rydgard
4d4b2990ec
GPU ShaderManager: Naming convention, inline a function
2013-08-10 18:39:27 +02:00
Henrik Rydgard
394f590c36
Failed attempt at implementing vsge/vslt. Dunno what's wrong but disabled for now.
2013-08-10 18:39:27 +02:00
Unknown W. Brackets
b5ac31bbea
Add locks to all the pspFileSystem methods.
2013-08-10 09:27:06 -07:00
Unknown W. Brackets
1b838c4403
Move ThreadEventQueue to its own file.
2013-08-10 09:08:31 -07:00
Henrik Rydgård
d169c31e26
Merge pull request #3103 from CPkmn/patch-1
...
Sanity checks for shadow glyphs
2013-08-10 08:26:59 -07:00
Unknown W. Brackets
e018b6f348
Merge pull request #3111 from raven02/patch-14
...
Fix broken texture in God of War.
2013-08-10 07:45:01 -07:00
raven02
6f994ec05f
Fix texture broken in God of War
2013-08-10 21:56:52 +08:00
CPkmn
4fccf6771f
Update PGF.cpp
2013-08-10 05:21:23 -07:00
Henrik Rydgård
1d38dfde78
Merge pull request #3109 from unknownbrackets/gpu-thread
...
Small refactoring in event queue logic, ignore multithreaded setting change
2013-08-10 03:42:32 -07:00
Unknown W. Brackets
7e56dcf665
Ignore changes to SeparateCPUThread after startup.
2013-08-10 03:36:22 -07:00
Unknown W. Brackets
450e4c7fea
Factor out event queue logic to a template mixin.
2013-08-10 03:33:09 -07:00
Henrik Rydgard
cd53dfdc9c
Mark multithreading as experimental in the UI
2013-08-10 11:53:55 +02:00
Henrik Rydgard
c6956c299a
Don't leak cpuThread objects
2013-08-10 11:39:53 +02:00
Henrik Rydgard
360210876c
Add multithread checkboxes to gl UI as well
2013-08-10 11:34:27 +02: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
e76f945c7e
Use the native cond vars for the CPU thread.
2013-08-09 22:57:51 -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
4803f72b36
Add a "multithreaded" UI option on Windows.
...
Not on other platforms since not yet tested.
2013-08-09 22:57:50 -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