home *** CD-ROM | disk | FTP | other *** search
/ ftp.whtech.com / ftp.whtech.com.tar / ftp.whtech.com / club100 / mus / harmny.ba < prev    next >
Text File  |  2006-10-19  |  3KB  |  58 lines

  1. 0 'HARMNY.BA By Ben Firschein 6/83
  2. 1 'CLUB 100 Library - 415/939-1246 BBS,    937-5039 NEWSLETTER, 932-8856 VOICE
  3. 2 ONERRORGOTO27:M=100:DIMN$(12):DIMP%(12,5):DIMLV%(M):DIMDU%(M):DIMNO$(M):GOSUB46:KEY(1)ON:KEY(2)ON:KEY(3)ON:KEY(4)ON:KEY(5)ON:KEY(6)ON:KEY(7)ON:KEY(8)ON:L=1:D=12:C=0:GOSUB37:GOTO4
  4. 3 FORZZ=1TO500:NEXTZZ
  5. 4 CLS:PRINT:PRINT" ***************( MENU )***************":PRINT"            "FRE(0)"BYTES FREE":PRINT"       [m]ake a song   [p]layback":PRINT"       [s]ave          [f]iles":PRINT"       [l]oad          [q]uit
  6. 5 PRINT" ******( hit key in [] to choose )*****
  7. 6 K$=INKEY$:IFK$=""THEN6
  8. 7 IFK$="m"THENGOSUB14
  9. 8 IFK$="p"THENGOSUB47
  10. 9 IFK$="s"THENGOSUB50
  11. 10 IFK$="l"THENGOSUB53
  12. 11 IFK$="q"THENMENU
  13. 12 IFK$="f"THENGOSUB33
  14. 13 GOTO3
  15. 14 GOSUB31
  16. 15 GOSUB18:IFK$="."THENRETURN
  17. 16 GOSUB36:IFC=MTHENPRINT:PRINT"can only store"M"notes.":RETURN
  18. 17 C=C+1:LV%(C)=L:DU%(C)=D:NO$(C)=K$:GOTO15
  19. 18 PRINTCHR$(239)CHR$(8);
  20. 19 K$=INKEY$:IFK$="."THENPRINT".":RETURN
  21. 20 IFK$=""THEN19
  22. 21 IFASC(K$)=8THENGOSUB25:GOTO18
  23. 22 FORK=1TO12:IFK$=N$(K)THEN24
  24. 23 NEXTK:GOTO19
  25. 24 RETURN
  26. 25 IFC=0THENRETURN
  27. 26 PRINT" "CHR$(8);:PRINTCHR$(8)CHR$(8)CHR$(8)CHR$(8);:C=C-1:RETURN
  28. 27 IFERR=7THENPRINT"out of memory.please make space":END
  29. 28 IFERR=52THENPRINT"file not found.":RESUME3
  30. 29 IFERR=55THENPRINT"bad file name.":RESUME3
  31. 30 PRINT"error code "ERR"in line "ERL:STOP
  32. 31 C=0:CLS:PRINT"create a song upto"M"notes":PRINT"by pressing key of note to play.":PRINT"sharps: shift & the key":PRINT"done: type '.'":PRINT"[bksp] to change notes":PRINT"f1-f8 changes octave & length":PRINT"oct1 oct2 oct3 oct4 oct5 1/4  1/2  1/1
  33. 32 RETURN:PRINT"wait";
  34. 33 CLS:FILES:PRINT:PRINT"hit space bar to continue ";
  35. 34 W$=INKEY$:IFW$<>" "THEN34
  36. 35 PRINT" "WAITE";":RETURN
  37. 36 PRINTL;N$(K);:SOUNDP%(K,L),D:RETURN
  38. 37 ONKEYGOSUB38,39,40,41,42,43,44,45:RETURN
  39. 38 L=1:RETURN
  40. 39 L=2:RETURN
  41. 40 L=3:RETURN
  42. 41 L=4:RETURN
  43. 42 L=5:RETURN
  44. 43 D=12:RETURN
  45. 44 D=25:RETURN
  46. 45 D=50:RETURN
  47. 46 FORN=1TO12:READN$(N):FORC=1TO5:READP%(N,C):NEXTC:NEXTN:RETURN
  48. 47 CLS:PRINT"playback":PRINT:IFC>0THEN49
  49. 48 PRINT"error. no notes to play":RETURN
  50. 49 FORNT=1TOC:L=LV%(NT):D=DU%(NT):K$=NO$(NT):GOSUB22:GOSUB36:NEXTNT:PRINT:RETURN
  51. 50 CLS:PRINT"save":PRINT:IFC>0THEN52
  52. 51 PRINT"error. no notes to save":RETURN
  53. 52 INPUT"filename ";N$:OPENN$FOROUTPUTAS1:PRINT"saving "N$:FORNT=1TOC:PRINT#1,LV%(NT),DU%(NT),NO$(NT):PRINTLV%(NT)NO$(NT)" ";:NEXTNT:PRINT#1,0,0,"*":CLOSE1:PRINT:PRINT"saved. "FRE(0)"bytes free.":RETURN
  54. 53 CLS:PRINT"load":PRINT:INPUT"file ";NA$:OPENNA$FORINPUTAS1:PRINT"found "NA$:FORC=1TOM:INPUT#1,LV%(C),DU%(C),NO$(C):IFNO$(C)="*"THEN55
  55. 54 NEXTC
  56. 55 C=C-1:CLOSE1:PRINT"loaded":RETURN:DATA "g",12538,6269,3134,1567,783:DATA "G",11836,5918,2959,1479,739:DATA "a",11172,5586,2793,1396,698:DATA "A",10544,5272,2636,1318,659:DATA "b",9952,4976,2484,1244,622:DATA "c",9394,4697,2348,1174,587
  57. 56 DATA "C",8866,4433,2216,1108,554:DATA "d",8368,4184,2092,1046,523:DATA "D",7900,3728,1975,987,493:DATA "e",7456,3718,1864,932,466:DATA "f",7032,3516,1758,879,439:DATA "F",6642,3321,1660,830,415
  58.