MACRO 00500013 &NAME DFTRMLST &TYPE,&PAR1,&PAR2,&PAR3,&PAR4,&PAR5,&PAR6,&PAR7 000H 00700018 .*71660002010000,070000,115000,195000,205000-210000,290000, 000B 00900014 .*71660002345000,490000-510000,585000-590000 000B 01100014 .*CC271800200000 000G 01300017 .********************************************************************** 01320000 .* THE FOLLOWING MAINTANCE HAS BEEN APPLIED 01340000 .********************************************************************** 01360000 .* AZ03969 (09/22/75) @ZA03969 01380000 .* AZ04661 (09/22/75) @ZA04661 01400000 .* AZ04662 (09/22/75) @ZA04662 01420000 .* AZ33834 (07/13/78) @ZA33834 01460000 .********************************************************************** 01500000 LCLA &CTR,&SUM,&ID,&EOL,&K,&COUNT,&KPAR2 000A 02000013 LCLA &EN,&SL,&KX,&NSUB 000A 02500013 LCLA &NZERO 000L 02550019 LCLA &NLE 000L 02600019 LCLA &USERLNG 000L 02650019 LCLA &CNTLBYT 000L 02700019 LCLA &RDINLNG 000L 02750019 LCLA &KXX 000L 02800019 LCLA &KPAR3,&KPAR5,&KPAR7,&OPS 000L 02850019 LCLC &SEQ 000L 02900019 LCLC &GNAME,&CNT A46821 03200002 LCLC &DIGIT YA01025 03600002 .* 04000013 LCLA &INDX 000A 04500013 LCLB &W 000A 05000013 LCLA &NPC 000A 05500013 LCLA &NNN 000A 06000013 LCLA &ENT 000A 06500013 LCLB &ANSR,&B1 000B 07000014 LCLB &B2 000G 07200017 LCLB &B3 000H 07270018 LCLB &B4 000H 07340018 LCLB &B5 000H 07410018 .* 07500013 &COUNT SETA 1 08000013 &CTR SETA 1 08500013 &ID SETA 1 09000013 &EOL SETA 0 09500013 &ANSR SETB ('&PAR1' NE '0') 000A 10000013 &KPAR2 SETA K'&PAR2*&ANSR 000A 10500013 .* 11000013 &B1 SETB ('&TYPE' EQ 'BSCLST') 000B 11300014 &B2 SETB ('&TYPE' EQ 'WTTALST') 11320018 &B3 SETB ('&TYPE' EQ 'WTLIST') 000H 11340018 .* ONE LINE OG CODE FOR APAR ZA03969 DELETED BY ----> @ZA04662 11350000 AIF (N'&SYSLIST LT 2).ERR4 @ZA04662 11355000 AIF ('&TYPE' EQ 'SWLST').SWID 000L 11360019 AIF ('&TYPE' NE 'WTLIST').SKIP 000H 11380018 AIF ('&PAR1' NE '0').ER2 000H 11420018 &NAME DC XL1'80' 000H 11460018 AGO .ANSD 000H 11500018 .SKIP AIF ('&TYPE' EQ 'WTTALST').SKIP0 000H 11540018 AIF ('&TYPE' NE 'IDLST' AND NOT &B1).DIAL 000B 11600014 .SKIP0 ANOP 000G 11800017 &NAME DC HL1'&KPAR2' NO. OF DIAL DIGITS 000A 12000013 AIF ('&PAR1' EQ '0').ANSD 12500013 AIF (&PAR1 EQ K'&PAR2).P1OKD 000A 13000013 MNOTE 4,'*** IHB107 DIALCOUNT AND DIALCHARS NOT IN AGREEMENT' 13500018 .P1OKD ANOP 000A 14000013 .ANS ANOP 14500013 &DIGIT SETC '&PAR2'(&COUNT,1) YA01025 15200002 DC X'&DIGIT' DIAL DIGIT YA01025 15600002 AIF (&KPAR2 LE &COUNT).NOID 000A 16000013 AIF ('&PAR2'(&COUNT,1) EQ ')').ER1 A46821 16500002 &COUNT SETA &COUNT+1 17000013 AGO .ANS 17500013 .NOID DC HL1'&PAR3' NO. OF ID CHARACTERS 18000013 DC XL&PAR3'0' ID FROM TERMINAL 18500013 DC XL&PAR3'&PAR4' TERMINAL IDENTIFICATION. 19000013 AIF (NOT &B1).SKIP1 000B 19200014 DC HL1'&PAR5' NO. OF ID CHARACTERS 000B 19400014 DC XL&PAR5'&PAR6' ID TO TERMINAL 000B 19600014 .SKIP1 AGO .END 000B 19800014 .ANSD AIF ('&PAR2' EQ '0' AND &B2).SKIP2A 000G 19870017 DC HL1'&PAR2' NO. OF ID CHARACTERS 000G 19940017 AIF (&B2).SKIP1A 20010018 AIF (NOT (&B1 OR &B3)).SKIP2 000H 20080018 .SKIP1A ANOP 000G 20150017 DC XL&PAR2'0' ID FROM TERMINAL 000B 20200014 .SKIP2 DC XL&PAR2'&PAR3' TERMINAL IDENTIFICATION 000B 20300014 AIF (&B2).SKIP2A 000G 20350018 AIF (NOT (&B1 OR &B3)).SKIP3 000H 20400018 .SKIP2A ANOP 000G 20450017 DC HL1'&PAR4' NO. OF ID CHARACTERS 000B 20500014 DC XL&PAR4'&PAR5' ID TO TERMINAL 000B 20600014 .SKIP3 AIF (NOT&B3).END 000H 20690018 &B4 SETB ('&PAR6' EQ '') 000H 20780018 &B5 SETB ('&PAR7' EQ '') 000H 20870018 AIF (&B4 AND &B5).END 000H 20960018 AIF (&B4 AND NOT &B5).ER3 000H 21050018 AIF (&B5 AND NOT &B4).ER3 000H 21140018 DC AL2(&PAR6) 000H 21230018 DC AL3(&PAR7) 000H 21320018 AGO .END 21410018 .* 000L 21410619 .SWID ANOP 000L 21411219 &KPAR3 SETA K'&PAR3 000L 21411819 &KPAR5 SETA K'&PAR5 000L 21412419 &KPAR7 SETA K'&PAR7 000L 21413019 AIF ('&PAR1' NE 'AN' AND '&PAR1' NE 'AD' AND '&PAR1' NE C21413619 'MD').ERR4 000L 21414219 &NAME DS 0F PUT ON FULL WORD BOUNDARY 000L 21414819 DC XL1'FF' IDENTIFY AS SWLST 000L 21415419 DC XL3'0' PTR TO MATCHING SEQUENCE 000L 21416019 AIF ('&PAR1' EQ 'AD').NINE 000L 21416619 &EN SETA 0 000L 21417219 AGO .LISTENT 000L 21417819 .NINE ANOP 000L 21418419 &EN SETA 2 000L 21419019 .LISTENT ANOP 000L 21419619 &NLE SETA N'&SYSLIST NO. OF OPS IN MACRO INSTRUC000L 21420219 AIF ('&PAR1' EQ 'AD').EIGHT 000L 21420819 &NLE SETA N'&SYSLIST-6 SUBTRACT SIX OPERANDS 000L 21421419 AGO .LENTRY 000L 21422019 .EIGHT ANOP 000L 21422619 &NLE SETA N'&SYSLIST-8 SUBTRACT EIGHT OPERANDS 000L 21423219 .LENTRY ANOP 000L 21423819 DC AL1(&NLE) # OF LIST ENTRIES @ZA33834 21424400 &USERLNG SETA 4 USERLENGTH 000L 21425019 &CNTLBYT SETA 1 CONTROL BYTE 000L 21425619 AIF ('&PAR1' EQ 'AD').ADLIST 000L 21426219 DC HL1'&PAR2' ENTRY LENGTH 000L 21426819 AIF (T'&PAR2 NE 'N').ERR9 000L 21427419 &RDINLNG SETA &PAR2-&CNTLBYT SUBTRACT CONTROL BYTE 000L 21428019 AIF ('&PAR3' NE '4').RDIN 000L 21428619 &RDINLNG SETA &RDINLNG-&USERLNG SUBTRACT USERLENGTH 000L 21429219 AGO .RDIN 000L 21429819 .ADLIST ANOP 000L 21430419 DC HL1'&PAR4' ENTRY LENGTH FOR AD LIST 000L 21431019 AIF (T'&PAR4 NE 'N').ERR9 000L 21431619 &RDINLNG SETA &PAR4-&CNTLBYT SUBTRACT CONTROL BYTE 000L 21432219 AIF ('&PAR5' NE '4').RDIN 000L 21432819 &RDINLNG SETA &RDINLNG-&USERLNG SUBTRACT USERLENGTH 000L 21433419 .RDIN ANOP 000L 21434019 AIF ('&RDINLNG' GE '2').LNGOK 000L 21434619 &RDINLNG SETA 2 000L 21435219 .LNGOK ANOP 000L 21435819 DC HL1'&RDINLNG' READ-IN-AREA LENGTH 000L 21436419 AIF ('&PAR1' EQ 'AD').ADLST 000L 21437019 DC HL1'0' NO. OF DIAL DIGITS 000L 21437619 AGO .RDAREA 000L 21438219 .ADLST ANOP 000L 21438819 AIF ('&PAR2' EQ '0').ERR5 000L 21439419 AIF (T'&PAR2 NE 'N').ERR9 000L 21440019 AIF ('&PAR2' EQ '&KPAR3').DIALOK 000L 21440619 AGO .ERR6 000L 21441219 .DIALOK ANOP 000L 21441819 DC HL1'&PAR2' NO. OF DIAL DIGITS 000L 21442419 .RDAREA ANOP 000L 21443019 DC XL&RDINLNG'0' READ-IN-AREA 000L 21443619 AIF ('&PAR1' NE 'AD').IDCNT 000L 21444219 .DDIGIT ANOP 000L 21444819 .* ONE LINE OF CODE DELETED BY ----------------> @ZA04661 21445100 &DIGIT SETC '&PAR3'(&COUNT,1) YA01024 21446302 DC X'&DIGIT' DIAL DIGIT YA01025 21446702 AIF ('&DIGIT' GT '9' OR '&DIGIT' LT '0').ERR9 @ZA04661 21446900 AIF (&KPAR3 LE &COUNT).IDCOUNT 000L 21447219 &COUNT SETA &COUNT+1 000L 21447819 AGO .DDIGIT 000L 21448419 .IDCOUNT ANOP 000L 21449019 AIF (T'&PAR6 NE 'N').ERR9 000L 21449619 AIF (&PAR6*2 NE K'&PAR7).ERR7 000L 21450219 AIF ('&PAR6' GT '16').ERR8 000L 21450819 DC HL1'&PAR6' IDCOUNT 000L 21451419 DC XL&PAR6'&PAR7' IDSENT 000L 21452019 AGO .AUTHSEQ 000L 21452619 .IDCNT ANOP 000L 21453219 AIF (T'&PAR4 NE 'N').ERR9 000L 21453819 AIF (&PAR4*2 NE K'&PAR5).ERR7 000L 21454419 AIF ('&PAR1' EQ 'MD' AND '&PAR4' GT '16').ERR8 000L 21455019 AIF ('&PAR4' GT '17').ERR8 000L 21455619 DC HL1'&PAR4' IDCOUNT 000L 21456219 DC XL&PAR4'&PAR5' IDSENT 000L 21456819 .AUTHSEQ ANOP 000L 21457419 AIF (T'&SYSLIST(&EN+7) NE 'O').NOTO 000L 21458019 AIF (T'&SYSLIST(&EN+7,2) NE 'O' OR T'&SYSLIST(&EN+7,3) NE C21458619 'O').ERR10 000L 21459219 AGO .END 000L 21459819 .NOTO ANOP 000L 21460419 AIF ('&SYSLIST(&EN+7)'(1,1) NE '(').ERR11 000L 21461019 AIF ('&SYSLIST(&EN+7)'(K'&SYSLIST(&EN+7),1) NE ')').ERR11 21461619 &KXX SETA K'&SYSLIST(&EN+7,1)/2 NO. OF ID CHARACTERS 000L 21462219 DC X'&SYSLIST(&EN+7,1)' AUTHORIZED SEQUENCE 000L 21462819 &NZERO SETA &RDINLNG-&KXX NUMBER OF ZEROS 000L 21463419 AIF ('&NZERO' LE '0').NOZ 000L 21464019 DC XL&NZERO'0' ZEROS 000L 21464619 .NOZ ANOP 000L 21465219 &NSUB SETA N'&SYSLIST(&EN+7) 000L 21465819 AIF ('&NSUB' EQ '1').LOAD1 000L 21466419 AIF ('&NSUB' NE '2').LOAD3 000L 21467019 AIF ('&PAR1' EQ 'AD').CALL 000L 21467619 AIF ('&PAR3' NE '4').CONTL 000L 21468219 .FOUR ANOP 000L 21468819 DC XL4'0' USER DATA AREA 000L 21469419 .CONTL ANOP 000L 21470019 AIF (T'&SYSLIST(&EN+7,2) NE 'N').ERR9 000L 21470619 DC YL1(&SYSLIST(&EN+7,2)) CONTROL BYTE 000L 21471219 AGO .TEST 000L 21471819 .CALL ANOP 000L 21472419 AIF ('&PAR5' EQ '4').FOUR 000L 21473019 AGO .CONTL 000L 21473619 .LOAD1 ANOP 000L 21474219 AIF ('&PAR1' EQ 'AD').CALLST 000L 21474819 AIF ('&PAR3' NE '4').NOT4 000L 21475419 .USER ANOP 000L 21476019 DC XL4'0' USER DATA AREA 000L 21476619 .NOT4 ANOP 000L 21477219 DC XL1'00' CONTROL BYTE VALUE OF 0 000L 21477819 AGO .TEST 000L 21478419 .CALLST ANOP 000L 21479019 AIF ('&PAR5' NE '4').NOT4 000L 21479619 AGO .USER 000L 21480219 .LOAD3 ANOP 000L 21480819 AIF (T'&SYSLIST(&EN+7,2) EQ 'O').LOAD4 000L 21481419 DC AL4(&SYSLIST(&EN+7,3)) USER DATA AREA 000L 21482019 AIF (T'&SYSLIST(&EN+7,2) NE 'N').ERR9 000L 21482619 DC YL1(&SYSLIST(&EN+7,2)) CONTROL BYTE 000L 21483219 AGO .TEST 000L 21483819 .LOAD4 ANOP 000L 21484419 DC AL4(&SYSLIST(&EN+7,3)) USER DATA AREA 000L 21485019 DC XL1'00' CONTROL BYTE 000L 21485619 .TEST ANOP 000L 21486219 &EN SETA &EN+1 000L 21486819 &OPS SETA N'&SYSLIST NO. OF OPERANDS 000L 21487419 AIF (&EN+7 LE &OPS).AUTHSEQ 000L 21488019 AGO .END 000L 21488619 .* 21500013 .DIAL AIF ('&TYPE' NE 'DIALST').OPEN 22000013 &SUM SETA N'&PAR3 22500013 &NAME DC HL1'&KPAR2' NO. OF DIAL DIGITS 000A 23000013 AIF ('&PAR1' EQ '0').ANSDIAL 23500013 AIF (&PAR1 EQ K'&PAR2).P1OKA 000A 24000013 MNOTE 8,'THERE ARE NOT &PAR1 DIGITS IN &PAR2' 000A 24500013 .P1OKA ANOP 000A 25000013 .LST ANOP 25500013 &DIGIT SETC '&PAR2'(&COUNT,1) YA01025 26200002 DC X'&DIGIT' DIAL DIGIT YA01025 26600002 AIF (&KPAR2 LE &COUNT).LOOP1 000A 27000013 AIF ('&PAR2'(&COUNT,1) EQ ')').ER1 A46821 27500002 &COUNT SETA &COUNT+1 28000013 AGO .LST 28500013 .LOOP1 AIF (&SUM NE 0).CONT 28600018 .END1 ANOP 28700018 DC X'FE' 28800018 AGO .END 28900018 .CONT ANOP 29000018 DC X'&PAR3(&CTR)' TERMINAL LIST ENTRY A46821 29700002 AIF ('&CTR' EQ '&SUM').LAST2 30500013 DC AL1(&ID) PROCEDURE FLAGS 31000013 &ID SETA &ID+1 31500013 &CTR SETA &CTR+1 32000013 AGO .LOOP1 32500013 &NAME DS 0H 33000013 .ANSDIAL ANOP 33500013 &SUM SETA N'&PAR2 34000013 .LOOP2 AIF (&SUM EQ 0).END1 34500018 DC X'&PAR2(&CTR)' TERMINAL LIST ENTRY A46821 35200002 AIF ('&CTR' EQ '&SUM').LAST2 36000013 DC AL1(&ID) PROCEDURE FLAGS. 36500013 &ID SETA &ID+1 37000013 &CTR SETA &CTR+1 37500013 AGO .LOOP2 38000013 .* 38500013 .OPEN AIF ('&TYPE' NE 'OPENLST' AND '&TYPE' NE 'WRAPLST').SSA 000A 39000013 &NAME DS 0X A28630 39500019 &SUM SETA N'&PAR1 NUMBER OF ENTRIES 40000013 &K SETA K'&PAR1(1) 40500013 &EOL SETA &EOL+1+&K/2 41000013 .LOOP ANOP 41500013 DC X'&PAR1(&CTR)' TERMINAL LIST ENTRY A46821 42200002 AIF ('&CTR' EQ '&SUM').LAST 43000013 DC AL1(&ID) PROCEDURE FLAGS 43500013 &ID SETA &ID+1 44000013 &CTR SETA &CTR+1 44500013 &EOL SETA &EOL+1+&K/2 45000013 AGO .LOOP 45500013 .* 46000013 .LAST AIF ('&TYPE' EQ 'WRAPLST').WL 46500013 &ID SETA &ID+128 47000013 DC AL1(&ID) PROCEDURE FLAGS 47500013 AGO .END 000A 48000013 .* 000A 48500013 AGO .END 51500013 .* 52000013 .LAST2 ANOP 52500013 &ID SETA &ID+128 53000013 DC AL1(&ID) PROCEDURE FLAGS 53500013 AGO .END 54000013 .WL ANOP 54500013 .* 55000013 &ID SETA &ID+32 55500013 DC AL1(&ID) PROCEDURE FLAGS 56000013 DC HL2'-&EOL' 56500013 AGO .END 57000013 .* 000A 57500013 .* 000A 58000013 .SSA AIF ('&TYPE' NE 'SSAWLST' AND '&TYPE' NE 'SSALST' AND C58300014 '&TYPE' NE 'AUTOWLST' AND '&TYPE' NE 'AUTOLST').ERR 000B 58600014 &W SETB ('&TYPE'(4,1) EQ 'W' OR '&TYPE' EQ 'AUTOWLST') 000B 58900014 &NPC SETA K'&SYSLIST(2,1)/2 NUMBER OF POLLING CHAR/ENTR000A 59500013 &NNN SETA &NPC+1 WIDTH OF ENTRY 000A 60000013 &NSUB SETA N'&SYSLIST-1 000A 60500013 &ENT SETA 0 000A 61000013 &EN SETA 1 000A 61500013 .ACMEN ANOP 000A 62000013 &ENT SETA &ENT+N'&SYSLIST(&EN+1) 000A 62500013 &EN SETA &EN+1 000A 63000013 AIF (&EN LE &NSUB).ACMEN 000A 63500013 .* 000A 64000013 DC 2YL1(&ENT) TOTAL AND ACTIVE ENTRY COUN000A 64500013 DC YL1(X'20'*&NNN+X'10'*&W) PACKED WIDTH AND WRAP BIT 000A 65000013 &NAME DS 0X 000A 65500013 &INDX SETA 1 000A 66000013 &EN SETA 1 000A 66500013 .* 000A 67000013 .NXTENT ANOP 000A 67500013 &SL SETA 1 000A 68000013 .* 000A 68500013 .ENTRY ANOP 000A 69000013 &KX SETA K'&SYSLIST(1+&EN,&SL) 000A 70000013 DC XL&NPC'&SYSLIST(1+&EN,&SL)' A46821 70500002 AIF (&KX EQ &NPC*2).TSTENT 000A 71000013 MNOTE 8,'LENGTH OF POLLING CHARACTERS IS IMPROPER' 000A 71500013 MNOTE 4,'*** IHB109 LENGTH OF POLLING CHARACTERS PER ENTRY IS ?71600018 IMPROPER' 71700018 .TSTENT ANOP 000A 72000013 &K SETA 1 000A 72500013 .CHK AIF ('&SYSLIST(1+&EN,&SL)'(&K,2) EQ 'FE').CHER A46821 73000002 &K SETA &K+2 000A 73500013 AIF (&K LT &KX).CHK 000A 74000013 DC YL1(&INDX) 000A 74500013 AIF (&INDX NE 254).STPSL 000A 75000013 AGO .CHER 000H 75700018 .STPSL ANOP 000A 76500013 &SL SETA &SL+1 000A 77000013 &INDX SETA &INDX+1 000A 77500013 AIF (&SL LE N'&SYSLIST(1+&EN)).ENTRY 000A 78000013 .* 000A 78500013 &EN SETA &EN+1 000A 79000013 AIF (&EN LE &NSUB).NXTENT 000A 79500013 DC X'FE' END OF LIST CHARACTER 000A 80000013 DC YL2(&ENT*&NNN+4) OFFSET 000A 80500013 MEXIT 000A 81000013 .* 000A 81500013 .ERR MNOTE 12,'*** IHB002 INVALID TYPE OPERAND SPECIFIED-&TYPE' 00A 82000020 MEXIT 000A 82500013 .* 000A 83000013 .ER1 MNOTE 12,'*** IHB002 INVALID THIRD OPERAND SPECIFIED-&PAR2' 83500013 MEXIT 84000013 .ER2 MNOTE 12,'*** IHB110 DIAL CHARACTERS INVALID IN WTLIST' 000H 84100018 MEXIT 84200018 .ER3 MNOTE 12,'*** IHB111 LENGTH OR ADDRESS OF ''TONE'' OMITTED' 84300018 MEXIT 84400018 .* 84500013 .CHER MNOTE 12,'*** IHB108 POLLING CHARACTERS ARE IMPROPER' 000H 85000018 MEXIT 000A 85500013 .ERR4 MNOTE 12,'*** IHB002 INVALID OPERAND SPECIFIED-&PAR1' 000L 85520019 MEXIT 000L 85540019 .ERR5 MNOTE 12,'*** IHB110 INVALID DIAL CHARACTER' 000L 85560019 MEXIT 000L 85580019 .ERR6 MNOTE 12,'*** IHB107 DIALCOUNT AND DIALCHARS DO NOT AGREE' 00L 85600020 MEXIT 000L 85620019 .ERR7 MNOTE 12,'*** IHB113 IDCOUNT AND IDSENT DO NOT AGREE' 000L 85640019 MEXIT 000L 85660019 .ERR8 MNOTE 12,'*** IHB114 IDCOUNT IS TOO LARGE' 000L 85680019 MEXIT 000L 85700019 .ERR9 MNOTE 12,'*** IHB115 INVALID TYPE ATTRIBUTE' 000L 85720019 MEXIT 000L 85740019 .ERR10 MNOTE 12,'*** IHB116 AUTHORIZED SEQUENCE IS MISSING' 000L 85760019 MEXIT 000L 85780019 .ERR11 MNOTE 12,'*** IHB117 PARENTHESIS IS MISSING' 000L 85800019 MEXIT 000L 85820019 .END MEND 86000013