Kurs QBasic - część 7
Dźwięk - BEEP, SOUND, PLAY
Ponieważ omówiłem podstawowe polecenia graficzne, wypada teraz skupić się na muzyce i dźwiękach. Z góry jednak uprzedzam, iż nigdy nie korzystałem z poleceń dźwiękowych i stąd bierze się moja nikła wiedza na ten temat. Najprostszym poleceniem jakiego można użyć jest BEEP, który wydaje z głośników "Błąd krytyczny". Zastosowanie BEEP przedstawia przykład:
10 REM Prg7.1 - Polecenie BEEP 20 CLS 30 BEEP 40 END
Drugim poleceniem dotyczącym dźwięku jest SOUND x, y. To polecenie wydaje dźwięk z brzęczka o częstotliwości x (w hercach), który trwa y impulsów zegarowych (18 impulsów to w przybliżeniu 1 sekunda). Całość przedstawia kolejny przykład:
10 REM Prg7.2 - Polecenie SOUND 20 CLS 30 SOUND 440, 18 40 END
W powyższym przykładzie komputer wydał z siebie dźwięk nuty C trwający sekundę. Niestety oba powyższe polecenia mają małe możliwości. Sytuację poprawia polecenie PLAY, które umożliwia granie całych melodii. Spójrzmy na kolejny przykład:
10 REM Prg7.3 - Polecenie PLAY 20 CLS 30 PLAY "mb" 40 PLAY "t255" 50 PLAY "o2 c1 d4 f4 e4 d4 g2 g2 g4 a4 e4 f4 d2 d2 d4 f4 e4 d4 c4 o3 c4 o2 b4 a4 g4 f4 e4 d4 c1 d4 f4 e4 d4 g2 g2 g4 a4 e4 f4 d2 d2 d4 f4 e4 d4 c4 g4 d4 e4 c2 p2" 60 PLAY ON 70 END
W linii 30 nakazujemy komputerowi grać w tle (czyli wszystkie inne polecenia mogą być dalej wykonywane). W linii 40 nadajemy tempo muzyce (od 0-wolno do 255-szybko). W linii 50 układamy nuty, które mają być zagrane przez komputer. Przy tej okazji warto omówić co oznaczają litery i cyfry. Otóż wyróżniamy następujące nuty: C D E F G A H. Liczby przy nutach informują program o ich długości (1 - cala nuta, 8 - ósemka itp.). Litera "P" oznacza pauzę (liczba oznacza to samo co przy nutach), natomiast "." (kropka) przedłuża nutę o połowę. W linii 60 występuje komenda rozkazująca zagranie muzyki. Na tym kończę skromny kurs na temat muzyki.