MACRO 00001000 &LABEL HNDINT &FUNC,&ERROR=*+4 00002000 LCLA &NUM 00003000 LCLC &NAME,&LOC,&ADDR,&WHEN 00004000 CNOP 0,4 00005000 AIF (T'&FUNC EQ 'O').ERR0 00006000 AIF ('&FUNC' NE 'CLR' AND '&FUNC' NE 'SET').ERR0 00007000 AIF (N'&SYSLIST LE 1).ERR1 00008000 &NUM SETA 1 00009000 &LABEL BAL 1,DMS&SYSNDX.A 00010000 DC CL8'HNDINT' 00011000 DC CL4'&FUNC' 00012000 .LOOP ANOP 00013000 &NUM SETA &NUM+1 00014000 AIF (N'&SYSLIST LT &NUM).END 00015000 AIF (T'&SYSLIST(&NUM,1) EQ 'O').ERR2 00016000 &NAME SETC '&SYSLIST(&NUM,1)' 00017000 AIF (K'&SYSLIST(&NUM,1) LE 4).CONT 00018000 MNOTE 4,'DEVICE NAME TRUNCATED TO 4 CHARACTERS' 00019000 .CONT AIF ('&FUNC' EQ 'CLR').CLR 00020000 AIF (T'&SYSLIST(&NUM,2) EQ 'O').ERR3 00021000 AIF (T'&SYSLIST(&NUM,3) EQ 'O').ERR4 00022000 AIF (K'&SYSLIST(&NUM,3) NE 3).ERR6 00023000 AIF (T'&SYSLIST(&NUM,4) EQ 'O').ERR5 00024000 &LOC SETC '&SYSLIST(&NUM,2)' 00025000 &ADDR SETC '&SYSLIST(&NUM,3)' 00026000 &WHEN SETC '&SYSLIST(&NUM,4)' 00027000 AIF ('&WHEN' NE 'ASAP' AND '&WHEN' NE 'WAIT').ERR7 00028000 DC CL4'&NAME',AL4(&LOC),XL2'0&ADDR',CL1'&WHEN',C'C' 00029000 AGO .LOOP 00030000 .CLR ANOP 00031000 DC CL4'&NAME',AL4(0),4X'00' 00032000 AGO .LOOP 00033000 .END ANOP 00034000 DC XL4'FFFFFFFF' 00035000 DMS&SYSNDX.A SVC 202 00036000 DC AL4(&ERROR) 00037000 MEXIT 00038000 .ERR0 MNOTE 8,'FUNCTION NAME OMITTED OR INVALID' 00039000 MEXIT 00040000 .ERR1 MNOTE 8,'NO ADDRESS LIST SPECIFIED' 00041000 MEXIT 00042000 .ERR2 MNOTE 4,'DEVICE NAME NOT SPECIFIED - SKIPPED' 00043000 AGO .LOOP 00044000 .ERR3 MNOTE 4,'INTERRUPT ADDRESS NOT SPECIFIED - SKIPPED' 00045000 AGO .LOOP 00046000 .ERR4 MNOTE 4,'DEVICE ADDRESS NOT SPECIFIED - SKIPPED' 00047000 AGO .LOOP 00048000 .ERR5 MNOTE 4,'WHEN PARAMETER NOT SPECIFIED - SKIPPED' 00049000 AGO .LOOP 00050000 .ERR6 MNOTE 4,'DEVICE ADDRESS NOT 3 CHARACTERS - SKIPPED' 00051000 AGO .LOOP 00052000 .ERR7 MNOTE 4,'INVALID WHEN PARAMETER - SKIPPED' 00053000 AGO .LOOP 00054000 MEND 00055000