4 Commits
Author SHA1 Message Date
Yadiel Abner Rodriguez Jorge (neokuze)andClaude Opus 5.5 c1d6803634 Add heap allocator and threads (alloc feature)
- ps5::heap: global allocator over the SDK's libc malloc/posix_memalign
- ps5:🧵 spawn/join over pthreads, plus a pthread Mutex
- build-std now includes alloc; payloads without the feature are unchanged
- examples/threads: 4 threads sum heap Vecs into an Arc<Mutex<u64>>
  (tested on CFI-1215A, fw 13.60: "threads OK")

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 17:34:27 -04:00
neokuzeandClaude Opus 5.5 7f4b8ca760 Fix x86_64-sie-ps5 payloads crashing at start; add ps5::net and http_server
Target fixes (payloads built with the custom target ran nothing):
- default-uwtable: keeps the SDK linker script's page-aligned .eh_frame_hdr,
  so data no longer shares a page with code (which made main non-executable)
- relro full: rustc only emits GOT calls (GLOB_DAT) with full relro; partial
  relro produced PLT JUMP_SLOT relocations unlike the SDK's -fno-plt output

New:
- ps5::net: blocking IPv4 TcpListener/TcpStream with errno errors
- examples/http_server: PS5 serves /info, /notify?msg=, /quit on port 9954
- examples/pc/ps5_client.py + .cmd launchers for the PC side
- ps5::http::last_step() names the SDK call that failed

Tested on CFI-1215A, fw 13.60: hwinfo, http_test and http_server all run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 15:59:45 -04:00
neokuzeandClaude Opus 5.5 7971efbf4e License under GPL-3.0-or-later, matching the PS5 Payload SDK
Bindings derive from the SDK's GPLv3 headers and every payload statically
links its GPLv3 startup/kernel code, so the project follows the SDK license.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 13:24:06 -04:00
neokuzeandClaude Opus 5.5 0b1efa3829 Add x86_64-sie-ps5 target, examples/ layout, feature-gated Sony libs, README
- targets/x86_64-sie-ps5.json: cargo links payload ELFs directly via prospero-clang
- ps5 features (notify, hw, http, ...) link only the Sony libs a payload uses
- payloads/ -> examples/, tools/ -> examples/pc/
- README with build/use instructions and credits to the PS5 Payload SDK

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 13:16:34 -04:00