docs: backlog — .prm decoded; the resting rule is the new blocker
This commit is contained in:
@@ -78,10 +78,25 @@ See [`structures/ui-composable-bundles.md`](structures/ui-composable-bundles.md)
|
||||
|
||||
**Opened by those two:**
|
||||
|
||||
* ❔ **`.prm` primitives are not decoded.** Every composite is missing them. On
|
||||
the splash the measured order puts `palogo_eff0.prm` **first** — it is the
|
||||
backdrop. Cheapest first step: dump the `.prm` child bytes of a bundle that has
|
||||
exactly one and see whether it is a solid quad with a colour.
|
||||
* ✅ **`.prm` primitives are decoded** (2026-08-19). Untextured full-screen
|
||||
colour quads: 0 of 369 has a payload child, `kind & 0x10` ⟺ `.prm` with zero
|
||||
exceptions in either direction, 361/369 are exactly 1280×720 at 100 % in the
|
||||
corner, and the fill colour is the keyframe's `fade` ARGB — mostly black at
|
||||
some alpha, i.e. the fade-to-black / dim / flash layers.
|
||||
See [`structures/ui-prm-primitives.md`](structures/ui-prm-primitives.md).
|
||||
**Still not composited**, for the reason below.
|
||||
* ❔ **`Element::rest()` picks the wrong pose for a fade group.** This is now the
|
||||
blocker on drawing `.prm`. The title's `pteff00.prm` is opaque → transparent →
|
||||
transparent → opaque, a screen transition; the screen sits at the transparent
|
||||
plateau, but `rest()`'s longest-dwell rule lands on the opaque endpoint — and
|
||||
that element paints **last**, so drawing it blacks out the title. Candidate
|
||||
rule: the resting pose is the longest run of *consecutive keyframes with equal
|
||||
values*, not the longest gap. It is **not** `.prm`-specific — it would change
|
||||
`rest()` for every element on the disc — so the first step is to A/B it against
|
||||
the title framebuffer capture and the two verified screens before it lands.
|
||||
* ❔ **Blend mode for the primitives.** Straight alpha is the assumption for the
|
||||
black dim quads; the near-white flash (`0xf0ffffff`) and the coloured ones
|
||||
(`0x60ff0000`, `0x0000ffd4`) may be additive. Nothing measured.
|
||||
* ❔ **What marks a focused state in the file.** The pairing rule that shipped is
|
||||
a naming convention, not a decoded field. `kind = 0x3002` is a button record;
|
||||
whether a bit of `kind` marks the focused variant is the cheapest probe.
|
||||
|
||||
Reference in New Issue
Block a user