PDA

Просмотр полной версии : Эмулятор AY-8910 на ATMega



Страницы : [1] 2

Ramiros
08.07.2009, 12:09
Вот собственно задался целью написать эмуляцию AY на микроконтроллере, выкладываю первые успехи:
звукозапись сделана с линейного входа звуковой карты, на фото собранное устройство (плата правда изначально не для него предназначалась).

Сайт откуда можно скачать проект:

http://www.vector06c.narod.ru/

Strunov
08.07.2009, 13:15
Мне кажется частота тона плавает...

Ramiros
08.07.2009, 13:50
Мне кажется частота тона плавает...

да есть немного, контроллер работает на пределе, не всегда успевает все делать вовремя :)

Ewgeny7
08.07.2009, 23:45
А что за Мега? Какой кварц?

skyther
09.07.2009, 00:31
Какой статус у проекта? открытый/закрытый...

Ramiros
09.07.2009, 10:43
А что за Мега? Какой кварц?

ATMega16 кварц на 14.31818 MHz

---------- Post added at 12:43 ---------- Previous post was at 12:41 ----------


Какой статус у проекта? открытый/закрытый...

проект еще сырой, позже когда получится что то стоющее, выложу исходники.

molodcov_alex
09.07.2009, 10:52
А звук чем формируется? PWM?

Ramiros
09.07.2009, 11:25
А звук чем формируется? PWM?

да, два таймера в режиме PWM на левый и правый каналы

Ramiros
12.07.2009, 10:20
Вот такого качества уже удалось добиться :)

newart
12.07.2009, 10:42
Шум лажает.

Mick
12.07.2009, 10:49
Вот такого качества уже удалось добиться :)

Прикольно, не думал что мега так петь умеет :)
Автору уважуха! :v2_clap2: :v2_clap2: :v2_clap2:

---------- Post added at 10:49 ---------- Previous post was at 10:45 ----------


Шум лажает.

Недостатки есть конечно. Но для эмуляции AY, тем более на микроконтроллере который и даже не мог себе представить на что он может быть способен - для начала пойдет.

Ewgeny7
12.07.2009, 22:00
Это реально здорово. Настоящие ямахи достать уже трудновато, только у CHRV по 200 рублей. Мега обойдется дешевле, да и в любом ларьке продается. Конечно для ценителей это не звук, а резиновая женщина... :) Но по мне - более чем достаточно для счастья. Имею ввиду не женщину :)
А кстати, какя мега? 8515 хватит?

skyther
12.07.2009, 22:24
Еще вопрос, войдет ли разгребалка фата с карточки (от елм-чана того же)? Это же ay плеер получитя ;) Или оно уже сейчас с карты данные тянет?

fan
12.07.2009, 22:34
А кстати, какя мега? 8515 хватит?
Афтор в шестом посту сказал ATMega16 кварц на 14.31818 MHz .

Но , было бы интересно сколько и каких мозгов контроллера юзает текущая реализация .

Автору респект !!!

psb
13.07.2009, 00:38
Но для эмуляции AY, тем более на микроконтроллере который и даже не мог себе представить на что он может быть способен - для начала пойдет.
ну вот я бы может быть и согласился... может быть... но после просмотра демки на атмеге88 от lft... извините... ;)

ASDT
13.07.2009, 06:10
"на атмеге88 от lft... извините... "
А можно подробнее ?

newart
13.07.2009, 08:03
ну вот я бы может быть и согласился... может быть... но после просмотра демки на атмеге88 от lft... извините...
Ага, тоже была такая мысль.


А можно подробнее ?
http://www.youtube.com/watch?v=sNCqrylNY-0

Ramiros
13.07.2009, 11:21
Афтор в шестом посту сказал ATMega16 кварц на 14.31818 MHz .

Но , было бы интересно сколько и каких мозгов контроллера юзает текущая реализация .

Автору респект !!!

Используется два таймера T0, T2, два прерывания Int0, Int1, и USART.
Идея была в том чтобы заменить реальную микросхему, а не делать всякие мега демы и т.п.
На данном этапе поддерживается два способа загрузки данных: Последовательная через USART, и паралельная через PortA и прерывания.
при последовательной в контроллер засылается пакет из 16 байт, где первые 14 байт значения регистров (исключение есть только для R13 - если значение равно 255, то данный регистр необновляется) и два байта $80, $7F ( так называемый Terminator).
при паралельном все проще - на порту А выставляется номер регистра, после чего он записывается в контроллер по фронту Int1, затем на порту А выставляется значение для этого регистра и записывается по фронту на Int0.

ASDT
13.07.2009, 11:23
Так там же мега всем подряд занимается ...
Или обошто?

Ramiros
13.07.2009, 12:19
Эмулятор AY для ATmega написан на Algorithm Builder 4.90, размер проекта укладывается в 1024 слова поэтому компилится безпроблем на незарегистрированой версии. к тому же в инете для AB 4.90 есть рецепт лечения от жадности :).

Простенький плэйер для демонстрации написан на Delphi 7. подключается схема к COM порту PC через переходник (преобразователь уровней RS232-TTL) для этого есть специальная микросхема, но можно собрать схемку которая есть в архиве.

Проект будет выложен на сайте http://www.vector06c.narod.ru/ в ближайшее время.

fan
13.07.2009, 14:33
проекта укладывается в 1024
А RAM сколько юзает ?

Было бы здорово запихать в ATtiny2313 (если RAMы хватит) они ваще копейки стоят и размеры маленькие , ну или в ATmega8 уж точно рамы выше крыши и цена всего на децел выше :D

----------------------------
Может тему луче в "звук" перенести ?!?

Romanich
14.07.2009, 05:42
Это реально здорово. Настоящие ямахи достать уже трудновато, только у CHRV по 200 рублей.

Ну и не только у ЧРВ, но и у Романыча ;)
и намного дешевле...
см. раздел "Барахолка"

ну и здесь они тоже есть:
http://www.promelcom.ru
http://www.allchip.ru
http://www.advonics.com

у первых двух контор заказывал (также как и в Терраэлектронике)

Tim0xA
14.07.2009, 16:01
Проект будет выложен на сайте http://www.vector06c.narod.ru/ в ближайшее время.
Выложил в раздел "Эмуляторы - Прочее".

Ewgeny7
14.07.2009, 20:19
Ну и не только у ЧРВ, но и у Романыча
и намного дешевле...
см. раздел "Барахолка"
Это я для острастки населения и стимулирования афтора. Мог бы и "не заметить" :)
Кстати, я как раз думал у тебя штучки три заказать с кучкой мелкой логики.

Ramiros
15.07.2009, 09:42
А RAM сколько юзает ?

Было бы здорово запихать в ATtiny2313 (если RAMы хватит) они ваще копейки стоят и размеры маленькие , ну или в ATmega8 уж точно рамы выше крыши и цена всего на децел выше :D

----------------------------
Может тему луче в "звук" перенести ?!?

RAM юзает неболее 256 байт. думаю что можно запихать во многие контроллеры, просто у меня ATMega16/32 целая куча лежит, у нас они в производстве используются :)

---------- Post added at 11:42 ---------- Previous post was at 11:41 ----------


Ну и не только у ЧРВ, но и у Романыча ;)
и намного дешевле...
см. раздел "Барахолка"

ну и здесь они тоже есть:
http://www.promelcom.ru
http://www.allchip.ru
http://www.advonics.com

у первых двух контор заказывал (также как и в Терраэлектронике)

помоему это к теме неотносится

balu_dark
07.12.2009, 14:15
Ramiros - убери из системы дельфийский вирус и перевыложи проект без виря. а то я летом эту заразу от тебя подхватил. вирус называется INDUC.A лечится перезаписью DCU в директории библиотек из бэкап версии - народ рекомендует не убирать бэкап файл так как вирус контролирует заражение по его наличию.

newart
07.12.2009, 14:19
Кстати да, чего с проектом? Умер?

Ramiros
07.12.2009, 14:40
Кстати да, чего с проектом? Умер?

Проект жив, черес COM порт у меня все отлично играет, проверить паралельное програмирование у меня неначем :)
Tim0xA обещал попробовать билд для ATMega8515 но пока тишина.

Щас подготовлю самые свежие билды и обновим на сайте :)

Ramiros
08.12.2009, 10:41
На сайте обновили, качаем, смотрим, задаем вопросы, кто нелюбит AB можно зашить с помощью любого програматора, главное правильно выставить фьюзы

spensor
08.12.2009, 13:34
А сайт то какой? Поместите в профиль, подпись или в стартпост.

Ramiros
08.12.2009, 15:05
А сайт то какой? Поместите в профиль, подпись или в стартпост.

пардон :)
смотреть стартпост

fan
08.12.2009, 19:49
Для полного счастья нужно добавить - http://www.vector06c.narod.ru/ Эмуляторы - Прочее лежит новый проект , а в аттаче старый .

psb
08.12.2009, 20:59
я извиняюсь, а эмулятор на асме написан?

balu_dark
08.12.2009, 22:04
нет - в алгоритм билдере - чтото напоминающее С. асм я так понял это отдизассембленные куски. поэтому меток нормальных в асме нет.

psb
08.12.2009, 23:25
ааааа:) тогда ясно:) у меня тоже есть подобные мысли, правда, блин, времени вот нет вааще...

Gryphon
09.12.2009, 07:36
Просматривал тут посты и просто не мог не заметить такую вещь. Автору просто большой респект!!!! Я знал, мега может проигрывать музыку через PWM, но чтоб эмулировать AYку.... Никогда ничего подобного не видел. Было б еще лучше, если б автор перенес проект под мегу8-она более дешевая и доступная, да и памяти достаточно. Хотя я попробую перенести алгоритм в Bascom, но не знаю, что получится. Но все-равно, проект заслуживает уважения! Главное, что б автор не забросил проект.

psb
09.12.2009, 21:58
Было б еще лучше, если б автор перенес проект под мегу8-она более дешевая и доступная
поддерживаю на 111,11%!

---------- Post added at 23:58 ---------- Previous post was at 23:57 ----------

а у самого были мысли сделать это на арм7 и музончики играть с sd-карты. причем, с эмулятором z80. но видимо дело до этого не дойдет.

Gryphon
10.12.2009, 11:27
А у меня все была мысль сделать проигрыватель на меге8+YM2149+SD карта... но пока проект заброшен. Убедительная просьба автору-переделайте прошивку для работы с ATmega8 (кварц-12 МГц). Очень хочется испробовать это устройство в работе.

Ramiros
10.12.2009, 13:52
А у меня все была мысль сделать проигрыватель на меге8+YM2149+SD карта... но пока проект заброшен. Убедительная просьба автору-переделайте прошивку для работы с ATmega8 (кварц-12 МГц). Очень хочется испробовать это устройство в работе.

Если мега8 позволяет, то сделаю вариант под него, но вот кварц всеже придется ставить на 14 МГц.
Кстати меги при 5 вольтах безпроблем гонятся до 20 МГц даже с индексом L.

В принципе можно адаптировать тот же STR плэйер или ему подобный на код меги и тогда можно сделать этакую музыкалку в одном флаконе, т.к. треков в формате STR в мегу особенно 32-ю влезет много :)
Где только взять код плайера?

Gryphon
10.12.2009, 14:31
Если мега8 позволяет, то сделаю вариант под него, но вот кварц всеже придется ставить на 14 МГц.
Кстати меги при 5 вольтах безпроблем гонятся до 20 МГц даже с индексом L.
Буду ждать!!!

rnd.gen
13.12.2009, 23:51
Да, с ума сойти :v2_jawdr::v2_conf2::v2_jawdr:.
И что, данную атмегу можно воткнуть вместо ay?

Ramiros
14.12.2009, 08:06
Обновлен AY_AVR_Project!

сделал версию для ATMega8,
переделал все версии на Т1, он имеет весьма полезные особенности в данном случае:
1. может работать в режиме PWM 8 Bit;
2. имеет 2 схемы сравнения, что позволяет сделать стереовыход с использованием только одного таймера;
3. есть в составе любой АТмеги.

т.к. теперь используется таймер Т1, то звуковой сигнал снимается с других портов, см. схему!

---------- Post added at 10:06 ---------- Previous post was at 10:01 ----------


Да, с ума сойти :v2_jawdr::v2_conf2::v2_jawdr:.
И что, данную атмегу можно воткнуть вместо ay?

теоретически можно, практически надо пробовать.

rnd.gen
14.12.2009, 09:39
---------- Post added at 10:06 ---------- Previous post was at 10:01 ----------

теоретически можно, практически надо пробовать.

Посмотрел схему. По номерам контактов не совпадает, значить в гнездо AY нельзя воткнуть атмегу, нужно совмещать выводы, но это в принципе не большая проблема :). Очень хочется попробовать :).

skyther
14.12.2009, 10:00
вы так до tsfm дойдете ;)
автору респект!

Ramiros
14.12.2009, 12:07
Посмотрел схему. По номерам контактов не совпадает, значить в гнездо AY нельзя воткнуть атмегу, нужно совмещать выводы, но это в принципе не большая проблема :). Очень хочется попробовать :).

Платку естественно надо новую делать, там для сигналов управления нужно походу еще несложную логику поставить, потому как в реальном AY запись/чтение делается хитрым образом, см. вложение

Gryphon
14.12.2009, 13:29
Да, с ума сойти .
И что, данную атмегу можно воткнуть вместо ay?
Не, правильно говорит Ramiros, что надо новую интерфейсную плату делать, причем, я думаю, что прошивку придется новую делать. Но теоретически, это возможно. Автору респект!

Ramiros
15.12.2009, 12:02
Вообще тут надо разобраться вот с каким вопросом - в компьютерах типа spectrum, Вектор и т.п. при выводе в порт как все происходит, сначало выставляется информация на адресной шине и шине данных и только потом появляется сигнал "запись в устройство ВВ" или какой то другой порядок ?
Этот вопрос весьма важен т.к. у меня сейчас сделана запись по фронту на входах INT0 и INT1.

psb
15.12.2009, 12:37
и только потом появляется сигнал "запись в устройство ВВ" или какой то другой порядок ?
если рассудить чисто логически, то все должно быть так. а как иначе?

fan
15.12.2009, 12:38
Вообще тут надо разобраться вот с каким вопросом - в компьютерах типа spectrum, Вектор и т.п. при выводе в порт как все происходит, сначало выставляется информация на адресной шине и шине данных и только потом появляется сигнал "запись в устройство ВВ" или какой то другой порядок ?
Этот вопрос весьма важен т.к. у меня сейчас сделана запись по фронту на входах INT0 и INT1.

Покудо /IORQ всегда последний , о прочем можно не беспокоиться ;)
http://sblive.narod.ru/ZX-Spectrum/AY-ADAPTER/AY-ADAPTER.htm

Ramiros
15.12.2009, 14:09
если рассудить чисто логически, то все должно быть так. а как иначе?

Если рассуждать логически, то да, но вот я смотрел как сделано в связке LPT-AY, там програмно сначало формируется сигнал записи, а потом пишется само значение, подход конечно кривой, но для AY это не принципиально т.к. там запись идет не по фронту, а пока стоит лог.1, и в регистре останется то значение, которое будет в последний момент сигнала записи.
Тут может логичней сделать запись по срезу на INT0/INT1 ?

psb
15.12.2009, 14:31
сложно сказать, логичнее ли... лучше даташит посмотреть для надежности тогда.

Ramiros
15.12.2009, 15:24
Вобщем вот доработал схему

Ramiros
15.12.2009, 15:26
Для других ATMega все тоже самое только ноги другие будут

skyther
15.12.2009, 16:23
а тактовую можно из спека брать

Ramiros
15.12.2009, 16:43
а тактовую можно из спека брать

нет, мега сконфигурирован под работу с кварцевым резонатором.

skyther
15.12.2009, 16:47
мега сконфигурирован под работу с кварцевым резонатором
так вроде не проблема галку поставить...

Ramiros
15.12.2009, 17:23
так вроде не проблема галку поставить...

а какая в спеке частота? надо примерно 14 МГц, ну а галку непроблема конечно поставить, исходники открыты :)

rnd.gen
15.12.2009, 17:55
а какая в спеке частота? надо примерно 14 МГц, ну а галку непроблема конечно поставить, исходники открыты :)

Частота в спеке начинается с 14 МГц, потом делится на 4 получается 3,5 - этой частотой тактируется процессор, а на AY вроде шла частота 3,5/2 = 1,75 МГц

fan
15.12.2009, 18:38
Частота в спеке начинается с 14 МГц
Иногда и 16МГц / 8МГц (всякиие уралы/балтики/ULA-216).

rnd.gen
15.12.2009, 23:21
Ramiros.
Вопрос. На выходе, я так смотрю, идет 2 канала (стерео выход), то есть нету каждого канала из 3 в отдельности как в ау, а 3-ий канал уже как то завязан на те два. Как, какой канал из 3-их общий: А, Б или С ?
Какая функция джампера j2, который замыкает 20 ногу на массу?

newart
15.12.2009, 23:44
Разговоры куда-то не туда ушли.

Где собственно семплы звучания последней версии?
Может оно лажает жутко (как и было по началу).

Харктеристик эмуляции тоже не видно.

Ramiros
16.12.2009, 11:34
Ramiros.
Вопрос. На выходе, я так смотрю, идет 2 канала (стерео выход), то есть нету каждого канала из 3 в отдельности как в ау, а 3-ий канал уже как то завязан на те два. Как, какой канал из 3-их общий: А, Б или С ?
Какая функция джампера j2, который замыкает 20 ногу на массу?

канал Б делится на два канала пополам,
вообще открываем проект в АВ и читаем коментарии, там все написано.

Ramiros
16.12.2009, 14:16
Надо сказать что я тестировал только режим последовательной загрузки через USART, режим паралельной загрузки я не тестировал (кроме как в симуляторе). В выложеной версии режим паралельной загрузки вероятно работать нормально небудет, т.к. я нашел уже критические ошибки, в новой версии я это дело пофиксю и выложу.
по поводу джампера все просто - если используется USART то джампер разомкнут, если паралельная загрузка, то замкнут.

Ramiros
16.12.2009, 18:42
вот запись музона из SKYNET так сказать на текущих достижениях :)

Ramiros
17.12.2009, 09:50
Обновлен эмулятор AY_AVR v2.0 на сайте!
Доработана параллельная загрузка;
убран джампер (он теперь ненужен);
обновлены и добавлены схемы.

fan
17.12.2009, 15:30
Было бы совсем хорошо если обработку /RESET добавить .

Ramiros
18.12.2009, 11:23
Было бы совсем хорошо если обработку /RESET добавить .

Добавил.

newart
20.12.2009, 00:32
вот запись музона из SKYNET так сказать на текущих достижениях
Брр! Это ваще AY? ;)

newart
20.12.2009, 02:38
вот запись музона из SKYNET
Sky Net - газета? Насколько помню она без музыки была...
А кто автор музона?

Вадим Димтревич
20.12.2009, 07:55
Люди у кого есть печатка!!!

---------- Post added at 11:55 ---------- Previous post was at 11:51 ----------

И кстате эта штука может роботать без компа и сколько вмешяет музыки?

Ramiros
20.12.2009, 12:01
Sky Net - газета? Насколько помню она без музыки была...
А кто автор музона?

кто автор незнаю, SKYNET это мегадема для Вектор06ц и пожалуй самая лучшая :)

newart
20.12.2009, 12:03
кто автор незнаю, SKYNET это мегадема для Вектор06ц и пожалуй самая лучшая
Можешь выложить оригинал музона? Очевидно stc?

Ramiros
20.12.2009, 12:05
Люди у кого есть печатка!!!

---------- Post added at 11:55 ---------- Previous post was at 11:51 ----------

И кстате эта штука может роботать без компа и сколько вмешяет музыки?

без компа пока неможет, плэйер туда еще незапихан :) , пока только в качестве заменителя AY

newart
20.12.2009, 12:19
без компа пока неможет, плэйер туда еще незапихан , пока только в качестве заменителя AY
Если для ATMega есть либа понимающая zip то плеер написать дело 15 минут.
Есть такой формат FYM - зазипованый дамп регистров, у меня есть вся коллекция zxtunes в нем...

fan
20.12.2009, 12:27
Sky Net - газета? Насколько помню она без музыки была...
А кто автор музона?
Этот музон есть в последнем архиве с прошивками .

Ramiros
20.12.2009, 12:51
Если для ATMega есть либа понимающая zip

Непопадалось покрайней мере для АВ.

Вообще лучше бы адаптировать настоящий плейер с ZXSpectrum или с Вектора06ц, но это весьма сложная для меня задача т.к. адаптацией я никогда незанимался. Да и где бы нарыть ассемблерный текс плейера?

Ramiros
20.12.2009, 14:37
Итка, сегодня обкатал параллельную загрузку, для этого пришлось написать тестовую програмку для другой Меги, кому интересно как это все выглядит - фотку прилагаю. Все заработало как надо! можно считать что последняя версия полностью работоспособна.

Суть теста заключалась в том, что по COM порту в мегу загружался масив значений для регистров (14 байт) после чего выдавалась серия сигналов для записи данных в другую мегу. длительность сигнала записи на выходе составляет 1.5 мкс. интервал между записью составлял 10 мкс. все было максимально приближено к реальным условиям.

Вадим Димтревич
20.12.2009, 15:13
Жалко что неможет без компа а так тема бы была!

Ramiros
28.12.2009, 12:53
Обновил версию AY_Emul (v.2.3), кое что в коде еще немного оптимизировал :) , для Mega16/32/8515 появилась поддержка режима чтения регистров (для Mega8 к сожалению только на запись т.к. его ресурсов нехватает).
В очередной раз схемы претерпели изменения.
Прошивки для Mega16/32 я протестировал, все в роде работает нормально и на чтение и на запись, для Mega8/8515 тестирование не проводил (только в симуляторе, нет у меня этих Мег), но думаю проблем возникнуть недолжно т.к. код различается незначительно.

ALKO
28.12.2009, 14:44
Прошу прощения, я ,как обладатель толстостекольных очков, возможно незаметил пару вещей.
Во первых - не обнаружил jpg-схему данного проэкта (подчеркиваю JPG и ни какой другой формат мне нужен).
Во вторых - этот самый эмулятор позволяет ли генерировать волну, сформированную ЦАПом , если да, то сколько бит ?

З.Ы. а можно как нибудь обойтись без внешнего кварца, а использовать внутренний в AT Mega 8L8PU (8MHz)

fan
29.12.2009, 13:03
.

ALKO
29.12.2009, 16:35
Прошивается через LPT ?

---------- Post added at 16:30 ---------- Previous post was at 15:04 ----------

Хм,а как насчет конэкта к z80 ?
Восьми портов немаловато будет?

---------- Post added at 16:33 ---------- Previous post was at 16:30 ----------

кварц обязательный ?
(тембр мне сойдет и на пол тона ниже)

---------- Post added at 16:35 ---------- Previous post was at 16:33 ----------

ненавижу частоты превышающие 5kHz

fan
29.12.2009, 22:34
Прошить можно по всякому и разным софтом . Вот небольшой ликбез - http://proavr.narod.ru/07.htm
(Не совсем уверен , но скорей всего вопрос прошивания аналогичного контроллера освещался в темах программатор flash (http://zx.pk.ru/showthread.php?t=3947) , ZX_Multi_Card (http://zx.pk.ru/showthread.php?t=609) ).


Стандартная схема подключения реального сопра - http://sblive.narod.ru/ZX-Spectrum/AY-ADAPTERforLUT/AY-ADAPTERSCH.gif . Из этой схемы исключаем муз сопр и его аналоговую обвязку , и коннектим к схемеме что я приаттачил в посте #81 .
J2.2 идёт на шину данных .

Ramiros
30.12.2009, 16:16
кварц обязательный ?
(тембр мне сойдет и на пол тона ниже)

ненавижу частоты превышающие 5kHz

можно конечно и 8 MHz но тут нужно понимать две вещи:
1. про последовательный порт (USART) в данном случае можно забыть, если не делать исправления в проекте;
2. при 14 MHz время реакции на запись/чтение составляет минимум 1 мкс, другими словами сигнал записи/чтения должен быть не короче этого времени, а на 8 MHz это время будет уже около 2 мкс, т.е. быстродействия может быть уже недостаточно.

ALKO
30.12.2009, 17:33
прошиваю я обычно через LPT -> шинный формирователь, так что com-port мне ни к чему.

Ramiros
17.01.2010, 09:43
Отличная новость, Algorithm Builder v 5.43 перешел в разряд бесплатных програм, теперь можно неограничиваться 1 килобайтом!

Ramiros
21.01.2010, 12:47
Новая версия AY_Emul на сайте

Slider
27.01.2010, 09:59
Я правильно понимаю, что Робус почти такую же фигню сделал, только круче?
Сделал он её давно, а давеча я лично слышал рабочую версию.
Втыкается оно ВМЕСТО AY, играет как AY один в один, плюс дополнительно:
1) возможность проигрывания особых звуков на нём
2) возможность включения и проигрывания мелодий на ДВА AY
3) возможность загрузки инструментов (там есть память) и проигрывания ЦИФРЫ
Тема тут (http://zx.pk.ru/showthread.php?t=5440&highlight=wild+sound)

Error404
27.01.2010, 11:41
Я правильно понимаю, что Робус почти такую же фигню сделал, только круче?
Было это давно, я давеча слышал рабочую версию.
Втыкается оно ВМЕСТО AY, играет как AY один в один, плюс дополнительно:
1) возможность проигрывания особых звуков на нём
2) возможность включения и проигрывания мелодий на ДВА AY
3) возможность загрузки инструментов (там есть память) и проигрывания ЦИФРЫ
Тема тут (http://zx.pk.ru/showthread.php?t=5440&highlight=wild+sound)

Оба проекта хороши. :v2_thumb:
И думаю, оба найдут свою аудиторию, т.к. они все-таки разные.
Что лично до меня, то между "лишними" микросхемами (нужных для реализации новых возможностей, которые задействовать некому - нет ни музыкантов, ни программистов) и схемной простотой, я всегда выберу схемную простоту и минимум компонентов. В идеале и Мегу - чем меньше, тем лучше.

Slider
27.01.2010, 13:39
Согласен.
Вообще - модеры, перенесите эту тему в ЗВУК!!!
А по размеру и кол-ву микрух... WildSound будет размером немногим больше AY ;)

Ramiros
27.01.2010, 15:47
Slider, Чесно говоря, даже незнал про существование другого проекта, нужно заметить что ATmega работает на 14 МГц, а не на 100, и при этом эмуляция звука близка к 100%, но тем неменее не 100 :).
Я бы несказал что у того проекта простая схема, она довольно наворочена и отпугивает, к тому же мало кому нужны все эти дополнительные фичи... да и невижу я чтото реально выложеного кроме кучи обещаний.

fan
27.01.2010, 17:44
Сырки AY под силабсы есть в этой теме - http://zx.pk.ru/showthread.php?p=49083#post49083 .

Конечно было бы просто афигительно если бы Wild Sound был заточен хотя бы только под эмуляцию GS (с совместимостью по рулёжке), ибо альтернативы за вменяемую цену просто нет и стантарт явно впал в ступор , если не сказать загибается... ИМХО .

Ramiros
06.02.2010, 21:53
Кто нибуть уже опробовал эмулятор в деле?

balu_dark
06.02.2010, 22:40
Я скоро опробую - надо дисковый интерфейс доотладить и попробую.

Ramiros
11.02.2010, 16:58
Пытаюсь избавится от логики и сэмулировать входы BC1, BDIR прямо на контроллере, и вроде бы все получается, но есть один вопрос - сколько по времени длительность сигнала "чтение УВВ" и за какое время нужно выдать данные на ШД после появления этого сигнала? (у меня сейчас получается 3 мкс, подозреваю что может неуложится по времени) может у кого есть нормальные диаграммы команд IN/OUT ?

balu_dark
11.02.2010, 18:06
2 такта проча проходит от выставления IORQ и RD до захвата данных с устройства плюс 1 такт ожидания. результат действителен еще 2 такта (тут могу ошибится)

fan
11.02.2010, 21:16
может у кого есть нормальные диаграммы команд IN/OUT
http://andrnow.narod.ru/zx/radio/95-03.zip

Ramiros
11.02.2010, 22:58
так, CPU работает на частоте 3,54 МГц, судя по диаграмме период чтения длится 2,5 такта т.е. 0,7 мкс. В общем у меня получается выдать данные не быстрей чем за 1,3 мкс, следовательно режим чтения тут некатит, но если поддержку режима чтения неделать, а оставить только режим записи, то по времени вроде все укладывается, таким образом можно сделать вариант без дополнительной логики, при этом схема сильно упрощается...

Ramiros
14.02.2010, 00:13
Новая версия эмуля на сайте. (вариант без логики)

Alex_NEMO
14.02.2010, 14:52
Новая версия эмуля на сайте. (вариант без логики)

Ramiros, а что, если использовать ATmega88/168, какие работают до 20МГц, по идее, можно попробовать и чуть "разогнать"...

Ramiros
15.02.2010, 20:20
Ramiros, а что, если использовать ATmega88/168, какие работают до 20МГц, по идее, можно попробовать и чуть "разогнать"...

на 20МГц они все работают безпроблем и некоторые даже на 22МГц пашут, но тут надо в двое больше чем есть, т.е. 28 МГц, тогда можно сэмулировать еще точнее.

Alex_NEMO
16.02.2010, 15:40
на 20МГц они все работают безпроблем и некоторые даже на 22МГц пашут, но тут надо в двое больше чем есть, т.е. 28 МГц, тогда можно сэмулировать еще точнее.
Ну, тогда, возможно, стоит на PIC18 перенести - в ряде моделей внутр. PLL до 40 МГЦ!

psb
16.02.2010, 22:54
с атмеги на пик? бросайте эти дела, уж лучше на арм7.

balu_dark
17.02.2010, 00:39
тем более я посмотрел многие многмегагерцовые пики работают минимум 4 такта на команду! тоесть получим всего 10 мипсов а у меге на 20 мгц -20 мипсов! дело не в мегагерцах а в умении правильно извлекать информацию из даташитов о количестве тактов при выполнении команд.
а вот ARM действительно может выполнять команду за такт( ну я про конвейры пока не упоминаю) и код в среднем может работать на 60 Мгц( тоже есть нюансы про работу во флэш или из РАМ ну и отдельные экземпляры Cortex до 90 Мгц) это я говорил только про арм7 и про корпуса чипов которые еще смогут запаять те кто их не паяет каждый день.

Ramiros
17.02.2010, 11:27
Демагогией заниматься это конечно хорошо, но кто нибуть уже пробовал эмуль в деле? надо сначало попробовать а потом уже делать работу над ошибками.
PS с АРМ я дела не имел, незнаю че это такое, а атмеги у меня валяются, поэтому и затеил это все.

Ramiros
28.02.2010, 09:30
Щас вычитал что контроллеры ATMega выпущеные после 2006г гонятся спокойно до 32 МГц, а некоторые даже до 48! так что буду пробовать разогнать, если частота в 28 МГц покорится, то думаю можно будет сделать практически 100% эмуляцию АУ-ка.

Ramiros
28.02.2010, 18:46
действительно гонятся до 33 МГц точно, дальше непробовал, но думаю это не предел... правда почему-то не со всеми кварцами заводится, но это ерунда :)

dosikus
28.02.2010, 19:53
тем более я посмотрел многие многмегагерцовые пики работают минимум 4 такта на команду! тоесть получим всего 10 мипсов а у меге на 20 мгц -20 мипсов! дело не в мегагерцах а в умении правильно извлекать информацию из даташитов о количестве тактов при выполнении команд.


А если не гнуть пальцы и посмотреть на PIC24 ?
http://www.trt.ru/products/microchip/pic24.htm
и на цены :
http://www.trt.ru/Stock.php?Manf=3

Или же на новую линейку ?
microchip.com.ru/Support/MASTERs2009/NEW/NEW_RU.pdf

Ramiros
28.02.2010, 21:04
А если не гнуть пальцы и посмотреть на PIC24 ?
http://www.trt.ru/products/microchip/pic24.htm
и на цены :
http://www.trt.ru/Stock.php?Manf=3

Или же на новую линейку ?
microchip.com.ru/Support/MASTERs2009/NEW/NEW_RU.pdf

Да кто спорит? можно наверное и на пике сделать, чтобы дать однозначный ответ, нужно еще изучить его переферию.
Если брать быстродействующий вариант (а тормозной тут наверника непойдет) то цены имхо весьма высоки.
Ответ на прерывание за 5 циклов - это скорее всего неприемлемо для данной задачи, но утверждать небуду...

Если кто то напишет эмуль на пике, как говорится флаг в руки, а меня мега вполне устраивает по всем параметрам...

psb
28.02.2010, 21:41
нахрен-нахрен... лучше тогда сделать эмуль на арме:) 60 мипс, 32бит ядро, "прямая" периферия... может быть там можно и 2 AY заэмулить... а цена та же... странно, правда?

balu_dark
28.02.2010, 22:52
А если не гнуть пальцы и посмотреть на PIC24 ?
http://www.trt.ru/products/microchip/pic24.htm
и на цены :
http://www.trt.ru/Stock.php?Manf=3

Или же на новую линейку ?
microchip.com.ru/Support/MASTERs2009/NEW/NEW_RU.pdf

Пальцы никто собственно и не гнул. просто как бы не было велико желание приспособить что есть в загашнике, к какому нибудь проекту - надо еще руководствоваться здравым смыслом и реалиями. а реалии не в пользу PIC. ( как бы ты этого не хотел :) ) арм - полноценный 32бита контроллер с достаточными обьемами памяти и нормальной периферией,БЫСТРЫЙ. АВР тоже ниче - причем довольно распространен в СНГ. а ПИК - ну просто исторически сложилось что он древний проц из древних проектов. и юзают его в основном те кто начал его юзать лет 10-15 назад ( а кроме пиков тогда особо ничего и не было доступным) причем в основном изза привычки и лени переходить на(или изучать) чтото другое. Поэтому ничего личного но например - мне более близок АРМ и я его юзаю в основном, тебе близок PIC ну и на здоровье :) тут сколько людей - столько и мнений. все равно решаем не мы с тобой а тот кто взял паяльниу в руки и спаял себе девайс и запустил его :)

skyther
28.02.2010, 23:01
off:
а еще эмулятор ау можно сделать на ау, неожиданно да? :)

psb
01.03.2010, 00:33
неожиданно да?
абалдеть:)))) а эмуляция поди все равно не 100% будет? :v2_lol:

Ramiros
01.03.2010, 13:52
Сделал вариант работающий на 27 МГц, опробовал на меге16, все пашет как часы, точность эмуляции сразу удалось повысить, время реакции на управляющие сигналы соответственно сократилось в двое, что неможет нерадовать!
Как оказалось найти кварц на 28 МГц почти нереально, а на 27 завались :) (но кто найдет можете воткнуть на 28).
Как остальные сборки переделаю, выложу...

Gryphon
01.03.2010, 14:14
Ramiros, выложи демонстрационную музыку, пожалуйста. Послушаю.

PUMPKIN
01.03.2010, 14:57
Разгон,какой-то ,нужно втавил или запоял и готово!
зы:мля,что за М ДЕЛАЛ пентагон,всё впаяно намертво,без знаний и удачи куй(пока горячо)востановиш?

Ramiros
01.03.2010, 15:13
Ramiros, выложи демонстрационную музыку, пожалуйста. Послушаю.

http://content3.files.mail.ru/0CHUXT/e19330c219692e238cef3306646c32df

Gryphon
01.03.2010, 15:41
Ну, звучание хорошее, частоты вроде не срезаны. Мне понравилось! Почти полная эмуляция AY!

Alex_kapfa
01.03.2010, 17:27
Звучит приятно. Я не знаю тонкостей звучания "железного" AY, но уверен абсолютно, что для игрушек точно подходит.
Применил ли кто-нибудь данный "эмулятор" AY на каком-нибудь реале?

Ramiros
03.03.2010, 12:15
Новая версия AY_Emul на сайте!
Нарисовал печатку для Mega16/32.

dosikus
03.03.2010, 19:46
balu_dark, Оставим ARM в покое - это из другой оперы , у него свой гемморой при разаботке в дом.условиях для начинающего . И не кислые цены .
Хотя Philips вроде сдвинул это своими LPC2xxx.

Вот потому, что ты занимаешься AVR и мало юзал PIC , я и хочу обратить твое внимание .
Древний проц ? Ну ну .

Обычно начинают сравнивать Atmega,atiny с MidRange пиков.
PIC16,PIC18 и т.д.
Но за последние года 3 и эти линейки обновились - перефирия , скорость , потребление, и появились новые PIC24,PIC32 - до которых Atmega как до Пекина ...
Да и плюс PicKIt2 программатор /отладчик - доступный по цене и простой для самостоятельной сборке рядовому юзеру -аналога которому применительно к AVR не существует.

Не наезжаю , не учу - хочу просто обратить твое внимание на деталюшки
как и дешовые так и доступные для подобного рода разработок.

Да и надоело честно говоря - как тема про AVR , так обязательно PIC обосрут.
Применяю в разработках и те и другие...

balu_dark
03.03.2010, 20:25
balu_dark,
Да и надоело честно говоря - как тема про AVR , так обязательно PIC обосрут.
Применяю в разработках и те и другие...

:) не хотел тебя обидеть :) давай не будем тут офтопить ибо это стандартный холивар - ARM vs что нибудь,NXP vs Atmel и AVR vs PIC. каждый пусть юзает что ближе :) посему - умываю руки. :) с меня пиво - в качестве моральной компенсации.

dosikus
03.03.2010, 20:33
balu_dark,:v2_cheer:

ALKO
03.03.2010, 20:47
Подскажите пожалуйста,как зацепить это устройство на Z80

я в аюшках не разбираюсь ни враспиновке,ни в програмном управлении (пищалок шумов и уровня сигнала).

newart
04.03.2010, 13:54
Ну, звучание хорошее, частоты вроде не срезаны. Мне понравилось! Почти полная эмуляция AY!
Ну-ну.

Во пеервых звучит сльно ниже чем должно. Во вторых есть артифакты, немного похожие на глюки AY LPT, на 37-й секунде это отчетливо слышно. А еще первые 12 секунд огибащая звучит сильно громче чем на реале и даже AY Emul'e.

Это на вскидку.

Gryphon
04.03.2010, 15:07
Знаешь, когда реала нет, то это наиболее лучший вариант замены! Пока никто не предложил более простого аналога АУ, чем этот, тем более доступного для понимая.

Ramiros
04.03.2010, 15:13
Ну-ну.

Во пеервых звучит сльно ниже чем должно. Во вторых есть артифакты, немного похожие на глюки AY LPT, на 37-й секунде это отчетливо слышно. А еще первые 12 секунд огибащая звучит сильно громче чем на реале и даже AY Emul'e.

Это на вскидку.

про вопервых - я воткнул кварц на 26,6 МГц (че было, лень в магаз идти), потому и звучит ниже, никто немешает воткнуть на 28 MHz;
про вовторых - артефакты может и есть, но имхо я ничего незаметил;
про огибающую - у меня звучит абсолютно одинаково, что в бульбовском эмуле, что в моем... реал я никогда неслышал. возможно ты гдето забыл эквалайзер отрубить.
И смысл выкладывать pt2 файл? лучше бы зделал запись с реала, если есть.

fan
04.03.2010, 15:50
про вопервых - я воткнул кварц на 26,6 МГц (че было, лень в магаз идти), потому и звучит ниже, никто немешает воткнуть на 28 MHz;
Проэкт под кварц 28 MHz расчитан ? В схемках указан кварц на 27 MHz .

Ramiros
04.03.2010, 17:22
Проэкт под кварц 28 MHz расчитан ? В схемках указан кварц на 27 MHz .

Можно 28 МГц, это будет соответствовать спековской частоте практически на 100%, а на схеме я указал 27 МГц потому что такой намного легче найти :)

Как известно внутреняя частота AY-ка = 1770000/16=110625 Гц. (где 16 - внутренний делитель)

в моем случае чтобы получить такую частоту надо кварц посчитать по формуле: 110625*256=28320000 Гц.

частота дискретизации в моем эмуле равна 110625Гц.

newart
04.03.2010, 17:23
про огибающую - у меня звучит абсолютно одинаково, что в бульбовском эмуле, что в моем... реал я никогда неслышал. возможно ты гдето забыл эквалайзер отрубить
Эквалайзеры не использую. Речь именно про первые 3 паттерна. Вот тестовый фрагмент, попробуй его оцифровать и сравним с WAV из AY Emul'a.

fan
04.03.2010, 17:34
Подскажите пожалуйста,как зацепить это устройство на Z80
В аттаче схемка для варианта без дополнительной логики .

Ramiros
04.03.2010, 17:52
Эквалайзеры не использую. Речь именно про первые 3 паттерна. Вот тестовый фрагмент, попробуй его оцифровать и сравним с WAV из AY Emul'a.

хм.. мой тестовый плэйер неподдерживает pt3

newart
04.03.2010, 20:49
хм.. мой тестовый плэйер неподдерживает pt3
PSG тоже?

Ramiros
04.03.2010, 21:21
PSG тоже?

Ну AY_Player поддерживает только мой собственный формат *.AYR который создает только мой эмуль Virtual Vector. Формат очень простой и удобный в отличии от всех других. Я сначало хотел сделать что то из стандартного типа, но ничего непонравилось, все как то через ж..пу...
Надо конечно сделать поддержку какого нибуть незамудренного стандартного формата, но до этого руки недошли еще :)

newart
05.03.2010, 02:01
Надо конечно сделать поддержку какого нибуть незамудренного стандартного формата, но до этого руки недошли еще
AY Fly.dll понимает большинство популярных форматов.
Сделать на ее основе конвертор в дамп регистров дело 10 минут.
Могу дать такой исходник на PureBasic.

Ramiros
05.03.2010, 07:04
AY Fly.dll понимает большинство популярных форматов.
Сделать на ее основе конвертор в дамп регистров дело 10 минут.
Могу дать такой исходник на PureBasic.

В любом случае было бы интересно поглядеть :)

Alex_NEMO
05.03.2010, 07:18
Подскажите пожалуйста,как зацепить это устройство на Z80

я в аюшках не разбираюсь ни враспиновке,ни в програмном управлении (пищалок шумов и уровня сигнала).

ALKO, ты читать умеешь? Или лень хотя бы 5 последних листов топика почитать? Вот здесь "для особо одаренных и слепых" разработчик написал:

Новая версия AY_Emul на сайте!
Нарисовал печатку для Mega16/32. Ссылка на сайт автора - в начале темы! Не тормози SNIСKERS'ни!!!

fan
05.03.2010, 12:37
На сколько имею представление , у него ATMega8515 .

fan
05.03.2010, 14:35
Довыдумывал вариант платки адаптера под лут для ATMega8515 (вариант без дополнительной логики).
http://sblive.narod.ru/ZX-Spectrum/AY-ADAPTERforLUT/AY-ADAPTERforLUT.htm (внизу)

Под контроллер лезет только "одноэтажный" кварц , длинные кварцы лепятся в виде выкидыша или как больше нравится . Блокировочные кондюки лепятся вторым этажом .

Конструкция припаивается поверх проца .

newart
05.03.2010, 15:44
В любом случае было бы интересно поглядеть
Вот

Ramiros
05.03.2010, 16:05
длинные кварцы лепятся в виде выкидыша или как больше нравится

Несоветую использовать длинные кварцы, с ними контроллер может незаводится, лучше усеченный вариант, т.е. чем меньше габарит, тем лучше.

psb
05.03.2010, 17:35
немного оффтопик: а подскажите пожалуйста, какого типа штырьки используются для замены ног микросхем в подобных переходниках? (надо чтобы они свободно входили в колодку)

fan
05.03.2010, 18:53
Проще впаять цанговую панельку и юзать обычные штыри ака расчёска (с квадратным сечением). Они вполне друг с дружкой дружат .

Покуда у цанговых панелек ножки довольно тонкие , то их можно юзать как пережодник для жирных штырей (если не охота менять панельку).

Alex_NEMO
05.03.2010, 20:33
немного оффтопик: а подскажите пожалуйста, какого типа штырьки используются для замены ног микросхем в подобных переходниках? (надо чтобы они свободно входили в колодку)
Мужики, поищите вот это: PSLM-1x40 - например, тут: http://www.akatel.ru/catalog/razyemi/lineiki.php
По моему, это то, что мы все давно ищем! Есть, например в "Элитане".
В крупных городах наверняка найти можно!

Ramiros
06.03.2010, 12:42
Наткнулся вот на такую статейку:

В радиолюбительской практике актуальна задача получения высокостабильных по частоте колебаний. Обычно для этих целей используют кварцевые генераторы. Промышленность выпускает кварцы до частот по крайней мере 100 МГц. При наличии у радиолюбителя кварца на частоту, например, 27 МГц или 45 МГц - это совсем не гарантирует, что получится именно такая частота генерации. В большинстве случаев кварцы на частоты выше 20...25 МГц - гармониковые (чаще всего это 3-я гармоника). Это значит, что кварц, на котором есть надпись 27 МГц, реально будет генерировать с частотой 9 МГц, а кварц с надписью 45 МГц - с частотой 15МГц.
http://rf.atnn.ru/s4/urt-8oo.html

Действительно, у меня большенство кварцев завелось на частоте в 3 раза ниже чем на них написано, отсюда вывод - неиспользуйте гармониковые кварцы для данной задачи!

Вот еще:
гармониковый кварц на те же 27 мгц можно отличить от имеющего 27 первой гармоникой. Гармониковый обозначается 27.0 мгц, а второй 27000 кгц

ALKO
11.03.2010, 15:06
chip AY chto-li umeet osushestvlyat' record-sound ?(speaker in)

Миниатюры

__________________

fan
11.03.2010, 15:22
Нет . Только смешивается звук спикера и AY .

Ramiros
18.03.2010, 10:12
Новая версия эмуля на сайте, в основном изменения в микшировании шума и тона, ну и еще немного оптимизации кода.

Ramiros
23.03.2010, 19:24
Подключил наконец то я все это хозяйство к реальному спеку, все заработало, загрузил штук 5 демок послушал, все вроде играет. Незнаю читают демы с AY-ка что нибуть или нет, но включеный режим чтения к глюкам и зависаниям неприводил, так что можно считать что боевое крещение эмуль прошел и даже успешно :)

Gryphon
25.03.2010, 02:10
Ramiros, будем теперь иметь ввиду!

Ramiros
25.03.2010, 18:23
логика в схеме по этой ссылке http://zx.pk.ru/attachment.php?attachmentid=16450&d=1267713253 чтение поддерживает?

ПС. Вроде как поддерживает.

fan
25.03.2010, 22:15
Поддерживает но только есесно с реальным сопром .

Ramiros
27.03.2010, 13:22
Как оказалось, не все заработало как задумано, чтение из AY неработало, но немного повозившись я отловил причину, сначало я думал что контроллер по времени не успевает выдать данные на ШД, после чего программа в очередной раз была оптимизирована и время выдачи данных удалось еще уменьшить, чего в теории должно хватать более чем достаточно, но на практике чтение упорно нехотело работать.
Причина оказалась банальна, нужно было всего лишь запитать ноги контроллера AVcc и AGND. Если этого несделать то портА контроллера почемуто сильно тупит и смазывает сигналы. (видимо к mega8515 это неотносится).
В общем на сайте выложен релиз эмулятора, который опробован на реальном спеке и рабочий как на запись так и на чтение на 100%. В схемах я тоже подключил AVcc и AGND к шинам питания.

Нужно заметить что данный девайс будет гарантированно работать только на неразогнаном спеке с частотой проца 3.54 МГц. На 7 МГц и выше как минимум не будет работать режим чтения.

ALKO
27.03.2010, 13:54
частоты ATmega8515L-8PI будет мало для эмуляции?
Сможет ли она работать с кварцом 14MHz?

fan
27.03.2010, 15:32
В общем на сайте выложен релиз эмулятора, который опробован на реальном спеке и рабочий как на запись так и на чтение на 100%.
Попробуй эту дёмку - http://www.worldofspectrum.org/infoseekid.cgi?id=0007538
Переключаться на следующую часть пробелом . Только за пускай LyraIIMegademoThe.tzx.zip , а то tap'ка легко брякается при нажатии на пробел .

Собсно там во второй части усилок со стрелочками , они должны дрыгаться взависимости от громкости , ещё там есть осциглят с прыгающим текстом (амплитуда зависит от громкости) , и под конец там есть часть с цифровым звуком (играет не сразу , вначале идёт текстовый скрол).

---------- Post added at 15:32 ---------- Previous post was at 14:35 ----------


частоты ATmega8515L-8PI будет мало для эмуляции?
Сможет ли она работать с кварцом 14MHz?
http://zx.pk.ru/showpost.php?p=104259&postcount=77
Можно. Буква L означает возможность работы при пониженном напряжении питания (от 2.7 до 5.5 В).
При этом частота не меннее 8 Мгц обеспечивается во всем диапазоне питающих напряжений.
При питании 5В такой кристалл прекрасно работает и при 20 Мгц.

Ramiros
28.03.2010, 19:01
Попробуй эту дёмку - http://www.worldofspectrum.org/infoseekid.cgi?id=0007538
Переключаться на следующую часть пробелом . Только за пускай LyraIIMegademoThe.tzx.zip , а то tap'ка легко брякается при нажатии на пробел .

Собсно там во второй части усилок со стрелочками , они должны дрыгаться взависимости от громкости , ещё там есть осциглят с прыгающим текстом (амплитуда зависит от громкости) , и под конец там есть часть с цифровым звуком (играет не сразу , вначале идёт текстовый скрол).[COLOR="Silver"]



Попробовал :) стрелки дрыгаются, текст прыгает, все как в эмуляторах спека и даже диджитал часть играет как в эмуляторах.

ALKO
29.03.2010, 16:54
Нарыл Mega8L16pu.
Порты используются те же,что и на Mega8515 ?

Ramiros
29.03.2010, 17:00
Нарыл Mega8L16pu.
Порты используются те же,что и на Mega8515 ?

Блин, ты ваще схемы смотрел? как могут использоваться теже порты если порта А на меге8 нет ваще. к тому же вариант для мега8 неподдерживает режим чтения.

Gryphon
30.03.2010, 12:54
ALKO, там надо в программе поменять тип МК и посмотреть порты. Да, и еще, mega8L-это низкопитаемый мк и высокие частоты (ну не больше 16МГц, если не ошибаюсь) ему не поплечу, да и не будет это работать, т.к
...мега8 неподдерживает режим чтения И вообще, лучше для такого проекта юзать mega88 по причинам, изложеным выше.

serkiri
04.04.2010, 14:04
Народ, кто собирал устройство, можете сравнить качество звучания с моим - http://zx.pk.ru/showthread.php?t=12485 ? Буду благодарен.

Ramiros
05.04.2010, 07:17
Народ, кто собирал устройство, можете сравнить качество звучания с моим - http://zx.pk.ru/showthread.php?t=12485 ? Буду благодарен.

Да походу кроме меня никто несобирал. У меня щас в реальном 48 спеке стоит. если дадите снапшоты че сравнивать, то сравню :)

serkiri
05.04.2010, 19:23
если дадите снапшоты че сравнивать, то сравню :)

У меня файлы .pt3, научусь снапшоты делать - напишу. Спасибо за ответ
PS: погоди, так это тебе .tap надо дать ? или у тебя 48+трдос ?

Ramiros
05.04.2010, 21:38
У меня файлы .pt3, научусь снапшоты делать - напишу. Спасибо за ответ
PS: погоди, так это тебе .tap надо дать ? или у тебя 48+трдос ?

Можно и .tap, но тут по форуму прога пробегала, которая снапшоты грузит в спек через магнитофонный вход, не все конечно, но большинство грузятся успешно, а самое главное в разы быстрей чем тапки.

Ramiros
26.04.2010, 12:26
Очередной релиз на сайте, улучшено микширование каналов

cmari
19.09.2010, 20:33
Собрал вышеописанный девайс. Звук очень понравился! С кварцем 28.100 практически неотличимо от реального AY. Образец звучания здесь (http://narod.ru/disk/25075377000/AYmega.mp3.zip.html).

http://img828.imageshack_.us/img828/3301/usbay.jpg

Плата в аттаче (формат Sprint Layout).

Чтобы можно было ставить гармониковые кварцы, применен внешний генератор на 74LS04 (1533ЛН1). Весьма распространенная HC04 не пойдет - работать не будет! Сопротивления по 1.2К. Конденсатор 2-20pF, подбирать для стабильного запуска генератора на нужной гармонике. Волна должна стоять, как влитая, и не реагировать на нагрев микросхемы, касания пальцами и т.п. Если сигнал плавает, значит, кварц не завелся и нужно подбирать кондёр дальше.

Хреновина на плате - модуль Аркмикро USBUART. Дешевле и проще всего выдрать из 35-гривневого кабеля для мобилки. Либо просто отрезать этот кусок платы, если USB функциональность не нужна :v2_smile:

Мегу необходимо сконфигурировать для работы от внешнего тактового источника. Ахтунг! Желательно иметь под рукой фьюз-доктор или HV программатор. :v2_wink2:

Ramiros
25.12.2010, 08:57
Для тех кто нехочет связываться с Algorithm Builder - все версии скомпилированы, нужно взять только соответствующий файл AY_Emul.bin и прошить любым програматором. Ниже см. скриншоты фьюзов:
Надо учитывать что в некоторых програматорах (например PonyProg) фьюзы нужно проинвертировать.

Ramiros
02.12.2011, 18:17
Обновилась версия эмулятора AY на AVR. В новой версии больше нет никаких упрощений, теперь все эмулируется по "чесному".
Добавился вариант для ATTiny2313. :)

А вот такой девайс я собрал на двух ATTiny2313:
на 1-й тиньке сделан мост USB-UART или AVR CDC-232, а на 2-й тиньке сделан сам AY эмулятор. Для этого девайса в архиве есть схема, печатка и прошивка для CDC-232 (немного исправленая) глючную оригинальную можно скачать отсюда http://www.recursion.jp/avrcdc/cdc-232.html.

Orionsoft
05.12.2011, 18:24
Ramiros,респект !
нет ли планов поддержать most advanced sound chip AY-3-8930 ?

Ramiros
06.12.2011, 10:41
Ramiros,респект !
нет ли планов поддержать most advanced sound chip AY-3-8930 ?

Хм... С трудом нашел на него даташит.
А где он хотя бы применялся ? чет гугль молчит на эту тему.

spensor
06.12.2011, 14:04
Ну почему же молчит, птица весьма говорливая:)
"The AY-3-8930, also known as AY8930, is an enhanced but mostly-backwards-compatible version of the AY-3-8910. The function of the BC2 pin is changed (it is ignored and assumed to be 0 regardless of the pin state), otherwise the pinout is the same as the AY-3-8910. This variant of the chip adds a number of major enhancements, such as separate envelopes for the three channels (as opposed to one shared envelope), variable duty-cycles, more bits of precision for note frequency, volume, and envelope frequency, and a much more configurable noise generator. It was used on the Covox Sound Master sound card for the IBM-PC. Very few games took advantage of it beyond the normal AY-3-8910 features."
http://www.enotes.com/topic/General_Instrument_AY-3-8910

Orionsoft
06.12.2011, 14:19
Хм... С трудом нашел на него даташит.
А где он хотя бы применялся ? чет гугль молчит на эту тему.

он был создан для прямой замены 8910 ,как более совершенный.
у меня такой вставлен в пентагон-128, а извлек я его из
музыкального проигрывателя platipus , омериканской фирмы Bally . newart, даже записал альбом на таком PSG.
а вообще надо в описании MAME смотреть , где такой
использовался в оригинале . imho , на туевой хуче аркадных
аппаратах и пинболах .
в идеале использовать такой avr , что-б каждый канал был независимым
( чтоб уже микшиировать самому ) :v2_dizzy_indy:

also:


The AY-3-8930, also known as AY8930, is an enhanced but mostly-backwards-compatible version of the AY-3-8910. The function of the BC2 pin is changed (it is ignored and assumed to be 0 regardless of the pin state), otherwise the pinout is the same as the AY-3-8910. This variant of the chip adds a number of major enhancements, such as separate envelopes for the three channels (as opposed to one shared envelope), variable duty-cycles, more bits of precision for note frequency, volume, and envelope frequency, and a much more configurable noise generator. It was used on the Covox Sound Master sound card for the IBM-PC. Very few games took advantage of it beyond the normal AY-3-8910 features. This chip may have only been produced by Microchip Technology.

Covox Sound Master
http://www.yvan256.net/soundcards/


also
http://en.wikipedia.org/wiki/General_Instrument_AY-3-8910

newart
06.12.2011, 15:59
newart, даже записал альбом на таком PSG.
И в процессе этого выяснил что совместимость с 8910 не 100%.

spensor
06.12.2011, 16:05
И в процессе этого выяснил что совместимость с 8910 не 100%.
Подробнее, plz.

Ramiros
06.12.2011, 16:16
Да, интересный зверек конечно :)
тоже интересно в чем несовместимость ?

newart
06.12.2011, 16:26
Подробнее, plz.
Речь идет об альбоме C-jeff'a - Konami.

http://ubiktune.org/releases/ubi001-c-jeff-konami

Так вот, после записи его с реала, выяснилось что в половине треков просто нет огибающей.

Orionsoft
06.12.2011, 16:40
Ramiros, а можно пожалуйста найденый даташит ?
а то у меня в бумажном виде было , как например http://www.michael-george-hart.com/articles/computerscience/AY-3-8910_8912-Programmable_Sound_Generator.pdf, но немогу найти =(

http://img521.imageshack_.us/img521/3450/chipcollection.th.jpg (http://imageshack_.us/photo/my-images/521/chipcollection.jpg/)

Uploaded with ImageShack.us (http://imageshack_.us)

---------- Post added at 16:40 ---------- Previous post was at 16:27 ----------


Речь идет об альбоме C-jeff'a - Konami.

http://ubiktune.org/releases/ubi001-c-jeff-konami

Так вот, после записи его с реала, выяснилось что в половине треков просто нет огибающей.

т к в AY-3-8930 там каждый канал свою огибающую можно задавать,
видимо особенность генерации даннных плейером для psg .
вы ж не в сыром виде его програмировали

newart
06.12.2011, 16:56
видимо особенность генерации даннных плейером для psg
Каким еще PSG? Я юзал стандартный pt3 плеер.

Orionsoft
06.12.2011, 17:00
ALSO

http://8bc.org/w/index.php/AY8930

Features

The chip has two software selectable modes, one of which is fully compatible with AY-3-8910. Other mode greatly enhances the same features. In the enhanced mode the chip has three channels and seven generators. Which generators are connected to output is defined by logical mixer.
Three channels with 32 levels of volume
Three square wave generators, 16-bit divider, 9 duty cycle settings
One noise generator, 8-bit divider
Three envelope generators, 16-bit divider, could control volume of the channel (the volume of the channel controlled either by volume register or envelope output)
Logical mixer, two bits per channel (tone enable, noise enable)
Two general purpose 8-bit I/O ports
Hardware

The chip was released in DIP40 package. Like in AY-3-8910, it has three separate analog outputs, one per channel, which has it's own DACs. The chip is pin-compatible with AY-3-8910 and could be used as replacement, because it starts in compatibility mode after reset.

http://www.atari-forum.com/viewtopic.php?f=15&t=6520&start=20

http://truechiptilldeath.com/blog/2009/08/07/ay8930-replacement/



Listen to this example: http://www.ym2149.com/ref/breath_ay8930_ym2149.zip

newart
06.12.2011, 17:10
Listen to this example: http://www.ym2149.com/ref/breath_ay8930_ym2149.zip
Странно как то звучит, глухо и бубняще.

Orionsoft
06.12.2011, 17:23
ВСё , нашел =)

распознал

Orionsoft
06.12.2011, 17:28
ну теперь всё очень просто .
для того чтоб понять , как это звучит
надо чтоб плейер ( pt3 ) проиграл это в формат регистр \ содержимое
как он там , PSG .

тогда можно понять , как это будет загружено в регистры

Orionsoft
06.12.2011, 19:18
свел их всех вместе

AlexFantasy
07.12.2011, 21:55
Ramiros, Ты бы лучше сэмулировал на ATMega8515 ИР23(2шт)+АП6,АП5,ИД7(2шт) = NEMO IDE, а еще лучше если divIDE!

Ramiros
08.12.2011, 14:20
Listen to this example: http://www.ym2149.com/ref/breath_ay8930_ym2149.zip

А можно в pt3 формате тоже самое ? хочу на своем эмуле послушать.

newart
08.12.2011, 16:08
А можно в pt3 формате тоже самое ? хочу на своем эмуле послушать.
Размечтался! :)
Это Атари, они там сильно химичат со звуком, прерывания 200 герц, и прочие извраты.

Orionsoft
09.12.2011, 07:41
если кто хочет поэкспериментировать с ay-3-8930
могу собрать стенд: желтый скорпион + 8930
аудио выход - каждый канал независимо будет оцифрован
присылайте откомпилированные модули под #8000
на адрес , он указан в прилагаемом изображении .
в теме письма укажите :AY-3-8930

результаты будут выложены на soundcloud
после оцифровки

spensor
09.12.2011, 11:57
Стенд то хорошо, но вот с программной поддержкой совсем никак. По идее надо в PC-эмуляторе поддержку добавить, и зарелизить версию трекера. В принципе, нехитрая задача. А уж потом слушать звучание на реальном железе, отлаживать особенности.

newart
10.12.2011, 01:37
В принципе, нехитрая задача
Ну да, неделя фулл тайм работы, подумаешь пустяки.

spensor
12.12.2011, 12:04
Ну может и неделя, но наверняка не месяцы. В эмуле, имхо, это относительно небольшая правка модуля YM2149 (в части 5-битного логарифмического ЦАП микры идентичны, новую табличку уровней составлять не прийдется), главная задача реализация дополнительных тоновых генераторов. С ZX-софтом посложнее, но писать всеравно не с нуля, можно сорцами воспользоваться. Но ZX-софт в любом случае понадобится, BASIC програмкой для проверки функционирования тут не отделаешься.

newart
12.12.2011, 12:33
В эмуле, имхо, это относительно небольшая правка модуля YM2149
Нужен комплексный подход. Unreal + Vortex + плеер под реал.

Orionsoft
12.12.2011, 18:35
Нужен комплексный подход. Unreal + Vortex + плеер под реал.

ну я смотрю , 4 микросхемы заказал ?
давайде , сделаем орган , как у тогогениальногопарня

selevo
18.12.2011, 07:54
а можно прошивку для Atmega48 ?
Вообще описание бы как быстро перекомпилить под другие частоты и кристаллы

Ramiros
18.12.2011, 11:41
На основе версии под Mega8 сделал и скомпилировал версию под Mega48.

Проверил в симуляторе, должно быть все ок.

Сложно дать общюю инструкцию для перекомпиляции под другие кристалы т.к. каждый раз надо курить даташит на кристал и исправления везде разные получаются :)

selevo
19.12.2011, 10:47
большое спасибо
Это потому что вы на асме написали :)

Дмитрий
19.12.2011, 10:59
Это потому что вы на асме написали
даж на сях некоторые регистры, таймеры и пр. периферия у МК имеют различия.

selevo
19.12.2011, 23:00
ну переделки всяко меньше при портировании.
А тут ещё алгоритм билдер, который даже не имет элементарной функции экспорта кода в нормальный текстовый ASM файл,а это можно было сделать.
Поэтому я на нём даже не начинал писать,варишся в собственном соку,отрезанный от всего мира людей.
Хотя я о таком мечтал асме,полу интерактивном.
Был бы экспорт в ASM.txt всё бы изменилось.

Он хорош, если всю жизнь писать, под один камень.
я так,вижу.

Сейчас его создатель похоже работает на Atmel
Есть вероятность что мы скоро увидим студию с вот таким вот интерактивным асмом ))

Lisitsin
27.05.2013, 12:08
Приветствую!
Прочитал ветку с самого начала. Автору высокий RESPECT!
Ramiros, хочу применить Вашу разработку в варианте на ATTiny2313 в своём проекте AVR ZX Spectrum. Соответственно есть один вопрос: как настроены прерывания INT0 и INT1 (задний или передний фронт (нарастание или спад))?
Спасибо.

Ramiros
19.06.2013, 11:32
как настроены прерывания INT0 и INT1 (задний или передний фронт (нарастание или спад))?
Спасибо.

нарастание.

alone
21.06.2013, 15:46
Запишите, как играет эта музыка (особенно интересует 1:15-1:18).

Ramiros
22.06.2013, 15:27
Запишите, как играет эта музыка (особенно интересует 1:15-1:18).

Ссылка http://files.mail.ru/CD31E9599834474E9DFE2C8F2073313E

Тональность немного ниже, т.к. кварц на 25МГц вместо 28МГц стоит.

Lisitsin
23.06.2013, 19:08
Подключил AY эмулятор на ATTiny2313 к своему AVR ZX. Не работает чё то.
Адрес пишу по переднему фронту BDIR (порт FFFD), данные - по переднему фронту BС1 (порт ВFFD), держу данные на шине порядка 450 наносекунд. Кварц на 27.000 МГц.
Народ, может кто-нибудь подкинет элементарный код для проверки? Например, включение простого тона в обоих каналах?
Буду премного благодарен !!!

Ramiros
23.06.2013, 21:30
Для записи адреса надо одновременно подавать лог.1 на BC1 и BDIR, причем оба сигнала должны сформироваться в течении 250 наносекунд. Для записи данных нужно подавать лог.1 только на BC1.
Еще бывает засада с кварцем, заводится не на 27МГц а на 9МГц.
Для проверки можно подкинуть кварц на 25МГц из какой нибудь дохлой материнки.

450 наносекунд дожно хватать для записи байта адреса/банных. Данные на шине должны быть готовы к моменту формирования сигналов BC1/BDIR, или можно одновременно с BC1/BDIR.

Lisitsin
24.06.2013, 20:50
Для записи адреса надо одновременно подавать лог.1 на BC1 и BDIR, причем оба сигнала должны сформироваться в течении 250 наносекунд. Для записи данных нужно подавать лог.1 только на BC1.
Еще бывает засада с кварцем, заводится не на 27МГц а на 9МГц.
Для проверки можно подкинуть кварц на 25МГц из какой нибудь дохлой материнки.

450 наносекунд дожно хватать для записи байта адреса/банных. Данные на шине должны быть готовы к моменту формирования сигналов BC1/BDIR, или можно одновременно с BC1/BDIR.

Исправил запись адреса. Всё равно чё-то молчит глухо, даже звука не издаёт. Запускал демку VIBRATE - там вроде бы музыка должна быть. Мож чё прошил криво? Как там используется EEPROM? Файл EEPROM есть, но он чёто пустой ... И ещё: порт D:4 болтается в воздухе. Так оно и должно быть? И ещё: а как выбирается аппаратно режим параллельной загрузки? Мож он у меня на UART сконфигурирован?

Ramiros
24.06.2013, 22:15
Исправил запись адреса. Всё равно чё-то молчит глухо, даже звука не издаёт. Запускал демку VIBRATE - там вроде бы музыка должна быть. Мож чё прошил криво? Как там используется EEPROM? Файл EEPROM есть, но он чёто пустой ... И ещё: порт D:4 болтается в воздухе. Так оно и должно быть?

EEPROM неиспользуется вообще.
Проверь кварц, у меня неодин кварц купленный в магазине незавелся т.к. все они оказались гармониковые. вернее заводились на 9МГц хотя написано 27.
D4 пусть болтается, безразницы.
Оба режима загрузки (параллельный/UART) активны и могут работать одновременно.

кстати, тини версия неподдерживает чтение регистров обратно в комп, это может сказаться если дема проверяет наличие AY путем чтения его регистров. Если нужна полноценная эмуляция чипа с режимом чтения, то надо использовать Mega16/32/8515

Lisitsin
24.06.2013, 22:39
кстати, тини версия неподдерживает чтение регистров обратно в комп, это может сказаться если дема проверяет наличие AY путем чтения его регистров. Если нужна полноценная эмуляция чипа с режимом чтения, то надо использовать Mega16/32/8515

А какую игрушку можно запустить для проверки эмулятора на ATTiny2313?

Ramiros
25.06.2013, 13:29
А какую игрушку можно запустить для проверки эмулятора на ATTiny2313?

Даже незнаю, я не спектрумист, с играми мало дела имел.

где можно почитать про твой АВРспектрум?

Lisitsin
25.06.2013, 13:39
где можно почитать про твой АВРспектрум?

http://zx.pk.ru/showthread.php?p=568366#post568366

и

http://radio-hobby.org/modules/news/article.php?storyid=1247

goodboy
25.06.2013, 13:44
А какую игрушку можно запустить для проверки эмулятора на ATTiny2313?
попробуйте Motos. она для48к+AY http://www.worldofspectrum.org/infoseekid.cgi?id=0003295

Lisitsin
25.06.2013, 21:05
попробуйте Motos. она для48к+AY http://www.worldofspectrum.org/infoseekid.cgi?id=0003295

Перешил 2313, запустил Mоtos. Появились какие-то щелчки в одном из каналов (запись во вложении)

Ramiros
25.06.2013, 22:11
Фьюзы правильно зашил? CKDIV8 случайно неактивен?

Lisitsin
25.06.2013, 22:22
Фьюзы правильно зашил? CKDIV8 случайно неактивен?

Не ... Установил только SUT0, CKSEL0 и что-то из BODLEVEL. Но щёлкает уже по ходу дела под музыку

Ramiros
25.06.2013, 22:37
я когда первый раз тиньку прошил, там по умолчанию CKDIV8 в 1 был, а я сразу незаметил и парился с ним долго.
а че с кварцем, уверен что правильно заводится?

Lisitsin
25.06.2013, 23:06
Тока что с дохлой мамы снял кварц на 25.000 МГц. Тот же эффект - щелчки в обоих каналах, по ходу под музыку. Насчёт CKDIV8 вкурсе, я его убрал. Кажется мне, что порты я не правильно что-то написал. Я правильно понимаю? При записи адреса в порт FFFD выставляю данные, устанавливаю одновременно в 1 BC1 и в 1 BDIR, жду, потом одновременно их сбрасываю. Далее, при записи данных в порт BFFD выставляю данные, устанавливаю в 1 BC1, жду, потом сбрасываю BC1. Или я что-то не то делаю?
Ну, Reset ещё у меня в воздухе балтается, то там у него внутри подтяжка ... А если ей сделать внешний сброс - то после паузы (порядка 1,5 с) снова появляются щелчки в обоих каналах, но только уже гораздо громче

Ramiros
26.06.2013, 11:19
Я правильно понимаю? При записи адреса в порт FFFD выставляю данные, устанавливаю одновременно в 1 BC1 и в 1 BDIR, жду, потом одновременно их сбрасываю. Далее, при записи данных в порт BFFD выставляю данные, устанавливаю в 1 BC1, жду, потом сбрасываю BC1. Или я что-то не то делаю?
Ну, Reset ещё у меня в воздухе балтается, то там у него внутри подтяжка ... А если ей сделать внешний сброс - то после паузы (порядка 1,5 с) снова появляются щелчки в обоих каналах, но только уже гораздо громче

Так то верно, только я про спековские порты незнаю какие за что отвечают.

Еще я тиньку в режиме параллельной загрузке на реале не тестировал, может че я накосячил, в симуляторе вроде как все работает, ну я еще ее попроверяю, мож чего найду.

Lisitsin
26.06.2013, 11:32
Так то верно, только я про спековские порты незнаю какие за что отвечают.

Еще я тиньку в режиме параллельной загрузке на реале не тестировал, может че я накосячил, в симуляторе вроде как все работает, ну я еще ее попроверяю, мож чего найду.

Ой, а в описалове на Ay-8910 (вложено) написано, что запись данных в AY идёт по переднему фронту BDIR, а я его BC1 пишу ... Мож в этом и косяк? Приду домой - попробую

Ramiros
26.06.2013, 11:44
Точно, BDIR запись данных т.е. INT1 :) Все должно заработать.

Lisitsin
26.06.2013, 18:43
Не, чё т не то, просто щёлкает и всё ... Хотя BC1 исправил на BDIR ... Может всё таки запись адреса это не одновременная установка BC1 и BDIR в 1? Ато если разрешены прерывания INT0 и INT1, то они начнут обслуживаться по очереди, в порядке преоритета ...

---------- Post added at 18:43 ---------- Previous post was at 18:26 ----------

Пробовал адрес писать только по BC, всё равно - щёлкает и всё ...

Ramiros
26.06.2013, 19:03
там неважно какое прерывание сработает первым, это только признак, что надо что то писать в регистры, а сразу после прерывания анализируются сигналы на PD2, PD3 а флаги прерываний принудительно сбрасываются.

Сколько времени держатся сигналы BC1, BDIR ?

Lisitsin
26.06.2013, 21:22
Ни в какую ... Пробовал и длительность увеличивать (12 нопов на моих 20 МГц-ах). Щёлкает под музыку - и всё. Мож с шиной данных чё не так? Я правильно понимаю? В порядке старшенства биты 7-6-5-4-3-2-1-0 соответствуют портам PB7-PB6-PB5-PD6-PD5-PB2-PB1-PB0 ? Я понял именно так. Всё остальное вроде бы тривиально ... А может ещё длительность увеличить надо?
А файл я прошивал ...\AY_Emul_4x_tiny2313\AY_Emul.bin

---------- Post added at 21:22 ---------- Previous post was at 20:24 ----------

И ещё момент: я использую микросхему Attiny2313A-SU а не Attiny2313-20. Но они вроде как уж совсем одинаковые ...

Ramiros
26.06.2013, 22:53
Сигналы на BC1,BDIR и шине данных желательно держать не менее 500 наносекунд,
про биты шины данных - все верно.
файл тоже верный.
даже незнаю в чем дело, еще раз прогу всю просмотрел, в симуляторе погонял, вроде бы все ок. По УАРТу проверено, 100% все работает.
Попробую на днях к реалу подцеплю, проверю.

Lisitsin
27.06.2013, 15:57
Попробую на днях к реалу подцеплю, проверю.

Так, что-то я припоминаю. У меня на атмеге 128 не пошли внешние прерывания при разгоне на 20 МГц, и пришлось делать через прерывания от аналогового компаратора. Они работают стабильно. На 2313 скорее всего такие же заморочки: при разгоне перестаёт реагировать на инты снаружи. А есть старая версия программы для более низкой частоты?

Ramiros
27.06.2013, 17:56
Так, что-то я припоминаю. У меня на атмеге 128 не пошли внешние прерывания при разгоне на 20 МГц, и пришлось делать через прерывания от аналогового компаратора. Они работают стабильно. На 2313 скорее всего такие же заморочки: при разгоне перестаёт реагировать на инты снаружи. А есть старая версия программы для более низкой частоты?

ATmega16-16PU отлично работает на реале, проверено, инты четко работают, вообще несталкивался с проблемой.

сегодня хотел на реале проверить тиньку, но чето случилось с реалом, негрузится нивкакую, похоже компаратор сдох. бейсик тока работает и все, пишу Load"" после чего белый экран и никакой реакции.

старой проги для тиньки нет.

Lisitsin
27.06.2013, 18:34
бейсик тока работает и все,
старой проги для тиньки нет.

Можно из Васика прямо простенькую прогу в кодах написать на включение тона и запустить её прям из бейсика. А я щас попробую на 20 МГц запуститься

---------- Post added at 18:34 ---------- Previous post was at 18:06 ----------

... Снижение на 20 МГц с увеличением задержки ничего не дало ...

psb
27.06.2013, 20:30
что ж вы мучаетесь-то... вот пары чисел для 65533 и 49149 портов:
1,3
7,254
8,15

будет пищать канал А.

Ramiros
27.06.2013, 21:15
ок. проверить смогу только через пару дней

Lisitsin
27.06.2013, 21:46
Пошло дело ... Но чёт подглюкивает

Ramiros
27.06.2013, 22:18
Пошло дело ... Но чёт подглюкивает

колись че сделал?

Lisitsin
27.06.2013, 22:38
Да чёта тиньку поменять пришлось ... Та шиться перестала вааще. Щас нопов подкинул, глюки пропали совсем )))

Lisitsin
28.06.2013, 18:53
Короче работает, нормально !
Респект автору!!!

Ramiros, а можко как-то 2313 докрутить до чтения из неё? Там ещё есть один порт лишний, как раз бы хватило ...

Ramiros
28.06.2013, 19:20
Короче работает, нормально !
Респект автору!!!

Ramiros, а можко как-то 2313 докрутить до чтения из неё? Там ещё есть один порт лишний, как раз бы хватило ...

дело в том, что шина данных раскидана на 2 порта PB и PD, много манипуляций, выдать данные то можно, но никак неполучается уложится в необходимый временной интервал. На атмеге16 там один порт под ШД - PA, проще, поэтому времени хватает.

а ты сделай в своей атмеге как бы теневые регистры AY, и при чтении данных бери оттуда.

Запиши музон из какой нибудь демки, хочится послушать.

Lisitsin
28.06.2013, 20:13
дело в том, что шина данных раскидана на 2 порта PB и PD, много манипуляций, выдать данные то можно, но никак неполучается уложится в необходимый временной интервал. На атмеге16 там один порт под ШД - PA, проще, поэтому времени хватает.

а ты сделай в своей атмеге как бы теневые регистры AY, и при чтении данных бери оттуда.

Запиши музон из какой нибудь демки, хочится послушать.

Если для реального спектрума времянки важны, то для эмуляторного можно и подождать где надо ... Если надумаете сделать, буду премного благодарен. Кстати, в июле - то биш через пару дней - редакция журнала Радио обещала выпустить мою статью по AVR ZX Spectrum. Если правда выпустят - мы с Вами могли бы подготовить ещё одну статью - по подключению эмулятора AY к оному.
Демка vibrate играть музыку у меня отказалась. Какие ещё можно демки послушать? Игрушек сейчас подназаписываю ...

---------- Post added at 20:13 ---------- Previous post was at 19:35 ----------

Здесь буду выкладывать записи

Lisitsin
28.06.2013, 20:39
Блин, у ноута вход моно почему-то

Ramiros
28.06.2013, 20:58
Блин, у ноута вход моно почему-то

возможно настроено как вход с микрофона, попробуй в микшере выбрать линейный вход. они на один разъем совмещены

Lisitsin
28.06.2013, 21:16
возможно настроено как вход с микрофона, попробуй в микшере выбрать линейный вход. они на один разъем совмещены

Нет нифига вообще линейного входа, только микрофонный один, и не переназначается. Ноут Asus K-53E

goodboy
28.06.2013, 21:34
Демка vibrate играть музыку у меня отказалась.
вполне возможно у вас кривая эмуляция команд outi/outd

Lisitsin
28.06.2013, 21:40
вполне возможно у вас кривая эмуляция команд outi/outd

Да, эт точно. Она распространяется у меня только на порт 254.

goodboy
28.06.2013, 22:21
Да, эт точно. Она распространяется у меня только на порт 254. а в AY плейерах эти команды частенько используются.
кроме того при проигрывании цифровок даже порты AY могут быть разными
(главное чтобы были правильно установлены те адресные линии на которых сделан порт).

Lisitsin
28.06.2013, 22:36
Исправил OUTI/OUTD, пошло дело ...

Ramiros
28.06.2013, 22:53
Есть дема для 48-го спека, там все время узоры разные рисуются и музыка играет суперская точнее много известных музонов по кругу, я ее на реале запускал и часами гонял, тащился :) только вот забыл как называется, и найти немогу. файл назывался что то типа snla.sna или как то так...

Lisitsin
28.06.2013, 23:01
файл назывался что то типа snla.sna или как то так...

А я гружусь с ленты, мне аудиоформат нужен. Конвертер есть, он .tzx и .tap в вав конвертирует ...

Ramiros
28.06.2013, 23:15
нашел!

goodboy
28.06.2013, 23:54
нашел!
сомневаюсь что это (с оригинальной защитой) запустится на эмуле у Лисицына
(надеюсь фамилия не исковеркал)

Lisitsin
29.06.2013, 08:54
сомневаюсь что это (с оригинальной защитой) запустится на эмуле у Лисицына
(надеюсь фамилия не исковеркал)

Фамилию то правильно, а вот программка правда не идёт ... В сбой уходит. А в чём там заключается защита, что на эмуляторе не хочет работать?

goodboy
29.06.2013, 11:57
программка правда не идёт ... В сбой уходит. А в чём там заключается защита, что на эмуляторе не хочет работать?

в ксорке данных используется команда #ED,#7F возможно она некорректно отрабатывается (особенно по отношению к регистру R).
ещё один известный мне эмуль почему-то обнуляет A после исполнения команды BIT 7,(IY-79) и соответственно данные неправильно раскодируются

Lisitsin
29.06.2013, 12:05
в ксорке данных используется команда #ED,#7F

Не понял ... ED 7F это ж пустая команда вроде бы ???

goodboy
29.06.2013, 12:26
Не понял ... ED 7F это ж пустая команда вроде бы ??? вполне возможно что после её исполнения у вас регистр R неправильно увеличивается, но это всё догадки

Lisitsin
29.06.2013, 12:50
вполне возможно что после её исполнения у вас регистр R неправильно увеличивается, но это всё догадки
R у меня просто инкрементируется, как после любой команды ...

goodboy
29.06.2013, 12:57
не помню как у вас устроен отладчик, но кажется значения регистров в заданной точке вы можете сообщить ?

Lisitsin
29.06.2013, 15:02
не помню как у вас устроен отладчик, но кажется значения регистров в заданной точке вы можете сообщить ?

Можно будет сделать ... Нужно тоько условие останова и необходимый объём регистров. Но наверное это в личку, ато мы щас тут всё заоффтопим ...

goodboy
29.06.2013, 15:36
кодовый блок находящийся в бейсике стартует с адреса #5E01.
найди эмуль с удобным для тебя отладчиком (я обычно использую SpecEmu) и начинай потихоньку сравнивать результаты