Мир звуков Спектрума - глава 5.2: Создание музыки на PLAYе.

ZX Forum #04

      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 мГц, на  определенное
число.