ZX_MURMULATOR#0. Начало.
Эмуляция ZX Spectrum совместимых компьютеров на современных микроконтроллерах(МК) очень интересное явление, действующее в духе оригинальных машинок.
Есть недорогие МК, которые имеют достаточную вычислительную мощность и количество оперативной памяти, чтобы сымитировать все основные функции спектрума. Конечно, цена имеет значение. Именно этот низкий показатель всегда отличал спектрумы от других конкурентов.
В качестве основы для своего проекта я взял Raspberry Pi Pico модули, стоимостью около 3$.
Интересующие нас характеристики:
• Двухъядерный процессор Arm Cortex M0 + 133 МГц
• 264кб SRAM и 2 Мб встроенной флэш-памяти
Процессор, кстати, неплохо разгоняется. Сейчас я использую частоту 252МГц, чтобы иметь запас на перспективу и понять насколько стабилен такой сумасшедший разгон. Пока проблем не было ни в модулях референс дизайна(зелёных) ни в чуть более дешёвых чёрных с Алиекспресс.
Сначала я решил определиться со схемой, так как это основа на которую потом накладывается софтовая часть.
Так как эта схема kiCad(софта для разработки плат), то читабельность её не очень. Но благодаря простоте с повторением обычно не возникает проблем.
Как и в схеме переходника на VGA&HDMI мной применён универсальный подход к видеовыходу. Объёденены посадочные места под гнёзда VGA и HDMI.
В режиме VGA надо запаять соответствующее гнездо и резисторы R1-R8 должны быть следующих номиналов 820,390,820,390,820,390,100,100 Ом соответственно. Номиналы R1-R6 можно слегка менять, подбирая необходимые цвета. JP1-JP3 для VGA режима должны быть замкнуты. HDMI режим пока не реализован. Разъём SD карты также на перспективу.
Чтобы сделать плату максимально универсальной, все сигналы, что могут понадобиться в будущем выведены на разъём EXT. В базовой версии, без подключения внешних модулей надо будет замкнуть контакты этого разъёма(попарно) : 17-18, 21-22, 23-24, 25-26, 29-30, 31-32. В проекте печатной платы можно использовать и выводные и SMD компоненты.
Герберы, для заказа плат.
gerber37NJU22.zip243.24 KbDownload
Определившись со схемой и печатной платой можно приступить к написанию софта.
Софтовая часть находится в процессе разработки.
Исходники
zx_emul_03.zip140.71 KbDownload
и скомпилированная прошивка.
APPLICATION.uf2329 KbDownload
группа для обсуждений проекта https://t.me/ZX_MURMULATOR