; ; ALTERED: ; EDWIN H. MARISON 11 MAY 76 15:39 ;STRUCTURED PROGRAMMING MACROS ; ; ** SUPMAC ** ; ;;;;; V0043 ; .MACRO SMACIT .MCALL SMCALL $SUPMC=43 $DIDDO=0 $EF$=0 $L$=0 $T=0 $L=0 $R=-1 IIII=-1 SMCALL ; DEFINE SUPMAC .ENDM ; .MACRO SMCALL .MCALL ..PUSH,..POP,..GET,..TAG,..BRAN,.EMIT,.EMITL,.EMITR .MCALL .IFOPR,.IS,.GENBR,.OPADD,.OPSUB .MCALL RNE,REQ,RLT,RGE,RGT,RLE,RPL,RMI,RHI,RLOS,RHIS,RLO,RCS,RCC .MCALL IF,.OR,.LEAVE,.GOTO,$SET$K$,OR,AND,DO,THEN,ELSE .MCALL WHILE,CASE,FOR,TO,DOWNTO,FOR.ABS,REPEAT,UNTIL,THRU .MCALL END,BEGIN,$$END,LEAVE,JUMPTO,GOTO,PUSH,POP,$CALL,RETURN .MCALL LET,.SIMPLE,.ARITH .MCALL ORB,ANDB,IFB,UNTILB,WHILEB,ON.ERROR,ON.NOERROR,FI .MACRO SMCALL .ENDM .ENDM SMCALL ; ; .MACRO ..PUSH AA1,AA2 IIII=IIII+1 .IRP TT,\IIII TYPS'TT = AA1 LBLS'TT = AA2 .ENDM .ENDM .MACRO ..POP AA1,AA2 .IF LT IIII .LIST .ERROR ;STACK UNDERFLOW; $Y$=IIII .NLIST .MEXIT .IFF .IRP TT,\IIII AA1 = TYPS'TT AA2 = LBLS'TT .ENDM .ENDC IIII=IIII-1 .ENDM ; .MACRO ..GET PPP,AA1,AA2 .IRP TT,\PPP AA1=TYPS'TT AA2=LBLS'TT .ENDM .ENDM ..GET ; .MACRO ..TAG TG,WH .EMITL .ENDM ; .MACRO ..BRAN BRA,TG,WH .EMIT .ENDM ; .MACRO .EMIT VAL $E$=1 .IIF DF LST$$ .LIST MEB VAL .IIF DF LST$$ .NLIST MEB .ENDM ; .MACRO .EMITL VAL .IIF DF LST$$ .LIST VAL .IIF DF LST$$ .NLIST .ENDM ; .MACRO .EMITR S1,S2 .EMIT .IIF GT S2-1 .EMITR ,\S2-1 .ENDM .MACRO .IFOPR OPRA,RELA,TTG .EMIT OPRA .IF GT $R .IIF EQ $L$ .EMIT .IIF EQ $L$-1 .EMIT .IIF EQ $L$-2 .EMIT .IIF EQ $L$-3 .EMIT .IFF .IIF EQ $L$ R'RELA L'TTG .IIF EQ $L$-1 R'RELA B'TTG .IIF EQ $L$-2 R'RELA E'TTG .IIF EQ $L$-3 R'RELA TTG .ENDC ..PUSH 0,$T $I$=1 .ENDM .MACRO .IS Q1,Q2,QB,QT .IIF DIF ,,.ERROR ; IF SYNTAX ERROR Q1 IS; .IIF IDN ,,.IFOPR <<.=.>>,Q2,QT .ENDM ; .MACRO .GENBR A1,B1,C1,D1,E1 $I$=0 .IIF IDN .IFOPR <>,NE,E1 .IIF IDN .IFOPR <>,EQ,E1 .IIF IDN <#0> .IFOPR <>,B1,E1 .IIF IDN <#0> .IFOPR <>,B1,E1 .IIF IDN .IS A1,C1,D1,E1 .IIF EQ $I$ .IFOPR <>,B1,E1 .ENDM .MACRO .OPADD V1,V2,V3 .IIF IDN <#1> .EMIT .IIF NE $E$ .MEXIT .IIF IDN .EMIT .IIF NE $E$ .MEXIT .EMIT .ENDM ; ; .MACRO .OPSUB V1,V2,V3 .IIF IDN <#1> .EMIT .IIF NE $E$ .MEXIT .IIF IDN .EMIT .IIF NE $E$ .MEXIT .EMIT .ENDM .MACRO RNE LOC .EMIT .ENDM .MACRO REQ LOC .EMIT .ENDM .MACRO RLT LOC .EMIT .ENDM .MACRO RGE LOC .EMIT .ENDM .MACRO RGT LOC .EMIT .ENDM .MACRO RLE LOC .EMIT .ENDM .MACRO RPL LOC .EMIT .ENDM .MACRO RMI LOC .EMIT .ENDM .MACRO RHI LOC .EMIT .ENDM .MACRO RLOS LOC .EMIT .ENDM .MACRO RHIS LOC .EMIT .ENDM .MACRO RLO LOC .EMIT .ENDM .MACRO RCS LOC .EMIT .ENDM .MACRO RCC LOC .EMIT .ENDM .MACRO IF A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,BB .IIF B .MEXIT $O$=0 $I$=0 .IF IDN .IIF NB .LEAVE A,BE,C,BB,EE .ENDC .IIF NE $I$ .MEXIT .IF IDN .IIF NB .GOTO A,BE,C,BB,EE .ENDC .IIF NE $I$ .MEXIT .IIF IDN .OR A,BE,C,BB .IIF IDN .OR A,BE,C,BB .IF EQ $O$ .IIF EQ $L$-1 .GENBR A,BE,C,BB,\$T2 .IIF NE $L$-1 .GENBR A,BE,C,BB,\$T .ENDC $T=$T+1 .IIF B ,.MEXIT ; D EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z .IIF LE $DIDDO .MEXIT ..POP $$T,$$T ..TAG \$$T,L $DIDDO=$DIDDO-1 .ENDM .MACRO .OR OA,OB,OC,OD $R=-$R $O$=1 $SV$=$L$ $L$=0 .IIF NE $L$-1 .GENBR OA,OB,OC,OD,\$T .IIF EQ $L$-1 .GENBR OA,OB,OC,OD,\$T2 $L$=$SV$ $R=-$R .ENDM ; ; ; .MACRO .LEAVE LA,LB,LC,LD,LE $L$=2 .IIF IDN $SET$K$ IIII .IIF DIF $K$=LE $R=-$R .GENBR LA,LB,LC,LD,\$K$ ..POP $$TT,$$TT $R=-$R $L$=0 .ENDM ; ; .MACRO .GOTO GA,GB,GC,GD,GEE $R=-$R $L$=3 .GENBR GA,GB,GC,GD,GEE ..POP $$TT,$$TT $R=-$R $L$=0 .ENDM ; ; .MACRO $SET$K$ BBB $K$L=-1 $K$=-1 .IF LT BBB .ERROR ; NO LOOP BLOCK; .MEXIT .ENDC ..GET BBB,$K$T,$K$L $XXX$ = 0 .IIF EQ $K$T-1 $XXX$ = 1 ;WHILE .IIF EQ $K$T-2 $XXX$ = 1 ;FOR .IIF EQ $K$T-5 $XXX$ = 1 ;REPEAT .IIF EQ $K$T-6 $XXX$ = 1 ;THRU .IIF EQ $XXX$ $SET$K$ BBB-1 $K$=$K$L .ENDM $SET$K$ .MACRO OR EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,BB .IIF B .MEXIT .IIF IDN ..POP $T1,$T .IIF IDN ..POP $T1,$T IF'BB EE,F,G,H .IF DIF .IF DIF ..POP $$TT,$$TT ..POP $$T,$$T $$S=0 .IIF IDN ,,$$S=1 .IIF IDN ,,$$S=1 .IIF IDN ,,$$S=2 .IIF IDN ,,$$S=2 .IF NE $$S .IF EQ,$$S-1 ..PUSH 0,$$TT ..TAG \$$T,L .ERROR ; AND (ANDB) SEEN AFTER AN OR (ORB); .MEXIT .ENDC ..TAG \$$T,L THEN H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z .IFF ..TAG \$$T,L .IIF B ..PUSH 0,$$TT .IIF B .MEXIT H I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z .ENDC .IF LE $DIDDO ..PUSH 0,$$TT .IFF ..TAG \$$TT,L $DIDDO=0 .ENDC .MEXIT .ENDC .ENDC H I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z .ENDM ; ; .MACRO AND EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,BB .IIF B .MEXIT $$S=0 .IIF IDN ,,$$S=1 .IIF IDN ,,$$S=1 .IF GT $$S ..POP $$T,$$T IF'BB EE,F,G,H ..TAG \$$T,L H I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z .IFF ..POP $T,$T IF'BB EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z $$S=0 .IIF IDN ,,$$S=1 .IIF IDN ,,$$S=1 .IF NE $$S ..TAG \$T,L $T=$T+1 .ENDC .ENDC .ENDM ; ; .MACRO DO EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z .IIF B ,.MEXIT LET EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z $DIDDO=$DIDDO+1 .ENDM ; ; .MACRO THEN EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z .IIF B .MEXIT EE F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z $DIDDO=$DIDDO+1 .ENDM .MACRO ELSE ..POP $T1,$T2 .IF NE $T1 .ERROR ; $T1 ELSE SEEN IN OTHER THAN IF BLOCK; ..PUSH $T1,$T2 .MEXIT .ENDC ..BRAN BR,\$T,L ..TAG \$T2,L ..PUSH $T1,$T $T=$T+1 .ENDM .MACRO WHILE A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,BB $DIDDO=-1 ..TAG \$L,B IF A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,BB .IF EQ $DIDDO ..BRAN BR,\$L,B ..POP $$T,$$T ..TAG \$$T,L .IFF ..PUSH 1,$L .ENDC $DIDDO=0 $L=$L+1 .ENDM .MACRO CASE A,BBB,C .IIF DIF .EMIT .EMIT .IRP TT,\$T .EMIT .ENDM ..PUSH 4,$T $T=$T+1 .ENDM .MACRO FOR A,BBB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,MG .IIF DIF ,,FOR A,BBB,C,D,EE,BY,#1,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,MG .IIF DIF ,,.MEXIT ; .SIMPLE A,BBB,C ..TAG \$L,B .IF B ..PUSH 2,$L .IRP TT,\<$L> .MACRO $.$'TT D A,EE,G,TT,MG .ENDM .ENDM .IFF $SDO=$DIDDO H I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z D A,EE,G,\$L .IIF GT $DIDDO-$SDO $DIDDO=$DIDDO-1 .ENDC $L=$L+1 .ENDM .MACRO TO A1,A2,A3,A4,MG $E$=0 .OPADD A1,A3 .EMIT .IF IDN .EMIT .IFF .EMIT .ENDC .EMITL .ENDM .MACRO DOWNTO A1,A2,A3,A4,MG $E$=0 .OPSUB A1,A3 .EMIT .IF IDN .EMIT .IFF .EMIT .ENDC .EMITL .ENDM .MACRO FOR.ABS A,BBB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z FOR A,BBB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,ABS .ENDM FOR.ABS .MACRO REPEAT A,BB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z ..TAG \$L,B ..PUSH 5,$L $L=$L+1 .IIF B .MEXIT .IF IDN UNTILB BB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z .MEXIT .ENDC .IF IDN UNTIL BB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z .MEXIT .ENDC LET A,BB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z .ENDM .MACRO UNTIL A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,BB $L$=1 ..POP $T1,$T2 .IF NE $T1-5 .ERROR ; UNTIL SEEN IN OTHER THAN REPEAT BLOCK; .MEXIT .ENDC IF A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,BB ..POP $$T,$$T ..TAG \$T2,E $L$=0 .ENDM .MACRO THRU A,BB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V .NTYPE A3,A .IF NE A3&70 .ERROR ; A MUST BE A REGISTER; .MEXIT .ENDC .IIF NB ,LET A,BB,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V ..TAG \$L,B ..PUSH 6,$L .IRP TT,\$L .MACRO $.$'TT .EMIT .ENDM .ENDM $L=$L+1 .ENDM .MACRO END COMM ..POP $T1,$T2 .IF EQ $T1 .IIF EQ $EF$-1 .PRINT ; MISSING END - IF; ..TAG \$T2,L ;-0- IF .MEXIT .ENDC ; .IF EQ $T1-3 .IIF EQ $EF$-1 .PRINT ; MISSING END - BEGIN; ..TAG \$T2,E ;-3- BEGIN/END .MEXIT .ENDC ; .IF EQ $T1-5 .IIF EQ $EF$-1 .PRINT ; MISSING END - REPEAT; ..BRAN BR,\$T2,B ;-5- REPEAT ..TAG \$T2,E .MEXIT .ENDC ; .IF EQ $T1-1 ;-1- WHILE .IIF EQ $EF$-1 .PRINT ; MISSING END - WHILE; ..BRAN BR,\$T2,B ..POP $$T,$$T ..TAG \$$T,L ..TAG \$T2,E .MEXIT .ENDC ; .IF EQ $T1-2 ;-2- FOR .IIF EQ $EF$-1 .PRINT ; MISSING END - FOR; .IRP TT,<\$T2> $.$'TT .ENDM .MEXIT .ENDC ; .IF EQ $T1-4 ;-4- CASE .IIF EQ $EF$-1 .PRINT ; MISSING END - CASE; ..TAG \$T2,L .EMIT .EMIT .EMIT .MEXIT .ENDC ; .IF EQ $T1-6 ; -6- THRU .IIF EQ $EF$-1 .PRINT ; MISSING END - THRU; .IRP TT,\$T2 $.$'TT ..TAG \$T2,E .ENDM .MEXIT .ENDC ; .ERROR ; $T STRANGE SUPER-MAC STACK VALUE; .ENDM ; .MACRO BEGIN BNAME .IIF NB BNAME=$L ..PUSH 3,$L ..TAG \$L,B $L=$L+1 .ENDM .MACRO $$END .IF GE IIII $EF$=1 END $EF$=0 $$END .ENDC .ENDM .MACRO LEAVE AAAA,A,BB,C,D,EE,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U .IIF B .MEXIT .IIF IDN ,,$SET$K$ IIII .IIF DIF ,,$K$=AAAA .IRP QQ,\$K$ .EMIT
.ENDM .ENDM ; ; .MACRO JUMPTO AAAA,A,B,C,D,E,F,H,G,I,J,K,L,M,N,O,P,Q,R,S,T,U .EMIT .ENDM ; .MACRO GOTO BBBB,A,BB,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U .IIF B .MEXIT .EMIT
.ENDM ; .MACRO PUSH P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8,Q9,Q10,Q11,Q22 .IF NB P0 .EMIT PUSH P1,P2,P3,P4,P5,P6,P7,P8,P9 .ENDC .ENDM ; .MACRO POP P0,P1,P2,P3,P4,P5,P6,P7,P8,P9,Q0,Q1,Q2,Q3,Q4,Q5,Q6,Q7,Q8,Q9,Q22 .IF NB P0 .EMIT POP P1,P2,P3,P4,P5,P6,P7,P8,P9 .ENDC .ENDM .MACRO $CALL NAME,ARGS,WHERE,TYPE,A,BB,C,D,E,F,G,H,I,J,K,LL,M,N,O,P,Q,RR,S ; NOTE: **** WHERE AND TYPE NOT IMPLEMENTED **** .IIF B .EMIT .IIF B .MEXIT .IF NB WHERE .ERROR ; WHERE .... ARG'S MUST BE WITHIN <>; .MEXIT .ENDC .$T=0 .MACRO $GENM BBT,BBP .IIF GT BBP-5 .ERROR ; 6 ARG MAX (R0-R5); .IIF GT BBP-5 .MEXIT .IIF DIF .EMIT .ENDM .IRP T, .IIF NB $GENM T,\.$T .$T=.$T+1 .ENDM .EMIT .ENDM .MACRO RETURN STA,REG,A,BE,C,D,E,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE .IF NB STA .IF DIF , .IF DIF , .IF DIF , .IF IDN ,
.EMIT .EMIT .IFF .EMIT .EMIT .ENDC .IFF .EMIT .ENDC .IFF .EMIT .ENDC .ENDC .ENDC .IIF B .EMIT .IIF NB .EMIT .ENDM .MACRO LET A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V .SIMPLE A,BE,C,D,EE .IIF B .MEXIT .IIF B .MEXIT .IIF B .MEXIT .IIF IDN LET EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V .IIF IDN .MEXIT .IIF IDN LET F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V .IIF IDN .MEXIT .IIF IDN LET G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V .IIF IDN .MEXIT .IF LT $Y$ LET A,BE,A,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V .MEXIT .ENDC LET A,BE,A,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V .ENDM .MACRO .SIMPLE X1,X2,X3,X4,X5,X6 .IF DIF <:=> .IF DIF <:W=> .IF DIF <:==> .IF DIF <:B=> .ERROR ; X2 NOT A LEGAL ASSIGNMENT OPERATOR; .MEXIT .ENDC .ENDC .SIMPLE X1,:=,X3,X4,X5,B .MEXIT .ENDC .ENDC .IIF IDN .SIMPLE -(SP),X2,X3,X4,X5,X6 .IIF IDN .MEXIT .IIF IDN .SIMPLE @SP,X2,X3,X4,X5,X6 .IIF IDN .MEXIT $Y$=0 $Z$=0 .IIF IDN $Z$=-1 .IIF IDN $Z$=-1 .IIF IDN $Z$=-2 .IIF IDN $Y$=7 .IIF IDN $Y$=7 .IIF IDN $Y$=7 .IIF IDN <0> $Y$=7 .IIF IDN <#0> $Y$=7 .IIF IDN $Y$=4 .IIF IDN $Y$=4 .IIF IDN $Y$=4 .IF LT $Z$ .IIF EQ $Z$+$Y$-6 .EMIT .IIF EQ $Z$+$Y$-5 .EMIT .IIF EQ $Z$+$Y$-3 .EMIT .IIF EQ $Z$+$Y$-2 .EMIT .MEXIT .ENDC ; .IIF IDN $Y$=-1 .IIF IDN <-> $Y$=-2 .IIF IDN $Y$=5 .IIF IDN $Y$=6 .IIF IDN $Y$=10 .IF DIF .IIF EQ $Y$-7 .EMIT .IF DIF <@SP>, .IIF EQ $Y$-6 .EMIT .ENDC .IIF EQ $Y$-5 .EMIT .IIF EQ $Y$-4 .EMIT .IIF EQ $Y$ .EMIT .ENDC .IF DIF .IIF LT $Y$ .EMIT .ENDC .IIF IDN <+1> $Y$=-5 .IIF IDN <-1> $Y$=-6 .IF LT $Y$ .IIF EQ $Y$+1 .EMIT .IIF EQ $Y$+2 .EMIT .IIF EQ $Y$+3 .EMIT .IIF EQ $Y$+4 .EMIT .IIF EQ $Y$+5 .EMIT .IIF EQ $Y$+6 .EMIT .MEXIT .ENDC ; .IIF B .MEXIT .IIF IDN .MEXIT .IIF IDN .MEXIT $E$=0 .IIF IDN .ARITH X1,@SP,X6,X4 .IIF IDN .ARITH X1,(SP)+,X6,X4 .IIF EQ $E$ .ARITH X1,X5,X6,X4 .ENDM ; .MACRO .ARITH Y1,Y2,Y3,Y4 .IIF IDN <-(SP)> .ARITH @SP,Y2,Y3,Y4 .IIF IDN <-(SP)> .MEXIT .IIF IDN <+> .OPADD Y1,Y2,Y3 .IIF IDN <-> .OPSUB Y1,Y2,Y3 .IIF NE $E$ .MEXIT .IIF IDN .EMIT .IIF IDN .EMIT .IIF NE $E$ .MEXIT .IIF IDN .EMIT .IIF IDN .EMIT .IIF NE $E$ .MEXIT .IIF IDN .EMITR ,Y2 .IIF IDN .EMITR ,Y2 .IIF IDN .EMITR ,Y2 .IIF IDN .EMITR ,Y2 .IIF NE $E$ .MEXIT .IIF IDN <*> .EMIT .IIF IDN .EMIT
.IIF IDN .EMIT .IIF IDN .EMIT .IIF NE $E$ .MEXIT .IIF IDN .EMIT .IIF EQ $E$ .ERROR ; Y4 NOT A LEGAL OPERATOR; .ENDM ; ; ; .MACRO ORB EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z OR EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,B .ENDM ; .MACRO ANDB EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z AND EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,B .ENDM ; .MACRO IFB A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z IF A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,TE,U,V,W,X,Y,Z,B .ENDM ; ; .MACRO UNTILB A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z UNTIL A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,B .ENDM ; .MACRO WHILEB A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z WHILE A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,B .ENDM ; .MACRO ON.NOERROR A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S IF RESULT IS,CC,A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S .ENDM ; .MACRO ON.ERROR A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S IF RESULT IS,CS,A,BE,C,D,EE,F,G,H,I,J,K,LL,M,N,O,P,Q,R,S .ENDM .MACRO FI COMM END .ENDM ; ;