MACRO 00001000 &LABEL RDTERM &BUFFER,&EDIT=YES,&LENGTH=,&ATTREST=YES 00002100 LCLC &ADDR,&CODE,&LENG 00002200 &LENG SETC '0' 00002300 &LABEL DS 0H 00005000 AIF (T'&BUFFER EQ 'O').ERR1 00006000 AIF ('&EDIT' EQ 'YES').EDIT4 00007000 AIF ('&EDIT' EQ 'PAD').EDIT3 00008000 AIF ('&EDIT' EQ 'UPCASE').EDIT2 00009000 AIF ('&EDIT' EQ 'NO').EDIT1 00010000 AIF ('&EDIT' EQ 'PHYS').EDIT0 00011000 MNOTE 4,'INVALID EDIT SPECIFICATION - ''YES'' ASSUMED' @VA04128 00012000 AGO .EDIT4 00013000 .EDIT0 AIF (T'&LENGTH NE 'O').EDITL0 00014100 &CODE SETC 'X' 00014150 AIF ('&ATTREST' NE 'NO').CONT1C @VA04128 00014175 &LENG SETC '130' @VA04128 00014200 AGO .EDITL4 @VA04128 00014225 .EDITL0 AIF ('&LENGTH'(1,1) EQ '(').EDITL1 00014250 &LENG SETC '&LENGTH' 00014300 .EDITL4 ANOP @VA04128 00014325 MVC DMS&SYSNDX.B+2(2),=AL2(&LENG) 00014350 AGO .EDITL2 00014400 .EDITL1 STH &LENGTH(1),DMS&SYSNDX.B+2 00014450 .EDITL2 AIF ('&ATTREST' EQ 'NO').EDITL3 @VA04128 00014500 &CODE SETC '*' @VA04128 00014550 AGO .CONT1C @VA04128 00014600 .EDITL3 ANOP 00014800 &CODE SETC '$' 00014850 AGO .CONT1B 00014900 .EDIT1 ANOP 00017000 &CODE SETC 'T' 00018000 AGO .CONT1 00019000 .EDIT2 ANOP 00020000 &CODE SETC 'V' 00021000 AGO .CONT1 00022000 .EDIT3 ANOP 00023000 &CODE SETC 'S' 00024000 AGO .CONT1 00025000 .EDIT4 ANOP 00026000 &CODE SETC 'U' 00027000 .CONT1 AIF (T'&LENGTH EQ 'O').CONT1A 00028100 MNOTE 4,'LENGTH SPECIFICATION IGNORED WHEN EDIT NOT ''PHYS''' @VA04128 00028140 .CONT1A AIF ('&ATTREST' EQ 'YES').CONT1B @VA04128 00028180 AIF ('&ATTREST' NE 'NO').CONT1D @VA04128 00028220 MNOTE 4,'ATTREST ASSUMED ''YES'' WHEN EDIT NOT ''PHYS''' @VA04128 00028260 AGO .CONT1B @VA04128 00028300 .CONT1C AIF ('&ATTREST' EQ 'YES').CONT1B @VA04128 00028340 .CONT1D ANOP @VA04128 00028380 MNOTE 4,'INVALID ATTREST SPECIFICATION - ''YES'' ASSUMED' @VA04128 00028420 .CONT1B ANOP 00028500 &ADDR SETC '&BUFFER' 00029000 AIF ('&BUFFER'(1,1) NE '(').CONT2 00030000 &ADDR SETC '0' 00031000 ST &BUFFER(1),DMS&SYSNDX.A 00032000 MVI DMS&SYSNDX.A,X'01' 00033000 .CONT2 ANOP 00034000 CNOP 0,4 00034100 BAL 1,DMS&SYSNDX.C 00035000 DC CL8'WAITRD' 00036000 DMS&SYSNDX.A DC X'01',AL3(&ADDR) 00037000 DMS&SYSNDX.B DC C'&CODE',AL3(&LENG) 00038100 DMS&SYSNDX.C SVC 202 00039000 DC AL4(*+4) 00040000 LH 0,DMS&SYSNDX.B+2 00041000 MEXIT 00042000 .ERR1 MNOTE 8,'BUFFER ADDRESS NOT SPECIFIED' 00043000 MEND 00044000