0 'MUSIC.BA 1.0 LINWOOD MCDOWE JAN-MAR1987 1 'CLUB 100 Library - 415/939-1246 BBS, 937-5039 NEWSLETTER, 932-8856 VOICE 4 MOTOROFF:SOUNDOFF:CALL23161:CALL17471:CLS:SCREEN0,0:CALL17006:PRINT@135,"MUSIC 1.0":PRINT:PRINTTAB(8)"(C)1987 Linwood McDowell":FORA=0TO999:NEXT 6 MAXFILES=1:CLEAR410,MAXRAM:DEFINTA-Z:ONERRORGOTO90:FORA=1TO7:XO$=XO$+SPACE$(9)+CHR$(10)+CHR$(13):NEXT:A$="CDEFGAB":B$=CHR$(245)+STRING$(2,233)+CHR$(245)+STRING$(3,233) 8 KB$=SPACE$(9)+A$+A$+A$+A$+"C"+SPACE$(11)+B$+B$+B$+B$+CHR$(245)+CHR$(233)+SPACE$(10)+STRING$(30,245)+SPACE$(10)+CHR$(246)+STRING$(28,248)+CHR$(247) 10 C=0:NV=17006:RV=NV-5:SF=1:X=89:Y=107:SF$=" BASS ":WR$=" 12 PRINT@12,SPACE$(21):CALLRV:PRINT@34,SF$:PRINT:CALLNV:PRINTKB$:PRINT:CALLRV:PRINT"play staf"TAB(30)"test quit " 14 CALLNV:PRINT@XY," " 16 XY=X:Z=X-3:IFSF=2THENZ=Z+2 18 K$=INKEY$:ONKEYGOSUB100,200,,,,,700,800:GOTO26 20 KEYON:K$=INKEY$:IFK$=""THEN20ELSEKEYOFF:K=ASC(K$):IFK<28ORK>29THEN20 22 PRINT@X," ":PRINT@X+121,CHR$(245):X=X-1:IFK=28THENX=X+2:IFX>YTHENX=XY 24 IFX29THEN102ELSEPRINT@0,XO$:IFK=27THEN26ELSE22 200 KEYOFF:XY=X:IFSF=1THENSF=2:X=99:Y=117:SF$=" TREB "ELSESF=1:X=89:Y=107:SF$=" BASS " 202 CALLRV:PRINT@34,SF$:SOUND1046,1:CALLNV:IFSF=2ANDXY=99THEN16ELSEPRINT@XY+121,CHR$(245):GOTO14 600 C=0:GOSUB970:PRINT@49,SPACE$(29):PRINT@89,SPACE$(29):CALLRV:PRINT@35,"TEST":GOSUB974:PRINT@12," RIGHT: 0 "+CHR$(239)+" WRONG: 0 ":PRINT@280,TAB(25)+"bgin rset stop":CALLNV:C=1:N=0:NN=0:RT=0:WR=0:WR$=SPACE$(38) 610 K$=INKEY$:GOSUB906:GOTO610 620 KEYOFF:IFNTHENBEEP:GOTO626ELSEP$="begin?":GOSUB900:IFK=27THEN610 622 A=2:GOSUB910:A=21:XS=SF:SF=R:GOSUB910:XN=NO:NO=R:XY=86:IFSF=1ANDR<3THEN622ELSEIFSF=2THENXY=98:IFR>19THEN622 624 IFNO=XNANDSF=XSTHEN622ELSEN=N+1:GOSUB912 626 GOSUB906:GOSUB908 628 K$=INKEY$:A=A+1:IFA<260ANDK$=""THEN628ELSEK=INSTR("ABCDEFGabcdefg",K$):IFK=0THEN628 630 KEYOFF:NN=NN+1:X=NO+XY:PRINT@X,CHR$(153):PRINT@X+121,CHR$(155):CALLRV:IFINSTR(CHR$(K+57)+K$,NO$)THENRT=RT+1:PRINT@19,USING"##";RT:GOSUB974:MID$(WR$,NO+PO)=" "ELSEWR=WR+1:PRINT@30,USING"##";WR:BEEP:MID$(WR$,NO+PO)=CHR$(158) 632 CALLNV:IFN=99THENGOSUB970:PRINT@240,;:CALL17583:KEYONELSEFORA=1TO2500:NEXT:GOSUB970:GOTO622 634 GOTO634 700 KEYOFF:P$="test?":GOSUB900:IFK=27THEN26ELSE600 710 KEYOFF:CALL17594:IFNTHENGOSUB908:P$="reset?":GOSUB900ELSEBEEP:GOTO610 712 IFK=13THEN600ELSEIFNN=99THEN632ELSEGOSUB966:GOTO626 800 KEYOFF:P$="quit?":GOSUB900:IFK=13THENCALL23164,0,23366:CALL27795:CALL17472:MAXFILES=0:MENUELSE26 810 KEYOFF:CALL17594:GOSUB908:P$="stop?":GOSUB900 812 IFK=13THENPRINT@0,XO$:PRINT@49,SPACE$(29):PRINT@89,SPACE$(29):GOSUB974:XY=X:GOTO10ELSEIFNN=99THEN632ELSEIFNTHENGOSUB966:GOTO626ELSE610 900 PRINT@240,P$:FORA=1TO2:SOUND415,2:FORB=0TO9:NEXT:NEXT:P$=" 902 GOSUB904:IFK=13ORK=27THENPRINT@240,SPACE$(6):RETURNELSE902 904 K$=INKEY$:IFK$=""THEN904ELSEK=ASC(K$):RETURN 906 KEYON:ONKEYGOSUB,,,,,620,710,810:RETURN 908 FORA=1TOPEEK(65450):K$=INKEY$:NEXT:A=0:RETURN 910 FORB=1TOVAL(MID$(TIME$,8)):R=INT(A*RND(1)+1):NEXT:RETURN 912 NO$=MID$(MID$(KB$,8,21),NO,1):OC=VAL(MID$("001111111222222244444",NO,1)):PO=-2:IFSF=2THENNO$=MID$(MID$(KB$,13,19),NO,1):OC=VAL(MID$("1111222222244444448",NO,1))*2:PO=19 914 FORA=17TO37STEP5:LINE(7,A)-(47,A):NEXT 916 IFSF=1THENLINE(8,21)-(9,24),1,B:LINE(7,22)-(10,23),1,B:LINE(7,21)-(10,18):LINE(11,18)-(15,18):PSET(16,19):LINE(17,20)-(17,28):LINE(16,29)-(14,31):LINE(13,31)-(8,31):LINE(19,19)-(20,20),1,B:LINE(19,24)-(20,25),1,B:GOTO922 918 LINE(9,34)-(9,30):PSET(10,29):LINE(11,28)-(15,28):PSET(16,29):LINE(17,30)-(17,34):PSET(16,35):LINE(15,36)-(9,36):PSET(8,35):LINE(7,34)-(7,29):LINE(8,28)-(16,20):LINE(16,19)-(16,14):LINE(15,13)-(14,13) 920 LINE(13,14)-(13,40):PSET(12,41):LINE(9,40)-(11,41),1,B:PSET(8,40):LINE(9,39)-(10,39) 922 IFNO=12THENLINE(41,24)-(45,25),1,B:LINE(42,23)-(44,26),1,B:LINE(41,24)-(41,41) 924 IFNO=9THENLINE(41,32)-(45,33),1,B:LINE(42,31)-(44,34),1,B:LINE(45,31)-(45,15) 926 IFNO=14THENLINE(41,19)-(45,20),1,B:LINE(42,18)-(44,21),1,B:LINE(41,21)-(41,36) 928 IFNO=7THENLINE(41,37)-(45,38),1,B:LINE(42,36)-(44,39),1,B:LINE(45,36)-(45,20) 930 IFNO=16THENLINE(41,14)-(45,15),1,B:LINE(42,13)-(44,16),1,B:LINE(41,16)-(41,31) 932 IFNO=5THENLINE(39,42)-(47,42):LINE(41,42)-(45,43),1,B:LINE(42,41)-(44,44),1,B:LINE(45,41)-(45,25) 934 IFNO=18THENLINE(39,12)-(47,12):LINE(41,9)-(45,10),1,B:LINE(42,8)-(44,11),1,B:LINE(41,11)-(41,26) 936 IFNO=3THENLINE(39,42)-(47,42):LINE(39,47)-(47,47):LINE(41,47)-(45,48),1,B:LINE(42,46)-(44,49),1,B:LINE(45,46)-(45,28) 938 IFNO=20THENLINE(39,7)-(47,7):LINE(39,12)-(47,12):LINE(41,4)-(45,5),1,B:LINE(42,3)-(44,6),1,B:LINE(41,6)-(41,26) 940 IFNO=1THENLINE(39,42)-(47,42):LINE(39,47)-(47,47):LINE(39,52)-(47,52):LINE(41,52)-(45,53),1,B:LINE(42,51)-(44,54),1,B:LINE(45,51)-(45,28) 942 IFNO=21THENLINE(39,2)-(47,2):LINE(39,7)-(47,7):LINE(39,12)-(47,12):LINE(41,1)-(45,2),1,B:LINE(42,0)-(44,3),1,B:LINE(41,3)-(41,26) 944 IFNO=2THENLINE(39,42)-(47,42):LINE(39,47)-(47,47):LINE(41,49)-(45,50),1,B:LINE(42,48)-(44,51),1,B:LINE(45,48)-(45,28) 946 IFNO=19THENLINE(39,7)-(47,7):LINE(39,12)-(47,12):LINE(41,6)-(45,7),1,B:LINE(42,5)-(44,8),1,B:LINE(41,8)-(41,26) 948 IFNO=4THENLINE(39,42)-(47,42):LINE(41,44)-(45,45),1,B:LINE(42,43)-(44,46),1,B:LINE(45,43)-(45,28) 950 IFNO=17THENLINE(39,12)-(47,12):LINE(41,11)-(45,12),1,B:LINE(42,10)-(44,13),1,B:LINE(41,13)-(41,29) 952 IFNO=6THENLINE(41,39)-(45,40),1,B:LINE(42,38)-(44,41),1,B:LINE(45,38)-(45,23) 954 IFNO=15THENLINE(41,16)-(45,17),1,B:LINE(42,15)-(44,18),1,B:LINE(41,18)-(41,34) 956 IFNO=8THENLINE(41,34)-(45,35),1,B:LINE(42,33)-(44,36),1,B:LINE(45,33)-(45,18) 958 IFNO=13THENLINE(41,21)-(45,22),1,B:LINE(42,20)-(44,23),1,B:LINE(41,23)-(41,39) 960 IFNO=10THENLINE(41,29)-(45,30),1,B:LINE(42,28)-(44,31),1,B:LINE(45,28)-(45,13) 962 IFNO=11THENLINE(41,26)-(45,27),1,B:LINE(42,25)-(44,28),1,B:LINE(41,43)-(41,26) 964 IFMID$(WR$,NO+PO,1)=CHR$(158)THENCALLRV:PRINT@0," MISS " 966 CALLNV:B=ASC(NO$):IFB=68THENSOUNDINT(8368/OC),10ELSEIFB=70THENSOUNDINT(7032/OC),10ELSEIFB=65THENSOUNDINT(5586/OC),10ELSEIFB=71THENSOUNDINT(6269/OC),10ELSEIFB=66THENSOUNDINT(4976/OC),10ELSEIFB=69THENSOUNDINT(7456/OC),10ELSESOUNDINT(9394/OC),10 968 RETURN 970 PRINT@0,XO$:IFC=0THENPRINT@X," "ELSEA=NO+PO:A$=MID$(WR$,A,1):IFSF=1THENPRINT@X,A$ELSEPRINT@X-40,A$:IFA<29THENPRINT@X,MID$(WR$,A-9,1)ELSEPRINT@X," " 972 PRINT@X+121,CHR$(245):RETURN 974 MOTORON:FORA=1TO4:NEXT:MOTOROFF:RETURN