OUTPUT_FORMAT("binary") . = 0x8200; SECTIONS { /* Stage 2 must come first so it's in the single sector loaded by stage 1. */ .s2_text : { KEEP(*(.s2_text)) *(.s2_text) } .s3_text : { KEEP(*(.s3_text)) *(.s3_text) } .s3_data : { KEEP(*(.s3_data)) *(.s3_data) } .magic : { /* Magic bytes stage 2 uses to make sure it's loaded the subsequent sectors correctly. */ LONG(0x544e4150) } s234_magic = ADDR(.magic); /* Define a symbol for the total length of the binary, so the prelude knows how many blocks to * load from disk. */ s234_bin_len = . - 0x8200; s234_bin_sectors = (s234_bin_len + 511) / 512; }