Введение в архитектуру персонального компьютера. Соппа И.В. - 48 стр.

UptoLike

Составители: 

СССССССС
01234567
7
0
СССССССС
01234567
7
0
СССССССС
01234567
7
0
7
0
СССССССС
01234567
Маскирования
70
Регистр разрешения
цветовой плоскости
С
6
Пиксел
Рис. 2.15. Схема определения цвета пикселя
Полученное из видеобуфера 4-х битное значение пикселя объединяется по логическому И
(маскируется) с содержимым младшей тетрады регистра разрешения цветовой плоскости, а
результирующий код является индексом для 16 регистров палитры. Дальнейший алгоритм
формирования цвета аналогичен формированию цвета для текстового режима работы адаптера
EGA.
В собственном режиме работы в данном адаптере не применяется чересстрочная
организация видеобуфера как в адаптере CGA. Вместо этого строки пикселей отображаются
линейно аналогично линейному отображению текста в текстовых режимах (см. п. 2.6).
Адаптеры MCGA и VGA имеют три графических режима работы, два из которых
напоминают собственные режимы адаптера CGA, но в случае построчной организации
видеобуфера линейно отображаются на экран. Для третьего из них каждый байт видеобуфера
соответствует одному пикселю на экране. В этом случае считываемый из видеобуфера байт
объединяется по Н с содержимым регистра маскирования, и результирующее значение выбирает
один из 256 регистров цвета ЦАП.
При двухцветном графическом режиме управление цветами пикселей осуществляется
следующим образом. Пиксели, значения которых равны 0, всегда отображаются через регистр
цвета 0 ЦАП. Пиксели с ненулевыми значениями выбирают только один определенный регистр
цвета ЦАП (обычно 07h). Цвет фона в данных адаптерах задается аналогично цвету пикселя с
помощью регистра цвета ЦАП. Таким образом, для цветов фона и переднего плана можно
установить любые два цвета из возможных 256К цветов.
В четырехцветном режиме 320200 байт описывает цвет четырех пикселей. В результате
два бита байта видеобуфера и два бита регистра выбора цвета (биты 5 и 4) образуют
четырехбитное значение индекса одного из первых 16 регистров ЦАП. Таким образом можно
выбрать любые четыре цвета из общей палитры 16 цветов. Для изменения палитры необходимо
модифицировать регистр выбора цвета.
Аналогичным образом осуществляется управление цветом пикселя в случае его байтового
представления в видеобуфере. Данный режим позволяет формировать 256-ти цветное изображение
320200 пикселей из палитры 256К цветов. В этом случае процедура BIOS программирует
регистры цвета ЦАП на следующие значения:
регистры 00h - 0Fh содержат значения цветов, совместимые с цветами адаптера
CGA;
регистры 10h - 1Fh содержат различные уровни серого с постепенно
увеличивающейся яркостью;
                 7                         0
                 С0 С1 С2 С3 С4 С5 С6 С7
                                                                  Регистр разрешения
             7                         0                          цветовой плоскости
                                                              7                        0
             С0 С1 С2 С3 С4 С5 С6 С7

         7                         0
         С0 С1 С2 С3 С4 С5 С6 С7

    7                          0
    С0 С1 С2 С3 С4 С5 С6 С7                    Маскирования



                                               Пиксел С 6


        Рис. 2.15. Схема определения цвета пикселя

       Полученное из видеобуфера 4-х битное значение пикселя объединяется по логическому И
(маскируется) с содержимым младшей тетрады регистра разрешения цветовой плоскости, а
результирующий код является индексом для 16 регистров палитры. Дальнейший алгоритм
формирования цвета аналогичен формированию цвета для текстового режима работы адаптера
EGA.
       В собственном режиме работы в данном адаптере не применяется чересстрочная
организация видеобуфера как в адаптере CGA. Вместо этого строки пикселей отображаются
линейно аналогично линейному отображению текста в текстовых режимах (см. п. 2.6).
       Адаптеры MCGA и VGA имеют три графических режима работы, два из которых
напоминают собственные режимы адаптера CGA, но в случае построчной организации
видеобуфера линейно отображаются на экран. Для третьего из них каждый байт видеобуфера
соответствует одному пикселю на экране. В этом случае считываемый из видеобуфера байт
объединяется по Н с содержимым регистра маскирования, и результирующее значение выбирает
один из 256 регистров цвета ЦАП.
       При двухцветном графическом режиме управление цветами пикселей осуществляется
следующим образом. Пиксели, значения которых равны 0, всегда отображаются через регистр
цвета 0 ЦАП. Пиксели с ненулевыми значениями выбирают только один определенный регистр
цвета ЦАП (обычно 07h). Цвет фона в данных адаптерах задается аналогично цвету пикселя с
помощью регистра цвета ЦАП. Таким образом, для цветов фона и переднего плана можно
установить любые два цвета из возможных 256К цветов.
       В четырехцветном режиме 320∗200 байт описывает цвет четырех пикселей. В результате
два бита байта видеобуфера и два бита регистра выбора цвета (биты 5 и 4) образуют
четырехбитное значение индекса одного из первых 16 регистров ЦАП. Таким образом можно
выбрать любые четыре цвета из общей палитры 16 цветов. Для изменения палитры необходимо
модифицировать регистр выбора цвета.

       Аналогичным образом осуществляется управление цветом пикселя в случае его байтового
представления в видеобуфере. Данный режим позволяет формировать 256-ти цветное изображение
320∗200 пикселей из палитры 256К цветов. В этом случае процедура BIOS программирует
регистры цвета ЦАП на следующие значения:
          • регистры 00h - 0Fh содержат значения цветов, совместимые с цветами адаптера
              CGA;
          • регистры 10h - 1Fh содержат различные уровни серого с постепенно
              увеличивающейся яркостью;