Assembler - язык неограниченных возможностей


Работа с SVGA-режимами - часть 5


/p>


INT 10h АН = 4FH, AL = 02 — Установить режим

Ввод: AX=4F02h
ВХ = номер режима:

    биты 0 – 6 — собственно номер режима

    бит 7 — видеопамять не очищается при установке режима, если все следующие биты — нули

    бит 8 — стандартный VBE SVGA-режим

    бит 9 — нестандартный SVGA-режим

    биты 10 – 12 — зарезервированы

    бит 13 — режим использует аппаратное ускорение

    бит 14 — режим использует LFB

    бит 15 — видеопамять не очищается при установке режима

Кроме того, специальный номер режима 81FFh соответствует доступу ко всей видеопамяти и может использоваться для сохранения ее содержимого.

Вывод: AL = 4Fh, если функция поддерживается
АН = 00, если режим установлен
АН = 01 или 02, если произошла ошибка


INT 10h АН = 4Fh, AL = 03 — Узнать номер текущего видеорежима

Ввод: АХ = 4F03h
Вывод: AL = 4Fh, если функция поддерживается
ВХ = номер режима


INT 10h АН = 4Fh AL = 05 — Перемещение окна (переключение банка видеопамяти)

Ввод: АХ = 4F03h
ВН = 00 — установить окно
ВН = 01 — считать окно
BL = 00 — окно А
BL = 01 — окно В
DX = адрес окна в видеопамяти в единицах гранулярности (номер банка), если ВН = 0
Вывод: AL = 4Fh, если функция поддерживается
DX = адрес окна в единицах гранулярности (номер банка), если ВН = 1
АН = 03, если функция была вызвана в режиме, использующем LFB


Всегда предпочтительнее переключать банки прямым дальним вызовом процедуры, адрес которой возвращается подфункцией 01h в блоке информации о видеорежиме. Все параметры передаются в процедуру точно так же, как и в подфункцию 05h, но содержимое регистров АХ и DX по возвращении не определено.


INT 10h АН = 4Fh AL = 07 — Установка начала изображения

Ввод: АХ = 4F07h
ВН = 00
BL = 00 — считать начало изображения
BL = 80h — установить начало изображения (в VBE 2.0 автоматически выполняется при следующем обратном ходе луча)
СХ = первый изображаемый пиксель в строке (для BL = 80h)
DX = первая изображаемая строка (для BL = 80h)
Вывод: AL = 4Fh, если функция поддерживается
АН = 01, если произошла ошибка
АН = 00, если функция выполнилась успешно
ВН = 00 (для BL = 00)
СХ = первый изображаемый пиксель в строке (для BL = 00)
DX = первая изображаемая строка (для BL = 00)
<


Начало  Назад  Вперед