handoff: withdraw linkage-batching; 0x3002 class survives refutation
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Jc4pciRArGHfxGGhEbwp5t
This commit is contained in:
@@ -6422,3 +6422,30 @@ that is worth checking.
|
||||
draw: they are **linked**, not merely on the same texture page. Testable on the
|
||||
`pgloading` chain; I have no loading-screen capture, so it is named rather than
|
||||
claimed.
|
||||
|
||||
## 🔴 Withdraw the linkage-batching idea — it is blend state (`9d695de`)
|
||||
|
||||
`docs/re/batching-is-blend-not-linkage.md`. I suggested last message that the two
|
||||
sweeps share one draw because they are **linked**, and asked you to watch for a
|
||||
loading-screen capture to test it. **Withdrawn — don't spend a capture on it.**
|
||||
|
||||
A linked pair was already in every capture (`ptbtn00 → ptbtn00f`), and it is
|
||||
**never** batched:
|
||||
|
||||
| | `ptbtn00f` drawn alone | batched |
|
||||
|---|---|---|
|
||||
| `f6b` | 899 draws | **0** |
|
||||
| `f6` | 1441 draws | **0** |
|
||||
|
||||
The constraint is **blend state**: `ptbtn00f` is additive, its linked partner
|
||||
alpha-over, and two blend states cannot share a draw. The sweeps batch because
|
||||
both are additive on one page.
|
||||
|
||||
⚠️ Necessary, not sufficient — `8154`/alpha-over appears as *two separate* draws
|
||||
in one frame (2108 of them in `f6b`). This removes a wrong cause; it is not a
|
||||
batching rule.
|
||||
|
||||
✅ **Your `0x3002`/`0x3003` menu-item reading survived a refutation attempt.**
|
||||
Disc-wide: 970 elements, 91 name-stems, **958 (98.8 %) contain "btn"**. The only
|
||||
12 exceptions are `psselect_slot` and `psselect_slot_blank` — save-slot rows,
|
||||
which are menu items. The class is uniformly menu-row-shaped.
|
||||
|
||||
Reference in New Issue
Block a user