Rozdział 8


Dźwięk

ZX Spectrum potrafi wydawać ogromnie różnorodne dźwięki. Użytkownik kontroluje wysokość dźwięku oraz czas jego trwania. Rozkaz BEEP jest używany do generacji dźwięku na tym komputerze. BEEP jest rozkazem trybu rozszerzonego i otrzymuje się go za pomocą klawisza Z.

'Środkową' częstotliwością dla rozkazu BEEP jest środkowe C. Można ją zmieniać w rozkazie BEEP i komputer może zagrać każdą nutę, jeśli zostanie wyrażona jako liczba półtonów lub ułamków półtonów powyżej lub poniżej środkowej częstotliwości. Jeśli zostanie wprowadzony rozkaz

 

BEEP 2,0

 

to komputer powinien wyemitować dźwięk środkowego C przez dwie sekundy.

Te dwie liczby w rozkazie sterują rodzajem wygrywanej nuty, pierwsza podaje jej długość w sekundach, a druga wysokość nuty w półtonach powyżej środkowego C. Stąd kod wysokości tonu dla środkowego C wynosi 0, dla C# 1, dla D 2, i tak dalej do następnego C, które ma kod 12, ponieważ 12 półtonów tworzy oktawę. Jeśli chcesz, możesz kontynuować dalej do 13 i w górę - im wyższa liczba, tym wyższy ton.

 

Spróbuj tego:

 

BEEP 1,4: BEEP 1,2: BEEP 2,0

 

Powinieneś usłyszeć pierwszy takt melodii Three Blind Mice (Trzy Ślepe Myszy). Ponieważ można ze sobą połączyć za pomocą dwukropków całkiem sporo rozkazów BEEP, mógłbyś, mając cierpliwość, stworzyć całą melodię. Może zechcesz użyć więcej nut niż tylko trzy.

(Dwukropki łączą ze sobą nie tylko rozkazy BEEP; możesz ich używać do tworzenia złożonych rozkazów z dowolnych rozkazów podstawowych.)

Bardziej skomplikowany przykład to rozkaz śpiewającego kameleona, który powstaje przez wymieszanie razem rozkazów BEEP i BORDER:

 

BORDER 1: BEEP 1,14: BORDER 3: BEEP 1,16: BORDER 4: BEEP 1,12: BORDER 6: BEEP 1,0: BORDER 5: BEEP 4,7: BORDER 1

 

(Nie przejmuj się, jeśli polecenie przeciągnie się do następnego wiersza: komputer wcale tego nie zauważy.)

Krótki program odgrywający ciąg nut mógłby wyglądać następująco:

 

10 FOR x=0 TO 24
20 BEEP 2,x

30 NEXT x

 

Z tym rozkazem możesz zrobić dużo więcej - pomysły znajdziesz w instrukcji programowania w języku BASIC.

Dla nut leżących poniżej środkowego C liczba półtonów jest podawana jako ujemna.

 

 


   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2018 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

W artykułach serwisu są używane cookies. Jeśli nie chcesz ich otrzymywać,
zablokuj je w swojej przeglądarce.
Informacje dodatkowe