diff --git a/src/kernel/Makefile b/src/kernel/Makefile
index 60a95ab..0a95915 100644
--- a/src/kernel/Makefile
+++ b/src/kernel/Makefile
@@ -14,7 +14,8 @@
 			scan_codes.o \
 			kheap.o \
 			alloc.o \
-			vfs.o
+			vfs.o \
+			multiboot.o
 
 JAYROOT = ../../
 CFLAGS = -nostdlib -nostdinc -fno-builtin -fno-stack-protector -ffreestanding \
diff --git a/src/kernel/main.c b/src/kernel/main.c
index 9485def..5c04768 100644
--- a/src/kernel/main.c
+++ b/src/kernel/main.c
@@ -5,8 +5,9 @@
 #include "paging.h"
 #include "timer.h"
 #include "vga.h"
+#include "multiboot.h"
 
-int kmain(void *mboot)
+int kmain(struct multiboot *mboot)
 {
 	init_paging();
 	init_vga();
@@ -49,6 +50,17 @@
 	*four = 4;
 	kprintf("Allocated four = %d (%x)\n", *four, four);
 
+	// Load initrd
+	struct multiboot mb = make_multiboot_physical(mboot);
+
+	kassert(mb.mods_count, "No multiboot modules loaded!");
+	kprintf("mboot->mods_addr = %d (0x%x)\n", mb.mods_addr, mb.mods_addr);
+	uint *initrd_loc = mb.mods_addr[0],
+		*initrd_end = mboot->mods_addr[1];
+
+	kprintf("initrd is at 0x%x to 0x%x\n", initrd_loc, initrd_end);
+
+
 	asm volatile("sti");
 
 	while (true)
diff --git a/src/kernel/multiboot.c b/src/kernel/multiboot.c
new file mode 100644
index 0000000..13e1f98
--- /dev/null
+++ b/src/kernel/multiboot.c
@@ -0,0 +1,25 @@
+#include "multiboot.h"
+#include "io.h"
+#include "log.h"
+
+#define TO_VIRT(val, t) val = (t)((size_t)val + 0xc0000000u)
+
+// old should be a VIRTUAL address
+struct multiboot make_multiboot_physical(struct multiboot *old)
+{
+	struct multiboot mb;
+	memcpy(&mb, old, sizeof(mb));
+
+	// Make modules physical
+	TO_VIRT(mb.mods_addr, uint **);
+	TO_VIRT(mb.cmdline, char *);
+
+	kprintf("mb.mods_addr = %d, 0x%x\n", mb.mods_addr, mb.mods_addr);
+	kassert((size_t)mb.mods_addr > 0xc0000000, "mb.mods_addr PHYSICAL");
+	for (int i = 0; i < mb.mods_count + 1; i++)
+	{
+		TO_VIRT(mb.mods_addr[i], uint *);
+	}
+
+	return mb;
+}
diff --git a/src/kernel/multiboot.h b/src/kernel/multiboot.h
new file mode 100644
index 0000000..3aaa0d0
--- /dev/null
+++ b/src/kernel/multiboot.h
@@ -0,0 +1,33 @@
+#pragma once
+
+#include "kint.h"
+
+struct multiboot
+{
+	uint flags;
+	uint mem_lower;
+	uint mem_upper;
+	uint boot_device;
+	char *cmdline;
+	uint mods_count;
+	uint **mods_addr;
+	uint num;
+	uint size;
+	uint addr;
+	uint shndx;
+	uint mmap_length;
+	uint mmap_addr;
+	uint drives_length;
+	uint drives_addr;
+	uint config_table;
+	uint boot_loader_name;
+	uint apm_table;
+	uint vbe_control_info;
+	uint vbe_mode_info;
+	uint vbe_mode;
+	uint vbe_interface_seg;
+	uint vbe_interface_off;
+	uint vbe_interface_len;
+};
+
+struct multiboot make_multiboot_physical(struct multiboot *old);
