Commit graph

111 commits

Author SHA1 Message Date
Unknown W. Brackets
a901fa4315 GE Debugger: Add separate step based on vsync.
I think there were some games where this would step in the middle of a
frame, but not seeing it commonly now.  So make it the default, but allow
both methods in the menu.

Fixes #15893.
2022-08-23 19:48:34 -07:00
Unknown W. Brackets
86085335ca GE Debugger: Record 1 flip if no display calls.
Before we were waiting 4 flips before ending recording.
2022-08-23 19:20:14 -07:00
Unknown W. Brackets
229c944208 GE Debugger: Include extended CLUT in frame dumps.
Not available on a real PSP, but used in an enhancement (see #15727.)
2022-08-20 17:35:06 -07:00
Henrik Rydgård
2f3cad9964 After recording a GE dump, open an explorer window pointing at the file 2022-08-16 21:54:36 +02:00
Unknown W. Brackets
132686513d GE Debugger: Correct base accounting in playback.
On a jump, was forgetting the base value which caused corruption.
2022-08-14 16:14:23 -07:00
Unknown W. Brackets
4467b7830f Debugger: Bump GE dump version to ignore bad flag. 2022-08-11 20:28:56 -07:00
Unknown W. Brackets
c74d69bc2d Debugger: Correct GE frame dump VRAM dirty flag.
Was just wrong before, causing incorrect ignoring in some cases.
2022-08-11 20:25:01 -07:00
Unknown W. Brackets
539e2bbbf8 Debugger: Track unchanged VRAM to avoid copy.
See #15251, the framedump here reused a VRAM texture for many draws, and
this caused it to recopy the texture over and over again.  Use a flag to
skip if possible.
2022-02-20 13:51:40 -08:00
Unknown W. Brackets
71e855a822 GE Debugger: Track last gstate on stepping. 2022-02-13 10:22:59 -08:00
Unknown W. Brackets
0e4daa05b9 GE Debugger: Avoid crash on Step Draw with flush.
If we're already stepping, we shouldn't try to re-enter stepping.
2022-02-10 21:44:41 -08:00
Unknown W. Brackets
f17f6465ac GE Debugger: Optimize slab lookup.
If the slab is the last one, we can grab it right away.
2022-02-07 23:55:10 -08:00
Unknown W. Brackets
da4206b078 GE Debugger: Skip overhead without breakpoints.
In the common case that there's no breakpoints, we can skip most of the
checks and a call.
2022-02-07 23:54:18 -08:00
Unknown W. Brackets
c66619f7c9 GE Debugger: Add filter to skip prim calls.
This allows you to cut prims from the scene as desired.
2022-02-06 21:25:33 -08:00
Unknown W. Brackets
1d37f24e17 GE Debugger: Reduce playback command noise.
No need to reassert these values each prim.
2022-02-05 19:27:20 -08:00
Unknown W. Brackets
2479d52202 Global: Reduce includes of common headers.
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
Unknown W. Brackets
e47ee79899 GE Debugger: Allow GPU stepping while CPU stepping.
This can happen if you step into an update stall address call or similar.
2022-01-23 23:06:33 -08:00
Unknown W. Brackets
eb95b99523 GE Debugger: Add option to auto flush.
This makes it easier to see what's happening in each draw.
2022-01-22 13:12:59 -08:00
Henrik Rydgård
f991f6a789 Remove the old allocator visualizer. Keep the setting but hide it. Other feedback 2021-11-23 08:55:12 +01:00
Unknown W. Brackets
a0599f70c4 GE Debugger: Record until some drawing.
Otherwise, we end up with empty frame dumps if games call display twice.
2021-11-03 17:40:20 -07:00
Henrik Rydgård
73871b9b7e Implement new thread manager, port stuff to it. 2021-06-12 13:03:53 +02:00
Henrik Rydgård
025bcb1673 Introduce Path, start using it all over the place.
Still lots left to convert!

Convert GetSysDirectory to return Path.

More buildfixing

Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Unknown W. Brackets
086b8229f5 GE Debugger: Keep dump generation deterministic. 2021-04-17 16:25:36 -07:00
Unknown W. Brackets
abb7b83fee GE Debugger: Thread dedupe pushbuf lookups.
This improves time especially for larger dumps.
2021-04-16 00:00:56 -07:00
Unknown W. Brackets
a97030068c GE Debugger: Use zstd for save states. 2021-04-11 09:13:10 -07:00
Unknown W. Brackets
cc1b4e695d Debugger: Correct crash with no alloc tag. 2021-02-15 15:01:23 -08:00
Henrik Rydgård
4f43cff5ca
Move fileutil, net, image loaders, ui to Common. (#13506)
* Move and rename file_util/fd_util to Common/File/FileUtil and DirListing

Let's also move net while we're at it.

Move the ZIM/PNG loaders over to Common.

Move the UI framework into Common

iOS buildfix

* Buildfix

* Buildfixes

* Apple buildfix

* This typo again..

* UWP buildfix

* Fix build of PPSSPPQt, such as it is (it's not in good condition...)

* Guess what? Another buildfix.
2020-10-04 20:48:47 +02:00
Henrik Rydgård
821817e6d4 Move the profiler to Common 2020-10-04 11:42:16 +02:00
Henrik Rydgård
989e353482 Common.h shouldn't include Log.h.
Buildfixes

More buildfixes. Move JSON code to common.
2020-10-04 11:42:14 +02:00
Henrik Rydgård
3162f30158 Merge base/basictypes.h into Common/Common.h (mostly). 2020-09-29 15:51:51 +02:00
Henrik Rydgård
ed88761ecc Merge ext/native/stringutil.cpp/h into Common/StringUtils.cpp/h. 2020-09-29 15:51:51 +02:00
Unknown W. Brackets
815580533c GE Debugger: Include game ID inside dump file.
Just so we're not relying on filename parsing.  It's useful information.
2020-09-06 14:38:56 -07:00
Henrik Rydgård
809fd6b8fa Small perf optimization in debug mode (surprisingly expensive to do a vector lookup here). 2020-07-24 00:05:36 +02:00
Henrik Rydgård
c5e0b799d9 Remove category from _assert_msg_ functions. We don't filter these by category anyway.
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Unknown W. Brackets
61f907fd18 GE Debugger: Fix alignment in GE dumps. 2020-05-24 19:06:20 -07:00
Unknown W. Brackets
3b74d4b680 GE Debugger: Prevent crash when stopping execution. 2020-04-11 23:44:31 -07:00
Unknown W. Brackets
93069756e6 GE Debugger: Split playback into a separate file. 2019-06-23 18:49:27 -07:00
Unknown W. Brackets
9e98642258 GE Debugger: Cache decompressed frame commands.
This adds to noise in profiling the frame dump.
2019-06-23 18:29:36 -07:00
Unknown W. Brackets
df6c5f38dc Core: Use readable names for failed backends. 2019-06-22 12:48:56 -07:00
Henrik Rydgård
60a81a6144
Merge pull request #11658 from unknownbrackets/ui-minor
Windows: Hide Vulkan/D3D11 if not available
2018-12-11 12:13:00 +01:00
Unknown W. Brackets
bb7d9646f2 GE Debugger: Fix dump replay ticks accounting.
Sometimes a list ends earlier than now, we don't need to eat cycles then.
Fixes #11655.
2018-12-10 23:05:42 -08:00
Unknown W. Brackets
f88dc9e821 GE Debugger: Allow relative prim counts. 2018-12-01 15:50:20 -08:00
Unknown W. Brackets
e029168be2 GE Debugger: Allow jumping to a specific prim.
This will make the most sense when frames are relatively stable, and works
great for GE dumps.
2018-12-01 06:40:27 -08:00
Unknown W. Brackets
4d5c8fcff4 GE Debugger: Track a counter of prims. 2018-12-01 06:26:35 -08:00
Unknown W. Brackets
3cf3985c8d GE Debugger: Support record for more render types.
This should handle both games that use display, and games that don't.
2018-11-17 22:12:45 -08:00
Unknown W. Brackets
179514e8d7 GE Debugger: Avoid writing 0 sized packets.
This causes errors on allocation sometimes due to things like count=0 in a
prim command.
2018-11-17 22:01:14 -08:00
Henrik Rydgård
036556c371
Merge pull request #11564 from unknownbrackets/ge-dump
GE Debugger: Preserve VRAM textures / render-to-texture in dumps
2018-11-17 23:32:20 +01:00
Unknown W. Brackets
2d3885fc1a GE Debugger: Fix display event record timing.
When the display happens mid frame, this fixes it so you can see the
result easily when running the dump, without manually stepping through.
2018-11-17 11:14:10 -08:00
Unknown W. Brackets
6383f407d1 GE Debugger: Avoid overwriting in softgpu playback. 2018-11-17 10:06:31 -08:00
Unknown W. Brackets
169d2fa444 GE Debugger: Preserve VRAM textures in dumps.
Should allow for (some) reproduction of render-to-texture behavior.
2018-11-17 10:06:31 -08:00
xebra
64cf6f2755 GE Debugger:Step to curved surface. 2018-10-01 11:41:19 +09:00