aboutsummaryrefslogtreecommitdiffstats
path: root/src/boot/boot.stage2.pm.asm
diff options
context:
space:
mode:
authorkotorifan <kotorifan05@gmail.com>2026-01-31 17:13:17 +0100
committerkotorifan <kotorifan05@gmail.com>2026-02-04 09:01:10 +0100
commit35f3e16135b371e11d540a8b6bd5395cb40b2c96 (patch)
tree60b8a3361b71bfd47f32d402ceeba5be351f8336 /src/boot/boot.stage2.pm.asm
parente5c28a46a731a79d02266aa690a90a8f809d0f70 (diff)
downloadkotori-os-35f3e16135b371e11d540a8b6bd5395cb40b2c96.tar.gz
Whatever...
Diffstat (limited to 'src/boot/boot.stage2.pm.asm')
-rw-r--r--src/boot/boot.stage2.pm.asm20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/boot/boot.stage2.pm.asm b/src/boot/boot.stage2.pm.asm
index 77f5f61..8897be6 100644
--- a/src/boot/boot.stage2.pm.asm
+++ b/src/boot/boot.stage2.pm.asm
@@ -4,9 +4,25 @@
[bits 16]
%include "boot.stage2.gdt32.asm"
-_
+_enable_pm:
cli
lgdt [GDT32_ptr]
-
;; Enable Protected Mode
+ mov eax, cr0
+ or eax, 1
+ mov cr0, eax
+
+ jmp CODE_SEG32:_protected_mode
+
+[bits 32]
+_protected_mode:
+ mov ax, DATA_SEG32
+ mov ds, ax
+ mov ss, ax
+ mov es, ax
+ mov fs, ax
+ mov gs, ax
+
+ ret
+