When running an LE-enabled application under CMS the program will crash very 
soon after startup with the following:

 -> 0000000002221082   ICM     BF3F2138    7AF5F478    CC 2   CEEPLPKA+0x119ef2
*** 0000000002221082       PROG    0005 -> 00F3B740
              ADDRESSING

This is due to R2 having a "bad" value. R2 is loaded by the 1st instruction 
below and dies with the 3rd instruction:

R0222107A  ICM     BF2F021C     BRZ     A784001C     ICM     BF3F2138

In z/OS 0x21c is the PSATOLD field:

00021C 00000000                     173+PSATOLD  DC    A(0) -         TCB OLD 
POINTER.  THIS OFFSET FIXED BY    01-IHAPS
                                    174+*                             
ARCHITECTURE.  (MDC460)          @G50EP9A

However, in CMS this is the banner string:

000200 4040404040404040             119+SYSTEMID DC    CL32' '        System 
name and date             @VR200KB 01-NUCON

R0000021C  7AF5F340
R00000200  A961C3D4 E240E5F7 4BF14BF0 404040F2 F6 *z/CMS V7.1.0   2*
R00000210  F0F2F660 F0F160F1 F940F1F8 7AF5F340    *026-01-19 18:53 *

Based on the address and the address of the SCEEX segment and the CEEPLPKA 
logical segment, the code appears to be here:

CEEPLPKA -
 CEEO1LOD SD 00119D28          RMODE ANY AMODE 31
 CEEO1MPC SD 0011A158          RMODE ANY AMODE 31

CEE01LOD+0x1ca

The CMS BINDER explicitly patches the 0x21c address with 0 and restores it 
after completion. Rather than reference this field at all it should be possible 
for LE under CMS to ignore the value and assume 0. At the moment I have to 
patch the value manually before I start the application.

Neale

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to