Dealing with PM application problems under OS/2 2.x is similar to WARP. The principle difference being that the messaging and windowing function in PM is provided by the 16-bit DLL, PMWIN.DLL.
Most of the message structures are analogous to those of PMMERGE.DLL, their layouts are similar.
Under PMWIN.DLL most pointers are either offsets from a predefined segments or selectors. Thus where there are double-word pointers in PMMERGE.DLL structures, there are word length fields in PMWIN.DLL.
The following three symbol files are required for debugging PM applications problems under OS/2 2.x:
A selection of useful symbols in the OS/2 2.x PM environment, with their equivalent OS/2 3.0 is listed below:
OS/2 3.0
Another significant difference between the two environments is in the calling conventions:
In effect this means that parameters on stacks, and in some control blocks, are stored in reverse order.
There are four symbols that do not have equivalents in PMMERGE, these are:
winsel
We now run through a brief sequence of examples that illustrate: