REM AMAZIOGRAPH BY CCLX33 V1.2 BG 0 PALETTE 0,0,3,12,48 TOUCHSCREEN GLOBAL XO,YO,N,SPECIAL,setcenter N=5 XO=60 YO=68 PSIZE = 0 COLR = 1 SPECIAL=0 setcenter=0 I=0 FOR Y=0 TO 15 FOR X=0 TO 15 CELL X,Y,I I=I+1 NEXT X NEXT Y GOSUB CLEAR scroll 0,-16,0 DO IF TOUCH THEN X=TOUCH.X-16 Y=TOUCH.Y IF Y<8 THEN GOSUB FUNC ELSE IF X<119 THEN CALL DRAW2(X,Y,COLR,PSIZE) END IF END IF ' WAIT 1 LOOP FUNC: N0=N P0=PSIZE X1=X\8 X2=X\4 MOD 4 IF X1=2 THEN PSIZE=MAX(0,PSIZE-1) IF X1=3 THEN PSIZE=MIN(7,PSIZE+1) IF X1=4 THEN COLR=0 IF X1=5 THEN COLR=1 IF X1=6 THEN COLR=2 IF X1=7 THEN COLR=3 IF X1=8 THEN PALETTE 0,,RND*64,RND*64,RND*64 IF X1=9 THEN N=MAX(3,N-1) IF X1=10 THEN N=MIN(10,N+1) IF X1=11 THEN GOSUB CLEAR if x1=12 then setcenter=1 play 1,x1*5,2 SPECIAL=1 IF X1=2 THEN CALL DRAW1(11,3,0,P0) CALL DRAW1(11,3,COLR,PSIZE) IF X1>8 THEN CALL DRAW1(66+N0*2,6,3,0) CALL DRAW1(66+N*2,6,2,0) SPECIAL=0 WAIT 30 RETURN CLEAR: FOR I=$8100 TO $8FFF POKE I,0 NEXT I RETURN SUB DRAW2(X,Y,C,S) if setcenter=1 then xo=x yo=y play 1,50,2 setcenter=0 wait 10 exit sub end if A1=PI*2/N CALL DRAW1(X,Y,C,S) FOR A=A1 TO PI*2-0.01 STEP A1 ' ROTATE X2=(X-XO)*COS(A)-(Y-YO)*SIN(A)+XO Y2=(X-XO)*SIN(A)+(Y-YO)*COS(A)+YO if x2>1+s\2 and x2<118-s\2 and y2>8+s\2 and y2<126-s\2 then CALL DRAW1(X2,Y2,C,S) NEXT A END SUB DRAW1: SUB DRAW1(X,Y,C,S) S2=S S1=0 ' IF BIG PEN IF S2>1 THEN S1=S1-S\2 S2=S2-S\2 END IF FOR I=S1 TO S2 FOR J=S1 TO S2 CALL PIX(X+I,Y+J,C) NEXT J NEXT I END SUB SUB PIX(X,Y,C) TILE=X\8+(Y\8)*16 IF (TILE>255 OR TILE<16) AND SPECIAL=0 THEN EXIT SUB A=$8000+16*TILE+(Y AND 7) M=2^(7-(X AND 7)) IF C=1 OR C=3 THEN POKE A,M OR (PEEK(A) AND NOT M) IF C=2 OR C=0 THEN POKE A,PEEK(A) AND NOT M A=A+8 IF C=2 OR C=3 THEN POKE A,M OR (PEEK(A) AND NOT M) IF C=1 OR C=0 THEN POKE A,PEEK(A) AND NOT M END SUB #2:MAIN CHARACTERS 00000000000000000000000000000000 00000000000000000000000000000000 0000001000000000FEFEFEEEFEFEFEFE 0000003030000000FEFEFECECEFEFEFE 0000000000000000FF818181818181FF 007E7E7E7E7E7E00FF818181818181FF FF818181818181FFFFFFFFFFFFFFFFFF FFFFFFFFFFFFFFFF007E7E7E7E7E7E00 FE86BABA86BEBEFEFEFEFEFEFEFEFEFE FEFEFEFEFEFEF6FEFEFE82FEFEFEFE54 FEFEFEFEFEFEFEFEEEEE82EEEEFEFE54 FEC6BABEBEBAC6FE0038444040443800 0000000000000000FEC6BABABABAC6FE