Home » Personal collection » Acorn tapes » Commercial_Releases » boxed_acornsoft_tape10a_acorn_introductory_cassette.wav » PIANO
PIANO
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Personal collection » Acorn tapes » Commercial_Releases » boxed_acornsoft_tape10a_acorn_introductory_cassette.wav |
Filename: | PIANO |
Read OK: | ✔ |
File size: | 176C bytes |
Load address: | FFFF0E00 |
Exec address: | FFFF8023 |
Duplicates
There is 1 duplicate copy of this file in the archive:
- AEW website » acornsoft » acornsoft_tapes_Introductory-Cassette_Intro_E.uef » PIANO
- Personal collection » Acorn tapes » Commercial_Releases » boxed_acornsoft_tape10a_acorn_introductory_cassette.wav » PIANO
File contents
10REM PIANO 20REM Electron Introductory Cassette 30REM Author G.V. 40ONERRORRUN 50IFM%=1234THEN60ELSEIFM%=5678THEN70ELSEMODE5:VDU19,3,4;0;:COLOUR2:PRINTTAB(0,5)"Does your cassette"''"recorder have motor"''"control (Y/N)?";:IF(GETAND&DF)=ASC"Y"THENM%=5678:GOTO70ELSEM%=1234 60SOUND1,-15,121,60:MODE5:VDU19,3,4;0;:COLOUR1:PRINTTAB(8,9)"STOP";:COLOUR3:PRINTTAB(6,13)"the tape":COLOUR2:PRINTTAB(4,25)"Press SPACE"TAB(4,27)"to continue":REPEATUNTILGET=32:SOUND&11,0,0,0 70ONERRORCLEAR:GOTO80 80DIM MAP 255,BLOCK 8 90osword=&FFF1 100MODE4:PROCOFF:PROCINITDBL:PROCDBL("Piano",12):N%=INKEY500 110ONERRORGOTO500 120MODE4:PROCOFF:PROCDBL("Piano",2) 130PRINT''' 140PRINT" Play the bottom two rows of keys" 150PRINT" like a piano keyboard. The 'C'" 160PRINT" key is middle C; the keys in the" 170PRINT" second row represent the black" 180PRINT" notes, as shown on the screen."' 190PRINT" Use the up-arrow and down-arrow" 200PRINT" keys to change the octave. Use" 210PRINT" 'P' and 'O' to turn on and off" 220PRINT" the display of musical notation" 230PRINT" at the top of the screen." 240PRINTTAB(8,29)"Press SPACE to continue"; 250*FX15,1 260REPEATUNTILGET=32 270 280MODE4 290VDU19,0,7;0; 300VDU19,1,0;0; 310PROCOFF 320*FX11,0 330*FX4,1 340PROCINIT 350PROCMUSCH 360PROCSTAVE:PROCCLEF 370 PROCkeybd 380VDU4:PRINTTAB(15,18)"Octave ";octno; 390PRINTTAB(22,17)CHR$(250);TAB(22,19)CHR$(249); 400PRINTTAB(1,18)"P Print ON"TAB(1,19)"O Print OFF": 410 ENVELOPE 1,10,0,0,0,0,0,0,63,10,0,-63,63,126 420 ENVELOPE 2,10,0,0,0,0,0,0,63,63,0,-63,63,126 430 ENVELOPE 3,10,0,0,0,0,0,0,126,-8,-4,-1,126,100 440 ENVELOPE 4,10,0,0,0,0,0,0,126,-10,-5,-2,126,126 450REPEATPROCsound:IFprinton ANDnonotes>0PROCPRINTNOTE 460UNTILFALSE 470 480REM Error Handler 490IFERR<>17REPORT:PRINT" at line ";ERL:GOTO530 500MODE4:PROCCEN("Do you want to go on to",12):PROCCEN("the next program (Y/N)? ",13) 510PROCYN 520IFY%=0THENCLEAR:GOTO70 530*FX4,0 540*FX12,0 550MODE4 560PRINT'"Play tape"' 570CHAIN"" 580END 590 600DEFPROCPRINTNOTE 610LOCALY%,N% 620IFCURX>1200THENPROCSTAVE 630VDU5 640PROCsound 650outptr=outptr+1:IFoutptr>bufsiz THENoutptr=1 660N%=buf?outptr:nonotes=nonotes-1 670REMcheck for octave change 680IFN%>99ANDN%<128THENprintoffset=454+(N%-100)*84:ENDPROC 690CURX=CURX+32 700PROCsound 710Y%=printoffset+(A?N% MOD128) 720IFA?N%>127MOVECURX,Y%-24:PRINTCHR$(230):MOVECURX,Y%+8:PRINTCHR$(231):CURX=CURX+32 730PROCsound 740MOVECURX,Y%:PRINTCHR$(224):IFY%>718MOVECURX,Y%-24:DRAWCURX,Y%-72ELSEMOVECURX+24,Y%-16:DRAWCURX+24,Y%+32 750PROCsound 760IFY%<647THENFORJ%=646TOY%STEP-24:MOVECURX-8,J%-20:DRAWCURX+36,J%-20:NEXTJ%:GOTO790 770IFY%>789THENFORJ%=790TOY%STEP24:MOVECURX-8,J%-20:DRAWCURX+36,J%-20:NEXTJ% 780PROCsound 790CURX=CURX+32 800VDU4:ENDPROC 810 820 DEFPROCMUSCH 830 VDU23,224,0,0,0,&3C,&7E,&FE,&FC,&78 840 VDU23,225,2,2,2,&3E,&42,&82,&84,&78 850 VDU23,226,2,2,2,2,2,2,2,2 860 VDU23,230,&27,&3F,&FF,&FC,&E4,&24,&20,0 870 VDU23,231,4,&24,&27,&3F,&FF,&FC,&E4,&24 880 VDU23,232,0,0,0,0,0,&3F,0,0 890 VDU23,233,0,0,0,0,0,&FC,0,0 900 VDU23,234,&38,&7C,&7C,&78,&30,&19,6,0 910 VDU23,235,&E6,&67,&33,&19,&F,3,0,0 920 VDU23,236,&38,&78,&71,&73,&E7,&E6,&E6,&C6 930 VDU23,237,1,1,1,3,7,6,&E,&1C 940 VDU23,238,1,1,1,1,1,1,1,1 950 VDU23,239,0,0,0,0,0,0,0,1 960 VDU23,240,&20,&20,&20,&20,&40,&80,0,0 970 VDU23,241,&43,&43,&46,&4C,&58,&E0,&20,&20 980 VDU23,242,&80,&F0,&F8,&FC,&4E,&47,&43,&43 990 VDU23,243,&C0,&C0,&80,&80,&80,&80,&80,&80 1000 VDU23,244,&84,&0C,&0C,&18,&18,&38,&30,&60 1010 VDU23,245,0,0,&10,&38,&6C,&C4,&C4,&84 1020VDU23,246,&10,&30,&70,&FF,&FF,&70,&30,&10 1030VDU23,247,8,&C,&E,&FF,&FF,&E,&C,8 1040VDU23,248,&FF,&FF,&FF,&FF,&FF,&FF,&FF,&FF 1050VDU23,249,&18,&18,&18,&18,&FF,&7E,&3C,&18 1060VDU23,250,&18,&3C,&7E,&FF,&18,&18,&18,&18 1070 ENDPROC 1080 1090 DEFPROCSTAVE 1100 VDU4,28,3,15,39,0 1110 CLS 1120 VDU26,5:PROCsound 1130 MOVE0,650:DRAW1279,650:PROCsound 1140 MOVE0,674:DRAW1279,674:PROCsound 1150 MOVE0,698:DRAW1279,698:PROCsound 1160 MOVE0,722:DRAW1279,722:PROCsound 1170 MOVE0,746:DRAW1279,746:PROCsound 1180CURX=88 1190ENDPROC 1200 1210DEFPROCCLEF 1220LOCALX%,Y%,I% 1230 VDU5 1240 X%=8:Y%=638 1250 FORI%=234TO245 1260 MOVEX%,Y%:PRINTCHR$(I%) 1270 Y%=Y%+32 1280 IFI%=239THENX%=40:Y%=638 1290 NEXTI% 1300 VDU4 1310 CURX=88 1320 ENDPROC 1330 1340 DEFPROCINIT 1350 LOCALI%,J% 1360DIMK%(17):FORI%=0TO17:READK%(I%):NEXTI% 1370DATA-99,-98,-82,-67,-83,-68,-100,-84,-101,-86,-70,-102,-71,-103,-87,-104,-105,-73 1380DIM A 17:FORI%=1TO17:READA?I%:NEXTI% 1390DATA0,128,12,24,152,36,164,48,60,188,72,200,84,212,96,108,236 1400octno=2:playoffset=2*48-59:printoffset=454+84*2 1410N%=0 1420vol=-15 1430env=1 1440last=-99 1450bufsiz=20 1460DIM buf bufsiz 1470inptr=0:outptr=0:nonotes=0 1480key$="ZSXCFVGBNJMK,L./:"+CHR$(139)+CHR$(138)+"PO" 1490DIMcol(7):FORI=1TO6:READcol(I):NEXT 1500DATA5,0,4,1,2,3 1510printon=TRUE 1520 ENDPROC 1530 1540 DEFPROCkeybd 1550 GCOL0,1 1560 MOVE160,16:DRAW160,350:DRAW1120,350:DRAW1120,16:DRAW160,16 1570 VDU5:GCOL0,1:GCOL0,128:MOVE192,82:PRINT"Z X C V B N M , . /" 1580 FORI=256TO1024STEP96:MOVEI,16:DRAWI,350:NEXTI 1590PROCblack(232) 1600PROCblack(424):PROCblack(520) 1610PROCblack(712):PROCblack(808):PROCblack(904) 1620PROCblack(1096) 1630 GCOL0,0 1640 VDU5 1650MOVE240,176:PRINT"S" 1660MOVE432,176:PRINT"F" 1670MOVE528,176:PRINT"G" 1680MOVE720,176:PRINT"J" 1690MOVE816,176:PRINT"K" 1700MOVE912,176:PRINT"L" 1710MOVE1104,176:PRINT":" 1720 VDU4 1730 GCOL0,1 1740 ENDPROC 1750 1760 DEFPROCblack(X%) 1770MOVEX%,350:DRAWX%,125:DRAWX%+48,125:PLOT85,X%,350:DRAWX%+48,125:DRAWX%+48,350:PLOT85,X%,350 1780 ENDPROC 1790 1800DEFPROCsound 1810LOCALN% 1820IFnonotes<bufsiz GOTO1850 1830*FX15,1 1840ENDPROC 1850note%=INKEY0 1860IFnote%>=ASC"a"IFnote%<=ASC"z" note%=note%AND&DF 1870IFnote%=-1THENN%=0ELSEN%=INSTR(key$,CHR$note%) 1880IFnote%=-1ANDINKEY(last)ENDPROC 1890IFN%<18THEN1900ELSEIFN%=18THEN2010ELSEIFN%=19THEN2080ELSEIFN%=20THENprinton=TRUE:printoffset=454+84*octno:inptr=0:outptr=0:nonotes=0:ENDPROC ELSEIFN%=21printon=FALSE:ENDPROC 1900SOUND&11,0,0,0 1910last=K%(N%) 1920IF N%=0ENDPROC 1930pitch=N%*4+playoffset:IFpitch>255ORpitch<1ENDPROC 1940IFprinton inptr=inptr+1:IFinptr>bufsiz inptr=1 1950GOTO1990 1960IFinptr<>outptr GOTO1990 1970last=-99:IFinptr=1inptr=bufsiz ELSE inptr=inptr-1 1980ENDPROC 1990SOUND1,vol,pitch,255:IFprinton nonotes=nonotes+1:buf?inptr=N% 2000ENDPROC 2010octno=octno+1:IFoctno>4THENoctno=4 2020playoffset=48*octno-59:VDU19,1,col(octno),0,0,0 2030VDU4:PRINTTAB(15,18)"Octave ";octno;:VDU5 2040IFNOTprinton ENDPROC 2050inptr=inptr+1:IFinptr>bufsiz inptr=1 2060nonotes=nonotes+1:buf?inptr=100+octno 2070ENDPROC 2080octno=octno-1:IFoctno<1THENoctno=1 2090GOTO2020 2100 2110DEFPROCYN 2120Y%=-1 2130X%=GET 2140X%=X%AND&DF:IFX%<>78ANDX%<>89THEN2130 2150Y%=1:IFX%=78THENY%=0 2160VDUX%,8:ENDPROC 2170 2180DEFPROCCEN(A$,Y%) PRINTTAB(19-LENA$/2,Y%)A$;:ENDPROC 2190 2200DEFPROCOFF:VDU23;8202;0;0;0;:ENDPROC 2210DEFPROCINITDBL $MAP=STRING$(255,CHR$0):MAP?255=0:CHARPTR=224:ENDPROC 2220 2230DEFPROCDBL(A$,y%)B$="":C$="":FORCH%=1TOLENA$:K%=FNCHAR(ASCMID$(A$,CH%,1)):B$=B$+CHR$K%:C$=C$+CHR$(K%+1):NEXT:K%=19-LENA$/2 2240DBL$=CHR$31+CHR$K%+CHR$y%+B$+CHR$31+CHR$K%+CHR$(y%+1)+C$:PRINTDBL$;:ENDPROC 2250 2260DEFFNCHAR(C%)IFMAP?C%THEN=MAP?C%ELSEIFCHARPTR>=256STOP ELSEMAP?C%=CHARPTR:?BLOCK=C%:A%=10:X%=BLOCK:Y%=BLOCK DIV 256:CALLosword 2270FORJ%=0TO1:VDU23,CHARPTR+J%:FORI%=2TO9:VDUBLOCK?(J%*4+I%DIV2):NEXT,:CHARPTR=CHARPTR+2:=MAP?C%
� PIANO $� Electron Introductory Cassette � Author G.V. (� 2��M%=1234��T|@��M%=5678��DF@��5:�19,3,4;0;:�2:�0,5)"Does your cassette"''"recorder have motor"''"control (Y/N)?";:�(��&DF)=�"Y"�M%=5678:�DF@�M%=1234 <��1,-15,121,60:�5:�19,3,4;0;:�1:�8,9)"STOP";:�3:�6,13)"the tape":�2:�4,25)"Press SPACE"�4,27)"to continue":���=32:�&11,0,0,0 F ��:�DP@ P� MAP 255,BLOCK 8 Zosword=&FFF1 d-�4:�OFF:�INITDBL:�DBL("Piano",12):N%=�500 n��dtA x�4:�OFF:�DBL("Piano",2) ��''' �+�" Play the bottom two rows of keys" �+�" like a piano keyboard. The 'C'" �+�" key is middle C; the keys in the" �+�" second row represent the black" �*�" notes, as shown on the screen."' �+�" Use the up-arrow and down-arrow" �+�" keys to change the octave. Use" �+�" 'P' and 'O' to turn on and off" �+�" the display of musical notation" �$�" at the top of the screen." �%�8,29)"Press SPACE to continue"; �*FX15,1 ���=32 �4 "�19,0,7;0; ,�19,1,0;0; 6�OFF @*FX11,0 J *FX4,1 T �INIT ^ �MUSCH h�STAVE:�CLEF r �keybd |�4:�15,18)"Octave ";octno; �!�22,17)�(250);�22,19)�(249); �-�1,18)"P Print ON"�1,19)"O Print OFF": �+ � 1,10,0,0,0,0,0,0,63,10,0,-63,63,126 �+ � 2,10,0,0,0,0,0,0,63,63,0,-63,63,126 �- � 3,10,0,0,0,0,0,0,126,-8,-4,-1,126,100 �. � 4,10,0,0,0,0,0,0,126,-10,-5,-2,126,126 �)��sound:�printon �nonotes>0�PRINTNOTE ��� � �� Error Handler � �<>17�:�" at line ";�:�TRB �M�4:�CEN("Do you want to go on to",12):�CEN("the next program (Y/N)? ",13) ��YN �Y%=0��:�DF@ *FX4,0 *FX12,0 &�4 0�'"Play tape"' :�"" D� N X��PRINTNOTE b �Y%,N% l�CURX>1200��STAVE v�5 � �sound �,outptr=outptr+1:�outptr>bufsiz �outptr=1 �#N%=buf?outptr:nonotes=nonotes-1 ��check for octave change �/�N%>99�N%<128�printoffset=454+(N%-100)*84:� �CURX=CURX+32 � �sound �Y%=printoffset+(A?N% �128) �@�A?N%>127�CURX,Y%-24:�(230):�CURX,Y%+8:�(231):CURX=CURX+32 � �sound �Q�CURX,Y%:�(224):�Y%>718�CURX,Y%-24:�CURX,Y%-72��CURX+24,Y%-16:�CURX+24,Y%+32 � �sound �A�Y%<647��J%=646�Y%�-24:�CURX-8,J%-20:�CURX+36,J%-20:�J%:�TVC :�Y%>789��J%=790�Y%�24:�CURX-8,J%-20:�CURX+36,J%-20:�J% �sound CURX=CURX+32 �4:� * 4 ��MUSCH >& �23,224,0,0,0,&3C,&7E,&FE,&FC,&78 H& �23,225,2,2,2,&3E,&42,&82,&84,&78 R �23,226,2,2,2,2,2,2,2,2 \* �23,230,&27,&3F,&FF,&FC,&E4,&24,&20,0 f* �23,231,4,&24,&27,&3F,&FF,&FC,&E4,&24 p �23,232,0,0,0,0,0,&3F,0,0 z �23,233,0,0,0,0,0,&FC,0,0 �( �23,234,&38,&7C,&7C,&78,&30,&19,6,0 �% �23,235,&E6,&67,&33,&19,&F,3,0,0 �, �23,236,&38,&78,&71,&73,&E7,&E6,&E6,&C6 � �23,237,1,1,1,3,7,6,&E,&1C � �23,238,1,1,1,1,1,1,1,1 � �23,239,0,0,0,0,0,0,0,1 �( �23,240,&20,&20,&20,&20,&40,&80,0,0 �, �23,241,&43,&43,&46,&4C,&58,&E0,&20,&20 �, �23,242,&80,&F0,&F8,&FC,&4E,&47,&43,&43 �, �23,243,&C0,&C0,&80,&80,&80,&80,&80,&80 �, �23,244,&84,&0C,&0C,&18,&18,&38,&30,&60 �( �23,245,0,0,&10,&38,&6C,&C4,&C4,&84 �+�23,246,&10,&30,&70,&FF,&FF,&70,&30,&10 #�23,247,8,&C,&E,&FF,&FF,&E,&C,8 +�23,248,&FF,&FF,&FF,&FF,&FF,&FF,&FF,&FF +�23,249,&18,&18,&18,&18,&FF,&7E,&3C,&18 $+�23,250,&18,&3C,&7E,&FF,&18,&18,&18,&18 . � 8 B ��STAVE L �4,28,3,15,39,0 V � ` �26,5:�sound j �0,650:�1279,650:�sound t �0,674:�1279,674:�sound ~ �0,698:�1279,698:�sound � �0,722:�1279,722:�sound � �0,746:�1279,746:�sound �CURX=88 �� � � ��CLEF � �X%,Y%,I% � �5 � X%=8:Y%=638 � �I%=234�245 � �X%,Y%:�(I%) � Y%=Y%+32 �I%=239�X%=40:Y%=638 �I% �4 CURX=88 ( � 2 < ��INIT F �I%,J% P �K%(17):�I%=0�17:�K%(I%):�I% ZR�-99,-98,-82,-67,-83,-68,-100,-84,-101,-86,-70,-102,-71,-103,-87,-104,-105,-73 d� A 17:�I%=1�17:�A?I%:�I% n>�0,128,12,24,152,36,164,48,60,188,72,200,84,212,96,108,236 x3octno=2:playoffset=2*48-59:printoffset=454+84*2 �N%=0 �vol=-15 � env=1 �last=-99 � bufsiz=20 �� buf bufsiz �inptr=0:outptr=0:nonotes=0 �/key$="ZSXCFVGBNJMK,L./:"+�(139)+�(138)+"PO" ��col(7):�I=1�6:�col(I):� ��5,0,4,1,2,3 � printon=� � � � ��keybd �0,1 0 �160,16:�160,350:�1120,350:�1120,16:�160,16 "; �5:�0,1:�0,128:�192,82:�"Z X C V B N M , . /" ,# �I=256�1024�96:�I,16:�I,350:�I 6�black(232) @�black(424):�black(520) J'�black(712):�black(808):�black(904) T�black(1096) ^ �0,0 h �5 r�240,176:�"S" |�432,176:�"F" ��528,176:�"G" ��720,176:�"J" ��816,176:�"K" ��912,176:�"L" ��1104,176:�":" � �4 � �0,1 � � � � ��black(X%) �J�X%,350:�X%,125:�X%+48,125:�85,X%,350:�X%+48,125:�X%+48,350:�85,X%,350 � � � ��sound �N% �nonotes<bufsiz �TzG &*FX15,1 0� :note%=�0 D,�note%>=�"a"�note%<=�"z" note%=note%�&DF N#�note%=-1�N%=0�N%=�key$,�note%) X�note%=-1��(last)� b��N%<18��DlG��N%=18��dZG��N%=19��T`H��N%=20�printon=�:printoffset=454+84*octno:inptr=0:outptr=0:nonotes=0:� ��N%=21printon=�:� l�&11,0,0,0 vlast=K%(N%) �� N%=0� �-pitch=N%*4+playoffset:�pitch>255�pitch<1� �0�printon inptr=inptr+1:�inptr>bufsiz inptr=1 � �dFG ��inptr<>outptr �dFG �1last=-99:�inptr=1inptr=bufsiz � inptr=inptr-1 �� �<�1,vol,pitch,255:�printon nonotes=nonotes+1:buf?inptr=N% �� �"octno=octno+1:�octno>4�octno=4 �1playoffset=48*octno-59:�19,1,col(octno),0,0,0 �"�4:�15,18)"Octave ";octno;:�5 ��printon � 'inptr=inptr+1:�inptr>bufsiz inptr=1 )nonotes=nonotes+1:buf?inptr=100+octno � "octno=octno-1:�octno<1�octno=1 * �ddG 4 >��YN H Y%=-1 RX%=� \!X%=X%�&DF:�X%<>78�X%<>89��DRH fY%=1:�X%=78�Y%=0 p�X%,8:� z �$��CEN(A$,Y%) �19-�A$/2,Y%)A$;:� � ���OFF:�23;8202;0;0;0;:� �3��INITDBL $MAP=�255,�0):MAP?255=0:CHARPTR=224:� � �b��DBL(A$,y%)B$="":C$="":�CH%=1��A$:K%=�CHAR(��A$,CH%,1)):B$=B$+�K%:C$=C$+�(K%+1):�:K%=19-�A$/2 �3DBL$=�31+�K%+�y%+B$+�31+�K%+�(y%+1)+C$:�DBL$;:� � �lݤCHAR(C%)�MAP?C%�=MAP?C%��CHARPTR>=256� �MAP?C%=CHARPTR:?BLOCK=C%:A%=10:X%=BLOCK:Y%=BLOCK � 256:�osword �R�J%=0�1:�23,CHARPTR+J%:�I%=2�9:�BLOCK?(J%*4+I%�2):�,:CHARPTR=CHARPTR+2:=MAP?C% �
00000000 0d 00 0a 0b f4 20 50 49 41 4e 4f 0d 00 14 24 f4 |..... PIANO...$.| 00000010 20 45 6c 65 63 74 72 6f 6e 20 49 6e 74 72 6f 64 | Electron Introd| 00000020 75 63 74 6f 72 79 20 43 61 73 73 65 74 74 65 0d |uctory Cassette.| 00000030 00 1e 11 f4 20 41 75 74 68 6f 72 20 47 2e 56 2e |.... Author G.V.| 00000040 0d 00 28 07 ee 85 f9 0d 00 32 99 e7 4d 25 3d 31 |..(......2..M%=1| 00000050 32 33 34 8c 8d 54 7c 40 8b e7 4d 25 3d 35 36 37 |234..T|@..M%=567| 00000060 38 8c 8d 44 46 40 8b eb 35 3a ef 31 39 2c 33 2c |8..DF@..5:.19,3,| 00000070 34 3b 30 3b 3a fb 32 3a f1 8a 30 2c 35 29 22 44 |4;0;:.2:..0,5)"D| 00000080 6f 65 73 20 79 6f 75 72 20 63 61 73 73 65 74 74 |oes your cassett| 00000090 65 22 27 27 22 72 65 63 6f 72 64 65 72 20 68 61 |e"''"recorder ha| 000000a0 76 65 20 6d 6f 74 6f 72 22 27 27 22 63 6f 6e 74 |ve motor"''"cont| 000000b0 72 6f 6c 20 28 59 2f 4e 29 3f 22 3b 3a e7 28 a5 |rol (Y/N)?";:.(.| 000000c0 80 26 44 46 29 3d 97 22 59 22 8c 4d 25 3d 35 36 |.&DF)=."Y".M%=56| 000000d0 37 38 3a e5 8d 44 46 40 8b 4d 25 3d 31 32 33 34 |78:..DF@.M%=1234| 000000e0 0d 00 3c 82 d4 31 2c 2d 31 35 2c 31 32 31 2c 36 |..<..1,-15,121,6| 000000f0 30 3a eb 35 3a ef 31 39 2c 33 2c 34 3b 30 3b 3a |0:.5:.19,3,4;0;:| 00000100 fb 31 3a f1 8a 38 2c 39 29 22 53 54 4f 50 22 3b |.1:..8,9)"STOP";| 00000110 3a fb 33 3a f1 8a 36 2c 31 33 29 22 74 68 65 20 |:.3:..6,13)"the | 00000120 74 61 70 65 22 3a fb 32 3a f1 8a 34 2c 32 35 29 |tape":.2:..4,25)| 00000130 22 50 72 65 73 73 20 53 50 41 43 45 22 8a 34 2c |"Press SPACE".4,| 00000140 32 37 29 22 74 6f 20 63 6f 6e 74 69 6e 75 65 22 |27)"to continue"| 00000150 3a f5 fd a5 3d 33 32 3a d4 26 31 31 2c 30 2c 30 |:...=32:.&11,0,0| 00000160 2c 30 0d 00 46 0d ee 85 d8 3a e5 8d 44 50 40 0d |,0..F....:..DP@.| 00000170 00 50 15 de 20 4d 41 50 20 32 35 35 2c 42 4c 4f |.P.. MAP 255,BLO| 00000180 43 4b 20 38 0d 00 5a 10 6f 73 77 6f 72 64 3d 26 |CK 8..Z.osword=&| 00000190 46 46 46 31 0d 00 64 2d eb 34 3a f2 4f 46 46 3a |FFF1..d-.4:.OFF:| 000001a0 f2 49 4e 49 54 44 42 4c 3a f2 44 42 4c 28 22 50 |.INITDBL:.DBL("P| 000001b0 69 61 6e 6f 22 2c 31 32 29 3a 4e 25 3d a6 35 30 |iano",12):N%=.50| 000001c0 30 0d 00 6e 0b ee 85 e5 8d 64 74 41 0d 00 78 1b |0..n.....dtA..x.| 000001d0 eb 34 3a f2 4f 46 46 3a f2 44 42 4c 28 22 50 69 |.4:.OFF:.DBL("Pi| 000001e0 61 6e 6f 22 2c 32 29 0d 00 82 08 f1 27 27 27 0d |ano",2).....'''.| 000001f0 00 8c 2b f1 22 20 20 20 20 50 6c 61 79 20 74 68 |..+." Play th| 00000200 65 20 62 6f 74 74 6f 6d 20 74 77 6f 20 72 6f 77 |e bottom two row| 00000210 73 20 6f 66 20 6b 65 79 73 22 0d 00 96 2b f1 22 |s of keys"...+."| 00000220 20 20 20 20 6c 69 6b 65 20 20 61 20 20 70 69 61 | like a pia| 00000230 6e 6f 20 6b 65 79 62 6f 61 72 64 2e 20 54 68 65 |no keyboard. The| 00000240 20 27 43 27 22 0d 00 a0 2b f1 22 20 20 20 20 6b | 'C'"...+." k| 00000250 65 79 20 69 73 20 6d 69 64 64 6c 65 20 43 3b 20 |ey is middle C; | 00000260 74 68 65 20 6b 65 79 73 20 69 6e 20 74 68 65 22 |the keys in the"| 00000270 0d 00 aa 2b f1 22 20 20 20 20 73 65 63 6f 6e 64 |...+." second| 00000280 20 20 72 6f 77 20 20 72 65 70 72 65 73 65 6e 74 | row represent| 00000290 20 74 68 65 20 62 6c 61 63 6b 22 0d 00 b4 2a f1 | the black"...*.| 000002a0 22 20 20 20 20 6e 6f 74 65 73 2c 20 61 73 20 73 |" notes, as s| 000002b0 68 6f 77 6e 20 6f 6e 20 74 68 65 20 73 63 72 65 |hown on the scre| 000002c0 65 6e 2e 22 27 0d 00 be 2b f1 22 20 20 20 20 55 |en."'...+." U| 000002d0 73 65 20 20 74 68 65 20 75 70 2d 61 72 72 6f 77 |se the up-arrow| 000002e0 20 61 6e 64 20 64 6f 77 6e 2d 61 72 72 6f 77 22 | and down-arrow"| 000002f0 0d 00 c8 2b f1 22 20 20 20 20 6b 65 79 73 20 20 |...+." keys | 00000300 74 6f 20 20 63 68 61 6e 67 65 20 74 68 65 20 6f |to change the o| 00000310 63 74 61 76 65 2e 20 55 73 65 22 0d 00 d2 2b f1 |ctave. Use"...+.| 00000320 22 20 20 20 20 27 50 27 20 61 6e 64 20 27 4f 27 |" 'P' and 'O'| 00000330 20 20 74 6f 20 20 74 75 72 6e 20 6f 6e 20 61 6e | to turn on an| 00000340 64 20 6f 66 66 22 0d 00 dc 2b f1 22 20 20 20 20 |d off"...+." | 00000350 74 68 65 20 20 64 69 73 70 6c 61 79 20 6f 66 20 |the display of | 00000360 6d 75 73 69 63 61 6c 20 6e 6f 74 61 74 69 6f 6e |musical notation| 00000370 22 0d 00 e6 24 f1 22 20 20 20 20 61 74 20 74 68 |"...$." at th| 00000380 65 20 74 6f 70 20 6f 66 20 74 68 65 20 73 63 72 |e top of the scr| 00000390 65 65 6e 2e 22 0d 00 f0 25 f1 8a 38 2c 32 39 29 |een."...%..8,29)| 000003a0 22 50 72 65 73 73 20 53 50 41 43 45 20 74 6f 20 |"Press SPACE to | 000003b0 63 6f 6e 74 69 6e 75 65 22 3b 0d 00 fa 0b 2a 46 |continue";....*F| 000003c0 58 31 35 2c 31 0d 01 04 0a f5 fd a5 3d 33 32 0d |X15,1.......=32.| 000003d0 01 0e 05 20 0d 01 18 06 eb 34 0d 01 22 0e ef 31 |... .....4.."..1| 000003e0 39 2c 30 2c 37 3b 30 3b 0d 01 2c 0e ef 31 39 2c |9,0,7;0;..,..19,| 000003f0 31 2c 30 3b 30 3b 0d 01 36 08 f2 4f 46 46 0d 01 |1,0;0;..6..OFF..| 00000400 40 0b 2a 46 58 31 31 2c 30 0d 01 4a 0a 2a 46 58 |@.*FX11,0..J.*FX| 00000410 34 2c 31 0d 01 54 09 f2 49 4e 49 54 0d 01 5e 0a |4,1..T..INIT..^.| 00000420 f2 4d 55 53 43 48 0d 01 68 10 f2 53 54 41 56 45 |.MUSCH..h..STAVE| 00000430 3a f2 43 4c 45 46 0d 01 72 0b 20 f2 6b 65 79 62 |:.CLEF..r. .keyb| 00000440 64 0d 01 7c 1f ef 34 3a f1 8a 31 35 2c 31 38 29 |d..|..4:..15,18)| 00000450 22 4f 63 74 61 76 65 20 22 3b 6f 63 74 6e 6f 3b |"Octave ";octno;| 00000460 0d 01 86 21 f1 8a 32 32 2c 31 37 29 bd 28 32 35 |...!..22,17).(25| 00000470 30 29 3b 8a 32 32 2c 31 39 29 bd 28 32 34 39 29 |0);.22,19).(249)| 00000480 3b 0d 01 90 2d f1 8a 31 2c 31 38 29 22 50 20 20 |;...-..1,18)"P | 00000490 50 72 69 6e 74 20 4f 4e 22 8a 31 2c 31 39 29 22 |Print ON".1,19)"| 000004a0 4f 20 20 50 72 69 6e 74 20 4f 46 46 22 3a 0d 01 |O Print OFF":..| 000004b0 9a 2b 20 20 e2 20 31 2c 31 30 2c 30 2c 30 2c 30 |.+ . 1,10,0,0,0| 000004c0 2c 30 2c 30 2c 30 2c 36 33 2c 31 30 2c 30 2c 2d |,0,0,0,63,10,0,-| 000004d0 36 33 2c 36 33 2c 31 32 36 0d 01 a4 2b 20 20 e2 |63,63,126...+ .| 000004e0 20 32 2c 31 30 2c 30 2c 30 2c 30 2c 30 2c 30 2c | 2,10,0,0,0,0,0,| 000004f0 30 2c 36 33 2c 36 33 2c 30 2c 2d 36 33 2c 36 33 |0,63,63,0,-63,63| 00000500 2c 31 32 36 0d 01 ae 2d 20 20 e2 20 33 2c 31 30 |,126...- . 3,10| 00000510 2c 30 2c 30 2c 30 2c 30 2c 30 2c 30 2c 31 32 36 |,0,0,0,0,0,0,126| 00000520 2c 2d 38 2c 2d 34 2c 2d 31 2c 31 32 36 2c 31 30 |,-8,-4,-1,126,10| 00000530 30 0d 01 b8 2e 20 20 e2 20 34 2c 31 30 2c 30 2c |0.... . 4,10,0,| 00000540 30 2c 30 2c 30 2c 30 2c 30 2c 31 32 36 2c 2d 31 |0,0,0,0,0,126,-1| 00000550 30 2c 2d 35 2c 2d 32 2c 31 32 36 2c 31 32 36 0d |0,-5,-2,126,126.| 00000560 01 c2 29 f5 f2 73 6f 75 6e 64 3a e7 70 72 69 6e |..)..sound:.prin| 00000570 74 6f 6e 20 80 6e 6f 6e 6f 74 65 73 3e 30 f2 50 |ton .nonotes>0.P| 00000580 52 49 4e 54 4e 4f 54 45 0d 01 cc 06 fd a3 0d 01 |RINTNOTE........| 00000590 d6 05 20 0d 01 e0 13 f4 20 45 72 72 6f 72 20 48 |.. ..... Error H| 000005a0 61 6e 64 6c 65 72 0d 01 ea 20 e7 9f 3c 3e 31 37 |andler... ..<>17| 000005b0 f6 3a f1 22 20 61 74 20 6c 69 6e 65 20 22 3b 9e |.:." at line ";.| 000005c0 3a e5 8d 54 52 42 0d 01 f4 4d eb 34 3a f2 43 45 |:..TRB...M.4:.CE| 000005d0 4e 28 22 44 6f 20 79 6f 75 20 77 61 6e 74 20 74 |N("Do you want t| 000005e0 6f 20 67 6f 20 6f 6e 20 74 6f 22 2c 31 32 29 3a |o go on to",12):| 000005f0 f2 43 45 4e 28 22 74 68 65 20 6e 65 78 74 20 70 |.CEN("the next p| 00000600 72 6f 67 72 61 6d 20 28 59 2f 4e 29 3f 20 22 2c |rogram (Y/N)? ",| 00000610 31 33 29 0d 01 fe 07 f2 59 4e 0d 02 08 11 e7 59 |13).....YN.....Y| 00000620 25 3d 30 8c d8 3a e5 8d 44 46 40 0d 02 12 0a 2a |%=0..:..DF@....*| 00000630 46 58 34 2c 30 0d 02 1c 0b 2a 46 58 31 32 2c 30 |FX4,0....*FX12,0| 00000640 0d 02 26 06 eb 34 0d 02 30 12 f1 27 22 50 6c 61 |..&..4..0..'"Pla| 00000650 79 20 74 61 70 65 22 27 0d 02 3a 07 d7 22 22 0d |y tape"'..:.."".| 00000660 02 44 05 e0 0d 02 4e 05 20 0d 02 58 0f dd f2 50 |.D....N. ..X...P| 00000670 52 49 4e 54 4e 4f 54 45 0d 02 62 0a ea 59 25 2c |RINTNOTE..b..Y%,| 00000680 4e 25 0d 02 6c 15 e7 43 55 52 58 3e 31 32 30 30 |N%..l..CURX>1200| 00000690 8c f2 53 54 41 56 45 0d 02 76 06 ef 35 0d 02 80 |..STAVE..v..5...| 000006a0 0a f2 73 6f 75 6e 64 0d 02 8a 2c 6f 75 74 70 74 |..sound...,outpt| 000006b0 72 3d 6f 75 74 70 74 72 2b 31 3a e7 6f 75 74 70 |r=outptr+1:.outp| 000006c0 74 72 3e 62 75 66 73 69 7a 20 8c 6f 75 74 70 74 |tr>bufsiz .outpt| 000006d0 72 3d 31 0d 02 94 23 4e 25 3d 62 75 66 3f 6f 75 |r=1...#N%=buf?ou| 000006e0 74 70 74 72 3a 6e 6f 6e 6f 74 65 73 3d 6e 6f 6e |tptr:nonotes=non| 000006f0 6f 74 65 73 2d 31 0d 02 9e 1c f4 63 68 65 63 6b |otes-1.....check| 00000700 20 66 6f 72 20 6f 63 74 61 76 65 20 63 68 61 6e | for octave chan| 00000710 67 65 0d 02 a8 2f e7 4e 25 3e 39 39 80 4e 25 3c |ge.../.N%>99.N%<| 00000720 31 32 38 8c 70 72 69 6e 74 6f 66 66 73 65 74 3d |128.printoffset=| 00000730 34 35 34 2b 28 4e 25 2d 31 30 30 29 2a 38 34 3a |454+(N%-100)*84:| 00000740 e1 0d 02 b2 10 43 55 52 58 3d 43 55 52 58 2b 33 |.....CURX=CURX+3| 00000750 32 0d 02 bc 0a f2 73 6f 75 6e 64 0d 02 c6 1e 59 |2.....sound....Y| 00000760 25 3d 70 72 69 6e 74 6f 66 66 73 65 74 2b 28 41 |%=printoffset+(A| 00000770 3f 4e 25 20 83 31 32 38 29 0d 02 d0 40 e7 41 3f |?N% .128)...@.A?| 00000780 4e 25 3e 31 32 37 ec 43 55 52 58 2c 59 25 2d 32 |N%>127.CURX,Y%-2| 00000790 34 3a f1 bd 28 32 33 30 29 3a ec 43 55 52 58 2c |4:..(230):.CURX,| 000007a0 59 25 2b 38 3a f1 bd 28 32 33 31 29 3a 43 55 52 |Y%+8:..(231):CUR| 000007b0 58 3d 43 55 52 58 2b 33 32 0d 02 da 0a f2 73 6f |X=CURX+32.....so| 000007c0 75 6e 64 0d 02 e4 51 ec 43 55 52 58 2c 59 25 3a |und...Q.CURX,Y%:| 000007d0 f1 bd 28 32 32 34 29 3a e7 59 25 3e 37 31 38 ec |..(224):.Y%>718.| 000007e0 43 55 52 58 2c 59 25 2d 32 34 3a df 43 55 52 58 |CURX,Y%-24:.CURX| 000007f0 2c 59 25 2d 37 32 8b ec 43 55 52 58 2b 32 34 2c |,Y%-72..CURX+24,| 00000800 59 25 2d 31 36 3a df 43 55 52 58 2b 32 34 2c 59 |Y%-16:.CURX+24,Y| 00000810 25 2b 33 32 0d 02 ee 0a f2 73 6f 75 6e 64 0d 02 |%+32.....sound..| 00000820 f8 41 e7 59 25 3c 36 34 37 8c e3 4a 25 3d 36 34 |.A.Y%<647..J%=64| 00000830 36 b8 59 25 88 2d 32 34 3a ec 43 55 52 58 2d 38 |6.Y%.-24:.CURX-8| 00000840 2c 4a 25 2d 32 30 3a df 43 55 52 58 2b 33 36 2c |,J%-20:.CURX+36,| 00000850 4a 25 2d 32 30 3a ed 4a 25 3a e5 8d 54 56 43 0d |J%-20:.J%:..TVC.| 00000860 03 02 3a e7 59 25 3e 37 38 39 8c e3 4a 25 3d 37 |..:.Y%>789..J%=7| 00000870 39 30 b8 59 25 88 32 34 3a ec 43 55 52 58 2d 38 |90.Y%.24:.CURX-8| 00000880 2c 4a 25 2d 32 30 3a df 43 55 52 58 2b 33 36 2c |,J%-20:.CURX+36,| 00000890 4a 25 2d 32 30 3a ed 4a 25 0d 03 0c 0a f2 73 6f |J%-20:.J%.....so| 000008a0 75 6e 64 0d 03 16 10 43 55 52 58 3d 43 55 52 58 |und....CURX=CURX| 000008b0 2b 33 32 0d 03 20 08 ef 34 3a e1 0d 03 2a 05 20 |+32.. ..4:...*. | 000008c0 0d 03 34 0c 20 dd f2 4d 55 53 43 48 0d 03 3e 26 |..4. ..MUSCH..>&| 000008d0 20 ef 32 33 2c 32 32 34 2c 30 2c 30 2c 30 2c 26 | .23,224,0,0,0,&| 000008e0 33 43 2c 26 37 45 2c 26 46 45 2c 26 46 43 2c 26 |3C,&7E,&FE,&FC,&| 000008f0 37 38 0d 03 48 26 20 ef 32 33 2c 32 32 35 2c 32 |78..H& .23,225,2| 00000900 2c 32 2c 32 2c 26 33 45 2c 26 34 32 2c 26 38 32 |,2,2,&3E,&42,&82| 00000910 2c 26 38 34 2c 26 37 38 0d 03 52 1c 20 ef 32 33 |,&84,&78..R. .23| 00000920 2c 32 32 36 2c 32 2c 32 2c 32 2c 32 2c 32 2c 32 |,226,2,2,2,2,2,2| 00000930 2c 32 2c 32 0d 03 5c 2a 20 ef 32 33 2c 32 33 30 |,2,2..\* .23,230| 00000940 2c 26 32 37 2c 26 33 46 2c 26 46 46 2c 26 46 43 |,&27,&3F,&FF,&FC| 00000950 2c 26 45 34 2c 26 32 34 2c 26 32 30 2c 30 0d 03 |,&E4,&24,&20,0..| 00000960 66 2a 20 ef 32 33 2c 32 33 31 2c 34 2c 26 32 34 |f* .23,231,4,&24| 00000970 2c 26 32 37 2c 26 33 46 2c 26 46 46 2c 26 46 43 |,&27,&3F,&FF,&FC| 00000980 2c 26 45 34 2c 26 32 34 0d 03 70 1e 20 ef 32 33 |,&E4,&24..p. .23| 00000990 2c 32 33 32 2c 30 2c 30 2c 30 2c 30 2c 30 2c 26 |,232,0,0,0,0,0,&| 000009a0 33 46 2c 30 2c 30 0d 03 7a 1e 20 ef 32 33 2c 32 |3F,0,0..z. .23,2| 000009b0 33 33 2c 30 2c 30 2c 30 2c 30 2c 30 2c 26 46 43 |33,0,0,0,0,0,&FC| 000009c0 2c 30 2c 30 0d 03 84 28 20 ef 32 33 2c 32 33 34 |,0,0...( .23,234| 000009d0 2c 26 33 38 2c 26 37 43 2c 26 37 43 2c 26 37 38 |,&38,&7C,&7C,&78| 000009e0 2c 26 33 30 2c 26 31 39 2c 36 2c 30 0d 03 8e 25 |,&30,&19,6,0...%| 000009f0 20 ef 32 33 2c 32 33 35 2c 26 45 36 2c 26 36 37 | .23,235,&E6,&67| 00000a00 2c 26 33 33 2c 26 31 39 2c 26 46 2c 33 2c 30 2c |,&33,&19,&F,3,0,| 00000a10 30 0d 03 98 2c 20 ef 32 33 2c 32 33 36 2c 26 33 |0..., .23,236,&3| 00000a20 38 2c 26 37 38 2c 26 37 31 2c 26 37 33 2c 26 45 |8,&78,&71,&73,&E| 00000a30 37 2c 26 45 36 2c 26 45 36 2c 26 43 36 0d 03 a2 |7,&E6,&E6,&C6...| 00000a40 1f 20 ef 32 33 2c 32 33 37 2c 31 2c 31 2c 31 2c |. .23,237,1,1,1,| 00000a50 33 2c 37 2c 36 2c 26 45 2c 26 31 43 0d 03 ac 1c |3,7,6,&E,&1C....| 00000a60 20 ef 32 33 2c 32 33 38 2c 31 2c 31 2c 31 2c 31 | .23,238,1,1,1,1| 00000a70 2c 31 2c 31 2c 31 2c 31 0d 03 b6 1c 20 ef 32 33 |,1,1,1,1.... .23| 00000a80 2c 32 33 39 2c 30 2c 30 2c 30 2c 30 2c 30 2c 30 |,239,0,0,0,0,0,0| 00000a90 2c 30 2c 31 0d 03 c0 28 20 ef 32 33 2c 32 34 30 |,0,1...( .23,240| 00000aa0 2c 26 32 30 2c 26 32 30 2c 26 32 30 2c 26 32 30 |,&20,&20,&20,&20| 00000ab0 2c 26 34 30 2c 26 38 30 2c 30 2c 30 0d 03 ca 2c |,&40,&80,0,0...,| 00000ac0 20 ef 32 33 2c 32 34 31 2c 26 34 33 2c 26 34 33 | .23,241,&43,&43| 00000ad0 2c 26 34 36 2c 26 34 43 2c 26 35 38 2c 26 45 30 |,&46,&4C,&58,&E0| 00000ae0 2c 26 32 30 2c 26 32 30 0d 03 d4 2c 20 ef 32 33 |,&20,&20..., .23| 00000af0 2c 32 34 32 2c 26 38 30 2c 26 46 30 2c 26 46 38 |,242,&80,&F0,&F8| 00000b00 2c 26 46 43 2c 26 34 45 2c 26 34 37 2c 26 34 33 |,&FC,&4E,&47,&43| 00000b10 2c 26 34 33 0d 03 de 2c 20 ef 32 33 2c 32 34 33 |,&43..., .23,243| 00000b20 2c 26 43 30 2c 26 43 30 2c 26 38 30 2c 26 38 30 |,&C0,&C0,&80,&80| 00000b30 2c 26 38 30 2c 26 38 30 2c 26 38 30 2c 26 38 30 |,&80,&80,&80,&80| 00000b40 0d 03 e8 2c 20 ef 32 33 2c 32 34 34 2c 26 38 34 |..., .23,244,&84| 00000b50 2c 26 30 43 2c 26 30 43 2c 26 31 38 2c 26 31 38 |,&0C,&0C,&18,&18| 00000b60 2c 26 33 38 2c 26 33 30 2c 26 36 30 0d 03 f2 28 |,&38,&30,&60...(| 00000b70 20 ef 32 33 2c 32 34 35 2c 30 2c 30 2c 26 31 30 | .23,245,0,0,&10| 00000b80 2c 26 33 38 2c 26 36 43 2c 26 43 34 2c 26 43 34 |,&38,&6C,&C4,&C4| 00000b90 2c 26 38 34 0d 03 fc 2b ef 32 33 2c 32 34 36 2c |,&84...+.23,246,| 00000ba0 26 31 30 2c 26 33 30 2c 26 37 30 2c 26 46 46 2c |&10,&30,&70,&FF,| 00000bb0 26 46 46 2c 26 37 30 2c 26 33 30 2c 26 31 30 0d |&FF,&70,&30,&10.| 00000bc0 04 06 23 ef 32 33 2c 32 34 37 2c 38 2c 26 43 2c |..#.23,247,8,&C,| 00000bd0 26 45 2c 26 46 46 2c 26 46 46 2c 26 45 2c 26 43 |&E,&FF,&FF,&E,&C| 00000be0 2c 38 0d 04 10 2b ef 32 33 2c 32 34 38 2c 26 46 |,8...+.23,248,&F| 00000bf0 46 2c 26 46 46 2c 26 46 46 2c 26 46 46 2c 26 46 |F,&FF,&FF,&FF,&F| 00000c00 46 2c 26 46 46 2c 26 46 46 2c 26 46 46 0d 04 1a |F,&FF,&FF,&FF...| 00000c10 2b ef 32 33 2c 32 34 39 2c 26 31 38 2c 26 31 38 |+.23,249,&18,&18| 00000c20 2c 26 31 38 2c 26 31 38 2c 26 46 46 2c 26 37 45 |,&18,&18,&FF,&7E| 00000c30 2c 26 33 43 2c 26 31 38 0d 04 24 2b ef 32 33 2c |,&3C,&18..$+.23,| 00000c40 32 35 30 2c 26 31 38 2c 26 33 43 2c 26 37 45 2c |250,&18,&3C,&7E,| 00000c50 26 46 46 2c 26 31 38 2c 26 31 38 2c 26 31 38 2c |&FF,&18,&18,&18,| 00000c60 26 31 38 0d 04 2e 06 20 e1 0d 04 38 06 20 20 0d |&18.... ...8. .| 00000c70 04 42 0c 20 dd f2 53 54 41 56 45 0d 04 4c 14 20 |.B. ..STAVE..L. | 00000c80 ef 34 2c 32 38 2c 33 2c 31 35 2c 33 39 2c 30 0d |.4,28,3,15,39,0.| 00000c90 04 56 06 20 db 0d 04 60 11 20 ef 32 36 2c 35 3a |.V. ...`. .26,5:| 00000ca0 f2 73 6f 75 6e 64 0d 04 6a 1c 20 ec 30 2c 36 35 |.sound..j. .0,65| 00000cb0 30 3a df 31 32 37 39 2c 36 35 30 3a f2 73 6f 75 |0:.1279,650:.sou| 00000cc0 6e 64 0d 04 74 1c 20 ec 30 2c 36 37 34 3a df 31 |nd..t. .0,674:.1| 00000cd0 32 37 39 2c 36 37 34 3a f2 73 6f 75 6e 64 0d 04 |279,674:.sound..| 00000ce0 7e 1c 20 ec 30 2c 36 39 38 3a df 31 32 37 39 2c |~. .0,698:.1279,| 00000cf0 36 39 38 3a f2 73 6f 75 6e 64 0d 04 88 1c 20 ec |698:.sound.... .| 00000d00 30 2c 37 32 32 3a df 31 32 37 39 2c 37 32 32 3a |0,722:.1279,722:| 00000d10 f2 73 6f 75 6e 64 0d 04 92 1c 20 ec 30 2c 37 34 |.sound.... .0,74| 00000d20 36 3a df 31 32 37 39 2c 37 34 36 3a f2 73 6f 75 |6:.1279,746:.sou| 00000d30 6e 64 0d 04 9c 0b 43 55 52 58 3d 38 38 0d 04 a6 |nd....CURX=88...| 00000d40 05 e1 0d 04 b0 05 20 0d 04 ba 0a dd f2 43 4c 45 |...... ......CLE| 00000d50 46 0d 04 c4 0d ea 58 25 2c 59 25 2c 49 25 0d 04 |F.....X%,Y%,I%..| 00000d60 ce 07 20 ef 35 0d 04 d8 10 20 58 25 3d 38 3a 59 |.. .5.... X%=8:Y| 00000d70 25 3d 36 33 38 0d 04 e2 10 20 e3 49 25 3d 32 33 |%=638.... .I%=23| 00000d80 34 b8 32 34 35 0d 04 ec 14 20 20 20 ec 58 25 2c |4.245.... .X%,| 00000d90 59 25 3a f1 bd 28 49 25 29 0d 04 f6 0f 20 20 20 |Y%:..(I%).... | 00000da0 59 25 3d 59 25 2b 33 32 0d 05 00 1b 20 20 20 e7 |Y%=Y%+32.... .| 00000db0 49 25 3d 32 33 39 8c 58 25 3d 34 30 3a 59 25 3d |I%=239.X%=40:Y%=| 00000dc0 36 33 38 0d 05 0a 0a 20 20 20 ed 49 25 0d 05 14 |638.... .I%...| 00000dd0 07 20 ef 34 0d 05 1e 0c 20 43 55 52 58 3d 38 38 |. .4.... CURX=88| 00000de0 0d 05 28 06 20 e1 0d 05 32 06 20 20 0d 05 3c 0b |..(. ...2. ..<.| 00000df0 20 dd f2 49 4e 49 54 0d 05 46 0b 20 ea 49 25 2c | ..INIT..F. .I%,| 00000e00 4a 25 0d 05 50 20 de 4b 25 28 31 37 29 3a e3 49 |J%..P .K%(17):.I| 00000e10 25 3d 30 b8 31 37 3a f3 4b 25 28 49 25 29 3a ed |%=0.17:.K%(I%):.| 00000e20 49 25 0d 05 5a 52 dc 2d 39 39 2c 2d 39 38 2c 2d |I%..ZR.-99,-98,-| 00000e30 38 32 2c 2d 36 37 2c 2d 38 33 2c 2d 36 38 2c 2d |82,-67,-83,-68,-| 00000e40 31 30 30 2c 2d 38 34 2c 2d 31 30 31 2c 2d 38 36 |100,-84,-101,-86| 00000e50 2c 2d 37 30 2c 2d 31 30 32 2c 2d 37 31 2c 2d 31 |,-70,-102,-71,-1| 00000e60 30 33 2c 2d 38 37 2c 2d 31 30 34 2c 2d 31 30 35 |03,-87,-104,-105| 00000e70 2c 2d 37 33 0d 05 64 1d de 20 41 20 31 37 3a e3 |,-73..d.. A 17:.| 00000e80 49 25 3d 31 b8 31 37 3a f3 41 3f 49 25 3a ed 49 |I%=1.17:.A?I%:.I| 00000e90 25 0d 05 6e 3e dc 30 2c 31 32 38 2c 31 32 2c 32 |%..n>.0,128,12,2| 00000ea0 34 2c 31 35 32 2c 33 36 2c 31 36 34 2c 34 38 2c |4,152,36,164,48,| 00000eb0 36 30 2c 31 38 38 2c 37 32 2c 32 30 30 2c 38 34 |60,188,72,200,84| 00000ec0 2c 32 31 32 2c 39 36 2c 31 30 38 2c 32 33 36 0d |,212,96,108,236.| 00000ed0 05 78 33 6f 63 74 6e 6f 3d 32 3a 70 6c 61 79 6f |.x3octno=2:playo| 00000ee0 66 66 73 65 74 3d 32 2a 34 38 2d 35 39 3a 70 72 |ffset=2*48-59:pr| 00000ef0 69 6e 74 6f 66 66 73 65 74 3d 34 35 34 2b 38 34 |intoffset=454+84| 00000f00 2a 32 0d 05 82 08 4e 25 3d 30 0d 05 8c 0b 76 6f |*2....N%=0....vo| 00000f10 6c 3d 2d 31 35 0d 05 96 09 65 6e 76 3d 31 0d 05 |l=-15....env=1..| 00000f20 a0 0c 6c 61 73 74 3d 2d 39 39 0d 05 aa 0d 62 75 |..last=-99....bu| 00000f30 66 73 69 7a 3d 32 30 0d 05 b4 10 de 20 62 75 66 |fsiz=20..... buf| 00000f40 20 62 75 66 73 69 7a 0d 05 be 1e 69 6e 70 74 72 | bufsiz....inptr| 00000f50 3d 30 3a 6f 75 74 70 74 72 3d 30 3a 6e 6f 6e 6f |=0:outptr=0:nono| 00000f60 74 65 73 3d 30 0d 05 c8 2f 6b 65 79 24 3d 22 5a |tes=0.../key$="Z| 00000f70 53 58 43 46 56 47 42 4e 4a 4d 4b 2c 4c 2e 2f 3a |SXCFVGBNJMK,L./:| 00000f80 22 2b bd 28 31 33 39 29 2b bd 28 31 33 38 29 2b |"+.(139)+.(138)+| 00000f90 22 50 4f 22 0d 05 d2 1c de 63 6f 6c 28 37 29 3a |"PO".....col(7):| 00000fa0 e3 49 3d 31 b8 36 3a f3 63 6f 6c 28 49 29 3a ed |.I=1.6:.col(I):.| 00000fb0 0d 05 dc 10 dc 35 2c 30 2c 34 2c 31 2c 32 2c 33 |.....5,0,4,1,2,3| 00000fc0 0d 05 e6 0d 70 72 69 6e 74 6f 6e 3d b9 0d 05 f0 |....printon=....| 00000fd0 06 20 e1 0d 05 fa 06 20 20 0d 06 04 0c 20 dd f2 |. ..... .... ..| 00000fe0 6b 65 79 62 64 0d 06 0e 09 20 e6 30 2c 31 0d 06 |keybd.... .0,1..| 00000ff0 18 30 20 ec 31 36 30 2c 31 36 3a df 31 36 30 2c |.0 .160,16:.160,| 00001000 33 35 30 3a df 31 31 32 30 2c 33 35 30 3a df 31 |350:.1120,350:.1| 00001010 31 32 30 2c 31 36 3a df 31 36 30 2c 31 36 0d 06 |120,16:.160,16..| 00001020 22 3b 20 ef 35 3a e6 30 2c 31 3a e6 30 2c 31 32 |"; .5:.0,1:.0,12| 00001030 38 3a ec 31 39 32 2c 38 32 3a f1 22 5a 20 20 58 |8:.192,82:."Z X| 00001040 20 20 43 20 20 56 20 20 42 20 20 4e 20 20 4d 20 | C V B N M | 00001050 20 2c 20 20 2e 20 20 2f 22 0d 06 2c 23 20 e3 49 | , . /"..,# .I| 00001060 3d 32 35 36 b8 31 30 32 34 88 39 36 3a ec 49 2c |=256.1024.96:.I,| 00001070 31 36 3a df 49 2c 33 35 30 3a ed 49 0d 06 36 0f |16:.I,350:.I..6.| 00001080 f2 62 6c 61 63 6b 28 32 33 32 29 0d 06 40 1b f2 |.black(232)..@..| 00001090 62 6c 61 63 6b 28 34 32 34 29 3a f2 62 6c 61 63 |black(424):.blac| 000010a0 6b 28 35 32 30 29 0d 06 4a 27 f2 62 6c 61 63 6b |k(520)..J'.black| 000010b0 28 37 31 32 29 3a f2 62 6c 61 63 6b 28 38 30 38 |(712):.black(808| 000010c0 29 3a f2 62 6c 61 63 6b 28 39 30 34 29 0d 06 54 |):.black(904)..T| 000010d0 10 f2 62 6c 61 63 6b 28 31 30 39 36 29 0d 06 5e |..black(1096)..^| 000010e0 09 20 e6 30 2c 30 0d 06 68 07 20 ef 35 0d 06 72 |. .0,0..h. .5..r| 000010f0 11 ec 32 34 30 2c 31 37 36 3a f1 22 53 22 0d 06 |..240,176:."S"..| 00001100 7c 11 ec 34 33 32 2c 31 37 36 3a f1 22 46 22 0d ||..432,176:."F".| 00001110 06 86 11 ec 35 32 38 2c 31 37 36 3a f1 22 47 22 |....528,176:."G"| 00001120 0d 06 90 11 ec 37 32 30 2c 31 37 36 3a f1 22 4a |.....720,176:."J| 00001130 22 0d 06 9a 11 ec 38 31 36 2c 31 37 36 3a f1 22 |".....816,176:."| 00001140 4b 22 0d 06 a4 11 ec 39 31 32 2c 31 37 36 3a f1 |K".....912,176:.| 00001150 22 4c 22 0d 06 ae 12 ec 31 31 30 34 2c 31 37 36 |"L".....1104,176| 00001160 3a f1 22 3a 22 0d 06 b8 07 20 ef 34 0d 06 c2 09 |:.":".... .4....| 00001170 20 e6 30 2c 31 0d 06 cc 06 20 e1 0d 06 d6 05 20 | .0,1.... ..... | 00001180 0d 06 e0 10 20 dd f2 62 6c 61 63 6b 28 58 25 29 |.... ..black(X%)| 00001190 0d 06 ea 4a ec 58 25 2c 33 35 30 3a df 58 25 2c |...J.X%,350:.X%,| 000011a0 31 32 35 3a df 58 25 2b 34 38 2c 31 32 35 3a f0 |125:.X%+48,125:.| 000011b0 38 35 2c 58 25 2c 33 35 30 3a df 58 25 2b 34 38 |85,X%,350:.X%+48| 000011c0 2c 31 32 35 3a df 58 25 2b 34 38 2c 33 35 30 3a |,125:.X%+48,350:| 000011d0 f0 38 35 2c 58 25 2c 33 35 30 0d 06 f4 06 20 e1 |.85,X%,350.... .| 000011e0 0d 06 fe 05 20 0d 07 08 0b dd f2 73 6f 75 6e 64 |.... ......sound| 000011f0 0d 07 12 07 ea 4e 25 0d 07 1c 19 e7 6e 6f 6e 6f |.....N%.....nono| 00001200 74 65 73 3c 62 75 66 73 69 7a 20 e5 8d 54 7a 47 |tes<bufsiz ..TzG| 00001210 0d 07 26 0b 2a 46 58 31 35 2c 31 0d 07 30 05 e1 |..&.*FX15,1..0..| 00001220 0d 07 3a 0c 6e 6f 74 65 25 3d a6 30 0d 07 44 2c |..:.note%=.0..D,| 00001230 e7 6e 6f 74 65 25 3e 3d 97 22 61 22 e7 6e 6f 74 |.note%>=."a".not| 00001240 65 25 3c 3d 97 22 7a 22 20 6e 6f 74 65 25 3d 6e |e%<=."z" note%=n| 00001250 6f 74 65 25 80 26 44 46 0d 07 4e 23 e7 6e 6f 74 |ote%.&DF..N#.not| 00001260 65 25 3d 2d 31 8c 4e 25 3d 30 8b 4e 25 3d a7 6b |e%=-1.N%=0.N%=.k| 00001270 65 79 24 2c bd 6e 6f 74 65 25 29 0d 07 58 16 e7 |ey$,.note%)..X..| 00001280 6e 6f 74 65 25 3d 2d 31 80 a6 28 6c 61 73 74 29 |note%=-1..(last)| 00001290 e1 0d 07 62 81 e7 4e 25 3c 31 38 8c 8d 44 6c 47 |...b..N%<18..DlG| 000012a0 8b e7 4e 25 3d 31 38 8c 8d 64 5a 47 8b e7 4e 25 |..N%=18..dZG..N%| 000012b0 3d 31 39 8c 8d 54 60 48 8b e7 4e 25 3d 32 30 8c |=19..T`H..N%=20.| 000012c0 70 72 69 6e 74 6f 6e 3d b9 3a 70 72 69 6e 74 6f |printon=.:printo| 000012d0 66 66 73 65 74 3d 34 35 34 2b 38 34 2a 6f 63 74 |ffset=454+84*oct| 000012e0 6e 6f 3a 69 6e 70 74 72 3d 30 3a 6f 75 74 70 74 |no:inptr=0:outpt| 000012f0 72 3d 30 3a 6e 6f 6e 6f 74 65 73 3d 30 3a e1 20 |r=0:nonotes=0:. | 00001300 8b e7 4e 25 3d 32 31 70 72 69 6e 74 6f 6e 3d a3 |..N%=21printon=.| 00001310 3a e1 0d 07 6c 0e d4 26 31 31 2c 30 2c 30 2c 30 |:...l..&11,0,0,0| 00001320 0d 07 76 0f 6c 61 73 74 3d 4b 25 28 4e 25 29 0d |..v.last=K%(N%).| 00001330 07 80 0b e7 20 4e 25 3d 30 e1 0d 07 8a 2d 70 69 |.... N%=0....-pi| 00001340 74 63 68 3d 4e 25 2a 34 2b 70 6c 61 79 6f 66 66 |tch=N%*4+playoff| 00001350 73 65 74 3a e7 70 69 74 63 68 3e 32 35 35 84 70 |set:.pitch>255.p| 00001360 69 74 63 68 3c 31 e1 0d 07 94 30 e7 70 72 69 6e |itch<1....0.prin| 00001370 74 6f 6e 20 69 6e 70 74 72 3d 69 6e 70 74 72 2b |ton inptr=inptr+| 00001380 31 3a e7 69 6e 70 74 72 3e 62 75 66 73 69 7a 20 |1:.inptr>bufsiz | 00001390 69 6e 70 74 72 3d 31 0d 07 9e 09 e5 8d 64 46 47 |inptr=1......dFG| 000013a0 0d 07 a8 18 e7 69 6e 70 74 72 3c 3e 6f 75 74 70 |.....inptr<>outp| 000013b0 74 72 20 e5 8d 64 46 47 0d 07 b2 31 6c 61 73 74 |tr ..dFG...1last| 000013c0 3d 2d 39 39 3a e7 69 6e 70 74 72 3d 31 69 6e 70 |=-99:.inptr=1inp| 000013d0 74 72 3d 62 75 66 73 69 7a 20 8b 20 69 6e 70 74 |tr=bufsiz . inpt| 000013e0 72 3d 69 6e 70 74 72 2d 31 0d 07 bc 05 e1 0d 07 |r=inptr-1.......| 000013f0 c6 3c d4 31 2c 76 6f 6c 2c 70 69 74 63 68 2c 32 |.<.1,vol,pitch,2| 00001400 35 35 3a e7 70 72 69 6e 74 6f 6e 20 6e 6f 6e 6f |55:.printon nono| 00001410 74 65 73 3d 6e 6f 6e 6f 74 65 73 2b 31 3a 62 75 |tes=nonotes+1:bu| 00001420 66 3f 69 6e 70 74 72 3d 4e 25 0d 07 d0 05 e1 0d |f?inptr=N%......| 00001430 07 da 22 6f 63 74 6e 6f 3d 6f 63 74 6e 6f 2b 31 |.."octno=octno+1| 00001440 3a e7 6f 63 74 6e 6f 3e 34 8c 6f 63 74 6e 6f 3d |:.octno>4.octno=| 00001450 34 0d 07 e4 31 70 6c 61 79 6f 66 66 73 65 74 3d |4...1playoffset=| 00001460 34 38 2a 6f 63 74 6e 6f 2d 35 39 3a ef 31 39 2c |48*octno-59:.19,| 00001470 31 2c 63 6f 6c 28 6f 63 74 6e 6f 29 2c 30 2c 30 |1,col(octno),0,0| 00001480 2c 30 0d 07 ee 22 ef 34 3a f1 8a 31 35 2c 31 38 |,0...".4:..15,18| 00001490 29 22 4f 63 74 61 76 65 20 22 3b 6f 63 74 6e 6f |)"Octave ";octno| 000014a0 3b 3a ef 35 0d 07 f8 0f e7 ac 70 72 69 6e 74 6f |;:.5......printo| 000014b0 6e 20 e1 0d 08 02 27 69 6e 70 74 72 3d 69 6e 70 |n ....'inptr=inp| 000014c0 74 72 2b 31 3a e7 69 6e 70 74 72 3e 62 75 66 73 |tr+1:.inptr>bufs| 000014d0 69 7a 20 69 6e 70 74 72 3d 31 0d 08 0c 29 6e 6f |iz inptr=1...)no| 000014e0 6e 6f 74 65 73 3d 6e 6f 6e 6f 74 65 73 2b 31 3a |notes=nonotes+1:| 000014f0 62 75 66 3f 69 6e 70 74 72 3d 31 30 30 2b 6f 63 |buf?inptr=100+oc| 00001500 74 6e 6f 0d 08 16 05 e1 0d 08 20 22 6f 63 74 6e |tno....... "octn| 00001510 6f 3d 6f 63 74 6e 6f 2d 31 3a e7 6f 63 74 6e 6f |o=octno-1:.octno| 00001520 3c 31 8c 6f 63 74 6e 6f 3d 31 0d 08 2a 09 e5 8d |<1.octno=1..*...| 00001530 64 64 47 0d 08 34 05 20 0d 08 3e 08 dd f2 59 4e |ddG..4. ..>...YN| 00001540 0d 08 48 09 59 25 3d 2d 31 0d 08 52 08 58 25 3d |..H.Y%=-1..R.X%=| 00001550 a5 0d 08 5c 21 58 25 3d 58 25 80 26 44 46 3a e7 |...\!X%=X%.&DF:.| 00001560 58 25 3c 3e 37 38 80 58 25 3c 3e 38 39 8c 8d 44 |X%<>78.X%<>89..D| 00001570 52 48 0d 08 66 14 59 25 3d 31 3a e7 58 25 3d 37 |RH..f.Y%=1:.X%=7| 00001580 38 8c 59 25 3d 30 0d 08 70 0b ef 58 25 2c 38 3a |8.Y%=0..p..X%,8:| 00001590 e1 0d 08 7a 05 20 0d 08 84 24 dd f2 43 45 4e 28 |...z. ...$..CEN(| 000015a0 41 24 2c 59 25 29 20 f1 8a 31 39 2d a9 41 24 2f |A$,Y%) ..19-.A$/| 000015b0 32 2c 59 25 29 41 24 3b 3a e1 0d 08 8e 05 20 0d |2,Y%)A$;:..... .| 000015c0 08 98 1b dd f2 4f 46 46 3a ef 32 33 3b 38 32 30 |.....OFF:.23;820| 000015d0 32 3b 30 3b 30 3b 30 3b 3a e1 0d 08 a2 33 dd f2 |2;0;0;0;:....3..| 000015e0 49 4e 49 54 44 42 4c 20 24 4d 41 50 3d c4 32 35 |INITDBL $MAP=.25| 000015f0 35 2c bd 30 29 3a 4d 41 50 3f 32 35 35 3d 30 3a |5,.0):MAP?255=0:| 00001600 43 48 41 52 50 54 52 3d 32 32 34 3a e1 0d 08 ac |CHARPTR=224:....| 00001610 05 20 0d 08 b6 62 dd f2 44 42 4c 28 41 24 2c 79 |. ...b..DBL(A$,y| 00001620 25 29 42 24 3d 22 22 3a 43 24 3d 22 22 3a e3 43 |%)B$="":C$="":.C| 00001630 48 25 3d 31 b8 a9 41 24 3a 4b 25 3d a4 43 48 41 |H%=1..A$:K%=.CHA| 00001640 52 28 97 c1 41 24 2c 43 48 25 2c 31 29 29 3a 42 |R(..A$,CH%,1)):B| 00001650 24 3d 42 24 2b bd 4b 25 3a 43 24 3d 43 24 2b bd |$=B$+.K%:C$=C$+.| 00001660 28 4b 25 2b 31 29 3a ed 3a 4b 25 3d 31 39 2d a9 |(K%+1):.:K%=19-.| 00001670 41 24 2f 32 0d 08 c0 33 44 42 4c 24 3d bd 33 31 |A$/2...3DBL$=.31| 00001680 2b bd 4b 25 2b bd 79 25 2b 42 24 2b bd 33 31 2b |+.K%+.y%+B$+.31+| 00001690 bd 4b 25 2b bd 28 79 25 2b 31 29 2b 43 24 3a f1 |.K%+.(y%+1)+C$:.| 000016a0 44 42 4c 24 3b 3a e1 0d 08 ca 05 20 0d 08 d4 6c |DBL$;:..... ...l| 000016b0 dd a4 43 48 41 52 28 43 25 29 e7 4d 41 50 3f 43 |..CHAR(C%).MAP?C| 000016c0 25 8c 3d 4d 41 50 3f 43 25 8b e7 43 48 41 52 50 |%.=MAP?C%..CHARP| 000016d0 54 52 3e 3d 32 35 36 fa 20 8b 4d 41 50 3f 43 25 |TR>=256. .MAP?C%| 000016e0 3d 43 48 41 52 50 54 52 3a 3f 42 4c 4f 43 4b 3d |=CHARPTR:?BLOCK=| 000016f0 43 25 3a 41 25 3d 31 30 3a 58 25 3d 42 4c 4f 43 |C%:A%=10:X%=BLOC| 00001700 4b 3a 59 25 3d 42 4c 4f 43 4b 20 81 20 32 35 36 |K:Y%=BLOCK . 256| 00001710 3a d6 6f 73 77 6f 72 64 0d 08 de 52 e3 4a 25 3d |:.osword...R.J%=| 00001720 30 b8 31 3a ef 32 33 2c 43 48 41 52 50 54 52 2b |0.1:.23,CHARPTR+| 00001730 4a 25 3a e3 49 25 3d 32 b8 39 3a ef 42 4c 4f 43 |J%:.I%=2.9:.BLOC| 00001740 4b 3f 28 4a 25 2a 34 2b 49 25 81 32 29 3a ed 2c |K?(J%*4+I%.2):.,| 00001750 3a 43 48 41 52 50 54 52 3d 43 48 41 52 50 54 52 |:CHARPTR=CHARPTR| 00001760 2b 32 3a 3d 4d 41 50 3f 43 25 0d ff |+2:=MAP?C%..| 0000176c