5.2. Создание музыки на PLAYе
С помощью оператора PLAY можно очень
легко создавать неплохие трехголосые мело-
дии. Все его возможности описаны в главе
5, поэтому здесь я ограничусь несколькими
примерами:
10 PLAY "T60W0X10000U3g4g1CCb5b3f4f1aag
5g3eag1g#f5f3feda5g"
10 PLAY "T180W0X10000U7c6e3f9&7c6e3f&O4
efefe5g&","O3U3c&&&e&&f&E&F&6G3
c&&&e&&f&O4EFEFE5G3c"
Мелодию можно разнообразить с помощью
ударных инструментов. Вот, например, всем
известная песенка "В траве сидел кузнечик"
в стиле панк-рок:
10 PLAY "T240M35fcfcfee&ececeff&fcfcfee
&ececefH","V14O4&f&c&e&c&e&c&f&
c&f&c&e&c&e&c&f","W0X2000Uc&)"
Несмотря на то, что с помощью операто-
ра PLAY можно создавать неплохую музыку и
эффекты, самые красивые варианты получают-
ся в кодах. Поэтому настоятельно Вам сове-
тую изучить следующую главу.
6. Управление музыкальным сопроцессором
Музыкальный сопроцессор AY-3-8910 (AY-
3-8912) позволяет генерировать трехканаль-
ный звук с изменяемой громкостью и шумо-
выми эффектами. Эта микросхема содержит
в себе шестнадцать регистров, управляющих
звуком. Регистры обозначаются R0...R15.
Выбор регистра осуществляется путем за-
писи его номера в порт 65533 (#FFFD), а
затем чтением содержимого выбранного ре-
гистра из этого же порта, либо записью но-
вого значения выбранного регистра в порт
49149 (#BFFD). Выбрав номер регистра один
раз, Вы можете выполнять сколько угодно
считываний или записей. И только когда
требуется доступ к другому регистру, надо
сменить содержимое порта 65533.
После задания необходимых параметров
сопроцессор начинает генерировать звук,
освобождая Z80 для выполнения других опе-
раций.
Все временные интервалы в микросхеме AY
получаются путем деления его тактовой час-
тоты, равной 1,7734 мГц, на определенное
число.