General Sound — различия между версиями

Материал из SpeccyWiki
Перейти к: навигация, поиск
м (Эмуляция)
м (Правки Cmapuk (обсуждение) откачены к версии Zxdn)
 
(не показано 7 промежуточных версии 3 участников)
Строка 10: Строка 10:
  
 
== Программное обеспечение ==
 
== Программное обеспечение ==
Основное программное обеспечение находится в [[ПЗУ]] карты. Оно обеспечивает приём команд и данных от компьютера, воспроизведение музыки и звуковых эффектов.
+
Основное программное обеспечение находится в [[ПЗУ]] карты. Оно обеспечивает приём команд и данных от компьютера, воспроизведение музыки в формате [[MOD]] и звуковых эффектов.
 +
 
 +
Проигрыватель модулей является практически полным аналогом проигрывателя редактора ProTracker для компьютера [[Amiga]], при его разработке использовались исходники ProTracker v2.1A. Реализованы все команды формата MOD за исключением двух - E01 (включение фильтра) и EFx (инвертирование цикла). Это позволяет воспроизводить большую часть музыки в формате MOD, однако при воспроизведении модулей, созданных в более современных редакторах возможны проблемы — не поддерживаются нестандартные октавы, некорректно воспроизводятся короткие (менее 1 КБ) зацикленные сэмплы.
  
 
Для карты было написано и адаптировано довольно большое количество программного обеспечения:
 
Для карты было написано и адаптировано довольно большое количество программного обеспечения:
Строка 22: Строка 24:
  
 
== Дополнительные возможности ==
 
== Дополнительные возможности ==
General Sound имеет производительность, превосходящую производительность обычного ZX Spectrum-совместимого компьютера примерно в три раза. Также имеется возможность загрузки в память карты не только данных, но и исполняемого кода, который может выполняться в памяти карты. Теоретически, возможно использование карты не только для проигрывания музыки и звуков, но и для выполнения сложных расчётов, например в играх. Однако, на практике эта возможность почти не использовалась. Единственный известный пример такого использования — эмулятор микросхемы звукогенератора [[AY-3-8910]] и адаптированная версия музыкального редактора. Он имел довольно низкое качество звучания, и не представлял особой практической ценности, представляя собой скорее пример возможности нестандартного использования карты.
+
General Sound имеет производительность, превосходящую производительность обычного ZX Spectrum-совместимого компьютера примерно в три раза. Также имеется возможность загрузки в память карты не только данных, но и исполняемого кода, который может выполняться в памяти карты. Теоретически, возможно использование карты не только для проигрывания музыки и звуков, но и для выполнения сложных расчётов, например в играх. Однако, на практике эта возможность почти не использовалась, в частности из-за чрезвычайно низкой пропускной способности канала связи между GS и ZX Spectrum. Единственный известный пример такого использования — эмулятор микросхемы звукогенератора [[AY-3-8910]] и адаптированная версия музыкального редактора. Он имел довольно низкое качество звучания, и не представлял особой практической ценности, являясь собой скорее демонстрацией возможности нестандартного использования карты.
  
 
== Технические характеристики ==
 
== Технические характеристики ==
Строка 45: Строка 47:
  
 
== Альтернативы ==
 
== Альтернативы ==
В 2000-х годах неоднократно выдвигались идеи создания аналога карты на современной элементной базе, для снижения её себестоимости и трудоёмкости производства. Ряд идей предполагал использование другой архитектуры карты (включая другой процессор) с обеспечением программной совместимости на уровне программного интерфейса встроенного ПО (высокоуровневая эмуляция), без возможности исполнения загружаемого кода. Хотя программ, использующих возможность исполнения кода, очень мало, и они могли быть доработаны, пользователи не поддержали такой подход. Также существовали идеи реализации карты оригинальной архитектуры карты с использованием более современных компонентов, но на данный момент ни один из подобных проектов не был реализован.
+
В 2000-х годах неоднократно выдвигались идеи создания аналога карты на современной элементной базе, для снижения её себестоимости и трудоёмкости производства. Ряд идей предполагал использование другой архитектуры карты (включая другой процессор) с обеспечением программной совместимости на уровне программного интерфейса встроенного ПО (высокоуровневая эмуляция), без возможности исполнения загружаемого кода. Хотя программ, использующих возможность исполнения кода, очень мало, и они могли быть доработаны, пользователи не поддержали такой подход.
 +
 
 +
В июне [[2008]] года на [[демопати]] [[DiHalt 2008]] группа [[NedoPC]] провела презентацию звуковой карты [[NeoGS]], представляющей собой реализацию General Sound (совместимую с оригиналом) на основе современных электронных компонентов и имеющую ряд дополнительных возможностей. Малосерийное производство и продажи этой карты начались осенью того же года.
  
 
== Ссылки ==
 
== Ссылки ==

Текущая версия на 07:58, 23 декабря 2013

General Sound и плата расширителя памяти

General Sound (также часто используется сокращение GS) — звуковая карта для отечественных клонов ZX Spectrum. Разработана и производилась фирмой X-Trade (Санкт-Петербург) в конце 1990-х годов (1997—1998). Также распространялась фирмами-прозводителями ZX Spectrum-совместимых компьютеров, Nemo и Scorpion. Позволяла воспроизводить 4-х канальную музыку в формате MOD, а также звуковые эффекты, параллельно с работой компьютера, не снижая производительность его основного процессора. Применялась для озвучивания игр, прослушивания и создания музыки в формате MOD.

Устройство

General Sound является одним из наиболее сложных устройств подобного назначения для ZX Spectrum-совместимых компьютеров. Она представляет собой самостоятельную микропроцессорную систему, с собственным процессором, памятью, ЦАП, и другими элементами. С компьютером она связана портом ввода-вывода, через который передаются данные и управляющие команды. Компьютеру достаточно загрузить нужные звуки и музыкальные композиции в память карты, и далее только передавать команды, такие как запрос на проигрывание нужного звука или мелодии, смену громкости, высоты звучания. Возможно также загрузить в память карты музыкальный модуль, запустить на проигрывание, сбросить компьютер, и работать с другими программами, при этом General Sound будет продолжать воспроизводить музыку.

Карта имеет краевой разъём для установки её в слот шины NemoBus (присутствующий на компьютерах KAY), а при отсутствии такого слота может быть подключена к любому ZX Spectrum-совместимому компьютеру путём припаивания проводов к разъёму и нужным точкам схемы компьютера.

Из-за высокой сложности схемы, содержащей около 40 микросхем, и сравнимой со сложностью схемы самого компьютера, General Sound практически не изготавливалась любителями самостоятельно.

Программное обеспечение

Основное программное обеспечение находится в ПЗУ карты. Оно обеспечивает приём команд и данных от компьютера, воспроизведение музыки в формате MOD и звуковых эффектов.

Проигрыватель модулей является практически полным аналогом проигрывателя редактора ProTracker для компьютера Amiga, при его разработке использовались исходники ProTracker v2.1A. Реализованы все команды формата MOD за исключением двух - E01 (включение фильтра) и EFx (инвертирование цикла). Это позволяет воспроизводить большую часть музыки в формате MOD, однако при воспроизведении модулей, созданных в более современных редакторах возможны проблемы — не поддерживаются нестандартные октавы, некорректно воспроизводятся короткие (менее 1 КБ) зацикленные сэмплы.

Для карты было написано и адаптировано довольно большое количество программного обеспечения:

  • Плееры и сборники музыки с удобным интерфейсом
  • Адаптированные версии популярных игр, озвученные для GS
  • Музыкальные редакторы:

См. также: Список ПО с поддержкой General Sound

Дополнительные возможности

General Sound имеет производительность, превосходящую производительность обычного ZX Spectrum-совместимого компьютера примерно в три раза. Также имеется возможность загрузки в память карты не только данных, но и исполняемого кода, который может выполняться в памяти карты. Теоретически, возможно использование карты не только для проигрывания музыки и звуков, но и для выполнения сложных расчётов, например в играх. Однако, на практике эта возможность почти не использовалась, в частности из-за чрезвычайно низкой пропускной способности канала связи между GS и ZX Spectrum. Единственный известный пример такого использования — эмулятор микросхемы звукогенератора AY-3-8910 и адаптированная версия музыкального редактора. Он имел довольно низкое качество звучания, и не представлял особой практической ценности, являясь собой скорее демонстрацией возможности нестандартного использования карты.

Технические характеристики

  • Процессор: Zilog Z80H на частоте 12 МГц
  • ПЗУ: 32 КБ
  • ОЗУ: 128 КБ в базовом варианте, с помощью платы расширения увеличивается до 512 КБ
  • Частота прерываний: 37.5 кГц (является также частотой дискретизации)
  • Звуковые каналы: 4 независимых 8-разрядных канала с собственными ЦАП
  • Управление громкостью: 4 независимых 6-разрядных регулятора громкости, по одному для каждого канала

Эмуляция

Существует два подхода к эмуляции General Sound. Высокоуровневая эмуляция подразумевает реализацию программного интерфейса карты (её встроенного ПО) и воспроизведение звука и музыки каким-либо плеером. Это позволяет существенно повысить качество звука по сравнению с реальным устройством и снизить системные требования эмулятора, но не позволяет обеспечить совместимость с ПО, использующим низкоуровневое программирование карты (загрузку и выполнение кода).

Низкоуровневая эмуляция подразумевает эмуляцию всех компонентов карты - процессора, ОЗУ, и т.д. Такой подход требует более мощного компьютера для работы эмулятора, обеспечивает качество звука, аналогичное реальному устройству и максимальную совместимость.

Полная (низкоуровневая) эмуляция General Sound реализована в следующих эмуляторах ZX Spectrum:

Альтернативы

В 2000-х годах неоднократно выдвигались идеи создания аналога карты на современной элементной базе, для снижения её себестоимости и трудоёмкости производства. Ряд идей предполагал использование другой архитектуры карты (включая другой процессор) с обеспечением программной совместимости на уровне программного интерфейса встроенного ПО (высокоуровневая эмуляция), без возможности исполнения загружаемого кода. Хотя программ, использующих возможность исполнения кода, очень мало, и они могли быть доработаны, пользователи не поддержали такой подход.

В июне 2008 года на демопати DiHalt 2008 группа NedoPC провела презентацию звуковой карты NeoGS, представляющей собой реализацию General Sound (совместимую с оригиналом) на основе современных электронных компонентов и имеющую ряд дополнительных возможностей. Малосерийное производство и продажи этой карты начались осенью того же года.

Ссылки