port: the PRESS (A) plate pulses -- authored per element, because 82 of 212 share its shape
The human listed pulsation as first-class and the port drew nothing: the plate's focus record `ptbtn00f` was never reached, because press_start has no `buttons` and nothing is focused. That it LOOPS is measured -- the corpus timed the period four times (2.12 / 2.19 / 2.34 / 2.31 s) and you cannot measure a period unless the thing repeats. THE RULE I WAS GOING TO WRITE DIED IN THE CENSUS. The spinning ring is a rule in the renderer because it has a disc-wide check: 16 of 212 elements match its shape and all 16 are focus rings. The analogous shape for a pulse -- keyframes varying only in alpha, first alpha equal to last -- matches 82 OF 212, including ptcopyright, palogo_sqex, ptmsg and every _eff fade. A renderer rule on it would make the copyright notice pulse. Narrowed to focus records it matches exactly one distinct element, and a rule justified by n=1 is a special case wearing a rule's clothes. So it is a LOOKUP in authored/timing.json keyed <screen>/<element>, with the census recorded beside it so nobody widens it later. The period is 129 units -- the element's own group under the port's existing model: last timed keyframe t=105 plus the authored exit_ramp_units of 24. No new constant. 2.150 s at 60 units/s, 2.295 s at the ~28.1 fps the emulator presents, against measurements of 2.12-2.34. IT IS A CHOICE AND THE ALTERNATIVE IS STATED: restarting at the group's first keyframe (t=6) instead of 0 gives 123 units = 2.050 / 2.189 s, also inside the measured spread. Nothing separates them. t=0 is taken because it is where every other group starts -- consistency, not evidence. Verified the way the ring was, by bit-identity one period apart. 20 periods is 43.00 s = exactly 172 film frames: frames N and N+172 differ by 0-1/255, while the control a quarter-second off (43.25 s) differs by 58.7/255. On the held boot title the glow-box mean swings 26.0 <-> 37.7. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N7FiFFFwbvG2uxdcEh8HyF
This commit is contained in:
@@ -3498,3 +3498,66 @@ the tool reporting its own resolution honestly rather than hiding it.
|
||||
**The oracle's numbers are quoted in the script as a test fixture and labelled as
|
||||
the oracle's**, with the RE document they come from. Nothing in the port derives
|
||||
them and nothing may.
|
||||
|
||||
## The `PRESS Ⓐ` plate pulses — authored per element, because the census forbids a rule
|
||||
|
||||
The human listed pulsation as first-class and the port drew nothing at all: the
|
||||
plate's focus record `ptbtn00f` was never reached, because `press_start` has no
|
||||
`buttons` and nothing is focused.
|
||||
|
||||
**That it loops is measured**, not assumed. The corpus timed the pulse four times
|
||||
— 2.12 / 2.19 / 2.34 / 2.31 s — and you cannot measure a period unless the thing
|
||||
repeats.
|
||||
|
||||
### The rule I was going to write, and the census that forbade it
|
||||
|
||||
The spinning ring is a **rule** in the renderer (`spin_period_units`) and it
|
||||
earns that: 16 of 212 elements match its shape and **all 16 are focus rings**,
|
||||
zero false positives. So I looked for the analogous shape for a pulse — a group
|
||||
whose keyframes vary **only** in alpha, whose first and last alpha are equal, a
|
||||
closed cycle. `ptbtn00f` fits it exactly: `0 → 6 → 74 → 80 → 80 → 74 → 6 → 0`.
|
||||
|
||||
**Censused before writing it: 82 of 212 elements match.** `ptcopyright`,
|
||||
`palogo_sqex`, `ptmsg`, `ptlogo_back2`, and every `_eff` fade-in-hold-fade-out on
|
||||
every screen. **A renderer rule on that shape would make the copyright notice
|
||||
pulse.**
|
||||
|
||||
Narrowing to focus records leaves exactly **one** distinct element (plus its JP
|
||||
twin). A rule justified by n = 1 is a special case wearing a rule's clothes. So
|
||||
the pulse is a **lookup** in `authored/timing.json`, keyed `<screen>/<element>`,
|
||||
and the census is recorded beside it so nobody widens it later.
|
||||
|
||||
### The period is the element's own group — and the alternative is stated
|
||||
|
||||
**129 units**: its last timed keyframe is t=105, and the final untimed keyframe
|
||||
is reached `exit_ramp_units` (24) later. **No new constant** — 24 is the same
|
||||
authored value every other element's exit already uses. That is 2.150 s at
|
||||
60 units/s, or 2.295 s at the ~28.1 fps the emulator presents, against
|
||||
measurements of 2.12–2.34 s. It sits inside the spread at either rate.
|
||||
|
||||
⚠️ **It is a choice, and the alternative cannot be ruled out**: the cycle could
|
||||
restart at the group's first keyframe (t=6) rather than at 0, giving 123 units =
|
||||
2.050 / 2.189 s — **also inside the measured spread**. Nothing available
|
||||
separates them. t=0 is taken because it is where every other group in this port
|
||||
starts, which is consistency and not evidence, and `authored/timing.json` says so.
|
||||
|
||||
A fifth reading is recorded and **not averaged in**: the Decoder re-picked its
|
||||
troughs and got 2.628 s having previously reported 2.369 from the same run, then
|
||||
withdrew the estimate as too weak to resolve better than ~7 %.
|
||||
|
||||
### Verified the way the ring was — bit-identity one period apart
|
||||
|
||||
20 authored periods is 2.15 × 20 = **43.00 s = exactly 172 film frames**, so
|
||||
frames N and N+172 must be the same frame:
|
||||
|
||||
| | max difference |
|
||||
|---|---|
|
||||
| f_055 vs f_227 (43.00 s) | **0/255** |
|
||||
| f_060 vs f_232 (43.00 s) | **1/255** |
|
||||
| f_070 vs f_242 (43.00 s) | **1/255** |
|
||||
| f_079 vs f_251 (43.00 s) | **0/255** |
|
||||
| **control** — f_070 vs f_243 (43.25 s) | **58.7/255** |
|
||||
|
||||
The control is what makes the rest mean anything: a quarter-second off the period
|
||||
differs by 58.7, on the period by 0–1. Measured on the held boot title, where the
|
||||
glow-box mean swings **26.0 ↔ 37.7** — a real pulse, not a static glow.
|
||||
|
||||
Reference in New Issue
Block a user