the application where their assembly CRT does a .include
"boootloader.bin". This way, the entiere bootloader is placed in front
of the app. There is also a trampoline code (a jump) to the app area
when the bootloader is not supposed to run, so it starts the app and a
little link script trick defining an program_start symbol.
Might be worth taking a look.
Kind Regards,
Thiago A Correa