Page 61 - 4875
P. 61
Функція дозволяє програмувати власний драйвер (обробник
подій), що пов’язаний з переміщенням курсору та натисканням кнопок.
Адрес підготовленої програми-обробника передається через ES:DX.
При чому така програма-обробник повинна бути оформлена у вигляді
процедури, що завершується програмою дальнього повернення retf. В
момент отримання драйвером керування в регістрах процесора
знаходяться наступні значення:
На виході: АХ = маска виклику така сама, як при
виклику функції 0Сh
ВХ = стан кнопок маніпулятора:
“0” – ліва кнопка
“1” – права кнопка
“2” – середня кнопка
СX = горизонтальна координата курсору
маніпулятора
DX = вертикальна координата курсору
маніпулятора
SI = відносне переміщення курсору по
горизонталі (в mickey)
DI = відносне переміщення курсору по
вертикалі (в mickey)
DS = сегмент даних драйвера
маніпулятора “мишка”
В процесі роботи обробника (власного) не обов’язково
зберігати і поновлювати вміст регістру DS, але необхідно відключати
драйвер викликавши повторно функцію 0Сh і записати в СХ нульові
значення.
13 Зміна драйвера подій
На вході:АХ = 14h
СX = <маска виклику>
7Fh – при будь-якій події
00h – процедура відключена
ES:DX = адреса драйвера, що
підключений
На виході: СX = маска попереднього драйвера подій
60