Subversion Repositories Kolibri OS

Rev

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

Rev 1306 Rev 1310
Line 55... Line 55...
55
;;
55
;;
56
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
56
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 57... Line 57...
57
 
57
 
Line 58... Line 58...
58
include 'macros.inc'
58
include 'macros.inc'
Line 59... Line 59...
59
 
59
 
Line 60... Line 60...
60
$Revision: 1306 $
60
$Revision: 1310 $
Line 463... Line 463...
463
           mov eax, syscall_entry
463
           mov eax, syscall_entry
464
           mov ecx, MSR_AMD_STAR
464
           mov ecx, MSR_AMD_STAR
465
           wrmsr
465
           wrmsr
466
.noSYSCALL:
466
.noSYSCALL:
467
; -----------------------------------------
467
; -----------------------------------------
-
 
468
        stdcall alloc_page
-
 
469
        stdcall map_page, tss-0xF80, eax, PG_SW
-
 
470
        stdcall alloc_page
-
 
471
        inc     eax
-
 
472
        mov     [SLOT_BASE+256+APPDATA.io_map], eax
-
 
473
        stdcall map_page, tss+0x80, eax, PG_SW
-
 
474
        stdcall alloc_page
-
 
475
        inc     eax
-
 
476
        mov     dword [SLOT_BASE+256+APPDATA.io_map+4], eax
-
 
477
        stdcall map_page, tss+0x1080, eax, PG_SW
Line 468... Line 478...
468
 
478
 
Line 469... Line 479...
469
; LOAD IDT
479
; LOAD IDT
470
 
480
 
Line 712... Line 722...
712
        mov edi, [os_stack_seg]
722
        mov edi, [os_stack_seg]
713
        mov dword [SLOT_BASE+256+APPDATA.pl0_stack], edi
723
        mov dword [SLOT_BASE+256+APPDATA.pl0_stack], edi
714
        add edi, 0x2000-512
724
        add edi, 0x2000-512
715
        mov dword [SLOT_BASE+256+APPDATA.fpu_state], edi
725
        mov dword [SLOT_BASE+256+APPDATA.fpu_state], edi
716
        mov dword [SLOT_BASE+256+APPDATA.saved_esp0], edi ; just for case
726
        mov dword [SLOT_BASE+256+APPDATA.saved_esp0], edi ; just for case
717
        mov dword [SLOT_BASE+256+APPDATA.io_map],\
727
	; [SLOT_BASE+256+APPDATA.io_map] was set earlier
718
                  (tss._io_map_0-OS_BASE+PG_MAP)
-
 
719
        mov dword [SLOT_BASE+256+APPDATA.io_map+4],\
-
 
720
                  (tss._io_map_1-OS_BASE+PG_MAP)
-
 
Line 721... Line 728...
721
 
728
 
722
        mov esi, fpu_data
729
        mov esi, fpu_data
723
        mov ecx, 512/4
730
        mov ecx, 512/4
724
        cld
731
        cld
Line 827... Line 834...
827
        call    load_default_skin
834
        call    load_default_skin
Line 828... Line 835...
828
 
835
 
Line 829... Line 836...
829
;protect io permission map
836
;protect io permission map
830
 
837
 
831
           mov esi, [default_io_map]
838
           mov esi, [default_io_map]
832
           stdcall map_page,esi,(tss._io_map_0-OS_BASE), PG_MAP
839
           stdcall map_page,esi,[SLOT_BASE+256+APPDATA.io_map], PG_MAP
Line 833... Line 840...
833
           add esi, 0x1000
840
           add esi, 0x1000
834
           stdcall map_page,esi,(tss._io_map_1-OS_BASE), PG_MAP
841
           stdcall map_page,esi,[SLOT_BASE+256+APPDATA.io_map+4], PG_MAP
835
 
842
 
836
           stdcall map_page,tss._io_map_0,\
843
           stdcall map_page,tss._io_map_0,\
Line 837... Line 844...
837
                   (tss._io_map_0-OS_BASE), PG_MAP
844
                   [SLOT_BASE+256+APPDATA.io_map], PG_MAP
838
           stdcall map_page,tss._io_map_1,\
845
           stdcall map_page,tss._io_map_1,\
839
                   (tss._io_map_1-OS_BASE), PG_MAP
846
                   [SLOT_BASE+256+APPDATA.io_map+4], PG_MAP
840
 
847