0 s=1524:w=40:c=42:printchr$(147)
1 pokes,c:fori=1to9:pokes+i,c:pokes-i,c:pokes+i*w,c:pokes-i*w,c
2 ifi<8thengosub6
3 ifi=5thengosub10
4 ifi=4ori=7thengosub8
5 nexti:end
6 p(1)=s-i*w-i:p(2)=s-i*w+i:p(3)=s+i*w-i:p(4)=s+i*w+i
7 forj=1to4:pokep(j),c:nextj:return
8 restore:forj=1to4:reada:readb:fork=1to2:pokes+(i+k-1)*a+w*b*k,c
9 pokes+(i+k-1)*a*w-k*b,c:nextk:nextj:return
10 for j=1to4:reada:readb:fork=1to2:pokep(j)+k*a,c
11 pokep(j)+k*b*w,c:nextk:nextj:return
12 data1,1,1,-1,-1,-1,-1,1,-1,-1,1,-1,-1,1,1,1