summaryrefslogtreecommitdiffhomepage
path: root/src/loader/inc/mbr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/loader/inc/mbr.h')
-rw-r--r--src/loader/inc/mbr.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/loader/inc/mbr.h b/src/loader/inc/mbr.h
new file mode 100644
index 0000000..a9befe5
--- /dev/null
+++ b/src/loader/inc/mbr.h
@@ -0,0 +1,28 @@
+// MIT License, Copyright (c) 2021 Marvin Borner
+
+#ifndef MBR_H
+#define MBR_H
+
+#include <def.h>
+#include <dev.h>
+
+struct mbr_entry {
+ u8 attributes;
+ u8 chs_start[3];
+ u8 type;
+ u8 chs_end[3];
+ u32 start;
+ u32 size;
+} PACKED;
+
+struct mbr {
+ u8 bootstrap[440];
+ u32 signature;
+ u16 reserved;
+ struct mbr_entry entries[4];
+ u16 magic;
+} PACKED;
+
+u8 mbr_detect(struct dev *dev);
+
+#endif