1 REM ============================== 2 REM ITERATIVE DESIGN 64 3 REM HERES A C-64 VERSION 4 REM BUT PAINFULLY SLOW !! 5 REM CODED BY P-D/TIDE-AMIGA IN 98 6 REM ============================== 7 REM USE 128 VERSION FOR SPEED. 8 REM ============================== 10 GOSUB 1000 :REM INITIALISE GRAPHICS 20 FOR X=0 TO 319 40 S=1+TAN(0.005*X) 50 FOR Y=0 TO 199 STEP S 60 GOSUB 2000 :REM SET PIXEL AT X,Y 70 NEXT Y 80 NEXT X 90 GET A$ : IF A$="" THEN 90 100 GOSUB 3000 110 END 950 REM ****************************** 960 REM 970 REM >>>INITIALISE BIT MAP MODE<<< 980 REM 990 REM SET & RESET BIT FUNCTIONS 1000 DEF FNSB(N)=PEEK(MM) OR 2^N 1010 DEF FNRB(N)=PEEK(MM) AND (255-2^N) 1020 VV=53248 :REM VIC-II REGISTER 0 1030 :REM >>>PUT BITMAP AT 8192<<< 1040 MM=VV+24 : POKE MM,FNSB(3) 1050 :REM >>>SELECT BITMAP MODE<<< 1060 MM=VV+17 : POKE MM,FNSB(5) 1070 BASE=8192 :REM STARTBITMAP MEMORY 1080 :REM >>>CLEAR BITMAP<<<<< 1090 GOSUB 4000 1100 :REM SELECT COLOURS C1 & C0 1110 C1=1:C0=0:CC=16*C1+C0 1120 FOR MM=1024 TO 2023 :POKE MM,CC:NEXT 1140 RETURN 1150 : 1970 REM ============================== 1980 REM > TURN ON PIXEL AT (X,Y) <<<<< 1990 REM ============================== 2000 BIT=7-(X AND 7) 2010 MM=BASE+320*INT(Y/8)+8*INT(X/8)+(Y AND 7) 2020 POKE MM,FNSB(BIT) 2030 RETURN 2040 : 2970 REM ============================== 2980 REM >>>RESET BITMAP MODE<<<<<<<<<< 2990 REM ============================== 3000 MM=VV+17 : POKE MM,FNRB(5) 3010 REM RESTORE SCREEN MEMORY BASE 3020 MM=VV+24 : POKE MM,FNRB(3) 3030 RETURN 3960 : 3970 REM ============================== 3980 REM >>>CLEAR BITMAP SCREEN<<<<<<<< 3990 REM ============================== 4000 FOR M=828 TO 828+43 4010 READ B : POKE M,B 4020 CK=CK+B 4030 NEXT 4040 IF CK<>5133 THEN PRINT "DATA ERROR IN LINES 4060 - 4110" : STOP 4050 SYS 828: RETURN 4060 DATA 76,68,3,0,32,31,64,0 4070 DATA 173,63,3,133,251,173,64,3 4080 DATA 133,252,174,65,3,160,0,173 4090 DATA 67,3,136,145,251,208,251,230 4100 DATA 252,202,48,7,208,244,172,66 4110 DATA 3,208,239,96