home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / diskplot / diskplot.lbr / SINEWAVE.BQS / SINEWAVE.BAS
Encoding:
BASIC Source File  |  1985-06-17  |  1.0 KB  |  26 lines

  1. 1 DEFINT P,L
  2. 5 CLEAR 'CLEAR OLD STUFF OUT
  3. 10 P9=100 'TOTAL VERTICAL DOTS
  4. 20 P10=630 'TOTAL HORIZONTAL DOTS
  5. 30 GOSUB 3000 'SET UP FILE FOR PLOT (SUGGEST 31 BUFFERS)
  6. 40 SCX=20 'SCALING IN X DIRECTION (X FROM 0 TO 10 RAD)
  7. 45 OFFX=0 'NO OFFSET NEEDED FOR Y
  8. 50 SCY=50  'SCALING IN Y DIRECTION (Y FROM -1 TO 1)
  9. 60 OFFY=50 'OFFSET FOR Y (SO Y IS ALL POSITIVE)
  10. 70 X1=0 :Y1=0 :X2=0 :Y2=100 :GOSUB 1000 'DRAW X AXIS
  11. 80 X1=0 :Y1=50  :X2=640 :Y2=50  :GOSUB 1000 'DRAW Y AXIS
  12. 90 X=0 :Y=SIN(X) 'INITIAL STARTING POINT
  13. 100 X1=(X*SCX)+OFFX :Y1=(Y*SCY)+OFFY 'SCALING
  14. 110 FOR I=.5 TO 32 STEP .25
  15. 120  'PLOT SIN(X) FROM X=0 TO X=10 RAD IN STEPS OF .5 RAD
  16. 130  X=I :Y=SIN(X)  'THE FUNCTION
  17. 140  X2=(X*SCX)+OFFX :Y2=(Y*SCY)+OFFY 'SCALING
  18. 145  PRINT "NOW PLOTTING FOR X FROM ";I-.25;" TO ";I 
  19. 146  'TELL USER WHATS GOING ON
  20. 150  GOSUB 1000 
  21. 160  'PLOT (X1,Y1) TO (X2,Y2); RETURN WITH (X1,Y1) <-- (X2,Y2)
  22. 170 NEXT
  23. 180 GOSUB 4000 'CLOSE FILE
  24. 190 GOSUB 5000 'PRINT FILE
  25. 200 END 'DONE!
  26. TO (X2,Y2); RETURN WITH (X1,Y1) <-- (X