Deja Vu #04
31 марта 1998

CODING - Плавное затухание музыки в любой момент времени.

SoundTrack: "CRAZY MAN" BY SEC70R ?!...   
__________________________________________


Автор: Cardinal/PGC/BD
__________________________________________


   В этой статье речь пойдет  о  различных
проигрывателях AY-шной музыки. Я вам  рас-
скажу о довольно важном эффекте  (особенно
в демомэйкерстве) -о плавном затухании му-
зыки в любой момент времени. Сразу  скажу,
что ни в одном из  существующих  PLAYER'ов
компилированных музонов (будь то Pro Trac-
ker; Sound Tracker Pro by KSA и  т.д)  нет
такой функции, которая позволяла бы плавно
уменьшать громкость музыки. А посему  пой-
дем по-порядку...
   Чтобы сделать этот эффект, надо  понять
как процессор общается с AY и немножко по-
копаться в PLAYERе. В сопроцессоре AY есть
16 регистров, с помощью которых  генериру-
ются различные звуки. Каждый из  этих  ре-
гистров выполняет свою функцию. Обо всех я
говорить не стану, а остановлюсь только на
трех. Это регистры R8, R9, R10, младшие  5
битов которых управляют громкостью (ампли-
тудой) каналов A, B и C. Вообще, чтобы по-
лучить доступ к какому-нибудь регистру AY,
нужно его  номер  (от 0 до 15)  занести  в
порт #FFFD, а значение - в порт #BFFD.
   Я специально не говорю об этом  подроб-
но, т.к. это было описано в  книге  А.Лар-
чеко и Н.Родионова "ZX-Spectrum  &  TR-DOS
для пользователей и программистов".
   Весь этот разговор я завел к тому,  что
надо в PLAYER'е найти место, где заносятся
некоторые значения в регистры R8,R9 и R10.
Так вот, надо перед тем  местом  поставить
ловушку, (CALL address, где address - ваша
процедурка) которая изменит  (уменьшит  на
определенное значение)  байты  этих  самых
значений, прежде чем PLAYER  выдаст  их  в
регистры R8, R9 и R10 музыкального  сопро-
цессора. В приложении вы найдете пять  ис-
ходников в формате ALASM v3.8c. Каждый ис-
ходник годится только для музонов компили-
рованных в следующих редакторах и компиля-
торах:  Sound Tracker Pro by KSA Software;
Pro Tracker v2.4;  Sound Tracker Song Com-
piler v1.2; Sound Tracker Music's Recompi-
ler v2.1 by KSA; Pro Tracker v 2.1 by Gol-
den Disk.
   Исходники довольно сырые, но хорошо де-
монстрируют эффект. Как ими  пользоваться?
Загружаете исходник в ассемблер,  выходите
в STS, подгружаете компилированный музон с
PLAYER'ом, возвращаетесь в редактор,  под-
правляете значение метки MUZAK (она указы-
вает на адрес подгружаемого  музона),  ас-
семблируете и запускаете. Если вы услышали
музыку, значит со слухом у вас все в  пол-
ном порядке :-)... Потом попробуйте нажать
кнопку "L" - музыка должна  плавно  затих-
нуть. Нажмите на кнопку "K" - музыка заиг-
рает с нормальной громкостью.  SPACE - вы-
ход. Еще раз повторяю, что  исходники  де-
монстрационные, и если вы будете использо-
вать их в своих программах - уберите  лиш-
нее и попробуйте оптимизировать их по дли-
не, особенно подпрограмму, начинающуюся  с
метки GLUSH и до конца, если вам, конечно,
это удастся :-).
   Напоследок хочу сказать,  что  PLAYGEAR
COMPANY слепили часть к PROGRESS MEGADEMO,
так что ждите демо от SERIOUS SPECCY  GRO-
UP! А также хочу поздравить SPECCY с  пят-
надцитилетием и пожелать ему  прожить  еще
столько же..!



Другие статьи номера:

Аперативчик - Об управлении в обoлочке DEJA VU и о содержании 4 номера журнала

Тема - Бессмертный SPECCY - "проект будущего Speccy".

Капля припоя - Эмулятор ZX-SPECTRUM v3.04 - Руководство пользователя.

Капля припоя - Эмулятор ZX-SPECTRUM v0.20b by LION.

Капля припоя - ZX-SPECTRUM NAVIGATOR v1.00beta.

SOFTWARE - Презентация игры "Властелин Ориона".

SOFTWARE - Трактат о великой пользительности некоторых авторский разработок.

SOFTWARE - Обзор новых игр: FISHER pre-reliz , EMPIRE demo , LITTLE GHOST demo, СТАЛКЕР, ELOPEMENT, WORDLIFE.

SOFTWARE - Обзор новинок демосцены: HALLUCINATIONS in OPERA, INFARCT, YER ACHE 2, AMIGA, RAY EURODEMO, ZEST.

CODING - Ремикс некоторых процедур 93 года: SCREEN APARAT, Теневой контур, LOOK BASIC PROGRAMM-2.

CODING - Печать чисел в разных системах счисления: печать десятичных и шестнадцатеричных, двоичных и римских чисел, печать чисел в системе счисления с основанием, установленным пользователем.

CODING - процедура "Плазменные шарики".

CODING - Плавное затухание музыки в любой момент времени.

CODING - THE оптимизация.

CODING - Вращение спрайтов.

ANOTHER WORLD - О компьютере Be Box.

ANOTHER WORLD - Аргументы и факты (AMIGA vs PC).

Доска почета - Официальная информация о фестивале FunTop-98.

Доска почета - Конкурс на самую лучшую минидемку (1024 байта).

Семь и 1/2 - Урок Ламера или сто и одна процедура очистки аккумулятора.

Семь и 1/2 - День дурака (приколы и юмор).

Проба пера - Последняя гастроль или VIRTUL-но AMIG-ный синдром.

Проба пера - Поэма о добре и зле.

Проба пера - Возвращение Клэр.

Проба пера - Стихи: Спящий студент, Басня о Матане, Медкомиссия.

Проба пера - Рассказ "Война продолжается" (продолжение, глава 6).

Реклама - Реклама и объявления ...


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Программирование - о выводе спрайтов. продолжение и ответы на вопросы
WANTED - Розыск программ...
Планета Шелезяка - схема FM-тюнера с программным компьютерным управлением.

В этот день...   20 сентября