In the enclosed disassembly listing from ASM30 in MPLAB, I understand the purpose of everything except the .pword at address 0x200. It is not a valid instruction and address 0x200 is the destination of each interrupt vector that is not initialized.
So what does the processor do when it fetches and tries to execute as an instruction the 0xDA4000 at address 0x200?
Rich (BB code):
Test2.cof: file format coff-pic30
Disassembly of section .reset:
00000000 <.reset>:
0: 04 02 04 goto 0x204 <__reset>
2: 00 00 00
Disassembly of section .text:
00000200 <__DefaultInterrupt>:
200: 00 40 da .pword 0xda4000
202: 00 00 fe reset
Disassembly of section .ivt:
00000004 <.ivt>:
4: 00 02 00 nop
6: 00 02 00 nop
...
... Interrupt Vector and Alternate Interrupt Vector Tables
... with the same content as location 4: and 6: above pointing
... to address 0x200
...
Disassembly of section .text:
00000204 <__reset>:
204: f1 00 20 mov.w #0xf, w1
206: 41 11 88 mov.w w1, 0x228
208: 01 00 28 mov.w #0x8000, w1
20a: 01 11 88 mov.w w1, 0x220