code wiki / _hdl_build / nx_asset_floor_gate.nx

nx_asset_floor_gate.nx

buildroot/runtime/_hdl_build/nx_asset_floor_gate.nx

13820 B294 linesdepth 3pulls 3 transitivereach 0 importersview sourcekind gate/prooftopic asset
docsdependenciesstructsconstsfunctions

about

nx_asset_floor_gate.nx -- THE ASSET FLOOR: measure our shipped character against a declared game-ready floor, and NAME WHAT IS MISSING. Operator 2026-08-02 pointed at a commercial game-ready character listing as "the floor we need to reach". That listing is behind a bot challenge and could not be read, so this gate does the honest version instead: it parses OUR OWN asset and reports the capability gaps a commercial game-ready character would carry. THE POINT IS THE GAP LIST, NOT A GREEN LIGHT. A gate that only says PASS/FAIL on triangle count would call our figure "game ready" while she ships with no face geometry, no breast bones and no blend shapes -- the exact defects the operator saw on screen. So every capability is REPORTED, present or absent, and the absent ones are the roadmap. Reads the NXA container directly (the format the browser loads): magic NXANIM01, u64 version, u64 section count, then 32-byte section headers {tag[4], _, off, wordlen, ck_lo, ck_hi}. Sections: VERT TRIS SKEL SKIN ANIM (required) + GVRT GTRI (garment) HSTR (hair) POSE (idle). license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0

dependencies 2 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_asset_floor_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main gv_ctr sys_mmap gv_head gv_puts sys_write gv_puts ↻ sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_close gv_check gv_puts ↻ gv_verdict gv_puts ↻ gv_num sys_mmap ↻ sys_write ↻ sys_munmap gv_journal sys_openat_append sys_mmap ↻ gv_catn sys_mmap ↻ sys_munmap ↻ sys_now_realtime_sec sys_mmap ↻ sys_clock_gettime_real gv_cat sys_write ↻ sys_close ↻ sys_munmap ↻ sys_exit gv_num ↻ af_rd64 af_find af_tag

structs

none

consts

22const AF_PATH: *u8 = "sites/nishifamily/world/ref9d.nxa"
28const AF_MIDLINE: i64 = 3000
29const AF_HDR: i64 = 32
30const AF_SECHDR: i64 = 32
33const AF_TRI_MIN: i64 = 8000
34const AF_TRI_MAX: i64 = 120000
35const AF_JOINT_MIN: i64 = 40
36const AF_VERT_MIN: i64 = 4000

functions

38func af_rd64(b: *u8, off: i64) -> i64
called by 2: af_findmain
44func af_tag(b: *u8, off: i64, t: *u8) -> i64
called by 1: af_find
50func af_find(b: *u8, nsec: i64, t: *u8) -> i64
called by 1: main calls 2: af_tagaf_rd64
59func af_report(name: *u8, present: i64) -> i64
called by 1: main calls 1: gv_puts
66func main(argc: i64, argv: *i64) -> i64