User`s manual

286 digi.com Graphical User Interface
Enable breakpoints
If this box is checked, the debug kernel will be able to toggle breakpoints on and off and will
be able to stop at set breakpoints. This is where you set the maximum number of breakpoints
the debug kernel will support. The debug kernel uses a small amount of root RAM for each
breakpoint, so reducing the number of breakpoints will slightly reduce the amount of root
RAM used.
If this box is unchecked, the debug kernel will be compiled without breakpoint support and the
user will receive an error message if they attempt to add a breakpoint.
Enable watch expressions
If this box is checked, watch expressions will be enabled. This is where you set the maximum
number of watch expressions the debug kernel will support. The debug kernel uses a small
amount of root RAM for evaluating each watch expression, so reducing the number of
watches will slightly reduce the amount of root RAM used.
With the watch expression box unchecked, the debug kernel will be compiled without watch
expressions support and the user will receive an error message if they attempt to add a watch
expression.
With Dynamic C 9, watch expressions are enhanced to automatically include the addition of
structure members when a watch expression is set on a struct. Some extended memory is
reserved for handling watch expressions on structs. As shown in the above screen shot, 512
bytes of xmem is reserved by default. This can be changed to anything in the range 32 to 4096.
Be aware that this watch memory is a tradeoff: not only does it dictate the number and com-
plexity of watched structs, but also impacts the amount of memory available for xalloc()
calls.
Enable stack tracing
Dynamic C 9 introduces stack tracing. If this box is checked the Stack Trace window is avail-
able to show the function call sequence leading to any point at which the program is stopped.
The Stack Trace window shows a concise history of the execution path and values of local
variables and function arguments that led to the current breakpoint, all for a very small cost in
execution time and BIOS memory.
To the right of the checkbox is a spin/edit box for entering the maximum number of bytes of
the current stack to transfer from the target at each breakpoint. The allowable range is 32 bytes
to 4096 bytes inclusive. The default is 4096 bytes. If the stack depth is smaller than the num-
ber in this spin/edit box, only the depth number of bytes is transferred.
With the “Enable stack tracing” box unchecked, the debug kernel and the user program will be
compiled without stack tracing support. Changing the status of the checkbox or the number of
stack trace bytes forces a recompilation of the BIOS the next time the user program is com-
piled.
See “Stack Trace (Ctrl+T)” on page 297 for details on using this debug window.