papermario/tools/splat/test/basic_app/basic_app.ld

79 lines
2.1 KiB
Plaintext

SECTIONS
{
__romPos = 0;
_gp = 0x0;
header_ROM_START = __romPos;
header_VRAM = ADDR(.header);
.header : AT(header_ROM_START) SUBALIGN(16)
{
header_DATA_START = .;
build/header.o(.data);
header_DATA_END = .;
header_DATA_SIZE = ABSOLUTE(header_DATA_END - header_DATA_START);
}
__romPos += SIZEOF(.header);
header_ROM_END = __romPos;
header_VRAM_END = .;
dummy_ipl3_ROM_START = __romPos;
dummy_ipl3_VRAM = ADDR(.dummy_ipl3);
.dummy_ipl3 0xA4000040 : AT(dummy_ipl3_ROM_START) SUBALIGN(16)
{
dummy_ipl3_DATA_START = .;
build/dummy_ipl3.o(.data);
dummy_ipl3_DATA_END = .;
dummy_ipl3_DATA_SIZE = ABSOLUTE(dummy_ipl3_DATA_END - dummy_ipl3_DATA_START);
}
__romPos += SIZEOF(.dummy_ipl3);
__romPos = ALIGN(__romPos, 16);
dummy_ipl3_ROM_END = __romPos;
dummy_ipl3_VRAM_END = .;
boot_ROM_START = __romPos;
boot_VRAM = ADDR(.boot);
.boot 0x80000400 : AT(boot_ROM_START) SUBALIGN(16)
{
boot_TEXT_START = .;
build/main.o(.text);
build/handwritten.o(.text);
boot_TEXT_END = .;
boot_TEXT_SIZE = ABSOLUTE(boot_TEXT_END - boot_TEXT_START);
boot_DATA_START = .;
build/main.o(.data);
build/handwritten.o(.data);
boot_DATA_END = .;
boot_DATA_SIZE = ABSOLUTE(boot_DATA_END - boot_DATA_START);
boot_RODATA_START = .;
build/main.o(.rodata);
build/handwritten.o(.rodata);
boot_RODATA_END = .;
boot_RODATA_SIZE = ABSOLUTE(boot_RODATA_END - boot_RODATA_START);
}
boot_bss_VRAM = ADDR(.boot_bss);
.boot_bss (NOLOAD) : SUBALIGN(16)
{
boot_BSS_START = .;
build/main.o(.bss);
build/main.o(.scommon);
build/main.o(COMMON);
build/handwritten.o(.bss);
build/handwritten.o(.scommon);
build/handwritten.o(COMMON);
boot_BSS_END = .;
boot_BSS_SIZE = ABSOLUTE(boot_BSS_END - boot_BSS_START);
}
__romPos += SIZEOF(.boot);
__romPos = ALIGN(__romPos, 16);
boot_ROM_END = __romPos;
boot_VRAM_END = .;
/DISCARD/ :
{
*(*);
}
}