#include "console.h"
 #include <io.h>
 #include <smram.h>
+#include <multiboot.h>
 
 #define INFO_SIGNATURE 0x5754454E
 
 extern char _binary_realmode_bin_start[];
 extern int _binary_realmode_bin_size;
 
-struct mb_info
-{
-       unsigned long flags;
-       unsigned long mem_lower, mem_upper;
-       unsigned long boot_dev;
-       char *cmdline;
-       unsigned long mod_cnt;
-       struct mod_info *mods;
-};
 
-struct mod_info
-{
-       void *mod_start;
-       void *mod_end;
-       char *mod_string;
-       void *reserved;
-};
 
 struct info_section
 {
        show_cursor();
        puts("NetWatch loader\n");
        
-       if (magic != 0x2BADB002)
+       if (magic != MULTIBOOT_LOADER_MAGIC)
                panic("Bootloader was not multiboot compliant; cannot continue.");
        
        for (i = 0; i < mbinfo->mod_cnt; i++)
 
--- /dev/null
+#ifndef __MULTIBOOT_H
+#define __MULTIBOOT_H
+
+#define MULTIBOOT_LOADER_MAGIC 0x2BADB002
+
+struct mb_info
+{
+       unsigned long flags;
+       unsigned long mem_lower, mem_upper;
+       unsigned long boot_dev;
+       char *cmdline;
+       unsigned long mod_cnt;
+       struct mod_info *mods;
+};
+
+struct mod_info
+{
+       void *mod_start;
+       void *mod_end;
+       char *mod_string;
+       void *reserved;
+};
+
+#endif