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
8b99c9f9d9
GE dump playback: Don't flip unless DISPLAY is the last command. This messes up the frame structure.
2024-01-30 11:14:38 +01:00
Henrik Rydgård
e3177ac870
Make some global string pointers const, not just the strings.
...
Minor cleanup.
2023-12-29 14:09:45 +01: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
Herman Semenov
309f0d97f2
[Common Data Net/Core Debugger HLE/GPU Debugger] Fixed reduction data type size to strict 32-bit integer
2023-12-14 19:26:10 +03:00
Unknown W. Brackets
cec9dbbdf7
Build: Add some missing include guards.
2023-09-07 17:14:58 -07: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
3b03c1ca85
GE Debugger: Make step tex jump to first prim.
2023-07-16 11:34:51 -07: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
d7224a8401
GE Debugger: Cleanup logspam on game exit.
...
If you're stopped on a frame and quit, it was previously logging every
command as it exited, thinking it was waiting on each.
2022-12-01 23:12:14 -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
6c2001d12d
GE Debugger: Correct texture address corruption.
...
Happened when playing back frame dumps that set bufw after specifying the
texture address, but before drawing.
Seen in Syphon Filter.
2022-11-19 14:59:52 -08:00
Unknown W. Brackets
1ffdf0d5b8
GE Debugger: Respect unchanged VRAM each frame.
...
Oops, wasn't setting the version each run after caching the frame dump
data.
2022-11-01 22:56:29 -07: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
416265431b
GE Debugger: Display if tex is framebuf.
...
Rather than guessing based on size, let's show explicitly.
2022-10-10 22:35:42 -07:00
Unknown W. Brackets
55d5dc3834
GPU: Rename readback and buffer write operations.
...
Avoid download/upload and pack, which don't have clear directions.
2022-10-09 13:49:41 -07:00
Henrik Rydgård
b333695cd1
Merge pull request #16160 from unknownbrackets/vram-mirrors
...
GPU: Use flags to fix triggered upload/download
2022-10-04 08:45:06 +02: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
Henrik Rydgård
ed3cd1dc26
Merge pull request #16150 from unknownbrackets/vram-mirrors
...
GPU: Mask away unused bits in framebuf/zbuf ptr, cleanup
2022-10-03 11:56:24 +02:00
Herman Semenov
29b87e0c0b
Merge branch 'master' into master
2022-10-03 07:49:13 +00:00
Unknown W. Brackets
73040ebb8f
GE Debugger: Ignore mirrors for target in record.
2022-10-02 20:48:28 -07:00
Unknown W. Brackets
4a17ab8070
GE Debugger: Correct mask in target breakpoints.
2022-10-02 20:47:12 -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
lainon
3cdf72b68b
Better readability and optimization insertion into container by replacing 'insert' -> 'emplace', 'push_back' -> 'emplace_back'
2022-09-30 12:35:28 +03:00
Unknown W. Brackets
7ff5434968
GE Debugger: Tag frame dump replay VRAM writes.
...
Just for debugging, it's helpful especially paired with softgpu tagging.
2022-09-23 21:20:14 -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
5b5529b390
GE Debugger: Show time spent stepping.
2022-09-18 09:52:15 -07:00
Unknown W. Brackets
7d07e4e75d
GE Debugger: Add fields to register expressions.
...
This means a conditional breakpoint can now use, for example,
vtype.through == 1 to check the through mode flag.
No constants, but this makes it easier to get right. Would be nice to
have an autocomplete of the field names, of course...
2022-09-11 13:09:03 -07:00
Unknown W. Brackets
55c70332a1
GE Debugger: Eval breakpoints as if register set.
2022-09-11 11:05:30 -07:00
Unknown W. Brackets
aa377662dd
GE Debugger: Provide addrs in breakpoint conds.
...
Easier to just refer to the full address.
2022-09-11 10:57:04 -07:00
Unknown W. Brackets
100cbec620
GE Debugger: Fix crash on bp before list running.
2022-09-10 19:45:08 -07:00
Unknown W. Brackets
402492a958
GE Debugger: Show imm prim flag detail in disasm.
2022-09-06 22:31:09 -07:00
Unknown W. Brackets
531c7e452d
GE Debugger: Count imm prims as prims.
2022-09-06 18:55:25 -07:00
Unknown W. Brackets
f14e49a373
GE Debugger: Add conditions to cmd breakpoints.
2022-09-05 17:33:54 -07:00
Unknown W. Brackets
0b30b723bb
GE Debugger: Add address breakpoint conditions.
2022-09-05 17:33:54 -07:00
Unknown W. Brackets
542e7aa555
GE Debugger: Add a table of register metadata.
...
So far, not used, but indicates info about each GE register.
2022-09-05 12:15:53 -07:00
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