home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib30b.dsk / ULTRA.FAST.DEMO.bas < prev    next >
BASIC Source File  |  2023-02-26  |  2KB  |  54 lines

  1. 100  REM  **********************
  2. 110  REM  *  ULTRA.FAST.DEMO   *
  3. 120  REM  * BY CHARLES PUTNEY  *
  4. 130  REM  * COPYRIGHT (C) 1987 *
  5. 140  REM  * BY MICROSPARC, INC *
  6. 150  REM  * CONCORD, MA  01742 *
  7. 160  REM  **********************
  8. 170  REM  COMMAND STRUCTURE
  9. 180  REM  &C,N,P,D
  10. 190  REM  C=COMMAND ("R" OR "W")
  11. 200  REM  N=PICTURE NUMBER (0 TO 16)
  12. 210  REM  P=HIGH RES PAGE NUMBER (1 OR 2)
  13. 220  REM  D=DISK DRIVE (1 OR 2)
  14. 230  ONERR  GOTO 620
  15. 240  PRINT  CHR$(4);"BRUN ULTRA.FAST"
  16. 250 D$ =  CHR$(4):XS = 140:YS = 96:P2 = 6.29:A = 90:D = 2:P = 2
  17. 260  TEXT : HOME : VTAB 12: HTAB 12
  18. 270  VTAB 12: HTAB 10: PRINT "INSERT INITIALIZED DISK"
  19. 280  VTAB 14: HTAB 10: PRINT "   INTO DRIVE 2 AND"
  20. 290  VTAB 16: HTAB 10: PRINT " PRESS RETURN TO START";: GET K$: PRINT 
  21. 300  REM  *---- CREATE PICTURES
  22. 310  FOR N = 0 TO 16
  23. 320  HGR2 : HCOLOR= 3: HPLOT XS +A,YS
  24. 330  IF N <10  THEN 400
  25. 340  FOR TH = 0 TO P2  STEP .03
  26. 350 R = A * COS((N -8) *TH)
  27. 360 X = XS +R * COS(TH):Y = YS -R * SIN(TH)
  28. 370  HPLOT  TO X,Y
  29. 380  NEXT TH
  30. 390  GOTO 460
  31. 400  FOR S = 0 TO N +3
  32. 410 TH = S *P2/(N +3)
  33. 420 X = XS +A * COS(TH):Y = YS -A * SIN(TH)
  34. 430  HPLOT  TO X,Y
  35. 440  NEXT S
  36. 450  REM  *---- SAVE PICTURES
  37. 460  & W,(16 -N),P,D
  38. 470  NEXT N
  39. 480  REM  *---- SHOW PICTURES
  40. 485 P = 2:D = 2
  41. 490  HGR2 : HGR : HOME 
  42. 500  VTAB 22: HTAB 5: PRINT "PRESS RETURN TO VIEW PICTURES";: GET K$: PRINT 
  43. 510  POKE  -16302,0: POKE  -16304,0: POKE  -16297,0
  44. 520  PRINT  CHR$(7)
  45. 530  FOR N = 1 TO 16
  46. 540  POKE 49235 +(3 -P),0
  47. 550  & R,N,P,D
  48. 560 P = 3 -P
  49. 570  NEXT N
  50. 580  POKE 49235 +(3 -P),0
  51. 590  PRINT  CHR$(7)
  52. 600  GET Z$: PRINT 
  53. 610  HOME : TEXT : VTAB 12: HTAB 12: PRINT "THAT'S ALL FOLKS!": END 
  54. 620 ER =  PEEK(222): HOME : TEXT : VTAB 12: PRINT "AN ERROR HAS OCCURRED": PRINT : PRINT "RETURN TO TRY AGAIN, ESCAPE TO QUIT";: GET Z$: PRINT : ON Z$ =  CHR$(27) GOTO 610: POKE  -16302,0: POKE  -16304,0: POKE  -16297,0: RESUME