38 lines
934 B
Text
38 lines
934 B
Text
10 REM Mandelbrot set
|
|
20 CLS
|
|
30 FOR I=0 TO 95
|
|
40 LET X=(I-78)/48
|
|
50 REM ** When X<>0
|
|
60 FOR J=1 TO 22
|
|
70 LET Y=(22-J)/30
|
|
80 LET XA=0:X2=0
|
|
90 LET YA=0:Y2=0
|
|
100 LET ITER=0
|
|
110 LET XTEMP=X2-Y2+X
|
|
120 LET YA=2*XA*YA+Y:Y2=YA*YA
|
|
130 LET XA=XTEMP:X2=XA*XA
|
|
140 LET ITER=ITER+1
|
|
150 IF X2+Y2<=4 AND ITER<200 THEN 110
|
|
160 IF ITER=200 THEN SET(I,J):SET(I,44-J)
|
|
170 NEXT J
|
|
180 REM ** When X=0
|
|
190 LET XA=0:X2=0
|
|
200 LET ITER=0
|
|
210 LET XA=X2+X:X2=XA*XA
|
|
220 LET ITER=ITER+1
|
|
230 IF X2<=4 AND ITER<200 THEN 210
|
|
240 IF ITER=200 THEN SET(I,22)
|
|
250 NEXT I
|
|
290 REM ** Set up machine code INKEY$ command
|
|
300 IF PEEK(1)<>0 THEN RESTORE 510
|
|
310 DOKE 4100,3328:FOR A=3328 TO 3342 STEP 2
|
|
320 READ B:DOKE A,B:NEXT A
|
|
400 SCREEN 1,15
|
|
410 PRINT "Hit any key to exit.";
|
|
420 A=USR(0):IF A<0 THEN 420
|
|
430 CLS
|
|
440 END
|
|
490 REM ** Data for machine code INKEY$
|
|
500 DATA 25055,1080,-53,536,-20665,3370,-5664,0
|
|
510 DATA 27085,14336,-13564,6399,18178,10927
|
|
520 DATA -8179,233
|