На правах рекламы - вызов SRecord для подсчёта контрольной суммы векторов прерываний. Алгоритм - сумма int-ов по смещениям 0..0x20 должна быть равна нулю. Контрольная сумма записывается по адресу 0x14. Дальше "пристыковывается" остальной файл без изменений.
Под Ваши алгоритмы переделывайте самостоятельно - надо "растянуть" или обрезать файл (смотря по тому, что приходит от линкера) и подобрать правильный ключ для контрольной суммы.
Код
echo add arm core vectors checksum
srec_cat ^
%File%.bin -binary -crop 0x00 0x14 0x18 0x20 -LECN 0x14 4 4 ^
%File%.bin -binary -crop 0x20 -max %File%.bin -binary ^
-o %File%.bin -binary
PS ccitt / xmodem, насколько я понимаю, различаются полиномами.