CALL INITI0 CALL GETOP0 CALL TRANS0 CALL SWT END SUBROUTINE INSTR0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAAA0 INTEGER AAAAB0 INTEGER AAAAC0 INTEGER AAAAD0 INTEGER AAAAE0 INTEGER AAAAF0 CALL LABEL0(STATE) AAAAA0=STATE GOTO 10000 10001 GPST=2 RETURN 10000 IF(AAAAA0.EQ.2)GOTO 10001 AAAAB0=STATE GOTO 10002 10003 STATE=3 GOTO 10004 10002 IF(AAAAB0.EQ.1)GOTO 10003 10004 IF((STATE.NE.3))GOTO 10005 STATE=1 IF((SYMBO0.NE.71))GOTO 10006 STATE=3 CALL GETSYM 10006 IF((STATE.NE.1))GOTO 10007 CALL LITER0(STATE) AAAAC0=STATE GOTO 10008 10009 GPST=2 RETURN 10010 MICRO0=MICRO0+(1) GOTO 10011 10008 AAAAD0=AAAAC0-1 GOTO(10009,10010),AAAAD0 10011 IF((STATE.NE.1))GOTO 10012 CALL NANOI0(STATE) AAAAE0=STATE GOTO 10013 10014 GPST=2 RETURN 10015 MICRO0=MICRO0+(1) NANOL0=NANOL0+(1) GOTO 10016 10013 AAAAF0=AAAAE0-1 GOTO(10014,10015),AAAAF0 10016 CONTINUE 10012 CONTINUE 10007 IF((STATE.EQ.3))GOTO 10017 GPST=2 RETURN 10017 CONTINUE 10005 GPST=STATE RETURN END SUBROUTINE LABEL0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAAG0 CALL LABEM0(STATE) AAAAG0=STATE GOTO 10018 10019 GPST=2 RETURN 10018 IF(AAAAG0.EQ.2)GOTO 10019 IF((STATE.NE.3))GOTO 10020 STATE=1 IF((SYMBO0.NE.32))GOTO 10021 STATE=3 CALL GETSYM 10021 IF((STATE.EQ.3))GOTO 10022 GPST=2 RETURN 10022 STATE=1 IF((SYMBO0.NE.33))GOTO 10023 STATE=3 CALL GETSYM 10023 IF((STATE.EQ.3))GOTO 10024 GPST=2 RETURN 10024 CONTINUE 10020 GPST=STATE RETURN END SUBROUTINE LITER0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAAH0 INTEGER AAAAI0 INTEGER AAAAJ0 INTEGER AAAAK0 INTEGER AAAAL0 INTEGER AAAAM0 INTEGER AAAAN0 MICRP0(MICRO0+1)=0 CALL LITES0(STATE) AAAAH0=STATE GOTO 10025 10026 GPST=2 RETURN 10025 IF(AAAAH0.EQ.2)GOTO 10026 IF((STATE.NE.3))GOTO 10027 STATE=1 IF((SYMBO0.NE.5))GOTO 10028 STATE=3 CALL SETF(1,4,MICRP0(MICRO0+1),12) CALL SETF(5,12,MICRP0(MICRO0+1),LITVA0) CALL GETSYM 10028 IF((STATE.NE.1))GOTO 10029 IF((SYMBO0.NE.65))GOTO 10030 STATE=3 CALL SETF(3,6,MICRP0(MICRO0+1),SHIFT0) CALL SETF(1,2,MICRP0(MICRO0+1),0) CALL GETSYM 10030 IF((STATE.NE.3))GOTO 10031 CALL LITES0(STATE) AAAAI0=STATE GOTO 10032 10033 GPST=2 RETURN 10034 CALL SETF(1,2,MICRP0(MICRO0+1),2) GOTO 10035 10032 AAAAJ0=AAAAI0-1 GOTO(10033,10034),AAAAJ0 10035 IF((STATE.NE.3))GOTO 10036 STATE=1 IF((SYMBO0.NE.38))GOTO 10037 STATE=3 CALL SETF(9,8,MICRP0(MICRO0+1),LITVA0) CALL GETSYM 10037 IF((STATE.NE.1))GOTO 10038 IF((SYMBO0.NE.69))GOTO 10039 STATE=3 CALL SETF(9,8,MICRP0(MICRO0+1),SHIFT0) CALL GETSYM 10039 CONTINUE 10038 IF((STATE.EQ.3))GOTO 10040 GPST=2 RETURN 10040 CONTINUE 10036 AAAAK0=STATE GOTO 10041 10042 STATE=3 GOTO 10043 10041 IF(AAAAK0.EQ.1)GOTO 10042 10043 IF((STATE.EQ.3))GOTO 10044 GPST=2 RETURN 10044 CONTINUE 10031 IF((STATE.NE.1))GOTO 10045 IF((SYMBO0.NE.38))GOTO 10046 STATE=3 CALL SETF(9,8,MICRP0(MICRO0+1),LITVA0) CALL SETF(1,4,MICRP0(MICRO0+1),14) CALL GETSYM 10046 IF((STATE.NE.1))GOTO 10047 IF((SYMBO0.NE.69))GOTO 10048 STATE=3 CALL SETF(9,8,MICRP0(MICRO0+1),SHIFT0) CALL SETF(1,4,MICRP0(MICRO0+1),14) CALL GETSYM 10048 CONTINUE 10047 IF((STATE.NE.3))GOTO 10049 CALL LITES0(STATE) AAAAL0=STATE GOTO 10050 10051 GPST=2 RETURN 10052 CALL SETF(1,2,MICRP0(MICRO0+1),2) GOTO 10053 10050 AAAAM0=AAAAL0-1 GOTO(10051,10052),AAAAM0 10053 IF((STATE.NE.3))GOTO 10054 STATE=1 IF((SYMBO0.NE.65))GOTO 10055 STATE=3 CALL SETF(3,6,MICRP0(MICRO0+1),SHIFT0) CALL GETSYM 10055 IF((STATE.EQ.3))GOTO 10056 GPST=2 RETURN 10056 CONTINUE 10054 AAAAN0=STATE GOTO 10057 10058 STATE=3 GOTO 10059 10057 IF(AAAAN0.EQ.1)GOTO 10058 10059 IF((STATE.EQ.3))GOTO 10060 GPST=2 RETURN 10060 CONTINUE 10049 CONTINUE 10045 CONTINUE 10029 IF((STATE.EQ.3))GOTO 10061 GPST=2 RETURN 10061 CONTINUE 10027 GPST=STATE RETURN END SUBROUTINE LITES0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAAO0 INTEGER AAAAP0 CALL LITET0(STATE) AAAAO0=STATE GOTO 10062 10063 GPST=2 RETURN 10062 IF(AAAAO0.EQ.2)GOTO 10063 IF((STATE.NE.3))GOTO 10064 CALL LITEU0(STATE) AAAAP0=STATE GOTO 10065 10066 GPST=2 RETURN 10065 IF(AAAAP0.EQ.2)GOTO 10066 IF((STATE.EQ.3))GOTO 10067 GPST=2 RETURN 10067 STATE=1 IF((SYMBO0.NE.8))GOTO 10068 STATE=3 CALL GETSYM 10068 IF((STATE.EQ.3))GOTO 10069 GPST=2 RETURN 10069 CONTINUE 10064 GPST=STATE RETURN END SUBROUTINE LITEU0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER INSER0,LOOKUP INTEGER AAAAQ0 STATE=1 IF((SYMBO0.NE.30))GOTO 10070 STATE=3 LITVA0=SYMVA0 SHIFT0=INSER0(SYMVA0) CALL GETSYM 10070 IF((STATE.NE.1))GOTO 10071 IF((SYMBO0.NE.19))GOTO 10072 STATE=3 CALL GETSYM 10072 IF((STATE.NE.3))GOTO 10073 STATE=1 IF((SYMBO0.NE.30))GOTO 10074 STATE=3 LITVA0=NOT(SYMVA0) SHIFT0=INSER0(-SYMVA0) CALL GETSYM GOTO 10075 10074 CALL ERRMSG('missing constant after COMP.') 10075 IF((STATE.EQ.3))GOTO 10076 GPST=2 RETURN 10076 CONTINUE 10073 IF((STATE.NE.1))GOTO 10077 IF((SYMBO0.NE.32))GOTO 10078 STATE=3 IF((LOOKUP(SYMTE0,LITVA0,LTABA0).NE.0))GOTO 10079 CALL ERRMSG('undefined label.') 10079 SHIFT0=INSER0(LITVA0) CALL GETSYM 10078 IF((STATE.NE.3))GOTO 10080 STATE=1 IF((SYMBO0.NE.45))GOTO 10081 STATE=3 CALL GETSYM 10081 IF((STATE.NE.3))GOTO 10082 STATE=1 IF((SYMBO0.NE.30))GOTO 10083 STATE=3 LITVA0=LITVA0-(SYMVA0) SHIFT0=INSER0(LITVA0) CALL GETSYM GOTO 10084 10083 CALL ERRMSG('missing constant after ''-''.') 10084 IF((STATE.EQ.3))GOTO 10085 GPST=2 RETURN 10085 CONTINUE 10082 AAAAQ0=STATE GOTO 10086 10087 STATE=3 GOTO 10088 10086 IF(AAAAQ0.EQ.1)GOTO 10087 10088 IF((STATE.EQ.3))GOTO 10089 GPST=2 RETURN 10089 CONTINUE 10080 CONTINUE 10077 CONTINUE 10071 GPST=STATE RETURN END SUBROUTINE NANOI0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAAR0 INTEGER AAAAS0 INTEGER AAAAT0 INTEGER AAAAU0 NANOM0(1,NANOL0+1)=0 NANOM0(2,NANOL0+1)=0 NANOM0(3,NANOL0+1)=0 NANOM0(4,NANOL0+1)=0 CALL SETF(1,4,MICRP0(MICRO0+1),15) CALL SETF(5,12,MICRP0(MICRO0+1),NANOL0) CALL UNCON0(STATE) AAAAR0=STATE GOTO 10090 10091 GPST=2 RETURN 10090 IF(AAAAR0.EQ.2)GOTO 10091 AAAAS0=STATE GOTO 10092 10093 STATE=3 GOTO 10094 10092 IF(AAAAS0.EQ.1)GOTO 10093 10094 IF((STATE.NE.3))GOTO 10095 CALL CONDI0(STATE) AAAAT0=STATE GOTO 10096 10097 GPST=2 RETURN 10096 IF(AAAAT0.EQ.2)GOTO 10097 AAAAU0=STATE GOTO 10098 10099 STATE=3 GOTO 10100 10098 IF(AAAAU0.EQ.1)GOTO 10099 10100 IF((STATE.EQ.3))GOTO 10101 GPST=2 RETURN 10101 CONTINUE 10095 GPST=STATE RETURN END SUBROUTINE UNCON0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAAV0 INTEGER AAAAW0 INTEGER AAAAX0 SUCCE0=1 MDOPU0=.FALSE. CAJUS0=.FALSE. LUNIT0=.FALSE. CALL SETF(11,3,NANOM0(1,NANOL0+1),1) CALL SETF(14,3,NANOM0(1,NANOL0+1),1) CALL COMPO0(STATE) AAAAV0=STATE GOTO 10102 10103 GPST=2 RETURN 10102 IF(AAAAV0.EQ.2)GOTO 10103 IF((STATE.NE.3))GOTO 10104 10105 CALL COMPO0(STATE) AAAAW0=STATE GOTO 10106 10107 GPST=2 RETURN 10106 IF(AAAAW0.EQ.2)GOTO 10107 IF((STATE.EQ.3))GOTO 10105 AAAAX0=STATE GOTO 10108 10109 STATE=3 GOTO 10110 10108 IF(AAAAX0.EQ.1)GOTO 10109 10110 IF((STATE.EQ.3))GOTO 10111 GPST=2 RETURN 10111 CONTINUE 10104 GPST=STATE RETURN END SUBROUTINE COMPO0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAAY0 INTEGER AAAAZ0 INTEGER AAABA0 INTEGER AAABB0 INTEGER AAABC0 CALL EXTER0(STATE) AAAAY0=STATE GOTO 10112 10113 GPST=2 RETURN 10112 IF(AAAAY0.EQ.2)GOTO 10113 IF((STATE.NE.1))GOTO 10114 CALL SUCCF0(STATE) AAAAZ0=STATE GOTO 10115 10116 GPST=2 RETURN 10117 CALL SETF(11,3,NANOM0(1,NANOL0+1),LITVA0) IF((SUCCE0.NE.1))GOTO 10118 CALL SETF(14,3,NANOM0(1,NANOL0+1),LITVA0) 10118 GOTO 10119 10115 AAABA0=AAAAZ0-1 GOTO(10116,10117),AAABA0 10119 IF((STATE.NE.1))GOTO 10120 CALL LOGIC0(STATE) AAABB0=STATE GOTO 10121 10122 GPST=2 RETURN 10123 IF((SUCCE0.EQ.1))GOTO 10124 IF((.NOT.LUNIT0))GOTO 10125 CALL ERRMSG('adder may not be used twice.') 10125 CALL SETF(6,1,NANOM0(1,NANOL0+1),1) GOTO 10126 10124 LUNIT0=.TRUE. 10126 GOTO 10127 10121 AAABC0=AAABB0-1 GOTO(10122,10123),AAABC0 10127 CONTINUE 10120 CONTINUE 10114 GPST=STATE RETURN END SUBROUTINE EXTER0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAABD0 INTEGER AAABE0 INTEGER AAABF0 INTEGER AAABG0 INTEGER AAABH0 INTEGER AAABI0 INTEGER AAABJ0 INTEGER AAABK0 INTEGER AAABL0 INTEGER AAABM0 CALL MEMOR0(STATE) AAABD0=STATE GOTO 10128 10129 GPST=2 RETURN 10130 CALL SETF(51,4,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.MDOPU0))GOTO 10131 CALL ERRMSG('mem dev op may not be used twice.') 10131 IF((SUCCE0.EQ.1))GOTO 10132 CALL SETF(7,1,NANOM0(1,NANOL0+1),1) 10132 MDOPU0=.TRUE. GOTO 10133 10128 AAABE0=AAABD0-1 GOTO(10129,10130),AAABE0 10133 IF((STATE.NE.3))GOTO 10134 CALL SETOP(STATE) AAABF0=STATE GOTO 10135 10136 GPST=2 RETURN 10137 CALL SETF(8,3,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.CAJUS0))GOTO 10138 CALL ERRMSG('cond@. adj@. may not be used twice.') 10138 IF((SUCCE0.EQ.1))GOTO 10139 CALL SETF(7,1,NANOM0(1,NANOL0+1),1) 10139 CAJUS0=.TRUE. GOTO 10140 10135 AAABG0=AAABF0-1 GOTO(10136,10137),AAABG0 10140 AAABH0=STATE GOTO 10141 10142 STATE=3 GOTO 10143 10141 IF(AAABH0.EQ.1)GOTO 10142 10143 IF((STATE.EQ.3))GOTO 10144 GPST=2 RETURN 10144 CONTINUE 10134 IF((STATE.NE.1))GOTO 10145 CALL SETOP(STATE) AAABI0=STATE GOTO 10146 10147 GPST=2 RETURN 10148 CALL SETF(8,3,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.CAJUS0))GOTO 10149 CALL ERRMSG('cond@. adj@. may not be used twice.') 10149 IF((SUCCE0.EQ.1))GOTO 10150 CALL SETF(7,1,NANOM0(1,NANOL0+1),1) 10150 CAJUS0=.TRUE. GOTO 10151 10146 AAABJ0=AAABI0-1 GOTO(10147,10148),AAABJ0 10151 IF((STATE.NE.3))GOTO 10152 CALL MEMOR0(STATE) AAABK0=STATE GOTO 10153 10154 GPST=2 RETURN 10155 CALL SETF(51,4,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.MDOPU0))GOTO 10156 CALL ERRMSG('mem dev op may not be used twice.') 10156 IF((SUCCE0.EQ.1))GOTO 10157 CALL SETF(7,1,NANOM0(1,NANOL0+1),1) 10157 MDOPU0=.TRUE. GOTO 10158 10153 AAABL0=AAABK0-1 GOTO(10154,10155),AAABL0 10158 AAABM0=STATE GOTO 10159 10160 STATE=3 GOTO 10161 10159 IF(AAABM0.EQ.1)GOTO 10160 10161 IF((STATE.EQ.3))GOTO 10162 GPST=2 RETURN 10162 CONTINUE 10152 CONTINUE 10145 GPST=STATE RETURN END SUBROUTINE MEMOR0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE LITVA0=0 STATE=1 IF((SYMBO0.NE.47))GOTO 10163 STATE=3 LITVA0=2 CALL GETSYM 10163 IF((STATE.NE.1))GOTO 10164 IF((SYMBO0.NE.48))GOTO 10165 STATE=3 LITVA0=3 CALL GETSYM 10165 IF((STATE.NE.1))GOTO 10166 IF((SYMBO0.NE.50))GOTO 10167 STATE=3 LITVA0=6 CALL GETSYM 10167 IF((STATE.NE.1))GOTO 10168 IF((SYMBO0.NE.51))GOTO 10169 STATE=3 LITVA0=7 CALL GETSYM 10169 CONTINUE 10168 CONTINUE 10166 CONTINUE 10164 GPST=STATE RETURN END SUBROUTINE SETOP(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER SETVAL(3) INTEGER AAABN0 DATA SETVAL/7,1,5/ LITVA0=0 STATE=1 IF((SYMBO0.NE.67))GOTO 10170 STATE=3 CALL GETSYM 10170 IF((STATE.NE.3))GOTO 10171 CALL CONDJ0(STATE) AAABN0=STATE GOTO 10172 10173 GPST=2 RETURN 10174 CALL ERRMSG('missing condition bit after SET.') GOTO 10175 10176 LITVA0=SETVAL(LITVA0) GOTO 10175 10172 GOTO(10174,10173,10176),AAABN0 10175 IF((STATE.EQ.3))GOTO 10177 GPST=2 RETURN 10177 CONTINUE 10171 GPST=STATE RETURN END SUBROUTINE CONDJ0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE STATE=1 IF((SYMBO0.NE.34))GOTO 10178 STATE=3 LITVA0=1 CALL GETSYM 10178 IF((STATE.NE.1))GOTO 10179 IF((SYMBO0.NE.35))GOTO 10180 STATE=3 LITVA0=2 CALL GETSYM 10180 IF((STATE.NE.1))GOTO 10181 IF((SYMBO0.NE.36))GOTO 10182 STATE=3 LITVA0=3 CALL GETSYM 10182 CONTINUE 10181 CONTINUE 10179 GPST=STATE RETURN END SUBROUTINE LOGIC0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAABO0 INTEGER AAABP0 INTEGER AAABQ0 INTEGER AAABR0 INTEGER AAABS0 INTEGER AAABT0 INTEGER AAABU0 INTEGER AAABV0 INTEGER AAABW0 INTEGER AAABX0 INTEGER AAABY0 CALL ADDER0(STATE) AAABO0=STATE GOTO 10183 10184 GPST=2 RETURN 10183 IF(AAABO0.EQ.2)GOTO 10184 IF((STATE.NE.3))GOTO 10185 CALL SHIFU0(STATE) AAABP0=STATE GOTO 10186 10187 GPST=2 RETURN 10188 CALL SETF(32,2,NANOM0(1,NANOL0+1),LITVA0) GOTO 10189 10186 AAABQ0=AAABP0-1 GOTO(10187,10188),AAABQ0 10189 AAABR0=STATE GOTO 10190 10191 STATE=3 GOTO 10192 10190 IF(AAABR0.EQ.1)GOTO 10191 10192 IF((STATE.EQ.3))GOTO 10193 GPST=2 RETURN 10193 CALL DESTI0(STATE) AAABS0=STATE GOTO 10194 10195 GPST=2 RETURN 10194 IF(AAABS0.EQ.2)GOTO 10195 AAABT0=STATE GOTO 10196 10197 STATE=3 GOTO 10198 10196 IF(AAABT0.EQ.1)GOTO 10197 10198 IF((STATE.EQ.3))GOTO 10199 GPST=2 RETURN 10199 CONTINUE 10185 IF((STATE.NE.1))GOTO 10200 CALL SHIFU0(STATE) AAABU0=STATE GOTO 10201 10202 GPST=2 RETURN 10203 CALL SETF(32,2,NANOM0(1,NANOL0+1),LITVA0) GOTO 10204 10201 AAABV0=AAABU0-1 GOTO(10202,10203),AAABV0 10204 IF((STATE.NE.3))GOTO 10205 CALL DESTI0(STATE) AAABW0=STATE GOTO 10206 10207 GPST=2 RETURN 10206 IF(AAABW0.EQ.2)GOTO 10207 AAABX0=STATE GOTO 10208 10209 STATE=3 GOTO 10210 10208 IF(AAABX0.EQ.1)GOTO 10209 10210 IF((STATE.EQ.3))GOTO 10211 GPST=2 RETURN 10211 CONTINUE 10205 IF((STATE.NE.1))GOTO 10212 CALL DESTI0(STATE) AAABY0=STATE GOTO 10213 10214 GPST=2 RETURN 10213 IF(AAABY0.EQ.2)GOTO 10214 10212 CONTINUE 10200 GPST=STATE RETURN END SUBROUTINE ADDER0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAABZ0 INTEGER AAACA0 INTEGER AAACB0 CALL BINAS0(STATE) AAABZ0=STATE GOTO 10215 10216 GPST=2 RETURN 10215 IF(AAABZ0.EQ.2)GOTO 10216 IF((STATE.NE.3))GOTO 10217 CALL BINAT0(STATE) AAACA0=STATE GOTO 10218 10219 GPST=2 RETURN 10218 IF(AAACA0.EQ.2)GOTO 10219 IF((STATE.EQ.3))GOTO 10220 GPST=2 RETURN 10220 CONTINUE 10217 IF((STATE.NE.1))GOTO 10221 CALL UNARY0(STATE) AAACB0=STATE GOTO 10222 10223 GPST=2 RETURN 10222 IF(AAACB0.EQ.2)GOTO 10223 IF((STATE.NE.1))GOTO 10224 IF((SYMBO0.NE.30))GOTO 10225 STATE=3 CALL SETF(17,3,NANOM0(1,NANOL0+1),0) CALL SETF(28,4,NANOM0(1,NANOL0+1),0) IF((SYMVA0.NE.0))GOTO 10226 CALL SETF(20,7,NANOM0(1,NANOL0+1),0) GOTO 10227 10226 IF((SYMVA0.NE.1))GOTO 10228 CALL SETF(20,7,NANOM0(1,NANOL0+1),3) GOTO 10229 10228 CALL ERRMSG('constant must be 0 or 1.') 10229 CONTINUE 10227 CALL GETSYM 10225 CONTINUE 10224 CONTINUE 10221 GPST=STATE RETURN END SUBROUTINE UNARY0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAACC0 INTEGER AAACD0 INTEGER AAACE0 INTEGER AAACF0 INTEGER AAACG0 INTEGER AAACH0 INTEGER AAACI0 INTEGER AAACJ0 STATE=1 IF((SYMBO0.NE.55))GOTO 10230 STATE=3 CALL GETSYM 10230 IF((STATE.NE.3))GOTO 10231 CALL YSELE0(STATE) AAACC0=STATE GOTO 10232 10233 GPST=2 RETURN 10234 CALL SETF(17,3,NANOM0(1,NANOL0+1),0) CALL SETF(20,7,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.COMPY0))GOTO 10235 CALL SETF(28,4,NANOM0(1,NANOL0+1),0) GOTO 10236 10235 CALL SETF(28,4,NANOM0(1,NANOL0+1),12) 10236 GOTO 10237 10232 AAACD0=AAACC0-1 GOTO(10233,10234),AAACD0 10237 IF((STATE.NE.1))GOTO 10238 CALL XSELE0(STATE) AAACE0=STATE GOTO 10239 10240 GPST=2 RETURN 10241 CALL SETF(17,3,NANOM0(1,NANOL0+1),LITVA0) CALL SETF(20,7,NANOM0(1,NANOL0+1),0) CALL SETF(28,4,NANOM0(1,NANOL0+1),1) GOTO 10242 10239 AAACF0=AAACE0-1 GOTO(10240,10241),AAACF0 10242 CONTINUE 10238 IF((STATE.EQ.3))GOTO 10243 GPST=2 RETURN 10243 CONTINUE 10231 IF((STATE.NE.1))GOTO 10244 CALL YSELE0(STATE) AAACG0=STATE GOTO 10245 10246 GPST=2 RETURN 10247 CALL SETF(17,3,NANOM0(1,NANOL0+1),0) CALL SETF(20,7,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.COMPY0))GOTO 10248 CALL SETF(28,4,NANOM0(1,NANOL0+1),12) GOTO 10249 10248 CALL SETF(28,4,NANOM0(1,NANOL0+1),0) 10249 GOTO 10250 10245 AAACH0=AAACG0-1 GOTO(10246,10247),AAACH0 10250 IF((STATE.NE.1))GOTO 10251 CALL XSELE0(STATE) AAACI0=STATE GOTO 10252 10253 GPST=2 RETURN 10254 CALL SETF(17,3,NANOM0(1,NANOL0+1),LITVA0) CALL SETF(20,8,NANOM0(1,NANOL0+1),0) CALL SETF(28,4,NANOM0(1,NANOL0+1),0) GOTO 10255 10252 AAACJ0=AAACI0-1 GOTO(10253,10254),AAACJ0 10255 CONTINUE 10251 CONTINUE 10244 GPST=STATE RETURN END SUBROUTINE XSELE0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE STATE=1 IF((SYMBO0.NE.30))GOTO 10256 STATE=3 IF((SYMVA0.EQ.0))GOTO 10257 CALL ERRMSG('X input must be 0.') 10257 LITVA0=0 CALL GETSYM 10256 IF((STATE.NE.1))GOTO 10258 IF((SYMBO0.NE.0))GOTO 10259 STATE=3 LITVA0=5 CALL GETSYM 10259 IF((STATE.NE.1))GOTO 10260 IF((SYMBO0.NE.1))GOTO 10261 STATE=3 LITVA0=6 CALL GETSYM 10261 IF((STATE.NE.1))GOTO 10262 IF((SYMBO0.NE.2))GOTO 10263 STATE=3 LITVA0=7 CALL GETSYM 10263 IF((STATE.NE.1))GOTO 10264 IF((SYMBO0.NE.22))GOTO 10265 STATE=3 LITVA0=3 CALL GETSYM 10265 IF((STATE.NE.1))GOTO 10266 IF((SYMBO0.NE.38))GOTO 10267 STATE=3 LITVA0=1 CALL GETSYM 10267 CONTINUE 10266 CONTINUE 10264 CONTINUE 10262 CONTINUE 10260 CONTINUE 10258 GPST=STATE RETURN END SUBROUTINE YSELE0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAACK0 COMPY0=.FALSE. STATE=1 IF((SYMBO0.NE.30))GOTO 10268 STATE=3 IF((SYMVA0.NE.0))GOTO 10269 LITVA0=0 GOTO 10270 10269 IF((SYMVA0.NE.1))GOTO 10271 LITVA0=3 GOTO 10272 10271 CALL ERRMSG('Y-select must be 0 or 1.') 10272 CONTINUE 10270 CALL GETSYM 10268 IF((STATE.NE.1))GOTO 10273 IF((SYMBO0.NE.17))GOTO 10274 STATE=3 LITVA0=49 CALL GETSYM 10274 IF((STATE.NE.1))GOTO 10275 CALL BMCL(STATE) AAACK0=STATE GOTO 10276 10277 GPST=2 RETURN 10276 IF(AAACK0.EQ.2)GOTO 10277 IF((STATE.NE.1))GOTO 10278 IF((SYMBO0.NE.22))GOTO 10279 STATE=3 LITVA0=44 CALL GETSYM 10279 IF((STATE.NE.1))GOTO 10280 IF((SYMBO0.NE.38))GOTO 10281 STATE=3 LITVA0=5 CALL GETSYM 10281 IF((STATE.NE.1))GOTO 10282 IF((SYMBO0.NE.5))GOTO 10283 STATE=3 LITVA0=25 CALL GETSYM 10283 CONTINUE 10282 CONTINUE 10280 CONTINUE 10278 CONTINUE 10275 CONTINUE 10273 GPST=STATE RETURN END SUBROUTINE BINAT0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE LOGICAL NEGAT0 INTEGER OP INTEGER OPREPL(16) INTEGER AAACL0 INTEGER AAACM0 INTEGER AAACN0 INTEGER AAACO0 INTEGER AAACP0 INTEGER AAACQ0 INTEGER AAACR0 INTEGER AAACS0 INTEGER AAACT0 INTEGER AAACU0 INTEGER AAACV0 INTEGER AAACW0 INTEGER AAACX0 INTEGER AAACY0 INTEGER AAACZ0 DATA OPREPL/12,2,1,15,8,10,9,11,4,6,5,7,0,14,13,3/ CALL XSELE0(STATE) AAACL0=STATE GOTO 10284 10285 GPST=2 RETURN 10286 CALL SETF(17,3,NANOM0(1,NANOL0+1),LITVA0) GOTO 10287 10284 AAACM0=AAACL0-1 GOTO(10285,10286),AAACM0 10287 IF((STATE.NE.3))GOTO 10288 STATE=1 IF((SYMBO0.NE.59))GOTO 10289 STATE=3 CALL GETSYM 10289 IF((STATE.NE.3))GOTO 10290 STATE=1 IF((SYMBO0.NE.55))GOTO 10291 STATE=3 NEGAT0=.TRUE. CALL GETSYM GOTO 10292 10291 NEGAT0=.FALSE. 10292 AAACN0=STATE GOTO 10293 10294 STATE=3 GOTO 10295 10293 IF(AAACN0.EQ.1)GOTO 10294 10295 IF((STATE.EQ.3))GOTO 10296 GPST=2 RETURN 10296 CALL YSELE0(STATE) AAACO0=STATE GOTO 10297 10298 GPST=2 RETURN 10299 CALL SETF(20,7,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.COMPY0))GOTO 10300 NEGAT0=.NOT.NEGAT0 10300 GOTO 10301 10297 AAACP0=AAACO0-1 GOTO(10298,10299),AAACP0 10301 IF((STATE.EQ.3))GOTO 10302 GPST=2 RETURN 10302 STATE=1 IF((SYMBO0.NE.59))GOTO 10303 STATE=3 IF((.NOT.NEGAT0))GOTO 10304 CALL SETF(28,4,NANOM0(1,NANOL0+1),15) GOTO 10305 10304 CALL SETF(28,4,NANOM0(1,NANOL0+1),3) 10305 CALL GETSYM GOTO 10306 10303 IF((.NOT.NEGAT0))GOTO 10307 CALL SETF(28,4,NANOM0(1,NANOL0+1),12) GOTO 10308 10307 CALL SETF(28,4,NANOM0(1,NANOL0+1),0) 10308 CONTINUE 10306 IF((STATE.NE.3))GOTO 10309 STATE=1 IF((SYMBO0.NE.30))GOTO 10310 STATE=3 IF((SYMVA0.EQ.1))GOTO 10311 CALL ERRMSG('adder op must be ''x+y+1''.') 10311 CALL GETSYM GOTO 10312 10310 CALL ERRMSG('adder op must be ''x+y+1''.') 10312 IF((STATE.EQ.3))GOTO 10313 GPST=2 RETURN 10313 CONTINUE 10309 AAACQ0=STATE GOTO 10314 10315 STATE=3 GOTO 10316 10314 IF(AAACQ0.EQ.1)GOTO 10315 10316 IF((STATE.EQ.3))GOTO 10317 GPST=2 RETURN 10317 CONTINUE 10290 IF((STATE.NE.1))GOTO 10318 IF((SYMBO0.NE.45))GOTO 10319 STATE=3 CALL GETSYM 10319 IF((STATE.NE.3))GOTO 10320 STATE=1 IF((SYMBO0.NE.55))GOTO 10321 STATE=3 NEGAT0=.TRUE. CALL GETSYM GOTO 10322 10321 NEGAT0=.FALSE. 10322 AAACR0=STATE GOTO 10323 10324 STATE=3 GOTO 10325 10323 IF(AAACR0.EQ.1)GOTO 10324 10325 IF((STATE.EQ.3))GOTO 10326 GPST=2 RETURN 10326 CALL YSELE0(STATE) AAACS0=STATE GOTO 10327 10328 GPST=2 RETURN 10329 CALL SETF(20,7,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.COMPY0))GOTO 10330 NEGAT0=.NOT.NEGAT0 10330 GOTO 10331 10327 AAACT0=AAACS0-1 GOTO(10328,10329),AAACT0 10331 IF((STATE.EQ.3))GOTO 10332 GPST=2 RETURN 10332 STATE=1 IF((SYMBO0.NE.45))GOTO 10333 STATE=3 IF((.NOT.NEGAT0))GOTO 10334 CALL SETF(28,4,NANOM0(1,NANOL0+1),0) GOTO 10335 10334 CALL SETF(28,4,NANOM0(1,NANOL0+1),12) 10335 CALL GETSYM GOTO 10336 10333 IF((.NOT.NEGAT0))GOTO 10337 CALL SETF(28,4,NANOM0(1,NANOL0+1),3) GOTO 10338 10337 CALL SETF(28,4,NANOM0(1,NANOL0+1),15) 10338 CONTINUE 10336 IF((STATE.NE.3))GOTO 10339 STATE=1 IF((SYMBO0.NE.30))GOTO 10340 STATE=3 IF((SYMVA0.EQ.1))GOTO 10341 CALL ERRMSG('adder op must be ''x-y-1''.') 10341 CALL GETSYM GOTO 10342 10340 CALL ERRMSG('adder op must be ''x-y-1''.') 10342 IF((STATE.EQ.3))GOTO 10343 GPST=2 RETURN 10343 CONTINUE 10339 AAACU0=STATE GOTO 10344 10345 STATE=3 GOTO 10346 10344 IF(AAACU0.EQ.1)GOTO 10345 10346 IF((STATE.EQ.3))GOTO 10347 GPST=2 RETURN 10347 CONTINUE 10320 IF((STATE.NE.1))GOTO 10348 CALL OPERA0(STATE) AAACV0=STATE GOTO 10349 10350 GPST=2 RETURN 10351 OP=LITVA0 GOTO 10352 10349 AAACW0=AAACV0-1 GOTO(10350,10351),AAACW0 10352 IF((STATE.NE.3))GOTO 10353 STATE=1 IF((SYMBO0.NE.55))GOTO 10354 STATE=3 NEGAT0=.TRUE. CALL GETSYM GOTO 10355 10354 NEGAT0=.FALSE. 10355 AAACX0=STATE GOTO 10356 10357 STATE=3 GOTO 10358 10356 IF(AAACX0.EQ.1)GOTO 10357 10358 IF((STATE.EQ.3))GOTO 10359 GPST=2 RETURN 10359 CALL YSELE0(STATE) AAACY0=STATE GOTO 10360 10361 GPST=2 RETURN 10362 CALL SETF(20,7,NANOM0(1,NANOL0+1),LITVA0) IF((.NOT.COMPY0))GOTO 10363 NEGAT0=.NOT.NEGAT0 10363 IF((.NOT.NEGAT0))GOTO 10364 OP=OPREPL(OP+1) 10364 CALL SETF(28,4,NANOM0(1,NANOL0+1),OP) GOTO 10365 10360 AAACZ0=AAACY0-1 GOTO(10361,10362),AAACZ0 10365 IF((STATE.EQ.3))GOTO 10366 GPST=2 RETURN 10366 CONTINUE 10353 CONTINUE 10348 CONTINUE 10318 IF((STATE.EQ.3))GOTO 10367 GPST=2 RETURN 10367 CONTINUE 10288 GPST=STATE RETURN END SUBROUTINE OPERA0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE STATE=1 IF((SYMBO0.NE.6))GOTO 10368 STATE=3 LITVA0=11 CALL GETSYM 10368 IF((STATE.NE.1))GOTO 10369 IF((SYMBO0.NE.58))GOTO 10370 STATE=3 LITVA0=14 CALL GETSYM 10370 IF((STATE.NE.1))GOTO 10371 IF((SYMBO0.NE.52))GOTO 10372 STATE=3 LITVA0=4 CALL GETSYM 10372 IF((STATE.NE.1))GOTO 10373 IF((SYMBO0.NE.54))GOTO 10374 STATE=3 LITVA0=1 CALL GETSYM 10374 IF((STATE.NE.1))GOTO 10375 IF((SYMBO0.NE.28))GOTO 10376 STATE=3 LITVA0=8 CALL GETSYM 10376 IF((STATE.NE.1))GOTO 10377 IF((SYMBO0.NE.53))GOTO 10378 STATE=3 LITVA0=7 CALL GETSYM 10378 IF((STATE.NE.1))GOTO 10379 IF((SYMBO0.NE.62))GOTO 10380 STATE=3 LITVA0=13 CALL GETSYM 10380 IF((STATE.NE.1))GOTO 10381 IF((SYMBO0.NE.56))GOTO 10382 STATE=3 LITVA0=2 CALL GETSYM 10382 IF((STATE.NE.1))GOTO 10383 IF((SYMBO0.NE.75))GOTO 10384 STATE=3 LITVA0=6 CALL GETSYM 10384 IF((STATE.NE.1))GOTO 10385 IF((SYMBO0.NE.25))GOTO 10386 STATE=3 LITVA0=9 CALL GETSYM 10386 IF((STATE.NE.1))GOTO 10387 IF((SYMBO0.NE.57))GOTO 10388 STATE=3 LITVA0=5 CALL GETSYM 10388 IF((STATE.NE.1))GOTO 10389 IF((SYMBO0.NE.3))GOTO 10390 STATE=3 LITVA0=10 CALL GETSYM 10390 CONTINUE 10389 CONTINUE 10387 CONTINUE 10385 CONTINUE 10383 CONTINUE 10381 CONTINUE 10379 CONTINUE 10377 CONTINUE 10375 CONTINUE 10373 CONTINUE 10371 CONTINUE 10369 GPST=STATE RETURN END SUBROUTINE SHIFU0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE LITVA0=0 STATE=1 IF((SYMBO0.NE.63))GOTO 10391 STATE=3 LITVA0=1 CALL GETSYM 10391 IF((STATE.NE.1))GOTO 10392 IF((SYMBO0.NE.41))GOTO 10393 STATE=3 LITVA0=2 CALL GETSYM 10393 IF((STATE.NE.1))GOTO 10394 IF((SYMBO0.NE.23))GOTO 10395 STATE=3 LITVA0=3 CALL GETSYM 10395 CONTINUE 10394 CONTINUE 10392 GPST=STATE RETURN END SUBROUTINE DESTI0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAADA0 INTEGER AAADB0 INTEGER AAADC0 INTEGER AAADD0 INTEGER AAADE0 MARUS0=.FALSE. CTRUS0=.FALSE. BRUSE0=.FALSE. STATE=1 IF((SYMBO0.NE.8))GOTO 10396 STATE=3 CALL GETSYM 10396 IF((STATE.NE.3))GOTO 10397 10398 CALL DESTJ0(STATE) AAADA0=STATE GOTO 10399 10400 GPST=2 RETURN 10399 IF(AAADA0.EQ.2)GOTO 10400 IF((STATE.EQ.3))GOTO 10398 AAADB0=STATE GOTO 10401 10402 STATE=3 GOTO 10403 10401 IF(AAADB0.EQ.1)GOTO 10402 10403 IF((STATE.EQ.3))GOTO 10404 GPST=2 RETURN 10404 CONTINUE 10397 IF((STATE.NE.1))GOTO 10405 CALL DESTJ0(STATE) AAADC0=STATE GOTO 10406 10407 GPST=2 RETURN 10406 IF(AAADC0.EQ.2)GOTO 10407 IF((STATE.NE.3))GOTO 10408 10409 CALL DESTJ0(STATE) AAADD0=STATE GOTO 10410 10411 GPST=2 RETURN 10410 IF(AAADD0.EQ.2)GOTO 10411 IF((STATE.EQ.3))GOTO 10409 AAADE0=STATE GOTO 10412 10413 STATE=3 GOTO 10414 10412 IF(AAADE0.EQ.1)GOTO 10413 10414 IF((STATE.EQ.3))GOTO 10415 GPST=2 RETURN 10415 CONTINUE 10408 CONTINUE 10405 GPST=STATE RETURN END SUBROUTINE DESTJ0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAADF0 INTEGER AAADG0 INTEGER AAADH0 INTEGER AAADI0 INTEGER AAADJ0 INTEGER AAADK0 STATE=1 IF((SYMBO0.NE.0))GOTO 10416 STATE=3 CALL SETF(34,1,NANOM0(1,NANOL0+1),1) CALL GETSYM 10416 IF((STATE.NE.1))GOTO 10417 IF((SYMBO0.NE.1))GOTO 10418 STATE=3 CALL SETF(35,1,NANOM0(1,NANOL0+1),1) CALL GETSYM 10418 IF((STATE.NE.1))GOTO 10419 IF((SYMBO0.NE.2))GOTO 10420 STATE=3 CALL SETF(36,1,NANOM0(1,NANOL0+1),1) CALL GETSYM 10420 IF((STATE.NE.1))GOTO 10421 IF((SYMBO0.NE.46))GOTO 10422 STATE=3 CALL SETF(41,1,NANOM0(1,NANOL0+1),1) CALL GETSYM 10422 IF((STATE.NE.1))GOTO 10423 IF((SYMBO0.NE.15))GOTO 10424 STATE=3 IF((.NOT.MARUS0))GOTO 10425 CALL ERRMSG('BR may not be used with MAR.') 10425 CALL SETF(43,1,NANOM0(1,NANOL0+1),1) CALL SETF(45,1,NANOM0(1,NANOL0+1),0) BRUSE0=.TRUE. CALL GETSYM 10424 IF((STATE.NE.1))GOTO 10426 IF((SYMBO0.NE.16))GOTO 10427 STATE=3 IF((.NOT.MARUS0))GOTO 10428 CALL ERRMSG('BR may not be used with MAR.') 10428 CALL SETF(44,1,NANOM0(1,NANOL0+1),1) CALL SETF(45,1,NANOM0(1,NANOL0+1),0) BRUSE0=.TRUE. CALL GETSYM 10427 IF((STATE.NE.1))GOTO 10429 IF((SYMBO0.NE.5))GOTO 10430 STATE=3 CALL SETF(42,1,NANOM0(1,NANOL0+1),1) CALL GETSYM 10430 IF((STATE.NE.1))GOTO 10431 CALL INPUTB(STATE) AAADF0=STATE GOTO 10432 10433 GPST=2 RETURN 10434 CALL SETF(37,4,NANOM0(1,NANOL0+1),LITVA0) GOTO 10435 10432 AAADG0=AAADF0-1 GOTO(10433,10434),AAADG0 10435 IF((STATE.NE.1))GOTO 10436 CALL INPUT0(STATE) AAADH0=STATE GOTO 10437 10438 GPST=2 RETURN 10437 IF(AAADH0.EQ.2)GOTO 10438 IF((STATE.NE.1))GOTO 10439 CALL INPUU0(STATE) AAADI0=STATE GOTO 10440 10441 GPST=2 RETURN 10440 IF(AAADI0.EQ.2)GOTO 10441 IF((STATE.NE.1))GOTO 10442 CALL INPUV0(STATE) AAADJ0=STATE GOTO 10443 10444 GPST=2 RETURN 10445 CALL SETF(49,2,NANOM0(1,NANOL0+1),LITVA0) GOTO 10446 10443 AAADK0=AAADJ0-1 GOTO(10444,10445),AAADK0 10446 CONTINUE 10442 CONTINUE 10439 CONTINUE 10436 CONTINUE 10431 CONTINUE 10429 CONTINUE 10426 CONTINUE 10423 CONTINUE 10421 CONTINUE 10419 CONTINUE 10417 GPST=STATE RETURN END SUBROUTINE INPUTB(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE STATE=1 IF((SYMBO0.NE.17))GOTO 10447 STATE=3 LITVA0=11 CALL GETSYM 10447 IF((STATE.NE.1))GOTO 10448 IF((SYMBO0.NE.13))GOTO 10449 STATE=3 LITVA0=12 CALL GETSYM 10449 IF((STATE.NE.1))GOTO 10450 IF((SYMBO0.NE.9))GOTO 10451 STATE=3 LITVA0=8 CALL GETSYM 10451 IF((STATE.NE.1))GOTO 10452 IF((SYMBO0.NE.14))GOTO 10453 STATE=3 LITVA0=13 CALL GETSYM 10453 IF((STATE.NE.1))GOTO 10454 IF((SYMBO0.NE.11))GOTO 10455 STATE=3 LITVA0=14 CALL GETSYM 10455 IF((STATE.NE.1))GOTO 10456 IF((SYMBO0.NE.10))GOTO 10457 STATE=3 LITVA0=10 CALL GETSYM 10457 IF((STATE.NE.1))GOTO 10458 IF((SYMBO0.NE.12))GOTO 10459 STATE=3 LITVA0=15 CALL GETSYM 10459 CONTINUE 10458 CONTINUE 10456 CONTINUE 10454 CONTINUE 10452 CONTINUE 10450 CONTINUE 10448 GPST=STATE RETURN END SUBROUTINE INPUT0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE STATE=1 IF((SYMBO0.NE.22))GOTO 10460 STATE=3 IF((.NOT.MARUS0))GOTO 10461 CALL ERRMSG('CTR may not be used with a MAR.') 10461 CALL SETF(46,3,NANOM0(1,NANOL0+1),5) CTRUS0=.TRUE. CALL GETSYM 10460 IF((STATE.NE.1))GOTO 10462 IF((SYMBO0.NE.37))GOTO 10463 STATE=3 IF((.NOT.MARUS0))GOTO 10464 CALL ERRMSG('LCTR may not be used with a MAR.') 10464 CALL SETF(46,3,NANOM0(1,NANOL0+1),1) CTRUS0=.TRUE. CALL GETSYM 10463 IF((STATE.NE.1))GOTO 10465 IF((SYMBO0.NE.29))GOTO 10466 STATE=3 IF((.NOT.CTRUS0))GOTO 10467 CALL ERRMSG('INC may not be used with CTR or LCTR.') 10467 CALL SETF(47,2,NANOM0(1,NANOL0+1),2) CALL GETSYM 10466 CONTINUE 10465 CONTINUE 10462 GPST=STATE RETURN END SUBROUTINE INPUU0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE STATE=1 IF((SYMBO0.NE.44))GOTO 10468 STATE=3 IF((.NOT.CTRUS0))GOTO 10469 CALL ERRMSG('MAR may not be used with CTR.') 10469 IF((.NOT.BRUSE0))GOTO 10470 CALL ERRMSG('MAR may not be used with BR.') 10470 MARUS0=.TRUE. CALL SETF(45,2,NANOM0(1,NANOL0+1),3) CALL GETSYM 10468 IF((STATE.NE.1))GOTO 10471 IF((SYMBO0.NE.42))GOTO 10472 STATE=3 IF((.NOT.CTRUS0))GOTO 10473 CALL ERRMSG('MAR may not be used with CTR.') 10473 IF((.NOT.BRUSE0))GOTO 10474 CALL ERRMSG('MAR may not be used with BR.') 10474 MARUS0=.TRUE. CALL SETF(43,1,NANOM0(1,NANOL0+1),1) CALL SETF(45,2,NANOM0(1,NANOL0+1),3) CALL GETSYM 10472 IF((STATE.NE.1))GOTO 10475 IF((SYMBO0.NE.43))GOTO 10476 STATE=3 IF((.NOT.CTRUS0))GOTO 10477 CALL ERRMSG('MAR may not be used with CTR.') 10477 IF((.NOT.BRUSE0))GOTO 10478 CALL ERRMSG('MAR may not be used with BR.') 10478 MARUS0=.TRUE. CALL SETF(44,3,NANOM0(1,NANOL0+1),7) CALL GETSYM 10476 IF((STATE.NE.1))GOTO 10479 IF((SYMBO0.NE.39))GOTO 10480 STATE=3 IF((.NOT.CTRUS0))GOTO 10481 CALL ERRMSG('MAR may not be used with CTR.') 10481 IF((.NOT.BRUSE0))GOTO 10482 CALL ERRMSG('MAR may not be used with BR.') 10482 MARUS0=.TRUE. CALL SETF(45,2,NANOM0(1,NANOL0+1),2) CALL GETSYM 10480 CONTINUE 10479 CONTINUE 10475 CONTINUE 10471 GPST=STATE RETURN END SUBROUTINE INPUV0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE STATE=1 IF((SYMBO0.NE.65))GOTO 10483 STATE=3 LITVA0=2 CALL GETSYM 10483 IF((STATE.NE.1))GOTO 10484 IF((SYMBO0.NE.21))GOTO 10485 STATE=3 LITVA0=1 CALL GETSYM 10485 CONTINUE 10484 GPST=STATE RETURN END SUBROUTINE SUCCF0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE LITVA0=1 STATE=1 IF((SYMBO0.NE.73))GOTO 10486 STATE=3 LITVA0=0 CALL GETSYM 10486 IF((STATE.NE.1))GOTO 10487 IF((SYMBO0.NE.70))GOTO 10488 STATE=3 LITVA0=1 CALL GETSYM 10488 IF((STATE.NE.1))GOTO 10489 IF((SYMBO0.NE.66))GOTO 10490 STATE=3 LITVA0=2 CALL GETSYM 10490 IF((STATE.NE.1))GOTO 10491 IF((SYMBO0.NE.68))GOTO 10492 STATE=3 LITVA0=3 CALL GETSYM 10492 IF((STATE.NE.1))GOTO 10493 IF((SYMBO0.NE.31))GOTO 10494 STATE=3 LITVA0=4 CALL GETSYM 10494 IF((STATE.NE.1))GOTO 10495 IF((SYMBO0.NE.26))GOTO 10496 STATE=3 LITVA0=5 CALL GETSYM 10496 IF((STATE.NE.1))GOTO 10497 IF((SYMBO0.NE.18))GOTO 10498 STATE=3 LITVA0=6 CALL GETSYM 10498 IF((STATE.NE.1))GOTO 10499 IF((SYMBO0.NE.61))GOTO 10500 STATE=3 LITVA0=7 CALL GETSYM 10500 CONTINUE 10499 CONTINUE 10497 CONTINUE 10495 CONTINUE 10493 CONTINUE 10491 CONTINUE 10489 CONTINUE 10487 GPST=STATE RETURN END SUBROUTINE CONDI0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAADL0 INTEGER AAADM0 INTEGER AAADN0 INTEGER AAADO0 INTEGER AAADP0 INTEGER AAADQ0 INTEGER AAADR0 CALL IFCLA0(STATE) AAADL0=STATE GOTO 10501 10502 GPST=2 RETURN 10501 IF(AAADL0.EQ.2)GOTO 10502 IF((STATE.NE.3))GOTO 10503 CALL THENC0(STATE) AAADM0=STATE GOTO 10504 10505 GPST=2 RETURN 10504 IF(AAADM0.EQ.2)GOTO 10505 AAADN0=STATE GOTO 10506 10507 STATE=3 GOTO 10508 10506 IF(AAADN0.EQ.1)GOTO 10507 10508 IF((STATE.EQ.3))GOTO 10509 GPST=2 RETURN 10509 CALL ELSEC0(STATE) AAADO0=STATE GOTO 10510 10511 GPST=2 RETURN 10510 IF(AAADO0.EQ.2)GOTO 10511 AAADP0=STATE GOTO 10512 10513 STATE=3 GOTO 10514 10512 IF(AAADP0.EQ.1)GOTO 10513 10514 IF((STATE.EQ.3))GOTO 10515 GPST=2 RETURN 10515 CONTINUE 10503 IF((STATE.NE.1))GOTO 10516 CALL WHENC0(STATE) AAADQ0=STATE GOTO 10517 10518 GPST=2 RETURN 10517 IF(AAADQ0.EQ.2)GOTO 10518 IF((STATE.NE.3))GOTO 10519 CALL THENC0(STATE) AAADR0=STATE GOTO 10520 10521 GPST=2 RETURN 10520 IF(AAADR0.EQ.2)GOTO 10521 IF((STATE.EQ.3))GOTO 10522 GPST=2 RETURN 10522 CONTINUE 10519 CONTINUE 10516 GPST=STATE RETURN END SUBROUTINE IFCLA0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAADS0 STATE=1 IF((SYMBO0.NE.27))GOTO 10523 STATE=3 CALL GETSYM 10523 IF((STATE.NE.3))GOTO 10524 CALL CONDK0(STATE) AAADS0=STATE GOTO 10525 10526 GPST=2 RETURN 10525 IF(AAADS0.EQ.2)GOTO 10526 IF((STATE.EQ.3))GOTO 10527 GPST=2 RETURN 10527 CONTINUE 10524 GPST=STATE RETURN END SUBROUTINE CONDK0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAADT0 INTEGER AAADU0 STATE=1 IF((SYMBO0.NE.55))GOTO 10528 STATE=3 CALL SETF(5,1,NANOM0(1,NANOL0+1),0) CALL GETSYM GOTO 10529 10528 CALL SETF(5,1,NANOM0(1,NANOL0+1),1) 10529 AAADT0=STATE GOTO 10530 10531 STATE=3 GOTO 10532 10530 IF(AAADT0.EQ.1)GOTO 10531 10532 IF((STATE.NE.3))GOTO 10533 CALL BASIC0(STATE) AAADU0=STATE GOTO 10534 10535 GPST=2 RETURN 10536 CALL ERRMSG('missing condition.') GOTO 10537 10538 CALL SETF(1,4,NANOM0(1,NANOL0+1),LITVA0) GOTO 10537 10534 GOTO(10536,10535,10538),AAADU0 10537 IF((STATE.EQ.3))GOTO 10539 GPST=2 RETURN 10539 CONTINUE 10533 GPST=STATE RETURN END SUBROUTINE BASIC0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER CAJRE0(3) INTEGER AAADV0 INTEGER AAADW0 DATA CAJRE0/2,3,11/ STATE=1 IF((SYMBO0.NE.40))GOTO 10540 STATE=3 LITVA0=5 CALL GETSYM 10540 IF((STATE.NE.1))GOTO 10541 IF((SYMBO0.NE.49))GOTO 10542 STATE=3 LITVA0=4 CALL GETSYM 10542 IF((STATE.NE.1))GOTO 10543 IF((SYMBO0.NE.7))GOTO 10544 STATE=3 LITVA0=7 CALL GETSYM 10544 IF((STATE.NE.1))GOTO 10545 IF((SYMBO0.NE.4))GOTO 10546 STATE=3 LITVA0=6 CALL GETSYM 10546 IF((STATE.NE.1))GOTO 10547 IF((SYMBO0.NE.20))GOTO 10548 STATE=3 LITVA0=8 CALL GETSYM 10548 IF((STATE.NE.1))GOTO 10549 IF((SYMBO0.NE.64))GOTO 10550 STATE=3 LITVA0=9 CALL GETSYM 10550 IF((STATE.NE.1))GOTO 10551 IF((SYMBO0.NE.60))GOTO 10552 STATE=3 LITVA0=10 CALL GETSYM 10552 IF((STATE.NE.1))GOTO 10553 CALL CONDJ0(STATE) AAADV0=STATE GOTO 10554 10555 GPST=2 RETURN 10556 LITVA0=CAJRE0(LITVA0) GOTO 10557 10554 AAADW0=AAADV0-1 GOTO(10555,10556),AAADW0 10557 CONTINUE 10553 CONTINUE 10551 CONTINUE 10549 CONTINUE 10547 CONTINUE 10545 CONTINUE 10543 CONTINUE 10541 GPST=STATE RETURN END SUBROUTINE THENC0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAADX0 INTEGER AAADY0 SUCCE0=2 STATE=1 IF((SYMBO0.NE.72))GOTO 10558 STATE=3 CALL GETSYM 10558 IF((STATE.NE.3))GOTO 10559 10560 CALL COMPO0(STATE) AAADX0=STATE GOTO 10561 10562 GPST=2 RETURN 10561 IF(AAADX0.EQ.2)GOTO 10562 IF((STATE.EQ.3))GOTO 10560 AAADY0=STATE GOTO 10563 10564 STATE=3 GOTO 10565 10563 IF(AAADY0.EQ.1)GOTO 10564 10565 IF((STATE.EQ.3))GOTO 10566 GPST=2 RETURN 10566 CONTINUE 10559 GPST=STATE RETURN END SUBROUTINE ELSEC0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAADZ0 INTEGER AAAEA0 STATE=1 IF((SYMBO0.NE.24))GOTO 10567 STATE=3 CALL GETSYM 10567 IF((STATE.NE.3))GOTO 10568 CALL SUCCF0(STATE) AAADZ0=STATE GOTO 10569 10570 GPST=2 RETURN 10571 CALL SETF(14,3,NANOM0(1,NANOL0+1),LITVA0) GOTO 10572 10569 AAAEA0=AAADZ0-1 GOTO(10570,10571),AAAEA0 10572 IF((STATE.EQ.3))GOTO 10573 GPST=2 RETURN 10573 CONTINUE 10568 GPST=STATE RETURN END SUBROUTINE WHENC0(GPST) INTEGER GPST INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER AAAEB0 STATE=1 IF((SYMBO0.NE.74))GOTO 10574 STATE=3 CALL SETF(14,3,NANOM0(1,NANOL0+1),0) CALL GETSYM 10574 IF((STATE.NE.3))GOTO 10575 CALL CONDK0(STATE) AAAEB0=STATE GOTO 10576 10577 GPST=2 RETURN 10576 IF(AAAEB0.EQ.2)GOTO 10577 IF((STATE.EQ.3))GOTO 10578 GPST=2 RETURN 10578 CONTINUE 10575 GPST=STATE RETURN END SUBROUTINE BINAS0(STATE) INTEGER STATE INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER SVSYM0,SVSYN0,SVIBP INTEGER SVSYO0(102) STATE=1 IF((SYMBO0.NE.30))GOTO 10579 IF((SYMVA0.EQ.0))GOTO 10579 RETURN 10579 IF((SYMBO0.EQ.30))GOTO 10580 IF((SYMBO0.EQ.0))GOTO 10580 IF((SYMBO0.EQ.1))GOTO 10580 IF((SYMBO0.EQ.2))GOTO 10580 IF((SYMBO0.EQ.22))GOTO 10580 IF((SYMBO0.EQ.38))GOTO 10580 RETURN 10580 CALL SCOPY(SYMTE0,1,SVSYO0,1) SVSYM0=SYMBO0 SVSYN0=SYMVA0 SVIBP=IBPAA0 CALL GETSYM CALL OPERA0(STATE) IF((STATE.NE.1))GOTO 10581 IF((SYMBO0.EQ.59))GOTO 10583 IF((SYMBO0.EQ.45))GOTO 10583 GOTO 10582 10583 STATE=3 10582 CONTINUE 10581 CALL SCOPY(SVSYO0,1,SYMTE0,1) SYMBO0=SVSYM0 SYMVA0=SVSYN0 IBPAA0=SVIBP RETURN END INTEGER FUNCTION BITFI0(START,LEN,STRUCT) INTEGER START,LEN,STRUCT(1) INTEGER W1,W2,BLEFT,RES W1=(START-1)/16+1 W2=STRUCT(W1+1) W1=STRUCT(W1) BLEFT=16-MOD(START-1,16) RES=RT(W1,BLEFT) IF((BLEFT.LT.LEN))GOTO 10584 BITFI0=RS(RES,BLEFT-LEN) RETURN 10584 RES=LS(RES,LEN-BLEFT) W2=RS(W2,16-(LEN-BLEFT)) BITFI0=OR(RES,W2) RETURN END SUBROUTINE BMCL(STATE) INTEGER STATE INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER GATE(5) INTEGER MST,MID,LST INTEGER INDEX DATA GATE/176,244,230,177,0/ STATE=1 IF((SYMBO0.NE.32))GOTO 10586 IF((SYMTE0(1).NE.226))GOTO 10586 GOTO 10585 10586 RETURN 10585 MST=INDEX(GATE,SYMTE0(2)) MID=INDEX(GATE,SYMTE0(3)) LST=INDEX(GATE,SYMTE0(4)) IF((MST.EQ.0))GOTO 10588 IF((MID.EQ.0))GOTO 10588 IF((LST.EQ.0))GOTO 10588 IF((SYMTE0(5).NE.0))GOTO 10588 GOTO 10587 10588 RETURN 10587 MST=MST-(1) MID=MID-(1) LST=LST-(1) STATE=3 LITVA0=OR(LS(MST,5),LST) IF((SYMTE0(3).NE.244))GOTO 10589 LITVA0=OR(LITVA0,16) GOTO 10590 10589 IF((SYMTE0(3).NE.177))GOTO 10591 LITVA0=AND(NOT(LITVA0),99) COMPY0=.TRUE. GOTO 10592 10591 IF((SYMTE0(3).NE.230))GOTO 10593 LITVA0=OR(AND(NOT(LITVA0),99),16) COMPY0=.TRUE. 10593 CONTINUE 10592 CONTINUE 10590 CALL GETSYM RETURN END SUBROUTINE ERRMSG(MESSA0) INTEGER MESSA0(1) INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER I INTEGER AAAEC0(9) INTEGER AAAED0(6) INTEGER AAAEE0(2) INTEGER AAAEF0(8) DATA AAAEC0/170,170,170,170,170,170,160,160,0/ DATA AAAED0/170,233,186,160,160,0/ DATA AAAEE0/162,0/ DATA AAAEF0/162,160,160,170,240,170,238,0/ IF(LISTI0)GOTO 10595 IF(BINAR0)GOTO 10595 GOTO 10594 10595 CALL PUTLIN(AAAEC0,-11) GOTO 10596 10594 CALL PRINT(-11,AAAED0,LINEN0) 10596 CALL PRINT(-11,AAAEE0) I=MAX0(1,IBPAA0-5) GOTO 10599 10597 I=I+(1) 10599 IF((INBUF0(I).EQ.138))GOTO 10598 IF((I.GT.IBPAA0+5))GOTO 10598 CALL PUTCH(INBUF0(IBPAA0),-11) GOTO 10597 10598 CALL PRINT(-11,AAAEF0,MESSA0) RETURN END SUBROUTINE FINDL0 INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE INTEGER GETLIN MICRO0=0 10600 IF((GETLIN(INBUF0,INFIL0).EQ.-1))GOTO 10601 CALL MAPSTR(INBUF0,1) IBPAA0=1 CALL GETSYM CALL LABEM0(STATE) IF((STATE.NE.3))GOTO 10602 CALL ENTER(SYMTE0,MICRO0,LTABA0) CALL GETSYM CALL GETSYM 10602 IF((SYMBO0.EQ.71))GOTO 10603 MICRO0=MICRO0+(1) 10603 GOTO 10600 10601 RETURN END SUBROUTINE GETOP0 INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER A$BUF(200) INTEGER FILE(180) INTEGER OPEN,CREATE INTEGER I INTEGER GETARG,LENGTH INTEGER UMESG(55) INTEGER PARSCL INTEGER AAAEG0(27) INTEGER AAAEH0(3) INTEGER AAAEI0(3) DATA UMESG/213,243,225,231,229,186,160,244,242,225,238,243,236,225 *,238,231,160,219,173,251,236,252,226,253,221,160,188,233,238,240,2 *45,244,223,230,233,236,229,190,160,219,173,232,160,188,232,229,248 *,223,230,233,236,229,190,221,0/ DATA AAAEG0/236,188,230,236,225,231,190,160,226,188,230,236,225,23 *1,190,160,232,188,242,229,241,160,243,244,242,190,0/ DATA AAAEH0/174,232,0/ DATA AAAEI0/174,232,0/ IF((PARSCL(AAAEG0,A$BUF).NE.-3))GOTO 10604 CALL ERROR(UMESG) 10604 IF((GETARG(1,FILE,180).NE.-1))GOTO 10605 CALL ERROR(UMESG) 10605 INFIL0=OPEN(FILE,1) IF((INFIL0.NE.-3))GOTO 10606 CALL CANT(FILE) 10606 IF((GETARG(2,I,1).EQ.-1))GOTO 10607 CALL ERROR(UMESG) 10607 IF((A$BUF(232-225+1).EQ.0))GOTO 10608 CALL SCOPY(A$BUF(A$BUF(232-225+27)),1,FILE,1) GOTO 10609 10608 I=LENGTH(FILE) GOTO 10612 10610 I=I-(1) 10612 IF((I.LT.1))GOTO 10611 IF((FILE(I).EQ.174))GOTO 10611 GOTO 10610 10611 IF((I.GE.1))GOTO 10613 CALL SCOPY(AAAEH0,1,FILE,LENGTH(FILE)+1) GOTO 10614 10613 CALL SCOPY(AAAEI0,1,FILE,I) 10614 CONTINUE 10609 OUTFI0=CREATE(FILE,2) IF((OUTFI0.NE.-3))GOTO 10615 CALL CANT(FILE) 10615 IF((A$BUF(236-225+1).EQ.0))GOTO 10616 LISTI0=.TRUE. GOTO 10617 10616 LISTI0=.FALSE. 10617 IF((A$BUF(226-225+1).EQ.0))GOTO 10618 BINAR0=.TRUE. GOTO 10619 10618 BINAR0=.FALSE. 10619 RETURN END SUBROUTINE GETSYM INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER RWPOS(73) INTEGER RWTEXT(374) INTEGER I INTEGER CTOI,STRBSR INTEGER AAAEJ0 INTEGER AAAEK0 DATA RWTEXT/0,225,177,0,1,225,178,0,2,225,179,0,3,225,225,228,0,4, *225,226,244,0,5,225,237,240,227,242,0,6,225,238,228,0,7,225,239,24 *6,0,17,226,0,9,226,225,228,0,10,226,226,225,0,11,226,226,229,0,12, *226,226,233,0,13,226,229,248,0,14,226,237,233,0,15,226,242,177,0,1 *6,226,242,178,0,23,227,0,18,227,225,236,236,0,71,227,239,237,237,2 *29,238,244,0,71,227,239,237,237,238,244,0,19,227,239,237,240,0,20, *227,239,246,0,21,227,243,225,242,0,22,227,244,242,0,24,229,236,243 *,229,0,71,229,238,228,0,25,229,241,246,0,26,229,248,229,227,0,27,2 *33,230,0,28,233,237,240,0,29,233,238,227,0,31,234,245,237,240,0,41 *,236,0,34,236,227,177,0,35,236,227,178,0,36,236,227,179,0,37,236,2 *27,244,242,0,38,236,233,244,0,39,236,237,225,242,0,40,236,243,244, *0,44,237,225,242,0,42,237,225,242,177,0,43,237,225,242,178,0,46,23 *7,233,242,0,47,237,242,177,0,48,237,242,178,0,49,237,243,244,0,50, *237,247,177,0,51,237,247,178,0,52,238,225,238,0,53,238,233,237,0,5 *4,238,239,242,0,55,238,239,244,0,56,238,242,233,0,57,239,225,228,0 *,58,239,242,0,63,242,0,60,242,228,227,0,61,242,229,244,238,0,62,24 *2,233,237,0,64,243,225,233,0,65,243,225,242,0,66,243,225,246,229,0 *,67,243,229,244,0,68,243,235,233,240,0,69,243,236,233,244,0,70,243 *,244,229,240,0,72,244,232,229,238,0,73,247,225,233,244,0,74,247,23 *2,229,238,0,75,248,239,242,0/ DATA RWPOS/72,1,5,9,13,18,23,30,35,40,43,48,53,58,63,68,73,78,83,8 *6,92,101,109,115,120,126,131,137,142,147,153,157,162,167,173,176,1 *81,186,191,197,202,208,213,218,224,230,235,240,245,250,255,260,265 *,270,275,280,285,290,294,297,302,308,313,318,323,329,334,340,346,3 *52,358,364,370/ 10620 CONTINUE 10621 IF((INBUF0(IBPAA0).NE.160))GOTO 10622 IBPAA0=IBPAA0+(1) GOTO 10621 10622 AAAEJ0=INBUF0(IBPAA0) GOTO 10623 10624 I=1 10625 IF((225.GT.INBUF0(IBPAA0)))GOTO 10628 IF((INBUF0(IBPAA0).GT.250))GOTO 10628 GOTO 10627 10628 IF((176.GT.INBUF0(IBPAA0)))GOTO 10629 IF((INBUF0(IBPAA0).GT.185))GOTO 10629 GOTO 10627 10629 GOTO 10626 10627 SYMTE0(I)=INBUF0(IBPAA0) I=I+(1) IBPAA0=IBPAA0+(1) GOTO 10625 10626 SYMTE0(I)=0 I=STRBSR(RWPOS,RWTEXT,1,SYMTE0) IF((I.NE.-1))GOTO 10630 SYMBO0=32 GOTO 10631 10630 SYMBO0=RWTEXT(RWPOS(I)) 10631 GOTO 10632 10633 SYMBO0=30 SYMVA0=CTOI(INBUF0,IBPAA0) GOTO 10632 10634 SYMBO0=71 GOTO 10632 10635 SYMBO0=59 IBPAA0=IBPAA0+(1) GOTO 10632 10636 SYMBO0=45 IBPAA0=IBPAA0+(1) IF((INBUF0(IBPAA0).NE.190))GOTO 10637 SYMBO0=8 IBPAA0=IBPAA0+(1) 10637 GOTO 10632 10638 SYMBO0=33 IBPAA0=IBPAA0+(1) GOTO 10632 10639 SYMBO0=8 IBPAA0=IBPAA0+(1) GOTO 10632 10640 IBPAA0=IBPAA0+(1) GOTO 10641 10632 GOTO 10642 10623 IF(AAAEJ0.EQ.138)GOTO 10634 AAAEK0=AAAEJ0-163 GOTO(10634,10634,10643,10643,10643,10643,10643,10635,10640,10636 *,10638,10643,10633,10633,10633,10633,10633,10633,10633,10633,10633 *,10633,10638,10643,10643,10639,10643,10643,10643,10643,10643,10643 *,10643,10643,10643,10643,10643,10643,10643,10643,10643,10643,10643 *,10643,10643,10643,10643,10643,10643,10643,10643,10643,10643,10643 *,10643,10643,10643,10643,10643,10643,10643,10624,10624,10624,10624 *,10624,10624,10624,10624,10624,10624,10624,10624,10624,10624,10624 *,10624,10624,10624,10624,10624,10624,10624,10624,10624,10624,10624 *),AAAEK0 10643 CALL ERRMSG('illegal character encountered.') GOTO 10641 10641 GOTO 10620 10642 RETURN END SUBROUTINE INITI0 INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER MKTABL CALL DSINIT(8192) LTABA0=MKTABL(1) RETURN END INTEGER FUNCTION INSER0(DAT) INTEGER DAT INSER0=OR(LS(LT(DAT,14),1),RT(DAT,2)) RETURN END SUBROUTINE LABEM0(STATE) INTEGER STATE INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER SVSYM0,SVSYN0,SVIBP INTEGER SVSYO0(102) IF((SYMBO0.EQ.32))GOTO 10644 STATE=1 RETURN 10644 CALL SCOPY(SYMTE0,1,SVSYO0,1) SVSYM0=SYMBO0 SVSYN0=SYMVA0 SVIBP=IBPAA0 CALL GETSYM IF((SYMBO0.NE.33))GOTO 10645 STATE=3 GOTO 10646 10645 STATE=1 10646 CALL SCOPY(SVSYO0,1,SYMTE0,1) SYMBO0=SVSYM0 SYMVA0=SVSYN0 IBPAA0=SVIBP RETURN END SUBROUTINE LITET0(STATE) INTEGER STATE INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER SVSYM0,SVSYN0,SVIBP,ST INTEGER SVSYO0(102) CALL SCOPY(SYMTE0,1,SVSYO0,1) SVSYM0=SYMBO0 SVSYN0=SYMVA0 SVIBP=IBPAA0 CALL LITEU0(ST) IF((ST.NE.3))GOTO 10647 IF((SYMBO0.EQ.8))GOTO 10648 STATE=1 GOTO 10649 10648 CALL GETSYM IF((SYMBO0.EQ.5))GOTO 10651 IF((SYMBO0.EQ.65))GOTO 10651 IF((SYMBO0.EQ.38))GOTO 10651 IF((SYMBO0.EQ.69))GOTO 10651 GOTO 10650 10651 STATE=3 GOTO 10652 10650 STATE=1 10652 CONTINUE 10649 GOTO 10653 10647 STATE=1 10653 CALL SCOPY(SVSYO0,1,SYMTE0,1) SYMBO0=SVSYM0 SYMVA0=SVSYN0 IBPAA0=SVIBP RETURN END SUBROUTINE MICRQ0 INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 INTEGER STATE,MLC,NLC INTEGER GETLIN,BITFI0 INTEGER AAAEM0 INTEGER AAAEN0(22) INTEGER AAAEO0(16) INTEGER AAAEP0(34) INTEGER AAAEQ0(39) INTEGER AAAER0(3) INTEGER AAAES0(25) INTEGER AAAET0,AAAEU0,AAAEL0 INTEGER AAAEV0(17) INTEGER AAAEW0(24) INTEGER AAAEX0(3) DATA AAAEN0/170,180,233,252,160,160,170,180,172,173,177,182,172,17 *6,233,160,160,170,243,170,238,0/ DATA AAAEO0/170,177,179,248,170,177,182,172,173,178,172,176,233,17 *0,238,0/ DATA AAAEP0/170,177,179,248,170,179,172,178,172,176,245,170,180,23 *3,160,170,233,160,170,233,160,170,233,160,170,233,160,170,233,160, *170,184,233,0/ DATA AAAEQ0/170,248,170,180,172,178,172,176,245,170,233,160,170,17 *8,233,160,170,179,233,160,170,233,160,170,178,233,160,170,233,160, *170,233,160,170,233,170,177,238,0/ DATA AAAER0/170,238,0/ DATA AAAES0/170,238,170,238,200,229,248,160,212,242,225,238,243,23 *6,225,244,233,239,238,186,170,238,170,238,0/ DATA AAAEV0/170,180,172,173,177,182,172,176,245,170,233,160,160,16 *0,170,233,0/ DATA AAAEW0/170,180,172,173,177,182,172,176,245,160,160,160,170,23 *3,160,170,233,160,170,233,160,170,233,0/ DATA AAAEX0/170,238,0/ LINEN0=0 MICRO0=0 NANOL0=0 10655 IF((GETLIN(INBUF0,INFIL0).EQ.-1))GOTO 10656 CALL MAPSTR(INBUF0,1) LINEN0=LINEN0+(1) IF(LISTI0)GOTO 10658 IF(BINAR0)GOTO 10658 GOTO 10657 10658 CALL PRINT(-11,AAAEN0,LINEN0,MICRO0,INBUF0) 10657 MLC=MICRO0 NLC=NANOL0 IBPAA0=1 CALL GETSYM CALL INSTR0(STATE) IF((SYMBO0.EQ.71))GOTO 10659 CALL ERRMSG('unrecognizable or incomplete statement.') 10659 IF((.NOT.BINAR0))GOTO 10660 IF((MLC.EQ.MICRO0))GOTO 10660 CALL PRINT(-11,AAAEO0,MICRP0(MLC+1)) 10660 IF((.NOT.BINAR0))GOTO 10661 IF((NLC.EQ.NANOL0))GOTO 10661 CALL PRINT(-11,AAAEP0,BITFI0(1,4,NANOM0(1,NLC+1)),BITFI0(5,3,N *ANOM0(1,NLC+1)),BITFI0(8,3,NANOM0(1,NLC+1)),BITFI0(11,3,NANOM0(1,N *LC+1)),BITFI0(14,3,NANOM0(1,NLC+1)),BITFI0(17,3,NANOM0(1,NLC+1)),B *ITFI0(20,8,NANOM0(1,NLC+1))) CALL PRINT(-11,AAAEQ0,BITFI0(28,4,NANOM0(1,NLC+1)),BITFI0(32,2 *,NANOM0(1,NLC+1)),BITFI0(34,3,NANOM0(1,NLC+1)),BITFI0(37,4,NANOM0( *1,NLC+1)),BITFI0(41,2,NANOM0(1,NLC+1)),BITFI0(43,4,NANOM0(1,NLC+1) *),BITFI0(47,4,NANOM0(1,NLC+1)),BITFI0(51,4,NANOM0(1,NLC+1))) 10661 IF((.NOT.BINAR0))GOTO 10662 IF((NLC.NE.NANOL0))GOTO 10663 IF((MLC.NE.MICRO0))GOTO 10663 GOTO 10662 10663 CALL PRINT(-11,AAAER0) 10662 GOTO 10655 10656 IF((.NOT.LISTI0))GOTO 10664 CALL PRINT(-11,AAAES0) AAAEL0=-11 AAAEM0=1 GOTO 10654 10665 CONTINUE 10664 AAAEL0=OUTFI0 AAAEM0=2 GOTO 10654 10666 RETURN 10654 AAAET0=0 GOTO 10669 10667 AAAET0=AAAET0+(1) 10669 IF((AAAET0.GE.MICRO0))GOTO 10668 CALL PRINT(AAAEL0,AAAEV0,AAAET0,MICRP0(AAAET0+1)) IF((BITFI0(1,4,MICRP0(AAAET0+1)).NE.15))GOTO 10670 AAAEU0=BITFI0(5,12,MICRP0(AAAET0+1)) CALL PRINT(AAAEL0,AAAEW0,BITFI0(1,16,NANOM0(1,AAAEU0+1)),BITFI *0(17,16,NANOM0(1,AAAEU0+1)),BITFI0(33,16,NANOM0(1,AAAEU0+1)),BITFI *0(49,16,NANOM0(1,AAAEU0+1))) 10670 CALL PRINT(AAAEL0,AAAEX0) GOTO 10667 10668 GOTO 10671 10671 GOTO(10665,10666),AAAEM0 GOTO 10671 END SUBROUTINE SETF(START,LEN,DST,VAL) INTEGER VAL,LEN,START,DST(1) INTEGER I,MASK,BLEFT,LVAL DATA MASK/:177777/ I=(START-1)/16+1 LVAL=RT(VAL,LEN) BLEFT=16-MOD(START-1,16) IF((BLEFT.LT.LEN))GOTO 10672 DST(I)=OR(AND(DST(I),NOT(LS(RT(MASK,LEN),BLEFT-LEN))),LS(LVAL,BL *EFT-LEN)) GOTO 10673 10672 DST(I)=OR(AND(DST(I),NOT(RT(MASK,BLEFT))),RS(LVAL,LEN-BLEFT)) DST(I+1)=OR(AND(DST(I+1),NOT(LT(MASK,LEN-BLEFT))),LS(LVAL,16-(LE *N-BLEFT))) 10673 RETURN END SUBROUTINE TRANS0 INTEGER INFIL0,OUTFI0 LOGICAL LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CTRUS0,MDOPU0,CAJUS0,LU *NIT0 INTEGER MICRO0,NANOL0,MICRP0(2048),NANOM0(4,2048),LITVA0,SHIFT0,SY *MBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0 INTEGER LTABA0 INTEGER SYMTE0(102),INBUF0(102) COMMON /TLANG0/INFIL0,OUTFI0,LISTI0,BINAR0,COMPY0,MARUS0,BRUSE0,CT *RUS0,MDOPU0,CAJUS0,LUNIT0,MICRO0,NANOL0,MICRP0,NANOM0,LITVA0,SHIFT *0,SYMBO0,SYMVA0,SUCCE0,LINEN0,IBPAA0,LTABA0,SYMTE0,INBUF0 INTEGER MEMAA0(8192) COMMON /DS$MEM/MEMAA0 CALL FINDL0 CALL REWIND(INFIL0) CALL MICRQ0 RETURN END C ---- Long Name Map ---- C Micromem micrp0 C insertx inser0 C binaryop binat0 C unaryop unary0 C Lunitused lunit0 C findlabels findl0 C instruction instr0 C message messa0 C Binary binar0 C Brused bruse0 C conditionalpart condi0 C externalop exter0 C basiccondition basic0 C literalassignment liter0 C Mdopused mdopu0 C Cajused cajus0 C Shiftval shift0 C operator opera0 C bitfield bitfi0 C literal liteu0 C logicop logic0 C Litval litva0 C inputmar inpuu0 C condition condk0 C writehex write0 C labeloracle labem0 C literallhsoracle litet0 C destination destj0 C getoptions getop0 C unconditionalpart uncon0 C Microlc micro0 C inputsar inpuv0 C translate trans0 C ifclause ifcla0 C Nanomem nanom0 C elseclause elsec0 C inputctr input0 C Symbol symbo0 C Ibp ibpaa0 C Inbuf inbuf0 C binaryoporacle binas0 C xselect xsele0 C yselect ysele0 C component compo0 C destinationlist desti0 C Marused marus0 C Mem memaa0 C thenclause thenc0 C conditionadjustbit condj0 C shiftop shifu0 C svsymbol svsym0 C Symval symva0 C Symtext symte0 C tlangcom tlang0 C whenclause whenc0 C successor succf0 C initialize initi0 C Outfile outfi0 C negated negat0 C svsymval svsyn0 C svsymtext svsyo0 C Infile infil0 C Successorcontext succe0 C literallhs lites0 C Listing listi0 C Ctrused ctrus0 C memorydeviceop memor0 C Nanolc nanol0 C Ltab ltaba0 C labelpart label0 C microprogram micrq0 C nanoinstruction nanoi0 C adderop adder0 C Compy compy0 C Linenumber linen0 C cajrepl cajre0