mirror of
https://github.com/griches/PS5_DevTools.git
synced 2026-10-17 14:00:39 +02:00
A resident payload that attaches to homebrew titles as their debugger, writes a crash report (registers, every thread's backtrace, stack, modules, code at the fault, memory before the crash) and shows a TV notification, then hands the signal back. It samples every title's memory (direct/GPU, heap, other), CPU and threads, and serves a dashboard on port 9113. The host tool symbolicates reports against the matching build's ELF, including reports a player sends as JSON. Tested on firmware 13.60 with Super Mario Sunshine and SwitchWaker. Claude-Session: https://claude.ai/code/session_016xMYBaR9GfxtETyVf6er1P
34 lines
823 B
Makefile
34 lines
823 B
Makefile
# PS5 DevTools - resident crash reporter and memory monitor.
|
|
# Copyright (C) 2026 Gary Riches
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
#
|
|
# Builds build/ps5devtools.elf, with web/dashboard.html inside it. Run
|
|
# tools/build.sh, which resolves PS5_PAYLOAD_SDK.
|
|
|
|
ifndef PS5_PAYLOAD_SDK
|
|
$(error PS5_PAYLOAD_SDK is undefined; run tools/build.sh)
|
|
endif
|
|
|
|
include $(PS5_PAYLOAD_SDK)/toolchain/prospero.mk
|
|
|
|
ROOT := $(abspath $(CURDIR)/..)
|
|
OUTPUT := $(ROOT)/build
|
|
ELF := $(OUTPUT)/ps5devtools.elf
|
|
DASHBOARD := $(ROOT)/web/dashboard.html
|
|
|
|
CFLAGS := -std=gnu11 -O2 -g -Wall -Wextra -Werror -Wno-unused-parameter -DDASHBOARD_PATH='"$(DASHBOARD)"'
|
|
LDLIBS := -lpthread
|
|
|
|
all: $(ELF)
|
|
|
|
$(ELF): main.c $(DASHBOARD) | $(OUTPUT)
|
|
$(CC) $(CFLAGS) -o $@ main.c $(LDLIBS)
|
|
|
|
$(OUTPUT):
|
|
mkdir -p $(OUTPUT)
|
|
|
|
clean:
|
|
rm -f $(ELF)
|
|
|
|
.PHONY: all clean
|