1use multiboot2_header::{
2 Builder, Header, HeaderTagFlag, HeaderTagISA, InformationRequestHeaderTag, MaybeDynSized,
3 MbiTagType, RelocatableHeaderTag, RelocatableHeaderTagPreference,
4};
5
6fn main() {
8 let header_bytes = Builder::new(HeaderTagISA::I386)
12 .relocatable_tag(RelocatableHeaderTag::new(
13 HeaderTagFlag::Required,
14 0x1337,
15 0xdeadbeef,
16 4096,
17 RelocatableHeaderTagPreference::None,
18 ))
19 .information_request_tag(InformationRequestHeaderTag::new(
20 HeaderTagFlag::Required,
21 &[
22 MbiTagType::Cmdline.into(),
23 MbiTagType::BootLoaderName.into(),
24 ],
25 ))
26 .build();
27
28 let header = unsafe { Header::load(header_bytes.as_ptr()) }.unwrap();
29 println!("{header:#?}");
30}