121,9 → 121,8 |
cld |
rep movsd |
@@: |
mov ecx, [CURRENT_TASK] |
shl ecx,8 |
add ecx, SLOT_BASE+APP_OBJ_OFFSET |
mov ecx, [current_slot] |
add ecx, APP_OBJ_OFFSET |
|
pushfd |
cli |
224,12 → 223,11 |
proc get_event_ex stdcall, p_ev:dword, timeout:dword |
|
.wait: |
mov edx,[CURRENT_TASK] |
shl edx,8 |
mov edx,[current_slot] |
; cmp [SLOT_BASE+edx+APPDATA.ev_count], 0 |
; je .switch |
|
add edx, SLOT_BASE+APP_EV_OFFSET |
add edx, APP_EV_OFFSET |
|
mov eax, [edx+APPOBJ.fd] |
cmp eax, edx |
307,9 → 305,7 |
test [eax+EVENT.state], MANUAL_RESET |
jnz .done |
|
mov edx,[CURRENT_TASK] |
shl edx,8 |
add edx, SLOT_BASE |
mov edx,[current_slot] |
|
pushfd |
cli ;remove event from events |
578,21 → 574,20 |
|
no_eventoccur3: |
|
|
;mov edi,[TASK_BASE] ; mouse event |
test [edi+TASKDATA.event_mask],dword 00100000b |
jz no_mouse_event |
|
mov eax,[CURRENT_TASK] |
shl eax,8 |
test [eax+SLOT_BASE+APPDATA.event_mask],dword 00100000b |
jz no_mouse_event |
and [eax+SLOT_BASE+APPDATA.event_mask],dword 0xffffffff-00100000b |
and [eax+SLOT_BASE+APPDATA.event_mask],dword (not 00100000b) |
popad |
mov eax,6 |
ret |
no_mouse_event: |
|
|
;mov edi,[TASK_BASE] ; DESKTOP BACKGROUND REDRAW |
test [edi+TASKDATA.event_mask],dword 16 |
jz no_eventoccur5 |
616,7 → 611,6 |
ret |
no_ipc: |
|
|
;mov edi,[TASK_BASE] ; STACK |
test [edi+TASKDATA.event_mask],dword 10000000b |
jz no_stack_event |