Subversion Repositories Kolibri OS

Rev

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

Rev 2455 Rev 3504
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;;
4
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa      ;;
4
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa      ;;
5
;; Distributed under terms of the GNU General Public License    ;;
5
;; Distributed under terms of the GNU General Public License    ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 2455 $
8
$Revision: 3504 $
9
 
9
 
10
 
10
 
Line 27... Line 27...
27
        add     [next_usage_update], 100
27
        add     [next_usage_update], 100
28
        call    updatecputimes
28
        call    updatecputimes
29
  .nocounter:
29
  .nocounter:
30
        xor     ecx, ecx        ; send End Of Interrupt signal
30
        xor     ecx, ecx        ; send End Of Interrupt signal
31
        call    irq_eoi
31
        call    irq_eoi
32
        btr     dword[DONT_SWITCH], 0
32
;        btr     dword[DONT_SWITCH], 0
33
        jc      .return
33
;        jc      .return
34
        call    find_next_task
34
        call    find_next_task
35
        jz      .return  ; if there is only one running process
35
        jz      .return  ; if there is only one running process
36
        call    do_change_task
36
        call    do_change_task
37
  .return:
37
  .return:
38
        popad
38
        popad
Line 59... Line 59...
59
; \end{Mario79}
59
; \end{Mario79}
60
end if
60
end if
61
        call    find_next_task
61
        call    find_next_task
62
        jz      .return  ; the same task -> skip switch
62
        jz      .return  ; the same task -> skip switch
63
  @@:
63
  @@:
64
        mov     byte[DONT_SWITCH], 1
64
;        mov     byte[DONT_SWITCH], 1
65
        call    do_change_task
65
        call    do_change_task
66
  .return:
66
  .return:
67
        popad
67
        popad
68
        popfd
68
        popfd
69
        ret
69
        ret