code wiki / _hdl_build / _drv_v1414.nx
_drv_v1414.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 = "\t0x1414\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}