Программирование видеоадаптеров CGA, EGA и VGA


Использование светового пера - функция 04h


Функция 04h позволяет определить подключено ли световое перо или нет. Если подключено, можно определить его координаты. Функция позволяет узнать позицию светового пера и в текстовых, и в графических координатах.

Заметим, что световое перо EGA программно не полностью совместимо с CGA, в результате чего программы поддерживающие возможность использования светового пера для видеоадаптера CGA будут работать неправильно с видеоадаптером EGA. Видеоадаптер VGA не имеет светового пера.

На входе: AH = 04h.

На выходе: AH = 0 - световое перо не подключено (все остальные регистры не содержат полезной информации);

AH = 1 - световое перо подключено;

CH = координаты вертикальной позиции курсора в пикселах (графические режимы с низким разрешением);

CX = координаты вертикальной позиции курсора в пикселах (графические режимы с высоким разрешением);

BX = координаты горизонтальной позиции курсора в пикселах;

DH = координаты вертикальной позиции курсора в номерах строк;

DL = координаты горизонтальной позиции курсора в номерах колонок.

Приведем пример использования этой функции:

mov ah,4 int 10h ; определяем положение светового пера

cmp ah,0 ; переходим на метку not_pen, если jz not_pen ; перо не подключено

mov light_pen_col,dl ; сохраняем координаты светового пера mov light_pen_row,dh




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