From 36a7d573d155b464ed4ee88f41e68f36716fbb81 Mon Sep 17 00:00:00 2001 From: Lassulus Date: Thu, 21 Jul 2011 01:48:14 +0200 Subject: 1st try of cholerab --- cholerab/max_dirty_hack.sh | 98 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100755 cholerab/max_dirty_hack.sh diff --git a/cholerab/max_dirty_hack.sh b/cholerab/max_dirty_hack.sh new file mode 100755 index 00000000..e8928d38 --- /dev/null +++ b/cholerab/max_dirty_hack.sh @@ -0,0 +1,98 @@ +#!/bin/sh +stty -echo cbreak -ofdel +x_max=90 +y_max=10 +x_cur=1 +y_cur=1 +y= +t=1 +echo -n "c" + +while [ $t -lt $(( y_max+2 )) ];do + echo -e "[$t;$(( x_max+1 ))Hx" + t=$(( t+1 )) +done +t=1 +while [ $t -lt $(( x_max+2 )) ];do + echo -e "[$(( y_max+1 ));${t}Hx" + t=$(( t+1 )) +done + +echo -n "[$y_cur;${x_cur}H" +#Main Loop +while x="`dd bs=1 count=1 2>/dev/null`"; do + y="$y$x" + case "$y" in + (*"") + if [[ $y_cur -le 1 ]];then + y_cur=$y_max + echo -n "[$y_cur;${x_cur}H" + else + echo -n "" + y_cur=$(( y_cur-1 )) + fi + y= + ;; + (*"") + if [[ $y_cur -ge $y_max ]];then + y_cur=1 + echo -n "[$y_cur;${x_cur}H" + else + echo -n "" + y_cur=$(( y_cur+1 )) + fi + y= + ;; + (*"") + if [[ $x_cur -ge $x_max ]];then + x_cur=1 + echo -n "[$y_cur;${x_cur}H" + else + echo -n "" + x_cur=$(( x_cur+1 )) + fi + y= + ;; + (*"") + if [[ $x_cur -le 1 ]];then + x_cur=$x_max + echo -n "[$y_cur;${x_cur}H" + else + echo -n "" + x_cur=$(( x_cur-1 )) + fi + y= + ;; + (*"") + if [[ $x_cur -le 1 ]];then + x_cur=$x_max + echo -n "[$y_cur;${x_cur}H" + else + echo -n " " + x_cur=$(( x_cur-1 )) + fi + y= + ;; + (|\[) + : + ;; + (*) + if [[ $x_cur -gt $x_max ]];then + x_cur=1 + echo -n "[$y_cur;${x_cur}H" + elif [[ $x_cur -eq $x_max ]];then + echo -n "$x" + x_cur=1 + echo -n "[$y_cur;${x_cur}H" + else + echo -n "$x" + x_cur=$(( x_cur+1 )) + fi + y= + ;; + esac + state=`echo -n "$x" | od -An -tx | tr -d "[$IFS]"` + echo -n "7[1;$(( x_max+2 ))H$state8" + echo -n "7[2;$(( x_max+2 ))H 8" + echo -n "7[2;$(( x_max+2 ))H$x_cur:$y_cur8" +done -- cgit v1.2.3