Henrik Rydgård
dd8f9b682f
Don't crash on trying to re-record a GE dump
2024-11-01 20:27:09 +01:00
Henrik Rydgård
e01ca5b057
Logging API change (refactor) ( #19324 )
...
* Rename LogType to Log
* Explicitly use the Log:: enum when logging. Allows for autocomplete when editing.
* Mac/ARM64 buildfix
* Do the same with the hle result log macros
* Rename the log names to mixed case while at it.
* iOS buildfix
* Qt buildfix attempt, ARM32 buildfix
2024-07-14 14:42:59 +02:00
Henrik Rydgård
acbd32c5f1
Fix GE frame dumps, no longer produces only 1kb files.
...
Broke in ca94de8d4b
2023-12-28 20:27:32 +01:00
Herman Semenov
ca94de8d4b
[GPU/Common/DX9/GLES/Software] Object out of scope optimization for better codegeneration (lower level scope)
2023-12-20 12:34:34 +03:00
Henrik Rydgård
d2d8688e47
Add "Create frame dump" to the in-game developer menu (that can be enabled in dev settings)
...
Makes it possible to create one without connecting the websocket
debugger, even on non-Windows platforms.
2023-08-24 14:41:35 +02:00
Unknown W. Brackets
88ba003f46
ThreadManager: Add a simple priority field.
...
Currently, not actually respected.
2023-02-02 17:08:24 -08:00
Unknown W. Brackets
860be93c0c
GE Debugger: Prevent double init.
...
If you were mashing record, it was possible to add two inits to the
recording, which caused playback issues.
2022-12-18 14:53:11 -08:00
Unknown W. Brackets
9cfcbc46e6
Global: Cleanup initialization/pointer checks.
...
Cleaning up a lot of cases of uninitialized data, unchecked return values
for failures, and similar.
2022-12-10 21:13:36 -08:00
Unknown W. Brackets
a6bc9acf16
GE Debugger: Correct LastVRAM mirror wrap around.
...
Oops, this fixes crashes when textures are used near the edge of VRAM.
2022-11-27 19:59:57 -08:00
Unknown W. Brackets
00e8720749
GE Debugger: Try harder to identify unchanged VRAM.
...
If we exit to the CPU (stall), we don't know if VRAM gets changed by the
CPU. We can check to avoid making the dump require unnecessary copying.
2022-11-01 22:47:46 -07:00
Unknown W. Brackets
5afb009b56
GE Debugger: Dump textures only if possibly used.
2022-11-01 22:15:11 -07:00
Unknown W. Brackets
e7185f93b3
GE Debugger: Restrict marking of dirty VRAM better.
2022-11-01 22:14:23 -07:00
Unknown W. Brackets
a1efed31b9
GPU: Use flags to fix triggered upload/download.
...
No longer using mirror hacks.
2022-10-03 20:17:25 -07:00
Unknown W. Brackets
73040ebb8f
GE Debugger: Ignore mirrors for target in record.
2022-10-02 20:48:28 -07:00
Unknown W. Brackets
fcc877a0f3
GE Debugger: Fix memcpy/memset recording.
...
Uhh, oops. I'm surprised I didn't notice these were broken for so long.
2022-10-01 23:48:23 -07:00
Unknown W. Brackets
978fd9fc60
GE Debugger: Record the Edram translation value.
2022-10-01 23:48:06 -07:00
Unknown W. Brackets
c3c5450b8f
GE Debugger: Fix small tex/clut recopying.
...
If it's less than 256 bytes, we can't mark the entire VRAM area copied.
This still helps frame dumps avoid excessively slow VRAM recopying
situations, but fixes issues like missing trees in #12738 .
2022-09-23 21:18:39 -07:00
Unknown W. Brackets
fddcbfc5fa
GE Debugger: Include rendered CLUTs in frame dumps.
...
Like with textures, this uses the VRAM address directly.
2022-09-19 12:01:34 -07:00
Unknown W. Brackets
7b4cc3334b
GE Debugger: Save current clut in frame dumps.
...
For example, #14465 shows a case where the frame relies on a previously
loaded CLUT.
2022-09-19 08:30:12 -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
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
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
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
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
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
Unknown W. Brackets
61f907fd18
GE Debugger: Fix alignment in GE dumps.
2020-05-24 19:06:20 -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
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
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
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
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