clear screen before score boards gets drawn
[svn42.git] / dart / start-dart.sh
index db62dec..e73380c 100755 (executable)
@@ -1,22 +1,31 @@
 #!/bin/sh
 
 if [ -z "$1" ]; then
-  echo "Usage $0 <mode>"
+  echo "Usage $0 <mode> [<param1> [<param2> ...]]"
   exit 1
 fi
 
+MYSELF=`readlink -f "$0"`
+MYPATH=`dirname "$MYSELF"`
 mode=$1
 shift
 
-FIFO=/tmp/dart.fifo
-rm -f $FIFO
+FIFO_D=`mktemp -d`
+FIFO=$FIFO_D/dart.fifo
 mkfifo $FIFO
-stty -echo
 
-ssh dart stty -F /dev/ttyDart 57600
-ssh dart cat /dev/ttyDart  >$FIFO &
-exec 42<$FIFO
-./eet 42 | ./dart-$mode.pl $* | ./dart-soundonly.pl | ../dart-sounds/src/dart-sounds ../dart-sounds/media > /dev/null
-rm -f $FIFO
+trap signal_handler INT TERM
+
+signal_handler()
+{
+  rm -rf $FIFO_D
+}
+
+stty -echo
+ssh dart killall ttyread 2>&1
+ssh dart ttyread /dev/ttyDart  >$FIFO &
+cd $MYPATH
+$MYPATH/eet $FIFO | perl -I $MYPATH $MYPATH/dart-$mode.pl $* | $MYPATH/../dart-sounds/src/dart-sounds $MYPATH/../dart-sounds/media > /dev/null
+rm -rf $FIFO_D
 
-exit 0
\ No newline at end of file
+exit 0