     4 <vector> +controller-states+ set-global
     0 0 0 0 2 <vector> mouse-state boa
         +mouse-state+ set-global
-    256 f <array> +keyboard-state+ set-global ;
+    256 <bit-array> +keyboard-state+ set-global ;
 
 M: iokit-game-input-backend (open-game-input)
     hid-manager-matching-game-devices {

        rot ?set-nth
    ] [ 3drop ] if ;

HINTS: record-keyboard { array alien } ;

: record-mouse ( mouse-state value -- )
    dup IOHIDValueGetElement {

sequences locals combinators.short-circuit threads
namespaces assocs vectors arrays combinators hints alien
core-foundation.run-loop accessors sequences.private
alien.c-types math parser game-input vectors bit-arrays ;
IN: game-input.iokit

SINGLETON: iokit-game-input-backend
