ppsspp_step
Control PPSSPP CPU execution: step into, over, or out of code, pause, resume, reset, run until an address, or advance to the next HLE callback.
Instructions
PURPOSE: Aggregate CPU step + run-state control (into / over / out, pause, resume, reset, run_until, next_hle).
USAGE: action='into' / 'over' / 'out' / 'pause' / 'resume' / 'reset' / 'next_hle' take only session_id (optional when exactly one session is active); 'run_until' requires address.
BEHAVIOR: STATE-CHANGE. Advances or changes CPU run state. 'reset' reboots the game (lost in-memory state). 'run_until' sets a temp breakpoint and resumes.
RETURNS: {action, address}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | CPU step / run-state operation. Valid values: - 'into': step into (including delay slot). - 'over': step over (skip function calls). - 'out': step out of current function. - 'pause': pause CPU (enter stepping mode). - 'resume': resume CPU (exit stepping mode). - 'reset': reset the game (reboot). - 'run_until': run until the specified address is reached (requires address). - 'next_hle': step to next HLE callback. | |
| address | No | Target address, as a hex string (e.g. '0x08804000'). Required for action='run_until'; ignored for all other actions. | 0x0 |
| session_id | No | Active session ID; omit to auto-resolve when exactly one session is active. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pc | Yes | Program counter after step, hex string. For into/over/out/run_until/next_hle this comes from the cpu.stepping broadcast. For pause, extracted via safe_get_pc after CPU enters stepping. '0x00000000' for resume/reset (no trustworthy PC available). | |
| ticks | Yes | CPU ticks at step completion (0.0 for pause/resume/reset). | |
| action | Yes | 'into' / 'over' / 'out' / 'pause' / 'resume' / 'reset' / 'run_until' / 'next_hle'. | |
| reason | Yes | Step reason from cpu.stepping broadcast (e.g. 'cpu.stepInto'). Empty for pause/resume/reset. | |
| address | Yes | Target address for run_until, hex string (e.g. '0x08804000'); '0x00000000' for other actions. | |
| related_address | Yes | Related address for temporary breakpoints, hex string. '0x00000000' when absent. |