nx_body_semantic_mesh_gate_t345.nx source
↩ module page · 23 lines · 2296 B
1import "nx_body_rest_registration_candidate_t345.nx"
2import "nx_gate_verdict.nx"
3func bmg_u32(b:*u8,p:i64)->i64{return (b[p] as i64)|((b[p+1] as i64)<<8)|((b[p+2] as i64)<<16)|((b[p+3] as i64)<<24)}
4func main()->i64{
5 let ctr:*i64=gv_ctr();gv_head("BODY-SEMANTIC-MESH")
6 var an:i64=0;var bn:i64=0;var cn:i64=0
7 let a:*u8=sys_read_file("/volume1/homes/elderwesto/nishihost/buildroot/knowledge/gates/body-semantic-legacy-t345.nxmesh",&an)
8 let b:*u8=sys_read_file("/volume1/homes/elderwesto/nishihost/buildroot/knowledge/gates/body-semantic-v2-t345.nxmesh",&bn)
9 let canon:*u8=sys_read_file("/volume1/homes/elderwesto/nishihost/buildroot/knowledge/gates/body-semantic-v2-t345.dat",&cn)
10 if an<88||bn!=an||cn<1{return gv_verdict("BODY-SEMANTIC-MESH",ctr,"input refused")}
11 let rings:*i64=sys_mmap(cn*8) as *i64;let mirrors:*i64=sys_mmap(cn*8) as *i64;let ranges:*i64=sys_mmap(cn*8) as *i64;let pos:*i64=sys_mmap(8) as *i64;let val:*i64=sys_mmap(8) as *i64
12 var i:i64=0;var parts:i64=0;while i<cn{var end:i64=i;while end<cn&&canon[end]!=10 as u8{end=end+1};if canon[i]==80 as u8{pos[0]=i+1;br_integer(canon,end,pos,val);mirrors[parts]=val[0];parts=parts+1};if canon[i]==82 as u8{rings[parts-1]=rings[parts-1]+1};i=end+1}
13 var layer:i64=0;i=0;while i<parts{ranges[i]=layer;layer=layer+2*28*((rings[i]-1)*4+1)*(1+mirrors[i]);i=i+1}
14 let nt:i64=bmg_u32(a,12)
15 gv_check("actual canon station ranges exactly cover three emittedlayers",parts==20&&nt==layer*3&&an==88+nt*88&&bmg_u32(b,12)==nt,ctr)
16 var outside:i64=0;var changed:i64=0;var position:i64=0;var t:i64=0
17 while t<nt{let local:i64=t%layer;var head:i64=0;if local>=ranges[9]&&local<ranges[10]{head=1};var q:i64=0;var any:i64=0;while q<84{let off:i64=88+t*84+q;if a[off]!=b[off]{any=1;if head==0{outside=outside+1};if q<36{position=position+1}};q=q+1};if any==1&&head==1{changed=changed+1};t=t+1}
18 gv_check("head geometry actually changes",changed>0&&position>0,ctr)
19 gv_check("all nineteen nonhead parts including alltoes remainbyteidentical",outside==0,ctr)
20 var tail:i64=88+nt*84;var taildiff:i64=0;while tail<an{if a[tail]!=b[tail]{taildiff=taildiff+1};tail=tail+1}
21 gv_check("all source layer memberships preserved",taildiff==0,ctr)
22 return gv_verdict("BODY-SEMANTIC-MESH",ctr,"actual fullmesh scanned; visible appearance still unreviewed")
23}