| #!/bin/bash |
| |
| for f in colbuf_io_8k.work/*.exp colbuf_logic_8k.work/*.exp colbuf_ram_8k.work/*.exp; do |
| echo $f >&2 |
| python3 colbuf.py $f |
| done | sort -u > colbuf_8k.txt |
| |
| get_colbuf_data() |
| { |
| tr -d '(,)' < colbuf_8k.txt |
| # for x in {0..2} {4..9} {11..13}; do |
| # echo $x 4 $x 0 |
| # echo $x 5 $x 8 |
| # echo $x 12 $x 9 |
| # echo $x 13 $x 17 |
| # done |
| # for x in 3 10; do |
| # echo $x 3 $x 0 |
| # echo $x 3 $x 4 |
| # echo $x 5 $x 8 |
| # echo $x 11 $x 9 |
| # echo $x 11 $x 12 |
| # echo $x 13 $x 17 |
| # done |
| } |
| |
| { |
| echo "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"1050\" width=\"1050\">" |
| for x in {1..33}; do |
| echo "<line x1=\"$((10+x*30))\" y1=\"10\" x2=\"$((10+x*30))\" y2=\"$((10+34*30))\" style=\"stroke:rgb(0,0,0);stroke-width:3\" />" |
| done |
| for y in {1..33}; do |
| echo "<line x1=\"10\" y1=\"$((10+y*30))\" x2=\"$((10+34*30))\" y2=\"$((10+y*30))\" style=\"stroke:rgb(0,0,0);stroke-width:3\" />" |
| done |
| for x in {0..33}; do |
| echo "<text x=\"$((10+$x*30+7))\" y=\"$((10+34*30+15))\" fill=\"black\">$x</text>" |
| done |
| for y in {0..33}; do |
| echo "<text x=\"$((10+34*30+5))\" y=\"$((10+(33-y)*30+20))\" fill=\"black\">$y</text>" |
| done |
| while read x1 y1 x2 y2; do |
| echo "<line x1=\"$((10+x1*30+15))\" y1=\"$((10+(33-y1)*30+15))\" x2=\"$((10+x2*30+15))\" y2=\"$((10+(33-y2)*30+15))\" style=\"stroke:rgb(255,0,0);stroke-width:5\" />" |
| done < <( get_colbuf_data; ) |
| while read x1 y1 x2 y2; do |
| echo "<circle cx=\"$((10+x2*30+15))\" cy=\"$((10+(33-y2)*30+15))\" r=\"4\" fill=\"blue\" />" |
| done < <( get_colbuf_data; ) |
| while read x1 y1 x2 y2; do |
| echo "<circle cx=\"$((10+x1*30+15))\" cy=\"$((10+(33-y1)*30+15))\" r=\"5\" fill=\"gray\" />" |
| done < <( get_colbuf_data; ) |
| echo "</svg>" |
| } > colbuf_8k.svg |
| |