Debugging a non-Language Environment program using Terminal Interface Manager

You can use IBM z/OS Debugger JCL Wizard to create JCL statements to debug a non-Language Environment (non-LE) program by using the Terminal Interface Manager.

  1. In ISPF Edit or Browse, enter EQAJCL T to bypass the z/OS Debugger JCL Wizard Option Selection panel and invoke the IBM z/OS Debugger JCL Wizard for the Terminal Interface Manager. Alternatively, enter EQAJCL to invoke the IBM z/OS Debugger JCL Wizard and then select T.
    Enter the EQAJCL T command.
  2. Enter NO in the LE Program field.

    To select an optional parameter, specify a forward slash (/) in the field.

    Non-Language Environment programs require debug libraries to identify where the side file information is located and also a Load Debug Data (LDD) command to load the program source. Specify a forward slash (/) in the Debugger Libs and LDD Programs fields. In this use case, At Entry and Automonitor on are also selected.

    Specify optional parameters.
  3. Since you chose Debugger Libs, the z/OS Debugger Debug Libraries panel is displayed. In this panel, you can identify up to six z/OS Debugger side file libraries. These side files are created during the compilation or assembly process.

    You can add libraries of various types in this panel. For example, some languages use a LANGX file, others use SYSDEBUG or listing data sets. If you require more than six libraries, modify the JCL after the IBM z/OS Debugger JCL Wizard creates the appropriate statements.

    Add libraries in the panel.
  4. Since you chose to set AT ENTRY breakpoints for subprograms, the Request AT ENTRY Sub-Program Breakpoints panel is displayed. In this panel, enter one or more names of the z/OS Debugger side file data sets that you want to use. When you set breakpoints, generally only the program name is required. However, if the load module name is different than the program name, enter the load module name next to the program name. In this use case, the load module name of the ASAM2 program is ASAM2L.
    Set breakpoints.
  5. In the Program/Procedure Selection List panel, provide the program that you want to debug. The IBM z/OS Debugger JCL Wizard requires the program name to be explicitly identified for non-Language Environment programs. Enter the name of the non-Language Environment program shown on the EXEC PGM statement.
    Provide the program to debug.
  6. Since you chose LDD Programs, the z/OS Debugger LDD generation for Non-LE Program Name panel is displayed. The IBM z/OS Debugger JCL Wizard requires the member name of the LANGX library if you want to debug the first program with source.
    Provide the program to debug.
  7. The z/OS Debugger LDD generation for Non-LE Programs panel is defaulted to the LDD name provided in the z/OS Debugger LDD generation for Non-LE Program Name panel and the subprograms provided in the Request AT ENTRY Sub-Program Breakpoints panel. You can override or add more entries to this panel to depict the LANGX members that you want to use in the debug session.
    LDD name and subprograms displayed in the panel
  8. JCL statements are generated to invoke z/OS Debugger.
    The JCL is generated.
    • The program name on line 3 was changed from ASAM1M to EQANMDBG. This program initiates the debug session and debug ASAM1M, which is the first program to be invoked.
    • The VTAM%JMRICE requests z/OS Debugger to invoke the Terminal Interface Manager. This information is passed to the EQANMDBG program via the EQANMDBG DD statement.
    • LDD statements are generated for programs ASAM1M, ASAM2, and ASAM3.
    • Breakpoints are set for ASAM2 and ASAM3, using the load modules ASAM2L and ASAM3L respectively.
    • The EQADEBUG DD statement defines the side files, where the program source and debug data can be found.
You can remove the JCL statements by using EQAJCL R as described in Removing IBM z/OS Debugger JCL Wizard statements.
Remove the IBM z/OS Debugger JCL Wizard statements.
The PGM=EQANMDBG statement is modified back to the original program name, ASAM1M.
The JCL statements are removed.