From 1f71b9576db536af84155363e14fc49e92de2eef Mon Sep 17 00:00:00 2001 From: Brett Weiland Date: Sun, 29 Aug 2021 02:52:48 -0500 Subject: backup 8.29.21 --- src/bootloader/enter_kernel.asm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'src/bootloader/enter_kernel.asm') diff --git a/src/bootloader/enter_kernel.asm b/src/bootloader/enter_kernel.asm index ef2cd71..bdf0a71 100644 --- a/src/bootloader/enter_kernel.asm +++ b/src/bootloader/enter_kernel.asm @@ -1,4 +1,4 @@ -[extern main] +[extern kernel_init] [extern _kernel_stack_loc] [extern _kernel_page_size] enter_longmode: @@ -68,13 +68,14 @@ mov cr4, eax ;If it's not and we enable it, it will cause pagefaults on read mov eax, 0x80000001 cpuid -and edx, 1 << 20 -shr edx, 9 +mov ebx, edx +and ebx, 1 << 20 +shr ebx, 9 mov ecx, 0xc0000080 rdmsr -or eax, 1 << 8 | 1 << 11 -or eax, edx +or eax, 1 << 8 +or eax, ebx wrmsr mov eax, cr0 @@ -90,7 +91,7 @@ enter_kernel: bits 64 mov rbp, 0 mov rsp, _kernel_stack_loc -mov rax, QWORD main +mov rax, QWORD kernel_init ;push QWORD 0 jmp rax jmp $ -- cgit v1.2.3