Смекни!
smekni.com

Адаптер VGA. Организация и работа (стр. 5 из 6)

Дополнительный регистр

|| || || |---- Регистр числа горизон-

|| || || |тальных линий растра (8)

|| || || -------- Регистр начала гашения

|| || ||вертикальной развертки (8)

|| || |------------ Регистр начала обратного

|| || |вертикального хода

|| || |луча (8)

|| || ---------------- Регистр начала импульса

|| ||гашения вертикальной

|| ||развертки (8)

|| |-------------------- Регистр сравнения

|| |линий (8)

|| ------------------------ Регистр числа горизон-

||тальных линий растра (9)

|---------------------------- Регистр начала гашения

|вертикальной развертки (9)

-------------------------------- Регистр начала обратного

вертикального хода

луча (9)

Данный регистр содержит дополнительные биты тех регистров, чья длина превышает 8 бит.

Предварительная установка горизонтальнойразвертки

X----------------------

|------------ Строчная развертка

-------------------------- Побайтовое панорамирование

D4- D0 задают для самой верхней строки текста номер линии в матрице символов, начиная с которой начинают отображаться символы. Если содержимое этих битов не равно0, то символы в верхней строке отображаются не полностью.

D6, D5 являются дополнительными битами регистра горизонтального панорамирования контроллера атрибутов и позволяют сдвигать экран более чем на 8пикселов.

Высота символов текста

|| |-----------------

|| |------------ Высота символа

|| ------------------------ Бит 9 регистра начала им-

||пульса гашения вертикаль-

||ной развертки

|---------------------------- Бит 9 регистра сравнения

|линий

-------------------------------- Двойное сканирование

D4- D0 высота символа в пикселах минус 1.

D7если этот бит равен 1,то в режимах сразрешением по вертикали 200 пикселов для каждой линии растра применяется двойное сканирование.

Начальная линия курсора

XX|-----------------

|------------ Начальная линия курсора

------------------------ Бит гашения курсора

D4- D0 содержат номер начальной линии курсора в матрице символа.

D5если 1,то курсор гаснет.

Конечная линия курсора

X----------------------

|------------ Конечная линия курсора

-------------------------- Смещение курсора

D4- D0 содержат номер конечной линии курсора в матрице символа.

D6, D5 задают смещение курсора вправо относительно позиции, заданнойрегистром, определяющимположение курсора.

Регистры начального адреса

Регистры содержат адрес данных видеопамяти, которые будут отображаться в левом верхнем углу дисплея.

Регистры, определяющие положение курсора

Данные регистры определяютпозициюкурсорана экране.

Начало обратного вертикального ходалуча

Регистр определяет началообратного вертикального хода луча. Он содержит 10бит. Дополнительные биты расположены в дополнительном регистре.

Данный регистр доступен только длязаписи.

Конец обратного вертикального ходалуча

|| || -------------

|| || ---------- Конец обратного

|| ||вертикального ходалуча

|| |-------------------- Сброс вертикального

|| |прерывания

|| ------------------------ Разрешениевертикального

||прерывания

|---------------------------- Изменение скорости

|регенерации экрана

-------------------------------- Защита от записи

D3- D0 когда значение этих битовравно 4младшим битам

счетчика горизонтальных линий,сигналобратного вертикального хода луча будет окончен.

D4 запись0 в данный бит вызывает сброс вертикального прерывания и переустановку флага незаконченного вертикального прерывания.

D5если бит равен 0, то при каждом обратном вертикальном ходелуча налинии IRQ2 будет возникать прерывание.Сигнал

прерывания сбрасывается записью 0 в бит D4 данного регистра.

D6если 1,то во время обратного горизонтального хода луча будет генерироваться 5 циклов регенерациипамятивместо обычных 3.

D7Для совместимости с более ранними видеоадаптерами. Если бит 1, то регистрыконтроллера ЭЛТс индексами 0 - 7 будут защищены от записи.

Данный регистр доступен только длязаписи.

Завершение отображения вертикальной развертки

Регистр определяет момент, когда заканчивается видимая частьвертикальной развертки и происходит гашение луча. Регистрсодержит число,на 1 меньшее, чем количество горизонтальных линий растра. Содержит 10 бит. Дополнительные биты расположены вдополнительном регистре.

Логическая ширина экрана

Содержит логическую длину экрана в2-х байтных словах.

В текстовых режимах содержит количество символов, составляющих длину строки, деленнуюна 2 ( при 80 символах в строке содержимоерегистра 40 ). Часть символов может непоместиться на экране и для их отображения надо выполнить горизонтальную свертку экрана.

Вграфических режимах задает логическуюдлину горизонтальной линии развертки. Если линияn развертки начинается по адресу adr, а содержимое регистра off, то следующая линия развертки n+1начнется по адресу adr+off. Положение подчеркивания символа

X| |-----------------

| |------------ Положение подчеркивания

| ------------------------ Счетчик регенерации

---------------------------- Адресация видеопамяти

D5если 1,то длякаждогознако-места счетчик адреса регенерации будет увеличиватьсяна 4 вместо 1.

D6если 1,то адресация видеопамяти по двойным словам.

Началоимпульса гашения вертикальной развертки

Регистр определяет момент началагашениялуча в процессе вертикальной развертки. Содержит 10 бит. 9-й бит расположен вдополнительном регистре. 10-й бит расположен в регистре высоты символов текста.

Конецимпульса гашения вертикальной развертки

Когда содержимое регистра равно счетчикугоризонтальных линий, заканчивается сигнал гашения вертикальной развертки.

Управление режимом

D0для эмуляции графических режимов EGA. Запись 0приводит к выделению в видеопамяти 2 областей по 8 Кбайт. Одна содержит данные для четных, адругаядля нечетных строк экрана.

D1запись 0 приводит к эмуляции графических режимов видеоадаптера Hercules.

D2 если 0, то счетчик числа линий экрана увеличивается после каждого обратного горизонтального хода луча, иначе после каждых двух.

D3если 0,то счетчик адреса регенерации изображения увеличивается на1 на каждое знако-местоэкрана,иначе на каждые 2 знакоместа.

D4 если 1, то все выходные линии контроллера ЭЛТ переводятся в третье состояние. Используется только при тестировании видеоадаптера.

D6, D5 если D6 равен 1, то установлен байтовый режим, иначе- 2-х байтовый. Совместно с D5 поддерживается также

4-х байтовый режим.

D7 если 0, то горизонтальный и вертикальный обратный ход луча невозможны.

Регистр сравнения линий

Данный регистр используется совместно с регистром начального адреса. Когда счетчик горизонтальных линий сканирования совпадает со значением, записанном в данном регистре,происходитсброс счетчика адреса регенерируемой видеопамяти в 0 и

экранразбивается на 2 части:в верхней отображаются данные,

на которые указываетрегистрначального адреса, а внижней

отображаются данные, находящиеся в начале видеопамяти.

Регистр состоит из10 бит.9-й битрасположен в дополнительном регистре, 10-й - в регистре высоты символов текста.

РЕГИСТРЫ КОНТРОЛЛЕРА АТРИБУТОВ.

Контроллер атрибутов управляет цветовыми характеристиками изображений. Доступ осуществляется через порт 3C0h, который совмещает в себе функции базового и индексного регистров. Установить порт в исходное состояниеможно чтением из порта 3BAh для монохромногорежима или из порта 3DAh - для цветного режима. После этого данные, записываемые в регистр 3C0h, будутвосприниматься как индекс.

|индексназвание регистра ||00-0FРегистры цветовой палитры ( 0 - 15) ||10Регистр управлениярежимом ||11Регистр цвета рамки экрана ||12Регистр разрешенияцветового слоя ||13Регистр горизонтального панорамирования ||

=14

======= Регистр выбора цвета | ===============================================Регистры цветовой палитры

XX|| || |---- P0

|| || -------- P1

|| |------------ P2

|| ---------------- P3

|-------------------- P4

------------------------ P5

Регистр управления режимом

X|| ||| |---- Режим

|| ||| -------- Тип атрибутов

|| ||------------ Отображение 9-го пиксела

|| |---------------- Мигание/интенсивность

|| ------------------------ Горизонтальное панорами-

||рование

|---------------------------- Режим 13h

-------------------------------- Выбор источника сигнала

D0если текстовый режим, то 0, иначе - 1.

D1для монохромныхатрибутов - 1, для цветных - 0.

D2для монохромного режима с разрешением 720 пикселов по горизонтали при расширении матриц символов с 8 до 9пикселов. Если 1, то 9 пиксел в каждой строке повторяет 8, иначе 9 пиксел - цвет фона.

D3если 1, то бит D7 байта атрибутов управляет миганием символа, в противном случае -интенсивностью фона.

D5совместно с регистром разделения экрана дисплея контроллера ЭЛТ данный бит управляет горизонтальным панорамированием экрана. Если бит равен1, то запрещеногоризонтальное панорамирование стационарной частью экрана.

D6если установленрежим с использованием256 цветов, то данный бит должен быть равен 0.

D7бит выбора источника сигнала для видеовыходов P4 и P5. Если бит равен 0, то P4 и P5 управляются регистрами палитры, иначе- битами D0 и D1 регистра выбора цветов.

Регистр цвета рамки экрана

XX|| || |---- P0

|| || -------- P1

|| |------------ P2

|| ---------------- P3

|-------------------- P4

------------------------ P5

В текстовых режимах задаетцвет рамки экрана.

Регистрразрешения цветового слоя

XX----- -------------

| ---------- Разрешениеслоя

---------------------- Чтение регистров палитры

D0 - D3 биты разрешения цветовых слоев. Если какой-либо бит равен 0, то данные из соответствующего цветового слоя не поступают в регистры цветовойпалитры.

D4- D5 используются вместе с диагностическими битами регистра состояния 1 для чтениярегистров палитры.

Регистр горизонтального панорамирования

XXXX-------------

---------- Величина сдвига

D0- D3 задают величину горизонтального сдвига влево. Величина сдвигазависитот режима и типа видеоадаптера :

D3 D2 D1 D0монохромный256 цветов остальные

текстовый режимы

0000800

00010-1

0010112

00112-3

0100324

01014-5

0110536

01116-7

10007--

1001---

. . .. . ... .

1 1 1 1 - --

Регистр выбора цвета

XXXX|| |---- P4

|| -------- P5

|------------ P6

---------------- P7

D0- D1 данные биты могут использоваться вместо линий 4 и 5 (зависитот битаD7 регистра управления режимом ).