-- file OpTable.mesa -- last edited by Sweet, January 25, 1980 10:37 AM -- last edited by Satterthwaite, May 5, 1983 4:06 pm DIRECTORY OpTableDefs: TYPE USING []; OpTable: PROGRAM EXPORTS OpTableDefs = BEGIN -- generated by OpDefsGenerator 5-Dec-80 10:59 Q: TYPE = PRIVATE RECORD [ push: [0..3], pop: [0..7], length: [0..3], mark: BOOL]; T: BOOL = TRUE; F: BOOL = FALSE; OpParms: PRIVATE ARRAY [0..256) OF Q = [ -- NOOP ME MRE MXW 000-003 Q[0,0,1,F], Q[1,1,1,F], Q[1,2,1,F], Q[0,3,1,F], -- MXD NOTIFY BCAST REQUEUE 004-007 Q[0,1,1,F], Q[0,1,1,F], Q[0,1,1,F], Q[0,3,1,F], -- LL0 LL1 LL2 LL3 010-013 Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], -- LL4 LL5 LL6 LL7 014-017 Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], -- LLB LLDB SL0 SL1 020-023 Q[1,0,2,F], Q[2,0,2,T], Q[0,1,1,F], Q[0,1,1,F], -- SL2 SL3 SL4 SL5 024-027 Q[0,1,1,F], Q[0,1,1,F], Q[0,1,1,F], Q[0,1,1,F], -- SL6 SL7 SLB PL0 030-033 Q[0,1,1,F], Q[0,1,1,F], Q[0,1,2,F], Q[1,1,1,F], -- PL1 PL2 PL3 LG0 034-037 Q[1,1,1,F], Q[1,1,1,F], Q[1,1,1,F], Q[1,0,1,F], -- LG1 LG2 LG3 LG4 040-043 Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], -- LG5 LG6 LG7 LGB 044-047 Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], Q[1,0,2,F], -- LGDB SG0 SG1 SG2 050-053 Q[2,0,2,T], Q[0,1,1,F], Q[0,1,1,F], Q[0,1,1,F], -- SG3 SGB LI0 LI1 054-057 Q[0,1,1,F], Q[0,1,2,F], Q[1,0,1,F], Q[1,0,1,F], -- LI2 LI3 LI4 LI5 060-063 Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], -- LI6 LIN1 LINI LIB 064-067 Q[1,0,1,F], Q[1,0,1,F], Q[1,0,1,F], Q[1,0,2,F], -- LIW LINB LADRB GADRB 070-073 Q[1,0,3,T], Q[1,0,2,F], Q[1,0,2,F], Q[1,0,2,F], -- LCO WCDBL ICDBL 074-077 Q[1,0,3,T], Q[0,0,0,F], Q[0,4,2,F], Q[0,4,2,F], -- R0 R1 R2 R3 100-103 Q[1,1,1,F], Q[1,1,1,F], Q[1,1,1,F], Q[1,1,1,F], -- R4 RB W0 W1 104-107 Q[1,1,1,F], Q[1,1,2,F], Q[0,2,1,F], Q[0,2,1,F], -- W2 WB RF WF 110-113 Q[0,2,1,F], Q[0,2,2,F], Q[1,1,3,T], Q[0,2,3,T], -- RDB RD0 WDB WD0 114-117 Q[2,1,2,T], Q[2,1,1,F], Q[0,3,2,T], Q[0,3,1,F], -- RSTR WSTR RXLP WXLP 120-123 Q[1,2,2,T], Q[0,3,2,T], Q[1,1,2,F], Q[0,2,2,F], -- RILP RIGP WILP RIL0 124-127 Q[1,0,2,F], Q[1,0,2,F], Q[0,1,2,F], Q[1,0,1,F], -- WS0 WSB WSF WSDB 130-133 Q[0,2,1,F], Q[0,2,2,T], Q[0,2,3,T], Q[0,3,2,T], -- RFC RFS WFS RBL 134-137 Q[1,1,3,T], Q[1,2,1,T], Q[0,3,1,T], Q[1,2,2,F], -- WBL RDBL WDBL RXLPL 140-143 Q[0,3,2,F], Q[2,2,2,F], Q[0,4,2,F], Q[1,1,2,F], -- WXLPL RXGPL WXGPL RILPL 144-147 Q[0,2,2,F], Q[1,1,2,F], Q[0,2,2,F], Q[1,0,2,F], -- WILPL RIGPL WIGPL RSTRL 150-153 Q[0,1,2,F], Q[1,0,2,F], Q[0,1,2,F], Q[1,3,2,F], -- WSTRL RFL WFL RFSL 154-157 Q[0,4,2,F], Q[1,2,3,T], Q[0,3,3,T], Q[1,3,1,T], -- WFSL LP SLDB SGDB 160-163 Q[0,4,1,T], Q[2,1,1,F], Q[0,2,2,T], Q[0,2,2,T], -- PUSH POP EXCH LINKB 164-167 Q[1,0,1,F], Q[0,1,1,F], Q[2,2,1,F], Q[0,0,2,F], -- DUP NILCK NILCKL BNDCK 170-173 Q[2,1,1,F], Q[1,1,1,F], Q[2,2,1,F], Q[1,2,1,F], -- 174-177 Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], -- J2 J3 J4 J5 200-203 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- J6 J7 J8 J9 204-207 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- JB JW JEQ2 JEQ3 210-213 Q[0,0,2,T], Q[0,0,3,T], Q[0,2,1,F], Q[0,2,1,F], -- JEQ4 JEQ5 JEQ6 JEQ7 214-217 Q[0,2,1,F], Q[0,2,1,F], Q[0,2,1,F], Q[0,2,1,F], -- JEQ8 JEQ9 JEQB JNE2 220-223 Q[0,2,1,F], Q[0,2,1,F], Q[0,2,2,T], Q[0,2,1,F], -- JNE3 JNE4 JNE5 JNE6 224-227 Q[0,2,1,F], Q[0,2,1,F], Q[0,2,1,F], Q[0,2,1,F], -- JNE7 JNE8 JNE9 JNEB 230-233 Q[0,2,1,F], Q[0,2,1,F], Q[0,2,1,F], Q[0,2,2,T], -- JLB JGEB JGB JLEB 234-237 Q[0,2,2,T], Q[0,2,2,T], Q[0,2,2,T], Q[0,2,2,T], -- JULB JUGEB JUGB JULEB 240-243 Q[0,2,2,T], Q[0,2,2,T], Q[0,2,2,T], Q[0,2,2,T], -- JZEQB JZNEB JIB JIW 244-247 Q[0,1,2,T], Q[0,1,2,T], Q[0,2,3,T], Q[0,2,3,T], -- ADD SUB MUL DBL 250-253 Q[1,2,1,F], Q[1,2,1,F], Q[1,2,1,F], Q[1,1,1,F], -- DIV LDIV NEG INC 254-257 Q[1,2,1,F], Q[1,3,1,F], Q[1,1,1,F], Q[1,1,1,F], -- AND OR XOR SHIFT 260-263 Q[1,2,1,F], Q[1,2,1,F], Q[1,2,1,F], Q[1,2,1,F], -- DADD DSUB DCOMP DUCOMP 264-267 Q[2,4,1,F], Q[2,4,1,F], Q[1,4,1,F], Q[1,4,1,F], -- ADD01 270-273 Q[1,2,1,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], -- 274-277 Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], Q[0,0,0,F], -- EFC0 EFC1 EFC2 EFC3 300-303 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- EFC4 EFC5 EFC6 EFC7 304-307 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- EFC8 EFC9 EFC10 EFC11 310-313 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- EFC12 EFC13 EFC14 EFC15 314-317 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- EFCB LFC1 LFC2 LFC3 320-323 Q[0,0,2,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- LFC4 LFC5 LFC6 LFC7 324-327 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- LFC8 LFC9 LFC10 LFC11 330-333 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- LFC12 LFC13 LFC14 LFC15 334-337 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], -- LFC16 LFCB SFC RET 340-343 Q[0,0,1,F], Q[0,0,2,F], Q[0,1,1,F], Q[0,0,1,F], -- LLKB PORTO PORTI KFCB 344-347 Q[1,0,2,T], Q[0,1,1,F], Q[0,0,1,F], Q[0,0,2,F], -- DESCB DESCBS BLT BLTL 350-353 Q[1,0,2,T], Q[1,1,2,T], Q[0,3,1,F], Q[0,5,1,F], -- BLTC BLTCL ALLOC FREE 354-357 Q[0,3,1,F], Q[0,4,1,F], Q[1,1,1,F], Q[0,1,1,F], -- IWDC DWDC STOP CATCH 360-363 Q[0,0,1,F], Q[0,0,1,F], Q[0,0,1,F], Q[0,0,2,T], -- MISC BITBLT STARTIO JRAM 364-367 Q[0,0,2,F], Q[0,2,1,T], Q[0,1,1,F], Q[0,1,1,T], -- DST LST LSTF 370-373 Q[0,0,2,T], Q[0,0,2,T], Q[0,0,2,T], Q[0,0,0,F], -- WR RR BRK 374-377 Q[0,1,2,T], Q[1,0,2,T], Q[0,0,1,F], Q[0,0,0,F]]; PushStack: PUBLIC PROC [b: [0..256)] RETURNS [[0..3]] = BEGIN RETURN [OpParms[b].push] END; PopStack: PUBLIC PROC [b: [0..256)] RETURNS [[0..7]] = BEGIN RETURN [OpParms[b].pop] END; InstLength: PUBLIC PROC [b: [0..256)] RETURNS [[0..3]] = BEGIN RETURN [OpParms[b].length] END; InstAligned: PUBLIC PROC [b: [0..256)] RETURNS [BOOL] = BEGIN RETURN [OpParms[b].mark] END; END.