Whenever a pointer is added in the Watch Window and an element is expanded in it, then debugging proceeds, all values get corrupted and in the Disassembly Window displays message Illegal Instructions. The content of the pointer is not modified, it is only read.
This can happen when reading from unallocated memory region using the SFR, Memory or Watch Window. When the debugger reads from an unallocated memory region (no physical memory there), the CPU resets or the debug interface freezes and a debug reset is required then. It must be avoided reading memory from an unallocated memory region. In this case when ConfigPtr is expanded, some fields, which are read, point to an unallocated memory region. Afterwards a debug source step is done, it makes the CPU unresponsive.
Sorry this article didn't answer your question, we'd love to hear how we can improve it.
Note: This form won't submit a case. We'll just use it to make this article better.