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
   56   57   58   59   60   61   62   63   64   65   66