*********************************************************************** * WRITTEN BY K.M. (SAM) BASS (SBASS,SJB,KBASS,KMB) * *********************************************************************** *--------------------------------------------------------------------* * ROUTINE TO CONVERT SWA SVA'S TO READ ADDRESSES * *--------------------------------------------------------------------* * INPUT R1 = SVA @/TOKEN;FMT=00NNNNNN * * OUTPUT R1 = CONVERTED SVA, NOPREFIX * * R15 = 0 ALL OK * * R15 = 12 SWAREQ ERROR * * R15 = 20 GETMAIN ERROR * *--------------------------------------------------------------------* * WRITTEN BY: SAM BASS * *--------------------------------------------------------------------* * ATTRIBUTES: RENT,REUS, RMODE=24, AMODE=31 * *--------------------------------------------------------------------* SWAREQ RMODE 24 SWAREQ AMODE 31 SWAREQ CSECT SAVE (14,12),T,SWAREQ_&SYSDATC._&SYSTIME. LR R11,R1 LR R12,R15 USING SWAREQ,R12 SPACE 2 LTR R1,R1 BNZ GETSVA RETURN (14,12),RC=0 GETSVA DS 0H L R15,=A(X'80000000'+SWAR0100) BSM R0,R15 SET TO AMODE 31 SWAR0100 DS 0H SPACE 2 GETMAIN RC,LV=LWORK,SP=1,LOC=ANY LTR R15,R15 BNZ SWARC20 SPACE 1 ST R1,8(,R13) CHAIN FWD ST R13,4(,R1) CHAIN PREV LR R13,R1 USING WORK,R13 SWAR0200 DS 0H LA R7,WEPA ST R7,WEPAP USING ZB505,R7 XC WEPA,WEPA STCM R11,7,SWVA PUT SVA 00FFFFFF INTO FFFFFF00 SWAREQ FCODE=RL,EPA=WEPAP,UNAUTH=YES,MF=(E,WSWA) LTR R15,R15 BNZ SWAR0900 SPACE 3 L R1,SWBLKPTR @ OF HIGH SVA DROP R7 LA R15,0 SPACE 3 SWARCXX DS 0H R1,R15 MUST BE SAVED L R14,4(,R13) RESTORE PREV SAVE ADDR ST R1,X'18'(,R14) SET R1 LR R1,R13 L R13,4(,R13) RESTORE PREV SAVE ADDR ST R15,X'10'(,R13) SAVE RETURN CODE FREEMAIN RU,LV=LWORK,A=(R1),SP=1 FREE STORAGE LM R14,R12,12(R13) RESTORE REGS BSM R0,R14 AND RETURN *--------------------------------------------------------------------* * GETMAIN ERROR * *--------------------------------------------------------------------* SWARC20 DS 0H GETMAIN ERROR LM R14,R12,12(R13) RESTORE REGS LA R1,0 LA R15,20 BSM R0,R14 AND RETURN *--------------------------------------------------------------------* * SWAREQ ERROR * *--------------------------------------------------------------------* SWAR0900 DS 0H ERROR ST R15,WDEC+8 UNPK WDEC(5),WDEC+8+2(3) TR WDEC(4),TRANS-240 MVC WWTO(SWARWTOL),SWARWTO MVC WWTO+MSG11(4),WDEC+0 WTO ,MF=(E,WWTO) SLR R1,R1 LA R15,12 B SWARCXX *--------------------------------------------------------------------* * DATA AREAS * *--------------------------------------------------------------------* SWARWTO WTO 'SWAREQ10 SWAREQ ERROR, RC=0000 HEX', X ROUTCDE=11,MF=L MSG11 EQU 30,5 SWARWTOL EQU *-SWARWTO TRANS DC C'01234567890ABCDEF' LTORG , *--------------------------------------------------------------------* * D S E C T S * *--------------------------------------------------------------------* WORK DSECT WSAVE DS 9D WDEC DS 2D WEPAP DS A WEPA DS CL(ZB505LEN),0F'0' WSWA SWAREQ MF=L WWTO DS CL(SWARWTOL),0F'0' LWORK EQU *-WORK SPACE 3 *--------------------------------------------------------------------* * MVS D S E C T S * *--------------------------------------------------------------------* IEFZB505 LOCEPAX=YES ZB505LEN EQU *-ZB505 PRINT NOGEN CVT DSECT=YES IEFJESCT TYPE=DSECT PRINT GEN YREGS , END ,