Skip to content

docs(user): stage the original eboot.bin in app0 - #5040

Merged
adriadam10 merged 1 commit into
boykopovar:mainfrom
screamm:docs/app0-eboot
Oct 14, 2026
Merged

adriadam10 merged 1 commit into
boykopovar:mainfrom
screamm:docs/app0-eboot

Conversation

@screamm

@screamm screamm commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

What

Adds eboot.bin to the documented app0/ layout and says why: titles test /app0/eboot.bin to locate their own directory, because it is always present on the console.

Tested

Fifth catalog run (#1578, Windows 11, main c2565f01): ProsperoTV (PPSA99003), ProsperoRadio (PPSA99001), ProsperoLight (PPSA99002) and ProsperoLichess (PPSA99009) wrote a probe to /data, then looked for their fonts under /data/homebrew/<TID>/assets/fonts/ and died with renderer init failed. Their sources pick the first of /app0, /system_ex/app/<TID>, /data/homebrew/<TID>, /mnt/sandbox/<TID>_000/app0 that contains a regular eboot.bin (ProsperoTV opengl-ui/ps5/src/tv_storage.cpp:181-195, ProsperoRadio src/radio_storage.cpp:148-162, ProsperoLichess src/platform/ps5/storage_paths.cpp:47-53, ProsperoLight src/app_storage.cpp:236-251). With the original eboot.bin copied into app0/ all four load their fonts from /app0/assets/fonts/: ProsperoLichess renders (ProsperoLichess | FPS: 30.37 (1267) in 60 s), ProsperoTV and ProsperoRadio move on to the POLLPRI stop (#4478, PR #4525), ProsperoLight to poll: descriptor 10 is neither a socket nor a pipe.

No runtime change: the runtime already answers /app0/eboot.bin for kern.proc.pathname and sceSystemServiceLoadExec; only the file itself was missing from the staged layout. Serving app.exe's attributes under that name would hand wrong bytes to a title that reads its own executable, so the doc asks for the original file.

Checklist

  • Docs only; no code, no tests.
  • Depends on: none
  • AI-assisted: yes (Claude Code; the four titles were run and their sources read by a subagent, reviewed by me).

🤖 Generated with Claude Code

Four catalog titles (ProsperoTV PPSA99003, ProsperoRadio PPSA99001,
ProsperoLight PPSA99002, ProsperoLichess PPSA99009) locate their own
directory with stat("/app0/eboot.bin"), which always exists on the
console, and fall back to /data/homebrew/<title id> without it; that
directory is empty here, so they fail to load their fonts and die with
"renderer init failed". Staging the original eboot.bin next to the app
resources makes all four load their fonts; ProsperoLichess then renders
(1267 frames in 60 s on Windows).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@adriadam10

Copy link
Copy Markdown
Collaborator

Docs-only; the layout addition and the explanation match the evidence in the body. Conventions was red because the body used ## headings and lacked "Depends on"; I reformatted the body to the template. Merging.

@adriadam10
adriadam10 merged commit 278765a into boykopovar:main Oct 14, 2026
8 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants