You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

58 lines
949 B
Plaintext

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)
}
/* TODO: set current address for s4 loadpoint */
/* TODO: move magic & length */
.text : {
*(.text)
*(.text.*)
}
.data : {
*(.data)
*(.data.*)
}
.bss : {
*(.bss)
*(.bss.*)
}
.rodata : {
*(.rodata)
*(.rodata.*)
}
.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;
}