(bind-func xhid_read
(lambda (hid)
(let ((ret:hid_return 0)
(packets 4)
(pathlen 3) (i:i32 0)
(path_out:i32* (alloc pathlen))
(dat:i8* (alloc packets)))
;; where path_out values are based are taken from parse tree!
(pfill! path_out #x00010002 #x0008004b #x00080041)
(set! ret (hid_get_input_report hid path_out pathlen dat packets))
(printout "->")
(dotimes (i packets)
(printout " " (pref dat i)))
(println "")
void)))