Spectrum-совместимые компьютеры «Байт»,«Байт-01» и прочие раритеты

14 / 4 184

Игровая приставка "Эльф"

Описания и скриншоты игр для приставки "Эльф" находятся на отдельной странице.

Введение

Помимо использования ZX-Spectrum в роли компьютера, существовали модели в виде игровых приставок. С одной стороны выгода очевидна - не требуется клавиатура, не надо загружать программы с глючного магнитофона, приставка сразу готова к работе после включения питания, от пользователя не требуется знания компьютера. Однако все достоинства перекрываются недостатками:
- ограниченный набор игр (каждую игру приходится адаптировать, т.е. в изначальном виде, как она существует на кассетах, игра не годится для картриджа приставки);
- цена на картридж превышает цену кассеты с играми для обычного ZX-Spectrum (здесь речь не идёт о лицензионных играх);
- ограниченная функциональность приставки: играть быстро надоедает, а ZX-Spectrum, в отличие от приставки, даёт возможность изучать программирование.

Вполне возможно, что по вышеприведенным причинам приставки на основе ZX-Spectrum не получили широкого распространения. Но отдельные модели приставок были разработаны и производились. Одна из таких приставок - "Эльф".

Логотип приставки «Эльф»

Производитель приставки "Эльф" - завод "Цветотрон", г.Брест. Объём производства неизвестен. Имеющиеся экземпляры джойстиков и картридж имеют двух, трёх и четырёхзначные заводские номера. Т.е. приблизительно можно говорить о производстве партии в несколько тысяч штук.

В некоторых играх приставки "Эльф" стоит дата адаптации - 1990 и 1991 г. Печатные платы картриджа "Эльф-1" и "Эльф-3" произведены в 1993 году. Исходя из этого можно предположить, что время производства приставки - примерно первая половина 90-х годов.

Внешний вид, комплектация

Приставка выполнена по классической схеме - сама приставка, картриджи, джойстики, источник питания.

Приставка «Эльф» с джойстиком
Приставка «Эльф» с джойстиком
Приставка «Эльф» в полном комплекте - с джойстиком и картриджем
Приставка «Эльф» в полном комплекте - с джойстиком и картриджем
Приставка «Эльф» с джойстиком
Приставка «Эльф» в полном комплекте - с джойстиком и картриджем

Источник питания - внешний, вырабатывает нестабилизированное постоянное напряжение порядка 14В. Нужные для питания приставки напряжения 5В и 12В получаются путём использования стабилизаторов внутри самой приставки.

Джойстик внешне похож на своего собрата от "Денди" - та же крестовина и две кнопки:

Джойстик от приставки «Эльф»
Джойстик от приставки «Эльф»
Джойстик от приставки «Эльф»
Джойстик от приставки «Эльф»
Джойстик от приставки «Эльф»

Джойстики также можно было купить отдельно от приставки.

Само собой разумеется, с приставкой продавался картридж (или картриджи) с играми:

Картриджи с играми для приставки ″Эльф″
Картриджи с играми для приставки ″Эльф″
Картриджи с играми для приставки ″Эльф″

Один из картриджей с играми для приставки ″Эльф″
Один из картриджей с играми для приставки ″Эльф″
Один из картриджей с играми для приставки ″Эльф″
Один из картриджей с играми для приставки ″Эльф″
Один из картриджей с играми для приставки ″Эльф″

Картриджи были нескольких разновидностей, отличающихся набором игр.

В ПЗУ самой приставки тоже могли быть игры. Это зависит от варианта исполнения приставки (объёма микросхемы ПЗУ).

Игры

Посколько заставки игр игр занимают много места, чтобы не загромождать статью, описания игр приставки "Эльф" вынесены на отдельную страницу.

Технические особенности приставки "Эльф"

Малый размер приставки скорее всего означает, что она построена на БМК. Открываем крышку приставки. Так оно и есть:

Печатная плата приставки «Эльф» с 128Кб ПЗУ 27C010
Печатная плата приставки «Эльф» с 128Кб ПЗУ 27C010
Печатная плата приставки «Эльф» с 128Кб ПЗУ 27C010
Печатная плата приставки «Эльф» с 128Кб ПЗУ 27C010
Печатная плата приставки «Эльф» с 128Кб ПЗУ 27C010

Плата приставки «Эльф» с 32Кб ПЗУ КР573РФ8 (27C256)
Плата приставки «Эльф» с 32Кб ПЗУ КР573РФ8 (27C256)
Плата приставки «Эльф» с 32Кб ПЗУ КР573РФ8 (27C256)

Приставка содержим минимум микросхем - БМК Т34ВГ1, процессор, ПЗУ, ОЗУ, кодер SECAM, ВЧ-модулятор.

Плата двухсторонняя, с зёленой маской. На имеющемся у меня экземпляре приставки маска положена некачественно и отслаивается при любом механическом контакте с платой. "Обвязка" у Т34ВГ1 стандартная для всех компьютеров с такой микросхемой БМК. Заслуживает внимания ОЗУ - оно выполнено на двух микросхемах КР565РУ11. Это полные аналоги микросхем 4464 (64КБит х 4 разряда). Итого имеем 64КБ памяти на двух микросхемах. Компактно.

ОЗУ КР565РУ11 в приставке «Эльф»
ОЗУ КР565РУ11 в приставке «Эльф»
ОЗУ КР565РУ11 в приставке «Эльф»

Приставка имеет выдеовыход для подключения к телевизору по RGB. Сигналы, в отличие от видеовыхода компьютера "Байт", выполнены сразу с градациями яркости, что позволяет подключать приставку к телевизорам со SCART без переделки (при наличии соответствующего кабеля). Также в приставке есть кодер SECAM с ВЧ-модулятором для подключения к телевизору через антенный вход. В отличие от ВЧ-модулятора компьютера "Байт" модулятор приставки выполнен на микросхеме К174ПС1:

ВЧ-модулятор приставки «Эльф»
ВЧ-модулятор приставки «Эльф»
ВЧ-модулятор приставки «Эльф»

Не обошлось без ложки дёгтя и в видеовыходе приставки: при подключении через RGB отчётливо заметен сигнал яркости на чёрном фоне. Например, в игре "Спасатель":

Заметна яркость на черном фоне

Этого можно было избежать, добавив одну микросхему в выходные каскады формирования RGB, но, по-видимому, сэкономили...

Также сэкономили на нормальных выходных каскадах для RGB и синхросигнала. Во всех нормальных компьютерах ставятся эмиттерные повторители для согласования с низким входным сопротивлением RGB-входа телевизора. В приставке такого нет, в итоге уровни RGB занижены, а синхросигнал вообще может не захватываться. Впрочем возможно такие проблемы только у меня одного.

С внутренним стабилизатором напряжения на 5В для питания микросхем приставки тоже не всё благополучно. В качестве теплоотводящего радиатора для рассеивания тепла на микросхеме стабилизатора КР145ЕН5 используется алюминиевый кронштейн крепления разъёмов питания и джойстика:

Внутренний стабилизатор напряжения 5В в приставке «Эльф»
Внутренний стабилизатор напряжения 5В в приставке «Эльф»
Внутренний стабилизатор напряжения 5В в приставке «Эльф»

Площадь кронштейна не совсем достаточна для нормального теплорассеивания, в результате чего стабилизатор КР145ЕН5 работает в тяжёлом тепловом режиме, что увеличивает вероятность отказа микросхемы.

При подключении источника питания к приставке можно перепутать и включить вилку в разъёмы джойстиков или RGB. В последнем случае велика вероятность выпалить приставку. По крайней мере один такой случай мне известен (погорели процессор и Т34ВГ1).

Теперь пройдёмся по джойстикам. В приставке возможна работа двух джойстиков. Как я уже писал выше, джойстик внешне очень похож на своего собрата от "Денди":

Джойстик приставки «Эльф»
Джойстик приставки «Эльф»
Джойстик приставки «Эльф»
Джойстик приставки «Эльф»
Джойстик приставки «Эльф»

А вот внутри он гораздо проще, чем джойстик от "Денди": там только плата с контактными площадками и замыкающая их резинка. Никакой микросхемы (как в джойстике от "Денди") внутри нет. Т.е. этот джойстик представляет собой просто набор кнопок:

Джойстик приставки «Эльф»
Джойстик приставки «Эльф»
Джойстик приставки «Эльф»
Джойстик приставки «Эльф»
Джойстик приставки «Эльф»

Джойстик приставки «Эльф»
Джойстик приставки «Эльф»
Джойстик приставки «Эльф»

Обратите внимание - для замыкания контактных площадок на плате используется не токопроводящая резина, а металлические "пятаки", приклеенные к резине кнопок. Таким образом джойстик получается "вечным", т.к. нет износа токопроводящей резины. Правда, контактные площадки на плате склонны к окислению, поэтому их необходимо время от времени чистить.

Игровые картриджи к приставке "Эльф"

Картридж "Эльф-1"

В данном случае номер "один" касается скорее всего аппаратного исполнения картриджа, а не набора игр в нём. Но пока что я условно принял этот картридж как "номер один".

Картридж «Эльф-1»
Картридж «Эльф-1»
Картридж «Эльф-1»
Картридж «Эльф-1»
Картридж «Эльф-1»

Картридж «Эльф-1» (еще один вариант)
Картридж «Эльф-1» (еще один вариант)
Картридж «Эльф-1» (еще один вариант)
Картридж «Эльф-1» (еще один вариант)
Картридж «Эльф-1» (еще один вариант)

Этот картридж рассчитан на использование от 1 до 8 ПЗУ объёмом по 128К. На плате расположен регистр банков ПЗУ. Разъём для соединения картриджа с приставкой имеет ключ, не позволяющий вставить картридж неправильным образом в приставку. В зависимости от количества микросхем ПЗУ картридж может иметь объём от 8 до 64 банков памяти.

Данный картридж содержит 2 микросхемы ПЗУ общим объёмом 256К и имеет 16 банков памяти. С составом игр на картридже можно ознакомиться здесь.

Картридж "Эльф-2"

Картридж «Эльф-2»
Картридж «Эльф-2»
Картридж «Эльф-2»
Картридж «Эльф-2»
Картридж «Эльф-2»

Плата картриджа «Эльф-2»
Плата картриджа «Эльф-2»
Плата картриджа «Эльф-2»
Плата картриджа «Эльф-2»
Плата картриджа «Эльф-2»

Картридж «Эльф-2» (еще один вариант)
Картридж «Эльф-2» (еще один вариант)
Картридж «Эльф-2» (еще один вариант)
Картридж «Эльф-2» (еще один вариант)
Картридж «Эльф-2» (еще один вариант)

Этот картридж рассчитан на использование ПЗУ общим объёмом 128К либо 256К. Т.е. может стоять одно ПЗУ 27C020 либо одно 27C010 либо два 27C010. В картридже "Эльф-2" стоит одно ПЗУ на 128К. На плате также расположен регистр банков ПЗУ.

С составом игр на картридже можно ознакомиться здесь.

Картридж "Эльф-3"

Аппаратная часть картриджа используется такая же, как на картридже "Эльф-1". Но вместо двух ПЗУ по 128К установлена одна микросхема ПЗУ объёмом 256КБ. Так как плата картриджа не рассчитана на установку микросхем памяти такого объёма, недостающие соединения сделаны с обратной стороны платы проводами.

Картридж «Эльф-3»
Картридж «Эльф-3»
Картридж «Эльф-3»
Картридж «Эльф-3»
Картридж «Эльф-3»

Данный картридж содержит 2 микросхемы ПЗУ общим объёмом 256К и имеет 16 банков памяти. С составом игр на картридже можно ознакомиться здесь.

Теперь посмотрим "изнутри" как работает приставка:

Карта портов приставки "Эльф" и распределение памяти

Внутри "Эльф" представляет собой самый обыкновенный ZX-Spectrum с объёмом памяти 48К. Карта распределения памяти точно такая же, как в Спектруме:

#0000-#3FFF - область ПЗУ
#4000-#FFFF - область ОЗУ

А различие состоит в том, что всё ПЗУ "Эльфа" разбито на "банки" размером 16КБ, и они могут подставляться в окно #0000-#3FFF. Управлением банками памяти занимается отдельный порт с номером #5F(95dec).

Карта портов приставки "Эльф":

Биты Адрес Режим Описание
76543210
0 1 0 1 1 1 1 1 #5F (95dec)WriteПорт управления банками ПЗУ
0 0 0 1 1 1 1 1 #1F (31dec)ReadПорт "Джойстик 1"
1 1 1 1 1 1 1 0 #FE (254dec)ReadПорт "Джойстик 2"
1 1 1 1 1 1 1 0 #FE (254dec)WriteПорт бордюра/звука

Серым цветом выделены биты, по которым производится дешифрация адреса порта.

  • Порт управления банками ПЗУ.

    Порт выбирается при активном сигнале БМК /SSWR и A1=1. Внутри БМК сигнал /SSWR вырабатывается при записи в любой порт, в котором биты A7=0, A0=1. Поэтому приставка может откликаться как на порт #5F, так, к примеру, и на #1F и на #7F. В дальнейшем будет фигурировать адрес порта #5F, потому что именно по этому адресу выбираются банки в прошивке ПЗУ приставки.

    Расладка битов порта такова:
    - Биты 0-6 выбирают номер банка ПЗУ. Теоретически доступно 128 банков, во внутреннем ПЗУ приставки может быть от 2 до 8 банков (для ПЗУ размером от 32КБ до 128КБ). Объём ПЗУ картриджа реально обычно не превышает 16 банков (256К). В прошивке ПЗУ приставки сделан перебор только 64-х банков ПЗУ. Итого реально приставка может работать с картриджем объёмом максимум 64 банки памяти по 16К, т.е. 1МБ.
    - Бит 7 выбирает ПЗУ приставки или ПЗУ картриджа. При D7=0 выбирается ПЗУ приставки, при D7=1 выбирается ПЗУ картриджа.

    По сигналу сброса все биты порта #5F сбрасываются в 0. Таким образом включается 0-й банк встроенного в приставку ПЗУ, где располагается стартовое меню.

  • Порты джойстиков 1 и 2.

    Для чтения данных с двух джойстиков используются порты #FE(254dec) и #1F(31dec). Раскладка по битам их такова:

    Биты Джойстик 1
    порт #1F(31dec)
    (активный уровень - лог.1)
    Джойстик 2
    порт #FE(254dec)
    (активный уровень - лог.0)
    D0 Right Fire
    D1 Left Down
    D2 Down Right
    D3 Up Up
    D4 Fire Left
    D5 1 x
    D6 0 x
    D7 1 x

    "x" - значение бита неопределено (может быть как 0, так и 1).

    Для джойстика-1 в нейтральном положении (когда ни одна кнопка не нажата) из порта #1F будет читаться значение %10100000 (160dec). Для джойстика-2 при ненажатых клавишах из порта #FE будет читаться %00011111 (31dec).

    Адреса портов джойстиков выбрана исключительно потому, что БМК Т34ВГ1 имеет внутреннюю дешифрацию портов #FE(254dec) и встроенного системного порта, адрес которого немного совпадает с #1F(3dec). БМК имеет соответствующие выходы (/SSRD) для выбора этих портов. Порт #FE вообще полностью выполнен внутри БМК. Посему, чтобы не ставить дополнительные микросхемы для дешифрации портов было решено воспользоваться имеющимися портами.

    Порт #FE(254dec) используется несколько нестандартно. В Спектруме это порт клавиатуры. В приставке он используется как порт второго джойстика. Соответственно все игры для приставки адаптированы, чтобы исключить использование клавиатуры в них.

  • Порт бордюра/звука
  • Порт #FE(254dec) используется на запись стандартно как в ZX-Spectrum за исключением того, что сигнал с бита, отвечающего за вывод на ленту, никуда не подключен.

    Порт дешифрируется только биту A0=0. Поэтому запись в любые чётные порты вызовет срабатывание порта #FE.

    Обратите внимание! Из неиспользуемых (несуществующих) портов будет читаться не #FFКак это сделано в большинстве клонов ZX-Spectrum, а совершенно "левые" значения. В основном чередуются #00 и #FF. Что-то похожее можно наблюдать на тех клонах, в которых реализован так называемый порт #FF, когда из любого несуществующего порта читаются атрибуты отображаемого в данный момент знакоместа. Однако в случае с "Эльфом" возвращаемые значения не очень похожи на значения атрибутов. По крайней мере тесты не находят в "Эльфе" порт #FF.

    ПЗУ

    ПЗУ приставки может иметь минимальный объём 32К. В одном банке должен находиться BASIC-48 (многие игры без него просто не будут работать), а второй банк содержит стартовое меню. Плата приставки сделана таким образом, чтобы без доработок устанавливать любое ПЗУ - 27C256, 27C512 или 27C010.

    В ПЗУ приставки 0-й банк всегда содержит стартовое меню, а в банке #01 расположен бейсик-48.

    Банки встроенного ПЗУ будут повторяться при выборе номера банка, большего чем имеется в ПЗУ. Т.е. для ПЗУ приставки объёмом 8 банков (27C010) содержимое ПЗУ будет повторяться каждые 8 банков: #00-#07, #08-#0F и так далее до банка #3F включительно.

    Для картриджей с ПЗУ дело обстоит несколько иначе. Пока что для примера приведу как будет в картридже "Эльф-2". В нём дешифрация банков сделана с расчётом на 8 микросхем ПЗУ по 8 банков, хотя реально используется только 8 банков. Таким образом в банках #80-#87 будет ПЗУ картриджа, в остальных банках #88-#BF будет содержаться #FF.

    Для картриджей "Эльф-1" и "Эльф-2" в банках #80-#8F будет содержаться ПЗУ картриджа, в остальных банках #90-#BF будет содержаться значение #FF.

    Эмуляция приставки "Эльф"

    На основе данных раздела "Внутренние порты приставки "Эльф" и карта её памяти" было написано дополнение к эмулятору Emu (автор Целиков Дмитрий). Теперь всем можно поиграть в игры для приставки, даже не имея её у себя на столе:

    Эмулятор приставки «Эльф»   Эмулятор приставки «Эльф»

    Ссылки на сайт с эмулятором в конце этой статьи.

    Схемы и прочие вкусности

    Документация:
    Схема приставки "Эльф" (редакция от 9.11.2015)Внимание! Схему составлял я сам, схема неполная - есть только цифровая часть схемы без SECAM-кодера и ВЧ-модулятора. Этого вполне достаточно для понимания принципов работы приставки. Оставшуюся часть схемы я составлять не намерен из-за сложности прозвонки соединений
    Монтажный чертёж платы приставки "Эльф" (редакция от 10.11.2015)Чертёж неполный - есть только цифровая часть схемы без SECAM-кодера и ВЧ-модулятора.
    Паспорт к манипулятору игровому (джойстик)
    Дополнительная периферия
    Адаптер для получения доступа к приставке "Эльф" посредством ZX-SpectrumСхема, информация по функционированию, исходник процедуры чтения ПЗУ с комментариями
    Схема картриджа с музыкальным сопроцессоромДля нормального функционирования музыкального сопроцессора потребуется некоторая доработка платы приставки.
    Расширение ОЗУ до 128К
    Расширение памяти Спектрум-48 на ПЛМСтатья из журнала ZX-Ревю №2 за 1995 год.
    Расширение памяти "новодельной" приставки Эльф до 128КВ архиве только схема платы расширения.
    Прошивки ПЗУ
    Прошивка оригинального ПЗУ приставки "Эльф" (ПЗУ 27C256) без встроенных игр
    Прошивка оригинального ПЗУ приставки "Эльф" (ПЗУ 27C010) с тремя играми
    Прошивка DD24 К155РЕ3
    Полный дизассемблер прошивки ПЗУ приставки «Эльф»В архиве - несколько вариантов исходников (текстовый вид и готовый проект для компиляции в среде iS-DOS/TASiS). Читаем файл readme.txt внутри архива.
    Картриджи (схемы и прошивки)
    Схема картриджа "Эльф-1"
    Схема картриджа "Эльф-2"
    Схема картриджа "Эльф-3"
    Прошивка ПЗУ картриджа "Эльф-1" (256Кб ПЗУ)
    Прошивка ПЗУ картриджа "Эльф-2" (ПЗУ 27C010)
    Прошивка ПЗУ картриджа "Эльф-2" (ПЗУ 27C020) (ещё один вариант картриджа)За предоставленный образ ПЗУ благодарю московский Клуб истории развития информатики и ЭВМ.
    Прошивка ПЗУ картриджа "Эльф-3" (256Кб ПЗУ)
    Дополнительные адаптированные программы
    Картридж для «Эльфа» с тестамиИсходник в виде trd-образа, прошивка для записи в ПЗУ 256К
    Игра «METAL MAN Reloaded»Автор адаптации - krt17
    Игра «Tetris 2»Внимательно читаем файл readme.txt внутри архива!
    Версия адаптации от 3.04.2016
    Игра «l'Abbaye»Автор адаптации - Jerri
    Ссылки:
    http://www.tsvetotron.com/ - сайт завода "Цветотрон", производителя игровой приставки "Эльф"
    Сайт "Башкирия-2М". Автор сайта (Целиков Дмитрий) ввёл поддержку приставки "Эльф" в свой эмулятор.
    Ссылка непосредственно на страницу для скачивания эмулятора (обратите внимание, что эмулятор и файлы для эмуляции приставки размещаются в разных архивах!).