NeoGS — различия между версиями
Zxdn (обсуждение | вклад) (→Возможности) |
Foxweb (обсуждение | вклад) |
||
Строка 13: | Строка 13: | ||
== Ревизии == | == Ревизии == | ||
+ | [[Изображение:12885815215_f2f22c7b9a_o.jpg|thumb|right|NeoGS ревизии C.]] | ||
На текущий момент существует три ревизии платы: | На текущий момент существует три ревизии платы: | ||
Версия 09:57, 3 марта 2014
NeoGS — звуковая карта для отечественных клонов ZX Spectrum, разработанная группой NedoPC в 2008 году. Программно полностью совместима с General Sound и имеет расширенные возможности.
Содержание
Разработка
В 2004 году на этапе начального обсуждения новой звуковой карты было два возможных варианта. Первый предполагал разработку дешёвого устройства на базе микроконтроллера, совместимого с оригинальным GS только на уровне команд прошивки, не имеющим возможности выполнения кода Z80 и совместимости с программами, использующими эту возможность — в частности, с Riff Tracker. Второй вариант предполагал перенос оригинальной конструкции на современную элементную базу. В результате публичных обсуждений первый вариант не нашёл поддержки у потенциальных пользователей.
При разработке карты авторы ставили перед собой следующие задачи:
- Создать полностью совместимое с оригинальным GS устройство на современной элементной базе, включая ПЛИС
- Сохранить стоимость устройства на уровне реплик оригинального GS
- Добавить новые возможности, если они не окажут существенного влияния на стоимость
В разработке карты участвовали LVD (схема и прошивка ПЛИС), CHRV (дизайн и разводка платы), KOE и JtN. Презентация рабочего прототипа карты была проведена в июне 2008 года на демопати DiHalt 2008. Продажи малой серии устройств начались в октябре 2008 года. Стоимость собранной платы составляет 1800 рублей, комплекта для сборки (плата и компоненты, включая прошитые ПЗУ и ПЛИС) — 1500 рублей.
Ревизии
На текущий момент существует три ревизии платы:
Revision A — опытная, не для продажи.
Revision B для первой партии карт, исправлены найденные ошибки, добавлен 3.5' аудиоразъём, убрана кнопка горячего старта. При планировании производства первой серии плат всем желающим была предложена возможность проспонсировать проект небольшой суммой в обмен на размещение имён спонсоров на печатной плате. Спонсорами стали GoodBoy, Valeron и Mick.
Revision C — уменьшена высота платы, ОЗУ расширено до 4 мегабайт, добавлена опциональная возможность сброса карты при сбросе компьютера, изменена элементная база.
Возможности
Возможности по воспроизведению MOD-файлов и отдельных сэмплов по сравнению с оригинальной General Sound остались без изменений, так как используется оригинальная прошивка ПЗУ с проигрывателем.
В авторской прошивке ПЛИС, которая заменяет всю логику оригинальной карты, предусмотрена возможность воспроизведения восьми каналов вместо четырёх, но она не поддерживается оригинальным проигрывателем. Эти каналы складываются в ПЛИС и выводятся на общий последовательный 16-битный стереофонический ЦАП TDA1543 с частотой дискретизации 37500 Гц. MP3 декодер имеет собственный встроенный ЦАП и выход с него подмешивается аналоговым способом.
Среди новых возможностей карты — повышенная вдвое скорость работы процессора (опционально), аппаратный декодер MP3-файлов, адаптер SD/MMC-карты, увеличенный объём ОЗУ и режим быстрого блочного обмена данными между компьютером и картой, устраняющий основное препятствие для использования карты в качестве ускорителя вычислений.В 2009 году на демопати Chaos Constructions 2009 было показано первое демо, использующее NeoGS в качестве ускорителя — The Link.
Режим блочного обмена, называеемый DMA в документации, не является аналогом других DMA-контроллеров для ZX Spectrum, таких как DataGear, и не даёт возможности быстрой переброски данных в памяти компьютера без участия процессора. Он позволяет только обращаться к памяти NGS, используя обычные команды работы с памятью, например LDIR. Во время такого обращения процессор NGS приостанавливается.
Теоретически могут быть реализованы другие новые возможности, не только в области воспроизведения звука, путём создания новой прошивки ПЛИС. Исходники авторской прошивки ПЛИС и полная документация для производства находятся в свободном доступе.
Частичная поддержка дополнительных возможностей NGS, реализованных в авторской прошивке ПЛИС, добавлена в эмулятор Unreal Speccy.
Характеристики
- Процессор Z84C0020 на частоте до 24 МГц вместо 12 МГц на GS
- Поддержка SD/MMC карт (разъём на плате)
- Аппаратный декодер MP3 MA8201 или MA8201A (совместимы с VS1001 и VS1011, поддерживают битрейт до 320 килобит в секунду и частоту дискретизации до 48 кГц)
- 2 мегабайта ОЗУ вместо 128/512 килобайт на GS (4 мегабайта в ревизии C)
- 512 килобайт ЭСППЗУ
- Возможность перешивать ПЛИС на лету
- Возможности авторской прошивки ПЛИС:
- 8 каналов звука вместо 4 на GS
- Три режима панорамирования:
- Жёсткое для 4 и 8 каналов (половина каналов NGS слева, половина справа)
- Точное для 4 каналов (каждый канал NGS имеет по две 6-битные громкости, для левого и правого канала)
- 2 окна переключения страниц памяти вместо 1 на GS
- Режим блочного обмена данными через память вместо портов (DMA в терминологии документации)
Недостатки
Среди недостатков конструкции пользователи отмечали высоту карты, не позволяющие устанавливать платы с ней в низкопрофильные корпуса типа miniITX; отсутствие отверстий для установки монтажной планки; размещение разъёма SD-карты на самой плате, что существенно затрудняет замену SD-карт. Высота карты была уменьшена в ревизии C.
Программы с поддержкой NeoGS
- The Link — демо, использующее карту в качестве ускорителя
- Neo Player Light — проигрыватель MP3 с SD-карты
- Wild Copier — поддерживает SD-карту
- Wild Player — поддерживает SD-карту