> Hmmm.... Returns to caller in sup state and key 0.... Sort of like a
> "magic SVC"?
> 
> Or does MODESET "automagically" cancel itself?

He said it's a batch program.  If that means that it's on the PGM= operand, 
then his return is to  SVC3 and no harm will result.  But, I agree, it's bad 
form.  


 
> Date: Wed, 15 Dec 2010 14:10:36 -0600
> From: [email protected]
> Subject: Re: Batch program to update CVTUSER
> To: [email protected]
> 
> > -----Original Message-----
> > From: IBM Mainframe Discussion List On Behalf Of Steve Comstock
> > 
> > On 12/15/2010 12:22 PM, Lorne Dudley wrote:
> > > I'm having problems getting the following batch program to run
> correctly. It's
> > > running from an authorized library and abends with 0C4, reason code
> 4.
> > >
> > > The book says "the key of the storage area that the running program
> tries to
> > > access is different from that of the running program".
> > >
> > > Data Areas for CVT says
> > > Storage Attributes: Subpool: Nucleus
> > > Key: 0
> > > Residency: Below 16M line
> > >
> > > Any ideas appreciated.
> > >
> > > The code is below, linked into an authorized library with
> > > SETCODE AC(1).
> > >
> > > Regards
> > >
> > > Lorne Dudley
> > > Queen's University
> > > Kingston, Ontario
> > >
> > >
> ------------------------------------------------------------------------
> -----
> > > TITLE 'CVTUSER TEST'
> > > CVT DSECT=YES,LIST=YES .CVT DSECT
> > > Y CSECT ,
> > > *
> > > * REGISTER EQUATES
> > > *
> > > R0 EQU 0 .
> > > R1 EQU 1 .
> > > R2 EQU 2 .CVT ADDRESS
> > > R3 EQU 3 .CVTUSER ADDRESS
> > > R4 EQU 4 .
> > > R9 EQU 9 .BASE ADDRESS OF THIS EXIT
> > > R10 EQU 10 .
> > > R15 EQU 15 .
> > > *
> > > SAVE (14,12),,X_V1.0_&SYSDATE SAVE & ID
> > > LR R9,R15 .SET UP ADDRESSABILITY
> > > USING Y,R9 .SET UP ADDRESSABILITY
> > > USING CVT,R2 .CVT DSECT
> > > *
> > > MODESET KEY=ZERO,MODE=SUP
> > > *
> > > L R2,CVTPTR LOAD UP CVT ADDRESS
> > > L R3,CVTUSER LOAD CVTUSER ADDRESS
> > > * move 4 characters to CVTUSER
> > > MVC R3(4),=C'TEST'
> > 
> > YIKES! the above says "move to a displacement of 3
> > for a length of 4 to absolute location 0, the
> > string "TEST". That is: move absolute locations 3-6
> > the string "TEST".
> > 
> > You cannot use R3 to indicate a dynamic displacement.
> > 
> > 
> > > RETURN (14,12),RC=0 .RETURN TO CALLER
> > > LTORG
> > > PATCH DC 2D'0' .16 BYTE PATCH AREA
> > > END
> > >
> 
> Hmmm.... Returns to caller in sup state and key 0.... Sort of like a
> "magic SVC"?
> 
> Or does MODESET "automagically" cancel itself?
> 
> -jc-
> 
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html
                                          
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to