code wiki / (root) / nx_pcb_cam_gate.nx

nx_pcb_cam_gate.nx

buildroot/runtime/nx_pcb_cam_gate.nx

7568 B164 linesdepth 4pulls 4 transitivereach 0 importersview sourcekind gate/prooftopic pcb
docsdependenciesstructsconstsfunctions

about

nx_pcb_cam_gate.nx -- R2 GATE of the Omniforge PCB/EDA leg: isolation-milling CAM (in-house loop). Builds the demo board, computes isolation toolpaths via nx_pcb_cam, writes the real .gcode, then VERIFIES: the offset coordinates are reconstructed EXACTLY from the integer model (axis-aligned offsets are exact: hw+tool_r added/subtracted to a coordinate), pass count == 2*traces + pads, retract count is consistent, the G21/G90/spindle/M2 headers are present, and a NEGATIVE CONTROL (an offset wrong by 1um) is ABSENT. Proves design->in-house-millable G-code with no external fab, integer-only/no-float. 100% sovereign. license_tier: ORIGINAL expect_exit: 0

dependencies 2 imports · 0 importers

nx_syscalls.nx nx_pcb_cam.nx nx_pcb_cam_gate.nx

imports: nx_syscalls.nxnx_pcb_cam.nx

imported by: nobody (leaf or entry point)

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

main sys_mmap sw sys_write cam_emit sys_mmap ↻ g_puts g_puti sys_mmap ↻ cam_retract g_puts ↻ cam_z g_puts ↻ g_mm6 g_puti ↻ g_puts ↻ cam_isqrt cam_pass cam_rapid g_puts ↻ g_mm6 ↻ cam_plunge g_puts ↻ cam_z ↻ g_puti ↻ cam_cut g_puts ↻ g_mm6 ↻ g_puti ↻ cam_retract ↻ cam_ring cam_rapid ↻ cam_plunge ↻ cam_cut ↻ cam_retract ↻ sn sys_write ↻ sys_mmap ↻ sys_openat_wr sys_write ↻

structs

none

consts

none

functions

11func sw(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 2: checkmain calls 1: sys_write
12func sn(v: i64) -> i64
called by 1: main calls 2: sys_writesys_mmap
23func slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 2: containscount_occur
25func contains(hay: *u8, haylen: i64, needle: *u8) -> i64
called by 1: main calls 1: slen
39func count_occur(hay: *u8, haylen: i64, needle: *u8) -> i64
called by 1: main calls 1: slen
54func expect_xy(nb: *u8, x_um: i64, y_um: i64) -> i64
called by 1: main calls 2: sys_mmapg_mm6
63func check(name: *u8, cond: i64, tot: *i64) -> i64
called by 1: main calls 1: sw
70func main() -> i64