Ждите... Идет загрузка...
ZX Spectrum

Введение

Этот раздел полностью посвящен компьютерной платформе под общим названием ZX Spectrum. Созданная еще в начале 80-х, эта платформа по сей день любима и ценима многими - прежде всего, я имею в виду жителей бывшего Союза.

ZX Spectrum 48K

Говоря о Спектруме, прежде всего имеют в виду варианты ZX Spectrum 48K (1982г.) и ZX Spectrum 128 (1984г.), где число означает объем доступной оперативной памяти. Сегодня эти объемы кажутся мизерными, но для начала 80-х это был реальный прорыв. Создатель машины, британец Клайв Марлз Синклер (по его фамилии, машины также известны как Sinclair ZX Spectrum) поставил своей задачей сделать домашний компьютер максимально дешевым, поэтому в качестве накопителя использовался обычный магнитофон, а вместо монитора - практически любой телевизор. На волне невероятного успеха, пару лет спустя вышла версия ZX Spectrum 128, имеющая на борту штатный звуковой сопроцессор.

Аппаратная часть

Будучи 8-битным компьютером, Спектрум использовал процессор Z80 фирмы Zilog. Модель ZX-Spectrum 48K в реальности имела 64К памяти, из них 16К ПЗУ и 48К оперативной.

Часть оперативной памяти была отдана под видеопамять - 6912 байт, при этом экранное разрешение составляет 256*192 пикселей. Цветов фактически 8, но впридачу к этому экранная клетка имеет параметры яркости и мигания, по биту каждый. Под клеткой имеется в виду поле 8х8 пикселей, и цвет задаётся не для каждой точки отдельно, а для клетки в целом (всего таких клеток, соответственно, 32*24).

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

Что касается звука, то в первых моделях Spectrum для этого имелся лишь обычный бипер, сходный с системным динамиком IBM-совместимых машин. Для создания сложных звуковых и музыкальных эффектов приходилось изощряться, т.к. воспроизведение звука занимало процессорный ресурс. К счастью, в модели ZX Spectrum 128 появился свой музыкальный сопроцессор AY-3-8910 - и ничто не мешало установить его на машину с 48К памяти.

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

Кстати, в связи с особенностями адресной шины, процессор не мог иметь доступ ко всем 128К памяти сразу, поэтому использовалось переключение между страницами памяти по 16К каждая. В новой модели было 2 страницы ПЗУ, между ними также происходило переключение.

Периферия

Изначально, ZX Spectrum задумывался для использования совместно с обычным магнитофоном. В среднем, на одну сторону 60-минутной кассеты помещалось 6-8 программ. В то же время, на родине компьютера получило распространение устройство Microdrive - картридж с закольцованной магнитной пленкой, нечто вроде маленького стриммера.

Одновременно с появлением ZX Spectrum 128, свет увидела дисковая подсистема для Спектрума. Имя ей TR-DOS, от названия компании-автора Technology Research; также известна как Beta Disk Interface. Собственно интерфейс позволял подключать до 4 устройств 5.25 и 3.5 дюймов. На дискету помещалось до 640К данных, при этом не более 128 файлов. Для упрощения доступа, фрагментация файлов отсутствовала - файлы дописывались "в конец", при необходимости использовалась процедура уплотнения.

Входящий в комплектацию универсальный разъем RS-232 давал достаточно широкие возможности для подключения внешних устройств. Благодаря различным энтузиастам и крупным компаниям, появилось многообразие джойстиков с различными протоколами, к Спектруму стало возможным подключить мышь, принтер, модем и т.д.

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

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

Было множество попыток разработки других версий Бейсика (одна из самых известных Laser Basic) и создания интерпретаторов других языков (Паскаль, к примеру). Но необходимость догружать обработчик этого языка, а то еще и соответствующий редактор, смазывала многие плюсы таких идей.

При этом, был использован подход, позволяющий набирать программный код с невероятной скоростью: любой оператор языка BASIC вводился либо нажатием одной клавиши, либо с предварительным переключением режима клавиатуры (аналогия - удерживаемый Ctrl или Alt при нажатии на клавишу). В версии 128К появился дополнительный редактор Бейсика, с побуквенным вводом команд.

Массовое распространение платформы Spectrum вызвало спрос на различные компьютерные программы, и прежде всего - игры. Последних было выпущено многие десятки тысяч. За редкими исключениями, все они теперь доступны для бесплатного доступа - прежде всего, на гигантском портале World Of Spectrum.

Спектрум в Союзе и далее

Компьютеры серии ZX Spectrum оказались очень удачной находкой для отечественных радиолюбителей, количество различных вариантов и экземпляров Спектрума, созданных на просторах СССР, не подлежит даже приблизительному исчислению. Конечно, "спектрумы" выпускались и предприятиями.

Например, в моём родном городе Черкассы (Украина) завод "Ротор" выпускал модель Робик. По сути, это был обычный "моноблок" ZX Spectrum 48K, но с парой очень существенных отличий. Во-первых, на клавиатуру добавили справа блок из 4 клавиш - наподобие курсорных, но фактически это была клавишная реализация джойстика. Соответственно, в крайний левый угол клавиатуры загнали кнопку стрельбы. Рядом была еще одна кнопка "MF", видимо зарезервированная для будущих идей.

Робик

Второй любопытный ход - аппаратная русификация машины. Как показала практика, этот ход нанес некоторый урон совместимости с оригиналом, кое-какие программы перестали работать без дополнительного шаманства. Но возможность использовать в рамках одной текстовой строки как латинские, так и русские буквы частично перекрывала этот недостаток. Частично, потому как использовать программы с такой русификацией можно было лишь на таких же "Робиках".

Вообще, сообщество поклонников ZX Spectrum является самой примечательной чертой, характеризующей данную платформу. И по сей день энтузиасты увлечённо пишут и изучают программы для ZX Spectrum, творят музыку и графику, выпускают электронную (и даже бумажную) прессу, рождают технические решения. А некоторые отечественные модели "спектрумов" вообще сложно сравнивать с оригиналом. Автор этих строк, к примеру, в недавнем прошлом располагал машиной с 1 мегабайтом памяти, тремя дисководами (два 5-дюймовых и один 3.5”), звуковым сопроцессором и видеоадаптером Flash Color, позволявшим иметь до 256 цветов на экране. Кроме того, известно о подключении даже жестких дисков и CD-приводов к ZX-Spectrum.

Конечно, с коммерческой точки зрения увлечение платформой ZX Spectrum - ныне чистейший андеграунд. И тем не менее, существуют десятки веб-сайтов, на которых не затихает активность, связанная со Спектрумом. Самый известный из числа русскоязычных ресурсов - Virtual TR-DOS.

Эмуляция

По понятным причинам, сейчас довольно затруднительно получить в личное пользование настоящий и работоспособный Спектрум хоть какой-нибудь версии. Тем не менее, существует большое количество эмуляторов ZX Spectrum, для самых различных платформ. На упоминавшихся сайтах есть внушительные списки эмуляторов. На тех же сайтах, естественно, доступен и собственно софт для запуска в этих эмуляторах.

Софт этот может быть в различных форматах, и хороший эмулятор должен понимать их все или почти все. Разделить эти форматы можно на следующие категории:

  1. кассетные версии - как правило, это файлы .TAP или .TZX, повторяющие массив данных, который представляет собой программа, записанная на магнитной ленте;
  2. образы дисков, особенно распространены форматы .TRD (полная копия TR-DOS диска без учета реальной наполненности, т.е. файл всегда 640К) и .SCL (пофайловая копия дисковой версии программы);
  3. образы-снимки памяти, чаще всего файлы типа .Z80 и .SNA. Конечно, если игра предполагает догружаемые блоки или уровни, такой формат не годится.

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

Устройства ввода

При использовании эмуляторов ZX Spectrum, остро встаёт вопрос соответствия таких разных клавиатурных решений. Конечно, пока мы вводим буквы и цифры, нет проблем - но вот понадобилась, допустим, кавычка - куда жать?

На большинстве современных клавиатур есть две клавиши Shift, и как правило, они равнозначны. В случае с ZX Spectrum, имеется два совершенно разных "шифта" - один называется Caps Shift и в логическом плане схож с "обычным", т.е. вызывает заглавные буквы. Второй, Symb Shift, как предполагает его название, используется для ввода дополнительных символов. Кавычка, например - Symb Shift и P. Одновременное нажатие клавиш Shift активирует специальный режим Extended Mode, и в этом режиме нажатия клавиш с Shift'ами и без имеют совершенно другой эффект - ввод редко используемых операторов Basic, малоупотребительных символов, даже кодов управления цветом фона и букв.

Курсор в строке ввода, кстати - мигающая буква, отражающая текущий режим (K предполагает ввод ключевого слова, L - буквенно-цифровой ввод, C - CapsLock, E - Extended Mode).

При управлении в играх с клавиатуры зачастую можно выбрать удобную для себя раскладку. Исторически наибольшее распространение получила раскладка QAOP - соответственно Q/A для вниз/вверх, O/P - влево/вправо, пробел или M - Fire.

Кроме того, существует сразу несколько различных протоколов джойстика. Некоторые из них могут быть продублированы с клавиатуры. Например, Cursor Joystick - это клавиши 5678 плюс 0 для стрельбы. Впрочем, гораздо шире в играх распространен Sinclair Joystick, он же Interface 2. С клавиатуры он доступен по клавишам 67890 (6-Left, 7-Right, 8-Down, 9-Up, 0-Fire). Если же игра предполагает одновременное участие двух игроков, то бывает что доступен 2-й порт этого джойстика, по клавишам 12345 в аналогичной последовательности.

Ничуть не менее популярный Kempston Joystick, в силу иной реализации, не имеет клавиатурного соответствия, увы.

Заключение

При желании, в сети Интернет можно найти массу информации по компьютеру ZX-Spectrum и его вариантам, скачать эмуляторы и программы, пообщаться с ценителями.

Для общения между поклонниками ZX Spectrum, в рамках нашего проекта был создан IRC-канал #ZX в сети RusNet (подробнее здесь).

Также у нас на сайте можно, что называется, пощупать несколько десятков игр - прямо в браузере, и послушать некоторые из работ Spectrum-музыкантов.

Click Here
Наш сайт существует за счет рекламы и добровольных взносов.