Debug Menu
The Visual Debugger menu options are described below.
Debug»Source
The Source window shows the CL file source, both in its original APT format (if applicable) as well as its transformed binary format. The Source window also shows the contents of user-defined, RMD and other macros. Any macro can be examined in the window, regardless if active or not. A marker in the left margin shows the next CL record or macro line to be processed. Breakpoints can be seen, set and cleared by clicking in the margin. Once a variable has been set, it can be examined by hovering the cursor over the variable; a tool-tip will appear showing its value. Four buttons in the Source window single-step through the macro or CL file in various ways.
Debug»Step Over runs to the next macro/CL record shown in the current window.Debug»Step Into runs to the very next line of macro code or CL in the program.Debug»Step Out runs past the end of the current macro.Debug»Run to Cursor runs to the currently selected macro/CL record.The right-mouse context sensitive menu provides quick access to various debugging features of the source window. This includes the ability to set and toggle breakpoints on the selected line, to set or toggle breakpoints on the CL command matching that of the selected line (if any), to clear all breakpoints, to run to the selected line, and to jump to the selected CL record. The context menu also provides the ability to synchronize the trace and simulation windows to their corresponding positions when the source record or line was last processed.
Debug»Variables
The Variable window is used to examine local, object, global and macro system variables. The window is organized into left and right halves.
The left half of the window has a series of tabs. The leftmost Auto tab lists recently referenced variables to simplify debugging. The Global and Object tabs list all global and object scope variables that have been defined. Similarly, the Local tab lists all local variables defined to the current point in the active macro. The contents of the Local and Object windows depend on the macro selected in the Stack window (see below).
The right half of the window also has a series of tabs, which you can use to organize and view local, object, global or macro system variables of interest. Local, object and global variables are only listed once they are declared (DECLAR command) or used.
Each time GENER is paused, it will identify changed variables with a different color.
The right-mouse context sensitive menu provides quick access to various options and features of the variables window. This includes the option to list variables either alphabetically or in the order they were defined, to omit undefined ($NULL) variables and even to export a listing of the current state of each variable (there is no corresponding function to import variables).
Variables can also be viewed by placing the cursor over a variable name where it appears in the Source window. Variables can be “dragged” into the right-hand watch window from the Source window or from the list of Global, Object and Local variables in the left-hand half of the Variables window. Once there, variables can be easily traced using the right-mouse context sensitive menu.
The value of read/write variables can be changed by clicking on the value (to assign the focus) and then typing a new value.
Debug»Stack
The Stack window lists the macro and subprogram call nesting order, bottom up starting with the CL file. Each currently active matched macro or subprogram is listed above its caller, in the order called. When you double-click on a macro in the Stack window, you can view the macro’s local variables in the Variables window and the macro source in the Source window. Double-click on a subprogram entry in the stack window to view the CL file source of the subprogram in the Source window. Double-click on the lowest “CL source” entry in the stack window to view the CL file source in the Source window.
Debug»Kinematics
The Kinematics status window displays the current status of all components of the machine kinematics and transformation that may affect the computation machine coordinates from cldata coordinates. The window zoom can be controlled by holding down the CTRL key while moving the mouse-wheel. The types of information displayed can be controlled by the following right-mouse context menu options:
Show limits: Shows the various transformations that are associated with travel limits along the top edge of the window
Show coordinate variables: Shows information about the different types of coordinates computed during the process. Move the mouse cursor over the coordinate names to see the current coordinate values. The variable names are as follows:
$XC, $YC, $ZC: cldata coordinates
$XW, $YW, $ZW: local workspace coordinates
$XM, $YM, $ZM: machine coordinates
$XJ, $YJ, $ZJ: machine joint coordinates used for limit checking
Show inactive status: Shows the kinematics components that are currently not being used, but can be available if required.
Each component in the Kinematics window is displayed using one of three colors:
Black indicates an active component
Blue indicates an active component that has been modified on the last step
Grey indicates an inactive component
Debug»Step Over (F10)
Used during debugging to process the next CL record or macro line, pausing after the record or line has been processed. Compare this with Step Into below.
Debug»Step Into (F11)
Used during debugging to process the next CL record or macro line, pausing at the very next CL record or macro line to be processed. When Step Into is selected on a CL record or macro line that invokes a macro, processing will pause at the first executable line of code in the macro.
Debug»Step Out (Shift F11)
Used during debugging to process the remainder of the current macro, pausing at the CL record or macro line to be processed after the current macro has completed.
Debug»Run to Cursor (Ctrl F10)
Used during debugging to run to the currently selected CL record or macro line, provided no other breakpoint is activated before reaching the selected record or line.
Debug»Jump to Cursor (Ctrl Shift F10)
Used during debugging to jump to the currently selected CL record, which allows the same CL record to be processed again or allows CL records to be skipped over.
Debug»Set/Clear Breakpoint (F9)
Used during debugging to set or clear a breakpoint on the Source window line that currently has been selected. A solid red circle appears in the margin of the Source window next to any CL record or macro line that has a breakpoint set. GENER pauses processing when it encounters a breakpoint.
Debug»Enable/Disable Breakpoint (Ctrl F9)
Used during debugging to enable or disable a breakpoint on the Source window line that currently has been selected. A disabled breakpoint appears as a hollow red circle. GENER does not pause processing when it encounters disabled breakpoints.
Debug»Remove All Breakpoints (Ctrl Shift F9)
Used during debugging to quickly remove (delete) all breakpoints.
Debug»Breakpoint Manager (Ctrl Alt F9)
The Breakpoint Manager dialog is used to define places in the program where processing should pause. Breakpoints can be set, removed or temporarily disabled. Breakpoints can also be saved and restored from a file using the “File Open” and “File Save” buttons on the dialog. Breakpoints can be remembered from one run of GENER to the next by selecting the “Remember breakpoints” checkbox at the bottom of the dialog.
When GENER encounters a breakpoint, it outputs a message that identifies the breakpoint (since there can be many) and gives you the option to either pauses the post-processor or to continue to the next breakpoint or end of program. If you choose to pause processing, select Run»Play or Run»Fast when you are ready to continue processing. Breakpoints can be set for the following:
On a macro line, to break before executing the macro command.When a specific post-processor command is encountered.On a CL record identified by its CL number or ISN number.After a NC program block is output identified by a sequence number (N block).After a selected macro variable is assigned a new value.When a particular diagnostic or diagnostic matching a selected severity occurs.When a Virtual Machine collision or over-travel event occurs.It is easier to set macro line and CL record breakpoints using the Source window. First select the CL file or macro using the drop down list in the upper right corner of the Source window. Then click with the mouse in the left-hand border beside the CL record or macro line where a breakpoint is desired. A solid red circle will appear to show that a breakpoint has been set. Hollow red circle symbols indicate breakpoints that are disabled. Click on the circle icon to delete an existing breakpoint. The right-mouse pop-up menu can also be used to set or toggle line and CL record command breakpoints as well as to clear all breakpoints.
Debug»Macro Manager
The Macro Manager dialog provides debugger functionality to enable or disable any macro, to enable or disable the tracing of a macro when “stepping”, as well as to view or change the settings of system variables that enable or disable the processing of startup and shutdown macros (these variables are grayed out if their corresponding startup/shutdown macros are not defined). Enabling or disabling macros and/or changing the macro variable settings may affect the results of the post-processor. Changing the trace settings does not affect the results of the post-processor.
The Macro Manager also has checkbox options to hide or show composite post-processor component macros that do not belong to the currently active component, external before/after macros, macros belonging to the current post-processor and Virtual Machine macros associated with the machine model. Hiding or showing macros does not affect the results of the post-processor.