Am at a loss here as to what I'm doing wrong. I need to set up a non
system LX, non space switch PC. I have one task that executes the functions to
set it up, and one that will actually execute the PC. The goofy part about
this is that I've got code that successfully sets up a space-switch PC routine
with no problem.
The LXRES
MVC CRTPLXRE,CRTPLXRS MOVE LIST TO EXECUTE
MVC CRTPLXR#,=F'1' WE NEED ONE LX
MODESET MODE=SUP
LXRES LXLIST=CRTPLXR#,
LXSIZE=23,
REUSABLE=NO,
SYSTEM=NO,
MF=(E,CRTPLXRE)
LTR R15,R15 DID WE GET IT
BZ CRTP0080 YES
The code then does three ETDEF's to set up the entry tables.
MVC CRTPETDF,CRTPETDE
ETDEF TYPE=SET,HEADER=CRTPETDF,NUMETE=3
L R8,=A(PC1RTN) ADDR OF PC ROUTINE #1
LA R7,CRTPETDF BEGIN OF AREA
LA R7,ETDLEN(,R7) 1ST ETE ADDRESS
ETDEF TYPE=SET,ETEADR=(R7),
AKM=(0:8),
ASCMODE=PRIMARY,
EKM=(0:8),
PARM1=(R10),PC=STACKING,
ROUTINE=(R8),
RAMODE=31,
SSWITCH=NO,
STATE=PROBLEM
This last ETDEF is executed three times, with r8 and r7 adjusted each time.
ETCRE is then executed.
ETCRE ENTRIES=CRTPETDF
Lastly ETCON
MVC CRTPETCN,CRTPECON LIST TO EXECUTE STORAGE
MVC CRTPTOK#,=F'1' SET NBR OF TOKENS
ETCON TKLIST=CRTPTOK#,LXLIST=CRTPLXR#,MF=(E,CRTPETCN)
LTR R15,R15
BZ CRTP0200 LOOKING GOOD
But when the subtask picks up the LX created, and tries to execute the 1st
PC routine, it abends. And the really goofy part is that the abend is a B78 in
the nucleus. The only thing that I don't check for a valid return code on is
the ETCRE, but the manual doesn;t show any values other than 00 return codes,
or an abend. The code that is setting up the PC is not abending, the code that
executes the PC is. Anybody have any ideas?
--Dave Day
----------------------------------------------------------------------
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