Starting z/OS Debugger for programs that start outside of Language Environment
To debug an MVS batch or TSO program that has an initial program that does not run under the control of Language Environment®, including non-Language Environment COBOL programs, use the z/OS® Debugger program EQANMDBG to start z/OS Debugger.
If you need to debug a non-Language Environment program where EQANMDBG is used to start z/OS Debugger, and your program frees SUBPOOL 1 (which z/OS Debugger uses itself by default), you need to specify a new parm to EQANMDBG.
The parameter is NONLESP(nnn) where nnn is a SUBPOOL number from 2 - 127, that specifies the SUBPOOL for z/OS Debugger to use for its storage.
If the initial program does run under the control of Language Environment and subsequent programs run outside the control of Language Environment, you can use the methods described in Starting z/OS Debugger for programs that start in Language Environment to debug all the programs.
- By using the IBM z/OS Debugger Utilities option 2, z/OS Debugger Setup File to run the programs either under TSO or in MVS batch.
- By modifying the MVS JCL, TSO CLIST or REXX EXEC that you use to start your program,
making the following changes:
- Change the name of the program to be started to EQANMDBG or its alias EQAN0DBG.
The two entry points differ in the way that they accept parameters:
- EQANMDBG can take parameters from various combinations of a parm string and EQANMDBG DD.
- EQAN0DBG accepts debugger parameters only from EQANMDBG DD and passes the address of the input parameter list unchanged to the application program. This entry point can take place of a program that receives a complex parameter list, for example in an IMS DL/I job.
- Make one of the following updates:
- Change the parameters by adding the name of the program to be debugged and any required z/OS Debugger run-time parameters. See Passing parameters to EQANMDBG by using only the PARM string for instructions.
- Add a EQANMDBG DD statement that provides the name of the program to be debugged and any required z/OS Debugger run-time parameters. See Passing parameters to EQANMDBG or EQAN0DBG using only the EQANMDBG DD statement for instructions.
- Change the parameters by adding the name of the program to be debugged, and add an EQANMDBG DD statement that provides any required z/OS Debugger run-time parameters. See Passing parameters to EQANMDBG using the PARM string and EQANMDBG DD statement for instructions.
- Change the name of the program to be started to EQANMDBG or its alias EQAN0DBG.
The two entry points differ in the way that they accept parameters:
SEQAMOD
must be
placed before any other library in the load module search path that contains
CEEEVDBG
for z/OS Debugger to get
control of a debug session.Refer to the following topics for more information related to the material discussed in this topic.