#!/bin/bash

#set -x

i=5

if [ 1 -eq 1 ]
then
Xvfb :3 >/dev/null 2>&1 &
xpid=$!
export DISPLAY=:3

rm for8out_${i}.lst

for((type=0;type<2;type++))
do
for((shift=0;shift<40;shift++))
do
echo type: $type shift: $shift
cat >/tmp/for8.asc <<EOF
algol<
_b_e_g_i_n
   _r_e_a_l clock1;
   _i_n_t_e_g_e_r i,j,n;
   n:=10000;
   select(32);
   _c_o_d_e clock1;
   2, 45;
   zl        , grf a1   ; RF:=clock count; clock1:=RF;
   _e;
   _f_o_r i:=1 _s_t_e_p 1 _u_n_t_i_l n _d_o
   _b_e_g_i_n
EOF
if [ $type -eq 0 ]
then
  echo "_f_o_r j:=1 _s_t_e_p 1 _u_n_t_i_l ${i} " >>/tmp/for8.asc
else
      echo "_f_o_r j:=1" >>/tmp/for8.asc
for((j=2;j<=i;j++))
do
  echo ",$j" >>/tmp/for8.asc
done
fi
cat >>/tmp/for8.asc <<EOF
      _d_o;
   _e_n_d;
   _c_o_d_e clock1;
   2, 45;
   zl        , grf a1   ; RF:=clock count; clock1:=RF;
   _e;
   write(|<ddd|>,${i},$type,$shift);
   write(|<dddddd.dd|>,clock1);
   writecr;
EOF
for((k=0;k<shift;k++))
do
echo "   j:=j;" >>/tmp/for8.asc
done
cat >>/tmp/for8.asc <<EOF
_e_n_d;
t<
EOF

D=for8.demo
cat >$D <<EOF
LOADCONFIG ../configs/drum3ga4.gier
LOADREADER /tmp/for8.asc
EOF
../maketext.sh "r<" >>$D
echo "WAITINPUT" >>$D
#echo "LOADPUNCH for8print_${type}_${shift}.flx" >>$D
#../maketext.sh 'p,print,work,_p<' >>$D
#echo "WAITINPUT" >>$D
#echo "FINISHPUNCH" >>$D
echo "LOADPUNCH for8out_${i}.flx" >>$D
../maketext.sh "run<" >>$D
echo "WAITINPUT" >>$D
echo "FINISHPUNCH" >>$D
echo "QUIT" >>$D

../GIER $D >/dev/null 2>&1

#flx2a <for8print_${type}_${shift}.flx >for8print_${type}_${shift}.asc
flx2a <for8out_${i}.flx | tail -1 >>for8out_${i}.lst
done
done

kill $xpid
fi

/bin/echo -e "shift\\tstep" >for8out_${i}_0.dat
/bin/echo -e "shift\\tlist" >for8out_${i}_1.dat

sed 's/\s\+/	/g' <for8out_${i}.lst | while read -a line
do
  n=${line[0]}
  type=${line[1]}
  shift=${line[2]}
  cpu=${line[3]}
  /bin/echo -e "$shift\\t$cpu" >>for8out_${i}_${type}.dat
done

cat >for8plot.plt <<EOF
set size ratio 0.71
set datafile separator "\t"
set terminal pdfcairo size 29.7cm,21cm font 'Helvetica,20'
set output "for8plot_${i}.pdf"

set title "list mod step n = ${i} GA4"
stepcolor = "#ff0000"; listcolor = "#0000ff"
set auto x
set yrange [0:]
set style data histogram
set style histogram cluster gap 1
set style fill solid border -1
set boxwidth 0.9
set xtic scale 0
plot 'for8out_${i}_0.dat' using 2:xticlabel(1) ti col linecolor rgb stepcolor, 'for8out_${i}_1.dat' u 2 ti col linecolor rgb listcolor
EOF
gnuplot <for8plot.plt

