jstest
can be used to test all the features of the Linux
joystick API, including non-blocking and select(2) access, as
well as version 0.x compatibility mode.
It is also intended to
serve as an example implementation for those who wish to learn
how to write their own joystick using applications.