                                                                                                                                        /MACRO COMPILER
                     /
                     /PAGE 1000
                     *1000
          EXPR,      0
                     TAD Z CON
                     JMS I Z PUSH1
                     DCA Z CON
                     TAD Z INST
                     JMS I Z PUSH1
                     DCA Z INST
                     TAD Z SGN
                     JMS I Z PUSH1
                     TAD CRIOR
                     DCA Z SGN
                     TAD H+3
                     JMS I Z PUSH1
                     DCA H+3
                     TAD EXPR
                     JMS I Z PUSH1
                     SKP
                     /
          A,         JMS I Z IDX1
                     JMS I Z GETSY1
                     B-1000+USYMB          /USYMB=2000
                     B-1000+SYMB           /SYMB=1000
                     A-1000+SPACE          /SPACE=5600
                     C-1000+PLUS           /PLUS=4600
                     C+3-1000+MINUS        /MINUS=5200
                     C+5-1000+EXCLAM       /EXCLAM=2200
                     J-1000+QUOTES         /QUOTES=2400
                     G-1000+SCOLON         /SCOLON=0200
                     C+7-1000+ANDS         /ANDS=3400
                     G-1000+ALL            /ALL=7600
                     /
                     TAD Z VAL
                     JMP .+3
                     /
          B1,        CLA
                     TAD Z LWC
                     JMS I Z SGN
                     SKP
                     /
                     JMS I Z IDX1
          B2,        JMS I Z GETSY1
                     /
                     .-2-1000+SPACE        /SPACE=5600
                     GET-1-1000+COMMA      /COMMA=0600
                     B1-2-1000+SYMB        /SYMB=1000
                     B1-2-1000+USYMB       /USYMB=2000
                     ERONE-1000+EQUALS     /EQUALS=1400
                     A+5-1000
                     /
          C,         TAD CRIOR+1           /PLUS
                     DCA Z SGN
                     JMP B2-1
                     /
                     TAD CRIOR+2           /MINUS
                     JMP C+1
                     /
                     TAD CRIOR
                     JMP C+1
                     /
                     TAD CRIOR+3           /AR/D
                     JMP C+1
                     /
          J,         JMS I .+4
                     DCA Z CON
                     ISZ Z ANY
                     JMP B2-1
                     /
                     GETIN
                     /
          H,         TAD Z C400
                     DCA H+3
                     JMP A+1
                     /
                     0
                     /
          B,         TAD Z VAL
                     JMS I Z SGN
                     JMS I Z GETSY1
                     /
                     EQU-1000+EQUALS       /EQUALS=1400
                     GET-1000+SPACE        /SPACE=5600
                     B2+1-1000
                     /
                     JMS I Z DEFIN1
          GET,       JMS I Z GETAD1
                     TAD Z ADR
                     JMS I CRIOR
          G,         JMS I Z POPU1
                     DCA EXPR
                     TAD Z CON
                     DCA Z EVAL
                     TAD H+3
                     DCA Z IND
                     JMS I Z POPU1
                     DCA H+3
                     JMS I Z POPU1
                     DCA Z SGN
                     TAD Z INST
                     DCA Z MICRO
                     JMS I Z POPU1
                     DCA Z INST
                     JMS I Z POPU1
                     DCA Z CON
                     JMP I EXPR
                     /
                     0
                     /
          MKERM,     0
                     TAD Z PCON
                     AND Z C177
                     SNA CLA
                     JMP ERONE-1
                     /
                     TAD Z EVAL
                     DCA MKERM-1
                     JMS I Z PAGE1         /PUNCH CONSTANTS
                     TAD Z AADR
                     DCA Z EVAL
                     JMS I Z PUNOR1
                     TAD MKERM-1
                     DCA Z EVAL
                     JMP I MKERM           /EXIT
                     /
                     TAD Z C4
          ERONE,     JMS I Z ERR1
                     JMP I Z MAIN1
                     /
          EQU,       TAD Z VADR1
                     DCA CRIOR-1
                     JMS I Z IDX1
                     JMS I Z EXPR1
                     TAD Z EVAL
                     DCA I CRIOR-1
                     TAD CRIOR-1
                     TAD Z M3
                     DCA Z SADR
                     JMS I Z TYPAD1
                     /
                     SYMB
                     /
                     JMP I Z MAIN1
                     /
                     0
          CRIOR,     RIOR
                     RADD
                     RSUB
                     RAND
                     II
                     /
                     JMS I Z POPU1
                     CLA
                     TAD CRIOR+4
                     JMP G+1
                     PAUSE
                                                                                                         