Commit Graph

55 Commits

Author SHA1 Message Date
Henrik Rydgard
98daf18d56 Add skeleton code for Windows multitouch, to be filled in by someone who can test :P 2013-04-16 21:14:46 +02: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
7b184602df Remember the GE offset in the stack on call/ret. 2013-04-15 22:20:49 -07:00
Henrik Rydgard
ea11c36091 Fix a vshader id bit collision, avoid color test when set to 'ALWAYS', zeroinitialize dls. 2013-04-15 22:57:54 +02:00
Henrik Rydgard
cbbc4e2c9e Reset gstate_c.offsetAddr on RET. Fixes some "CALL to illegal address"
(as seen in Flatout for example).
2013-04-15 22:24:30 +02:00
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
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
15cb005a60 Always trigger FINISH and SIGNAL from END. 2013-04-03 08:16: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
514bf93bf9 Don't trigger an interrupt when cb = -1. 2013-04-03 08:09:34 -07:00
Unknown W. Brackets
ec009bc299 Cleanup a few GPU error codes. 2013-03-31 23:57:03 -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
d4603136f0 Minor stuff: Fake-implement sceKernelReferThreadProfiler, make sure GPU frame dump logging gets output by not sending it to G3D. 2013-03-04 22:15:39 +01:00
Xele02
0fefca672d Add 2 step mode for display list : Go to selected line and go to next draw using selected texture 2013-02-17 21:43:44 +01:00
Xele02
2a6af9b8a3 Add displayList debug dialog 2013-02-17 01:28:43 +01:00
Unknown W. Brackets
fb7cabcccf Fix some missing GPUCommon state. 2013-02-12 01:06:11 -08: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
00f9c97479 Seems vertex/index addresses should be computed through the same mechanism as jumps.
Gets rid of bad vertex address messages in Sol Trigger.
2013-02-02 23:48:22 +01:00
Unknown W. Brackets
661c7132c4 Don't check that the pc is valid every single op. 2013-01-29 08:19:07 -08:00
Henrik Rydgard
7390f2b5f6 Some realtime profiling stuff. Enable FZ (flush-to-zero) mode. 2013-01-11 00:13:39 +01:00
Lewis Robbins
64ee61a150 fixed compiling error 2013-01-10 08:02:55 +00:00