home *** CD-ROM | disk | FTP | other *** search
/ RUN Flagazine: Run 2 / run2.zip / MANDEL.BAS < prev    next >
BASIC Source File  |  2014-09-03  |  1KB  |  35 lines

  1. 100 REM Mandelbrots Halskraag (c) Prof. Hans Lauwerier GWBASIC EGA/VGA
  2. 110 CLS:PRINT "Toets 9 voor EGA of 12 voor VGA"
  3. 120 PRINT:INPUT "Screen = ",SCR
  4. 130 PRINT:PRINT "Met geluid (j/n)";:LINE INPUT Q$
  5. 140 IF INSTR("JjNn",Q$)<3 THEN VL=1
  6. 150 SCREEN SCR:CLS:KEY OFF:RANDOMIZE TIMER
  7. 160 XM=320:IF SCR=9 THEN YM=175:BH=35/48 ELSE YM=240:BH=1
  8. 170 DIM COL(16):DATA 0,1,2,3,14,5,6,7,8,9,10,11,12,13,4,15
  9. 180 FOR I=0 TO 15:READ COL(I):NEXT I
  10. 190 IF SCR=9 THEN N=160 ELSE N=240
  11. 200 XI=2*(P+1)/(P+3):RRM=((P-1)/(P+3))^2
  12. 210 FOR I=-N TO N:A=I/N:FOR J=0 TO N:B=J/N
  13. 220 IF INKEY$<>"" THEN END
  14. 230 IF A*A+B*B>1 THEN L=0:GOTO 360
  15. 240 IF (A-XI)*(A-XI)+B*B<RRM THEN L=0:GOTO 360
  16. 250 A1=1-P*A:B1=-P*B:A2=A-P:B2=B
  17. 260 S1=A2*A2+B2*B2+1E-08
  18. 270 A3=A2/S1:B3=-B2/S1
  19. 280 A4=A1*A3-B1*B3:B4=A1*B3+A3*B1
  20. 290 X=.5:Y=0
  21. 300 FOR K=0 TO 100
  22. 310 X1=X-X*X+Y*Y:Y1=Y-2*X*Y
  23. 320 X=A4*X1-B4*Y1:Y=A4*Y1+B4*X1
  24. 330 W=X*X+Y*Y
  25. 340 IF W>16 THEN L=1+K MOD 6:GOTO 360
  26. 350 NEXT K:L=0
  27. 360 PSET (XM+J,YM-I),COL(L):PSET (XM-J,YM-I),COL(L)
  28. 370 IF L>0 AND VL=1 THEN SOUND L*300,INT(RND*(7))+1
  29. 380 NEXT J:NEXT I
  30. 390 A$=INPUT$(1):END
  31. 400 REM /* 29/.2980,1868,3122,1907,2598,3109,2746,1846,1672,2011
  32. 410 REM /*/....2208,1271,1655,2419,1648,1092,1047,1595,0504,0723
  33. 420 REM /*/....1514,1633,0629,1804,0637,2920,2631,0843,1001
  34. 430 REM Checksum...............:  51633
  35.