The AMX Art software uses the CPC's 300Hz interrupt to read the joystick port (at least it tries to do that, while moving the mouse pointer, the software accidently disables IRQs, and so, misses some interrupts). This is giving it a relative low resolution of max 300 mickeys per second (or actually less, due to the missed IRQs).
The AMX Interface hardware basically converts the incoming mouse signals to joystick signals, presumably issuing a LOW pulse pulses (per mickey) on the corresponding direction lines. The protocol is thus very simple (unlike modern RS232 and PS/2 mice, like so:the hardware doesn't contain any motion counters).
Row9.Bit0 Joy1up LOW for 1/300s per mickey, when mouse moved up
Row9.Bit6 Joy1fire3 LOW when Middle mouse button pressed
Note: The exact hardware timings are '''unknown''', the values "1/300s" in the above description assume that the mouse AMX '''hardware''' is timings were designed to match up with the 300Hz AMX '''software''' timings.
== AMX Mouse Hardware Clones ==