Subversion Repositories Kolibri OS

Rev

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

Rev 7830 Rev 8052
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 7830 $
8
$Revision: 8052 $
9
 
9
 
10
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
10
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11
;;                                                            ;;
11
;;                                                            ;;
12
;;                     SYSENTER ENTRY                         ;;
12
;;                     SYSENTER ENTRY                         ;;
Line 13... Line 13...
13
;;                                                            ;;
13
;;                                                            ;;
14
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
14
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
15
 
15
 
16
align 32
16
align 32
17
sysenter_entry:
17
sysenter_entry:
18
        ; Настраиваем стек
18
        ; Setting up the stack
19
        mov     esp, [ss:tss._esp0]
19
        mov     esp, [ss:tss._esp0]
20
        sti
20
        sti
Line 31... Line 31...
31
        call    dword [servetable2 + eax * 4]
31
        call    dword [servetable2 + eax * 4]
Line 32... Line 32...
32
 
32
 
33
        call    unprotect_from_terminate
33
        call    unprotect_from_terminate
34
        popad
34
        popad
35
        ;------------------
35
        ;------------------
36
        xchg    ecx, [ss:esp]           ; в вершин стека - app ecx, ecx - app esp + 4
36
        xchg    ecx, [ss:esp]           ; in the stack top - app ecx, ecx - app esp + 4
37
        sub     ecx, 4
37
        sub     ecx, 4
38
        xchg    edx, [ecx]              ; edx - return point, & save original edx
38
        xchg    edx, [ecx]              ; edx - return point, & save original edx
39
        push    edx
39
        push    edx
40
        mov     edx, [ss:esp + 4]
40
        mov     edx, [ss:esp + 4]