←предыдущая следующая→
1 2
ВТОРОЙ СЕМЕСТР
ЛЕКЦИЯ N 9
РАБОТА ВИДЕОКОНТРОЛЛЕРОВ EGA И VGA
В ГРАФИЧЕСКИХ РЕЖИМАХ
Графические режимы контроллеров EGA, VGA и SVGA можно разде-
лить на 2 основные группы: режимы с 16 цветами и режимы с 256
цветами. Эти две группы сильно отличаются друг от друга по орга-
низации видеопамяти.
я2Видеорежимы с 16 цветами
Контроллер EGA работает в режимах с разрешением 640х200 и
640х350 точек, контроллер VGA имеет дополнительный режим 640х480
точек, а контроллеры SVGA часто могут также реализовывать режимы
800х600 и 1024х768 точек. К сожалению, видеопамять в этих режимах
имеет очень неудобную и морально устаревшую организацию, что
очень сильно замедляет вывод графики. В настоящее время эти
видеорежимы используются только для создания простых статических
изображений (чертежей и диаграмм).
В режимах с 16 цветами память разделена на 4 видеоплоскости:
по одной на каждый из основных цветов и одна плоскость служит для
кодирования яркости. Байт данных в видеоплоскости кодирует инфор-
мацию для восьми расположенных рядом по горизонтали точек (пиксе-
лов).
Упрощенная схема прохождения данных через графические конт-
роллеры EGA и VGA в графических режимах с 16 отображаемыми цвета-
ми (цепи установки/сброса не показаны):
.
- 2 -
Битовая
ЪДДДДДї маска
ЪДДДДДДДДДДДДДДДД>і і Ъї ЪДДДДДДДДДї
і Ъї і АЛУ ГДДД>іі іПлоскостьі
іЪД>іГДДДДДДДДВДД>і і іі і 3 і
іі АЩЗащелка і АДДДДДЩ іГДДДДДД>і і
іі і іі і і
іі АДДДДДДДДДДДДД>іі і і
іі АЩ і і
СдвигающийіАДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ і
регистр і ЪДДДДДї і і
ЪДї ГДДДДДДДДДДДДДДДД>і і Ъї ЪБДДДДДДДДїі
і і і Ъї і АЛУ ГДДД>іі іПлоскостьГЩ
Байты і і іЪД>іГДДДДДДДДВДД>і і іі і 2 і
данных от і і іі АЩЗащелка і АДДДДДЩ іГДДДДД>і і
процессора і і іі і іі і і
НННННННННН>і ГДДґі АДДДДДДДДДДДДД>іі і і
і і іі АЩ і і
і і іАДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ і
і і і ЪДДДДДї і і
АДЩ ГДДДДДДДДДДДДДДДД>і і Ъї ЪБДДДДДДДДїі
і Ъї і АЛУ ГДДД>іі іПлоскостьГЩ
іЪД>іГДДДДДДДДВДД>і і іі і 1 і
іі АЩЗащелка і АДДДДДЩ іГДДДД>і і
іі і іі і і
іі АДДДДДДДДДДДДД>іі і і
іі АЩ і і
іАДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ і
і ЪДДДДДї і і
АДДДДДДДДДДДДДДДД>і і Ъї ЪБДДДДДДДДїі
Ъї і АЛУ ГДДД>іі іПлоскостьГЩ
ЪД>іГДДДДДДДДВДД>і і іі і 0 і
і АЩЗащелка і АДДДДДЩ іГДДД>і і
і і іі і і
і АДДДДДДДДДДДДД>іі і і
і АЩ і і
АДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ і
і і
АДДДДДДДДДЩ
я2Сдвигающий регистря0 служит в основном в качестве буфера для
хранения байта данных, поступившего от процессора. Операция сдви-
га данных используется крайне редко, так как значительно удобнее
выполнять ее в процессоре.
я2Регистры-защелкия0 служат для временного хранения старого со-
держимого 4-х байтов с одинаковыми адресами из 4-х видеоплоскос-
тей: часто необходимо изменять только некоторые из 8 точек, опи-
- 3 -
сываемых этими байтами данных, а остальная информация должна ос-
таваться неизменной. Чтобы в защелках сохранилось старое значение
данных, перед операцией записи в видеопамять должна быть выполне-
на операция чтения из видеопамяти по тому же адресу.
Для определения того, какие точки должны быть изменены, а
какие - сохранены, используется я2регистр битовой маския0. Бит ре-
гистра битовой маски определяет, будет ли записана в соответству-
ющий бит видеопамяти информация из АЛУ или регистра-защелки:
ЪДДДДДДДДї ЪДДДДДДДДДї
і Бит из і і Бит из і
і АЛУ і і защелки і
АДДДДВДДДЩ АДДДДВДДДДЩ
і і
ЪДДДДДДДДДДї і 1 0 і
і Бит из і АДДДДДДД ДДДДДДЩ
і регистра ГДДДДДДДДДДДДДД>\
і битовой і і
і маски і і
АДДДДДДДДДДЩ і
V
Видеопамять
я2Арифметико-логическое устройство я0 позволяет выполнять опера-
ции И (AND), ИЛИ (OR) и ИСКЛЮЧАЮЩЕЕ ИЛИ (XOR) над содержимым ре-
гистра-защелки и поступившим от процессора байтом. Это прозволяло
создавать примитивные анимационные эффекты, однако в настоящее
время такие приемы практически не применяются.
Недостатком графических 16-цветных режимов является необхо-
димость интенсивной работы с большим числом рагистров при выводе
в видеопамять текстов и графики. На одну операцию вывода в видео-
память приходится одна операция чтения из видеопамяти и одна-две
операции записи в регистры, что замедляет работу с видеопамятью в
десятки раз (из-за конструктивных особенностей контроллеров EGA и
VGA обращение к регистру выполняется в несколько раз медленнее,
чем обращение к видеопамяти).
я2Рассмотрим наиболее часто используемые регистры:
я2"Первый регистр входного состояния" я0 (Input Status Register
One) расположен по адресу 3DAh. Бит 3 в этом регистре устанавли-
вается в 1 в течение обратного хода луча по кадру. При выполнении
различных видеоэффектов типа прокрутки изображения или перезаг-
←предыдущая следующая→
1 2
|
|