DMA Ultrasound Card
DMA Ultrasound Card (часто используется сокращение DMA USC) — звуковая карта для российских клонов бытового компьютера ZX Spectrum. Разработана Алексеем Иноземцевым/Stranger (Украина, город Зугрэс, Донецкая область) и WitchCraft Group (Украина, город Торецк, Донецкая область) в конце 1990-х годов. Являлась некоммерческой разработкой, никогда не производилась серийно, и предлагалась для самостоятельного повторения. Описание и печатная плата публиковались в журнале «Ваш компьютер» № 4-6 2000 г. В связи с высокой сложностью устройства (40 микросхем), а также небольшим количеством программного обеспечения, это устройство не получило распространения. Тем не менее, оно стало известным благодаря большому количеству публикаций в различных электронных журналах и газетах для ZX Spectrum (MSD, Echo, Adventurer, Body).
Устройство
правитьВ отличие от более популярной звуковой карты General Sound, DMA USC не является отдельной микропроцессорной системой. Она построена на основе контроллера прямого доступа к памяти (DMA) КР1810ВТ37 (российский аналог микросхемы i8237), и использует для хранения семплов звука основную память компьютера. Микросхема КР1810ВТ37 обеспечивает реализацию четырёх раздельных каналов прямого доступа к памяти, что даёт возможность производить одновременную передачу четырёх потоков данных из памяти в отдельные 8-разрядные ЦАП карты. Скорость пересылки для каждого канала, а значит и скорость проигрывания семплов, задаётся с помощью двух программируемых трёхканальных таймеров КР580ВИ53 (i8253). При этом основной процессор компьютера задаёт параметры пересылки, а само воспроизведение звука происходит без его участия. Однако, так как для пересылки используются основные шины адреса и данных, воспроизведение звука замедляет работу компьютера, приостанавливая процессор на время выборки данных. Этот процесс занимает намного меньше времени, чем при полностью программном воспроизведении звука (как, например, с устройством SoundDrive), оставляя достаточно ресурсов процессора для выполнения какой-либо программы. Проигрыватель музыки в формате MOD занимает в среднем 5-15 % процентов времени системы при стандартной тактовой частоте (3.5 МГц), что сравнимо со временем, затрачиваемым некоторыми проигрывателями музыки для AY-3-8910.
Помимо воспроизведения звука, карта также предоставляет некоторые дополнительные возможности, недоступные на обычных ZX Spectrum-совместимых компьютерах. Это быстрые блочные пересылки данных внутри памяти компьютера без участия процессора и генерация прерываний процессора с задаваемой программно частотой (в стандартном ZX Spectrum есть прерывание только по началу отображения кадра, с частотой 50 Гц).
Подключение
правитьПодключение DMA USC требует серьёзного вмешательства в схему компьютера. Будучи подключенной, карта значительно изменяет (расширяет) архитектуру ZX Spectrum. Для обеспечения возможности такого подключения предполагается внесение изменений и выполнение доработок схемы компьютера. Так как схемотехника различных вариантов российских ZX Spectrum-совместимых компьютеров может сильно отличаться, подключение карты ко многим из них невозможно без специальных знаний. Инструкция по подключению была разработана только для компьютеров Пентагон с ОЗУ, расширенным до 512 КБ, и KAY-1024. Для нормальной работы карты основное ОЗУ компьютера должно было иметь объём 512 КБ и более. Карта могла работать и со стандартными 128 КБ, однако это не имело смысла из-за недостаточности такого объёма памяти для хранения программы и звуковых данных. Так средний музыкальный файл в формате MOD превышал 100 КБ, что уже создавало определённые проблемы пользователям ПК с объёмом ОЗУ 128 КБ при желании прослушать такой файл.
У многих спектрумистов, собиравших карту, было желание перевести DMA USC в турбо-режим (7 МГц), что могло увеличить скорость работы операций с блоками памяти (пересылка память-память) в 2 раза, однако в этом случае могли возникать проблемы с нестабильной работой российских микросхем КР580ВИ53 на повышенной частоте. Для решения проблемы рекомендовалось заменять их на оригинальные i8253.
Программное обеспечение
правитьМнение о том, что адаптация существующего программного обеспечения для DMA USC заметно сложнее, чем адаптация для General Sound, не верно. Для DMA наиболее просто адаптируется ПО написанное для COVOX и Sound Drive, достаточно подменить подпрограмму воспроизведения. В случае же с играми, которые совсем не поддерживали ни 128кб режим, ни музыкальные сопроцессоры — задача озвучивания была вовсе элементарной и сопоставимой с адаптацией для General Sound.
Разработчиком DMA USC (Алексей Иноземцев/Stranger), а также группой Witchcraft Group (Андрей Михальченков/F.r. и Дмитрий Михальченков/Hard) было разработано и адаптировано для карты некоторое количество программ. Среди них:
- Access Player v1.2 — проигрыватель MOD-файлов, поддерживающий работу с дискетами в формате MS-DOS. Автор программы Алексей Иноземцев/Stranger.
- Digital Studio v1.12 — адаптированная версия популярного музыкального редактора. Автор адаптации Алексей Иноземцев/Stranger.
- ProDigital Editor — адаптированная версия музыкального редактора. Автор адаптации Алексей Иноземцев/Stranger.
- Free Speed Utility — утилита для изменения скорости работы компьютера. Автор программы Witchcraft Group.
- Witchcraft Resident Boot Installer — утилита для установки загрузчика дискет, который постоянно находится в памяти компьютера и мгновенно запускается по нажатию кнопки NMI (Немаскируемое прерывание). Автор программы Witchcraft Group.
- X-Tracker 0.4 — музыкальный редактор, формат MOD
- Mixer 1.5 — утилита микширования звуковых эффектов. Автор адаптации Алексей Иноземцев/Stranger.
А также адаптированные версии игр:
- Barbarian 3
- Wacky Darts
- Fist 1
- Dizzy 2
- Rambo 2
- Joe Blade 3
Технические характеристики
править- Частота дискретизации: теоретически до 3.5 МГц (не кГц), практически до ~200 кГц
- Звуковые каналы: 4 независимых 8-разрядных канала с собственными ЦАП
- Управление громкостью: 4 независимых 6-разрядных регулятора громкости, по одному для каждого канала
- Поддерживаемый объём памяти: до 1 МБ (с возможностью расширения до 16 МБ)
- Максимальный размер непрерывного семпла: 64 КБ
- Дополнительные возможности:
- Генерация прерываний для основного процессора компьютера с частотой от 30 Гц до 1.7 МГц
- Быстрая пересылка блоков памяти, включая межстраничные пересылки
- Возможность изменения скорости работы компьютера в диапазоне от 50 до 100 %
Эмуляция
правитьИз-за малой распространённости устройства, и очень небольшого количества программного обеспечения, использующего его возможности, DMA USC в настоящий момент не поддерживается ни одним из эмуляторов ZX Spectrum.
Библиография
править- «Ваш компьютер» № 4-6 2000 г.
Ссылки
править- Witchcraft Creative Group — сайт группы, разработавшей DMA USC.
- DMA UltraSound Card
- DMA USC (недоступная ссылка)
- DMA Ultrasound Card