forked from KolibriOS/kolibrios
shutdown code now correctly handles >128 Kb file kernel.mnt
git-svn-id: svn://kolibrios.org@681 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
d59aaca0fa
commit
a3ee7f3740
@ -236,15 +236,21 @@ restart_kernel_4000:
|
||||
pop es
|
||||
mov cx, 0x8000
|
||||
push cx
|
||||
mov ds, cx
|
||||
push 0x7000
|
||||
pop ds
|
||||
xor si, si
|
||||
xor di, di
|
||||
rep movsw
|
||||
push 0x9000
|
||||
pop ds
|
||||
pop cx
|
||||
mov ds, cx
|
||||
push 0x2000
|
||||
pop es
|
||||
pop cx
|
||||
rep movsw
|
||||
push 0x9000
|
||||
pop ds
|
||||
push 0x3000
|
||||
pop es
|
||||
mov cx, 0xE000/2
|
||||
rep movsw
|
||||
|
||||
wbinvd ; write and invalidate cache
|
||||
|
@ -5203,12 +5203,12 @@ system_shutdown: ; shut down the system
|
||||
yes_shutdown_param:
|
||||
cli
|
||||
|
||||
mov eax, kernel_file ; load kernel.mnt to 0x8000:0
|
||||
mov eax, kernel_file ; load kernel.mnt to 0x7000:0
|
||||
push 12
|
||||
pop esi
|
||||
xor ebx,ebx
|
||||
or ecx,-1
|
||||
mov edx, OS_BASE+0x80000
|
||||
mov edx, OS_BASE+0x70000
|
||||
call fileread
|
||||
|
||||
mov esi, restart_kernel_4000+OS_BASE+0x10000 ; move kernel re-starter to 0x4000:0
|
||||
|
Loading…
Reference in New Issue
Block a user