* %/* 00060002 * /* MACCOMP Y-1 SC1C5/PZD81 */ 00070002 * /* MACSTAT Y-1 72237/015156 */ 00100002 * /* MACDATE Y-1 72237 */ 00150002 * /* 00200002 MACRO 00250002 &NAME WTOR &MESG,&RYAD,&LENGTH,&ECB,&MF=I,&MSGTYP=,&ROUTCDE=, X00300002 &DESC=,&MCSFLAG=,&QID= X02050 00350002 GBLB &IHBWTOR 00400002 LCLC &GNAME 00450002 &GNAME SETC 'IHB'.'&SYSNDX' 00500002 AIF (N'&SYSLIST(1) GT 1).ERROR7 00550002 AIF ('&MF' EQ 'I').IROUT 00600002 AIF ('&MF' EQ 'L').LROUT 00650002 AIF (N'&MF LE 1).ERROR1 00700002 AIF ('&MF(1)' NE 'E').ERROR1 00750002 &NAME IHBINNRA &MF(2) 00800002 .CHKRYAD AIF ('&RYAD' EQ '').NORYAD 00850002 AIF ('&LENGTH' NE '').SKIP 00900002 IC 14,0(1,0) SAVE REPLY LENGTH 00950002 .SKIP AIF ('&RYAD'(1,1) EQ '(').REGNOT 01000002 LA 15,&RYAD LOAD REPLY ADDR M4520 01050002 ST 15,0(1,0) STORE RPLY ADDR M4520 01100002 AGO .CONT 01150002 .ERROR1 IHBERMAC 35,,&MF 01200002 MEXIT 01250002 .ERROR2 IHBERMAC 19 01300002 MEXIT 01350002 .ERROR3 IHBERMAC 69 01400002 MEXIT 01450002 .ERROR4 IHBERMAC 14 01500002 MEXIT 01550002 .ERROR5 IHBERMAC 03 01600002 MEXIT 01650002 .ERROR6 IHBERMAC 11 01700002 MEXIT 01750002 .ERROR7 IHBERMAC 246 01800002 MEXIT 01850002 .REGNOT ST &RYAD(1),0(1,0) STORE REPLY ADDR 01900002 .CONT AIF ('&LENGTH' NE '').SKIPA 01950002 STC 14,0(1,0) RESTORE REPLY LENGTH 02000002 AGO .CHKECB 02050002 .SKIPA AIF ('&LENGTH'(1,1) EQ '(').REGPRES 02100002 MVI 0(1),&LENGTH MOVE IN REPLY LENGTH 02150002 AGO .CHKECB 02200002 .REGPRES STC &LENGTH(1),0(1,0) STORE REPLY LENGTH 02250002 AGO .CHKECB 02300002 .NORYAD AIF ('&LENGTH' NE '').SKIPA 02350002 .CHKECB AIF ('&ECB' EQ '').CHKQID X02050 02400002 AIF ('&ECB'(1,1) EQ '(').ISREG 02450002 LA 14,&ECB LOAD ADDRESS OF ECB 02500002 ST 14,4(1,0) STORE ECB ADDRESS 02550002 AGO .CHKQID X02050 02600002 .ISREG ST &ECB(1),4(1,0) STORE ECB ADDRESS 02650002 .CHKQID ANOP X02050 02700002 AIF (T'&QID EQ 'O').S3 X02050 02750002 LA 14,8(1,0) YM1995 02800002 AH 14,0(14,0) YM1995 02850002 AIF ('&QID'(1,1) EQ '(').S2 X02050 02900002 MVC 6(2,14),&QID X02050 02950002 AGO .S3 X02050 03000002 .S2 ANOP X02050 03050002 MVC 6(2,14),0(&QID(1)) X02050 03100002 .S3 ANOP X02050 03150002 .SVC SVC 35 ISSUE WTOR SVC 03200002 AGO .END 03250002 .LROUT ANOP 03300002 &NAME DS 0F 03350002 AIF ('&LENGTH' EQ '').PUTZERO 03400002 AIF ('&LENGTH'(1,1) EQ '(').ERROR3 03450002 DC AL1(&LENGTH) REPLY LENGTH 03500002 AGO .CHKRY 03550002 .PUTZERO DC AL1(0) REPLY LENGTH 03600002 .CHKRY AIF ('&RYAD' EQ '').PUTZER 03650002 AIF ('&RYAD'(1,1) EQ '(').ERROR3 03700002 DC AL3(&RYAD) REPLY ADDRESS 03750002 AGO .CHKECBL 03800002 .PUTZER DC AL3(0) REPLY ADDRESS 03850002 .CHKECBL AIF ('&ECB' EQ '').ZEROS 03900002 AIF ('&ECB'(1,1) EQ '(').ERROR3 03950002 DC A(&ECB) ECB ADDRESS 04000002 AGO .MESGCK 04050002 .ZEROS DC A(0) ECB ADDRESS 04100002 .MESGCK AIF ('&MESG' EQ '').ERROR2 04150002 &IHBWTOR SETB 1 04200002 WTO &MESG,MF=&MF,MSGTYP=&MSGTYP,ROUTCDE=&ROUTCDE,DESC=&DESC,X04250002 MCSFLAG=&MCSFLAG,QID=&QID X02050 04300002 &IHBWTOR SETB 0 04350002 AIF ('&MF' EQ 'I').IRETURN 04400002 AGO .END 04450002 .IROUT CNOP 0,4 04500002 &NAME BAL 1,&GNAME.A BRANCH AROUND LIST 04550002 AIF ('&LENGTH' EQ '').ERROR4 04600002 AIF ('&LENGTH'(1,1) EQ '(').ZEROA 04650002 DC AL1(&LENGTH) REPLY LENGTH 04700002 AGO .CHKNEXT 04750002 .ZEROA DC AL1(0) REPLY LENGTH 04800002 .CHKNEXT AIF ('&RYAD' EQ '').ERROR5 04850002 AIF ('&RYAD'(1,1) EQ '(').ZEROB 04900002 DC AL3(&RYAD) REPLY ADDRESS 04950002 AGO .CHKECBI 05000002 .ZEROB DC AL3(0) REPLY ADDRESS 05050002 .CHKECBI AIF ('&ECB' EQ '').ERROR6 05100002 AIF ('&ECB'(1,1) EQ '(').ZEROC 05150002 DC A(&ECB) ECB ADDRESS 05200002 AGO .MESGCK 05250002 .ZEROC DC A(0) ECB ADDRESS 05300002 AGO .MESGCK 05350002 .IRETURN ANOP 05400002 &GNAME.A DS 0H 05450002 AIF ('&RYAD'(1,1) NE '(').NOTRYAD 05500002 AIF ('&LENGTH'(1,1) EQ '(').EASY 05550002 IC 14,0(1,0) SAVE REPLY LENGTH 05600002 ST &RYAD(1),0(1,0) STORE REPLY ADDRESS 05650002 STC 14,0(1,0) RESTORE REPLY LENGTH 05700002 AGO .CHKECBQ 05750002 .EASY ST &RYAD(1),0(1,0) STORE REPLY ADDRESS 05800002 .PUTLTH STC &LENGTH(1),0(1,0) STORE REPLY LENGTH 05850002 AGO .CHKECBQ 05900002 .NOTRYAD AIF ('&LENGTH'(1,1) EQ '(').PUTLTH 05950002 .CHKECBQ AIF ('&ECB'(1,1) NE '(').SVC 06000002 ST &ECB(1),4(1,0) STORE ECB ADDRESS 06050002 AGO .SVC 06100002 .END MEND 06150002 **/ 06200002 * WTOR: MACRO KEYS( 06600002 * ROUTCDE, /*ROUTING CODES FOR MESSAGE */ 06700002 * DESC, /*MESSAGE DESCRIPTOR CODES */ 06800002 * MSGTYP, /*ROUTE TO MESSAGE CONSOLES */ 06900002 * MCSFLAG, /*MESSAGE ATTRIBUTES */ 07000002 * RTCD, /*SVC RETURN CODE */ 07100002 * MF /*LIST FORMAT */ 07200002 * ); 07300002 * ANS('?'||MACLABEL||'WTORP '||MACLIST||MACKEYS||';'); 07350002 *%END WTOR; 07360002