MACRO 01000020 &NAME ORIGIN &LEN,&FORM= S22026 02000010 GBLA &IEDQZE(64) 03000020 GBLB &IEDQZA(64) 04000020 LCLA &A S22026 04500010 LCLB &NOGO 05000020 LCLC &C S22026 06000010 .*D420000-434000 S22026 06400010 .*C020000,060000,453000,540000 S22026 06800010 .*A045000,064000-076000,420000-448000 S22026 07200010 .* VERSION DATED OCTOBER 27,1971 S22026 07600010 SPACE 08000020 &IEDQZE(40) SETA 0 09000020 AIF (NOT &IEDQZA(9)).TSOCHK TSO 11000020 MNOTE 12,'*** IHB312 MUST FOLLOW STARTMH MACRO WITH TSOMH=NO*12000020 ' 13000020 &NOGO SETB 1 14000020 .TSOCHK AIF (&IEDQZA(3)).CHECK 15000020 MNOTE 12,'*** IHB070 SEQUENCE ERROR-MUST FOLLOW INHDR MACRO' 17000020 &NOGO SETB 1 19000020 .CHECK AIF ('&LEN' EQ '').ORG 22000020 AIF ('&LEN' EQ 'X''FF''').ORG 23000020 AIF (K'&LEN EQ 1 AND '&LEN' GT '0' AND '&LEN' LE '8').ORG 24000020 AIF (K'&LEN EQ 1).ERR 25000020 AIF ('&LEN'(1,1) NE 'X' OR '&LEN'(K'&LEN,1) NE '''').ERR 26000020 AIF ('&LEN'(2,1) EQ 'L').XL 27000020 AIF ('&LEN'(2,1) NE '''' OR K'&LEN LT 4 OR K'&LEN GT 5).ERR 28000020 AIF ('&LEN'(K'&LEN-1,1) LE '0' OR '&LEN'(K'&LEN-1,1) GT '8')*29000020 .ERR 30000020 AIF (K'&LEN EQ 5 AND '&LEN'(3,1) NE '0').ERR 31000020 AGO .ORG 32000020 .XL AIF (K'&LEN LT 6 OR K'&LEN GT 7).ERR 33000020 AIF ('&LEN'(3,2) NE '1''').ERR 34000020 AIF ('&LEN'(K'&LEN-1,1) LE '0' OR '&LEN'(K'&LEN-1,1) GT '8')*35000020 .ERR 36000020 AIF (K'&LEN EQ 7 AND '&LEN'(5,1) NE '0').ERR 37000020 AGO .ORG 40000020 .ERR MNOTE 12,'*** IHB300 LENGTH OPERAND INVALID AS SPECIFIED' 41000020 &NOGO SETB 1 S22026 42000010 .ORG ANOP S22026 42070010 AIF (NOT &IEDQZA(13)).NOCONC GO SET C TO IEDQAM S22026 42140010 &C SETC 'IEDQBM' SET FOR IEDQVCON FOR BM S22026 42210010 AIF ('&FORM' EQ '').CONTINU S22026 42280010 AIF ('&FORM' EQ 'NAME').SETNAM S22026 42350010 AIF ('&FORM' EQ 'ID').SETID S22026 42420010 MNOTE 12,'*** IHB002 INVALID FORM OPERAND SPECIFIED- &FORM' 42490010 .* S22026 42560010 AGO .MEND S22026 42630010 .SETNAM ANOP S22026 42700010 &A SETA 1 SET FORM=NAME BIT S22026 42770010 AGO .CONTINU S22026 42840010 .SETID ANOP S22026 42910010 &A SETA 2 SET FORM=ID BIT S22026 42980010 AGO .CONTINU S22026 43050010 .NOCONC ANOP S22026 43120010 &C SETC 'IEDQAM' SET FOR IEDQVCON FOR AM S22026 43190010 AIF ('&FORM' EQ '').CONTINU S22026 43260010 MNOTE 8,'*** IHB233 INCONSISTENT WITH FEATURE OPERAND OF THE IX43330010 NTRO MACRO' . S22026 43400010 &NOGO SETB 1 . S22026 43470010 AIF ('&FORM' EQ 'NAME' OR '&FORM' EQ 'ID').CONTINU S22026 43540010 MNOTE 4,'*** IHB002 INVALID FORM OPERAND SPECIFIED- &FORM' 43610010 .* S22026 43680010 .CONTINU AIF (&NOGO).MEND S22026 43750010 IEDQVCON 22,&C S22026 43820010 CNOP 2,4 . S22025 44100010 &NAME BAL 1,*+10 . S22025 44700010 DC AL1(&IEDQZE(22)+&A),AL1(6) . S22026 45300010 DC AL1(&IEDQZE(30)),AL1(4),AL1(0) 46000020 AIF ('&LEN' EQ '').DEFAULT 47000020 AIF ('&LEN'(1,1) EQ 'X').HEX 48000020 DC AL1(&LEN) . LENGTH OF ORIGIN FIELD 49000020 AGO .OUT 50000020 .DEFAULT DC XL1'FF' . VARIABLE LENGTH ORIGIN FLD 51000020 AGO .OUT 52000020 .HEX DC &LEN . S22026 53000010 .OUT L 15,IEDUI . TO ORIGIN ROUTINE S22026 54000010 BALR 14,15 55000020 .MEND SPACE 2 67000020 MEND 68000020