The Call Stack window displays the list of function calls (stack frames) that are active at the point that program execution halted. When program execution halts, CrossStudio populates the call stack window from the active (currently executing) task. For simple single-threaded applications not using the CrossWorks tasking library there is only a single task, but for multi-tasking programs that do use the CrossWorks Tasking Library there may be any number of tasks. CrossStudio updates the Call Stack window when you change the active task in the Threads Window.
The Call Stack window is divided into a tool bar and the main breakpoint display.
Button | Description |
![]() |
Moves the cursor to where the call to the selected frame was made. |
![]() |
Sets the debugger context to the selected stack frame. |
![]() |
Moves the debugger context down one stack to the called function |
![]() |
Moves the debugger context up one stack to the calling function |
![]() |
Selects the fields to display for each entry in the call stack. |
![]() |
Sets the debugger context to the most recent stack frame and moves the cursor to the currently executing statement. |
The main part of the Call Stack window displays each unfinished function call (active stack frame) at the point that program execution halted. The most recent stack frame is displayed at the bottom of the list and the eldest is displayed at the top of the list.
CrossStudio displays these icons to the left of each function name:
Icon | Description |
![]() |
Indicates the stack frame of the current task. |
![]() |
Indicates the stack frame selected for the debugger context. |
![]() |
Indicates that a breakpoint is active and when the function returns to its caller. |
These icons can be overlaid to show, for instance, the debugger context and a breakpoint on the same stack frame.
To display the Call Stack window if it is hidden, do one of the following:
—or—
—or—
—or—
—or—
Each entry in the Call Stack window displays the function name and, additionally, parameter names, types, and values. You can configure the Call Stack to display varying amounts of information for each stack frame. By default, CrossStudio displays all information.
To display or hide the name of each parameter in the call stack, do the following:
To display or hide the value of each parameter in the call stack, do the following
To display or hide the type of each parameter in the call stack, do the following:
To display or hide the file name and source line number columns of each frame in the call stack, do the following:
To display or hide the call address of each frame in the call stack, do the following:
You can select the stack frame for the debugger context from the Call Stack window.
To move the debugger context to a specific stack frame, do one of the following:
—or—
—or—
The debugger moves the cursor to the statement where the call was made. If there is no debug information for the statement at the call location, CrossStudio opens a disassembly window at the instruction.
To move the debugger context up one stack frame to the calling function, do one of the following:
—or—
—or—
The debugger moves the cursor to the statement where the call was made. If there is no debug information for the statement at the call location, CrossStudio opens a disassembly window at the instruction.
To move the debugger context down one stack frame to the called function, do one of the following:
—or—
—or—
The debugger moves the cursor to the statement where the call was made. If there is no debug information for the statement at the call location, CrossStudio opens a disassembly window at the instruction.
To set a breakpoint on return to a function, do one of the following:
—or—
—or—