or download this
($s=pop|1)>8or$s|=8;sub f{$_=.5+($h=int$s/2)+$h*$_}$|=@m=map[($")x$s
+],1..$s
;$j=' ,rekcah lreP rehtona tsuJ ';for(0..31){f,$_-=/-/for$x=co
+s($d=$
_*.19635),$y=sin$d;$m[$y[$_]=$y][$x[$_]=$x]=chop$j}{$j=$m[$y[0]][$
+x[0]]
;print"\e[H\e[J",map"@$_\n",@m;map$m[$y[$_-1]][$x[$_-1]]=$m[$y[$_
+]][$
x[$_]],1..31;$m[$y[-1]][$x[-1]]=$j;select$,,$,,$,,.1;redo}chipmu
+nk;