code wiki / _hdl_build / nx_probe_pid.nx
nx_probe_pid.nx source
↩ module page · 9 lines · 606 B
1import "nx_syscalls.nx"
2import "nx_proc.nx"
3func pn(v: i64) -> i64 { let b:*u8=sys_mmap(24); var m:i64=v; if m<0{sys_write(1,"-" as *u8,1);m=0-m} let t:*u8=sys_mmap(24); var k:i64=0; if m==0{t[0]=48 as u8;k=1} while m>0{t[k]=(48+(m%10)) as u8;m=m/10;k=k+1} var j:i64=0; while j<k{b[j]=t[k-1-j];j=j+1} sys_write(1,b,k); sys_write(1,"\n" as *u8,1); return 0 }
4func main() -> i64 {
5 sys_write(1,"nx_proc_getpid(172)=" as *u8,20); pn(nx_proc_getpid())
6 sys_write(1,"syscall(39)=" as *u8,12); pn(__syscall(39,0,0,0,0,0,0))
7 sys_write(1,"syscall(172)=" as *u8,13); pn(__syscall(172,0,0,0,0,0,0))
8 return 0
9}