hanzelko
13-05-2003, 09:18 AM
Hi,
Can some one help me with this.
I have this part of Nokia Flash:
CODE16
adr r1,DAT_2055D0
lsl r0,r0,#2
ldr r0,[r1,r0]
mov pc,r0
DAT_2055D0
DCD B_2058a6
DCD B_205896
DCD B_205664
END
It is normal jump table. But this whole stuff is in Thumb mode and ADS Assembler will for DCD B_xxxx generate address + 1 (For thumb like BX) and in flash this is without that +1.
How to avoid this +1 address adding?
When I use DCD B_2058a6 it will generete 0x002058A7
When I use DCD B_2058a6-1 it will generate 0x002058A5.
Any suggestions?
Thanks
Can some one help me with this.
I have this part of Nokia Flash:
CODE16
adr r1,DAT_2055D0
lsl r0,r0,#2
ldr r0,[r1,r0]
mov pc,r0
DAT_2055D0
DCD B_2058a6
DCD B_205896
DCD B_205664
END
It is normal jump table. But this whole stuff is in Thumb mode and ADS Assembler will for DCD B_xxxx generate address + 1 (For thumb like BX) and in flash this is without that +1.
How to avoid this +1 address adding?
When I use DCD B_2058a6 it will generete 0x002058A7
When I use DCD B_2058a6-1 it will generate 0x002058A5.
Any suggestions?
Thanks