Цитата(quarz @ Dec 21 2010, 18:31)

Однако при переходе по адресу 0x00000000 вываливается в исключение FaultISR.
Я так думаю, что для такого прыжка надо в регистр PC, желательно в асме загрузить 0 (простите если я сказал что то не то:-))). Просто вызвать код оттуда как указатель на функцию точно неправильно.
Цитата(quarz @ Dec 21 2010, 18:31)

Как будто по нулевому адресу не код расположен, а что-то другое.
Пишу в IAR, в стартапе указано, что после reset переходит по адресу __iar_program_start. Чему равен __iar_program_start - не нашел.
Как тогда определить адрес расположения моего загрузчика?
Объявите
void __iar_program_start(void);
и вызывайте __iar_program_start(); откуда хотите