Subversion Repositories Kolibri OS

Rev

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

Rev 465 Rev 473
Line 1... Line 1...
1
$Revision: 465 $
1
$Revision: 473 $
2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
3
;;                                                              ;;
3
;;                                                              ;;
4
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
4
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
5
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa      ;;
5
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa      ;;
6
;; Distributed under terms of the GNU General Public License    ;;
6
;; Distributed under terms of the GNU General Public License    ;;
Line 573... Line 573...
573
     ret
573
     ret
Line 574... Line 574...
574
 
574
 
Line 575... Line 575...
575
no_eventoccur3:
575
no_eventoccur3:
-
 
576
 
-
 
577
     ;mov   edi,[TASK_BASE]              ; mouse event
-
 
578
     mov eax, [CURRENT_TASK]
576
 
579
     shl eax, 8
577
     ;mov   edi,[TASK_BASE]              ; mouse event
580
     add eax, SLOT_BASE
Line 578... Line -...
578
     test  [edi+TASKDATA.event_mask],dword 00100000b
-
 
579
     jz    no_mouse_event
-
 
580
 
581
     test  [edi+TASKDATA.event_mask],dword 00100000b
581
     mov eax, [CURRENT_TASK]
582
     jz    no_mouse_event
582
     shl eax, 8
583
 
583
     test  [eax+SLOT_BASE+APPDATA.event_mask],dword 00100000b
584
     test  [eax+APPDATA.event_mask],dword 00100000b
584
     jz    no_mouse_event
585
     jz    no_mouse_event
585
     and   [eax+SLOT_BASE+APPDATA.event_mask],dword (not 00100000b)
586
     and   [eax+APPDATA.event_mask],dword (not 00100000b)
586
     popad
587
     popad
Line 587... Line 588...
587
     mov   eax,6
588
     mov   eax,6
588
     ret
589
     ret
-
 
590
no_mouse_event:
-
 
591
 
-
 
592
     ;mov   edi,[TASK_BASE]              ; DESKTOP BACKGROUND REDRAW
-
 
593
     test  [edi+TASKDATA.event_mask], 16
589
no_mouse_event:
594
     jz    no_eventoccur5
590
 
595
;     cmp   [REDRAW_BACKGROUND],byte 2
591
     ;mov   edi,[TASK_BASE]              ; DESKTOP BACKGROUND REDRAW
-
 
592
     test  [edi+TASKDATA.event_mask],dword 16
596
;     jnz   no_eventoccur5
593
     jz    no_eventoccur5
597
     test  [eax+APPDATA.event_mask], 16
594
     cmp   [REDRAW_BACKGROUND],byte 2
598
     jz    no_eventoccur5
595
     jnz   no_eventoccur5
599
     and   [eax+APPDATA.event_mask], not 16
Line 596... Line 600...
596
     popad
600
     popad
597
     mov   eax,5
601
     mov   eax,5
598
     ret
602
     ret
599
no_eventoccur5:
-
 
600
 
-
 
601
     ;mov   edi,[TASK_BASE]              ; IPC
603
no_eventoccur5:
602
     test  [edi+TASKDATA.event_mask],dword 01000000b
604
 
603
     jz    no_ipc
605
     ;mov   edi,[TASK_BASE]              ; IPC
604
     mov eax, [CURRENT_TASK]
606
     test  [edi+TASKDATA.event_mask],dword 01000000b
605
     shl eax, 8
607
     jz    no_ipc
606
     test  [eax+SLOT_BASE+APPDATA.event_mask],dword 01000000b
608
     test  [eax+APPDATA.event_mask],dword 01000000b
607
     jz    no_ipc
609
     jz    no_ipc
Line 608... Line 610...
608
     and   [eax+SLOT_BASE+APPDATA.event_mask],dword 0xffffffff-01000000b
610
     and   [eax+APPDATA.event_mask],dword 0xffffffff-01000000b
609
     popad
611
     popad
610
     mov   eax,7
612
     mov   eax,7
611
     ret
-
 
612
no_ipc:
-
 
613
 
613
     ret
614
     ;mov   edi,[TASK_BASE]              ; STACK
614
no_ipc:
615
     test  [edi+TASKDATA.event_mask],dword 10000000b
615
 
616
     jz    no_stack_event
616
     ;mov   edi,[TASK_BASE]              ; STACK
617
     mov eax, [CURRENT_TASK]
617
     test  [edi+TASKDATA.event_mask],dword 10000000b
618
     shl eax, 8
618
     jz    no_stack_event
619
     test  [eax+SLOT_BASE+APPDATA.event_mask],dword 10000000b
619
     test  [eax+APPDATA.event_mask],dword 10000000b
Line 620... Line 620...
620
     jz    no_stack_event
620
     jz    no_stack_event
621
     and   [eax+SLOT_BASE+APPDATA.event_mask],dword 0xffffffff-10000000b
621
     and   [eax+APPDATA.event_mask],dword 0xffffffff-10000000b
622
     popad
-
 
623
     mov   eax,8
-
 
624
     ret
622
     popad
625
no_stack_event:
623
     mov   eax,8
626
 
624
     ret
627
     test  byte [edi+TASKDATA.event_mask+1], 1		; DEBUG
625
no_stack_event:
628
     jz    .test_IRQ
626
 
629
     mov eax, [CURRENT_TASK]
627
     test  byte [edi+TASKDATA.event_mask+1], 1		; DEBUG
Line 630... Line 628...
630
     shl eax, 8
628
     jz    .test_IRQ