#!/bin/rc # usage: nusb/joy epX.Y | joy.gp100 [N] ~ $#* 0 && *='' awk -safe -v 'joy='$1 ' /^axis 0 0/ { k[0] = "left " } /^axis 0 255/ { k[0] = "right " } /^axis 0 127/ { k[0] = "" } /^axis 1 0/ { k[1] = "up " } /^axis 1 255/ { k[1] = "down " } /^axis 1 127/ { k[1] = "" } /^down 3$/ { k[3] = "b " } /^down 2$/ { k[2] = "a " } /^down 1$/ { k[8] = "x " } /^down 4$/ { k[9] = "y " } /^down 9$/ { k[4] = "control " } /^down 10$/ { k[5] = "start " } /^down 5$/ { k[6] = "l1 " } /^down 6$/ { k[7] = "r1 " } /^up 3$/ { k[3] = "" } /^up 2$/ { k[2] = "" } /^up 1$/ { k[8] = "" } /^up 4$/ { k[9] = "" } /^up 9$/ { k[4] = "" } /^up 10$/ { k[5] = "" } /^up 5$/ { k[6] = "" } /^up 6$/ { k[7] = "" } { if(joy != "") printf "joy%s ", joy for(i in k) printf k[i] printf "\n" fflush } '