diff options
Diffstat (limited to 'src/boot/multiboot.h')
| -rw-r--r-- | src/boot/multiboot.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/boot/multiboot.h b/src/boot/multiboot.h new file mode 100644 index 0000000..010f60b --- /dev/null +++ b/src/boot/multiboot.h @@ -0,0 +1,41 @@ +#ifndef MULTIBOOT_H +#define MULTIBOOT_H + +#include "utils/types.h" + +typedef struct MBI_TAG_HEADER { + u32 type; + u32 size; +} __attribute__((packed)) MBI_TAG_HEADER; + +typedef struct MBI_TAG_BL_NAME { + MBI_TAG_HEADER header; + u8 *name; +} __attribute__((packed)) MBI_TAG_BL_NAME; + +typedef struct MBI_TAG_FB { + MBI_TAG_HEADER header; + u64 framebuffer_addr; + u32 framebuffer_pitch; + u32 framebuffer_width; + u32 framebuffer_height; + u8 framebuffer_bpp; + u8 framebuffer_type; + u8 reserved; + u8 *color_infos; +}__attribute__((packed)) MBI_TAG_FB; + +/** + * Parse Bootloader boot information structure + */ +char mb_load_tag(char **data, char type); +/** + * Search for Bootloader name + */ +char mb_load_bl_name(MBI_TAG_BL_NAME *data); +/** + * Search for FrameBuffer structure (TODO: Finish) + */ +char mb_load_fb(MBI_TAG_FB *data); + +#endif
\ No newline at end of file |
