Мучаю 5.30 в попытках переползти на нее
Соттветсвенно пара проблем, решения которых не могу найти.
1 Каким образом указать этой сволочи точку входа и выкинуть библиотечный код cstartup?
Переобозвал свой файл таким же образом, указал нужную галочку что entry point defined by application, написал векторы в своей секции поставил ее как ROOT, плюс прыгаю сначала на __iar_data_init2 потом на main. Вроде все работает и железка заводится, но линкер упорно запихивает библиотечный код плюс к моему и отладчик показывает что программа начинает выполнятся именно от него, то есть с адреса 0x1004F8.
Директиву ORG убрали.
2 Проблема в принципе разрешилась но толи я дурак толи...
нужно было пренести ассемблерный код в RAM пришлось сделать так:
Код
#define SHT_PROGBITS 0x1
#define SHF_WRITE 0x1
#define SHF_EXECINSTR 0x4
SECTION `.textrw`:CODE:NOROOT(2)
SECTION_TYPE SHT_PROGBITS, SHF_WRITE | SHF_EXECINSTR
CODE32
...
Заработало. Но что означают эти define найти в документации так и не смог.
Yes, there are two paths you can go by But in the long run Theres still time to change the road youre on.