@ScrubMaster4 Data transfer via USB is possible, but this requires you to build the devices yourself.
Could you refer to the following URL? (Unfortunately it is written in Japanese so use AI translation)
https://t.co/PIugGxUeAe
@ScrubMaster4 Could you refer to the code on the attached movie?
Your concern (unexpected sprite deformation affected by LFILTER) can be resolved by using a larger number LFILTER layer (7 on the movie) than assigned to the sprite (0 by default).
@ScrubMaster4 I guess the system internal button buffer is updated in every 1/60 sec, so if you call BUTTON twice in 1/60 sec, the first and second returns become same because of the buffer not updated. However I think WAIT 60 is too long. Could you try to replace WAIT 60 with VSYNC 1 ?