Subversion Repositories Kolibri OS

Rev

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

Rev 848 Rev 854
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
;; 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: 848 $
8
$Revision: 854 $
Line 9... Line 9...
9
 
9
 
Line 381... Line 381...
381
	   lea eax, [eax+ebx+2]    ;all requested memory
381
	   lea eax, [eax+ebx+2]    ;all requested memory
382
     end if
382
     end if
383
      ;     cmp eax, [pg_data.pages_free]
383
      ;     cmp eax, [pg_data.pages_free]
384
      ;     ja .fail
384
      ;     ja .fail
Line 385... Line 385...
385
 
385
 
386
	   call alloc_page
386
           call _alloc_page
387
	   test eax, eax
387
	   test eax, eax
388
	   jz .fail
388
	   jz .fail
Line 389... Line 389...
389
	   mov [dir_addr], eax
389
	   mov [dir_addr], eax
Line 406... Line 406...
406
	   call set_cr3
406
	   call set_cr3
Line 407... Line 407...
407
 
407
 
408
	   mov edx, [app_tabs]
408
	   mov edx, [app_tabs]
409
           xor edi, edi
409
           xor edi, edi
410
@@:
410
@@:
411
	   call alloc_page
411
           call _alloc_page
412
	   test eax, eax
412
	   test eax, eax
Line 413... Line 413...
413
	   jz .fail
413
	   jz .fail
414
 
414
 
Line 448... Line 448...
448
	   mov eax, 0x02
448
	   mov eax, 0x02
449
           rep stosd
449
           rep stosd
450
else
450
else
Line 451... Line 451...
451
 
451
 
452
.alloc:
452
.alloc:
453
	   call alloc_page
453
           call _alloc_page
454
	   test eax, eax
454
	   test eax, eax
Line 455... Line 455...
455
	   jz .fail
455
	   jz .fail
456
 
456
 
Line 942... Line 942...
942
 
942
 
943
	   locals
943
	   locals
944
	     pl0_stack dd ?
944
	     pl0_stack dd ?
Line 945... Line 945...
945
	   endl
945
	   endl
946
 
946
 
947
           stdcall alloc_pages, (RING0_STACK_SIZE+512) shr 12
947
           stdcall _alloc_pages, (RING0_STACK_SIZE+512) shr 12
Line 948... Line 948...
948
           add eax, OS_BASE
948
           add eax, OS_BASE
Line 986... Line 986...
986
	   mov eax, [pl0_stack]
986
	   mov eax, [pl0_stack]
987
	   mov [SLOT_BASE+APPDATA.pl0_stack+ebx],eax
987
	   mov [SLOT_BASE+APPDATA.pl0_stack+ebx],eax
988
	   add eax, RING0_STACK_SIZE
988
	   add eax, RING0_STACK_SIZE
989
	   mov [SLOT_BASE+APPDATA.saved_esp0+ebx], eax
989
	   mov [SLOT_BASE+APPDATA.saved_esp0+ebx], eax
Line 990... Line 990...
990
 
990
 
991
           call alloc_page
991
           call _alloc_page
992
           add eax, OS_BASE
992
           add eax, OS_BASE
993
	   mov esi,[current_slot]
993
	   mov esi,[current_slot]
994
	   mov esi,[esi+APPDATA.cur_dir]
994
	   mov esi,[esi+APPDATA.cur_dir]
995
	   mov ecx,0x1000/4
995
	   mov ecx,0x1000/4