diff --git a/old/memory_map.asm b/x86/memory_map.asm
similarity index 100%
rename from old/memory_map.asm
rename to x86/memory_map.asm
diff --git a/x86/stage2.asm b/x86/stage2.asm
index 17eb0c63fde0ecf310a6d9681f5a0d529083c2fd..769d358011090bdc0b7667ab529b2056437f4144 100644
--- a/x86/stage2.asm
+++ b/x86/stage2.asm
@@ -7,6 +7,10 @@ stage2.entry:
     or al, 2
     out 0x92, al
 
+    ; load memory map
+    ;TODO: rewrite this in Rust
+    call memory_map
+
     mov edi, [args.stage3_base]
     mov ecx, (stage3.end - stage3)
     mov [args.stage3_size], ecx
@@ -106,8 +110,9 @@ load_extent:
 
 %include "descriptor_flags.inc"
 %include "gdt_entry.inc"
-%include "unreal.asm"
+%include "memory_map.asm"
 %include "thunk.asm"
+%include "unreal.asm"
 
 USE32
 protected_mode: