This is great! I like the straightforwardness of it.
I'm sure the user could find out the index values for each button on the controller, but I'd be tempted to include an enum for each button so simplify things for the user. It's certainly usable in its current form though.
Because I needed an acronym that I also could use for the vector and quaternion library. Especially for the vector library, as chance of conflict is highest there.
You really don't need to prefix everything with the same prefix everywhere, even in C. Using a per-module prefix that is unlikely to clash is enough.
For your vector and quaternion libs... You should make them header only, all static inline functions and perhaps with always_inline attribute if you care about performance. This also removes any need for prefixes.
I'm sure the user could find out the index values for each button on the controller, but I'd be tempted to include an enum for each button so simplify things for the user. It's certainly usable in its current form though.