ZX-Spectrum'у исполняется 30 лет
Первому популярному "домашнему" компьютеру исполняется 30 лет. 23 апреля 1982 года английская компания Sinclair Research на основе микрочипа Z80 создала 8-разрядный компьютер ZX Spectrum. В начале 1980-х «ZX Spectrum» был одним из самых популярных компьютеров в Европе, а его многочисленные клоны в начале 1990-х получили широкое распространение на территории бывшего СССР/СНГ. Благодаря невысокой цене, за первые 17 месяцев было продано более миллиона этих машин. Низкая стоимость компьютера обусловлена рядом факторов: использованием технологии ULA (Uncommitted Logic Array), с помощью которой большая часть схемы размещалась в одном чипе; низкими техническими и пользовательскими характеристиками, по сравнению с более дорогими компьютерами того времени; использованием бытового телевизора в качестве монитора и магнитофона в качестве внешнего накопителя...
«Sinclair ZX Spectrum» был представлен в апреле 1982 года в двух вариантах — с 16 и 48 КБ оперативной памяти.
«ZX Spectrum 48» имел 16 КБ ПЗУ, в которые был прошит диалект языка Бейсик, так называемый Sinclair BASIC. Эта же программа ПЗУ обеспечивала базовый ввод-вывод и пользовательский интерфейс. Системными процедурами (например, печатью на экран) можно было воспользоваться из машинного кода, вызвав их по абсолютным адресам. Архитекторами компьютера была принята политика не изменять программу ПЗУ, несмотря на наличие в ней ошибок. Расположение такой «операционной системы» и языка программирования в постоянной памяти обеспечивало перезагрузку компьютера за пару секунд, включая тестирование ОЗУ, и, что важно, уменьшало размер программ (программист мог использовать «стандартные» процедуры ПЗУ, не расходуя доступную оперативную память и не теряя при этом совместимость).
Первая модель «ZX Spectrum» имела недорогую в производстве клавиатуру, состоящую из 40 резиновых клавиш. Характерной её особенностью была многофункциональность: алфавитно-цифровые клавиши имели до семи значений в различных режимах. При этом режим ввода отображался с помощью курсора. Такими режимами были: L — для ввода строчных букв, C — для ввода заглавных букв, K — для ввода основных ключевых слов BASIC, E — для ввода дополнительных ключевых слов и операторов и G — для ввода псевдографических, управляющих символов и символов, определённых пользователем. Режим переключался как автоматически, так и с помощью управляющих клавиш Caps Shift и Symbol Shift. Например, в начале набора BASIC ждёт номер строки или команду, поэтому курсор находится в режиме K. Однократное нажатие клавиши «G» в таком режиме приведёт к автоматическому вводу оператора GO TO. После этого курсор перейдёт в режим L и позволит набрать число, имя переменной по буквам или математическое выражение (в том числе с помощью режима Е). Более поздние модели (начиная с ZX Spectrum 128) позволяли в качестве альтернативы набирать команды языка по буквам.
Не менее характерным был единственный графический режим компьютера при отсутствии текстового. Цвета (8 цветов и два уровня яркости, плюс атрибут мерцания) и собственно графика хранились в разных участках памяти. При этом, хотя графическое разрешение составляло 256×192 точек, цветовые атрибуты задавались по знакоместам. Каждое знакоместо размером 8×8 пикселей могло иметь только два приписанных ему цвета (называемые цветами «чернил» и «бумаги» в Sinclair BASIC) и по одному атрибуту яркости и мерцания. Таким образом, область 8×8 пикселей кодировалась 9 байтами ОЗУ (8 байт — побитовая картинка 8×8 пикселей, 1 байт — атрибуты цвета: 3 бита — цвет знака, 3 бита — цвет фона, 1 бит повышенной яркости и 1 бит мерцания знакоместа). Такая организация вызывала определённые сложности (конфликт атрибутов) при создании компьютерной графики. С другой стороны, малый объём экранной памяти (около 7 КБ) позволял быстрее обновлять экран и увеличить долю ОЗУ, используемую «собственно программой», что было существенно для компьютерных игр. Кроме того, особая организация графического режима позволяла сильно оптимизировать вывод текста при отсутствии текстового режима.
Первые модели ZX Spectrum имели однобитный выход звука через встроенный динамик. Воспроизведение музыки, особенно многоголосной, требовало использования почти всего времени процессора, так как звук полностью генерировался программно. В модели ZX Spectrum 128 была добавлена микросхема звукогенератора AY-3-8912, позволяющая воспроизводить трёхканальный звук без больших затрат процессорного времени. Подключение этой микросхемы также было возможно и для моделей с объёмом памяти 48 КБ.
Источник: cybersecurity