BarryServer : Git

All the code for all my projects
// BarryServer : Git / Nucleus / commit / 232d0f9e7dd31316a9b91cbdfec0174afce40c7e / include / nucleus

// Related

Nucleus

Barry ACPI + APIC 232d0f9 (3 years, 3 months ago)
diff --git a/include/nucleus/cpu.h b/include/nucleus/cpu.h
index 9192ea8..69ef379 100644
--- a/include/nucleus/cpu.h
+++ b/include/nucleus/cpu.h
@@ -6,7 +6,12 @@ struct InterruptFrame {
 	uint32_t eip, cs, eflags;
 };
 
-#define CPUID 0
-#define MAX_CPUS 1
+extern uintptr_t lapicPtr, ioapicPtr;
+#define LAPIC(off)  (*((uint32_t *) ((uint32_t)  lapicPtr + (off))))
+#define IOAPIC(off) (*((uint32_t *) ((uint32_t) ioapicPtr + (off))))
+
+extern uint8_t lapicNums[];
+#define CPUID lapicNums[(uint8_t) (LAPIC(0x20) >> 24)]
+#define MAX_CPUS 2
 
 #endif