Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование видеоадаптеров EGA, VGA и SVGA.doc
Скачиваний:
138
Добавлен:
01.05.2014
Размер:
4.51 Mб
Скачать

Установить/определить длину строки развертки

Функция 4F06h содержит две подфункции, выбираемые регистром BH. Первая подфункция BL = 0 позволяет установить логическую длину строки развертки больше чем физически может поместиться на экране. Такая возможность полезна для организации плавной свертки экрана.

Вторая подфункция BL = 1 определяет длину строки развертки.

На входе:

AH

4Fh

AL

06h

BL

00h установить длину строки развертки

CX

Требуемая длинна строки развертки в пикселах

BL

01h определить длину строки развертки

На выходе:

AL

4Fh

AH

Результат: 0, в случае успешного завершения, 1 в случае ошибки

BX

Количество байт на строку развертки

CX

Количество пикселов в строке развертки

DX

Максимальное количество строк развертки

w Если запрашивается длинна строки развертки, которая не поддерживается, тогда устанавливается первое возможное значение, большее запрашиваемого

w Линия развертки может быть шире видимой области экрана

w Данная функция доступна в текстовых режимах, при условии, что значения длинны строки развертки и количества строк развертки умножаются на соответствующие значения размера символов

Установить/определить видимую область экрана

Функция 4F07h содержит две подфункции, выбираемые регистром BL. Первая подфункция BL = 0 позволяет установить логические координаты пиксела, отображаемого в левом верхнем углу экрана. Установка новых логических координат позволяет отобразить на экране другую область видеобуфера. В частности, вы можете с помощью функции 4F06h выбрать логическую длину линии развертки больше физической, а затем плавно сворачивать изображение на экране.

Вторая подфункция BL = 1 определить текущие координаты первого пиксела на экране.

На входе:

AH

4Fh

AL

07h

BH

Не используется

BL

00h Установить начало видимой области монитора

CX

Первый (слева) видимый символ в строке развертки

DX

Первая видимая строка развертки

BL

01h Определить начало видимой области монитора

BH

00h

CX

Первый видимый символ в строке развертки

DX

Первая видимая строка развертки

На выходе:

AL

4Fh

AH

Результат: 0, в случае успешного завершения, 1 в случае ошибки

w Данная функция доступна в текстовых режимах, при условии, что значения длинны строки развертки и количества строк развертки умножаются на соответствующие значения размера символов

Установить/определить размер регистров цап

Видеоадаптеры VGA и SVGA содержат три ЦАП, каждый из которых определяет цвет одной из трех компонент цвета пиксела - красной, зеленой и синей.

ЦАП стандартного видеоадаптера VGA отводит по шесть бит на определение каждой из этих компонент. Видеоадаптеры SVGA, имеющие переключаемый ЦАП, поддерживают переменное количество бит на каждую компоненту цвета. Чтобы определить обладает ли видеоадаптер переключаемым ЦАП следует воспользоваться функцией 4F00h.

Функция 4F08h содержит две подфункции, выбираемые регистром BL. Первая подфункция BL = 0 позволяет установить количество бит используемых на каждый чистый цвет. Вторая подфункция BL = 1 позволяет определить количество бит используемых на каждый чистый цвет.

На входе:

AH

4Fh

AL

08h

BL

00h

BH

Количество бит на каждый чистый цвет

BL

01h

На выходе:

AL

4Fh

AH

Результат: 0, в случае успешного завершения, 1 в случае ошибки

BH

Количество бит на каждый чистый цвет