I had a weird issue with using another vector table position than the default (start of flash address (0x00400000)). The MCU is a SAM S70.
I use this because I want to debug the firmware so it's downloaded directly into the device and the debugger tool must override VTOR after reset. It may not be interesting if it wasn't working.. but the same works for another type of MCU (still SAM S70)!
From AS7, here are the evidences:
Tool options are set like this:
It does the following, stopped right after reset (MCU is exactly ATSAMS70Q21):
(on the bottom right there's the memory view at the used vector table)
(at processor status window, stack pointer is shown and is set as intended from the vector table)
And the following happens using the other PCB/project, which is exactly the same from the point of view of dl./debugging (MCU is ATSAMS70N19). (Both use SWD, same tool (Atmel-ICE) etc.):
(stack pointer is loaded from 0x00400000, where I've put 0xfff6ffff just to see if it's read from there. It is.)
So no difference in the projects but the MCU exact type and the debug fails because of this... ??? Why???
To be honest, I am changing from AS7 to another IDE since this is the Nth issue and can't see if even the former ones will ever be solved. I am disappointed and sad, because I know VisualStudio environment and it would be a perfect IDE if it hadn't always nonsense issues (speed, stability, functional etc.).