1 REM VYUKOVY PROGRAM 2 REM GENEROVANI TONU NA IQ 151 3 REM PREDMET "INFORMATIKA 4 REM A VYPOCETNI TECHNIKA" 5 REM PRO 1. ROC. GYMNAZII 6 REM AUTOR: J. STEPAN 7 REM KVT UP OLOMOUC 8 GOSUB500:GOSUB790:GOSUB790 9 GOSUB1110 10 POKE24,7:REM DELKA TONU 20 IFINKEY$=""THEN20:REM NENI STISKNUTA ZADNA KLAVESA 30 IFINKEY$="A"THENPOKE23,103:CALLHEX(F973):GOTO30:REM c' 40 IFINKEY$="W"THENPOKE23,98:CALLHEX(F973):GOTO40:REM cis' 50 IFINKEY$="S"THENPOKE23,92:CALLHEX(F973):GOTO50:REM d' 60 IFINKEY$="E"THENPOKE23,87:CALLHEX(F973):GOTO60:REM dis' 70 IFINKEY$="D"THENPOKE23,82:CALLHEX(F973):GOTO70:REM e' 80 IFINKEY$="F"THENPOKE23,77:CALLHEX(F973):GOTO80:REM f' 90 IFINKEY$="T"THENPOKE23,73:CALLHEX(F973):GOTO90:REM fis' 100 IFINKEY$="G"THENPOKE23,69:CALLHEX(F973):GOTO100:REM g' 110 IFINKEY$="Y"THENPOKE23,65:CALLHEX(F973):GOTO110:REM gis' 120 IFINKEY$="H"THENPOKE23,61:CALLHEX(F973):GOTO120:REM a' 130 IFINKEY$="U"THENPOKE23,58:CALLHEX(F973):GOTO130:REM ais' 140 IFINKEY$="J"THENPOKE23,55:CALLHEX(F973):GOTO140:REM h' 150 IFINKEY$="K"THENPOKE23,52:CALLHEX(F973):GOTO150:REM c'' 160 IFINKEY$="O"THENPOKE23,49:CALLHEX(F973):GOTO160:REM cis'' 170 IFINKEY$="L"THENPOKE23,46:CALLHEX(F973):GOTO170:REM d'' 180 IFINKEY$="P"THENPOKE23,43:CALLHEX(F973):GOTO180:REM dis'' 190 IFINKEY$=";"THENPOKE23,41:CALLHEX(F973):GOTO190:REM e'' 200 IFINKEY$=":"THENPOKE23,39:CALLHEX(F973):GOTO200:REM f'' 210 IFINKEY$="["THENPOKE23,37:CALLHEX(F973):GOTO210:REM fis'' 220 IFINKEY$="]"THENPOKE23,34:CALLHEX(F973):GOTO220:REM g'' 300 IFINKEY$="0"THENEND 400 GOTO20 500 CLS 510 PRINT&3,3"GENEROVANI TONU NA IQ 151" 520 PRINT&5,5"Vyska tonu je ulozena v mo-nitoru na adrese 23, delka tonu na "; 530 PRINT"adrese 24. Zadani hodnot pro-vedeme prikazem POKE takto:" 540 PRINT"Vyska: POKE 23,V "; 550 PRINT"Delka: POKE 24,D" 560 PRINT"kde V,D jsou cela cisla z inter-valu <0,255>." 570 PRINT" Vyvolani tonu provedeme prikazem CALLHEX(F973)."; 580 PRINT" Posloupnostprikazu pro vyvolani tonu o urcite delce a vysce je tedy: 590 PRINT"cr POKE23,V:POKE24,D:CALLHEX(F973)" 600 PRINT"kde cr je cislo programoveho radku." 610 GOSUB2000 620 CLS 630 PRINT&1,5"Delka tonu je primo umerna velikosti hodnoty parametru D." 640 PRINT&3,0"Vysku tonu zadame dle nasleduji-ci tabulky:" 650 PRINT&6,0"Ton V"&6,16"Ton V" 660 PRINT&7,0CHR$(15)"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ" 670 PRINT&8,0"c' 103 ais' 58" 680 PRINT&10,0"cis' 98 h' 55" 690 PRINT&12,0"d' 92 c'' 52" 700 PRINT&14,0"dis' 87 cis'' 49" 710 PRINT&16,0"e' 82 d'' 46" 720 PRINT&18,0"f' 77 dis'' 43" 730 PRINT&20,0"fis' 73 e'' 41" 740 PRINT&22,0"g' 69 f'' 39" 750 PRINT&24,0"gis' 65 fis'' 37" 760 PRINT&26,0"a' 61 g'' 34" 770 GOSUB2000 780 RETURN 790 CLS 800 PRINT&12,9"U K A Z K A" 810 DATA103,82,69 820 D=120 830 FORJ=1TO2 840 FORI=1TO3 850 READV 860 GOSUB2030 870 NEXTI 880 WAIT(5) 900 IFJ=1THENRESTORE810 910 NEXTJ 920 DATA82,60,82,60,92,60,82,60,77,120,92,120 930 FORJ=1TO2 940 FORI=1TO6 950 READV,D 960 GOSUB2030 990 NEXTI 1000 IFJ=1THENRESTORE920 1010 NEXTJ 1020 DATA82,92,103 1030 D=120 1040 FORI=1TO3 1050 READV 1060 GOSUB2030 1070 NEXTI 1080 WAIT(5) 1090 RESTORE 1100 RETURN 1110 CLS 1120 PRINT&3,5"V nasledujicim behu progra-mu se pocitac stava "; 1130 PRINT"klavesovym nastrojem. Ovladani je podobne jako u klaviru." 1140 PRINT" Rada tlacitek A - ] jsou bile klavesy (c' - g''). "; 1150 PRINT"Tlacit-ka W, E; T, Y, U; O, P; [ "; 1160 PRINT"jsou cerne klavesy (cis' - fis'')." 1170 PRINT" Cinnost programu je ukonce-na stisknutim tlacitka 0." 1180 PRINT&20,12"HRAJ!" 1190 RETURN 2000 PRINT&28,0"Pokracuj stiskem cerne klavesy." 2010 IFINKEY$=""GOTO2010 2020 RETURN 2030 POKE23,V 2040 POKE24,D 2050 CALLHEX(F973) 2060 RETURN