diff options
author | qwx <qwx@sciops.net> | 2021-09-01 22:47:30 +0000 |
---|---|---|
committer | qwx <qwx@sciops.net> | 2021-09-01 22:47:30 +0000 |
commit | 6d4261baabfece44dea8033b9d5a9d90978f8477 (patch) | |
tree | ce7eba781bd58412a39b6abba1658661bee886b9 /rc/bin/joy | |
parent | 6c9462710539bd35ae5c51de27e7894522683bd7 (diff) |
add joy(1): joystick script for all emulators, and docs
remove old /sys/src/games/nes/joynes in favor of joy(1).
joy(1) has more buttons for the other emulators; there is
no longer a significance in the order of the keys.
document nusb/joy, add information in each emulator manpage.
Diffstat (limited to 'rc/bin/joy')
-rwxr-xr-x | rc/bin/joy | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/rc/bin/joy b/rc/bin/joy new file mode 100755 index 000000000..47a0fe4c0 --- /dev/null +++ b/rc/bin/joy @@ -0,0 +1,39 @@ +#!/bin/rc +# usage: nusb/joy epX.Y | joy [N] +~ $#* 0 && *='' +awk -safe -v 'joy='$1 ' + /^axis 0 0/ { k[0] = "left " } + /^axis 0 255/ { k[0] = "right " } + /^axis 0 128/ { k[0] = "" } + + /^axis 1 0/ { k[1] = "up " } + /^axis 1 255/ { k[1] = "down " } + /^axis 1 128/ { k[1] = "" } + + /^down 1$/ { k[3] = "b " } + /^down 5$/ { k[2] = "a " } + /^down 6$/ { k[8] = "x " } + /^down 2$/ { k[9] = "y " } + /^down 3$/ { k[4] = "control " } + /^down 4$/ { k[5] = "start " } + /^down 7$/ { k[6] = "l1 " } + /^down 8$/ { k[7] = "r1 " } + + /^up 1$/ { k[3] = "" } + /^up 5$/ { k[2] = "" } + /^up 6$/ { k[8] = "" } + /^up 2$/ { k[9] = "" } + /^up 3$/ { k[4] = "" } + /^up 4$/ { k[5] = "" } + /^up 7$/ { k[6] = "" } + /^up 8$/ { k[7] = "" } + + { + if(joy != "") + printf "joy%s ", joy + for(i in k) + printf k[i] + printf "\n" + fflush + } +' |