Speccy для XXI века — обзор аппаратных платформ

Subliminal Extacy #05

Speccy для XXI века
Автор: samsterman

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

Текущее положение дел

В последние годы создание клона ZX Spectrum стало, пожалуй, слишком простым делом. Проблема, однако, в том, чтобы сделать качественное и надежное устройство, которое будет работать так, как мы привыкли. Часто появляются различные расширения, чья звезда вспыхивает и быстро гаснет. У них приятный дизайн, добавлены различные улучшения, но часто им не хватает сил для главного — честной эмуляции реального ZX Spectrum и основных периферийных устройств. И слишком часто они не обладают запасом прочности для требований будущих лет, для обновлений или просто необходимых изменений.

Создатель MB-02, лучшего дискового контроллера для ZX Spectrum, отреагировал на эту ситуацию несколько лет назад, когда начал работу над новой платформой eLeMeNt на базе технологии FPGA. Он разработал перспективное «железо», которое с самого начала предназначалось главным образом для того, чтобы честно выполнять базовые вещи, требуемые каждым фанатом ZX Spectrum: точно эмулировать различные модели ZX Spectrum, их тайминги, а также корректно запускать и отображать различное программное обеспечение, демо-эффекты, экранные трюки и т.д.

Реализация была такой, что пользователю не нужно было покупать новое оборудование даже спустя годы. Пользователь просто обновляет ядро FPGA и сервисную прошивку. Плюс требование к высококачественному цифровому выходу как для видео, так и для аудио. Аппаратура eLeMeNt ZX/MB до сих пор является единственной, где нам нужен только один кабель HDMI для видео и аудио, и которая при этом верно отображает оригинальные 50-герцовые эффекты и трюки различных видеосхем ULA в сочетании с расширениями (ULA+, Timex, Gigascreen и цветной HiRes) и звуками нескольких чипов AY, SAA и FM.

Интерфейсы в XXI веке, или всё в одном

Целью было расширить возможности классических моделей ZX Spectrum, унифицировать распространенные расширения и предоставить функционал для разных моделей ZX Spectrum, от самых старых до новых. Результатом стал интерфейс MB03+, который поддерживает все старые оригиналы, а также многочисленные клоны, такие как Humble, Karabas 128, Sparrow, Nucleon... Емкость MB03+ огромна, и сегодня он уже содержит богатый набор внутренних интерфейсов.

Учитывая реализацию на FPGA, можно с уверенностью сказать, что развитие MB03+ продолжается. Но есть нюанс: дизайн платы не менялся с 2019 года, и внутри есть два разъема, ожидающие, когда другие разработчики железа добавят внутренние платы расширения, например, для старых устройств, таких как plusD или miniD80, или платы с разъемами Centronics или USB... Ядро FPGA огромно, оно может содержать интерфейс General Sound, и при этом останется место для других интерфейсов.

К концу 2021 года почти все требования по расширению были выполнены, и основные функции MB03+ больше не меняются. Он постепенно тестировался с более быстрыми ZX Spectrum (14 МГц и выше), улучшаются UART и Wi-Fi соединения. Небольшим изменением стала замена обычной батарейки (для RTC) на самозаряжающуюся.

В 2023 году вышла новая версия Quickstart. Последнее ядро и SetUp вышли в конце ноября 2023 года. Думаю, что и в последующие годы развитие не затихнет, повышенный интерес пользователей к одной важной вещи налицо, и она называется: HGFX.

Простой современный ZX Spectrum

В 2021 году был создан eLeMeNt ZX, с реальным процессором Z80 на частоте 20 МГц, с функциями, аналогичными MB03+. В качестве замены старым материнским платам, но также и как самостоятельный компьютер, который быстро загружается в любую из моделей ZX Spectrum, предоставляя любой интерфейс в любой комбинации по желанию пользователя. eLeMeNt ZX был спроектирован с достаточным запасом и на перспективу, чтобы противостоять быстрому устареванию оборудования. В настоящее время он по-прежнему обладает наибольшей емкостью FPGA, большей, чем SpecNext или ZX Tres, при этом его можно расширять внутренне, начиная с замены модуля с чипом FPGA.

Материнская плата eLeMeNt ZX уже полгода имеет окончательную версию дизайна v2, в комплекте с третьим разъемом USB и внутренним модулем Wi-Fi. Поскольку количество старых корпусов подходит к концу, он доступен как автономный компьютер в корпусе Tiny, с клавиатурой и мышью от PC. Как и в случае с MB03+, ядро и прошивка постоянно обновляются и улучшаются (см. новый Didaktik Gama 80KB). Хитом 2023 года стал универсальный Wi-Fi (для всех версий MB03+, Zx-Uno и Zx128-AY!) и внутренний RTC, либо как отдельный интерфейс, либо как часть FPGA (работает до выключения и устанавливается по интернету через Wi-Fi).

Приложения, приложения, приложения

Насколько я помню, много лет назад было гораздо больше людей, утверждавших, что инструменты для Spectrum должны быть нативными. Используете ли вы Sjasm, Pasmo, zasm, LnxAsm, или предпочитаете одну из старых сред разработки для TR-DOS, SpecAsm для esxDOS или даже Tornado или Prometheus? Улучшенные возможности и связанные расширения дают разработчикам больше выбора. С аппаратурой eLeMeNt работать довольно легко, не сталкиваясь с ограничениями памяти, накопителей или крошечного разрешения экрана и нечитаемых символов.

К трио профи-софта — файловому менеджеру LnxCopy, LnxView и LnxCommand — в 2023 году добавился профи-текстовый редактор. Люди иногда спрашивают, будут ли когда-нибудь созданы такие мощные инструменты для классического Speccy 48K. Ответ — НЕТ. Пришлось бы пойти на слишком много компромиссов. Современное ПО записывает на FAT (а не просто читает архивы TAP), поддерживает мышь и PC-клавиатуру. На eLeMeNt ZX можно отредактировать текстовый файл из Windows или просмотреть анимированный GIF. Добавленные расширения и функции — не просто для галочки. Они позволяют разработчикам и хардкорным пользователям работать на Speccy, используя преимущества расширений, оставляя больше места для оригинальной системы ZX. Они могут переключаться между вариантами и опциями без необходимости перезагрузки компьютера.

В другом обычном ПО eLeMeNt в основном выигрывает от возможности hw-порта ZX-Uno. Он может включать турбо-режим ZX-Uno в LFN FileBrowser или считывать внешнюю клавиатуру в PC-скан-кодах. В остальном eLeMeNt в основном подключен к сообществу esxDOS, в котором постепенно, но медленно появляется всё больше классического софта.

Попробуйте отличный ассемблер .SPECASM, мощный шестнадцатеричный редактор .EDIT или утилиту .SERCP для сопряжения и последовательной передачи данных через обычный USB-кабель.

Звук и графика

Наконец, несколько слов о вещах, которые с технической стороны наиболее интересны и привлекают внимание. Что касается звука, eLeMeNt ZX/MB включает в себя все традиционные звуковые чипы и ЦАП, включая потрясающий General Sound. eLeMeNt ждет, когда кто-нибудь напишет новую прошивку для General Sound, например, с поддержкой 16 каналов.

Дискуссии продолжаются относительно того, нужна ли лучшая поддержка DMA для создания музыки. Для eLeMeNt были созданы первые игры с прямой поддержкой чипа SID, реализованного в FPGA. Автор eLeMeNt представляет решение, при котором подключенный SID или другие чипы не конфликтуют друг с другом. Среди прочего, он сделал чип SAA доступным по дополнительному адресу, вне перегруженного порта 255. Нет необходимости подключать чип SID к чипу AY(!) и его нельзя размещать по адресу, который уже занят другими устройствами. Давайте все задумаемся об этом!

В графике eLeMeNt ZX/MB продолжает там, где остановились SAM Coupe и Timex. Он раскрашивает HiRes-графику и добавляет тонкие атрибуты (см. текст этого журнала, если вы запустите его на MB03+ или eLeMeNt ZX). И в довершение всего — палитра TrueColour. При всем этом, даже в новых режимах, система из двух страниц ZX-Screen или VideoRAM используется эффективно. Конечно, есть немерцающий Gigascreen и другие эффекты, включая ретро-сканлайны. В производстве аудио и видео одновременно eLeMeNt находится на переднем крае разработки, ни один клон ZX Spectrum на сегодняшний день не может так хорошо синхронизировать видео и аудио через соединение DVI/HDMI.

После реализации традиционных видеосистем eLeMeNt ZX пришел с поддержкой ZX Planar — изящной системы, которая сосуществует с видеопамятью ZX и позволяет раскрашивать каждый отдельный пиксель. Это более гибко и менее требовательно, чем традиционные методы отрисовки для экрана ZX. Вы можете прочитать об этом подробнее в серии из 6 статей, размещенных на форуме Spectrum Computing. Платформа eLeMeNt ZX/MB не идет по пути игровых консолей, PC-графики или спрайтов. Темой года, несомненно, будет вопрос, добавлять ли HGFX также и в интерфейс MB03+, поскольку некоторые более требовательные программы потребуют 7 МГц. С другой стороны, HGFX также может выполнять высокопроизводительный режим по аналогии с Apple2 GS, где линии (каркасная модель) могут использоваться для отображения заполненной 3D-графики (продемонстрировано в демо HFX NICCC после нажатия клавиш 1 и 2).

Старый добрый Speccy для XXI века

Пожалуй, достаточно кратко напомнить, что характеристика платформы eLeMeNt заключается не в разделении и исключении, а в объединении и накоплении. Автор eLeMeNt не склонен выпускать различные ограниченные ядра и отдельные варианты ZX Spectrum, всегда с разными и в чем-то обедненными функциями. За пять лет он ясно показал, что мы можем легко иметь весь мир ZX Spectrum вместе, с дополнениями с Запада и Востока, всегда в верном качестве.

Команда eLeMeNt ZX/MB была бы благодарна за дальнейшие предложения и комментарии о том, что улучшить и как действовать дальше. Вы можете найти нас в Telegram: https://t.me/eLeMeNt_forum.

Поделитесь вашим мнением о статье