Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 819 → Rev 750

/kernel/trunk/core/memory.inc
166,9 → 166,7
or edx, [flags]
@@:
mov [page_tabs+eax*4], edx
; push eax
; invlpg [ebx]
; pop eax
invlpg [ebx]
inc eax
add ebx, edi
add edx, edi
186,7 → 184,7
 
; param
; eax= page base + page flags
; ebx= linear address
; ebx= liear address
; ecx= count
 
align 4
204,9 → 202,7
shr ebx, 12
@@:
mov [page_tabs+ebx*4], eax
; push eax
; invlpg [edi]
; pop eax
invlpg [edi]
add edi, edx
add eax, edx
inc ebx
267,33 → 263,7
popad
ret
 
; param
; eax= base
; ecx= count
 
align 4
unmap_pages:
 
push edi
 
mov edi, eax
mov edx, eax
 
shr edi, 10
add edi, page_tabs
 
xor eax, eax
@@:
stosd
invlpg [edx]
add edx, 0x1000
loop @b
 
pop edi
ret
 
 
align 4
proc map_page_table stdcall, lin_addr:dword, phis_addr:dword
push ebx
mov ebx, [lin_addr]
1116,27 → 1086,6
ret
 
align 4
proc load_pe_driver stdcall, file:dword
 
stdcall load_PE, [file]
test eax, eax
jz .fail
 
mov esi, eax
stdcall eax, DRV_ENTRY
test eax, eax
jz .fail
 
mov [eax+SRV.entry], esi
ret
 
.fail:
xor eax, eax
ret
endp
 
 
align 4
proc init_mtrr
 
cmp [BOOT_VAR+0x901c],byte 2
1210,6 → 1159,8
ret
endp
 
 
 
align 4
proc stall stdcall, delay:dword
push ecx
1277,6 → 1228,8
@@:
mov [page_tabs+edi], eax
mov [page_tabs+edi+edx], eax
invlpg [ebx]
invlpg [ebx+esi]
add eax, 0x1000
add ebx, 0x1000
add edi, 4
1295,4 → 1248,14
ret
endp
 
if 0
push eax
push edx
mov edx, 0x400 ;bochs
mov al,0xff ;bochs
out dx, al ;bochs
pop edx
pop eax
end if