Viewing a Different Module
To change the module object that is shown on the Display Module Source display, use option 5 (Display module source) on the Work with Module List display. You access the Work with Module List display from the Display Module Source display by pressing F14 (Work with Module List).
If you use this option with an ILE program object, the entry module with a root source, COPY, or listing view is shown (if it exists). Otherwise, the first module object bound to the program object with debug data is shown. If you use this option with an OPM program object, then the source or listing view is shown (if available).
An alternate method of viewing a different module object is to use the
DISPLAY debug command. On the debug command line, type:
DISPLAY MODULE module-name
The module object module-name is shown. The module object must exist in a program object that has been added to the debug session.
For example, to change from the module DBGEX in Figure 1 to
the module cproc using the Display module source option, follow these steps:
- To work with modules type
DSPMODSRC
, and press Enter. The Display Module Source display is shown. - Press F14 (Work with module list) to show the Work with Module List display. Figure 1 shows a sample display.
- To select cproc, type 5 (Display module source) next to it and press Enter. Since a root source view is available, it is shown, as in Figure 2. If a root source was not available, the first module object bound to the program object with debug data is shown.
Work with Module List
System: AS400S1
Type options, press enter.
1=Add program 4=Remove program 5=Display module source
8=Work with module breakpoints
Opt Program/module Library Type
*LIBL *PGM
RPGPGM MYLIB *PGM
DEBUGEX MYLIB *PGM
DBGEX *MODULE Selected
5 CPROC *MODULE
Bottom
Command
===> ________________________________________________________________________
F3=Exit F4=Prompt F5=Refresh F9=Retrieve F12=Cancel
Display Module Source
Program: DEBUGEX Library: MYLIB Module: CPROC
1 #include <stdlib.h>
2 #include <string.h>
3 #include <stdio.h>
4 extern char EXPORTFLD[6];
5
6 char *c_proc(unsigned int size, char *inzval)
7 {
8 char *ptr;
9 ptr = malloc(size);
10 memset(ptr, *inzval, size );
11 printf("import string: %6s.\n",EXPORTFLD);
12 return(ptr);
13 }
Bottom
Debug . . . _________________________________________________________________
_______________________________________________________________________________
F3=End program F6=Add/Clear breakpoint F10=Step F11=Display variable
F12=Resume F17=Watch variable F18=Work with watch F24=More keys