39 lines
1.6 KiB
Markdown
39 lines
1.6 KiB
Markdown
# ADR-0012: Phase-1.0J first-frame identity
|
|
|
|
- Status: accepted for offline diagnostic construction
|
|
- Date: 2026-07-22
|
|
- Decision: `FIRST_FRAME_INDEX_ZERO_SOURCE_CONSISTENCY_ONLY`
|
|
|
|
## Context
|
|
|
|
The consumed Phase-1.0H run submitted the diagnostic buffer with
|
|
`sceVideoOutSubmitFlip(handle, 0, 1, 0)` and received `-1`. The diagnostic
|
|
helper used buffer zero, while the patched normal SDL update path started its
|
|
frame counter at one. The public PS5 SDL source at commit
|
|
`0baf4ac49382b537ba449901b5b6d0d189bb1fbb` starts that normal counter at
|
|
zero. Phase 1.0I classified the mismatch as a strong source candidate, not a
|
|
proven firmware root cause.
|
|
|
|
## Decision
|
|
|
|
The Phase-1.0J SDL overlay defines one compile-time source of truth,
|
|
`CHIMERA_PS5_FIRST_FRAME_INDEX`, with value zero. The early diagnostic copy,
|
|
the early diagnostic submit and the normal update counter all derive their
|
|
initial index from that macro.
|
|
|
|
Zero is selected because it preserves the already-audited diagnostic tuple
|
|
and agrees with the public SDL source. It is not selected on the basis of an
|
|
unpublished ABI or an inferred firmware requirement.
|
|
|
|
## Consequences
|
|
|
|
The internal zero-versus-one inconsistency is removed and can be checked in
|
|
source, linker-map and disassembly evidence. This decision does not prove that
|
|
buffer zero is accepted on firmware 9.60, that the fourth flip argument has
|
|
the required semantics, or that the old mismatch caused the Phase-1.0H
|
|
failure.
|
|
|
|
Phase 1.0J remains an offline artifact phase. A separately reviewed exact
|
|
artifact and new explicit permission would be required before any connection,
|
|
transfer, result reception or execution.
|