Development Flow
2-10
The RUN TO CURSOR operation temporarily requires a breakpoint.
Consequently, only N-1 breakpoints can be active when RUN TO CURSOR is
used if virtual breakpoints are disabled. Refer to FAQ, Debugging #31).
If, while processing a breakpoint, an interrupt becomes active, C-SPY will stop
at the first instruction of the interrupt service routine. Refer to FAQ, Debugging
#24).
2.3.3 Using Single Step
When debugging an assembler file, STEP OVER, STEP OUT, and NEXT
STATEMENT operate like STEP INTO; the current instruction is executed at full
speed.
When debugging an assembler file, a step operation of a CALL instruction
stops at the first instruction of the CALL’ed function.
When debugging an assembler file, a (true) STEP OVER a CALL instruction
that executes the CALL’ed function at full device speed can be synthesized by
placing a breakpoint after the CALL and GO’ing (to the breakpoint in “Realtime
mode”).
When debugging a C file, a single step (STEP) operation executes the next C
statement. Thus, it is possible to step over a function reference. If possible, a
hardware breakpoint will be placed after the function reference and a GO will be
implicitly executed. This will cause the function to be executed at full speed. If
no hardware breakpoints are available, the function will be executed in Non-
Realtime mode. STEP INTO is supported. STEP OUT is supported.
Within Disassembly mode (VIEW->DISASSEMBLY), a step operation of a non-
CALL instruction executes the instruction at full device speed.
Within Disassembly mode (VIEW->DISASSEMBLY), a step operation of a
CALL instruction will place – if possible - a hardware breakpoint after the CALL
instruction, and then execute GO. The CALL’ed function will execute at full
device speed. If no hardware breakpoint is available prior to the GO, the
CALL’ed function will be executed in Non-Realtime mode. In either case,
execution will stop at the instruction following the CALL.
It is only possible to single step when source statements are present.
Breakpoints must be used when running code for which there is no source code
(i.e., place the breakpoint after the CALL to the function for which there is no
source, and then GO to the breakpoint in “Realtime mode”).
If, during a single step operation, an interrupt becomes active, the current
instruction is completed and C-SPY will stop at the first instruction of the
interrupt service routine. Refer to FAQ, Debugging #24).