10 REM Music from Poland 20 REM by M.Bobrowski 5'94 30 : 40 DEFFNS="MusPol" 50 MODE7:HIMEM=&6000 60 VDU23;8202;0;0;0; 70 DIM ch%(3),e%(2),note%(2):ON ERROR IF ERR=17 AND INKEY(-1) MODE7:END ELSE REPORT:PRINT" at line ";ERL:END 80 ENVELOPE1,5,0,0,0,0,0,0,120,-5,-2,-20,120,80 90 ENVELOPE2,1,0,0,0,0,0,0,125,-2,-1,-2,90,60 100 ENVELOPE3,2,0,0,0,0,0,0,120,-1,0,-2,100,75 110 PROCtitle 120 FOR Y%=21 TO 22:PRINTTAB(9,Y%)CHR$141CHR$129CHR$157CHR$131"Press 0 - 9 "CHR$156:NEXT 130 REPEAT 140 REPEAT 150 F%=0 160 *FX21 170 B%=VAL(GET$) 180 UNTILB%>-1 AND B%<10 190 IF B%=9 F%=1:FOR B%=1 TO 8 200 IF B%=1 A$="Chime" 210 IF B%=2 A$="Cuckoo" 220 IF B%=3 A$="Karlik" 230 IF B%=4 A$="Krakowi" 240 IF B%=5 A$="Kujawia" 250 IF B%=6 A$="Mazurka" 260 IF B%=7 A$="Oberek" 270 IF B%=8 A$="Polonai" 280 IF B%<>0 PRINTTAB(15,B%+6)CHR$62:OSCLI"LO."+A$+" 6000":PROCset_up:PROCplay:PRINTTAB(15,B%+6)CHR$134 290 IF F%=1 NEXT 300 UNTIL B%=0 310 MODE7:*DIR $ 320 END 330 : 340 DEFPROCset_up 350 ch%(0)=&6000:A%=&6000 360 FORL%=1 TO 3 370 REPEAT A%=A%+1:UNTIL?A%=&FF 380 A%=A%+2:ch%(L%)=A% 390 NEXT 400 ENDPROC 410 : 420 DEFPROCplay 430 FORC%=0TO2:note%(C%)=0:e%(C%)=0:NEXT 440 REPEAT 450 IF ADVAL(-6)>0 PROCsound(0) 460 IF ADVAL(-7)>0 PROCsound(1) 470 IF ADVAL(-8)>0 PROCsound(2) 480 UNTIL e%(0) AND e%(1) AND e%(2) 490 ENDPROC 500 : 510 DEFPROCsound(C%) 520 P%=ch%(C%)?(note%(C%)*2):D%=ch%(C%)?(note%(C%)*2+1) 530 IF P%=255 e%(C%)=TRUE:ENDPROC 540 IF P%=0 E%=0 ELSE E%=C%+1 550 SOUND C%+1,E%,P%,D% 560 note%(C%)=note%(C%)+1 570 ENDPROC 580 : 590 DEF PROCtitle 600 FOR Y%=2 TO 3:PRINTTAB(6,Y%)CHR$141CHR$129CHR$157CHR$131"Music from Poland "CHR$156:NEXT 610 PRINT'''TAB(12)"ƒ1.†Chime"TAB(12)"ƒ2.†Cuckoo"TAB(12)"ƒ3.†Karlik"TAB(12)"ƒ4.†Krakowiak"TAB(12)"ƒ5.†Kujawiak"TAB(12)"ƒ6.†Mazurka"TAB(12)"ƒ7.†Oberek"TAB(12)"ƒ8.†Polonaise"TAB(12)"ƒ9.†All"''TAB(12)"ƒ0.†End" 620 ENDPROC