Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 9898 → Rev 9899

/kernel/trunk/init.inc
55,10 → 55,10
cmp byte [edi + e820entry.type], 1
jne .unusable
 
test eax, 0xFFF
test eax, PAGE_SIZE-1
jz @f
neg eax
and eax, 0xFFF
and eax, PAGE_SIZE-1
add [edi + e820entry.addr.lo], eax
adc [edi + e820entry.addr.hi], 0
sub [edi + e820entry.size.lo], eax
65,7 → 65,7
sbb [edi + e820entry.size.hi], 0
jc .unusable
@@:
and [edi + e820entry.size.lo], not 0xFFF
and [edi + e820entry.size.lo], -PAGE_SIZE
jz .unusable
; ignore memory after 4 GiB
cmp [edi + e820entry.addr.hi], 0
76,7 → 76,7
add eax, [edi + e820entry.size.lo]
jnc @f
.overflow:
mov eax, 0xFFFFF000
mov eax, -PAGE_SIZE
@@:
cmp edx, eax
jae @f
103,20 → 103,20
shr edx, 3
mov [pg_data.pagemap_size - OS_BASE], edx
 
add edx, (sys_pgmap - OS_BASE)+4095
and edx, not 4095
add edx, (sys_pgmap - OS_BASE)+PAGE_SIZE-1
and edx, -PAGE_SIZE
mov [tmp_page_tabs], edx
 
mov edx, esi
and edx, -1024
cmp edx, (OS_BASE/4096)
cmp edx, (OS_BASE/PAGE_SIZE)
jbe @F
mov edx, (OS_BASE/4096)
mov edx, (OS_BASE/PAGE_SIZE)
jmp .set
@@:
cmp edx, (HEAP_BASE - OS_BASE + HEAP_MIN_SIZE)/4096
cmp edx, (HEAP_BASE - OS_BASE + HEAP_MIN_SIZE)/PAGE_SIZE
jae .set
mov edx, (HEAP_BASE - OS_BASE + HEAP_MIN_SIZE)/4096
mov edx, (HEAP_BASE - OS_BASE + HEAP_MIN_SIZE)/PAGE_SIZE
.set:
mov [pg_data.kernel_pages - OS_BASE], edx
shr edx, 10
124,11 → 124,11
 
xor eax, eax
mov edi, sys_proc - OS_BASE
mov ecx, 8192/4
mov ecx, 2*PAGE_SIZE/4
cld
rep stosd
 
mov edx, (sys_proc - OS_BASE + PROC.pdt_0) + 0x800; (OS_BASE shr 20)
mov edx, (sys_proc - OS_BASE + PROC.pdt_0) + (OS_BASE shr 20)
bt [cpu_caps - OS_BASE], CAPS_PSE
jnc .no_PSE
 
151,7 → 151,7
mov edi, [tmp_page_tabs]
@@: ;
stosd
add eax, 0x1000
add eax, PAGE_SIZE
dec ecx
jnz @B
 
168,7 → 168,7
 
.map_kernel_tabs:
stosd
add eax, 0x1000
add eax, PAGE_SIZE
dec ecx
jnz .map_kernel_tabs