...

среда, 9 апреля 2014 г.

Звук на чипе Yamaha AY-3-8910 (или YM2149F) родом с ZX Spectrum на PC через LPT-порт

У меня не было в детстве спектрума, поэтому о его музыкальных возможностях с дополнительным музыкальным «сопроцессором», как иногда называют микросхему трехканального генератора Yamaha AY-3-8910, мне было мало что известно.



Сравнительно недавно спектрум-совместимый компьютер у меня все-таки появился, но это был клон Spectrum-48, без музыкального чипа. Ну тем лучше, подумал я, есть простор для творчества — можно увеличить память, можно прикрутить дисковод, ну и конечно важная доработка — поставить музыкальный чип. Из Китая были заказаны пару чипов YM2149F:


Почему именно они, я сейчас уже не помню, может они дешевле AY-3-8910, может просто в наличии в тот момент были. В общем — это аналог AY-3-8910, по распиновке не отличается, отличается разрядностью огибающей, и мелодии из-за этого немного звучат по-разному (тембр звука). Я подумал, что мне это не столь принципиально. Играть будет — и то радость. Почему заказал пару? Ну, одна в спектрум, а одна про запас, на случай брака у первой, или моих кривых рук при подключении. И вот они приехали, и пока для спектрума я думал с разводкой платы, мне захотелось как-то проверить чипы. И тут я наткнулся на старые проекты подключения данных микросхем к LPT-порту компьютера.


Демо


Послушать звучание готового девайса можно тут: http://ift.tt/1n2D3X6. Там есть и «экспериментальные» записи, сделанные во время отладки работы устройства, и поэтому качество на таких записях не впечатляет. Но общее представление о «звуке» дать должно.


Железо




Вот некоторые из схем подключения AY-3-8910 к LPT порту компьютера, которые можно встретить в интернете:

LPT AY by Vitaly Mayatskih & Alexander Kulik [Wolf^eTc/Scene]




Простая схема, в ней мне понравился стерео микшер каналов и не понравился генератор тактовой частоты на двух микросхемах. Есть еще такой вариант:


ZX Spectrum Computer Sound Chip Emulator (LPT-YM.7z)



image

Тут мне понравился простой генератор частоты, но не понравился усилитель моно и стабилизатор с 9 вольт. В итоге, я решил взять микшер от первой схемы, генератор тактовой частоты от второй. Питать схему решил от +5V по USB, таким образом отказался от девяти вольтового стабилизатора. В ряде экспериментов выяснилось, что для полного счастья необходимо еще контролировать управляющий сигнал BDIR, поэтому на схеме появился этот сигнал, заведенный на первый пин LPT (Strobe). Сигнал Strobe в LPT инвертированный, и по хорошему нужно бы было поставить транзистор, такой как у сигнала RESET, для обратной инверсии, но можно и просто помнить о том, что если шлем 1, то BDIR = 0 и если шлем 0, то BDIR = 1. В результате окончательная схема приняла такой вид:


Собранное устройство:


Софт




Что же касается программной поддержки, то есть замечательный плеер ZXTune by Vitamin (суппорт тред). Автор любезно включил поддержку этого девайса в свой плеер, таким образом стало возможным проигрывание музыкальных форматов не только с ZX Spectrum, но и с других компьютеров, например с Atari ST или Amstrad CPC. Программа работает на Win XP, Win 7 x32 и Win 7 x64 (с поддержкой LPT девайса), а вообще она кросс-платформенная и доступна так же для мобильных платформ.

Огромнейшая коллекция чип-тюнов Modland доступна на http://ift.tt/1n2D5hT Там около 80Гб модулей всех мастей и жанров. Конкретно по ZX есть отдельный сайт: zxtunes.com/ В общем, слушать не переслушать.


This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий