From fcfefa9a5e4fb9ce9c1aa8fdf36c62977c5ce8d6 Mon Sep 17 00:00:00 2001 From: greg Date: Sat, 14 Nov 2015 23:13:14 -0800 Subject: [PATCH] Fixed interrupts Lol u need iretq in 64-bit mode. Works now! --- rust_experiments/src/long_mode_init.asm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rust_experiments/src/long_mode_init.asm b/rust_experiments/src/long_mode_init.asm index 6ce1a5d..03c4a50 100644 --- a/rust_experiments/src/long_mode_init.asm +++ b/rust_experiments/src/long_mode_init.asm @@ -23,7 +23,7 @@ long_mode_start: spin_loop_64: - mov rcx, 0xffff_ffff + mov rcx, 0xffff_fff .loop: dec rcx cmp rcx, 0 @@ -76,7 +76,7 @@ call_interrupt: sample_handler: mov word [0x8b000], 0x4f72 call spin_loop_64 - iret + iretq setup_IDT: lidt [idt64.pointer]