[review] mstan #243 - bios: add SCPH5552 (EU v3.0 01/06/97) BIOS build profile - #3
Conversation
Retail SCPH-5502/5552 Europe image, SHA-256 1faaa18f... ROM 0x0000-0x17FFF is byte-identical to US SCPH-1001 v2.2 (71af94d1...), so every kernel anchor of bios/SCPH1001.toml carries over; the EU shell differs and has no seeds, so the shell window runs in the dirty-RAM interpreter (-DPSX_SHELLWIN_INTERP=ON). Profile authored by the pegasus-claude T32 claimant session (98528efb) and adopted unchanged by the operator-attended T32 session. No ROM bytes tracked. Task: T32 MGS PAL (pegasus-claude lane). (cherry picked from commit 4685b33)
There was a problem hiding this comment.
2 issues found across 1 file
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="bios/SCPH5552.toml">
<violation number="1" location="bios/SCPH5552.toml:27">
P2: When the packaged CLI selects a SCPH5552 BIOS, it loads the legacy root profile instead of this profile and cannot resolve that profile's SCPH5552 seed path. Update packaging to copy `bios/SCPH5552.toml` and include the referenced seed.</violation>
<violation number="2" location="bios/SCPH5552.toml:58">
P1: When the EU shell reaches code above RAM `0x5B000` with `PSX_SHELLWIN_INTERP`, the runtime cannot execute the copied bytes through the interpreter. Extend the runtime dirty range and this address-model window together, or prove that the upper copied region is unreachable before shipping this profile.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
| [[recompiler.address_model.copy]] | ||
| name = "Shell" | ||
| rom_lo = "0x1FC18000" | ||
| rom_hi = "0x1FC43000" |
There was a problem hiding this comment.
P1: When the EU shell reaches code above RAM 0x5B000 with PSX_SHELLWIN_INTERP, the runtime cannot execute the copied bytes through the interpreter. Extend the runtime dirty range and this address-model window together, or prove that the upper copied region is unreachable before shipping this profile.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At bios/SCPH5552.toml, line 58:
<comment>When the EU shell reaches code above RAM `0x5B000` with `PSX_SHELLWIN_INTERP`, the runtime cannot execute the copied bytes through the interpreter. Extend the runtime dirty range and this address-model window together, or prove that the upper copied region is unreachable before shipping this profile.</comment>
<file context>
@@ -0,0 +1,86 @@
+[[recompiler.address_model.copy]]
+name = "Shell"
+rom_lo = "0x1FC18000"
+rom_hi = "0x1FC43000"
+ram_lo = "0x00030000"
+runtime_base = "0x80030000" # KSEG0 — LoadRunShell jumps to 0x80030000
</file context>
| text_size = "0x80000" | ||
|
|
||
| [recompiler] | ||
| seeds = "recompiler/seeds/phase2_ghidra_seeds_SCPH5552.json" |
There was a problem hiding this comment.
P2: When the packaged CLI selects a SCPH5552 BIOS, it loads the legacy root profile instead of this profile and cannot resolve that profile's SCPH5552 seed path. Update packaging to copy bios/SCPH5552.toml and include the referenced seed.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At bios/SCPH5552.toml, line 27:
<comment>When the packaged CLI selects a SCPH5552 BIOS, it loads the legacy root profile instead of this profile and cannot resolve that profile's SCPH5552 seed path. Update packaging to copy `bios/SCPH5552.toml` and include the referenced seed.</comment>
<file context>
@@ -0,0 +1,86 @@
+text_size = "0x80000"
+
+[recompiler]
+seeds = "recompiler/seeds/phase2_ghidra_seeds_SCPH5552.json"
+out_dir = "generated"
+out_stem = "SCPH5552"
</file context>
|
Review complete. Upstream work continues at: mstan#243 Closing this fork review without merge. Its immutable base, discussion, and commit history remain available as evidence. |
Purpose
This is a review-only retrofit for the already-open upstream PR mstan/psxrecomp#243.
Do not merge this PR. The AI reviewer must inspect this exact diff before the next upstream update.
Identity
01c647e8a2fa0b294944a2bbfcda9d7303061ea12b1ed3a2162bf66f045ebba3387dfcf9a52e2175pr/scph5552-profileReview gate
Classify each finding as valid, invalid, or uncertain. A valid finding requires a correction, a regression, and repeated validation. An uncertain finding blocks the next upstream update.
Developed with AI assistance; validated as described (test evidence in PR body). AI writes the code and the PR, but I always test before I send something up. Happy to iterate on this process with your feedback.
Summary by cubic
Adds a BIOS build profile for the SCPH-5552 (EU v3.0 01/06/97) image so the recompiler can build it. The kernel region is byte-identical to SCPH-1001, so its kernel anchors carry over; the EU shell differs and has no seed corpus yet, so it must be built with
-DPSX_SHELLWIN_INTERP=ONuntil that corpus exists. Only the profile is tracked; the ROM image stays untracked.Written for commit 2b1ed3a. Summary will update on new commits.