Программирование видеоадаптеров CGA,EGA и VGA


4. Архитектура видеоадаптера CGA


4.1. Текстовые режимы CGA

4.2. Видеопамять в графических режимах CGA

Видеоадаптер CGA построен на основе мкросхемы Motorolla 6845 или ее аналога. Эта микросхема содержит контроллер электронно-лучевой трубки (ЭЛТ). Контроллер ЭЛТ Motorolla 6845 устанавливает формат экрана, управляет курсором и световым пером, а также управляет цветовыми характеристиками изображения.

Адаптер CGA имеет 16К байт видеопамяти. Видеопамять периодически отображается на экране дисплея, формируя изображение. Процессор может непосредственно обращаться к видеопамяти, которая расположена в адресном пространстве процессора начиная с адреса B800:0000.

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

В зависимости от режима работы адаптера, видеопамять имеет различную структуру. Ниже рассмотрены текстовые и графические режимы видеоадаптера CGA.

4.1. Текстовые режимы CGA
В текстовых режимах (режимы 1, 2, 3, 4) на экране могут отображаться только текстовые символы, а также символы псевдографики. Символы псевдографики позволяют в текстовых режимах работы видеоадапте...
Байт атрибутов символа.
Рисунок 5.1 Байт атрибутов символа. При отображении символа на экране происходит преобразование его из формата ASCII в двумерный массив пикселов. Для этого преобразования используется таблица тран...
Знакогенератор
ЗнакогенераторУ видеоадаптеров MDA, CGA и Hercules, таблицы знакогенератора находятся в ПЗУ, которое расположено вне адресного пространства процессора. Программы не имеют возможности изменить или...
4.2. Видеопамять в графических режимах CGA
Распределение видеопамяти в графических режимах работы видеоадаптера CGA отличается от распределения видеопамяти в текстовых режимах. Это вызвано тем, что в графических режимах необходимо хранить...
Режимы 4 и 5
Режимы 4 и 5Это режимы низкого разрешения (320х200), используются четыре цвета. Поддерживаются видеоадаптерами CGA, EGA и VGA. Режим 5 является режимом с подавлением цвета. Тоесть в этом режиме вм...
Структура видеопамяти для режимов 4 и 5.
Рисунок 5.1 Структура видеопамяти для режимов 4 и 5. Если вы хотите выводить информацию на экран дисплея непосредственно через видеопамять, то необходимо уметь определять биты, которые управляют к...
Режим 6
Режим 6Режим 6 (640х200) является режимом наибольшего разрешения для видеоадаптера CGA. На рисунке 5.2 отображено соответствие видеопамяти и пикселов экрана. Как и в режимах 4 и 5, первая половина...
Структура видеопамяти в режиме 6.
Рисунок 5.2 Структура видеопамяти в режиме 6. При непосредственном доступе к видеопамяти вы можете воспользоваться следующими формулами: Если y четное число, то смещение байта = 50h*(y/2)+(x/8) Ес...
Организация видеопамяти адаптера Hercules
Организация видеопамяти адаптера HerculesДля полноты картины мы рассмотрим структуру видеоадаптера Hercules. В графических режимах видеоадаптер Hercules использует один бит на пиксел. Разрешающая...
Структура памяти видеоадаптера Hercules в графических режимах.
Рисунок 5.3 Структура памяти видеоадаптера Hercules в графических режимах. Формулы приведенные ниже позволяют определить смещение байта от начала станицы видеопамяти и номер бита в нем, управляюще...








Начало