Commit Graph
255 Commits
Author SHA1 Message Date
Henrik RydgårdandClaude Opus 5 9b577b5f46 Show module.section+offset next to addresses in exception/stack-trace logs
Added KernelModuleAddressDescription() (Core/HLE/sceKernelModule.cpp),
which looks up which currently loaded module (and text/data/bss/segment
section within it) an address falls in, e.g. "EBOOT.BIN.text+1234".
Wired it into:

- Core_MemoryException/Core_ExecException/Core_BreakException
  (Core/Core.cpp), appended next to every address/pc/ra shown in their
  log lines.
- FormatStackTrace (Core/MemFault.cpp), appended per-frame next to the
  existing symbol description.

This makes crash/exception logs actionable even when there's no symbol
at the faulting address - you at least get which module and section
it's in, useful for reverse engineering unfamiliar code.

Verified live via headless: injected a MIPS break instruction at the
current PC (through Tools/wsdbg) and confirmed the log line changed from
"break instruction hit at 088040ac" to "break instruction hit at 088040ac
[sceDisplayWaitVblank Test.text+ac]".

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XDNwPPuidmNxQGRJxBuRL6
2026-07-27 23:44:14 +02:00
Henrik Rydgård 3139d7ccfe Add command line parameters for controlling the behavior on memory/instruction exceptions 2026-07-27 18:37:26 +02:00
Henrik Rydgård 4bf36fc7f8 Add command line option --vsh to try to boot the VSH. Logspam reduction, improve printf logs. 2026-07-27 14:58:59 +02:00
Henrik Rydgård 3eb056ad86 Move Common/GraphicsContext.h to Common/GPU/GraphicsContext.h 2026-07-26 13:58:17 +02:00
Henrik Rydgård 59637a331d Remove UB in Core_SteppingReason. README update. 2026-05-11 16:20:32 +02:00
Silvris 15189e99d3 time out InactiveCond's wait instead 2025-09-21 21:46:40 -05:00
Silvris 6d5bf32796 initial tests 2025-09-19 02:40:13 -05:00
Henrik Rydgård 93638c8826 Test fix 2025-08-24 15:46:35 +02:00
Henrik Rydgård a107d75e38 Fix lifecycle-notification assert problem (was called from wrong thread) 2025-08-24 11:17:19 +02:00
Henrik Rydgård 1f09b782d7 Make Persona 2 battle transition more reliable. 2025-06-12 11:02:37 +02:00
Henrik Rydgård f9c0c41074 Fix flickering UI state while debugging, breaking the Win32 debugger 2025-06-12 10:20:25 +02:00
Henrik Rydgård 4d7dce4e19 Logging improvement in Core_Break 2025-06-02 00:02:21 +02:00
Henrik Rydgård b27a022e7c Remove two states from the CoreState enum. 2025-04-05 09:18:56 +02:00
Henrik Rydgård 24b30cc709 Mostly remove coreState management from System.cpp 2025-04-05 09:18:56 +02:00
Henrik Rydgård b24ce4bd14 Simplifications 2025-04-05 09:18:56 +02:00
Henrik Rydgård d11f8609ea Add an easy way to break into the imdebugger from assert messageboxs ("No") 2025-03-19 14:22:02 +01:00
Henrik Rydgård 4989ec61d9 BreakpointManager: Safer and simpler updates. 2025-03-03 13:59:42 +01:00
Henrik Rydgård 0a641e1b36 Assorted warning fixes, fix regression on Mac (save/load dialogs) 2025-02-20 15:47:06 -06:00
Henrik Rydgård 31cf5771f4 Turn the break reason into an enum, fix some minor issues 2025-02-19 16:01:11 -06:00
Henrik Rydgård 85c015efb8 Remove redundant shutdown callback 2025-02-13 15:13:25 -06:00
Henrik Rydgård 1ca63161b3 More minor fixes 2025-02-04 10:19:34 -06:00
Henrik Rydgård 63a41e7635 Windows: Fix mis-interaction between no-menu pause and pause on window lost focus, reported by IRVN 2025-01-23 14:32:38 +01:00
Henrik Rydgård 45cf6d423e Buildfixes 2024-12-18 13:57:29 +01:00
Henrik Rydgård 3e198c53b2 More include cleanup 2024-12-18 13:57:26 +01:00
Henrik Rydgård e567a58684 Remove StdioListener 2024-12-16 12:33:58 +01:00
Henrik Rydgård 638607d29a Refactor: Make GPUCommon own the framedump "recorder". 2024-12-15 12:07:44 +01:00
Henrik Rydgård 6baaa2607a GE debugger: Cleaner resume from steps. Fixes GE debugging in God of War. 2024-12-13 20:36:31 +01:00
Henrik Rydgård 4a8a87764c Remove unused state 2024-12-13 19:15:33 +01:00
Henrik Rydgård cccdfad0ba Show basic framebuffer preview 2024-12-10 21:50:14 +01:00
Henrik Rydgård 419c329b06 Show active compat flags on crash screen 2024-12-10 01:43:44 +01:00
Henrik Rydgård b2a8b4168b Core: Minor changes to stepping (and some log changes) 2024-12-10 01:06:19 +01:00
Henrik Rydgård c842e3f137 Fix discrepancy between stepping and running across frame endings. Add some more menu options in the ImDebugger 2024-12-10 01:06:04 +01:00
Henrik Rydgård 93baf22369 ImDebugger: Add frame-stepping and a "skim" button (single-steps while held down) 2024-12-08 15:12:13 +01:00
Henrik Rydgård f74e7fb6f5 Fix running when pc is at breakpoint. Fix issue when stepping through Ge-enqueuing functions. 2024-12-08 15:00:11 +01:00
Henrik Rydgård 080798b5dd Move out two more functions from Core.cpp. Clean up Windows includes 2024-12-08 12:12:02 +01:00
Henrik Rydgård 83af54950f Move more core-related stuff into Core.cpp/h 2024-12-08 11:54:58 +01:00
Henrik Rydgård df91f699fc Move the core loop to Core.cpp 2024-12-08 11:47:12 +01:00
Henrik Rydgård 6adf8cabae Fix regression in break-on-load functionality 2024-12-06 00:40:21 +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 9ed8d8871e Ge stepping without wait: Tex/Prim stepping works. Draw/Single have issues. 2024-12-05 00:36:48 +01:00
Henrik Rydgård ea43e07cce Move some stuff around, rename some stuff 2024-12-05 00:36:48 +01:00
Henrik Rydgård 0f97578a35 Replace a bad function 2024-12-03 20:33:12 +01:00
Henrik Rydgård 2b8414b437 Move irrelevant code out of Core.cpp 2024-12-02 13:26:41 +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 e94defbb15 Get the CORE_RUNNING_GE coreState working! 2024-12-01 22:49:18 +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 e6ae256da8 Fix regression with Debug->Stop (Ctrl+W). Delete some duplicate code. 2024-11-29 17:18:34 +01:00
Henrik Rydgård 1eadea2589 Show the filesystem types and origins in the list (except ISO) 2024-11-26 00:36:58 +01:00
Henrik Rydgård 20c4649963 Fix step over, other stepping issues 2024-11-25 19:02:17 +01:00
Henrik Rydgård 9801f4c810 Add "Rename function" functionality. Fix some input and stepping bugs. 2024-11-25 10:18:56 +01:00