Просмотр полной версии : Как в VHDL смешать бипер с PWM (AY и Covox)?
ILoveSpeccy
15.09.2007, 00:46
Доелываю звуковую часть своего спека и незнаю, как в цифре смешать PWM с бипером. Через PWM идет звук и Covox... Гдето читал, есть демки вроде, которые одновременно AY и бипером играют... И как к PWM каналам A и C домешать B????
Еще очень нужен софт в формате TAP и TZX, где используются эти фичи (Covox и AY+beeper)...
Если у кого есть... подкиньте плиз ;)
p.S. Ошибся в заголовке :) Я имею в виду софтварно... на VHDL, ABEL или Verilog...
KingOfEvil
15.09.2007, 03:17
Доелываю звуковую часть своего спека и незнаю, как в цифре смешать PWM с бипером. Через PWM идет звук и Covox... Гдето читал, есть демки вроде, которые одновременно AY и бипером играют... И как к PWM каналам A и C домешать B????
Еще очень нужен софт в формате TAP и TZX, где используются эти фичи (Covox и AY+beeper)...
Если у кого есть... подкиньте плиз ;)
p.S. Ошибся в заголовке :) Я имею в виду софтварно... на VHDL, ABEL или Verilog...
Cумматором не пробовал? Правда тогда и разрядов больше потребуется.
Еще очень нужен софт в формате TAP и TZX, где используются эти фичи (Covox и AY+beeper)...
AY+Beeper - игрушки Chronos и RawRecruit.
ILoveSpeccy
15.09.2007, 21:28
Кстати, есть еще кое что:
Мой AY играет тональностью примерно вдвое превышающей по частоте нормальную. Сравнивал с эмулем "Spectaculator". Частота на входе AY ровно 1.75MHz... Может кто знает в какую сторону копать???
з.Ы. Чем отличаются геймпады Dendy и SuperNintendo??? Ну кроме штекера конечно...
Мой AY играет тональностью примерно вдвое превышающей по частоте нормальную. Сравнивал с эмулем "Spectaculator". Частота на входе AY ровно 1.75MHz... Может кто знает в какую сторону копать???
Возможно в сырке нужно чёнить пнуть чтоб делилосё , хотя странно , на 1.75MHz должно как раз нормально фурырычить . Попробуй вручную делилку подрубить и сравни с реальным сопром .
з.Ы. Чем отличаются геймпады Dendy и SuperNintendo??? Ну кроме штекера конечно...
Как минимум количеством кнопок и похоже протоколом передачи .
З.Ы. Сейчас скорее соневские джои стали самыми распространёнными .
ILoveSpeccy
17.09.2007, 16:31
Как минимум количеством кнопок и похоже протоколом передачи .
З.Ы. Сейчас скорее соневские джои стали самыми распространёнными .
Тогда очень буду признателен, если кто-нибудь подкинет описание протокола соневского пада... Хотел что-нибудь ходовое к Neo подключить, и ног на FPGA чтобы много не отнимало ;)
Ща гляну .
Добавлено через 9 минут
Да , есть такое - http://www.gamesx.com/controldata/psxcont/psxcont.htm
Black_Cat
18.09.2007, 17:39
Сейчас скорее соневские джои стали самыми распространёнными .и самыми дорогими, по их цене можно несколько дендевских взять, а результат - абсолютно одинаковый, только за торговую марку SONY лишние бабки платить.. :(
и самыми дорогими, по их цене можно несколько дендевских взять, а результат - абсолютно одинаковый, только за торговую марку SONY лишние бабки платить..
Нормально, китайский стоит около $5, это без аналоговых осей итп
NovaStorm
19.09.2007, 09:47
Эээ, а может лучше за основу взять USB HID-device? Со светлым взглядом в будущее так сказать. Тем более есть реализации на AVRках например http://www.obdev.at/products/avrusb/index.html и http://web.archive.org/web/20070513094149/www.mindaugas.com/projects/MJoy16/
Нормально, китайский стоит около $5, это без аналоговых осей итп
В маскаляндии ~100рэ , со штурвалами ~300рэ (примерно столько же стоят джои не соневского дизайна сдланные другими фирмами).
Эээ, а может лучше за основу взять USB HID-device? Со светлым взглядом в будущее так сказать. Тем более есть реализации на AVRках например http://www.obdev.at/products/avrusb/index.html и http://web.archive.org/web/200705130...ojects/MJoy16/
Теоритически конечно лучше сразу на USB переходить , и девайсы вроде вполне стандартные и известные - клавиатуры , мыши , флешатиновые мозги (через кард ридер можно юзать любую карту или ваще юзать флэшёвые плеера или фото аппараты :D), ну и конечно джои :)
ILoveSpeccy
26.10.2007, 13:32
Чтото никак у меня не получается получить нормальный AY звук на 2х ШИМ-выходах.
Делаю 3 выхода, на каждый отдельно каналы A,B и C,
подмешиваю через резюки канал B к каналам A и С... прекрасное звучание!
Но как только мешаю в цифре, то звук становится как из ж...... :|
Мешаю по следующей формуле: Left=(A+B)/2, Right=(B+C)/2.
Писатели эмулей!!! Как вы это делаете???
Мешаю по следующей формуле: Left=(A+B)/2, Right=(B+C)/2.
в общем-то так и должно быть. формула правильная. но для большей красивости можно сделать, что в левом не тока А и Б слышно, но еще и немножко Ц..
Мешаю по следующей формуле: Left=(A+B)/2, Right=(B+C)/2.Во первых мне кажется должно быть:
Left=A+B/2
Right=C+B/2
(или другой вариант: A+C/2, B+C/2)
Во вторых важно как это суммирование реализовано в VHDL.
В исходнике PSG для MSX например, суммирование производится с учетом фаз формирования амплитуды сигналов всех каналов.
Там правда сделан МОНО-выход (суммируются все каналы), но важен сам принцип.
Доелываю звуковую часть своего спека и незнаю, как в цифре смешать PWM с бипером. Через PWM идет звук и Covox... Гдето читал, есть демки вроде, которые одновременно AY и бипером играют... И как к PWM каналам A и C домешать B????
p.S. Ошибся в заголовке :) Я имею в виду софтварно... на VHDL, ABEL или Verilog...
Не уверен решил ли ты проблему -- но это сделать достаточно просто. (далее в verilog ибо с VHDL почему-то не дружу)
reg beepervolume[MAXBITS:0]; //это регистр громкости бипера
reg mixeroutput[MAXBITS+1:0]; //это выход миксера
wire pwminput[MAXBITS:0];
always @(posedge clk) // не забудь сделать сброс и прочее
begin
mixeroutput<=beepervolume+pwminput;
end
always @(negedge clk) //сброс и прочее
begin
if(mixeroutput[MAXBITS+1]) //в случае -- если выходная громкость больше максимальной -- дать максимальную
mixeroutput<=MAXVOLUME;
end
примерно так...
если есть вопросы -- в приват.
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot