Как разделить музыку и звук выстрела для AY?

ZXNet эхоконференция «code.zx»

От Константин Жуков Кому All 05.10.2006

Hello, All Допустим скомпилировал музыку в Sound Tracker PRO или в PRO Tracker. Hо при проигрывании музыки по одному из каналов необходимо пропустить какой-либо шумовой эффект. Можно ли заглушить один из каналов мелодии, чтобы он не мешал эффекту?

От Алексей Михеев Кому All 05.10.2006

Hello, Jukov Juk> Можно ли заглушить один из каналов мелодии, чтобы он не мешал Juk> эффекту? по всей видимости, придется модифицировать плеер.

От Дмитрий Васильевич Терентьев Кому All 05.10.2006

Hello, cyrax inc почитай электронный журнал DejaVu номер 10 или 9 там эта тема хорошо раскрыта с примерами и исходниками, а так же в наличии сборник звуков

От Марк Антонов Кому All 05.10.2006

Hello, Jukov пропатчить плеер - там в одном месте куча out'ов, маскируешь нужный канал и выводишь свои данные, но не забывай, что частота шума и огибающей задаётся для всех 3х каналов. сейчас придуман более прогрессивный метод - использование TurboSound - один AY как и раньше играет музыку, а второй звуковые эффекты

От Гаврилов Виталий Кому All 06.10.2006

Hello, demon_zx Одно время я даже эквалайзер для AY делал. Правда там без патчения плеера обходилось- просто считывал данные, менял и тут же их записывал. Задержка обработки сказывалась жутким треском. Подобный эффект можно заметить в игре MortalCombat от Codebusters(?)- когда громкость притухает слышен треск. Отсюда мораль- вместо out'ов надо прописать загрузку в переменные (13 штук), а потом их обрабатывать после плеера и выводить пачкой. Можно получить полнейшую власть над звуком: -регулятор громкости -смена раскладки каналов (разве что моно не сделаешь) -эквалайзер (сомнительное счастье, но все же) -pitch и прочие извращения над тональностью -вывод своих звуков когда надо

От Гаврилов Виталий Кому All 06.10.2006

Hello, key-jee А еще обнаружил в приложении к последнему InfoGuide архивчик sources.rar и в нем исходник плеера pt2/pt3, где можно написать свою выводилку в порты- все данные формируются в массиве. Автор- S.V.Bulba

От Иван Петухов Кому All 06.10.2006

Hello, Vitamin В своё время siril/4d проапгрейдил пт3 плеер (не зная ни формата, ни умея толком програмировать) добавив в него обработку именно данных из OUT регистров.. В результате чего в нём повлялась функция смены на лету раскладок стерео (можно было хоть один единственный канал во всех играть), заглушка любых каналов, эквалайзер и смена громкостных табличек для эмуляции звучания AY на YM и наоборот.. Так что ничего очень сложного в этом нет - было бы желание.

От Александр Шушков Кому All 07.10.2006

Hello, The Exploited The> работать не будет Что именно работать не будет? Плеер трогать не нужно. Hужно написать плеер звуков.

От Александр Шушков Кому All 07.10.2006

Hello, newart new> Это самое фиговое решение. new> Ведь наверняка в игре будет возможность отключения эффектов, так вот new> эффекты отключешь, а музыка по прежнему останется ущербной. new> Пропатчить плеер это дело 5 минут, написать свой плеер эффектов дело new> еще нескольких часов. Кому чего... Лучше заказать у профи универсальный плеер, который сможет еще и звуки воспроизводить. Тогда не нужно будет каждый раз изобретать велосипед.

От Марк Антонов Кому All 08.10.2006

Hello, axor axo> Что именно работать не будет? Плеер трогать не нужно. Hужно написать axo> плеер звуков. патчить плеер - в любом случае. в оригинале он же все равно всегда, каждое прерывание пишет все регистры в т.ч. и того канала, который не используется в мелодии

От Андрей Богданович Кому All 09.10.2006

Hello, The Exploited В зависимости от мелодии выбираешь канал в который лучше выводит звуки (чтобы мелодия меньше искажалась), потом делаешь CALL player и выводишь аутами свои эффекты. Предварительно глушить канал смысла особого не вижу, эффекты обычно короткие и быстро проигрываются. В коде выглядит это так: на прерываниях: CALL MUSIC CALL SPLAY Если нужно проиграть эффект делаем так: LD HL,SOUND1 LD (SONG),HL Код SPLAY; ┌─-; CODE ─── SPLAY LD HL,(SONG) INC H DEC H RET Z LD BC,#FFFD LD A,4 OUT (C),A LD B,#BF LD A,(HL) OUT (C),A INC HL LD B,#FF LD A,5 OUT (C),A LD B,#BF LD A,(HL) OUT (C),A LD B,#FF LD A,7 OUT (C),A INC HL IN A,(C) AND #DB OR (HL) LD B,#BF OUT (C),A INC HL LD A,#0A LD B,#FF OUT (C),A LD B,#BF LD A,(HL) OUT (C),A INC HL LD (SONG),HL LD A,(HL) OR A RET NZ LD (SONG+1),A (тут проверка включена ли музыка, если да, то Z) RET Z XOR A LD BC,#FFFD LD A,7 OUT (C),A IN A,(C) OR 36 LD B,#BF OUT (C),A RET SONG DEFW 0 SOUND1 DEFB 180,10,32,10 ;ОДИH. КВ. DEFB 180,10,32,11 DEFB 250,9,32,12 DEFB 250,9,32,13 DEFB 240,9,32,14 DEFB 240,9,32,15 DEFB 230,9,32,15 DEFB 230,9,32,15 DEFB 220,9,32,14 DEFB 220,9,32,13 DEFB 210,9,32,12 DEFB 210,9,32,11 DEFB 200,9,32,10 DEFB 200,9,32,8 DEFB 190,9,32,6 DEFB 190,9,32,5 DEFB 180,9,32,3 DEFB 180,9,32,2 DEFB 0 └── CODE ───

От Знахарь Кому All 18.11.2006

Hello, Spectre вообще это верно... про велосипед... :(

От Андрей Полиханенко Кому All 19.01.2007

Hello, The Exploited The> работать не будет См. CSC:DejaVu. Там как раз 2-х канальная (2Hьюарт - не ущербная!) музыка с эффектами на 3-м канале. Ух ты, все работает, надо же!.. :)