nx_pcb_gerber.nx
buildroot/runtime/nx_pcb_gerber.nx
about
nx_pcb_gerber.nx -- SOVEREIGN PCB/EDA copper-layer emitter: a board copper-geometry model
(apertures + flashes/pads + draws/traces, struct-free parallel arrays) -> a valid Gerber
RS-274X file. This is the MANUFACTURABLE FAB SEAM of the Omniforge "chips" leg: the universal
handoff every PCB fab accepts AND the input our own isolation-milling CAM will consume next.
INTEGER-ONLY / NO-FLOAT by construction -- all coordinates are micrometers (um); Gerber format
4.6 in MM has 6 implied decimals, so a coordinate's format-units = um*1000 (pure integer, zero
FP drift -- the determinism float EDA tools cannot match). Aperture sizes formatted as I.FFFFFF
mm from integer um. Verified against the real RS-274X spec example in
knowledge/fetched/of_ed_gerber.raw (%FSLAX..*% / %MOMM*% / %ADDnnC,d*% / D01 D02 D03 / M02).
Mirrors the nx_cad / nx_stl_write organ idiom (reused by the gate, exactly like nx_cad_test).
license_tier: ORIGINAL expect_exit: 0
dependencies 1 imports · 3 importers
imports: nx_syscalls.nx
imported by: nx_pcb_cam.nxnx_pcb_drill.nxnx_pcb_gerber_gate.nx
structs
| none |
consts
| none |
functions
| 15 | func g_puti(buf: *u8, len: *i64, v: i64) -> i64 |
| 27 | func g_puts(buf: *u8, len: *i64, s: *u8) -> i64 |
| 34 | func g_mm6(buf: *u8, len: *i64, um: i64) -> i64 |
| 50 | func g_xyd(buf: *u8, len: *i64, x_um: i64, y_um: i64, d: i64) -> i64 |
| 59 | func g_sel(buf: *u8, len: *i64, code: i64) -> i64 |
| 65 | func g_apdef(buf: *u8, len: *i64, code: i64, kind: i64, d1_um: i64, d2_um: i64) -> i64 |
| 75 | func gerber_emit( |