home *** CD-ROM | disk | FTP | other *** search
/ Audio 4.94 - Over 11,000 Files / audio-11000.iso / msdos / music / guitar / guitar1.bas < prev   
BASIC Source File  |  1986-01-07  |  3KB  |  71 lines

  1. 10 CLS
  2. 20 COLOR 7,8
  3. 30 'Program by Ed Cummins  Atlanta  IBM PC Club
  4. 40 'Released for Public Domain use
  5. 50 '
  6. 60 '       Modified slightly in 1985 by:
  7. 70 '       Willis A. Frambach
  8. 80 '       3610 Long Beach Blvd.
  9. 90 '       Long Beach, CA  90807
  10. 100 '
  11. 110 '      A.S.A. 1936 is the equally tempered scale used to tune pianos.
  12. 120 '      This program should produce A.S.A. 1936 pitch.  Unfortunately,
  13. 130 '      the speaker in the IBM-PC will not do much for us at these
  14. 140 '      frequencies.
  15. 150 '
  16. 160 '      Standing wave is what you get when you self-tune a guitar
  17. 170 '      using a 440 hz. tuning fork to set up a 4th harmonic on
  18. 180 '      the A string and then setting up standing waves progressively
  19. 190 '      on various harmonics of the other strings.
  20. 200 '
  21. 210 KEY OFF:CLS:X$=STRING$(80,45)
  22. 220 PRINT X$
  23. 230 P$="G U I T A R    T U N I N G   P R O G R A M "
  24. 240 LOCATE ,40-(LEN(P$)/2)
  25. 250 PRINT P$:PRINT:PRINT X$
  26. 260 PRINT
  27. 270 PRINT "String #","Note","A.S.A. 1936 (hz.)","Standing Wave (hz.)"
  28. 280 PRINT "--------","----","-----------------","-------------------"
  29. 290 PRINT ""
  30. 300 PRINT
  31. 310 GOSUB 650
  32. 320 GOSUB 660
  33. 330 GOSUB 670
  34. 340 GOSUB 680
  35. 350 GOSUB 690
  36. 360 GOSUB 700
  37. 370 LOCATE 25,1:PRINT" Select NUMBER of Desired String or press 'SPACE BAR' to stop";
  38. 380 S$=INPUT$(1):S=VAL(S$)
  39. 390 ON S GOTO 410,450,490,530,570,610
  40. 400 PLAY "o0c64":GOTO 370
  41. 410 COLOR 31:GOSUB 650
  42. 420 PLAY "mlo2e64":S$=INKEY$:IF S$="" THEN 420
  43. 430 COLOR 7:GOSUB 650
  44. 440 S=VAL(S$):GOTO 390
  45. 450 COLOR 31:GOSUB 660
  46. 460 PLAY "mlo1b64":S$=INKEY$:IF S$="" THEN 460
  47. 470 COLOR 7:GOSUB 660
  48. 480 S=VAL(S$):GOTO 390
  49. 490 COLOR 31:GOSUB 670
  50. 500 PLAY "mlo1g64":S$=INKEY$:IF S$="" THEN 500
  51. 510 COLOR 7:GOSUB 670
  52. 520 S=VAL(S$):GOTO 390
  53. 530 COLOR 31:GOSUB 680
  54. 540 PLAY "mlo1d64":S$=INKEY$:IF S$="" THEN 540
  55. 550 COLOR 7:GOSUB 680
  56. 560 S=VAL(S$):GOTO 390
  57. 570 COLOR 31:GOSUB 690
  58. 580 PLAY "mlo0a64":S$=INKEY$:IF S$="" THEN 580
  59. 590 COLOR 7:GOSUB 690
  60. 600 S=VAL(S$):GOTO 390
  61. 610 COLOR 31:GOSUB 700
  62. 620 PLAY "mlo0e64":S$=INKEY$:IF S$="" THEN 620
  63. 630 COLOR 7:GOSUB 700
  64. 640 S=VAL(S$):GOTO 390
  65. 650 LOCATE 10,5:PRINT "1","E","    82.41",,"    82.50";:PRINT:RETURN
  66. 660 LOCATE 12,5:PRINT "2","B","   110.00",,"   110.00";:PRINT:RETURN
  67. 670 LOCATE 14,5:PRINT "3","G","   146.83",,"   146.66";:PRINT:RETURN
  68. 680 LOCATE 16,5:PRINT "4","D","   196.00",,"   196.00";:PRINT:RETURN
  69. 690 LOCATE 18,5:PRINT "5","A","   246.94",,"   247.50";:PRINT:RETURN
  70. 700 LOCATE 20,5:PRINT "6","E","   329.63",,"   330.00";:PRINT:RETURN
  71.