nx_niffacts.nx
buildroot/runtime/nx_niffacts.nx
about
nx_niffacts.nx -- CLI: NIF container structural facts. nx_niffacts probe|blocks|geom <f.nif>
The Bethesda mesh-container dialect beside nx_kkfacts / nx_bspfacts / nx_mhtarget
(/compare/koikatsu KK12 legs 1+2). Structure + block-type census + self-verified per-TriShape
vertex/triangle counts; full vertex-data extraction is the contract's declared final half.
Donor FORM is measured, never shipped.
license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0
dependencies 2 imports · 0 importers
imports: nx_syscalls.nxnx_nif_lib.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 10 | const NFC_CAP: i64 = 134217728 // 128MB refuse-beyond bound; a partial read reports state 2 and abstains |
| 11 | const NFC_MAX_SHAPES: i64 = 4096 // per-file TriShape bound; overflow visible via shapes vs shown |
| 12 | const NFC_SHOW: i64 = 8 // per-shape rows printed; the totals carry the population |
functions
| 14 | func nc_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n } |
| 15 | func nc_w(s: *u8) -> i64 { sys_write(1, s, nc_slen(s)); return 0 } |
| 16 | func nc_e(s: *u8) -> i64 { sys_write(2, s, nc_slen(s)); return 0 } |
| 17 | func nc_span(buf: *u8, off: i64, len: i64) -> i64 |
| 23 | func nc_num(v: i64) -> i64 |
| 36 | func nc_eq(a: *u8, b: *u8) -> i64 { var i: i64 = 0; while a[i] != (0 as u8) { if a[i] != b[i] { return 0 } i = i + 1 } if b[i] != (0 as u8) { return 0 } return 1 } called by 1: main |
| 38 | func main(argc: i64, argv: *i64) -> i64 |