10 COLOR 1,15,1:SCREEN 2:DIM UB(424),LB(424) 20 XC=320:YC=115:XR=175:ZR=120:H=40:W=.043:XA=107 30 FOR S=1 TO 424:UB(S)=0:LB(S)=1000:NEXT 70 FOR Z=-ZR+1 TO ZR-1 STEP 5 80 XL=INT(XR*SQR(1-(Z*Z)/(ZR*ZR))+.5):X=-XL 100 Y=H*SIN(W*SQR(X*X+Z*Z)):X1=X+XC+Z 120 Y1=INT(199-(YC+Y+Z/2)+.5) 130 FOR X=-XL+1 TO XL-1 140 Y=H*SIN(W*SQR(X*X+Z*Z)):X2=XC+X+Z 160 Y2=INT(199-(YC+Y+Z/2)+.5) 170 IF Y2>=LB(X2-XA) THEN 210 180 LB(X2-XA)=Y2 190 IF UB(X2-XA)=0 THEN UB(X2-XA)=Y2 200 GOTO 230 210 IF Y2<=UB(X2-XA) THEN 240 220 UB(X2-XA)=Y2 230 LINE((X1-80)/2,Y1)-((X2-80)/2,Y2) 240 X1=X2:Y1=Y2 250 NEXT X,Z 350 GOSUB 55020 'WW ÷ÙÚÏ× ÐÏÄÐÒÏÇÒÁÍÍÙ HARDCOPY.BAS 360 A=USR(0) 'WW 370 END '"What you see is what you get!" 55010 'ðÏÄÐÒÏÇÒÁÍÍÁ HARDCOPY.BAS 55020 DT=&HEF00:DEFUSR=DT:RESTORE 55060 55030 FOR I=0 TO &HAB 55040 READ DT$:POKE DT+I,VAL("&H"+DT$) 55050 NEXT:RETURN 'WW 55060 DATA 21,00,20,22,AC,EF,21,91,EF,CD,87 55070 DATA EF,21,9B,EF,CD,87,EF,0E,08,2A,AC 55080 DATA EF,CD,4A,00,57,E6,0F,5F,CB,3A,CB,3A 55090 DATA CB,3A,CB,3A,00,3E,0F,BA,20,0D,BB 55100 DATA 20,03,AF,18,11,CD,7F,EF,EE,FF,18 55110 DATA 0A,BB,28,04,3E,FF,18,03,CD,7F,EF,23 55120 DATA 22,AC,EF,06,08,21,AE,EF,CB,27,CB 55130 DATA 1E,23,10,F9,0D,20,BE,06,08,21,AE 55140 DATA EF,7E,CD,A5,00,23,10,F9,2A,AC,EF,AF 55150 DATA BD,20,A9,3E,0D,CD,A5,00,3E,0A,CD 55160 DATA A5,00,3E,38,BC,20,94,21,A2,EF,CD 55170 DATA 87,EF,C9,CB,AC,CD,4A,00,CB,EC,C9,7E 55180 DATA FE,FF,C8,CD,A5,00,23,18,F6,1B,54,31 55190 DATA 36,1B,45,1B,3E,0E,FF,1B,53,30,32,35 55200 DATA 36,FF,1B,4E,0F,1B,41,1B,3C,0D,0A,FF