![]() |
Quote:
Генератор построен на основе циклического полинома (частный случай полинома Жегалкина). Грубо говоря есть сдвиговый регистр Q[n] и случайная последовательность строится следующим образом: DI[вход сдвигового регистра]=Q[i] xor Q[l] xor ... xor Q[m] xor ZEROKILL; ZEROKILL=1 если Q[0..n-1]==0 (это такая страховка чтобы регистр не сбросился в 0); Главное подобрать разряды регистра участвующие в суммировании таким образом чтобы случайная последовательность была наиболее длинная (так называемый совершенный полином). В принципе в вышеуказанныой прошивке уже подобранны разряды. Вообще на таких полиномах строятся рандом генераторы для всяких хардваре-устройств. |
Quote:
Quote:
|
Сегодня капался в прайсах, и выяснил что есть такой процессор C51F411, очень хороший, имеет 32 ноги из них 29 это свободные порты и самое главное, что 50 мипсов, стоит немного дороже $7.8. Я ориентируюсь на него, у него ещё и USB есть. Так что сегодня сделаю версию под 50 мипсов и без потери качества. И ЦАП у него на 200 килогерц и два Serial-Port'а. За такие деньги это давольно таки неплохо ... Если всё получится, то программа уменьшится вдвое за счёт 50-ти мипсов.
|
Help With DOC ...
Блин ... Нужна помощь ... CHRV, спасибо, конечно, но в VHDL'е я не очень разбираюсь ... Хотя я понимаю, что там нет ничего особо мудрёного, но всё же хочется найти чёткое описание AY'а ... Не поверхностное а именно чёткое, что после записи в такой-то регистр, например, сбрасывается счётчик огибающей и в т.д. Вообщем шипения с сделал, рандом получил и звучит велеколепно, но некоторые вещи меня довели до бешенства. Как вы помните, что я заметил разницу между проигрыванием музыки в Mental Mastarbation'е. Бился я очень долго, никак не получалось, потом пришёл домой с работы и решил запустить на реальном Speccy этот Mental ... И заметил, что у меня-то какраз самое что не на есть точно, а эмулятор немного искажает ... Я по натуре дотошный и каждый левый звук бкдет меня достовать. Пробовал я на Unreal'е. Вроде всё хорошё, уже был доволен как решил попробовать ещё пару демок. Нашёл какой-то гифт, называемый EXOTIC_M. Там есть часть от ACID'а. На моём AY'ке просто ужас какой-то ... Совсем не то. Эмулятор сэмулировал лучше, да же скажем на слух звучит просто идеально. На реальном Speccy ни как у меня не как в эмуялоре. Я да же предположил, что писали эту музыку на эмуляторе. В чём дело ??? Найдите, пожалуйста, описание. Мне нужно чёткое определение, что если в регистре R01 лежит 0, то это частота такая-то ... Как я понял это 1750000 герц, я прав ??? Соответственно, ежели 1, то делится на два !!! Получается формула 1750000/(R01+1) !!! Так ??? И по поводу регистра R6, какая частота получается тут ??? Как я понял, это рандомное значение выбирается с частотой 1750000/(R6+1) !!! Вообщем нужно описание, а то делать путям втыка очень сложно ... В среду будет первый рабочий день, и надеюсь что за среду разберусь в чём дело ... А так всё, вообщем, играет велеколепно !!!
|
2
Robus Надо код на C реализации генератора шума AY? Да и вобще эмуляции всего AY на C ? :-) |
Quote:
|
Quote:
Quote:
Дело в том, что на эмуляции AY "собака" съедена и исходные тексты и всевозможные описание можно посмотреть на сайте Сергея Бульбы. PS: ты забыл добавить вот это: :v2_finge: |
Quote:
|
Quote:
|
А ты на IF'ы внимания не обращай. Глянь как логика реализована. Имхо, из Си в логику перевести большого ума не надо.
А на счет "25 мипсов" и "в 6-ть ра быстрее чем на Z80" это ты погорячился... В Спеке Z80 только в турбе работает чуть быстрее ОДНОГО мипса. А 25 мипсов - это очень хороший процессор. ;) |
Quote:
LD HL,1234 LD DE,21346 ADD HL,DE Длее: MOV A,REGA+0 ADD A,REGB+0 MOV REGA+0,A MOV A,REGA+1 ADD A,REGB+1 MOV REGA+1,A Каждая окманда два байта и в самом быстром Cygnal'е по два такта !!! Но это лишь малый пример, который по тактом возможно и сравнится, но если взять в кучу, то Intal имеет разновидность вооообще всех клмбинаций команд всего 256, про Z80, я говорить не буду, все и так понимаю выгоду. Так что Z80 даёт большую фору Intel51 ... А к Си я не имею никаких притензий, как и к любому языку высокого уровня. Мало того, сам постоянно ими пользуюсь, но ниразу в голову не приходило их использовать в екстремальных кодах. А именно генерация звука как на ПиЦи так и вообще везде это трудоёмкий процесс и делать его на Си для меня малость смешно. И я уже изучил методы, которые написаны на Си. Так же я пару часов тому назад таки нашёл описание AY'ка и понял свои ошибки ... В среду постараюсь доделать всё до конца. 25 это хороший процессор, но он был бы уникален если бы вместо ядра Intel51 ядро Z80 ... Жаль, что последние разработки Zilog'а уступают в скоростях и ценах, как вообщем-то и наличии всяким примочек внутри, например ЦАПов, АЦП, и многое другое. Вообщем, буду доделывать плейер ... Скоро понадобятся наработки по проигрыванию PT3 ... Заодно вопрос на будущее, а подойдёт-ли плеер только PT3 ??? С намёком конвертации из остальных форматов в него ... |
Quote:
И ещё прикольно бы было схему посмотреть (минимальную). Надо оценить доступность компонентов и возможность самостоятельной сборки. Это я к тому, что я хотел на AVR AY эмулировать, но оно как-то не получается. Поэтому есть очень хрупкая идея слияния с моим проектом. |
Кстати, по аналогии с PT3, мне задают вопрос насчёт TAP (у меня только поддержка TZX), но конвертация в TZX тоже дело несложное. Я не знаток форматов AY и если PT3 достаточно распространён и "широкий" по возможностям, то нужно остановиться на нём.
|
Quote:
Quote:
Quote:
Quote:
|
Quote:
Quote:
|
Конечно понятно, что если через UART будет играть, то в принципе можно повешать другой контроллер и рулить... Но тут есть свои минусы...
|
Quote:
|
Quote:
|
Quote:
Заранее спасибо ... |
Quote:
Только в другом треде (например в этом http://zx.pk.ru/showthread.php?t=2960) или в личке |
Quote:
|
Quote:
|
Quote:
|
AY-Player ...
1 Attachment(s)
Итак ... Как и обещал, сделал последнюю версию ... Лажа была смехотворная ... Проверено, вся музыка играет точно так же как на настоящем AY'ке ... В демке, которая игралась неправельно игрвется всё так как на настоящем AY'ке ... А точнее не совсем так как на эмуляторе. Так же точно играется на моём плеере. Перепроверил около 20-ти дисков с софтом, вроде всё отлично !!! Завтра постараюсь развести схему и выложить, но собиру её не раньше чем через неделю, - плату будут разводить ... Теперь сожусь за плеер PT3 !!! Надеюсь, что с ним будет проще. Так же надеюсь на помощь от тех, кто делал плееры для PT3, наверное жешь там много всяческих тонкостей !!!
|
хе, столько лет считалось, что это в принципе невозможно, а Robus взял и за пару недель сделал :) респект! жаль тока МК какой-то редкий, у нас в магазинах таких нету..
|
Quote:
-------------- В крайнем случае готов купить в Киеве и отослать !!! Да же запаять на плату !!! Только предупреждаю, десяток плат я согласен сделать, но больше просто не хочется тратить время. Электроника, не моё это призвание ... |
Quote:
Купить можно запросто, достаточно поискать на www.efind.ru Кстати оценочный набор C8051F411-EK стоит от 35 до 45$ В Екатеринбурге продукцию Silabs продает фирма "ЭФО" тел: (343) 378-41-22 |
Quote:
Дороже конечно пока реала, но зато интересно использовать в энерго-экономных устройствах, а если еще на АРМ перевести вообще здорово будет. От меня лично пожилание - наиболее подробно исходник прошивки комментировать :). |
Всё конечно прикольно, я вот только не пойму: устройство подключается через UART к ПЦ, а ведь можно подключить AY через LPT к ПЦ. В чём фишка то, кроме конечно эмуляции на асме?
Я сомневаюсь что можно на Спеке даже с ZX-MCard обеспечить необходимую скорость потока через RS232, значит получается, что это устройство исключительно для обладателей ПЦ? Не конечно прикольно скачать исходник и дальше сделать как хочешь, но на это не многие способны. |
"но зато интересно использовать "
Можно сказать ширее - ещё один кирпичик в фундамент будущего ZX :) (В переводе для CHRV - АТМ-3 :) ) |
Quote:
|
Quote:
Quote:
Можно и на АРМ !!! Темболее, что я в свой асм уже влепил полную поддержку АРМ'а, но 7-ого !!! Но пока нужно этот вариант доделать. Quote:
Quote:
Quote:
------------------ А теперь о главном ... Развёл схему, только забыл развести кнопки, хотел делать минимум 4-ре, типа перемотки. Все компоненты выбирались по методу наличия их на складах Киевских фирм и, соответственно, цене. Итак: C8051F410 - 40 грн. MAX3221 (TexasInstrument) (Буфер RS232) - 6 грн AT25F1024 (Atmel) (EEProm 128к) - 7 грн TDA7050 (Philips) (Уселитель Стерео) - 4 грн. Итого 40+6+7+4=57 грн. Плюс добавляем где-то 2 грн на всякие резисторы и ещё 3 грн на бокс под пальчиковые бетарейки. Всё вместе 57+2+3=62. Округляем на мелкие расходы и, допустим, будет 70 грн. Это в долларах получается $14. Завтра посмотрю память по круче, например на 1 метр. Но как по мне, так в 128 к можно смело впихнуть 40 мелодий PT3. Как только разберусь как из ORCAD'а перевести схему в PNG, сразу выложу. Завтра постараюсь развести плату. Возможно, что завтра у меня будет много работы, и придётся отложить эту затею до понедельника, поскольку в выходные я уезжаю на остров, - рыбу ловить ... ------------------ Пошёл капаться в ORCAD'е ... Да ... Забыл сказать самое главное ... Жрёт эта штука около 15-20 милиампер. Безусловно, в режиме молчания RS232 !!! Так же можно всё это подключить к блоку питания на 3.5 вольт. Такие блоки питания продаются на любом радио-рынке !!! |
1 Attachment(s)
Блин ... Зачем это ограничение в 19 килобайт на картинки ??? Вообщем первый вариант схемы лежит в этом архиве !!! Надеюсь формат TIF смогут просмотреть все ???
|
а я правильно понял , что микс каналов происходит "внутри"
- можно ли это будет потом менять с кнопочек ? |
Quote:
|
Quote:
Quote:
|
Quote:
Меня ещё очень интересует проигрывать музыку с Atari !!! По сути там тот же AY, только на четыре канала, правда частота на него подаётся, помоему, в три раза меньше ... |
Quote:
|
Quote:
Довольно приличные девайсы и цена не страшная. JTAG можно через LPT сделать (Wiggler). А главное IAR WorkBench ( там и асм и С ) со всем этим делом стыкуется. |
Quote:
Что же касается PLM'ок, то они актуальны при больших обьемах цифровой обработки сигналов (цифровые фильтры, например), там, где современные микроконтроллеры не справляются. Но такие PLM, т.е. FPGA (с умножителями и т.д.) стоят сами по себе достаточно дорого. |
| All times are GMT +4. The time now is 17:46. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.