ISD51 manuals indicates that a break point requires 2 bytes of idata. In what segment are these declared? I supect that my call return stack is getting corrupted, causing a reset0. Single Stepping works fine, until the code attempts to return from either an assembler or C call. Depending on the how the code is built pattern, some projects have this behaviour: others do not, despite the same setup.
Well, The behaviour I cited in the thread goes away - if I lower the baud rate! My conclusion, from several months of ISD51 observation and use. (A) if windows is too loaded, it can be too slow to allow proper debugging, at higher ISD51's breakpoint handling baud rates.A reboot has sorted hangs, before now. (B) Even though cables can transfer code and check application ROM at high baud rates, this does not mean the break point management process can also work effecitively at the same data rate.