Skip to content

fix: pad mirror matches the hardware layout - #23

Merged
timwata merged 2 commits into
mainfrom
fix/panel-pad-layout
Oct 10, 2026
Merged

timwata merged 2 commits into
mainfrom
fix/panel-pad-layout

Conversation

@timwata

@timwata timwata commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

The panel's pad mirror did not match the real pad, in two ways.

Columns. The menu panel packed every row to the left, so the two-key top row and the three-key bottom row sat one column off.

  • Pad.displayRows now spans the four-column grid, with nil for a column that has no key: the top row sits in the middle two columns, the bottom row starts one column in.
  • The menu panel and the emulator both render a gap as an empty key-sized slot, so they share one source of truth.

Top-row order. The code assumed the top row was wired right to left (key 0 top-right). On the hardware, the top-left key opened the second agent and the top-right key the first, so key 0 is the top-left key.

  • Pad.agentKeyIDs is now plain index order [0, 1, 2, 3, 4, 5], so the first agent lights and answers to the top-left key.
  • The top display row is [nil, 0, 1, nil].
  • docs/hacking.md drops the reversed-row claim and draws the pad on its four-column grid.

Keys 10 and 11 stay two separate keys in the menu panel; the emulator still draws them as one wide keycap.

swift test: 241 tests, 0 failures (13 skipped, no hardware).

🤖 Generated with Claude Code

timwata and others added 2 commits October 10, 2026 22:29
The menu panel packed every row to the left, so the top row and the
bottom row sat one column off from the pad. Pad.displayRows now spans
the four-column grid with nil gaps (top row in the middle two columns,
bottom row one column in), and both the panel and the emulator render
a gap as an empty key-sized slot.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
On the hardware the top-left key opened the second agent and the
top-right key the first, so the top row is not wired right to left.
Agent slots now take keys in plain index order, the panel and emulator
show 0 on the left, and docs/hacking.md drops the reversed-row claim
and draws the pad on its four-column grid.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@timwata timwata changed the title fix: place the panel's pad keys on their physical columns fix: pad mirror matches the hardware layout Oct 10, 2026
@timwata
timwata merged commit 66c67d9 into main Oct 10, 2026
1 check passed
@timwata
timwata deleted the fix/panel-pad-layout branch October 10, 2026 13:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant