PDA

Просмотр полной версии : Как в 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умматором не пробовал? Правда тогда и разрядов больше потребуется.

goodboy
15.09.2007, 10:58
Еще очень нужен софт в формате TAP и TZX, где используются эти фичи (Covox и AY+beeper)...

AY+Beeper - игрушки Chronos и RawRecruit.

ILoveSpeccy
15.09.2007, 21:28
Кстати, есть еще кое что:
Мой AY играет тональностью примерно вдвое превышающей по частоте нормальную. Сравнивал с эмулем "Spectaculator". Частота на входе AY ровно 1.75MHz... Может кто знает в какую сторону копать???

з.Ы. Чем отличаются геймпады Dendy и SuperNintendo??? Ну кроме штекера конечно...

fan
16.09.2007, 16:17
Мой AY играет тональностью примерно вдвое превышающей по частоте нормальную. Сравнивал с эмулем "Spectaculator". Частота на входе AY ровно 1.75MHz... Может кто знает в какую сторону копать???
Возможно в сырке нужно чёнить пнуть чтоб делилосё , хотя странно , на 1.75MHz должно как раз нормально фурырычить . Попробуй вручную делилку подрубить и сравни с реальным сопром .


з.Ы. Чем отличаются геймпады Dendy и SuperNintendo??? Ну кроме штекера конечно...
Как минимум количеством кнопок и похоже протоколом передачи .
З.Ы. Сейчас скорее соневские джои стали самыми распространёнными .

ILoveSpeccy
17.09.2007, 16:31
Как минимум количеством кнопок и похоже протоколом передачи .
З.Ы. Сейчас скорее соневские джои стали самыми распространёнными .

Тогда очень буду признателен, если кто-нибудь подкинет описание протокола соневского пада... Хотел что-нибудь ходовое к Neo подключить, и ног на FPGA чтобы много не отнимало ;)

fan
18.09.2007, 13:18
Ща гляну .

Добавлено через 9 минут
Да , есть такое - http://www.gamesx.com/controldata/psxcont/psxcont.htm

Black_Cat
18.09.2007, 17:39
Сейчас скорее соневские джои стали самыми распространёнными .и самыми дорогими, по их цене можно несколько дендевских взять, а результат - абсолютно одинаковый, только за торговую марку SONY лишние бабки платить.. :(

ZEK
18.09.2007, 17:59
и самыми дорогими, по их цене можно несколько дендевских взять, а результат - абсолютно одинаковый, только за торговую марку 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/

fan
19.09.2007, 15:22
Нормально, китайский стоит около $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.

Писатели эмулей!!! Как вы это делаете???

psb
26.10.2007, 17:14
Мешаю по следующей формуле: Left=(A+B)/2, Right=(B+C)/2.
в общем-то так и должно быть. формула правильная. но для большей красивости можно сделать, что в левом не тока А и Б слышно, но еще и немножко Ц..

caro
26.10.2007, 17:34
Мешаю по следующей формуле: 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 например, суммирование производится с учетом фаз формирования амплитуды сигналов всех каналов.
Там правда сделан МОНО-выход (суммируются все каналы), но важен сам принцип.

felix
21.04.2009, 18:03
Доелываю звуковую часть своего спека и незнаю, как в цифре смешать 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




примерно так...
если есть вопросы -- в приват.