Note that the
<filename>boot0.S
</filename> source file is assembled
<quote>as is
</quote>: instructions are translated one by one to binary, with no additional information (no
<acronym>ELF
</acronym> file format, for example). This kind of low-level control is achieved at link time through special control flags passed to the linker. For example, the text section of the program is set to be located at address
<literal>0x600
</literal>. In practice this means that
<filename>boot0
</filename> must be loaded to memory address
<literal>0x600
</literal> in order to function properly.