Skip to content

chore: unify controller input types and access views - #273

Merged
nickyyOO merged 6 commits into
lombyte-project:mainfrom
purabshah8:codex/controller-input-types-20261101
Nov 1, 2026
Merged

nickyyOO merged 6 commits into
lombyte-project:mainfrom
purabshah8:codex/controller-input-types-20261101

Conversation

@purabshah8

Copy link
Copy Markdown
Contributor

Before

Controller polling and its consumers repeated partial layouts, raw offsets and inconsistent button declarations. Those local views made it difficult to follow the same input record through menus, cameras, hero movement, weapons and vehicles.

After

Consolidate the controller record and button declarations across 80 files. Name the SDK profile, history and repeat fields, replace private consumer layouts with shared types, and add target-compiler layout assertions plus a short controller-input reference.

Preserve signed, unsigned, volatile, paired-word and array/scalar access views where they affect retail code generation. Keep the explicit non-small-data aliases and existing compiler routing. The declaration audit decreases from 385 to 384 conflicts; the two required button array/scalar variants are documented, and the existing ceiling tightens from 420 to 384.

Verification

Validated commit 86995bb4451bbddde6484d400b9da646b81ba47b (tree 23781a2ba1324267d2b8af3681da42fe84f7f4aa) on Linux:

  • Boot ELF byte gate passes: reused the prepared retail baseline, rebuilt all 52 affected header consumers, and ran the unchanged full relink, label and SHA-256 checks from make elf.
  • make overlays passes: 3,014 functions, 18,869 relocated copies and 24,318 level-data objects across 996 source files match retail.
  • make check passes: 102 public tests, script parsing, progress generation and target-compiler layout checks.
  • Formatting, diff hygiene and cleanup checks pass; independent source review completed.

Built and retail boot SHA-256: e050581032e4bb3f20341307da5b69b76f1574910519155380ea771e55c3c0c9.

This is a byte-preserving readability change; it adds no native gameplay integration or new runtime-coverage claim.

@github-actions

github-actions Bot commented Nov 1, 2026

Copy link
Copy Markdown

Decompilation progress

C_EXACT Change Matched bytes Functions C_FUZZY
All code 100.00 % — 3,547,932 / 3,547,932 B (—) 4,244 / 4,244 (—) 100.00 %
Boot executable 100.00 % — 354,504 / 354,504 B (—) 1,230 / 1,230 (—) 100.00 %
Game 100.00 % — 264,872 / 264,872 B (—) 850 / 850 (—) 100.00 %
SDK 100.00 % — 89,632 / 89,632 B (—) 380 / 380 (—) 100.00 %
Level overlays 100.00 % — 3,193,428 / 3,193,428 B (—) 3,014 / 3,014 (—) 100.00 %
Shared level code 100.00 % — 1,130,492 / 1,130,492 B (—) 1,583 / 1,583 (—) 100.00 %
Per-level code 100.00 % — 2,062,936 / 2,062,936 B (—) 1,431 / 1,431 (—) 100.00 %
Data in C Change Matched bytes
All data 62.81 % — 7,809,078 / 12,433,372 B (—)
Boot executable 26.98 % — 188,645 / 699,136 B (—)
Level overlays 64.94 % — 7,620,433 / 11,734,236 B (—)

No function changed its match state compared with main (9071100).

Compared with main (9071100). C_FUZZY uses main's last measurement.

@nickyyOO
nickyyOO merged commit d1807f0 into lombyte-project:main Nov 1, 2026
4 checks passed
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.

2 participants