КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ. Программная поддержка манипулятора «мышь»
Программная поддержка манипулятора «мышь» Аппаратно манипулятор «мышь» весьма прост, но его использование требует загрузки специальной программы – так называемого драйвера «мыши».Он, как и любая программа-драйвер, зависит от типа обслуживаемой аппаратуры и ее особенностей: 1) от типа адаптера, к которому подключен манипулятор; 2) от режима, в котором работает манипулятор; 3) от формата слов и частоты передачи информации при подключении к адаптеру последовательной связи. Основными частями драйвера «мыши» являются: 1) секция инсталляции драйвера; 2) обработчик аппаратных прерываний от адаптера последовательной связи. В ПК IВМ РС ХТ адаптерам СОМ1 и СОМ2 соответствуют прерывания 0Bh и 0Сh, в IBMPCAT – 0Сh и 0Bh; 3) обработчик программного прерывания интерфейса прикладной программы с манипулятором «мышь» (прерывание ЗЗh); 4) обработчик программного прерывания 10h управления экраном. Краткое описание функций прерывания ЗЗh Функция инициализации ( АХ = 0000h ) При вызове: AX =0000h Возврат: АХ – состояние оборудования: АХ = 0000h – отсутствует драйвер «мыши» или манипулятор; АХ = FFFFh – «мышь» готова к работе; ВХ – количество кнопок манипулятора: ВХ = 0000h – не две кнопки; ВХ = 0002h – две кнопки (Microsoftmode); ВХ = 000Зh – три кнопки (Mousemode).
Выбор типа курсора в текстовом режиме (АХ =0000h) При вызове: АХ =0000Аh ВХ – выбор типа курсора: ВХ = 00 – программируемый курсор; ВХ = 01 – «жесткий» курсор; СХ – АND – маска для программируемого курсора или номер верхней скэн-линии для «жесткого» курсора; ВХ – ХOR – маска для программируемого курсора или номер нижней скэн-линии для «жесткого» курсора. Возврат: нет.
Установка курсора в графическом режиме (АХ =0009h) При вызове: АХ = 0009h. ВХ – номер столбца «горячего пятна» курсора; СХ – номер строки «горячего пятна» курсора; ЕS: ВХ – указатель на 32 слова масок: 16 слов АND-маски и 16 слов ХOR-маски. Возврат: нет.
Установка границ перемещения курсора (АХ =0007h, АХ =0008h) При вызове: АХ =0007h – установка вертикальных границ перемещения курсора «мыши». АХ =0008h – установка горизонтальных границ перемещения курсора «мыши». СХ – минимальная граница перемещения курсора «мыши»; ВХ – максимальная граница перемещения курсора «мыши». Возврат: нет.
Функции включения/выключения курсора (АХ =0001h, АХ =0002h) При вызове: АХ =0001h – включить курсор «мыши». АХ =0002h – выключить курсор «мыши». Возврат: нет.
Чтение позиции курсора и состояния кнопок «мыши» (АХ =0003h) При вызове: АХ =000Зh. Возврат: ВH – байт состояния кнопок манипулятора: бит 0 – состояние левой кнопки; бит 1 – состояние правой кнопки; бит 2 – состояние средней кнопки (для Моusemode); СХ – горизонтальная координата курсора «мыши»; ВХ – вертикальная координата курсора «мыши».
Установка курсора «мыши» в новоеместо экрана (АХ =0004h) При вызове: АХ – 0004h – установка вертикальных границ перемещения курсора «мыши». СХ – горизонтальная координата курсора «мыши»; DХ – вертикальная координата курсора «мыши». Возврат: нет.
Основные функции интерфейса прикладной программы с манипулятором «мышь»
|