      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      CALL INITI0
      CLOCK0=1
      GOTO 10002
10000 CLOCK0=CLOCK0+(1)
10002 IF((CLOCK0.GT.MAXCL0))GOTO 10001
        CALL INITJ0
        CALL MICRQ0
        IF((MICRP0.NE.:40000))GOTO 10003
          GOTO 10001
10003   IF(MTYPE0)GOTO 10004
          CALL EXECU0
10004   CALL ADDES0
        CALL BARRE0
        IF((.NOT.MTYPE0))GOTO 10005
          CALL EXECV0
10005   CALL TERMI0
        CALL TRACH0
        CALL SELEC0
      GOTO 10000
10001 CALL TERMJ0
      CALL SWT
      END
      SUBROUTINE ADDES0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER * 4 X,Y
      INTEGER * 4 ADDWI0
      INTEGER OPTYPE(16)
      INTEGER AAAAA0
      INTEGER AAAAB0
      INTEGER AAAAC0(26)
      DATA OPTYPE/0,1,1,0,1,0,1,1,1,1,0,1,0,1,1,0/
      DATA AAAAC0/233,238,160,225,228,228,229,242,223,239,240,186,160,22
     *7,225,238,167,244,160,232,225,240,240,229,238,0/
      CALL XINPV0
      CALL YINPV0
      X=XINPU0
      Y=YINPU0
      AAAAA0=LUADD0
      GOTO 10006
10007   IF((.NOT.LUINH0))GOTO 10008
          ADDER0=ADDWI0(X,Y)
          GOTO 10009
10008     ADDER0=X+Y
10009 GOTO 10010
10011   ADDER0=NOT(OR(X,Y))
      GOTO 10010
10012   ADDER0=AND(NOT(X),Y)
      GOTO 10010
10013   Y=Y+(1)
        IF((.NOT.LUINH0))GOTO 10014
          ADDER0=ADDWI0(X,Y)
          GOTO 10015
10014     ADDER0=X+Y
10015 GOTO 10010
10016   ADDER0=NOT(AND(X,Y))
      GOTO 10010
10017   Y=OR(Y,X)
        IF((.NOT.LUINH0))GOTO 10018
          ADDER0=ADDWI0(X,Y)
          GOTO 10019
10018     ADDER0=X+Y
10019 GOTO 10010
10020   ADDER0=XOR(X,Y)
      GOTO 10010
10021   ADDER0=AND(X,NOT(Y))
      GOTO 10010
10022   ADDER0=OR(NOT(X),Y)
      GOTO 10010
10023   ADDER0=OR(AND(X,Y),NOT(OR(X,Y)))
      GOTO 10010
10024   Y=AND(Y,X)
        IF((.NOT.LUINH0))GOTO 10025
          ADDER0=ADDWI0(X,Y)
          GOTO 10026
10025     ADDER0=X+Y
10026 GOTO 10010
10027   ADDER0=AND(X,Y)
      GOTO 10010
10028   Y=-Y-1
        IF((.NOT.LUINH0))GOTO 10029
          ADDER0=ADDWI0(X,Y)
          GOTO 10030
10029     ADDER0=X+Y
10030 GOTO 10010
10031   ADDER0=OR(X,NOT(Y))
      GOTO 10010
10032   ADDER0=OR(X,Y)
      GOTO 10010
10033   Y=-Y
        IF((.NOT.LUINH0))GOTO 10034
          ADDER0=ADDWI0(X,Y)
          GOTO 10035
10034     ADDER0=X+Y
10035 GOTO 10010
10006 AAAAB0=AAAAA0+1
      GOTO(10007,10011,10012,10013,10016,10017,10020,10021,10022,10023,1
     *0024,10027,10028,10031,10032,10033),AAAAB0
        CALL ERROR(AAAAC0)
10010 IF((OPTYPE(LUADD0+1).NE.0))GOTO 10036
        CARRY0=XOR(X,Y,ADDER0)
        CARRZ0=OR(AND(X,Y),AND(Y,CARRY0),AND(X,CARRY0))
        GOTO 10037
10036   CARRY0=0
        CARRZ0=0
10037 MSTAA0=(ADDER0.LT.0)
      LSTAA0=(AND(ADDER0,1).NE.0)
      ABTAA0=(ADDER0.EQ.:37777777777)
      AOVAA0=(CARRZ0.LT.0)
      RETURN
      END
      INTEGER * 4 FUNCTION ADDWI0(X,Y)
      INTEGER * 4 X,Y
      INTEGER I,XX,YY
      ADDWI0=0
      XX=X
      YY=Y
      DO 10038 I=1,4
        ADDWI0=XOR(ADDWI0,LS(RT(XX+YY,8),I-1))
        XX=RS(XX,8)
        YY=RS(YY,8)
10038 CONTINUE
10039 RETURN
      END
      SUBROUTINE BARRE0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAAAD0
      INTEGER AAAAE0
      INTEGER AAAAF0(31)
      DATA AAAAF0/233,238,160,226,225,242,242,229,236,223,243,247,233,24
     *4,227,232,186,160,227,225,238,167,244,160,232,225,240,240,229,238,
     *0/
      AAAAD0=LUSHI0
      GOTO 10040
10041   BSWOU0=ADDER0
      GOTO 10042
10043   BSWOU0=RS(ADDER0,SARAA0)
      GOTO 10042
10044   BSWOU0=LS(ADDER0,32-SARAA0)
      GOTO 10042
10045   BSWOU0=XOR(LS(ADDER0,32-SARAA0),RS(ADDER0,SARAA0))
      GOTO 10042
10040 AAAAE0=AAAAD0+1
      GOTO(10041,10043,10044,10045),AAAAE0
        CALL ERROR(AAAAF0)
10042 RETURN
      END
      SUBROUTINE CONDJ0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER CAJ
      INTEGER AAAAG0
      INTEGER AAAAH0
      INTEGER AAAAI0(34)
      INTEGER BITFI0,WORD,START,END
      DATA AAAAI0/233,238,160,227,239,238,228,233,244,233,239,238,223,22
     *5,228,234,245,243,244,186,160,227,225,238,167,244,160,232,225,240,
     *240,229,238,0/
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      CAJ=BITFI0(NANOI0(1),8,10)
      AAAAG0=CAJ
      GOTO 10046
10047 GOTO 10048
10049   LC2AA0=.TRUE.
      GOTO 10048
10050   GC2AA0=.TRUE.
      GOTO 10048
10051   GC1AA0=.FALSE.
        GC2AA0=.FALSE.
      GOTO 10048
10052   INTAA0=.TRUE.
      GOTO 10048
10053   LC3AA0=.TRUE.
      GOTO 10048
10054   GC1AA0=.TRUE.
      GOTO 10048
10055   LC1AA0=.TRUE.
      GOTO 10048
10046 AAAAH0=AAAAG0+1
      GOTO(10047,10049,10050,10051,10052,10053,10054,10055),AAAAH0
        CALL ERROR(AAAAI0)
10048 RETURN
      END
      SUBROUTINE DUMPS0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER SADDR,EADDR,I,J
      INTEGER ISATTY
      LOGICAL STDIN0
      INTEGER AAAAJ0(44)
      INTEGER AAAAK0(30)
      INTEGER AAAAL0(30)
      INTEGER AAAAM0(28)
      INTEGER AAAAN0(28)
      INTEGER AAAAO0(16)
      INTEGER AAAAP0(9)
      INTEGER AAAAQ0(6)
      DATA AAAAJ0/170,238,211,173,237,229,237,239,242,249,160,228,245,23
     *7,240,160,173,173,160,197,238,244,229,242,160,188,242,229,244,245,
     *242,238,190,160,244,239,160,241,245,233,244,170,238,0/
      DATA AAAAK0/211,244,225,242,244,233,238,231,160,225,228,228,242,22
     *9,243,243,160,168,177,173,178,176,180,184,169,186,160,170,233,0/
      DATA AAAAL0/197,238,228,233,238,231,160,225,228,228,242,229,243,24
     *3,160,160,160,160,160,160,160,160,160,160,160,186,160,170,233,0/
      DATA AAAAM0/197,238,228,233,238,231,160,225,228,228,242,229,243,24
     *3,160,239,245,244,160,239,230,160,242,225,238,231,229,0/
      DATA AAAAN0/193,228,228,242,229,243,243,229,243,160,233,238,160,22
     *6,225,227,235,247,225,242,228,160,239,242,228,229,242,0/
      DATA AAAAO0/211,237,229,237,160,168,170,233,169,170,177,179,244,18
     *9,160,0/
      DATA AAAAP0/170,173,177,181,172,173,184,236,0/
      DATA AAAAQ0/170,173,177,181,236,0/
      STDIN0=(ISATTY(-10).NE.0)
      IF((.NOT.STDIN0))GOTO 10056
        CALL PRINT(1,AAAAJ0)
10056 CONTINUE
10057   IF((.NOT.STDIN0))GOTO 10058
          CALL PUTCH(138,1)
10058   CALL INPUT(-10,AAAAK0,SADDR)
        IF((SADDR.LT.1))GOTO 10060
        IF((SADDR.GT.2048))GOTO 10060
        GOTO 10059
10060     GOTO 10061
10059   CALL INPUT(-10,AAAAL0,EADDR)
        IF((EADDR.LT.1))GOTO 10063
        IF((EADDR.GT.2048))GOTO 10063
        GOTO 10062
10063     CALL REMARK(AAAAM0)
          GOTO 10064
10062     IF((SADDR.LE.EADDR))GOTO 10065
            CALL REMARK(AAAAN0)
            GOTO 10064
10065   CONTINUE
        J=0
        DO 10066 I=SADDR,EADDR
          IF((AND(J,1).NE.0))GOTO 10068
            CALL PUTCH(138,-11)
10068     CALL PRINT(-11,AAAAO0,I)
          IF((.NOT.OCTAL0))GOTO 10069
            CALL PRINT(-11,AAAAP0,SMEMO0(I))
            GOTO 10070
10069       CALL PRINT(-11,AAAAQ0,SMEMO0(I))
10070     J=J+(1)
10066   CONTINUE
10067   IF((MOD(J,4).EQ.1))GOTO 10071
          CALL PUTCH(138,-11)
10071 CONTINUE
10064 GOTO 10057
10061 RETURN
      END
      SUBROUTINE EXECV0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      CALL NANOG0
      CALL SETCO0
      IF((.NOT.NLUCO0))GOTO 10072
      IF(CONDI0)GOTO 10072
        CURRE0=2
        GOTO 10073
10072   CURRE0=3
        CALL UPDAT0
        CALL UPDAU0
        NEXTN0=MICRO0
10073 IF((.NOT.NMDOP0))GOTO 10075
      IF(CONDI0)GOTO 10075
      GOTO 10074
10075   CALL CONDJ0
        CALL MEMDE0
10074 RETURN
      END
      SUBROUTINE EXECU0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER BITFI0,WORD,START,END
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      CURRE0=2
      IF((.NOT.MSETS0))GOTO 10076
        SARAA0=XOR(LS(BITFI0(MICRP0,3,5),2),BITFI0(MICRP0,7,8))
10076 IF((.NOT.MSETL0))GOTO 10077
        LITAA0=BITFI0(MICRP0,9,16)
10077 IF((.NOT.MSETA0))GOTO 10078
        AMPCR0=BITFI0(MICRP0,5,16)
10078 RETURN
      END
      SUBROUTINE INITI0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER I
      INTEGER STR(102)
      INTEGER AAAAR0(31)
      INTEGER AAAAS0(39)
      INTEGER AAAAT0(36)
      INTEGER AAAAU0(29)
      INTEGER AAAAV0(27)
      INTEGER AAAAW0(42)
      INTEGER AAAAX0(35)
      DATA AAAAR0/194,229,231,233,238,160,229,248,229,227,245,244,233,23
     *9,238,160,225,244,160,225,228,228,242,229,243,243,186,160,170,233,
     *0/
      DATA AAAAS0/206,245,237,226,229,242,160,239,230,160,227,236,239,22
     *7,235,160,227,249,227,236,229,243,160,244,239,160,243,233,237,245,
     *236,225,244,229,186,160,170,233,0/
      DATA AAAAT0/206,245,237,226,229,242,160,239,230,160,227,249,227,23
     *6,229,243,160,226,229,244,247,229,229,238,160,244,242,225,227,229,
     *243,186,160,170,233,0/
      DATA AAAAU0/194,229,231,233,238,160,244,242,225,227,233,238,231,16
     *0,225,244,160,225,228,228,242,229,243,243,186,160,170,233,0/
      DATA AAAAV0/197,238,228,160,244,242,225,227,233,238,231,160,225,24
     *4,160,225,228,228,242,229,243,243,186,160,170,233,0/
      DATA AAAAW0/208,242,233,238,244,160,211,173,237,229,237,239,242,24
     *9,160,225,238,228,160,242,229,231,233,243,244,229,242,243,160,233,
     *238,160,239,227,244,225,236,191,160,170,243,0/
      DATA AAAAX0/196,245,237,240,160,211,173,237,229,237,239,242,249,16
     *0,245,240,239,238,160,244,229,242,237,233,238,225,244,233,239,238,
     *191,160,170,243,0/
      CALL INITK0
      LUXSE0=0
      LUYSE0=0
      LUBMA0=0
      LUBMB0=0
      LUBMC0=0
      LUINH0=.FALSE.
      LUADD0=0
      LUSHI0=0
      LUSEU0=.FALSE.
      LUSEV0=.FALSE.
      LUSEW0=.FALSE.
      LUBSE0=0
      LUSFA0=.FALSE.
      LUSET0=.FALSE.
      LUSEZ0=.FALSE.
      LULMA0=.FALSE.
      LUSEX0=.FALSE.
      LUSEY0=.FALSE.
      LUCTR0=0
      LUSAR0=0
      A1AAA0=0
      A2AAA0=0
      A3AAA0=0
      BAAAA0=0
      EXTAA0=0
      MIRAA0=0
      SARAA0=0
      LITAA0=0
      CTRAA0=0
      BR1AA0=0
      BR2AA0=0
      MARAA0=0
      BMARA0=0
      GC1AA0=.FALSE.
      GC2AA0=.FALSE.
      LC1AA0=.FALSE.
      LC2AA0=.FALSE.
      LC3AA0=.FALSE.
      COVAA0=.FALSE.
      SAIAA0=.FALSE.
      RDCAA0=.FALSE.
      EX1AA0=.FALSE.
      EX2AA0=.FALSE.
      EX3AA0=.FALSE.
      INTAA0=.FALSE.
      AMPCR0=0
      NONPH0=:100000
      NEXTN0=:100000
      RDCCL0=0
      SAICL0=0
      CALL INPUT(-10,AAAAR0,MPCRA0)
      MICRO0=MPCRA0
      CALL INPUT(-10,AAAAS0,MAXCL0)
      CALL INPUT(-10,AAAAT0,TRACG0)
      CALL INPUT(-10,AAAAU0,TRACE0)
      CALL INPUT(-10,AAAAV0,TRACF0)
      CALL INPUT(-10,AAAAW0,STR)
      OCTAL0=(STR(1).EQ.249.OR.STR(1).EQ.217)
      CALL INPUT(-10,AAAAX0,STR)
      MEMOS0=(STR(1).EQ.249.OR.STR(1).EQ.217)
      CALL INITL0
      RETURN
      END
      SUBROUTINE INITK0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER I,J,ADDR,NADDR,FD
      INTEGER OPEN,GETLIN,GCTOI,GETARG
      INTEGER LINE(102),HEXFI0(102)
      INTEGER AAAAY0(24)
      INTEGER BITFI0,WORD,START,END
      DATA AAAAY0/213,243,225,231,229,186,160,228,237,225,227,232,160,18
     *8,232,229,248,160,230,233,236,229,190,0/
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      IF((GETARG(1,HEXFI0,102).NE.-1))GOTO 10079
        CALL ERROR(AAAAY0)
10079 FD=OPEN(HEXFI0,1)
      IF((FD.NE.-3))GOTO 10080
        CALL CANT(HEXFI0)
10080 CONTINUE
10081 IF((GETLIN(LINE,FD).EQ.-1))GOTO 10082
        I=1
        ADDR=GCTOI(LINE,I,16)
        MMEMO0(ADDR+1)=GCTOI(LINE,I,16)
        IF((BITFI0(MMEMO0(ADDR+1),1,4).NE.15))GOTO 10083
          NADDR=BITFI0(MMEMO0(ADDR+1),5,16)
          NMEMO0(1,NADDR+1)=GCTOI(LINE,I,16)
          NMEMO0(2,NADDR+1)=GCTOI(LINE,I,16)
          NMEMO0(3,NADDR+1)=GCTOI(LINE,I,16)
          NMEMO0(4,NADDR+1)=GCTOI(LINE,I,16)
10083 GOTO 10081
10082 MMEMO0(ADDR+2)=16384
      CALL CLOSE(FD)
      RETURN
      END
      SUBROUTINE INITL0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER SADDR,EADDR,I
      INTEGER ISATTY
      LOGICAL STDIN0
      INTEGER AAAAZ0(44)
      INTEGER AAABA0(30)
      INTEGER AAABB0(30)
      INTEGER AAABC0(28)
      INTEGER AAABD0(28)
      INTEGER AAABE0(16)
      INTEGER AAABF0(3)
      DATA AAAAZ0/170,238,204,239,225,228,160,211,173,237,229,237,239,24
     *2,249,160,173,173,160,197,238,244,229,242,160,188,242,229,244,245,
     *242,238,190,160,244,239,160,241,245,233,244,170,238,0/
      DATA AAABA0/211,244,225,242,244,233,238,231,160,225,228,228,242,22
     *9,243,243,160,168,177,173,178,176,180,184,169,186,160,170,233,0/
      DATA AAABB0/197,238,228,233,238,231,160,225,228,228,242,229,243,24
     *3,160,160,160,160,160,160,160,160,160,160,160,186,160,170,233,0/
      DATA AAABC0/197,238,228,233,238,231,160,225,228,228,242,229,243,24
     *3,160,239,245,244,160,239,230,160,242,225,238,231,229,0/
      DATA AAABD0/193,228,228,242,229,243,243,229,243,160,233,238,160,22
     *6,225,227,235,247,225,242,228,160,239,242,228,229,242,0/
      DATA AAABE0/211,237,229,237,160,168,170,233,169,170,177,179,244,18
     *9,160,0/
      DATA AAABF0/170,236,0/
      STDIN0=(ISATTY(-10).NE.0)
      IF((.NOT.STDIN0))GOTO 10084
        CALL PRINT(1,AAAAZ0)
10084 CONTINUE
10085   IF((.NOT.STDIN0))GOTO 10086
          CALL PUTCH(138,1)
10086   CALL INPUT(-10,AAABA0,SADDR)
        IF((SADDR.LT.1))GOTO 10088
        IF((SADDR.GT.2048))GOTO 10088
        GOTO 10087
10088     GOTO 10089
10087   CALL INPUT(-10,AAABB0,EADDR)
        IF((EADDR.LT.1))GOTO 10091
        IF((EADDR.GT.2048))GOTO 10091
        GOTO 10090
10091     CALL REMARK(AAABC0)
          GOTO 10092
10090     IF((SADDR.LE.EADDR))GOTO 10093
            CALL REMARK(AAABD0)
            GOTO 10092
10093   CONTINUE
        DO 10094 I=SADDR,EADDR
          IF((.NOT.STDIN0))GOTO 10096
            CALL PRINT(1,AAABE0,I)
10096     CALL INPUT(-10,AAABF0,SMEMO0(I))
10094   CONTINUE
10095 CONTINUE
10092 GOTO 10085
10089 RETURN
      END
      SUBROUTINE INITJ0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      NONPH0=NEXTN0
      IF((.NOT.RDCAA0))GOTO 10097
        EXTAA0=MEMOR0
10097 RETURN
      END
      SUBROUTINE MEMDE0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER MDOP,TEMP
      INTEGER AAABG0(41)
      INTEGER AAABH0(43)
      INTEGER AAABI0(39)
      INTEGER AAABJ0(40)
      INTEGER BITFI0,WORD,START,END
      DATA AAABG0/170,238,197,242,242,239,242,160,173,173,160,194,225,22
     *8,160,229,248,244,229,242,238,225,236,160,239,240,229,242,225,244,
     *233,239,238,160,168,170,233,169,170,238,0/
      DATA AAABH0/170,238,197,242,242,239,242,160,173,173,160,211,173,23
     *7,229,237,239,242,249,160,225,228,228,242,229,243,243,160,239,245,
     *244,160,239,230,160,242,225,238,231,229,170,238,0/
      DATA AAABI0/170,238,197,242,242,239,242,160,173,173,160,205,229,23
     *7,239,242,249,160,238,239,244,160,242,229,225,228,249,160,230,239,
     *242,160,242,229,225,228,170,238,0/
      DATA AAABJ0/170,238,197,242,242,239,242,160,173,173,160,205,229,23
     *7,239,242,249,160,238,239,244,160,242,229,225,228,249,160,230,239,
     *242,160,247,242,233,244,229,170,238,0/
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      MDOP=BITFI0(NANOI0(4),3,6)
      IF((MDOP.NE.0))GOTO 10098
        RETURN
10098 IF((MDOP.EQ.2))GOTO 10099
      IF((MDOP.EQ.3))GOTO 10099
      IF((MDOP.EQ.6))GOTO 10099
      IF((MDOP.EQ.7))GOTO 10099
        CALL PRINT(-11,AAABG0,MDOP)
        RETURN
10099 IF((MDOP.EQ.2))GOTO 10101
      IF((MDOP.EQ.6))GOTO 10101
      GOTO 10100
10101   BMARA0=XOR(LS(BR1AA0,8),MARAA0)
        GOTO 10102
10100   BMARA0=XOR(LS(BR2AA0,8),MARAA0)
10102 IF((BMARA0.LT.1))GOTO 10104
      IF((BMARA0.GT.2048))GOTO 10104
      GOTO 10103
10104   CALL PRINT(-11,AAABH0)
        CALL TERMJ0
        CALL SWT
10103 IF((MDOP.EQ.2))GOTO 10106
      IF((MDOP.EQ.3))GOTO 10106
      GOTO 10105
10106   IF((RDCCL0.EQ.0))GOTO 10107
          CALL PRINT(-11,AAABI0)
10107   MEMOR0=SMEMO0(BMARA0)
        RDCCL0=CLOCK0+2
        GOTO 10108
10105   IF((SAICL0.EQ.0))GOTO 10109
          CALL PRINT(-11,AAABJ0)
10109   SMEMO0(BMARA0)=MIRAA0
        SAICL0=CLOCK0+2
10108 RETURN
      END
      SUBROUTINE MICRQ0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER BITFI0,WORD,START,END
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      MICRP0=MMEMO0(MICRO0+1)
      MTYPE0=(BITFI0(MICRP0,1,4).EQ.15)
      IF((.NOT.MTYPE0))GOTO 10110
        MSETS0=.FALSE.
        MSETL0=.FALSE.
        MSETA0=.FALSE.
        NANOF0=BITFI0(MICRP0,5,16)
        GOTO 10111
10110   MSETS0=(BITFI0(MICRP0,1,2).EQ.0.OR.BITFI0(MICRP0,1,2).EQ.2)
        MSETL0=(BITFI0(MICRP0,1,2).EQ.2.OR.BITFI0(MICRP0,1,4).EQ.14)
        MSETA0=(BITFI0(MICRP0,1,4).EQ.12)
10111 RETURN
      END
      SUBROUTINE NANOG0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER BITFI0,WORD,START,END
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      NANOI0(1)=NMEMO0(1,NANOF0+1)
      NANOI0(2)=NMEMO0(2,NANOF0+1)
      NANOI0(3)=NMEMO0(3,NANOF0+1)
      NANOI0(4)=NMEMO0(4,NANOF0+1)
      NCOND0=BITFI0(NANOI0(1),1,4)
      NTRUE0=(BITFI0(NANOI0(1),5,5).EQ.1)
      NLUCO0=(BITFI0(NANOI0(1),6,6).EQ.1)
      NMDOP0=(BITFI0(NANOI0(1),7,7).EQ.1)
      RETURN
      END
      SUBROUTINE PRINT0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAABK0(22)
      INTEGER AAABL0(76)
      INTEGER AAABM0(76)
      INTEGER AAABN0(76)
      INTEGER AAABO0(64)
      INTEGER AAABP0(64)
      INTEGER AAABQ0(64)
      INTEGER AAABR0(81)
      INTEGER AAABS0(42)
      INTEGER AAABT0(40)
      DATA AAABK0/208,232,225,243,229,160,170,233,160,205,240,227,242,18
     *6,160,170,173,180,233,170,238,0/
      DATA AAABL0/195,236,239,227,235,186,160,170,173,181,233,170,180,24
     *8,193,177,186,160,170,173,177,177,172,173,184,236,170,180,248,194,
     *160,160,160,186,160,170,173,177,177,172,173,184,236,170,180,248,19
     *5,244,242,186,160,170,173,180,172,173,184,233,170,180,248,194,242,
     *177,186,160,170,173,180,172,173,184,233,170,238,0/
      DATA AAABM0/205,240,227,242,160,186,160,170,173,181,233,170,180,24
     *8,193,178,186,160,170,173,177,177,172,173,184,236,170,180,248,205,
     *233,242,160,186,160,170,173,177,177,172,173,184,236,170,180,248,20
     *4,233,244,186,160,170,173,180,172,173,184,233,170,180,248,194,242,
     *178,186,160,170,173,180,172,173,184,233,170,238,0/
      DATA AAABN0/193,237,240,227,242,186,160,170,173,181,233,170,180,24
     *8,193,179,186,160,170,173,177,177,172,173,184,236,170,180,248,194,
     *237,225,242,186,160,170,173,177,177,172,173,184,233,170,180,248,21
     *1,225,242,186,160,170,173,180,172,173,184,233,170,180,248,205,225,
     *242,186,160,170,173,180,172,173,184,233,170,238,0/
      DATA AAABO0/195,236,239,227,235,186,160,170,173,181,233,170,180,24
     *8,193,177,186,160,170,173,177,177,236,170,180,248,194,160,160,160,
     *186,160,170,173,177,177,236,170,180,248,195,244,242,186,160,170,17
     *3,180,233,170,180,248,194,242,177,186,160,170,173,180,233,170,238,
     *0/
      DATA AAABP0/205,240,227,242,160,186,160,170,173,181,233,170,180,24
     *8,193,178,186,160,170,173,177,177,236,170,180,248,205,233,242,160,
     *186,160,170,173,177,177,236,170,180,248,204,233,244,186,160,170,17
     *3,180,233,170,180,248,194,242,178,186,160,170,173,180,233,170,238,
     *0/
      DATA AAABQ0/193,237,240,227,242,186,160,170,173,181,233,170,180,24
     *8,193,179,186,160,170,173,177,177,236,170,180,248,194,237,225,242,
     *186,160,170,173,177,177,233,170,180,248,211,225,242,186,160,170,17
     *3,180,233,170,180,248,205,225,242,186,160,170,173,180,233,170,238,
     *0/
      DATA AAABR0/205,243,244,160,160,204,243,244,160,160,193,226,244,16
     *0,160,193,239,246,160,160,195,239,246,160,160,211,225,233,160,160,
     *210,228,227,160,160,199,227,177,160,160,199,227,178,160,160,204,22
     *7,177,160,160,204,227,178,160,160,204,227,179,160,160,197,248,177,
     *160,160,197,248,178,160,160,197,248,179,160,160,201,238,244,170,23
     *8,0/
      DATA AAABS0/160,170,233,170,180,248,170,233,170,180,248,170,233,17
     *0,180,248,170,233,170,180,248,170,233,170,180,248,170,233,170,180,
     *248,170,233,170,180,248,170,233,170,180,248,0/
      DATA AAABT0/170,233,170,180,248,170,233,170,180,248,170,233,170,18
     *0,248,170,233,170,180,248,170,233,170,180,248,170,233,170,180,248,
     *170,233,170,180,248,170,233,170,238,0/
      CALL PUTCH(138,-11)
      IF((NONPH0.EQ.:100000))GOTO 10112
        CALL PRINT(-11,AAABK0,CURRE0,NONPH0)
10112 IF((.NOT.OCTAL0))GOTO 10113
        CALL PRINT(-11,AAABL0,CLOCK0,A1AAA0,BAAAA0,CTRAA0,BR1AA0)
        CALL PRINT(-11,AAABM0,MPCRA0,A2AAA0,MIRAA0,LITAA0,BR2AA0)
        CALL PRINT(-11,AAABN0,AMPCR0,A3AAA0,BMARA0,SARAA0,MARAA0)
        GOTO 10114
10113   CALL PRINT(-11,AAABO0,CLOCK0,A1AAA0,BAAAA0,CTRAA0,BR1AA0)
        CALL PRINT(-11,AAABP0,MPCRA0,A2AAA0,MIRAA0,LITAA0,BR2AA0)
        CALL PRINT(-11,AAABQ0,AMPCR0,A3AAA0,BMARA0,SARAA0,MARAA0)
10114 CALL PRINT(-11,AAABR0)
      CALL PRINT(-11,AAABS0,MSTAA0,LSTAA0,ABTAA0,AOVAA0,COVAA0,SAIAA0,RD
     *CAA0,GC1AA0)
      CALL PRINT(-11,AAABT0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,EX1AA0,EX2AA0,EX
     *3AA0,INTAA0)
      RETURN
      END
      SUBROUTINE SELEC0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER SUCCE0,TEMP
      INTEGER AAABU0
      INTEGER AAABV0
      INTEGER AAABW0(42)
      INTEGER BITFI0,WORD,START,END
      DATA AAABW0/233,238,160,243,229,236,229,227,244,223,243,245,227,22
     *7,229,243,243,239,242,223,225,228,228,242,229,243,243,186,160,227,
     *225,238,167,244,160,232,225,240,240,229,238,0/
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      IF(MTYPE0)GOTO 10115
        MPCRA0=MPCRA0+(1)
        MICRO0=MPCRA0
        GOTO 10116
10115   IF((.NOT.CONDI0))GOTO 10117
          SUCCE0=BITFI0(NANOI0(1),11,13)
          GOTO 10118
10117     SUCCE0=BITFI0(NANOI0(1),14,16)
10118   AAABU0=SUCCE0
        GOTO 10119
10120   GOTO 10121
10122     MPCRA0=MPCRA0+(1)
        GOTO 10121
10123     AMPCR0=MPCRA0
          MPCRA0=MPCRA0+(1)
        GOTO 10121
10124     MPCRA0=MPCRA0+(2)
        GOTO 10121
10125     MPCRA0=AMPCR0+1
        GOTO 10121
10126     MICRO0=AMPCR0+1
        GOTO 10121
10127     TEMP=MPCRA0
          MPCRA0=AMPCR0+1
          AMPCR0=TEMP
        GOTO 10121
10128     MPCRA0=AMPCR0+2
        GOTO 10121
10119   AAABV0=AAABU0+1
        GOTO(10120,10122,10123,10124,10125,10126,10127,10128),AAABV0
          CALL ERROR(AAABW0)
10121   IF((SUCCE0.EQ.5))GOTO 10129
          MICRO0=MPCRA0
10129 CONTINUE
10116 RETURN
      END
      SUBROUTINE SETCO0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      LOGICAL TEST
      INTEGER AAABX0
      INTEGER AAABY0
      INTEGER AAABZ0(31)
      DATA AAABZ0/233,238,160,243,229,244,223,227,239,238,228,233,244,23
     *3,239,238,186,160,227,225,238,167,244,160,232,225,240,240,229,238,
     *0/
      AAABX0=NCOND0
      GOTO 10130
10131   TEST=GC1AA0
      GOTO 10132
10133   TEST=GC2AA0
      GOTO 10132
10134   TEST=LC1AA0
        LC1AA0=.FALSE.
      GOTO 10132
10135   TEST=LC2AA0
        LC2AA0=.FALSE.
      GOTO 10132
10136   TEST=MSTAA0
      GOTO 10132
10137   TEST=LSTAA0
      GOTO 10132
10138   TEST=ABTAA0
      GOTO 10132
10139   TEST=AOVAA0
      GOTO 10132
10140   TEST=COVAA0
        COVAA0=.FALSE.
      GOTO 10132
10141   TEST=SAIAA0
        SAIAA0=.FALSE.
      GOTO 10132
10142   TEST=RDCAA0
        RDCAA0=.FALSE.
      GOTO 10132
10143   TEST=LC3AA0
        LC3AA0=.FALSE.
      GOTO 10132
10144   TEST=EX1AA0
        EX1AA0=.FALSE.
      GOTO 10132
10145   TEST=INTAA0
        INTAA0=.FALSE.
      GOTO 10132
10146   TEST=EX2AA0
        EX2AA0=.FALSE.
      GOTO 10132
10147   TEST=EX3AA0
        EX3AA0=.FALSE.
      GOTO 10132
10130 AAABY0=AAABX0+1
      GOTO(10131,10133,10134,10135,10136,10137,10138,10139,10140,10141,1
     *0142,10143,10144,10145,10146,10147),AAABY0
        CALL ERROR(AAABZ0)
10132 IF((.NOT.NTRUE0))GOTO 10148
        CONDI0=TEST
        GOTO 10149
10148   CONDI0=.NOT.TEST
10149 RETURN
      END
      SUBROUTINE TERMI0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      IF((RDCCL0.NE.CLOCK0+1))GOTO 10150
        RDCAA0=.TRUE.
        RDCCL0=0
10150 IF((SAICL0.NE.CLOCK0+1))GOTO 10151
        SAIAA0=.TRUE.
        SAICL0=0
10151 RETURN
      END
      SUBROUTINE TERMJ0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAACA0(42)
      DATA AAACA0/170,238,197,238,228,160,239,230,160,211,233,237,245,23
     *6,225,244,233,239,238,160,173,160,205,225,227,232,233,238,229,160,
     *211,244,225,244,229,160,233,243,186,170,238,0/
      CALL PRINT(-11,AAACA0)
      CALL PRINT0
      IF((.NOT.MEMOS0))GOTO 10152
        CALL DUMPS0
10152 RETURN
      END
      SUBROUTINE TRACH0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      IF((MICRO0.LT.TRACE0))GOTO 10153
      IF((MICRO0.GT.TRACF0))GOTO 10153
      IF((MOD(CLOCK0,TRACG0).NE.0))GOTO 10153
        CALL PRINT0
10153 RETURN
      END
      SUBROUTINE UPDAV0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAACB0
      INTEGER AAACC0
      INTEGER AAACD0(35)
      DATA AAACD0/233,238,160,245,240,228,225,244,229,223,226,223,242,22
     *9,231,233,243,244,229,242,186,160,227,225,238,167,244,160,232,225,
     *240,240,229,238,0/
      AAACB0=LUBSE0
      GOTO 10154
10155 GOTO 10156
10157   BAAAA0=0
      GOTO 10156
10158   BAAAA0=ADDER0
      GOTO 10156
10159   BAAAA0=0
      GOTO 10156
10160   BAAAA0=OR(BSWOU0,ADDER0)
      GOTO 10156
10161   BAAAA0=BSWOU0
      GOTO 10156
10162   BAAAA0=EXTAA0
      GOTO 10156
10163   BAAAA0=MIRAA0
      GOTO 10156
10164   BAAAA0=OR(BSWOU0,EXTAA0)
      GOTO 10156
10165   BAAAA0=OR(BSWOU0,MIRAA0)
      GOTO 10156
10154 AAACC0=AAACB0+1
      GOTO(10155,10157,10166,10166,10166,10166,10166,10166,10158,10159,1
     *0160,10161,10162,10163,10164,10165),AAACC0
10166   CALL ERROR(AAACD0)
10156 RETURN
      END
      SUBROUTINE UPDAW0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAACE0
      INTEGER AAACF0
      INTEGER AAACG0(28)
      DATA AAACG0/233,238,160,245,240,228,225,244,229,223,227,244,242,18
     *6,160,227,225,238,167,244,160,232,225,240,240,229,238,0/
      AAACE0=LUCTR0
      GOTO 10167
10168 GOTO 10169
10170   COVAA0=.FALSE.
        CTRAA0=AND(NOT(LITAA0),:377)
      GOTO 10169
10171   CTRAA0=CTRAA0+(1)
        IF((CTRAA0.LE.255))GOTO 10172
          CTRAA0=0
          COVAA0=.TRUE.
10172 GOTO 10169
10173   COVAA0=.FALSE.
        CTRAA0=AND(NOT(BSWOU0),:377)
      GOTO 10169
10167 AAACF0=AAACE0+1
      GOTO(10168,10170,10171,10173),AAACF0
        CALL ERROR(AAACG0)
10169 RETURN
      END
      SUBROUTINE UPDAT0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      IF((.NOT.LUSEU0))GOTO 10174
        A1AAA0=BSWOU0
10174 IF((.NOT.LUSEV0))GOTO 10175
        A2AAA0=BSWOU0
10175 IF((.NOT.LUSEW0))GOTO 10176
        A3AAA0=BSWOU0
10176 CALL UPDAV0
      IF((.NOT.LUSFA0))GOTO 10177
        MIRAA0=BSWOU0
10177 IF((.NOT.LUSET0))GOTO 10178
        AMPCR0=AND(BSWOU0,:7777)
10178 IF((.NOT.LUSEX0))GOTO 10179
        BR1AA0=AND(RS(BSWOU0,8),:377)
10179 IF((.NOT.LUSEY0))GOTO 10180
        BR2AA0=AND(RS(BSWOU0,8),:377)
10180 IF((.NOT.LUSEZ0))GOTO 10181
        IF((.NOT.LULMA0))GOTO 10182
          MARAA0=LITAA0
          GOTO 10183
10182     MARAA0=AND(BSWOU0,:377)
10183 CONTINUE
10181 CALL UPDAW0
      CALL UPDAX0
      RETURN
      END
      SUBROUTINE UPDAU0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER BITFI0,WORD,START,END
      BITFI0(WORD,START,END)=RT(RS(WORD,16-END),END-START+1)
      LUXSE0=BITFI0(NANOI0(2),1,3)
      LUYSE0=BITFI0(NANOI0(2),6,8)
      LUBMA0=BITFI0(NANOI0(2),4,5)
      LUBMB0=BITFI0(NANOI0(2),6,6)
      LUBMC0=BITFI0(NANOI0(2),9,10)
      LUADD0=BITFI0(NANOI0(2),12,15)
      LUSHI0=BITFI0(NANOI0(2),16,16)*2+BITFI0(NANOI0(3),1,1)
      LUBSE0=BITFI0(NANOI0(3),5,8)
      LUCTR0=BITFI0(NANOI0(3),15,16)
      IF((LUCTR0.NE.1))GOTO 10184
      IF((BITFI0(NANOI0(3),14,14).NE.1))GOTO 10184
        LUCTR0=3
10184 LUSAR0=BITFI0(NANOI0(4),1,2)
      LUINH0=(BITFI0(NANOI0(2),11,11).EQ.1)
      LUSEU0=(BITFI0(NANOI0(3),2,2).EQ.1)
      LUSEV0=(BITFI0(NANOI0(3),3,3).EQ.1)
      LUSEW0=(BITFI0(NANOI0(3),4,4).EQ.1)
      LUSFA0=(BITFI0(NANOI0(3),9,9).EQ.1)
      LUSET0=(BITFI0(NANOI0(3),10,10).EQ.1)
      LUSEZ0=(BITFI0(NANOI0(3),13,13).EQ.1)
      LULMA0=(BITFI0(NANOI0(3),13,14).EQ.2)
      LUSEX0=(BITFI0(NANOI0(3),11,11).EQ.1)
      LUSEY0=(BITFI0(NANOI0(3),12,12).EQ.1)
      RETURN
      END
      SUBROUTINE UPDAX0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAACH0
      INTEGER AAACI0
      INTEGER AAACJ0(28)
      DATA AAACJ0/233,238,160,245,240,228,225,244,229,223,243,225,242,18
     *6,160,227,225,238,167,244,160,232,225,240,240,229,238,0/
      AAACH0=LUSAR0
      GOTO 10185
10186 GOTO 10187
10188   SARAA0=32-SARAA0
      GOTO 10187
10189   SARAA0=AND(XOR(AND(RS(BSWOU0,1),NOT(3)),AND(BSWOU0,3)),:37)
      GOTO 10187
10185 AAACI0=AAACH0+1
      GOTO(10186,10188,10189),AAACI0
        CALL ERROR(AAACJ0)
10187 RETURN
      END
      SUBROUTINE XINPV0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAACK0
      INTEGER AAACL0
      INTEGER AAACM0(32)
      DATA AAACM0/233,238,160,248,223,233,238,240,245,244,223,243,229,23
     *6,229,227,244,186,160,227,225,238,167,244,160,232,225,240,240,229,
     *238,0/
      AAACK0=LUXSE0
      GOTO 10190
10191   XINPU0=0
      GOTO 10192
10193   XINPU0=LITAA0
      GOTO 10192
10194   XINPU0=EXTAA0
      GOTO 10192
10195   XINPU0=LS(INTL(CTRAA0),24)
      GOTO 10192
10196   XINPU0=XOR(LS(INTL(CTRAA0),24),LITAA0)
      GOTO 10192
10197   XINPU0=A1AAA0
      GOTO 10192
10198   XINPU0=A2AAA0
      GOTO 10192
10199   XINPU0=A3AAA0
      GOTO 10192
10190 AAACL0=AAACK0+1
      GOTO(10191,10193,10194,10195,10196,10197,10198,10199),AAACL0
        CALL ERROR(AAACM0)
10192 RETURN
      END
      SUBROUTINE YINPW0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER * 4 BHIGH,BMID,BLOW
      INTEGER AAACN0
      INTEGER AAACO0
      INTEGER AAACP0(48)
      INTEGER AAACQ0
      INTEGER AAACR0
      INTEGER AAACS0(48)
      INTEGER AAACT0
      INTEGER AAACU0
      INTEGER AAACV0(48)
      DATA AAACP0/233,238,160,249,223,233,238,240,245,244,223,230,242,23
     *9,237,223,237,225,243,235,229,228,223,226,223,242,229,231,233,243,
     *244,229,242,186,160,227,225,238,167,244,160,232,225,240,240,229,23
     *8,0/
      DATA AAACS0/233,238,160,249,223,233,238,240,245,244,223,230,242,23
     *9,237,223,237,225,243,235,229,228,223,226,223,242,229,231,233,243,
     *244,229,242,186,160,227,225,238,167,244,160,232,225,240,240,229,23
     *8,0/
      DATA AAACV0/233,238,160,249,223,233,238,240,245,244,223,230,242,23
     *9,237,223,237,225,243,235,229,228,223,226,223,242,229,231,233,243,
     *244,229,242,186,160,227,225,238,167,244,160,232,225,240,240,229,23
     *8,0/
      AAACN0=LUBMA0
      GOTO 10200
10201   BHIGH=0
      GOTO 10202
10203   BHIGH=AND(BAAAA0,:20000000000)
      GOTO 10202
10204   BHIGH=AND(NOT(BAAAA0),:20000000000)
      GOTO 10202
10205   BHIGH=:20000000000
      GOTO 10202
10200 AAACO0=AAACN0+1
      GOTO(10201,10203,10204,10205),AAACO0
        CALL ERROR(AAACP0)
10202 AAACQ0=LUBMB0
      GOTO 10206
10207   BMID=0
      GOTO 10208
10209   BMID=AND(BAAAA0,:17777777776)
      GOTO 10208
10206 AAACR0=AAACQ0+1
      GOTO(10207,10209),AAACR0
        CALL ERROR(AAACS0)
10208 AAACT0=LUBMC0
      GOTO 10210
10211   BLOW=0
      GOTO 10212
10213   BLOW=AND(BAAAA0,1)
      GOTO 10212
10214   BLOW=AND(NOT(BAAAA0),1)
      GOTO 10212
10215   BLOW=1
      GOTO 10212
10210 AAACU0=AAACT0+1
      GOTO(10211,10213,10214,10215),AAACU0
        CALL ERROR(AAACV0)
10212 YINPU0=XOR(BHIGH,BMID,BLOW)
      RETURN
      END
      SUBROUTINE YINPV0
      INTEGER CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MICRO0,NA
     *NOF0
      INTEGER MICRP0
      LOGICAL MTYPE0,MSETS0,MSETL0,MSETA0
      INTEGER NANOI0,NCOND0
      LOGICAL NTRUE0,NLUCO0,NMDOP0
      INTEGER MMEMO0,NMEMO0
      INTEGER * 4 SMEMO0,MEMOR0
      LOGICAL CONDI0
      INTEGER AMPCR0,MPCRA0
      INTEGER * 4 A1AAA0,A2AAA0,A3AAA0,BAAAA0
      INTEGER LITAA0,CTRAA0
      INTEGER * 4 EXTAA0
      INTEGER * 4 XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0
      LOGICAL AOVAA0,MSTAA0,LSTAA0,ABTAA0
      INTEGER SARAA0
      INTEGER * 4 BSWOU0
      INTEGER BR1AA0,BR2AA0,MARAA0,BMARA0
      INTEGER * 4 MIRAA0
      LOGICAL GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX
     *1AA0,EX2AA0,EX3AA0,INTAA0
      INTEGER LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUSHI0,LUBSE0,LU
     *SAR0,LUCTR0
      LOGICAL LUINH0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUSEX0,LUSEY0,LUSEZ0,LU
     *LMA0,LUSFA0
      INTEGER TRACE0,TRACF0,TRACG0
      LOGICAL MEMOS0,OCTAL0
      COMMON /CDMACH/CLOCK0,RDCCL0,SAICL0,MAXCL0,CURRE0,NONPH0,NEXTN0,MI
     *CRO0,NANOF0,MICRP0,MTYPE0,MSETS0,MSETL0,MSETA0,NANOI0(4),NCOND0,NT
     *RUE0,NLUCO0,NMDOP0,CONDI0,AMPCR0,MPCRA0,A1AAA0,A2AAA0,A3AAA0,BAAAA
     *0,LITAA0,CTRAA0,EXTAA0,XINPU0,YINPU0,ADDER0,CARRY0,CARRZ0,AOVAA0,M
     *STAA0,LSTAA0,ABTAA0,SARAA0,BSWOU0,BR1AA0,BR2AA0,MARAA0,BMARA0,MIRA
     *A0,GC1AA0,GC2AA0,LC1AA0,LC2AA0,LC3AA0,COVAA0,SAIAA0,RDCAA0,EX1AA0,
     *EX2AA0,EX3AA0,INTAA0,LUXSE0,LUYSE0,LUBMA0,LUBMB0,LUBMC0,LUADD0,LUI
     *NH0,LUSHI0,LUSET0,LUSEU0,LUSEV0,LUSEW0,LUBSE0,LUSAR0,LUCTR0,LUSEX0
     *,LUSEY0,LUSEZ0,LULMA0,LUSFA0,MMEMO0(1024),NMEMO0(4,1024),SMEMO0(20
     *48),MEMOR0,TRACE0,TRACF0,TRACG0,MEMOS0,OCTAL0
      INTEGER AAACW0
      INTEGER AAACX0
      INTEGER AAACY0(32)
      DATA AAACY0/233,238,160,249,223,233,238,240,245,244,223,243,229,23
     *6,229,227,244,186,160,227,225,238,167,244,160,232,225,240,240,229,
     *238,0/
      AAACW0=LUYSE0
      GOTO 10216
10217   CALL YINPW0
      GOTO 10218
10219   YINPU0=LITAA0
      GOTO 10218
10220   YINPU0=EXTAA0
      GOTO 10218
10221   YINPU0=LS(INTL(CTRAA0),24)
      GOTO 10218
10222   CALL YINPW0
      GOTO 10218
10223   YINPU0=XOR(LS(INTL(CTRAA0),24),LITAA0)
      GOTO 10218
10224   YINPU0=AMPCR0
      GOTO 10218
10225   YINPU0=BMARA0
      GOTO 10218
10216 AAACX0=AAACW0+1
      GOTO(10217,10219,10220,10221,10222,10223,10224,10225),AAACX0
        CALL ERROR(AAACY0)
10218 RETURN
      END
C ---- Long Name Map ----
C Msetlit                        msetl0
C traceinfo                      trach0
C Memorydata                     memor0
C Ext                            extaa0
C Gc1                            gc1aa0
C Gc2                            gc2aa0
C Lst                            lstaa0
C dumpsmemory                    dumps0
C hexfile                        hexfi0
C Mmemory                        mmemo0
C Mst                            mstaa0
C Lusetbr1                       lusex0
C updatebregister                updav0
C Nmemory                        nmemo0
C Luinhibitcarry                 luinh0
C Lusetbr2                       lusey0
C Microfetchaddr                 micro0
C Lc1                            lc1aa0
C Lubmaskhigh                    lubma0
C Lc2                            lc2aa0
C Nanoinstruction                nanoi0
C Lc3                            lc3aa0
C Currentphase                   curre0
C memdevoperation                memde0
C Smemory                        smemo0
C bitfield                       bitfi0
C Mtype1                         mtype0
C Mpcr                           mpcra0
C Br1                            br1aa0
C Br2                            br2aa0
C conditionadjust                condj0
C Lulmar                         lulma0
C Clock                          clock0
C Lusetampcr                     luset0
C Tracestopaddr                  tracf0
C updatesar                      updax0
C Lubmasklow                     lubmc0
C Luadderop                      luadd0
C Octaloutput                    octal0
C updatelucontrols               updau0
C Ntruecondition                 ntrue0
C printstate                     print0
C updatectr                      updaw0
C Abt                            abtaa0
C Traceinterval                  tracg0
C microfetch                     micrq0
C xinputselect                   xinpv0
C Lubselect                      lubse0
C Luseta1                        luseu0
C yinputselect                   yinpv0
C Rdc                            rdcaa0
C Ex1                            ex1aa0
C Luseta2                        lusev0
C Lusetmar                       lusez0
C Ampcr                          ampcr0
C Ex2                            ex2aa0
C Luseta3                        lusew0
C B                              baaaa0
C Ex3                            ex3aa0
C terminatesimulation            termj0
C yinputfrommaskedbregister      yinpw0
C Rdcclock                       rdccl0
C Condition                      condi0
C Sai                            saiaa0
C terminateclockcycle            termi0
C selectsuccessoraddress         selec0
C addwithoutcarry                addwi0
C initializemmemory              initk0
C Nanofetchaddr                  nanof0
C A1                             a1aaa0
C Saiclock                       saicl0
C A2                             a2aaa0
C Mar                            maraa0
C Msetampcr                      mseta0
C A3                             a3aaa0
C Lusetmir                       lusfa0
C Nonphase1fetchaddr             nonph0
C Lushiftselect                  lushi0
C Memorydump                     memos0
C Lusarselect                    lusar0
C Microinstruction               micrp0
C Tracestartaddr                 trace0
C barrelswitch                   barre0
C initializesmemory              initl0
C successor                      succe0
C Nmdopconditional               nmdop0
C Carryout                       carrz0
C Carryin                        carry0
C Aov                            aovaa0
C Sar                            saraa0
C Luctrselect                    luctr0
C Bswoutput                      bswou0
C Lubmaskmid                     lubmb0
C stdinistty                     stdin0
C updatedestinations             updat0
C Nconditionselect               ncond0
C Mir                            miraa0
C Cov                            covaa0
C Maxclock                       maxcl0
C Lit                            litaa0
C Ctr                            ctraa0
C Bmar                           bmara0
C Int                            intaa0
C executetype1                   execv0
C nanofetch                      nanog0
C executetype2                   execu0
C Msetsar                        msets0
C Xinput                         xinpu0
C Adderoutput                    adder0
C initializesimulation           initi0
C initiateclockcycle             initj0
C adderop                        addes0
C setcondition                   setco0
C Yinput                         yinpu0
C Luxselect                      luxse0
C Nextnonphase1fetchaddr         nextn0
C Nluconditional                 nluco0
C Luyselect                      luyse0
