Joined: 20 Oct 2006 Posts: 6970 Location: porcelain throne
I found this on another site, and thought it would be useful info:
a post by Jim Moore:
The answer was to a question about how xpeditor does something.
I am really, really rusty at this but whenever I got curious about ISPF-based vendor products and how they were "doing things", I used to do something like this:
1) Go to option 7.8 and set a bunch of breakpoints.
2) TBCREATE, TBMOD, TBADD, etc - [Remember, 3rd parties have to abide by the documented ISPF API. They can't pull some of the stuff that IBM does in ISPF - no offense intended, IBM!]
3) Jump to 7.1 and invoke ISPF by typing in the PANEL=> field: ISR@PRIM [You might have to use an appl-id of ISP or ISR, I forget]
4) Navigate to XPED [or wherever] as usual.
If a breakpoint kicks in, you can use any of the options at Option 7 - Dialog Test - to examine things like pool variables and tables. You can even set/deactivate/qualify breakpoints.
If no breakpoint kicks in on the first try, set a breakpoint for VDEFINE, VCOPY and VREPLACE and try it again. If their ISPF code is assembled/compiled, they have to be using these.
If you can get a look at any addresses in Option 7.3 [maybe], try using the BROWSE sub-command of DDLIST [ISRDDN] to examine memory at a breakpoint.