Subversion Repositories Kolibri OS

Rev

Rev 227 | Rev 254 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 227 Rev 230
Line 122... Line 122...
122
endp
122
endp
Line 123... Line 123...
123
 
123
 
124
align 4
124
align 4
Line 125... Line -...
125
proc get_event_ex stdcall, p_ev:dword, timeout:dword
-
 
126
 
-
 
127
;     push eax
-
 
128
;     push edx
-
 
129
;     mov edx, 0x400   ;bocsh
-
 
130
;     mov al,0xff      ;bocsh
-
 
131
;     out dx, al       ;bocsh
-
 
132
;     pop edx
-
 
133
;     pop eax
125
proc get_event_ex stdcall, p_ev:dword, timeout:dword
134
 
126
 
135
.wait:
127
.wait:
136
           mov ebx,[CURRENT_TASK]
128
           mov ebx,[CURRENT_TASK]
137
           shl ebx,8
129
           shl ebx,8
Line 138... Line 130...
138
           cmp [PROC_BASE+ebx+APPDATA.ev_count], 0
130
           cmp [PROC_BASE+ebx+APPDATA.ev_count], 0
139
           je .switch
131
           je .switch
140
 
132
 
141
           mov esi, [PROC_BASE+ebx+APPDATA.ev_first]
133
           mov esi, [PROC_BASE+ebx+APPDATA.ev_first]
-
 
134
           mov edx, [esi+EVENT.next]
-
 
135
           mov [PROC_BASE+ebx+APPDATA.ev_first], edx
-
 
136
           test edx, edx
142
           mov edx, [esi+EVENT.next]
137
           jz @F
143
           mov [PROC_BASE+ebx+APPDATA.ev_first], edx
138
           mov [edx+EVENT.prev], 0
144
           test edx, edx
139
@@:
145
           jnz @F
140
           jnz @F
146
           mov [PROC_BASE+ebx+APPDATA.ev_last], edx
-
 
147
           and dword [PROC_BASE+ebx+APPDATA.event_mask], not EVENT_EXTENDED
141
           mov [PROC_BASE+ebx+APPDATA.ev_last], edx
Line 148... Line 142...
148
@@:
142
           and dword [PROC_BASE+ebx+APPDATA.event_mask], not EVENT_EXTENDED
149
           mov [edx+EVENT.prev], 0
143
@@:
150
           dec [PROC_BASE+ebx+APPDATA.ev_count]
144
           dec [PROC_BASE+ebx+APPDATA.ev_count]