forked from KolibriOS/kolibrios
Synergy client: support for right, middle, 4th and 5th mouse buttons
git-svn-id: svn://kolibrios.org@4380 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
74e3156491
commit
cf59000c24
@ -67,6 +67,8 @@ start:
|
|||||||
push str0
|
push str0
|
||||||
call [con_write_asciiz]
|
call [con_write_asciiz]
|
||||||
|
|
||||||
|
restart:
|
||||||
|
|
||||||
invoke ini.get_str, path, str_remote, str_ip, buffer_ptr, 16, 0
|
invoke ini.get_str, path, str_remote, str_ip, buffer_ptr, 16, 0
|
||||||
test eax, eax
|
test eax, eax
|
||||||
jnz error
|
jnz error
|
||||||
@ -106,12 +108,13 @@ start:
|
|||||||
mov [sockaddr1.ip], eax
|
mov [sockaddr1.ip], eax
|
||||||
|
|
||||||
mcall connect, [socketnum], sockaddr1, 18
|
mcall connect, [socketnum], sockaddr1, 18
|
||||||
|
test eax, eax
|
||||||
|
jnz error
|
||||||
|
|
||||||
push str7
|
push str7
|
||||||
call [con_write_asciiz]
|
call [con_write_asciiz]
|
||||||
|
|
||||||
mcall 40, EVM_STACK
|
mcall 40, EVM_STACK
|
||||||
mcall 10
|
|
||||||
|
|
||||||
login:
|
login:
|
||||||
call wait_for_data
|
call wait_for_data
|
||||||
@ -262,14 +265,20 @@ mainloop:
|
|||||||
jmp .next
|
jmp .next
|
||||||
|
|
||||||
.dmdn:
|
.dmdn:
|
||||||
movzx eax, byte [edi + 8]
|
movzx eax, byte[edi + 8]
|
||||||
|
cmp eax, 5
|
||||||
|
ja .next
|
||||||
|
movzx eax, [mousecodes + eax]
|
||||||
or [mousestate], eax
|
or [mousestate], eax
|
||||||
mcall 18, 19, 5, [mousestate]
|
mcall 18, 19, 5, [mousestate]
|
||||||
mcall send, [socketnum], cnop, cnop.length, 0 ; reply with NOP
|
mcall send, [socketnum], cnop, cnop.length, 0 ; reply with NOP
|
||||||
jmp .next
|
jmp .next
|
||||||
|
|
||||||
.dmup:
|
.dmup:
|
||||||
movzx eax, byte [edi + 8]
|
movzx eax, byte[edi + 8]
|
||||||
|
cmp eax, 5
|
||||||
|
ja .next
|
||||||
|
movzx eax, [mousecodes + eax]
|
||||||
not eax
|
not eax
|
||||||
and [mousestate], eax
|
and [mousestate], eax
|
||||||
mcall 18, 19, 5, [mousestate]
|
mcall 18, 19, 5, [mousestate]
|
||||||
@ -335,7 +344,11 @@ closed:
|
|||||||
push str_cls
|
push str_cls
|
||||||
call [con_write_asciiz]
|
call [con_write_asciiz]
|
||||||
|
|
||||||
jmp wait_for_key
|
mcall close, [socketnum]
|
||||||
|
|
||||||
|
mcall 5, 200
|
||||||
|
|
||||||
|
jmp restart
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -377,6 +390,7 @@ cnop:
|
|||||||
db 'CNOP'
|
db 'CNOP'
|
||||||
.length = $ - cnop
|
.length = $ - cnop
|
||||||
|
|
||||||
|
mousecodes db 0, 1b, 100b, 10b, 1000b, 10000b
|
||||||
mousestate dd 0
|
mousestate dd 0
|
||||||
|
|
||||||
|
|
||||||
@ -422,5 +436,5 @@ align 4
|
|||||||
i_end:
|
i_end:
|
||||||
socketnum dd ?
|
socketnum dd ?
|
||||||
buffer_ptr rb BUFFERSIZE
|
buffer_ptr rb BUFFERSIZE
|
||||||
path rb 4096 ; stack
|
path rb 4096
|
||||||
mem:
|
mem:
|
Loading…
Reference in New Issue
Block a user