Henrik Rydgård
4020fd8ec5
Move the last of the vertex preview code to State.cpp
2024-12-12 19:26:33 +01:00
Henrik Rydgård
4b36664dd6
Move more things to State.cpp/h, break out some stuff into a function
2024-12-12 19:26:33 +01:00
Henrik Rydgård
a858032e46
Remove obsolete accounting for time spent stepping the GE (we no longer block)
2024-12-12 18:54:46 +01:00
Henrik Rydgård
d3789367a4
ImGeDebugger: Implement the new state viewer
2024-12-10 17:21:30 +01:00
Henrik Rydgård
e1148485f1
Refactor the GE state viewers
2024-12-10 16:01:53 +01:00
Henrik Rydgård
1b27c27131
Merge the command metadata from the debugger to GECommandTable
2024-12-10 14:52:27 +01:00
Henrik Rydgård
8b8489467b
Transfer metadata from the state.cpp table to GECommandTable
2024-12-10 10:34:43 +01:00
Henrik Rydgård
e3aaf93e28
Add a new log category
2024-12-10 10:34:26 +01:00
Henrik Rydgård
87e9bcdc09
Playback: Remove logging, improve locking, works now it seems
2024-12-10 01:27:25 +01:00
Henrik Rydgård
4befbeac7c
Move the dump playback mips code to Playback.cpp. Assorted cleanup.
2024-12-10 01:27:25 +01:00
Henrik Rydgård
f20266a089
Playback: Match the real sceGe functions better.
2024-12-10 01:27:25 +01:00
Henrik Rydgård
839df81852
thread solution: initial progress
2024-12-10 01:27:25 +01:00
Henrik Rydgård
8b706ba791
Break out a LoadReplay function
2024-12-10 01:27:25 +01:00
Henrik Rydgård
983ea69a57
Replay: Add some plumbing to propagate the Break status outwards
2024-12-10 01:27:25 +01:00
Henrik Rydgård
10445c97d8
Warning fix
2024-12-10 01:02:49 +01:00
Henrik Rydgård
de3617529f
const, rename a function
2024-12-10 01:01:31 +01:00
Henrik Rydgård
a94431f4fa
Remove an unnecessary wrapper function
2024-12-10 01:01:05 +01:00
Henrik Rydgård
b3346df646
ImDebugger: Add a window to inspect upcoming CoreTiming events
2024-12-07 16:28:27 +01:00
Henrik Rydgård
2c8e78408b
Add basic vertex data viewer (with the same flaws as the old one)
2024-12-06 09:29:12 +01:00
Henrik Rydgård
95b7db99ed
Extract the vertex formatting code from the Windows GE Debugger
2024-12-05 10:47:49 +01:00
Henrik Rydgård
6d33408da6
Move the state tab definitions to GPU/Debugger
2024-12-05 10:13:25 +01:00
Henrik Rydgård
21997784bf
Extract FormatStateRow() from the Win32 GE debugger to GPU/Debugger/Registers
2024-12-05 10:07:29 +01:00
Henrik Rydgård
474e7acf54
Hook up the new (bare-bones) ImGui debug window to GPU stepping, fix stepping.
2024-12-05 00:51:59 +01:00
Henrik Rydgård
11819e87cf
PauseAction readbacks now work again
2024-12-05 00:36:49 +01:00
Henrik Rydgård
f8af4906f5
Ge debugger: Better solution for draw notifications
2024-12-05 00:36:49 +01:00
Henrik Rydgård
9ed8d8871e
Ge stepping without wait: Tex/Prim stepping works. Draw/Single have issues.
2024-12-05 00:36:48 +01:00
Henrik Rydgård
c25e6b3933
Add "Split syscall" mechanism
2024-12-05 00:05:39 +01:00
Henrik Rydgård
e977906d75
Lift out running the display list to the callers.
...
This has one tricky case though...
2024-12-03 22:35:36 +01:00
Henrik Rydgård
0df2a40487
Remove the "GPUInterface" base class. Not really useful, GPUCommon is pretty much the same thing.
2024-12-02 11:12:14 +01:00
Henrik Rydgård
35f9b9d0d8
Qt buildfix, assorted warning fixes
2024-12-02 09:14:10 +01:00
Henrik Rydgård
96c4a10e8c
Add two new core states, rename RUNNING to RUNNING_CPU and similar for stepping.
2024-12-01 21:04:21 +01:00
Henrik Rydgård
3a5968ba33
Don't block the render thread while the CPU is paused. This is a prereq for imgui debuggers.
2024-11-05 12:53:21 +01:00
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