ppsspp_context
Triage a PPSSPP crash address with one call: get identity, region, disassembly window, and optional backtrace for debugging.
Instructions
PURPOSE: One-call crash-triage pack — identity + disassembly window + optional backtrace for an address.
USAGE: pass a crash PC or call target; identity resolves via addresses.yaml known_functions (IDA offset applied); disasm covers window instructions before/after; include_backtrace=true adds the call stack (pauses the CPU briefly).
BEHAVIOR: READ-ONLY. Unknown addresses return identity=null and the raw window instead of failing; backtrace is skipped (not an error) when the CPU is running — the note field says why.
SCOPE: identity/region come from a TOPX-specific address knowledge base (addresses.yaml). For any other ISO they come back empty and note says so explicitly -- an empty identity means 'not in the tables', NOT 'bad address'.
ROUTING: persistent breakpoints around this address -> ppsspp_breakpoint; one armed hit-capture -> ppsspp_breakpoint(action="trace"); recurring sampling -> ppsspp_state_observer.
RETURNS: {address, identity: {name, start, offset} | null, region, disasm: [{address, text}], backtrace: [...], backtrace_note}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | Disassembly instructions BEFORE the address (same count after, so 2*window+1 total; default 8, cap 32). | |
| address | Yes | Address to triage, hex ('0x088EF0F4') or decimal — typically a crash PC or a call target. | |
| session_id | No | Active session ID; auto-resolved when exactly one session is active. | |
| include_backtrace | No | Include the call stack (default false). Requires a paused CPU — the tool pauses/resumes around it; concurrent readers block briefly. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| disasm | Yes | Instructions around the address (window before / at / after). | |
| region | Yes | Memory-map region containing the address (e.g. 'user'), '' when unmapped. | |
| address | Yes | Queried address (hex). | |
| identity | Yes | Nearest known function at/below the address; None when unknown. | |
| backtrace | Yes | Call stack (paused CPU only; empty when skipped). | |
| backtrace_note | Yes | Why the backtrace is empty (e.g. 'CPU running — pause first'). |