code wiki / _hdl_build / nx_game_session_drive.nx
nx_game_session_drive.nx
buildroot/runtime/_hdl_build/nx_game_session_drive.nx
about
nx_game_session_drive.nx -- TUTOR-AUTHORED SCAFFOLD (Claude), NOT emitter output.
Binds an emitter-authored game-system FSM (the team's _pe_*) to the game-engine
SUBSTRATE (tissue world + 1bpp framebuffer + input) and runs a DETERMINISTIC
session: input/event -> FSM step -> render-to-substrate. This closes the first
inch of the "unified API" gap that surfaces.tsv names on the game-engine surface
(maturity=PARTIAL, gap=unified API): an emitter-authored game-system drives the
hardware-floor engine end to end, and the result is gate-verifiable.
HONEST AUTHORSHIP (operator law: do not claim tutor work is team work):
- The FSMs this drives ARE emitter-authored: _pe_roglrun (new this rung) and
_pe_dungenc (DONE), both written by nx_auto_builder from data-only specs.
- This driver + its KAT + the gate are TUTOR (Claude) authored TOOLING.
- The RUNG that makes THIS binding emitter-authored too -- a GAME_BIND /
compose-loop emitter shape so the Builder emits the binding from a spec --
is filed as G-R2 in the game-engine rung ladder. Until then this is a
hand-built scaffold, and the autonomy meter correctly does NOT credit it as
team self-authoring (METER-INTEGRITY law).
LAWS honored: <=6 args/func, flat ifs, no &&/||, integer-only, additive.
license_tier: ORIGINAL
dependencies 8 imports · 0 importers
imports: nx_tier.nxnx_syscalls.nxnx_palette.nxnx_tissue.nxnx_fb_1bpp.nxnx_input_gpio.nx_pe_roglrun.nx_pe_dungenc.nx
imported by: nobody (leaf or entry point)
structs
| none |
consts
| none |
functions
| 34 | func gs_step(which: i64, s: i64, e: i64) -> i64 |
| 42 | func gs_btn_to_event_roglrun(btn: i64) -> i64 called by 1: gs_session_btn_roglrun |
| 57 | func gs_render(world: *NxTissue, fb: *NxFb1bpp, s: i64, i: i64) -> i64 |
| 66 | func gs_session(world: *NxTissue, fb: *NxFb1bpp, ev: *i64, n: i64, which: i64, s0: i64) -> i64 |
| 81 | func gs_session_btn_roglrun(world: *NxTissue, fb: *NxFb1bpp, btn: *i64, n: i64, s0: i64) -> i64 |