mirror of
https://github.com/Pharaoh2k/ps5debug-NG.git
synced 2026-10-22 03:42:51 -05:00
PS5 debugger payload, inspired by Ctn's ps5debug 1.0b5 and wire-compatible with it. Runs the wire-protocol server inside SceShellCore via an umtx-loaded installer that injects the embedded debugger ELF. Features: process scan/RPC/ELF-inject, on-console scan, full debugger (breakpoints, watchpoints, single-step, regs/FP/DR access), kernel R/W, server-side Zydis disassembly, on-console Keystone assembler (0xBDAA0024), foreground-app metadata (0xBDDD0006), server-side RBP stack walk (CMD_PROC_READ_STACK), klog forwarder (TCP 3232), rest-mode survival and a lot more. Supports FW families 3.x / 4.0 / 4.x (incl. 4.51) / 5.x / 6.x / 7.x / 7.5x / 8.x via the kpatch routine in installer/source/main.c. GPL-3.0-only.
55 lines
1.2 KiB
Bash
55 lines
1.2 KiB
Bash
#!/usr/bin/env bash
|
|
# SPDX-License-Identifier: GPL-3.0-only
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
cd "$SCRIPT_DIR"
|
|
|
|
SDK_SRC="$SCRIPT_DIR/ps5-payload-sdk"
|
|
SDK_INSTALL="$SDK_SRC/install"
|
|
ARTIFACT="$SCRIPT_DIR/ps5debug-NG.elf"
|
|
|
|
clean_build() {
|
|
echo "==> cleaning"
|
|
(cd debugger && make clean) || true
|
|
(cd installer && make clean) || true
|
|
(cd "$SDK_SRC" && make clean) || true
|
|
rm -rf "$SDK_INSTALL" "$ARTIFACT"
|
|
}
|
|
|
|
build_sdk() {
|
|
if [ ! -f "$SDK_INSTALL/toolchain/prospero.mk" ]; then
|
|
echo "==> building SDK (one-time, ~30s)"
|
|
mkdir -p "$SDK_INSTALL"
|
|
make -C "$SDK_SRC" DESTDIR="$SDK_INSTALL" -j"$(nproc)" install
|
|
else
|
|
echo "==> SDK already built at $SDK_INSTALL"
|
|
fi
|
|
}
|
|
|
|
build_debugger() {
|
|
echo "==> building debugger"
|
|
make -C debugger
|
|
}
|
|
|
|
build_installer() {
|
|
echo "==> building installer (embeds debugger)"
|
|
make -C installer
|
|
}
|
|
|
|
publish_artifact() {
|
|
cp installer/build/ps5debug-NG.elf "$ARTIFACT"
|
|
echo "==> ps5debug-NG.elf ready ($(stat -c %s "$ARTIFACT") bytes)"
|
|
}
|
|
|
|
if [ "${1:-}" = "clean" ]; then
|
|
clean_build
|
|
exit 0
|
|
fi
|
|
|
|
build_sdk
|
|
build_debugger
|
|
build_installer
|
|
publish_artifact
|