Бордюр — различия между версиями

Материал из SpeccyWiki
Перейти к: навигация, поиск
м Бордюр» переименована в «Бордюр»)
Строка 11: Строка 11:
 
== Примеры ==
 
== Примеры ==
 
*[[Rage]] - демо с несколькими сложными бордюрными эффектами
 
*[[Rage]] - демо с несколькими сложными бордюрными эффектами
 +
*[[QARX]] - игра 1989 года с текстом на бордюре
  
 
== Ссылки ==
 
== Ссылки ==
*[http://zxdn.narod.ru/coding/zf5bordr.txt Об эффектах на бордюре и кое о чём ещё] - статья из [[ZX Format]] #5
+
* [http://zxdn.narod.ru/coding/zf5bordr.txt Об эффектах на бордюре и кое о чём ещё] - статья из [[ZX Format]] #5
  
 
[[Категория:Видеорежимы]]
 
[[Категория:Видеорежимы]]

Версия 02:21, 19 декабря 2007

Бордюр, Бордер (Border) - часть изображения в стандартном видеорежиме по краям экрана. В отличии от основной части может только изменять цвет (путём вывода значений в младшие 3 бита (D0-D2) порта #FE). При этом возможно использование только цветов 0..7, то есть обычной яркости. Цветовая палитра по значениям соотвествует цветам чернил (INK) и/или фона (PAPER) экрана.

Прорисовка всего видеоизображения (экрана вместе с бордюром) производится лучом развёртки телевизора/монитора сверху вниз, слева направа с частотой 50 Герц после прихода сигнала немаскируемого прерывания. Первые 80 строчек прорисовываются только цветом бордюра, после этого начинается смежная прорисовка экран/бордюр, причём экран находится приблизительно в центре между началом и концом строчки монитора/телевизора (длина отображаемой части строки до 384 пикселей). После того как проходит ещё 192 строчки (высота экрана ZX-Spectrum), заканчивается экран, и опять пририсовывается только бордюр, до конца кадра телевизора/монитора.

Существует специальный регистр, который хранит текущий цвет бордюра - генератор видео-сигнала использует его при прорисовке бордюра. Если при прорисовке бордюра поменять содержимое этого регистра (обновляя содержимое регистра бордюра посредством записи данных в порт #FE), то цвет бордюра в том месте, где находится луч телевизора/монитора, будет соответствовать новому значению регистра бордюра, в то время как в уже прорисованной части бордюр будет иметь цвет, соответствующий старому значению регистра бордюра.

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

Операция смены цвета бордюра (вывода данных в порт #FE) занимает 11-12 тактов, а 1 такт процессора соответствует 2 точкам прорисованного экрана или бордюра. Поэтому минимальная ширина области, имеющей свой собственный цвет на бордюре примерно равна трём знакоместам (22-24 точки) для стандартной частоты ЦП (3,5 МГц).

Примеры

  • Rage - демо с несколькими сложными бордюрными эффектами
  • QARX - игра 1989 года с текстом на бордюре

Ссылки