Fix paging faults when switching/creating tasks
diff --git a/src/kernel/task_api.s b/src/kernel/task_api.s
index 686ddaa..1678969 100644
--- a/src/kernel/task_api.s
+++ b/src/kernel/task_api.s
@@ -13,13 +13,15 @@
 	ret
 
 	[global _switch_to_task]
+	;; _switch_to_task(uint page_directory, uint eip, uint ebp, uint esp)
 _switch_to_task:				; (page_directory, eip, ebp, esp)
 	add esp, 4					; We don't care about the return address
-	pop eax 					; Instruction pointer
-	pop ebp 					; Frame pointer
-	pop ebx 					; Stack pointer
-	pop ecx 					; Page directory
 
+	pop ecx 					; Page directory
+	pop eax 					; eip
+	pop ebp
+	pop ebx						; esp
+	
 	mov esp, ebx 				; Reset old stack
 
 	mov cr3, ecx 				; Set page directory