Function 18/19/5 - emulation mouse button.

git-svn-id: svn://kolibrios.org@621 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Marat Zakiyanov (Mario79)
2007-09-05 21:30:16 +00:00
parent 324c641d1a
commit 73bd1e2963
3 changed files with 39 additions and 1 deletions

View File

@@ -980,6 +980,22 @@ dd 533
* edx = [ª®®à¤¨­ â  ¯® ®á¨ x]*65536 + [ª®®à¤¨­ â  ¯® ®á¨ y]
‚®§¢à é ¥¬®¥ §­ ç¥­¨¥:
* äã­ªæ¨ï ­¥ ¢®§¢à é ¥â §­ ç¥­¨ï
-------- <20>®¤¯®¤äã­ªæ¨ï 5 - í¬ã«ïæ¨ï ª­®¯®ª ¬ëè¨. --------
<EFBFBD> à ¬¥âàë:
* eax = 18 - ­®¬¥à ä㭪樨
* ebx = 19 - ­®¬¥à ¯®¤ä㭪樨
* ecx = 5 - ­®¬¥à ¯®¤¯®¤ä㭪樨
* edx = ¨­ä®à¬ æ¨ï ® í¬ã«¨à㥬ëå ª­®¯ª å ¬ëè¨:
* ¡¨â 0 ãáâ ­®¢«¥­ = «¥¢ ï ª­®¯ª  ­ ¦ â 
* ¡¨â 1 ãáâ ­®¢«¥­ = ¯à ¢ ï ª­®¯ª  ­ ¦ â 
* ¡¨â 2 ãáâ ­®¢«¥­ = á।­ïï ª­®¯ª  ­ ¦ â 
* ¡¨â 3 ãáâ ­®¢«¥­ = 4-ï ª­®¯ª  ­ ¦ â 
* ¡¨â 4 ãáâ ­®¢«¥­ = 5-ï ª­®¯ª  ­ ¦ â 
* ¯à®ç¨¥ ¡¨âë á¡à®è¥­ë
‚®§¢à é ¥¬®¥ §­ ç¥­¨¥:
* äã­ªæ¨ï ­¥ ¢®§¢à é ¥â §­ ç¥­¨ï
‡ ¬¥ç ­¨ï:
* <20>¥ª®¬¥­¤ã¥¬ ï ᪮à®áâì ¬ëè¨ (¢ ¯®¤¯®¤ä㭪樨 1) ®â 1 ¤® 9.
“áâ ­ ¢«¨¢ ¥¬ ï ¢¥«¨ç¨­  ­¥ ¯à®¢¥àï¥âáï ª®¤®¬ ï¤à , ¯®í⮬ã

View File

@@ -977,6 +977,22 @@ Parameters:
* edx = [coordinate on axis x]*65536 + [coordinate on axis y]
Returned value:
* function does not return value
-------- Subsubfunction 5 - emulation mouse button. --------
Parameters:
* eax = 18 - function number
* ebx = 19 - subfunction number
* ecx = 5 - subsubfunction number
* edx = information about the emulated mouse buttons:
* bit 0 is set = left button is pressed
* bit 1 is set = right button is pressed
* bit 2 is set = middle button is pressed
* bit 3 is set = 4th button is pressed
* bit 4 is set = 5th button is pressed
* other bits are cleared
Returned value:
* function does not return value
Remarks:
* It is recommended to set speed of the mouse (in subsubfunction 1)
from 1 up to 9. The installed value is not inspected by the kernel

View File

@@ -2271,11 +2271,17 @@ sysfn_mouse_acceleration: ; 18.19 = set/get mouse features
ret
.set_pointer_position:
cmp ebx,4 ; set mouse pointer position
jnz .end
jnz .set_mouse_button
mov [MOUSE_Y],cx ;y
ror ecx,16
mov [MOUSE_X],cx ;x
rol ecx,16
ret
.set_mouse_button:
cmp ebx,5 ; set mouse button features
jnz .end
mov [BTN_DOWN],cl
mov [mouse_active],1
.end:
ret