Subversion Repositories Kolibri OS

Rev

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

Rev 1055 Rev 1220
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2007. 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: 1055 $
8
$Revision: 1220 $
9
 
9
 
10
 
10
 
Line 172... Line 172...
172
        mov     ecx, APPDATA.dir_table
172
        mov     ecx, APPDATA.dir_table
173
        mov     eax, [ebx+ecx]      ;offset>0x7F
173
        mov     eax, [ebx+ecx]      ;offset>0x7F
174
        cmp     eax, [esi+ecx]      ;offset>0x7F
174
        cmp     eax, [esi+ecx]      ;offset>0x7F
175
        je      @f
175
        je      @f
176
        mov     cr3, eax
176
        mov     cr3, eax
-
 
177
@@:
177
  @@: ; set tss.esp0
178
; set tss.esp0
-
 
179
 
178
        Mov     [tss._esp0],eax,[ebx+APPDATA.saved_esp0]
180
        Mov     [tss._esp0],eax,[ebx+APPDATA.saved_esp0]
-
 
181
 
-
 
182
        mov edx, [ebx+APPDATA.tls_base]
-
 
183
        cmp edx, [esi+APPDATA.tls_base]
-
 
184
        je @f
-
 
185
 
-
 
186
        mov     [tls_data_l+2],dx
-
 
187
        shr     edx,16
-
 
188
        mov     [tls_data_l+4],dl
-
 
189
        mov     [tls_data_l+7],dh
-
 
190
 
-
 
191
        mov dx, app_tls
-
 
192
        mov fs, dx
-
 
193
@:
179
      ; set gs selector unconditionally
194
; set gs selector unconditionally
180
        Mov     gs,ax,graph_data
195
        Mov     gs,ax,graph_data
181
      ; set CR0.TS
196
      ; set CR0.TS
182
        cmp     bh, byte[fpu_owner] ;bh == incoming task (new)
197
        cmp     bh, byte[fpu_owner] ;bh == incoming task (new)
183
        clts                        ;clear a task switch flag
198
        clts                        ;clear a task switch flag