code wiki / _hdl_build / nx_ttf_fontlib_gate.nx

nx_ttf_fontlib_gate.nx

buildroot/runtime/_hdl_build/nx_ttf_fontlib_gate.nx

18995 B288 linesdepth 5pulls 6 transitivereach 0 importersview sourcekind gate/prooftopic ttf
docsdependenciesstructsconstsfunctions

about

nx_ttf_fontlib_gate.nx -- gate for the sovereign TTF font ENGINE LIBRARY (the browser's text renderer). Proves: real load of our emitted nishi_sans.ttf; glyph rasterization with genuine ANTI-ALIASING (intermediate coverage levels -- the visual difference vs the 1-bit 8x8 bitmap); REAL proportional metrics from hmtx ('i' narrower than 'm'); FULL-ASCII coverage incl the NEW punctuation; the per-(char,size) cache returns the identical record; the RGBA framebuffer alpha-blend puts ink on the canvas. NEG: a missing font file refuses to load; an out-of-range char yields no glyph. expect_exit: 0 license_tier: ORIGINAL

dependencies 2 imports · 0 importers

nx_ttf_fontlib.nx nx_gate_verdict.nx nx_ttf_fontlib_gate.nx

imports: nx_ttf_fontlib.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 g_puts gv_ctr sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ tf_load sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_munmap sys_close tf_load_buf tf_rd16 tf_find_table tf_rd16 ↻ tf_rd32 tf_cmap_pick4 tf_rd16 ↻ tf_rd32 ↻ sys_mmap ↻ tf_rd16s tf_rd16 ↻ gv_need gv_puts

structs

none

consts

none

functions

11func g_puts(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 }
called by 1: main
13func tfg_w16(b: *u8, o: i64, v: i64) -> i64 { b[o] = ((v / 256) % 256) as u8; b[o+1] = (v % 256) as u8; return o + 2 }
called by 1: main
14func g_num(v: i64) -> i64 { let b: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m;sys_write(1,"-" as *u8,1)} let t: *u8=sys_mmap(28); var k: i64=0; if m==0{t[0]=48 as u8;k=1} while m>0{t[k]=(48+(m%10)) as u8;m=m/10;k=k+1} var i: i64=0; while i<k{b[i]=t[k-1-i];i=i+1} sys_write(1,b,k); return 0 }
called by 1: main
16func main() -> i64