Subversion Repositories Kolibri OS

Rev

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

Rev 928 Rev 1066
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: 928 $
8
$Revision: 1066 $
9
 
9
 
10
 
10
 
Line 210... Line 210...
210
 
210
 
211
           mov dword [app_page_tabs+edi*4], 2
211
           mov dword [app_page_tabs+edi*4], 2
212
           mov ebx, edi
212
           mov ebx, edi
213
           shl ebx, 12
213
           shl ebx, 12
214
           invlpg [ebx]
214
           invlpg [ebx]
215
           call @core_free@4
215
           call @frame_free@4
216
.next:
216
.next:
217
           add edi, 1
217
           add edi, 1
218
           cmp edi, esi
218
           cmp edi, esi
Line 219... Line 219...
219
           jb @B
219
           jb @B
220
 
220
 
-
 
221
.update_size:
-
 
222
           mov     ebx, [new_size]
221
.update_size:
223
           mov     edx, [current_slot]
Line 222... Line 224...
222
           mov     ebx, [new_size]
224
 
223
           call    update_mem_size
225
           call    update_mem_size
224
 
226
 
Line 420... Line 422...
420
           jmp .fail
422
           jmp .fail
Line 421... Line 423...
421
 
423
 
422
align 4
424
align 4
Line -... Line 425...
-
 
425
.kernel_heap:
-
 
426
 
423
.kernel_heap:
427
  ;         xchg bx, bx
424
 
428
 
Line 425... Line 429...
425
           shr ebx, 22
429
           shr ebx, 22
426
           mov edx, [master_tab + ebx*4]
430
           mov edx, [master_tab + ebx*4]
Line -... Line 431...
-
 
431
 
-
 
432
           test edx, PG_MAP
-
 
433
           jz .check_ptab      ;òàáëèöà ñòðàíèö íå ñîçäàíà
-
 
434
 
-
 
435
           mov ecx, [.err_addr]
427
 
436
           mov edx, [.err_code]
Line 428... Line 437...
428
           test edx, PG_MAP
437
 
429
           jz .check_ptab      ;òàáëèöà ñòðàíèö íå ñîçäàíà
438
           call @heap_fault@8
430
 
439
 
431
           jmp .exit
440
           jmp .exit
Line 432... Line -...
432
 
-
 
433
.check_ptab:
441
 
434
           mov edx, [_sys_pdbr + ebx*4]
442
.check_ptab:
435
           test edx, PG_MAP
443
           mov edx, [_sys_pdbr + ebx*4]
Line 436... Line 444...
436
           jnz @F
444
           test edx, PG_MAP
437
 
445
           jnz @F
Line 544... Line 552...
544
.fail:
552
.fail:
545
           mov esp, ebp
553
           mov esp, ebp
546
           popad
554
           popad
547
           add esp, 4
555
           add esp, 4
Line 548... Line 556...
548
 
556
 
Line 549... Line 557...
549
;           iretd
557
           iretd
Line 550... Line 558...
550
 
558
 
551
           save_ring3_context     ;debugger support
559
           save_ring3_context     ;debugger support
Line 1092... Line 1100...
1092
           mov [buf_ptr], eax
1100
           mov [buf_ptr], eax
1093
           jz .fail
1101
           jz .fail
Line 1094... Line 1102...
1094
 
1102
 
Line 1095... Line -...
1095
           push ebx
-
 
1096
 
1103
           push ebx
1097
           xor ecx, ecx
1104
 
-
 
1105
           mov ecx, [size]
1098
           mov edx, [size]
1106
           shr ecx, 12
1099
           shr edx, 12
-
 
1100
           mov ebx, edx
-
 
1101
           dec edx
-
 
Line 1102... Line 1107...
1102
           bsr ecx, edx
1107
 
1103
           inc ecx
1108
           mov ebx, ecx
1104
 
1109
 
Line 1105... Line 1110...
1105
           call @core_alloc@4
1110
           call @frame_alloc@4
1106
           test eax, eax
1111
           test eax, eax