aboutsummaryrefslogtreecommitdiff
path: root/src/kernel/boot.asm
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/boot.asm')
-rw-r--r--src/kernel/boot.asm12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/kernel/boot.asm b/src/kernel/boot.asm
index 6b95f4c..85d4254 100644
--- a/src/kernel/boot.asm
+++ b/src/kernel/boot.asm
@@ -29,7 +29,11 @@ section .text
global jump_userspace
jump_userspace:
cli
- mov ebx, dword [esp + 4]
+ push ebp
+ mov ebp, esp
+ mov edx, dword [esp + 0xC]
+ mov esp, edx
+ push 0xABCDEF
mov ax, 0x23
mov ds, ax
@@ -48,10 +52,12 @@ section .text
push eax
push 0x1B
- push ebx
- mov ebp, ebx
+ push dword [ebp + 8]
iret
+ pop ebp
+ ret
+
section .end_section
global ASM_KERNEL_END
ASM_KERNEL_END: