#!/bin/sh
DIR=$1
SCRIPT=$DIR/$2
\rm $SCRIPT 2> /dev/null

echo '#!/bin/sh' > $SCRIPT
echo 'LOG='$2'.log' >> $SCRIPT
echo 'cp -pf '$DIR/$2'.img '$DIR'/es.img' >> $SCRIPT
echo 'vformat '$DIR'/2hd.img > /dev/null 2>&1' >> $SCRIPT
echo 'vcopy '$DIR'/2hd.img '$DIR'/../../bootsect/es.ldr > /dev/null 2>&1' >> $SCRIPT
echo 'vcopy '$DIR'/2hd.img '$DIR'/es.img > /dev/null 2>&1' >> $SCRIPT
echo '' >> $SCRIPT
echo '# run QEMU on the background.' >> $SCRIPT

echo '(qemu -fda '$DIR'/2hd.img -serial stdio -boot a -soundhw sb16 $QFLAGS > '$DIR'/$LOG 2>&1) &' >> $SCRIPT

echo '' >> $SCRIPT
echo '# Keep PID.' >> $SCRIPT
echo 'QEMU=$!' >> $SCRIPT
echo 'TIME=0' >> $SCRIPT
echo 'RET=1' >> $SCRIPT

echo 'while [ true ]' >> $SCRIPT
echo 'do' >> $SCRIPT
echo '    sleep 1' >> $SCRIPT
echo '    PASS=`grep done. '$DIR'/$LOG`' >> $SCRIPT
echo '    FAIL=`grep Fail '$DIR'/$LOG`' >> $SCRIPT
echo '    if [ -n "$FAIL" ]; then' >> $SCRIPT
echo '        break;' >> $SCRIPT
echo '    fi' >> $SCRIPT
echo '    if [ -n "$PASS" ]; then' >> $SCRIPT
echo '        RET=0' >> $SCRIPT
echo '        break;' >> $SCRIPT
echo '    fi' >> $SCRIPT
echo '    RUNNING=`ps -p $QEMU | grep $QEMU`' >> $SCRIPT
echo '    if [ -z "$RUNNING" ]; then' >> $SCRIPT
echo '        break;' >> $SCRIPT
echo '    fi' >> $SCRIPT
echo '    TIME=`expr $TIME + 1`' >> $SCRIPT
echo 'done' >> $SCRIPT
echo 'stty sane' >> $SCRIPT
echo '' >> $SCRIPT
echo 'RUNNING=`ps $QEMU | grep $QEMU`' >> $SCRIPT
echo 'if [ -n "$RUNNING" ]; then' >> $SCRIPT
echo '    kill -9 $QEMU' >> $SCRIPT
echo 'fi' >> $SCRIPT
echo '' >> $SCRIPT
echo 'stty sane' >> $SCRIPT
echo 'cat '$DIR'/$LOG' >> $SCRIPT
echo 'exit $RET' >> $SCRIPT

chmod u+x $SCRIPT
