code wiki / _hdl_build / nx_adnet_banner_gen.nx

nx_adnet_banner_gen.nx

buildroot/runtime/_hdl_build/nx_adnet_banner_gen.nx

7112 B170 linesdepth 4pulls 6 transitivereach 0 importersview sourcekind tooltopic adnet
docsdependenciesstructsconstsfunctions

about

nx_adnet_banner_gen.nx -- GENERATOR: sovereign 728x90 house-ad PNG creatives for the adnet slot (build generators, not hand-authored artifacts). Pure pixels: vertical gradient + accent frame + centered scaled 8x8 sovereign font text -> nx_png_write_rgb. Self-verifying: each emitted file is read back and must carry the PNG magic + plausible size, else exit 1 (no fabricated greens). Output: knowledge/staging/adnet/adnet_ha_{torrent,library,video,world}.png expect_exit: 0 license_tier: ORIGINAL

dependencies 4 imports · 0 importers

nx_syscalls.nx nx_png_write.nx nx_png.nx nx_font8x8.nx nx_adnet_banner_gen.nx

imports: nx_syscalls.nxnx_png_write.nxnx_png.nxnx_font8x8.nx

imported by: nobody (leaf or entry point)

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

main sys_mkdir abg_emit sys_mmap abg_bg abg_px font8x8_table sys_mmap ↻ fg abg_tlen abg_text abg_px ↻ write_png sys_mmap ↻ png_g png_paeth png_sabs dfe_compress sys_mmap ↻ dfe_fill_tables dfe_deflate sys_mmap ↻ dfe_bits dfe_hash dfe_matchlen dfe_sym dfe_bits ↻ dfe_rev dfe_rev ↻ sys_munmap sys_munmap ↻ png_be32 png_adler32 png_crc32 sys_openat_wr sys_write sys_close sys_read_file sys_openat_rd sys_lseek

structs

none

consts

11const ABG_MAGIC_65536: i64 = 65536
13const ABG_W: i64 = 728
14const ABG_H: i64 = 90

functions

16func abg_px(buf: *u8, x: i64, y: i64, r: i64, g: i64, b: i64) -> i64
called by 2: abg_bgabg_text
29func abg_bg(buf: *u8, r: i64, g: i64, b: i64, ar: i64, ag: i64, ab: i64) -> i64
called by 1: abg_emit calls 1: abg_px
62func abg_text(buf: *u8, t: *u8, text: *u8, ox: i64, oy: i64, s: i64, r: i64, g: i64, b: i64) -> i64
called by 1: abg_emit calls 1: abg_px
101func abg_tlen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 1: abg_emit
104func abg_emit(path: *u8, title: *u8, sub: *u8, r: i64, g: i64, b: i64, ar: i64, ag: i64, ab: i64) -> i64
152func abg_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 calls 1: sys_write
154func main() -> i64