Repository navigation
Crash dumps
Mauricio G. edited this page Oct 8, 2026
·
1 revision
When the app crashes hard (error code C2-12828-1), the Vita writes a .psp2dmp file into ux0:data/. You can turn it into a thread list, registers and a file/line backtrace.
- The dump file
- The debug ELF from the same build that crashed:
build/vita/VitaRPS5.elf, produced by./tools/build.sh debug. Release builds do not carry enough symbol information, and a rebuild overwrites the file, so keep a copy of the ELF with each VPK you hand out. - Docker (the parser runs inside the build image)
- Copy the
.psp2dmp(named likepsp2core-<number>.psp2dmp) fromux0:data/on the Vita to your computer (VitaShell FTP or USB). - From the repo root run:
./tools/parse_dump.sh path/to/psp2core-xxxx.psp2dmp [path/to/VitaRPS5.elf]If you leave out the ELF path, build/vita/VitaRPS5.elf is used. Relative paths are taken from the repo root, and both files must be inside the repo folder (the script mounts it into the container).
The parser (scripts/vita/parse_core/main.py, part of the repo; no submodule step) prints the threads, stop reason, registers and a backtrace.
./tools/build.sh shell
python3 scripts/vita/parse_core/main.py /build/git/<dump> /build/git/build/vita/VitaRPS5.elfAttach the dump, the log (see Logging) and the [PIPE/BUILD] line from it, or the VPK name, so the matching ELF can be found.