code wiki / _hdl_build / _drv_v1af4.nx

_drv_v1af4.nx source

↩ module page · 26 lines · 936 B

1// GENERATED BY nx_driver_emit (driver-from-spec) -- binds devices by vendor from HWMAP; control flow + pattern synthesized from the spec, compiled by nx_cc. license_tier: ORIGINAL 2import "nx_syscalls.nx" 3func main() -> i64 { 4 let buf: *u8 = sys_mmap(262144) 5 let fd: i64 = sys_openat_rd("knowledge/registry/hwmap.tsv" as *u8) 6 var n: i64 = 0 7 if fd >= 0 { 8 var r: i64 = 1 9 while r > 0 { let d: *u8 = ((buf as i64) + n) as *u8; r = sys_read(fd, d, 262144 - n); if r > 0 { n = n + r } } 10 sys_close(fd) 11 } 12 let pat: *u8 = "\t0x1af4\t" as *u8 13 var cnt: i64 = 0 14 var i: i64 = 0 15 while i + 8 <= n { 16 var k: i64 = 0 17 var hit: i64 = 1 18 while k < 8 { if buf[i+k] != pat[k] { hit = 0; k = 8 } else { k = k + 1 } } 19 if hit == 1 { cnt = cnt + 1 } 20 i = i + 1 21 } 22 let ob: *u8 = sys_mmap(8) 23 ob[0] = (cnt & 0xff) as u8 24 sys_write(1, ob, 1) 25 return 0 26}