50 Commits

Author SHA1 Message Date
Unknown W. Brackets
e45bd32c61 Fix incorrect GPU timing with signal jumps. 2013-04-12 08:57:30 -07:00
Unknown W. Brackets
6cbd1b5205 Fix typo, add back state to savestate. 2013-04-09 02:18:09 -07: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
210c7b1639 Slow down the GPU clock estimate.
This makes  Fat Princess for example much faster.
2013-04-07 17:05:12 -07:00
Unknown W. Brackets
5d017829ad Make sure lists aren't reused before they complete. 2013-04-07 17:05:11 -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
0ca4e5f0a7 Implement the jump, call, and ret signals.
Still buggy, but more things show...
2013-04-06 11:03:43 -07:00
Unknown W. Brackets
376ad80d76 Implement sync signal in display lists.
Makes dialogs show up in 3rd Birthday.
2013-04-06 10:12:41 -07:00
Unknown W. Brackets
dac448dfae Implement the pause signal a bit better. 2013-04-06 09:59:24 -07:00
Unknown W. Brackets
8302780e98 These signals seem to skip the next FINISH, report. 2013-04-06 08:40:24 -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
c0f20c2fdd If the interrupt is not run, don't flip gpuState.
Technically this is a hack, hopefully can remove it soon.
2013-04-06 02:30:37 -07:00
Unknown W. Brackets
c57954a72e Implement sceGeDrawSync(). 2013-04-06 02:30:37 -07:00
Unknown W. Brackets
832edb0a8f Fix some x64 type conversion warnings. 2013-04-05 20:29:20 -07:00
Unknown W. Brackets
028cdbea43 Add some GPU related reporting. 2013-04-05 01:17:18 -07:00
Unknown W. Brackets
ef1086413c Correct wait signal handling. 2013-04-05 00:32:35 -07:00
Unknown W. Brackets
2913bc063a Implement sceGeListDeQueue().
Doesn't seem often used, though.
2013-04-05 00:32:34 -07:00
Unknown W. Brackets
339b444703 Switch to a fixed size displaylist queue. 2013-04-05 00:32:34 -07:00
Unknown W. Brackets
c986228d12 Change the state in PSP_GE_SIGNAL_HANDLER_SUSPEND. 2013-04-05 00:32:33 -07:00
Unknown W. Brackets
942eadb031 Always trigger interrupts on signal.
It seems likely the hardware does this.
2013-04-05 00:32:33 -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
566b88bd63 Don't actually run sceGeListEnqueueHead right away. 2013-04-04 00:11:15 -07:00
Unknown W. Brackets
5336ae814d Return more correct values in sceGeDrawSync(). 2013-04-03 23:31:01 -07:00