Ассемблер и программирование для IBM PC



       

ГЛАВА 10. Экранные операции III: Цвет и графика - часть 3


Атрибут: BL R G B I R G B Номера битов: 7 6 5 4 3 2 1 0

Мигание и выделение яркостью относится к тексту. Ниже приведены некоторые типичные атрибуты:

Текст по фону Бит: 7 6 5 4 3 2 1 0 BL R G B I R G B Шест. Черный по черному 0 0 0 0 0 0 0 0 00 Синий по черному 0 0 0 0 0 0 0 1 01 Красный по синему 0 0 0 1 0 1 0 0 14 Голубой по зеленому 0 0 1 0 0 0 1 1 23 Светло-сиреневый по белому 0 1 1 1 1 1 0 1 7D Серый по зеленому, мигание 1 0 1 0 1 0 0 0 A8

Байт-атрибут используется аналагично показанному для черно-белого (BW) монитора. Тип монитора можно определить из программы с помощью команды INT 11H. Для BW монитора код 07 устанавливает нормальный атрибут. Для цветных мониторов мож но использовать любую из цветовых комбинаций. Цвет на экране сохраняется до тех пор, пока другая команда не изменит его. Для установки цвета можно использовать в команде INT 10H функции AH=06, AH=07 и AH=09. Например, для вывода пяти мигающих звездочек сетло-зеленым цветом на сиреневом фоне возможна следующая программа:

MOV AH,09 ;Функция вывода на экран MOV AL,'*' ;Выводимый символ MOV BH,00 ;Страница 0 MOV BL,0DAH ;Атрибут цвета MOV CX,05 ;Число повторений INT 10H ;Вызвать BIOS

ГРАФИЧЕСКИЙ РЕЖИМ ------------------------------------------------------------

Для генерации цветных изображений в графическом режиме используются минимальные точки растра - пиксели или пэлы (pixel). Цветной графический адаптер (CGA) имеет три степени разрешения:

1. Низкое разрешение (не поддерживается в ROM) обеспечива ет вывод 100 строк по 160 точек (т.е. четыре бита на точку). Каждая точка может иметь один из 16 стандартных цветов, как описано в предыдущем разделе "Цвета". Реализация данного режима включает прямую адресацию контролера Motorola 6845 CRT. Для этого используются два порта: шест.3D4 и 3D5.

2. Среднее разрешение для стандартной цветной графики обеспечивает 200 строк по 320 точек. Каждый байт в этом случае представляет четыре точки (т.е. два бита на точку).

Ассемблер для IBM PC. Глава 10 231




Содержание  Назад  Вперед