0 ' by Don Phillip Gibson [75725,1752] 1 'modified Benn Gibson [73055,1317] music entry routine 2 DEFSTRA-D:DEFINTE-Z:DIMP(26):DIMM(100,2):SCREEN0,0:B=CHR$(144):C="":C1=B+" ":C1=C1+C1+C1+C1+C1:C2=" "+B 3 C2=C2+C2+C2+C2+C2+" ":TI=300:CLS:LINE(16,2)-(223,10),1,B:PRINT@4,"Welcome to Our Christmas Concert";:P=210:S=4 4 FORK=23TO(23+4*S)STEPS:J=LOG(K)/1.3:LINE(P,K)-(P+(K/4),K+S+J),1:LINE(P,K)-(P-(K/4),K+S+J),1:NEXTK:LINE(P-1,K)-(P+1,K+S),1,BF 5 GOSUB49:GOSUB49:FORK=1TO12:PRINT@200,;:GOSUB45:PRINT@200,;:GOSUB46:NEXT 6 C=B+" ":C=C+C+C+C+C+C+C:PRINT@200,C1;" ";C;:PRINT@170,B;:GOSUB47:PRINT@200,C2;" ";C;:PRINT@170," ";B;:GOSUB47 7 C1=C1+" "+C:C2=C2+" "+C:C=" "+B:C=C+C 8 FORK=1TO7:PRINT@200,C1;:PRINT@170,;:GOSUB45:IFK=7THEN9ELSEPRINT@200,C2;:PRINT@170,;:GOSUB46 9 NEXT:C=B:FORK=1TO8:IFK<4THEN10ELSEMID$(C1,((K-4)*2)+1)=" ":MID$(C2,((K-4)*2)+2)=" " 10 PRINT@200,C1;:PRINT@170,B;:PRINT@130,;:GOSUB46:PRINT@200,C2;:PRINT@170," ";:PRINT@130,; 11 GOSUB45:NEXT:PRINT@130,;" ";C;:GOSUB49:FORK=280TO298:PRINT@K," ";CHR$(145);:FORT=1TO75:NEXT:NEXT 12 DATA360,G.,G-C-CdCBA-A-A-d-dedCB-G-G-e-efedC-A-GGA-d-B-C-- G-C-C-C-B---BBC-B-A-G-- d-e-ddCCg-G-GGA-d-B-C--- 13 RESTORE12:GOSUB58:SOUNDM(1,1),60:GOSUB48:GOSUB64:GOSUB50:GOSUB49:W=10:GOSUB56:GOSUB48 14 DATA220,C.,c--ha-a-g-f-f-e-d-C--:RESTORE14:GOSUB58:SOUNDM(1,1),S*2:W=54:GOSUB51:GOSUB52:GOSUB64:GOSUB53:GOSUB54 15 DATA$-$--D$-$-G-E-D-$-F-A--:RESTORE15:GOSUB60:GOSUB64 16 DATAc--ha-a-g-f-f-e-d-C--:GOSUB60:SOUNDM(1,1),S*2:GOSUB51:GOSUB52:GOSUB64:GOSUB53:GOSUB54 17 DATA$-H--AG-A-G-F-G-D-E-F---:GOSUB60:GOSUB64 18 GOSUB48:FORK=1TO2:GOSUB51:GOSUB52:GOSUB48:GOSUB55:GOSUB47:PRINT@263,B;:NEXT:GOSUB51:GOSUB52:GOSUB48:W=10:GOSUB57:GOSUB50 19 GOSUB49:FORW=0TO4STEP2:GOSUB56:NEXT:GOSUB48:DATA172,F.,e-dC-ABCBA- e-dC-ABCBA- C-Cd-de-egfededC-BA--- 20 GOSUB58:GOSUB64:PRINT@253," ";B;B;B;" "; 21 DATAB----d---:RESTORE21:GOSUB60:GOSUB64:W=0:GOSUB51 22 DATA344,F.,C---C-C---G-C---A-C---:GOSUB58:GOSUB64:GOSUB53:W=12:GOSUB52 23 DATAC---C-C---G-C---A-C---:RESTORE23:GOSUB60:GOSUB64:GOSUB54:DATAC---C-d---e-f---e--d----e----- 24 GOSUB60:GOSUB64:W=0:GOSUB51:W=12:GOSUB52 25 DATAC---C-C---G-C---A-C-----:GOSUB60:GOSUB64:GOSUB48:PRINT@253,B+" "+B+" "+B; 26 GOSUB48:FORK=1TO2:GOSUB48:GOSUB55:GOSUB47:PRINT@253,B+" "+B+" "+B;:NEXT:GOSUB48:FORW=4TO0STEP-2:GOSUB57:NEXT:GOSUB48 27 DATA520,Bb,e-e-e---e-e-e---e-g-C--de------ f-f-f--ff-e-e-eeg-------g-------a-------b-------c--------------- 28 GOSUB58:GOSUB64:GOSUB49:GOSUB50:GOSUB50:GOSUB48 29 C1=B+" ":C1=C1+C1+C1+C1+C1+C1+C1:C2=C1+B+" ":C3=C2+B+" ":FORK=213TO200STEP-1:IFK>200THEN30ELSEMID$(C1,1)=" " 30 PRINT@K,C1;:GOSUB47:NEXT:C2=C2+LEFT$(C3,12):C=SPACE$(18):PRINT@171,C;:PRINT@200,C2; 31 GOSUB47:FORK=2TO5:PRINT@200,MID$(C2,K);:GOSUB47:NEXT:PRINT@171,C3;:PRINT@131,C:PRINT@200,MID$(C2,6); 32 PRINT@175," ";:PRINT@215,CHR$(135);:GOSUB47:C2=LEFT$(C3,16):PRINT@200,C2;:PRINT@215,CHR$(191); 33 GOSUB47:PRINT@200,MID$(C2,2);:PRINT@175,B;:PRINT@215," ";:GOSUB47 34 C2=B+" ":C2=C2+C2+C2+C2+C2+C2+C2+" "+C2+C2+C2:FORK=1TO12 35 PRINT@200,MID$(C2,K);:IFK>2THEN36:IFK=1THENPRINT@175,CHR$(131);ELSEPRINT@175,B; 36 GOSUB47:NEXT:PRINT@170,C:C=MID$(C2,13)+C3:FORK=1TO29:PRINT@200,MID$(C,K);:GOSUB47:NEXT 37 PRINT@200," ";:FORK=299TO280STEP-1:PRINT@K,CHR$(145);" ";:FORT=1TO75:NEXT:NEXT:PRINT@280," ";:GOSUB49:GOSUB49 38 PRINT@211,"Merry Christmas!";:PRINT@295,"Run";:PRINT@315,"Menu";:KEY(4)ON:KEY(8)ON 39 ONKEYGOSUB39,39,39,40,39,39,39,41:GOTO39 40 CLS:GOSUB49:RUN 41 MENU 42 FORK=25TO57STEP8:IFK=49THENNEXTELSELINE(40,K)-(199,K+2),0,BF:NEXT 43 GOSUB48:T$="":C5=B+" ":C5=C5+C5+C5+C5+C5+C5+C5+C5+C5:PRINT@131,C5;:PRINT@172,MID$(C5,3); 44 PRINT@213,MID$(C5,5);:PRINT@299,CHR$(145);:RETURN 45 C=B+C:PRINTC;:GOSUB47:RETURN 46 C=" "+C:PRINTC;:GOSUB47:RETURN 47 FORT=1TOTI:NEXT:RETURN 48 FORT4=1TO4:GOSUB47:NEXT:RETURN 49 FORT4=1TO10:GOSUB47:NEXT:RETURN 50 GOSUB48:GOSUB42:GOSUB47:GOSUB48:RETURN 51 PSET(82+W,49):PSET(83+W,50):PSET(84+W,50):RETURN 52 PSET(89+W,50):PSET(90+W,50):PSET(91+W,49):RETURN 53 PRESET(82+W,49):PRESET(83+W,50):PRESET(84+W,50):RETURN 54 PRESET(89+W,50):PRESET(90+W,50):PRESET(91+W,49):RETURN 55 LINE(40,49)-(199,51),0,BF:RETURN 56 PRINT@213+W," ";:PRINT@253+W,CHR$(131);:GOSUB47:PRINT@253+W,B;:RETURN 57 PRINT@252+W," ";:PRINT@213+W,CHR$(131);:GOSUB47:PRINT@213+W,B;:RETURN 58 READS,K$,T$:R=(INSTR("F.GbG.AbA.BbB.C.",K$)+1)/2 59 RESTORE65:FORK=1TOR:READX:NEXT:P(1)=0:FORK=2TO26:READP(K):NEXT:S=60/S*50:GOTO61 60 READT$ 61 T$=T$+" ":M=0:FORK=1TOLEN(T$)-1:N=INSTR(" $ D EFIG AHBC d#efig ahbc",MID$(T$,K,1)):E=S 62 IFMID$(T$,K+1,1)="-"THENE=E+S:K=K+1:GOTO62 63 M=M+1:M(M,1)=P(N):M(M,2)=E:NEXT:RETURN 64 FORK=1TOM:SOUNDM(K,1),M(K,2):NEXT:RETURN 65 DATA0,7032,6642,6269,5918,5586,5272,4976,4697,4433,4184,3950,3728,3516,3321,3134 66 DATA2959,2793,2636,2484,2348,2216,2092,1975,1864,1758,1660,1567,1479,1396,1318,1244,1174