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

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

Видеоадаптер EGA позволяет загрузить в память четыре, а VGA и SVGA - восемь таблиц знакогенератора, каждая из которых определяет 256 символов. Одновременно могут использоваться символы одной или двух таблиц знакогенератора. Это позволяет одновременно отображать на экране монитора до 512 различных символов.

Если разрешено одновременное использование двух различных таблиц знакогенератора, тогда бит D3 байта атрибутов указывает, какая таблица будет использоваться при отображении символа с этим атрибутом.

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

D1-D0 Выбор первой активной таблицы знакогенератора. Эта таблица используется для вывода символа на экран, если бит D3 байта атрибутов символа содержит ноль.

D3-D2 Выбор второй активной таблицы знакогенератора. Вторая таблица используется для вывода символа на экран, если бит D3 байта атрибутов символа содержит единицу.

D4 Дополнительный бит, доступный на видеоадаптерах VGA и SVGA. Используется для выбора первой таблицы знакогенератора.

D5 Дополнительный бит, доступный на видеоадаптерах VGA и SVGA. Используется для выбора второй таблицы знакогенератора.

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

Для выбора активных таблиц знакогенератора надо установить биты D0-D5 в соответствии со следующей таблицей:

D5 D3 D2

Номер таблицы знакогенератора, используемой, если бит D3 байта атрибутов равен 1

D4 D1 D0

Номер таблицы знакогенератора, используемой если бит D3 байта атрибутов равен 0

0 0 0

Первая таблица знакогенератора

0 0 1

Вторая таблица знакогенератора

0 1 0

Третья таблица знакогенератора

0 1 1

Четвертая таблица знакогенератора

1 0 0

Пятая таблица знакогенератора (видеоадаптеры VGA и SVGA)

1 0 1

Шестая таблица знакогенератора (видеоадаптеры VGA и SVGA)

1 1 0

Седьмая таблица знакогенератора (видеоадаптеры VGA и SVGA)

1 1 1

Восьмая таблица знакогенератора (видеоадаптеры VGA и SVGA)

Если нужна только одна активная таблица знакогенератора, то значения битов D5 D3 D2 и битов D4 D1 D0 должны совпадать.

w Для выбора активных таблиц знакогенератора рекомендуется использовать соответствующую функцию BIOS.

Регистр определения структуры памяти (Memory Mode Register - mmr) (индекс 4)

Регистр инициализируется BIOS во время выбора режима работы видеоадаптера и определяет структуру видеопамяти в этом режиме.

D0 Для видеоадаптера EGA бит D0 содержит единицу, при использовании в текстовом режиме функции выбора знакогенератора. Для адаптера VGA этот бит обычно сброшен в ноль.

D1 Для видеоадаптера EGA бит D1 равен единице, если объем видеопамяти больше 64 Кбайт.

D2 Если бит D2 содержит ноль, то доступ по четным адресам происходит к нулевому цветовому слою, а по нечетным - к первому.

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

При выборе режима работы адаптера, BIOS загружает в регистр CPWE следующие значения:

Режим

0,1,2,3,7

4,5

6,0Dh,0Eh

0Fh,10h

Содержимое регистра

03

02

06

00