Графические устройства

         

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



Таблица 7.3. Расположение кодов цвета в памяти и в регистре



Название цвета

Байты памяти

Байты памяти

0

1

2

3

3

2 1 0

Черный

00

00

00

00

00

00 00 00

Синий

FF

00

00

00

00

00 00 FF

Зеленый

00

FF

00

00

00

bD FF 00

Красный

00

00

FF

00

00

FF 00 00

Белый

FF

FF

FF 00 00 FF FF FF

Как уже говорилось, после установки видеорежима его основные характеристики можно прочитать в массиве info. В нем, начиная со смешения IF. расположены четыре пары байтов, содержащие размер кода и адрес его младшего бита для красного, зеленого, синего цветов и резервного пространства. Обычно в них находятся следующие коды: 08, 10h, 08, 08, 08, 00, 08, 18h, что соответствует табл. 7.2.

После установки режимов True Color задача обязательно должна проверять байт массива info со смещением I9h, содержащий размер точки в битах. Если этот байт содержит код 20h, то видеокарта поддерживает 32-разрядный код точки. Не все видеокарты устанавливают код такого размера, одно из исключений описано в следующем разделе.

Возможность работы в режимах True Color зависит от объема памяти, расположенной на видеокарте. При объеме видеопамяти 1 Мбайт эти режимы не поддерживаются. При объеме видеопамяти 2 Мбайт памяти доступны видеорежимы H2h и ush, имеющие разрешения 640x480 и 800x600 точек. При объеме видеопамяти 4 Мбайт к ним добавляется режим ush с разрешением 1024x768 точек. Напоминаем, что перечень режимов приведен в табл. 1.1.



Содержание раздела