Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- data segment
- data ends
- code segment
- start:
- mov ax, 0 ;Функция 00h предназначена для выяснения, загружен ли в память
- int 33h ;драйвер мыши. Если эта функция возвращает AX = 0, то драйвер
- test ax, ax;отсутствует. Если драйвер загружен, то AX = 0FFFFh , а в
- jz exit; регистре BX - число кнопок мыши
- mov ax, 0Ch ; реакция на события от мыши
- push cs
- pop es
- mov cx, 000001b ; [mid_off, mid_on, right_off, right_on, left_off, left_on, movement]
- mov dx, offset mouse
- int 33h
- mov ax, 1 ; Функция 01h включает изображение курсора мыши на экране.
- int 33h
- main_loop:
- jmp main_loop
- mouse:
- mov ax, 3
- int 33h
- ;на выходе в bx - состояние кнопок 0,1,2 биты - левая, правая, средняя кнопка соответственно
- ;cx - x координата
- ;dx - y координата
- cmp dx, 100
- jg show_cursor
- jnge hide_cursor
- show_cursor:
- mov ax, 1
- int 33h
- jmp mouse
- hide_cursor:
- mov ax, 2
- int 33h
- exit:
- retf
- code ends
- end start
Advertisement
Add Comment
Please, Sign In to add comment