#include <perms.h>

                                                                //      1  %BEGIN;                               !HAL-7502
#line 1 "regression-compile-tmp/hal7502.imp"
int main(int argc, char **argv) {
  _imp_initialise(argc, argv);
                                                                //      2  !    INPUT/OUTPUT STREAMS
                                                                //      3  %OWNINTEGER MAIN=1, PRE=2;            !INPUT
#line 3 "regression-compile-tmp/hal7502.imp"
static int MAIN = 1;
#line 3 "regression-compile-tmp/hal7502.imp"
static int PRE = 2;
                                                                //      4  %OWNINTEGER BIN=1, LIS=2;             !OUTPUT
#line 4 "regression-compile-tmp/hal7502.imp"
static int BIN = 1;
#line 4 "regression-compile-tmp/hal7502.imp"
static int LIS = 2;
                                                                //      5  !    OPERAND TYPES
                                                                //      6  %OWNINTEGER OPMASK=16_F000;           !MACHINE INSTRUCTION OR MACRO
#line 6 "regression-compile-tmp/hal7502.imp"
static int OPMASK = 61440;
                                                                //      7  %OWNINTEGER MACRO=16_A000
#line 7 "regression-compile-tmp/hal7502.imp"
static int MACRO = 40960;
                                                                //      8  %OWNINTEGER FMASK=16_0800;            !FORWARD REF
#line 8 "regression-compile-tmp/hal7502.imp"
static int FMASK = 2048;
                                                                //      9  %OWNINTEGER UMASK=16_0200;            !UNDEF (FORWARD REF)
#line 9 "regression-compile-tmp/hal7502.imp"
static int UMASK = 512;
                                                                //     10  %OWNINTEGER REG=16_0080;              !REGISTER
#line 10 "regression-compile-tmp/hal7502.imp"
static int REG = 128;
                                                                //     11  %OWNINTEGER MEMMASK=16_0040;          !MEM REF
#line 11 "regression-compile-tmp/hal7502.imp"
static int MEMMASK = 64;
                                                                //     12  %OWNINTEGER RELMASK=16_0020;          !RELOCATABLE
#line 12 "regression-compile-tmp/hal7502.imp"
static int RELMASK = 32;
                                                                //     13  %OWNINTEGER XMASK=16_0010;            !INDEXED
#line 13 "regression-compile-tmp/hal7502.imp"
static int XMASK = 16;
                                                                //     14  %OWNINTEGER REGXMASK=16_0090;         !=REG+XMASK
#line 14 "regression-compile-tmp/hal7502.imp"
static int REGXMASK = 144;
                                                                //     15  %OWNINTEGER RELUXMASK=16_0230;        !=RELMASK+UMASK+XMASK
#line 15 "regression-compile-tmp/hal7502.imp"
static int RELUXMASK = 560;
                                                                //     16  !    TEXT POINTERS (BYTE ADDRESSES)
                                                                //     17  %OWNINTEGER CODEPOS;                  !(NOT ACTUALLY BYTE)
#line 17 "regression-compile-tmp/hal7502.imp"
static int CODEPOS;
                                                                //     18  %OWNINTEGER STARTPOS;                 !START OF CURRENT LINE
#line 18 "regression-compile-tmp/hal7502.imp"
static int STARTPOS;
                                                                //     19  %OWNINTEGER GETPOS;                   !INPUT POINTER (NEXT)
#line 19 "regression-compile-tmp/hal7502.imp"
static int GETPOS;
                                                                //     20  %OWNINTEGER PUTPOS
#line 20 "regression-compile-tmp/hal7502.imp"
static int PUTPOS;
                                                                //     21  %OWNINTEGER PSEUDOLIM
#line 21 "regression-compile-tmp/hal7502.imp"
static int PSEUDOLIM;
                                                                //     22  %OWNINTEGER PRINTPOS;                 !START OF PRINT LINE
#line 22 "regression-compile-tmp/hal7502.imp"
static int PRINTPOS;
                                                                //     23  %OWNINTEGER FAULTPOS
#line 23 "regression-compile-tmp/hal7502.imp"
static int FAULTPOS;
                                                                //     24  %OWNINTEGER MACLIM;                   !MACRO DEF LIMIT
#line 24 "regression-compile-tmp/hal7502.imp"
static int MACLIM;
                                                                //     25  !    OTHER POINTERS (WORD ADDRESSES)
                                                                //     26  %OWNINTEGER MP;                       !MACRO-CALL PARAMETERS
#line 26 "regression-compile-tmp/hal7502.imp"
static int MP;
                                                                //     27  %OWNINTEGER QBASE,QSTART,QLIM,TRANSF; !OPERAND QUEUE
#line 27 "regression-compile-tmp/hal7502.imp"
static int QBASE;
#line 27 "regression-compile-tmp/hal7502.imp"
static int QSTART;
#line 27 "regression-compile-tmp/hal7502.imp"
static int QLIM;
#line 27 "regression-compile-tmp/hal7502.imp"
static int TRANSF;
                                                                //     28  %OWNINTEGER DEFMIN;                   !TAG MIN (DOWN - RESET)
#line 28 "regression-compile-tmp/hal7502.imp"
static int DEFMIN;
                                                                //     29  %OWNINTEGER DEFLIM;                   !TAG LIM (FIXED)
#line 29 "regression-compile-tmp/hal7502.imp"
static int DEFLIM;
                                                                //     30  %OWNINTEGER ALMAX;                    !ASSEMBLER LAB MAX (UP - RESET)
#line 30 "regression-compile-tmp/hal7502.imp"
static int ALMAX;
                                                                //     31  %OWNINTEGER LABMIN;                   !USER LAB MIN (DOWN - RESET)
#line 31 "regression-compile-tmp/hal7502.imp"
static int LABMIN;
                                                                //     32  %OWNINTEGER LABLIM;                   !USER LAB LIM (FIXED)
#line 32 "regression-compile-tmp/hal7502.imp"
static int LABLIM;
                                                                //     33  %OWNINTEGER BP;                       !BLOCK POINTER (UP - DOWN)
#line 33 "regression-compile-tmp/hal7502.imp"
static int BP;
                                                                //     34  %OWNINTEGER NP;                       !NEST POINTER (DOWN - UP)
#line 34 "regression-compile-tmp/hal7502.imp"
static int NP;
                                                                //     35  %OWNINTEGER STORELIM;                 !(FIXED)
#line 35 "regression-compile-tmp/hal7502.imp"
static int STORELIM;
                                                                //     36  
                                                                //     37  %INTEGER SYM;                         !CURRENT SYMBOL
#line 37 "regression-compile-tmp/hal7502.imp"
int SYM;
                                                                //     38  %INTEGER TERM;                        !TAG TERMINATOR
#line 38 "regression-compile-tmp/hal7502.imp"
int TERM;
                                                                //     39  %INTEGER FSYM;                        !FAULT FLAG SYMBOL
#line 39 "regression-compile-tmp/hal7502.imp"
int FSYM;
                                                                //     40  %OWNINTEGER CHARS=0;                  !PRINT CHAR COUNT
#line 40 "regression-compile-tmp/hal7502.imp"
static int CHARS = 0;
                                                                //     41  %OWNINTEGER LINES=0;                  !PRINT LINE COUNT
#line 41 "regression-compile-tmp/hal7502.imp"
static int LINES = 0;
                                                                //     42  %OWNINTEGER PASS=-1;                  !CURRENT PASS (-1,0,1)
#line 42 "regression-compile-tmp/hal7502.imp"
static int PASS = (-1);
                                                                //     43  %OWNINTEGER LIST=-1;                  !LISTING CONTROL
#line 43 "regression-compile-tmp/hal7502.imp"
static int LIST = (-1);
                                                                //     44  %INTEGER ASSCOND,SKIP;                !ASSEMBLY CONDITIONS (BIT NEST)
#line 44 "regression-compile-tmp/hal7502.imp"
int ASSCOND;
#line 44 "regression-compile-tmp/hal7502.imp"
int SKIP;
                                                                //     45  %OWNINTEGER SAVE=1;                   !REG SAVE DISPLACEMENT
#line 45 "regression-compile-tmp/hal7502.imp"
static int SAVE = 1;
                                                                //     46  %OWNINTEGER TEMPS=12;                 !TEMPORARY REGISTER SET
#line 46 "regression-compile-tmp/hal7502.imp"
static int TEMPS = 12;
                                                                //     47  %OWNINTEGER CONTROL=16_40;            !OBJECT CODE CONTROL FIELD
#line 47 "regression-compile-tmp/hal7502.imp"
static int CONTROL = 64;
                                                                //     48  %OWNINTEGER CHECK=0;  !BINARY CHECKSUM
#line 48 "regression-compile-tmp/hal7502.imp"
static int CHECK = 0;
                                                                //     49  %INTEGER LOCTYPE,LOC;                 !LOCATION COUNTER
#line 49 "regression-compile-tmp/hal7502.imp"
int LOCTYPE;
#line 49 "regression-compile-tmp/hal7502.imp"
int LOC;
                                                                //     50  %INTEGER ACC,ATYPE,AVAL;              !MAIN TEMP REGISTER
#line 50 "regression-compile-tmp/hal7502.imp"
int ACC;
#line 50 "regression-compile-tmp/hal7502.imp"
int ATYPE;
#line 50 "regression-compile-tmp/hal7502.imp"
int AVAL;
                                                                //     51  %INTEGER CREG;                        !CONDITION CODE
#line 51 "regression-compile-tmp/hal7502.imp"
int CREG;
                                                                //     52  %INTEGER COND;                        !CONDITION CODE MASK
#line 52 "regression-compile-tmp/hal7502.imp"
int COND;
                                                                //     53  %INTEGER DREG,DUSE;                   !DESTINATION REGISTER
#line 53 "regression-compile-tmp/hal7502.imp"
int DREG;
#line 53 "regression-compile-tmp/hal7502.imp"
int DUSE;
                                                                //     54  %INTEGER TYPE,VAL;                    !CURRENT TYPE,VALUE
#line 54 "regression-compile-tmp/hal7502.imp"
int TYPE;
#line 54 "regression-compile-tmp/hal7502.imp"
int VAL;
                                                                //     55  %INTEGER TAG1,TAG2;                   !TAG (CHARS 1:3, 4:6)
#line 55 "regression-compile-tmp/hal7502.imp"
int TAG1;
#line 55 "regression-compile-tmp/hal7502.imp"
int TAG2;
                                                                //     56  %INTEGER MODE;                        !ASSEMBLY MODE
#line 56 "regression-compile-tmp/hal7502.imp"
int MODE;
                                                                //     57  %INTEGER PEND;                        !TAG ALREADY RECOGNISED
#line 57 "regression-compile-tmp/hal7502.imp"
int PEND;
                                                                //     58  %INTEGER FLAG;                        !JUMPS
#line 58 "regression-compile-tmp/hal7502.imp"
int FLAG;
                                                                //     59  
                                                                //     60  
                                                                //     61  %INTEGER SBOUND
#line 61 "regression-compile-tmp/hal7502.imp"
int SBOUND;
                                                                //     62      SBOUND = FREESTORE-260;           !ALLOW FOR INPUT BUFFER
#line 62 "regression-compile-tmp/hal7502.imp"
SBOUND = (((int)(_imp_FREESTORE())) - (260));
                                                                //     63      SBOUND = SBOUND-256 %IF OUTDEV = 2
#line 63 "regression-compile-tmp/hal7502.imp"
if (((_imp_OUTDEV()) != (2))) goto L_0002;
#line 63 "regression-compile-tmp/hal7502.imp"
SBOUND = (((int)(SBOUND)) - (256));
#line 63 "regression-compile-tmp/hal7502.imp"
L_0002:;
                                                                //     64      SELECT OUTPUT(LIS)
#line 64 "regression-compile-tmp/hal7502.imp"
_imp_SELECTOUTPUT(LIS);
                                                                //     65      SBOUND = SBOUND-256 %IF OUTDEV = 2
#line 65 "regression-compile-tmp/hal7502.imp"
if (((_imp_OUTDEV()) != (2))) goto L_0003;
#line 65 "regression-compile-tmp/hal7502.imp"
SBOUND = (((int)(SBOUND)) - (256));
#line 65 "regression-compile-tmp/hal7502.imp"
L_0003:;
                                                                //     66  %INTEGERARRAY STORE(1:SBOUND)
#line 66 "regression-compile-tmp/hal7502.imp"
int STORE[(((unsigned char)((((int)(SBOUND)) - (1)))) + (1))];
                                                                //     67  
                                                                //     68  %INTEGERFN CHAR(%INTEGER P)
#line 68 "regression-compile-tmp/hal7502.imp"
int CHAR( int P )
#line 68 "regression-compile-tmp/hal7502.imp"
{
                                                                //     69  !BYTE FETCH
                                                                //     70    %result = byteinteger(P)
#line 70 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return *_imp_BYTEINTEGER(P);
                                                                //     71  %END
#line 71 "regression-compile-tmp/hal7502.imp"
} // End of block CHAR at level 2
                                                                //     72  
                                                                //     73  %ROUTINE PUT CHAR(%INTEGER K)
#line 73 "regression-compile-tmp/hal7502.imp"
void PUTCHAR( int K )
#line 73 "regression-compile-tmp/hal7502.imp"
{
                                                                //     74  !AT PUTPOS WITH POST-INCREMENT
                                                                //     75     byteinteger(putpos) = k
#line 75 "regression-compile-tmp/hal7502.imp"
*_imp_BYTEINTEGER(PUTPOS) = K;
                                                                //     76     putpos = putpos + 1
#line 76 "regression-compile-tmp/hal7502.imp"
PUTPOS = (((int)(PUTPOS)) + (1));
                                                                //     77  %END
#line 77 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PUTCHAR at level 2
                                                                //     78  
                                                                //     79  %ROUTINE FAULT(%INTEGER K)
#line 79 "regression-compile-tmp/hal7502.imp"
void FAULT( int K )
#line 79 "regression-compile-tmp/hal7502.imp"
{
                                                                //     80  !RECORD (FIRST) FAULT
                                                                //     81  !NOT NECESSARILY CULPABLE IN PASS 0
                                                                //     82      FSYM = K %IF FSYM = ' '
#line 82 "regression-compile-tmp/hal7502.imp"
if (((FSYM) != (32))) goto L_0004;
#line 82 "regression-compile-tmp/hal7502.imp"
FSYM = K;
#line 82 "regression-compile-tmp/hal7502.imp"
L_0004:;
                                                                //     83  %END
#line 83 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block FAULT at level 2
                                                                //     84  
                                                                //     85  %ROUTINE PRINT(%INTEGER K)
#line 85 "regression-compile-tmp/hal7502.imp"
void PRINT( int K )
#line 85 "regression-compile-tmp/hal7502.imp"
{
                                                                //     86      INTEGER(CODEPOS+CHARS) = K
#line 86 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(CODEPOS)) + (CHARS))) = K;
                                                                //     87      CHARS = CHARS+1
#line 87 "regression-compile-tmp/hal7502.imp"
CHARS = (((int)(CHARS)) + (1));
                                                                //     88  %END
#line 88 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PRINT at level 2
                                                                //     89  
                                                                //     90  %ROUTINE PRINT WORD(%INTEGER V)
#line 90 "regression-compile-tmp/hal7502.imp"
void PRINTWORD( int V )
#line 90 "regression-compile-tmp/hal7502.imp"
{
                                                                //     91      %ROUTINE PRINT HIT(%INTEGER V)
#line 91 "regression-compile-tmp/hal7502.imp"
void PRINTHIT( int V )
#line 91 "regression-compile-tmp/hal7502.imp"
{
                                                                //     92      V = V&15+'0';  V = V+7 %IF V > '9'
#line 92 "regression-compile-tmp/hal7502.imp"
V = (((int)(((V) & (15)))) + (48));
#line 92 "regression-compile-tmp/hal7502.imp"
if (((V) <= (57))) goto L_0005;
#line 92 "regression-compile-tmp/hal7502.imp"
V = (((int)(V)) + (7));
#line 92 "regression-compile-tmp/hal7502.imp"
L_0005:;
                                                                //     93      PRINT(V)
#line 93 "regression-compile-tmp/hal7502.imp"
PRINT(V);
                                                                //     94      %END
#line 94 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PRINTHIT at level 3
                                                                //     95      %ROUTINE PRINT1(%INTEGER V)
#line 95 "regression-compile-tmp/hal7502.imp"
void PRINT1( int V )
#line 95 "regression-compile-tmp/hal7502.imp"
{
                                                                //     96      PRINT HIT(V>>4);  PRINT HIT(V)
#line 96 "regression-compile-tmp/hal7502.imp"
PRINTHIT((int)((((unsigned int)(V)) >> (4))));
#line 96 "regression-compile-tmp/hal7502.imp"
PRINTHIT(V);
                                                                //     97      %END
#line 97 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PRINT1 at level 3
                                                                //     98      PRINT1(V>>8);  PRINT1(V)
#line 98 "regression-compile-tmp/hal7502.imp"
PRINT1((int)((((unsigned int)(V)) >> (8))));
#line 98 "regression-compile-tmp/hal7502.imp"
PRINT1(V);
                                                                //     99  %END
#line 99 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PRINTWORD at level 2
                                                                //    100  
                                                                //    101  %ROUTINE PRINT LOC
#line 101 "regression-compile-tmp/hal7502.imp"
void PRINTLOC( void )
#line 101 "regression-compile-tmp/hal7502.imp"
{
                                                                //    102      PRINT WORD(LOC)
#line 102 "regression-compile-tmp/hal7502.imp"
PRINTWORD(LOC);
                                                                //    103      %IF LOCTYPE&RELMASK # 0 %THEN PRINT('''') %ELSE PRINT(' ')
#line 103 "regression-compile-tmp/hal7502.imp"
if (((((LOCTYPE) & (RELMASK))) == (0))) goto L_0006;
#line 103 "regression-compile-tmp/hal7502.imp"
PRINT(39);
#line 103 "regression-compile-tmp/hal7502.imp"
goto L_0007;
#line 103 "regression-compile-tmp/hal7502.imp"
L_0006:;
#line 103 "regression-compile-tmp/hal7502.imp"
PRINT(32);
#line 103 "regression-compile-tmp/hal7502.imp"
L_0007:;
                                                                //    104      PRINT(' ')
#line 104 "regression-compile-tmp/hal7502.imp"
PRINT(32);
                                                                //    105  %END
#line 105 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PRINTLOC at level 2
                                                                //    106  
                                                                //    107  %ROUTINE DO NEWLINE
#line 107 "regression-compile-tmp/hal7502.imp"
void DONEWLINE( void )
#line 107 "regression-compile-tmp/hal7502.imp"
{
                                                                //    108      NEWLINE;  LINES = LINES+1
#line 108 "regression-compile-tmp/hal7502.imp"
_imp_NEWLINE();
#line 108 "regression-compile-tmp/hal7502.imp"
LINES = (((int)(LINES)) + (1));
                                                                //    109      NEWLINES(2) %AND LINES = 0 %IF LINES = 61
#line 109 "regression-compile-tmp/hal7502.imp"
if (((LINES) != (61))) goto L_0008;
#line 109 "regression-compile-tmp/hal7502.imp"
_imp_NEWLINES(2);
#line 109 "regression-compile-tmp/hal7502.imp"
LINES = 0;
#line 109 "regression-compile-tmp/hal7502.imp"
L_0008:;
                                                                //    110  %END
#line 110 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block DONEWLINE at level 2
                                                                //    111  
                                                                //    112  %ROUTINE PRINT LINE
#line 112 "regression-compile-tmp/hal7502.imp"
void PRINTLINE( void )
#line 112 "regression-compile-tmp/hal7502.imp"
{
                                                                //    113      %ROUTINE PRINTIT(%INTEGER SUB)
#line 113 "regression-compile-tmp/hal7502.imp"
void PRINTIT( int SUB )
#line 113 "regression-compile-tmp/hal7502.imp"
{
                                                                //    114      %OWNINTEGER MARKER=124;            !VERTICAL BAR
#line 114 "regression-compile-tmp/hal7502.imp"
static int MARKER = 124;
                                                                //    115      %INTEGER P,Q,K
#line 115 "regression-compile-tmp/hal7502.imp"
int P;
#line 115 "regression-compile-tmp/hal7502.imp"
int Q;
#line 115 "regression-compile-tmp/hal7502.imp"
int K;
                                                                //    116      %RETURN %IF CHARS = 0 %AND CHAR(PRINTPOS) = NL
#line 116 "regression-compile-tmp/hal7502.imp"
if (((CHARS) != (0))) goto L_0009;
#line 116 "regression-compile-tmp/hal7502.imp"
if (((CHAR(PRINTPOS)) != (10))) goto L_0009;
#line 116 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 116 "regression-compile-tmp/hal7502.imp"
L_0009:;
                                                                //    117      PRINT SYMBOL(FSYM);  SPACE
#line 117 "regression-compile-tmp/hal7502.imp"
_imp_PRINTSYMBOL(FSYM);
#line 117 "regression-compile-tmp/hal7502.imp"
_imp_SPACE();
                                                                //    118      P = CODEPOS;  Q = P+CHARS
#line 118 "regression-compile-tmp/hal7502.imp"
P = CODEPOS;
#line 118 "regression-compile-tmp/hal7502.imp"
Q = (((int)(P)) + (CHARS));
                                                                //    119      PRINT SYMBOL(INTEGER(P)) %AND P=P+1 %WHILE P # Q
#line 119 "regression-compile-tmp/hal7502.imp"
L_000a:;
#line 119 "regression-compile-tmp/hal7502.imp"
if (((P) == (Q))) goto L_000b;
#line 119 "regression-compile-tmp/hal7502.imp"
_imp_PRINTSYMBOL(*_imp_INTEGER(P));
#line 119 "regression-compile-tmp/hal7502.imp"
P = (((int)(P)) + (1));
#line 119 "regression-compile-tmp/hal7502.imp"
goto L_000a;
#line 119 "regression-compile-tmp/hal7502.imp"
L_000b:;
                                                                //    120      %RETURN %IF PRINTPOS = 0
#line 120 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) != (0))) goto L_000d;
#line 120 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 120 "regression-compile-tmp/hal7502.imp"
L_000d:;
                                                                //    121      SPACES(17-CHARS)
#line 121 "regression-compile-tmp/hal7502.imp"
_imp_SPACES((((int)(17)) - (CHARS)));
                                                                //    122      P = PRINTPOS;  Q = 0
#line 122 "regression-compile-tmp/hal7502.imp"
P = PRINTPOS;
#line 122 "regression-compile-tmp/hal7502.imp"
Q = 0;
                                                                //    123      %CYCLE
#line 123 "regression-compile-tmp/hal7502.imp"
L_000e:;
                                                                //    124      PRINT SYMBOL(MARKER) %IF P = FAULTPOS
#line 124 "regression-compile-tmp/hal7502.imp"
if (((P) != (FAULTPOS))) goto L_0011;
#line 124 "regression-compile-tmp/hal7502.imp"
_imp_PRINTSYMBOL(MARKER);
#line 124 "regression-compile-tmp/hal7502.imp"
L_0011:;
                                                                //    125      K = CHAR(P);  K = SUB %IF P = PSEUDOLIM
#line 125 "regression-compile-tmp/hal7502.imp"
K = CHAR(P);
#line 125 "regression-compile-tmp/hal7502.imp"
if (((P) != (PSEUDOLIM))) goto L_0012;
#line 125 "regression-compile-tmp/hal7502.imp"
K = SUB;
#line 125 "regression-compile-tmp/hal7502.imp"
L_0012:;
                                                                //    126      PRINT SYMBOL('''') %IF (K!!Q)&128 # 0
#line 126 "regression-compile-tmp/hal7502.imp"
if (((((((K) ^ (Q))) & (128))) == (0))) goto L_0013;
#line 126 "regression-compile-tmp/hal7502.imp"
_imp_PRINTSYMBOL(39);
#line 126 "regression-compile-tmp/hal7502.imp"
L_0013:;
                                                                //    127      %RETURN %IF K = NL
#line 127 "regression-compile-tmp/hal7502.imp"
if (((K) != (10))) goto L_0014;
#line 127 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 127 "regression-compile-tmp/hal7502.imp"
L_0014:;
                                                                //    128      PRINT SYMBOL(K&127)
#line 128 "regression-compile-tmp/hal7502.imp"
_imp_PRINTSYMBOL(((K) & (127)));
                                                                //    129      P = P+1;  Q = K
#line 129 "regression-compile-tmp/hal7502.imp"
P = (((int)(P)) + (1));
#line 129 "regression-compile-tmp/hal7502.imp"
Q = K;
                                                                //    130      %REPEAT
#line 130 "regression-compile-tmp/hal7502.imp"
goto L_000e;
                                                                //    131      %END
#line 131 "regression-compile-tmp/hal7502.imp"
return;
} // End of block PRINTIT at level 3
                                                                //    132      %RETURN %IF PASS = 0
#line 132 "regression-compile-tmp/hal7502.imp"
if (((PASS) != (0))) goto L_000f;
#line 132 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 132 "regression-compile-tmp/hal7502.imp"
L_000f:;
                                                                //    133      %UNLESS LIST < 0 %OR (PRINTPOS=0 %AND FSYM=' ' %AND LIST&1=0) %START
#line 133 "regression-compile-tmp/hal7502.imp"
if (((LIST) < (0))) goto L_0015;
#line 133 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) != (0))) goto L_0010;
#line 133 "regression-compile-tmp/hal7502.imp"
if (((FSYM) != (32))) goto L_0010;
#line 133 "regression-compile-tmp/hal7502.imp"
if (((((LIST) & (1))) == (0))) goto L_0015;
#line 133 "regression-compile-tmp/hal7502.imp"
L_0010:;
                                                                //    134      NEWLINES(3) %IF LINES = 0
#line 134 "regression-compile-tmp/hal7502.imp"
if (((LINES) != (0))) goto L_0016;
#line 134 "regression-compile-tmp/hal7502.imp"
_imp_NEWLINES(3);
#line 134 "regression-compile-tmp/hal7502.imp"
L_0016:;
                                                                //    135      PRINTIT(' ')
#line 135 "regression-compile-tmp/hal7502.imp"
PRINTIT(32);
                                                                //    136      DO NEWLINE
#line 136 "regression-compile-tmp/hal7502.imp"
DONEWLINE();
                                                                //    137      %FINISH
#line 137 "regression-compile-tmp/hal7502.imp"
L_0015:;
                                                                //    138      %IF FSYM # ' ' %AND OUTDEV # 1 %START
#line 138 "regression-compile-tmp/hal7502.imp"
if (((FSYM) == (32))) goto L_0017;
#line 138 "regression-compile-tmp/hal7502.imp"
if (((_imp_OUTDEV()) == (1))) goto L_0017;
                                                                //    139      SELECT OUTPUT(0)
#line 139 "regression-compile-tmp/hal7502.imp"
_imp_SELECTOUTPUT(0);
                                                                //    140      PRINTPOS = STARTPOS %IF PRINTPOS = 0
#line 140 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) != (0))) goto L_0018;
#line 140 "regression-compile-tmp/hal7502.imp"
PRINTPOS = STARTPOS;
#line 140 "regression-compile-tmp/hal7502.imp"
L_0018:;
                                                                //    141      PRINT LOC %IF CHARS = 0
#line 141 "regression-compile-tmp/hal7502.imp"
if (((CHARS) != (0))) goto L_0019;
#line 141 "regression-compile-tmp/hal7502.imp"
PRINTLOC();
#line 141 "regression-compile-tmp/hal7502.imp"
L_0019:;
                                                                //    142      PRINTIT(NL)
#line 142 "regression-compile-tmp/hal7502.imp"
PRINTIT(10);
                                                                //    143      NEWLINE
#line 143 "regression-compile-tmp/hal7502.imp"
_imp_NEWLINE();
                                                                //    144      SELECT OUTPUT(LIS)
#line 144 "regression-compile-tmp/hal7502.imp"
_imp_SELECTOUTPUT(LIS);
                                                                //    145      %FINISH
#line 145 "regression-compile-tmp/hal7502.imp"
L_0017:;
                                                                //    146      FSYM = ' ';  PRINTPOS = 0;  CHARS = 0
#line 146 "regression-compile-tmp/hal7502.imp"
FSYM = 32;
#line 146 "regression-compile-tmp/hal7502.imp"
PRINTPOS = 0;
#line 146 "regression-compile-tmp/hal7502.imp"
CHARS = 0;
                                                                //    147  %END
#line 147 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PRINTLINE at level 2
                                                                //    148  
                                                                //    149  %ROUTINE PUT WORD(%INTEGER V)
#line 149 "regression-compile-tmp/hal7502.imp"
void PUTWORD( int V )
#line 149 "regression-compile-tmp/hal7502.imp"
{
                                                                //    150      CHECK = CHECK!!V
#line 150 "regression-compile-tmp/hal7502.imp"
CHECK = ((CHECK) ^ (V));
                                                                //    151      SELECT OUTPUT(BIN)
#line 151 "regression-compile-tmp/hal7502.imp"
_imp_SELECTOUTPUT(BIN);
                                                                //    152      PRINT CH(V>>12&15+CONTROL)
#line 152 "regression-compile-tmp/hal7502.imp"
_imp_PRINTCH((((int)((((int)((((unsigned int)(V)) >> (12)))) & (15)))) + (CONTROL)));
                                                                //    153      PRINT CH(V>>8&15+16_40)
#line 153 "regression-compile-tmp/hal7502.imp"
_imp_PRINTCH((((int)((((int)((((unsigned int)(V)) >> (8)))) & (15)))) + (64)));
                                                                //    154      PRINT CH(V>>4&15+16_40)
#line 154 "regression-compile-tmp/hal7502.imp"
_imp_PRINTCH((((int)((((int)((((unsigned int)(V)) >> (4)))) & (15)))) + (64)));
                                                                //    155      PRINT CH(V&15+16_40)
#line 155 "regression-compile-tmp/hal7502.imp"
_imp_PRINTCH((((int)(((V) & (15)))) + (64)));
                                                                //    156      CONTROL = 16_50
#line 156 "regression-compile-tmp/hal7502.imp"
CONTROL = 80;
                                                                //    157      SELECT OUTPUT(LIS)
#line 157 "regression-compile-tmp/hal7502.imp"
_imp_SELECTOUTPUT(LIS);
                                                                //    158  %END
#line 158 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PUTWORD at level 2
                                                                //    159  
                                                                //    160  %ROUTINE PLANT VAL
#line 160 "regression-compile-tmp/hal7502.imp"
void PLANTVAL( void )
#line 160 "regression-compile-tmp/hal7502.imp"
{
                                                                //    161      %IF PASS > 0 %START
#line 161 "regression-compile-tmp/hal7502.imp"
if (((PASS) <= (0))) goto L_001a;
                                                                //    162      %IF CHARS = 0 %START
#line 162 "regression-compile-tmp/hal7502.imp"
if (((CHARS) != (0))) goto L_001b;
                                                                //    163      %IF PRINTPOS#0 %THEN PRINT LOC %ELSE %START
#line 163 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) == (0))) goto L_001c;
#line 163 "regression-compile-tmp/hal7502.imp"
PRINTLOC();
#line 163 "regression-compile-tmp/hal7502.imp"
goto L_001d;
#line 163 "regression-compile-tmp/hal7502.imp"
L_001c:;
                                                                //    164      PRINT(' '); PRINT(' '); PRINT(' ')
#line 164 "regression-compile-tmp/hal7502.imp"
PRINT(32);
#line 164 "regression-compile-tmp/hal7502.imp"
PRINT(32);
#line 164 "regression-compile-tmp/hal7502.imp"
PRINT(32);
                                                                //    165      PRINT(' '); PRINT(' '); PRINT(' ')
#line 165 "regression-compile-tmp/hal7502.imp"
PRINT(32);
#line 165 "regression-compile-tmp/hal7502.imp"
PRINT(32);
#line 165 "regression-compile-tmp/hal7502.imp"
PRINT(32);
                                                                //    166      %FINISH
#line 166 "regression-compile-tmp/hal7502.imp"
L_001d:;
                                                                //    167      %FINISH
#line 167 "regression-compile-tmp/hal7502.imp"
L_001b:;
                                                                //    168      PRINT(' ') %IF CHARS = 10
#line 168 "regression-compile-tmp/hal7502.imp"
if (((CHARS) != (10))) goto L_001e;
#line 168 "regression-compile-tmp/hal7502.imp"
PRINT(32);
#line 168 "regression-compile-tmp/hal7502.imp"
L_001e:;
                                                                //    169      PRINT WORD(VAL); PUT WORD(VAL)
#line 169 "regression-compile-tmp/hal7502.imp"
PRINTWORD(VAL);
#line 169 "regression-compile-tmp/hal7502.imp"
PUTWORD(VAL);
                                                                //    170      PRINT('''') %IF TYPE&RELMASK # 0
#line 170 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (RELMASK))) == (0))) goto L_001f;
#line 170 "regression-compile-tmp/hal7502.imp"
PRINT(39);
#line 170 "regression-compile-tmp/hal7502.imp"
L_001f:;
                                                                //    171      PRINT LINE %IF CHARS >= 15
#line 171 "regression-compile-tmp/hal7502.imp"
if (((CHARS) < (15))) goto L_0020;
#line 171 "regression-compile-tmp/hal7502.imp"
PRINTLINE();
#line 171 "regression-compile-tmp/hal7502.imp"
L_0020:;
                                                                //    172      %FINISH
#line 172 "regression-compile-tmp/hal7502.imp"
L_001a:;
                                                                //    173      LOC = LOC+1
#line 173 "regression-compile-tmp/hal7502.imp"
LOC = (((int)(LOC)) + (1));
                                                                //    174  %END
#line 174 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PLANTVAL at level 2
                                                                //    175  
                                                                //    176  %ROUTINE PLANT(%INTEGER V)
#line 176 "regression-compile-tmp/hal7502.imp"
void PLANT( int V )
#line 176 "regression-compile-tmp/hal7502.imp"
{
                                                                //    177  %INTEGER THOLD,VHOLD
#line 177 "regression-compile-tmp/hal7502.imp"
int THOLD;
#line 177 "regression-compile-tmp/hal7502.imp"
int VHOLD;
                                                                //    178      THOLD = TYPE;  VHOLD = VAL
#line 178 "regression-compile-tmp/hal7502.imp"
THOLD = TYPE;
#line 178 "regression-compile-tmp/hal7502.imp"
VHOLD = VAL;
                                                                //    179      TYPE = 0;  VAL = V
#line 179 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 179 "regression-compile-tmp/hal7502.imp"
VAL = V;
                                                                //    180      PLANT VAL
#line 180 "regression-compile-tmp/hal7502.imp"
PLANTVAL();
                                                                //    181      TYPE = THOLD;  VAL = THOLD
#line 181 "regression-compile-tmp/hal7502.imp"
TYPE = THOLD;
#line 181 "regression-compile-tmp/hal7502.imp"
VAL = THOLD;
                                                                //    182  %END
#line 182 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PLANT at level 2
                                                                //    183  
                                                                //    184  %ROUTINE NEST(%INTEGER K)
#line 184 "regression-compile-tmp/hal7502.imp"
void NEST( int K )
#line 184 "regression-compile-tmp/hal7502.imp"
{
                                                                //    185      NP = NP-1;  !!%MONITOR 23 %IF NP = BP
#line 185 "regression-compile-tmp/hal7502.imp"
NP = (((int)(NP)) - (1));
                                                                //    186      INTEGER(NP) = K
#line 186 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(NP) = K;
                                                                //    187  %END
#line 187 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block NEST at level 2
                                                                //    188  
                                                                //    189  %ROUTINE SET LAB(%INTEGER DEST)
#line 189 "regression-compile-tmp/hal7502.imp"
void SETLAB( int DEST )
#line 189 "regression-compile-tmp/hal7502.imp"
{
                                                                //    190  %INTEGER P,Q
#line 190 "regression-compile-tmp/hal7502.imp"
int P;
#line 190 "regression-compile-tmp/hal7502.imp"
int Q;
                                                                //    191      Q = 0
#line 191 "regression-compile-tmp/hal7502.imp"
Q = 0;
                                                                //    192      %CYCLE
#line 192 "regression-compile-tmp/hal7502.imp"
L_0021:;
                                                                //    193      TYPE = INTEGER(NP);  P = TYPE&16_3FF+DEFLIM; !DEST SLOT
#line 193 "regression-compile-tmp/hal7502.imp"
TYPE = *_imp_INTEGER(NP);
#line 193 "regression-compile-tmp/hal7502.imp"
P = (((int)(((TYPE) & (1023)))) + (DEFLIM));
                                                                //    194      NP = NP+1
#line 194 "regression-compile-tmp/hal7502.imp"
NP = (((int)(NP)) + (1));
                                                                //    195      VAL = INTEGER(NP);             !LOC OF JUMP
#line 195 "regression-compile-tmp/hal7502.imp"
VAL = *_imp_INTEGER(NP);
                                                                //    196      NP = NP+1
#line 196 "regression-compile-tmp/hal7502.imp"
NP = (((int)(NP)) + (1));
                                                                //    197      ATYPE = -1;  CREG = -1
#line 197 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 197 "regression-compile-tmp/hal7502.imp"
CREG = (-1);
                                                                //    198      FLAG = 0;
#line 198 "regression-compile-tmp/hal7502.imp"
FLAG = 0;
                                                                //    199      %IF TYPE&16_800 = 0 %START
#line 199 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (2048))) != (0))) goto L_0024;
                                                                //    200      FLAG = 1 %IF DEST-VAL+PASS <= 128
#line 200 "regression-compile-tmp/hal7502.imp"
if ((((((int)((((int)(DEST)) - (VAL)))) + (PASS))) > (128))) goto L_0025;
#line 200 "regression-compile-tmp/hal7502.imp"
FLAG = 1;
#line 200 "regression-compile-tmp/hal7502.imp"
L_0025:;
                                                                //    201      %finish %ELSE %IF TYPE&16_400 # 0 %START
#line 201 "regression-compile-tmp/hal7502.imp"
goto L_0026;
#line 201 "regression-compile-tmp/hal7502.imp"
L_0024:;
#line 201 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (1024))) == (0))) goto L_0027;
                                                                //    202      FLAG = 2 %IF DEST-VAL+PASS+PASS = 1
#line 202 "regression-compile-tmp/hal7502.imp"
if ((((((int)((((int)((((int)(DEST)) - (VAL)))) + (PASS)))) + (PASS))) != (1))) goto L_0028;
#line 202 "regression-compile-tmp/hal7502.imp"
FLAG = 2;
#line 202 "regression-compile-tmp/hal7502.imp"
L_0028:;
                                                                //    203      %FINISH
#line 203 "regression-compile-tmp/hal7502.imp"
L_0027:;
#line 203 "regression-compile-tmp/hal7502.imp"
L_0026:;
                                                                //    204      %IF PASS = 0 %START
#line 204 "regression-compile-tmp/hal7502.imp"
if (((PASS) != (0))) goto L_0029;
                                                                //    205      DEST = DEST-FLAG;  INTEGER(P) = DEST
#line 205 "regression-compile-tmp/hal7502.imp"
DEST = (((int)(DEST)) - (FLAG));
#line 205 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(P) = DEST;
                                                                //    206      %IF FLAG # 0 %START
#line 206 "regression-compile-tmp/hal7502.imp"
if (((FLAG) == (0))) goto L_002a;
                                                                //    207      LOC = LOC-FLAG
#line 207 "regression-compile-tmp/hal7502.imp"
LOC = (((int)(LOC)) - (FLAG));
                                                                //    208      %WHILE P # ALMAX %CYCLE
#line 208 "regression-compile-tmp/hal7502.imp"
L_002b:;
#line 208 "regression-compile-tmp/hal7502.imp"
if (((P) == (ALMAX))) goto L_002c;
                                                                //    209      P = P+1;  INTEGER(P) = INTEGER(P)-FLAG
#line 209 "regression-compile-tmp/hal7502.imp"
P = (((int)(P)) + (1));
#line 209 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(P) = ((*(int *)(_imp_INTEGER(P))) - (FLAG));
                                                                //    210      %REPEAT
#line 210 "regression-compile-tmp/hal7502.imp"
goto L_002b;
#line 210 "regression-compile-tmp/hal7502.imp"
L_002c:;
                                                                //    211      %FINISH
#line 211 "regression-compile-tmp/hal7502.imp"
L_002a:;
                                                                //    212      %finish %ELSE %START
#line 212 "regression-compile-tmp/hal7502.imp"
goto L_002e;
#line 212 "regression-compile-tmp/hal7502.imp"
L_0029:;
                                                                //    213      FAULT('P') %IF INTEGER(P) # DEST
#line 213 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER(P)) == (DEST))) goto L_002f;
#line 213 "regression-compile-tmp/hal7502.imp"
FAULT(80);
#line 213 "regression-compile-tmp/hal7502.imp"
L_002f:;
                                                                //    214      %FINISH
#line 214 "regression-compile-tmp/hal7502.imp"
L_002e:;
                                                                //    215      %RETURN %IF INTEGER(NP)&16_1000 = 0
#line 215 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (4096))) != (0))) goto L_0030;
#line 215 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 215 "regression-compile-tmp/hal7502.imp"
L_0030:;
                                                                //    216      %IF INTEGER(NP)&16_2000 # 0 %AND Q = 0 %START; !OR
#line 216 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (8192))) == (0))) goto L_0031;
#line 216 "regression-compile-tmp/hal7502.imp"
if (((Q) != (0))) goto L_0031;
                                                                //    217      DEST = VAL+1
#line 217 "regression-compile-tmp/hal7502.imp"
DEST = (((int)(VAL)) + (1));
                                                                //    218      DEST = VAL+2-FLAG %UNLESS TYPE&16_C00 = 16_C00
#line 218 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (3072))) == (3072))) goto L_0032;
#line 218 "regression-compile-tmp/hal7502.imp"
DEST = (((int)((((int)(VAL)) + (2)))) - (FLAG));
#line 218 "regression-compile-tmp/hal7502.imp"
L_0032:;
                                                                //    219      Q = 1
#line 219 "regression-compile-tmp/hal7502.imp"
Q = 1;
                                                                //    220      %FINISH
#line 220 "regression-compile-tmp/hal7502.imp"
L_0031:;
                                                                //    221      %REPEAT
#line 221 "regression-compile-tmp/hal7502.imp"
goto L_0021;
                                                                //    222  %END
#line 222 "regression-compile-tmp/hal7502.imp"
return;
} // End of block SETLAB at level 2
                                                                //    223  
                                                                //    224  %ROUTINE ASSEMBLE
#line 224 "regression-compile-tmp/hal7502.imp"
void ASSEMBLE( void )
#line 224 "regression-compile-tmp/hal7502.imp"
{
                                                                //    225  !   7502 OP-CODES
                                                                //    226  %OWNINTEGER ADD=16_F400, SUB=16_F500, AND=16_F100
#line 226 "regression-compile-tmp/hal7502.imp"
static int ADD = 62464;
#line 226 "regression-compile-tmp/hal7502.imp"
static int SUB = 62720;
#line 226 "regression-compile-tmp/hal7502.imp"
static int AND = 61696;
                                                                //    227  %OWNINTEGER OR=16_F000, XOR=16_F700, COMP=16_F200
#line 227 "regression-compile-tmp/hal7502.imp"
static int OR = 61440;
#line 227 "regression-compile-tmp/hal7502.imp"
static int XOR = 63232;
#line 227 "regression-compile-tmp/hal7502.imp"
static int COMP = 61952;
                                                                //    228  %OWNINTEGER COPY=16_F300
#line 228 "regression-compile-tmp/hal7502.imp"
static int COPY = 62208;
                                                                //    229  %OWNINTEGER LOADI=16_6000, SKIDI=16_7000, ADDI=16_8000
#line 229 "regression-compile-tmp/hal7502.imp"
static int LOADI = 24576;
#line 229 "regression-compile-tmp/hal7502.imp"
static int SKIDI = 28672;
#line 229 "regression-compile-tmp/hal7502.imp"
static int ADDI = 32768;
                                                                //    230  %OWNINTEGER ANDI=16_9000
#line 230 "regression-compile-tmp/hal7502.imp"
static int ANDI = 36864;
                                                                //    231  %OWNINTEGER BOC=16_5800, BOCR=16_5000, JUM=16_4000
#line 231 "regression-compile-tmp/hal7502.imp"
static int BOC = 22528;
#line 231 "regression-compile-tmp/hal7502.imp"
static int BOCR = 20480;
#line 231 "regression-compile-tmp/hal7502.imp"
static int JUM = 16384;
                                                                //    232  %OWNINTEGER SKIP=16_4002, LOADC=16_20F2, ROT=16_3000
#line 232 "regression-compile-tmp/hal7502.imp"
static int SKIP = 16386;
#line 232 "regression-compile-tmp/hal7502.imp"
static int LOADC = 8434;
#line 232 "regression-compile-tmp/hal7502.imp"
static int ROT = 12288;
                                                                //    233  %OWNINTEGER LOAD=16_2000, STORE=16_2008
#line 233 "regression-compile-tmp/hal7502.imp"
static int LOAD = 8192;
#line 233 "regression-compile-tmp/hal7502.imp"
static int STORE = 8200;
                                                                //    234  
                                                                //    235  %INTEGER Q,NQ,OP,K,LITVAL,TYPE1,VAL1,FREE
#line 235 "regression-compile-tmp/hal7502.imp"
int Q;
#line 235 "regression-compile-tmp/hal7502.imp"
int NQ;
#line 235 "regression-compile-tmp/hal7502.imp"
int OP;
#line 235 "regression-compile-tmp/hal7502.imp"
int K;
#line 235 "regression-compile-tmp/hal7502.imp"
int LITVAL;
#line 235 "regression-compile-tmp/hal7502.imp"
int TYPE1;
#line 235 "regression-compile-tmp/hal7502.imp"
int VAL1;
#line 235 "regression-compile-tmp/hal7502.imp"
int FREE;
                                                                //    236  %SWITCH ASS(-30:-1)
#line 236 "regression-compile-tmp/hal7502.imp"
static int sw1_ASS_idx;
static const void * /*SWITCH*/ sw1_ASS[30] = { &&sw1_ASS_M_30, &&sw1_ASS_M_29, &&sw1_ASS_M_28, &&sw1_ASS_M_27, &&sw1_ASS_M_26, &&sw1_ASS_M_25, &&sw1_ASS_M_24, &&sw1_ASS_M_23, &&sw1_ASS_M_22, &&sw1_ASS_M_21, &&sw1_ASS_M_20, &&sw1_ASS_M_19, &&sw1_ASS_M_18, &&sw1_ASS_M_17, &&sw1_ASS_M_16, &&sw1_ASS_M_15, &&sw1_ASS_M_14, &&sw1_ASS_M_13, &&sw1_ASS_M_12, &&sw1_ASS_M_11, &&sw1_ASS_M_10, &&sw1_ASS_M_9, &&sw1_ASS_M_8, &&sw1_ASS_M_7, &&sw1_ASS_M_6, &&sw1_ASS_M_5, &&sw1_ASS_M_4, &&sw1_ASS_M_3, &&sw1_ASS_M_2, &&sw1_ASS_M_1,  };
                                                                //    237  
                                                                //    238  %ROUTINE COMBINE
#line 238 "regression-compile-tmp/hal7502.imp"
void COMBINE( void )
#line 238 "regression-compile-tmp/hal7502.imp"
{
                                                                //    239  %INTEGER I,J,K
#line 239 "regression-compile-tmp/hal7502.imp"
int I;
#line 239 "regression-compile-tmp/hal7502.imp"
int J;
#line 239 "regression-compile-tmp/hal7502.imp"
int K;
                                                                //    240      I = 11; K = 2048
#line 240 "regression-compile-tmp/hal7502.imp"
I = 11;
#line 240 "regression-compile-tmp/hal7502.imp"
K = 2048;
                                                                //    241      I=I-1 %AND K=K>>1 %WHILE K&TYPE1 = 0 %AND I # 0
#line 241 "regression-compile-tmp/hal7502.imp"
L_0033:;
#line 241 "regression-compile-tmp/hal7502.imp"
if (((((K) & (TYPE1))) != (0))) goto L_0034;
#line 241 "regression-compile-tmp/hal7502.imp"
if (((I) == (0))) goto L_0034;
#line 241 "regression-compile-tmp/hal7502.imp"
I = (((int)(I)) - (1));
#line 241 "regression-compile-tmp/hal7502.imp"
K = (int)((((unsigned int)(K)) >> (1)));
#line 241 "regression-compile-tmp/hal7502.imp"
goto L_0033;
#line 241 "regression-compile-tmp/hal7502.imp"
L_0034:;
                                                                //    242      J = K
#line 242 "regression-compile-tmp/hal7502.imp"
J = K;
                                                                //    243      I =I-1 %AND J=J>>1 %WHILE J&VAL1 = 0 %AND I # 0
#line 243 "regression-compile-tmp/hal7502.imp"
L_0036:;
#line 243 "regression-compile-tmp/hal7502.imp"
if (((((J) & (VAL1))) != (0))) goto L_0037;
#line 243 "regression-compile-tmp/hal7502.imp"
if (((I) == (0))) goto L_0037;
#line 243 "regression-compile-tmp/hal7502.imp"
I = (((int)(I)) - (1));
#line 243 "regression-compile-tmp/hal7502.imp"
J = (int)((((unsigned int)(J)) >> (1)));
#line 243 "regression-compile-tmp/hal7502.imp"
goto L_0036;
#line 243 "regression-compile-tmp/hal7502.imp"
L_0037:;
                                                                //    244      VAL = VAL<<I & (K<<1-1)
#line 244 "regression-compile-tmp/hal7502.imp"
VAL = ((((VAL) << (I))) & ((((int)(((K) << (1)))) - (1))));
                                                                //    245      TYPE = TYPE1-K
#line 245 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)(TYPE1)) - (K));
                                                                //    246      VAL = VAL1-J+VAL
#line 246 "regression-compile-tmp/hal7502.imp"
VAL = (((int)((((int)(VAL1)) - (J)))) + (VAL));
                                                                //    247  %END
#line 247 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block COMBINE at level 3
                                                                //    248  
                                                                //    249  %ROUTINE PLANT JUMP
#line 249 "regression-compile-tmp/hal7502.imp"
void PLANTJUMP( void )
#line 249 "regression-compile-tmp/hal7502.imp"
{
                                                                //    250  %INTEGER I,V
#line 250 "regression-compile-tmp/hal7502.imp"
int I;
#line 250 "regression-compile-tmp/hal7502.imp"
int V;
                                                                //    251      I = VAL-LOC
#line 251 "regression-compile-tmp/hal7502.imp"
I = (((int)(VAL)) - (LOC));
                                                                //    252      %IF COND&6 = 0 %START
#line 252 "regression-compile-tmp/hal7502.imp"
if (((((COND) & (6))) != (0))) goto L_0039;
                                                                //    253      %IF COND = 8 %START
#line 253 "regression-compile-tmp/hal7502.imp"
if (((COND) != (8))) goto L_003a;
                                                                //    254      %RETURN %IF I=1
#line 254 "regression-compile-tmp/hal7502.imp"
if (((I) != (1))) goto L_003b;
#line 254 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 254 "regression-compile-tmp/hal7502.imp"
L_003b:;
                                                                //    255      PLANT(SKIP)
#line 255 "regression-compile-tmp/hal7502.imp"
PLANT(SKIP);
                                                                //    256      %FINISH
#line 256 "regression-compile-tmp/hal7502.imp"
L_003a:;
                                                                //    257      %finish %ELSE %START
#line 257 "regression-compile-tmp/hal7502.imp"
goto L_003c;
#line 257 "regression-compile-tmp/hal7502.imp"
L_0039:;
                                                                //    258      FAULT('J') %AND I=0 %IF FLAG # 0 %AND |I| > 127
#line 258 "regression-compile-tmp/hal7502.imp"
if (((FLAG) == (0))) goto L_003d;
#line 258 "regression-compile-tmp/hal7502.imp"
if (((_imp_IMOD(I)) <= (127))) goto L_003d;
#line 258 "regression-compile-tmp/hal7502.imp"
FAULT(74);
#line 258 "regression-compile-tmp/hal7502.imp"
I = 0;
#line 258 "regression-compile-tmp/hal7502.imp"
L_003d:;
                                                                //    259      %IF |I| <= 127 %START
#line 259 "regression-compile-tmp/hal7502.imp"
if (((_imp_IMOD(I)) > (127))) goto L_003e;
                                                                //    260      %IF TYPE&UMASK = 0 %OR FLAG # 0 %START
#line 260 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (UMASK))) == (0))) goto L_003f;
#line 260 "regression-compile-tmp/hal7502.imp"
if (((FLAG) == (0))) goto L_0040;
#line 260 "regression-compile-tmp/hal7502.imp"
L_003f:;
                                                                //    261      PLANT(BOC+(COND!!1)<<8+I&255)
#line 261 "regression-compile-tmp/hal7502.imp"
PLANT((((((BOC) + ((int)(((((COND) ^ (1))) << (8))))))) + (((I) & (255)))));
                                                                //    262      %RETURN
#line 262 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    263      %FINISH
#line 263 "regression-compile-tmp/hal7502.imp"
L_0040:;
                                                                //    264      FAULT('S') %IF LIST >= 0 %AND LIST&8 # 0
#line 264 "regression-compile-tmp/hal7502.imp"
if (((LIST) < (0))) goto L_0041;
#line 264 "regression-compile-tmp/hal7502.imp"
if (((((LIST) & (8))) == (0))) goto L_0041;
#line 264 "regression-compile-tmp/hal7502.imp"
FAULT(83);
#line 264 "regression-compile-tmp/hal7502.imp"
L_0041:;
                                                                //    265      %FINISH
#line 265 "regression-compile-tmp/hal7502.imp"
L_003e:;
                                                                //    266      PLANT(BOC+COND<<8+2)
#line 266 "regression-compile-tmp/hal7502.imp"
PLANT((((int)(((BOC) + ((int)(((COND) << (8))))))) + (2)));
                                                                //    267      %FINISH
#line 267 "regression-compile-tmp/hal7502.imp"
L_003c:;
                                                                //    268      PLANT(JUM+(VAL-LOC)&4095)
#line 268 "regression-compile-tmp/hal7502.imp"
PLANT(((JUM) + ((int)((((((int)(VAL)) - (LOC))) & (4095))))));
                                                                //    269  %END
#line 269 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PLANTJUMP at level 3
                                                                //    270  
                                                                //    271  %ROUTINE SET JUMP(%INTEGER CASE)
#line 271 "regression-compile-tmp/hal7502.imp"
void SETJUMP( int CASE )
#line 271 "regression-compile-tmp/hal7502.imp"
{
                                                                //    272  %INTEGER THOLD,VHOLD,FHOLD
#line 272 "regression-compile-tmp/hal7502.imp"
int THOLD;
#line 272 "regression-compile-tmp/hal7502.imp"
int VHOLD;
#line 272 "regression-compile-tmp/hal7502.imp"
int FHOLD;
                                                                //    273      CASE = CASE+16_0800 %IF COND&6 = 0
#line 273 "regression-compile-tmp/hal7502.imp"
if (((((COND) & (6))) != (0))) goto L_0042;
#line 273 "regression-compile-tmp/hal7502.imp"
CASE = (((int)(CASE)) + (2048));
#line 273 "regression-compile-tmp/hal7502.imp"
L_0042:;
                                                                //    274      CASE = CASE+16_0400 %IF COND&1 # 0
#line 274 "regression-compile-tmp/hal7502.imp"
if (((((COND) & (1))) == (0))) goto L_0043;
#line 274 "regression-compile-tmp/hal7502.imp"
CASE = (((int)(CASE)) + (1024));
#line 274 "regression-compile-tmp/hal7502.imp"
L_0043:;
                                                                //    275      ALMAX = ALMAX+1;  !!%MONITOR 22 %IF ALMAX = LABMIN
#line 275 "regression-compile-tmp/hal7502.imp"
ALMAX = (((int)(ALMAX)) + (1));
                                                                //    276      NEST(LOC);  NEST(ALMAX-DEFLIM+CASE)
#line 276 "regression-compile-tmp/hal7502.imp"
NEST(LOC);
#line 276 "regression-compile-tmp/hal7502.imp"
NEST((((int)((((int)(ALMAX)) - (DEFLIM)))) + (CASE)));
                                                                //    277      THOLD = TYPE;  VHOLD = VAL;  FHOLD = FLAG
#line 277 "regression-compile-tmp/hal7502.imp"
THOLD = TYPE;
#line 277 "regression-compile-tmp/hal7502.imp"
VHOLD = VAL;
#line 277 "regression-compile-tmp/hal7502.imp"
FHOLD = FLAG;
                                                                //    278      TYPE = LOCTYPE;  VAL = INTEGER(ALMAX);  FLAG = 0
#line 278 "regression-compile-tmp/hal7502.imp"
TYPE = LOCTYPE;
#line 278 "regression-compile-tmp/hal7502.imp"
VAL = *_imp_INTEGER(ALMAX);
#line 278 "regression-compile-tmp/hal7502.imp"
FLAG = 0;
                                                                //    279      TYPE = TYPE+UMASK %IF PASS = 0
#line 279 "regression-compile-tmp/hal7502.imp"
if (((PASS) != (0))) goto L_0044;
#line 279 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)(TYPE)) + (UMASK));
#line 279 "regression-compile-tmp/hal7502.imp"
L_0044:;
                                                                //    280      COND = COND!!1
#line 280 "regression-compile-tmp/hal7502.imp"
COND = ((COND) ^ (1));
                                                                //    281      PLANT JUMP;  COND = 0
#line 281 "regression-compile-tmp/hal7502.imp"
PLANTJUMP();
#line 281 "regression-compile-tmp/hal7502.imp"
COND = 0;
                                                                //    282      TYPE = THOLD;  VAL = VHOLD;  FLAG = FHOLD
#line 282 "regression-compile-tmp/hal7502.imp"
TYPE = THOLD;
#line 282 "regression-compile-tmp/hal7502.imp"
VAL = VHOLD;
#line 282 "regression-compile-tmp/hal7502.imp"
FLAG = FHOLD;
                                                                //    283  %END
#line 283 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SETJUMP at level 3
                                                                //    284  
                                                                //    285  %ROUTINE PLANT INST(%INTEGER CODE)
#line 285 "regression-compile-tmp/hal7502.imp"
void PLANTINST( int CODE )
#line 285 "regression-compile-tmp/hal7502.imp"
{
                                                                //    286      SET JUMP(16_1000) %IF COND # 0
#line 286 "regression-compile-tmp/hal7502.imp"
if (((COND) == (0))) goto L_0045;
#line 286 "regression-compile-tmp/hal7502.imp"
SETJUMP(4096);
#line 286 "regression-compile-tmp/hal7502.imp"
L_0045:;
                                                                //    287      PLANT(CODE)
#line 287 "regression-compile-tmp/hal7502.imp"
PLANT(CODE);
                                                                //    288  %END
#line 288 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PLANTINST at level 3
                                                                //    289  
                                                                //    290  %ROUTINE RELEASE
#line 290 "regression-compile-tmp/hal7502.imp"
void RELEASE( void )
#line 290 "regression-compile-tmp/hal7502.imp"
{
                                                                //    291  %INTEGER I
#line 291 "regression-compile-tmp/hal7502.imp"
int I;
                                                                //    292      %RETURN %IF TYPE&REGXMASK = 0
#line 292 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (REGXMASK))) != (0))) goto L_0046;
#line 292 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 292 "regression-compile-tmp/hal7502.imp"
L_0046:;
                                                                //    293      I = TYPE&15;  I = VAL %IF TYPE = REG
#line 293 "regression-compile-tmp/hal7502.imp"
I = ((TYPE) & (15));
#line 293 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (REG))) goto L_0047;
#line 293 "regression-compile-tmp/hal7502.imp"
I = VAL;
#line 293 "regression-compile-tmp/hal7502.imp"
L_0047:;
                                                                //    294      %IF I = DREG %START
#line 294 "regression-compile-tmp/hal7502.imp"
if (((I) != (DREG))) goto L_0048;
                                                                //    295      DUSE = DUSE-1
#line 295 "regression-compile-tmp/hal7502.imp"
DUSE = (((int)(DUSE)) - (1));
                                                                //    296      %finish %ELSE %START
#line 296 "regression-compile-tmp/hal7502.imp"
goto L_0049;
#line 296 "regression-compile-tmp/hal7502.imp"
L_0048:;
                                                                //    297      I = 1<<I
#line 297 "regression-compile-tmp/hal7502.imp"
I = ((1) << (I));
                                                                //    298      FREE = FREE!I %IF TEMPS&I # 0
#line 298 "regression-compile-tmp/hal7502.imp"
if (((((TEMPS) & (I))) == (0))) goto L_004a;
#line 298 "regression-compile-tmp/hal7502.imp"
FREE = ((FREE) | (I));
#line 298 "regression-compile-tmp/hal7502.imp"
L_004a:;
                                                                //    299      %FINISH
#line 299 "regression-compile-tmp/hal7502.imp"
L_0049:;
                                                                //    300  %END
#line 300 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block RELEASE at level 3
                                                                //    301  
                                                                //    302  %INTEGERFN TREG
#line 302 "regression-compile-tmp/hal7502.imp"
int TREG( void )
#line 302 "regression-compile-tmp/hal7502.imp"
{
                                                                //    303  %INTEGER I,J
#line 303 "regression-compile-tmp/hal7502.imp"
int I;
#line 303 "regression-compile-tmp/hal7502.imp"
int J;
                                                                //    304      %IF DREG >= 0 %AND DUSE = 0 %START
#line 304 "regression-compile-tmp/hal7502.imp"
if (((DREG) < (0))) goto L_004b;
#line 304 "regression-compile-tmp/hal7502.imp"
if (((DUSE) != (0))) goto L_004b;
                                                                //    305      DUSE = 1
#line 305 "regression-compile-tmp/hal7502.imp"
DUSE = 1;
                                                                //    306      %RESULT = DREG
#line 306 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return DREG;
                                                                //    307      %FINISH
#line 307 "regression-compile-tmp/hal7502.imp"
L_004b:;
                                                                //    308      J = 1
#line 308 "regression-compile-tmp/hal7502.imp"
J = 1;
                                                                //    309      %CYCLE I = 0,1,15
#line 309 "regression-compile-tmp/hal7502.imp"
I = (-1);
if ((((15)-(0)) % (1)) != 0) _imp_signal(5,1,0,"Illegal cycle I = 0, 1, 15");
L_004c:;
if (I == 15) goto L_004d;
I += 1;
                                                                //    310      ->OK %IF FREE&J # 0 %AND I # DREG
#line 310 "regression-compile-tmp/hal7502.imp"
if (((((FREE) & (J))) == (0))) goto L_004f;
#line 310 "regression-compile-tmp/hal7502.imp"
if (((I) == (DREG))) goto L_004f;
#line 310 "regression-compile-tmp/hal7502.imp"
goto U_1000;
#line 310 "regression-compile-tmp/hal7502.imp"
L_004f:;
                                                                //    311      J = J<<1
#line 311 "regression-compile-tmp/hal7502.imp"
J = ((J) << (1));
                                                                //    312      %REPEAT
#line 312 "regression-compile-tmp/hal7502.imp"
goto L_004c;
#line 312 "regression-compile-tmp/hal7502.imp"
L_004d:;
                                                                //    313      FAULT('R')
#line 313 "regression-compile-tmp/hal7502.imp"
FAULT(82);
                                                                //    314  OK: FREE = FREE-J
#line 314 "regression-compile-tmp/hal7502.imp"
U_1000:;
#line 314 "regression-compile-tmp/hal7502.imp"
FREE = (((int)(FREE)) - (J));
                                                                //    315      %RESULT = I
#line 315 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return I;
                                                                //    316  %END
#line 316 "regression-compile-tmp/hal7502.imp"
} // End of block TREG at level 3
                                                                //    317  
                                                                //    318  %ROUTINE LOAD CONST(%INTEGER R)
#line 318 "regression-compile-tmp/hal7502.imp"
void LOADCONST( int R )
#line 318 "regression-compile-tmp/hal7502.imp"
{
                                                                //    319  %INTEGER I,J
#line 319 "regression-compile-tmp/hal7502.imp"
int I;
#line 319 "regression-compile-tmp/hal7502.imp"
int J;
                                                                //    320      I = LOADI+R<<8
#line 320 "regression-compile-tmp/hal7502.imp"
I = ((LOADI) + ((int)(((R) << (8)))));
                                                                //    321      %IF VAL&(\255) = 0 %AND TYPE&UMASK = 0 %START
#line 321 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & ((~(255))))) != (0))) goto L_0050;
#line 321 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (UMASK))) != (0))) goto L_0050;
                                                                //    322      PLANT INST(I+VAL)
#line 322 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(I)) + (VAL)));
                                                                //    323      %finish %ELSE %IF \VAL&(\255) = 0 %AND TYPE&UMASK = 0 %START
#line 323 "regression-compile-tmp/hal7502.imp"
goto L_0051;
#line 323 "regression-compile-tmp/hal7502.imp"
L_0050:;
#line 323 "regression-compile-tmp/hal7502.imp"
if ((((((~(VAL))) & ((~(255))))) != (0))) goto L_0052;
#line 323 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (UMASK))) != (0))) goto L_0052;
                                                                //    324      PLANT INST(I+(\VAL))
#line 324 "regression-compile-tmp/hal7502.imp"
PLANTINST(((I) + ((~(VAL)))));
                                                                //    325      PLANT INST(COMP+R<<4+R)
#line 325 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(((COMP) + ((int)(((R) << (4))))))) + (R)));
                                                                //    326      CREG = R
#line 326 "regression-compile-tmp/hal7502.imp"
CREG = R;
                                                                //    327      %finish %ELSE %START
#line 327 "regression-compile-tmp/hal7502.imp"
goto L_0051;
#line 327 "regression-compile-tmp/hal7502.imp"
L_0052:;
                                                                //    328  !       PLANT INST(LOADC+R<<8)
                                                                //    329  !       PLANT INST(SKIP)
                                                                //    330  !       PLANT VAL
                                                                //    331      J = VAL>>8&255
#line 331 "regression-compile-tmp/hal7502.imp"
J = (((int)((((unsigned int)(VAL)) >> (8)))) & (255));
                                                                //    332      J = J+1 %IF VAL&128 # 0
#line 332 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & (128))) == (0))) goto L_0053;
#line 332 "regression-compile-tmp/hal7502.imp"
J = (((int)(J)) + (1));
#line 332 "regression-compile-tmp/hal7502.imp"
L_0053:;
                                                                //    333      PLANT INST(I+J)
#line 333 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(I)) + (J)));
                                                                //    334      PLANT INST(ROT+R<<8+7<<4+R)
#line 334 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)((((((ROT) + ((int)(((R) << (8))))))) + (((7) << (4)))))) + (R)));
                                                                //    335      PLANT INST(ADDI+R<<8+VAL&255) %IF VAL&255 # 0
#line 335 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & (255))) == (0))) goto L_0054;
#line 335 "regression-compile-tmp/hal7502.imp"
PLANTINST((((((ADDI) + ((int)(((R) << (8))))))) + (((VAL) & (255)))));
#line 335 "regression-compile-tmp/hal7502.imp"
L_0054:;
                                                                //    336      %FINISH
#line 336 "regression-compile-tmp/hal7502.imp"
L_0051:;
                                                                //    337  %END
#line 337 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block LOADCONST at level 3
                                                                //    338  
                                                                //    339  %ROUTINE LOAD REG(%INTEGER R)
#line 339 "regression-compile-tmp/hal7502.imp"
void LOADREG( int R )
#line 339 "regression-compile-tmp/hal7502.imp"
{
                                                                //    340  %INTEGER OP
#line 340 "regression-compile-tmp/hal7502.imp"
int OP;
                                                                //    341      %IF ATYPE = TYPE %AND AVAL = VAL %START
#line 341 "regression-compile-tmp/hal7502.imp"
if (((ATYPE) != (TYPE))) goto L_0055;
#line 341 "regression-compile-tmp/hal7502.imp"
if (((AVAL) != (VAL))) goto L_0055;
                                                                //    342      TYPE = REG;  VAL = ACC
#line 342 "regression-compile-tmp/hal7502.imp"
TYPE = REG;
#line 342 "regression-compile-tmp/hal7502.imp"
VAL = ACC;
                                                                //    343      %RETURN %IF R = ACC
#line 343 "regression-compile-tmp/hal7502.imp"
if (((R) != (ACC))) goto L_0056;
#line 343 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 343 "regression-compile-tmp/hal7502.imp"
L_0056:;
                                                                //    344      %FINISH
#line 344 "regression-compile-tmp/hal7502.imp"
L_0055:;
                                                                //    345      ATYPE = TYPE %AND AVAL = VAL %IF R = ACC
#line 345 "regression-compile-tmp/hal7502.imp"
if (((R) != (ACC))) goto L_0057;
#line 345 "regression-compile-tmp/hal7502.imp"
ATYPE = TYPE;
#line 345 "regression-compile-tmp/hal7502.imp"
AVAL = VAL;
#line 345 "regression-compile-tmp/hal7502.imp"
L_0057:;
                                                                //    346      ATYPE = -1 %IF (ATYPE=REG %AND AVAL=R)
#line 346 "regression-compile-tmp/hal7502.imp"
if (((ATYPE) != (REG))) goto L_0058;
#line 346 "regression-compile-tmp/hal7502.imp"
if (((AVAL) != (R))) goto L_0058;
#line 346 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 346 "regression-compile-tmp/hal7502.imp"
L_0058:;
                                                                //    347      ATYPE = -1 %IF ATYPE&XMASK # 0 %AND ATYPE&15 = R
#line 347 "regression-compile-tmp/hal7502.imp"
if (((((ATYPE) & (XMASK))) == (0))) goto L_0059;
#line 347 "regression-compile-tmp/hal7502.imp"
if (((((ATYPE) & (15))) != (R))) goto L_0059;
#line 347 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 347 "regression-compile-tmp/hal7502.imp"
L_0059:;
                                                                //    348      %IF TYPE = REG %START
#line 348 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (REG))) goto L_005a;
                                                                //    349      PLANT INST(COPY+R<<4+VAL)
#line 349 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(((COPY) + ((int)(((R) << (4))))))) + (VAL)));
                                                                //    350      CREG = R
#line 350 "regression-compile-tmp/hal7502.imp"
CREG = R;
                                                                //    351      %finish %ELSE %IF TYPE&XMASK = 0 %START
#line 351 "regression-compile-tmp/hal7502.imp"
goto L_005b;
#line 351 "regression-compile-tmp/hal7502.imp"
L_005a:;
#line 351 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (XMASK))) != (0))) goto L_005c;
                                                                //    352      LOAD CONST(R)
#line 352 "regression-compile-tmp/hal7502.imp"
LOADCONST(R);
                                                                //    353         PLANT INST(LOAD+R<<8+R<<4) %IF TYPE&MEMMASK # 0
#line 353 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (MEMMASK))) == (0))) goto L_005d;
#line 353 "regression-compile-tmp/hal7502.imp"
PLANTINST((((((LOAD) + ((int)(((R) << (8))))))) + (((R) << (4)))));
#line 353 "regression-compile-tmp/hal7502.imp"
L_005d:;
                                                                //    354      %finish %ELSE %START
#line 354 "regression-compile-tmp/hal7502.imp"
goto L_005b;
#line 354 "regression-compile-tmp/hal7502.imp"
L_005c:;
                                                                //    355         %IF VAL&(\3) # 0 %OR TYPE&MEMMASK = 0 %START
#line 355 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & ((~(3))))) != (0))) goto L_005e;
#line 355 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (MEMMASK))) != (0))) goto L_005f;
#line 355 "regression-compile-tmp/hal7502.imp"
L_005e:;
                                                                //    356            %IF TYPE&15 # R %START
#line 356 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (15))) == (R))) goto L_0060;
                                                                //    357               %IF |VAL| <= 127 %START
#line 357 "regression-compile-tmp/hal7502.imp"
if (((_imp_IMOD(VAL)) > (127))) goto L_0061;
                                                                //    358                  PLANT INST(COPY+R<<4+TYPE&15)
#line 358 "regression-compile-tmp/hal7502.imp"
PLANTINST((((((COPY) + ((int)(((R) << (4))))))) + (((TYPE) & (15)))));
                                                                //    359                  PLANT INST(ADDI+R<<8+VAL&255) %IF VAL # 0
#line 359 "regression-compile-tmp/hal7502.imp"
if (((VAL) == (0))) goto L_0062;
#line 359 "regression-compile-tmp/hal7502.imp"
PLANTINST((((((ADDI) + ((int)(((R) << (8))))))) + (((VAL) & (255)))));
#line 359 "regression-compile-tmp/hal7502.imp"
L_0062:;
                                                                //    360               %finish %ELSE %START
#line 360 "regression-compile-tmp/hal7502.imp"
goto L_0063;
#line 360 "regression-compile-tmp/hal7502.imp"
L_0061:;
                                                                //    361                  LOAD CONST(R)
#line 361 "regression-compile-tmp/hal7502.imp"
LOADCONST(R);
                                                                //    362                  PLANT INST(ADD+R<<4+TYPE&15)
#line 362 "regression-compile-tmp/hal7502.imp"
PLANTINST((((((ADD) + ((int)(((R) << (4))))))) + (((TYPE) & (15)))));
                                                                //    363               %FINISH
#line 363 "regression-compile-tmp/hal7502.imp"
L_0063:;
                                                                //    364               CREG = R
#line 364 "regression-compile-tmp/hal7502.imp"
CREG = R;
                                                                //    365            %finish %ELSE %START
#line 365 "regression-compile-tmp/hal7502.imp"
goto L_0064;
#line 365 "regression-compile-tmp/hal7502.imp"
L_0060:;
                                                                //    366               %IF |VAL| <= 127 %START
#line 366 "regression-compile-tmp/hal7502.imp"
if (((_imp_IMOD(VAL)) > (127))) goto L_0065;
                                                                //    367                  %IF VAL # 0 %START
#line 367 "regression-compile-tmp/hal7502.imp"
if (((VAL) == (0))) goto L_0066;
                                                                //    368                     PLANT INST(ADDI+R<<8+VAL&255)
#line 368 "regression-compile-tmp/hal7502.imp"
PLANTINST((((((ADDI) + ((int)(((R) << (8))))))) + (((VAL) & (255)))));
                                                                //    369                     CREG = R
#line 369 "regression-compile-tmp/hal7502.imp"
CREG = R;
                                                                //    370                  %FINISH
#line 370 "regression-compile-tmp/hal7502.imp"
L_0066:;
                                                                //    371                  %finish %ELSE %START
#line 371 "regression-compile-tmp/hal7502.imp"
goto L_0067;
#line 371 "regression-compile-tmp/hal7502.imp"
L_0065:;
                                                                //    372                  OP = TREG
#line 372 "regression-compile-tmp/hal7502.imp"
OP = TREG();
                                                                //    373                  LOAD CONST(OP)
#line 373 "regression-compile-tmp/hal7502.imp"
LOADCONST(OP);
                                                                //    374                  TYPE = REG;  VAL = OP
#line 374 "regression-compile-tmp/hal7502.imp"
TYPE = REG;
#line 374 "regression-compile-tmp/hal7502.imp"
VAL = OP;
                                                                //    375                  RELEASE
#line 375 "regression-compile-tmp/hal7502.imp"
RELEASE();
                                                                //    376                  PLANT INST(ADD+R<<4+OP)
#line 376 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(((ADD) + ((int)(((R) << (4))))))) + (OP)));
                                                                //    377                  CREG = R
#line 377 "regression-compile-tmp/hal7502.imp"
CREG = R;
                                                                //    378                  %FINISH
#line 378 "regression-compile-tmp/hal7502.imp"
L_0067:;
                                                                //    379                  %FINISH
#line 379 "regression-compile-tmp/hal7502.imp"
L_0064:;
                                                                //    380                  TYPE = TYPE&MEMMASK+XMASK+R;  VAL = 0
#line 380 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)((((int)(((TYPE) & (MEMMASK)))) + (XMASK)))) + (R));
#line 380 "regression-compile-tmp/hal7502.imp"
VAL = 0;
                                                                //    381                  %FINISH
#line 381 "regression-compile-tmp/hal7502.imp"
L_005f:;
                                                                //    382      %IF TYPE&MEMMASK # 0 %START
#line 382 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (MEMMASK))) == (0))) goto L_0068;
                                                                //    383      PLANT INST(LOAD+R<<8+(TYPE&15)<<4+VAL)
#line 383 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)((((((LOAD) + ((int)(((R) << (8))))))) + (((((TYPE) & (15))) << (4)))))) + (VAL)));
                                                                //    384      CREG = -1
#line 384 "regression-compile-tmp/hal7502.imp"
CREG = (-1);
                                                                //    385  !   %FINISH  -- commenting out this line allows the program to compile
                                                                //    386      %finish %ELSE %START
#line 386 "regression-compile-tmp/hal7502.imp"
goto L_0069;
#line 386 "regression-compile-tmp/hal7502.imp"
L_0068:;
                                                                //    387      LOAD CONST(R)
#line 387 "regression-compile-tmp/hal7502.imp"
LOADCONST(R);
                                                                //    388      PLANT INST(LOAD+R<<8+R<<4)
#line 388 "regression-compile-tmp/hal7502.imp"
PLANTINST((((((LOAD) + ((int)(((R) << (8))))))) + (((R) << (4)))));
                                                                //    389      %FINISH
#line 389 "regression-compile-tmp/hal7502.imp"
L_0069:;
                                                                //    390      %FINISH
#line 390 "regression-compile-tmp/hal7502.imp"
L_005b:;
                                                                //    391      TYPE = REG;  VAL = R
#line 391 "regression-compile-tmp/hal7502.imp"
TYPE = REG;
#line 391 "regression-compile-tmp/hal7502.imp"
VAL = R;
                                                                //    392  %END
#line 392 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block LOADREG at level 3
                                                                //    393  
                                                                //    394  %ROUTINE LOAD TEMP
#line 394 "regression-compile-tmp/hal7502.imp"
void LOADTEMP( void )
#line 394 "regression-compile-tmp/hal7502.imp"
{
                                                                //    395      RELEASE
#line 395 "regression-compile-tmp/hal7502.imp"
RELEASE();
                                                                //    396      LOAD REG(TREG)
#line 396 "regression-compile-tmp/hal7502.imp"
LOADREG(TREG());
                                                                //    397  %END
#line 397 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block LOADTEMP at level 3
                                                                //    398  
                                                                //    399  %ROUTINE SWOP
#line 399 "regression-compile-tmp/hal7502.imp"
void SWOP( void )
#line 399 "regression-compile-tmp/hal7502.imp"
{
                                                                //    400  %INTEGER K
#line 400 "regression-compile-tmp/hal7502.imp"
int K;
                                                                //    401      K = TYPE1;  TYPE1 = TYPE;  TYPE = K
#line 401 "regression-compile-tmp/hal7502.imp"
K = TYPE1;
#line 401 "regression-compile-tmp/hal7502.imp"
TYPE1 = TYPE;
#line 401 "regression-compile-tmp/hal7502.imp"
TYPE = K;
                                                                //    402      K = VAL1;  VAL1 = VAL;  VAL = K
#line 402 "regression-compile-tmp/hal7502.imp"
K = VAL1;
#line 402 "regression-compile-tmp/hal7502.imp"
VAL1 = VAL;
#line 402 "regression-compile-tmp/hal7502.imp"
VAL = K;
                                                                //    403  %END
#line 403 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SWOP at level 3
                                                                //    404  
                                                                //    405      Q = QSTART
#line 405 "regression-compile-tmp/hal7502.imp"
Q = QSTART;
                                                                //    406  NEW:NQ = QSTART;  FREE = TEMPS
#line 406 "regression-compile-tmp/hal7502.imp"
U_1001:;
#line 406 "regression-compile-tmp/hal7502.imp"
NQ = QSTART;
#line 406 "regression-compile-tmp/hal7502.imp"
FREE = TEMPS;
                                                                //    407      TYPE = INTEGER(Q);  Q = Q+1
#line 407 "regression-compile-tmp/hal7502.imp"
TYPE = *_imp_INTEGER(Q);
#line 407 "regression-compile-tmp/hal7502.imp"
Q = (((int)(Q)) + (1));
                                                                //    408      VAL = INTEGER(Q);  Q = Q+1
#line 408 "regression-compile-tmp/hal7502.imp"
VAL = *_imp_INTEGER(Q);
#line 408 "regression-compile-tmp/hal7502.imp"
Q = (((int)(Q)) + (1));
                                                                //    409  
                                                                //    410  GET:%CYCLE
#line 410 "regression-compile-tmp/hal7502.imp"
U_1002:;
#line 410 "regression-compile-tmp/hal7502.imp"
L_006a:;
                                                                //    411        %RETURN %IF Q = QLIM
#line 411 "regression-compile-tmp/hal7502.imp"
if (((Q) != (QLIM))) goto L_006d;
#line 411 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 411 "regression-compile-tmp/hal7502.imp"
L_006d:;
                                                                //    412         K = INTEGER(Q);  Q = Q+1
#line 412 "regression-compile-tmp/hal7502.imp"
K = *_imp_INTEGER(Q);
#line 412 "regression-compile-tmp/hal7502.imp"
Q = (((int)(Q)) + (1));
                                                                //    413         ->ASS(K) %IF K < 0
#line 413 "regression-compile-tmp/hal7502.imp"
if (((K) >= (0))) goto L_006e;
#line 413 "regression-compile-tmp/hal7502.imp"
sw1_ASS_idx = K; if ((-30 <= sw1_ASS_idx) && (sw1_ASS_idx <= -1)) goto *(sw1_ASS+30)[sw1_ASS_idx];  /* Bounds=-30:-1 */ else {
   /*_imp_signal(8, 2, sw1_ASS_idx);*/
   fprintf(stderr, "%%SWITCH index ASS(%d) not in range -30:-1 at %s:%d\n",
           sw1_ASS_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__),
           (_imp_current_line != 0 ? _imp_current_line : __LINE__));
           exit(1);
}
#line 413 "regression-compile-tmp/hal7502.imp"
L_006e:;
                                                                //    414         INTEGER(NQ) = TYPE1;  INTEGER(NQ+1) = VAL1
#line 414 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(NQ) = TYPE1;
#line 414 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(NQ)) + (1))) = VAL1;
                                                                //    415         NQ = NQ+2
#line 415 "regression-compile-tmp/hal7502.imp"
NQ = (((int)(NQ)) + (2));
                                                                //    416         TYPE1 = TYPE;  VAL1 = VAL
#line 416 "regression-compile-tmp/hal7502.imp"
TYPE1 = TYPE;
#line 416 "regression-compile-tmp/hal7502.imp"
VAL1 = VAL;
                                                                //    417         TYPE = K;  VAL = INTEGER(Q);  Q = Q+1
#line 417 "regression-compile-tmp/hal7502.imp"
TYPE = K;
#line 417 "regression-compile-tmp/hal7502.imp"
VAL = *_imp_INTEGER(Q);
#line 417 "regression-compile-tmp/hal7502.imp"
Q = (((int)(Q)) + (1));
                                                                //    418      %REPEAT
#line 418 "regression-compile-tmp/hal7502.imp"
goto L_006a;
                                                                //    419  
                                                                //    420  %PREDICATE TEMP
#line 420 "regression-compile-tmp/hal7502.imp"
int /*Boolean*/ TEMP( void )
#line 420 "regression-compile-tmp/hal7502.imp"
{
                                                                //    421      %FALSE %IF TYPE1 # REG
#line 421 "regression-compile-tmp/hal7502.imp"
if (((TYPE1) == (REG))) goto L_006b;
#line 421 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 421 "regression-compile-tmp/hal7502.imp"
L_006b:;
                                                                //    422      %IF VAL1 = DREG %START
#line 422 "regression-compile-tmp/hal7502.imp"
if (((VAL1) != (DREG))) goto L_006f;
                                                                //    423      %FALSE %IF DUSE # 1
#line 423 "regression-compile-tmp/hal7502.imp"
if (((DUSE) == (1))) goto L_0070;
#line 423 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 423 "regression-compile-tmp/hal7502.imp"
L_0070:;
                                                                //    424      %finish %ELSE %START
#line 424 "regression-compile-tmp/hal7502.imp"
goto L_0071;
#line 424 "regression-compile-tmp/hal7502.imp"
L_006f:;
                                                                //    425      %FALSE %IF 1<<VAL1&TEMPS = 0
#line 425 "regression-compile-tmp/hal7502.imp"
if (((((((1) << (VAL1))) & (TEMPS))) != (0))) goto L_0072;
#line 425 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 425 "regression-compile-tmp/hal7502.imp"
L_0072:;
                                                                //    426      %FINISH
#line 426 "regression-compile-tmp/hal7502.imp"
L_0071:;
                                                                //    427      %TRUE
#line 427 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    428  %END
#line 428 "regression-compile-tmp/hal7502.imp"
} // End of block TEMP at level 3
                                                                //    429  
                                                                //    430  NOP: K = 0;                           !NOT SYMMETRIC
#line 430 "regression-compile-tmp/hal7502.imp"
U_1003:;
#line 430 "regression-compile-tmp/hal7502.imp"
K = 0;
                                                                //    431  BOP:%IF MODE <= 0 %OR (TYPE = 0 %AND TYPE1 = 0) %START
#line 431 "regression-compile-tmp/hal7502.imp"
U_1004:;
#line 431 "regression-compile-tmp/hal7502.imp"
if (((MODE) <= (0))) goto L_006c;
#line 431 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (0))) goto L_0073;
#line 431 "regression-compile-tmp/hal7502.imp"
if (((TYPE1) != (0))) goto L_0073;
#line 431 "regression-compile-tmp/hal7502.imp"
L_006c:;
                                                                //    432      FAULT('A') %IF TYPE # 0
#line 432 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (0))) goto L_0074;
#line 432 "regression-compile-tmp/hal7502.imp"
FAULT(65);
#line 432 "regression-compile-tmp/hal7502.imp"
L_0074:;
                                                                //    433      TYPE = TYPE1;  VAL = LITVAL
#line 433 "regression-compile-tmp/hal7502.imp"
TYPE = TYPE1;
#line 433 "regression-compile-tmp/hal7502.imp"
VAL = LITVAL;
                                                                //    434      %finish %ELSE %START
#line 434 "regression-compile-tmp/hal7502.imp"
goto L_0075;
#line 434 "regression-compile-tmp/hal7502.imp"
L_0073:;
                                                                //    435      %IF %NOT TEMP %OR (TYPE=REG %AND VAL=DREG %AND DUSE=1 %AND K#0) %START
#line 435 "regression-compile-tmp/hal7502.imp"
if (!(TEMP())) goto L_0076;
#line 435 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (REG))) goto L_0077;
#line 435 "regression-compile-tmp/hal7502.imp"
if (((VAL) != (DREG))) goto L_0077;
#line 435 "regression-compile-tmp/hal7502.imp"
if (((DUSE) != (1))) goto L_0077;
#line 435 "regression-compile-tmp/hal7502.imp"
if (((K) == (0))) goto L_0077;
#line 435 "regression-compile-tmp/hal7502.imp"
L_0076:;
                                                                //    436      SWOP
#line 436 "regression-compile-tmp/hal7502.imp"
SWOP();
                                                                //    437      %IF K = 0 %OR %NOT TEMP %START
#line 437 "regression-compile-tmp/hal7502.imp"
if (((K) == (0))) goto L_0078;
#line 437 "regression-compile-tmp/hal7502.imp"
if (TEMP()) goto L_0079;
#line 437 "regression-compile-tmp/hal7502.imp"
L_0078:;
                                                                //    438      LOAD TEMP;  SWOP
#line 438 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
#line 438 "regression-compile-tmp/hal7502.imp"
SWOP();
                                                                //    439      %FINISH
#line 439 "regression-compile-tmp/hal7502.imp"
L_0079:;
                                                                //    440      %FINISH
#line 440 "regression-compile-tmp/hal7502.imp"
L_0077:;
                                                                //    441      %IF OP = AND %AND TYPE = 0 %AND VAL&(\255) = 0 %START
#line 441 "regression-compile-tmp/hal7502.imp"
if (((OP) != (AND))) goto L_007a;
#line 441 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (0))) goto L_007a;
#line 441 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & ((~(255))))) != (0))) goto L_007a;
                                                                //    442      PLANT INST(ANDI+VAL1<<8+VAL)
#line 442 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(((ANDI) + ((int)(((VAL1) << (8))))))) + (VAL)));
                                                                //    443      %finish %ELSE %START
#line 443 "regression-compile-tmp/hal7502.imp"
goto L_007b;
#line 443 "regression-compile-tmp/hal7502.imp"
L_007a:;
                                                                //    444      LOAD TEMP %IF TYPE # REG
#line 444 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (REG))) goto L_007c;
#line 444 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
#line 444 "regression-compile-tmp/hal7502.imp"
L_007c:;
                                                                //    445      RELEASE
#line 445 "regression-compile-tmp/hal7502.imp"
RELEASE();
                                                                //    446      PLANT INST(OP+VAL1<<4+VAL)
#line 446 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(((OP) + ((int)(((VAL1) << (4))))))) + (VAL)));
                                                                //    447      %FINISH
#line 447 "regression-compile-tmp/hal7502.imp"
L_007b:;
                                                                //    448      TYPE = REG;  VAL = VAL1
#line 448 "regression-compile-tmp/hal7502.imp"
TYPE = REG;
#line 448 "regression-compile-tmp/hal7502.imp"
VAL = VAL1;
                                                                //    449      CREG = VAL
#line 449 "regression-compile-tmp/hal7502.imp"
CREG = VAL;
                                                                //    450      ATYPE = -1 %IF ACC = VAL
#line 450 "regression-compile-tmp/hal7502.imp"
if (((ACC) != (VAL))) goto L_007d;
#line 450 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 450 "regression-compile-tmp/hal7502.imp"
L_007d:;
                                                                //    451      ATYPE = -1 %IF ATYPE&XMASK # 0 %AND ATYPE&15 = VAL
#line 451 "regression-compile-tmp/hal7502.imp"
if (((((ATYPE) & (XMASK))) == (0))) goto L_007e;
#line 451 "regression-compile-tmp/hal7502.imp"
if (((((ATYPE) & (15))) != (VAL))) goto L_007e;
#line 451 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 451 "regression-compile-tmp/hal7502.imp"
L_007e:;
                                                                //    452      ATYPE = -1 %IF ATYPE = REG %AND AVAL = VAL
#line 452 "regression-compile-tmp/hal7502.imp"
if (((ATYPE) != (REG))) goto L_007f;
#line 452 "regression-compile-tmp/hal7502.imp"
if (((AVAL) != (VAL))) goto L_007f;
#line 452 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 452 "regression-compile-tmp/hal7502.imp"
L_007f:;
                                                                //    453      %FINISH
#line 453 "regression-compile-tmp/hal7502.imp"
L_0075:;
                                                                //    454  
                                                                //    455  POP:NQ = NQ-2
#line 455 "regression-compile-tmp/hal7502.imp"
U_1005:;
#line 455 "regression-compile-tmp/hal7502.imp"
NQ = (((int)(NQ)) - (2));
                                                                //    456      TYPE1 = INTEGER(NQ);  VAL1 = INTEGER(NQ+1)
#line 456 "regression-compile-tmp/hal7502.imp"
TYPE1 = *_imp_INTEGER(NQ);
#line 456 "regression-compile-tmp/hal7502.imp"
VAL1 = *_imp_INTEGER((((int)(NQ)) + (1)));
                                                                //    457      ->GET
#line 457 "regression-compile-tmp/hal7502.imp"
goto U_1002;
                                                                //    458  
                                                                //    459  ASS(-2):
#line 459 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_2:;
                                                                //    460      OP = SUB
#line 460 "regression-compile-tmp/hal7502.imp"
OP = SUB;
                                                                //    461      ->NOP %IF MODE > 0 %AND TYPE # 0
#line 461 "regression-compile-tmp/hal7502.imp"
if (((MODE) <= (0))) goto L_0080;
#line 461 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (0))) goto L_0080;
#line 461 "regression-compile-tmp/hal7502.imp"
goto U_1003;
#line 461 "regression-compile-tmp/hal7502.imp"
L_0080:;
                                                                //    462      TYPE1 = 0 %AND TYPE = 0 %IF MODE <= 0 %AND TYPE1 = TYPE
#line 462 "regression-compile-tmp/hal7502.imp"
if (((MODE) > (0))) goto L_0081;
#line 462 "regression-compile-tmp/hal7502.imp"
if (((TYPE1) != (TYPE))) goto L_0081;
#line 462 "regression-compile-tmp/hal7502.imp"
TYPE1 = 0;
#line 462 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 462 "regression-compile-tmp/hal7502.imp"
L_0081:;
                                                                //    463      VAL = -VAL
#line 463 "regression-compile-tmp/hal7502.imp"
VAL = (-(VAL));
                                                                //    464  ASS(-1):
#line 464 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_1:;
                                                                //    465      OP = ADD;  LITVAL = VAL1+VAL
#line 465 "regression-compile-tmp/hal7502.imp"
OP = ADD;
#line 465 "regression-compile-tmp/hal7502.imp"
LITVAL = (((int)(VAL1)) + (VAL));
                                                                //    466      ->BOP %UNLESS TYPE = 0
#line 466 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (0))) goto L_0082;
#line 466 "regression-compile-tmp/hal7502.imp"
goto U_1004;
#line 466 "regression-compile-tmp/hal7502.imp"
L_0082:;
                                                                //    467      %IF TYPE1&MEMMASK # 0 %AND MODE > 0 %START
#line 467 "regression-compile-tmp/hal7502.imp"
if (((((TYPE1) & (MEMMASK))) == (0))) goto L_0083;
#line 467 "regression-compile-tmp/hal7502.imp"
if (((MODE) <= (0))) goto L_0083;
                                                                //    468      SWOP;  LOAD TEMP;  SWOP
#line 468 "regression-compile-tmp/hal7502.imp"
SWOP();
#line 468 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
#line 468 "regression-compile-tmp/hal7502.imp"
SWOP();
                                                                //    469      %FINISH
#line 469 "regression-compile-tmp/hal7502.imp"
L_0083:;
                                                                //    470      %IF TYPE1 = REG %AND %NOT TYPE=VAL=0 %START
#line 470 "regression-compile-tmp/hal7502.imp"
if (((TYPE1) != (REG))) goto L_0084;
#line 470 "regression-compile-tmp/hal7502.imp"
if ((((TYPE) != (VAL))) || (((VAL) == (0)))) goto L_0084;
#line 470 "regression-compile-tmp/hal7502.imp"
L_0085:;
                                                                //    471      TYPE1 = XMASK+VAL1;  LITVAL = VAL
#line 471 "regression-compile-tmp/hal7502.imp"
TYPE1 = (((int)(XMASK)) + (VAL1));
#line 471 "regression-compile-tmp/hal7502.imp"
LITVAL = VAL;
                                                                //    472      %FINISH
#line 472 "regression-compile-tmp/hal7502.imp"
L_0084:;
                                                                //    473      TYPE = TYPE1;  VAL = LITVAL
#line 473 "regression-compile-tmp/hal7502.imp"
TYPE = TYPE1;
#line 473 "regression-compile-tmp/hal7502.imp"
VAL = LITVAL;
                                                                //    474      ->POP
#line 474 "regression-compile-tmp/hal7502.imp"
goto U_1005;
                                                                //    475  ASS(-6):
#line 475 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_6:;
                                                                //    476      LITVAL = VAL1<<VAL;  K = (-1)<<VAL
#line 476 "regression-compile-tmp/hal7502.imp"
LITVAL = ((VAL1) << (VAL));
#line 476 "regression-compile-tmp/hal7502.imp"
K = (((-1)) << (VAL));
                                                                //    477      VAL = 16-VAL
#line 477 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(16)) - (VAL));
                                                                //    478      ->AS7
#line 478 "regression-compile-tmp/hal7502.imp"
goto U_1006;
                                                                //    479  ASS(-7):
#line 479 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_7:;
                                                                //    480      LITVAL = VAL1>>VAL;  K = (16_FFFF)>>VAL
#line 480 "regression-compile-tmp/hal7502.imp"
LITVAL = (int)((((unsigned int)(VAL1)) >> (VAL)));
#line 480 "regression-compile-tmp/hal7502.imp"
K = (int)((((unsigned int)(65535)) >> (VAL)));
                                                                //    481  AS7:K=0 %AND ->BOP %IF MODE <= 0
#line 481 "regression-compile-tmp/hal7502.imp"
U_1006:;
#line 481 "regression-compile-tmp/hal7502.imp"
if (((MODE) > (0))) goto L_0086;
#line 481 "regression-compile-tmp/hal7502.imp"
K = 0;
#line 481 "regression-compile-tmp/hal7502.imp"
goto U_1004;
#line 481 "regression-compile-tmp/hal7502.imp"
L_0086:;
                                                                //    482      FAULT('I') %IF TYPE # 0 %OR VAL&(\15) # 0
#line 482 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (0))) goto L_0087;
#line 482 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & ((~(15))))) == (0))) goto L_0088;
#line 482 "regression-compile-tmp/hal7502.imp"
L_0087:;
#line 482 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 482 "regression-compile-tmp/hal7502.imp"
L_0088:;
                                                                //    483      %IF %NOT TEMP %START
#line 483 "regression-compile-tmp/hal7502.imp"
if (TEMP()) goto L_0089;
                                                                //    484      SWOP;  LOAD TEMP;  SWOP
#line 484 "regression-compile-tmp/hal7502.imp"
SWOP();
#line 484 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
#line 484 "regression-compile-tmp/hal7502.imp"
SWOP();
                                                                //    485      %FINISH
#line 485 "regression-compile-tmp/hal7502.imp"
L_0089:;
                                                                //    486      OP = ROT+VAL1<<8+VAL1
#line 486 "regression-compile-tmp/hal7502.imp"
OP = (((int)(((ROT) + ((int)(((VAL1) << (8))))))) + (VAL1));
                                                                //    487      PLANT INST(OP+16_0070) %IF VAL > 8
#line 487 "regression-compile-tmp/hal7502.imp"
if (((VAL) <= (8))) goto L_008a;
#line 487 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(OP)) + (112)));
#line 487 "regression-compile-tmp/hal7502.imp"
L_008a:;
                                                                //    488      PLANT INST(OP+(VAL-1)<<4) %IF VAL # 0
#line 488 "regression-compile-tmp/hal7502.imp"
if (((VAL) == (0))) goto L_008b;
#line 488 "regression-compile-tmp/hal7502.imp"
PLANTINST(((OP) + ((int)((((((int)(VAL)) - (1))) << (4))))));
#line 488 "regression-compile-tmp/hal7502.imp"
L_008b:;
                                                                //    489      TYPE = 0;  VAL = K;  K = -3
#line 489 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 489 "regression-compile-tmp/hal7502.imp"
VAL = K;
#line 489 "regression-compile-tmp/hal7502.imp"
K = (-3);
                                                                //    490  ASS(-3):
#line 490 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_3:;
                                                                //    491      OP = AND;  LITVAL = VAL1&VAL
#line 491 "regression-compile-tmp/hal7502.imp"
OP = AND;
#line 491 "regression-compile-tmp/hal7502.imp"
LITVAL = ((VAL1) & (VAL));
                                                                //    492      ->BOP
#line 492 "regression-compile-tmp/hal7502.imp"
goto U_1004;
                                                                //    493  ASS(-4):
#line 493 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_4:;
                                                                //    494      OP = OR;  LITVAL = VAL1!VAL
#line 494 "regression-compile-tmp/hal7502.imp"
OP = OR;
#line 494 "regression-compile-tmp/hal7502.imp"
LITVAL = ((VAL1) | (VAL));
                                                                //    495      ->BOP
#line 495 "regression-compile-tmp/hal7502.imp"
goto U_1004;
                                                                //    496  ASS(-5):
#line 496 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_5:;
                                                                //    497      OP = XOR;  LITVAL = VAL1!!VAL
#line 497 "regression-compile-tmp/hal7502.imp"
OP = XOR;
#line 497 "regression-compile-tmp/hal7502.imp"
LITVAL = ((VAL1) ^ (VAL));
                                                                //    498      ->BOP
#line 498 "regression-compile-tmp/hal7502.imp"
goto U_1004;
                                                                //    499  
                                                                //    500  ASS(-8):                              !TYPE_VAL
#line 500 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_8:;
                                                                //    501      TYPE = VAL1
#line 501 "regression-compile-tmp/hal7502.imp"
TYPE = VAL1;
                                                                //    502      TYPE = 0 %IF TYPE&OPMASK = MACRO; !SAFETY
#line 502 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (OPMASK))) != (MACRO))) goto L_008c;
#line 502 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 502 "regression-compile-tmp/hal7502.imp"
L_008c:;
                                                                //    503      TYPE = 0 %IF TYPE&(OPMASK+FMASK) = FMASK
#line 503 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & ((((int)(OPMASK)) + (FMASK))))) != (FMASK))) goto L_008d;
#line 503 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 503 "regression-compile-tmp/hal7502.imp"
L_008d:;
                                                                //    504      ->POP
#line 504 "regression-compile-tmp/hal7502.imp"
goto U_1005;
                                                                //    505  
                                                                //    506  ASS(-11):                             !COMPARE
#line 506 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_11:;
                                                                //    507      K = INTEGER(Q);  Q = Q+1
#line 507 "regression-compile-tmp/hal7502.imp"
K = *_imp_INTEGER(Q);
#line 507 "regression-compile-tmp/hal7502.imp"
Q = (((int)(Q)) + (1));
                                                                //    508      %IF MODE <= 0 %START
#line 508 "regression-compile-tmp/hal7502.imp"
if (((MODE) > (0))) goto L_008e;
                                                                //    509      LITVAL = 2_01011000
#line 509 "regression-compile-tmp/hal7502.imp"
LITVAL = 88;
                                                                //    510      LITVAL = 2_01100100 %IF VAL < 0
#line 510 "regression-compile-tmp/hal7502.imp"
if (((VAL) >= (0))) goto L_008f;
#line 510 "regression-compile-tmp/hal7502.imp"
LITVAL = 100;
#line 510 "regression-compile-tmp/hal7502.imp"
L_008f:;
                                                                //    511      LITVAL = 2_10101000 %IF VAL1 > VAL
#line 511 "regression-compile-tmp/hal7502.imp"
if (((VAL1) <= (VAL))) goto L_0090;
#line 511 "regression-compile-tmp/hal7502.imp"
LITVAL = 168;
#line 511 "regression-compile-tmp/hal7502.imp"
L_0090:;
                                                                //    512      K = LITVAL>>K&1;
#line 512 "regression-compile-tmp/hal7502.imp"
K = (((int)((((unsigned int)(LITVAL)) >> (K)))) & (1));
                                                                //    513      %finish %ELSE  %START
#line 513 "regression-compile-tmp/hal7502.imp"
goto L_0091;
#line 513 "regression-compile-tmp/hal7502.imp"
L_008e:;
                                                                //    514      %UNLESS K&6=4 %AND -256<VAL<0 %AND TYPE&XMASK#0 %START
#line 514 "regression-compile-tmp/hal7502.imp"
if (((((K) & (6))) != (4))) goto L_0092;
#line 514 "regression-compile-tmp/hal7502.imp"
if (((((-256)) >= (VAL))) || (((VAL) >= (0)))) goto L_0092;
#line 514 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (XMASK))) != (0))) goto L_0093;
#line 514 "regression-compile-tmp/hal7502.imp"
L_0092:;
                                                                //    515      LOAD TEMP %IF TYPE # REG
#line 515 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (REG))) goto L_0094;
#line 515 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
#line 515 "regression-compile-tmp/hal7502.imp"
L_0094:;
                                                                //    516      PLANT INST(COPY+VAL<<4+VAL) %IF CREG # VAL
#line 516 "regression-compile-tmp/hal7502.imp"
if (((CREG) == (VAL))) goto L_0095;
#line 516 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(((COPY) + ((int)(((VAL) << (4))))))) + (VAL)));
#line 516 "regression-compile-tmp/hal7502.imp"
L_0095:;
                                                                //    517      CREG = VAL
#line 517 "regression-compile-tmp/hal7502.imp"
CREG = VAL;
                                                                //    518      %finish %ELSE  %START
#line 518 "regression-compile-tmp/hal7502.imp"
goto L_0096;
#line 518 "regression-compile-tmp/hal7502.imp"
L_0093:;
                                                                //    519      PLANT INST(SKIDI+(TYPE&15)<<8-VAL)
#line 519 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)(((SKIDI) + ((int)(((((TYPE) & (15))) << (8))))))) - (VAL)));
                                                                //    520      K = K+4;                    !8,9
#line 520 "regression-compile-tmp/hal7502.imp"
K = (((int)(K)) + (4));
                                                                //    521      %FINISH
#line 521 "regression-compile-tmp/hal7502.imp"
L_0096:;
                                                                //    522      %FINISH
#line 522 "regression-compile-tmp/hal7502.imp"
L_0091:;
                                                                //    523      COND = K
#line 523 "regression-compile-tmp/hal7502.imp"
COND = K;
                                                                //    524      ->GET
#line 524 "regression-compile-tmp/hal7502.imp"
goto U_1002;
                                                                //    525  
                                                                //    526  ASS(-12):                             !TEST CC
#line 526 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_12:;
                                                                //    527      COND = VAL!!1
#line 527 "regression-compile-tmp/hal7502.imp"
COND = ((VAL) ^ (1));
                                                                //    528      ->GET
#line 528 "regression-compile-tmp/hal7502.imp"
goto U_1002;
                                                                //    529  
                                                                //    530  ASS(-13):                             !AND
#line 530 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_13:;
                                                                //    531      %IF MODE > 0 %START
#line 531 "regression-compile-tmp/hal7502.imp"
if (((MODE) <= (0))) goto L_0097;
                                                                //    532      SET JUMP(16_1000)
#line 532 "regression-compile-tmp/hal7502.imp"
SETJUMP(4096);
                                                                //    533      %finish %ELSE  %START
#line 533 "regression-compile-tmp/hal7502.imp"
goto L_0098;
#line 533 "regression-compile-tmp/hal7502.imp"
L_0097:;
                                                                //    534      %RETURN %IF COND = 0
#line 534 "regression-compile-tmp/hal7502.imp"
if (((COND) != (0))) goto L_0099;
#line 534 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 534 "regression-compile-tmp/hal7502.imp"
L_0099:;
                                                                //    535      %FINISH
#line 535 "regression-compile-tmp/hal7502.imp"
L_0098:;
                                                                //    536      %RETURN %IF Q = QLIM
#line 536 "regression-compile-tmp/hal7502.imp"
if (((Q) != (QLIM))) goto L_009a;
#line 536 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 536 "regression-compile-tmp/hal7502.imp"
L_009a:;
                                                                //    537      ->NEW
#line 537 "regression-compile-tmp/hal7502.imp"
goto U_1001;
                                                                //    538  
                                                                //    539  ASS(-14):                             !OR
#line 539 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_14:;
                                                                //    540      %IF MODE > 0 %START
#line 540 "regression-compile-tmp/hal7502.imp"
if (((MODE) <= (0))) goto L_009b;
                                                                //    541      COND = COND!!1
#line 541 "regression-compile-tmp/hal7502.imp"
COND = ((COND) ^ (1));
                                                                //    542      SET JUMP(16_3000)
#line 542 "regression-compile-tmp/hal7502.imp"
SETJUMP(12288);
                                                                //    543      %finish %ELSE  %START
#line 543 "regression-compile-tmp/hal7502.imp"
goto L_009c;
#line 543 "regression-compile-tmp/hal7502.imp"
L_009b:;
                                                                //    544      %RETURN %IF COND # 0
#line 544 "regression-compile-tmp/hal7502.imp"
if (((COND) == (0))) goto L_009d;
#line 544 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 544 "regression-compile-tmp/hal7502.imp"
L_009d:;
                                                                //    545      %FINISH
#line 545 "regression-compile-tmp/hal7502.imp"
L_009c:;
                                                                //    546      ->NEW
#line 546 "regression-compile-tmp/hal7502.imp"
goto U_1001;
                                                                //    547  
                                                                //    548  ASS(-15):                             !IF
#line 548 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_15:;
                                                                //    549      SET JUMP(16_2000)
#line 549 "regression-compile-tmp/hal7502.imp"
SETJUMP(8192);
                                                                //    550      %RETURN
#line 550 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    551  
                                                                //    552  ASS(-16):                             !ELSE
#line 552 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_16:;
                                                                //    553      COND = 1
#line 553 "regression-compile-tmp/hal7502.imp"
COND = 1;
                                                                //    554      SET JUMP(16_4000)
#line 554 "regression-compile-tmp/hal7502.imp"
SETJUMP(16384);
                                                                //    555      %RETURN
#line 555 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    556  
                                                                //    557  ASS(-17):                             !IF AFTER ELSE
#line 557 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_17:;
                                                                //    558      SET JUMP(16_6000)
#line 558 "regression-compile-tmp/hal7502.imp"
SETJUMP(24576);
                                                                //    559      %RETURN
#line 559 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    560  
                                                                //    561  ASS(-18):                             !MACCALL IF
#line 561 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_18:;
                                                                //    562      SET JUMP(16_8000)
#line 562 "regression-compile-tmp/hal7502.imp"
SETJUMP(32768);
                                                                //    563      %RETURN
#line 563 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    564  
                                                                //    565  ASS(-20):                             !HASH
#line 565 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_20:;
                                                                //    566      TYPE = TYPE&(UMASK+63)
#line 566 "regression-compile-tmp/hal7502.imp"
TYPE = ((TYPE) & ((((int)(UMASK)) + (63))));
                                                                //    567      ->GET
#line 567 "regression-compile-tmp/hal7502.imp"
goto U_1002;
                                                                //    568  
                                                                //    569  ASS(-21):                             !INDEX
#line 569 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_21:;
                                                                //    570      FAULT('I') %IF TYPE1&REGXMASK # 0
#line 570 "regression-compile-tmp/hal7502.imp"
if (((((TYPE1) & (REGXMASK))) == (0))) goto L_009e;
#line 570 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 570 "regression-compile-tmp/hal7502.imp"
L_009e:;
                                                                //    571      %IF TYPE&MEMMASK # 0 %START
#line 571 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (MEMMASK))) == (0))) goto L_009f;
                                                                //    572      %IF MODE > 0 %THEN LOAD TEMP %ELSE FAULT('A')
#line 572 "regression-compile-tmp/hal7502.imp"
if (((MODE) <= (0))) goto L_00a0;
#line 572 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
#line 572 "regression-compile-tmp/hal7502.imp"
goto L_00a1;
#line 572 "regression-compile-tmp/hal7502.imp"
L_00a0:;
#line 572 "regression-compile-tmp/hal7502.imp"
FAULT(65);
#line 572 "regression-compile-tmp/hal7502.imp"
L_00a1:;
                                                                //    573      %FINISH
#line 573 "regression-compile-tmp/hal7502.imp"
L_009f:;
                                                                //    574      %IF TYPE = REG %START
#line 574 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (REG))) goto L_00a2;
                                                                //    575      TYPE = XMASK+VAL;  VAL = 0
#line 575 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)(XMASK)) + (VAL));
#line 575 "regression-compile-tmp/hal7502.imp"
VAL = 0;
                                                                //    576      %FINISH
#line 576 "regression-compile-tmp/hal7502.imp"
L_00a2:;
                                                                //    577      FAULT('I') %IF TYPE1&TYPE&RELMASK # 0
#line 577 "regression-compile-tmp/hal7502.imp"
if (((((((TYPE1) & (TYPE))) & (RELMASK))) == (0))) goto L_00a3;
#line 577 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 577 "regression-compile-tmp/hal7502.imp"
L_00a3:;
                                                                //    578      TYPE = TYPE1!TYPE!MEMMASK;  VAL = VAL1+VAL
#line 578 "regression-compile-tmp/hal7502.imp"
TYPE = ((((TYPE1) | (TYPE))) | (MEMMASK));
#line 578 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(VAL1)) + (VAL));
                                                                //    579      ->POP
#line 579 "regression-compile-tmp/hal7502.imp"
goto U_1005;
                                                                //    580  
                                                                //    581  ASS(-22):                             !MINST SEPARATOR
#line 581 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_22:;
                                                                //    582      COMBINE
#line 582 "regression-compile-tmp/hal7502.imp"
COMBINE();
                                                                //    583      ->POP
#line 583 "regression-compile-tmp/hal7502.imp"
goto U_1005;
                                                                //    584  
                                                                //    585  ASS(-23):                             !PLANT INST
#line 585 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_23:;
                                                                //    586      MODE = 1
#line 586 "regression-compile-tmp/hal7502.imp"
MODE = 1;
                                                                //    587      PLANT INST(VAL)
#line 587 "regression-compile-tmp/hal7502.imp"
PLANTINST(VAL);
                                                                //    588      CREG = -1;  ATYPE = -1
#line 588 "regression-compile-tmp/hal7502.imp"
CREG = (-1);
#line 588 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
                                                                //    589      %RETURN
#line 589 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    590  
                                                                //    591  ASS(-24):                             !LOAD
#line 591 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_24:;
                                                                //    592      LOAD TEMP %IF TYPE # REG
#line 592 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (REG))) goto L_00a4;
#line 592 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
#line 592 "regression-compile-tmp/hal7502.imp"
L_00a4:;
                                                                //    593      Q = QBASE
#line 593 "regression-compile-tmp/hal7502.imp"
Q = QBASE;
                                                                //    594      ->GET
#line 594 "regression-compile-tmp/hal7502.imp"
goto U_1002;
                                                                //    595  
                                                                //    596  ASS(-25):                             !STORE (TYPE1,VAL1 -> TYPE,VAL)
#line 596 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_25:;
                                                                //    597      %IF TYPE = REG %START
#line 597 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (REG))) goto L_00a5;
                                                                //    598      SWOP %AND LOAD REG(VAL1) %IF VAL1 # VAL
#line 598 "regression-compile-tmp/hal7502.imp"
if (((VAL1) == (VAL))) goto L_00a6;
#line 598 "regression-compile-tmp/hal7502.imp"
SWOP();
#line 598 "regression-compile-tmp/hal7502.imp"
LOADREG(VAL1);
#line 598 "regression-compile-tmp/hal7502.imp"
L_00a6:;
                                                                //    599      %finish %ELSE  %START
#line 599 "regression-compile-tmp/hal7502.imp"
goto L_00a7;
#line 599 "regression-compile-tmp/hal7502.imp"
L_00a5:;
                                                                //    600      ATYPE = -1 %IF ATYPE&MEMMASK # 0
#line 600 "regression-compile-tmp/hal7502.imp"
if (((((ATYPE) & (MEMMASK))) == (0))) goto L_00a8;
#line 600 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 600 "regression-compile-tmp/hal7502.imp"
L_00a8:;
                                                                //    601      %IF VAL1 = ACC %AND ATYPE < 0 %START
#line 601 "regression-compile-tmp/hal7502.imp"
if (((VAL1) != (ACC))) goto L_00a9;
#line 601 "regression-compile-tmp/hal7502.imp"
if (((ATYPE) >= (0))) goto L_00a9;
                                                                //    602      K = TYPE&15
#line 602 "regression-compile-tmp/hal7502.imp"
K = ((TYPE) & (15));
                                                                //    603      ATYPE = TYPE %AND AVAL = VAL %IF TYPE&XMASK = 0 %OR 1<<K&TEMPS = 0
#line 603 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (XMASK))) == (0))) goto L_00aa;
#line 603 "regression-compile-tmp/hal7502.imp"
if (((((((1) << (K))) & (TEMPS))) != (0))) goto L_00ab;
#line 603 "regression-compile-tmp/hal7502.imp"
L_00aa:;
#line 603 "regression-compile-tmp/hal7502.imp"
ATYPE = TYPE;
#line 603 "regression-compile-tmp/hal7502.imp"
AVAL = VAL;
#line 603 "regression-compile-tmp/hal7502.imp"
L_00ab:;
                                                                //    604      %FINISH
#line 604 "regression-compile-tmp/hal7502.imp"
L_00a9:;
                                                                //    605      %IF TYPE&XMASK = 0 %OR VAL&(\3) # 0 %START
#line 605 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (XMASK))) == (0))) goto L_00ac;
#line 605 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & ((~(3))))) == (0))) goto L_00ad;
#line 605 "regression-compile-tmp/hal7502.imp"
L_00ac:;
                                                                //    606      TYPE = TYPE&(\MEMMASK)
#line 606 "regression-compile-tmp/hal7502.imp"
TYPE = ((TYPE) & ((~(MEMMASK))));
                                                                //    607      LOAD TEMP
#line 607 "regression-compile-tmp/hal7502.imp"
LOADTEMP();
                                                                //    608      TYPE = MEMMASK+XMASK+VAL;  VAL = 0
#line 608 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)((((int)(MEMMASK)) + (XMASK)))) + (VAL));
#line 608 "regression-compile-tmp/hal7502.imp"
VAL = 0;
                                                                //    609      %FINISH
#line 609 "regression-compile-tmp/hal7502.imp"
L_00ad:;
                                                                //    610      PLANT INST(STORE+VAL1<<8+(TYPE&15)<<4+VAL)
#line 610 "regression-compile-tmp/hal7502.imp"
PLANTINST((((int)((((((STORE) + ((int)(((VAL1) << (8))))))) + (((((TYPE) & (15))) << (4)))))) + (VAL)));
                                                                //    611      %FINISH
#line 611 "regression-compile-tmp/hal7502.imp"
L_00a7:;
                                                                //    612      %RETURN
#line 612 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    613  
                                                                //    614  ASS(-26):                             !JUMP
#line 614 "regression-compile-tmp/hal7502.imp"
sw1_ASS_M_26:;
                                                                //    615      SET JUMP(16_1000) %IF INTEGER(NP)&16_F000 = 16_3000; !OR
#line 615 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (61440))) != (12288))) goto L_00ae;
#line 615 "regression-compile-tmp/hal7502.imp"
SETJUMP(4096);
#line 615 "regression-compile-tmp/hal7502.imp"
L_00ae:;
                                                                //    616      TYPE = TYPE!MEMMASK %IF TYPE # REG
#line 616 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (REG))) goto L_00af;
#line 616 "regression-compile-tmp/hal7502.imp"
TYPE = ((TYPE) | (MEMMASK));
#line 616 "regression-compile-tmp/hal7502.imp"
L_00af:;
                                                                //    617      %IF TYPE&(\UMASK) = LOCTYPE %START
#line 617 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & ((~(UMASK))))) != (LOCTYPE))) goto L_00b0;
                                                                //    618         PLANT JUMP
#line 618 "regression-compile-tmp/hal7502.imp"
PLANTJUMP();
                                                                //    619      %finish %ELSE  %START
#line 619 "regression-compile-tmp/hal7502.imp"
goto L_00b1;
#line 619 "regression-compile-tmp/hal7502.imp"
L_00b0:;
                                                                //    620      TYPE = XMASK+VAL %AND VAL=0 %IF TYPE = REG
#line 620 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (REG))) goto L_00b2;
#line 620 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)(XMASK)) + (VAL));
#line 620 "regression-compile-tmp/hal7502.imp"
VAL = 0;
#line 620 "regression-compile-tmp/hal7502.imp"
L_00b2:;
                                                                //    621      FAULT('I') %IF TYPE&XMASK = 0 %OR VAL&(\15) # 0
#line 621 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (XMASK))) == (0))) goto L_00b3;
#line 621 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & ((~(15))))) == (0))) goto L_00b4;
#line 621 "regression-compile-tmp/hal7502.imp"
L_00b3:;
#line 621 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 621 "regression-compile-tmp/hal7502.imp"
L_00b4:;
                                                                //    622      %IF COND&8 # 0 %START
#line 622 "regression-compile-tmp/hal7502.imp"
if (((((COND) & (8))) == (0))) goto L_00b5;
                                                                //    623      PLANT(SKIP) %IF COND = 8
#line 623 "regression-compile-tmp/hal7502.imp"
if (((COND) != (8))) goto L_00b6;
#line 623 "regression-compile-tmp/hal7502.imp"
PLANT(SKIP);
#line 623 "regression-compile-tmp/hal7502.imp"
L_00b6:;
                                                                //    624      COND = 1
#line 624 "regression-compile-tmp/hal7502.imp"
COND = 1;
                                                                //    625      %FINISH
#line 625 "regression-compile-tmp/hal7502.imp"
L_00b5:;
                                                                //    626      PLANT(BOCR+COND<<8+(TYPE&15)<<4+VAL)
#line 626 "regression-compile-tmp/hal7502.imp"
PLANT((((int)((((((BOCR) + ((int)(((COND) << (8))))))) + (((((TYPE) & (15))) << (4)))))) + (VAL)));
                                                                //    627      %FINISH
#line 627 "regression-compile-tmp/hal7502.imp"
L_00b1:;
                                                                //    628      COND = 0
#line 628 "regression-compile-tmp/hal7502.imp"
COND = 0;
                                                                //    629      %RETURN
#line 629 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    630  %END
#line 630 "regression-compile-tmp/hal7502.imp"
return;
sw1_ASS_M_30:;
sw1_ASS_M_29:;
sw1_ASS_M_28:;
sw1_ASS_M_27:;
sw1_ASS_M_19:;
sw1_ASS_M_10:;
sw1_ASS_M_9:;
/*_imp_signal(6,3,sw1_ASS_idx,"SWITCH LABEL NOT SET - sw1_ASS");*/
fprintf(stderr, "%%SWITCH LABEL NOT SET - sw1_ASS(%d): at line %s:%d", sw1_ASS_idx, (_imp_current_file != 0 ? _imp_current_file : __FILE__), (_imp_current_line != 0 ? _imp_current_line : __LINE__));
exit(1);
} // End of block ASSEMBLE at level 2
                                                                //    631  
                                                                //    632  %ROUTINE GET SYM
#line 632 "regression-compile-tmp/hal7502.imp"
void GETSYM( void )
#line 632 "regression-compile-tmp/hal7502.imp"
{
                                                                //    633      %CYCLE
#line 633 "regression-compile-tmp/hal7502.imp"
L_00b7:;
                                                                //    634      SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
#line 634 "regression-compile-tmp/hal7502.imp"
SYM = CHAR(GETPOS);
#line 634 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (1));
                                                                //    635      %RETURN %IF SYM # ' '
#line 635 "regression-compile-tmp/hal7502.imp"
if (((SYM) == (32))) goto L_00ba;
#line 635 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 635 "regression-compile-tmp/hal7502.imp"
L_00ba:;
                                                                //    636      %REPEAT
#line 636 "regression-compile-tmp/hal7502.imp"
goto L_00b7;
                                                                //    637  %END
#line 637 "regression-compile-tmp/hal7502.imp"
return;
} // End of block GETSYM at level 2
                                                                //    638  
                                                                //    639  %PREDICATE S(%INTEGER K)
#line 639 "regression-compile-tmp/hal7502.imp"
int /*Boolean*/ S( int K )
#line 639 "regression-compile-tmp/hal7502.imp"
{
                                                                //    640      %FALSE %UNLESS K = SYM
#line 640 "regression-compile-tmp/hal7502.imp"
if (((K) == (SYM))) goto L_00b8;
#line 640 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 640 "regression-compile-tmp/hal7502.imp"
L_00b8:;
                                                                //    641      GET SYM
#line 641 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    642      %TRUE
#line 642 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    643  %END
#line 643 "regression-compile-tmp/hal7502.imp"
} // End of block S at level 2
                                                                //    644  
                                                                //    645  %PREDICATE SS(%INTEGER K)
#line 645 "regression-compile-tmp/hal7502.imp"
int /*Boolean*/ SS( int K )
#line 645 "regression-compile-tmp/hal7502.imp"
{
                                                                //    646      %FALSE %UNLESS K = SYM = CHAR(GETPOS)
#line 646 "regression-compile-tmp/hal7502.imp"
if (({int tmp1 = K, tmp2 = SYM, tmp3 = CHAR(GETPOS); (tmp1 != tmp2) || (tmp2 == tmp3);})) goto L_00bb;
#line 646 "regression-compile-tmp/hal7502.imp"
L_00b9:;
#line 646 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 646 "regression-compile-tmp/hal7502.imp"
L_00bb:;
                                                                //    647      GETPOS = GETPOS+1
#line 647 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (1));
                                                                //    648      GET SYM
#line 648 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    649      %TRUE
#line 649 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    650  %END
#line 650 "regression-compile-tmp/hal7502.imp"
} // End of block SS at level 2
                                                                //    651  
                                                                //    652  %PREDICATE TAG
#line 652 "regression-compile-tmp/hal7502.imp"
int /*Boolean*/ TAG( void )
#line 652 "regression-compile-tmp/hal7502.imp"
{
                                                                //    653  %INTEGER J,K
#line 653 "regression-compile-tmp/hal7502.imp"
int J;
#line 653 "regression-compile-tmp/hal7502.imp"
int K;
                                                                //    654      %ROUTINE CODE SYM
#line 654 "regression-compile-tmp/hal7502.imp"
void CODESYM( void )
#line 654 "regression-compile-tmp/hal7502.imp"
{
                                                                //    655      SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
#line 655 "regression-compile-tmp/hal7502.imp"
SYM = CHAR(GETPOS);
#line 655 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (1));
                                                                //    656      K = SYM-'0'
#line 656 "regression-compile-tmp/hal7502.imp"
K = (((int)(SYM)) - (48));
                                                                //    657      %IF K >= 0 %START
#line 657 "regression-compile-tmp/hal7502.imp"
if (((K) < (0))) goto L_00bc;
                                                                //    658      TERM = -1 %AND %RETURN %IF K < 10
#line 658 "regression-compile-tmp/hal7502.imp"
if (((K) >= (10))) goto L_00bd;
#line 658 "regression-compile-tmp/hal7502.imp"
TERM = (-1);
#line 658 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 658 "regression-compile-tmp/hal7502.imp"
L_00bd:;
                                                                //    659      K = SYM-'A'
#line 659 "regression-compile-tmp/hal7502.imp"
K = (((int)(SYM)) - (65));
                                                                //    660      %RETURN %IF K >= 0 %AND K < 26 %AND TERM = 0
#line 660 "regression-compile-tmp/hal7502.imp"
if (((K) < (0))) goto L_00be;
#line 660 "regression-compile-tmp/hal7502.imp"
if (((K) >= (26))) goto L_00be;
#line 660 "regression-compile-tmp/hal7502.imp"
if (((TERM) != (0))) goto L_00be;
#line 660 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 660 "regression-compile-tmp/hal7502.imp"
L_00be:;
                                                                //    661      %FINISH
#line 661 "regression-compile-tmp/hal7502.imp"
L_00bc:;
                                                                //    662      TERM = SYM
#line 662 "regression-compile-tmp/hal7502.imp"
TERM = SYM;
                                                                //    663      %END
#line 663 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block CODESYM at level 3
                                                                //    664      %ROUTINE PACK TRIPLE
#line 664 "regression-compile-tmp/hal7502.imp"
void PACKTRIPLE( void )
#line 664 "regression-compile-tmp/hal7502.imp"
{
                                                                //    665      ->T1 %IF TERM < 0
#line 665 "regression-compile-tmp/hal7502.imp"
if (((TERM) >= (0))) goto L_00bf;
#line 665 "regression-compile-tmp/hal7502.imp"
goto U_1007;
#line 665 "regression-compile-tmp/hal7502.imp"
L_00bf:;
                                                                //    666      J = ((K<<5+K)<<1+K)<<4+K+1111; !K*1073+1111
#line 666 "regression-compile-tmp/hal7502.imp"
J = (((int)((((int)((((((int)((((((int)(((K) << (5)))) + (K))) << (1)))) + (K))) << (4)))) + (K)))) + (1111));
                                                                //    667      CODE SYM
#line 667 "regression-compile-tmp/hal7502.imp"
CODESYM();
                                                                //    668      ->T2 %IF TERM # 0
#line 668 "regression-compile-tmp/hal7502.imp"
if (((TERM) == (0))) goto L_00c0;
#line 668 "regression-compile-tmp/hal7502.imp"
goto U_1008;
#line 668 "regression-compile-tmp/hal7502.imp"
L_00c0:;
                                                                //    669      J = (K<<3+K)<<2+K+111+J;       !J+K*37+111
#line 669 "regression-compile-tmp/hal7502.imp"
J = (((int)((((int)((((int)((((((int)(((K) << (3)))) + (K))) << (2)))) + (K)))) + (111)))) + (J));
                                                                //    670      CODE SYM
#line 670 "regression-compile-tmp/hal7502.imp"
CODESYM();
                                                                //    671      ->T3 %IF TERM # 0
#line 671 "regression-compile-tmp/hal7502.imp"
if (((TERM) == (0))) goto L_00c1;
#line 671 "regression-compile-tmp/hal7502.imp"
goto U_1009;
#line 671 "regression-compile-tmp/hal7502.imp"
L_00c1:;
                                                                //    672      J = J+K+11
#line 672 "regression-compile-tmp/hal7502.imp"
J = (((int)((((int)(J)) + (K)))) + (11));
                                                                //    673      CODE SYM
#line 673 "regression-compile-tmp/hal7502.imp"
CODESYM();
                                                                //    674      %RETURN
#line 674 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    675  T1: J = ((K<<1+K)<<1+K)<<4-K+1;    !K*111+1
#line 675 "regression-compile-tmp/hal7502.imp"
U_1007:;
#line 675 "regression-compile-tmp/hal7502.imp"
J = (((int)((((int)((((((int)((((((int)(((K) << (1)))) + (K))) << (1)))) + (K))) << (4)))) - (K)))) + (1));
                                                                //    676      CODE SYM
#line 676 "regression-compile-tmp/hal7502.imp"
CODESYM();
                                                                //    677  T2: %RETURN %IF TERM > 0
#line 677 "regression-compile-tmp/hal7502.imp"
U_1008:;
#line 677 "regression-compile-tmp/hal7502.imp"
if (((TERM) <= (0))) goto L_00c2;
#line 677 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 677 "regression-compile-tmp/hal7502.imp"
L_00c2:;
                                                                //    678      J = (K<<2+K)<<1+K+1+J;         !J+K*11+1
#line 678 "regression-compile-tmp/hal7502.imp"
J = (((int)((((int)((((int)((((((int)(((K) << (2)))) + (K))) << (1)))) + (K)))) + (1)))) + (J));
                                                                //    679      CODE SYM
#line 679 "regression-compile-tmp/hal7502.imp"
CODESYM();
                                                                //    680  T3: %RETURN %IF TERM > 0
#line 680 "regression-compile-tmp/hal7502.imp"
U_1009:;
#line 680 "regression-compile-tmp/hal7502.imp"
if (((TERM) <= (0))) goto L_00c3;
#line 680 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 680 "regression-compile-tmp/hal7502.imp"
L_00c3:;
                                                                //    681      J = J+K+1
#line 681 "regression-compile-tmp/hal7502.imp"
J = (((int)((((int)(J)) + (K)))) + (1));
                                                                //    682      CODE SYM
#line 682 "regression-compile-tmp/hal7502.imp"
CODESYM();
                                                                //    683      %END
#line 683 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block PACKTRIPLE at level 3
                                                                //    684      K = SYM-'A'
#line 684 "regression-compile-tmp/hal7502.imp"
K = (((int)(SYM)) - (65));
                                                                //    685      %FALSE %UNLESS K >= 0 %AND K < 26
#line 685 "regression-compile-tmp/hal7502.imp"
if (((K) < (0))) goto L_00c4;
#line 685 "regression-compile-tmp/hal7502.imp"
if (((K) < (26))) goto L_00c5;
#line 685 "regression-compile-tmp/hal7502.imp"
L_00c4:;
#line 685 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 685 "regression-compile-tmp/hal7502.imp"
L_00c5:;
                                                                //    686      %FALSE %IF SYM = 'X' %AND CHAR(GETPOS)&128 # 0
#line 686 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (88))) goto L_00c6;
#line 686 "regression-compile-tmp/hal7502.imp"
if (((((CHAR(GETPOS)) & (128))) == (0))) goto L_00c6;
#line 686 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 686 "regression-compile-tmp/hal7502.imp"
L_00c6:;
                                                                //    687      TERM = 0
#line 687 "regression-compile-tmp/hal7502.imp"
TERM = 0;
                                                                //    688      PACK TRIPLE
#line 688 "regression-compile-tmp/hal7502.imp"
PACKTRIPLE();
                                                                //    689      TAG1 = J;  J = 0
#line 689 "regression-compile-tmp/hal7502.imp"
TAG1 = J;
#line 689 "regression-compile-tmp/hal7502.imp"
J = 0;
                                                                //    690      PACK TRIPLE %IF TERM <= 0
#line 690 "regression-compile-tmp/hal7502.imp"
if (((TERM) > (0))) goto L_00c7;
#line 690 "regression-compile-tmp/hal7502.imp"
PACKTRIPLE();
#line 690 "regression-compile-tmp/hal7502.imp"
L_00c7:;
                                                                //    691      TAG2 = J
#line 691 "regression-compile-tmp/hal7502.imp"
TAG2 = J;
                                                                //    692      CODE SYM %WHILE TERM <= 0
#line 692 "regression-compile-tmp/hal7502.imp"
L_00c8:;
#line 692 "regression-compile-tmp/hal7502.imp"
if (((TERM) > (0))) goto L_00c9;
#line 692 "regression-compile-tmp/hal7502.imp"
CODESYM();
#line 692 "regression-compile-tmp/hal7502.imp"
goto L_00c8;
#line 692 "regression-compile-tmp/hal7502.imp"
L_00c9:;
                                                                //    693      GET SYM %IF TERM = ' '
#line 693 "regression-compile-tmp/hal7502.imp"
if (((TERM) != (32))) goto L_00cb;
#line 693 "regression-compile-tmp/hal7502.imp"
GETSYM();
#line 693 "regression-compile-tmp/hal7502.imp"
L_00cb:;
                                                                //    694      %TRUE
#line 694 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    695  %END
#line 695 "regression-compile-tmp/hal7502.imp"
} // End of block TAG at level 2
                                                                //    696  
                                                                //    697  %PREDICATE TAGIF
#line 697 "regression-compile-tmp/hal7502.imp"
int /*Boolean*/ TAGIF( void )
#line 697 "regression-compile-tmp/hal7502.imp"
{
                                                                //    698      %FALSE %UNLESS SYM='I' %AND CHAR(GETPOS)='F' %AND CHAR(GETPOS+1)=' '
#line 698 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (73))) goto L_00ca;
#line 698 "regression-compile-tmp/hal7502.imp"
if (((CHAR(GETPOS)) != (70))) goto L_00ca;
#line 698 "regression-compile-tmp/hal7502.imp"
if (((CHAR((((int)(GETPOS)) + (1)))) == (32))) goto L_00cc;
#line 698 "regression-compile-tmp/hal7502.imp"
L_00ca:;
#line 698 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
#line 698 "regression-compile-tmp/hal7502.imp"
L_00cc:;
                                                                //    699      GETPOS = GETPOS+2
#line 699 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (2));
                                                                //    700      GET SYM
#line 700 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    701      %TRUE
#line 701 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 1;
                                                                //    702  %END
#line 702 "regression-compile-tmp/hal7502.imp"
} // End of block TAGIF at level 2
                                                                //    703  
                                                                //    704  %ROUTINE LOOKUP(%INTEGER CONTROL)
#line 704 "regression-compile-tmp/hal7502.imp"
void LOOKUP( int CONTROL )
#line 704 "regression-compile-tmp/hal7502.imp"
{
                                                                //    705  !ALL DICT OPERATIONS LOCALISED HERE
                                                                //    706  !CONTROL = 0 (LOOKUP ONLY), 1 (FORWARD OK),
                                                                //    707  !          2 (REDEF), 3 (DEF),
                                                                //    708  !          4 (MACPARM), 7 (LABEL)
                                                                //    709  %INTEGER DP
#line 709 "regression-compile-tmp/hal7502.imp"
int DP;
                                                                //    710      DP = DEFMIN;  DP = MP+5 %IF CONTROL = 4
#line 710 "regression-compile-tmp/hal7502.imp"
DP = DEFMIN;
#line 710 "regression-compile-tmp/hal7502.imp"
if (((CONTROL) != (4))) goto L_00cd;
#line 710 "regression-compile-tmp/hal7502.imp"
DP = (((int)(MP)) + (5));
#line 710 "regression-compile-tmp/hal7502.imp"
L_00cd:;
                                                                //    711      %WHILE INTEGER(DP) # 0 %CYCLE
#line 711 "regression-compile-tmp/hal7502.imp"
L_00ce:;
#line 711 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER(DP)) == (0))) goto L_00cf;
                                                                //    712         ->YES %IF INTEGER(DP) = TAG1 %AND INTEGER(DP+1) = TAG2
#line 712 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER(DP)) != (TAG1))) goto L_00d1;
#line 712 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER((((int)(DP)) + (1)))) != (TAG2))) goto L_00d1;
#line 712 "regression-compile-tmp/hal7502.imp"
goto U_1007;
#line 712 "regression-compile-tmp/hal7502.imp"
L_00d1:;
                                                                //    713         DP = DP+4
#line 713 "regression-compile-tmp/hal7502.imp"
DP = (((int)(DP)) + (4));
                                                                //    714      %REPEAT
#line 714 "regression-compile-tmp/hal7502.imp"
goto L_00ce;
#line 714 "regression-compile-tmp/hal7502.imp"
L_00cf:;
                                                                //    715  !!%OWNINTEGER P
                                                                //    716  !!    DP = DP-4
                                                                //    717  !!REP:DP = DP+4
                                                                //    718  !!    %LAC* DP; %OPR 640;!SNA; %JMP NO
                                                                //    719  !!    %SAD TAG1; %OPR 512; %JMP REP
                                                                //    720  !!    %LAC DP; %TAD #1; %DAC P
                                                                //    721  !!    %LAC* P; %SAD TAG2; %JMP YES
                                                                //    722  !!    ->REP
                                                                //    723  NO:
#line 723 "regression-compile-tmp/hal7502.imp"
U_1008:;
                                                                //    724      %RETURN %IF CONTROL&1 = 0;        !NO CREATION
#line 724 "regression-compile-tmp/hal7502.imp"
if (((((CONTROL) & (1))) != (0))) goto L_00d2;
#line 724 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 724 "regression-compile-tmp/hal7502.imp"
L_00d2:;
                                                                //    725  NEW:DEFMIN = DEFMIN-4;  DP = DEFMIN
#line 725 "regression-compile-tmp/hal7502.imp"
U_1009:;
#line 725 "regression-compile-tmp/hal7502.imp"
DEFMIN = (((int)(DEFMIN)) - (4));
#line 725 "regression-compile-tmp/hal7502.imp"
DP = DEFMIN;
                                                                //    726      !!%MONITOR 21 %IF DP-QLIM <= 0
                                                                //    727      INTEGER(DP) = TAG1;  INTEGER(DP+1) = TAG2
#line 727 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(DP) = TAG1;
#line 727 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(DP)) + (1))) = TAG2;
                                                                //    728  SET:INTEGER(DP+2) = TYPE;  INTEGER(DP+3) = VAL
#line 728 "regression-compile-tmp/hal7502.imp"
U_100a:;
#line 728 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(DP)) + (2))) = TYPE;
#line 728 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(DP)) + (3))) = VAL;
                                                                //    729      %RETURN
#line 729 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    730  YES:->NEW %IF CONTROL = 3 %AND DP-INTEGER(BP) >= 0
#line 730 "regression-compile-tmp/hal7502.imp"
U_1007:;
#line 730 "regression-compile-tmp/hal7502.imp"
if (((CONTROL) != (3))) goto L_00d3;
#line 730 "regression-compile-tmp/hal7502.imp"
if ((((((int)(DP)) - (*_imp_INTEGER(BP)))) < (0))) goto L_00d3;
#line 730 "regression-compile-tmp/hal7502.imp"
goto U_1009;
#line 730 "regression-compile-tmp/hal7502.imp"
L_00d3:;
                                                                //    731      %IF CONTROL&2 = 0 %START;         !NOT DEF CLASS
#line 731 "regression-compile-tmp/hal7502.imp"
if (((((CONTROL) & (2))) != (0))) goto L_00d4;
                                                                //    732      TYPE = INTEGER(DP+2);  VAL = INTEGER(DP+3)
#line 732 "regression-compile-tmp/hal7502.imp"
TYPE = *_imp_INTEGER((((int)(DP)) + (2)));
#line 732 "regression-compile-tmp/hal7502.imp"
VAL = *_imp_INTEGER((((int)(DP)) + (3)));
                                                                //    733      %RETURN %UNLESS TYPE&OPMASK = MACRO %AND CONTROL = 0
#line 733 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (OPMASK))) != (MACRO))) goto L_00d5;
#line 733 "regression-compile-tmp/hal7502.imp"
if (((CONTROL) == (0))) goto L_00d6;
#line 733 "regression-compile-tmp/hal7502.imp"
L_00d5:;
#line 733 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 733 "regression-compile-tmp/hal7502.imp"
L_00d6:;
                                                                //    734      %IF TYPE&31#25 %THEN INTEGER(DP+2)=TYPE+1 %ELSE INTEGER(DP+2) = TYPE+7
#line 734 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (31))) == (25))) goto L_00d7;
#line 734 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(DP)) + (2))) = (((int)(TYPE)) + (1));
#line 734 "regression-compile-tmp/hal7502.imp"
goto L_00d8;
#line 734 "regression-compile-tmp/hal7502.imp"
L_00d7:;
#line 734 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(DP)) + (2))) = (((int)(TYPE)) + (7));
#line 734 "regression-compile-tmp/hal7502.imp"
L_00d8:;
                                                                //    735      %RETURN
#line 735 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    736      %FINISH
#line 736 "regression-compile-tmp/hal7502.imp"
L_00d4:;
                                                                //    737      FAULT('D') %IF CONTROL = 3
#line 737 "regression-compile-tmp/hal7502.imp"
if (((CONTROL) != (3))) goto L_00d9;
#line 737 "regression-compile-tmp/hal7502.imp"
FAULT(68);
#line 737 "regression-compile-tmp/hal7502.imp"
L_00d9:;
                                                                //    738      ->SET %IF CONTROL # 7
#line 738 "regression-compile-tmp/hal7502.imp"
if (((CONTROL) == (7))) goto L_00da;
#line 738 "regression-compile-tmp/hal7502.imp"
goto U_100a;
#line 738 "regression-compile-tmp/hal7502.imp"
L_00da:;
                                                                //    739      %IF INTEGER(DP+2)&(OPMASK+FMASK) = FMASK %START
#line 739 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER((((int)(DP)) + (2)))) & ((((int)(OPMASK)) + (FMASK))))) != (FMASK))) goto L_00db;
                                                                //    740      VAL = INTEGER(DP+3)
#line 740 "regression-compile-tmp/hal7502.imp"
VAL = *_imp_INTEGER((((int)(DP)) + (3)));
                                                                //    741      %IF PASS = 0 %START
#line 741 "regression-compile-tmp/hal7502.imp"
if (((PASS) != (0))) goto L_00dc;
                                                                //    742      INTEGER(VAL) = LOC
#line 742 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(VAL) = LOC;
                                                                //    743      %finish %ELSE  %START
#line 743 "regression-compile-tmp/hal7502.imp"
goto L_00dd;
#line 743 "regression-compile-tmp/hal7502.imp"
L_00dc:;
                                                                //    744      FAULT('P') %AND LOC=INTEGER(VAL) %IF INTEGER(VAL) # LOC
#line 744 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER(VAL)) == (LOC))) goto L_00de;
#line 744 "regression-compile-tmp/hal7502.imp"
FAULT(80);
#line 744 "regression-compile-tmp/hal7502.imp"
LOC = *_imp_INTEGER(VAL);
#line 744 "regression-compile-tmp/hal7502.imp"
L_00de:;
                                                                //    745      %FINISH
#line 745 "regression-compile-tmp/hal7502.imp"
L_00dd:;
                                                                //    746      VAL = LOC
#line 746 "regression-compile-tmp/hal7502.imp"
VAL = LOC;
                                                                //    747      %finish %ELSE  %START
#line 747 "regression-compile-tmp/hal7502.imp"
goto L_00df;
#line 747 "regression-compile-tmp/hal7502.imp"
L_00db:;
                                                                //    748      ->NEW %IF DP-INTEGER(BP) >= 0
#line 748 "regression-compile-tmp/hal7502.imp"
if ((((((int)(DP)) - (*_imp_INTEGER(BP)))) < (0))) goto L_00e0;
#line 748 "regression-compile-tmp/hal7502.imp"
goto U_1009;
#line 748 "regression-compile-tmp/hal7502.imp"
L_00e0:;
                                                                //    749      FAULT('D')
#line 749 "regression-compile-tmp/hal7502.imp"
FAULT(68);
                                                                //    750      %FINISH
#line 750 "regression-compile-tmp/hal7502.imp"
L_00df:;
                                                                //    751      ->SET
#line 751 "regression-compile-tmp/hal7502.imp"
goto U_100a;
                                                                //    752  %END
#line 752 "regression-compile-tmp/hal7502.imp"
return;
} // End of block LOOKUP at level 2
                                                                //    753  
                                                                //    754  %ROUTINE QUEUE(%INTEGER K)
#line 754 "regression-compile-tmp/hal7502.imp"
void QUEUE( int K )
#line 754 "regression-compile-tmp/hal7502.imp"
{
                                                                //    755      INTEGER(QLIM) = K
#line 755 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(QLIM) = K;
                                                                //    756      QLIM = QLIM+1;  !!%MONITOR 21 %IF QLIM = DEFMIN
#line 756 "regression-compile-tmp/hal7502.imp"
QLIM = (((int)(QLIM)) + (1));
                                                                //    757  %END
#line 757 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block QUEUE at level 2
                                                                //    758  
                                                                //    759  %ROUTINE GET EXP
#line 759 "regression-compile-tmp/hal7502.imp"
void GETEXP( void )
#line 759 "regression-compile-tmp/hal7502.imp"
{
                                                                //    760  %OWNINTEGER W=24717
#line 760 "regression-compile-tmp/hal7502.imp"
static int W = 24717;
                                                                //    761  %INTEGER I,NBASE
#line 761 "regression-compile-tmp/hal7502.imp"
int I;
#line 761 "regression-compile-tmp/hal7502.imp"
int NBASE;
                                                                //    762  
                                                                //    763      NBASE = NP
#line 763 "regression-compile-tmp/hal7502.imp"
NBASE = NP;
                                                                //    764      ->E3 %IF PEND # 0
#line 764 "regression-compile-tmp/hal7502.imp"
if (((PEND) == (0))) goto L_00e1;
#line 764 "regression-compile-tmp/hal7502.imp"
goto U_100a;
#line 764 "regression-compile-tmp/hal7502.imp"
L_00e1:;
                                                                //    765  E1: NEST(0) %WHILE S('(')
#line 765 "regression-compile-tmp/hal7502.imp"
U_100b:;
#line 765 "regression-compile-tmp/hal7502.imp"
L_00e2:;
#line 765 "regression-compile-tmp/hal7502.imp"
if (!(S(40))) goto L_00e3;
#line 765 "regression-compile-tmp/hal7502.imp"
NEST(0);
#line 765 "regression-compile-tmp/hal7502.imp"
goto L_00e2;
#line 765 "regression-compile-tmp/hal7502.imp"
L_00e3:;
                                                                //    766      NEST(-20) %IF S('#')
#line 766 "regression-compile-tmp/hal7502.imp"
if (!(S(35))) goto L_00e5;
#line 766 "regression-compile-tmp/hal7502.imp"
NEST((-20));
#line 766 "regression-compile-tmp/hal7502.imp"
L_00e5:;
                                                                //    767      %IF TAG %START
#line 767 "regression-compile-tmp/hal7502.imp"
if (!(TAG())) goto L_00e6;
                                                                //    768  E3: %IF TAG1 = W %START;          !W
#line 768 "regression-compile-tmp/hal7502.imp"
U_100a:;
#line 768 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (W))) goto L_00e7;
                                                                //    769      TYPE = 0;  VAL = 0
#line 769 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 769 "regression-compile-tmp/hal7502.imp"
VAL = 0;
                                                                //    770      %finish %ELSE  %START
#line 770 "regression-compile-tmp/hal7502.imp"
goto L_00e8;
#line 770 "regression-compile-tmp/hal7502.imp"
L_00e7:;
                                                                //    771      %IF PEND >= 0 %START
#line 771 "regression-compile-tmp/hal7502.imp"
if (((PEND) < (0))) goto L_00e9;
                                                                //    772      TYPE = LOCTYPE+FMASK+UMASK;  VAL = LABMIN-1
#line 772 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)((((int)(LOCTYPE)) + (FMASK)))) + (UMASK));
#line 772 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(LABMIN)) - (1));
                                                                //    773      LOOKUP(1)
#line 773 "regression-compile-tmp/hal7502.imp"
LOOKUP(1);
                                                                //    774      %IF TYPE&(OPMASK+FMASK) = FMASK %START
#line 774 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & ((((int)(OPMASK)) + (FMASK))))) != (FMASK))) goto L_00ea;
                                                                //    775      %IF VAL = LABMIN-1 %START
#line 775 "regression-compile-tmp/hal7502.imp"
if (((VAL) != ((((int)(LABMIN)) - (1))))) goto L_00eb;
                                                                //    776      LABMIN = VAL;  !!%MONITOR 22 %IF LABMIN = ALMAX
#line 776 "regression-compile-tmp/hal7502.imp"
LABMIN = VAL;
                                                                //    777      %FINISH
#line 777 "regression-compile-tmp/hal7502.imp"
L_00eb:;
                                                                //    778      VAL = INTEGER(VAL)
#line 778 "regression-compile-tmp/hal7502.imp"
VAL = *_imp_INTEGER(VAL);
                                                                //    779      FAULT('U') %IF VAL = 0
#line 779 "regression-compile-tmp/hal7502.imp"
if (((VAL) != (0))) goto L_00ec;
#line 779 "regression-compile-tmp/hal7502.imp"
FAULT(85);
#line 779 "regression-compile-tmp/hal7502.imp"
L_00ec:;
                                                                //    780      TYPE = TYPE-FMASK
#line 780 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)(TYPE)) - (FMASK));
                                                                //    781      %FINISH
#line 781 "regression-compile-tmp/hal7502.imp"
L_00ea:;
                                                                //    782      %FINISH
#line 782 "regression-compile-tmp/hal7502.imp"
L_00e9:;
                                                                //    783      %FINISH
#line 783 "regression-compile-tmp/hal7502.imp"
L_00e8:;
                                                                //    784      PEND = 0
#line 784 "regression-compile-tmp/hal7502.imp"
PEND = 0;
                                                                //    785      %IF TYPE = REG %AND TERM = '(' %START
#line 785 "regression-compile-tmp/hal7502.imp"
if (((TYPE) != (REG))) goto L_00ed;
#line 785 "regression-compile-tmp/hal7502.imp"
if (((TERM) != (40))) goto L_00ed;
                                                                //    786      TYPE = 0 %IF SAVE&1 = 0;  VAL = VAL+SAVE;   !?
#line 786 "regression-compile-tmp/hal7502.imp"
if (((((SAVE) & (1))) != (0))) goto L_00ee;
#line 786 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 786 "regression-compile-tmp/hal7502.imp"
L_00ee:;
#line 786 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(VAL)) + (SAVE));
                                                                //    787      %FINISH
#line 787 "regression-compile-tmp/hal7502.imp"
L_00ed:;
                                                                //    788      %IF MODE # 0 %START
#line 788 "regression-compile-tmp/hal7502.imp"
if (((MODE) == (0))) goto L_00ef;
                                                                //    789      FAULT('I') %AND TYPE=0 %IF TYPE&OPMASK # 0
#line 789 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (OPMASK))) == (0))) goto L_00f0;
#line 789 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 789 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 789 "regression-compile-tmp/hal7502.imp"
L_00f0:;
                                                                //    790      %IF TYPE&REGXMASK # 0 %START
#line 790 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (REGXMASK))) == (0))) goto L_00f1;
                                                                //    791      I = TYPE&15;  I = VAL %IF I = 0
#line 791 "regression-compile-tmp/hal7502.imp"
I = ((TYPE) & (15));
#line 791 "regression-compile-tmp/hal7502.imp"
if (((I) != (0))) goto L_00f2;
#line 791 "regression-compile-tmp/hal7502.imp"
I = VAL;
#line 791 "regression-compile-tmp/hal7502.imp"
L_00f2:;
                                                                //    792      DUSE = DUSE+1 %IF I = DREG
#line 792 "regression-compile-tmp/hal7502.imp"
if (((I) != (DREG))) goto L_00f3;
#line 792 "regression-compile-tmp/hal7502.imp"
DUSE = (((int)(DUSE)) + (1));
#line 792 "regression-compile-tmp/hal7502.imp"
L_00f3:;
                                                                //    793      %FINISH
#line 793 "regression-compile-tmp/hal7502.imp"
L_00f1:;
                                                                //    794      %FINISH
#line 794 "regression-compile-tmp/hal7502.imp"
L_00ef:;
                                                                //    795      %IF TERM = '(' %START
#line 795 "regression-compile-tmp/hal7502.imp"
if (((TERM) != (40))) goto L_00f4;
                                                                //    796      GET SYM
#line 796 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    797      I = TYPE&31
#line 797 "regression-compile-tmp/hal7502.imp"
I = ((TYPE) & (31));
                                                                //    798      QUEUE(TYPE-I);  QUEUE(VAL)
#line 798 "regression-compile-tmp/hal7502.imp"
QUEUE((((int)(TYPE)) - (I)));
#line 798 "regression-compile-tmp/hal7502.imp"
QUEUE(VAL);
                                                                //    799      NEST(-21);  NEST(0)
#line 799 "regression-compile-tmp/hal7502.imp"
NEST((-21));
#line 799 "regression-compile-tmp/hal7502.imp"
NEST(0);
                                                                //    800      %IF I # 0 %START
#line 800 "regression-compile-tmp/hal7502.imp"
if (((I) == (0))) goto L_00f5;
                                                                //    801      QUEUE(REG);  QUEUE(I&15)
#line 801 "regression-compile-tmp/hal7502.imp"
QUEUE(REG);
#line 801 "regression-compile-tmp/hal7502.imp"
QUEUE(((I) & (15)));
                                                                //    802      NEST(-1)
#line 802 "regression-compile-tmp/hal7502.imp"
NEST((-1));
                                                                //    803      %FINISH
#line 803 "regression-compile-tmp/hal7502.imp"
L_00f5:;
                                                                //    804      ->E1
#line 804 "regression-compile-tmp/hal7502.imp"
goto U_100b;
                                                                //    805      %FINISH
#line 805 "regression-compile-tmp/hal7502.imp"
L_00f4:;
                                                                //    806      %finish %ELSE  %IF '0' <= SYM <= '9' %START
#line 806 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 806 "regression-compile-tmp/hal7502.imp"
L_00e6:;
#line 806 "regression-compile-tmp/hal7502.imp"
if ((((48) > (SYM))) || (((SYM) > (57)))) goto L_00f7;
                                                                //    807      TYPE = 0;  VAL = SYM-'0'
#line 807 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 807 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(SYM)) - (48));
                                                                //    808      %CYCLE
#line 808 "regression-compile-tmp/hal7502.imp"
L_00f8:;
                                                                //    809      SYM = CHAR(GETPOS)-'0'
#line 809 "regression-compile-tmp/hal7502.imp"
SYM = (((int)(CHAR(GETPOS))) - (48));
                                                                //    810      %EXIT %UNLESS 0 <= SYM <= 9
#line 810 "regression-compile-tmp/hal7502.imp"
if ((((0) > (SYM))) || (((SYM) <= (9)))) goto L_00fc;
#line 810 "regression-compile-tmp/hal7502.imp"
L_00fb:;
#line 810 "regression-compile-tmp/hal7502.imp"
goto L_00f9;
#line 810 "regression-compile-tmp/hal7502.imp"
L_00fc:;
                                                                //    811      VAL = (VAL<<2+VAL)<<1+SYM
#line 811 "regression-compile-tmp/hal7502.imp"
VAL = (((int)((((((int)(((VAL) << (2)))) + (VAL))) << (1)))) + (SYM));
                                                                //    812      GETPOS = GETPOS+1
#line 812 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (1));
                                                                //    813      %REPEAT
#line 813 "regression-compile-tmp/hal7502.imp"
goto L_00f8;
#line 813 "regression-compile-tmp/hal7502.imp"
L_00f9:;
                                                                //    814      GET SYM
#line 814 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    815      %finish %ELSE  %IF SYM = 'X' %START
#line 815 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 815 "regression-compile-tmp/hal7502.imp"
L_00f7:;
#line 815 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (88))) goto L_00fd;
                                                                //    816      TYPE = 0;  VAL = 0
#line 816 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 816 "regression-compile-tmp/hal7502.imp"
VAL = 0;
                                                                //    817      %CYCLE
#line 817 "regression-compile-tmp/hal7502.imp"
L_00fe:;
                                                                //    818      SYM = CHAR(GETPOS)-128
#line 818 "regression-compile-tmp/hal7502.imp"
SYM = (((int)(CHAR(GETPOS))) - (128));
                                                                //    819      %EXIT %IF SYM < 0
#line 819 "regression-compile-tmp/hal7502.imp"
if (((SYM) >= (0))) goto L_0101;
#line 819 "regression-compile-tmp/hal7502.imp"
goto L_00ff;
#line 819 "regression-compile-tmp/hal7502.imp"
L_0101:;
                                                                //    820      SYM = SYM-32 %IF SYM >= 96; !ENSURE UPPER-CASE
#line 820 "regression-compile-tmp/hal7502.imp"
if (((SYM) < (96))) goto L_0102;
#line 820 "regression-compile-tmp/hal7502.imp"
SYM = (((int)(SYM)) - (32));
#line 820 "regression-compile-tmp/hal7502.imp"
L_0102:;
                                                                //    821      %IF '0' <= SYM <= '9' %OR 'A' <= SYM <= 'F' %START
#line 821 "regression-compile-tmp/hal7502.imp"
if ((((48) > (SYM))) || (((SYM) <= (57)))) goto L_0104;
#line 821 "regression-compile-tmp/hal7502.imp"
L_0103:;
#line 821 "regression-compile-tmp/hal7502.imp"
if ((((65) > (SYM))) || (((SYM) > (70)))) goto L_0105;
#line 821 "regression-compile-tmp/hal7502.imp"
L_0104:;
                                                                //    822      VAL = VAL<<4+SYM-'0'
#line 822 "regression-compile-tmp/hal7502.imp"
VAL = (((int)((((int)(((VAL) << (4)))) + (SYM)))) - (48));
                                                                //    823      VAL = VAL-7 %IF SYM >= 'A'
#line 823 "regression-compile-tmp/hal7502.imp"
if (((SYM) < (65))) goto L_0106;
#line 823 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(VAL)) - (7));
#line 823 "regression-compile-tmp/hal7502.imp"
L_0106:;
                                                                //    824      %finish %ELSE  FAULT('H')
#line 824 "regression-compile-tmp/hal7502.imp"
goto L_0107;
#line 824 "regression-compile-tmp/hal7502.imp"
L_0105:;
#line 824 "regression-compile-tmp/hal7502.imp"
FAULT(72);
#line 824 "regression-compile-tmp/hal7502.imp"
L_0107:;
                                                                //    825      GETPOS = GETPOS+1
#line 825 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (1));
                                                                //    826      %REPEAT
#line 826 "regression-compile-tmp/hal7502.imp"
goto L_00fe;
#line 826 "regression-compile-tmp/hal7502.imp"
L_00ff:;
                                                                //    827      GET SYM
#line 827 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    828      %finish %ELSE  %IF SYM&128 # 0 %START
#line 828 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 828 "regression-compile-tmp/hal7502.imp"
L_00fd:;
#line 828 "regression-compile-tmp/hal7502.imp"
if (((((SYM) & (128))) == (0))) goto L_0108;
                                                                //    829      TYPE = 0;  VAL = SYM-128
#line 829 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 829 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(SYM)) - (128));
                                                                //    830      GET SYM
#line 830 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    831      %IF MODE >= 0 %AND SYM&128 # 0 %START
#line 831 "regression-compile-tmp/hal7502.imp"
if (((MODE) < (0))) goto L_0109;
#line 831 "regression-compile-tmp/hal7502.imp"
if (((((SYM) & (128))) == (0))) goto L_0109;
                                                                //    832      VAL = VAL<<8+SYM-128;  GET SYM
#line 832 "regression-compile-tmp/hal7502.imp"
VAL = (((int)((((int)(((VAL) << (8)))) + (SYM)))) - (128));
#line 832 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    833      %FINISH
#line 833 "regression-compile-tmp/hal7502.imp"
L_0109:;
                                                                //    834      %finish %ELSE  %IF S('.') %START
#line 834 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 834 "regression-compile-tmp/hal7502.imp"
L_0108:;
#line 834 "regression-compile-tmp/hal7502.imp"
if (!(S(46))) goto L_010a;
                                                                //    835      ->ERR %IF %NOT TAG
#line 835 "regression-compile-tmp/hal7502.imp"
if (TAG()) goto L_010b;
#line 835 "regression-compile-tmp/hal7502.imp"
goto U_100c;
#line 835 "regression-compile-tmp/hal7502.imp"
L_010b:;
                                                                //    836      TYPE = 0;  VAL = TAG1
#line 836 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 836 "regression-compile-tmp/hal7502.imp"
VAL = TAG1;
                                                                //    837      %finish %ELSE  %IF S('*') %START
#line 837 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 837 "regression-compile-tmp/hal7502.imp"
L_010a:;
#line 837 "regression-compile-tmp/hal7502.imp"
if (!(S(42))) goto L_010c;
                                                                //    838      TYPE = LOCTYPE&63;  VAL = LOC
#line 838 "regression-compile-tmp/hal7502.imp"
TYPE = ((LOCTYPE) & (63));
#line 838 "regression-compile-tmp/hal7502.imp"
VAL = LOC;
                                                                //    839      %IF SYM = 'L' %START;          !FOR NOW
#line 839 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (76))) goto L_010d;
                                                                //    840      TYPE = 0;  VAL = LIST %IF TAG
#line 840 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 840 "regression-compile-tmp/hal7502.imp"
if (!(TAG())) goto L_010e;
#line 840 "regression-compile-tmp/hal7502.imp"
VAL = LIST;
#line 840 "regression-compile-tmp/hal7502.imp"
L_010e:;
                                                                //    841      %FINISH
#line 841 "regression-compile-tmp/hal7502.imp"
L_010d:;
                                                                //    842      %finish %ELSE  %IF SYM = '-' %START
#line 842 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 842 "regression-compile-tmp/hal7502.imp"
L_010c:;
#line 842 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (45))) goto L_010f;
                                                                //    843      TYPE = 0;  VAL = 0
#line 843 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 843 "regression-compile-tmp/hal7502.imp"
VAL = 0;
                                                                //    844      %finish %ELSE  %IF SYM = '\' %START
#line 844 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 844 "regression-compile-tmp/hal7502.imp"
L_010f:;
#line 844 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (92))) goto L_0110;
                                                                //    845      TYPE = 0;  VAL = \0
#line 845 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 845 "regression-compile-tmp/hal7502.imp"
VAL = (~(0));
                                                                //    846      %finish %ELSE  ->ERR
#line 846 "regression-compile-tmp/hal7502.imp"
goto L_00f6;
#line 846 "regression-compile-tmp/hal7502.imp"
L_0110:;
#line 846 "regression-compile-tmp/hal7502.imp"
goto U_100c;
#line 846 "regression-compile-tmp/hal7502.imp"
L_00f6:;
                                                                //    847      QUEUE(TYPE);  QUEUE(VAL)
#line 847 "regression-compile-tmp/hal7502.imp"
QUEUE(TYPE);
#line 847 "regression-compile-tmp/hal7502.imp"
QUEUE(VAL);
                                                                //    848  
                                                                //    849      %WHILE NP # NBASE %CYCLE
#line 849 "regression-compile-tmp/hal7502.imp"
L_0111:;
#line 849 "regression-compile-tmp/hal7502.imp"
if (((NP) == (NBASE))) goto L_0112;
                                                                //    850      %IF INTEGER(NP) < 0 %START
#line 850 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER(NP)) >= (0))) goto L_0114;
                                                                //    851      QUEUE(INTEGER(NP))
#line 851 "regression-compile-tmp/hal7502.imp"
QUEUE(*_imp_INTEGER(NP));
                                                                //    852      %finish %ELSE  %START
#line 852 "regression-compile-tmp/hal7502.imp"
goto L_0115;
#line 852 "regression-compile-tmp/hal7502.imp"
L_0114:;
                                                                //    853      %EXIT %IF %NOT S(')')
#line 853 "regression-compile-tmp/hal7502.imp"
if (S(41)) goto L_0116;
#line 853 "regression-compile-tmp/hal7502.imp"
goto L_0112;
#line 853 "regression-compile-tmp/hal7502.imp"
L_0116:;
                                                                //    854      %FINISH
#line 854 "regression-compile-tmp/hal7502.imp"
L_0115:;
                                                                //    855      NP = NP+1
#line 855 "regression-compile-tmp/hal7502.imp"
NP = (((int)(NP)) + (1));
                                                                //    856      %REPEAT
#line 856 "regression-compile-tmp/hal7502.imp"
goto L_0111;
#line 856 "regression-compile-tmp/hal7502.imp"
L_0112:;
                                                                //    857  
                                                                //    858      NEST(-1) %AND ->E1 %IF S('+')
#line 858 "regression-compile-tmp/hal7502.imp"
if (!(S(43))) goto L_0117;
#line 858 "regression-compile-tmp/hal7502.imp"
NEST((-1));
#line 858 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 858 "regression-compile-tmp/hal7502.imp"
L_0117:;
                                                                //    859      NEST(-2) %AND ->E1 %IF S('-')
#line 859 "regression-compile-tmp/hal7502.imp"
if (!(S(45))) goto L_0118;
#line 859 "regression-compile-tmp/hal7502.imp"
NEST((-2));
#line 859 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 859 "regression-compile-tmp/hal7502.imp"
L_0118:;
                                                                //    860      NEST(-3) %AND ->E1 %IF S('&')
#line 860 "regression-compile-tmp/hal7502.imp"
if (!(S(38))) goto L_0119;
#line 860 "regression-compile-tmp/hal7502.imp"
NEST((-3));
#line 860 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 860 "regression-compile-tmp/hal7502.imp"
L_0119:;
                                                                //    861      NEST(-4) %AND ->E1 %IF S('!')
#line 861 "regression-compile-tmp/hal7502.imp"
if (!(S(33))) goto L_011a;
#line 861 "regression-compile-tmp/hal7502.imp"
NEST((-4));
#line 861 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 861 "regression-compile-tmp/hal7502.imp"
L_011a:;
                                                                //    862      NEST(-5) %AND ->E1 %IF S('\')
#line 862 "regression-compile-tmp/hal7502.imp"
if (!(S(92))) goto L_011b;
#line 862 "regression-compile-tmp/hal7502.imp"
NEST((-5));
#line 862 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 862 "regression-compile-tmp/hal7502.imp"
L_011b:;
                                                                //    863      NEST(-6) %AND ->E1 %IF SS('<')
#line 863 "regression-compile-tmp/hal7502.imp"
if (!(SS(60))) goto L_011c;
#line 863 "regression-compile-tmp/hal7502.imp"
NEST((-6));
#line 863 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 863 "regression-compile-tmp/hal7502.imp"
L_011c:;
                                                                //    864      NEST(-7) %AND ->E1 %IF SS('>')
#line 864 "regression-compile-tmp/hal7502.imp"
if (!(SS(62))) goto L_011d;
#line 864 "regression-compile-tmp/hal7502.imp"
NEST((-7));
#line 864 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 864 "regression-compile-tmp/hal7502.imp"
L_011d:;
                                                                //    865      NEST(-8) %AND ->E1 %IF S('_')
#line 865 "regression-compile-tmp/hal7502.imp"
if (!(S(95))) goto L_011e;
#line 865 "regression-compile-tmp/hal7502.imp"
NEST((-8));
#line 865 "regression-compile-tmp/hal7502.imp"
goto U_100b;
#line 865 "regression-compile-tmp/hal7502.imp"
L_011e:;
                                                                //    866      %RETURN %IF NP = NBASE
#line 866 "regression-compile-tmp/hal7502.imp"
if (((NP) != (NBASE))) goto L_011f;
#line 866 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 866 "regression-compile-tmp/hal7502.imp"
L_011f:;
                                                                //    867  ERR:NP = NBASE
#line 867 "regression-compile-tmp/hal7502.imp"
U_100c:;
#line 867 "regression-compile-tmp/hal7502.imp"
NP = NBASE;
                                                                //    868      !!%MONITOR 19
                                                                //    869  %END
#line 869 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block GETEXP at level 2
                                                                //    870  
                                                                //    871  %ROUTINE GET COND
#line 871 "regression-compile-tmp/hal7502.imp"
void GETCOND( void )
#line 871 "regression-compile-tmp/hal7502.imp"
{
                                                                //    872  %OWNINTEGER AND=1717, OR=16873
#line 872 "regression-compile-tmp/hal7502.imp"
static int AND = 1717;
#line 872 "regression-compile-tmp/hal7502.imp"
static int OR = 16873;
                                                                //    873  %INTEGER J,K
#line 873 "regression-compile-tmp/hal7502.imp"
int J;
#line 873 "regression-compile-tmp/hal7502.imp"
int K;
                                                                //    874      TRANSF = QSTART;  QSTART = QLIM
#line 874 "regression-compile-tmp/hal7502.imp"
TRANSF = QSTART;
#line 874 "regression-compile-tmp/hal7502.imp"
QSTART = QLIM;
                                                                //    875      J = 0
#line 875 "regression-compile-tmp/hal7502.imp"
J = 0;
                                                                //    876      %CYCLE
#line 876 "regression-compile-tmp/hal7502.imp"
L_0120:;
                                                                //    877      GET EXP
#line 877 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //    878      %IF S('=') %START
#line 878 "regression-compile-tmp/hal7502.imp"
if (!(S(61))) goto L_0123;
                                                                //    879      K = 5
#line 879 "regression-compile-tmp/hal7502.imp"
K = 5;
                                                                //    880      %finish %ELSE  %IF S('#') %START
#line 880 "regression-compile-tmp/hal7502.imp"
goto L_0124;
#line 880 "regression-compile-tmp/hal7502.imp"
L_0123:;
#line 880 "regression-compile-tmp/hal7502.imp"
if (!(S(35))) goto L_0125;
                                                                //    881      K = 4
#line 881 "regression-compile-tmp/hal7502.imp"
K = 4;
                                                                //    882      %finish %ELSE  %IF S('<') %START
#line 882 "regression-compile-tmp/hal7502.imp"
goto L_0124;
#line 882 "regression-compile-tmp/hal7502.imp"
L_0125:;
#line 882 "regression-compile-tmp/hal7502.imp"
if (!(S(60))) goto L_0126;
                                                                //    883      K = 3;  K = 7 %IF S('=')
#line 883 "regression-compile-tmp/hal7502.imp"
K = 3;
#line 883 "regression-compile-tmp/hal7502.imp"
if (!(S(61))) goto L_0127;
#line 883 "regression-compile-tmp/hal7502.imp"
K = 7;
#line 883 "regression-compile-tmp/hal7502.imp"
L_0127:;
                                                                //    884      %finish %ELSE  %IF S('>') %START
#line 884 "regression-compile-tmp/hal7502.imp"
goto L_0124;
#line 884 "regression-compile-tmp/hal7502.imp"
L_0126:;
#line 884 "regression-compile-tmp/hal7502.imp"
if (!(S(62))) goto L_0128;
                                                                //    885      K = 6;  K = 2 %IF S('=')
#line 885 "regression-compile-tmp/hal7502.imp"
K = 6;
#line 885 "regression-compile-tmp/hal7502.imp"
if (!(S(61))) goto L_0129;
#line 885 "regression-compile-tmp/hal7502.imp"
K = 2;
#line 885 "regression-compile-tmp/hal7502.imp"
L_0129:;
                                                                //    886      %finish %ELSE  %START
#line 886 "regression-compile-tmp/hal7502.imp"
goto L_0124;
#line 886 "regression-compile-tmp/hal7502.imp"
L_0128:;
                                                                //    887      QUEUE(-12)
#line 887 "regression-compile-tmp/hal7502.imp"
QUEUE((-12));
                                                                //    888      %RETURN
#line 888 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    889      %FINISH
#line 889 "regression-compile-tmp/hal7502.imp"
L_0124:;
                                                                //    890      GET EXP
#line 890 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //    891      QUEUE(-2);  !SUBTRACT
#line 891 "regression-compile-tmp/hal7502.imp"
QUEUE((-2));
                                                                //    892      QUEUE(-11);  QUEUE(K)
#line 892 "regression-compile-tmp/hal7502.imp"
QUEUE((-11));
#line 892 "regression-compile-tmp/hal7502.imp"
QUEUE(K);
                                                                //    893      %RETURN %IF %NOT TAG
#line 893 "regression-compile-tmp/hal7502.imp"
if (TAG()) goto L_012a;
#line 893 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 893 "regression-compile-tmp/hal7502.imp"
L_012a:;
                                                                //    894      %IF TAG1 = AND %AND TAG2 = 0 %START
#line 894 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (AND))) goto L_012b;
#line 894 "regression-compile-tmp/hal7502.imp"
if (((TAG2) != (0))) goto L_012b;
                                                                //    895      !!%MONITOR 19 %IF J < 0
                                                                //    896      J = 1;  QUEUE(-13)
#line 896 "regression-compile-tmp/hal7502.imp"
J = 1;
#line 896 "regression-compile-tmp/hal7502.imp"
QUEUE((-13));
                                                                //    897      %finish %ELSE  %START
#line 897 "regression-compile-tmp/hal7502.imp"
goto L_012c;
#line 897 "regression-compile-tmp/hal7502.imp"
L_012b:;
                                                                //    898      !!%MONITOR 19 %IF TAG1 # OR %OR J > 0
                                                                //    899      J = -1;  QUEUE(-14)
#line 899 "regression-compile-tmp/hal7502.imp"
J = (-1);
#line 899 "regression-compile-tmp/hal7502.imp"
QUEUE((-14));
                                                                //    900      %FINISH
#line 900 "regression-compile-tmp/hal7502.imp"
L_012c:;
                                                                //    901      %REPEAT
#line 901 "regression-compile-tmp/hal7502.imp"
goto L_0120;
                                                                //    902  %END
#line 902 "regression-compile-tmp/hal7502.imp"
return;
} // End of block GETCOND at level 2
                                                                //    903  
                                                                //    904  %ROUTINE GET INST
#line 904 "regression-compile-tmp/hal7502.imp"
void GETINST( void )
#line 904 "regression-compile-tmp/hal7502.imp"
{
                                                                //    905  %INTEGER I
#line 905 "regression-compile-tmp/hal7502.imp"
int I;
                                                                //    906      QUEUE(TYPE);  QUEUE(VAL)
#line 906 "regression-compile-tmp/hal7502.imp"
QUEUE(TYPE);
#line 906 "regression-compile-tmp/hal7502.imp"
QUEUE(VAL);
                                                                //    907      %RETURN %IF TERM # ' ';           !NO OPERAND FOLLOWING =>
#line 907 "regression-compile-tmp/hal7502.imp"
if (((TERM) == (32))) goto L_0121;
#line 907 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 907 "regression-compile-tmp/hal7502.imp"
L_0121:;
                                                                //    908      %CYCLE
#line 908 "regression-compile-tmp/hal7502.imp"
L_012d:;
                                                                //    909      GET EXP
#line 909 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //    910      QUEUE(-22)
#line 910 "regression-compile-tmp/hal7502.imp"
QUEUE((-22));
                                                                //    911      %RETURN %IF %NOT S(',')
#line 911 "regression-compile-tmp/hal7502.imp"
if (S(44)) goto L_0130;
#line 911 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 911 "regression-compile-tmp/hal7502.imp"
L_0130:;
                                                                //    912      %REPEAT
#line 912 "regression-compile-tmp/hal7502.imp"
goto L_012d;
                                                                //    913  %END
#line 913 "regression-compile-tmp/hal7502.imp"
return;
} // End of block GETINST at level 2
                                                                //    914  
                                                                //    915  %ROUTINE READ LINE
#line 915 "regression-compile-tmp/hal7502.imp"
void READLINE( void )
#line 915 "regression-compile-tmp/hal7502.imp"
{
                                                                //    916  %INTEGER Q
#line 916 "regression-compile-tmp/hal7502.imp"
int Q;
                                                                //    917      PUTPOS = STARTPOS
#line 917 "regression-compile-tmp/hal7502.imp"
PUTPOS = STARTPOS;
                                                                //    918      %IF MP = 0 %START
#line 918 "regression-compile-tmp/hal7502.imp"
if (((MP) != (0))) goto L_012e;
                                                                //    919      Q = 0;  PSEUDOLIM = 0
#line 919 "regression-compile-tmp/hal7502.imp"
Q = 0;
#line 919 "regression-compile-tmp/hal7502.imp"
PSEUDOLIM = 0;
                                                                //    920      %CYCLE
#line 920 "regression-compile-tmp/hal7502.imp"
L_0131:;
                                                                //    921      READ SYMBOL(SYM)
#line 921 "regression-compile-tmp/hal7502.imp"
_imp_READSYMBOL(&SYM);
                                                                //    922      READ SYMBOL(SYM) %AND Q=Q!!128 %IF SYM = ''''
#line 922 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (39))) goto L_0134;
#line 922 "regression-compile-tmp/hal7502.imp"
_imp_READSYMBOL(&SYM);
#line 922 "regression-compile-tmp/hal7502.imp"
Q = ((Q) ^ (128));
#line 922 "regression-compile-tmp/hal7502.imp"
L_0134:;
                                                                //    923      %EXIT %IF SYM = NL
#line 923 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (10))) goto L_0135;
#line 923 "regression-compile-tmp/hal7502.imp"
goto L_0132;
#line 923 "regression-compile-tmp/hal7502.imp"
L_0135:;
                                                                //    924      SYM = SYM-32 %IF SYM-Q >= 96; !LOWER-CASE -> UPPER-CASE
#line 924 "regression-compile-tmp/hal7502.imp"
if ((((((int)(SYM)) - (Q))) < (96))) goto L_0136;
#line 924 "regression-compile-tmp/hal7502.imp"
SYM = (((int)(SYM)) - (32));
#line 924 "regression-compile-tmp/hal7502.imp"
L_0136:;
                                                                //    925      SYM = SYM+Q
#line 925 "regression-compile-tmp/hal7502.imp"
SYM = (((int)(SYM)) + (Q));
                                                                //    926      %EXIT %IF SYM = '/' %AND PSEUDOLIM # 0
#line 926 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (47))) goto L_0137;
#line 926 "regression-compile-tmp/hal7502.imp"
if (((PSEUDOLIM) == (0))) goto L_0137;
#line 926 "regression-compile-tmp/hal7502.imp"
goto L_0132;
#line 926 "regression-compile-tmp/hal7502.imp"
L_0137:;
                                                                //    927      %IF SYM = ' ' %START
#line 927 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (32))) goto L_0138;
                                                                //    928      PSEUDOLIM = PUTPOS %IF PSEUDOLIM = 0
#line 928 "regression-compile-tmp/hal7502.imp"
if (((PSEUDOLIM) != (0))) goto L_0139;
#line 928 "regression-compile-tmp/hal7502.imp"
PSEUDOLIM = PUTPOS;
#line 928 "regression-compile-tmp/hal7502.imp"
L_0139:;
                                                                //    929      %finish %ELSE  PSEUDOLIM = 0
#line 929 "regression-compile-tmp/hal7502.imp"
goto L_013a;
#line 929 "regression-compile-tmp/hal7502.imp"
L_0138:;
#line 929 "regression-compile-tmp/hal7502.imp"
PSEUDOLIM = 0;
#line 929 "regression-compile-tmp/hal7502.imp"
L_013a:;
                                                                //    930      PUT CHAR(SYM)
#line 930 "regression-compile-tmp/hal7502.imp"
PUTCHAR(SYM);
                                                                //    931      %REPEAT
#line 931 "regression-compile-tmp/hal7502.imp"
goto L_0131;
#line 931 "regression-compile-tmp/hal7502.imp"
L_0132:;
                                                                //    932      %IF PSEUDOLIM # 0 %START
#line 932 "regression-compile-tmp/hal7502.imp"
if (((PSEUDOLIM) == (0))) goto L_013b;
                                                                //    933      Q = PUTPOS;  PUTPOS = PSEUDOLIM
#line 933 "regression-compile-tmp/hal7502.imp"
Q = PUTPOS;
#line 933 "regression-compile-tmp/hal7502.imp"
PUTPOS = PSEUDOLIM;
                                                                //    934      PUT CHAR(NL)
#line 934 "regression-compile-tmp/hal7502.imp"
PUTCHAR(10);
                                                                //    935      PUTPOS = Q
#line 935 "regression-compile-tmp/hal7502.imp"
PUTPOS = Q;
                                                                //    936      %FINISH
#line 936 "regression-compile-tmp/hal7502.imp"
L_013b:;
                                                                //    937      %CYCLE
#line 937 "regression-compile-tmp/hal7502.imp"
L_013c:;
                                                                //    938      PUT CHAR(SYM)
#line 938 "regression-compile-tmp/hal7502.imp"
PUTCHAR(SYM);
                                                                //    939      %EXIT %IF SYM = NL
#line 939 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (10))) goto L_013f;
#line 939 "regression-compile-tmp/hal7502.imp"
goto L_013d;
#line 939 "regression-compile-tmp/hal7502.imp"
L_013f:;
                                                                //    940      READ SYMBOL(SYM)
#line 940 "regression-compile-tmp/hal7502.imp"
_imp_READSYMBOL(&SYM);
                                                                //    941      %REPEAT
#line 941 "regression-compile-tmp/hal7502.imp"
goto L_013c;
#line 941 "regression-compile-tmp/hal7502.imp"
L_013d:;
                                                                //    942      PRINTPOS = STARTPOS
#line 942 "regression-compile-tmp/hal7502.imp"
PRINTPOS = STARTPOS;
                                                                //    943      %finish %ELSE  %START
#line 943 "regression-compile-tmp/hal7502.imp"
goto L_0140;
#line 943 "regression-compile-tmp/hal7502.imp"
L_012e:;
                                                                //    944      GETPOS = INTEGER(MP)
#line 944 "regression-compile-tmp/hal7502.imp"
GETPOS = *_imp_INTEGER(MP);
                                                                //    945      %IF CHAR(GETPOS) = 0 %START
#line 945 "regression-compile-tmp/hal7502.imp"
if (((CHAR(GETPOS)) != (0))) goto L_0141;
                                                                //    946      QBASE = MP
#line 946 "regression-compile-tmp/hal7502.imp"
QBASE = MP;
                                                                //    947      %IF INTEGER(MP+1)&16_8000 # 0 %START
#line 947 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER((((int)(MP)) + (1)))) & (32768))) == (0))) goto L_0142;
                                                                //    948      %WHILE INTEGER(NP)&16_8000 = 0 %CYCLE
#line 948 "regression-compile-tmp/hal7502.imp"
L_0143:;
#line 948 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (32768))) != (0))) goto L_0144;
                                                                //    949      FAULT('C');  NP = NP+2
#line 949 "regression-compile-tmp/hal7502.imp"
FAULT(67);
#line 949 "regression-compile-tmp/hal7502.imp"
NP = (((int)(NP)) + (2));
                                                                //    950      %REPEAT
#line 950 "regression-compile-tmp/hal7502.imp"
goto L_0143;
#line 950 "regression-compile-tmp/hal7502.imp"
L_0144:;
                                                                //    951      SET LAB(LOC)
#line 951 "regression-compile-tmp/hal7502.imp"
SETLAB(LOC);
                                                                //    952      %FINISH
#line 952 "regression-compile-tmp/hal7502.imp"
L_0142:;
                                                                //    953      GETPOS = INTEGER(MP+2)
#line 953 "regression-compile-tmp/hal7502.imp"
GETPOS = *_imp_INTEGER((((int)(MP)) + (2)));
                                                                //    954      STARTPOS = INTEGER(MP+3)
#line 954 "regression-compile-tmp/hal7502.imp"
STARTPOS = *_imp_INTEGER((((int)(MP)) + (3)));
                                                                //    955      MP = INTEGER(MP+4)
#line 955 "regression-compile-tmp/hal7502.imp"
MP = *_imp_INTEGER((((int)(MP)) + (4)));
                                                                //    956      PRINTPOS = 0 %IF LIST&2 # 0
#line 956 "regression-compile-tmp/hal7502.imp"
if (((((LIST) & (2))) == (0))) goto L_0146;
#line 956 "regression-compile-tmp/hal7502.imp"
PRINTPOS = 0;
#line 956 "regression-compile-tmp/hal7502.imp"
L_0146:;
                                                                //    957      GET SYM;                    !TERMINATOR
#line 957 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    958      GET SYM %IF SYM = ';'
#line 958 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (59))) goto L_0147;
#line 958 "regression-compile-tmp/hal7502.imp"
GETSYM();
#line 958 "regression-compile-tmp/hal7502.imp"
L_0147:;
                                                                //    959      %RETURN
#line 959 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
                                                                //    960      %FINISH
#line 960 "regression-compile-tmp/hal7502.imp"
L_0141:;
                                                                //    961      PRINTPOS = STARTPOS %IF LIST&2 # 0
#line 961 "regression-compile-tmp/hal7502.imp"
if (((((LIST) & (2))) == (0))) goto L_0148;
#line 961 "regression-compile-tmp/hal7502.imp"
PRINTPOS = STARTPOS;
#line 961 "regression-compile-tmp/hal7502.imp"
L_0148:;
                                                                //    962      %CYCLE
#line 962 "regression-compile-tmp/hal7502.imp"
L_0149:;
                                                                //    963      SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
#line 963 "regression-compile-tmp/hal7502.imp"
SYM = CHAR(GETPOS);
#line 963 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (1));
                                                                //    964      %IF TAG %START
#line 964 "regression-compile-tmp/hal7502.imp"
if (!(TAG())) goto L_014c;
                                                                //    965      SYM=TERM %AND GETPOS=GETPOS-1 %IF TERM = ' '
#line 965 "regression-compile-tmp/hal7502.imp"
if (((TERM) != (32))) goto L_014d;
#line 965 "regression-compile-tmp/hal7502.imp"
SYM = TERM;
#line 965 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) - (1));
#line 965 "regression-compile-tmp/hal7502.imp"
L_014d:;
                                                                //    966      TYPE = INTEGER(MP);  VAL = GETPOS-1
#line 966 "regression-compile-tmp/hal7502.imp"
TYPE = *_imp_INTEGER(MP);
#line 966 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(GETPOS)) - (1));
                                                                //    967      LOOKUP(4)
#line 967 "regression-compile-tmp/hal7502.imp"
LOOKUP(4);
                                                                //    968      %WHILE TYPE # VAL %CYCLE
#line 968 "regression-compile-tmp/hal7502.imp"
L_014e:;
#line 968 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (VAL))) goto L_014f;
                                                                //    969      PUT CHAR(CHAR(TYPE))
#line 969 "regression-compile-tmp/hal7502.imp"
PUTCHAR(CHAR(TYPE));
                                                                //    970      TYPE = TYPE+1
#line 970 "regression-compile-tmp/hal7502.imp"
TYPE = (((int)(TYPE)) + (1));
                                                                //    971      %REPEAT
#line 971 "regression-compile-tmp/hal7502.imp"
goto L_014e;
#line 971 "regression-compile-tmp/hal7502.imp"
L_014f:;
                                                                //    972      %FINISH
#line 972 "regression-compile-tmp/hal7502.imp"
L_014c:;
                                                                //    973      %IF SYM = '?' %START
#line 973 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (63))) goto L_0151;
                                                                //    974      PUT CHAR(INTEGER(MP+1)>>5&31+'A')
#line 974 "regression-compile-tmp/hal7502.imp"
PUTCHAR((((int)((((int)(((*(unsigned int *)(_imp_INTEGER((((int)(MP)) + (1))))) >> (5)))) & (31)))) + (65)));
                                                                //    975      SYM = INTEGER(MP+1)&31+'A'
#line 975 "regression-compile-tmp/hal7502.imp"
SYM = (((int)(((*_imp_INTEGER((((int)(MP)) + (1)))) & (31)))) + (65));
                                                                //    976      %FINISH
#line 976 "regression-compile-tmp/hal7502.imp"
L_0151:;
                                                                //    977      PUT CHAR(SYM)
#line 977 "regression-compile-tmp/hal7502.imp"
PUTCHAR(SYM);
                                                                //    978      INTEGER(MP) = GETPOS
#line 978 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(MP) = GETPOS;
                                                                //    979      %EXIT %IF SYM = NL
#line 979 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (10))) goto L_0152;
#line 979 "regression-compile-tmp/hal7502.imp"
goto L_014a;
#line 979 "regression-compile-tmp/hal7502.imp"
L_0152:;
                                                                //    980      %REPEAT
#line 980 "regression-compile-tmp/hal7502.imp"
goto L_0149;
#line 980 "regression-compile-tmp/hal7502.imp"
L_014a:;
                                                                //    981      %FINISH
#line 981 "regression-compile-tmp/hal7502.imp"
L_0140:;
                                                                //    982      QBASE = (PUTPOS+1)>>1
#line 982 "regression-compile-tmp/hal7502.imp"
QBASE = (((((((int)(PUTPOS)) + (1)))) >> (1)));
                                                                //    983      GETPOS = STARTPOS;  GET SYM
#line 983 "regression-compile-tmp/hal7502.imp"
GETPOS = STARTPOS;
#line 983 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //    984  %END
#line 984 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block READLINE at level 2
                                                                //    985  
                                                                //    986  %ROUTINE SCAN ARG
#line 986 "regression-compile-tmp/hal7502.imp"
void SCANARG( void )
#line 986 "regression-compile-tmp/hal7502.imp"
{
                                                                //    987  !    SET TYPE,VAL TO START,LIM OF ARG IF NOT NULL
                                                                //    988  %INTEGER I,J
#line 988 "regression-compile-tmp/hal7502.imp"
int I;
#line 988 "regression-compile-tmp/hal7502.imp"
int J;
                                                                //    989      %RETURN %IF SYM='I' %AND CHAR(GETPOS)='F' %AND CHAR(GETPOS+1)=' '
#line 989 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (73))) goto L_0153;
#line 989 "regression-compile-tmp/hal7502.imp"
if (((CHAR(GETPOS)) != (70))) goto L_0153;
#line 989 "regression-compile-tmp/hal7502.imp"
if (((CHAR((((int)(GETPOS)) + (1)))) != (32))) goto L_0153;
#line 989 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 989 "regression-compile-tmp/hal7502.imp"
L_0153:;
                                                                //    990      I = GETPOS-1;  I = GETPOS %IF SYM = '['
#line 990 "regression-compile-tmp/hal7502.imp"
I = (((int)(GETPOS)) - (1));
#line 990 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (91))) goto L_0154;
#line 990 "regression-compile-tmp/hal7502.imp"
I = GETPOS;
#line 990 "regression-compile-tmp/hal7502.imp"
L_0154:;
                                                                //    991      J = 0
#line 991 "regression-compile-tmp/hal7502.imp"
J = 0;
                                                                //    992      %CYCLE
#line 992 "regression-compile-tmp/hal7502.imp"
L_0155:;
                                                                //    993      %EXIT %IF SYM = NL
#line 993 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (10))) goto L_0158;
#line 993 "regression-compile-tmp/hal7502.imp"
goto L_0156;
#line 993 "regression-compile-tmp/hal7502.imp"
L_0158:;
                                                                //    994      %EXIT %IF (SYM=' ' %OR SYM=',' %OR SYM=';') %AND J<=0
#line 994 "regression-compile-tmp/hal7502.imp"
if (((SYM) == (32))) goto L_014b;
#line 994 "regression-compile-tmp/hal7502.imp"
if (((SYM) == (44))) goto L_014b;
#line 994 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (59))) goto L_0159;
#line 994 "regression-compile-tmp/hal7502.imp"
L_014b:;
#line 994 "regression-compile-tmp/hal7502.imp"
if (((J) > (0))) goto L_0159;
#line 994 "regression-compile-tmp/hal7502.imp"
goto L_0156;
#line 994 "regression-compile-tmp/hal7502.imp"
L_0159:;
                                                                //    995      J = J+1 %IF SYM = '['
#line 995 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (91))) goto L_015a;
#line 995 "regression-compile-tmp/hal7502.imp"
J = (((int)(J)) + (1));
#line 995 "regression-compile-tmp/hal7502.imp"
L_015a:;
                                                                //    996      %IF SYM = ']' %START
#line 996 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (93))) goto L_015b;
                                                                //    997      J = J-1;  %EXIT %IF J = 0
#line 997 "regression-compile-tmp/hal7502.imp"
J = (((int)(J)) - (1));
#line 997 "regression-compile-tmp/hal7502.imp"
if (((J) != (0))) goto L_015c;
#line 997 "regression-compile-tmp/hal7502.imp"
goto L_0156;
#line 997 "regression-compile-tmp/hal7502.imp"
L_015c:;
                                                                //    998      %FINISH
#line 998 "regression-compile-tmp/hal7502.imp"
L_015b:;
                                                                //    999      SYM = CHAR(GETPOS);  GETPOS = GETPOS+1
#line 999 "regression-compile-tmp/hal7502.imp"
SYM = CHAR(GETPOS);
#line 999 "regression-compile-tmp/hal7502.imp"
GETPOS = (((int)(GETPOS)) + (1));
                                                                //   1000      %REPEAT
#line 1000 "regression-compile-tmp/hal7502.imp"
goto L_0155;
#line 1000 "regression-compile-tmp/hal7502.imp"
L_0156:;
                                                                //   1001      %IF GETPOS-1 # I %START
#line 1001 "regression-compile-tmp/hal7502.imp"
if ((((((int)(GETPOS)) - (1))) == (I))) goto L_015d;
                                                                //   1002      TYPE = I;  VAL = GETPOS-1
#line 1002 "regression-compile-tmp/hal7502.imp"
TYPE = I;
#line 1002 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(GETPOS)) - (1));
                                                                //   1003      %FINISH
#line 1003 "regression-compile-tmp/hal7502.imp"
L_015d:;
                                                                //   1004      GET SYM %IF SYM = ']'
#line 1004 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (93))) goto L_015e;
#line 1004 "regression-compile-tmp/hal7502.imp"
GETSYM();
#line 1004 "regression-compile-tmp/hal7502.imp"
L_015e:;
                                                                //   1005  %END
#line 1005 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block SCANARG at level 2
                                                                //   1006  
                                                                //   1007  %ROUTINE SET ACC
#line 1007 "regression-compile-tmp/hal7502.imp"
void SETACC( void )
#line 1007 "regression-compile-tmp/hal7502.imp"
{
                                                                //   1008  %INTEGER I
#line 1008 "regression-compile-tmp/hal7502.imp"
int I;
                                                                //   1009      ACC = -1;  ATYPE = -1;  CREG = -1
#line 1009 "regression-compile-tmp/hal7502.imp"
ACC = (-1);
#line 1009 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 1009 "regression-compile-tmp/hal7502.imp"
CREG = (-1);
                                                                //   1010      I = TEMPS
#line 1010 "regression-compile-tmp/hal7502.imp"
I = TEMPS;
                                                                //   1011      %RETURN %IF I = 0
#line 1011 "regression-compile-tmp/hal7502.imp"
if (((I) != (0))) goto L_015f;
#line 1011 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1011 "regression-compile-tmp/hal7502.imp"
L_015f:;
                                                                //   1012      %CYCLE
#line 1012 "regression-compile-tmp/hal7502.imp"
L_0160:;
                                                                //   1013      ACC = ACC+1
#line 1013 "regression-compile-tmp/hal7502.imp"
ACC = (((int)(ACC)) + (1));
                                                                //   1014      %RETURN %IF I&1 # 0
#line 1014 "regression-compile-tmp/hal7502.imp"
if (((((I) & (1))) == (0))) goto L_0163;
#line 1014 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
#line 1014 "regression-compile-tmp/hal7502.imp"
L_0163:;
                                                                //   1015      I = I>>1
#line 1015 "regression-compile-tmp/hal7502.imp"
I = (int)((((unsigned int)(I)) >> (1)));
                                                                //   1016      %REPEAT
#line 1016 "regression-compile-tmp/hal7502.imp"
goto L_0160;
                                                                //   1017  %END
#line 1017 "regression-compile-tmp/hal7502.imp"
return;
} // End of block SETACC at level 2
                                                                //   1018  
                                                                //   1019  !MAIN PROGRAM
                                                                //   1020  
                                                                //   1021  !RADIX 36 CONSTANTS
                                                                //   1022  %OWNINTEGER B=2184, IF=9991, ELS=5950, E=5403, FIN=6907, ISH=10490
#line 1022 "regression-compile-tmp/hal7502.imp"
static int B = 2184;
#line 1022 "regression-compile-tmp/hal7502.imp"
static int IF = 9991;
#line 1022 "regression-compile-tmp/hal7502.imp"
static int ELS = 5950;
#line 1022 "regression-compile-tmp/hal7502.imp"
static int E = 5403;
#line 1022 "regression-compile-tmp/hal7502.imp"
static int FIN = 6907;
#line 1022 "regression-compile-tmp/hal7502.imp"
static int ISH = 10490;
                                                                //   1023  %OWNINTEGER JUM=11642, P=17206, PS=17983, DEF=4605, END=6009
#line 1023 "regression-compile-tmp/hal7502.imp"
static int JUM = 11642;
#line 1023 "regression-compile-tmp/hal7502.imp"
static int P = 17206;
#line 1023 "regression-compile-tmp/hal7502.imp"
static int PS = 17983;
#line 1023 "regression-compile-tmp/hal7502.imp"
static int DEF = 4605;
#line 1023 "regression-compile-tmp/hal7502.imp"
static int END = 6009;
                                                                //   1024  
                                                                //   1025  %INTEGER I,J,K
#line 1025 "regression-compile-tmp/hal7502.imp"
int I;
#line 1025 "regression-compile-tmp/hal7502.imp"
int J;
#line 1025 "regression-compile-tmp/hal7502.imp"
int K;
                                                                //   1026  !!%FAULT 19 ->ERR;                      !RECOGNITION ERROR
                                                                //   1027  !!%FAULT 9 ->BEND;                      !INPUT ENDED
                                                                //   1028  
                                                                //   1029      %CYCLE I = 1,1,SBOUND
#line 1029 "regression-compile-tmp/hal7502.imp"
{static int _initial, _increment, _final, _control;
_initial = 1; _increment = 1; _final = SBOUND; I = _control = _initial;
if (((_final-_initial) % _increment) != 0) _imp_signal(5,1,0,"Illegal cycle I = 1, 1, SBOUND");
I -= _increment; _control -= _increment;
L_0164:;
if (I == _final) goto L_0165;
I += _increment; _control += _increment;
if (I != _control) _imp_signal(4,2,0,"Corrupt control variable I"); /* FOR loop control variable corrupted */
}
                                                                //   1030      STORE(I) = 0
#line 1030 "regression-compile-tmp/hal7502.imp"
STORE[(((int)(I)) - (1))] = 0;
                                                                //   1031      %REPEAT
#line 1031 "regression-compile-tmp/hal7502.imp"
goto L_0164;
#line 1031 "regression-compile-tmp/hal7502.imp"
L_0165:;
                                                                //   1032      CODEPOS = ADDR(STORE(1))
#line 1032 "regression-compile-tmp/hal7502.imp"
CODEPOS = _imp_ADDR(&STORE[0]);
                                                                //   1033      MACLIM = (CODEPOS+20)<<1
#line 1033 "regression-compile-tmp/hal7502.imp"
MACLIM = (((((int)(CODEPOS)) + (20))) << (1));
                                                                //   1034      STORELIM = ADDR(STORE(SBOUND))
#line 1034 "regression-compile-tmp/hal7502.imp"
STORELIM = _imp_ADDR(&STORE[(((int)(SBOUND)) - (1))]);
                                                                //   1035      NP = STORELIM
#line 1035 "regression-compile-tmp/hal7502.imp"
NP = STORELIM;
                                                                //   1036      LABLIM = NP-60
#line 1036 "regression-compile-tmp/hal7502.imp"
LABLIM = (((int)(NP)) - (60));
                                                                //   1037      BP = LABLIM
#line 1037 "regression-compile-tmp/hal7502.imp"
BP = LABLIM;
                                                                //   1038      DEFLIM = STORELIM-(SBOUND>>2)
#line 1038 "regression-compile-tmp/hal7502.imp"
DEFLIM = ((STORELIM) - ((int)((int)((((unsigned int)(SBOUND)) >> (2))))));
                                                                //   1039      DEFMIN = DEFLIM
#line 1039 "regression-compile-tmp/hal7502.imp"
DEFMIN = DEFLIM;
                                                                //   1040      INTEGER(BP) = DEFLIM
#line 1040 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(BP) = DEFLIM;
                                                                //   1041      SELECT INPUT(PRE)
#line 1041 "regression-compile-tmp/hal7502.imp"
_imp_SELECTINPUT(PRE);
                                                                //   1042  DO PASS:
#line 1042 "regression-compile-tmp/hal7502.imp"
U_100d:;
                                                                //   1043      PUT WORD(0) %AND CONTROL=16_20 %IF PASS > 0
#line 1043 "regression-compile-tmp/hal7502.imp"
if (((PASS) <= (0))) goto L_0167;
#line 1043 "regression-compile-tmp/hal7502.imp"
PUTWORD(0);
#line 1043 "regression-compile-tmp/hal7502.imp"
CONTROL = 32;
#line 1043 "regression-compile-tmp/hal7502.imp"
L_0167:;
                                                                //   1044      STARTPOS = MACLIM
#line 1044 "regression-compile-tmp/hal7502.imp"
STARTPOS = MACLIM;
                                                                //   1045      MP = 0
#line 1045 "regression-compile-tmp/hal7502.imp"
MP = 0;
                                                                //   1046      ALMAX = DEFLIM
#line 1046 "regression-compile-tmp/hal7502.imp"
ALMAX = DEFLIM;
                                                                //   1047      LABMIN = LABLIM
#line 1047 "regression-compile-tmp/hal7502.imp"
LABMIN = LABLIM;
                                                                //   1048      ASSCOND = 1;  SKIP = 0
#line 1048 "regression-compile-tmp/hal7502.imp"
ASSCOND = 1;
#line 1048 "regression-compile-tmp/hal7502.imp"
SKIP = 0;
                                                                //   1049      LOCTYPE = MEMMASK+RELMASK;  LOC = 0
#line 1049 "regression-compile-tmp/hal7502.imp"
LOCTYPE = (((int)(MEMMASK)) + (RELMASK));
#line 1049 "regression-compile-tmp/hal7502.imp"
LOC = 0;
                                                                //   1050      SET ACC
#line 1050 "regression-compile-tmp/hal7502.imp"
SETACC();
                                                                //   1051  READ: FSYM = ' ';  FAULTPOS = 0
#line 1051 "regression-compile-tmp/hal7502.imp"
U_100e:;
#line 1051 "regression-compile-tmp/hal7502.imp"
FSYM = 32;
#line 1051 "regression-compile-tmp/hal7502.imp"
FAULTPOS = 0;
                                                                //   1052      READ LINE
#line 1052 "regression-compile-tmp/hal7502.imp"
READLINE();
                                                                //   1053  NEXT:
#line 1053 "regression-compile-tmp/hal7502.imp"
U_100f:;
                                                                //   1054      DREG = -1
#line 1054 "regression-compile-tmp/hal7502.imp"
DREG = (-1);
                                                                //   1055      MODE = 0
#line 1055 "regression-compile-tmp/hal7502.imp"
MODE = 0;
                                                                //   1056      PEND = 0;  COND = 0
#line 1056 "regression-compile-tmp/hal7502.imp"
PEND = 0;
#line 1056 "regression-compile-tmp/hal7502.imp"
COND = 0;
                                                                //   1057      QSTART = QBASE;  QLIM = QSTART
#line 1057 "regression-compile-tmp/hal7502.imp"
QSTART = QBASE;
#line 1057 "regression-compile-tmp/hal7502.imp"
QLIM = QSTART;
                                                                //   1058      FLAG = 0
#line 1058 "regression-compile-tmp/hal7502.imp"
FLAG = 0;
                                                                //   1059      %IF S('$') %START
#line 1059 "regression-compile-tmp/hal7502.imp"
if (!(S(36))) goto L_0168;
                                                                //   1060      ->NEWPAGE %IF SYM = '/'
#line 1060 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (47))) goto L_0169;
#line 1060 "regression-compile-tmp/hal7502.imp"
goto U_1010;
#line 1060 "regression-compile-tmp/hal7502.imp"
L_0169:;
                                                                //   1061      ->ERR %IF %NOT TAG
#line 1061 "regression-compile-tmp/hal7502.imp"
if (TAG()) goto L_016a;
#line 1061 "regression-compile-tmp/hal7502.imp"
goto U_1011;
#line 1061 "regression-compile-tmp/hal7502.imp"
L_016a:;
                                                                //   1062      ->ASSIF %IF TAG1 = IF
#line 1062 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (IF))) goto L_016b;
#line 1062 "regression-compile-tmp/hal7502.imp"
goto U_1012;
#line 1062 "regression-compile-tmp/hal7502.imp"
L_016b:;
                                                                //   1063      ->ASSELSE %IF TAG1 = ELS
#line 1063 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (ELS))) goto L_016c;
#line 1063 "regression-compile-tmp/hal7502.imp"
goto U_1013;
#line 1063 "regression-compile-tmp/hal7502.imp"
L_016c:;
                                                                //   1064      ->ASSFIN %IF TAG1 = FIN
#line 1064 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (FIN))) goto L_016d;
#line 1064 "regression-compile-tmp/hal7502.imp"
goto U_1014;
#line 1064 "regression-compile-tmp/hal7502.imp"
L_016d:;
                                                                //   1065      ->LEND %IF SKIP # 0
#line 1065 "regression-compile-tmp/hal7502.imp"
if (((SKIP) == (0))) goto L_016e;
#line 1065 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1065 "regression-compile-tmp/hal7502.imp"
L_016e:;
                                                                //   1066      ->DEFINE %IF TAG1 = DEF
#line 1066 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (DEF))) goto L_016f;
#line 1066 "regression-compile-tmp/hal7502.imp"
goto U_1000;
#line 1066 "regression-compile-tmp/hal7502.imp"
L_016f:;
                                                                //   1067      ->DEFINE %IF TAG1 = 19625;     !RED
#line 1067 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (19625))) goto L_0170;
#line 1067 "regression-compile-tmp/hal7502.imp"
goto U_1000;
#line 1067 "regression-compile-tmp/hal7502.imp"
L_0170:;
                                                                //   1068      ->LISTC %IF TAG1 = 13350;      !LIS
#line 1068 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (13350))) goto L_0171;
#line 1068 "regression-compile-tmp/hal7502.imp"
goto U_1016;
#line 1068 "regression-compile-tmp/hal7502.imp"
L_0171:;
                                                                //   1069      ->TEMP %IF TAG1 = 21780;       !TEM
#line 1069 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (21780))) goto L_0172;
#line 1069 "regression-compile-tmp/hal7502.imp"
goto U_1001;
#line 1069 "regression-compile-tmp/hal7502.imp"
L_0172:;
                                                                //   1070      ->LOCC %IF TAG1 = 13556;       !LOC
#line 1070 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (13556))) goto L_0173;
#line 1070 "regression-compile-tmp/hal7502.imp"
goto U_1002;
#line 1070 "regression-compile-tmp/hal7502.imp"
L_0173:;
                                                                //   1071      ->LOCC %IF TAG1 = 1917;        !ASS
#line 1071 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (1917))) goto L_0174;
#line 1071 "regression-compile-tmp/hal7502.imp"
goto U_1002;
#line 1071 "regression-compile-tmp/hal7502.imp"
L_0174:;
                                                                //   1072      ->SAVC %IF TAG1 = 20568;       !SAV
#line 1072 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (20568))) goto L_0175;
#line 1072 "regression-compile-tmp/hal7502.imp"
goto U_1017;
#line 1072 "regression-compile-tmp/hal7502.imp"
L_0175:;
                                                                //   1073      ->MACDEF %IF TAG1 = 14111;     !MAC
#line 1073 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (14111))) goto L_0176;
#line 1073 "regression-compile-tmp/hal7502.imp"
goto U_1003;
#line 1073 "regression-compile-tmp/hal7502.imp"
L_0176:;
                                                                //   1074      ->BEGIN %IF TAG1 = 2460;       !BEG
#line 1074 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (2460))) goto L_0177;
#line 1074 "regression-compile-tmp/hal7502.imp"
goto U_1004;
#line 1074 "regression-compile-tmp/hal7502.imp"
L_0177:;
                                                                //   1075      ->BEND %IF TAG1 = END
#line 1075 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (END))) goto L_0178;
#line 1075 "regression-compile-tmp/hal7502.imp"
goto U_1005;
#line 1075 "regression-compile-tmp/hal7502.imp"
L_0178:;
                                                                //   1076      FAULT('U')
#line 1076 "regression-compile-tmp/hal7502.imp"
FAULT(85);
                                                                //   1077      ->LEND
#line 1077 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1078      %FINISH
#line 1078 "regression-compile-tmp/hal7502.imp"
L_0168:;
                                                                //   1079      ->LEND %IF SKIP # 0 %OR SYM = '/'
#line 1079 "regression-compile-tmp/hal7502.imp"
if (((SKIP) != (0))) goto L_0166;
#line 1079 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (47))) goto L_0179;
#line 1079 "regression-compile-tmp/hal7502.imp"
L_0166:;
#line 1079 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1079 "regression-compile-tmp/hal7502.imp"
L_0179:;
                                                                //   1080      %IF SYM = NL %START
#line 1080 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (10))) goto L_017a;
                                                                //   1081      ->LEND %IF LINES < 54
#line 1081 "regression-compile-tmp/hal7502.imp"
if (((LINES) >= (54))) goto L_017b;
#line 1081 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1081 "regression-compile-tmp/hal7502.imp"
L_017b:;
                                                                //   1082      DO NEWLINE %WHILE LINES # 0
#line 1082 "regression-compile-tmp/hal7502.imp"
L_017c:;
#line 1082 "regression-compile-tmp/hal7502.imp"
if (((LINES) == (0))) goto L_017d;
#line 1082 "regression-compile-tmp/hal7502.imp"
DONEWLINE();
#line 1082 "regression-compile-tmp/hal7502.imp"
goto L_017c;
#line 1082 "regression-compile-tmp/hal7502.imp"
L_017d:;
                                                                //   1083      ->READ
#line 1083 "regression-compile-tmp/hal7502.imp"
goto U_100e;
                                                                //   1084      %FINISH
#line 1084 "regression-compile-tmp/hal7502.imp"
L_017a:;
                                                                //   1085      %IF TAG %START
#line 1085 "regression-compile-tmp/hal7502.imp"
if (!(TAG())) goto L_017f;
                                                                //   1086      ->LABDEF %IF TERM = ':'
#line 1086 "regression-compile-tmp/hal7502.imp"
if (((TERM) != (58))) goto L_0180;
#line 1086 "regression-compile-tmp/hal7502.imp"
goto U_1006;
#line 1086 "regression-compile-tmp/hal7502.imp"
L_0180:;
                                                                //   1087      MODE = 1
#line 1087 "regression-compile-tmp/hal7502.imp"
MODE = 1;
                                                                //   1088      ->ASSIGN %IF TERM = '(' %OR SYM = '='
#line 1088 "regression-compile-tmp/hal7502.imp"
if (((TERM) == (40))) goto L_017e;
#line 1088 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (61))) goto L_0181;
#line 1088 "regression-compile-tmp/hal7502.imp"
L_017e:;
#line 1088 "regression-compile-tmp/hal7502.imp"
goto U_1018;
#line 1088 "regression-compile-tmp/hal7502.imp"
L_0181:;
                                                                //   1089      ->JUMP %IF TAG1 = JUM %AND (TAG2=P %OR TAG2=PS)
#line 1089 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (JUM))) goto L_0182;
#line 1089 "regression-compile-tmp/hal7502.imp"
if (((TAG2) == (P))) goto L_0183;
#line 1089 "regression-compile-tmp/hal7502.imp"
if (((TAG2) != (PS))) goto L_0182;
#line 1089 "regression-compile-tmp/hal7502.imp"
L_0183:;
#line 1089 "regression-compile-tmp/hal7502.imp"
goto U_1019;
#line 1089 "regression-compile-tmp/hal7502.imp"
L_0182:;
                                                                //   1090      ->IFC %IF TAG1 = IF
#line 1090 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (IF))) goto L_0184;
#line 1090 "regression-compile-tmp/hal7502.imp"
goto U_101a;
#line 1090 "regression-compile-tmp/hal7502.imp"
L_0184:;
                                                                //   1091      ->ELSE %IF TAG1 = ELS %AND TAG2 = E
#line 1091 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (ELS))) goto L_0185;
#line 1091 "regression-compile-tmp/hal7502.imp"
if (((TAG2) != (E))) goto L_0185;
#line 1091 "regression-compile-tmp/hal7502.imp"
goto U_101b;
#line 1091 "regression-compile-tmp/hal7502.imp"
L_0185:;
                                                                //   1092      ->FINISH %IF TAG1 = FIN %AND TAG2 = ISH
#line 1092 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (FIN))) goto L_0186;
#line 1092 "regression-compile-tmp/hal7502.imp"
if (((TAG2) != (ISH))) goto L_0186;
#line 1092 "regression-compile-tmp/hal7502.imp"
goto U_101c;
#line 1092 "regression-compile-tmp/hal7502.imp"
L_0186:;
                                                                //   1093      ->WHILE %IF TAG1 = 25106 %AND TAG2 = 13173
#line 1093 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (25106))) goto L_0187;
#line 1093 "regression-compile-tmp/hal7502.imp"
if (((TAG2) != (13173))) goto L_0187;
#line 1093 "regression-compile-tmp/hal7502.imp"
goto U_101d;
#line 1093 "regression-compile-tmp/hal7502.imp"
L_0187:;
                                                                //   1094      ->CYCLE %IF TAG1 = 4269 %AND TAG2 = 13173
#line 1094 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (4269))) goto L_0188;
#line 1094 "regression-compile-tmp/hal7502.imp"
if (((TAG2) != (13173))) goto L_0188;
#line 1094 "regression-compile-tmp/hal7502.imp"
goto U_101e;
#line 1094 "regression-compile-tmp/hal7502.imp"
L_0188:;
                                                                //   1095      ->REPEAT %IF TAG1 = 19637 %AND TAG2 = 5544
#line 1095 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (19637))) goto L_0189;
#line 1095 "regression-compile-tmp/hal7502.imp"
if (((TAG2) != (5544))) goto L_0189;
#line 1095 "regression-compile-tmp/hal7502.imp"
goto U_101f;
#line 1095 "regression-compile-tmp/hal7502.imp"
L_0189:;
                                                                //   1096      MODE=-2 %AND ->DATA %IF TAG1 = B
#line 1096 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (B))) goto L_018a;
#line 1096 "regression-compile-tmp/hal7502.imp"
MODE = (-2);
#line 1096 "regression-compile-tmp/hal7502.imp"
goto U_1020;
#line 1096 "regression-compile-tmp/hal7502.imp"
L_018a:;
                                                                //   1097      TYPE = UMASK;  LOOKUP(0)
#line 1097 "regression-compile-tmp/hal7502.imp"
TYPE = UMASK;
#line 1097 "regression-compile-tmp/hal7502.imp"
LOOKUP(0);
                                                                //   1098      ->MACCALL %IF TYPE&OPMASK = MACRO
#line 1098 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (OPMASK))) != (MACRO))) goto L_018b;
#line 1098 "regression-compile-tmp/hal7502.imp"
goto U_1021;
#line 1098 "regression-compile-tmp/hal7502.imp"
L_018b:;
                                                                //   1099      ->MINST %IF TYPE&OPMASK # 0
#line 1099 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (OPMASK))) == (0))) goto L_018c;
#line 1099 "regression-compile-tmp/hal7502.imp"
goto U_1022;
#line 1099 "regression-compile-tmp/hal7502.imp"
L_018c:;
                                                                //   1100      FAULT('U') %AND ->LEND %IF TYPE&UMASK # 0
#line 1100 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (UMASK))) == (0))) goto L_018d;
#line 1100 "regression-compile-tmp/hal7502.imp"
FAULT(85);
#line 1100 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1100 "regression-compile-tmp/hal7502.imp"
L_018d:;
                                                                //   1101      PEND = -1
#line 1101 "regression-compile-tmp/hal7502.imp"
PEND = (-1);
                                                                //   1102      %FINISH
#line 1102 "regression-compile-tmp/hal7502.imp"
L_017f:;
                                                                //   1103      MODE = -1
#line 1103 "regression-compile-tmp/hal7502.imp"
MODE = (-1);
                                                                //   1104  DATA:
#line 1104 "regression-compile-tmp/hal7502.imp"
U_1020:;
                                                                //   1105      %CYCLE
#line 1105 "regression-compile-tmp/hal7502.imp"
L_018e:;
                                                                //   1106      GET EXP;  ASSEMBLE
#line 1106 "regression-compile-tmp/hal7502.imp"
GETEXP();
#line 1106 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1107      FAULT('I') %IF TYPE&REGXMASK # 0
#line 1107 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (REGXMASK))) == (0))) goto L_0191;
#line 1107 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 1107 "regression-compile-tmp/hal7502.imp"
L_0191:;
                                                                //   1108      I = 1
#line 1108 "regression-compile-tmp/hal7502.imp"
I = 1;
                                                                //   1109      %IF S('$') %START
#line 1109 "regression-compile-tmp/hal7502.imp"
if (!(S(36))) goto L_0192;
                                                                //   1110      I = VAL %IF VAL < 1000
#line 1110 "regression-compile-tmp/hal7502.imp"
if (((VAL) >= (1000))) goto L_0193;
#line 1110 "regression-compile-tmp/hal7502.imp"
I = VAL;
#line 1110 "regression-compile-tmp/hal7502.imp"
L_0193:;
                                                                //   1111      QLIM = QSTART
#line 1111 "regression-compile-tmp/hal7502.imp"
QLIM = QSTART;
                                                                //   1112      GET EXP;  ASSEMBLE
#line 1112 "regression-compile-tmp/hal7502.imp"
GETEXP();
#line 1112 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1113      %FINISH
#line 1113 "regression-compile-tmp/hal7502.imp"
L_0192:;
                                                                //   1114      %WHILE I > 0 %CYCLE
#line 1114 "regression-compile-tmp/hal7502.imp"
L_0194:;
#line 1114 "regression-compile-tmp/hal7502.imp"
if (((I) <= (0))) goto L_0195;
                                                                //   1115      %IF MODE # -1 %START
#line 1115 "regression-compile-tmp/hal7502.imp"
if (((MODE) == ((-1)))) goto L_0197;
                                                                //   1116      FAULT('T') %IF VAL&16_FF00 # 0
#line 1116 "regression-compile-tmp/hal7502.imp"
if (((((VAL) & (65280))) == (0))) goto L_0198;
#line 1116 "regression-compile-tmp/hal7502.imp"
FAULT(84);
#line 1116 "regression-compile-tmp/hal7502.imp"
L_0198:;
                                                                //   1117      %IF MODE = -2 %START
#line 1117 "regression-compile-tmp/hal7502.imp"
if (((MODE) != ((-2)))) goto L_0199;
                                                                //   1118      J = VAL<<8;  MODE = -3
#line 1118 "regression-compile-tmp/hal7502.imp"
J = ((VAL) << (8));
#line 1118 "regression-compile-tmp/hal7502.imp"
MODE = (-3);
                                                                //   1119      %finish %ELSE  %START
#line 1119 "regression-compile-tmp/hal7502.imp"
goto L_019a;
#line 1119 "regression-compile-tmp/hal7502.imp"
L_0199:;
                                                                //   1120      VAL = VAL+J;  MODE = -2
#line 1120 "regression-compile-tmp/hal7502.imp"
VAL = (((int)(VAL)) + (J));
#line 1120 "regression-compile-tmp/hal7502.imp"
MODE = (-2);
                                                                //   1121      PLANT VAL
#line 1121 "regression-compile-tmp/hal7502.imp"
PLANTVAL();
                                                                //   1122      %FINISH
#line 1122 "regression-compile-tmp/hal7502.imp"
L_019a:;
                                                                //   1123      %finish %ELSE  %START
#line 1123 "regression-compile-tmp/hal7502.imp"
goto L_019b;
#line 1123 "regression-compile-tmp/hal7502.imp"
L_0197:;
                                                                //   1124      PLANT VAL;  VAL = VAL&255
#line 1124 "regression-compile-tmp/hal7502.imp"
PLANTVAL();
#line 1124 "regression-compile-tmp/hal7502.imp"
VAL = ((VAL) & (255));
                                                                //   1125      %FINISH
#line 1125 "regression-compile-tmp/hal7502.imp"
L_019b:;
                                                                //   1126      I = I-1
#line 1126 "regression-compile-tmp/hal7502.imp"
I = (((int)(I)) - (1));
                                                                //   1127      %REPEAT
#line 1127 "regression-compile-tmp/hal7502.imp"
goto L_0194;
#line 1127 "regression-compile-tmp/hal7502.imp"
L_0195:;
                                                                //   1128      %EXIT %UNLESS S(',') %OR SYM&128 # 0
#line 1128 "regression-compile-tmp/hal7502.imp"
if (S(44)) goto L_019c;
#line 1128 "regression-compile-tmp/hal7502.imp"
if (((((SYM) & (128))) != (0))) goto L_019c;
#line 1128 "regression-compile-tmp/hal7502.imp"
goto L_018f;
#line 1128 "regression-compile-tmp/hal7502.imp"
L_019c:;
                                                                //   1129      %IF SYM = NL %START
#line 1129 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (10))) goto L_019d;
                                                                //   1130      PRINT LINE %IF PRINTPOS # 0;  READ LINE
#line 1130 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) == (0))) goto L_019e;
#line 1130 "regression-compile-tmp/hal7502.imp"
PRINTLINE();
#line 1130 "regression-compile-tmp/hal7502.imp"
L_019e:;
#line 1130 "regression-compile-tmp/hal7502.imp"
READLINE();
                                                                //   1131      QSTART = QBASE
#line 1131 "regression-compile-tmp/hal7502.imp"
QSTART = QBASE;
                                                                //   1132      %FINISH
#line 1132 "regression-compile-tmp/hal7502.imp"
L_019d:;
                                                                //   1133      QLIM = QSTART
#line 1133 "regression-compile-tmp/hal7502.imp"
QLIM = QSTART;
                                                                //   1134      %REPEAT
#line 1134 "regression-compile-tmp/hal7502.imp"
goto L_018e;
#line 1134 "regression-compile-tmp/hal7502.imp"
L_018f:;
                                                                //   1135      VAL=J %AND PLANT VAL %IF MODE = -3
#line 1135 "regression-compile-tmp/hal7502.imp"
if (((MODE) != ((-3)))) goto L_019f;
#line 1135 "regression-compile-tmp/hal7502.imp"
VAL = J;
#line 1135 "regression-compile-tmp/hal7502.imp"
PLANTVAL();
#line 1135 "regression-compile-tmp/hal7502.imp"
L_019f:;
                                                                //   1136      ->SEND
#line 1136 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1137  
                                                                //   1138  LABDEF:
#line 1138 "regression-compile-tmp/hal7502.imp"
U_1006:;
                                                                //   1139      CREG = -1;  ATYPE = -1
#line 1139 "regression-compile-tmp/hal7502.imp"
CREG = (-1);
#line 1139 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
                                                                //   1140      GET SYM
#line 1140 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //   1141      FAULT('C') %AND NP=STORELIM %IF NP # STORELIM
#line 1141 "regression-compile-tmp/hal7502.imp"
if (((NP) == (STORELIM))) goto L_01a0;
#line 1141 "regression-compile-tmp/hal7502.imp"
FAULT(67);
#line 1141 "regression-compile-tmp/hal7502.imp"
NP = STORELIM;
#line 1141 "regression-compile-tmp/hal7502.imp"
L_01a0:;
                                                                //   1142      TYPE = LOCTYPE;  VAL = LOC
#line 1142 "regression-compile-tmp/hal7502.imp"
TYPE = LOCTYPE;
#line 1142 "regression-compile-tmp/hal7502.imp"
VAL = LOC;
                                                                //   1143      LOOKUP(7)
#line 1143 "regression-compile-tmp/hal7502.imp"
LOOKUP(7);
                                                                //   1144      ->NEXT
#line 1144 "regression-compile-tmp/hal7502.imp"
goto U_100f;
                                                                //   1145  
                                                                //   1146  ASSIGN:
#line 1146 "regression-compile-tmp/hal7502.imp"
U_1018:;
                                                                //   1147      PEND = 1
#line 1147 "regression-compile-tmp/hal7502.imp"
PEND = 1;
                                                                //   1148      GET EXP
#line 1148 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //   1149      ->ERR %IF %NOT S('=')
#line 1149 "regression-compile-tmp/hal7502.imp"
if (S(61)) goto L_01a1;
#line 1149 "regression-compile-tmp/hal7502.imp"
goto U_1011;
#line 1149 "regression-compile-tmp/hal7502.imp"
L_01a1:;
                                                                //   1150      QUEUE(-25);                       !'STORE'
#line 1150 "regression-compile-tmp/hal7502.imp"
QUEUE((-25));
                                                                //   1151      %IF INTEGER(QBASE) = REG %START
#line 1151 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER(QBASE)) != (REG))) goto L_01a2;
                                                                //   1152      DREG = INTEGER(QBASE+1)
#line 1152 "regression-compile-tmp/hal7502.imp"
DREG = *_imp_INTEGER((((int)(QBASE)) + (1)));
                                                                //   1153      DUSE = 0
#line 1153 "regression-compile-tmp/hal7502.imp"
DUSE = 0;
                                                                //   1154      %FINISH
#line 1154 "regression-compile-tmp/hal7502.imp"
L_01a2:;
                                                                //   1155      QSTART = QLIM;  MODE = 2
#line 1155 "regression-compile-tmp/hal7502.imp"
QSTART = QLIM;
#line 1155 "regression-compile-tmp/hal7502.imp"
MODE = 2;
                                                                //   1156      GET EXP
#line 1156 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //   1157      QUEUE(-24);                       !'LOAD'
#line 1157 "regression-compile-tmp/hal7502.imp"
QUEUE((-24));
                                                                //   1158  
                                                                //   1159  CONDQ:
#line 1159 "regression-compile-tmp/hal7502.imp"
U_1024:;
                                                                //   1160      %IF TAGIF %START
#line 1160 "regression-compile-tmp/hal7502.imp"
if (!(TAGIF())) goto L_01a3;
                                                                //   1161      MODE = MODE+4;  DREG = DREG-16; !SCARIFY
#line 1161 "regression-compile-tmp/hal7502.imp"
MODE = (((int)(MODE)) + (4));
#line 1161 "regression-compile-tmp/hal7502.imp"
DREG = (((int)(DREG)) - (16));
                                                                //   1162      GET COND;  ASSEMBLE
#line 1162 "regression-compile-tmp/hal7502.imp"
GETCOND();
#line 1162 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1163      MODE = MODE-4;  DREG = DREG+16; !RESTORE
#line 1163 "regression-compile-tmp/hal7502.imp"
MODE = (((int)(MODE)) - (4));
#line 1163 "regression-compile-tmp/hal7502.imp"
DREG = (((int)(DREG)) + (16));
                                                                //   1164      QLIM = QSTART;  QSTART = TRANSF
#line 1164 "regression-compile-tmp/hal7502.imp"
QLIM = QSTART;
#line 1164 "regression-compile-tmp/hal7502.imp"
QSTART = TRANSF;
                                                                //   1165      %FINISH
#line 1165 "regression-compile-tmp/hal7502.imp"
L_01a3:;
                                                                //   1166      ASSEMBLE
#line 1166 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1167      ->SEND
#line 1167 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1168  
                                                                //   1169  JUMP:
#line 1169 "regression-compile-tmp/hal7502.imp"
U_1019:;
                                                                //   1170      FLAG = TAG2-P;                    !POSITIVE IF SHORT
#line 1170 "regression-compile-tmp/hal7502.imp"
FLAG = (((int)(TAG2)) - (P));
                                                                //   1171      GET EXP
#line 1171 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //   1172      QUEUE(-26);                       !'JUMP'
#line 1172 "regression-compile-tmp/hal7502.imp"
QUEUE((-26));
                                                                //   1173      ->CONDQ
#line 1173 "regression-compile-tmp/hal7502.imp"
goto U_1024;
                                                                //   1174  
                                                                //   1175  MINST:
#line 1175 "regression-compile-tmp/hal7502.imp"
U_1022:;
                                                                //   1176      MODE = -1
#line 1176 "regression-compile-tmp/hal7502.imp"
MODE = (-1);
                                                                //   1177      GET INST
#line 1177 "regression-compile-tmp/hal7502.imp"
GETINST();
                                                                //   1178      QUEUE(-23);                       !'PLANT'
#line 1178 "regression-compile-tmp/hal7502.imp"
QUEUE((-23));
                                                                //   1179      ->CONDQ
#line 1179 "regression-compile-tmp/hal7502.imp"
goto U_1024;
                                                                //   1180  
                                                                //   1181  MACCALL:
#line 1181 "regression-compile-tmp/hal7502.imp"
U_1021:;
                                                                //   1182      QUEUE(VAL);                       !DEFPOS
#line 1182 "regression-compile-tmp/hal7502.imp"
QUEUE(VAL);
                                                                //   1183      QUEUE(TYPE&1023);                 !JOKER
#line 1183 "regression-compile-tmp/hal7502.imp"
QUEUE(((TYPE) & (1023)));
                                                                //   1184      QUEUE(0);                         !(CALLPOS)
#line 1184 "regression-compile-tmp/hal7502.imp"
QUEUE(0);
                                                                //   1185      QUEUE(STARTPOS)
#line 1185 "regression-compile-tmp/hal7502.imp"
QUEUE(STARTPOS);
                                                                //   1186      QUEUE(MP)
#line 1186 "regression-compile-tmp/hal7502.imp"
QUEUE(MP);
                                                                //   1187      %CYCLE
#line 1187 "regression-compile-tmp/hal7502.imp"
L_01a4:;
                                                                //   1188      %EXIT %IF CHAR(INTEGER(QBASE)) = NL; !END OF MAC DEF
#line 1188 "regression-compile-tmp/hal7502.imp"
if (((CHAR(*_imp_INTEGER(QBASE))) != (10))) goto L_01a7;
#line 1188 "regression-compile-tmp/hal7502.imp"
goto L_01a5;
#line 1188 "regression-compile-tmp/hal7502.imp"
L_01a7:;
                                                                //   1189      I = GETPOS-1;                  !SAVE CALLPOS
#line 1189 "regression-compile-tmp/hal7502.imp"
I = (((int)(GETPOS)) - (1));
                                                                //   1190      GETPOS = INTEGER(QBASE);  GET SYM
#line 1190 "regression-compile-tmp/hal7502.imp"
GETPOS = *_imp_INTEGER(QBASE);
#line 1190 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //   1191      !!%MONITOR 24 %IF %NOT TAG
                                                                //   1192      TYPE = 0;  VAL = 0
#line 1192 "regression-compile-tmp/hal7502.imp"
TYPE = 0;
#line 1192 "regression-compile-tmp/hal7502.imp"
VAL = 0;
                                                                //   1193      SCAN ARG
#line 1193 "regression-compile-tmp/hal7502.imp"
SCANARG();
                                                                //   1194      GET SYM %IF SYM = ','
#line 1194 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (44))) goto L_01a8;
#line 1194 "regression-compile-tmp/hal7502.imp"
GETSYM();
#line 1194 "regression-compile-tmp/hal7502.imp"
L_01a8:;
                                                                //   1195      INTEGER(QBASE) = GETPOS-1;        !UPDATE DEFPOS
#line 1195 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(QBASE) = (((int)(GETPOS)) - (1));
                                                                //   1196      GETPOS = I;  GET SYM;             !RESTORE CALLPOS
#line 1196 "regression-compile-tmp/hal7502.imp"
GETPOS = I;
#line 1196 "regression-compile-tmp/hal7502.imp"
GETSYM();
                                                                //   1197      SCAN ARG
#line 1197 "regression-compile-tmp/hal7502.imp"
SCANARG();
                                                                //   1198      GET SYM %IF SYM = ','
#line 1198 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (44))) goto L_01a9;
#line 1198 "regression-compile-tmp/hal7502.imp"
GETSYM();
#line 1198 "regression-compile-tmp/hal7502.imp"
L_01a9:;
                                                                //   1199      QUEUE(TAG1);  QUEUE(TAG2)
#line 1199 "regression-compile-tmp/hal7502.imp"
QUEUE(TAG1);
#line 1199 "regression-compile-tmp/hal7502.imp"
QUEUE(TAG2);
                                                                //   1200      QUEUE(TYPE);  QUEUE(VAL)
#line 1200 "regression-compile-tmp/hal7502.imp"
QUEUE(TYPE);
#line 1200 "regression-compile-tmp/hal7502.imp"
QUEUE(VAL);
                                                                //   1201      %REPEAT
#line 1201 "regression-compile-tmp/hal7502.imp"
goto L_01a4;
#line 1201 "regression-compile-tmp/hal7502.imp"
L_01a5:;
                                                                //   1202      GET SYM %IF SYM = ' '
#line 1202 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (32))) goto L_01aa;
#line 1202 "regression-compile-tmp/hal7502.imp"
GETSYM();
#line 1202 "regression-compile-tmp/hal7502.imp"
L_01aa:;
                                                                //   1203      %IF TAGIF %START
#line 1203 "regression-compile-tmp/hal7502.imp"
if (!(TAGIF())) goto L_01ab;
                                                                //   1204      GET COND; QUEUE(-18); ASSEMBLE
#line 1204 "regression-compile-tmp/hal7502.imp"
GETCOND();
#line 1204 "regression-compile-tmp/hal7502.imp"
QUEUE((-18));
#line 1204 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1205      QLIM = QSTART
#line 1205 "regression-compile-tmp/hal7502.imp"
QLIM = QSTART;
                                                                //   1206      INTEGER(QBASE+1) = INTEGER(QBASE+1)+16_8000
#line 1206 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(QBASE)) + (1))) = ((*(int *)(_imp_INTEGER((((int)(QBASE)) + (1))))) + (32768));
                                                                //   1207      %FINISH
#line 1207 "regression-compile-tmp/hal7502.imp"
L_01ab:;
                                                                //   1208      QUEUE(0)
#line 1208 "regression-compile-tmp/hal7502.imp"
QUEUE(0);
                                                                //   1209      MP = QBASE; STARTPOS = QLIM<<1
#line 1209 "regression-compile-tmp/hal7502.imp"
MP = QBASE;
#line 1209 "regression-compile-tmp/hal7502.imp"
STARTPOS = ((QLIM) << (1));
                                                                //   1210      INTEGER(MP) = INTEGER(MP)+1
#line 1210 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(MP) = ((*(int *)(_imp_INTEGER(MP))) + (1));
                                                                //   1211      INTEGER(MP+2) = GETPOS-1
#line 1211 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(MP)) + (2))) = (((int)(GETPOS)) - (1));
                                                                //   1212      PRINT LINE %IF PRINTPOS # 0 %AND LIST&2 # 0
#line 1212 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) == (0))) goto L_01ac;
#line 1212 "regression-compile-tmp/hal7502.imp"
if (((((LIST) & (2))) == (0))) goto L_01ac;
#line 1212 "regression-compile-tmp/hal7502.imp"
PRINTLINE();
#line 1212 "regression-compile-tmp/hal7502.imp"
L_01ac:;
                                                                //   1213      ->READ
#line 1213 "regression-compile-tmp/hal7502.imp"
goto U_100e;
                                                                //   1214  
                                                                //   1215  !CODING OF JUMPS: 1000 (SINGLE INST), 2000 (MAIN IF)
                                                                //   1216  !                 4000 (ELSE), 6000 (IF AFTER ELSE)
                                                                //   1217  
                                                                //   1218  IFC:
#line 1218 "regression-compile-tmp/hal7502.imp"
U_101a:;
                                                                //   1219      GET COND;  QUEUE(-15);  ASSEMBLE
#line 1219 "regression-compile-tmp/hal7502.imp"
GETCOND();
#line 1219 "regression-compile-tmp/hal7502.imp"
QUEUE((-15));
#line 1219 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1220      ->SEND
#line 1220 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1221  
                                                                //   1222  ELSE:
#line 1222 "regression-compile-tmp/hal7502.imp"
U_101b:;
                                                                //   1223      ->CERR %IF INTEGER(NP)&16_2000 = 0
#line 1223 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (8192))) != (0))) goto L_01ad;
#line 1223 "regression-compile-tmp/hal7502.imp"
goto U_1025;
#line 1223 "regression-compile-tmp/hal7502.imp"
L_01ad:;
                                                                //   1224      QUEUE(0);  QUEUE(0)
#line 1224 "regression-compile-tmp/hal7502.imp"
QUEUE(0);
#line 1224 "regression-compile-tmp/hal7502.imp"
QUEUE(0);
                                                                //   1225      QUEUE(-16);  ASSEMBLE
#line 1225 "regression-compile-tmp/hal7502.imp"
QUEUE((-16));
#line 1225 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1226      ATYPE = -1; CREG = -1
#line 1226 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 1226 "regression-compile-tmp/hal7502.imp"
CREG = (-1);
                                                                //   1227      %IF TAGIF %START
#line 1227 "regression-compile-tmp/hal7502.imp"
if (!(TAGIF())) goto L_01ae;
                                                                //   1228      GET COND;  QUEUE(-17);  ASSEMBLE
#line 1228 "regression-compile-tmp/hal7502.imp"
GETCOND();
#line 1228 "regression-compile-tmp/hal7502.imp"
QUEUE((-17));
#line 1228 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1229      %FINISH
#line 1229 "regression-compile-tmp/hal7502.imp"
L_01ae:;
                                                                //   1230      ->SEND
#line 1230 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1231  
                                                                //   1232  FINISH:
#line 1232 "regression-compile-tmp/hal7502.imp"
U_101c:;
                                                                //   1233      ->CERR %IF INTEGER(NP)&16_6000 = 0
#line 1233 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (24576))) != (0))) goto L_01af;
#line 1233 "regression-compile-tmp/hal7502.imp"
goto U_1025;
#line 1233 "regression-compile-tmp/hal7502.imp"
L_01af:;
                                                                //   1234      I = LOC
#line 1234 "regression-compile-tmp/hal7502.imp"
I = LOC;
                                                                //   1235      %WHILE INTEGER(NP)&16_4000 # 0 %CYCLE
#line 1235 "regression-compile-tmp/hal7502.imp"
L_01b0:;
#line 1235 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (16384))) == (0))) goto L_01b1;
                                                                //   1236      %IF INTEGER(NP)&16_2000 # 0 %START; !IF AFTER ELSE
#line 1236 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (8192))) == (0))) goto L_01b3;
                                                                //   1237      SET LAB(I)
#line 1237 "regression-compile-tmp/hal7502.imp"
SETLAB(I);
                                                                //   1238      %finish %ELSE  %START
#line 1238 "regression-compile-tmp/hal7502.imp"
goto L_01b4;
#line 1238 "regression-compile-tmp/hal7502.imp"
L_01b3:;
                                                                //   1239      SET LAB(LOC)
#line 1239 "regression-compile-tmp/hal7502.imp"
SETLAB(LOC);
                                                                //   1240      I = VAL+1
#line 1240 "regression-compile-tmp/hal7502.imp"
I = (((int)(VAL)) + (1));
                                                                //   1241      %FINISH
#line 1241 "regression-compile-tmp/hal7502.imp"
L_01b4:;
                                                                //   1242      %REPEAT
#line 1242 "regression-compile-tmp/hal7502.imp"
goto L_01b0;
#line 1242 "regression-compile-tmp/hal7502.imp"
L_01b1:;
                                                                //   1243      SET LAB(I)
#line 1243 "regression-compile-tmp/hal7502.imp"
SETLAB(I);
                                                                //   1244      ->SEND
#line 1244 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1245  
                                                                //   1246  WHILE:
#line 1246 "regression-compile-tmp/hal7502.imp"
U_101d:;
                                                                //   1247      I = LOC;  ATYPE = -1;  CREG = -1
#line 1247 "regression-compile-tmp/hal7502.imp"
I = LOC;
#line 1247 "regression-compile-tmp/hal7502.imp"
ATYPE = (-1);
#line 1247 "regression-compile-tmp/hal7502.imp"
CREG = (-1);
                                                                //   1248      GET COND;  QUEUE(-13); ASSEMBLE
#line 1248 "regression-compile-tmp/hal7502.imp"
GETCOND();
#line 1248 "regression-compile-tmp/hal7502.imp"
QUEUE((-13));
#line 1248 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1249      NEST(I);  NEST(1)
#line 1249 "regression-compile-tmp/hal7502.imp"
NEST(I);
#line 1249 "regression-compile-tmp/hal7502.imp"
NEST(1);
                                                                //   1250      ->SEND
#line 1250 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1251  
                                                                //   1252  CYCLE:
#line 1252 "regression-compile-tmp/hal7502.imp"
U_101e:;
                                                                //   1253      NEST(LOC);  NEST(1)
#line 1253 "regression-compile-tmp/hal7502.imp"
NEST(LOC);
#line 1253 "regression-compile-tmp/hal7502.imp"
NEST(1);
                                                                //   1254      ->SEND
#line 1254 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1255  
                                                                //   1256  REPEAT:
#line 1256 "regression-compile-tmp/hal7502.imp"
U_101f:;
                                                                //   1257      ->CERR %IF INTEGER(NP) # 1
#line 1257 "regression-compile-tmp/hal7502.imp"
if (((*_imp_INTEGER(NP)) == (1))) goto L_01b5;
#line 1257 "regression-compile-tmp/hal7502.imp"
goto U_1025;
#line 1257 "regression-compile-tmp/hal7502.imp"
L_01b5:;
                                                                //   1258      QUEUE(LOCTYPE);  QUEUE(INTEGER(NP+1))
#line 1258 "regression-compile-tmp/hal7502.imp"
QUEUE(LOCTYPE);
#line 1258 "regression-compile-tmp/hal7502.imp"
QUEUE(*_imp_INTEGER((((int)(NP)) + (1))));
                                                                //   1259      NP = NP+2
#line 1259 "regression-compile-tmp/hal7502.imp"
NP = (((int)(NP)) + (2));
                                                                //   1260      QUEUE(-26);                       !'JUMP'
#line 1260 "regression-compile-tmp/hal7502.imp"
QUEUE((-26));
                                                                //   1261      FLAG = -1
#line 1261 "regression-compile-tmp/hal7502.imp"
FLAG = (-1);
                                                                //   1262      ->CONDQ
#line 1262 "regression-compile-tmp/hal7502.imp"
goto U_1024;
                                                                //   1263  
                                                                //   1264  CERR:
#line 1264 "regression-compile-tmp/hal7502.imp"
U_1025:;
                                                                //   1265      FAULT('C')
#line 1265 "regression-compile-tmp/hal7502.imp"
FAULT(67);
                                                                //   1266      ->LEND
#line 1266 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1267  
                                                                //   1268  SEND:
#line 1268 "regression-compile-tmp/hal7502.imp"
U_1023:;
                                                                //   1269      SET LAB(LOC) %IF INTEGER(NP)&16_1000 # 0
#line 1269 "regression-compile-tmp/hal7502.imp"
if (((((*_imp_INTEGER(NP)) & (4096))) == (0))) goto L_01b6;
#line 1269 "regression-compile-tmp/hal7502.imp"
SETLAB(LOC);
#line 1269 "regression-compile-tmp/hal7502.imp"
L_01b6:;
                                                                //   1270      ->LEND %IF SYM = NL
#line 1270 "regression-compile-tmp/hal7502.imp"
if (((SYM) != (10))) goto L_01b7;
#line 1270 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1270 "regression-compile-tmp/hal7502.imp"
L_01b7:;
                                                                //   1271      ->NEXT %IF S(';')
#line 1271 "regression-compile-tmp/hal7502.imp"
if (!(S(59))) goto L_01b8;
#line 1271 "regression-compile-tmp/hal7502.imp"
goto U_100f;
#line 1271 "regression-compile-tmp/hal7502.imp"
L_01b8:;
                                                                //   1272  
                                                                //   1273  ERR:FSYM = 'F';  FAULTPOS = GETPOS-1
#line 1273 "regression-compile-tmp/hal7502.imp"
U_1011:;
#line 1273 "regression-compile-tmp/hal7502.imp"
FSYM = 70;
#line 1273 "regression-compile-tmp/hal7502.imp"
FAULTPOS = (((int)(GETPOS)) - (1));
                                                                //   1274      PRINTPOS = STARTPOS
#line 1274 "regression-compile-tmp/hal7502.imp"
PRINTPOS = STARTPOS;
                                                                //   1275  
                                                                //   1276  LEND:
#line 1276 "regression-compile-tmp/hal7502.imp"
U_1015:;
                                                                //   1277      ->READ %IF SKIP # 0 %AND LIST&4 = 0
#line 1277 "regression-compile-tmp/hal7502.imp"
if (((SKIP) == (0))) goto L_01b9;
#line 1277 "regression-compile-tmp/hal7502.imp"
if (((((LIST) & (4))) != (0))) goto L_01b9;
#line 1277 "regression-compile-tmp/hal7502.imp"
goto U_100e;
#line 1277 "regression-compile-tmp/hal7502.imp"
L_01b9:;
                                                                //   1278      ->READ %IF FSYM = ' ' %AND CHARS = 0 %AND %C
#line 1278 "regression-compile-tmp/hal7502.imp"
if (((FSYM) != (32))) goto L_01ba;
#line 1278 "regression-compile-tmp/hal7502.imp"
if (((CHARS) != (0))) goto L_01ba;
#line 1278 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) == (0))) goto L_01b2;
#line 1278 "regression-compile-tmp/hal7502.imp"
if (((MP) == (0))) goto L_01ba;
#line 1278 "regression-compile-tmp/hal7502.imp"
if (((((LIST) & (2))) != (0))) goto L_01ba;
#line 1278 "regression-compile-tmp/hal7502.imp"
L_01b2:;
#line 1278 "regression-compile-tmp/hal7502.imp"
goto U_100e;
#line 1278 "regression-compile-tmp/hal7502.imp"
L_01ba:;
                                                                //   1279       (PRINTPOS = 0 %OR (MP#0 %AND LIST&2=0))
                                                                //   1280      PRINT LINE
#line 1280 "regression-compile-tmp/hal7502.imp"
PRINTLINE();
                                                                //   1281      ->READ
#line 1281 "regression-compile-tmp/hal7502.imp"
goto U_100e;
                                                                //   1282  
                                                                //   1283  ASSIF:
#line 1283 "regression-compile-tmp/hal7502.imp"
U_1012:;
                                                                //   1284      ASSCOND = ASSCOND<<1
#line 1284 "regression-compile-tmp/hal7502.imp"
ASSCOND = ((ASSCOND) << (1));
                                                                //   1285      ->LEND %IF SKIP # 0
#line 1285 "regression-compile-tmp/hal7502.imp"
if (((SKIP) == (0))) goto L_01bb;
#line 1285 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1285 "regression-compile-tmp/hal7502.imp"
L_01bb:;
                                                                //   1286  A1: GET COND; ASSEMBLE
#line 1286 "regression-compile-tmp/hal7502.imp"
U_1026:;
#line 1286 "regression-compile-tmp/hal7502.imp"
GETCOND();
#line 1286 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1287      SKIP = ASSCOND %IF COND # 0
#line 1287 "regression-compile-tmp/hal7502.imp"
if (((COND) == (0))) goto L_01bc;
#line 1287 "regression-compile-tmp/hal7502.imp"
SKIP = ASSCOND;
#line 1287 "regression-compile-tmp/hal7502.imp"
L_01bc:;
                                                                //   1288      PRINT LINE %IF PRINTPOS # 0
#line 1288 "regression-compile-tmp/hal7502.imp"
if (((PRINTPOS) == (0))) goto L_01bd;
#line 1288 "regression-compile-tmp/hal7502.imp"
PRINTLINE();
#line 1288 "regression-compile-tmp/hal7502.imp"
L_01bd:;
                                                                //   1289      ->LEND
#line 1289 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1290  
                                                                //   1291  ASSELSE:
#line 1291 "regression-compile-tmp/hal7502.imp"
U_1013:;
                                                                //   1292      %IF SKIP = 0 %START
#line 1292 "regression-compile-tmp/hal7502.imp"
if (((SKIP) != (0))) goto L_01be;
                                                                //   1293      ->CERR %IF ASSCOND&1 # 0
#line 1293 "regression-compile-tmp/hal7502.imp"
if (((((ASSCOND) & (1))) == (0))) goto L_01bf;
#line 1293 "regression-compile-tmp/hal7502.imp"
goto U_1025;
#line 1293 "regression-compile-tmp/hal7502.imp"
L_01bf:;
                                                                //   1294      SKIP = ASSCOND
#line 1294 "regression-compile-tmp/hal7502.imp"
SKIP = ASSCOND;
                                                                //   1295      %finish %ELSE  %START
#line 1295 "regression-compile-tmp/hal7502.imp"
goto L_01c0;
#line 1295 "regression-compile-tmp/hal7502.imp"
L_01be:;
                                                                //   1296      ->LEND %IF SKIP # ASSCOND
#line 1296 "regression-compile-tmp/hal7502.imp"
if (((SKIP) == (ASSCOND))) goto L_01c1;
#line 1296 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1296 "regression-compile-tmp/hal7502.imp"
L_01c1:;
                                                                //   1297      SKIP = 0
#line 1297 "regression-compile-tmp/hal7502.imp"
SKIP = 0;
                                                                //   1298      ->A1 %IF TAGIF
#line 1298 "regression-compile-tmp/hal7502.imp"
if (!(TAGIF())) goto L_01c2;
#line 1298 "regression-compile-tmp/hal7502.imp"
goto U_1026;
#line 1298 "regression-compile-tmp/hal7502.imp"
L_01c2:;
                                                                //   1299      %FINISH
#line 1299 "regression-compile-tmp/hal7502.imp"
L_01c0:;
                                                                //   1300      ASSCOND = ASSCOND+1
#line 1300 "regression-compile-tmp/hal7502.imp"
ASSCOND = (((int)(ASSCOND)) + (1));
                                                                //   1301      ->LEND
#line 1301 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1302  
                                                                //   1303  ASSFIN:
#line 1303 "regression-compile-tmp/hal7502.imp"
U_1014:;
                                                                //   1304      ->CERR %IF ASSCOND = 1
#line 1304 "regression-compile-tmp/hal7502.imp"
if (((ASSCOND) != (1))) goto L_01c3;
#line 1304 "regression-compile-tmp/hal7502.imp"
goto U_1025;
#line 1304 "regression-compile-tmp/hal7502.imp"
L_01c3:;
                                                                //   1305      ASSCOND = ASSCOND>>1
#line 1305 "regression-compile-tmp/hal7502.imp"
ASSCOND = (int)((((unsigned int)(ASSCOND)) >> (1)));
                                                                //   1306      SKIP = 0 %IF SKIP>>1 = ASSCOND
#line 1306 "regression-compile-tmp/hal7502.imp"
if ((((int)((((unsigned int)(SKIP)) >> (1)))) != (ASSCOND))) goto L_01c4;
#line 1306 "regression-compile-tmp/hal7502.imp"
SKIP = 0;
#line 1306 "regression-compile-tmp/hal7502.imp"
L_01c4:;
                                                                //   1307      ->LEND
#line 1307 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1308  
                                                                //   1309  DEFINE:
#line 1309 "regression-compile-tmp/hal7502.imp"
U_1000:;
                                                                //   1310      FAULT('C') %IF NP # STORELIM
#line 1310 "regression-compile-tmp/hal7502.imp"
if (((NP) == (STORELIM))) goto L_01c5;
#line 1310 "regression-compile-tmp/hal7502.imp"
FAULT(67);
#line 1310 "regression-compile-tmp/hal7502.imp"
L_01c5:;
                                                                //   1311      I = TAG1
#line 1311 "regression-compile-tmp/hal7502.imp"
I = TAG1;
                                                                //   1312      %CYCLE
#line 1312 "regression-compile-tmp/hal7502.imp"
L_01c6:;
                                                                //   1313      ->ERR %IF %NOT (TAG %AND S('='))
#line 1313 "regression-compile-tmp/hal7502.imp"
if (!(TAG())) goto L_0196;
#line 1313 "regression-compile-tmp/hal7502.imp"
if (S(61)) goto L_01c9;
#line 1313 "regression-compile-tmp/hal7502.imp"
L_0196:;
#line 1313 "regression-compile-tmp/hal7502.imp"
goto U_1011;
#line 1313 "regression-compile-tmp/hal7502.imp"
L_01c9:;
                                                                //   1314      J = TAG1;  K = TAG2
#line 1314 "regression-compile-tmp/hal7502.imp"
J = TAG1;
#line 1314 "regression-compile-tmp/hal7502.imp"
K = TAG2;
                                                                //   1315      %IF TAG %START
#line 1315 "regression-compile-tmp/hal7502.imp"
if (!(TAG())) goto L_01ca;
                                                                //   1316      TYPE = UMASK;  LOOKUP(0)
#line 1316 "regression-compile-tmp/hal7502.imp"
TYPE = UMASK;
#line 1316 "regression-compile-tmp/hal7502.imp"
LOOKUP(0);
                                                                //   1317      %IF TYPE&OPMASK # 0 %START
#line 1317 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (OPMASK))) == (0))) goto L_01cb;
                                                                //   1318      GET INST
#line 1318 "regression-compile-tmp/hal7502.imp"
GETINST();
                                                                //   1319      %finish %ELSE  %START
#line 1319 "regression-compile-tmp/hal7502.imp"
goto L_01cc;
#line 1319 "regression-compile-tmp/hal7502.imp"
L_01cb:;
                                                                //   1320      PEND = -1;  GET EXP
#line 1320 "regression-compile-tmp/hal7502.imp"
PEND = (-1);
#line 1320 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //   1321      %FINISH
#line 1321 "regression-compile-tmp/hal7502.imp"
L_01cc:;
                                                                //   1322      %finish %ELSE  GET EXP
#line 1322 "regression-compile-tmp/hal7502.imp"
goto L_01cd;
#line 1322 "regression-compile-tmp/hal7502.imp"
L_01ca:;
#line 1322 "regression-compile-tmp/hal7502.imp"
GETEXP();
#line 1322 "regression-compile-tmp/hal7502.imp"
L_01cd:;
                                                                //   1323      ASSEMBLE
#line 1323 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1324      TAG1 = J;  TAG2 = K
#line 1324 "regression-compile-tmp/hal7502.imp"
TAG1 = J;
#line 1324 "regression-compile-tmp/hal7502.imp"
TAG2 = K;
                                                                //   1325      %IF I=DEF %THEN LOOKUP(3) %ELSE LOOKUP(2)
#line 1325 "regression-compile-tmp/hal7502.imp"
if (((I) != (DEF))) goto L_01ce;
#line 1325 "regression-compile-tmp/hal7502.imp"
LOOKUP(3);
#line 1325 "regression-compile-tmp/hal7502.imp"
goto L_01cf;
#line 1325 "regression-compile-tmp/hal7502.imp"
L_01ce:;
#line 1325 "regression-compile-tmp/hal7502.imp"
LOOKUP(2);
#line 1325 "regression-compile-tmp/hal7502.imp"
L_01cf:;
                                                                //   1326      %EXIT %UNLESS S(',')
#line 1326 "regression-compile-tmp/hal7502.imp"
if (S(44)) goto L_01d0;
#line 1326 "regression-compile-tmp/hal7502.imp"
goto L_01c7;
#line 1326 "regression-compile-tmp/hal7502.imp"
L_01d0:;
                                                                //   1327      QLIM = QSTART
#line 1327 "regression-compile-tmp/hal7502.imp"
QLIM = QSTART;
                                                                //   1328      %REPEAT
#line 1328 "regression-compile-tmp/hal7502.imp"
goto L_01c6;
#line 1328 "regression-compile-tmp/hal7502.imp"
L_01c7:;
                                                                //   1329      ->SEND
#line 1329 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1330  
                                                                //   1331  NEWPAGE:
#line 1331 "regression-compile-tmp/hal7502.imp"
U_1010:;
                                                                //   1332      DO NEWLINE %WHILE LINES # 0
#line 1332 "regression-compile-tmp/hal7502.imp"
L_01d1:;
#line 1332 "regression-compile-tmp/hal7502.imp"
if (((LINES) == (0))) goto L_01d2;
#line 1332 "regression-compile-tmp/hal7502.imp"
DONEWLINE();
#line 1332 "regression-compile-tmp/hal7502.imp"
goto L_01d1;
#line 1332 "regression-compile-tmp/hal7502.imp"
L_01d2:;
                                                                //   1333      ->LEND
#line 1333 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1334  
                                                                //   1335  LISTC:
#line 1335 "regression-compile-tmp/hal7502.imp"
U_1016:;
                                                                //   1336      GET EXP;  ASSEMBLE
#line 1336 "regression-compile-tmp/hal7502.imp"
GETEXP();
#line 1336 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1337      LIST = VAL
#line 1337 "regression-compile-tmp/hal7502.imp"
LIST = VAL;
                                                                //   1338      ->SEND
#line 1338 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1339  
                                                                //   1340  TEMP:
#line 1340 "regression-compile-tmp/hal7502.imp"
U_1001:;
                                                                //   1341      I = 0
#line 1341 "regression-compile-tmp/hal7502.imp"
I = 0;
                                                                //   1342      %IF SYM # NL %START
#line 1342 "regression-compile-tmp/hal7502.imp"
if (((SYM) == (10))) goto L_01d4;
                                                                //   1343      %CYCLE
#line 1343 "regression-compile-tmp/hal7502.imp"
L_01d5:;
                                                                //   1344      GET EXP
#line 1344 "regression-compile-tmp/hal7502.imp"
GETEXP();
                                                                //   1345      FAULT('I') %IF TYPE # REG
#line 1345 "regression-compile-tmp/hal7502.imp"
if (((TYPE) == (REG))) goto L_01d8;
#line 1345 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 1345 "regression-compile-tmp/hal7502.imp"
L_01d8:;
                                                                //   1346      I = I!1<<VAL
#line 1346 "regression-compile-tmp/hal7502.imp"
I = ((I) | (((1) << (VAL))));
                                                                //   1347      %EXIT %UNLESS S(',')
#line 1347 "regression-compile-tmp/hal7502.imp"
if (S(44)) goto L_01d9;
#line 1347 "regression-compile-tmp/hal7502.imp"
goto L_01d6;
#line 1347 "regression-compile-tmp/hal7502.imp"
L_01d9:;
                                                                //   1348      %REPEAT
#line 1348 "regression-compile-tmp/hal7502.imp"
goto L_01d5;
#line 1348 "regression-compile-tmp/hal7502.imp"
L_01d6:;
                                                                //   1349      %FINISH
#line 1349 "regression-compile-tmp/hal7502.imp"
L_01d4:;
                                                                //   1350      TEMPS = I
#line 1350 "regression-compile-tmp/hal7502.imp"
TEMPS = I;
                                                                //   1351      SET ACC
#line 1351 "regression-compile-tmp/hal7502.imp"
SETACC();
                                                                //   1352      ->SEND
#line 1352 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1353  
                                                                //   1354  LOCC:
#line 1354 "regression-compile-tmp/hal7502.imp"
U_1002:;
                                                                //   1355      I = TAG1
#line 1355 "regression-compile-tmp/hal7502.imp"
I = TAG1;
                                                                //   1356      GET EXP;  ASSEMBLE
#line 1356 "regression-compile-tmp/hal7502.imp"
GETEXP();
#line 1356 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1357      %IF TYPE&16_FF9F = 0 %START
#line 1357 "regression-compile-tmp/hal7502.imp"
if (((((TYPE) & (65439))) != (0))) goto L_01da;
                                                                //   1358      LOCTYPE = TYPE&RELMASK+MEMMASK;  LOC = VAL
#line 1358 "regression-compile-tmp/hal7502.imp"
LOCTYPE = (((int)(((TYPE) & (RELMASK)))) + (MEMMASK));
#line 1358 "regression-compile-tmp/hal7502.imp"
LOC = VAL;
                                                                //   1359      PUT WORD(VAL-1) %AND CONTROL=16_30 %IF PASS > 0
#line 1359 "regression-compile-tmp/hal7502.imp"
if (((PASS) <= (0))) goto L_01db;
#line 1359 "regression-compile-tmp/hal7502.imp"
PUTWORD((((int)(VAL)) - (1)));
#line 1359 "regression-compile-tmp/hal7502.imp"
CONTROL = 48;
#line 1359 "regression-compile-tmp/hal7502.imp"
L_01db:;
                                                                //   1360      %finish %ELSE  FAULT('I')
#line 1360 "regression-compile-tmp/hal7502.imp"
goto L_01dc;
#line 1360 "regression-compile-tmp/hal7502.imp"
L_01da:;
#line 1360 "regression-compile-tmp/hal7502.imp"
FAULT(73);
#line 1360 "regression-compile-tmp/hal7502.imp"
L_01dc:;
                                                                //   1361      ->SEND
#line 1361 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1362  
                                                                //   1363  SAVC:
#line 1363 "regression-compile-tmp/hal7502.imp"
U_1017:;
                                                                //   1364      GET EXP;  ASSEMBLE
#line 1364 "regression-compile-tmp/hal7502.imp"
GETEXP();
#line 1364 "regression-compile-tmp/hal7502.imp"
ASSEMBLE();
                                                                //   1365      SAVE = VAL
#line 1365 "regression-compile-tmp/hal7502.imp"
SAVE = VAL;
                                                                //   1366      ->SEND
#line 1366 "regression-compile-tmp/hal7502.imp"
goto U_1023;
                                                                //   1367  
                                                                //   1368  MACDEF:
#line 1368 "regression-compile-tmp/hal7502.imp"
U_1003:;
                                                                //   1369      ->CERR %IF MP # 0
#line 1369 "regression-compile-tmp/hal7502.imp"
if (((MP) == (0))) goto L_01dd;
#line 1369 "regression-compile-tmp/hal7502.imp"
goto U_1025;
#line 1369 "regression-compile-tmp/hal7502.imp"
L_01dd:;
                                                                //   1370      ->ERR %IF %NOT TAG
#line 1370 "regression-compile-tmp/hal7502.imp"
if (TAG()) goto L_01de;
#line 1370 "regression-compile-tmp/hal7502.imp"
goto U_1011;
#line 1370 "regression-compile-tmp/hal7502.imp"
L_01de:;
                                                                //   1371      J = TAG1;  K = TAG2
#line 1371 "regression-compile-tmp/hal7502.imp"
J = TAG1;
#line 1371 "regression-compile-tmp/hal7502.imp"
K = TAG2;
                                                                //   1372      I = GETPOS-1
#line 1372 "regression-compile-tmp/hal7502.imp"
I = (((int)(GETPOS)) - (1));
                                                                //   1373      %IF SYM # NL %START
#line 1373 "regression-compile-tmp/hal7502.imp"
if (((SYM) == (10))) goto L_01df;
                                                                //   1374      %CYCLE
#line 1374 "regression-compile-tmp/hal7502.imp"
L_01e0:;
                                                                //   1375      ->ERR %IF %NOT TAG
#line 1375 "regression-compile-tmp/hal7502.imp"
if (TAG()) goto L_01e3;
#line 1375 "regression-compile-tmp/hal7502.imp"
goto U_1011;
#line 1375 "regression-compile-tmp/hal7502.imp"
L_01e3:;
                                                                //   1376      SCAN ARG
#line 1376 "regression-compile-tmp/hal7502.imp"
SCANARG();
                                                                //   1377      %EXIT %IF %NOT S(',')
#line 1377 "regression-compile-tmp/hal7502.imp"
if (S(44)) goto L_01e4;
#line 1377 "regression-compile-tmp/hal7502.imp"
goto L_01e1;
#line 1377 "regression-compile-tmp/hal7502.imp"
L_01e4:;
                                                                //   1378      %REPEAT
#line 1378 "regression-compile-tmp/hal7502.imp"
goto L_01e0;
#line 1378 "regression-compile-tmp/hal7502.imp"
L_01e1:;
                                                                //   1379      %FINISH
#line 1379 "regression-compile-tmp/hal7502.imp"
L_01df:;
                                                                //   1380      ->ERR %IF SYM # NL
#line 1380 "regression-compile-tmp/hal7502.imp"
if (((SYM) == (10))) goto L_01e5;
#line 1380 "regression-compile-tmp/hal7502.imp"
goto U_1011;
#line 1380 "regression-compile-tmp/hal7502.imp"
L_01e5:;
                                                                //   1381      TAG1 = J;  TAG2 = K
#line 1381 "regression-compile-tmp/hal7502.imp"
TAG1 = J;
#line 1381 "regression-compile-tmp/hal7502.imp"
TAG2 = K;
                                                                //   1382      TYPE = MACRO;  VAL = I
#line 1382 "regression-compile-tmp/hal7502.imp"
TYPE = MACRO;
#line 1382 "regression-compile-tmp/hal7502.imp"
VAL = I;
                                                                //   1383      LOOKUP(3)
#line 1383 "regression-compile-tmp/hal7502.imp"
LOOKUP(3);
                                                                //   1384      %CYCLE
#line 1384 "regression-compile-tmp/hal7502.imp"
L_01e6:;
                                                                //   1385      PRINT LINE
#line 1385 "regression-compile-tmp/hal7502.imp"
PRINTLINE();
                                                                //   1386      %EXIT %IF S('$') %AND TAG %AND TAG1 = END
#line 1386 "regression-compile-tmp/hal7502.imp"
if (!(S(36))) goto L_01e9;
#line 1386 "regression-compile-tmp/hal7502.imp"
if (!(TAG())) goto L_01e9;
#line 1386 "regression-compile-tmp/hal7502.imp"
if (((TAG1) != (END))) goto L_01e9;
#line 1386 "regression-compile-tmp/hal7502.imp"
goto L_01e7;
#line 1386 "regression-compile-tmp/hal7502.imp"
L_01e9:;
                                                                //   1387      STARTPOS = PUTPOS
#line 1387 "regression-compile-tmp/hal7502.imp"
STARTPOS = PUTPOS;
                                                                //   1388      STARTPOS = PSEUDOLIM+1 %IF PSEUDOLIM # 0
#line 1388 "regression-compile-tmp/hal7502.imp"
if (((PSEUDOLIM) == (0))) goto L_01ea;
#line 1388 "regression-compile-tmp/hal7502.imp"
STARTPOS = (((int)(PSEUDOLIM)) + (1));
#line 1388 "regression-compile-tmp/hal7502.imp"
L_01ea:;
                                                                //   1389      READ LINE
#line 1389 "regression-compile-tmp/hal7502.imp"
READLINE();
                                                                //   1390      %REPEAT
#line 1390 "regression-compile-tmp/hal7502.imp"
goto L_01e6;
#line 1390 "regression-compile-tmp/hal7502.imp"
L_01e7:;
                                                                //   1391      PUTPOS = STARTPOS;  PUT CHAR(0)
#line 1391 "regression-compile-tmp/hal7502.imp"
PUTPOS = STARTPOS;
#line 1391 "regression-compile-tmp/hal7502.imp"
PUTCHAR(0);
                                                                //   1392      STARTPOS = PUTPOS
#line 1392 "regression-compile-tmp/hal7502.imp"
STARTPOS = PUTPOS;
                                                                //   1393      MACLIM = STARTPOS
#line 1393 "regression-compile-tmp/hal7502.imp"
MACLIM = STARTPOS;
                                                                //   1394      ->LEND
#line 1394 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1395  
                                                                //   1396  %ROUTINE BNEST
#line 1396 "regression-compile-tmp/hal7502.imp"
void BNEST( void )
#line 1396 "regression-compile-tmp/hal7502.imp"
{
                                                                //   1397      BP = BP+4;  !!%MONITOR 23 %IF BP-NP >= 0
#line 1397 "regression-compile-tmp/hal7502.imp"
BP = (((int)(BP)) + (4));
                                                                //   1398      INTEGER(BP-3) = SAVE;  INTEGER(BP-2) = TEMPS
#line 1398 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(BP)) - (3))) = SAVE;
#line 1398 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(BP)) - (2))) = TEMPS;
                                                                //   1399      INTEGER(BP-1) = MACLIM;  INTEGER(BP) = DEFMIN
#line 1399 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER((((int)(BP)) - (1))) = MACLIM;
#line 1399 "regression-compile-tmp/hal7502.imp"
*_imp_INTEGER(BP) = DEFMIN;
                                                                //   1400  %END
#line 1400 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return;
} // End of block BNEST at level 2
                                                                //   1401  
                                                                //   1402  BEGIN:
#line 1402 "regression-compile-tmp/hal7502.imp"
U_1004:;
                                                                //   1403      BNEST
#line 1403 "regression-compile-tmp/hal7502.imp"
BNEST();
                                                                //   1404      ->NEWPAGE %IF SYM # NL
#line 1404 "regression-compile-tmp/hal7502.imp"
if (((SYM) == (10))) goto L_01eb;
#line 1404 "regression-compile-tmp/hal7502.imp"
goto U_1010;
#line 1404 "regression-compile-tmp/hal7502.imp"
L_01eb:;
                                                                //   1405      ->LEND
#line 1405 "regression-compile-tmp/hal7502.imp"
goto U_1015;
                                                                //   1406  
                                                                //   1407  BEND:
#line 1407 "regression-compile-tmp/hal7502.imp"
U_1005:;
                                                                //   1408      FAULT('C') %IF NP # STORELIM %OR MP # 0
#line 1408 "regression-compile-tmp/hal7502.imp"
if (((NP) != (STORELIM))) goto L_01e8;
#line 1408 "regression-compile-tmp/hal7502.imp"
if (((MP) == (0))) goto L_01ec;
#line 1408 "regression-compile-tmp/hal7502.imp"
L_01e8:;
#line 1408 "regression-compile-tmp/hal7502.imp"
FAULT(67);
#line 1408 "regression-compile-tmp/hal7502.imp"
L_01ec:;
                                                                //   1409      MP = 0;  NP = STORELIM
#line 1409 "regression-compile-tmp/hal7502.imp"
MP = 0;
#line 1409 "regression-compile-tmp/hal7502.imp"
NP = STORELIM;
                                                                //   1410      %IF BP # LABLIM %START
#line 1410 "regression-compile-tmp/hal7502.imp"
if (((BP) == (LABLIM))) goto L_01ed;
                                                                //   1411      SAVE = INTEGER(BP-3);  TEMPS = INTEGER(BP-2)
#line 1411 "regression-compile-tmp/hal7502.imp"
SAVE = *_imp_INTEGER((((int)(BP)) - (3)));
#line 1411 "regression-compile-tmp/hal7502.imp"
TEMPS = *_imp_INTEGER((((int)(BP)) - (2)));
                                                                //   1412      MACLIM = INTEGER(BP-1);  STARTPOS = MACLIM
#line 1412 "regression-compile-tmp/hal7502.imp"
MACLIM = *_imp_INTEGER((((int)(BP)) - (1)));
#line 1412 "regression-compile-tmp/hal7502.imp"
STARTPOS = MACLIM;
                                                                //   1413      DEFMIN = INTEGER(BP)
#line 1413 "regression-compile-tmp/hal7502.imp"
DEFMIN = *_imp_INTEGER(BP);
                                                                //   1414      SET ACC
#line 1414 "regression-compile-tmp/hal7502.imp"
SETACC();
                                                                //   1415      BP = BP-4
#line 1415 "regression-compile-tmp/hal7502.imp"
BP = (((int)(BP)) - (4));
                                                                //   1416      ->LEND %IF BP # LABLIM
#line 1416 "regression-compile-tmp/hal7502.imp"
if (((BP) == (LABLIM))) goto L_01ee;
#line 1416 "regression-compile-tmp/hal7502.imp"
goto U_1015;
#line 1416 "regression-compile-tmp/hal7502.imp"
L_01ee:;
                                                                //   1417      %FINISH
#line 1417 "regression-compile-tmp/hal7502.imp"
L_01ed:;
                                                                //   1418      CLOSE INPUT;  SELECT INPUT(MAIN)
#line 1418 "regression-compile-tmp/hal7502.imp"
_imp_CLOSEINPUT();
#line 1418 "regression-compile-tmp/hal7502.imp"
_imp_SELECTINPUT(MAIN);
                                                                //   1419      BNEST
#line 1419 "regression-compile-tmp/hal7502.imp"
BNEST();
                                                                //   1420      LIST = 5
#line 1420 "regression-compile-tmp/hal7502.imp"
LIST = 5;
                                                                //   1421      PASS = PASS+1
#line 1421 "regression-compile-tmp/hal7502.imp"
PASS = (((int)(PASS)) + (1));
                                                                //   1422      ->DO PASS %IF PASS # 2
#line 1422 "regression-compile-tmp/hal7502.imp"
if (((PASS) == (2))) goto L_01ef;
#line 1422 "regression-compile-tmp/hal7502.imp"
goto U_100d;
#line 1422 "regression-compile-tmp/hal7502.imp"
L_01ef:;
                                                                //   1423  
                                                                //   1424      PUT WORD(CHECK!!16_0100);  CONTROL = 16_30
#line 1424 "regression-compile-tmp/hal7502.imp"
PUTWORD(((CHECK) ^ (256)));
#line 1424 "regression-compile-tmp/hal7502.imp"
CONTROL = 48;
                                                                //   1425      PUT WORD(16_0100)
#line 1425 "regression-compile-tmp/hal7502.imp"
PUTWORD(256);
                                                                //   1426      SELECT OUTPUT(BIN);  PRINT CH(16_60);  SELECT OUTPUT(LIS)
#line 1426 "regression-compile-tmp/hal7502.imp"
_imp_SELECTOUTPUT(BIN);
#line 1426 "regression-compile-tmp/hal7502.imp"
_imp_PRINTCH(96);
#line 1426 "regression-compile-tmp/hal7502.imp"
_imp_SELECTOUTPUT(LIS);
                                                                //   1427      FAULT('$')
#line 1427 "regression-compile-tmp/hal7502.imp"
FAULT(36);
                                                                //   1428      PRINT LOC;  PRINT LINE
#line 1428 "regression-compile-tmp/hal7502.imp"
PRINTLOC();
#line 1428 "regression-compile-tmp/hal7502.imp"
PRINTLINE();
                                                                //   1429      LINES = 60 %IF OUTDEV = 1
#line 1429 "regression-compile-tmp/hal7502.imp"
if (((_imp_OUTDEV()) != (1))) goto L_01f0;
#line 1429 "regression-compile-tmp/hal7502.imp"
LINES = 60;
#line 1429 "regression-compile-tmp/hal7502.imp"
L_01f0:;
                                                                //   1430      DO NEWLINE %WHILE LINES # 0
#line 1430 "regression-compile-tmp/hal7502.imp"
L_01f1:;
#line 1430 "regression-compile-tmp/hal7502.imp"
if (((LINES) == (0))) goto L_01f2;
#line 1430 "regression-compile-tmp/hal7502.imp"
DONEWLINE();
#line 1430 "regression-compile-tmp/hal7502.imp"
goto L_01f1;
#line 1430 "regression-compile-tmp/hal7502.imp"
L_01f2:;
                                                                //   1431  
                                                                //   1432  %ENDOFPROGRAM
#line 1432 "regression-compile-tmp/hal7502.imp"
/* Remove %on %event handler here if present for this block */
return 0;
} // End of block _imp_main at level 1
#line 1432 "regression-compile-tmp/hal7502.imp"
// End of file
