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] |