Hi !
In the above figure, I used the offset of #-0x0000_0120
from PC to branch to the ISR address (the ISR address is contained in VICAddress
which is 0xFFFF_FF00
) ! The code seems to work with this setting !
But actually, I expected an offset of #-0x0000_0118
from PC because:
PC is 0x0000_0018 (simple calculation / look at the disassembly window).
PC - Offset should be 0xFFFF_FF00 (or)
PC - 0xFFFF_FF00 should be Offset (or)
0x0000_0018 - 0xFFFF_FF00 = 0x0000_0118 should be Offset !
But when I try Offset of #-0x0000_0118
, the code doesn’t branch to the ISR !
So the magic number is #-0x0000_0120
which is 8 away from #-0x0000_0118
! Is this a strange feature of the ARM(7) architecture ?
Anyway, see my post on ‘Feb 11, 2022 6:55 pm’ ! Shall I make a new topic / continue on this topic ? Thanks in advance !