Jump to content

Графические режимы ZX Spectrum

Моделирование вывода графики ZX Spectrum на телевизоре PAL

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

Размер изображения фреймбуфера палитрой — 256x192 пикселей , с из 15 неизменяемых цветов, причем вся цветовая палитра чрезвычайно насыщена . Разрешение цветного вывода в 64 раза ниже разрешения растрового изображения пикселей. [1] [2] Чрезвычайно низкое цветовое разрешение использовалось для экономии памяти: всего 768 байт для атрибутов цвета. Цвет хранится отдельно от растрового изображения пикселей в виде сетки ячеек размером 32x24, используя по одному байту на каждую символьную ячейку . Одна символьная ячейка состоит из 8x8 пикселей. На практике это означает, что любая символьная ячейка может использовать только два выбранных цвета для окраски содержащихся в ней 64 пикселей. [3]

Поскольку аппарат был разработан для использования со стандартным телевизором, область размером 256x192 пикселей окружена широкой рамкой, которая заполняет оставшееся пространство стандартной PAL TV видимой области экрана с низким разрешением 384x288. Обычно граница области предполагает один цвет, но с помощью программных ухищрений можно отобразить там графику с низким разрешением. [4]

В ZX Spectrum не было специального оборудования для прокрутки и спрайтов , а также специального аппаратного блиттера . Для облегчения отображения цветной графики оригинальный ZX Spectrum использует 16 КиБ дискретной графической оперативной памяти. Латентность графической памяти составляет 150 нс; пиковая пропускная способность составляет 2,1875 МБ/с (рассчитывается как 224x5/8 байт за 64 мкс). [5]

Частота кадров и тайминги

[ редактировать ]

Оригинальный ZX Spectrum не соответствует строго PAL стандартной частоте кадров 50 Гц. ZX Spectrum выводит одну видеостроку ровно за 224 процессора такта , при этом тактовая частота процессора равна 3,5 МГц. Это точно соответствует стандартному времени линии PAL 64 мкс. Однако ZX Spectrum выдает только 312 строк для формирования одного кадра дисплея , тогда как стандарт PAL рекомендует 312,5 строк. Как следствие, частота кадров ZX Spectrum составляет примерно 50,08 кадров в секунду. [6]

Это несоответствие не было известно многим программистам, которые предполагали частоту кадров 50 кадров в секунду. [ нужна ссылка ] В результате некоторые программы, включая встроенный интерпретатор BASIC , работали слишком быстро. Более поздние модели ZX Spectrum имеют немного другую частоту кадров и тактовую частоту ЦП, из-за чего некоторые старые программы работают слишком медленно, если они используют вертикальную синхронизацию, или слишком быстро, если они полагаются на тактовую частоту ЦП. [6]

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

Отображение таймингов на PAL
ZX Spectrum 16K, 48K и ZX Spectrum+ [7] 128К, +2, +2А, +3 [8]
Циклы ЦП на линию PAL 224 228
Время линии PAL 64 мкс 64,28 мкс
PAL строк на кадр 312 311
Время кадра 19,968 мс 19,9915 мс
Частота кадров 50,08 кадров в секунду 50,02 кадра в секунду
Вертикальная синхронизация дисплея доступен по маскируемой линии прерывания Z80 (INT) [9] доступен по маскируемой линии прерывания Z80 (INT) [9]

Структура графической памяти и координаты пикселей

[ редактировать ]

Дискретная графическая память объемом 16 КиБ напрямую доступна ЦП по адресам с 16384 по 32767. Растровое изображение основного пикселя хранится в самом начале графической памяти, а массив атрибутов следует сразу за ней. [10]

Схема видеоконтроллера встроена в полузаказную Ferranti ULA интегральную схему , состоящую примерно из 480 настраиваемых ячеек (в зависимости от модели). Ячейки ULA были сконфигурированы на заводе различными способами для создания ULA для ZX Spectrum, где одна ячейка имеет функциональность примерно двух вентилей NAND. [11]

Доступ ЦП к графической памяти называется конкурирующим доступом, поскольку видеоконтроллер имеет более высокий приоритет, чем ЦП. При доступе к графической памяти ЦП обычно испытывает небольшую задержку, ожидая завершения чтения данных видеоконтроллером. [12]

Адреса в видео DRAM чередуются, что создает необычную систему координат для растрового изображения пикселей. Если координаты пикселя равны (x, y), а биты оси координат x обозначены x7, x6, x5, x4, x3, x2, x1, x0, а биты оси координат y обозначены y7, y6, y5, y4, y3, y2, y1, y0, то пиксель сохраняется в байте с битовой комбинацией адреса 0, 1, 0, y7, y6, y2, y1, y0, y5, y4, y3, x7, х6, х5, х4, х3. [13]

Битовый шаблон адреса содержит на две транспозиции больше битового шаблона, чем необходимо. Самый быстрый и простой битовый шаблон был бы 0, 1, 0, x7, x6, x5, x4, x3, y7, y6, y5, y4, y3, y2, y1, y0, что приводит к увеличению адресов пикселей по столбцу. первый. К сожалению, дизайнеры ZX Spectrum работали в условиях крайнего дефицита времени и не заметили этого простого улучшения. [11]

В то время как исходная модель ZX Spectrum 48K имеет 32 КиБ основной оперативной памяти, модель 16K имеет только 16 КиБ графической памяти. Именно по этой причине массив атрибутов цвета был спроектирован так, чтобы уместиться всего в 768 байт. Атрибуты цвета могли бы легко иметь двойное или учетверенное разрешение по вертикальной оси, но это уменьшило бы оставшуюся свободную память для программ еще на один-два килобайта, особенно в модели на 16 КиБ.

Для облегчения отображения цветной графики оригинальный ZX Spectrum использует 16 КиБ дискретной графической памяти, в отличие от архитектуры общей графической памяти большинства других микрокомпьютеров, включая Commodore 64. [ нужна ссылка ] Разрешение растрового изображения пикселей аналогично разрешению в других современных микрокомпьютерах, где популярный Commodore 64 обычно использует разрешение 160x200 с двумя битами на пиксель. [14]

Система цветовых ячеек, получившая название «атрибуты», вызвала много критики, поскольку существенно усложняла программирование цветовых приложений. [ нужна ссылка ] Тем не менее, система атрибутов цвета имела достаточные возможности для поддержки распространенных приложений и игр той эпохи, и даже очень ограниченные возможности цвета приветствовались пользователями. [ нужна ссылка ]

Цветовая палитра

[ редактировать ]
Экран ZX Spectrum, показывающий доступные цвета

Компьютеры ZX Spectrum (и совместимые с ним) используют вариацию философии 4-битной палитры RGBI (также используемой в CGA , Thomson MO5 , Sharp MZ-800 , Mattel Aquarius и т. д.), в результате чего получается 8 основных цветов с вариациями яркости. [15] В моделях 128, +2 и +3 ULA выводит красный, зеленый, синий и синхросигнал уровня TTL , а также сигналы синхронизации, которые используются видеокодером TEA2000 для генерации композитного видеосигнала . [16] [17] [18] [19]

Каждый из цветов 3-битной палитры имеет базовый и яркий вариант. [15] Яркая . половина палитры генерируется с использованием максимального уровня напряжения видеодисплея для сигнала яркости Основная половина палитры генерируется путем простого уменьшения напряжения сигнала яркости. [20]

Оба цвета ячейки символьной ячейки должны иметь общее свойство яркости, поскольку для всей ячейки имеется только один бит яркости. Помимо этого ограничения, любую комбинацию цветов палитры можно свободно выбирать в качестве двух цветов символьной ячейки. В следующей таблице все «яркие» цвета приведены в правом столбце.

Цвет
число
Бинарное значение Цвет
имя
Бинарное значение Цвет
имя
Г Р Б я Г Р Б я
0 0 0 0 0 #000000 Черный 0 0 0 1 #000000 «Яркий» черный
1 0 0 1 0 #0100CE Синий 0 0 1 1 #0200FD Ярко-синий
2 0 1 0 0 #CF0100 Красный 0 1 0 1 #FF0201 Ярко-красный
3 0 1 1 0 #CF01CE Пурпурный 0 1 1 1 #FF02FD Ярко-пурпурный
4 1 0 0 0 #00CF15 Зеленый 1 0 0 1 #00FF1C Ярко-зеленый
5 1 0 1 0 #01CFCF Голубой 1 0 1 1 #02FFFF Ярко-голубой
6 1 1 0 0 #CFCF15 Желтый 1 1 0 1 #FFFF1D Ярко-желтый
7 1 1 1 0 #CFCFCF Белый 1 1 1 1 #FFFFFF Ярко-белый
  • Некоторые клоны ZX Spectrum или машины NTSC могут отображать «ярко-черный» как темно-серый. [ нужна ссылка ]
  • Яркость цветов в таблице относительна, а не абсолютна. Обычные телевизоры обычно имели гораздо более высокую яркость, чем стандартная яркость ЖК-дисплея sRGB, составляющая 80 кд/м². В абсолютном выражении цвета ZX Spectrum намного ярче цветов sRGB в таблице. «Белый» цвет ZX Spectrum такой же яркий, как самый яркий белый цвет sRGB, а «Яркий белый» превышает пределы яркости стандартного цвета sRGB.
  • Приведенные значения sRGB для зеленого, желтого и голубого цвета являются лишь наилучшим приближением, поскольку дисплеи sRGB не могут воспроизводить все цвета стандарта PAL TV. Зеленый люминофор PAL выходит за пределы цветового пространства sRGB современных распространенных ЖК-дисплеев. Для большинства целей эта погрешность цвета невелика. [ нужна ссылка ]
  • Цвета, смоделированные как sRGB, считаются неяркими при напряжении 84,615 % (0,55 В) и яркими — 100 % (0,65 В). [20] В каждой модели ZX Spectrum использовалось разное напряжение для цвета, поэтому приведенные здесь значения являются лишь ориентировочными. Цвета рассчитывались путем преобразования цветового пространства PAL TV в sRGB цветовое пространство . Гамма PAL 2,8 была применена в соответствии со стандартом BT.470 PAL; было применено преобразование основных цветов в основные цвета sRGB (по стандарту IEC 61966-2-1 sRGB) и стандартная гамма-коррекция sRGB (путем обратного EOTF).
  • Указанные цвета, вероятно, не являются настоящими цветами ZX Spectrum. Цветовые аппроксимации были рассчитаны с учетом максимально возможной насыщенности, которую ZX Spectrum может создать на выходе PAL TV. Настоящие цвета ZX Spectrum на данный момент неизвестны. [ нужны разъяснения ] , и они, вероятно, менее насыщены. Чтобы вычислить реальные цвета ZX Spectrum, необходимо выполнить измерение фазово-амплитудного сдвига поднесущей цветности для каждого цвета с помощью осциллографа на выходе PAL ZX Spectrum. [ нужна ссылка ]

В кодировании ZX Spectrum цветовые компоненты находятся в порядке GRB (зеленый, красный, синий), а не в более распространенном порядке RGB. Преимущество порядка GRB заключается в том, что номера цветов упорядочиваются за счет увеличения яркости , поэтому при просмотре на черно-белом дисплее упорядоченная последовательность образует градиент от черного к белому.

Все свойства цвета ячейки хранятся в памяти в виде одного байта, называемого атрибутом . Считая от младшего до старшего бита, байт атрибута выделяет три бита для цвета пикселей со значением 1, три бита для цвета пикселей со значением 0, один бит для флага яркости и один бит для эффекта мигания. Эффект мигания приводит к тому, что отображаемые цвета переднего плана и фона чередуются каждые 0,64 секунды. [21]

Большинство современных эмуляторов ZX Spectrum отображают неточные и, возможно, перенасыщенные цвета. [ нужна ссылка ] Эти цвета были рассчитаны с помощью упрощенных приближений, которые не учитывают многие тонкости преобразования цветового пространства PAL в sRGB. Аналогично, на сайте ZX Art очень часто используются неточные цвета. [ нужна ссылка ] Теоретически невозможный цвет sRGB #00CD00 обычно используется в качестве зеленого цвета ZX Spectrum (т.е. реальный зеленый цвет Spectrum, вероятно, более голубоватый). [ нужна ссылка ]

БАЗОВЫЕ команды для цветов

[ редактировать ]

Два цвета символьной ячейки называются цветом переднего плана и цветом фона . Для любого значения n от 0 до 7 следующие команды Sinclair BASIC можно использовать для установки или изменения цвета ячейки: [15]

  • PAPER n, цвет фона символьной ячейки; применяется ко всем пикселям со значением 0 в ячейке
  • INK n, цвет переднего плана для символьной ячейки; применяется ко всем пикселям со значением 1 в ячейке
  • BRIGHT i, выбирает значение бита яркости символьной ячейки, где значение может быть либо 0, либо 1.

Кроме того, BORDER Команда выбирает цвет для области экрана, окружающей растровое изображение пикселя. Он не использует флаг яркости, поэтому только восемь основных цветов. для цвета границы поддерживаются [22]

Стандартный режим

[ редактировать ]
Стандартный экран ZX Spectrum с четко видимыми блоками атрибутов

Оригинальный ZX Spectrum имеет разрешение экрана 256х192 пикселей. [23] [24] Во всех случаях цвета чрезвычайно насыщенные. Информация о цвете накладывается на него в виде сетки областей размером 8x8 пикселей, известных как блоки атрибутов. [25] [26] Все свойства цвета блока атрибутов хранятся в памяти как один байт атрибута, и каждый блок атрибутов соответствует одной символьной ячейке. В каждом блоке атрибутов можно использовать только два цвета из палитры из 8 цветов. Кроме того, весь блок атрибутов может быть обозначен как «яркий», в результате чего в общей сложности получится 15 возможных цветов (черный не имеет «ярких» вариаций). Во многих программах ограничение только двух цветов на блок атрибутов проявляется как нежелательный эффект конфликта атрибутов .

Экран в этом режиме занимает 6144 байта для растрового изображения пикселя, что вместе с атрибутами цвета составляет 6912 байт.

Подробности:
Пиксели: 256 х 192
Атрибуты: 32 х 24
Цвета: 15 (считая неяркие и яркие)
Машина: Все

Монохромные телевизоры и мониторы

[ редактировать ]
ZX Spectrum на монохромном дисплее

Используя монохромный монитор или черно-белый телевизор (или уменьшив настройки насыщенности цветного телевизора), можно воспользоваться различиями в интенсивности в цветовом диапазоне Spectrum для создания изображения в оттенках серого с 15 оттенками и разрешением 256x192.

Подробности:
Пиксели: 256 х 192
Атрибуты: 32 х 24
Цвета: 15 оттенков серого
Машина: Все, с использованием монохромного дисплея.

Привет-цветные атрибуты

[ редактировать ]

Аппаратная реализация

[ редактировать ]

Привет-Цвет / Мультитехнология

Атрибуты ZX Spectrum «8x1» / цветной дисплей

Несколько сторонних клонов Spectrum, включая машины Timex Sinclair , [27] [28] , Интерфейс Pentagon eLeMeNt ZX и MB03+ Ultimate поддерживают режим экрана под названием Hi-Color, [28] в котором блоки атрибутов имеют размер 8x1 пикселей, а не обычные 8x8. [29] [30] Экран в этом режиме занимает 12 КБ ОЗУ. В случае с Timex этот режим активируется командой OUT 255,2. [27] [28] По крайней мере один редактор для машин Timex поддерживает этот режим. [31] Кроме того, этот режим экрана можно создать с помощью DMA дисковой системы MB-02. аппаратного обеспечения [32] (где эта техника известна как Multitech [33] ), а также доступен как Режим 2 (с линейным порядком байтов) на SAM Coupé . [34]

Подробности:
Пиксели: 256 х 192
Атрибуты: 32 х 192
Цвета: 15
Машины: Timex Sinclair модели , ZX Spectrum Next , Pentagon , eLeMeNt ZX , SAM Coupé.
Интерфейс: MB03+ Ultimate

Программная реализация

[ редактировать ]

Атрибуты 8x1 / Hicolor / Multicolor / FLI / BIFROST*2 / Генератор Rainbow / Процессор Rainbow

[ редактировать ]

В других моделях Spectrum этот эффект можно воспроизвести, используя тот факт, что ULA перечитывает информацию об атрибутах в каждой строке пикселей при формировании выходного видео; можно записать новое значение в соответствующую ячейку памяти между последовательными строками и, таким образом, вызвать отображение другой пары цветов. Однако процессор Spectrum недостаточно быстр, чтобы записать всю строку байтов атрибута за одну строку сканирования, поэтому атрибуты 8x1 могут быть получены только для 20 столбцов. [35] Эта техника известна под разными названиями: Hicolour , Multicolour , FLI , BIFROST*2 «SuperColour», [36] «Радужный генератор» или Радужный процессор [37] режим. [30]

Подробности:
Пиксели: 256 х 192
Атрибуты: 32 x 192 (ограничено областью 18 x 192)
Цвета: 15
Машина: Все (со специальным кодом, адаптированным для таймингов каждой машины)

Атрибуты 8x2 / Двухцветный / Нирвана+

[ редактировать ]
Отображение атрибутов ZX Spectrum «8x2»

Разновидностью этого метода является изменение ряда атрибутов в течение двух строк развертки, в результате чего блоки атрибутов размером 8x2 пикселя занимают более широкую область экрана. Этот режим известен как двухцветный , и его можно применить ко всей ширине экрана с помощью движка Nirvana+ . [38] [39]

Подробности:
Пиксели: 256 х 192
Атрибуты: 32 х 96
Цвета: 15
Машина: Все (со специальным кодом, адаптированным для таймингов каждой машины)

Атрибуты 4x1/4x2/4x4

[ редактировать ]

Особый случай включает чередование двух доступных цветов на ячейку атрибута по 4 пикселя каждый, что позволяет рассматривать каждую область 4x1 как независимо окрашиваемый «пиксель» (хотя ограничение одного уровня яркости на ячейку 8x1 все еще действует). Опять же, вариант этого режима 4x2 можно применить к более широкой области экрана. А вариант 4x4 может быть достигнут на машинах 128K путем переключения по времени между двумя видеопамятями (вместо перезаписи данных атрибутов), чтобы отображать верхнюю половину ячеек символов с одного экрана, а нижнюю половину - с другого.

Подробности:
Пиксели: 64 х 192; 64 х 96; 64 х 48
Атрибуты: ограничение яркости 8x1.
Цвета: 15
Машина: Все (со специальным кодом, адаптированным для таймингов каждой машины)

ULAplus / HAM256 / HAM8x1

[ редактировать ]

ULAplus совместим со стандартными режимами ZX Spectrum и Timex Hi-Res и Hi-Colour, а также добавляет возможность переопределения палитры. [40] Если использовать программное обеспечение ULAplus только для незначительной модификации 16 основных цветов, его можно отобразить на стандартном спектре. Использование полных 64 цветов несовместимо, поскольку оно активирует атрибуты «вспышки» оригинального Spectrum. [41] Также возможны режимы, вдохновленные Amiga HAM (HAM256 и HAM8x1), отображающие на экране до 256 цветов. [42] [43] [44] [45]

Подробности:
Пиксели: 256 х 192; 512 x 192 (режим высокого разрешения)
Атрибуты: 32 х 24; 32 x 192 (режим Hi-Colour 8x1)
Цвета: 2 из 256 (режим Hi-Res), 64 из 256; 256 (HAM256 и HAM8x1)
Машина: ZX Spectrum SE , ZX Spectrum Next , ZX-Uno , Chloe 280SE , [46] Хлоя 140SE , [46] ЭЛЕМЕНТ ZX , zx128u+ [46]
Интерфейс: MB03+ Ultimate

Чересстрочный/переключаемый режимы

[ редактировать ]
Имитация чересстрочного изображения ZX Spectrum на ЭЛТ-экране

Чересстрочная развертка

[ редактировать ]

Попеременно переключаясь между двумя экранами при каждом прерывании кадра (50 Гц), теоретически можно имитировать удвоение разрешения экрана по вертикали со 192 до 384 строк.

Клоны Timex и ZX Spectrum 128K реализуют «теневую» область экрана, которую можно переключать на место с помощью одного OUT команда, и она часто используется для быстрого переключения между двумя изображениями с этой целью (хотя этого можно добиться и стандартным копированием блока, хотя и не на весь экран).

При просмотре на экране ЭЛТ-телевизора (стандарт того времени) мерцание менее заметно, чем на современном мониторе. приведен пример изображения Здесь ( предупреждение : связанное изображение мерцает очень быстро, что потенциально может вызвать судороги у людей со светочувствительной эпилепсией ).

Чересстрочное монохромное изображение ZX Spectrum в высоком разрешении. Реальное изображение, полученное с помощью Sinclair ZX Spectrum +3 с использованием композитного выхода и карты захвата PCI.

На самом деле этот метод не обеспечивает истинного чересстрочного отображения, поскольку у Spectrum отсутствует возможность синхронизации с аппаратным обеспечением дисплея на таком низком уровне. На экране телевизора с ЭЛТ эффект больше похож на сглаживание : некоторые пиксели отображаются с половинной интенсивностью. [30] [47]

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

Подробности:
Пиксели: 256 х 384
Атрибуты: 32 х 24
Цвета: 15

GigaScreen / DithVIDE / BZither

[ редактировать ]
Экран GigaScreen ZX Spectrum

Атрибуты (цвета) изображения на экране чередуются с частотой 50 Гц. [48] Таким образом, палитра увеличивается примерно до 36 цветов. [49] Можно переключать экраны для каждой строки сканирования и, таким образом, смешивать экраны, но это требует очень интенсивного использования процессора и требует точной и стабильной синхронизации.

С помощью настоящего программного обеспечения tstate можно смоделировать GigaScreen на оригинальном 128k ZX Spectrum с разрешением 128k. [50]

Для машин Pentagon доступна аппаратная модификация, которая напрямую объединяет две альтернативные области экрана в видеосигнал, тем самым устраняя мерцание, связанное с этим методом. Интерфейс MB03+ Ultimate и компьютер eLeMeNt ZX могут отображать три аппаратных режима немерцающего GigaScreen (смешанные видеопамяти, смешанные видеокадры и режим автоопределения) с разрешением 256 x 192 и 512 x 192.

Кроме того, методы GigaScreen и Hi-Colour можно использовать вместе для получения еще более насыщенных цветов изображений; этот формат получил названия DithVIDE и BZither , оба названия относятся к методам сглаживания , используемым при преобразовании полноцветных изображений в этот формат.

Подробности:
Пиксели: 256 х 192
Атрибуты: 32 х 24
Цвета: ~36
Машина: Все (с мерцанием)
Аппаратное обеспечение GigaScreen: Pentagon , eLeMeNt ZX , MB03+ Ultimate (без мерцания)

Ключевой слой

[ редактировать ]

Интерфейс MB03+ Ultimate и компьютер eLeMeNt ZX обеспечивают этот графический режим, который позволяет отображать данные изображения из второй видеопамяти на месте одного выбранного цвета в видеопамяти №1. Это добавляет третий цвет к атрибуту.

Подробности:
Пиксели: 256 х 192, 512 х 192
Атрибуты: 32 х 24, 64 х 48, 3 цвета на ячейку.
Цвета: 15
Машина: ЭЛЕМЕНТ ZX
Интерфейс: MB03+ Ultimate

3-цветный/Мультихромный/RGB-3/Интерхромный

[ редактировать ]
3-цветный экран ZX Spectrum

Три отдельных изображения, состоящих из красного, зеленого и синего слоев, быстро отображаются на экране одно за другим, полагаясь на постоянство визуальных эффектов, позволяющих объединить три слоя в одно цветное изображение. [51] В результате получается 8-цветное изображение, где каждый пиксель может быть окрашен независимо. [52] [53]

Подробности:
Пиксели: 256 х 192
Атрибуты: 256 х 192
Цвета: 8
Машина: Все

Совместимые машины и интерфейсы

[ редактировать ]

Более поздние машины, совместимые с ZX Spectrum, предлагали дополнительные видеорежимы. Они основаны на стандартном режиме 256x192, но несовместимы с оригинальным Spectrum. [30] Кроме того, интерфейсы Spectra и интерфейс MB03+ Ultimate расширяют возможности дисплея Spectrum, обеспечивая поддержку большего количества цветов и/или дополнительных видеорежимов.

Цветовой режим ATM Turbo / Pentagon 16

Видеорежим, в котором каждый пиксель может иметь один из 16 цветов. [54]

Подробности:
Пиксели: 256 х 192
Атрибуты: нет, нет ограничений
Цвета: 16
Машина: Банкомат Турбо , Пентагон
Sam Coupé 256x192x16 цветовой режим

256x192x16 / Режим 4

[ редактировать ]

Режим Sam Coupé, в котором каждый пиксель может отображать один из 16 цветов из 128 цветовой палитры. [30]

Подробности:
Пиксели: 256 х 192
Атрибуты: нет, нет ограничений
Цвета: 16 (из 128) в строке
Машина: Сэм Купе

Режим, поддерживаемый компьютером Пентагона. [55]

Подробности:
Пиксели: 384 х 304
Атрибуты: 48 х 38
Цвета: 16
Машина: Пентагон

Графика HGFX

[ редактировать ]

Компьютер eLeMeNt ZX и интерфейс MB03+ обеспечивают планарное разрешение 256x192 (LowRes), 512x192 (HighRes) и 512x384 (SuperHiRes). [56] Графика HGFX обрабатывается через плоские слои, но к ней также можно получить доступ как к «коренастым» страницам ОЗУ. Самым высоким, «коренастым», является разрешение «PAL» — 720x546 пикселей. HGFX состоит из совместимых с ZX-экраном (нелинейных или линейных) слоев-битовых плоскостей для достижения до 256 цветов как в низком разрешении, так и в низком разрешении. [57] и HiRes, 16 цветов в SuperHiRes и 4 цвета в самом высоком разрешении. Он занимает лишь часть памяти, аналогично памяти ZX-экрана, имеет собственные внутренние буферы и может комбинироваться с исходной ZX-графикой в ​​так называемом режиме прозрачности. [58] HGFX обеспечивает 24-битную полноцветную палитру (совместимую с HiRes indeXedColour) с 256 индексированными цветами. Данные экрана HGFX также могут отображаться в режимах HAM (подобно Amiga) и FILL (подобно Apple2GS).

HGFX основан на более мощной системе HGFX/Q, которую изначально можно было расширить в приграничной области до 320 x 240 или 640 x 240. [59]

Подробности:
Пиксели: 256 х 192, 512 х 192, 512 х 384, 720 х 546
Атрибуты: нет, нет ограничений, плюс режимы FILL и HAM.
Цвета: до 256 (из 16777216), до 16 (SuperHiRes) и 4 (PAL 720 x 546)
Машина: MB03+ Ultimate , ELEMeNT ZX
Подробности:
Пиксели: 256 x 192 (256 цветов из 512), 320 x 256 (256 цветов из 512) и 640 x 256 (16 цветов из 512)
Атрибуты: нет, нет ограничений
Машина: ZX Spectrum Next [60]

В этом режиме отображается разрешение 128x96 пикселей двойного размера. Каждый пиксель содержит один из шестнадцати цветов без ограничений по атрибутам. Пиксели хранятся в линейном буфере как 4-битные полубайты (т. е. 2 пикселя на байт). Буфер имеет длину 6144 байта и занимает ту же память, что и экран с разрешением 256 x 192 пикселя.

Подробности:
Пиксели: 128 х 96
Атрибуты: нет, нет ограничений
Цвета: 16 (из 256)
Машина: ZX-Uno , ZX Spectrum Next , MB03+ Ultimate , eLeMeNt ZX

В этом режиме отображается разрешение 128x96 пикселей двойного размера. Каждый пиксель содержит один из 256 цветов (из 512) без ограничений по атрибутам. Пиксели хранятся в линейном буфере как 8-битные. Буфер имеет длину 12288 байт и занимает ту же память, что и основной (DFILE1) и теневой (DFILE2) экраны размером 256x192 пикселей.

Подробности:
Пиксели: 128 х 96
Атрибуты: нет, нет ограничений
Цвета: 256 (из 512)
Машина: ZX Spectrum Next

Спектры (+128)

[ редактировать ]

Spectra имеет 31 формат отображения. Они позволяют одновременно отображать до 64 уникальных цветов с различным цветовым разрешением, с высотой атрибутов 1, 2, 4 и 8 пикселей и шириной 4 и 8 пикселей. [61]

Режимы высокого разрешения

[ редактировать ]

512x192x2 / Высокое разрешение

[ редактировать ]

Этот режим в основном использовался для отображения текстового экрана с колонками размером 64x24 или 85x24 и первоначально только для компьютеров Timex Sinclair (где он назывался Hi-Res ) и некоторых российских клонов. [62] может отобразить его. Также требуется 12 КБ ОЗУ. В случае с Timex этот режим активируется командой OUT 255,1. [27] [28] Два графических редактора («Рисуй 512» [63] и «Тех-Жеребьевка» [64] ) поддерживают этот режим, [65] [66] наряду с BASIC64 и некоторыми реализациями CP/M . [30]

Подробности:
Пиксели: 512 х 192
Атрибуты: нет, нет ограничений
Цвета: 2 (четыре палитры: черный и белый, синий и желтый, красный и голубой, пурпурный и зеленый) (из 512 на ZX Spectrum Next)
Машина: Timex Sinclair , ZX Spectrum Next , ZX-Uno , MB03+ Ultimate , eLeMeNt ZX , Pentagon
Пример цвета Sam Coupé 512x192x4

512x192x4 / Режим 3

[ редактировать ]

В Sam Coupé есть этот режим, в котором каждый пиксель может использовать один из 4 цветов из 128 палитры. [30]

Подробности:
Пиксели: 512 х 192
Атрибуты: нет, нет ограничений
Цвета: 4 (из 128) в строке
Машина: Сэм Купе
Пример видеорежима Pentagon 512 x 384

Режим, поддерживаемый компьютером Пентагона. [55]

Подробности:
Пиксели: 512 х 384
Цвета: монохромный
Станок: Pentagon , Timex Sinclair 2128 (модификация на базе TC 2048)

Цвет высокого разрешения

[ редактировать ]

Пиксели хранятся в линейном порядке. Атрибуты дублируются по вертикали, состав атрибута идентичен исходному режиму ZX Spectrum. HiRes indeXedColour может выбирать 32 цвета из 16777216 цветов. Две видеопамяти можно микшировать как в режиме Color, так и в режиме indeXedColour с помощью Keylayer.

Подробности:
Пиксели: 512 х 192
Атрибуты: 64 х 48
Цвета: 16 (или 32 индексированных, из 1677216)
Машина: MB03+ Ultimate , ELEMeNT ZX

Эмулируемый

[ редактировать ]

256x192, 256 цветов, «256 цветовой режим», без атрибутов

[ редактировать ]

СПЕЦ256, [67] [68] В ZWin [69] [70] и Эс.спектр [71] эмуляторы имеют режим экрана 256х192 пикселей, где каждый пиксель может быть одного из 256 цветов. [30] Это достигается за счет увеличения размера слова эмулируемого Z80 с 8 бит до 64, что делает восемь бит данных доступными для каждого пикселя; таким образом, экран занимает 48 КБ памяти. Этот режим существует только в эмуляторе, и для его использования необходимо изменить графику программного обеспечения. [ нужна ссылка ]

Подробности:
Пиксели: 256 х 192
Атрибуты: нет, нет ограничений
Цвета: 256

Дизеринг и размытие

[ редактировать ]
Имитация телевизионного размытия на изображении ZX Spectrum размером 256x192 с обычным шаблоном размывания. Узоры намеренно размываются, создавая новые цвета (например, оранжевый, серый и т. д.). Регулярное сглаживание снижает эффективное разрешение этого изображения до 128x96.
Стандартная палитра ZX Spectrum с упорядоченным дизерингом 8x8.
Стандартная палитра ZX Spectrum с сглаживанием в пиксельной графике

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

Чтобы точно имитировать фактическое выходное изображение ZX Spectrum, современный эмулятор должен использовать фильтр размытия значительной силы. Простые билинейные фильтры создают слишком сильное размытие, а чрезвычайно резкий фильтр Ланцоша недостаточен. Поэтому фильтр должен быть специально сконструирован для имитации эффекта размытия на обычном ЭЛТ-телевизоре. Большинство эмуляторов используют фильтры очень низкого качества, из-за чего конечное изображение выглядит чрезвычайно резким и пиксельным. [ нужна ссылка ] Некоторые эмуляторы, такие как FUSE, используют доступные фильтры, пытаясь уменьшить эффект пикселизации. [ нужна ссылка ] Эти фильтры создают окончательное изображение, значительно отличающееся от реального видеосигнала ZX Spectrum.

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

Таблица цветового контраста
0,00,00 0,00,01 0,00,02 0,00,03 0,00,04 0,00,05 0,00,06 0,00,07
0,01,00 0,01,01 0,01,02 0,01,03 0,01,04 0,01,05 0,01,06 0,01,07
0,02,00 0,02,01 0,02,02 0,02,03 0,02,04 0,02,05 0,02,06 0,02,07
0,03,00 0,03,01 0,03,02 0,03,03 0,03,04 0,03,05 0,03,06 0,03,07
0,04,00 0,04,01 0,04,02 0,04,03 0,04,04 0,04,05 0,04,06 0,04,07
0,05,00 0,05,01 0,05,02 0,05,03 0,05,04 0,05,05 0,05,06 0,05,07
0,06,00 0,06,01 0,06,02 0,06,03 0,06,04 0,06,05 0,06,06 0,06,07
0,07,00 0,07,01 0,07,02 0,07,03 0,07,04 0,07,05 0,07,06 0,07,07
  1. ^ Викерс, Стивен (1982). "Введение" . Программирование Sinclair ZX Spectrum BASIC . Синклер Рисерч Лтд . Архивировано из оригинала 24 сентября 2006 года . Проверено 23 августа 2006 г.
  2. ^ Викерс, Стивен (1982). «Цвета» . Программирование Sinclair ZX Spectrum BASIC . Синклер Рисерч Лтд . Архивировано из оригинала 24 сентября 2006 года . Проверено 23 августа 2006 г.
  3. ^ Патент EP 0107687 , Ричард Фрэнсис Альтвассер, «Дисплей для компьютера», выдан 6 июля 1988 г., передан Sinclair Research Ltd.  
  4. ^ «База данных — ZX-Art» . zxart.ee . Проверено 14 апреля 2023 г.
  5. ^ «Техническая информация о спектре 48K ZX» . worldofspectrum.org . Проверено 28 декабря 2023 г.
  6. ^ Перейти обратно: а б «Блог о дизайне клонов Spectrum» .
  7. ^ «Техническая информация о спектре 48K ZX» .
  8. ^ «Техническая информация о 128K ZX Spectrum» .
  9. ^ Перейти обратно: а б Смит, Крис (2010). ZX Spectrum ULA: Как спроектировать микрокомпьютер (1-е изд.). Великобритания: ZXDesign Technology and Media. стр. 224–227. ISBN  978-0-95-650710-5 .
  10. ^ «Техническая информация о спектре 48K ZX» . worldofspectrum.org . Проверено 15 ноября 2023 г.
  11. ^ Перейти обратно: а б Смит, Крис (2010). ZX Spectrum ULA: Как спроектировать микрокомпьютер (1-е изд.). Великобритания: ZXDesign Technology and Media. п. 74. ИСБН  978-0-95-650710-5 .
  12. ^ «Техническая информация о спектре 48K ZX» . worldofspectrum.org . Проверено 15 ноября 2023 г.
  13. ^ Тишновский, Павел. «Графика на восьмибитных компьютерах Sinclair II» . Root.cz (на чешском языке) . Проверено 15 ноября 2023 г.
  14. ^ «Для новичков — объяснение вывода видео C64» . Лимон64 — Коммодор 64 . 24 сентября 2019 г. Проверено 11 января 2024 г.
  15. ^ Перейти обратно: а б с «Цвета — Вводное руководство Sinclair ZX Spectrum [страница 27] | ManualsLib» . www.manualslib.com .
  16. ^ «Выход S-video для ZX Spectrum +2A/+3, +2B и +3B» . zxnet.co.uk . Проверено 20 декабря 2023 г.
  17. ^ «Удаление синего/желтого ореолов с видеовыхода 128/+2» . Спектр для всех . Проверено 20 декабря 2023 г.
  18. ^ Фэрроу, Пол (2001). Кабель SCART Spectrum 128 (PDF) .
  19. ^ Кодер цвета TEA2000 PAL/NTSC (PDF) . Филипс. Сентябрь 1985 года.
  20. ^ Перейти обратно: а б «Блог о дизайне клонов Spectrum» . www.zxdesign.info .
  21. ^ «Техническая информация о спектре 48K ZX» . worldofspectrum.org . Проверено 14 ноября 2023 г.
  22. ^ «Цвета — Вводное руководство Sinclair ZX Spectrum [страница 27]» . Библиотека руководств . Проверено 14 ноября 2023 г.
  23. ^ «Блог о дизайне клонов Spectrum» . www.zxdesign.info .
  24. ^ «Техническая информация о спектре 48K ZX» . worldofspectrum.org .
  25. ^ Белфилд, Дин. «L Break Into Program — Структура памяти экрана ZX Spectrum» .
  26. ^ «World of Spectrum — Документация — Руководство по ZX Spectrum — Глава 24» . worldofspectrum.org .
  27. ^ Перейти обратно: а б с «Порты ввода-вывода Timex» . timex.comboios.info .
  28. ^ Перейти обратно: а б с д «Техническая информация Таймекс» . worldofspectrum.org .
  29. ^ Вайсенберг, Майкл (19 декабря 1983 г.). «ИнфоМир» . InfoWorld Media Group, Inc. – через Google Книги.
  30. ^ Перейти обратно: а б с д и ж г час «Дополнительные графические режимы ZX Spectrum — 8-битные проекты для всех» . 8bit.yarek.pl . Архивировано из оригинала 15 июня 2006 года . Проверено 14 сентября 2006 г.
  31. ^ «Расширенная краска» . www.timexsinclair.com . Проверено 20 ноября 2022 г.
  32. ^ MB-02+ Революционный шаг вперед (PDF) . Лаборатории компании 8 Bit.
  33. ^ «Загрузка MB02+» . www.128land.com .
  34. ^ Гордон, Райт, Брюс, Энди (1990). ТЕХНИЧЕСКОЕ РУКОВОДСТВО SAM COUPE v3.0 (PDF) . МАЙЛЗ ГОРДОН ТЕХНОЛОДЖИ plc. {{cite book}}: CS1 maint: несколько имен: список авторов ( ссылка )
  35. ^ «BIFROST*2 ENGINE в Spectrum Computing — игры, программное и аппаратное обеспечение Sinclair ZX Spectrum» . Спектральные вычисления .
  36. ^ «SuperColour в Spectrum Computing — игры, программное и аппаратное обеспечение Sinclair ZX Spectrum» . Спектральные вычисления .
  37. ^ «Spectrum Computing — игры, программное и аппаратное обеспечение ZX Spectrum» .
  38. ^ «NIRVANA+ ENGINE в Spectrum Computing — игры, программное и аппаратное обеспечение Sinclair ZX Spectrum» . Спектральные вычисления .
  39. ^ «База данных — ZX-Art» .
  40. ^ «База данных — ZX-Art» . zxart.ee .
  41. ^ «ЮЛАплюс» . сайты.google.com .
  42. ^ «ЮЛАплюс» . сайты.google.com . Архивировано из оригинала 25 мая 2013 года . Проверено 20 ноября 2022 г.
  43. ^ «Коллекция ULAplus™, посвященная 10-летию компании Source Solutions, Inc» . itch.io. ​Проверено 20 ноября 2022 г.
  44. ^ «Программа просмотра HAM256 в Spectrum Computing — игры, программное и аппаратное обеспечение Sinclair ZX Spectrum» . Спектральные вычисления . Проверено 20 ноября 2022 г.
  45. ^ «HAM 8x1 в Spectrum Computing — игры, программное и аппаратное обеспечение Sinclair ZX Spectrum» . Спектральные вычисления . Проверено 20 ноября 2022 г.
  46. ^ Перейти обратно: а б с Габор, Тарьян (2021). «ZX Spectrum в 21 веке?» .
  47. ^ «Демо-версия чересстрочной развертки в Spectrum Computing — игры, программное и аппаратное обеспечение Sinclair ZX Spectrum» . Спектральные вычисления .
  48. ^ «База данных — ZX-Art» . zxart.ee .
  49. ^ «GFX ZONE — графические режимы ZX-Spectrum» . gfxzone.planet-d.net .
  50. ^ ZX Spectrum 128k: Демоверсия "Velesoft's Dragon in Giga Screen Simulator" (2021 г.) , получено 21 декабря 2023 г.
  51. ^ «База данных — ZX-Art» . zxart.ee .
  52. ^ «ZX Prism: 16-цветный планарный режим без конфликтов цветов и аппаратный Gigascreen» . 17 июля 2014 г.
  53. ^ "Триколор — SpeccyWiki" . speccy.info .
  54. ^ «16col — SpeccyWiki» .
  55. ^ Перейти обратно: а б «384x304 — SpeccyWiki» .
  56. ^ «Графические режимы ZX Spectrum и совместимых устройств, поддерживаемые на платформе eLeMeNt/MB» .
  57. ^ «LnxSpectrum HGFX Oxygene» – через vimeo.com.
  58. ^ «HGFX — ZX Planar — учебное пособие» .
  59. ^ "lnxspectrum:hgfx [ilnx.cz]" . wiki.ilnx.cz.
  60. ^ «Видеорежимы — официальная вики SpecNext» .
  61. ^ Фэрроу, Пол (2018). Краткое описание режимов отображения SPECTRA (PDF) . www.fruitcake.plus.com / www.zxresourcecentre.co.uk.
  62. ^ «512x192 — SpeccyWiki» .
  63. ^ «Розыгрыш 512» . www.timexsinclair.com . Проверено 20 ноября 2022 г.
  64. ^ «Тех-Розыгрыш» . www.timexsinclair.com . Проверено 20 ноября 2022 г.
  65. ^ «Нарисуйте 512 в Spectrum Computing — игры, программное и аппаратное обеспечение Sinclair ZX Spectrum» . Спектральные вычисления . Проверено 20 ноября 2022 г.
  66. ^ «Программное обеспечение для TS 2068» . www.timexsinclair.com . Проверено 20 ноября 2022 г.
  67. ^ MVV (18 июля 2022 г.), mvvproject/Spec256-Games , получено 26 ноября 2022 г.
  68. ^ «Игры Spectrum Magic ZX 256 цветов» . Spectrummagic.emuunlim.com . Проверено 26 ноября 2022 г.
  69. ^ «EmuZWin v2.6 версия 1.0» .
  70. ^ «Эмузвин 2» . f0460945.xsph.ru . Проверено 26 ноября 2022 г.
  71. ^ «Руководство по Эспектруму» . www.habisoft.com . Проверено 26 ноября 2022 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 67190de75dbb2ecf0781d6f939832040__1721817720
URL1:https://arc.ask3.ru/arc/aa/67/40/67190de75dbb2ecf0781d6f939832040.html
Заголовок, (Title) документа по адресу, URL1:
ZX Spectrum graphic modes - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)