docs: close the screen-vs-fragment question against the header, and record what the header does say

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMRJjbxLqZtsb5Vb7KunPE
This commit is contained in:
Sylpheed RE agent
2026-08-24 04:26:19 +00:00
parent c5ec7079b2
commit 70355b8fd4

View File

@@ -197,8 +197,20 @@ See [`structures/ui-composable-bundles.md`](structures/ui-composable-bundles.md)
standing in for a field — there is no field.
❔ Still open: the `.rat` record, the RATC child stream, or the game's code.
See [`structures/ui-rat-layout.md`](structures/ui-rat-layout.md).
* **What makes a bundle a screen rather than a fragment.** `is_composable`
admits 1 786 extra bundles, mostly 25-element button+glow fragments.
* 🔴 **What makes a bundle a screen rather than a fragment — not the header**
(2026-08-24). Swept over all **2 859** composable bundles: **no bit** of the
flags word at `+0x10` labels a screen (best is bit 13 at **44 %** full-screen
against a **12.8 %** base; the commonest bit is set on **91 %** of everything).
The population really is mostly fragments — element counts min 1, **median 2**,
p95 23, max 56, and only **365** carry a full-screen element — so the
separation is *shape*, or which bundle references which, and the PAK cannot
answer the latter directly because its entries are name-hashed.
**By-product:** the header is not dead space. `+0x18`/`+0x1c` are the
**design resolution** (1280/720 on 98.7 %, asserted), and 🟡 `+0x04` takes only
`0x3C0000`/`0x1E0000` — exactly **60.0/30.0 in 16.16** — with `+0x08` at
30/1200/120/60, i.e. a frame rate and a duration in frames. That last reading
is from the values alone and is unverified against an animation.
See [`structures/ui-rat-layout.md`](structures/ui-rat-layout.md).
* 🟡 **What `opt ` links — a record→record reference** (2026-08-24, measured
disc-wide and asserted). All **1 467** links reachable from a declaration table
resolve to a **RATC child of their own bundle**, all are `.rat → .rat`, none