Commit Graph
348 Commits
Author SHA1 Message Date
Henrik RydgårdandClaude Opus 5 75ff0d406c Rename Memory::Lock() to Core_LockAgainstShutdown(), move it to Core
It stopped being about memory when CPU_Shutdown started holding it across the
whole teardown - it's what keeps kernel objects, the symbol map and the memory
map from being freed while another thread reads them. The old name invited the
reading that it locks memory *access*, which it has never done.

Memory::Reinit() now holds it across both halves rather than relying on
Memory::Shutdown()'s own acquire: between Shutdown() and Init() there is no
memory map at all, and a reader could slip into that gap.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GZq8ZtJmFY7bkX5FVkr3P9
2026-08-17 13:11:16 +02:00
Henrik Rydgård 3bd41376da More memory cleanup 2026-08-11 20:12:10 +02:00
Henrik Rydgård 61e1ef8f7a Remove the "Software skinning" option. Now always on. 2026-07-14 17:02:57 +02:00
Henrik Rydgård 1b2f87bf1a Rename GPUgstate to GEState 2026-07-02 20:34:09 +02:00
Henrik Rydgård d0f4e5c2d1 Visualize bounding boxes in ImGe debugger by drawing their corners 2026-06-03 13:46:30 +02:00
Henrik Rydgård 0dc6e36d19 Delete redundant implementation of vertex preview in SoftGpu 2026-06-02 15:43:11 +02:00
Henrik Rydgård 79328a99b3 Vertex preview works again in both debuggers. 2026-06-02 15:40:37 +02:00
Henrik Rydgård c46774c923 Fix the ImGe debugger vertex list 2026-06-02 14:53:37 +02:00
Henrik Rydgård bb573e6e0c Well, it builds, but doesn't work yet. 2026-06-02 12:33:53 +02:00
Henrik Rydgård a317890c08 Remove the GPUDebugInterface class
Just a pointless extra layer in the class hiearchy, making it
unnecessarily hard to modify the interface.

Might as well hit GPUCommon directly.
2026-06-02 11:15:08 +02:00
Henrik Rydgård f0d715feaa During culling, evaluate minZ,maxZ,minW,maxW, and use them to cull some things. Also, assorted vshader work. 2026-05-30 19:07:58 +02:00
Henrik Rydgård 85de7fdc50 Add new flag that will simplify the GL path 2026-05-14 22:20:35 +02:00
Henrik Rydgård 9a7241708c Win32 file dialog: Prefill the filename when saving 2026-03-07 09:49:57 +01:00
oltolm 72f305c779 fix warnings and cmake windows build 2026-02-04 21:28:01 +01:00
Henrik Rydgård 99a1ddb657 Assorted code cleanup 2026-02-01 15:03:23 +01:00
Henrik Rydgård 4007e973f3 Driveby cleanup: Remove use of legacy <tchar.h> 2026-02-01 14:43:40 +01:00
Henrik Rydgård d6ebfed432 Fix some bugs and warnings from a pass of static analysis 2026-01-29 17:41:54 +01:00
Henrik Rydgård 7853881210 GPU header cleanup: Avoid including GPUCommon.h in some places 2025-11-23 20:37:37 +01:00
jonkadelic 202260de0d GEDebugger: fixed Verts tab displaying Invalid
Resolves an issue where the Verts tab on the GE Debugger consistently
displays "Invalid" for all vertex values. This was due to rowCount_ in
TabVertices being left uninitialized.
2025-09-05 08:30:23 +02:00
Henrik Rydgård 42b46e2098 If RetroAchievements' "Hardcore mode" is enabled, prevent debugger use
Fixes an easy way you could access the debugger windows.
2025-07-09 16:25:24 +02:00
Henrik Rydgård 09e067c6e1 Revert "Get rid of remains of support for non-square screen DPIs"
This reverts commit f206ed95eb.
2025-05-21 21:41:50 +02:00
Henrik Rydgård ef97eb668a ImDebugger: Add a Time window to check various counters 2025-04-23 17:10:31 +02:00
oltolm 02e767866a fix compiler warnings 2025-02-22 14:15:15 +01:00
Henrik Rydgård f206ed95eb Get rid of remains of support for non-square screen DPIs 2025-02-20 11:14:26 -06:00
Henrik Rydgård ee297e974d Move more code into SoftwareTransformCommon, cleanup 2024-12-18 13:57:26 +01:00
Henrik Rydgård e74101a2fb applySkinInDecode belongs in the VertexTypeID, not in the options. 2024-12-17 18:24:18 +01:00
Henrik Rydgård db13c09c41 Add break-on-count (with rudimentary UI), break on block transfer 2024-12-17 11:24:07 +01:00
Henrik Rydgård dda3ddf6b0 Simplifications 2024-12-15 16:09:42 +01:00
Henrik Rydgård 54d18bb343 Lift some more debugging functionality into GPUCommon 2024-12-15 14:03:05 +01:00
Henrik Rydgård 4223bcfae1 Move the ownership of GPU breakpoints to GPUCommon 2024-12-15 12:51:37 +01:00
Henrik Rydgård 638607d29a Refactor: Make GPUCommon own the framedump "recorder". 2024-12-15 12:07:44 +01:00
Henrik Rydgård 9e019ae246 Remove the notion of the GPU debugger being "Active". Now it's automatic. 2024-12-15 11:12:53 +01:00
Henrik Rydgård 5aeef924d2 Implement vertex preview in the new Ge debugger 2024-12-12 23:36:29 +01:00
Henrik Rydgård 8d1fbe9522 Move more utility functions from the Win32 GE debugger to the common code 2024-12-12 19:36:55 +01:00
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 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 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 51ae6ce898 Small simplification 2024-12-05 10:55:19 +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 9ed8d8871e Ge stepping without wait: Tex/Prim stepping works. Draw/Single have issues. 2024-12-05 00:36:48 +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 f54d701a2e Decentralize the assert for AllocateAlignedMemory failures 2024-10-22 21:49:50 +02:00
Henrik Rydgård f020d1d815 Windows inputbox: Add flags field, delete dupe code, add ability to mask passwords 2024-09-26 10:48:31 +02:00
Henrik Rydgård 9699be2110 RetroAchievements: Cleanup better on login failure 2024-09-26 01:09:56 +02:00