Информация о библиотеке LibSFX
источник: Deja VU #0A
;------------------------------------------------------------------------------

инициализация
 call ModifyMusPlayer ;коверкаем плэйер
 call AY_Off          ;вырубаем AY
 call MusPlayer       ;инициализируем музу
 call ClearSequence   ;очищаем очередь

установка сэмпла для проигрывания
 ld   de,#0101   ;d - приоритет
 call InitSample ;e - номер сэмпла

проигрывание сэмпла
Interrrupts
;
 push All_reg
 ....
 call MusPlayer+#05 ;муза
 call SoundPlayer   ;звуки
 call OutPutSound   ;вывод на AY
 ....
 pop  All_reg
 ei
 ret 

────────────────────────────────────────
(C) Max/CYBERAX Software/BDA

 Перед использованием player навешивает-
ся на player музыкального редактора
ProTracker v3.x.

 Теперь несколько замечаний по плэйерам.

2) После вызова процедуры ModifyMusPlay-
   er, плэйер музыки больше не влияет на
   регистры AY! Если  нужно  заглушить и
   музу  и звуки - убирайте с прерываний
   вызов  MusPlayer и SoundPlayer, затем
   вызывайте AY_Off.

3) Когда  звук(и)  проиграются до конца,
   канал глушится на 1 фрейм. Это сдела-
   но  для того, чтобы не оставалось гу-
   дения  от последней проигранной пози-
   ции звука.
     Если  ваш  музон в данном канале не
   затихает  никогда,  то он будет заби-
   вать это гудение и заглушку можно уб-
   рать.  То  же  в случае если все ваши
   сэмплы оканчиваются пустой позицией.
     За глушение  в  листингах  отвечают
   строки, помеченные (*).

4) Если нужно отрубить звуки, то вызови-
   те  ClearSequence (заглохнут все зву-
   ки),  либо  пихайте  ноль  по  адресу
   p*4+SampleSequence+1, где p - приори-
   тет звука подлежащего глушению.
     В  любом  случае  звук  прекратится
   только после следующего вызова
   SoundPlayer и OutputSound (т.е. при
   следующем прерывании).

5) Приоритет звуков изменяется от 0 до 7
   причем 0 - высший приоритет. НЕЛЬЗЯ
   задавать приоритет больше семи !!!

7) Немного  насчет  быстродействия. Ста-
   райтесь использовать меньший диапазон
   приоритетов.  Например, если вам дос-
   таточно  трех  уровней приоритета, то
   используйте значения 7,6,5; если двух
   - 7,6 и т.п.
     Для большинства применений достато-
   чно четырех уровней. В листинге  кое-
   где   встречаются  закомментированные
   значения. Используйте их для передел-
   ки плэйера на 4 приоритета.


