#!/bin/sh WINDOW="$(xdotool search --onlyvisible --maxdepth 2 --class melonDS | head -n1)" [ -z "$WINDOW" ] && exit 1 eval "$(xdotool getwindowgeometry --shell "$WINDOW")" sleep 0.5 bottom_screen() { xdotool mousemove $X $Y # skip menu bar xdotool mousemove_relative 0 20 # skip top screen xdotool mousemove_relative 0 192 xdotool mousemove_relative -- $1 $2 } tap() { xdotool mousedown 1 sleep 0.02 xdotool mouseup 1 sleep 0.02 } pattern=' 10101010 1100110011001100 11110000111100001111000011110000 1111111100000000111111110000000011111111000000001111111100000000 ' pattern="$(echo "$pattern" | tr -d '\n')" length="$(echo "$pattern" | wc -c)" pattern="$(echo "$pattern" | sed 's/./\0 /g')" # clear bottom_screen 240 170 tap # pen bottom_screen 8 44 tap # small bottom_screen 8 92 tap # message top left bottom_screen 82 18 for pixel in $pattern ; do # shift mouse 1 pixel right xdotool mousemove_relative 1 0 # skip 0's in $pattern [ $pixel -ne 1 ] && continue tap done