62 Commits

Author SHA1 Message Date
xebra
64cf6f2755 GE Debugger:Step to curved surface. 2018-10-01 11:41:19 +09:00
Unknown W. Brackets
653129c528 Debugger: Add an event for GE dump recording. 2018-09-01 10:59:37 -07:00
Unknown W. Brackets
c10b2035b5 Debugger: Prevent record with no commands.
Should cut down on empty dumps, at least.
2018-09-01 09:51:04 -07:00
Unknown W. Brackets
f1afc51994 GE Debugger: Refactor out stepping callback.
In case we have multiple connected debuggers, we don't want just a
callback.  A counter works fine.
2018-09-01 09:41:20 -07:00
Unknown W. Brackets
a4c0640f01 GE Debugger: Factor out host calls some.
Moving more of this to cross platform for the web debugger.
2018-09-01 08:32:03 -07:00
Unknown W. Brackets
e6917cccf6 Debugger: Add APIs to retrieve render image. 2018-06-16 15:33:02 -07:00
Unknown W. Brackets
a0608d7fc5 Debugger: Allow GPU actions while stepping.
This allows pulling the display/target while paused.  It may also allow
other actions that work outside a display list.
2018-06-16 13:57:45 -07:00
Unknown W. Brackets
582bc2d60a GE Debugger: Stall less liberally on GE dump exec.
This makes it easier to compare performance and flushing bugs.
2018-06-11 15:14:18 -07:00
Unknown W. Brackets
f7443aaa15 GE Debugger: Use a class for dump execution. 2018-06-11 15:06:40 -07:00
Unknown W. Brackets
0ed2c03350 GE Debugger: Prevent hang on shutdown.
Since we're blocking the Emu thread, we can't use a hook from the Emu
thread to wake up.

The change to lifecycle callbacks caused this.
2018-06-11 14:54:42 -07:00
Unknown W. Brackets
e313a9bf6c Debugger: Lock startup/shutdown for threadsafety.
Otherwise things can get freed while we're trying to inspect them.
2018-06-06 05:58:49 -07:00
Unknown W. Brackets
e9cc1ee463 Debugger: Allow multiple clients more properly.
Otherwise we lose wakeups and hang.
2018-06-06 05:58:49 -07:00
Unknown W. Brackets
a37a8ca4f0 GPU: Add quick method for debugging.
Helps when you want to bail out to the debugger quickly.
2017-12-24 18:05:44 -08:00
Henrik Rydgård
ca6865b323 GE Record: After recording a frame, log the filename of the output file. 2017-12-04 15:15:55 +01:00
Unknown W. Brackets
14cf862e22 GE Debugger: Gah, fix some pointer size errors.
Happened to be 8 bytes, but not on 32-bit, of course.
2017-06-06 19:49:10 -07:00
Henrik Rydgård
b5ed8de9e5 Warning fix 2017-06-05 13:39:06 +02:00
Unknown W. Brackets
73fd75c0e2 GE Debugger: Fix replay timing drift. 2017-06-04 20:08:17 -07:00
Unknown W. Brackets
7e26c75a27 GE Debugger: Pass filename into dump replay. 2017-06-04 15:11:10 -07:00
Unknown W. Brackets
d62f5f9fe2 GE Debugger: Add some comments and cleanup. 2017-06-04 14:51:27 -07:00
Unknown W. Brackets
0ce48fbeb5 GE Debugger: Reduce memory allocation.
This allows larger dumps to run without memory errors.
2017-06-04 12:11:23 -07:00
Unknown W. Brackets
883c4e8ac8 GE Debugger: Compress GE dumps.
This doesn't save slab memory/size, but it does improve file size.
2017-06-04 11:10:19 -07:00
Unknown W. Brackets
23d2ababd1 GE Debugger: Run replay using stalling.
This is faster and tests flushing better.
2017-06-04 10:39:03 -07:00
Unknown W. Brackets
2a388ba785 GE Debugger: Fix replay FPS. 2017-06-04 10:39:02 -07:00
Unknown W. Brackets
80be3166af GE Debugger: Allocate replay memory smarter.
This ends up being a good chunk faster.
2017-06-04 10:39:01 -07:00
Unknown W. Brackets
300961ce6e GE Debugger: Align texture/vertex/etc. data.
This may allow slab allocation after all, since it needs to be aligned.
2017-06-04 10:38:59 -07:00
Unknown W. Brackets
9430145774 GE Debugger: Fix clut command recording.
The loadclut command hasn't executed yet...
2017-06-04 10:38:58 -07:00
Unknown W. Brackets
ababe0046e GE Debugger: Implement memory transfer commands. 2017-06-04 10:38:56 -07:00
Unknown W. Brackets
9f51c35df1 GE Debugger: Fix memmem and cleanup.
Somehow the prev memmem was sometimes not working right...
2017-06-04 10:38:56 -07:00
Unknown W. Brackets
3e14900164 GE Debugger: Load commands more directly. 2017-06-04 10:38:55 -07:00
Unknown W. Brackets
0c08559840 GE Debugger: Wait to get the right display buf. 2017-06-04 10:38:54 -07:00
Unknown W. Brackets
fcfbe8cabb GE Debugger: Fix matrix dumping.
Record wasn't seeing the commands to dump them.
2017-06-04 10:38:53 -07:00
Unknown W. Brackets
e45b04a699 GE Debugger: Clear after replay finished. 2017-06-04 10:38:53 -07:00
Unknown W. Brackets
82beb726fc GE Debugger: Record init state and display buf.
Some things are now visible, but still drawing wrong...
2017-06-04 10:38:52 -07:00
Unknown W. Brackets
21153c899b GE Debugger: Oops, don't record if not active.
In case the debugger is open but not recording, oops.
2017-06-04 10:38:51 -07:00
Unknown W. Brackets
73d21ab859 GE Debugger: Initial GE dump replay.
Doesn't work for a few reasons, mainly need existing matrix state/etc.
2017-06-04 10:38:50 -07:00
Unknown W. Brackets
4f07ec0df5 GE Debugger: Oops, emit transfer/clut cmds. 2017-06-03 15:29:11 -07:00
Unknown W. Brackets
36069d1446 GE Debugger: Simple framework to load dumps.
This tries to execute them within the context of the emulator as much as
possible, so we don't have weird bugs.  Going with a file type so we can
easily load the dump by opening the file directly.
2017-06-03 15:29:11 -07:00
Unknown W. Brackets
37a894a558 GE Debugger: Record memcpy/memset too. 2017-06-03 15:29:10 -07:00
Unknown W. Brackets
b2bd966adf GE Debugger: Implement basic recording.
A bit slow since it searches really hard for dups, but otherwise the file
is often very large.
2017-06-03 15:29:09 -07:00
Unknown W. Brackets
cbbd3cac7e GE Debugger: Initial structure for GE data dumping.
This snapshots the GE commands and drawing to facilitate debugging.
2017-06-03 15:29:09 -07:00
Henrik Rydgård
440e72d250 Clean up among the logs. Remove MASTER_LOG. 2017-03-06 13:10:23 +01:00
Henrik Rydgard
d46397627e Buildfixes 2017-02-28 11:40:29 +01:00
Henrik Rydgard
26a2d42731 Big mutex overhaul - remove our custom ones, make them non-recursive where possible 2017-02-28 11:40:29 +01:00
Florent Castelli
e0ff68b3f6 c++11: Remove compat header base/functional.h
We want a proper C++11, not tr1. We don't target those compilers anyway.
2016-10-12 11:32:45 +02:00
Unknown W. Brackets
fa0e88f1b7 Add a flag to use the display vfb for screenshots.
This fixes proportions of reporting, savestate screenshots, and TAS
recording for PS1 ports, mainly.
2016-09-25 16:32:18 -07:00
Unknown W. Brackets
2cfe80ccc0 Add a basic context menu to the state list.
This allows us to toggle breakpoints on specific commands.
2016-05-21 18:32:15 -07:00
Unknown W. Brackets
916c53c859 Add render target breakpoints to GE debugger.
Including z buffer as well, hope it's not confusing.
2016-05-21 17:55:45 -07:00
Unknown W. Brackets
c6ffed6484 gedbg: Add mechanics to grab CLUT buffer. 2016-01-10 09:25:19 -08:00
Henrik Rydgard
cde585a29a Include dependency cleanup 2015-07-29 11:48:20 +02:00
Unknown W. Brackets
69756733eb Add another GE cmd for skip tex in debugger. 2015-02-21 18:09:53 -08:00