docs(screenshots): commit the commercial frames that render well - #192
Conversation
Seven titles rendering correctly: Super Mario 64 (title screen), Pokemon Snap (3D landscape), Pokemon Stadium (NINTENDO 64 logo), Mario Kart 64 (attract mode), Castlevania: Legacy of Darkness (a legible Controller Pak dialog), Bomberman Hero and Bomberman 64. Two kept as known-imperfect and labelled as such: Banjo-Kazooie's colour cast, and Paper Mario as the first frame ever rendered from a commercial cartridge. Every file was rendered to PNG and LOOKED AT before being committed, and the census justified that rule on its own data: Rayman 2 and Namco Museum 64 report ZERO RDP commands with 123,540 and 137,681 lit pixels. A lit-pixel-only rule would have committed two frames of pure uninitialised RDRAM as evidence of rendering. Frames that scored well but looked wrong were rejected, and the rejections are recorded rather than discarded -- they localise real defects. The notable one is new: GoldenEye 007's "Nintendo" logo and WCW vs. nWo's banner both render LEFT-RIGHT MIRRORED. Two independent titles, different studios, same flip, both at high command counts, so it is the texture S-axis mirror path (R-13) and not either game. No counter would have surfaced it; only looking did. Castlevania is worth singling out: it is a text/UI dialog rather than 3D geometry, so it exercises a different path and shows the texture and blend pipeline producing readable glyphs. screenshots/README.md documents the selection rule, the known-imperfect frames, the defects visible in rejected ones, and the 625x237 geometry with its provenance. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…nding The capture pass produced 31 frames, seven of which landed after I had built the contact sheets and made the first selection -- so that selection was made on an incomplete set. Reviewing the remainder adds four titles that render correctly and one known-imperfect. Rendering correctly: Super Smash Bros. (a textured 3D room with correct perspective), Mario Golf (Mario on the green with his club), Resident Evil 2 (the R.P.D. building with a legible content-warning overlay composited over a pre-rendered background), and WCW/nWo Revenge (the THQ INC. logo). Known-imperfect: Ocarina of Time renders a recognisable night sky over Hyrule Field, but the moon carries a visible rectangular texture-clamp box -- an open clamp/border defect, a different R-13 path from the mirror one. The mirrored-text finding is refined rather than restated. WCW/nWo Revenge is the SAME PUBLISHER as the mirrored WCW vs. nWo World Tour, and its THQ logo is correctly oriented. So the flip is tile-specific -- how a particular tile's mirror_s resolves -- not a global S-axis inversion. That narrows the search considerably and is the kind of distinction only a second sample could make. Fourteen frames committed in total. Every one was rendered and looked at. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Warning Review limit reached
Next review available in: 13 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 (1)
📝 WalkthroughWalkthroughThe PR revises the R-18 accuracy-ledger evidence and restructures screenshot documentation around capture scope, visual validation, known imperfections, rejected-frame defects, and scanout geometry. ChangesAccuracy evidence documentation
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 9 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (9 passed)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/accuracy-ledger.md`:
- Line 413: Reconcile the R-18 evidence with the authoritative current counts in
docs/STATUS.md: update the correctly-rendering and known-imperfect title totals
to match screenshots/README.md, and distinguish registered RDP vectors plus VI
vectors from any additional fuzz test when reporting probe totals. Preserve
earlier measurements only as explicitly dated historical figures, and update the
surrounding R-18 wording without changing its append-only evidence history.
In `@screenshots/README.md`:
- Around line 36-37: Update the Markdown tables in screenshots/README.md around
the visible header separator and the second table to use padded MD060
separators, adding spaces inside each pipe-delimited cell such as | --- | --- |
--- | while preserving the existing columns and content.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 456ba772-e96a-4d43-b0b0-1e3f52b3e780
⛔ Files ignored due to path filters (11)
screenshots/bomberman-64-intro.pngis excluded by!**/*.pngscreenshots/bomberman-hero-3d-scene.pngis excluded by!**/*.pngscreenshots/castlevania-legacy-of-darkness-menu.pngis excluded by!**/*.pngscreenshots/mario-golf-course.pngis excluded by!**/*.pngscreenshots/mario-kart-64-attract-mode.pngis excluded by!**/*.pngscreenshots/ocarina-of-time-night-sky.pngis excluded by!**/*.pngscreenshots/pokemon-snap-3d-landscape.pngis excluded by!**/*.pngscreenshots/pokemon-stadium-n64-logo.pngis excluded by!**/*.pngscreenshots/resident-evil-2-intro.pngis excluded by!**/*.pngscreenshots/super-smash-bros-3d-stage.pngis excluded by!**/*.pngscreenshots/wcw-nwo-revenge-thq-logo.pngis excluded by!**/*.png
📒 Files selected for processing (2)
docs/accuracy-ledger.mdscreenshots/README.md
The ledger append said "seven titles render correctly and two known-imperfect" while screenshots/README.md lists eleven and three. The ledger sentence was written before the capture pass finished -- seven of its 31 frames landed after the contact sheets were built -- and was not revised when the extra titles were committed in the same PR. That is drift I introduced myself, in the same session, in the document whose whole purpose is to prevent it. Corrected to 11 + 3 = 14, with the README named as authoritative, and the miscount left recorded rather than quietly fixed: judging on what had finished rather than on what the run produced is the same sampling error this row keeps catching. Also clarifies that microcode_families.rs and game_microcode.rs are different tests -- the first censuses the corpus for what reaches the screen, the second witnesses a retail title's microcode executing on the LLE RSP and reaching the RDP -- and notes that the Paper Mario frame predates this change. Renames the "Geometry" heading to "Output resolution and VI scaling". Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Adjudication — Antigravity reviewNo blocking issues. All three adopted, one with a correction to its premise. 1.
|
There was a problem hiding this comment.
♻️ Duplicate comments (1)
screenshots/README.md (1)
40-41: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winUse padded Markdown table separators.
Lines 41 and 64 use
|---|---|---|, but this repository configures MD060 withstyle: "padded". Change both to| --- | --- | --- |, then rerun the pinned markdownlint hook on this PR branch. This is the same unresolved finding from the previous review.As per path instructions, every Markdown change must satisfy the repository’s padded-table configuration and be checked with
pre-commit run markdownlint --all-files.Also applies to: 63-64
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@screenshots/README.md` around lines 40 - 41, Update the Markdown table separator rows near the table headers in README.md to use padded spacing (`| --- | --- | --- |`) consistently in both locations, then run the pinned markdownlint hook with `pre-commit run markdownlint --all-files`.Sources: Path instructions, Learnings
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Duplicate comments:
In `@screenshots/README.md`:
- Around line 40-41: Update the Markdown table separator rows near the table
headers in README.md to use padded spacing (`| --- | --- | --- |`) consistently
in both locations, then run the pinned markdownlint hook with `pre-commit run
markdownlint --all-files`.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 533cda94-4a7d-4bea-a6e4-bca7c603b0aa
📒 Files selected for processing (2)
docs/accuracy-ledger.mdscreenshots/README.md
.markdownlint.json sets MD060 to style "padded" and every other document uses | --- | --- | --- |; this file used the unpadded form. The pinned markdownlint (v0.49.1) passes it either way because that version does not implement MD060, so the rule is configured but invisible to the gate -- the inverse of the version hazard CLAUDE.md already warns about, and a reason to match the declared style rather than trust the linter's silence. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Antigravity review (Gemini via Ultra)This pull request commits 11 rendered PNG screenshots from commercial N64 titles into Blocking issuesNone found. Suggestions
Nitpicks
Automated first-pass review by |
Captures the commercial titles that display correctly, names them by title, and rewrites
screenshots/README.mdaround the full set. 14 frames committed; every one was rendered to PNG and looked at.Rendering correctly (11)
Castlevania and Resident Evil 2 are worth singling out — both are text/UI paths rather than 3D geometry, showing the texture and blend pipeline producing readable glyphs over a background.
Kept as known-imperfect (3), clearly labelled
Committed as evidence of what currently happens, not as goldens: Banjo-Kazooie (colour cast), Ocarina of Time (visible texture-clamp box around the moon), Paper Mario (the first-ever commercial frame, kept for the record).
The selection rule earned its keep
The census justified inspection-over-counting on its own data:
A lit-pixel rule would have committed two frames of pure uninitialised RDRAM as evidence of rendering. Rejected after looking: Blast Corps (garbled blocks), Turok (glitchy plane), Wave Race 64 (ambiguous), Ogre Battle 64 (partial).
Looking found two new defects
mirror_sresolves, a distinction only a second sample could make.Neither is guessed at or patched; both are recorded in R-18 and want an Angrylion vector.
Process note
The capture produced 31 frames, seven of which arrived after I built the contact sheets — so my first selection was made on an incomplete set. Reviewing the remainder added four correct titles and one known-imperfect, and produced the tile-specific mirror refinement. Recorded because "I judged on what had finished" is exactly the sampling error this ledger keeps catching.
Gates
fmt ·
cargo test --workspace· markdownlint — green. No ROMs committed; only rendered output, which thecommercial-romspolicy permits.