Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Регистры видеоадаптеров EGA и VGA

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

Современные адаптеры эмулируют регистры адаптеров более низкого уровня.

Доступ к большинству регистров осуществляется в два этапа: вначале через один порт указывается номер выбираемого регистра; затем через другой порт выполняется обмен. Такое решение позволяет сократить число портов. Многие регистры доступны только по записи, что приводит к неудобствам в мультизадачных системах. При работе с конкретным видеоадаптером необходимо ознакомиться с соответствующей документацией.

ПРИМЕЧАНИЕ: Далее приведено назначение некоторых регистров адаптеров EGA и VGA.

Внешние регистры

 

Управляют работой видеоадаптера в целом. Адресуются непосредственно по адресам своих портов.

MOR (Miscellaneous Output Register) - Регистр определения режима работы.

7 - полярность сигнала вертикальной синхронизации (0+, 1-);

6 - полярность сигнала горизонтальной синхронизации (0+, 1-);

5 - используется для перекомпоновки слоев в различные адреса памяти (для текстового режима =1);

4 - =1 дисплей управляется дополнительным устройством;

3..2 - управление тактовой частотой:

00 - 640 или 320 столбцов, 10 - внешний генератор,

01 - 720 столбцов, 11 - резерв.

1 - =0 доступ к видеопамяти запрещен;

0 - выбор диапазона адресов регистров FCR, ISR1 и контроллера ЭЛТ: =0 3Bxh, =1 3Dxh.

FCR (Feature Control Register) - Регистр управления дополнительным устройством. Биты D1, D0 регистра передаются на разъем дополнительного устройства FC1, FC0. Бит D3 =0.

ISR0 (Input Status Register 0) - Регистр состояния 0.

7 - обратный ход кадровой развертки (генерируется прерывание IRQ2);

6..5 - значение выходных линий FEAT1, FEAT0 дополнительного устройства;

4 - значение бита переключателя на плате EGA, номер бита соответствует значениям битов 3..2 регистра MOR. Для VGA бит определяет какой дисплей используется (монохромный или цветной);

3..0 - не используются.

ISR1 (Input Status Register 1) - Регистр состояния 1.

7..6 - не используются;

5..4 - диагностические (соответствуют двум выходным сигналам);

3 - обратный вертикальный ход луча;

2 - состояние переключателя светового пера;

1 - значение триггера светового пера;

0 - =1 когда адаптер читает данные из видеобуфера.

Регистры контроллера ЭЛТ

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

HTR (Horizontal Total Register) - Общая длина горизонтальной развертки. Длина указывается в знакоместах с учетом времени, необходимого на обратный ход луча.

HDER (Horizontal Display Enable Register) - Число отображаемых в строке знакомест, уменьшенное на единицу.

SHBR (Start Horizontal Blank Register) - Начало импульса гашения лучагоризонтальной развертки.

EHBR (End Horizontal Blank Register) - Конец импульса гашения луча горизонтальной развертки.

7 - =0 для EGA и =1 для VGA;

6..5 - смещение между началом выборки символов и их отображением:

00 - нет, 01 - 1, 10 - 2, 11 - 3 символа; 4..0 - собственно конец импульса.

SHRR (Start Horizontal Retrace Regicter) - рачало импульса горизонтального обраного хода луча.

EHRR (End Horizontal Retrace Register) - Конец импульса горизонтального обратного хода луча.

7 - для EGA управление горизонтальной сверткой,

для VGA пятый бит регистра гашения луча;

6..5 - смещение импульса относительно отображаемого участка развертки: 00 - нет, 01 - 1, 10 - 2, 11 - 3 символа; 4..5 - младшие пять битов конца импульса горизонтальной развертки.

(1) - Общая длительность цикла горизонтальной развертки;

(2) - Отображаемая строка символов;

(3) - формирование "рамки";

(4) - выключение луча;

(5) - начало выбора символов из видеобуфера;

(6) - обратный ход луча.

Регистры синхронизатора

Доступ осуществляется через индексный порт и порт данных. Регистры доступны по записи.

CPWE (Color Plane Write Enable) - Регистр разрешения записи цветового слоя.

7..4 - не используются; 3..0 - =1 разрешено записывать в соответствующий слой.

CGSR (Character Generator Select Register) - Регистр выбора знакогенератора.

7..6 - не используется;

5..4 - старшие биты номера таблиц;

3..2 - номер таблицы при D3 атрибута = 1;

1..0 - номер таблицы при D3 атрибута = 0;

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

1. Байт, записываемый в видеопамять поступает в графический контроллер;

2. В соответствии со значением регистра сдвига и выбора функции происходит циклический сдвиг полученного байта;

3. Затем результат сдвига обрабатывается по функции ИЛИ, И или ИСКЛ.ИЛИ с содержимым регистров-защелок;

4. На основе значений регистров разрешения установки/сброса и регистра установки/сброса данные дополнительно модифицируются;

5. В зависимости от значения регистра битовой маски в слои помешается информация из регистров-защелок или результаты преобразования.

SRR (Set/Reset Register) - Регистр установки/сброса.

7..4 - резерв;

3..0 - записываемое значение в слой при установленном бите регистра разрешения установки/сброса.

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

7..4 - резерв;

3..0 - =0 - данные для соответствующего слоя берутся от процессора, =1 - данные формируются размножением соответствующего бита регистра установки/сброса.

DRFS (Data Rotate & Function Select) - Регистр циклического сдвига и выбора функции.

7..5 - не используются;

4..3 - функция:

00 - нет операции,

01 - И,

10 - ИЛИ,

11 - ИСКЛ. ИЛИ;

2..0 - величина сдвига (вправо).

BMR (Bit Mask Register) - Регистр битовой маски. Если его бит =0, то соответствующий бит будет записываться из регистра-защелки; иначе бит поступает от процессора.

Регистры контроллера атрибутов

Управляет цветовыми характеристиками изображений. Доступ осуществляется через один порт. Переключение индекс-данные осуществляется при каждой записи в порт. Установку в исходное состояние можно осуществить, прочитав содержимое ISR1.

CPR (Color Palette Register's) - Регистры цветовой палитры (0..15). Формат регистров различен для различных дисплеев.

SBCR (Screen Border Color Register) - Регистр цвета рамки экрана. Формат эквивалентен формату регистров цветовой палитры.

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

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

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

LTDR (Look-up Table Data Register) - Регистр данных таблицы цветов. После установки адреса необходимо выполнить три операции чтения (записи) с интервалом не менее 240нс.

7..6 - не используется;

5..0 - код уровня сигнала

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...