Цитата(DmitryM @ Feb 28 2012, 13:41)

...
Прикол в том что я не могу в секции где ldr pc ещё что нибудь обьявить, места нету.
Иар сгенерил такой вот опкод F4F01FE5
Код
FSWI_PATCH2:A13A5328; ===========================================================================
FSWI_PATCH2:A13A5328
FSWI_PATCH2:A13A5328; Segment type: Pure code
FSWI_PATCH2:A13A5328 AREA FSWI_PATCH2, CODE, READWRITE, ALIGN=0
FSWI_PATCH2:A13A5328 ; ORG 0xA13A5328
FSWI_PATCH2:A13A5328 CODE32
FSWI_PATCH2:A13A5328 main_jumper DCD swi_handler ; DATA XREF: FSWI_PATCH1:A13A5414r
FSWI_PATCH2:A13A5328; FSWI_PATCH2 ends
FSWI_PATCH2:A13A5328
FSWI_PATCH1:A13A5414; ---------------------------------------------------------------------------
FSWI_PATCH1:A13A5414; ===========================================================================
FSWI_PATCH1:A13A5414
FSWI_PATCH1:A13A5414; Segment type: Pure code
FSWI_PATCH1:A13A5414 AREA FSWI_PATCH1, CODE, READWRITE, ALIGN=0
FSWI_PATCH1:A13A5414 ; ORG 0xA13A5414
FSWI_PATCH1:A13A5414 CODE32
FSWI_PATCH1:A13A5414 LDR PC, =swi_handler
FSWI_PATCH1:A13A5414; FSWI_PATCH1 ends
FSWI_PATCH1:A13A5414
Если сделать тупо
Код
.section FSWI_PATCH1, "ax", %progbits
.int 0xE51FF0F4
То работает, но не вариант, там адреса могут быть разные
Сообщение отредактировал vova7890 - Feb 28 2012, 12:13