Программирование видеоадаптеров

       

Регистр разрешения установки/сброса (Set/Reset Enable Register - SRER) (индекс1)


Регистр разрешения установки/сброса позволяет при записи в видеопамять для одних цветовых слоев использовать данные от центрального процессора, а для других - из регистра установки/сброса (рис. 4.10).

Если биты регистра, управляющие цветовыми слоями, содержат единицы, то при выполнении операции записи, в соответствующие цветовые слои записывается информация из регистра установки/сброса. В остальные слои видеопамяти заносятся данные процессора.

Теперь приведем формат регистра разрешения установки/сброса:

D0    Разрешение использования данных из регистра установки/сброса для цветового слоя 0.

D1    Разрешение использования данных из регистра установки/сброса для цветового слоя 1.

D2    Разрешение использования данных из регистра установки/сброса для цветового слоя 2.

D3    Разрешение использования данных из регистра установки/сброса для цветового слоя 3.

D7-D4    Зарезервировано.

По умолчанию во все биты регистра записываются нулевые значения.

Заметим, что возможность использования регистров установки/сброса можно реализовать только в нулевом режиме записи. Режим записи устанавливается регистром режима работы графического контроллера (Mode Register, индекс 5). В нулевом режиме записи, если запрещено выполнение операции маскирования пикселов (регистр битовой маски содержит значение 0FFh), то каждый байт, записываемый процессором в видеопамять определяет 8 пикселов в одном или нескольких цветовых слоях.

Рассмотрим на рисунке 4.10 применение регистров установки/сброса. Пусть графический контроллер находится в нулевом режиме работы, и регистр битовой маски равен 0FFh (используются только данные от процессора). В этом случае можно использовать регистры установки/сброса.

Допустим, что после преобразования данных, записываемых процессором в видеопамять, в соответствии со значением регистра циклического сдвига и выбора функций, данные имеют следующий вид:

          байт 11110000b передается в третий слой видеопамяти,

          байт 00000011b передается во второй слой видеопамяти,

          байт 00110011b передается в первый слой видеопамяти,

          байт 00110011b передается в нулевой слой видеопамяти.

Данные, записываемые в видеопамять зависят от значения регистра разрешения установки/сброса. Биты D3 и D0, регистра разрешения установки/сброса равны нулю, поэтому в третий слой и нулевой слой видеопамяти данные заносятся без изменения. Биты D2 и D1 регистра разрешения установки/сброса равны единице, значит во второй и первый слои видеопамяти записываются данные в соответствии со значением битов D2 и D1 регистра установки/сброса. То есть во второй слой записывается байт 00000000b, а в первый - 11111111b.

PICTURE._FIG_24.PCX;6";4.308";PCX

Рисунок 4.10  Использование регистров установки/сброса



Содержание раздела