Никогда не понимал отрицательных переходов.
Код
1ba: 96 db rcall .-2260 ; 0xfffff8e8 <__eeprom_end+0xff7ef82c>
Это куда он попадёт?

На правильный адрес оно переходит на 0x18e8, по этому адресу есть нужная функция.. Но не работает... bootloader рабоатет, а вот main нет.
беда