Skip to content

Revert #327 interlaced row submission to restore retail BIOS boot - #336

Merged
mstan merged 1 commit into
masterfrom
fix/retail-bios-rollback-327
Sep 7, 2026
Merged

Revert #327 interlaced row submission to restore retail BIOS boot#336
mstan merged 1 commit into
masterfrom
fix/retail-bios-rollback-327

Conversation

@mstan

@mstan mstan commented Sep 7, 2026

Copy link
Copy Markdown
Member

Summary

Roll back PR #327's interlaced per-row primitive submission in commit 24c6c56. Keep PR #326's bounded GL readbacks and PR #328's Vulkan aspect-ratio fix intact.

Confirmed regression

Matched Ape Escape builds using identical generated game/BIOS code, SCPH1001.BIN, disc, config and OpenGL settings, with PSX_BIOS_HLE=0:

Per-row backend submission/flushes amplify a pre-existing malformed DMA list into massive GL work. The broader CPU/DMA arbitration fix is intentionally separate because it needs Vampire Hunter D/Spot compatibility validation. This rollback restores the previous missing active-field preservation; a replacement needs bounded rendering cost and real retail BIOS boot coverage.

Validation

  • Full Ape target (SDL3, launcher and Vulkan compiled in), retail SCPH1001 LLE/OpenGL: visible title/menu, normal close at frame 11669.
  • Same Ape executable, OpenBIOS LLE: animated intro, normal close at frame 3701.
  • MMX6 retail SCPH1001 LLE/OpenGL: BIOS/disc handoff passed and game code advancing beyond frame 2100.
  • Eight focused runtime/GPU tests pass.
  • Retained real-GL readback fixture: 71 checks, zero failures at both 1x and 4x. Local SDL static library required adding -liconv to its recorded link command; no fixture or renderer edits were needed.
  • git diff --check passes. No BIOS binaries or generated code included.

Detailed attribution and limitations: docs/internal/RETAIL_BIOS_INTERLACE_ROLLBACK.md.

Matched Ape Escape retail SCPH1001 LLE builds identify 0661ce7 as the visible boot regression: parent 155e269 reaches game code, while 0661ce7 stalls near BIOS frame 375. Revert its four dependent follow-ups too; retain PR #326 readback bounds and PR #328 Vulkan aspect changes.

The row-by-row raster dispatcher amplifies an existing malformed DMA list into massive GL work. Keep the broader CPU/DMA arbitration experiment separate for compatibility testing. Document attribution, validation, and the temporarily restored interlace limitation.

Validation: full Ape target reaches title/menu and frame 11669 on retail LLE; OpenBIOS control reaches frame 3701. Eight focused tests pass; retained GL readback fixture passes 71 checks at both 1x and 4x after linking local SDL with iconv. Beads: beads-iisy; DMA follow-up: beads-eio.3.122.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant