Ребят, давайте мух от котлет отделять.
1.
vvj, Если у тебя 29LV160 в 16-разрядном режиме, то забей на Bootloader. Тебе достаточно прошить код, перевести BMS в 0 и он стартанет прямо с флэшки. Только не забывай про ремэпы и что внутренняя SRAM проца будет по адресу 0x200000 и это надо указать в XCL-файле. Для 8-разрядного режима будет работать механизм Bootloader, только почитай Errata пункт 37.
2. Насчет cstartup.s79 и векторов. Все вектора, которые используются в приложении, будут вкомпилены в выходной файл. Если часть векторов не используется, как в вашем случае, на их местах будут нули. Для обычного приложения это штатная ситуация. Если мы хотим чтобы BootLoader признал наш код за валидное приложение, то должны прописать все вектора, а шестой еще и специальной информацией. Проще всего это сделать в cstartup.s79. Пример такого cstartup.s79 прикрепляю. Обратить внимание на код по адресу 0x14.
3. Насчет XCL-файла. Смею вас огорчить, но запрограммировать ARM в IAR не прописав руками XCL нереально. Справедливости ради надо отметить, что в настройках линкера есть кнопочка Command line configuration tool, но я как-то попробовал ей законфигурить и плюнув просто написал все в XCL. А необходимо это все по очень простой причине. ВЫ ДОЛЖНЫ СКАЗАТЬ КОМПИЛЯТОРУ СКОЛЬКО КАКОЙ ПАМЯТИ ПО КАКИМ АДРЕСАМ ЕСТЬ В СИСТЕМЕ И КУДА РАЗМЕЩАТЬ ВЕКТОРА ПРЕРЫВАНИЙ, СТЭКИ, СЕГМЕНТЫ КОДА И ДАННЫХ, КУЧУ. Ведь ARM может иметь довольно богатый набор различных типов памяти на борту и за бортом. Плюс тот же REMAP надо учесть. При этом, в отличии напримр от AVR, адресное пространство данных не отделено от адресного пространства программ, что дает множество возможных вариантов построения проекта. На этом месте советую почитать про сегменты в IAR-вском хэлпе.
4. Более того, один проект обычно содержит несколько XCL. Например, для отладки совсем не обязательно прошивать флэшки, а можно использовать для размещения кода SDRAM. При финальной же компиляции все переносится во flash. И примеров, когда надо использовать разную память в проекте, может быть множество.
5. Насчет Wiggler. Он хорош, если ARM для вас хобби. Но если это ваша работа, то я не понимаю как можно экономить на инструменте. Сравните стоимость фирменного J-Link и более чем вдвое дешевого MT-Link со стоимостью изготовления опытной четырех-шестислойной печатной платы для AT91RM9200 со всей его периферией !!! После подписания счета на печатные платы мой директор счет на J-Link подмахнул даже не спросив что это.
Кстати, Flashloader для DataFlash уже работает. Так что, сегодня-завтра еще обкатаю на предмет ошибок и в понедельник выложу.