home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / vacbdbg.zip / betadbg.zip / help / derdhc1.hlp (.txt) < prev    next >
OS/2 Help File  |  1998-02-13  |  188KB  |  6,573 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Procedure Help for Debugger ΓòÉΓòÉΓòÉ
  3.  
  4. The Debugger Online Help is divided into four types of information: 
  5.  
  6.      Procedures - how to perform a specific task or set of tasks 
  7.  
  8.      Reference - technical information you may need to understand how to 
  9.       perform a task 
  10.  
  11.      User Interface - context-sensitive help pages displayed when you press F1 
  12.       from within the debugger 
  13.  
  14.      Concepts - overview information you may need to understand basic 
  15.       principles of debugging or components of the debugger interface 
  16.  
  17.  Procedure help is organized hierarchically, so that you start from a 
  18.  high-level task and follow it down to the specific task you want to perform. 
  19.  Help is available for the following high-level tasks: 
  20.  
  21.      Prepare a program for debugging 
  22.  
  23.      Start or stop debugging a program 
  24.  
  25.      Set breakpoints in your program 
  26.  
  27.      Step through, run, or halt your program 
  28.  
  29.      Debug variable contents and memory 
  30.  
  31.      Debug logic and program flow 
  32.  
  33.  
  34. ΓòÉΓòÉΓòÉ 1.1. Prepare a Program for Debugging ΓòÉΓòÉΓòÉ
  35.  
  36. To prepare a program for debugging, you may need to perform some or all of the 
  37. following tasks: 
  38.  
  39.      Establish a debug environment 
  40.  
  41.      Write programs for debugging 
  42.  
  43.      Compile a program for debugging 
  44.  
  45.  
  46. ΓòÉΓòÉΓòÉ 1.1.1. Write Programs for Debugging ΓòÉΓòÉΓòÉ
  47.  
  48. You can make your programs easier to debug by following these simple 
  49. guidelines: 
  50.  
  51.      Do not hand-tune your source code for performance until you have fully 
  52.       debugged and tested the untuned version. Hand tuning may introduce new 
  53.       bugs or make the logic of your code harder to understand. 
  54.  
  55.      Where possible, do not put multiple statements on a single line, because 
  56.       some debugger features operate on a compiler listing line basis. For 
  57.       example, you cannot set line breakpoints on more than one statement on 
  58.       the same line. Although you can step over multiple statements on the same 
  59.       line, it is difficult to determine which statements on the current line 
  60.       have been executed already, and which ones have not. 
  61.  
  62.      Assign intermediate expression values to temporary variables to make it 
  63.       easier to verify intermediate results. 
  64.  
  65.  To be able to debug your programs at the line level, you must specify compiler 
  66.  options that generate debug information. For information on these compiler 
  67.  options, and for other information on preparing your application for 
  68.  debugging, see the Debug Tool User's Guide and Reference. 
  69.  
  70.  
  71. ΓòÉΓòÉΓòÉ 1.1.2. Compile a Program for Debugging ΓòÉΓòÉΓòÉ
  72.  
  73. In order to be able to debug your program at the compiler listing level, you 
  74. need to compile your program with certain compiler options that instruct the 
  75. compiler to generate symbolic information in the object file. The Related 
  76. Topics section below points to information on how to compile your program for a 
  77. specific environment. 
  78.  
  79. Related Information 
  80.  
  81. Reference 
  82. Compiler Options on OS/390 
  83.  
  84. Procedures 
  85. Write Programs for Debugging 
  86.  
  87.  
  88. ΓòÉΓòÉΓòÉ 1.1.3. Establish a Debug Environment ΓòÉΓòÉΓòÉ
  89.  
  90. To establish a debug environment, you need to perform some or all of the 
  91. following tasks: 
  92.  
  93.      Set environment variables for the debugger 
  94.  
  95.      Start the debug session 
  96.  
  97.  
  98. ΓòÉΓòÉΓòÉ 1.1.3.1. Set Environment Variables for the Debugger ΓòÉΓòÉΓòÉ
  99.  
  100. The debugger user interface running on the workstation uses certain environment 
  101. variables to determine where it looks for source files, executables, online 
  102. help, and so on. See the Related Topics below for help on the environment 
  103. variables themselves. 
  104.  
  105. To set an environment variable for a given session of the debugger, do the 
  106. following on your OS/2 or Windows workstation: 
  107.  
  108.    1. Open a command shell window. 
  109.  
  110.    2. Use the SET command to set each environment variable to the required 
  111.       value: 
  112.  
  113.             SET VARNAME=VAL1;VAL2;VAL3
  114.  
  115.       where VARNAME is the name of the environment variable, and VAL1, VAL2, 
  116.       and VAL3 are values assigned to it (normally multiple values for a 
  117.       variable are separated by semicolons). 
  118.  
  119.       If you want to add more values to an existing variable, use the following 
  120.       syntax: 
  121.  
  122.             SET VARNAME=%VARNAME%;VAL4;VAL5
  123.  
  124.       This adds both the existing contents of VARNAME and the new values to the 
  125.       variable. 
  126.  
  127.    3. Invoke the debugger daemonfrom that command shell. 
  128.  
  129.  If you want to set these environment variables permanently, or if you are 
  130.  debugging remotely to an OS/390 host via APPC, do the following, depending on 
  131.  the operating system you are using: 
  132.  
  133.  From Control Panel select System, then within the System notebook choose the 
  134.  Environment tab. Select the variable you want to change from the list, or 
  135.  enter a new variable name in the Variable entry field, and enter its values in 
  136.  the Value entry field. Click on OK or Apply to save the changed or new 
  137.  variable. 
  138.  
  139.  Add the SET... commands to your CONFIG.SYS file. A reboot is required for 
  140.  these changes to take effect. 
  141.  
  142.  Related Information 
  143.  
  144.  Reference 
  145.  Environment Variables 
  146.  
  147.  
  148. ΓòÉΓòÉΓòÉ 1.1.3.2. Invoke the Debugger ΓòÉΓòÉΓòÉ
  149.  
  150. How you invoke the debugger for an OS/390 program depends on the communications 
  151. protocol you are using. See the following for details: 
  152.  
  153.      TCP/IP connection 
  154.  
  155.      APPC connection (OS/2 only) 
  156.  
  157.  
  158. ΓòÉΓòÉΓòÉ 1.1.3.2.1. Establish an APPC Connection ΓòÉΓòÉΓòÉ
  159.  
  160. Follow these steps to debug a program running on an OS/390 system through APPC. 
  161.  
  162.    1. Set the DEBUG_LANG environment variable to indicate the dominant 
  163.       programming language for your application. (For debugging remotely to 
  164.       OS/390, only COBOL is supported.) You can set this from the command shell 
  165.       or in your OS/2 CONFIG.SYS file. Note that this variable is usually set 
  166.       for you during installation. 
  167.  
  168.    2. Start your application on OS/390 with the TEST runtime option. This will 
  169.       cause the Debug Tool to be loaded; it will then automatically establish a 
  170.       connection to the OS/2 workstation through APPC. You can specify the TEST 
  171.       runtime option as: 
  172.  
  173.             TEST(,,,VADAPPC&machinename:*)
  174.  
  175.       where machinename is the APPC symbolic destination name for your 
  176.       workstation. The details of how to start your program with the TEST 
  177.       option vary depending on the OS/390 environment the program runs in. The 
  178.       environments supported are batch (JES), TSO, CICS, and BTS. For more 
  179.       information on specific environments, or on what you can specify with the 
  180.       TEST option, see the Debug Tool User's Guide and Reference. 
  181.  
  182.  Related Information 
  183.  
  184.  Reference 
  185.  DEBUG_LANG Environment Variable 
  186.  
  187.  
  188. ΓòÉΓòÉΓòÉ 1.1.3.2.2. Establish a TCP/IP Connection ΓòÉΓòÉΓòÉ
  189.  
  190. Follow these steps to debug a program running on an OS/390 system through 
  191. TCP/IP. 
  192.  
  193.    1. Set the DEBUG_LANG environment variable to indicate the dominant 
  194.       programming language for your application. (For debugging remotely to 
  195.       OS/390, only COBOL is supported.) You can set this from the command 
  196.       shell, in your CONFIG.SYS file (OS/2), or in System Settings (Windows). 
  197.       Note that this variable is usually set for you during installation. 
  198.  
  199.    2. Start the remote debug daemon on the workstation. Click on the Remote 
  200.       Debug Daemon icon or shortcut, start the daemon from a WorkFrame MVS 
  201.       project, or issue the following command and options: 
  202.  
  203.             idbugd -qport=nnnn -v
  204.  
  205.       where nnnn is a TCP/IP port such as 8000 or 8001 (note that this same 
  206.       port number must be specified when you start your application on OS/390). 
  207.  
  208.       The daemon only needs to be started once. You can then conduct as many 
  209.       remote debug sessions as needed without having to restart the daemon. 
  210.  
  211.    3. Start your application on OS/390 with the TEST runtime option. This will 
  212.       cause the Debug Tool to be loaded. You can specify the TEST runtime 
  213.       option as: 
  214.  
  215.             TEST(,,,VADTCPIP&machinename%nnnn:*)
  216.  
  217.       where machinename is the ip address of your workstation and nnnn is the 
  218.       same TCP/IP port number as specified on the idbugd command. If omitted, 
  219.       the port number defaults to 8000. The details of how to start your 
  220.       program with the TEST option vary depending on the OS/390 environment the 
  221.       program runs in. The environments supported are batch (JES), TSO, CICS, 
  222.       and BTS. For more information on specific environments, or on what you 
  223.       can specify with the TEST option, see the Debug Tool User's Guide and 
  224.       Reference. 
  225.  
  226.  Related Information 
  227.  
  228.  Reference 
  229.  DEBUG_LANG Environment Variable 
  230.  
  231.  
  232. ΓòÉΓòÉΓòÉ 1.1.3.3. Use the Source Window ΓòÉΓòÉΓòÉ
  233.  
  234. Use the Source window to view the progress of your program as you debug it. The 
  235. Source window displays your program's compiler listing,  and updates the 
  236. display after each step or run command. You can set or clear breakpoints, add 
  237. variables or expressions to a monitor, and more. See the following tasks 
  238. related to using the Source window: 
  239.  
  240.      View different compiler listings 
  241.  
  242.      Set and clear breakpoints 
  243.  
  244.      Add expressions and variables to a monitor 
  245.  
  246.      Run your program 
  247.  
  248.      Step through your program 
  249.  
  250.      Open other windows and monitors 
  251.  
  252.  
  253. ΓòÉΓòÉΓòÉ 1.1.3.3.1. View Different Compiler Listings ΓòÉΓòÉΓòÉ
  254.  
  255. When you start the debugger, a single Source window appears. 
  256.  
  257. If your executable file was linked from several object files, you can open a 
  258. Source window for each object, and view several compiler listings at once: 
  259.  
  260.    1. Raise the Session Control window by selecting it from the Windows menu of 
  261.       any main debugger window 
  262.  
  263.    2. Click on the + icon beside the name of the executable, to open a list of 
  264.       object files 
  265.  
  266.    3. Double-click on the object file you want to view. If that object file is 
  267.       not already in a Source window, a new Source window opens containing the 
  268.       compiler listing for that object file. 
  269.  
  270.  You can also open new Source windows from the File menu of the Session Control 
  271.  window or of an existing Source window: 
  272.  
  273.    1. Select File->Open new source 
  274.  
  275.    2. Enter the name of the compiler listing. This compiler listing must be a 
  276.       part of the application you are currently debugging. 
  277.  
  278.    3. Click on OK. A Source window for the new compiler listing opens, if the 
  279.       debugger is able to locate the file. 
  280.  
  281.  Related Information 
  282.  
  283.  Procedures 
  284.  
  285.  Open Other Debugger Windows 
  286.  Use the Source Window 
  287.  
  288.  Reference 
  289.  Problems Getting a Source View 
  290.  
  291.  
  292. ΓòÉΓòÉΓòÉ 1.1.3.4. Open Other Debugger Windows ΓòÉΓòÉΓòÉ
  293.  
  294. You can open other Source windows from a Source window or from the Session 
  295. Control window. 
  296.  
  297. To open a monitor window from a Source window, click on a monitor toolbar 
  298. button or select the desired monitor from the Monitors menu. You can also open 
  299. a monitor window by adding a variable to that monitor, in one of the following 
  300. ways: 
  301.  
  302.      Click the right mouse button on the variable in the Source window, then 
  303.       select the appropriate monitor from the popup menu. 
  304.  
  305.      Double-click the left mouse button on the variable, to add the variable 
  306.       to the Program monitor. 
  307.  
  308.      Click the right mouse button on the variable, press Ctrl+M, and select 
  309.       the desired monitor from the Monitor Expression dialog. 
  310.  
  311.  To open the Breakpoints list window, select Breakpoints->List from the menu 
  312.  bar, or press Ctrl+X. 
  313.  
  314.  To change the focus from a Source window to another window that is already 
  315.  opened (or minimized), select that window from the Windows menu. 
  316.  
  317.  Related Information 
  318.  
  319.  Procedures 
  320.  View Different Compiler Listings 
  321.  Add Expressions and Variables to a Monitor 
  322.  
  323.  
  324. ΓòÉΓòÉΓòÉ 1.2. Start or Stop Debugging a Program ΓòÉΓòÉΓòÉ
  325.  
  326. To start or stop debugging a program, you will need to know how to perform some 
  327. of the following subtasks: 
  328.  
  329.      Invoke the debugger 
  330.  
  331.      Set breakpoints in your program 
  332.  
  333.      Step through or run a program 
  334.  
  335.  
  336. ΓòÉΓòÉΓòÉ 1.2.1. Start Debugging a Compile Unit from a Load Occurrence Breakpoint Dialog ΓòÉΓòÉΓòÉ
  337.  
  338. You can set a breakpoint in a compile unit that causes execution to stop when 
  339. the compile unit is first loaded by your application. The compile unit is 
  340. generally loaded by your application the first time an entry point contained 
  341. within the compile unit is called by another entry point within your 
  342. application.For COBOL, this applies to programs that were compiled using the 
  343. DYNAM compiler option or that contain CALL identifier statements. This type of 
  344. breakpoint is called a load occurrence breakpoint. 
  345.  
  346. To set a load occurrence breakpoint, do the following: 
  347.  
  348.    1. From the Breakpoints menu of the Session Control or Source windows, or 
  349.       from the Set menu of the Breakpoints List window, choose Set load 
  350.       occurrence breakpoint. 
  351.  
  352.    2. In the Load Occurrence Breakpoint dialog, enter the name of the compile 
  353.       unit you want to set the breakpoint in. 
  354.  
  355.    3. Click on OK to set the breakpoint and close the Load Occurrence 
  356.       Breakpoint dialog, or click on Set if you want to set more load 
  357.       occurrence breakpoints. 
  358.  
  359.  When you run your application, execution will stop when the compile unit is 
  360.  first loaded. 
  361.  
  362.  
  363. ΓòÉΓòÉΓòÉ 1.2.2. Start Debugging a Compile Unit from the Breakpoints List Window ΓòÉΓòÉΓòÉ
  364.  
  365. You can start debugging a compile unit from the Breakpoints List window by 
  366. setting a line breakpoint in that compile unit, then issuing the Run command. 
  367. You can only do this if the compile unit you want to place the breakpoint in 
  368. was compiled with debug information. To set a line breakpoint in a compile unit 
  369. and then start debugging the compile unit, do the following: 
  370.  
  371.    1. Open a Breakpoints List window 
  372.  
  373.    2. From the Set menu choose Set line 
  374.  
  375.    3. In the Line Breakpoint dialog, from the Source pulldown list choose the 
  376.       compile unit containing the code you want to debug. 
  377.  
  378.    4. In the Line entry field, enter the line number within the compiler 
  379.       listing you want to place a breakpoint in. 
  380.  
  381.    5. Click on the Defer breakpoint check box. 
  382.  
  383.    6. Issue the Run command by pressing Ctrl+R. 
  384.  
  385.  You can also use an entry breakpoint instead of a line breakpoint to 
  386.  accomplish the same task. Follow the above instructions, but choose Set -> Set 
  387.  entry instead of Set -> Set line, and select the desired entry point name from 
  388.  the pulldown list in the breakpoint dialog. 
  389.  
  390.  Related Information 
  391.  
  392.  Procedures 
  393.  Set a Deferred Breakpoint 
  394.  Set a Line Breakpoint 
  395.  
  396.  
  397. ΓòÉΓòÉΓòÉ 1.2.3. Start Debugging a Compile Unit from the Session Control Window ΓòÉΓòÉΓòÉ
  398.  
  399. You can use the Session Control window to access a Source window containing the 
  400. compiler listing for a compile unit you want to debug. 
  401.  
  402.    1. In the Session Control window, expand the Components Pane entry for the 
  403.       compile unit you want to debug. 
  404.  
  405.    2. Continue expanding appropriate items in the list until you find the entry 
  406.       you want to debug. If the entry is not listed, you may not have compiled 
  407.       the program that contains it with debug information. 
  408.  
  409.    3. Double-click on the compiler listing or entry point to raise a Source 
  410.       window for it. 
  411.  
  412.    4. Set a line, entry, or other breakpoint at an appropriate point in that 
  413.       source window. 
  414.  
  415.    5. Run your program. 
  416.  
  417.  Related Information 
  418.  
  419.  Procedures 
  420.  Run a Program 
  421.  Set Breakpoints 
  422.  
  423.  
  424. ΓòÉΓòÉΓòÉ 1.3. Set Breakpoints in Your Program ΓòÉΓòÉΓòÉ
  425.  
  426. You can set breakpoints in your program from a number of windows. See the 
  427. following subtasks: 
  428.  
  429.      Set breakpoints from the Breakpoints List window 
  430.  
  431.      Set breakpoints from a Source window 
  432.  
  433.      Set entry breakpoints from the Session Control window 
  434.  
  435.  
  436. ΓòÉΓòÉΓòÉ 1.3.1. Set Breakpoints in the Breakpoints List Window ΓòÉΓòÉΓòÉ
  437.  
  438. To set breakpoints from the Breakpoints List window, open the window (if it is 
  439. not already open), using one of the following methods 
  440.  
  441.    1. Type Ctrl+X from any main debugger window or monitor 
  442.  
  443.    2. Select List from the Breakpoints menu of the Source window 
  444.  
  445.    3. Click on the  button in the Source Window 
  446.  
  447.    4. Position the cursor in the prefix area, click mouse button 2, and select 
  448.       List from the popup menu. 
  449.  
  450.  Then do the following: 
  451.  
  452.    1. From the Breakpoints List window, select the type of breakpoint you want 
  453.       to set from the Set menu. 
  454.  
  455.    2. Enter the information for the breakpoint in the dialog, and click on OK 
  456.       or press the Enter key. 
  457.  
  458.  You can set breakpoints from the Source window and the Session Control window 
  459.  as well. Unless you want to set multiple breakpoints with the same nonstandard 
  460.  optional parameters, you may find it easier to use the Source window for 
  461.  setting line breakpoints, and the Session Control window for setting entry 
  462.  breakpoints. Storage change breakpoints and load occurrence breakpoints can be 
  463.  set from any of the three windows. 
  464.  
  465.  Related Information 
  466.  
  467.  Procedures 
  468.  Set Multiple Breakpoints 
  469.  Set and Clear Breakpoints from a Source Window 
  470.  Set Entry Breakpoints from the Session Control Window 
  471.  
  472.  Concepts 
  473.  Types of Breakpoints 
  474.  
  475.  
  476. ΓòÉΓòÉΓòÉ 1.3.2. Set and Clear Breakpoints from a Source Window ΓòÉΓòÉΓòÉ
  477.  
  478. You can set and clear breakpoints from a Source window in the following ways: 
  479.  
  480.      Toggle a breakpoint on or off for a line. There are three ways to do 
  481.       this: 
  482.  
  483.         -  Double-click on the prefix area for that line 
  484.  
  485.         -  Highlight the line using either the up and down cursor keys or the 
  486.            mouse, then press the space bar 
  487.  
  488.         -  Highlight the line, then select Breakpoints->Toggle at current line. 
  489.  
  490.      From the prefix area, or while the pointer is over an entry point name, 
  491.       click on mouse button 2 [note] and select a breakpoint option from the 
  492.       popup menu 
  493.  
  494.      Open a Breakpoints List window, and set or clear the breakpoint from 
  495.       there 
  496.  
  497.      Select a type of breakpoint from the Breakpoints menu, and enter the 
  498.       appropriate information. 
  499.  
  500.  Note: Clearing a breakpoint deletes it, meaning that you must recreate it if 
  501.  you want to use it again. If you plan to use a breakpoint again later, it is 
  502.  better to disable the breakpoint instead. 
  503.  
  504.  Related Information 
  505.  
  506.  Procedures 
  507.  Enable and Disable Breakpoints 
  508.  
  509.  
  510. ΓòÉΓòÉΓòÉ 1.3.3. Set Entry Breakpoints from the Session Control Window ΓòÉΓòÉΓòÉ
  511.  
  512. You can set entry breakpoints in the Session Control window by either of the 
  513. following methods: 
  514.  
  515.      Go to the Breakpoints menu and choose Set entry breakpoint 
  516.  
  517.      Select an entry point in the Components pane, click mouse button 2 to 
  518.       bring up a popup menu, and choose Set entry breakpoint. 
  519.  
  520.  Related Information 
  521.  
  522.  Procedures 
  523.  Set Breakpoints 
  524.  
  525.  
  526. ΓòÉΓòÉΓòÉ 1.3.4. Set a Deferred Breakpoint ΓòÉΓòÉΓòÉ
  527.  
  528. A deferred breakpoint is a breakpoint set in a compile unit that is not 
  529. currently loaded. 
  530.  
  531. To set a deferred line breakpoint, do the following: 
  532.  
  533.    1. Open a Line breakpoint dialog in one of the following ways: 
  534.  
  535.           From a Source window or the Session Control window, select 
  536.            Breakpoints->Set line 
  537.  
  538.           From a Breakpoint List window, select Set->Set line. 
  539.  
  540.    2. Enter an asterisk (*) in the Executable field, or the name of the load 
  541.       module if the compile unit is not in the main load module. 
  542.  
  543.    3. Specify the compile unit name in the Include File field. 
  544.  
  545.    4. Enter the line number where you want the breakpoint set 
  546.  
  547.    5. Specify any additional information you wish in the Optional Parameters 
  548.       group box. 
  549.  
  550.    6. Check the Defer breakpoint check box. 
  551.  
  552.    7. Click on OK or press Enter. 
  553.  
  554.  You can set entry breakpoints in a similar manner. 
  555.  
  556.  Related Information 
  557.  
  558.  Procedures 
  559.  Start Debugging a Compile Unit from a Load Occurrence Breakpoint Dialog 
  560.  Start Debugging a Compile Unit from the Session Control Window 
  561.  
  562.  
  563. ΓòÉΓòÉΓòÉ 1.4. Run or Step Through a Program ΓòÉΓòÉΓòÉ
  564.  
  565. You can use debugger toolbar buttons, accelerator keys, and menu commands to 
  566. accomplish the following subtasks: 
  567.  
  568.      Run your program 
  569.  
  570.      Step through your program 
  571.  
  572.  
  573. ΓòÉΓòÉΓòÉ 1.4.1. Run a Program ΓòÉΓòÉΓòÉ
  574.  
  575. After you have set appropriate breakpoints in your program, you are ready to 
  576. issue the Run command. The debugger runs the program from the current line to 
  577. the first enabled breakpoint it encounters and a Source window displays the 
  578. current line. You can then examine the contents of storage, variables, the call 
  579. stack, or processor registers; step through your program; or issue the Run 
  580. command again to run to the next enabled breakpoint. 
  581.  
  582. Related Information 
  583.  
  584. Procedures 
  585. Set Breakpoints 
  586. Step through a Program 
  587. View Variables, Memory, Registers, and the Stack 
  588.  
  589.  
  590. ΓòÉΓòÉΓòÉ 1.4.2. Step through a Program ΓòÉΓòÉΓòÉ
  591.  
  592. Use the Step Over and Step Into commands to step through your program one 
  593. statement at a time. For statements that do not contain  a subroutine call or 
  594. method invocation,  these commands work in exactly the same way. The current 
  595. statement is executed. Then, if the next statement is on a different line, the 
  596. debugger moves the current line in the current Source window to the next 
  597. executable line (comment and blank lines are skipped). If the next statement is 
  598. on the same line, the debugger does not reposition the current line. 
  599.  
  600. The Step Over command works differently from the Step Into command, for 
  601. statements that call subroutines and invoke methods: 
  602.  
  603.      When you issue a Step Over command, the debugger runs through  the called 
  604.       routine or function, and execution stops at the next line in the Source 
  605.       window you issued the Step Over command from. (If the debugger encounters 
  606.       an enabled breakpoint in a called routine, execution stops at that 
  607.       breakpoint.) 
  608.  
  609.      When you issue a Step Into command, the debugger stops at the next 
  610.       statement for which debug information is available. This statement is the 
  611.       first statement of the called routine, if that routine was compiled with 
  612.       debug information. If not, it is the first statement in another routine 
  613.       further down the call, if a routine within the call has debug 
  614.       information. If neither the called routine nor any routine it calls was 
  615.       compiled with debug information, the debugger stops at the statement 
  616.       following the call. 
  617.  
  618.  When you are inside a routine and want to return to the code that issued the 
  619.  call, you can use the Step Return command. If the debugger can determine a 
  620.  return address, it runs the program up to but excluding the statement 
  621.  immediately after the one containing the call. 
  622.  
  623.  
  624. ΓòÉΓòÉΓòÉ 1.4.3. Terminate a Debug Session ΓòÉΓòÉΓòÉ
  625.  
  626. To terminate a debug session and exit the debugger, do one of the following: 
  627.  
  628.      Select File->Close debugger from any debugger window that has a File 
  629.       menu. 
  630.  
  631.      Press F3 from any debugger window that is not a dialog 
  632.  
  633.      Switch to the Session Control window and use your windowing system's 
  634.       technique for closing that window. For example, OS/2 and Windows 
  635.       operating systems, double-click on the upper left corner of the window or 
  636.       press Alt+F4. 
  637.  
  638.  
  639. ΓòÉΓòÉΓòÉ 1.5. Debug Variable Contents and Memory ΓòÉΓòÉΓòÉ
  640.  
  641. Choose from among the following subtasks: 
  642.  
  643.      Change the contents of storage 
  644.  
  645.      View a location in storage 
  646.  
  647.      Add expressions and variables to a monitor 
  648.  
  649.      Open a new storage monitor 
  650.  
  651.      View variables, memory, registers, and the stack 
  652.  
  653.  
  654. ΓòÉΓòÉΓòÉ 1.5.1. Change the Contents of Storage, Variables, and Registers ΓòÉΓòÉΓòÉ
  655.  
  656. To change the contents of storage in a Storage monitor, do the following: 
  657.  
  658.    1. Raise or open a Storage monitor (select Storage monitor from the Monitors 
  659.       menu of the Source or Session Control windows, or press Ctrl+G, or click 
  660.       on the  button) 
  661.  
  662.    2. If the address whose contents you want to change is not shown, use the 
  663.       PageUp and PageDown keys to scroll to that address, or click on an entry 
  664.       in the address column and enter a new address 
  665.  
  666.    3. Double-click on an entry in a data column in the monitor (or click on the 
  667.       entry and press Enter) 
  668.  
  669.    4. Type a value that is valid for the shown representation 
  670.  
  671.    5. Press Enter. 
  672.  
  673.  To change the contents of a variable in a Local Variables, Program, Private, 
  674.  or Popup monitor, or a register in the Registers monitor, do the following: 
  675.  
  676.    1. Raise or open the appropriate monitor (from the Monitors menu of a Source 
  677.       window or the Session Control window, or using the appropriate 
  678.       accelerator key or toolbar button) 
  679.  
  680.    2. Double-click on the entry field that shows the contents of the variable 
  681.       or register you want to change 
  682.  
  683.    3. Type a value that is valid for the current representation of that 
  684.       variable or register 
  685.  
  686.    4. Press Enter. 
  687.  
  688.  Related Information 
  689.  
  690.  Reference 
  691.  Values that Are Valid for the Current Representation 
  692.  
  693.  
  694. ΓòÉΓòÉΓòÉ 1.5.1.1. Use the Registers Monitor ΓòÉΓòÉΓòÉ
  695.  
  696. Here are some of the common tasks you can perform from the Registers monitor: 
  697.  
  698.      Change the contents of registers 
  699.  
  700.      Change what kinds of registers are displayed 
  701.  
  702.  
  703. ΓòÉΓòÉΓòÉ 1.5.1.1.1. View the Contents of Registers ΓòÉΓòÉΓòÉ
  704.  
  705. You may want to view the contents of a single register, or of many registers at 
  706. once. 
  707.  
  708. View Contents of a Single Register 
  709.  
  710. If you only want to view the contents of a small number of registers, enter the 
  711. names of those registers as expressions in a Monitor Expression dialog and 
  712. select what monitor you want them to appear in. For example, if you want to 
  713. monitor the EAX register on an Intel machine, do the following: 
  714.  
  715.    1. From a Source window, select Monitors->Monitor expression from the menu 
  716.       bar, or press the Ctrl+M accelerator key, to open a Monitor expression 
  717.       dialog. 
  718.  
  719.    2. Enter the register name as the expression (EAX) 
  720.  
  721.    3. Choose what monitor you want the expression to appear in. Do not choose 
  722.       the storage monitor. 
  723.  
  724.    4. Click on the OK button or press Enter. 
  725.  
  726.  The register is displayed in the monitor you selected. Note that if the name 
  727.  of the register corresponds to the name of a variable in your program, the 
  728.  variable may be displayed instead of the register depending on the monitor you 
  729.  choose, the current scope, and the scope of the variable. 
  730.  
  731.  View Contents of Many Registers at Once 
  732.  
  733.  If you want to open a monitor showing the contents of all or most processor 
  734.  registers, do the following: 
  735.  
  736.    1. Raise a Source window or the Session Control window 
  737.  
  738.    2. Select Monitors->Registers or click on the  pushbutton. 
  739.  
  740.    3. A Registers Monitor displays the contents of processor registers for the 
  741.       current thread. 
  742.  
  743.  Related Information 
  744.  
  745.  Procedures 
  746.  Add Expressions and Variables to a Monitor 
  747.  Change the Contents of Registers 
  748.  Change Which Registers Are Displayed 
  749.  Use the Registers Monitor 
  750.  
  751.  Concepts 
  752.  Introduction to the Registers Monitor 
  753.  
  754.  
  755. ΓòÉΓòÉΓòÉ 1.5.1.1.2. Change Which Registers Are Displayed ΓòÉΓòÉΓòÉ
  756.  
  757. You can choose what groups of registers are displayed in the Registers monitor 
  758. by selecting Options->Display style. In the dialog that appears, select what 
  759. items you want to display. 
  760.  
  761. Related Information 
  762.  
  763. Concepts 
  764. Introduction to the Registers Monitor 
  765.  
  766. Procedures 
  767. Change the Contents of Registers 
  768. View the Contents of Registers 
  769.  
  770. Reference 
  771. Registers Monitor Split Bars 
  772.  
  773.  
  774. ΓòÉΓòÉΓòÉ 1.5.1.1.3. Change the Contents of Registers ΓòÉΓòÉΓòÉ
  775.  
  776. Caution: Changing the contents of registers that affect program flow (for 
  777. example, registers used to manipulate the stack) can destabilize the program 
  778. you are debugging and may cause it to terminate abnormally. 
  779.  
  780. You can change the contents of most registers in the Registers monitor as 
  781. follows: 
  782.  
  783.    1. Either double-click on the current value of the register or move the 
  784.       cursor to that register and press Enter. 
  785.  
  786.    2. Type in a new value, and press Enter. 
  787.  
  788.  If updating of the register is allowed and your entry can be evaluated to a 
  789.  value the register supports, the register is updated. 
  790.  
  791.  Note: On OS/390, you cannot change the contents of the IAR (Instruction 
  792.  Address Register) register, which displays the currently executing 
  793.  instruction's address. 
  794.  
  795.  Related Information 
  796.  
  797.  Reference 
  798.  Valid Entries for Registers 
  799.  Expressions Supported 
  800.  
  801.  
  802. ΓòÉΓòÉΓòÉ 1.5.2. Add Expressions and Variables to a Monitor ΓòÉΓòÉΓòÉ
  803.  
  804. From the Source window, you can add a variable or expression to a monitor, so 
  805. that you can keep track of how the variable's contents or the expression's 
  806. value changes during program execution. You can use any of the following 
  807. methods: 
  808.  
  809.      Position the pointer over the variable, click mouse button 2 [note], and 
  810.       select the monitor you want from the popup menu. 
  811.  
  812.      Highlight the variable or expression, then select Monitors->Monitor 
  813.       expression. A dialog opens containing the variable or expression; select 
  814.       a monitor from there. 
  815.  
  816.      Select Monitors->Monitor expression. In the dialog, enter the variable or 
  817.       expression and choose a monitor. 
  818.  
  819.      Double-click on a variable to add it to the Program monitor. 
  820.  
  821.  Related Information 
  822.  
  823.  Reference 
  824.  Expressions Supported 
  825.  
  826.  
  827. ΓòÉΓòÉΓòÉ 1.5.3. Open a New Storage Monitor ΓòÉΓòÉΓòÉ
  828.  
  829. You can bring up a new Storage monitor in a number of ways: 
  830.  
  831.      Click on the  toolbar button from a Source window or the Session Control 
  832.       window. 
  833.  
  834.      Select Monitors->Storage from a Source window or the Session Control 
  835.       window. 
  836.  
  837.      Highlight an expression in a Source window, click mouse button 2 [note], 
  838.       and select Add to storage monitor from the popup menu. 
  839.  
  840.      Select Monitors->Monitor expression from a Source window or the Session 
  841.       Control window, enter the expression you want to monitor, and select the 
  842.       Storage monitor radio button. 
  843.  
  844.  A new storage monitor opens each time you do one of the above, even if you 
  845.  already opened another storage monitor for the same Source window, variable or 
  846.  expression. 
  847.  
  848.  Related Information 
  849.  
  850.  Procedures 
  851.  Open Other Debugger Windows 
  852.  Change the Storage Monitor Address Range 
  853.  
  854.  
  855. ΓòÉΓòÉΓòÉ 1.5.4. View Variables, Memory, Registers, and the Stack ΓòÉΓòÉΓòÉ
  856.  
  857. Follow one or more of the tasks below: 
  858.  
  859.      Add a variable or expression to a monitor so you can view or change its 
  860.       contents 
  861.  
  862.      View variable contents 
  863.  
  864.      View storage contents 
  865.  
  866.      View the contents of registers 
  867.  
  868.      View the contents of the call stack 
  869.  
  870.  
  871. ΓòÉΓòÉΓòÉ 1.5.4.1. View Variable Contents ΓòÉΓòÉΓòÉ
  872.  
  873. To view the contents of a variable you have already added to a monitor, do the 
  874. following: 
  875.  
  876.    1. Raise a window that contains a Windows menu (for example, a Source window 
  877.       or the Session Control window) 
  878.  
  879.    2. Select the monitor you added the variable to from that Windows menu. 
  880.  
  881.    3. If necessary, use the scroll bars or PageUp and PageDown keys to scroll 
  882.       the monitor until the variable is visible. 
  883.  
  884.    4. If necessary, change the representation of the variable: select its 
  885.       contents, click on mouse button 2, and select Next representation from 
  886.       the popup menu. 
  887.  
  888.  To view the contents of a variable you have not yet added to a monitor, do one 
  889.  of the following: 
  890.  
  891.      If the variable is in scope in the current Source window, select 
  892.       Monitors->Local variables from the menu bar of the Source window to open 
  893.       a Local variables monitor. This monitor should contain all local 
  894.       variables that are currently in scope. If the value of the variable you 
  895.       are looking for is blank, invalid, or incorrect, the variable may not 
  896.       currently be in scope. 
  897.  
  898.      Add the variable to a monitor (see under Procedures below). 
  899.  
  900.  Related Information 
  901.  
  902.  Procedures 
  903.  Add Expressions and Variables to a Monitor 
  904.  Debug Variable Contents and Memory 
  905.  
  906.  
  907. ΓòÉΓòÉΓòÉ 1.5.4.2. View a Location in Storage ΓòÉΓòÉΓòÉ
  908.  
  909. To view a particular location in storage (for example, the storage used by a 
  910. variable), either select Options->Monitor expression from the Storage monitor, 
  911. or open a new Storage monitor from a Source window or the Session Control 
  912. window, and specify an expression to monitor. See the Reference section below 
  913. for information on what types of expressions the debugger supports. 
  914.  
  915. COBOL: If a variable whose type is other than POINTER is specified, the Storage 
  916. monitor opens at the address of that variable. For variables of type POINTER, 
  917. the storage monitor opens at the address contained in the variable. 
  918.  
  919. C++: To view the storage for a class object or a variable, specify the address 
  920. of the object or variable name by preceding the name with an ampersand (&). 
  921.  
  922. Related Information 
  923.  
  924. Reference 
  925. Expressions Supported 
  926.  
  927. Procedures 
  928. Change the Contents of Storage, Variables, and Registers 
  929. Add Expressions and Variables to a Monitor 
  930. Change the Representation of Storage 
  931.  
  932.  
  933. ΓòÉΓòÉΓòÉ 1.5.4.2.1. Change the Storage Monitor Address Range ΓòÉΓòÉΓòÉ
  934.  
  935. You can change the address range you want displayed in a Storage monitor to a 
  936. specified address. Double-click on an entry in one of the address columns (for 
  937. example, the 'Flat' column), or move the cursor to that entry and press Enter; 
  938. then enter a new address. You can also scroll through the range using the 
  939. cursor keys (including Page Up and Page Down), or using the scrollbar. 
  940.  
  941. If the debugger cannot determine the contents of storage at a particular 
  942. location, it displays the contents as a series of question marks (?). This can 
  943. occur when you display storage that your program does not own or when the 
  944. address range does not point to a valid storage area. 
  945.  
  946. If you want to view the storage associated with a different variable, adding 
  947. that variable to a new Storage monitor is easier because the debugger 
  948. determines the variable's address in storage for you. You may want to close the 
  949. old Storage monitor first if its contents are no longer needed. 
  950.  
  951. Related Information 
  952.  
  953. Procedures 
  954. Add Expressions and Variables to a Monitor 
  955. Change the Contents of Storage, Variables, and Registers 
  956. Change the Representation of Storage 
  957. Open a New Storage Monitor 
  958. View a Location in Storage 
  959.  
  960. Concepts 
  961. Introduction to the Storage Monitor 
  962.  
  963.  
  964. ΓòÉΓòÉΓòÉ 1.5.4.2.2. Change the Representation of Storage ΓòÉΓòÉΓòÉ
  965.  
  966. To change the representation of storage in the Storage monitor, do one of the 
  967. following: 
  968.  
  969.      Select a representation from Options->Display style, OR 
  970.  
  971.      Click on the appropriate display style toolbar button: . 
  972.  
  973.  The change in representation does not affect any other open storage monitors, 
  974.  only the one in which you make the change. 
  975.  
  976.  Related Information 
  977.  
  978.  Procedures 
  979.  Change the Contents of Storage, Variables, and Registers 
  980.  Change the Storage Monitor Address Range 
  981.  
  982.  
  983. ΓòÉΓòÉΓòÉ 1.5.4.3. View the Contents of the Call Stack ΓòÉΓòÉΓòÉ
  984.  
  985. You can view information for the active routines on a thread's stack. A routine 
  986. is on the stack from the time it is called until after it returns. 
  987.  
  988. To view stack information for routines, open or raise a Call Stack window in 
  989. one of the following ways: 
  990.  
  991.      If a Call Stack monitor is already open, access it from the Windows menu 
  992.       of any debugger window that contains this menu. 
  993.  
  994.      Select Monitors->Call stack from a Source or Session Control window, or 
  995.       press the Ctrl+K accelerator key, or click on the  toolbar button. 
  996.  
  997.  Related Information 
  998.  
  999.  Procedures 
  1000.  Use the Call Stack Window 
  1001.  
  1002.  Concepts 
  1003.  Introduction to the Call Stack Window 
  1004.  
  1005.  
  1006. ΓòÉΓòÉΓòÉ 1.5.4.4. Use the Call Stack Window ΓòÉΓòÉΓòÉ
  1007.  
  1008. You can display routines in the Call Stack window in two orders: the order in 
  1009. which they were called, and the order in which they will return (in other 
  1010. words, with the most recently called routine on top or on the bottom). To 
  1011. change the order, click on the Growth Direction button () or select Display 
  1012. style and change the setting of the Growth direction group box. 
  1013.  
  1014. To view the listing for a routine, position the pointer over the line for that 
  1015. routine, and do one of the following: 
  1016.  
  1017.      Select the line and press Enter 
  1018.  
  1019.      Double-click with mouse button 1 
  1020.  
  1021.      Click mouse button 2 [note] and select View from the popup menu 
  1022.  
  1023.  A Source window appears containing the compiler listing for the routine. If 
  1024.  this routine is the current routine, the current execution point is 
  1025.  highlighted. Otherwise, the line that called the next innermost routine on the 
  1026.  call stack is highlighted. 
  1027.  
  1028.  You can select what type of information is displayed in the Call Stack window 
  1029.  by changing the display style. You can choose to display the program unit 
  1030.  name, call statement number, compilation date/time, and other information. 
  1031.  
  1032.  Related Information 
  1033.  
  1034.  Concepts 
  1035.  Introduction to the Call Stack Window 
  1036.  
  1037.  
  1038. ΓòÉΓòÉΓòÉ 1.6. Debug Logic and Program Flow ΓòÉΓòÉΓòÉ
  1039.  
  1040. To debug logic and program flow, you may need to perform the following 
  1041. subtasks: 
  1042.  
  1043.      Set, clear, enable, and disable breakpoints 
  1044.  
  1045.      Step through, run, or halt a program 
  1046.  
  1047.      Skip over sections of code using Jump to location commands 
  1048.  
  1049.      View the contents of variables, memory, registers, and the stack. 
  1050.  
  1051.  
  1052. ΓòÉΓòÉΓòÉ 1.6.1. Set, Clear, Enable, and Disable Breakpoints ΓòÉΓòÉΓòÉ
  1053.  
  1054. See the following subtasks: 
  1055.  
  1056.      Set breakpoints 
  1057.  
  1058.      Clear breakpoints 
  1059.  
  1060.      Enable and disable breakpoints 
  1061.  
  1062.      Modify breakpoint characteristics 
  1063.  
  1064.  
  1065. ΓòÉΓòÉΓòÉ 1.6.1.1. Set Breakpoints ΓòÉΓòÉΓòÉ
  1066.  
  1067. You can set breakpoints from the following windows: 
  1068.  
  1069.      Breakpoints List window 
  1070.  
  1071.      Source window 
  1072.  
  1073.      Session Control window (entry breakpoints only) 
  1074.  
  1075.  Related Information 
  1076.  
  1077.  Procedures 
  1078.  Set Multiple Breakpoints 
  1079.  
  1080.  Concepts 
  1081.  Types of Breakpoints 
  1082.  Introduction to the Breakpoints List Window 
  1083.  
  1084.  
  1085. ΓòÉΓòÉΓòÉ 1.6.1.1.1. Set a Line Breakpoint ΓòÉΓòÉΓòÉ
  1086.  
  1087. You can set a line breakpoint from a Source window or from the Breakpoints List 
  1088. window. 
  1089.  
  1090. There are three ways to set a line breakpoint from the Source window: 
  1091.  
  1092.    1. Make sure the appropriate line is visible in the window (use the scroll 
  1093.       bar or cursor keys to locate it), then double-click on the line number in 
  1094.       the prefix area of the line. 
  1095.  
  1096.    2. Type the line number in the source window. A Line number dialog opens up. 
  1097.       The line number you entered is placed in the dialog entry field. Click on 
  1098.       the the Breakpoint button. 
  1099.  
  1100.    3. Select Breakpoints->Set line from the menu bar, and fill in appropriate 
  1101.       fields in the resulting Line breakpoint dialog box as described below for 
  1102.       the Breakpoints List window. 
  1103.  
  1104.  To set a line breakpoint in a Breakpoints List window, do the following: 
  1105.  
  1106.    1. Select Set->Line from the menu bar. 
  1107.  
  1108.    2. In the resulting Line breakpoint dialog box, enter the line number and 
  1109.       compile unit you want to place the breakpoint in. For TSO, enter an 
  1110.       asterisk (*) in the Executable field. For CICS, enter the name of the 
  1111.       load module. 
  1112.  
  1113.    3. Enter other conditions for your breakpoint, such as the frequency, if you 
  1114.       like. 
  1115.  
  1116.  Related Information 
  1117.  
  1118.  Procedures 
  1119.  Set Breakpoints 
  1120.  Set Breakpoints in the Breakpoints List Window 
  1121.  Set and Clear Breakpoints from a Source Window 
  1122.  
  1123.  Concepts 
  1124.  Types of Breakpoints 
  1125.  
  1126.  
  1127. ΓòÉΓòÉΓòÉ 1.6.1.1.2. Set Multiple Breakpoints ΓòÉΓòÉΓòÉ
  1128.  
  1129. You can set several breakpoints with the same optional parameters from a Type 
  1130. Breakpoint dialog, where Type corresponds to the type of breakpoint (Line, 
  1131. Entry, Storage change, Load occurrence). To do this, follow these steps: 
  1132.  
  1133.    1. From the breakpoint dialog, enter the information for the first 
  1134.       breakpoint. Change any fields in the Optional Parameters section of the 
  1135.       window, as desired. 
  1136.  
  1137.    2. Click on Set. The settings are saved for the current breakpoint. 
  1138.  
  1139.    3. For each additional breakpoint, enter only the changed information (for 
  1140.       example, the new line number, new entry point name, new address), and 
  1141.       again click on Set. 
  1142.  
  1143.    4. After you have set the last breakpoint, click on Cancel to dismiss the 
  1144.       dialog. 
  1145.  
  1146.  Related Information 
  1147.  
  1148.  Procedures 
  1149.  Set Breakpoints 
  1150.  
  1151.  
  1152. ΓòÉΓòÉΓòÉ 1.6.1.2. Delete Breakpoints ΓòÉΓòÉΓòÉ
  1153.  
  1154. To delete all breakpoints at once, select Edit->Delete all from the Breakpoints 
  1155. List window. To delete individual breakpoints, position the pointer over the 
  1156. desired breakpoint, click on mouse button 2, and select Delete. 
  1157.  
  1158. When you delete a breakpoint, all information about it is lost. If you want to 
  1159. temporarily deactivate a breakpoint and activate it later, you should disable 
  1160. the breakpoint instead. 
  1161.  
  1162. Related Information 
  1163.  
  1164. Procedures 
  1165. Enable and Disable Breakpoints 
  1166.  
  1167.  
  1168. ΓòÉΓòÉΓòÉ 1.6.1.2.1. Delete All Breakpoints ΓòÉΓòÉΓòÉ
  1169.  
  1170. You can delete all breakpoints for your program from the Breakpoints List 
  1171. window in three ways: 
  1172.  
  1173.      Click on the  toolbar button 
  1174.  
  1175.      Select Delete all from the Edit menu 
  1176.  
  1177.      Position the pointer on a breakpoint in the list, click mouse button 2, 
  1178.       and select Delete all from the popup menu. 
  1179.  
  1180.  Once you have deleted all breakpoints, all information on them is lost. If you 
  1181.  want to temporarily prevent all breakpoints from stopping execution, but you 
  1182.  may need to activate them later, disable them instead, by selecting 
  1183.  Edit->Disable all. 
  1184.  
  1185.  Related Information 
  1186.  
  1187.  Procedures 
  1188.  Enable and Disable Breakpoints 
  1189.  
  1190.  
  1191. ΓòÉΓòÉΓòÉ 1.6.1.3. Enable and Disable Breakpoints ΓòÉΓòÉΓòÉ
  1192.  
  1193. You can disable a breakpoint so that it does not stop execution, and then later 
  1194. enable it again. The advantage of disabling a breakpoint instead of deleting it 
  1195. is that it is easier to enable a breakpoint than to recreate it. The debugger 
  1196. lets you: 
  1197.  
  1198.      Enable breakpoints one at a time 
  1199.  
  1200.      Disable breakpoints one at a time 
  1201.  
  1202.      Enable all breakpoints at once 
  1203.  
  1204.      Disable all breakpoints at once. 
  1205.  
  1206.  Related Information 
  1207.  
  1208.  Procedures 
  1209.  Delete Breakpoints 
  1210.  Set Breakpoints 
  1211.  
  1212.  
  1213. ΓòÉΓòÉΓòÉ 1.6.1.4. Modify Breakpoint Characteristics ΓòÉΓòÉΓòÉ
  1214.  
  1215. Note: Modifying breakpoints is not supported for OS/390 debugging. You can 
  1216. still enter values in the dialog, however when you click on OK or Set, a popup 
  1217. error message displays. To modify breakpoint characteristics for OS/390 
  1218. debugging, delete the breakpoint in question and add it again with the desired 
  1219. characteristics. 
  1220.  
  1221. You can change the following characteristics of a breakpoint: 
  1222.  
  1223.      How often the debugger should skip the breakpoint (the frequency) 
  1224.  
  1225.  You can also change the Required parameters fields for a breakpoint, which 
  1226.  amounts to deleting the existing breakpoint and setting a new one. 
  1227.  
  1228.  To change a breakpoint's characteristics, select the breakpoint in the 
  1229.  Breakpoints List window and choose Edit->Modify, or place your pointer over 
  1230.  the breakpoint, click mouse button 2, and select Modify. 
  1231.  
  1232.  A Type Breakpoint window opens, where Type corresponds to the type of 
  1233.  breakpoint (Line, Entry, Storage change, Load occurrence), with the current 
  1234.  settings for the breakpoint already placed in the window's fields. For 
  1235.  information on individual fields within each window, see that window's help. 
  1236.  
  1237.  Related Information 
  1238.  
  1239.  Procedures 
  1240.  Set a Deferred Breakpoint 
  1241.  
  1242.  
  1243. ΓòÉΓòÉΓòÉ 1.6.2. Skip over Sections of Code ΓòÉΓòÉΓòÉ
  1244.  
  1245. You can change the current execution point in a debugging session to another 
  1246. location in the current Source window, so that certain lines are executed 
  1247. again, or are skipped over when they otherwise would not be. From within the 
  1248. Source window containing the current execution point, do the following: 
  1249.  
  1250.    1. Scroll to the line number you want to jump to, if it is not already 
  1251.       visible. 
  1252.  
  1253.    2. Issue the Jump to location command by doing one of the following: 
  1254.  
  1255.           Click on the prefix area for the line, click mouse button 1, and 
  1256.            select Jump to location from the popup menu 
  1257.  
  1258.           Select the line, then select Run->Jump to location from the menu bar 
  1259.  
  1260.           Select the line, then press the N key, which is the accelerator for 
  1261.            the Jump to location command. 
  1262.  
  1263.  Note that using Jump to location can cause unpredictable results if you jump 
  1264.  outside the current entry point, jump over code that has side-effects (for 
  1265.  example, calls to entry points whose results are assigned to variables, or 
  1266.  entry points that change the contents of variables passed by reference), or 
  1267.  jump into the middle of a block such as a for loop. 
  1268.  
  1269.  
  1270. ΓòÉΓòÉΓòÉ 2. Concepts Help for Debugger ΓòÉΓòÉΓòÉ
  1271.  
  1272. The Debugger Online Help is divided into four types of information: 
  1273.  
  1274.      Procedures - how to perform a specific task or set of tasks 
  1275.  
  1276.      Reference - technical information you may need to understand how to 
  1277.       perform a task 
  1278.  
  1279.      User Interface - context-sensitive help pages displayed when you press F1 
  1280.       from within the debugger 
  1281.  
  1282.      Concepts - overview information you may need to understand basic 
  1283.       principles of debugging or components of the debugger interface 
  1284.  
  1285.  Concepts help is organized hierarchically; see the following main topics: 
  1286.  
  1287.      Main debugger windows 
  1288.  
  1289.      Monitors 
  1290.  
  1291.  
  1292. ΓòÉΓòÉΓòÉ 2.1. Main Debugger Windows ΓòÉΓòÉΓòÉ
  1293.  
  1294. You can get to help on the following debugger windows from here: 
  1295.  
  1296.      Source Window 
  1297.  
  1298.      Call Stack Window 
  1299.  
  1300.      Breakpoint List Window 
  1301.  
  1302.      Session Control Window 
  1303.  
  1304.  See also the following main help pages: 
  1305.  
  1306.      Dialogs 
  1307.  
  1308.      Monitor Windows 
  1309.  
  1310.      Other Help Topics 
  1311.  
  1312.  
  1313. ΓòÉΓòÉΓòÉ 2.1.1. Introduction to the Source Window ΓòÉΓòÉΓòÉ
  1314.  
  1315. The Source window displays the compiler listing for the program you are 
  1316. debugging. 
  1317.  
  1318. You can either step through or run your program from the Source window. A step 
  1319. command lets you step through your program, usually one statement at a time. 
  1320. Step commands are useful for monitoring logic flow, and for seeing how 
  1321. variables, storage, registers, or the stack are affected by each line that you 
  1322. step through. The Run command runs your program up to the next breakpoint, or 
  1323. until an exception that is not handled occurs, or until the program ends. 
  1324.  
  1325. Breakpoints are markers you place in your program to tell the debugger to stop 
  1326. whenever execution reaches that point. For example, if a particular statement 
  1327. in your program is causing problems, you could set a breakpoint on the line 
  1328. containing the statement, then run your program. Execution stops at the 
  1329. breakpoint, before the statement is executed, and you can check the contents of 
  1330. variables, registers, storage, and the stack, then either step over the 
  1331. statement to see how the problem arises, or jump over the statement to 
  1332. temporarily circumvent the problem. 
  1333.  
  1334. Related Information 
  1335.  
  1336. Procedures 
  1337. Run a Program 
  1338. Run or Step Through a ProgramStep through a Program 
  1339. Set and Clear Breakpoints from a Source Window 
  1340.  
  1341. Reference 
  1342. When You Start Debugging 
  1343. Problems Getting a Source View 
  1344. Prefix Area 
  1345.  
  1346.  
  1347. ΓòÉΓòÉΓòÉ 2.1.2. Introduction to the Call Stack Window ΓòÉΓòÉΓòÉ
  1348.  
  1349. When one routine calls another, information about the calling routine is placed 
  1350. on the stack for the executing thread. The debugger examines the stack and the 
  1351. processor registers to determine all routines that have been called for that 
  1352. thread, and lists these routines in the Call Stack window. 
  1353.  
  1354. Each Call Stack window displays information for a single thread. The thread 
  1355. number is indicated in the window title. Only a single thread is supported for 
  1356. COBOL programs on OS/390. 
  1357.  
  1358. Related Information 
  1359.  
  1360. Procedures 
  1361. Use the Call Stack Window 
  1362.  
  1363.  
  1364. ΓòÉΓòÉΓòÉ 2.1.3. Introduction to the Breakpoints List Window ΓòÉΓòÉΓòÉ
  1365.  
  1366. Use the Breakpoints List window to view breakpoints for your program,  delete 
  1367. them, or add new ones. 
  1368.  
  1369. Related Information 
  1370.  
  1371. Procedures 
  1372. Set Breakpoints 
  1373. Delete Breakpoints 
  1374. Enable and Disable Breakpoints 
  1375. Modify Breakpoint Characteristics (not supported on OS/390) 
  1376. View Popup Choice 
  1377.  
  1378. Reference 
  1379. Breakpoints List Popup Menu 
  1380.  
  1381.  
  1382. ΓòÉΓòÉΓòÉ 2.1.3.1. Types of Breakpoints ΓòÉΓòÉΓòÉ
  1383.  
  1384. The debugger supports the following types of breakpoints: 
  1385.  
  1386.      Line breakpoints are triggered before the code at a particular line in a 
  1387.       source file is executed.Lines that contain continuations of statements 
  1388.       from previous lines cannot have breakpoints set on them. 
  1389.  
  1390.      Entry breakpoints are triggered when the entry point they apply to is 
  1391.       reached. 
  1392.  
  1393.      Storage change breakpoints are triggered when the storage within a 
  1394.       particular address range is written to. 
  1395.  
  1396.      Load occurrence breakpoints are triggered when a DLL or dynamically 
  1397.       loaded module is loaded into an application. This happens the first time 
  1398.       a reference is made to an entry point within the DLL or dynamically 
  1399.       loaded module. For COBOL, this applies to programs that were compiled 
  1400.       using the DYNAM compiler option or that contain CALL identifier 
  1401.       statements. 
  1402.  
  1403.  Related Information 
  1404.  
  1405.  Procedures 
  1406.  Set Breakpoints 
  1407.  
  1408.  
  1409. ΓòÉΓòÉΓòÉ 2.1.4. Introduction to the Session Control Window ΓòÉΓòÉΓòÉ
  1410.  
  1411. The Session Control window is the control window of the debugger, and is 
  1412. displayed during the entire debugging session. It contains a status line that 
  1413. indicates what the debugger is doing (for example, Ready or Application 
  1414. Executing). 
  1415.  
  1416. The window is divided into two panes. The left pane, called the Threads pane, 
  1417. shows the active threads for the program, while the right pane, called the 
  1418. Components pane, shows the list of object files. You can resize these panes 
  1419. with the mouse by dragging the split bar between them to the left or right. 
  1420.  
  1421. Use the mouse or the cursor left and right keys to shift the focus between the 
  1422. panes. 
  1423.  
  1424. You can expand the items in these panes by clicking on the '+' to their left, 
  1425. and you can collapse them by clicking on the '-'. 
  1426.  
  1427. See Using the Components Pane for more information. Note that COBOL on OS/390 
  1428. does not support multithreaded applications. 
  1429.  
  1430.  
  1431. ΓòÉΓòÉΓòÉ 2.2. Monitors ΓòÉΓòÉΓòÉ
  1432.  
  1433. You can view help on the following debugger monitor windows: 
  1434.  
  1435.      Registers Monitor 
  1436.  
  1437.      Storage Monitor 
  1438.  
  1439.      Monitor Expression Dialog 
  1440.  
  1441.      Popup Monitor 
  1442.  
  1443.      Private Monitor 
  1444.  
  1445.      Program Monitor 
  1446.  
  1447.      Local Variables Monitor 
  1448.  
  1449.  Help is also available on the following monitor-related topics: 
  1450.  
  1451.      Popup Menus for Private and Program Monitors 
  1452.  
  1453.      Differences Between the Program and Private Monitors 
  1454.  
  1455.  See also the following main help pages: 
  1456.  
  1457.      Main Debugger Windows 
  1458.  
  1459.      Dialogs 
  1460.  
  1461.      Other Help Topics 
  1462.  
  1463.  
  1464. ΓòÉΓòÉΓòÉ 2.2.1. Introduction to the Program Monitor ΓòÉΓòÉΓòÉ
  1465.  
  1466. You can monitor variables and expressions from Source windows in the Program 
  1467. monitor. This monitor is not associated with any particular Source window, and 
  1468. remains open until you close it directly or exit the debugger. Use it to 
  1469. monitor global variables or variables you want to see at all times during your 
  1470. debugging session. 
  1471.  
  1472. You can open the Program monitor from a Source window by adding a variable or 
  1473. expression to the program monitor. 
  1474.  
  1475. From within the Program monitor, you can select one or more expressions or 
  1476. variables, and access a popup menu to apply changes to them. For example, you 
  1477. can delete a variable from the monitor, change its representation, or edit its 
  1478. contents. 
  1479.  
  1480. Expressions and variables that have a '+' on their left can be expanded, and 
  1481. those with a '-' can be collapsed. Arrays and C++ class objects, for example, 
  1482. are displayed by default in expanded format, with entries both for the array 
  1483. and for elements within it. To collapse the list of elements, or to expand a 
  1484. collapsed list, double-click on the '+' or '-', or place the cursor on that 
  1485. line and press the Enter key. 
  1486.  
  1487. C++ only: Pointers are displayed with a '>' on their left. You can change an 
  1488. array or class object to pointer representation by dereferencing it. You can 
  1489. display the value of the pointer, or the start of the memory it points to, by 
  1490. choosing a different representation for it. 
  1491.  
  1492. Related Information 
  1493.  
  1494. Procedures 
  1495. Add Expressions and Variables to a Monitor 
  1496.  
  1497.  
  1498. ΓòÉΓòÉΓòÉ 2.2.2. Introduction to the Private Monitor ΓòÉΓòÉΓòÉ
  1499.  
  1500. You can monitor variables and expressions from a given Source window in a 
  1501. Private monitor, which is associated with only that Source window. Private 
  1502. monitors help you keep track of local variables and expressions in programs 
  1503. with multiple compile units. They are particularly useful in cases where the 
  1504. number of variables or expressions is large, or where variables with the same 
  1505. name appear in different compilation units. 
  1506.  
  1507. You can open a Private monitor for a Source window by adding an expression or 
  1508. variable to the Private monitor from that Source window. 
  1509.  
  1510. From within a Private monitor, you can select one or more expressions or 
  1511. variables, and access a popup menu to apply changes to them. For example, you 
  1512. can delete an expression from the monitor, change its representation, or edit 
  1513. its contents. 
  1514.  
  1515. Expressions and variables that have a '+' on their left can be expanded, and 
  1516. those with a '-' can be collapsed. Arrays and C++ class objects, for example, 
  1517. are displayed by default in expanded format, with entries both for the array 
  1518. and for elements within it. To collapse the list of elements, or to expand a 
  1519. collapsed list, double-click on the '+' or '-', or place the cursor on that 
  1520. line and press the Enter key. 
  1521.  
  1522. C++ only: Pointers are displayed with a '>' on their left. You can change an 
  1523. array or class object to pointer representation by dereferencing it. You can 
  1524. display the value of the pointer, or the start of the memory it points to, by 
  1525. choosing a different representation for it. 
  1526.  
  1527. Related Information 
  1528.  
  1529. Procedures 
  1530. Add Expressions and Variables to a Monitor 
  1531.  
  1532.  
  1533. ΓòÉΓòÉΓòÉ 2.2.3. Differences between Program and Private Monitors ΓòÉΓòÉΓòÉ
  1534.  
  1535. The Program and Private monitors are very similar, but have the following 
  1536. differences: 
  1537.  
  1538.      The Program monitor can be used to monitor all variables, while a Private 
  1539.       monitor is associated with a single Source window. 
  1540.  
  1541.      The Program monitor remains open at all times unless you close it or exit 
  1542.       the debugger. A Private monitor closes whenever the Source window it is 
  1543.       associated with closes, and is hidden whenever its Source window becomes 
  1544.       inactive (for example, when a statement in that Source window returns 
  1545.       control to code in another Source window). 
  1546.  
  1547.      Because a Private monitor is associated with a specific Source window, 
  1548.       whose focus is raised whenever you select the monitor, it does not have a 
  1549.       Windows menu. 
  1550.  
  1551.  Related Information 
  1552.  
  1553.  Procedures 
  1554.  Add Expressions and Variables to a Monitor 
  1555.  Debug Variable Contents and Memory 
  1556.  View Variable Contents 
  1557.  
  1558.  
  1559. ΓòÉΓòÉΓòÉ 2.2.4. Introduction to the Local Variables Monitor ΓòÉΓòÉΓòÉ
  1560.  
  1561. You can monitor variables within the current scope of a Source window from the 
  1562. Local Variables monitor. This monitor is updated, after each Step or Run 
  1563. command, to show what variables are currently in scope, and what the contents 
  1564. of those variables are. 
  1565.  
  1566. To open a Local Variables monitor for a given thread, highlight that thread in 
  1567. the Threads pane of the Session Control window, or raise the Source window for 
  1568. that thread; then choose Monitors->Local variables. 
  1569.  
  1570. From within a Local Variables monitor, you can select one or more variables, 
  1571. and access a popup menu to apply changes to them. For example, you can delete a 
  1572. variable from the monitor, change its representation, or edit its contents. 
  1573.  
  1574. Expressions and variables that have a '+' on their left can be expanded, and 
  1575. those with a '-' can be collapsed. Arrays and C++ class objects, for example, 
  1576. are displayed by default in expanded format, with entries both for the array 
  1577. and for elements within it. To collapse the list of elements, or to expand a 
  1578. collapsed list, double-click on the '+' or '-', or place the cursor on that 
  1579. line and press the Enter key. 
  1580.  
  1581. C++ only: Pointers are displayed with a '>' on their left. You can change an 
  1582. array or class object to pointer representation by dereferencing it. You can 
  1583. display the value of the pointer, or the start of the memory it points to, by 
  1584. choosing a different representation for it. 
  1585.  
  1586. Related Information 
  1587.  
  1588. Reference 
  1589. Private Monitor 
  1590. Program Monitor 
  1591. Popup Monitor 
  1592.  
  1593.  
  1594. ΓòÉΓòÉΓòÉ 2.2.5. Introduction to the Registers Monitor ΓòÉΓòÉΓòÉ
  1595.  
  1596. The Registers monitor shows the contents of processor registers for a 
  1597. particular thread in your program. If you are debugging multiple threads, you 
  1598. can display a separate Registers monitor for each thread. Although all threads 
  1599. share the same set of registers, the operating system saves the register 
  1600. contents of each thread as the thread is suspended, and restores that thread's 
  1601. processor contents when the thread resumes. 
  1602.  
  1603.  
  1604. ΓòÉΓòÉΓòÉ 2.2.6. Introduction to the Storage Monitor ΓòÉΓòÉΓòÉ
  1605.  
  1606. The Storage monitor lets you view and update the contents of storage areas used 
  1607. by your program. You can do the following: 
  1608.  
  1609.      Specify a variable, array, class object (C++ only), expression, or 
  1610.       storage address to view. 
  1611.  
  1612.      Change the address range to view 
  1613.  
  1614.      Modify the contents of storage 
  1615.  
  1616.      Change the representation the debugger uses to display storage, for 
  1617.       example, from hexadecimal to floating-point 
  1618.  
  1619.  You can open a new Storage monitor from a Source window or from the Session 
  1620.  Control window. 
  1621.  
  1622.  The title of each Storage monitor includes the variable name or address range 
  1623.  whose contents the window displays, as well as the current representation for 
  1624.  the window. 
  1625.  
  1626.  Related Information 
  1627.  
  1628.  Procedures 
  1629.  View a Location in Storage 
  1630.  Change the Storage Monitor Address Range 
  1631.  Change the Contents of Storage, Variables, and Registers 
  1632.  Change the Representation of Storage 
  1633.  Open a New Storage Monitor 
  1634.  
  1635.  
  1636. ΓòÉΓòÉΓòÉ 2.3. Expressions ΓòÉΓòÉΓòÉ
  1637.  
  1638. For information on what expressions you can enter in the Expression entry field 
  1639. of the Monitor Expression dialog or the Monitor Expression in Storage dialog, 
  1640. see the section on supported expressions for the language you are debugging: 
  1641.  
  1642.      C++ 
  1643.  
  1644.      COBOL 
  1645.  
  1646.  
  1647. ΓòÉΓòÉΓòÉ 2.4. Stopping Thread ΓòÉΓòÉΓòÉ
  1648.  
  1649. A stopping thread is the thread that caused the program being debugged to stop. 
  1650.  
  1651.  
  1652. ΓòÉΓòÉΓòÉ 2.5. Other Help Topics ΓòÉΓòÉΓòÉ
  1653.  
  1654. You can get to the following debugger help topics from here: 
  1655.  
  1656.      Common Menu Choices 
  1657.  
  1658.      Toolbar Buttons 
  1659.  
  1660.      Expressions Supported 
  1661.  
  1662.      Toolbar Short Cut Menu 
  1663.  
  1664.      Environment Variables 
  1665.  
  1666.      Search Order 
  1667.  
  1668.  See also the following main help pages: 
  1669.  
  1670.      Main Debugger Windows 
  1671.  
  1672.      Dialogs 
  1673.  
  1674.      Monitor Windows 
  1675.  
  1676.      Debugger Help Home Page 
  1677.  
  1678.  
  1679. ΓòÉΓòÉΓòÉ 2.5.1. Record of Directories ΓòÉΓòÉΓòÉ
  1680.  
  1681. Note: This section does not apply to debugging COBOL programs on OS/390. 
  1682.  
  1683. The record of directories is a cumulative list of all directories you have 
  1684. entered in source path dialog boxes that opened when the debugger could not 
  1685. locate a source file. This list is only cumulative for the duration of the 
  1686. debugger session; when you exit the debugger, the list is not saved. 
  1687.  
  1688. The debugger assumes that any directory in the record of directories may be on 
  1689. either the debugger machine or the debuggee machine. 
  1690.  
  1691.  
  1692. ΓòÉΓòÉΓòÉ 3. Reference Help for Debugger ΓòÉΓòÉΓòÉ
  1693.  
  1694. The Debugger Online Help is divided into four types of information: 
  1695.  
  1696.      Procedures - how to perform a specific task or set of tasks 
  1697.  
  1698.      Reference - technical information you may need to understand how to 
  1699.       perform a task 
  1700.  
  1701.      User Interface - context-sensitive help pages displayed when you press F1 
  1702.       from within the debugger 
  1703.  
  1704.      Concepts - overview information you may need to understand basic 
  1705.       principles of debugging or components of the debugger interface 
  1706.  
  1707.  Reference help is organized hierarchically; see the following main topics: 
  1708.  
  1709.      When you start debugging 
  1710.  
  1711.      Debugger options 
  1712.  
  1713.      Environment variables 
  1714.  
  1715.      Expressions supported 
  1716.  
  1717.      Problems Getting a Source View 
  1718.  
  1719.  
  1720. ΓòÉΓòÉΓòÉ 3.1. When You Start Debugging ΓòÉΓòÉΓòÉ
  1721.  
  1722. The first time you debug a program, the debugger raises the following windows: 
  1723.  
  1724.      A Source window. This window contains the compiler listing of the compile 
  1725.       unit that contains the entry point for your program. If that compile unit 
  1726.       was not compiled with the TEST option, the Source window is not 
  1727.       displayed. 
  1728.  
  1729.      The Session Control window. Use this window to access other windows, to 
  1730.       control the debugging of threads and routines, and to perform various 
  1731.       debugger commands. (Only a single thread is supported on COBOL programs.) 
  1732.  
  1733.  The DEBUG_LANG environment variable sets the dominant language for a debugging 
  1734.  session. The dominant language affects certain terminology (for example, 
  1735.  whether the C++ term function or the COBOL term entry point is used) in both 
  1736.  the user interface and the help. It also affects what choices are available on 
  1737.  certain dialogs and menus. The setting of DEBUG_LANG overrides the language of 
  1738.  the compilation unit being debugged; for example, if DEBUG_LANG=COBOL and you 
  1739.  step into a C++ function, the debugger's appearance continues to reflect a 
  1740.  dominant language of COBOL. Only the COBOL choice is available for debugging 
  1741.  OS/390 programs. 
  1742.  
  1743.  DEBUG_LANG=COBOL The debugger runs up to the first debuggable statement in the 
  1744.            application. If no part of the application was compiled and linked 
  1745.            with debug information, the debugger displays a Source Filename 
  1746.            dialog, and ignores any file name you enter. You can then press 
  1747.            Cancel; only the Session Control window is displayed. From here you 
  1748.            issue a Run command and the program will run to completion. 
  1749.  
  1750.  The debugger starts after program initialization but before static (C++) or 
  1751.  symbolic (COBOL) variables have been initialized. This means that you cannot 
  1752.  view the contents of variables until you have performed a step or run. 
  1753.  
  1754.  When you start debugging a program for the first time,  no variables or 
  1755.  expressions are being monitored. During the debug session, you may add 
  1756.  variables or expressions to a local variables monitor. When you exit the 
  1757.  debugger,  local variables and expressions are saved in the program profile, 
  1758.  and will be activated the next time you debug this program. 
  1759.  
  1760.  
  1761. ΓòÉΓòÉΓòÉ 3.1.1. Stepping and Entry points ΓòÉΓòÉΓòÉ
  1762.  
  1763. In a  line that contains multiple calls, you can choose to step over all the 
  1764. calls, or step through the calls individually. Given a complex C++ call such as 
  1765. func1( func2(), func3() );, you can do the following: 
  1766.  
  1767.      Step over the entire line with a single Step Over command. 
  1768.  
  1769.      Step through each called function with a series of Step Into commands. 
  1770.       You can then step through the function, or, to return to the original 
  1771.       statement so that you can step into the next function, issue a Step 
  1772.       Return command. 
  1773.  
  1774.  You can also use a combination of step commands and entry breakpoints to more 
  1775.  finely control which entry points called from a given line are stepped into 
  1776.  and which are stepped over. 
  1777.  
  1778.  Related Information 
  1779.  
  1780.  Procedures 
  1781.  Set and Clear Breakpoints from a Source Window 
  1782.  
  1783.  
  1784. ΓòÉΓòÉΓòÉ 3.2. Debugger Options ΓòÉΓòÉΓòÉ
  1785.  
  1786. The idbugd command on the workstation supports the following options: 
  1787.  
  1788.  -v        Display connection information. The default is not to display this 
  1789.            information. 
  1790.  
  1791.  -qdebugger=<debugger name> The debugger that the daemon will invoke. The 
  1792.            default is the name of the daemon without the last letter. For 
  1793.            example, if the daemon name is idbugd, the default debugger is 
  1794.            idbug. 
  1795.  
  1796.  -qservice=<service name> The service name that is used by the daemon to get 
  1797.            the port number. The default is the name of the daemon without the 
  1798.            last letter. 
  1799.  
  1800.  -qport=<port number> The port number that the daemon listens to for incoming 
  1801.            requests. If you do not specify a port, the daemon looks up the port 
  1802.            number for the specified service from the system services file on 
  1803.            the workstation (for example the file \etc\services). 
  1804.  
  1805.  
  1806. ΓòÉΓòÉΓòÉ 3.3. Compiler Options on OS/390 ΓòÉΓòÉΓòÉ
  1807.  
  1808. If you want to debug your program on OS/390, you must compile and link it as 
  1809. follows: 
  1810.  
  1811.      Compile with the TEST option. 
  1812.  
  1813.      Link an MVS load module. 
  1814.  
  1815.  For further details on the required compilation and linking options, see the 
  1816.  Debug Tool User's Guide and Reference 
  1817.  
  1818.  
  1819. ΓòÉΓòÉΓòÉ 3.4. Environment Variables ΓòÉΓòÉΓòÉ
  1820.  
  1821. The debugger uses the following environment variables. If you want to place 
  1822. multiple entries in any of the variables that contain path names, separate the 
  1823. entries with a semicolon. 
  1824.  
  1825.      DEBUG_LANG 
  1826.  
  1827.      DEBUG_NUMBEROFELEMENTS 
  1828.  
  1829.      DEBUG_REMOTE_SEARCH_PATH 
  1830.  
  1831.      DEBUG_TAB 
  1832.  
  1833.      DEBUG_TABGRID 
  1834.  
  1835.      DPATH 
  1836.  
  1837.      LIBPATH (OS/2 only) 
  1838.  
  1839.      HELP 
  1840.  
  1841.      PATH 
  1842.  
  1843.     
  1844.  
  1845.  You should also ensure that the Debug Tool load library is available. See the 
  1846.  Debug Tool User's Guide for more information. 
  1847.  
  1848.  Related Information 
  1849.  
  1850.  Procedures 
  1851.  Set Environment Variables for the Debugger 
  1852.  
  1853.  
  1854. ΓòÉΓòÉΓòÉ 3.4.1. DEBUG_LANG Environment Variable ΓòÉΓòÉΓòÉ
  1855.  
  1856. The DEBUG_LANG environment variable sets the dominant language for a debugging 
  1857. session. The dominant language affects certain terminology (for example, 
  1858. whether the C++ term function or the COBOL term entry point is used) in both 
  1859. the user interface and the help. It also affects what choices are available on 
  1860. certain dialogs and menus. 
  1861.  
  1862. The setting of DEBUG_LANG overrides the language of the compile unit being 
  1863. debugged; for example, if DEBUG_LANG=COBOL and you step into a C++ function, 
  1864. the debugger's appearance continues to reflect a dominant language of COBOL. 
  1865. Only the COBOL choice is supported for debugging OS/390 programs. 
  1866.  
  1867. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1868. ΓöéValue of DEBUG_LANG      ΓöéCPP                      ΓöéCOBOL                    Γöé
  1869. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1870. Γöé'Entry' vs. 'Function'   ΓöéThe term 'function' is   ΓöéThe term 'entry' is used.Γöé
  1871. Γöéused in dialogs and      Γöéused                     Γöé                         Γöé
  1872. Γöéwindows to indicate a C++Γöé                         Γöé                         Γöé
  1873. Γöéfunction or a COBOL or   Γöé                         Γöé                         Γöé
  1874. ΓöéPL/I entry point         Γöé                         Γöé                         Γöé
  1875. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1876. ΓöéHeap checking            ΓöéYou can perform heap     ΓöéHeap checking is not     Γöé
  1877. Γöé                         Γöéchecks using Run->Check  Γöéavailable.               Γöé
  1878. Γöé                         Γöéheap when stopping       Γöé                         Γöé
  1879. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1880.  
  1881. In addition, the following differences apply: 
  1882.  
  1883.      Debugger settings, such as default fonts, changed when one dominant 
  1884.       language is in effect are not applied to the debugger when the other 
  1885.       dominant language is in effect 
  1886.  
  1887.      Step commands in a source view may behave differently in certain 
  1888.       situations. 
  1889.  
  1890.  Related Information 
  1891.  
  1892.  Reference 
  1893.  Environment Variables 
  1894.  
  1895.  
  1896. ΓòÉΓòÉΓòÉ 3.4.2. DEBUG_NUMBEROFELEMENTS Environment Variable ΓòÉΓòÉΓòÉ
  1897.  
  1898. The DEBUG_NUMBEROFELEMENTS environment variable can be set to an integer value, 
  1899. to tell the debugger the maximum number of elements to display for an array, 
  1900. structure, or object in a Program, Private, Local Variables, or Popup monitor. 
  1901.  
  1902. Related Information 
  1903.  
  1904. Reference 
  1905. Environment Variables 
  1906.  
  1907.  
  1908. ΓòÉΓòÉΓòÉ 3.4.3. DEBUG_REMOTE_SEARCH_PATH Environment Variable ΓòÉΓòÉΓòÉ
  1909.  
  1910. The DEBUG_REMOTE_SEARCH_PATH environment variable is used to search partitioned 
  1911. data sets on the remote host for a requested compiler listing. If more than one 
  1912. PDS is specified, the names must be separated by a semicolon. 
  1913.  
  1914. Related Information 
  1915.  
  1916. Reference 
  1917. Environment Variables 
  1918. Search Order 
  1919.  
  1920.  
  1921. ΓòÉΓòÉΓòÉ 3.4.4. DEBUG_TAB Environment Variable ΓòÉΓòÉΓòÉ
  1922.  
  1923. The DEBUG_TAB environment variable affects how the debugger expands tab 
  1924. characters in  a Source window, when DEBUG_TABGRID is set to 0 (or is not set). 
  1925. The value for this variable is an integer, indicating the number of spaces to 
  1926. convert a tab character into.Unlike DEBUG_TABGRID, DEBUG_TAB does not cause the 
  1927. debugger to place tabbed information in specific columns; it simply results in 
  1928. each tab in the displayed files being converted to the indicated number of 
  1929. spaces. 
  1930.  
  1931. Related Information 
  1932.  
  1933. Reference 
  1934. DEBUG_TABGRID Environment Variable 
  1935.  
  1936.  
  1937. ΓòÉΓòÉΓòÉ 3.4.5. DEBUG_TABGRID Environment Variable ΓòÉΓòÉΓòÉ
  1938.  
  1939. The DEBUG_TABGRID environment variable affects how the debugger uses tab 
  1940. characters to align tabs to columns in  a Source window. The value of this 
  1941. variable is an integer indicating the starting position and frequency of the 
  1942. tab. For example, if you set DEBUG_TABGRID=6, the debugger sets tab stops at 6, 
  1943. 12, 18, 24, and so on. If DEBUG_TABGRID is set to a nonzero value, the setting 
  1944. of DEBUG_TAB has no effect. 
  1945.  
  1946. Related Information 
  1947.  
  1948. Reference 
  1949. Environment Variables 
  1950. DEBUG_TAB Environment Variable 
  1951.  
  1952.  
  1953. ΓòÉΓòÉΓòÉ 3.4.6. LIBPATH Environment Variable (OS/2 Only) ΓòÉΓòÉΓòÉ
  1954.  
  1955. The LIBPATH environment variable tells the debugger where to look for debugger 
  1956. DLLs on the workstation. The LIBPATH environment variable must be set from 
  1957. within CONFIG.SYS; you cannot set it using the SET command. 
  1958.  
  1959. Related Information 
  1960.  
  1961. Reference 
  1962. Environment Variables 
  1963.  
  1964.  
  1965. ΓòÉΓòÉΓòÉ 3.4.7. Other Environment Variables ΓòÉΓòÉΓòÉ
  1966.  
  1967. The debugger also uses the following standard environment variables on the 
  1968. Windows or OS/2 workstation. These variables all contain one or more directory 
  1969. names separated by semicolons: 
  1970.  
  1971. PATH 
  1972.  
  1973. The PATH environment variable is used to locate the debugger executable , as 
  1974. well as any other executables being run on the workstation. On Windows 
  1975. platforms the PATH environment variable is also used to locate DLLs. 
  1976.  
  1977. DPATH 
  1978.  
  1979. The DPATH environment variable is used to locate message files, which the 
  1980. debugger needs to display messages and the text of menus and dialogs. 
  1981.  
  1982. HELP 
  1983.  
  1984. The HELP environment variable is used to locate the online help files for the 
  1985. debugger. 
  1986.  
  1987. Related Information 
  1988.  
  1989. Reference 
  1990. Environment Variables 
  1991.  
  1992.  
  1993. ΓòÉΓòÉΓòÉ 3.4.8. Search Order ΓòÉΓòÉΓòÉ
  1994.  
  1995. The debugger searches for C++ source files for an OS/390 debuggee program in 
  1996. the following locations: 
  1997.  
  1998.    1. The specified PDS or sequential file on the host 
  1999.  
  2000.    2. The current directory of the debugger machine 
  2001.  
  2002.    3. The record of directories on the debugger machine 
  2003.  
  2004.    4. Paths in the DEBUG_PATH environment variable on the debugger machine 
  2005.  
  2006.  If the source file cannot be located in any of the above directories, a dialog 
  2007.  box opens requesting the path name for the source file. The path name you 
  2008.  enter is searched for on the debugger machine. This path name is also added to 
  2009.  the record of directories to be used in future searches. 
  2010.  
  2011.  For COBOL programs running on OS/390, the debugger searches for the compiler 
  2012.  listing in the DEBUG_REMOTE_SEARCH_PATH environment variable, which contains 
  2013.  the concatenated list of partitioned datasets. If this environment variable 
  2014.  was not defined, the debugger looks for the compiler listing in the dataset in 
  2015.  which the compiler put it. If the debugger cannot find the compiler listing, a 
  2016.  dialog box opens requesting the name of the partitioned dataset and member 
  2017.  where it can find the listing. 
  2018.  
  2019.  Related Information 
  2020.  
  2021.  Concepts 
  2022.  Record of Directories 
  2023.  
  2024.  
  2025. ΓòÉΓòÉΓòÉ 3.5. Expressions Supported ΓòÉΓòÉΓòÉ
  2026.  
  2027. The expressions you can enter in an expression entry field (for example, in a 
  2028. Monitor Expression dialog or a Set breakpoint dialog) are different for each 
  2029. language the debugger supports. See the following for more information: 
  2030.  
  2031.      Supported C++ expressions 
  2032.  
  2033.      Supported COBOL expressions 
  2034.  
  2035.  Related Information 
  2036.  
  2037.  Concepts 
  2038.  Expressions 
  2039.  
  2040.  
  2041. ΓòÉΓòÉΓòÉ 3.5.1. COBOL Expressions Supported ΓòÉΓòÉΓòÉ
  2042.  
  2043. You can enter the following types of COBOL expressions in an expression entry 
  2044. field: 
  2045.  
  2046. Variable: A variable used in your program. The following can be specified with 
  2047. COBOL variables: 
  2048.  
  2049.      Group qualification (for example, A OF B OF C) 
  2050.  
  2051.      Table subscripting (for example, A(1, 2, 3)) Note that only constants can 
  2052.       be specified for array indices (no variables or operators). 
  2053.  
  2054.      Reference modification (for example, A(1:2)) Note that reference 
  2055.       modification is not allowed for group names. Also, only constants can be 
  2056.       specified for the reference modification begin and length values (no 
  2057.       variables or operators). 
  2058.  
  2059.  Notes 
  2060.  
  2061.    1. COBOL condition names cannot be specified. 
  2062.  
  2063.    2. Operators (for example, A + B) are not allowed. 
  2064.  
  2065.    3. The value displayed for COBOL index names and data items is the actual 
  2066.       value in storage. For example, if INM is an index name for a 
  2067.       one-dimensional table whose elements are two bytes wide and INM is set to 
  2068.       reference the third element in the table, the value shown by the debugger 
  2069.       (i.e., the value in storage) would be 4. 
  2070.  
  2071.  Constant: The constant can be one of the following types: 
  2072.  
  2073.      Fixed or floating-point constant 
  2074.  
  2075.      A string constant, enclosed in double or single quotation marks (for 
  2076.       example, 'string' or 'string') 
  2077.  
  2078.      Hexadecimal constant (for example, X'0041014D'). Note that the number of 
  2079.       bytes represented by the hexadecimal constant must be equal to the number 
  2080.       of bytes of the corresponding variable in assignment or comparison. 
  2081.  
  2082.  Note: In a COBOL constant, the period is always used as the decimal point 
  2083.  (i.e., the DECIMAL-POINT IS COMMA clause is ignored by the debugger). COBOL 
  2084.  figurative constants are not supported by the debugger. 
  2085.  
  2086.  Register: Any of the processor registers that can be displayed in the 
  2087.  Registers Monitor. In the case of conflicting names, program variable names 
  2088.  take precedence over register names. 
  2089.  
  2090.  Expressions Supported in Conditional Breakpoints 
  2091.  
  2092.  Expressions supported by the expression conditions in conditional breakpoints 
  2093.  are further limited in the following ways: 
  2094.  
  2095.      Only the relation condition is supported, with the following operators: 
  2096.       >, <, =, >=, <=, NOT >, NOT <, NOT = 
  2097.  
  2098.      The left operand must be a variable and the right operand must be a 
  2099.       constant. For example, var1 > 5 is valid, while 5 < var1 and var1 > var2 
  2100.       are not. 
  2101.  
  2102.      The hexadecimal constant is allowed only with POINTER variables. 
  2103.  
  2104.      Nonnumeric and external floating point variables must be compared with a 
  2105.       nonnumeric literal. 
  2106.  
  2107.      Zoned decimal variables must be compared with a numeric constant. 
  2108.  
  2109.      Complex conditions and group comparisons are not allowed. 
  2110.  
  2111.      Comparison is locale-based, independent of any COLLSEQ compile option or 
  2112.       collating sequence specification within the program. 
  2113.  
  2114.  
  2115. ΓòÉΓòÉΓòÉ 3.5.2. C++ Expressions Supported ΓòÉΓòÉΓòÉ
  2116.  
  2117. The expression language that is supported by the debugger for C++ programs is a 
  2118. subset of the C/C++ language. You can only monitor expressions with: 
  2119.  
  2120.      A supported operand type 
  2121.  
  2122.      A supported operator 
  2123.  
  2124.      A supported typecasting operation 
  2125.  
  2126.  
  2127. ΓòÉΓòÉΓòÉ 3.5.2.1. C++ Supported Data Types ΓòÉΓòÉΓòÉ
  2128.  
  2129. You can monitor an expression that uses the following typecasting operations 
  2130. only: 
  2131.  
  2132.      8-bit signed byte 
  2133.  
  2134.      8-bit unsigned byte 
  2135.  
  2136.      16-bit signed integer 
  2137.  
  2138.      16-bit unsigned integer 
  2139.  
  2140.      32-bit signed integer 
  2141.  
  2142.      32-bit unsigned integer 
  2143.  
  2144.      Single-precision floating-point floating-point 
  2145.  
  2146.      Double-precision floating-point floating-point 
  2147.  
  2148.      80-bit floating-point (OS/390 only) 
  2149.  
  2150.      Pointers 
  2151.  
  2152.      User-defined types 
  2153.  
  2154.  These data types include int, short, char and so on. 
  2155.  
  2156.  
  2157. ΓòÉΓòÉΓòÉ 3.5.2.2. C++ Supported Expression Operands ΓòÉΓòÉΓòÉ
  2158.  
  2159. You can monitor an expression that uses the following types of operands only: 
  2160.  
  2161.  Operand   Definition 
  2162.  
  2163.  Variable  A variable used in your program. 
  2164.  
  2165.  Constant  The constant can be one of the following types: 
  2166.  
  2167.                Fixed or floating-point constant within the ranges supported by 
  2168.                 the system the debuggee program is running on. 
  2169.  
  2170.                A string constant, enclosed in double quotation marks (for 
  2171.                 example, 'mystring') 
  2172.  
  2173.                A character constant, enclosed in single quote marks (for 
  2174.                 example, 'x') 
  2175.  
  2176.  Register  Any of the processor registers that can be displayed in the 
  2177.            Registers Monitor. In the case of conflicting names, program 
  2178.            variable names take precedence over register names. For conversions 
  2179.            that are done automatically when the registers display in mixed-mode 
  2180.            expressions, general-purpose registers are treated as unsigned 
  2181.            arithmetic items with a length appropriate to the register. 
  2182.  
  2183.  If you monitor an enumerated variable, a comment appears to the right of the 
  2184.  value. If the value of the variable matches one of the enumerated types, the 
  2185.  comment contains the name of the first enumerated type that matches the value 
  2186.  of the variable. If the length of the enumerated name does not fit in the 
  2187.  monitor, the contents appear as an empty entry field. 
  2188.  
  2189.  The comment (empty or not) lets you distinguish between a valid enumerated 
  2190.  value and an invalid value. An invalid value does not have a comment to its 
  2191.  right. 
  2192.  
  2193.  You cannot update an enumerated variable by entering an enumerated type. You 
  2194.  must enter a value or expression. If the value is a valid enumerated value, 
  2195.  the comment to the right of it is updated. 
  2196.  
  2197.  Bit fields are supported for C/C++ compiled code only. You can display and 
  2198.  update bit fields, but you cannot use them in expressions. You cannot look at 
  2199.  variables that have been defined using the #define preprocessor directive. 
  2200.  
  2201.  
  2202. ΓòÉΓòÉΓòÉ 3.5.2.3. C++ Supported Expression Operators ΓòÉΓòÉΓòÉ
  2203.  
  2204. You can monitor an expression that uses the following operators only: 
  2205.  
  2206.  Operator  Coded as 
  2207.  
  2208.  Global scope resolution ::a 
  2209.  
  2210.  Class or namespace scope resolution a::b 
  2211.  
  2212.  Subscripting a[b] 
  2213.  
  2214.  Member selection a.b or a->b 
  2215.  
  2216.  Size      sizeof a or sizeof (type) 
  2217.  
  2218.  Logical not !a 
  2219.  
  2220.  Ones complement ~a 
  2221.  
  2222.  Unary minus -a 
  2223.  
  2224.  Unary plus +a 
  2225.  
  2226.  Dereference *a 
  2227.  
  2228.  Type cast (type) a 
  2229.  
  2230.  Multiply  a * b 
  2231.  
  2232.  Divide    a / b 
  2233.  
  2234.  Modulo    a % b 
  2235.  
  2236.  Add       a + b 
  2237.  
  2238.  Subtract  a - b 
  2239.  
  2240.  Left shift a << b 
  2241.  
  2242.  Right shift a >> b 
  2243.  
  2244.  Less than a < b 
  2245.  
  2246.  Greater than a > b 
  2247.  
  2248.  Less than or equal to a <= b 
  2249.  
  2250.  Greater than or equal to a >= b 
  2251.  
  2252.  Equal     a == b 
  2253.  
  2254.  Not equal a != b 
  2255.  
  2256.  Bitwise AND a & b 
  2257.  
  2258.  Bitwise OR a | b 
  2259.  
  2260.  Bitwise exclusive OR a ^ b 
  2261.  
  2262.  Logical AND a && b 
  2263.  
  2264.  Logical OR a || b 
  2265.  
  2266.  
  2267. ΓòÉΓòÉΓòÉ 3.5.3. Values that Are Valid for the Current Representation ΓòÉΓòÉΓòÉ
  2268.  
  2269. When you are entering a value in an entry field such as a register in the 
  2270. Registers monitor, a column of storage in the Storage monitor, or the contents 
  2271. of a variable in another monitor, the debugger checks that the value you enter 
  2272. is valid for the current representation of that column or entry field. 
  2273.  
  2274. A value is valid for the current representation if it contains only the 
  2275. characters used for that representation, and does not exceed the length of the 
  2276. variable or register involved. For example, if you want to change the contents 
  2277. of storage, and the Content style setting for a particular Storage monitor is 
  2278. 32-bit integer, the value you enter must be a valid 32-bit integer, not a 
  2279. floating-point value or other value. 
  2280.  
  2281. Related Information 
  2282.  
  2283. Reference 
  2284. Expressions Supported 
  2285.  
  2286. Procedures 
  2287. Change the Contents of Storage, Variables, and Registers 
  2288.  
  2289.  
  2290. ΓòÉΓòÉΓòÉ 3.5.4. Valid Addresses and Expressions ΓòÉΓòÉΓòÉ
  2291.  
  2292. Here are some examples of addresses or expressions you can enter in the Address 
  2293. or expression field of the Set Storage Change dialog: 
  2294.  
  2295.  MyVariable (C++) : The address pointed to by MyVariable, if such a variable 
  2296.            exists in your program, and if its value is a valid storage address 
  2297.            (for example, if the variable is a pointer to another variable or to 
  2298.            an offset within an array). 
  2299.  
  2300.  MyVariable (COBOL or PL/I) If MyVariable is of type POINTER, the contents of 
  2301.            the variable are used as the address; for other variables, the 
  2302.            address of the variable is used. 
  2303.  
  2304.  &MyVariable (C++) The storage of the variable MyVariable. 
  2305.  
  2306.  A1FCC     The hex address A1FCC, unless you have a variable declared as A1FCC, 
  2307.            in which case it is treated the same as MyVariable above. 
  2308.  
  2309.  0xA1FCC   The hex address A1FCC. 
  2310.  
  2311.  RegisterName The name of a processor register on the system the debuggee 
  2312.            program is running on. If the expression evaluates to a processor 
  2313.            register, that register's contents are used in place of the register 
  2314.            name. 
  2315.  
  2316.  X'000A1FCC' (COBOL) The hex address A1FCC. Note that if you use this syntax, 
  2317.            you must specify an even number of hex digits. For the above value 
  2318.            you could specify 0xA1FCC or X'0A1FCC', but not X'A1FCC'. 
  2319.  
  2320.  Related Information 
  2321.  
  2322.  Reference 
  2323.  Expressions Supported 
  2324.  
  2325.  
  2326. ΓòÉΓòÉΓòÉ 3.6. Problems Getting a Source View ΓòÉΓòÉΓòÉ
  2327.  
  2328. Sometimes when debugging, you may find that the Source window is not available, 
  2329. or that the Source window does not appear to match the program you are 
  2330. debugging (for example, step commands behave erratically). This may occur 
  2331. because the debugger cannot locate the compiler listing for your program, or 
  2332. because the compiler listing does not match the executable. 
  2333.  
  2334. Related Information 
  2335.  
  2336. Reference 
  2337. Debugger Is Using a Different Executable Version 
  2338. Debugger Cannot Find Compiler Listing 
  2339. Environment Variables 
  2340.  
  2341.  
  2342. ΓòÉΓòÉΓòÉ 3.6.1. Debugger Cannot Find Compiler Listing ΓòÉΓòÉΓòÉ
  2343.  
  2344. You may not be able to open a Source window for an object, even though the code 
  2345. was compiled with debug information, if the debugger cannot find the compiler 
  2346. listing for it. When you start debugging such a program, or when execution 
  2347. lands in a part of the program that was compiled with debug information but the 
  2348. debugger cannot find the compiler listing for it, the debugger opens a Source 
  2349. Filename dialog. In this dialog you can enter the name of the data set or PDS 
  2350. and member containing the compiler listing. (The debugger searches for compiler 
  2351. listings using a search path based on environment variables. If you are having 
  2352. problems getting a Source window for an object, check that the appropriate 
  2353. variables are properly set. 
  2354.  
  2355. If you choose Cancel when this dialog appears, only the Session Control window 
  2356. will display. From there you can run your application or exit the debugger. If 
  2357. your application contains calls to routines that have debug data and have 
  2358. compiler listing available, you can have the debugger stop at the entry to 
  2359. these routines. To do this from the Session Control window, you can set a 
  2360. deferred breakpoint for individual routines or you can have the debugger stop 
  2361. at entry to all routines. 
  2362.  
  2363. Related Information 
  2364.  
  2365. Reference 
  2366. Environment Variables 
  2367.  
  2368. Procedures 
  2369. Set a Deferred Breakpoint 
  2370.  
  2371.  
  2372. ΓòÉΓòÉΓòÉ 3.6.2. Debugger Is Using a Different Executable Version ΓòÉΓòÉΓòÉ
  2373.  
  2374. For COBOL programs on OS/390, if the compiler listing and load module time 
  2375. stamps do not match, the debugger displays a warning message. You can continue 
  2376. the debug session, but the debugger's behavior may appear erratic. 
  2377. Non-executable lines may be colored as executable, for example, and step 
  2378. commands may appear to step over multiple statements or stop in the middle of a 
  2379. statement. 
  2380.  
  2381.  
  2382. ΓòÉΓòÉΓòÉ 3.7. More Information on Recursion ΓòÉΓòÉΓòÉ
  2383.  
  2384. Recursion does not have to involve a routine calling itself directly; for 
  2385. example: func1 calls func2 calls func3 calls func1. After the call to func3, 
  2386. each time you step into one of these routines, the entry for that call shows a 
  2387. recursion count one higher than the previous entry for that call. 
  2388.  
  2389. You can use the recursion value to detect unintentionally recursive calls. 
  2390.  
  2391. The debugger can keep track of all calls, whether they are done using a routine 
  2392. or pointer to function. 
  2393.  
  2394.  
  2395. ΓòÉΓòÉΓòÉ 3.8. Valid Entries for Registers ΓòÉΓòÉΓòÉ
  2396.  
  2397. If the value you enter consists entirely of valid hexadecimal characters, it is 
  2398. treated as a hexadecimal value unless it is also the name of a variable that is 
  2399. currently in scope. For example, suppose you have a variable feedbeef, and you 
  2400. enter 'feedbeef' as a register value. If the variablefeedbeef can be 
  2401. represented as a hex value, that hex value is used. Otherwise, the debugger 
  2402. uses the hex value 'feedbeef'. To force the debugger to use a hex value rather 
  2403. than the contents of a variable, precede the hex value with '0x' (for example, 
  2404. '0xfeedbeef').  In COBOL, you can also use 'X'feedbeef''. 
  2405.  
  2406. For C++, you can also enter an expression. Numbers used in the expression are 
  2407. treated as decimal unless explicitly preceded with '0x'.  Only decimal and 
  2408. hexadecimal constants can be entered. 
  2409.  
  2410. Related Information 
  2411.  
  2412. Reference 
  2413. Expressions Supported 
  2414.  
  2415.  
  2416. ΓòÉΓòÉΓòÉ 3.9. Registers Monitor Split Bars ΓòÉΓòÉΓòÉ
  2417.  
  2418. You can change the amount of space given to each group of registers in the 
  2419. Registers monitor, as follows: 
  2420.  
  2421.    1. Place the pointer on the split bar (a division between two panes of the 
  2422.       window). The pointer's shape changes to an icon with two arrows. 
  2423.  
  2424.    2. Click and hold mouse button 1. 
  2425.  
  2426.    3. Drag the mouse up or down (for register groups displayed in rows) or left 
  2427.       or right (for register groups displayed in columns) until you reach the 
  2428.       desired size for the pane. 
  2429.  
  2430.    4. Release the mouse button. 
  2431.  
  2432.  To save the position of the split bars, select Options->Display style and 
  2433.  click on the Save Split Bar Positions check box. 
  2434.  
  2435.  
  2436. ΓòÉΓòÉΓòÉ 3.10. Call Statement Example for COBOL ΓòÉΓòÉΓòÉ
  2437.  
  2438. Given the following:: 
  2439.  
  2440. .
  2441. .
  2442. .
  2443. PROGRAM-ID. MAINPRG.
  2444. .
  2445. .
  2446. .
  2447. CALL 'PROG1'.
  2448. .
  2449. .
  2450. .
  2451.  
  2452. If you step into PROG1 and display the Call Stack window, the call statement 
  2453. shown for MAINPRG is the line number where PROG1 was called. The entry with the 
  2454. highest entry number in the Call Stack window has no Call Statement value 
  2455. because it has not itself called any routine. 
  2456.  
  2457.  
  2458. ΓòÉΓòÉΓòÉ 3.11. Call Statement Example for C++ ΓòÉΓòÉΓòÉ
  2459.  
  2460. Given the following source code: 
  2461.  
  2462. void func1() {/* ... */}
  2463. void main() {
  2464.   func1();
  2465. }
  2466.  
  2467. If you step into func1 and display the Call Stack window, the call statement 
  2468. shown for main is the line number where func1 was called from. The function 
  2469. with the highest entry number in the Call Stack window has no Call Statement 
  2470. entry because it has not itself called any function. 
  2471.  
  2472.  
  2473. ΓòÉΓòÉΓòÉ 3.12. Jump to Location -- COBOL Example ΓòÉΓòÉΓòÉ
  2474.  
  2475. In the example below, assume that line 61 is the current line and that you 
  2476. selected line 62. If you issue a Jump to Location command and then a Step Into 
  2477. command, line 65 will become the current line. However, if you issue a Run to 
  2478. Location command instead of the Jump to Location command, line 63 will become 
  2479. the current line. 
  2480.  
  2481. 59           MOVE 13 TO VAR2.
  2482. 60           MOVE 12 TO VAR1.
  2483. 61           MOVE 12 TO VAR2.
  2484. 62           IF VAR1 = VAR2 THEN
  2485. 63               CALL 'PROG1'
  2486. 64           ELSE
  2487. 65               CALL 'PROG2'
  2488. 66           END-IF.
  2489.  
  2490.  
  2491. ΓòÉΓòÉΓòÉ 3.13. Jump to Location -- C++ Example ΓòÉΓòÉΓòÉ
  2492.  
  2493. In the example below, if you have stepped over the assignment to var2, and you 
  2494. select the if line and issue a Jump to Location command followed by two Step 
  2495. Into commands, execution stops at the first line of func2 instead of func1: 
  2496.  
  2497. //...
  2498. var1=11;
  2499. var2=12;  // just stepped over this statement
  2500. var1=12;
  2501. if (var1==var2) func1();
  2502. else func2();
  2503.  
  2504.  
  2505. ΓòÉΓòÉΓòÉ 4. User Interface Help for Debugger ΓòÉΓòÉΓòÉ
  2506.  
  2507. The Debugger Online Help is divided into four types of information: 
  2508.  
  2509.      Procedures - how to perform a specific task or set of tasks 
  2510.  
  2511.      Reference - technical information you may need to understand how to 
  2512.       perform a task 
  2513.  
  2514.      User Interface - context-sensitive help pages displayed when you press F1 
  2515.       from within the debugger 
  2516.  
  2517.      Concepts - overview information you may need to understand basic 
  2518.       principles of debugging or components of the debugger interface 
  2519.  
  2520.  The main topics for User Interface help are listed below: 
  2521.  
  2522.      Source window 
  2523.  
  2524.      Call Stack monitor 
  2525.  
  2526.      Registers monitor 
  2527.  
  2528.      Storage monitor 
  2529.  
  2530.      Breakpoint List window 
  2531.  
  2532.      Session Control window 
  2533.  
  2534.      Popup Monitor 
  2535.  
  2536.      Private Monitor 
  2537.  
  2538.      Program Monitor 
  2539.  
  2540.      Popup Menu for Private and Program Monitors 
  2541.  
  2542.      Local Variables Monitor 
  2543.  
  2544.      Dialogs 
  2545.  
  2546.      Toolbar Buttons, Shortcut Keys, and Common Menu Items 
  2547.  
  2548.  
  2549. ΓòÉΓòÉΓòÉ 4.1. Source Window ΓòÉΓòÉΓòÉ
  2550.  
  2551. The Source window displays the compiler listing for the program you are 
  2552. debugging. You can perform most debugger actions from the Source window. For 
  2553. more details see: 
  2554.  
  2555.      Introduction to the Source window 
  2556.  
  2557.      How to use the Source window 
  2558.  
  2559.      Menus, buttons, shortcut keys 
  2560.  
  2561.  Note: Remote debugging of OS/390 applications is supported only for COBOL. 
  2562.  References in this help to C/C++ apply only to C/C++ applications being 
  2563.  debugged on the workstation. 
  2564.  
  2565.  
  2566. ΓòÉΓòÉΓòÉ 4.1.1. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  2567.  
  2568. The Source window provides the following menu bar menus, popup menus, toolbar 
  2569. buttons, and shortcut keys: 
  2570.  
  2571.      Menu bar menus: 
  2572.  
  2573.         -  File 
  2574.  
  2575.         -  View 
  2576.  
  2577.         -  Breakpoints 
  2578.  
  2579.         -  Monitors 
  2580.  
  2581.         -  Run 
  2582.  
  2583.         -  Options 
  2584.  
  2585.         -  Windows 
  2586.  
  2587.         -  Help 
  2588.  
  2589.      Prefix area popup menu and code area popup menu 
  2590.  
  2591.      Toolbar buttons: 
  2592.  
  2593.      Shortcut keys: 
  2594.  
  2595.         -  [Ctrl+B->Session Control] 
  2596.  
  2597.         -  [Ctrl+E->Registers] 
  2598.  
  2599.         -  [Ctrl+G->Storage] 
  2600.  
  2601.         -  [Ctrl+K->Call Stack] 
  2602.  
  2603.         -  [Ctrl+R->Run] 
  2604.  
  2605.         -  [Ctrl+V-> Local variables] 
  2606.  
  2607.         -  [Ctrl+X-> Breakpoint list] 
  2608.  
  2609.  
  2610. ΓòÉΓòÉΓòÉ 4.1.1.1. File Menu ΓòÉΓòÉΓòÉ
  2611.  
  2612. Use the File menu of the Source window to open a new compiler listing, find an 
  2613. entry point or the current execution point, or exit the debugger. The File menu 
  2614. contains the following choices: 
  2615.  
  2616.      Open New Source 
  2617.  
  2618.      Find Entry point 
  2619.  
  2620.      Where is Execution Point -- [Ctrl+P] 
  2621.  
  2622.      Close Debugger -- [F3] 
  2623.  
  2624.  
  2625. ΓòÉΓòÉΓòÉ 4.1.1.2. View Menu ΓòÉΓòÉΓòÉ
  2626.  
  2627. Use the View menu of the Source window to locate a text string, scroll through 
  2628. the view,  or view a different compiler listing. The View menu contains the 
  2629. following choices: 
  2630.  
  2631.      Find -- [Ctrl+F] 
  2632.  
  2633.      Find Next -- [Ctrl+N] 
  2634.  
  2635.      Scroll to Line Number 
  2636.  
  2637.      Select Include (not available for COBOL) 
  2638.  
  2639.      Change Text File 
  2640.  
  2641.  
  2642. ΓòÉΓòÉΓòÉ 4.1.1.2.1. Find ΓòÉΓòÉΓòÉ
  2643.  
  2644. Select View->Find or press Ctrl+F to locate a string of text in the Source 
  2645. Window. Enter the string in the Find dialog. The debugger searches forward from 
  2646. the current highlighted word or line to the end of the file, then wraps to the 
  2647. beginning and searches up to the highlighted word or line. If the string is 
  2648. found, it is highlighted. Otherwise the message Text not found is displayed. 
  2649.  
  2650. If you want to search for only exact case matches to the search string, click 
  2651. on the Case sensitive check box. 
  2652.  
  2653. Once you have entered a string in the Find dialog, you can repeat the find 
  2654. operation by selecting View->Find Next or by pressing Ctrl+N. 
  2655.  
  2656.  
  2657. ΓòÉΓòÉΓòÉ 4.1.1.2.2. Find Next ΓòÉΓòÉΓòÉ
  2658.  
  2659. Select View->Find Next or press Ctrl+N to find the next string that matches the 
  2660. search string you specified using View->Find or Ctrl+F. 
  2661.  
  2662. If you have not yet specified a string to search for, this choice is not 
  2663. available. 
  2664.  
  2665.  
  2666. ΓòÉΓòÉΓòÉ 4.1.1.2.3. Scroll to Line Number ΓòÉΓòÉΓòÉ
  2667.  
  2668. Select View->Scroll to Line Number to move to another line in the compiler 
  2669. listing. This action only affects what you see; it does not change what line 
  2670. will be executed next. 
  2671.  
  2672. A dialog opens where you enter a line number to scroll to. You can then either 
  2673. click on OK to scroll to that line, or you can select Breakpoint if you want to 
  2674. set a breakpoint at the line number. 
  2675.  
  2676. Once you have scrolled to a line number, you can select Run to locationor Jump 
  2677. to location to runor jump to that line. 
  2678.  
  2679. You can also open the Scroll to Line Number dialog by typing a line number 
  2680. directly from within the Source window. The dialog opens and the number you 
  2681. typed is placed in the line number entry field. 
  2682.  
  2683.  
  2684. ΓòÉΓòÉΓòÉ 4.1.1.2.4. Select Include ΓòÉΓòÉΓòÉ
  2685.  
  2686. Note: This choice is not available for OS/390 COBOL. 
  2687.  
  2688. Select View->Select Include to display a list of the source files included in 
  2689. your program. You can select a file from this list to view. You can also access 
  2690. these files from the notebook tabs in the Source window (unless you have 
  2691. disabled the Source as Notebook check box in the Source window options). 
  2692.  
  2693.  
  2694. ΓòÉΓòÉΓòÉ 4.1.1.2.5. Change Text File ΓòÉΓòÉΓòÉ
  2695.  
  2696. Select View->Change text file to view a different compiler listing. Sometimes 
  2697. the debugger locates the wrong compiler listing for your program. Change Text 
  2698. File lets you specify the correct  data set and member names for the compiler 
  2699. listing. 
  2700.  
  2701. In the dialog that appears, enter the data set name and member (if the data set 
  2702. is a PDS) that contains the compiler listing you want. 
  2703.  
  2704.  
  2705. ΓòÉΓòÉΓòÉ 4.1.1.3. Breakpoints Menu ΓòÉΓòÉΓòÉ
  2706.  
  2707. Use the Breakpoints menu of the Source window to set and delete breakpoints. It 
  2708. contains the following choices: 
  2709.  
  2710.      Set line 
  2711.  
  2712.      Set entry 
  2713.  
  2714.      Set storage change 
  2715.  
  2716.      Set load occurrence 
  2717.  
  2718.      List -- [Ctrl+X] 
  2719.  
  2720.      Toggle at current line -- space bar 
  2721.  
  2722.      Delete All - delete all breakpoints 
  2723.  
  2724.  You can also set, delete, enable, and disable breakpoints in the prefix area 
  2725.  of the source view. 
  2726.  
  2727.  Related Information 
  2728.  
  2729.  Procedures 
  2730.  Delete All Breakpoints 
  2731.  
  2732.  
  2733. ΓòÉΓòÉΓòÉ 4.1.1.3.1. List ΓòÉΓòÉΓòÉ
  2734.  
  2735. Select Breakpoints->List, or press Ctrl+X from a Source window or the Session 
  2736. Control window, to open the Breakpoints List window. This window lists 
  2737. information on all breakpoints, and lets you enable, disable, set, and delete 
  2738. breakpoints. 
  2739.  
  2740.  
  2741. ΓòÉΓòÉΓòÉ 4.1.1.3.2. Toggle at Current Line ΓòÉΓòÉΓòÉ
  2742.  
  2743. Select Breakpoints->Toggle at current line to set a breakpoint at the current 
  2744. line. If there is already a breakpoint at the current line, this action clears 
  2745. it. 
  2746.  
  2747. Other ways to toggle a breakpoint are to double-click on the line number or to 
  2748. select the line number and press the space bar. 
  2749.  
  2750.  
  2751. ΓòÉΓòÉΓòÉ 4.1.1.4. Monitors Menu ΓòÉΓòÉΓòÉ
  2752.  
  2753. Use the Monitors menu to display one of the debugger monitors. Monitors keep 
  2754. track of the contents of the call stack, registers, storage, and variables, and 
  2755. are updated after each step command or encountered breakpoint. 
  2756.  
  2757. In the Source window, the Monitors menu also includes the Monitor Expression 
  2758. choice, which lets you enter a variable or expression to monitor. 
  2759.  
  2760. You can access the following windows from the Monitors menu: 
  2761.  
  2762.      Call stack 
  2763.  
  2764.      Registers 
  2765.  
  2766.      Storage 
  2767.  
  2768.      Local Variables 
  2769.  
  2770.  
  2771. ΓòÉΓòÉΓòÉ 4.1.1.5. Run Menu ΓòÉΓòÉΓòÉ
  2772.  
  2773. A subset of the following menu choices appears on the Run menu of the Source 
  2774. and Session Control windows: 
  2775.  
  2776.      Step over -- [O] 
  2777.  
  2778.      Step into -- [I] 
  2779.  
  2780.      Step return -- [T] 
  2781.  
  2782.      Run -- [R] or [Ctrl+R] 
  2783.  
  2784.      Run to Location -- [L] 
  2785.  
  2786.      Jump to Location -- [N] 
  2787.  
  2788.      Hide Debugger on Run 
  2789.  
  2790.  The help for each debugger window contains appropriate links to the menu 
  2791.  choices it supports. 
  2792.  
  2793.  
  2794. ΓòÉΓòÉΓòÉ 4.1.1.6. Prefix Area Popup Menu ΓòÉΓòÉΓòÉ
  2795.  
  2796. When you click mouse button 2 [note] in the prefix area of an executable line 
  2797. in a Source window, a popup menu appears with some or all of the following 
  2798. choices: 
  2799.  
  2800.      Run to location -- run to this line 
  2801.  
  2802.      Jump to location -- jump to this line 
  2803.  
  2804.      Set line breakpoint -- set a breakpoint at this line 
  2805.  
  2806.      Clear breakpoint -- clear the breakpoint at the current line 
  2807.  
  2808.      Set breakpoint -- set a breakpoint at the current line 
  2809.  
  2810.      Disable breakpoint -- disable the breakpoint at the current line 
  2811.  
  2812.      Enable breakpoint -- enable the disabled breakpoint at the current line 
  2813.  
  2814.  Executable lines are shown in blue in the prefix area, while non-executable 
  2815.  lines (such as comment lines) are shown in black. 
  2816.  
  2817.  
  2818. ΓòÉΓòÉΓòÉ 4.1.1.7. Code Area Popup Menu ΓòÉΓòÉΓòÉ
  2819.  
  2820. When you click mouse button 2 [note] while your pointer is over text in the 
  2821. compiler listing area of a Source window, a popup menu appears with the choices 
  2822. shown below. The first four choices are used to add the highlighted item to the 
  2823. indicated type of monitor: 
  2824.  
  2825.      Popup expression 
  2826.  
  2827.      Add to private monitor 
  2828.  
  2829.      Add to program monitor 
  2830.  
  2831.      Add to storage monitor 
  2832.  
  2833.      Copy -- copy the highlighted item into the system clipboard 
  2834.  
  2835.      Find -- find the next occurrence of the highlighted item 
  2836.  
  2837.      Find entry -- find an entry point that matches the highlighted item 
  2838.       (entries in different compile units may not be found) 
  2839.  
  2840.      Set entry breakpoint -- set a breakpoint at the entry that matches the 
  2841.       highlighted item (entry must be in the same compile unit) 
  2842.  
  2843.  
  2844. ΓòÉΓòÉΓòÉ 4.1.1.8. Toolbar Buttons and Shortcut Keys ΓòÉΓòÉΓòÉ
  2845.  
  2846. The Source window provides the following toolbar buttons and shortcut keys: 
  2847.  
  2848.      [O] -- Step over 
  2849.  
  2850.      [I] -- Step into 
  2851.  
  2852.      [T] -- Step return 
  2853.  
  2854.      [R] -- Run 
  2855.  
  2856.      -- Monitor expression 
  2857.  
  2858.      -- Call stack monitor 
  2859.  
  2860.      -- Registers monitor 
  2861.  
  2862.      -- Storage monitor 
  2863.  
  2864.      [Ctrl+X] -- Breakpoints list 
  2865.  
  2866.      [Ctrl+B] -- Session Control window 
  2867.  
  2868.  
  2869. ΓòÉΓòÉΓòÉ 4.1.2. Prefix Area ΓòÉΓòÉΓòÉ
  2870.  
  2871. The prefix area of the Source window is the leftmost column in the main area of 
  2872. the window. The values in the prefix area correspond to the line numbers in the 
  2873. current compiler listing 
  2874.  
  2875. You can use the prefix area in the following ways: 
  2876.  
  2877.      To get a bearing on where you are in your file, by using line numbers as 
  2878.       references. 
  2879.  
  2880.      To set and clear breakpoints. Double-click mouse button 1 on a value in 
  2881.       the prefix area, or press the space bar while the cursor is in the prefix 
  2882.       area. This toggles between setting and removing a breakpoint. 
  2883.  
  2884.      To run or jump to a line. Click mouse button 2 [note] over the line's 
  2885.       prefix area, and select either Run to location  or Jump to location from 
  2886.       the popup menu. 
  2887.  
  2888.  Breakpoints are indicated in the prefix area by reverse red highlighting. 
  2889.  
  2890.  
  2891. ΓòÉΓòÉΓòÉ 4.2. Call Stack Window ΓòÉΓòÉΓòÉ
  2892.  
  2893. You can use the Call Stack window to view a list of active routines for a 
  2894. thread, and to raise a Source window to view the listing for any of these 
  2895. routines. To display the window, select Monitors->Call stack or click on the 
  2896. pushbutton in the Source window or the Session Control window. 
  2897.  
  2898. Call Stack window Menus, buttons, and shortcut keys 
  2899.  
  2900. Related Information 
  2901.  
  2902. Procedures 
  2903. Use the Call Stack Window 
  2904.  
  2905. Concepts 
  2906. Introduction to the Call Stack Window 
  2907.  
  2908.  
  2909. ΓòÉΓòÉΓòÉ 4.2.1. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  2910.  
  2911. The Call Stack window provides the following menus, buttons, and shortcut keys: 
  2912.  
  2913.      A popup menu with one item, View 
  2914.  
  2915.      File Options Windows Help 
  2916.  
  2917.     
  2918.  
  2919.      [Ctrl+B->Session Control] [Ctrl+R->Run] 
  2920.  
  2921.  
  2922. ΓòÉΓòÉΓòÉ 4.2.1.1. File Menu ΓòÉΓòÉΓòÉ
  2923.  
  2924. The File menu of the Call Stack window contains only one choice, Close 
  2925. Debugger. 
  2926.  
  2927.  
  2928. ΓòÉΓòÉΓòÉ 4.2.1.2. Options Menu ΓòÉΓòÉΓòÉ
  2929.  
  2930. The Options menu of the Call Stack window contains the following choices: 
  2931.  
  2932.      Fonts 
  2933.  
  2934.      Display style 
  2935.  
  2936.      Restore defaults 
  2937.  
  2938.      Tool buttons 
  2939.  
  2940.      Hover help 
  2941.  
  2942.      Infoarea 
  2943.  
  2944.  
  2945. ΓòÉΓòÉΓòÉ 4.2.1.2.1. Display Style ΓòÉΓòÉΓòÉ
  2946.  
  2947. Select Options->Display style to specify what information you want displayed in 
  2948. the Call Stack window, and to specify the growth direction for the window. 
  2949.  
  2950. In the dialog that appears, you can select from the following items (not 
  2951. necessarily in the order shown here): 
  2952.  
  2953.      Entry No 
  2954.  
  2955.      Function 
  2956.  
  2957.      Prog. Unit Name 
  2958.  
  2959.      Call Statement 
  2960.  
  2961.      Recursion 
  2962.  
  2963.      Stack frame 
  2964.  
  2965.      Stack Size 
  2966.  
  2967.      Compile Date/Time 
  2968.  
  2969.      Entry address 
  2970.  
  2971.  Click on an entry from the list above for help about it. 
  2972.  
  2973.  To select an item in the dialog, position the pointer over it and click mouse 
  2974.  button 1, or press the space bar. (Clicking or pressing again deselects a 
  2975.  selected item.) Selected items appear white on a gray background. To cancel 
  2976.  changes you have made to the window without closing the window, click on 
  2977.  Reset. To restore the debugger defaults, click on Defaults. You can move 
  2978.  through the list by using either the mouse and slide bar or the cursor keys. 
  2979.  
  2980.  
  2981. ΓòÉΓòÉΓòÉ 4.2.1.3. View ΓòÉΓòÉΓòÉ
  2982.  
  2983. Position the pointer over a routine in the Call Stack window, click mouse 
  2984. button 2, and select View from the popup menu. A Source window that contains 
  2985. the compiler listing for the routine is opened or raised. 
  2986.  
  2987.  
  2988. ΓòÉΓòÉΓòÉ 4.2.1.4. Growth Direction ΓòÉΓòÉΓòÉ
  2989.  
  2990. You can change the order in which routines on the call stack are displayed in 
  2991. the Call Stack window -- with the most recent entry at the top, or at the 
  2992. bottom. You can have the window display the most recently called routine at the 
  2993. top, and the outermost calling routine (usually the main program) at the 
  2994. bottom. If you click on the  button, the order is reversed. 
  2995.  
  2996. To change the default growth direction, select Options->Display style and 
  2997. choose the appropriate growth direction from the dialog. 
  2998.  
  2999.  
  3000. ΓòÉΓòÉΓòÉ 4.2.1.5. Growth Direction Pushbutton ΓòÉΓòÉΓòÉ
  3001.  
  3002. Button:  Menu: Options->Display style (from Call Stack window) 
  3003.  
  3004. The Growth direction command changes the order in which entry points on the 
  3005. call stack are displayed (whether the most recently called entry point appears 
  3006. at the top or bottom). See Growth Direction for more information. 
  3007.  
  3008.  
  3009. ΓòÉΓòÉΓòÉ 4.2.2. Source ΓòÉΓòÉΓòÉ
  3010.  
  3011. The Source item in the Call Stack window lists the name of the compiler listing 
  3012. (or object file) for each active entry point in the current thread. 
  3013.  
  3014. Select Source from the Options->Display style dialog for the Call Stack window 
  3015. if you want a column showing object file  names to be displayed. Compiler 
  3016. listing names are displayed by default. 
  3017.  
  3018.  
  3019. ΓòÉΓòÉΓòÉ 4.2.3. View Popup Choice ΓòÉΓòÉΓòÉ
  3020.  
  3021. Use the View choice on the Breakpoints List window's popup menu to raise the 
  3022. focus of the Source window containing a line or entry breakpoint: 
  3023.  
  3024.    1. Select the breakpoint in the Breakpoints List window 
  3025.  
  3026.    2. Click mouse button 2 
  3027.  
  3028.    3. Select View from the breakpoint popup menu 
  3029.  
  3030.  You can also raise the focus of the Source window by double-clicking on the 
  3031.  breakpoint with mouse button 1. 
  3032.  
  3033.  The line containing the breakpoint is displayed in a Source window, with its 
  3034.  prefix area selected. If you want to alter the breakpoint, position the 
  3035.  pointer on that line, click mouse button 2 [note], and select an item from the 
  3036.  popup menu. 
  3037.  
  3038.  
  3039. ΓòÉΓòÉΓòÉ 4.2.4. Compile Date/Time ΓòÉΓòÉΓòÉ
  3040.  
  3041. The Compile Date/Time item in the Call Stack window shows the date and time the 
  3042. routine was compiled. 
  3043.  
  3044. Select Compile Date/Time from the Options->Display style dialog for the Call 
  3045. Stack window if you want a column showing compilation time stamps to be 
  3046. displayed. 
  3047.  
  3048.  
  3049. ΓòÉΓòÉΓòÉ 4.2.5. Entry No ΓòÉΓòÉΓòÉ
  3050.  
  3051. The Entry No (entry number) item in the Call Stack window is a column of 
  3052. numbers that indicate the order of routines. The routine with the highest 
  3053. number is the currently executing routine; the one with the next highest number 
  3054. is its caller. Depending on the growth direction of the Call Stack window, 
  3055. entry numbers appear in descending or ascending order. The smallest entry 
  3056. number is always 1. 
  3057.  
  3058. Select Entry No from the Options->Display style dialog for the Call Stack 
  3059. window if you want a column showing entry numbers to be displayed. 
  3060.  
  3061.  
  3062. ΓòÉΓòÉΓòÉ 4.2.6. Function ΓòÉΓòÉΓòÉ
  3063.  
  3064. The Function item in the Call Stack window lists the name of each active entry 
  3065. point in the current thread, or, where the name is not available, the entry 
  3066. point's address. To view the compiler listing for that entry point, you can: 
  3067.  
  3068.      Double-click on its name 
  3069.  
  3070.      Select its line and press Enter 
  3071.  
  3072.      Position the pointer over it, click on mouse button 2, and select View 
  3073.       from the popup menu 
  3074.  
  3075.  Select Function from the Options->Display style dialog for the Call Stack 
  3076.  window if you want a column showing entry point names to be displayed. This 
  3077.  column is displayed by default. 
  3078.  
  3079.  
  3080. ΓòÉΓòÉΓòÉ 4.2.7. Recursion ΓòÉΓòÉΓòÉ
  3081.  
  3082. The Recursion item in the Call Stack window shows the number of times an entry 
  3083. point has been called and has not yet returned. For example, when an entry 
  3084. point RECURSESUB calls itself and you step into RECURSESUB, the debugger adds a 
  3085. new RECURSESUB entry to the Call Stack window. The recursion count for the new 
  3086. entry is one greater than for the previous RECURSESUB entry. 
  3087.  
  3088. Select Recursion from the Options->Display style dialog for the Call Stack 
  3089. window if you want a column showing recursion values to be displayed. 
  3090.  
  3091. Related Information 
  3092.  
  3093. Reference 
  3094. More Information on Recursion 
  3095.  
  3096.  
  3097. ΓòÉΓòÉΓòÉ 4.2.8. Call Statement ΓòÉΓòÉΓòÉ
  3098.  
  3099. The Call Statement item in the Call Stack window shows the number for the 
  3100. statement that transferred control out of the routine. You can view a C++  or 
  3101. COBOL example of the use of this item. 
  3102.  
  3103. Select Call statement from the Options->Display style dialog for the Call Stack 
  3104. window if you want a column showing the statement number to be displayed. 
  3105.  
  3106.  
  3107. ΓòÉΓòÉΓòÉ 4.2.9. Stack Frame Pointers ΓòÉΓòÉΓòÉ
  3108.  
  3109. These entries in the Call Stack window are the stack frame addresses for each 
  3110. active entry on the call stack. 
  3111.  
  3112.  
  3113. ΓòÉΓòÉΓòÉ 4.2.10. Stack Size ΓòÉΓòÉΓòÉ
  3114.  
  3115. The Stack Size item in the Call Stack window is the size, in bytes, of the 
  3116. stack frame for the called entry point. A routine's stack frame includes the 
  3117. address to return to when the routine completes, a pointer to the previous 
  3118. routine's stack frame, and any local variables or arrays declared in the 
  3119. calling routine. Given that the return address and previous entry point pointer 
  3120. are fixed-size components of a stack frame, the stack frame size provides an 
  3121. indication of how much local data is declared by the entry point. 
  3122.  
  3123. In C++, because the heap, not the stack frame, contains the storage for 
  3124. dynamically allocated local variables, only the pointers to such variables take 
  3125. up stack frame space. 
  3126.  
  3127. Select Size from the Options->Display style dialog for the Call Stack window if 
  3128. you want a column showing the size of the stack frame. 
  3129.  
  3130.  
  3131. ΓòÉΓòÉΓòÉ 4.3. Registers Monitor ΓòÉΓòÉΓòÉ
  3132.  
  3133. Use the Registers monitor to view or modify the contents of the registers 
  3134. monitored for your program.  See the following topics for more information: 
  3135.  
  3136.      How to use the Registers monitor 
  3137.  
  3138.      Menus, buttons, and shortcut keys 
  3139.  
  3140.  
  3141. ΓòÉΓòÉΓòÉ 4.3.1. Menus, Buttons, Shortcut Keys ΓòÉΓòÉΓòÉ
  3142.  
  3143. The Registers monitor provides the following menus, buttons, and shortcut keys: 
  3144.  
  3145.      File Options Windows Help 
  3146.  
  3147.     
  3148.  
  3149.      [Ctrl+B->Session Control] [Ctrl+R->Run] 
  3150.  
  3151.  
  3152. ΓòÉΓòÉΓòÉ 4.3.1.1. File Menu ΓòÉΓòÉΓòÉ
  3153.  
  3154. The File menu of the Registers monitor contains only one choice, Close 
  3155. Debugger. 
  3156.  
  3157.  
  3158. ΓòÉΓòÉΓòÉ 4.3.1.2. Options Menu ΓòÉΓòÉΓòÉ
  3159.  
  3160. The Options menu of the Registers monitor contains the following choices: 
  3161.  
  3162.      Fonts 
  3163.  
  3164.      Display style 
  3165.  
  3166.      Restore defaults 
  3167.  
  3168.      Tool buttons 
  3169.  
  3170.      Hover help 
  3171.  
  3172.      Infoarea 
  3173.  
  3174.  
  3175. ΓòÉΓòÉΓòÉ 4.3.1.2.1. Display Style ΓòÉΓòÉΓòÉ
  3176.  
  3177. Use the Display Style dialog to customize how the information in your Registers 
  3178. monitor is displayed. You can choose what groups of registers are displayed in 
  3179. the window, whether groups are laid out in columns (vertical orientation) or 
  3180. rows (horizontal orientation), whether or not the name of each group appears 
  3181. above its column or row, and whether the positions of split bars between rows 
  3182. or columns are saved. 
  3183.  
  3184. This dialog has the following group boxes and check boxes: 
  3185.  
  3186.  Groups    Use this selection list to choose the groups of registers you want 
  3187.            to display. (Available groups are dependent on the processor on 
  3188.            which the application being debugged is running.) To select an item, 
  3189.            position the pointer over it and click mouse button 1 or press the 
  3190.            space bar. Repeating this action deselects the item. Selected items 
  3191.            appear white on a gray background.
  3192.  
  3193.            You can move through the list by using the mouse and slide bar, or 
  3194.            by using the cursor up and down keys. 
  3195.  
  3196.  Orientation Select Vertical if you want each group of registers to display in 
  3197.            its own column, or select Horizontal if you want it to display in 
  3198.            its own row. (A row can have multiple lines.) 
  3199.  
  3200.  Column titles Select this check box if you want the title of each group of 
  3201.            registers to appear above its group. 
  3202.  
  3203.  Save split bars Select this check box if you want to save the positions of 
  3204.            split bars between rows or columns of registers, from one debugging 
  3205.            session of your program to the next. 
  3206.  
  3207.  To cancel changes you have made without closing the dialog, click on Reset. To 
  3208.  restore the debugger defaults, click on Defaults. 
  3209.  
  3210.  
  3211. ΓòÉΓòÉΓòÉ 4.4. Storage Monitor ΓòÉΓòÉΓòÉ
  3212.  
  3213. Use the Storage monitor to view and update the contents of storage areas used 
  3214. by your program. 
  3215.  
  3216. See the following topics for more information: 
  3217.  
  3218.      Introduction to the Storage monitor 
  3219.  
  3220.      Menus, buttons, and shortcut keys 
  3221.  
  3222.  
  3223. ΓòÉΓòÉΓòÉ 4.4.1. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  3224.  
  3225. The Storage monitor provides the following menus, buttons, and shortcut keys: 
  3226.  
  3227.      File Options Windows Help 
  3228.  
  3229.     
  3230.  
  3231.      [Ctrl+B->Session Control] [Ctrl+R->Run] 
  3232.  
  3233.  
  3234. ΓòÉΓòÉΓòÉ 4.4.1.1. File Menu ΓòÉΓòÉΓòÉ
  3235.  
  3236. The File menu of the Storage monitor contains only one choice, Close Debugger. 
  3237.  
  3238.  
  3239. ΓòÉΓòÉΓòÉ 4.4.1.2. Options Menu ΓòÉΓòÉΓòÉ
  3240.  
  3241. The Options menu of the Storage monitor contains the following choices: 
  3242.  
  3243.      Fonts 
  3244.  
  3245.      Display style 
  3246.  
  3247.      Monitor expression 
  3248.  
  3249.      Restore defaults 
  3250.  
  3251.      Tool buttons 
  3252.  
  3253.      Hover help 
  3254.  
  3255.      Infoarea 
  3256.  
  3257.  
  3258. ΓòÉΓòÉΓòÉ 4.4.1.2.1. Display Style ΓòÉΓòÉΓòÉ
  3259.  
  3260. Use the Display style dialog to specify what information is shown in the 
  3261. Storage monitor, what addressing scheme is used, how many columns of bytes are 
  3262. displayed on each line, and whether column titles are shown. 
  3263.  
  3264. To choose the desired style from the Content Style list, scroll through the 
  3265. list using the cursor keys, or position the pointer over the item you want; 
  3266. then click mouse button 1. To cancel changes you have made without closing the 
  3267. dialog, click on Reset. To restore the debugger defaults, click on Defaults. 
  3268.  
  3269. For information on the other items in the Display style dialog, click on the 
  3270. links below: 
  3271.  
  3272.      Address style 
  3273.  
  3274.      Columns per line 
  3275.  
  3276.      Column titles 
  3277.  
  3278.  
  3279. ΓòÉΓòÉΓòÉ 4.4.1.2.1.1. Address Style ΓòÉΓòÉΓòÉ
  3280.  
  3281. Only the flat address style is available. 
  3282.  
  3283.  
  3284. ΓòÉΓòÉΓòÉ 4.4.1.2.1.2. Columns per Line ΓòÉΓòÉΓòÉ
  3285.  
  3286. Enter a number, or use the arrows beside this field, to specify the number of 
  3287. Columns per line of storage you want displayed. For OS/390 COBOL programs, each 
  3288. column is limited to one byte. 
  3289.  
  3290.  
  3291. ΓòÉΓòÉΓòÉ 4.4.1.2.1.3. Column Titles ΓòÉΓòÉΓòÉ
  3292.  
  3293. Select this check box if you want a title line to appear above the storage area 
  3294. of the Storage monitor. When you choose Column Titles, the Storage monitor 
  3295. displays the address style above the column showing addresses, and displays the 
  3296. offset of the displayed range above the column showing storage contents. 
  3297.  
  3298.  
  3299. ΓòÉΓòÉΓòÉ 4.4.1.2.1.4. Display String Literals in ASCII or EBCDIC ΓòÉΓòÉΓòÉ
  3300.  
  3301. You can view string literals in the Storage monitor in either ASCII or EBCDIC. 
  3302. The default is EBCDIC for OS/390 applications, ASCII for workstation 
  3303. applications. To change the default representation, select Options->Display 
  3304. style and choose the appropriate representation: 
  3305.  
  3306.      HEX and EBCDIC 
  3307.  
  3308.      HEX and ASCII 
  3309.  
  3310.  
  3311. ΓòÉΓòÉΓòÉ 4.4.1.2.2. Monitor Expression in Storage ΓòÉΓòÉΓòÉ
  3312.  
  3313. Select Options->Monitor Expression from the Storage monitor to enter the 
  3314. variable or expression you want to monitor. 
  3315.  
  3316. The storage monitor is updated to show the requested storage address and 
  3317. contents. This saves you from having to scroll up and down through the 
  3318. monitor's storage pane if you know what storage you want to look at. 
  3319.  
  3320. For COBOL, if a variable is added to the storage monitor, the storage monitor 
  3321. opens at the address of that variable. If the variable is of type POINTER, it 
  3322. opens at the address specified by the contents of that variable. 
  3323.  
  3324. For C++, given the code: 
  3325.  
  3326. int x=12;
  3327. int *y=&x;
  3328.  
  3329. to view the storage for x, you can enter either &x or y. 
  3330.  
  3331. Note: For C++, if you enter the name of a variable that is not a pointer, or an 
  3332. expression that is not related to pointers, the debugger shows storage 
  3333. beginning at the address corresponding to the value of the variable or 
  3334. expression. This storage may not have any connection to the variable itself or 
  3335. to the program you are debugging. Normally you would only use variables or 
  3336. expressions that evaluate to an address (for example, pointers, array names, or 
  3337. expressions containing pointers). 
  3338.  
  3339. Select the Enabled monitor check box if the expression you are entering 
  3340. evaluates to a dynamically changing address and you want the Storage monitor to 
  3341. show the storage for that changing address. For instance, if you enter a 
  3342. pointer as part of the expression, and the address contained in that pointer 
  3343. changes dynamically, the Storage monitor will display a different location in 
  3344. storage each time the pointer changes. 
  3345.  
  3346. Related Information 
  3347.  
  3348. Concepts 
  3349. Expressions 
  3350.  
  3351.  
  3352. ΓòÉΓòÉΓòÉ 4.4.1.3. Single-Precision Floating-Point Pushbutton ΓòÉΓòÉΓòÉ
  3353.  
  3354. Button:  Menu: Select Options->Display style from the Storage monitor, then 
  3355. select Single-precision floating-point float from the Content style list. 
  3356.  
  3357. This causes storage in the Storage monitor to be displayed as a series of 
  3358. single-precision floating-point numbers. Each number begins on a four-byte 
  3359. boundary. 
  3360.  
  3361.  
  3362. ΓòÉΓòÉΓòÉ 4.4.1.4. Double-Precision Floating-Point Pushbutton ΓòÉΓòÉΓòÉ
  3363.  
  3364. Button:  Menu: Select Options->Display style from the Storage monitor, then 
  3365. select Double-precision floating-point float from the Content style list. 
  3366.  
  3367. This causes storage in the Storage monitor to be displayed as a series of 
  3368. double-precision floating-point numbers. Each number begins on an eight-byte 
  3369. boundary. 
  3370.  
  3371.  
  3372. ΓòÉΓòÉΓòÉ 4.4.1.5. 32-Bit Unsigned Pushbutton ΓòÉΓòÉΓòÉ
  3373.  
  3374. Button:  Menu: Select Options->Display style (from the Storage monitor), then 
  3375. select 32-bit unsigned integer from the Content style list. 
  3376.  
  3377. This causes storage in the Storage monitor to be displayed as a series of 
  3378. 32-bit unsigned integers. Each number begins on a four-byte boundary. 
  3379.  
  3380.  
  3381. ΓòÉΓòÉΓòÉ 4.4.1.6. 32-bit Signed Pushbutton ΓòÉΓòÉΓòÉ
  3382.  
  3383. Button:  Menu: Select Options->Display style (from Storage monitor) then select 
  3384. 32-bit signed integer from the Content style list. 
  3385.  
  3386. This causes storage in the Storage monitor to be displayed as a series of 
  3387. 32-bit signed integers. Each number begins on a four-byte boundary. 
  3388.  
  3389.  
  3390. ΓòÉΓòÉΓòÉ 4.4.1.7. Character Pushbutton ΓòÉΓòÉΓòÉ
  3391.  
  3392. Button:  Menu: Select Options->Display style (from the Storage monitor) then 
  3393. select Character from the Content style list. 
  3394.  
  3395. This causes storage in the Storage monitor to be displayed as a series of 
  3396. characters. Alphanumeric characters and some punctuation characters are 
  3397. displayed normally; other characters are shown only as small dots. To view the 
  3398. value of a nondisplayed character, change to Hex and character display style 
  3399. and look for the character's hexadecimal value. 
  3400.  
  3401. The Character display style displays storage in EBCDIC. You can display 
  3402. character storage in ASCII by selecting ASCII from the Display Style dialog 
  3403. instead of Character. 
  3404.  
  3405.  
  3406. ΓòÉΓòÉΓòÉ 4.4.1.8. Hex and Character Pushbutton ΓòÉΓòÉΓòÉ
  3407.  
  3408. Button:  Menu: Select Options->Display style from the Storage monitor, then 
  3409. select Hex and character from the Content style list. 
  3410.  
  3411. This causes storage in the Storage monitor to be displayed in columns of 
  3412. hexadecimal data, followed by a single column of characters. In the character 
  3413. section, alphanumeric characters and punctuation characters are displayed 
  3414. normally; other characters are shown only as small dots. 
  3415.  
  3416. When storage is displayed in hex and character data, the characters can be in 
  3417. either ASCII or EBCDIC format depending on the platform the debugger is running 
  3418. on. See Display String Literals in ASCII or EBCDIC for information on how to 
  3419. change the default character set. 
  3420.  
  3421.  
  3422. ΓòÉΓòÉΓòÉ 4.5. Breakpoints List Window ΓòÉΓòÉΓòÉ
  3423.  
  3424. Use the Breakpoints List window to  set, delete, enable, or disable 
  3425. breakpoints. See the following topics for more information: 
  3426.  
  3427.      Introduction to the Breakpoints List window 
  3428.  
  3429.      Menus, buttons, and shortcut keys 
  3430.  
  3431.  
  3432. ΓòÉΓòÉΓòÉ 4.5.1. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  3433.  
  3434. The Breakpoint List window provides the following menus, buttons, and shortcut 
  3435. keys: 
  3436.  
  3437.      File Edit Set Options Windows Help 
  3438.  
  3439.     
  3440.  
  3441.      [Ctrl+B->Session Control] [Ctrl+R->Run] 
  3442.  
  3443.  It also provides a popup menu. 
  3444.  
  3445.  
  3446. ΓòÉΓòÉΓòÉ 4.5.1.1. File Menu ΓòÉΓòÉΓòÉ
  3447.  
  3448. The File menu of the Breakpoints List window contains only one choice, Close 
  3449. Debugger. 
  3450.  
  3451.  
  3452. ΓòÉΓòÉΓòÉ 4.5.1.2. Edit Menu ΓòÉΓòÉΓòÉ
  3453.  
  3454. Use the Edit menu of the Breakpoint List window to delete, change, disable, or 
  3455. enable breakpoints that have already been set. This menu contains the following 
  3456. choices: 
  3457.  
  3458.      Delete 
  3459.  
  3460.      Disable (shown only when the highlighted breakpoint is enabled) 
  3461.  
  3462.      Enable (shown only when the highlighted breakpoint is disabled) 
  3463.  
  3464.      Modify (not supported for OS/390) 
  3465.  
  3466.      Delete all 
  3467.  
  3468.      Disable all 
  3469.  
  3470.      Enable all 
  3471.  
  3472.  
  3473. ΓòÉΓòÉΓòÉ 4.5.1.2.1. Disable ΓòÉΓòÉΓòÉ
  3474.  
  3475. To disable the currently selected breakpoint, choose Edit->Disable from the 
  3476. Breakpoints List window, or place the pointer over the breakpoint you want to 
  3477. disable. Then click on mouse button 2, and select Disable. (The breakpoint must 
  3478. be enabled for this menu choice to be shown.) 
  3479.  
  3480. When you disable a breakpoint, it does not stop execution when the program is 
  3481. run. You can later enable it by selecting Edit->Enable from the Breakpoints 
  3482. List window, or by clicking mouse button 2 on it and selecting Enable from the 
  3483. popup menu. You can also enable all disabled breakpoints by selecting 
  3484. Edit->Enable all. 
  3485.  
  3486. Related Information 
  3487.  
  3488. Procedures 
  3489. Enable and Disable Breakpoints 
  3490.  
  3491.  
  3492. ΓòÉΓòÉΓòÉ 4.5.1.2.2. Enable ΓòÉΓòÉΓòÉ
  3493.  
  3494. To enable the currently selected breakpoint, choose Edit->Enable from the 
  3495. Breakpoints List window, or place the pointer over the breakpoint, click mouse 
  3496. button 2, and select Enable. (The breakpoint must be disabled for this menu 
  3497. choice to be shown.) 
  3498.  
  3499. Disabled breakpoints are remembered by the debugger but do not cause execution 
  3500. to stop when the program runs. When you enable a disabled breakpoint, the 
  3501. debugger stops program execution whenever the breakpoint is encountered. 
  3502.  
  3503. Related Information 
  3504.  
  3505. Procedures 
  3506. Enable and Disable Breakpoints 
  3507.  
  3508.  
  3509. ΓòÉΓòÉΓòÉ 4.5.1.2.3. Modify ΓòÉΓòÉΓòÉ
  3510.  
  3511. Note: Modifying breakpoints is not supported for OS/390 debugging. You can 
  3512. still enter values in the dialog, however when you click on OK or Set, a popup 
  3513. error message displays. To modify breakpoint characteristics for OS/390 
  3514. debugging, delete the breakpoint in question and add it again with the desired 
  3515. characteristics. 
  3516.  
  3517. Select Edit->Modify from the Breakpoints List window to modify settings for the 
  3518. selected breakpoint (for example, the frequency with which it causes execution 
  3519. to stop). After you have made the desired changes, click on OK. 
  3520.  
  3521. If you click on Set instead, the changes are applied and the dialog stays open. 
  3522. Subsequent changes you make within the dialog are applied to the same 
  3523. breakpoint. 
  3524.  
  3525. Related Information 
  3526.  
  3527. Procedures 
  3528. Modify Breakpoint Characteristics 
  3529.  
  3530.  
  3531. ΓòÉΓòÉΓòÉ 4.5.1.2.4. Delete all ΓòÉΓòÉΓòÉ
  3532.  
  3533. Choose Edit->Delete all from the Breakpoints List menu bar to delete all 
  3534. breakpoints in the monitor. 
  3535.  
  3536. Note: If you want to temporarily disable all breakpoints and then later 
  3537. re-enable them, use Edit->Disable all instead. 
  3538.  
  3539.  
  3540. ΓòÉΓòÉΓòÉ 4.5.1.2.5. Disable All ΓòÉΓòÉΓòÉ
  3541.  
  3542. Choose Edit->Disable all from the Breakpoints List window to disable all 
  3543. breakpoints. When you disable breakpoints, the debugger remembers where they 
  3544. are set, but does not use them to stop execution when the program is run. You 
  3545. can later enable them all by selecting Edit->Enable all. You can enable 
  3546. individual breakpoints by clicking with mouse button 2 on each breakpoint you 
  3547. want to enable, and selecting Enable from the popup menu. 
  3548.  
  3549.  
  3550. ΓòÉΓòÉΓòÉ 4.5.1.2.6. Enable All ΓòÉΓòÉΓòÉ
  3551.  
  3552. Choose Edit->Enable all from the Breakpoints List window to enable all 
  3553. breakpoints that have been disabled. 
  3554.  
  3555.  
  3556. ΓòÉΓòÉΓòÉ 4.5.1.3. Set Menu ΓòÉΓòÉΓòÉ
  3557.  
  3558. Use the Set menu of the Breakpoint List window to set various kinds of 
  3559. breakpoints through a dialog. This menu contains the following choices: 
  3560.  
  3561.      Set line 
  3562.  
  3563.      Set entry 
  3564.  
  3565.      Set storage change 
  3566.  
  3567.      Set load occurrence 
  3568.  
  3569.  
  3570. ΓòÉΓòÉΓòÉ 4.5.1.3.1. Set Line ΓòÉΓòÉΓòÉ
  3571.  
  3572. Select Set->Set Line, or select Line breakpoint from the prefix area popup 
  3573. menu, to set a line breakpoint at a particular line number. In the dialog that 
  3574. appears, enter the following information: 
  3575.  
  3576.    1. In the executable entry field, enter an asterisk ('*') for TSO or batch 
  3577.       programs, or the name of the load module for CICS programs. 
  3578.  
  3579.    2. In the source entry field, enter the name of the compile unit you want to 
  3580.       set the breakpoint in 
  3581.  
  3582.    3. In the line entry field, enter the line number you want to set the 
  3583.       breakpoint at. 
  3584.  
  3585.  More information is available on the following entry field items: 
  3586.  
  3587.      Defer breakpoint 
  3588.  
  3589.      Frequency 
  3590.  
  3591.  
  3592. ΓòÉΓòÉΓòÉ 4.5.1.3.2. Set Entry ΓòÉΓòÉΓòÉ
  3593.  
  3594. Select Set->Set Entry to set a breakpoint at an entry point. In the dialog that 
  3595. appears, type the name of the entry point in the Entry entry field. You can 
  3596. also specify what executable and compiler listing you want to set the 
  3597. breakpoint in. 
  3598.  
  3599. More information is available on the following entry field items: 
  3600.  
  3601.      Frequency 
  3602.  
  3603.  
  3604. ΓòÉΓòÉΓòÉ 4.5.1.3.3. Set Storage Change ΓòÉΓòÉΓòÉ
  3605.  
  3606. Use the Set storage change choice to cause execution to stop whenever storage 
  3607. at a specific address is written to. Execution stops even if the value written 
  3608. to storage is the value that was already present at that address. 
  3609.  
  3610. Caution: If you set a storage change breakpoint for an address that is on the 
  3611. call stack, be sure to remove the breakpoint before leaving the routine 
  3612. associated with it. Otherwise, when you return from the routine, the routine's 
  3613. stack frame will be removed from the stack, but the breakpoint will still be 
  3614. active. Any other routine that gets loaded on the stack will then contain the 
  3615. breakpoint. 
  3616.  
  3617. In the Address or Expression entry field, you can type the address or a 
  3618. variable name or expression that evaluates to a valid address. 
  3619.  
  3620. C++: You can also enter the address of a variable, by preceding the variable 
  3621. name with an ampersand (for example, &myVariable). 
  3622.  
  3623. COBOL: For POINTER variables, the contents of the variable are used as the 
  3624. address. For all other variables, the address of the variable is used. 
  3625.  
  3626. Note: If you type FEEDBEEF in the Address or expression entry field, and there 
  3627. is a variable named FEEDBEEF, the debugger will interpret the entry as the 
  3628. variable FEEDBEEF, not the hex value FEEDBEEF. 
  3629.  
  3630. More information is available on the following fields: 
  3631.  
  3632.      Bytes to monitor 
  3633.  
  3634.      Frequency 
  3635.  
  3636.  Related Information 
  3637.  
  3638.  Reference 
  3639.  Expressions Supported 
  3640.  Valid Addresses and Expressions 
  3641.  
  3642.  
  3643. ΓòÉΓòÉΓòÉ 4.5.1.3.3.1. Bytes to Monitor ΓòÉΓòÉΓòÉ
  3644.  
  3645. Select a value from Bytes to Monitor on the Storage Change Breakpoint dialog to 
  3646. tell the debugger the number of bytes you want it to monitor. 
  3647.  
  3648. You can monitor 1 to 128 bytes. 
  3649.  
  3650.  
  3651. ΓòÉΓòÉΓòÉ 4.5.1.3.3.2. Set Load Occurrence ΓòÉΓòÉΓòÉ
  3652.  
  3653. Select Set Load Occurrence to set a breakpoint that will stop execution when 
  3654. the DLL you specify has been loaded. For COBOL, this applies to programs that 
  3655. were compiled using the DYNAM compiler option or that contain CALL identifier 
  3656. statements. In the Load Occurrence Breakpoint dialog, type the name of the DLL 
  3657. or program in the DLL File Name entry field. For example, if the DLL or program 
  3658. is in the partitioned data set A.B.LOAD(HELLO), you would enter only the member 
  3659. name, HELLO.  Execution stops when the DLL or program is loaded. 
  3660.  
  3661. Additional help is available for the Frequency field in this dialog. 
  3662.  
  3663.  
  3664. ΓòÉΓòÉΓòÉ 4.5.1.4. Options Menu ΓòÉΓòÉΓòÉ
  3665.  
  3666. The Options menu of the Breakpoints List window contains the following choices: 
  3667.  
  3668.      Fonts 
  3669.  
  3670.      Display style 
  3671.  
  3672.      Sort 
  3673.  
  3674.      Restore defaults 
  3675.  
  3676.      Tool buttons 
  3677.  
  3678.      Hover help 
  3679.  
  3680.      Infoarea 
  3681.  
  3682.  
  3683. ΓòÉΓòÉΓòÉ 4.5.1.4.1. Display Style ΓòÉΓòÉΓòÉ
  3684.  
  3685. You can change the way items in the Breakpoint List window are displayed by 
  3686. selecting Options->Display style, then selecting those items you want from the 
  3687. Select Items list in the Display Style dialog. 
  3688.  
  3689. The Select Items list in the Display Style dialog contains the following items: 
  3690.  
  3691.  Type      The type of breakpoint, for example, Line or Address 
  3692.  
  3693.  Executable The name of the executable file the breakpoint applies to 
  3694.  
  3695.  Source    The name of the compilation unit the breakpoint applies to 
  3696.  
  3697.  File      The compiler listing 
  3698.  
  3699.  Entry     The compile unit containing the breakpoint 
  3700.  
  3701.  Line      The line containing the breakpoint 
  3702.  
  3703.  Address   The instruction address of the breakpoint 
  3704.  
  3705.  State     Whether the breakpoint is enabled or disabled. 
  3706.  
  3707.  Status    Whether the breakpoint is active or deferred (a deferred breakpoint 
  3708.            is a breakpoint set in a compile unit that has not yet been loaded). 
  3709.  
  3710.  Thread    What threads the breakpoint applies to. 
  3711.  
  3712.  Expression An optional expression that must evaluate to true for the 
  3713.            breakpoint to cause execution to stop. For COBOL programs, if you 
  3714.            choose this item, the variable names are shown for all storage 
  3715.            change breakpoints that were set using a variable name. 
  3716.  
  3717.  From      The first encounter of the breakpoint that causes execution to stop. 
  3718.            For example, if this value is set to 5, each run command could, if 
  3719.            no other breakpoints are encountered and the program does not 
  3720.            terminate, pass over the breakpoint four times before stopping the 
  3721.            fifth time. 
  3722.  
  3723.  To        The last encounter of the breakpoint that causes execution to stop. 
  3724.  
  3725.  Every     The frequency at which encounters of the breakpoint cause execution 
  3726.            to stop. For example, if Every is set to 2, the breakpoint causes 
  3727.            execution to stop every other time the breakpoint is encountered. 
  3728.  
  3729.  If you select the Reset pushbutton any changes you have made in the Display 
  3730.  Style dialog are discarded, and the dialog is refreshed to show the display 
  3731.  style in effect when you opened the dialog. If you select Default the default 
  3732.  items are displayed in the Breakpoint List window. 
  3733.  
  3734.  
  3735. ΓòÉΓòÉΓòÉ 4.5.1.4.2. Sort ΓòÉΓòÉΓòÉ
  3736.  
  3737. You can change the order of items in the Breakpoint List window by selecting 
  3738. Options->Sort, then selecting the item you want the debugger to sort on from 
  3739. the Select Item list in the Sort dialog. By default, breakpoints are sorted by 
  3740. line number. 
  3741.  
  3742.  
  3743. ΓòÉΓòÉΓòÉ 4.5.1.5. Defer Breakpoint ΓòÉΓòÉΓòÉ
  3744.  
  3745. Select the Defer breakpoint check box from within the Line Breakpoint dialog if 
  3746. you want to set a line breakpoint in a compile unit that is not currently 
  3747. loaded. 
  3748.  
  3749. When a compile unit in which you have set a deferred breakpoint is loaded, the 
  3750. breakpoint state changes from deferred to active. When the compile unit is 
  3751. freed, the breakpoint state changes back to deferred. 
  3752.  
  3753. If you enter an incorrect source, file, or line number, the debugger will be 
  3754. unable to activate the breakpoint when the compile unit is loaded, and the 
  3755. breakpoint will remain in the deferred state. 
  3756.  
  3757. Note: You cannot set a deferred breakpoint in a preloaded compile unit, but you 
  3758. can set one in a program that has some preloaded compile units and some 
  3759. dynamically loaded ones. 
  3760.  
  3761. Related Information 
  3762.  
  3763. Procedures 
  3764. Set a Deferred Breakpoint 
  3765.  
  3766.  
  3767. ΓòÉΓòÉΓòÉ 4.5.2. Thread ΓòÉΓòÉΓòÉ
  3768.  
  3769. Note: This list is not available for COBOL programs running on OS/390, because 
  3770. COBOL on OS/390 does not support multithreaded programs. 
  3771.  
  3772. The Thread pulldown list in a Set breakpoint or Modify breakpoint dialog lets 
  3773. you choose what threads to activate the breakpoint in. To select a thread ID 
  3774. from the list, select the List button, then highlight the thread where you want 
  3775. to set the breakpoint. 
  3776.  
  3777.  
  3778. ΓòÉΓòÉΓòÉ 4.5.3. Defer Breakpoint ΓòÉΓòÉΓòÉ
  3779.  
  3780. Select the Defer breakpoint check box if you want to set an entry breakpoint in 
  3781. a DLL or subprogram that is not currently loaded. 
  3782.  
  3783. If you set a deferred function breakpoint on a C++ function, and that function 
  3784. is overloaded, the debugger sets the breakpoint in all of the overloaded 
  3785. functions when the DLL or subprogram is loaded. 
  3786.  
  3787. When a DLL or subprogram in which you have set a deferred breakpoint is loaded, 
  3788. the breakpoint state changes from deferred to active. When the DLL or 
  3789. subprogram is freed, the breakpoint state changes back to deferred. 
  3790.  
  3791. If you enter an incorrect source, file, or entry point, the debugger will be 
  3792. unable to activate the breakpoint when the DLL or subprogram is loaded, and the 
  3793. breakpoint will remain in the deferred state. 
  3794.  
  3795. Note: You cannot set a deferred breakpoint in a preloaded DLL or subprogram, 
  3796. but you can set one in a program that has some preloaded DLL or subprograms and 
  3797. some dynamically loaded ones. 
  3798.  
  3799.  
  3800. ΓòÉΓòÉΓòÉ 4.5.4. Frequency ΓòÉΓòÉΓòÉ
  3801.  
  3802. Use the Frequency fields to tell the debugger when to stop on a breakpoint and 
  3803. when to skip it. The debugger keeps track of how many times each breakpoint is 
  3804. encountered. The fields in this section tell the debugger on which encounter of 
  3805. a breakpoint the debugger should first stop, how often it should stop, and on 
  3806. which encounter the debugger should no longer stop. 
  3807.  
  3808. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  3809. ΓöéEntry field                           ΓöéPurpose                              Γöé
  3810. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3811. ΓöéFrom                                  ΓöéEnter the first breakpoint encounter Γöé
  3812. Γöé                                      Γöéyou want the debugger to stop on. ForΓöé
  3813. Γöé                                      Γöéexample, if you want the debugger to Γöé
  3814. Γöé                                      Γöéskip over the breakpoint the first   Γöé
  3815. Γöé                                      Γöéfive times it is encountered, enter  Γöé
  3816. Γöé                                      Γöé'6'.                                 Γöé
  3817. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3818. ΓöéTo                                    ΓöéEnter the last breakpoint encounter  Γöé
  3819. Γöé                                      Γöéyou want the debugger to stop on. ForΓöé
  3820. Γöé                                      Γöéexample, if you want it to start     Γöé
  3821. Γöé                                      Γöéignoring the breakpoint after the    Γöé
  3822. Γöé                                      Γöé20th encounter, enter '20'. To have  Γöé
  3823. Γöé                                      Γöéit always stop on the breakpoint,    Γöé
  3824. Γöé                                      Γöéenter 'Infinity'.                    Γöé
  3825. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3826. ΓöéEvery                                 ΓöéEnter the frequency with which you   Γöé
  3827. Γöé                                      Γöéwant the debugger to stop on this    Γöé
  3828. Γöé                                      Γöébreakpoint. For example, if you want Γöé
  3829. Γöé                                      Γöéit to stop on only one out of every  Γöé
  3830. Γöé                                      Γöéfour encounters, enter '4'.          Γöé
  3831. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3832.  
  3833.  
  3834. ΓòÉΓòÉΓòÉ 4.5.5. Expression ΓòÉΓòÉΓòÉ
  3835.  
  3836. Note: The Expression entry field in breakpoint dialogs is not available for 
  3837. COBOL programs running on OS/390. 
  3838.  
  3839. If you are setting a line breakpoint or function breakpoint in a C++ program, 
  3840. or a line or address breakpoint in a COBOL or PL/I program, you can also type 
  3841. an expression into the Expression entry field in a Set breakpoint or Modify 
  3842. breakpoint dialog. The execution of the program stops at the breakpoint only if 
  3843. the condition specified in this field tests true. 
  3844.  
  3845. For example, if you are debugging a C++ program you could type the following: 
  3846.  
  3847. (i==1) || (j==k) && (k!=5)
  3848.  
  3849. For a COBOL  program, you could type the following: 
  3850.  
  3851. myvar = 'abc'
  3852.  
  3853. Note: Variables in a conditional expression that is associated with a function 
  3854. breakpoint are limited to any static or global variables known to the called 
  3855. function when the function is called. The expression cannot contain local or 
  3856. automatic variables. 
  3857.  
  3858. Related Information 
  3859.  
  3860. Reference 
  3861. Expressions Supported 
  3862.  
  3863.  
  3864. ΓòÉΓòÉΓòÉ 4.5.6. Breakpoints List Popup Menu ΓòÉΓòÉΓòÉ
  3865.  
  3866. In the Breakpoints List window, if your pointer is on a line containing 
  3867. breakpoint information and you click on mouse button 2, a popup menu appears 
  3868. with the following choices that affect breakpoints: 
  3869.  
  3870.      View 
  3871.  
  3872.      Delete - deletes the selected breakpoint 
  3873.  
  3874.      Enable (if breakpoint is currently disabled) 
  3875.  
  3876.      Disable (if breakpoint is currently enabled) 
  3877.  
  3878.      Modify (not supported on OS/390) - opens a dialog that lets you change 
  3879.       the breakpoint 
  3880.  
  3881.      Delete all - deletes all the breakpoints 
  3882.  
  3883.  Related Information 
  3884.  
  3885.  Procedures 
  3886.  Delete Breakpoints 
  3887.  Modify Breakpoint Characteristics 
  3888.  Delete All Breakpoints 
  3889.  
  3890.  
  3891. ΓòÉΓòÉΓòÉ 4.6. Session Control Window ΓòÉΓòÉΓòÉ
  3892.  
  3893. The Session Control window is open throughout the debugging session. It shows 
  3894. the current status of the debugger, and gives you a number of ways to access 
  3895. other windows or perform common functions. See the following topics for more 
  3896. information: 
  3897.  
  3898.      Introduction to the Session Control window 
  3899.  
  3900.      Menus, buttons, and shortcut keys 
  3901.  
  3902.  
  3903. ΓòÉΓòÉΓòÉ 4.6.1. Using the Components Pane ΓòÉΓòÉΓòÉ
  3904.  
  3905. You can expand any item in the Components pane that has a '+' beside it. The 
  3906. following list shows what items you can expand, and what items appear when you 
  3907. do: 
  3908.  
  3909.  Item with + Expands to 
  3910.  
  3911.  *(corresponds to the load module) A list of compile units. A compile unit does 
  3912.            not appear in the list until it has been called. 
  3913.  
  3914.  Compile unit The names of nested programs 
  3915.  
  3916.  Source file (C++ only): File-scope functions and class member functions 
  3917.            defined within each source file. C++ class member functions are not 
  3918.            shown. 
  3919.  
  3920.  To shift the focus within the Session Control window between the Threads and 
  3921.  Components panes, use the pointer or the cursor left and right keys. To move 
  3922.  between items in the list, use the mouse or the cursor up and down keys. To 
  3923.  expand or collapse items in the list, use the + and - keys. 
  3924.  
  3925.  To open or raise the focus of the Source window for a compile unit or nested 
  3926.  program, double-click on the item, or highlight it and press Enter. 
  3927.  
  3928.  To access the popup menu for an entry, select that entry and click on mouse 
  3929.  button 2 . This menu lets you set a breakpoint on the entry or view its 
  3930.  compiler listing. 
  3931.  
  3932.  
  3933. ΓòÉΓòÉΓòÉ 4.6.2. Using the Threads Pane ΓòÉΓòÉΓòÉ
  3934.  
  3935. When you expand a thread in the Threads pane, the thread's priority is visible. 
  3936.  
  3937. To move between items in the list, use the mouse or the cursor up and down 
  3938. keys. To expand or collapse items in the list, use the + and - keys. 
  3939.  
  3940. To open or raise the focus of the Source window for a thread, press the Enter 
  3941. key while the thread is highlighted, or double-click on it. 
  3942.  
  3943. To access a popup menu for a highlighted thread, click mouse button 2. This 
  3944. menu lets you disable or enable the thread, access monitors specific to it, or 
  3945. jump to the execution point in the Source window for the thread. 
  3946.  
  3947. To enable a disabled thread or disable an enabled one, select the thread, then 
  3948. choose Run->Thread enabled. This toggles the current enablement for that 
  3949. thread. If the thread is enabled, a checkmark appears beside Thread enabled. 
  3950.  
  3951. Note: In the Source window, the current execution line is reverse-highlighted 
  3952. in black. When a thread becomes disabled, the current execution line for that 
  3953. thread's Source Window changes to gray. 
  3954.  
  3955.  
  3956. ΓòÉΓòÉΓòÉ 4.6.3. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  3957.  
  3958. The Session Control window provides the following menus, buttons, and shortcut 
  3959. keys: 
  3960.  
  3961.      File Breakpoints Monitors Run Options Windows Help 
  3962.  
  3963.     
  3964.  
  3965.      [Ctrl+E->Registers] [Ctrl+G->Storage] [Ctrl+K->Call Stack] 
  3966.       [Ctrl+P->Source] [Ctrl+R->Run] [Ctrl+V->Local variables] [Ctrl+X-> 
  3967.       Breakpoint list] 
  3968.  
  3969.  The Session Control window also has a popup menu. 
  3970.  
  3971.  
  3972. ΓòÉΓòÉΓòÉ 4.6.3.1. Shortcut Keys ΓòÉΓòÉΓòÉ
  3973.  
  3974. The Session Control window provides the following shortcut keys: 
  3975.  
  3976.      [Ctrl+E->Registers] 
  3977.  
  3978.      [Ctrl+G->Storage] 
  3979.  
  3980.      [Ctrl+K->Call Stack] 
  3981.  
  3982.      [Ctrl+P->Source] 
  3983.  
  3984.      [Ctrl+R->Run] 
  3985.  
  3986.      [Ctrl+V->Local variables] 
  3987.  
  3988.      [Ctrl+X-> Breakpoint list] 
  3989.  
  3990.  
  3991. ΓòÉΓòÉΓòÉ 4.6.3.2. Breakpoints Menu ΓòÉΓòÉΓòÉ
  3992.  
  3993. Use the Breakpoints menu to set and delete breakpoints. It contains the 
  3994. following choices: 
  3995.  
  3996.      Set line 
  3997.  
  3998.      Set entry 
  3999.  
  4000.      Set storage change 
  4001.  
  4002.      Set load occurrence 
  4003.  
  4004.      List -- [Ctrl+X] 
  4005.  
  4006.      Delete All - Deletes all breakpoints 
  4007.  
  4008.  Related Information 
  4009.  
  4010.  Procedures 
  4011.  Delete All Breakpoints 
  4012.  
  4013.  
  4014. ΓòÉΓòÉΓòÉ 4.6.3.3. Options Menu ΓòÉΓòÉΓòÉ
  4015.  
  4016. The Options menu in the Session Control window lets you change settings for the 
  4017. window and for the debugger itself. It contains the following choices: 
  4018.  
  4019.      Window settings 
  4020.  
  4021.      Debugger settings 
  4022.  
  4023.  
  4024. ΓòÉΓòÉΓòÉ 4.6.3.3.1. Display Style ΓòÉΓòÉΓòÉ
  4025.  
  4026. Select Options->Window settings->Display style to specify what you want 
  4027. displayed in the Session Control window. The dialog contains the following 
  4028. check boxes: 
  4029.  
  4030.  Check box Effect when checked 
  4031.  
  4032.  Show all components All components are displayed (when this choice is not 
  4033.            checked, only components with debug information are displayed) 
  4034.  
  4035.  Show module path The path name is displayed 
  4036.  
  4037.  Sort components Components are sorted in alphabetical order 
  4038.  
  4039.  Sort threads Threads are sorted in numerical order 
  4040.  
  4041.  Show status line A status line is displayed, showing the current state of the 
  4042.            debugger (for example, Application Executing) 
  4043.  
  4044.  
  4045. ΓòÉΓòÉΓòÉ 4.6.3.3.2. Window Settings ΓòÉΓòÉΓòÉ
  4046.  
  4047. Select the Window settings cascading choices from the Session Control window 
  4048. Options menu to modify these settings: 
  4049.  
  4050.  Fonts     Lets you change the font for the Session Control window. 
  4051.  
  4052.  Display style Opens a Display Style dialog where you can specify how 
  4053.            information in the Session Control window should appear. 
  4054.  
  4055.  Restore defaults Resets all settings for the Session Control window to their 
  4056.            original values. 
  4057.  
  4058.  Tool buttons Displays or hides the toolbar buttons for the window. 
  4059.  
  4060.  Hover help Enables or disables hover help, which provides brief descriptions 
  4061.            of menu choices and toolbar buttons when your pointing device passes 
  4062.            over them. 
  4063.  
  4064.  Infoarea  Enables or disables the window's information area, which provides 
  4065.            longer textual descriptions of menu choices and toolbar buttons when 
  4066.            your pointing device passes over them. 
  4067.  
  4068.  
  4069. ΓòÉΓòÉΓòÉ 4.6.3.3.3. Set Breakpoints at Entry Points ΓòÉΓòÉΓòÉ
  4070.  
  4071. Select the Set breakpoints at entry points  check box in the Debugger 
  4072. Properties dialog of the Session Control window to automatically set a 
  4073. breakpoint at each entry point. 
  4074.  
  4075.  
  4076. ΓòÉΓòÉΓòÉ 4.6.3.4. Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  4077.  
  4078. Popup menus are available for both the Threads pane and the Components pane of 
  4079. the Session Control window.  Note that COBOL on OS/390 only supports 
  4080. applications with a single thread. 
  4081.  
  4082. In the Threads pane, when you highlight the main entry for a thread and click 
  4083. mouse button 2, the popup menu displays a subset of the following choices: 
  4084.  
  4085.      Execution point -- opens or raises a Source window showing the next line 
  4086.       to be executed in the thread 
  4087.  
  4088.      Enable -- changes a disabled thread's state to enabled, so that it can 
  4089.       run (shown only for disabled threads) 
  4090.  
  4091.      Disable -- changes an enabled thread's state to disabled, to prevent it 
  4092.       from running (shown only for enabled threads) 
  4093.  
  4094.      Registers -- opens or raises a Registers monitor for that thread 
  4095.  
  4096.      Call Stack -- opens or raises a Call Stack window for that thread 
  4097.  
  4098.      Local expressions -- opens or raises a Local Variables window for that 
  4099.       thread 
  4100.  
  4101.  In the Components pane, if you click mouse button 2 over an entry point, the 
  4102.  popup menu contains the following choices: 
  4103.  
  4104.      View -- open or raise a Source window for the file or entry point 
  4105.  
  4106.      Set entry breakpoint -- set a breakpoint at the start of this entry 
  4107.       point, for the current thread only 
  4108.  
  4109.      Set breakpoint every -- set a breakpoint at the start of the entry point, 
  4110.       for all threads 
  4111.  
  4112.  If you click mouse button 2 over an object file, the popup menu contains only 
  4113.  the View choice. 
  4114.  
  4115.  
  4116. ΓòÉΓòÉΓòÉ 4.6.3.5. Source ΓòÉΓòÉΓòÉ
  4117.  
  4118. Menu: Windows->Source from the Session Control window Keystroke: Ctrl+P 
  4119.  
  4120. Opens or raises a Source window. When you use Ctrl+P to access a source window, 
  4121. the source window raised or opened contains the contents of the active thread 
  4122. and entry point. When you use the Windows menu and more than one Source window 
  4123. is currently open, a Source choice is available for each open Source window. 
  4124.  
  4125.  
  4126. ΓòÉΓòÉΓòÉ 4.7. Monitor Expression Dialog ΓòÉΓòÉΓòÉ
  4127.  
  4128. Use the Monitor Expression dialog to add a variable or expression to one of the 
  4129. following monitors, which are listed in the dialog within a radio button group 
  4130. box: 
  4131.  
  4132.      Popup 
  4133.  
  4134.      Private 
  4135.  
  4136.      Program 
  4137.  
  4138.      Storage 
  4139.  
  4140.  The current context is shown in an information group box. This is the context 
  4141.  (file, line number, etc.) that the debugger uses in evaluating the expression 
  4142.  you enter. 
  4143.  
  4144.  Type in an expression, and either click on OK or Monitor. OK closes the 
  4145.  dialog, while Monitor leaves the dialog open so that you can add more 
  4146.  expressions. 
  4147.  
  4148.  If the expression you want to add is already in your compiler listing, you can 
  4149.  place that expression in the Expression entry field in the Monitor Expression 
  4150.  dialog as follows: highlight it with the mouse, then select Monitor->Monitor 
  4151.  expression or click on the  toolbar button. 
  4152.  
  4153.  See Expressions Supported for more information on what types of expressions 
  4154.  the debugger supports. 
  4155.  
  4156.  Related Information 
  4157.  
  4158.  Concepts 
  4159.  Expressions 
  4160.  
  4161.  
  4162. ΓòÉΓòÉΓòÉ 4.7.1. Current Context ΓòÉΓòÉΓòÉ
  4163.  
  4164. The context group box on the right side of the Monitor Expression dialog shows 
  4165. the current execution point in your program: the file name, line number, type 
  4166. of view, and thread number. 
  4167.  
  4168. If you have tried to add an expression to a monitor and the debugger issues the 
  4169. error message 'Expression validation failed', you may have included 
  4170. out-of-scope variables or constants in your expression. If you are familiar 
  4171. with the structure of your program, the Context group box may help you 
  4172. determine if scoping problems are the cause of the error. 
  4173.  
  4174. See Expressions Supported for information on what types of expressions the 
  4175. debugger supports. 
  4176.  
  4177.  
  4178. ΓòÉΓòÉΓòÉ 4.8. Popup Monitor ΓòÉΓòÉΓòÉ
  4179.  
  4180. A Popup monitor displays a variable or expression you select for monitoring. 
  4181. This monitor is associated with a specific Source window and closes when the 
  4182. associated window closes. Each time you add a variable or expression to a Popup 
  4183. monitor, a new Popup monitor opens. The contents of each Popup monitor are 
  4184. updated after each Step or Run command (except for disabled variables or 
  4185. expressions within such windows). 
  4186.  
  4187. You can do the following from a Popup monitor: 
  4188.  
  4189.      Access a popup menu using mouse button 2 
  4190.  
  4191.      Change the contents of a variable 
  4192.  
  4193.  The Popup monitor has the following menu items on its titlebar menu: 
  4194.  
  4195.      File 
  4196.  
  4197.      Options 
  4198.  
  4199.      Help 
  4200.  
  4201.  Related Information 
  4202.  
  4203.  Procedures 
  4204.  Add Expressions and Variables to a Monitor 
  4205.  
  4206.  
  4207. ΓòÉΓòÉΓòÉ 4.8.1. File Menu ΓòÉΓòÉΓòÉ
  4208.  
  4209. The File menu of the Popup monitor contains only one choice, Close Debugger. 
  4210.  
  4211.  
  4212. ΓòÉΓòÉΓòÉ 4.8.2. Popup Menu for the Popup Monitor ΓòÉΓòÉΓòÉ
  4213.  
  4214. To access a popup menu from within a Popup window, place the pointer over a 
  4215. monitored variable or expression, and click mouse button 2. Depending on the 
  4216. variable or expression you selected, the popup menu provides a subset of the 
  4217. following choices: 
  4218.  
  4219.      Edit 
  4220.  
  4221.      Next representation 
  4222.  
  4223.      Change font 
  4224.  
  4225.      Dereference  (not available for COBOL) 
  4226.  
  4227.      Delete 
  4228.  
  4229.      Enable 
  4230.  
  4231.      Disable 
  4232.  
  4233.  
  4234. ΓòÉΓòÉΓòÉ 4.8.2.1. Change Font ΓòÉΓòÉΓòÉ
  4235.  
  4236. Choose Change font from the popup menu in a Popup monitor to change the font 
  4237. used within that particular monitor. Choose the desired font from the Font 
  4238. Selection dialog that appears. 
  4239.  
  4240.  
  4241. ΓòÉΓòÉΓòÉ 4.9. Private Monitor ΓòÉΓòÉΓòÉ
  4242.  
  4243. Use a Private monitor to monitor variables or expressions from a given Source 
  4244. window. Each Source window can have its own Private monitor. This monitor is 
  4245. similar to the Program monitor. 
  4246.  
  4247. See the following for more information: 
  4248.  
  4249.      Introduction to the Private Monitor 
  4250.  
  4251.      Monitor popup menu 
  4252.  
  4253.      Menus, buttons, and shortcut keys 
  4254.  
  4255.  Related Information 
  4256.  
  4257.  Concepts 
  4258.  Differences between Program and Private Monitors 
  4259.  
  4260.  
  4261. ΓòÉΓòÉΓòÉ 4.9.1. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  4262.  
  4263. The Private monitor provides the following menus, buttons, and shortcut keys: 
  4264.  
  4265.      Edit Options Help 
  4266.  
  4267.     
  4268.  
  4269.      [Ctrl+B->Session Control] [Ctrl+R->Run] 
  4270.  
  4271.  The Private monitor also has a popup menu. To access it, place the pointer 
  4272.  within the content area of the window and click mouse button 2. 
  4273.  
  4274.  
  4275. ΓòÉΓòÉΓòÉ 4.9.1.1. Edit Menu ΓòÉΓòÉΓòÉ
  4276.  
  4277. The Edit menu of both the Program monitor and Private monitor contains the 
  4278. following choices: 
  4279.  
  4280.      Delete 
  4281.  
  4282.      Delete all 
  4283.  
  4284.      Select all 
  4285.  
  4286.      Deselect all 
  4287.  
  4288.      Enable 
  4289.  
  4290.      Disable 
  4291.  
  4292.      Other elements 
  4293.  
  4294.      Representation 
  4295.  
  4296.  
  4297. ΓòÉΓòÉΓòÉ 4.9.1.1.1. Delete ΓòÉΓòÉΓòÉ
  4298.  
  4299. Select Edit->Delete from the monitor menu bar, or Delete from a monitor popup 
  4300. menu, to delete the selected variables or expressions from the monitor. 
  4301.  
  4302. To delete all expressions, select Edit->Delete all. 
  4303.  
  4304.  
  4305. ΓòÉΓòÉΓòÉ 4.9.1.1.2. Delete All ΓòÉΓòÉΓòÉ
  4306.  
  4307. Choose Edit->Delete all from the monitor menu bar to delete all expressions and 
  4308. variables in the monitor. 
  4309.  
  4310. Note: If you delete an expression or variable and then later decide that you 
  4311. want to monitor it, you must add it again from the Source window. 
  4312.  
  4313.  
  4314. ΓòÉΓòÉΓòÉ 4.9.1.1.3. Disable ΓòÉΓòÉΓòÉ
  4315.  
  4316. Select Edit->Disable from the monitor menu bar, or Disable from the monitor 
  4317. popup menu, to prevent the displayed contents of the selected variables or 
  4318. expressions from being updated when they change. 
  4319.  
  4320.  
  4321. ΓòÉΓòÉΓòÉ 4.9.1.1.4. Enable ΓòÉΓòÉΓòÉ
  4322.  
  4323. Select Edit->Enable from the monitor menu bar to have the debugger refresh the 
  4324. displayed contents of the selected variables or expressions whenever they 
  4325. change. Variables and expressions are enabled by default, so this choice is 
  4326. only available if a variable or expression has been disabled. 
  4327.  
  4328.  
  4329. ΓòÉΓòÉΓòÉ 4.9.1.1.5. Other Elements ΓòÉΓòÉΓòÉ
  4330.  
  4331. If an array, structure, or C++ class object in a monitor contains more than 50 
  4332. elements, only 50 elements are displayed at a time. By default, the first 50 
  4333. elements are displayed. To display a different range of elements, select 
  4334. Edit->Other elements (or select Other elements from the monitor popup menu), 
  4335. and enter the number of the first element to display. 
  4336.  
  4337. You can change the default maximum of 50 elements to a different maximum by 
  4338. setting the DEBUG_NUMBEROFELEMENTS environment variable on the local 
  4339. workstation before starting the debugger. 
  4340.  
  4341. In a C++ class object, elements are listed in declaration order, regardless of 
  4342. their access specifier (private, protected or public). 
  4343.  
  4344. The 50-element limit applies to each level within an array or a C++ class 
  4345. object. For example, if a C++ class contains 100 member variables and the first 
  4346. variable is a 60-element array, the debugger displays the name of the array 
  4347. only (with a '+' to its left so that you can expand it) and the next 49 
  4348. elements of the C++ class object. When you expand the array, the debugger 
  4349. displays the first 50 elements of the array, and the next 49 elements of the 
  4350. C++ class object. To view more elements of the array, position the pointer on 
  4351. the array name and select Other elements. To view more elements of the C++ 
  4352. class object, position the pointer on the object name and select Other 
  4353. elements. 
  4354.  
  4355.  
  4356. ΓòÉΓòÉΓòÉ 4.9.1.1.6. Representation, Next Representation ΓòÉΓòÉΓòÉ
  4357.  
  4358. Select Edit->Representation, or Next representation from the monitor popup 
  4359. menu, to change the representation of monitor contents. 
  4360.  
  4361. Edit->Representation: 
  4362.  
  4363. The available representations for the selected variable or element are shown in 
  4364. a cascading menu. For example, for a 32-bit signed integer, the available 
  4365. representations are decimal and hexadecimal. 
  4366.  
  4367. Next representation (from the monitor popup menu, or from the  toolbar button): 
  4368.  
  4369. The next representation of the selected variable or element is shown. The 
  4370. debugger cycles through available representations in the same order as would be 
  4371. shown in the Edit->Representation cascading menu list for the selected item. 
  4372.  
  4373.  
  4374. ΓòÉΓòÉΓòÉ 4.9.2. Options Menu ΓòÉΓòÉΓòÉ
  4375.  
  4376. The Options menu of the Private and Program monitors contains the following 
  4377. choices: 
  4378.  
  4379.      Fonts 
  4380.  
  4381.      Restore defaults 
  4382.  
  4383.      Show enablement 
  4384.  
  4385.      Show context 
  4386.  
  4387.      Tool buttons 
  4388.  
  4389.      Hover help 
  4390.  
  4391.      Infoarea 
  4392.  
  4393.  
  4394. ΓòÉΓòÉΓòÉ 4.9.2.1. Show Enablement ΓòÉΓòÉΓòÉ
  4395.  
  4396. You can disable a variable or expression within a monitor so that its displayed 
  4397. contents are not updated when the variable or expression changes. Later you can 
  4398. enable the variable or expression so that its contents are updated. Select 
  4399. Options->Show enablement if you want the current enablement of each variable or 
  4400. expression to be shown. A column appears that shows either 'Enabled' or 
  4401. 'Disabled' for each entry in the monitor. 
  4402.  
  4403.  
  4404. ΓòÉΓòÉΓòÉ 4.9.2.2. Show Context ΓòÉΓòÉΓòÉ
  4405.  
  4406. Select Options->Show context from a monitor window to display the following 
  4407. information in separate columns for each object or array: 
  4408.  
  4409.      The name of the data set (PDS and member, if applicable) that contains 
  4410.       the listing  where the object or array is declared 
  4411.  
  4412.      The line number 
  4413.  
  4414.      The variable or expression name 
  4415.  
  4416.  This information is only shown once for each object or array. 
  4417.  
  4418.  
  4419. ΓòÉΓòÉΓòÉ 4.10. Program Monitor ΓòÉΓòÉΓòÉ
  4420.  
  4421. Use the Program monitor to collect variables or expressions that you want to 
  4422. monitor. This monitor is not associated with any specific Source window, and is 
  4423. always displayed unless you specifically close it. It is similar to the Private 
  4424. monitor. 
  4425.  
  4426. See the following for more information: 
  4427.  
  4428.      Introduction to the Program monitor 
  4429.  
  4430.      Monitor popup menu 
  4431.  
  4432.      Menus, buttons, and shortcut keys 
  4433.  
  4434.  Related Information 
  4435.  
  4436.  Concepts 
  4437.  Differences between Program and Private Monitors 
  4438.  
  4439.  
  4440. ΓòÉΓòÉΓòÉ 4.10.1. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  4441.  
  4442. The Program monitor provides the following menus, buttons, and shortcut keys: 
  4443.  
  4444.      File Edit Options Windows Help 
  4445.  
  4446.     
  4447.  
  4448.      [Ctrl+B->Session Control] [Ctrl+R->Run] 
  4449.  
  4450.  The Program monitor also has a popup menu. To access it, position the pointer 
  4451.  in the content area of the window and click mouse button 2. 
  4452.  
  4453.  
  4454. ΓòÉΓòÉΓòÉ 4.10.1.1. File Menu ΓòÉΓòÉΓòÉ
  4455.  
  4456. The File menu of the Program monitor contains only one choice, Close Debugger. 
  4457.  
  4458.  
  4459. ΓòÉΓòÉΓòÉ 4.11. Popup Menu for Private and Program Monitors ΓòÉΓòÉΓòÉ
  4460.  
  4461. When you select a variable or element in the Program monitor or a Private 
  4462. monitor, and click mouse button 2, a popup menu appears with a subset of the 
  4463. following choices: 
  4464.  
  4465.      Edit 
  4466.  
  4467.      Delete 
  4468.  
  4469.      Disable 
  4470.  
  4471.      Dereference (not available for COBOL) 
  4472.  
  4473.      Next representation 
  4474.  
  4475.      Other elements 
  4476.  
  4477.  
  4478. ΓòÉΓòÉΓòÉ 4.11.1. Edit Contents ΓòÉΓòÉΓòÉ
  4479.  
  4480. To edit the contents of a variable in a monitor, do one of the following: 
  4481.  
  4482.      Select the line containing the variable, click mouse button 2, and select 
  4483.       Edit from the popup menu 
  4484.  
  4485.      Double-click on the content of the variable 
  4486.  
  4487.      Use the cursor keys or the mouse to highlight the line containing the 
  4488.       variable, and press Enter. 
  4489.  
  4490.  Then enter a new value and press Enter. This value must be valid for the type 
  4491.  of variable. 
  4492.  
  4493.  Related Information 
  4494.  
  4495.  Procedures 
  4496.  Change the Contents of Storage, Variables, and Registers 
  4497.  
  4498.  
  4499. ΓòÉΓòÉΓòÉ 4.11.2. Dereference ΓòÉΓòÉΓòÉ
  4500.  
  4501. Note: The Dereference choice is not available for COBOL programs running on 
  4502. OS/390. 
  4503.  
  4504. Choose Dereference from the popup menu in a Program, Private, or Local 
  4505. Variables monitor to show the storage contents of the selected pointer 
  4506. variable. 
  4507.  
  4508. This choice is available only when the variable you have selected is a pointer, 
  4509. or is an array or object name displayed in pointer representation (with a '>' 
  4510. to its left). To change an array or object to pointer representation, choose 
  4511. Edit->Representation from the menu bar, or Next representation from the popup 
  4512. menu. 
  4513.  
  4514.  
  4515. ΓòÉΓòÉΓòÉ 4.12. Local Variables Monitor ΓòÉΓòÉΓòÉ
  4516.  
  4517. Use the Local Variables monitor to view all local variables that are currently 
  4518. in scope. The Source window for each thread of your program has its own Local 
  4519. Variables monitor. Note that COBOL on OS/390 only supports a single thread. 
  4520.  
  4521. See the following for more information: 
  4522.  
  4523.      Introduction to the Local Variables monitor 
  4524.  
  4525.      Local Variables popup menu 
  4526.  
  4527.      Menus, buttons, and shortcut keys 
  4528.  
  4529.  
  4530. ΓòÉΓòÉΓòÉ 4.12.1. Menus, Buttons, and Shortcut Keys ΓòÉΓòÉΓòÉ
  4531.  
  4532. The Local Variables monitor provides the following menus, buttons, and shortcut 
  4533. keys: 
  4534.  
  4535.      File Edit Options Windows Help 
  4536.  
  4537.     
  4538.  
  4539.      [Ctrl+B->Session Control] [Ctrl+R->Run] 
  4540.  
  4541.  The Local Variables monitor also has a popup menu. To access it, position the 
  4542.  pointer in the content area of the monitor and click mouse button 2. 
  4543.  
  4544.  
  4545. ΓòÉΓòÉΓòÉ 4.12.1.1. File Menu ΓòÉΓòÉΓòÉ
  4546.  
  4547. The File menu of the Local Variables monitor contains only one choice, Close 
  4548. Debugger. 
  4549.  
  4550.  
  4551. ΓòÉΓòÉΓòÉ 4.12.1.2. Edit Menu ΓòÉΓòÉΓòÉ
  4552.  
  4553. The Edit menu of the Local Variables monitor contains the following choices: 
  4554.  
  4555.      Delete 
  4556.  
  4557.      Select all 
  4558.  
  4559.      Deselect all 
  4560.  
  4561.      Other elements 
  4562.  
  4563.      Representation 
  4564.  
  4565.  
  4566. ΓòÉΓòÉΓòÉ 4.12.1.3. Options Menu ΓòÉΓòÉΓòÉ
  4567.  
  4568. The Options menu of the Local Variables monitor contains the following choices: 
  4569.  
  4570.      Fonts 
  4571.  
  4572.      Restore defaults 
  4573.  
  4574.      Show context 
  4575.  
  4576.      Tool buttons 
  4577.  
  4578.      Hover help 
  4579.  
  4580.      Infoarea 
  4581.  
  4582.  
  4583. ΓòÉΓòÉΓòÉ 4.12.2. Popup Menu for the Local Variables Monitor ΓòÉΓòÉΓòÉ
  4584.  
  4585. When you select a variable or element in a Local Variables monitor and click 
  4586. mouse button 2, a popup menu appears with a subset of the following choices: 
  4587.  
  4588.      Edit 
  4589.  
  4590.      Dereference (not available for COBOL) 
  4591.  
  4592.      Delete 
  4593.  
  4594.      Next representation 
  4595.  
  4596.      Other elements 
  4597.  
  4598.  
  4599. ΓòÉΓòÉΓòÉ 4.13. Debugger Dialogs ΓòÉΓòÉΓòÉ
  4600.  
  4601. You can get to help on the following debugger dialogs from here: 
  4602.  
  4603.      Source List Dialog 
  4604.  
  4605.      Exception Dialog 
  4606.  
  4607.      Overloaded Dialog 
  4608.  
  4609.      Source Filename Dialog 
  4610.  
  4611.      Monitor Expression Dialog 
  4612.  
  4613.      Exception Filtering Dialog 
  4614.  
  4615.  See also the following main help pages: 
  4616.  
  4617.      Main Debugger Windows 
  4618.  
  4619.      Monitor Windows 
  4620.  
  4621.      Other Help Topics 
  4622.  
  4623.      Debugger Help Home Page 
  4624.  
  4625.  
  4626. ΓòÉΓòÉΓòÉ 4.13.1. Debugger Properties Dialog ΓòÉΓòÉΓòÉ
  4627.  
  4628. Use the Debugger Properties dialog to define: 
  4629.  
  4630.      Whether to keep displaying, minimize, or discard a Source window from 
  4631.       which control has just passed 
  4632.  
  4633.      Whether multiple views can be displayed. 
  4634.  
  4635.      Whether to automatically set a breakpoint at every entry point. 
  4636.  
  4637.      Whether clicking on mouse button 2 will perform a step command or bring 
  4638.       up a popup menu. 
  4639.  
  4640.  This dialog contains the following group boxes: 
  4641.  
  4642.      Display at stop 
  4643.  
  4644.      Old source disposition 
  4645.  
  4646.      Settings 
  4647.  
  4648.      Mouse button 2 behavior 
  4649.  
  4650.  
  4651. ΓòÉΓòÉΓòÉ 4.13.1.1. Display at stop Group Box ΓòÉΓòÉΓòÉ
  4652.  
  4653. Note: This choice has no effect on COBOL programs running on OS/390. 
  4654.  
  4655. The Display at stop group box lets you control how many Source windows are 
  4656. displayed at once, and how many Source windows the Old source disposition 
  4657. setting applies to. The choices are: 
  4658.  
  4659.  Only stopping thread Keeps, minimizes, or discards all views that are not the 
  4660.            stopping thread. 
  4661.  
  4662.  All threads Keeps, minimizes, or discards the views for old components within 
  4663.            each thread. 
  4664.  
  4665.  For example, if you select Only stopping thread, the Old source disposition 
  4666.  applies to all the Source windows except the current view of the stopping 
  4667.  thread. If you select All threads, the Old source disposition applies only to 
  4668.  the Source windows for the components from which execution has just left 
  4669.  within a thread. 
  4670.  
  4671.  
  4672. ΓòÉΓòÉΓòÉ 4.13.1.2. Old source disposition Group Box ΓòÉΓòÉΓòÉ
  4673.  
  4674. The Old source disposition group box lets you control the behavior of Source 
  4675. windows from which control has just passed. The choices are: 
  4676.  
  4677.  Keep      Leaves old Source windows open 
  4678.  
  4679.  Minimize  Changes old Source windows into icons 
  4680.  
  4681.  Discard   Closes old Source windows 
  4682.  
  4683.  
  4684. ΓòÉΓòÉΓòÉ 4.13.1.3. Settings Group Box ΓòÉΓòÉΓòÉ
  4685.  
  4686. The Settings group box contains the following: 
  4687.  
  4688.      The Multiple views check box, which you can select to display more than 
  4689.       one Source window for a particular object. If the check box is enabled, 
  4690.       when you open a new window for an object, the first window stays open and 
  4691.       is overlaid by the second one. If the check box is disabled, the first 
  4692.       window is closed when a second window is opened. The default is not to 
  4693.       display multiple Source windows. 
  4694.  
  4695.      The Set breakpoints at entry points check box. If this check box is 
  4696.       enabled, the debugger will set breakpoints at all entry points for 
  4697.       programs that were compiled and linked with debug information. 
  4698.  
  4699.  
  4700. ΓòÉΓòÉΓòÉ 4.13.1.4. Mouse button 2 behavior Group Box ΓòÉΓòÉΓòÉ
  4701.  
  4702. The behavior of mouse button 2 within the Source window depends on the Mouse 
  4703. button 2 behavior group box in the Debugger properties dialog (accessed from 
  4704. the Source or Session Control windows through Options->Debugger 
  4705. settings->Debugger properties). 
  4706.  
  4707. Select one of the following check boxes to determine how mouse button 2 will 
  4708. behave in the Source window. 
  4709.  
  4710.  Popup menus Displays a popup menu, where one is available; otherwise does 
  4711.            nothing. 
  4712.  
  4713.  Step always Performs a step command. 
  4714.  
  4715.  Popup menus and step in white space Displays a popup menu, when the pointer is 
  4716.            over certain text (for example, a variable or a line number in the 
  4717.            prefix area), and performs a step command when the pointer is over 
  4718.            white space or over text for which no popup menu is available. 
  4719.  
  4720.  COBOL example: If Popup menus and step in white space is checked, and you 
  4721.  click mouse button 2 on the COBOL line MOVE 18 TO MYVAR., a popup menu appears 
  4722.  if the pointer is over MOVE, 18, TO, or MYVAR, and a step command is performed 
  4723.  if the pointer is on white space or the period. 
  4724.  
  4725.  
  4726. ΓòÉΓòÉΓòÉ 4.13.2. Exception Dialog ΓòÉΓòÉΓòÉ
  4727.  
  4728. The Exception dialog is displayed whenever an exception is raised that matches 
  4729. the exception category you specified in the Exception Filtering dialog. The 
  4730. line where the exception occurred is highlighted in a Source window. 
  4731.  
  4732. This dialog gives you three choices: 
  4733.  
  4734.  Examine/Retry The debugger behaves as if the exception did not occur, 
  4735.            continues execution at the instruction right after the one that 
  4736.            raised the exception, and stops execution at the next statement for 
  4737.            which debug information is available. Depending on how critical the 
  4738.            original exception was, a new exception may be raised before the 
  4739.            debugger reaches the next statement. 
  4740.  
  4741.  Step exception The debugger steps into the first registered exception handler 
  4742.            (tracked by the operating system). Execution stops at the first 
  4743.            executable line of code in that exception. 
  4744.  
  4745.  Run exception The debugger runs the exception handler that is registered to 
  4746.            handle the type of exception that was encountered. 
  4747.  
  4748.  
  4749. ΓòÉΓòÉΓòÉ 4.13.3. Exception Filtering Dialog ΓòÉΓòÉΓòÉ
  4750.  
  4751. In the Exception Filtering dialog, select the types of exceptions you want the 
  4752. debugger to recognize. 
  4753.  
  4754. If an exception is encountered during execution, and that exception is in an 
  4755. exception category you selected, the Exception dialog opens. Otherwise the 
  4756. exception is ignored. 
  4757.  
  4758. You can choose one of the following exception categories: 
  4759.  
  4760.  Test(NONE) The debugger does not recognize any exceptions 
  4761.  
  4762.  Test(ERROR) The debugger stops at all severity 2 or higher exceptions 
  4763.  
  4764.  Test(ALL) The debugger stops at all Language Environment (LE) exceptions 
  4765.  
  4766.  
  4767. ΓòÉΓòÉΓòÉ 4.13.4. Find Entry Point Dialog ΓòÉΓòÉΓòÉ
  4768.  
  4769. To use the Find Entry point dialog: 
  4770.  
  4771.    1. In the Entry entry field, type the name of the entry point you want to 
  4772.       locate. An error message appears if a matching entry point was not found. 
  4773.  
  4774.    2. If you want to search only files that contain debugging information, 
  4775.       enable the Debugging information only check box. 
  4776.  
  4777.    3. If you want to search for the string exactly as typed, select the Case 
  4778.       sensitive check box. Do not select it if you want to search for both 
  4779.       uppercase and lowercase matches to the string. 
  4780.  
  4781.    4. Select OK. 
  4782.  
  4783.  
  4784. ΓòÉΓòÉΓòÉ 4.13.5. Monitor Properties Dialog ΓòÉΓòÉΓòÉ
  4785.  
  4786. Use the Monitor Properties dialog to select the settings for monitoring 
  4787. variables or expressions. You can set one check box in each of the following 
  4788. group boxes (click on the Group box name for more information): 
  4789.  
  4790.  Group box Purpose 
  4791.  
  4792.  Monitor Location The window into which the variable or expression being 
  4793.            monitored is placed. 
  4794.  
  4795.  Popup Duration For a popup expression window, determines how long the monitors 
  4796.            are displayed. 
  4797.  
  4798.  
  4799. ΓòÉΓòÉΓòÉ 4.13.5.1. Monitor Location ΓòÉΓòÉΓòÉ
  4800.  
  4801. Choose one of the following radio buttons to determine which monitor will open 
  4802. when you select a variable or expression to monitor. 
  4803.  
  4804.      Popup monitor 
  4805.  
  4806.      Private monitor 
  4807.  
  4808.      Program monitor 
  4809.  
  4810.      Storage monitor 
  4811.  
  4812.  
  4813. ΓòÉΓòÉΓòÉ 4.13.5.2. Popup Duration ΓòÉΓòÉΓòÉ
  4814.  
  4815. If you selected Popup in the Monitor Location group box, select one of the 
  4816. following radio buttons to specify at what point the popup expression window is 
  4817. closed. 
  4818.  
  4819.  Step/run  The monitor closes when the next step or run command is executed. 
  4820.  
  4821.  New source The monitor closes when execution stops in a new source. 
  4822.  
  4823.  Permanent The monitor is associated with a specific Source window, and is 
  4824.            closed when that Source window is closed. 
  4825.  
  4826.  
  4827. ΓòÉΓòÉΓòÉ 4.13.6. Open New Source Dialog ΓòÉΓòÉΓòÉ
  4828.  
  4829. Use the Open New Source dialog to open another Source window containing a new 
  4830. executable or DLL for the program you are already debugging. 
  4831.  
  4832. You may find it easier to open a new Source window by expanding components in 
  4833. the Components pane of the Session Control window until you find the 
  4834. compilation unit you want. The Open New Source dialog is useful for opening a 
  4835. source view for a compile unit when you are unsure of the file name of the 
  4836. executable that was created from that compile unit. 
  4837.  
  4838. If you know the name of the compile unit, turn on the All executables check box 
  4839. and type in the compile unit name, then select OK. 
  4840.  
  4841. If you do not know the name of the compile unit, leave the Source field blank, 
  4842. and turn off the All executables check box. You can then select an executable 
  4843. from the Executable pulldown list. (Note that a compilation unit will not show 
  4844. up in this window until it has been called at least once.) If you want to view 
  4845. only those executables compiled and linked with debug information, turn on the 
  4846. Debugging information only check box. 
  4847.  
  4848. Once you have chosen an executable, click on OK (or press Enter) and a Source 
  4849. List dialog displays with a list of the compilation units for that executable. 
  4850. From this Source List dialog, select the compilation unit you want to open a 
  4851. Source window for. 
  4852.  
  4853. Related Information 
  4854.  
  4855. Reference 
  4856. Environment Variables 
  4857.  
  4858.  
  4859. ΓòÉΓòÉΓòÉ 4.13.7. Overloaded Dialog ΓòÉΓòÉΓòÉ
  4860.  
  4861. When you specify a C++ function in a debugger entry field (for example, when 
  4862. you are setting an entry breakpoint), and the debugger finds more than one 
  4863. overload of that entry point, an Overloaded dialog appears, containing a list 
  4864. of all entry points with the name you specified. Choose the entry point from 
  4865. the displayed list that matches the entry point you wanted. 
  4866.  
  4867. A signature is the combination of return type and argument types that 
  4868. distinguish a C++ function from other functions of the same name. 
  4869.  
  4870.  
  4871. ΓòÉΓòÉΓòÉ 4.13.8. Source List Dialog ΓòÉΓòÉΓòÉ
  4872.  
  4873. The Source List dialog opens if you select an executable in the Open New Source 
  4874. dialog but do not specify a new compiler listing to open. 
  4875.  
  4876. This dialog may appear when you are debugging a COBOL program on OS/390, but 
  4877. the information you enter has no effect in this environment. 
  4878.  
  4879. The lefthand pane contains the names of executable files, and the righthand 
  4880. pane shows corresponding compile units. Select a compile unit from the list, 
  4881. and either click on OK or press Enter. 
  4882.  
  4883. You can resize the panes by dragging the split bar between them to the left or 
  4884. right. 
  4885.  
  4886.  
  4887. ΓòÉΓòÉΓòÉ 4.13.9. Source Filename Dialog ΓòÉΓòÉΓòÉ
  4888.  
  4889. The Source Filename dialog is displayed when you try to debug a component that 
  4890. contains debugging data for which the compiler listing cannot be located. To 
  4891. respond to this dialog, do one of the following: 
  4892.  
  4893.      If the compiler listing is located in another partitioned data set or 
  4894.       sequential data set, type in the partitioned data set and member name or 
  4895.       the sequential data set name, and select OK. 
  4896.  
  4897.      If you do not have the compiler listing for this component, select 
  4898.       Cancel. No Source window will be displayed. 
  4899.  
  4900.  
  4901. ΓòÉΓòÉΓòÉ 4.14. Toolbar Buttons, Shortcut Keys, and Common Menu Items ΓòÉΓòÉΓòÉ
  4902.  
  4903. Each window of the debugger provides a subset of the following toolbar buttons, 
  4904. shortcut keys, and menu choices: 
  4905.  
  4906.      Toolbar buttons:
  4907.  
  4908.      Shortcut keys: [Ctrl+B] -->Raise Session Control window [Ctrl+R] -->Run 
  4909.       (The Source window and Session Control window have their own specialized 
  4910.       sets of shortcut keys.) 
  4911.  
  4912.      Menu choices:
  4913.  
  4914.       File Edit Monitors Run Options Windows Help 
  4915.  
  4916.  
  4917. ΓòÉΓòÉΓòÉ 4.14.1. Toolbar Buttons ΓòÉΓòÉΓòÉ
  4918.  
  4919. Toolbar buttons let you quickly access a wide range of commands and windows 
  4920. from the Source and Session Control windows, and a lesser range from other 
  4921. windows. These buttons are displayed when the Tool buttons item is set from a 
  4922. window's Options menu (or from a menu beneath Options). The following toolbar 
  4923. buttons are available: 
  4924.  
  4925.  
  4926. ΓòÉΓòÉΓòÉ 4.14.1.1. Call Stack Button ΓòÉΓòÉΓòÉ
  4927.  
  4928. Click on the  button to open or raise a Call Stack window containing the 
  4929. contents of the call stack for the current thread. This is the same as 
  4930. selecting Monitors->Call Stack or typing Ctrl+K. 
  4931.  
  4932.  
  4933. ΓòÉΓòÉΓòÉ 4.14.1.2. Delete All Button ΓòÉΓòÉΓòÉ
  4934.  
  4935. Click on the  button to delete all breakpoints in a breakpoint list, or to 
  4936. delete all variables and expressions in a monitor. 
  4937.  
  4938.  
  4939. ΓòÉΓòÉΓòÉ 4.14.1.3. Delete Button ΓòÉΓòÉΓòÉ
  4940.  
  4941. Click on the  button to delete the selected breakpoint in a breakpoint list, or 
  4942. to delete the selected variable or expression in a monitor. 
  4943.  
  4944.  
  4945. ΓòÉΓòÉΓòÉ 4.14.1.4. Session Control Button ΓòÉΓòÉΓòÉ
  4946.  
  4947. Click on the  button to bring the Session Control window into focus. 
  4948.  
  4949.  
  4950. ΓòÉΓòÉΓòÉ 4.14.1.5. Monitor Expression Button ΓòÉΓòÉΓòÉ
  4951.  
  4952. Click on the  button from the Source window to add a variable or expression to 
  4953. one of the debugger monitors. In the Monitor expression dialog that opens, 
  4954. enter a variable or expression to monitor. 
  4955.  
  4956. If you highlight a variable or expression before you press the Monitor 
  4957. expression button, that variable or expression is automatically placed in the 
  4958. Monitor expression dialog. 
  4959.  
  4960. See Expressions Supported for information on what types of expressions the 
  4961. debugger supports. 
  4962.  
  4963.  
  4964. ΓòÉΓòÉΓòÉ 4.14.1.6. Project Button ΓòÉΓòÉΓòÉ
  4965.  
  4966. Note: This button is only supported for versions of the debugger installed with 
  4967. an IBM VisualAge product, and is only shown if the debugger was invoked from a 
  4968. WorkFrame project. 
  4969.  
  4970. Click on the Project button to open or raise the WorkFrame. 
  4971.  
  4972.  
  4973. ΓòÉΓòÉΓòÉ 4.14.1.7. Registers Button ΓòÉΓòÉΓòÉ
  4974.  
  4975. Click on the  button to open or raise a Registers monitor containing the 
  4976. contents of processor registers for the current thread. This is the same as 
  4977. selecting Monitors->Registers or typing Ctrl+E. 
  4978.  
  4979.  
  4980. ΓòÉΓòÉΓòÉ 4.14.1.8. Storage Button ΓòÉΓòÉΓòÉ
  4981.  
  4982. Click on the  button to open or raise a Storage monitor, which you can use to 
  4983. display storage used by your program. This is the same as selecting 
  4984. Monitors->Storage or typing Ctrl+G. 
  4985.  
  4986.  
  4987. ΓòÉΓòÉΓòÉ 4.14.1.9. Breakpoints Button ΓòÉΓòÉΓòÉ
  4988.  
  4989. Click on the  button to open or raise the Breakpoints list window, which you 
  4990. can use to view, set, clear, disable, or enable breakpoints. This is the same 
  4991. as selecting Breakpoints->List or typing Ctrl+X. 
  4992.  
  4993.  
  4994. ΓòÉΓòÉΓòÉ 4.14.2. Common Menu Choices ΓòÉΓòÉΓòÉ
  4995.  
  4996. A subset of the following menus appears on many debugger windows: 
  4997.  
  4998.      File 
  4999.  
  5000.      Edit 
  5001.  
  5002.      Options -- you can view help for a short list of common options, or a 
  5003.       complete list of all available options 
  5004.  
  5005.      Monitors 
  5006.  
  5007.      Run 
  5008.  
  5009.      Windows 
  5010.  
  5011.      Help 
  5012.  
  5013.  The help for each debugger window contains appropriate links to the menus it 
  5014.  supports. 
  5015.  
  5016.  
  5017. ΓòÉΓòÉΓòÉ 4.14.2.1. File Menu ΓòÉΓòÉΓòÉ
  5018.  
  5019. A subset of the following menu choices appears on the File menu of many 
  5020. debugger windows: 
  5021.  
  5022.      Open new source 
  5023.  
  5024.      Locate entry point 
  5025.  
  5026.      Where is execution point -- [Ctrl+P] 
  5027.  
  5028.      Close debugger -- [F3] 
  5029.  
  5030.  The help for each debugger window contains appropriate links to the File menu 
  5031.  choices it supports. 
  5032.  
  5033.  
  5034. ΓòÉΓòÉΓòÉ 4.14.2.1.1. Open New Source ΓòÉΓòÉΓòÉ
  5035.  
  5036. Note: The Open new module choice on the File menu is available only on the 
  5037. Source and Session Control windows. 
  5038.  
  5039. Select this choice when you want to view a compiler listing that is associated 
  5040. with your application, but is not currently shown in a Source window. The Open 
  5041. New Source dialog displays. 
  5042.  
  5043. Note: Open new source does not change the program being debugged. The compiler 
  5044. listing you select must be one that is used by the program you are currently 
  5045. debugging. 
  5046.  
  5047.  
  5048. ΓòÉΓòÉΓòÉ 4.14.2.1.2. Where is Execution Point ΓòÉΓòÉΓòÉ
  5049.  
  5050. Select Where is execution point from the File menu to view the next line to be 
  5051. executed. If the file containing that line is already in a Source window, that 
  5052. Source window has its focus raised; otherwise, a new Source window opens. The 
  5053. next line to be executed is highlighted and has the cursor on it. 
  5054.  
  5055.  
  5056. ΓòÉΓòÉΓòÉ 4.14.2.1.3. Close Debugger ΓòÉΓòÉΓòÉ
  5057.  
  5058. Select Close debugger from the File menu to end the program you are debugging 
  5059. and exit the debugger. 
  5060.  
  5061. When you close the debugger, the window positions, sizes, and other settings 
  5062. are saved in a program profile. This profile is used the next time you debug 
  5063. that program, to establish startup settings for the new debug session. 
  5064.  
  5065.  
  5066. ΓòÉΓòÉΓòÉ 4.14.2.2. Edit Menu ΓòÉΓòÉΓòÉ
  5067.  
  5068. A subset of the following menu choices appears on the Edit menu of many 
  5069. debugger windows: 
  5070.  
  5071.      Delete 
  5072.  
  5073.      Select all 
  5074.  
  5075.      Deselect all 
  5076.  
  5077.  The help for each debugger window contains appropriate links to the menu 
  5078.  choices it supports. 
  5079.  
  5080.  
  5081. ΓòÉΓòÉΓòÉ 4.14.2.2.1. Delete ΓòÉΓòÉΓòÉ
  5082.  
  5083. Button:  Shortcut key: [Delete] Menu: Edit->Delete (from Breakpoints List 
  5084. window, and Program, Private, and Local Variables monitors) 
  5085.  
  5086. Delete deletes the highlighted item or items in the current window. In a 
  5087. Monitor window, the selected expressions or variables are deleted. In a 
  5088. Breakpoint List window, the selected breakpoint is deleted (you can only select 
  5089. one breakpoint at a time). 
  5090.  
  5091. Note: When you delete a breakpoint, all information on it is lost. If you need 
  5092. to temporarily prevent a breakpoint from stopping execution but you want to be 
  5093. able to easily activate it later, you should disable it instead, by selecting 
  5094. Edit->Disable. 
  5095.  
  5096. Related Information 
  5097.  
  5098. Procedures 
  5099. Enable and Disable Breakpoints 
  5100.  
  5101.  
  5102. ΓòÉΓòÉΓòÉ 4.14.2.2.2. Select All ΓòÉΓòÉΓòÉ
  5103.  
  5104. Select Edit->Select all from a Program or Private monitor to select all the 
  5105. variables and expressions shown in the monitor. You can then individually 
  5106. deselect certain variables, and use one of the available Edit menu choices to 
  5107. delete, enable, or disable the remaining selected variables. 
  5108.  
  5109.  
  5110. ΓòÉΓòÉΓòÉ 4.14.2.2.3. Deselect All ΓòÉΓòÉΓòÉ
  5111.  
  5112. Select Edit->Deselect all from a monitor to deselect all selected variables and 
  5113. expressions shown in the monitor. 
  5114.  
  5115.  
  5116. ΓòÉΓòÉΓòÉ 4.14.2.3. Options Menu ΓòÉΓòÉΓòÉ
  5117.  
  5118. The following Options menu choices are shared by several debugger windows: 
  5119.  
  5120.  Fonts     Lets you change the font for the current window. 
  5121.  
  5122.  Restore defaults Resets all settings for this window to the debugger defaults 
  5123.            for the window. 
  5124.  
  5125.  Tool buttons Determines whether the toolbar buttons are displayed in the 
  5126.            window. 
  5127.  
  5128.  Hover help Enables or disables hover help, which provides brief descriptions 
  5129.            of menu choices and toolbar buttons when the pointer is placed over 
  5130.            them. 
  5131.  
  5132.  Infoarea  Enables or disables the window's information area, which provides 
  5133.            longer textual descriptions of menu choices and toolbar buttons when 
  5134.            the pointer is placed over them. 
  5135.  
  5136.  
  5137. ΓòÉΓòÉΓòÉ 4.14.2.4. Monitors Menu ΓòÉΓòÉΓòÉ
  5138.  
  5139. A subset of the following menu choices appears on the Monitors menu of the 
  5140. Source and Session Control windows: 
  5141.  
  5142.      Monitor expression 
  5143.  
  5144.      Call Stack 
  5145.  
  5146.      Registers 
  5147.  
  5148.      Storage 
  5149.  
  5150.      Local variables 
  5151.  
  5152.  The help for each debugger window contains appropriate links to the menu 
  5153.  choices it supports. 
  5154.  
  5155.  
  5156. ΓòÉΓòÉΓòÉ 4.14.2.4.1. Monitor Expression ΓòÉΓòÉΓòÉ
  5157.  
  5158. Select Monitors->Monitor expression to open a Monitor expression dialog. Here, 
  5159. you can enter a variable or expression to monitor, and select what monitor to 
  5160. display it in. 
  5161.  
  5162.  
  5163. ΓòÉΓòÉΓòÉ 4.14.2.4.2. Call Stack ΓòÉΓòÉΓòÉ
  5164.  
  5165. Select Monitors->Call Stack to open a Call Stack window for the current thread. 
  5166. Here, you can view the contents of the call stack to determine what calls are 
  5167. currently in progress. 
  5168.  
  5169.  
  5170. ΓòÉΓòÉΓòÉ 4.14.2.4.3. Registers ΓòÉΓòÉΓòÉ
  5171.  
  5172. Select Monitors->Registers to open a Registers monitor. Here, you can view or 
  5173. alter the contents of registers for the processor of the machine that the 
  5174. program being debugged is running on. 
  5175.  
  5176.  
  5177. ΓòÉΓòÉΓòÉ 4.14.2.4.4. Storage ΓòÉΓòÉΓòÉ
  5178.  
  5179. Select Monitors->Storage to open a Storage monitor. Here, you can view or alter 
  5180. the contents of storage used by your program. 
  5181.  
  5182.  
  5183. ΓòÉΓòÉΓòÉ 4.14.2.4.5. Local Variables ΓòÉΓòÉΓòÉ
  5184.  
  5185. Select Monitors->Local variables to open a Local Variables monitor. Here, you 
  5186. can view or alter the contents of variables that are currently in scope. When 
  5187. you select this choice from a Source window, the Local Variables monitor uses 
  5188. the thread for that Source window. When you select it from the Session Control 
  5189. window, the Local Variables monitor uses the currently highlighted thread in 
  5190. the Threads pane. 
  5191.  
  5192.  
  5193. ΓòÉΓòÉΓòÉ 4.14.2.5. Run Menu ΓòÉΓòÉΓòÉ
  5194.  
  5195. Use the Run menu to perform step commands, run your program, and hide debugger 
  5196. windows.  It contains the following choices: 
  5197.  
  5198.      Step over -- [O] 
  5199.  
  5200.      Step into -- [I] 
  5201.  
  5202.      Step return -- [T] 
  5203.  
  5204.      Run -- [R] 
  5205.  
  5206.      Run to location -- [L] 
  5207.  
  5208.      Jump to location -- [N] 
  5209.  
  5210.      Hide debugger on Run 
  5211.  
  5212.  Shortcut keys (shown above in brackets) and toolbar buttons are available for 
  5213.  many of the Run menu choices. See the help panels for these choices for more 
  5214.  information. 
  5215.  
  5216.  
  5217. ΓòÉΓòÉΓòÉ 4.14.2.5.1. Hide Debugger on Run ΓòÉΓòÉΓòÉ
  5218.  
  5219. Select Run->Hide debugger on Run to hide the debugger windows when your program 
  5220. is running. This option does not affect the windows when you are stepping 
  5221. through your program. 
  5222.  
  5223.  
  5224. ΓòÉΓòÉΓòÉ 4.14.2.5.2. Thread Enabled ΓòÉΓòÉΓòÉ
  5225.  
  5226. Select Run->Thread enabled to allow the thread that is highlighted in the 
  5227. Threads box of the Session Control window to execute when the program runs. 
  5228. When threads are enabled, a check mark is displayed beside the Thread enabled 
  5229. choice. This is the default setting. 
  5230.  
  5231. When threads are not enabled, no check mark is displayed and the highlighted 
  5232. thread is not executed when the program is run. 
  5233.  
  5234. COBOL on OS/390 only supports programs with a single thread. 
  5235.  
  5236.  
  5237. ΓòÉΓòÉΓòÉ 4.14.2.6. Project ΓòÉΓòÉΓòÉ
  5238.  
  5239. The Project menu is available when you have loaded the debugger from a 
  5240. Workframe project. Use it to perform project-related tasks. The list of choices 
  5241. depends upon the type of project, the platform, and the language. See the 
  5242. WorkFrame online help for further information on the choices. 
  5243.  
  5244.  
  5245. ΓòÉΓòÉΓòÉ 4.14.2.7. Options Menu ΓòÉΓòÉΓòÉ
  5246.  
  5247. Use the Options menu to change the appearance and behavior of the debugger. You 
  5248. can change settings for the particular window from which you access the menu, 
  5249. and settings for the debugger itself. This menu contains the following choices: 
  5250.  
  5251.      Window settings 
  5252.  
  5253.      Debugger settings 
  5254.  
  5255.  
  5256. ΓòÉΓòÉΓòÉ 4.14.2.7.1. Window Settings ΓòÉΓòÉΓòÉ
  5257.  
  5258. Select the Window settings cascading choices to modify these settings for the 
  5259. window from which you access the Options menu: 
  5260.  
  5261.  Colors    (Source window only) Lets you change the colors used in the Source 
  5262.            window. 
  5263.  
  5264.  Fonts     (Source window only) Lets you change the font for the Source window. 
  5265.            Only fixed-pitch fonts are available. 
  5266.  
  5267.  Display style Opens a dialog where you can specify how information in this 
  5268.            window should appear. Additional help is available for the Session 
  5269.            Control window. 
  5270.  
  5271.  Monitor expression (Storage monitor only) Opens a Monitor Expression in 
  5272.            Storage dialog, where you can enter an expression for monitoring in 
  5273.            storage. 
  5274.  
  5275.  Restore defaults Resets all settings for this window to their original values. 
  5276.  
  5277.  Notebook  (Source window only) Displays source files within the Source window 
  5278.            in a notebook format. For OS/390 COBOL, this choice is not 
  5279.            available, because the Source window shows the compiler listing, not 
  5280.            source files. 
  5281.  
  5282.  Tool buttons Displays or hides the toolbar buttons for the window. 
  5283.  
  5284.  Hover help Enables or disables hover help, which provides brief descriptions 
  5285.            of menu choices and toolbar buttons when your pointing device passes 
  5286.            over them. 
  5287.  
  5288.  Infoarea  Enables or disables the window's information area, which provides 
  5289.            longer textual descriptions of menu choices and toolbar buttons when 
  5290.            your pointing device passes over them. 
  5291.  
  5292.  
  5293. ΓòÉΓòÉΓòÉ 4.14.2.7.2. Debugger Settings ΓòÉΓòÉΓòÉ
  5294.  
  5295. Select the Debugger settings cascading choices to modify debugger settings: 
  5296.  
  5297.      Debugger properties 
  5298.  
  5299.      Monitor properties 
  5300.  
  5301.      Default data representation 
  5302.  
  5303.      Program profiles 
  5304.  
  5305.      Exception filtering 
  5306.  
  5307.      Save debugger window positions 
  5308.  
  5309.      Global font change 
  5310.  
  5311.      Enable window cascading 
  5312.  
  5313.      Display tool buttons -- shows the toolbar buttons at the top of each 
  5314.       window 
  5315.  
  5316.      Display hover help -- displays a help bubble, when one is available, near 
  5317.       the pointer when you move the pointer over a tool button 
  5318.  
  5319.      Display infoarea -- displays a line of help, when one is available, at 
  5320.       the bottom of the window when you move the pointer to a new area of the 
  5321.       window. 
  5322.  
  5323.  
  5324. ΓòÉΓòÉΓòÉ 4.14.2.7.2.1. Default Data Representation ΓòÉΓòÉΓòÉ
  5325.  
  5326. Note: You cannot change the default data representation when debugging COBOL 
  5327. programs on OS/390. The Character data representation is the default. 
  5328.  
  5329. Select Options->Debugger settings->Default data representation to specify how 
  5330. you want your data represented in the monitors. A cascading menu appears with 
  5331. choices for the languages supported by the debugger. 
  5332.  
  5333.  
  5334. ΓòÉΓòÉΓòÉ 4.14.2.7.2.2. Program Profiles ΓòÉΓòÉΓòÉ
  5335.  
  5336. Select Options->Debugger settings->Program profiles to specify where you want 
  5337. the debugger program profiles stored, what profile information to save, or what 
  5338. profiles to delete. This menu has three choices: 
  5339.  
  5340.  Select information Select the types of information to save in the program 
  5341.            profile. If Save profile information is checked, your changes to 
  5342.            this list will be saved for future debugging sessions. If it is not 
  5343.            checked, your changes will only affect profiles saved until you exit 
  5344.            this session of the debugger. 
  5345.  
  5346.  Delete program profiles A dialog opens with a list of program profiles. Select 
  5347.            those profiles you want to delete, and click on OK. Profile 
  5348.            filenames are similar to their associated program filenames,but have 
  5349.            an extension that contains the character '@'. 
  5350.  
  5351.  Change location Change the location of the files that hold the debugger 
  5352.            settings. Enter the new path for program profiles in the Change 
  5353.            location dialog. 
  5354.  
  5355.  
  5356. ΓòÉΓòÉΓòÉ 4.14.2.7.2.3. Exception Filtering ΓòÉΓòÉΓòÉ
  5357.  
  5358. Select Options->Debugger settings->Exception filtering to open the Exception 
  5359. Filtering dialog. Select the types of exceptions that you want the debugger to 
  5360. recognize. 
  5361.  
  5362.  
  5363. ΓòÉΓòÉΓòÉ 4.14.2.7.2.4. Save Debugger Window Positions ΓòÉΓòÉΓòÉ
  5364.  
  5365. Select Options->Debugger Settings->Save debugger window positions to save the 
  5366. position and size of each debugger window that is currently open, so that these 
  5367. settings are used the next time you start the debugger. 
  5368.  
  5369.  
  5370. ΓòÉΓòÉΓòÉ 4.14.2.7.2.5. Global Font Change ΓòÉΓòÉΓòÉ
  5371.  
  5372. Select Debugger Settings->Global font change to change the font in all debugger 
  5373. windows. (The font you choose affects all debugger windows except Source 
  5374. windows.) 
  5375.  
  5376.  
  5377. ΓòÉΓòÉΓòÉ 4.14.2.7.2.6. Enable Window Cascading ΓòÉΓòÉΓòÉ
  5378.  
  5379. Select Debugger Settings->Enable window cascading to display newly opened 
  5380. debugger windows offset to the right of and below previous windows, so that you 
  5381. can see the titles of previous windows. 
  5382.  
  5383. If this choice is disabled, successive windows will overlay earlier ones. 
  5384.  
  5385.  
  5386. ΓòÉΓòÉΓòÉ 4.14.2.7.3. Windows Menu ΓòÉΓòÉΓòÉ
  5387.  
  5388. The Windows menu lists the currently open debugger windows, including Source 
  5389. windows, monitors, the Breakpoints List window, and the Session Control window. 
  5390. To switch to a different window, select this menu from any window where the 
  5391. option is available, and click on the window you want to go to. 
  5392.  
  5393. When you minimize the debugger, some of its windows may not be on the list of 
  5394. windows displayed by the operating system. To access a minimized window not on 
  5395. the window list, select the Session Control window, then use the Windows menu 
  5396. to access the window you want. 
  5397.  
  5398.  
  5399. ΓòÉΓòÉΓòÉ 4.14.2.7.4. Help ΓòÉΓòÉΓòÉ
  5400.  
  5401. The Help menu provides help for the current window and for other help on the 
  5402. debugger. The following choices are available: 
  5403.  
  5404.      Help index -- displays a list of index entries within the help file. 
  5405.  
  5406.      General help -- displays high-level help for the current window. 
  5407.  
  5408.      Using help -- displays help on how to access and use help features of the 
  5409.       debugger. 
  5410.  
  5411.      How do I -- displays task-oriented help for common debugger tasks. 
  5412.  
  5413.      Product information -- displays the logo screen for the debugger. 
  5414.  
  5415.  If you want to search for a string within a help file, click on Search from 
  5416.  the help window, enter the search string in the entry field, select All 
  5417.  sections, and click on Search. 
  5418.  
  5419.  
  5420. ΓòÉΓòÉΓòÉ 4.14.3. Step Into ΓòÉΓòÉΓòÉ
  5421.  
  5422. Button:  Shortcut key: [I] Menu: Run->Step into (from Source window) 
  5423.  
  5424. The Step Into command executes the current line in the program. If the current 
  5425. line is a call, and debug information is available for any routine called 
  5426. before the return to the current routine, execution halts at the first 
  5427. statement for which debug information is available. If no debug information is 
  5428. available, execution halts after the call. 
  5429.  
  5430. For example, if A calls B and A is compiled without debug information, while B 
  5431. is compiled with debug information, after a Step Into command from a call to A, 
  5432. execution will stop at the first executable statement of B. 
  5433.  
  5434. C++ only: If the current line contains a complex call (for example 
  5435. p->memberFunc1()->memberFunc2().memberFunc3(func1(), func2())), the debugger 
  5436. examines each call (and any calls beneath it) for functions containing debug 
  5437. information, and steps into the first such function. The order in which it 
  5438. examines the calls is based on the order of the calls in the assembly code, 
  5439. which is not necessarily the order in which the calls appear in the source 
  5440. code. 
  5441.  
  5442.  
  5443. ΓòÉΓòÉΓòÉ 4.14.4. Step Over ΓòÉΓòÉΓòÉ
  5444.  
  5445. Button:  Shortcut key: [O] Menu: Run->Step over (from Source window) 
  5446.  
  5447. The Step Over command executes the current line in the program. If the current 
  5448. line is a call, execution stops at the line following the call. 
  5449.  
  5450. If you step over a routine that contains a breakpoint, execution stops at the 
  5451. breakpoint. 
  5452.  
  5453.  
  5454. ΓòÉΓòÉΓòÉ 4.14.5. Step Return ΓòÉΓòÉΓòÉ
  5455.  
  5456. Button:  Shortcut key: [T] Menu: Run->Step return (from Source window) 
  5457.  
  5458. The Step Return command executes the code up to and including the return 
  5459. statement of the current routine. Execution halts at the line following the 
  5460. call to the current routine. 
  5461.  
  5462.  
  5463. ΓòÉΓòÉΓòÉ 4.14.6. Run ΓòÉΓòÉΓòÉ
  5464.  
  5465. Button:  Shortcut key: [R] from Source/Session Control windows, [Ctrl+R] from 
  5466. other windows Menu: Run->Run (from Source/Session Control windows) 
  5467.  
  5468. Run executes the program. The debugger starts executing where it last stopped 
  5469. (for example, at a breakpoint) or, if you have not yet run the program in this 
  5470. session, at the beginning of the program. When you select Run, execution 
  5471. continues until one of the following occurs: 
  5472.  
  5473.      The debugger encounters a breakpoint 
  5474.  
  5475.      An exception is encountered that is not handled 
  5476.  
  5477.      The program terminates 
  5478.  
  5479.      You close the debugger 
  5480.  
  5481.  Related Information 
  5482.  
  5483.  Procedures 
  5484.  Run a Program 
  5485.  
  5486.  
  5487. ΓòÉΓòÉΓòÉ 4.14.7. Halt ΓòÉΓòÉΓòÉ
  5488.  
  5489. Button:  Shortcut key: [SysRq] Menu: Run->Halt (from Source/Session Control 
  5490. windows) 
  5491.  
  5492. Halt, which is available only while the program is running, stops execution 
  5493. immediately. The Source window is updated with the current line set to the next 
  5494. line to be executed. 
  5495.  
  5496.  
  5497. ΓòÉΓòÉΓòÉ 4.14.8. Jump to Location ΓòÉΓòÉΓòÉ
  5498.  
  5499. Shortcut key: [N] Menu: Run->Jump to location (from Source/Session Control 
  5500. windows) 
  5501.  
  5502. Jump to location makes the currently highlighted line in the Source window the 
  5503. current line, without executing any code. You can view an example in C++ or 
  5504. COBOL to see how Jump to location works. 
  5505.  
  5506. Caution: When you jump to a location, you may alter the flow of your program in 
  5507. ways that make it difficult to continue debugging later in the same session: 
  5508.  
  5509.      The stack can become corrupted if you jump to a location outside the 
  5510.       current entry point. 
  5511.  
  5512.      Some compilers optimize register usage in ways that can corrupt variables 
  5513.       or program flow when you use Jump to Location. For example, if the 
  5514.       compiler keeps track of register contents and can determine that a 
  5515.       register contains the value 1 at the start of a statement that 
  5516.       initializes an integer variable to 1, it may simply copy that register's 
  5517.       contents to the variable. If you step over the statement that involved 
  5518.       setting the register to 1, the variable may not contain the expected 
  5519.       contents. 
  5520.  
  5521.  
  5522. ΓòÉΓòÉΓòÉ 4.14.9. Run to Location ΓòÉΓòÉΓòÉ
  5523.  
  5524. Shortcut key: [L] Menu: Run->Run to location (from Source/Session Control 
  5525. windows) 
  5526.  
  5527. Run to location executes the program up to the currently highlighted line in 
  5528. the Source window. The debugger starts executing where it last stopped (for 
  5529. example, after a breakpoint) or, if you have not yet run the program in this 
  5530. session, at the beginning of the program. When you select Run to location, 
  5531. execution continues until one of the following occurs: 
  5532.  
  5533.      Execution reaches the location (the line) you selected in the Source 
  5534.       window 
  5535.  
  5536.      The debugger encounters a breakpoint 
  5537.  
  5538.      An exception is encountered that is not handled 
  5539.  
  5540.      The program terminates 
  5541.  
  5542.      You close the debugger 
  5543.  
  5544.  
  5545. ΓòÉΓòÉΓòÉ 4.14.10. Session Control ΓòÉΓòÉΓòÉ
  5546.  
  5547. Button:  Menu: Windows->Session Control Keystroke: Control-B 
  5548.  
  5549. Use this button, menu selection, or shortcut key to raise the Session Control 
  5550. window. 
  5551.  
  5552.  
  5553. ΓòÉΓòÉΓòÉ 4.14.11. Local Variables ΓòÉΓòÉΓòÉ
  5554.  
  5555. Menu: Monitors->Local variables Keystroke: Ctrl+V 
  5556.  
  5557. Opens or raises a Local Variables window, which displays the names and contents 
  5558. of variables that are in scope within the current thread or routine. 
  5559.  
  5560.  
  5561. ΓòÉΓòÉΓòÉ 4.14.12. Delete ΓòÉΓòÉΓòÉ
  5562.  
  5563. Select Edit->Delete from a Local Variables monitor, or Delete from a monitor 
  5564. popup menu, to delete the selected expressions from the monitor. 
  5565.  
  5566. To delete all expressions, select Edit->Select all, then Edit->Delete. 
  5567.  
  5568.  
  5569. ΓòÉΓòÉΓòÉ <hidden> Run ΓòÉΓòÉΓòÉ
  5570.  
  5571.  
  5572. ΓòÉΓòÉΓòÉ <hidden> Session Control Button ΓòÉΓòÉΓòÉ
  5573.  
  5574.  
  5575. ΓòÉΓòÉΓòÉ <hidden> Delete Button ΓòÉΓòÉΓòÉ
  5576.  
  5577.  
  5578. ΓòÉΓòÉΓòÉ <hidden> Delete All Button ΓòÉΓòÉΓòÉ
  5579.  
  5580.  
  5581. ΓòÉΓòÉΓòÉ <hidden> Session Control Window ΓòÉΓòÉΓòÉ
  5582.  
  5583.  
  5584. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  5585.  
  5586.  
  5587. ΓòÉΓòÉΓòÉ <hidden> Open New Source ΓòÉΓòÉΓòÉ
  5588.  
  5589.  
  5590. ΓòÉΓòÉΓòÉ <hidden> Where is Execution Point ΓòÉΓòÉΓòÉ
  5591.  
  5592.  
  5593. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  5594.  
  5595.  
  5596. ΓòÉΓòÉΓòÉ <hidden> Find Entry Point Dialog ΓòÉΓòÉΓòÉ
  5597.  
  5598.  
  5599. ΓòÉΓòÉΓòÉ <hidden> Breakpoints Menu ΓòÉΓòÉΓòÉ
  5600.  
  5601.  
  5602. ΓòÉΓòÉΓòÉ <hidden> Set Line ΓòÉΓòÉΓòÉ
  5603.  
  5604.  
  5605. ΓòÉΓòÉΓòÉ <hidden> Set Entry ΓòÉΓòÉΓòÉ
  5606.  
  5607.  
  5608. ΓòÉΓòÉΓòÉ <hidden> Set Storage Change ΓòÉΓòÉΓòÉ
  5609.  
  5610.  
  5611. ΓòÉΓòÉΓòÉ <hidden> Set Load Occurrence ΓòÉΓòÉΓòÉ
  5612.  
  5613.  
  5614. ΓòÉΓòÉΓòÉ <hidden> Breakpoints Menu ΓòÉΓòÉΓòÉ
  5615.  
  5616.  
  5617. ΓòÉΓòÉΓòÉ <hidden> Delete all ΓòÉΓòÉΓòÉ
  5618.  
  5619.  
  5620. ΓòÉΓòÉΓòÉ <hidden> Monitors Menu ΓòÉΓòÉΓòÉ
  5621.  
  5622.  
  5623. ΓòÉΓòÉΓòÉ <hidden> Call Stack Window ΓòÉΓòÉΓòÉ
  5624.  
  5625.  
  5626. ΓòÉΓòÉΓòÉ <hidden> Registers Monitor ΓòÉΓòÉΓòÉ
  5627.  
  5628.  
  5629. ΓòÉΓòÉΓòÉ <hidden> Storage Monitor ΓòÉΓòÉΓòÉ
  5630.  
  5631.  
  5632. ΓòÉΓòÉΓòÉ <hidden> Local Variables Monitor ΓòÉΓòÉΓòÉ
  5633.  
  5634.  
  5635. ΓòÉΓòÉΓòÉ <hidden> Run Menu ΓòÉΓòÉΓòÉ
  5636.  
  5637.  
  5638. ΓòÉΓòÉΓòÉ <hidden> Run ΓòÉΓòÉΓòÉ
  5639.  
  5640.  
  5641. ΓòÉΓòÉΓòÉ <hidden> Halt ΓòÉΓòÉΓòÉ
  5642.  
  5643.  
  5644. ΓòÉΓòÉΓòÉ <hidden> Hide Debugger on Run ΓòÉΓòÉΓòÉ
  5645.  
  5646.  
  5647. ΓòÉΓòÉΓòÉ <hidden> Thread Enabled ΓòÉΓòÉΓòÉ
  5648.  
  5649.  
  5650. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  5651.  
  5652.  
  5653. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5654.  
  5655.  
  5656. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5657.  
  5658.  
  5659. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5660.  
  5661.  
  5662. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5663.  
  5664.  
  5665. ΓòÉΓòÉΓòÉ <hidden> Debugger Settings ΓòÉΓòÉΓòÉ
  5666.  
  5667.  
  5668. ΓòÉΓòÉΓòÉ <hidden> Debugger Properties Dialog ΓòÉΓòÉΓòÉ
  5669.  
  5670.  
  5671. ΓòÉΓòÉΓòÉ <hidden> Monitor Properties Dialog ΓòÉΓòÉΓòÉ
  5672.  
  5673.  
  5674. ΓòÉΓòÉΓòÉ <hidden> Default Data Representation ΓòÉΓòÉΓòÉ
  5675.  
  5676.  
  5677. ΓòÉΓòÉΓòÉ <hidden> Exception Filtering ΓòÉΓòÉΓòÉ
  5678.  
  5679.  
  5680. ΓòÉΓòÉΓòÉ <hidden> Save Debugger Window Positions ΓòÉΓòÉΓòÉ
  5681.  
  5682.  
  5683. ΓòÉΓòÉΓòÉ <hidden> Global Font Change ΓòÉΓòÉΓòÉ
  5684.  
  5685.  
  5686. ΓòÉΓòÉΓòÉ <hidden> Enable Window Cascading ΓòÉΓòÉΓòÉ
  5687.  
  5688.  
  5689. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5690.  
  5691.  
  5692. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5693.  
  5694.  
  5695. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5696.  
  5697.  
  5698. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5699.  
  5700.  
  5701. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  5702.  
  5703.  
  5704. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5705.  
  5706.  
  5707. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5708.  
  5709.  
  5710. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5711.  
  5712.  
  5713. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5714.  
  5715.  
  5716. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5717.  
  5718.  
  5719. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5720.  
  5721.  
  5722. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5723.  
  5724.  
  5725. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5726.  
  5727.  
  5728. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5729.  
  5730.  
  5731. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5732.  
  5733.  
  5734. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5735.  
  5736.  
  5737. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5738.  
  5739.  
  5740. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5741.  
  5742.  
  5743. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5744.  
  5745.  
  5746. ΓòÉΓòÉΓòÉ <hidden> Threads/Components Popup Menu ΓòÉΓòÉΓòÉ
  5747.  
  5748.  
  5749. ΓòÉΓòÉΓòÉ <hidden> Source Window ΓòÉΓòÉΓòÉ
  5750.  
  5751.  
  5752. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  5753.  
  5754.  
  5755. ΓòÉΓòÉΓòÉ <hidden> Open New Source ΓòÉΓòÉΓòÉ
  5756.  
  5757.  
  5758. ΓòÉΓòÉΓòÉ <hidden> Where is Execution Point ΓòÉΓòÉΓòÉ
  5759.  
  5760.  
  5761. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  5762.  
  5763.  
  5764. ΓòÉΓòÉΓòÉ <hidden> Find Entry Point Dialog ΓòÉΓòÉΓòÉ
  5765.  
  5766.  
  5767. ΓòÉΓòÉΓòÉ <hidden> View Menu ΓòÉΓòÉΓòÉ
  5768.  
  5769.  
  5770. ΓòÉΓòÉΓòÉ <hidden> Find ΓòÉΓòÉΓòÉ
  5771.  
  5772.  
  5773. ΓòÉΓòÉΓòÉ <hidden> Find Next ΓòÉΓòÉΓòÉ
  5774.  
  5775.  
  5776. ΓòÉΓòÉΓòÉ <hidden> Scroll to Line Number ΓòÉΓòÉΓòÉ
  5777.  
  5778.  
  5779. ΓòÉΓòÉΓòÉ <hidden> Select Include ΓòÉΓòÉΓòÉ
  5780.  
  5781.  
  5782. ΓòÉΓòÉΓòÉ <hidden> Change Text File ΓòÉΓòÉΓòÉ
  5783.  
  5784.  
  5785. ΓòÉΓòÉΓòÉ <hidden> Breakpoints Menu ΓòÉΓòÉΓòÉ
  5786.  
  5787.  
  5788. ΓòÉΓòÉΓòÉ <hidden> Set Line ΓòÉΓòÉΓòÉ
  5789.  
  5790.  
  5791. ΓòÉΓòÉΓòÉ <hidden> Set Entry ΓòÉΓòÉΓòÉ
  5792.  
  5793.  
  5794. ΓòÉΓòÉΓòÉ <hidden> Set Storage Change ΓòÉΓòÉΓòÉ
  5795.  
  5796.  
  5797. ΓòÉΓòÉΓòÉ <hidden> Set Load Occurrence ΓòÉΓòÉΓòÉ
  5798.  
  5799.  
  5800. ΓòÉΓòÉΓòÉ <hidden> Breakpoints Menu ΓòÉΓòÉΓòÉ
  5801.  
  5802.  
  5803. ΓòÉΓòÉΓòÉ <hidden> Toggle at Current Line ΓòÉΓòÉΓòÉ
  5804.  
  5805.  
  5806. ΓòÉΓòÉΓòÉ <hidden> Delete all ΓòÉΓòÉΓòÉ
  5807.  
  5808.  
  5809. ΓòÉΓòÉΓòÉ <hidden> Prefix Area Popup Menu ΓòÉΓòÉΓòÉ
  5810.  
  5811.  
  5812. ΓòÉΓòÉΓòÉ <hidden> Prefix Area Popup Menu ΓòÉΓòÉΓòÉ
  5813.  
  5814.  
  5815. ΓòÉΓòÉΓòÉ <hidden> Monitors Menu ΓòÉΓòÉΓòÉ
  5816.  
  5817.  
  5818. ΓòÉΓòÉΓòÉ <hidden> Monitor Expression Dialog ΓòÉΓòÉΓòÉ
  5819.  
  5820.  
  5821. ΓòÉΓòÉΓòÉ <hidden> Call Stack Window ΓòÉΓòÉΓòÉ
  5822.  
  5823.  
  5824. ΓòÉΓòÉΓòÉ <hidden> Registers Monitor ΓòÉΓòÉΓòÉ
  5825.  
  5826.  
  5827. ΓòÉΓòÉΓòÉ <hidden> Storage Monitor ΓòÉΓòÉΓòÉ
  5828.  
  5829.  
  5830. ΓòÉΓòÉΓòÉ <hidden> Local Variables Monitor ΓòÉΓòÉΓòÉ
  5831.  
  5832.  
  5833. ΓòÉΓòÉΓòÉ <hidden> Run Menu ΓòÉΓòÉΓòÉ
  5834.  
  5835.  
  5836. ΓòÉΓòÉΓòÉ <hidden> Step Over ΓòÉΓòÉΓòÉ
  5837.  
  5838.  
  5839. ΓòÉΓòÉΓòÉ <hidden> Step Into ΓòÉΓòÉΓòÉ
  5840.  
  5841.  
  5842. ΓòÉΓòÉΓòÉ <hidden> Step Return ΓòÉΓòÉΓòÉ
  5843.  
  5844.  
  5845. ΓòÉΓòÉΓòÉ <hidden> Run ΓòÉΓòÉΓòÉ
  5846.  
  5847.  
  5848. ΓòÉΓòÉΓòÉ <hidden> Halt ΓòÉΓòÉΓòÉ
  5849.  
  5850.  
  5851. ΓòÉΓòÉΓòÉ <hidden> Run to Location ΓòÉΓòÉΓòÉ
  5852.  
  5853.  
  5854. ΓòÉΓòÉΓòÉ <hidden> Jump to Location ΓòÉΓòÉΓòÉ
  5855.  
  5856.  
  5857. ΓòÉΓòÉΓòÉ <hidden> Hide Debugger on Run ΓòÉΓòÉΓòÉ
  5858.  
  5859.  
  5860. ΓòÉΓòÉΓòÉ <hidden> Thread Enabled ΓòÉΓòÉΓòÉ
  5861.  
  5862.  
  5863. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  5864.  
  5865.  
  5866. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5867.  
  5868.  
  5869. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5870.  
  5871.  
  5872. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5873.  
  5874.  
  5875. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5876.  
  5877.  
  5878. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  5879.  
  5880.  
  5881. ΓòÉΓòÉΓòÉ <hidden> Debugger Settings ΓòÉΓòÉΓòÉ
  5882.  
  5883.  
  5884. ΓòÉΓòÉΓòÉ <hidden> Debugger Properties Dialog ΓòÉΓòÉΓòÉ
  5885.  
  5886.  
  5887. ΓòÉΓòÉΓòÉ <hidden> Monitor Properties Dialog ΓòÉΓòÉΓòÉ
  5888.  
  5889.  
  5890. ΓòÉΓòÉΓòÉ <hidden> Default Data Representation ΓòÉΓòÉΓòÉ
  5891.  
  5892.  
  5893. ΓòÉΓòÉΓòÉ <hidden> Exception Filtering ΓòÉΓòÉΓòÉ
  5894.  
  5895.  
  5896. ΓòÉΓòÉΓòÉ <hidden> Save Debugger Window Positions ΓòÉΓòÉΓòÉ
  5897.  
  5898.  
  5899. ΓòÉΓòÉΓòÉ <hidden> Global Font Change ΓòÉΓòÉΓòÉ
  5900.  
  5901.  
  5902. ΓòÉΓòÉΓòÉ <hidden> Enable Window Cascading ΓòÉΓòÉΓòÉ
  5903.  
  5904.  
  5905. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5906.  
  5907.  
  5908. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5909.  
  5910.  
  5911. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5912.  
  5913.  
  5914. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  5915.  
  5916.  
  5917. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  5918.  
  5919.  
  5920. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5921.  
  5922.  
  5923. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5924.  
  5925.  
  5926. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5927.  
  5928.  
  5929. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5930.  
  5931.  
  5932. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5933.  
  5934.  
  5935. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  5936.  
  5937.  
  5938. ΓòÉΓòÉΓòÉ <hidden> Prefix Area Popup Menu ΓòÉΓòÉΓòÉ
  5939.  
  5940.  
  5941. ΓòÉΓòÉΓòÉ <hidden> Prefix Area Popup Menu ΓòÉΓòÉΓòÉ
  5942.  
  5943.  
  5944. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5945.  
  5946.  
  5947. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5948.  
  5949.  
  5950. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5951.  
  5952.  
  5953. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5954.  
  5955.  
  5956. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5957.  
  5958.  
  5959. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5960.  
  5961.  
  5962. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5963.  
  5964.  
  5965. ΓòÉΓòÉΓòÉ <hidden> Code Area Popup Menu ΓòÉΓòÉΓòÉ
  5966.  
  5967.  
  5968. ΓòÉΓòÉΓòÉ <hidden> Breakpoints List Window ΓòÉΓòÉΓòÉ
  5969.  
  5970.  
  5971. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  5972.  
  5973.  
  5974. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  5975.  
  5976.  
  5977. ΓòÉΓòÉΓòÉ <hidden> Edit Menu ΓòÉΓòÉΓòÉ
  5978.  
  5979.  
  5980. ΓòÉΓòÉΓòÉ <hidden> Delete ΓòÉΓòÉΓòÉ
  5981.  
  5982.  
  5983. ΓòÉΓòÉΓòÉ <hidden> Disable ΓòÉΓòÉΓòÉ
  5984.  
  5985.  
  5986. ΓòÉΓòÉΓòÉ <hidden> Modify ΓòÉΓòÉΓòÉ
  5987.  
  5988.  
  5989. ΓòÉΓòÉΓòÉ <hidden> Delete all ΓòÉΓòÉΓòÉ
  5990.  
  5991.  
  5992. ΓòÉΓòÉΓòÉ <hidden> Disable All ΓòÉΓòÉΓòÉ
  5993.  
  5994.  
  5995. ΓòÉΓòÉΓòÉ <hidden> Enable All ΓòÉΓòÉΓòÉ
  5996.  
  5997.  
  5998. ΓòÉΓòÉΓòÉ <hidden> Set Menu ΓòÉΓòÉΓòÉ
  5999.  
  6000.  
  6001. ΓòÉΓòÉΓòÉ <hidden> Set Line ΓòÉΓòÉΓòÉ
  6002.  
  6003.  
  6004. ΓòÉΓòÉΓòÉ <hidden> Set Entry ΓòÉΓòÉΓòÉ
  6005.  
  6006.  
  6007. ΓòÉΓòÉΓòÉ <hidden> Set Storage Change ΓòÉΓòÉΓòÉ
  6008.  
  6009.  
  6010. ΓòÉΓòÉΓòÉ <hidden> Set Load Occurrence ΓòÉΓòÉΓòÉ
  6011.  
  6012.  
  6013. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6014.  
  6015.  
  6016. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6017.  
  6018.  
  6019. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6020.  
  6021.  
  6022. ΓòÉΓòÉΓòÉ <hidden> Sort ΓòÉΓòÉΓòÉ
  6023.  
  6024.  
  6025. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6026.  
  6027.  
  6028. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  6029.  
  6030.  
  6031. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6032.  
  6033.  
  6034. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6035.  
  6036.  
  6037. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6038.  
  6039.  
  6040. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6041.  
  6042.  
  6043. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6044.  
  6045.  
  6046. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6047.  
  6048.  
  6049. ΓòÉΓòÉΓòÉ <hidden> View ΓòÉΓòÉΓòÉ
  6050.  
  6051.  
  6052. ΓòÉΓòÉΓòÉ <hidden> Delete ΓòÉΓòÉΓòÉ
  6053.  
  6054.  
  6055. ΓòÉΓòÉΓòÉ <hidden> Modify ΓòÉΓòÉΓòÉ
  6056.  
  6057.  
  6058. ΓòÉΓòÉΓòÉ <hidden> Delete all ΓòÉΓòÉΓòÉ
  6059.  
  6060.  
  6061. ΓòÉΓòÉΓòÉ <hidden> Call Stack Window ΓòÉΓòÉΓòÉ
  6062.  
  6063.  
  6064. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  6065.  
  6066.  
  6067. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  6068.  
  6069.  
  6070. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6071.  
  6072.  
  6073. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6074.  
  6075.  
  6076. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6077.  
  6078.  
  6079. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6080.  
  6081.  
  6082. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  6083.  
  6084.  
  6085. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6086.  
  6087.  
  6088. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6089.  
  6090.  
  6091. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6092.  
  6093.  
  6094. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6095.  
  6096.  
  6097. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6098.  
  6099.  
  6100. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6101.  
  6102.  
  6103. ΓòÉΓòÉΓòÉ <hidden> View Menu ΓòÉΓòÉΓòÉ
  6104.  
  6105.  
  6106. ΓòÉΓòÉΓòÉ <hidden> Private Monitor ΓòÉΓòÉΓòÉ
  6107.  
  6108.  
  6109. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  6110.  
  6111.  
  6112. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  6113.  
  6114.  
  6115. ΓòÉΓòÉΓòÉ <hidden> Edit Menu ΓòÉΓòÉΓòÉ
  6116.  
  6117.  
  6118. ΓòÉΓòÉΓòÉ <hidden> Delete ΓòÉΓòÉΓòÉ
  6119.  
  6120.  
  6121. ΓòÉΓòÉΓòÉ <hidden> Delete All ΓòÉΓòÉΓòÉ
  6122.  
  6123.  
  6124. ΓòÉΓòÉΓòÉ <hidden> Select All ΓòÉΓòÉΓòÉ
  6125.  
  6126.  
  6127. ΓòÉΓòÉΓòÉ <hidden> Deselect All ΓòÉΓòÉΓòÉ
  6128.  
  6129.  
  6130. ΓòÉΓòÉΓòÉ <hidden> Enable ΓòÉΓòÉΓòÉ
  6131.  
  6132.  
  6133. ΓòÉΓòÉΓòÉ <hidden> Disable ΓòÉΓòÉΓòÉ
  6134.  
  6135.  
  6136. ΓòÉΓòÉΓòÉ <hidden> Other Elements ΓòÉΓòÉΓòÉ
  6137.  
  6138.  
  6139. ΓòÉΓòÉΓòÉ <hidden> Representation, Next Representation ΓòÉΓòÉΓòÉ
  6140.  
  6141.  
  6142. ΓòÉΓòÉΓòÉ <hidden> Representation, Next Representation ΓòÉΓòÉΓòÉ
  6143.  
  6144.  
  6145. ΓòÉΓòÉΓòÉ <hidden> Representation, Next Representation ΓòÉΓòÉΓòÉ
  6146.  
  6147.  
  6148. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6149.  
  6150.  
  6151. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6152.  
  6153.  
  6154. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6155.  
  6156.  
  6157. ΓòÉΓòÉΓòÉ <hidden> Show Context ΓòÉΓòÉΓòÉ
  6158.  
  6159.  
  6160. ΓòÉΓòÉΓòÉ <hidden> Show Enablement ΓòÉΓòÉΓòÉ
  6161.  
  6162.  
  6163. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6164.  
  6165.  
  6166. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6167.  
  6168.  
  6169. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6170.  
  6171.  
  6172. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6173.  
  6174.  
  6175. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6176.  
  6177.  
  6178. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6179.  
  6180.  
  6181. ΓòÉΓòÉΓòÉ <hidden> Program Monitor ΓòÉΓòÉΓòÉ
  6182.  
  6183.  
  6184. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  6185.  
  6186.  
  6187. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  6188.  
  6189.  
  6190. ΓòÉΓòÉΓòÉ <hidden> Edit Menu ΓòÉΓòÉΓòÉ
  6191.  
  6192.  
  6193. ΓòÉΓòÉΓòÉ <hidden> Delete ΓòÉΓòÉΓòÉ
  6194.  
  6195.  
  6196. ΓòÉΓòÉΓòÉ <hidden> Delete All ΓòÉΓòÉΓòÉ
  6197.  
  6198.  
  6199. ΓòÉΓòÉΓòÉ <hidden> Select All ΓòÉΓòÉΓòÉ
  6200.  
  6201.  
  6202. ΓòÉΓòÉΓòÉ <hidden> Deselect All ΓòÉΓòÉΓòÉ
  6203.  
  6204.  
  6205. ΓòÉΓòÉΓòÉ <hidden> Enable ΓòÉΓòÉΓòÉ
  6206.  
  6207.  
  6208. ΓòÉΓòÉΓòÉ <hidden> Disable ΓòÉΓòÉΓòÉ
  6209.  
  6210.  
  6211. ΓòÉΓòÉΓòÉ <hidden> Other Elements ΓòÉΓòÉΓòÉ
  6212.  
  6213.  
  6214. ΓòÉΓòÉΓòÉ <hidden> Representation, Next Representation ΓòÉΓòÉΓòÉ
  6215.  
  6216.  
  6217. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6218.  
  6219.  
  6220. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6221.  
  6222.  
  6223. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6224.  
  6225.  
  6226. ΓòÉΓòÉΓòÉ <hidden> Show Context ΓòÉΓòÉΓòÉ
  6227.  
  6228.  
  6229. ΓòÉΓòÉΓòÉ <hidden> Show Enablement ΓòÉΓòÉΓòÉ
  6230.  
  6231.  
  6232. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  6233.  
  6234.  
  6235. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6236.  
  6237.  
  6238. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6239.  
  6240.  
  6241. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6242.  
  6243.  
  6244. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6245.  
  6246.  
  6247. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6248.  
  6249.  
  6250. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6251.  
  6252.  
  6253. ΓòÉΓòÉΓòÉ <hidden> Local Variables Monitor ΓòÉΓòÉΓòÉ
  6254.  
  6255.  
  6256. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  6257.  
  6258.  
  6259. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  6260.  
  6261.  
  6262. ΓòÉΓòÉΓòÉ <hidden> Edit Menu ΓòÉΓòÉΓòÉ
  6263.  
  6264.  
  6265. ΓòÉΓòÉΓòÉ <hidden> Delete ΓòÉΓòÉΓòÉ
  6266.  
  6267.  
  6268. ΓòÉΓòÉΓòÉ <hidden> Select All ΓòÉΓòÉΓòÉ
  6269.  
  6270.  
  6271. ΓòÉΓòÉΓòÉ <hidden> Deselect All ΓòÉΓòÉΓòÉ
  6272.  
  6273.  
  6274. ΓòÉΓòÉΓòÉ <hidden> Other Elements ΓòÉΓòÉΓòÉ
  6275.  
  6276.  
  6277. ΓòÉΓòÉΓòÉ <hidden> Representation, Next Representation ΓòÉΓòÉΓòÉ
  6278.  
  6279.  
  6280. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6281.  
  6282.  
  6283. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6284.  
  6285.  
  6286. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6287.  
  6288.  
  6289. ΓòÉΓòÉΓòÉ <hidden> Show Context ΓòÉΓòÉΓòÉ
  6290.  
  6291.  
  6292. ΓòÉΓòÉΓòÉ <hidden> Show Enablement ΓòÉΓòÉΓòÉ
  6293.  
  6294.  
  6295. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  6296.  
  6297.  
  6298. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6299.  
  6300.  
  6301. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6302.  
  6303.  
  6304. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6305.  
  6306.  
  6307. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6308.  
  6309.  
  6310. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6311.  
  6312.  
  6313. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6314.  
  6315.  
  6316. ΓòÉΓòÉΓòÉ <hidden> Popup Monitor ΓòÉΓòÉΓòÉ
  6317.  
  6318.  
  6319. ΓòÉΓòÉΓòÉ <hidden> Delete ΓòÉΓòÉΓòÉ
  6320.  
  6321.  
  6322. ΓòÉΓòÉΓòÉ <hidden> Disable ΓòÉΓòÉΓòÉ
  6323.  
  6324.  
  6325. ΓòÉΓòÉΓòÉ <hidden> Edit Contents ΓòÉΓòÉΓòÉ
  6326.  
  6327.  
  6328. ΓòÉΓòÉΓòÉ <hidden> Dereference ΓòÉΓòÉΓòÉ
  6329.  
  6330.  
  6331. ΓòÉΓòÉΓòÉ <hidden> Representation, Next Representation ΓòÉΓòÉΓòÉ
  6332.  
  6333.  
  6334. ΓòÉΓòÉΓòÉ <hidden> Other Elements ΓòÉΓòÉΓòÉ
  6335.  
  6336.  
  6337. ΓòÉΓòÉΓòÉ <hidden> Registers Monitor ΓòÉΓòÉΓòÉ
  6338.  
  6339.  
  6340. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  6341.  
  6342.  
  6343. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  6344.  
  6345.  
  6346. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6347.  
  6348.  
  6349. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6350.  
  6351.  
  6352. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6353.  
  6354.  
  6355. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6356.  
  6357.  
  6358. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  6359.  
  6360.  
  6361. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6362.  
  6363.  
  6364. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6365.  
  6366.  
  6367. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6368.  
  6369.  
  6370. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6371.  
  6372.  
  6373. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6374.  
  6375.  
  6376. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6377.  
  6378.  
  6379. ΓòÉΓòÉΓòÉ <hidden> Storage Monitor ΓòÉΓòÉΓòÉ
  6380.  
  6381.  
  6382. ΓòÉΓòÉΓòÉ <hidden> File Menu ΓòÉΓòÉΓòÉ
  6383.  
  6384.  
  6385. ΓòÉΓòÉΓòÉ <hidden> Close Debugger ΓòÉΓòÉΓòÉ
  6386.  
  6387.  
  6388. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6389.  
  6390.  
  6391. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6392.  
  6393.  
  6394. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6395.  
  6396.  
  6397. ΓòÉΓòÉΓòÉ <hidden> Monitor Expression in Storage ΓòÉΓòÉΓòÉ
  6398.  
  6399.  
  6400. ΓòÉΓòÉΓòÉ <hidden> Options Menu ΓòÉΓòÉΓòÉ
  6401.  
  6402.  
  6403. ΓòÉΓòÉΓòÉ <hidden> Windows Menu ΓòÉΓòÉΓòÉ
  6404.  
  6405.  
  6406. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6407.  
  6408.  
  6409. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6410.  
  6411.  
  6412. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6413.  
  6414.  
  6415. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6416.  
  6417.  
  6418. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6419.  
  6420.  
  6421. ΓòÉΓòÉΓòÉ <hidden> Help ΓòÉΓòÉΓòÉ
  6422.  
  6423.  
  6424. ΓòÉΓòÉΓòÉ <hidden> Default Data Representation ΓòÉΓòÉΓòÉ
  6425.  
  6426.  
  6427. ΓòÉΓòÉΓòÉ <hidden> Default Data Representation ΓòÉΓòÉΓòÉ
  6428.  
  6429.  
  6430. ΓòÉΓòÉΓòÉ <hidden> Shortcut Keys ΓòÉΓòÉΓòÉ
  6431.  
  6432.  
  6433. ΓòÉΓòÉΓòÉ <hidden> Set Line ΓòÉΓòÉΓòÉ
  6434.  
  6435.  
  6436. ΓòÉΓòÉΓòÉ <hidden> Set Entry ΓòÉΓòÉΓòÉ
  6437.  
  6438.  
  6439. ΓòÉΓòÉΓòÉ <hidden> Set Storage Change ΓòÉΓòÉΓòÉ
  6440.  
  6441.  
  6442. ΓòÉΓòÉΓòÉ <hidden> Set Load Occurrence ΓòÉΓòÉΓòÉ
  6443.  
  6444.  
  6445. ΓòÉΓòÉΓòÉ <hidden> Breakpoints Menu ΓòÉΓòÉΓòÉ
  6446.  
  6447.  
  6448. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6449.  
  6450.  
  6451. ΓòÉΓòÉΓòÉ <hidden> Default Data Representation ΓòÉΓòÉΓòÉ
  6452.  
  6453.  
  6454. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6455.  
  6456.  
  6457. ΓòÉΓòÉΓòÉ <hidden> Exception Filtering Dialog ΓòÉΓòÉΓòÉ
  6458.  
  6459.  
  6460. ΓòÉΓòÉΓòÉ <hidden> Exception Dialog ΓòÉΓòÉΓòÉ
  6461.  
  6462.  
  6463. ΓòÉΓòÉΓòÉ <hidden> Find Entry Point Dialog ΓòÉΓòÉΓòÉ
  6464.  
  6465.  
  6466. ΓòÉΓòÉΓòÉ <hidden> Monitor Expression Dialog ΓòÉΓòÉΓòÉ
  6467.  
  6468.  
  6469. ΓòÉΓòÉΓòÉ <hidden> Monitor Properties Dialog ΓòÉΓòÉΓòÉ
  6470.  
  6471.  
  6472. ΓòÉΓòÉΓòÉ <hidden> Open New Source Dialog ΓòÉΓòÉΓòÉ
  6473.  
  6474.  
  6475. ΓòÉΓòÉΓòÉ <hidden> Overloaded Dialog ΓòÉΓòÉΓòÉ
  6476.  
  6477.  
  6478. ΓòÉΓòÉΓòÉ <hidden> Overloaded Dialog ΓòÉΓòÉΓòÉ
  6479.  
  6480.  
  6481. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  6482.  
  6483.  
  6484. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  6485.  
  6486.  
  6487. ΓòÉΓòÉΓòÉ <hidden> Program Profiles ΓòÉΓòÉΓòÉ
  6488.  
  6489.  
  6490. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6491.  
  6492.  
  6493. ΓòÉΓòÉΓòÉ <hidden> Change Text File ΓòÉΓòÉΓòÉ
  6494.  
  6495.  
  6496. ΓòÉΓòÉΓòÉ <hidden> Window Settings ΓòÉΓòÉΓòÉ
  6497.  
  6498.  
  6499. ΓòÉΓòÉΓòÉ <hidden> Source Filename Dialog ΓòÉΓòÉΓòÉ
  6500.  
  6501.  
  6502. ΓòÉΓòÉΓòÉ <hidden> Debugger Properties Dialog ΓòÉΓòÉΓòÉ
  6503.  
  6504.  
  6505. ΓòÉΓòÉΓòÉ <hidden> Scroll to Line Number ΓòÉΓòÉΓòÉ
  6506.  
  6507.  
  6508. ΓòÉΓòÉΓòÉ <hidden> Find ΓòÉΓòÉΓòÉ
  6509.  
  6510.  
  6511. ΓòÉΓòÉΓòÉ <hidden> Select Include ΓòÉΓòÉΓòÉ
  6512.  
  6513.  
  6514. ΓòÉΓòÉΓòÉ <hidden> Monitor Expression in Storage ΓòÉΓòÉΓòÉ
  6515.  
  6516.  
  6517. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6518.  
  6519.  
  6520. ΓòÉΓòÉΓòÉ <hidden> Display Style ΓòÉΓòÉΓòÉ
  6521.  
  6522.  
  6523. ΓòÉΓòÉΓòÉ <hidden> Other Elements ΓòÉΓòÉΓòÉ
  6524.  
  6525.  
  6526. ΓòÉΓòÉΓòÉ <hidden> Delete ΓòÉΓòÉΓòÉ
  6527.  
  6528.  
  6529. ΓòÉΓòÉΓòÉ <hidden> Prefix Area Popup Menu ΓòÉΓòÉΓòÉ
  6530.  
  6531.  
  6532. ΓòÉΓòÉΓòÉ <hidden> Prefix Area Popup Menu ΓòÉΓòÉΓòÉ
  6533.  
  6534.  
  6535. ΓòÉΓòÉΓòÉ <hidden> Run ΓòÉΓòÉΓòÉ
  6536.  
  6537.  
  6538. ΓòÉΓòÉΓòÉ <hidden> Step Into ΓòÉΓòÉΓòÉ
  6539.  
  6540.  
  6541. ΓòÉΓòÉΓòÉ <hidden> Step Over ΓòÉΓòÉΓòÉ
  6542.  
  6543.  
  6544. ΓòÉΓòÉΓòÉ <hidden> Step Return ΓòÉΓòÉΓòÉ
  6545.  
  6546.  
  6547. ΓòÉΓòÉΓòÉ <hidden> Call Stack Button ΓòÉΓòÉΓòÉ
  6548.  
  6549.  
  6550. ΓòÉΓòÉΓòÉ <hidden> Registers Button ΓòÉΓòÉΓòÉ
  6551.  
  6552.  
  6553. ΓòÉΓòÉΓòÉ <hidden> Storage Button ΓòÉΓòÉΓòÉ
  6554.  
  6555.  
  6556. ΓòÉΓòÉΓòÉ <hidden> Session Control Button ΓòÉΓòÉΓòÉ
  6557.  
  6558.  
  6559. ΓòÉΓòÉΓòÉ <hidden> Monitor Expression Button ΓòÉΓòÉΓòÉ
  6560.  
  6561.  
  6562. ΓòÉΓòÉΓòÉ <hidden> Breakpoints Button ΓòÉΓòÉΓòÉ
  6563.  
  6564.  
  6565. ΓòÉΓòÉΓòÉ <hidden> Growth Direction Pushbutton ΓòÉΓòÉΓòÉ
  6566.  
  6567.  
  6568. ΓòÉΓòÉΓòÉ <hidden> Delete Button ΓòÉΓòÉΓòÉ
  6569.  
  6570.  
  6571. ΓòÉΓòÉΓòÉ <hidden> Delete all ΓòÉΓòÉΓòÉ
  6572.  
  6573.