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
8ba8b3ddd2
gcc warning fix
2013-08-10 18:39:28 +02:00
Unknown W. Brackets
1b838c4403
Move ThreadEventQueue to its own file.
2013-08-10 09:08:31 -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
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
8c69020fa8
Use separate condition vars/locks for GPU sync.
2013-08-09 22:57:51 -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
3aa2db9a8e
Simplify ProcessDLQueue() slightly.
2013-08-04 16:31:54 -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
1edbfa3212
Use a downcount and fast run loop in the GE.
2013-04-28 14:23:30 -07:00
Unknown W. Brackets
5a03888b56
Centralize state and pc changes in the GE.
...
To make later things easier.
2013-04-28 13:34:29 -07:00
Henrik Rydgard
628c223234
GPUCommon: Get rid of prev variable.
2013-04-21 19:32:56 +02:00
Unknown W. Brackets
957394258c
Block dlist execution while in virtual progress.
...
Fixes #1224 .
Also, fix drawsync late by a GPU cycle, so interrupts line up.
It would break at least Ys Seven without that.
2013-04-09 00:56:50 -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
c57954a72e
Implement sceGeDrawSync().
2013-04-06 02:30:37 -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
cd246d27c3
Count cycles in the GPU, rough guess at timing.
...
Doesn't actually do anything yet with the count, though.
2013-04-03 08:10:58 -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
Unknown W. Brackets
0f15a5eae6
Move the pc-management cmds to GPUCommon.
2013-03-31 23:57:02 -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
Unknown W. Brackets
5486d0a3c1
Don't crash if currentList is NULL.
2013-02-12 01:12:32 -08: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
Florent Castelli
8004d360dd
Interrupt handler reorganization for easier GE interrupt support
2013-02-04 03:10:01 +01:00
Henrik Rydgard
972e4ea4e4
Warning fixes, prevent a possible (but unlikely) crash
2013-01-02 21:05:00 +01: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