*BASIC
0MODE9:OFF:GCOL-9:CLG:REPEATs=s+VPOS:PRINTCHR$30s:
1REPEATSYS6,135TOi,p,d:PRINTTAB(p=0)CHR$9;:
2IF POS=22 VDU3100;VPOS,21;6667;:UNTIL0 ELSE UNTILVPOS=25:
3v=ABSRND MOD7:VDU31:COLOUR3:
4REPEATm=9-INKEY(INKEYTRUE OR 6)MOD3:
5FORr=TRUE TO1:t=r ANDSGNt:
6IFt=r COLOURv-15:VDUr EORm:i+=m=7AND9-6*r:IF0ELSE
7FORn=0TO11:d=n DIV3OR2EORd:VDUd:
8IF1<<(n+i)MOD12AND&C2590EC DIV8^v AND975 t+=POINT(p*POS,31-VPOS<<5):
9IFr VDUp,8:IF0ELSE
10NEXT,:VDU20:UNTILt*LOGm:UNTILVPOS=3:Z
b=PA.+4:F.a=b TOTOP:?b=?a:b=b-(?b<>32):a=a-4*(a?1=13):N.
?(PA.+3)=b:!b=&FF0D
MODE9:PRINTMODE
