docs(accuracysnes): C11.12 is unauthorable — verified, not assumed - #328
Conversation
Checked two ways and recorded so it is not re-attempted.
THE CORPUS GIVES A GAME NAME AND NOTHING ELSE. C11.12 ("Mode 7 scroll
offset latch timing") appears exactly twice in ref-docs/, both times as a
row in a game-compatibility table naming NHL '94. No behavioural
statement anywhere -- no value, no timing, no mechanism.
NO REFERENCE MODELS A DISTINCT TIMING EITHER. ares reads the register
live in sfc/ppu/mode7.cpp:
s32 hoffset = (i13)self.io.hoffsetMode7;
No per-scanline latch, no deferred copy, nothing a test could catch a
core getting wrong. Writing a row would mean inventing an expectation and
then checking that our own arithmetic agrees with itself -- the E9.11
failure mode.
The genuinely testable part of $210D's dual-latch behaviour -- it updates
M7HOFS via M7_old AND BG1HOFS via BG_old, with different formulas -- is
ALREADY covered by C4.01 and C4.04/C4.05, all blessed scenes. C11.12 adds
only the word "timing", which is the part nothing defines.
It belongs with C13.* and F1.22: enumerated, uncoverable, and scored as
such rather than chased. To ever author it would need a source saying
what NHL '94 depends on -- a disassembly note, a hardware measurement, or
a reference that special-cases it.
Docs only.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Warning Review limit reached
Next review available in: 18 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
Comment |
Antigravity review (Gemini via Ultra)This pull request documents why test case Blocking issuesNone found. Suggestions
Nitpicks
Automated first-pass review by |
There was a problem hiding this comment.
Pull request overview
Documents that AccuracySNES roadmap item C11.12 (“Mode 7 scroll offset latch timing”) cannot be responsibly authored because no source material defines an assertable behavior and reference implementations don’t model a distinct latch timing.
Changes:
- Added a dedicated
C11.12“unauthorable” note todocs/accuracysnes-plan.md, including the two verification paths (corpus evidence + reference model behavior). - Added a matching Unreleased changelog entry capturing the same conclusion and rationale.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| docs/accuracysnes-plan.md | Records the investigation and conclusion that C11.12 has no assertable spec and should be treated as uncoverable until new evidence exists. |
| CHANGELOG.md | Adds an Unreleased entry summarizing the verified “unauthorable” status of C11.12 and why it shouldn’t be pursued as a scored row. |
C11.12has been sitting in the roadmap as "oracle-thin". That was my assessment; this checks it, and the answer is firmer: there is nothing to assert.Verified two ways
The corpus gives a game name and nothing else. The row's subject — "Mode 7 scroll offset latch timing" — appears exactly twice in
ref-docs/, both times as a row in a game-compatibility table naming NHL '94. No behavioural statement anywhere: no value, no timing, no mechanism.No reference models a distinct timing either. ares reads the register live in
sfc/ppu/mode7.cpp:No per-scanline latch, no deferred copy — nothing a test could catch a core getting wrong.
Writing a row would mean inventing an expectation and then checking that our own arithmetic agrees with itself, which is exactly the
E9.11failure mode this project already withdrew a row for.The testable part is already covered
fullsnes documents that
$210DupdatesM7HOFS(viaM7_old) andBG1HOFS(viaBG_old), with different formulas. That is real, and it is already evidence:C4.01(the BG formula keeps the low three bits) andC4.04/C4.05($210Ddrives Mode 7 scroll) are all blessed scenes.C11.12adds only the word timing — the part nothing defines.Where it belongs
With
C13.*andF1.22: enumerated, uncoverable, and scored as such rather than chased. Authoring it would need a source saying what NHL '94 actually depends on — a disassembly note, a hardware measurement, or a reference that special-cases it.This removes an item from the remaining-work list rather than deferring it again.
Docs only.
🤖 Generated with Claude Code