We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I try to debug my program using dScope. My RAM is starting from 0x100000 address and has size of 1MB. I load monitor from 0x1FE000, and set interrupt vector table from 0x100000. After loading executable file, which is mapped from 0x100000, I set PC = 0x100000 and run step by step pressing <F10>. After first step the program come on next command: DISWDT. Next step is not executed and I receive the monitor error 9: CANNOT WRITE BREAKPOINT VECTOR How I can debug program on boards without RAM on 0 address?
How I can debug program on boards without RAM on 0 address? That's the point. Monitor166 uses NMI interrupt vector to interrupt program execution. This requires that the NMI vector points to the appropriate location in the Monitor166 code. It can be accomplished in two ways: 1) If there is RAM at addresses 0..0x1FF then the monitor will write the vector on initialization. 2) if there is programmable ROM at addresses 0..0x1FF then you can program Monitor166 code to that ROM 3) or you can program interrupt vector redirection table (although I'm not sure if that will work with out-of-the-box Monitor166, look that up in the manuals.) - mike