Files
Sylpheed/docs/re/data/f1-cursor-quad-y-per-frame.tsv
sylph-decoder 2939fa21d8
Some checks failed
CI / Native — linux (pull_request) Failing after 33m54s
CI / WASM — Web (pull_request) Successful in 32m1s
CI / Formatting (pull_request) Failing after 1m21s
re: F1 measured -- held DOWN moves the cursor once and no more, via the file driver
Fifth boot attempt this session, first clean one, using the harness debugged
last iteration (env-safe input, wide capture window, signed-in profile,
blanked X root). Reached the menu, held DOWN 2.5s wall-clock, armed the F10
draw capture, released, killed -- zero crashes.

Achieved vs requested: 433 of 600 requested frames, spanning 14.43s of GUEST
time against ~4.5s wall-clock for the hold+tail window -- this run went at
~3.2x real time (a cheap static menu, nothing pacing it to a display
refresh). The 2.5s wall-clock hold covers roughly 8s of that guest time.

Method: track one quad shape's position per frame via read_draws.py, not a
screen diff -- the approach f1-menu-repeat-harness-built-not-answered.md
already named as correct. Exactly one shape-group moves at all: one jump of
~0.21-0.225 NDC units (matching the known one-menu-item pitch), complete
within 4 frames / 133ms guest time of arming, then flat (a ~0.0125 pulse
wobble only) for the remaining 427 frames / 14.3s of guest time. Broadening
the match threshold finds no other moving element.

This is a STRONGER negative than the 2026-08-30 result it agrees with (that
one sampled a screen diff at ~4-5fps for 2.0s; this reads every quad every
frame for ~8s of guest-time held) -- it survives, rather than confirms, last
iteration's "coarse sampling hid a fast repeat" alternative, which does not
survive a per-frame instrument over a much longer window. Refutation
attempt against my own prior lean, recorded: it does not survive.

Reconciled, not left in conflict: the human's play-test and pad.py's
"auto-repeats" warning almost certainly went through a REAL controller
(Canary's SDL driver), which auto-repeats keystrokes at a documented
upstream 400ms/100ms (guest time) via the REPEAT keystroke flag. The file
driver deliberately never emits that flag, by design -- so it cannot show
repeat regardless of how carefully or how long it's held, which is exactly
the negative measured here. Still no F1 number; now a specific, well-
evidenced reason the file driver alone will never produce one, and a named
next step (add opt-in REPEAT-flag support to the file driver, matching the
SDL driver's constants, then re-run this exact capture) -- not attempted
this iteration, a second unit on an already-complete one.

Reference data: docs/re/data/f1-cursor-quad-y-per-frame.tsv -- the derived
per-frame Y position and guest tick, not the raw draw log itself (a capture
artifact, kept uncommitted per the corpus's game-content rule).
2026-09-12 12:13:41 +00:00

4.0 KiB

1# framegtickgfreq_hzcursor_quad_y_ndc
2# source: xenia_re_ui_draws_01.log, 2026-09-12, f1_hold_capture.py run 5 (f1g)
3# quad: page B5B1C73032BA3FA3, ~0.09x0.16 NDC (focus highlight)
4# held DOWN written at wall t~=161.6s (script HOLD start), released ~164.1s
518077295605500000000.0525
628078950338500000000.055
75808396706450000000-0.16
86808564679050000000-0.16
97808736590750000000-0.16
1010809234492850000000-0.1625
1111809401438850000000-0.1625
1212809571813650000000-0.16
1313809743005150000000-0.1625
1421811081218350000000-0.1675
1522811247821350000000-0.17
1623811420865050000000-0.1675
1727812090505050000000-0.17
1828812253058350000000-0.17
1929812421361950000000-0.17
2036813594697650000000-0.17
2137813762043050000000-0.17
2257817104390950000000-0.16
2358817268979850000000-0.16
2465818439474550000000-0.16
2566818610644150000000-0.16
2667818777124450000000-0.16
2770819276818150000000-0.1625
2871819449277150000000-0.1625
2972819615401650000000-0.16
3073819780124850000000-0.1625
3181821120729750000000-0.1675
3282821285598150000000-0.17
3383821456900350000000-0.1675
3487822126493450000000-0.17
3588822291132050000000-0.17
3689822461415950000000-0.17
3796823628572850000000-0.17
3897823798608350000000-0.17
39117827150863550000000-0.16
40118827320912850000000-0.16
41125828492511750000000-0.16
42126828659961250000000-0.16
43127828830622450000000-0.16
44130829333826950000000-0.1625
45131829503056250000000-0.1625
46132829672365250000000-0.16
47133829837715050000000-0.1625
48141831173450350000000-0.1675
49142831341480150000000-0.17
50143831506761850000000-0.1675
51147832174600850000000-0.17
52148832341533550000000-0.17
53149832513492650000000-0.17
54156833688064650000000-0.17
55157833871507450000000-0.17
56177837222635150000000-0.16
57178837391087850000000-0.16
58185838559651950000000-0.16
59186838726269350000000-0.16
60187838892910350000000-0.16
61190839393780650000000-0.1625
62191839563946250000000-0.1625
63192839727835850000000-0.16
64193839893399250000000-0.1625
65201841226079350000000-0.1675
66202841400473450000000-0.17
67203841566716750000000-0.1675
68207842236736450000000-0.17
69208842403095250000000-0.17
70209842570004550000000-0.17
71216843738234250000000-0.17
72217843906860250000000-0.17
73237847240617950000000-0.16
74238847408510850000000-0.16
75245848574390350000000-0.16
76246848741330450000000-0.16
77247848906765450000000-0.16
78250849408125250000000-0.1625
79251849581876350000000-0.1625
80252849747560350000000-0.16
81253849914571150000000-0.1625
82261851250938950000000-0.1675
83262851414589550000000-0.17
84263851585353150000000-0.1675
85267852254998650000000-0.17
86268852422849950000000-0.17
87269852593266950000000-0.17
88276853766341350000000-0.17
89277853935408450000000-0.17
90297857282788250000000-0.16
91298857453177150000000-0.16
92305858625636750000000-0.16
93306858791395650000000-0.16
94307858956604950000000-0.16
95310859459470950000000-0.1625
96311859629277950000000-0.1625
97312859793610350000000-0.16
98313859962881450000000-0.1625
99321861300938650000000-0.1675
100322861464873450000000-0.17
101323861632181850000000-0.1675
102327862299118750000000-0.17
103328862468847050000000-0.1725
104329862633882350000000-0.17
105336863811113250000000-0.17
106337863982338250000000-0.17
107357867327264350000000-0.16
108358867494698150000000-0.16
109365868660370850000000-0.16
110366868827957150000000-0.16
111367868994291350000000-0.16
112370869499635950000000-0.1625
113371869665882250000000-0.1625
114372869832197750000000-0.16
115373869998303450000000-0.1625
116381871336123950000000-0.1675
117382871504902950000000-0.17
118383871668991950000000-0.1675
119387872338123750000000-0.17
120388872506687050000000-0.1725
121389872675604050000000-0.17
122396873845451950000000-0.17
123397874014625050000000-0.17
124417877361416750000000-0.16
125418877524986350000000-0.16
126425878704296750000000-0.16
127426878872403350000000-0.16
128427879030986550000000-0.16
129430879541046950000000-0.1625
130431879709426650000000-0.1625
131432879881524750000000-0.16