Subversion Repositories Kolibri OS

Rev

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

Rev 1172 Rev 1220
Line 54... Line 54...
54
;;
54
;;
55
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
55
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 56... Line 56...
56
 
56
 
Line 57... Line 57...
57
include 'macros.inc'
57
include 'macros.inc'
Line 58... Line 58...
58
 
58
 
Line 59... Line 59...
59
$Revision: 1172 $
59
$Revision: 1220 $
Line 77... Line 77...
77
os_code        equ  (os_code_l-gdts)
77
os_code        equ  (os_code_l-gdts)
78
graph_data     equ  (3+graph_data_l-gdts)
78
graph_data     equ  (3+graph_data_l-gdts)
79
tss0           equ  (tss0_l-gdts)
79
tss0           equ  (tss0_l-gdts)
80
app_code       equ  (3+app_code_l-gdts)
80
app_code       equ  (3+app_code_l-gdts)
81
app_data       equ  (3+app_data_l-gdts)
81
app_data       equ  (3+app_data_l-gdts)
-
 
82
app_tls        equ  (3+tls_data_l-gdts)
82
pci_code_sel   equ  (pci_code_32-gdts)
83
pci_code_sel   equ  (pci_code_32-gdts)
83
pci_data_sel   equ  (pci_data_32-gdts)
84
pci_data_sel   equ  (pci_data_32-gdts)
Line 84... Line 85...
84
 
85
 
Line 281... Line 282...
281
 
282
 
282
align 4
283
align 4
283
high_code:
284
high_code:
284
           mov ax,os_stack
285
           mov ax, os_stack
-
 
286
           mov bx, app_data
285
           mov bx,app_data
287
           mov cx, app_tls
286
           mov ss,ax
288
           mov ss, ax
Line 287... Line 289...
287
           add  esp, OS_BASE
289
           add esp, OS_BASE
288
 
290
 
289
           mov ds,bx
291
           mov ds, bx
290
           mov es,bx
292
           mov es, bx
Line 291... Line 293...
291
           mov fs,bx
293
           mov fs, cx
292
           mov gs,bx
294
           mov gs, bx
Line 709... Line 711...
709
        mov ebx, SLOT_BASE+256+APP_OBJ_OFFSET
711
        mov ebx, SLOT_BASE+256+APP_OBJ_OFFSET
710
        mov  dword [SLOT_BASE+256+APPDATA.fd_obj], ebx
712
        mov  dword [SLOT_BASE+256+APPDATA.fd_obj], ebx
711
        mov  dword [SLOT_BASE+256+APPDATA.bk_obj], ebx
713
        mov  dword [SLOT_BASE+256+APPDATA.bk_obj], ebx
Line 712... Line 714...
712
 
714
 
-
 
715
        mov  dword [SLOT_BASE+256+APPDATA.cur_dir], sysdir_path
Line 713... Line 716...
713
        mov  dword [SLOT_BASE+256+APPDATA.cur_dir], sysdir_path
716
        mov dword [SLOT_BASE+256+APPDATA.tls_base], eax
714
 
717
 
715
        ; task list
718
        ; task list
716
        mov  [CURRENT_TASK],dword 1
719
        mov  [CURRENT_TASK],dword 1
Line 1905... Line 1908...
1905
    ret
1908
    ret
Line 1906... Line 1909...
1906
 
1909
 
Line -... Line 1910...
-
 
1910
 
-
 
1911
sys_end:
-
 
1912
 
-
 
1913
     mov ecx, [current_slot]
-
 
1914
     mov eax, [ecx+APPDATA.tls_base]
-
 
1915
     test eax, eax
-
 
1916
     jz @F
-
 
1917
 
1907
 
1918
     stdcall user_free, eax
1908
sys_end:
1919
@@:
Line 1909... Line 1920...
1909
 
1920
 
1910
     mov   eax,[TASK_BASE]
1921
     mov   eax,[TASK_BASE]