Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование видеоадаптеров EGA, VGA и SVGA.doc
Скачиваний:
138
Добавлен:
01.05.2014
Размер:
4.51 Mб
Скачать

Регистр выбора цвета (Color Select Register - csr) (индекс 14)

Регистр используется видеоадаптерами VGA и SVGA для управления цветом.

D0 Цвет Р4.

D1 Цвет Р5. Данные биты могут использоваться вместо линий Р5 и Р4 соответственно (см. регистры палитры и рис. 6.18).

D2 Цвет Р6.

D3 Цвет Р7. Биты используются контроллером атрибутов в качестве двух старших битов, передаваемых ЦАП (рис. 6.18). В режиме 13h биты D2 и D3 не используются.

D7-D4 Не используются.

Регистры цифро-аналогового преобразователя vga

Видеоадаптеры VGA и SVGA предназначены для подключения к аналоговым мониторам, имеющим три раздельных видеовхода. Сигнал на каждом из них управляет, соответственно, интенсивностью красного, зеленого и синего цвета изображения. Аналоговое напряжение для монитора формируется из двоичной цветовой информации при помощи трех ЦАП.

Цветовая 8-битовая информация, поступающая от контроллера атрибутов (рис. 4.19), преобразуется согласно таблице цветов в три 6-битовые сигнала для трех ЦАП. Такая схема позволяет одновременно отображать на экране 256 различных цветов, каждый из которых можно отдельно выбрать из 26+6+6= 218= 262144 возможных цветов.

PICTURE._FIG_31.PCX;6";4.308";PCX

Рисунок 4.19 Схема управления цветами видеоадаптера VGA

Таблица цветов фактически является набором из 256 18-битовых регистров. Используя регистры ЦАП, можно получить доступ для чтения и для записи к каждому регистру таблицы цветов.

ЦАП видеоадаптера VGA управляется пятью регистрами, перечисленными в следующей таблице:

Адрес

Регистр

3C6h

Регистр маскирования пикселов (Pixel Mask Register - PMR)

3C7h

Регистр состояния ЦАП (для чтения) (DAC State Register - DAC_SR)

3C7h

Индекс читаемого регистра таблицы цветов (для записи) (Look-up Table Read Index Register - LTRIR)

3C8h

Индекс записываемого регистра таблицы цветов (Look-up Table Write Index Register - LTWIR)

3C9h

Регистр данных таблицы цветов (Look-up Table Data Register - LTDR)

Регистр маскирования пикселов (Pixel Mask Register - pmr)

Фирма IBM в руководстве видеоадаптера VGA предупреждает, что доступ к регистру нежелателен. В противном случае могут разрушиться данные в таблице цветов.

Регистр состояния цап (dac State Register - dac_sr)

Регистр адресуется при помощи порта с адресом 3C7h и доступен только для чтения. Прочитав данные из регистра, можно определить, доступны регистры цветовой таблицы для чтения или же они доступны для записи.

D1-D0 Если биты D0 D1 содержат двоичное число 11b, то регистры цветовой таблицы доступны для записи, если D0 D1 содержат двоичное число 00b (шестнадцатиричное 0), то регистры цветовой таблицы доступны для чтения.

D7-D2 Не используются.

Индекс читаемого регистра таблицы цветов (Look-up Table Read Index Register - ltrir)

Этот индексный регистр доступен через порт 3C7h только для записи. Запись в данный регистр индекса элемента цветовой таблицы позволяет прочитать его через регистр данных цветовой таблицы.

D7-D0 Индекс регистра таблицы цветов (0-255).

Данные из регистров таблицы цветов читаются через порт 3C9h, как три 6-битовых числа. После чтения третьего числа значение индексного регистра (LTRIR) автоматически увеличивается на единицу, что позволяет прочитать всю таблицу цветов, загрузив регистр индекса только один раз.

Во время операций чтения или записи таблицы цветов прерывания должны быть запрещены.