MACRO 00001000
&NM DMSFREX &ET,®0,®1,&TYPE,&ERR,&TYPCALL,&CODE 00002000
AIF ('&NM' EQ '').NOL 00003000
&NM EQU * 00004000
.NOL ANOP 00005000
AIF ('®0' EQ '(0)').NOZ 00006000
L 0,=A(®0) 00007000
.NOZ ANOP 00008000
AIF ('®1' EQ '(1)').NO1 00009000
AIF ('&ET' EQ 'E' AND '®1' EQ '').NO1 00010000
LA 1,®1 00011000
.NO1 ANOP 00012000
AIF ('&TYPE' EQ 'USER' OR '&TYPE' EQ 'NUCLEUS').TOK 00013000
MNOTE 8,'TYPE NOT ''USER'' OR ''NUCLEUS''' 00014000
MEXIT 00015000
.TOK ANOP 00016000
AIF ('&TYPCALL' EQ 'SVC').SVC 00017000
AIF ('&TYPCALL' EQ 'BALR').BALR 00018000
MNOTE 8,'TYPCALL ILLEGAL -- SVC OR BALR' 00019000
MEXIT 00020000
.SVC ANOP 00021000
SVC 203 00022000
AIF ('&ERR' EQ '').P 00023000
DC H'-&CODE' 00024000
AGO .CK 00025000
.P DC H'&CODE' 00026000
AGO .CK 00027000
.BALR ANOP 00028000
USING NUCON,0 00029000
L 15,AFRE&ET 00030000
BALR 14,15 00031000
.CK ANOP 00032000
AIF ('&ERR' EQ '' OR '&ERR' EQ '*').NOE 00033000
LTR 15,15 00034000
BNZ &ERR 00035000
.NOE ANOP 00036000
MEND 00037000