steve-myers
Active Member
Joined: 30 Nov 2013 Posts: 917 Location: The Universe
|
|
|
|
As I said bafore, Mr. Jensen's code fragment will not always work. It will not work if your installation specifies the SWA above the line. This code fragment will always work. Your code specifies AMODE 31, though if it works it will work with AMODE 24. The SWAREQ macro requires AMODE 31.
Code: |
PUSH PRINT
PRINT NOGEN
IEFZB505 LOCEPAX=YES
ORG ,
ZB505SZ EQU *-ZB505
POP PRINT
...
L 2,CVTPTR
L 3,CVTTCBP-CVTMAP(,2)
L 4,4(,3)
L 5,TCBJSCB-TCB(,4)
XC ZB505X,ZB505X
LA 0,ZB505X
ST 0,SWEPAPTR
USING ZB505,ZB505X
MVC SWVA,JSCJCTP-IEZJSCB(5)
SWAREQ UNAUTH=YES,FCODE=RL,EPA=SWEPAPTR,MF=(E,SWAPARM)
LTR 15,15
BNZ EXIT
L 1,SWBLKPTR
...
DS 0D
ZB505X DC XL(ZB505SZ)'0'
SWEPAPTR DS F
SWAPARM SWAREQ MF=L
POP PRINT
...
PUSH PRINT
PRINT NOGEN
CVT DSECT=YES
IKJTCB ,
IEZJSCB ,
IEFAJCTB ,
IEFJESCT ,
POP PRINT |
The Load instruction after the SWAREQ macro call will load the correct address of the JCT. |
|