Цитата
Можно по подобней, аппарвтный сброс еще никто не запрещал, ИМХО.
Вот официальное мнение Atmel по этому вопросу:
Software Reset
Question
How can I reset my AVR through software?
Answer
If you want to perform a software reset of your AVR you should use the internal Watchdog. Simply enable it and let it time out. When the Watchdog triggers it resets the program counter back to 0, clears all the registers and performs all the other tasks. This operation gives the same result as pulling the RESET line low.
You should not try to:
- Use another pin of the AVR to pull the external RESET line. The pins of the AVR are tristated halfway through the minimum reset time, this releases the RESET line and hence nothing happens.
- Jump to program location 0. Jumping to program location 0 does not clear all the registers and hence you do not have a "clean" reset.Цитата(Сергей Борщ @ Jul 9 2007, 14:12)

Оно проверено на вызове загрузчика, который живет по адресу 0x1800 и другой функции по другому адресу. Конкретно на адрес 0x0000 не переходил, но не вижу особой разницы - с точки зрения компилятора это вызов обычной функции, о расположении которой он ничего не знает и не должен знать. С точки зрения линкера адреса функций - обычные symbols, ему тоже все равно чему этот адрес равен конкретно. А опцией -Wl мы просто ему говорим "этот символ (метку) мы определили за тебя
Вот в этом и вопрос знает или не знает ?
линкер должен знать

Попробую найти/воспроизвести код с "неправильным" вызовом функции по адресу 0x0000,
а потом попробую Ваш вариант.
Цитата
"Да, но оно требует загрузки R30:R31 и IJMP вместо обычного ®JMP.
Ну вроде как в IAR для этого можно воспользоваться "__z" ?