5748448 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$ cat -n music.bas
   1: CLS
   2: ON ERROR GOTO 452
   3: SCREEN 12
   4: I = 0
   5: SCALE$ = "DFGDGDGDFFDFG"
   6: PLAY "MB"
   7: PLAY "L64"
   8: FOR I% = 0 TO 6
   9: PLAY "O" + STR$(I%)
  10: PLAY "X" + VARPTR$(SCALE$)
  11: NEXT I%
  12: 30 LINE INPUT "(O)pen file|(N)ew file|(A)ppend file-->"; choice$
  13: IF MID$(choice$, 1, 1) = "O" OR MID$(choice$, 1, 1) = "o" THEN GOTO ply
  14: IF MID$(choice$, 1, 1) = "A" OR MID$(choice$, 1, 1) = "a" THEN a$ = "1" ELSE n$ = "1"
  15: LINE INPUT "Filename-->"; file$
  16: 10 note$ = "MF"
  17: CLS
  18: INPUT "ENTER OCTAVE (DEFAULT IS 4,MID C IS IN OCTAVE 3)"; o$
  19: IF o$ = "" THEN o$ = "4"
  20: note$ = note$ + "O" + o$
  21: PRINT "EXAMPLE FOR AN QUATER NOTE LENGTH = 4 HALF NOTE = 2 WHOLE NOTE = 1"
  22: TOP:
  23: IF I < 30 THEN LOCATE I + 3, 1: INPUT "NOTE A-G, LENGTH 1-64"; a$, b$ ELSE LOCATE 29, 1: INPUT "NOTE A-G, LENGTH 1-64"; a$, b$
  24: IF b$ = "" AND a$ = "" THEN GOTO 122
  25: IF b$ = "" THEN b$ = bc$
  26: a$ = a$ + b$
  27: bc$ = b$
  28: PLAY "X" + VARPTR$(a$)
  29: IF b$ = "" THEN note$ = note$ + a$ ELSE note$ = note$ + a$
  30: I = I + 1
  31: GOTO TOP
  32: 122 PLAY "X" + VARPTR$(note$)
  33: 11 LINE INPUT "Save, Quit, Play, New(s/q/p/n)?"; sas$
  34: IF sas$ = "" THEN GOTO 11
  35: IF UCASE$(MID$(sas$, 1, 1)) = "P" THEN GOTO 122
  36: IF UCASE$(MID$(sas$, 1, 1)) = "S" THEN IF n$ = "1" THEN OPEN file$ FOR OUTPUT AS #1 ELSE OPEN file$ FOR APPEND AS #1
  37: IF UCASE$(MID$(sas$, 1, 1)) = "Q" THEN END
  38: IF UCASE$(MID$(sas$, 1, 1)) = "N" THEN CLS : GOTO TOP
  39: PRINT #1, note$
  40: CLOSE #1
  41: SYSTEM
  42: ply:
  43: LINE INPUT "Filename-->"; file$
  44: OPEN file$ FOR INPUT AS #1
  45: DO UNTIL EOF(1)
  46: LINE INPUT #1, NTE$
  47: IF note$ = "" THEN note$ = NTE$ ELSE note$ = note$ + NTE$
  48: LOOP
  49: PLAY "X" + VARPTR$(note$)
  50: CLOSE 1
  51: GOTO 30
  52: SYSTEM
  53: END: END: END: END: END: END: END: END: END: END: END: END: END: END: END: END: END: END
  54: 452 a$ = "": RESUME NEXT
  55: 
5748449 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$

Click here to go back to the directory listing.
Click here to download this file.
last modified: 2000-05-09 21:05:57