Skip to content

ND-5000/5800 Microcode Mnemonic Reference

Generated from microcode-5000-def.json

This document lists all mnemonic symbols used in ND-5000/5800 microcode programming, organized by field groups matching the JSON definition file.


ALU: Arithmetic Logic Unit control

The ALU has two paths: True and False. When conditional ALU is enabled (C,ALU), the microinstruction specifies both paths. The syntax is: - True path: ALU,<func> with optional CRY,<mode> - False path: ALUF,<func> with optional CRYF,<mode>

Example: C,ALU ALU,A-B CRY,ONE ALUF,A+B - subtracts on true condition, adds on false.

ALU_TRUE (Bits 127-122)

ALU operation when condition is true (4-bit ALU + 2-bit carry)

ALU (Bits 127-124)

Value Mnemonic Description
0 ALU,FZRO FORCE ZERO ALU OUTPUT
1 ALU,ADIRC ALU OUTPUT COMPLEMENTED
2 ALU,AND LOGICAL AND OF A AND B
3 ALU,ANDCB LOGICAL AND OF A AND B COMPLEMENTED
4 ALU,A A OPERAND DIRECT THROUGH THE ALU
5 ALU,XOR LOGICAL EXCLUSIVE OR OF A AND B
6 ALU,ANDCA LOGICAL AND OF A COMPLEMENTED AND B
7 ALU,OR LOGICAL OR OF A AND B
8 ALU,A-1 DECREMENT A OPERAND
9 ALU,A,/2 FBUS = ALU.OUTPUT/2; FBUS(31) = CARRY
10 ALU,A-B A MINUS B OPERAND (carry selects -1 or +C)
11 ALU,A-B,*2 FBUS = ALU.OUTPUT*2; FBUS(00) = 0
12 ALU,A+B,/2 FBUS = ALU.OUTPUT/2; FBUS(31) = CARRY
13 ALU,A+B A OPERAND ADDED B OPERAND
14 ALU,B-A B OPERAND MINUS A OPERAND (carry selects -1 or +C)
15 ALU,A+B,*2 FBUS = ALU.OUTPUT*2; FBUS(00) = 0

CARRY (Bits 123-122)

Value Mnemonic Description
0 (zero) Carry input = 0
1 CRY,ONE ONE AS CARRY
2 CRY,C C FROM STATUS AS CARRY
3 CRY,MC MICRO CARRY AS CARRY

ALU_FALSE (Bits 121-116)

ALU operation when condition is false (4-bit ALU + 2-bit carry)

ALU (Bits 121-118)

Value Mnemonic Description
0 ALUF,FZRO FORCE ZERO ALU OUTPUT
1 ALUF,ADRC ALU OUTPUT COMPLEMENTED
2 ALUF,AND LOGICAL AND OF A AND B
3 ALUF,ANDCB LOGICAL AND OF A AND B COMPLEMENTED
4 ALUF,A A OPERAND DIRECT THROUGH THE ALU
5 ALUF,XOR LOGICAL EXCLUSIVE OR OF A AND B
6 ALUF,ANDCA LOGICAL AND OF A COMPLEMENTED AND B
7 ALUF,OR LOGICAL OR OF A AND B
8 ALUF,A-1 DECREMENT A OPERAND
9 ALUF,A,/2 FBUS = ALU.OUTPUT/2; FBUS(31) = CARRY
10 ALUF,A-B A MINUS B OPERAND (carry selects -1 or +C)
11 ALUF,A-B,*2 FBUS = ALU.OUTPUT*2
12 ALUF,A+B,/2 FBUS = ALU.OUTPUT/2
13 ALUF,A+B A OPERAND ADDED B OPERAND
14 ALUF,B-A B OPERAND MINUS A OPERAND (carry selects -1 or +C)
15 ALUF,A+B,*2 FBUS = ALU.OUTPUT*2

CARRY (Bits 117-116)

Value Mnemonic Description
0 (zero) Carry input = 0
1 CRYF,ONE ONE AS CARRY
2 CRYF,C C FROM STATUS AS CARRY
3 CRYF,MC MICRO CARRY AS CARRY

EXUC (Bits 115-115)

Execute unconditional - for sneak instructions during pipeline breaks

Value Mnemonic Description
0 (normal) Normal conditional execution
1 EXUC EXECUTE UNCONDITIONAL

COND_ALU (Bits 114-114)

Enable conditional ALU operation

Value Mnemonic Description
0 (true only) ALU uses true function only
1 C,ALU ENABLE CONDITIONAL ALU OPERATION

Q_REGISTER: Q shift register control

Q_REG (Bits 113-111)

Q-register operation (hold, load, shift, rotate)

Value Mnemonic Description
0 (hold) No Q-register operation
1 Q,F Q <- ALU OUTPUT
2 Q,Q*DIV Q <- Q*2; Q(00) <- DIVR (divide shift)
3 Q,Q*LOG Q <- Q*2; Q(00) <- 0 (logical shift left)
4 Q,Q/ARI Q <- Q/2; Q(SIGN.BIT) <- Q(SIGN.BIT) (arithmetic shift right)
5 Q,Q/LOG Q <- Q/2; Q(SIGN.BIT) <- 0 (logical shift right)
6 Q,Q/ROT Q <- Q/2; Q(SIGN.BIT) <- Q(00) (rotate right)
7 Q,Q*ROT Q <- Q*2; Q(00) <- Q(SIGN.BIT) (rotate left)

AAP: Additional Arithmetic Processor control

AAP_CTRL (Bits 110-103)

AAP type (bits 7-5) + operation (bits 4-0)

TYPE (Bits 110-108)

Value Mnemonic Description
0 (none) No AAP operation
1 AAP1 ND-570 floating point unit
2 AAP2 Extended AAP
6 EXPISO Exponent isolate (standalone)

AAP1_OP (Bits 107-103)

Value Mnemonic Description
1 AAP1,CTF CONVERT TO FLOATING
2 AAP1,CTDF CONVERT TO DOUBLE FLOATING
3 AAP1,UCTF UNSIGNED CONVERT TO FLOATING
4 AAP1,UCTDF UNSIGNED CONVERT TO DOUBLE FLOATING
5 AAP1,CTBYR CONVERT TO BYTE ROUNDED
6 AAP1,CTHWR CONVERT TO HALFWORD ROUNDED
7 AAP1,CTWR CONVERT TO WORD ROUNDED
8 AAP1,CTBY CONVERT TO BYTE
9 AAP1,CTHW CONVERT TO HALFWORD
10 AAP1,CTW CONVERT TO WORD
11 AAP1,INTR INTEGER-PART ROUNDED
12 AAP1,INT INTEGER-PART TRUNCATED
13 AAP1,SHA SHIFT ARITHMETICAL
14 AAP1,SHL SHIFT LOGICAL
15 AAP1,SHR SHIFT ROTATIONAL
16 AAP1,DTOFR CONVERT DOUBLE TO FLOATING ROUNDED
17 AAP1,A+B A+B
18 AAP1,B-A B-A
19 AAP1,B/A B/A
20 AAP1,A-B A-B
21 AAP1,COMP COMPARE (A-B)
22 AAP1,A/B A/B
23 AAP1,DIVP PARTIAL DIVIDE A/B
24 AAP1,A*B A*B
25 AAP1,UMUL UNSIGNED MULTIPLY
26 AAP1,MUL4 MULTIPLY WITH OVERFLOW
27 AAP1,RRF READ AAP REGISTERFILE
28 AAP1,WRF WRITE AAP REGISTERFILE
30 AAP1,CLEAR COPY A TO F / RESET AAP

AAP2_OP (Bits 107-103)

Value Mnemonic Description
0 AAP2,SUBAB SUBTRACT A-B
1 AAP2,ABSSUB MAGNITUDE OF DIFFERENCE
2 AAP2,MUL MULTIPLY
3 AAP2,MULABSA B TIMES MAGNITUDE OF A
4 AAP2,NEG NEGATE
5 AAP2,MULABSB A TIMES MAGNITUDE OF B
6 AAP2,MULNEG MULTIPLY AND NEGATE
7 AAP2,MULNEGA B TIMES NEGATIVE VALUE OF A
8 AAP2,ADD ADD
9 AAP2,ABSADD MAGNITUDE OF SUM
10 AAP2,ADDABS SUM OF MAGNITUDES
11 AAP2,MULNEGB A TIMES NEGATIVE VALUE OF B
12 AAP2,PASS IDENTITY
13 AAP2,MULNEGAB NEGATIVE VALUE OF A TIMES B
14 AAP2,PASSABS ABSOLUTE VALUE
16 AAP2,SUBBA SUBTRACT B-A
17 AAP2,SUBABABS DIFFERENCE OF MAGNITUDES (A-B)
18 AAP2,SUBBAABS DIFFERENCE OF MAGNITUDES (B-A)
20 AAP2,IMUL INTEGER MUL, ONE RESULT
21 AAP2,IMULD INTEGER MUL, TWO RESULTS
22 AAP2,IMULU INTEGER UMUL, ONE RESULT
23 AAP2,IMULUD INTEGER UMUL, TWO RESULTS
24 AAP2,CLEAR CLEAR ONGOING AAP2-SEQUENCE
27 AAP2,CTI CONVERT TO INTEGER
28 AAP2,CTIR CONVERT TO INTEGER ROUNDED
29 AAP2,CTF CONVERT TO FLOATING
30 AAP2,CBF CONVERT TO OTHER FLOATING FORMAT
31 AAP2,EXPISO EXPONENT ISOLATE

TIMING: Microcycle timing control

TIMING (Bits 102-101)

Cycle time selection

Value Mnemonic Description
0 (NORM) Normal cycle time
1 SLOW1 CYCLE TIME = 110 N.SEC.
2 SLOW2 CYCLE TIME = 160 N.SEC.
3 SLOW3 Slowest cycle time

DATATYPE: Data type control

DATATYPE (Bits 100-98)

Data type for operation

Value Mnemonic Description
0 TYP,W DATA TYPE IS WORD (32 bits)
1 TYP,F DATA TYPE IS SINGLE FLOATING (32 bits)
2 TYP,HW DATA TYPE IS HALF WORD (16 bits)
3 TYP,BY DATA TYPE IS BYTE (8 bits)
4 TYP,BI DATA TYPE IS BIT
5 TYP,DF DATA TYPE IS DOUBLE FLOATING (64 bits)
6 TYP,DD DATA TYPE IS 128 BITS FLOATING POINT
7 TYP,DR DATA TYPE CONTROLLED BY ICA (OR-logic)

OPERANDS: ALU operand selection

OR_ENABLE (Bits 97-97)

Enable OR control logic for operand/destination selection

Value Mnemonic Description
0 (disabled) OR control disabled
1 ORA/ORD OR control enabled

A_OP (Bits 96-89)

A-operand select (3-bit group XXX + 5-bit register ZZZZZ)

Value Mnemonic Description
0 A,BM00 A-BUS IS BIT MASK 0
1 A,BM01 A-BUS IS BIT MASK 1
2 A,BM02 A-BUS IS BIT MASK 2
3 A,BM03 A-BUS IS BIT MASK 3
4 A,BM04 A-BUS IS BIT MASK 4
5 A,BM05 A-BUS IS BIT MASK 5
6 A,BM06 A-BUS IS BIT MASK 6
7 A,BM07 A-BUS IS BIT MASK 7
8 A,BM10 A-BUS IS BIT MASK 10
9 A,BM11 A-BUS IS BIT MASK 11
10 A,BM12 A-BUS IS BIT MASK 12
11 A,BM13 A-BUS IS BIT MASK 13
12 A,BM14 A-BUS IS BIT MASK 14
13 A,BM15 A-BUS IS BIT MASK 15
14 A,BM16 A-BUS IS BIT MASK 16
15 A,BM17 A-BUS IS BIT MASK 17
16 A,BM20 A-BUS IS BIT MASK 20
17 A,BM21 A-BUS IS BIT MASK 21
18 A,BM22 A-BUS IS BIT MASK 22
19 A,BM23 A-BUS IS BIT MASK 23
20 A,BM24 A-BUS IS BIT MASK 24
21 A,BM25 A-BUS IS BIT MASK 25
22 A,BM26 A-BUS IS BIT MASK 26
23 A,BM27 A-BUS IS BIT MASK 27
24 A,BM30 A-BUS IS BIT MASK 30
25 A,BM31 A-BUS IS BIT MASK 31
26 A,BM32 A-BUS IS BIT MASK 32
27 A,BM33 A-BUS IS BIT MASK 33
28 A,BM34 A-BUS IS BIT MASK 34
29 A,BM35 A-BUS IS BIT MASK 35
30 A,BM36 A-BUS IS BIT MASK 36
31 A,BM37 A-BUS IS BIT MASK 37
32 A,X1 A-BUS IS INDEX REGISTER X1
33 A,X2 A-BUS IS INDEX REGISTER X2
34 A,X3 A-BUS IS INDEX REGISTER X3
35 A,X4 A-BUS IS INDEX REGISTER X4
36 A,A1 A-BUS IS FLOATING MOST REGISTER A1
37 A,A2 A-BUS IS FLOATING MOST REGISTER A2
38 A,A3 A-BUS IS FLOATING MOST REGISTER A3
39 A,A4 A-BUS IS FLOATING MOST REGISTER A4
40 A,SC1 A-BUS IS SCRATCH REGISTER 1
41 A,SC2 A-BUS IS SCRATCH REGISTER 2
42 A,SC3 A-BUS IS SCRATCH REGISTER 3
43 A,SC4 A-BUS IS SCRATCH REGISTER 4
44 A,E1 A-BUS IS FLOATING LEAST REGISTER E1
45 A,E2 A-BUS IS FLOATING LEAST REGISTER E2
46 A,E3 A-BUS IS FLOATING LEAST REGISTER E3
47 A,E4 A-BUS IS FLOATING LEAST REGISTER E4
48 A,SC5 A-BUS IS SCRATCH REGISTER 5
49 A,SC6 A-BUS IS SCRATCH REGISTER 6
50 A,SC7 A-BUS IS SCRATCH REGISTER 7
51 A,SC10 A-BUS IS SCRATCH REGISTER 10
52 A,SC11 A-BUS IS SCRATCH REGISTER 11
53 A,SC12 A-BUS IS SCRATCH REGISTER 12
54 A,SC13 A-BUS IS SCRATCH REGISTER 13
55 A,SC14 A-BUS IS SCRATCH REGISTER 14
56 A,DATA A-BUS IS DATA INPUT REGISTER
57 A,BMLC A-BUS IS BIT MASK FROM LOOP COUNTER
58 A,AAPRES A-BUS IS AAP RESULT
59 A,Q A-BUS IS Q-REGISTER
60 A,ALU,STS A-BUS IS ALU STATUS BITS
61 A,ALU,TE A-BUS IS ALU TRAP ENABLE BITS
62 A,PXBM A-BUS IS POST-INDEX BIT-MASK
63 A,ALU,REG37 [UNDOCUMENTED GUESS] A-BUS IS ALU REGISTER 37 - very common (674 uses), possibly special/reserved register
64 A,DMM,PSTP A-BUS IS DMM PSTP REGISTER
65 A,DMM,PUWP A-BUS IS DMM PUWP REGISTER
66 A,DMM,LA A-BUS IS DMM LA REGISTER
67 A,DMM,WR A-BUS IS DMM WR REGISTER
68 A,DMM,CAP A-BUS IS DMM CAPABILITY
69 A,DMM,PS A-BUS IS DMM PS REGISTER
70 A,DMM,PHS A-BUS IS DMM PHS REGISTER
71 A,DMM,DOM A-BUS IS DMM DOM REGISTER
72 A,DMM,MEM A-BUS IS DATA MEMORY
74 A,DMM,PHYS A-BUS IS DATA PHYSICAL ADDRESS
75 A,DMM,STS A-BUS IS DMM STS REGISTER
79 A,DMM,ADOM A-BUS IS DMM ADOM REGISTER
80 A,IMM,PSTP A-BUS IS IMM PSTP REGISTER
81 A,IMM,PUWP A-BUS IS IMM PUWP REGISTER
82 A,IMM,LA A-BUS IS IMM LA REGISTER
83 A,IMM,WR A-BUS IS IMM WR REGISTER
84 A,IMM,CAP A-BUS IS IMM CAPABILITY
85 A,IMM,PS A-BUS IS IMM PS REGISTER
86 A,IMM,PHS A-BUS IS IMM PHS REGISTER
87 A,IMM,DOM A-BUS IS IMM DOM REGISTER
88 A,IMM,MEM A-BUS IS INSTRUCTION MEMORY
90 A,IMM,PHYS A-BUS IS INSTRUCTION PHYSICAL ADDR
91 A,IMM,STS A-BUS IS IMM STS REGISTER
95 A,IMM,ADOM A-BUS IS IMM ADOM REGISTER
96 A,SPEC,MOD A-BUS IS MODUS-REGISTER
97 A,SPEC,AOB A-BUS IS AOB-REGISTER
98 A,SPEC,IAR A-BUS IS IAR-REGISTER
99 A,SPEC,OC,DP A-BUS IS DPA-PART OF OC
100 A,SPEC,OC,AD A-BUS IS NADDR-PART OF OC
101 A,SPEC,OC,CO A-BUS IS CONTROL-PART OF OC
102 A,SPEC,AC A-BUS IS ADDRESS-CACHE
103 A,SPEC,IC A-BUS IS INSTRUCTION-CACHE
104 A,SPEC,OLAH2 A-BUS IS OLAH2-REGISTER
105 A,SPEC,AFLAG A-BUS IS ACCP-FLAG-REGISTER
106 A,SPEC,AOBASR A-BUS IS COMM.-REGISTER
107 A,SPEC,IRL A-BUS IS INSTR.-READ-LATCH
108 A,SPEC,DACR A-BUS IS DAC-REGISTER
109 A,SPEC,ACH A-BUS IS AC-HOLD-REGISTER
110 A,SPEC,DLAH A-BUS IS DLA-HOLD-REGISTER
111 A,SPEC,LA A-BUS IS LA-LATCH
112 A,SPEC,FLA A-BUS IS FORWARD-LA-LATCH
113 A,SPEC,DPSDOM A-BUS IS DATA PS/DOM
114 A,SPEC,IPSDOM A-BUS IS INSTRUCTION PS/DOM
115 A,SPEC,IDIR A-BUS IS INSTR.-CACHE-DIR
116 A,SPEC,DCALA A-BUS IS DATA-CACHE LA
117 A,SPEC,CSTRC A-BUS IS CSTRC
118 A,SPEC,DCADAT A-BUS IS DATA-CACHE DATA
119 A,SPEC,STRACE A-BUS IS STRACE
120 A,SPEC,ITRACE A-BUS IS ITRACE
121 A,SPEC,ATRACE A-BUS IS ATRACE
122 A,SPEC,DTRACE A-BUS IS DTRACE
123 A,SPEC,CTRACE A-BUS IS CTRACE
124 A,SPEC,REG34 [UNDOCUMENTED GUESS] A-BUS IS SPEC REGISTER 34 - unknown purpose, single use with ALU,XOR at address 004615
128 A,MIC,MISTS A-BUS IS MIC STATUS REGISTER
129 A,MIC,VECT A-BUS IS MIC VECTOR REGISTER
130 A,MIC,RFA1 A-BUS IS RF-ADDRESS REGISTER 1
131 A,MIC,RFA2 A-BUS IS RF-ADDRESS REGISTER 2
132 A,MIC,STS A-BUS IS MIC STATUS BITS
133 A,MIC,TE A-BUS IS MIC TRAP ENABLE BITS
134 A,MIC,CURR A-BUS IS MIC CURR REGISTER
135 A,MIC,CNT32 A-BUS IS MIC 32-BIT COUNTER
140 A,RF1 A-BUS IS REG.FILE POINTED TO BY RF1 REGISTER
141 A,RF2 A-BUS IS REG.FILE POINTED TO BY RF2 REGISTER
142 A,RF1D A-BUS IS REG.FILE POINTED TO BY RF1, RF1 DECREMENT
143 A,RF2D A-BUS IS REG.FILE POINTED TO BY RF2, RF2 DECREMENT
144 A,SRF0 A-BUS IS SRF-WORD 0
145 A,SRF1 A-BUS IS SRF-WORD 1
146 A,SRF2 A-BUS IS SRF-WORD 2
147 A,SRF3 A-BUS IS SRF-WORD 3
148 A,SRF4 A-BUS IS SRF-WORD 4
149 A,SRF5 A-BUS IS SRF-WORD 5
150 A,SRF6 A-BUS IS SRF-WORD 6
151 A,SRF7 A-BUS IS SRF-WORD 7
152 A,SRF10 A-BUS IS SRF-WORD 10
153 A,SRF11 A-BUS IS SRF-WORD 11
154 A,SRF12 A-BUS IS SRF-WORD 12
155 A,SRF13 A-BUS IS SRF-WORD 13
156 A,SRF14 A-BUS IS SRF-WORD 14
157 A,SRF15 A-BUS IS SRF-WORD 15
158 A,SRF16 A-BUS IS SRF-WORD 16
159 A,SRF17 A-BUS IS SRF-WORD 17
160 A,IDU,TE A-BUS IS MIC TRAP ENABLE REGISTER
161 A,IDU,HL A-BUS IS IDU HL REGISTER
162 A,IDU,LL A-BUS IS IDU LL REGISTER
163 A,IDU,LIMC A-BUS IS IDU LIMIT CONTROL REGISTER
164 A,IDU,B2 A-BUS IS IDU BUFFER-2
165 A,IDU,STS A-BUS IS IDU STATUS REGISTER
166 A,IDU,DPA A-BUS IS DPA-BUS-REGISTER
195 A,IAC,ILAR A-BUS IS IAC LA-REGISTER
196 A,IAC,S A-BUS IS IAC SCRATCH REGISTER
197 A,IAC,Y A-BUS IS IAC Y REGISTER
198 A,IAC,SP A-BUS IS IAC SP REGISTER
202 A,IAC,L A-BUS IS IAC L (LINK) REGISTER
203 A,IAC,P A-BUS IS IAC P REGISTER
204 A,IAC,NPC A-BUS IS IAC NPC REGISTER
227 A,DAC,DLAR A-BUS IS DAC LA-REGISTER
228 A,DAC,EAO A-BUS IS DAC EAO REGISTER
229 A,DAC,EA1 A-BUS IS DAC EA1 REGISTER
230 A,DAC,EA2 A-BUS IS DAC EA2 REGISTER
231 A,DAC,EA3 A-BUS IS DAC EA3 REGISTER
233 A,MARG A-BUS IS MINI ARGUMENT
234 A,DAC,B A-BUS IS DAC B REGISTER
235 A,DAC,R A-BUS IS DAC R REGISTER
238 A,SARG A-BUS IS SHORT ARGUMENT
239 A,LARG A-BUS IS LONG ARGUMENT
245 A,DAC,XFER [UNDOCUMENTED GUESS] A-BUS IS DAC TRANSFER REGISTER - used at DAC_R_SC10, DAC_R_SC6 for DAC-to-scratch transfers

GROUP (Bits 96-94)

Value Mnemonic Description
0 BMG Bit Mask Group (000)
1 ALU Working Register File (001)
2 MMS Memory Management System (010)
3 SPEC Special Registers (011)
4 MIC Microcode Control (100)
5 IDU Instruction Decode Unit (101)
6 IAC Instruction Address Control (110)
7 DAC Data Address Control (111)

REGISTER (Bits 93-89)

B_OP (Bits 88-84)

B-operand select

Value Mnemonic Description
0 B,X1 B-BUS IS INDEX REGISTER X1
1 B,X2 B-BUS IS INDEX REGISTER X2
2 B,X3 B-BUS IS INDEX REGISTER X3
3 B,X4 B-BUS IS INDEX REGISTER X4
4 B,A1 B-BUS IS FLOATING MOST REGISTER A1
5 B,A2 B-BUS IS FLOATING MOST REGISTER A2
6 B,A3 B-BUS IS FLOATING MOST REGISTER A3
7 B,A4 B-BUS IS FLOATING MOST REGISTER A4
8 B,SC1 B-BUS IS SCRATCH REGISTER SC1
9 B,SC2 B-BUS IS SCRATCH REGISTER SC2
10 B,SC3 B-BUS IS SCRATCH REGISTER SC3
11 B,SC4 B-BUS IS SCRATCH REGISTER SC4
12 B,E1 B-BUS IS FLOATING LEAST REGISTER E1
13 B,E2 B-BUS IS FLOATING LEAST REGISTER E2
14 B,E3 B-BUS IS FLOATING LEAST REGISTER E3
15 B,E4 B-BUS IS FLOATING LEAST REGISTER E4
16 B,SC5 B-BUS IS SCRATCH REGISTER SC5
17 B,SC6 B-BUS IS SCRATCH REGISTER SC6
18 B,SC7 B-BUS IS SCRATCH REGISTER SC7
19 B,SC10 B-BUS IS SCRATCH REGISTER SC10
20 B,SC11 B-BUS IS SCRATCH REGISTER SC11
21 B,SC12 B-BUS IS SCRATCH REGISTER SC12
22 B,SC13 B-BUS IS SCRATCH REGISTER SC13
23 B,SC14 B-BUS IS SCRATCH REGISTER SC14
24 B,LC B-BUS IS LOOP COUNTER (LC)
25 B,Q B-BUS IS Q-REGISTER
26 B,BCD B-BUS IS BCD CORRECTION (1/4 OR 0/8)
27 B,IXC B-BUS IS INDEX-COUNTERS
31 ORB,IN OR B-operand from instruction

DEST (Bits 83-76)

Destination select (3-bit group + 5-bit register)

Value Mnemonic Description
0 D,X1 DESTINATION IS INDEX REGISTER X1
1 D,X2 DESTINATION IS INDEX REGISTER X2
2 D,X3 DESTINATION IS INDEX REGISTER X3
3 D,X4 DESTINATION IS INDEX REGISTER X4
4 D,A1 DESTINATION IS FLOATING MOST REGISTER A1
5 D,A2 DESTINATION IS FLOATING MOST REGISTER A2
6 D,A3 DESTINATION IS FLOATING MOST REGISTER A3
7 D,A4 DESTINATION IS FLOATING MOST REGISTER A4
8 D,SC1 DESTINATION IS SCRATCH REGISTER SC1
9 D,SC2 DESTINATION IS SCRATCH REGISTER SC2
10 D,SC3 DESTINATION IS SCRATCH REGISTER SC3
11 D,SC4 DESTINATION IS SCRATCH REGISTER SC4
12 D,E1 DESTINATION IS FLOATING LEAST REGISTER E1
13 D,E2 DESTINATION IS FLOATING LEAST REGISTER E2
14 D,E3 DESTINATION IS FLOATING LEAST REGISTER E3
15 D,E4 DESTINATION IS FLOATING LEAST REGISTER E4
16 D,SC5 DESTINATION IS SCRATCH REGISTER SC5
17 D,SC6 DESTINATION IS SCRATCH REGISTER SC6
18 D,SC7 DESTINATION IS SCRATCH REGISTER SC7
19 D,SC10 DESTINATION IS SCRATCH REGISTER SC10
20 D,SC11 DESTINATION IS SCRATCH REGISTER SC11
21 D,SC12 DESTINATION IS SCRATCH REGISTER SC12
22 D,SC13 DESTINATION IS SCRATCH REGISTER SC13
23 D,SC14 DESTINATION IS SCRATCH REGISTER SC14
24 D,NONE NO DESTINATION
25 D,IXC DESTINATION IS INDEX-COUNTERS CLEAR
26 D,LC DESTINATION IS LOOP COUNTER (LC)
31 D,ALU,REG37 [UNDOCUMENTED GUESS] DESTINATION IS ALU REGISTER 37 - very common (253 uses), possibly special/reserved register
32 D,SPEC,MOD WRITE MODUS REGISTER
33 D,SPEC,AIB WRITE ACCP-INPUT-BUFFER
34 D,SPEC,DCADAT WRITE DATA-CACHE DATA
35 D,SPEC,OC,DP WRITE DPA-PART OF OC
36 D,SPEC,OC,AD WRITE NADDR-PART OF OC
37 D,SPEC,OC,CO WRITE CONTROL-PART OF OC
38 D,SPEC,AC WRITE ADDRESS-CACHE
39 D,SPEC,IC WRITE INSTRUCTION-CACHE
40 D,SPEC,MIB WRITE MIB-REGISTER
41 D,SPEC,TRPARM TRAP-ARM
42 D,SPEC,TRPCLR TRAP-CLEAR
43 D,SPEC,CC WRITE CONTROL-WORD-CACHE
44 D,SPEC,LA WRITE LA-REGISTER
45 D,SPEC,FLA WRITE FORWARD-LA-REGISTER
46 D,SPEC,CLDCA CLEAR DATA-CACHE
47 D,SPEC,CLICA CLEAR INSTRUCTION-CACHE
48 D,SPEC,CTRACE WRITE CTRACE
80 D,DMM,PSTP DESTINATION IS DMM PSTP REGISTER
81 D,DMM,PUWP DESTINATION IS DMM PUWP REGISTER
82 D,DMM,LA DESTINATION IS DMM LA REGISTER
83 D,DMM,WR DESTINATION IS DMM WR REGISTER
84 D,DMM,CAP DESTINATION IS DMM CAPABILITY REGISTER
85 D,DMM,PS DESTINATION IS DMM PS REGISTER
86 D,DMM,PHS DESTINATION IS DMM PHS REGISTER
87 D,DMM,DOM DESTINATION IS DMM DOM REGISTER
88 D,DMM,MEM WRITE MEMORY DMM
89 D,DMM,WTSB DESTINATION IS DMM TSB
90 D,DMM,CTSB DMM TSB CLEAR
91 D,DMM,CTRPOCK TRAP CLEAR AND UNLOCK THE DMM
94 D,DMM,DIRTY DESTINATION IS DMM DIRTY-DOM-PS REGISTER
95 D,DMM,ADOM DESTINATION IS DMM ADOM REGISTER
96 D,IMM,PSTP DESTINATION IS IMM PSTP REGISTER
97 D,IMM,PUWP DESTINATION IS IMM PUWP REGISTER
98 D,IMM,LA DESTINATION IS IMM LA REGISTER
99 D,IMM,WR DESTINATION IS IMM WR REGISTER
100 D,IMM,CAP DESTINATION IS IMM CAPABILITY REGISTER
101 D,IMM,PS DESTINATION IS IMM PS REGISTER
102 D,IMM,PHS DESTINATION IS IMM PHS REGISTER
103 D,IMM,DOM DESTINATION IS IMM DOM REGISTER
104 D,IMM,MEM WRITE MEMORY IMM
105 D,IMM,WTSB DESTINATION IS IMM TSB
106 D,IMM,CTSB IMM TSB CLEAR
107 D,IMM,CTRP TRAP CLEAR AND UNLOCK THE IMM
110 D,IMM,DIRTY DESTINATION IS IMM DIRTY-DOM-PS REGISTER
111 D,IMM,ADOM DESTINATION IS IMM ADOM REGISTER
112 D,MM,PSTP DESTINATION IS IMM AND DMM PSTP REGISTER
113 D,MM,PUWP DESTINATION IS IMM AND DMM PUWP REGISTER
114 D,MM,LA DESTINATION IS IMM AND DMM LA REGISTER
115 D,MM,WR DESTINATION IS IMM AND DMM WR REGISTER
116 D,MM,CAP DESTINATION IS IMM AND DMM CAP REGISTERS
117 D,MM,PS DESTINATION IS IMM AND DMM PS REGISTER
118 D,MM,PHS DESTINATION IS IMM AND DMM PHS REGISTER
119 D,MM,DOM DESTINATION IS IMM AND DMM DOM REGISTER
121 D,MM,WTSB DESTINATION IS IMM AND DMM TSB
122 D,MM,CTSB IMM AND DMM TSB CLEAR
123 D,MM,CTRP TRAP CLEAR AND UNLOCK THE IMM AND DMM
126 D,MM,DIRTY DESTINATION IS IMM AND DMM DIRTY-DOM-PS REGISTER
127 D,MM,ADOM DESTINATION IS IMM AND DMM ADOM REGISTER
128 D,MIC,MISTS DESTINATION IS MIC STATUS REGISTER
129 D,MIC,VECT DESTINATION IS MIC VECTOR REGISTER
130 D,RFA1 DEST. IS RF1 ADDR. REG.
131 D,RFA2 DEST. IS RF2 ADDR. REG.
132 D,MIC,STS DESTINATION IS MIC STS-BITS
133 D,MIC,TE DESTINATION IS MIC TRAP ENABLE BITS
134 D,MIC,BRK DESTINATION IS MIC BREAKPOINT-REGISTER
135 D,MIC,CNT32 DESTINATION IS MIC 32-BIT COUNTER
136 D,MIC,RESTU CLEAR STACK UNDERFLOW
140 D,RF1 DESTINATION IS REG.FILE POINTED TO BY RF1 REGISTER
141 D,RF2 DESTINATION IS REG.FILE POINTED TO BY RF2 REGISTER
142 D,RF1D DESTINATION IS REG.FILE POINTED TO BY RF1, RF1 DECR.
143 D,RF2D DESTINATION IS REG.FILE POINTED TO BY RF2, RF2 DECR.
144 D,SRF0 DESTINATION IS SRF-WORD 0
145 D,SRF1 DESTINATION IS SRF-WORD 1
146 D,SRF2 DESTINATION IS SRF-WORD 2
147 D,SRF3 DESTINATION IS SRF-WORD 3
148 D,SRF4 DESTINATION IS SRF-WORD 4
149 D,SRF5 DESTINATION IS SRF-WORD 5
150 D,SRF6 DESTINATION IS SRF-WORD 6
151 D,SRF7 DESTINATION IS SRF-WORD 7
152 D,SRF10 DESTINATION IS SRF-WORD 10
153 D,SRF11 DESTINATION IS SRF-WORD 11
154 D,SRF12 DESTINATION IS SRF-WORD 12
155 D,SRF13 DESTINATION IS SRF-WORD 13
156 D,SRF14 DESTINATION IS SRF-WORD 14
157 D,SRF15 DESTINATION IS SRF-WORD 15
158 D,SRF16 DESTINATION IS SRF-WORD 16
159 D,SRF17 DESTINATION IS SRF-WORD 17
160 D,IDU,TE DESTINATION IS MIC TRAP ENABLE REGISTER
161 D,IDU,HL DESTINATION IS IDU HL REGISTER
162 D,IDU,LL DESTINATION IS IDU LL REGISTER
163 D,IDU,LIMC DESTINATION IS IDU LIMIT CONTROL REGISTER
164 D,IDU,CSIT CONDITIONAL SETTING OF SINGLE INSTRUCTION-TRAP
165 D,IDU,STS DESTINATION IS IDU STATUS REGISTER
166 D,IDU,AREG DESTINATION IS IDU ADDRESS REGISTER
167 D,IDU,IBUF DESTINATION IS IDU IBUF-REGISTER
193 D,IAC,NPC DESTINATION IS IAC NPC REGISTER
194 D,IAC,P DESTINATION IS IAC P REGISTER
196 D,IAC,L DESTINATION IS IAC L (LINK) REGISTER
197 D,IAC,SUML SUM IS TRANSFERRED TO IAC Y REGISTER
200 D,IAC,DPA DESTINATION IS IAC-DPA-REGISTER
205 D,IAC,CLKNPC LA -> NPC
206 D,IAC,CLKP NPC -> P
207 D,IAC,CLKSP P -> SP
225 D,DAC,R DESTINATION IS DAC R (RECORD) REGISTER
226 D,DAC,B DESTINATION IS DAC B (BASE) REGISTER
227 D,DAC,SUMB SUM IS TRANSFERRED TO DAC B REGISTER
228 D,DAC,REG04 [UNDOCUMENTED GUESS] DESTINATION IS DAC REGISTER 04 - 8 occurrences
229 D,DAC,REG05 [UNDOCUMENTED GUESS] DESTINATION IS DAC REGISTER 05 - 12 occurrences
232 D,DAC,DPA DESTINATION IS DAC DPA-REGISTER
252 D,DAC,LDRES [UNDOCUMENTED GUESS] DESTINATION IS DAC LOAD RESULT REGISTER - used at LOADR, LOADCT_R, LOADRB_R with READ operations

GROUP (Bits 83-81)

Value Mnemonic Description
0 ALU Working Register File (000)
1 SPEC Special Registers (001)
2 MMS_NOOP Memory Management NOOP (010)
3 MMS_DMM Memory Management DMM (011)
4 MIC Microcode Control (100)
5 IDU Instruction Decode Unit (101)
6 IAC Instruction Address Control (110)
7 DAC Data Address Control (111)

REGISTER (Bits 80-76)


STATUS: Status and flag control

STATUS (Bits 75-72)

Status bits control

Value Mnemonic Description
0 (hold) Hold status unchanged
1 K,ONE SET K (FLAG) 1 TO K
2 K,ZRO CLEAR K (FLAG) 0 TO K
3 K,1IFZ SET K TO 1 IF ALU OPERATION IS 0
4 ST,SAVA SAVE STATUS FROM ALU OPERATION
5 ST,SAVC SAVE STATUS FROM ALU IN COMPARE
6 ST,SAVF SAVE STATUS FROM FLOATING OPERATION
7 ST,SAVB SAVE STATUS FROM BCD OPERATION
8 ST,LOAD LOAD ALU STATUS
9 ST,SAVM SAVE MIXED STATUS FOR INTEGER MULTIPLY
12 ST,ACCA SAVE AND ACCUMULATE ALU STATUS
13 ST,ACCM SAVE AND ACCUMULATE MIXED STATUS
14 ST,ACCF SAVE AND ACCUMULATE AAP STATUS
15 TE,ALU,LOAD LOAD ALU TRAP ENABLE BITS

IXC_INCR (Bits 71-71)

Index counter increment

Value Mnemonic Description
0 (hold) No index counter adjustment
1 IXADJ INDEX COUNTER INCREMENT

LC_DECR (Bits 70-70)

Loop counter decrement

Value Mnemonic Description
0 (hold) No loop counter decrement
1 LCDECR DECREMENT THE LOOP COUNTER

SEQUENCER: Microprogram sequence control

COND_SEQ (Bits 69-69)

Enable conditional sequence

Value Mnemonic Description
0 (none) Use true sequence only
1 C,SEQ ENABLE CONDITIONAL SEQUENCE

SEQ_TRUE (Bits 68-65)

Sequence control when condition true (2-bit type + 2-bit stack)

TYPE (Bits 68-67)

Value Mnemonic Description
0 T,JMP JUMP TO ADDRESS (1 cycle)
1 T,JMPREL JUMP RELATIVE / VECTOR (2 cycles)
2 T,RETURN RETURN TO SEQUENCER ADDRESS (2 cycles)
3 T,NEXT NEXT MICRO INSTRUCTION (2 cycles)

STACK (Bits 66-65)

Value Mnemonic Description
0 T,HOLD HOLD SEQUENCER STACK
1 T,POP POP SEQUENCER STACK
2 T,LOAD LOAD SEQUENCER STACK
3 T,PUSH PUSH SEQUENCER STACK

SEQ_FALSE (Bits 64-61)

Sequence control when condition false (2-bit type + 2-bit stack)

TYPE (Bits 64-63)

Value Mnemonic Description
0 F,JMP FALSE JUMP TO ADDRESS
1 F,JMPREL FALSE VECTOR JUMP TO ADDRESS
2 F,RETURN FALSE RETURN TO TOP OF STACK
3 F,NEXT FALSE NEXT MICRO INSTRUCTION

STACK (Bits 62-61)

Value Mnemonic Description
0 F,HOLD FALSE HOLD SEQUENCER STACK
1 F,POP FALSE POP SEQUENCER STACK
2 F,LOAD FALSE LOAD SEQUENCER STACK
3 F,PUSH FALSE PUSH SEQUENCER STACK

INVSEQ (Bits 60-60)

Invert test condition for sequence selection

Value Mnemonic Description
0 (none) Use condition as-is
1 INVSEQ INVERT TEST CONDITION FOR SEQUENCE

CSAVE (Bits 59-59)

Save test condition to stack

Value Mnemonic Description
0 (hold) Don't save condition
1 CSAVE PUSH TEST CONDITION TO STACK(2)

TESTOBJ (Bits 58-53)

Test condition select

Value Mnemonic Description
0 COND,MSEXO EXOR OF S AND O FROM ALU RESULT
1 COND,MSORZ OR OF S AND Z FROM ALU OPERATION
2 COND,SORZ OR OF S AND Z FROM STATUS (S1)
3 COND,MCNZ AND OF C AND NOT Z FROM ALU OPERATION
8 COND,CNZ AND OF C AND NOT Z FROM STATUS (S1)
9 COND,MZRO Z FROM ALU OPERATION
10 COND,MCRY C FROM ALU OPERATION
11 COND,MSGN S FROM ALU OPERATION
16 COND,MOVFL O FROM ALU OPERATION
17 COND,ZRO Z FROM S1
18 COND,CRY C FROM S1
19 COND,SGN S FROM S1
20 COND,K K FROM S1
21 COND,OVFL O FROM S1
24 COND,PARITY PARITY OF LEAST SIGNIFICANT BYTE OF F-BUS
25 COND,Q0 Q-REGISTER BIT 0
26 COND,SAVC1 TOP BIT OF SAVED CONDITION STACK
27 COND,SAVC2 BOTTOM BIT OF SAVED CONDITION STACK
28 COND,LCZ LOOP COUNTER ZERO RESULT
32 COND,ENTER CHECK FOR ENT- INSTRUCTIONS
34 COND,DATOP CHECK FOR DATA AS OPERAND
35 COND,CONOP CHECK FOR CONSTANT AS OPERAND
36 COND,PDONE PART DONE FROM STATUS (S1)
37 COND,MFS S FROM FLOATING AAP
40 COND,MFO O FROM FLOATING AAP
41 COND,MFU U FROM FLOATING AAP
42 COND,MDZ DIVIDE BY 0 FROM FLOATING AAP
43 COND,MIVO INVALID OPERATION FROM BCD AAP
44 COND,MBO O FROM BCD AAP
48 COND,RF1OCT ZERO IN RF-ADDRESS 1 BITS 0-2
49 COND,RF2OCT ZERO IN RF-ADDRESS 2 BITS 0-2
56 COND,GOOPS GET-TYPE IS G,OOPS
57 COND,AQSLZ Q0 FOR ALU, LCZ FOR SEQ.
59 COND,IRALT FIRST-OPERAND IS ALT-ADDRESSED
60 COND,CALL MACROINSTR. IS CALL
61 COND,ENTM MACROINSTR. IS ENTM
62 COND,ENTT MACROINSTR. IS ENTT
63 COND,JUMPG MACROINSTR. IS JUMPG

IAC: Instruction Address Control

ABR (Bits 52-51)

Alternative branch control

Value Mnemonic Description
0 (none) No alternative branch
1 ABR,NEXT CALCULATE NEXT INSTRUCTION STREAM ADDRESS
2 ABR,NPCREL CALCULATE JUMP TARGET ADDRESS
3 ABR,NEXTL CALCULATE NEXT ADDRESS TO LINK REGISTER

TBC (Bits 50-48)

Target branch cache control

Value Mnemonic Description
0 TBC,NEXT CACHE WRITE NEXT INSTRUCTION STREAM ADDRESS
1 TBC,SUBR CACHE WRITE SUBROUTINE ADDRESS
2 TBC,L CACHE WRITE LINK REGISTER (ASSUMING)
3 TBC,NPCREL CACHE WRITE NPC RELATIVE JUMP ADDRESS
4 TBC,PREL CACHE WRITE P RELATIVE JUMP ADDRESS
6 TBC,INCILAR ILAR + 4 -> ILAR
7 TBC,NOOP NO TBC-OPERATION

GET (Bits 47-44)

Instruction/operand fetch control

Value Mnemonic Description
0 (none) No fetch operation
1 CLEAR CLEAR IAC
3 ISAMP INTERRUPT SAMPLE
4 G,OOPS GET NEXT INSTRUCTION AND OPERAND SPECIFIER
5 G,OOPS,T GET NEXT INSTRUCTION AND OPERAND SPECIFIER IF TRUE
6 G,OOPS,F GET NEXT INSTRUCTION AND OPERAND SPECIFIER IF FALSE
7 G,COOPS GET NEXT INSTRUCTION AND OPERAND AFTER CALL
8 G,DIR1 GET IMMEDIATE OPERAND 1 BYTE LONG
9 G,DIR2 GET IMMEDIATE OPERAND 2 BYTES LONG
10 G,OPS GET SECOND OR LATER OPERAND SPECIFIER
11 G,DIR4 GET IMMEDIATE OPERAND 4 BYTES LONG
13 G,OPSTRD GET SECOND OPERAND SPECIFIER FOR STRING INSTR
14 G,TOOPS GET NEXT INSTRUCTION CODE, FOR TESTING ONLY
15 LOADLA SET START ADDRESS FROM IB TO LA

CONTROL: Miscellaneous control

STOP (Bits 43-43)

Stop microprogram execution

Value Mnemonic Description
0 (continue) Continue execution
1 STOP STOP-MICROPROGRAM

AAPSYNC (Bits 42-42)

Wait for AAP ready

Value Mnemonic Description
0 (none) Normal operation
1 AAPSYNC WAIT FOR AAP READY

MEMORY: Data memory control

MEMORY (Bits 41-32)

Memory control (split field: bit 41 + bits 34-32)

Value Mnemonic Description
0 (none) No data request
1 LADDR PERFORM A LADDER REQUEST
2 WR,POF PERFORM A PHYSICAL WRITE WITH MMS
3 CCD CLEAR CACHE AND DUMP DIRTY
4 WR,PHYS WRITE PHYSICAL SEGMENT
5 WR,DOM WRITE DATA MEMORY IN NORMAL DOMAIN
6 WR,ADOM WRITE DATA MEMORY IN ALTERNATIVE DOMAIN
7 WRITE WRITE DATA MEMORY
8 QVACC FORCE QVACC (USE WITH A,IAC, AND LOADLA)
9 RD,POF PERFORM A PHYSICAL READ WITH MMS
11 RD,PX READ DATA MEMORY, WRITE PERMIT REQUIRED
12 RD,PHYS READ PHYSICAL SEGMENT
13 RD,DOM READ DATA MEMORY IN NORMAL DOMAIN
14 RD,ADOM READ DATA MEMORY IN ALTERNATIVE DOMAIN
15 READ READ DATA MEMORY

EA_SAVE (Bits 39-38)

EA save control

Value Mnemonic Description
0 (none) No EA save
1 EA1SAVE SAVE ADDRESS IN EA1 AND EAO
2 EA2SAVE SAVE ADDRESS IN EA2 AND EAO
3 EA3SAVE SAVE ADDRESS IN EA3 AND EAO

MEMOT (Bits 37-37)

Memory request if data operand

Value Mnemonic Description
0 (req) Request
1 C,MEMOT MEMORY REQUEST IF DATA-OPERAND

ADACT (Bits 35-35)

Address arithmetic activate

Value Mnemonic Description
0 (hold) Hold
1 ADACT ADDRESS ARITHMETIC ACTIVATE

ADDRESS: Address and argument fields

ABS_ADDR (Bits 31-16)

Absolute microprogram jump address (also overlaps with long/short argument)

LARG (Bits 31-0)

Long Argument (32-bit)

SARG (Bits 15-0)

Short Argument (16-bit, sign extended)

MARG (Bits 7-0)

Mini Argument (8-bit)

AA (Bits 15-13)

Address A-operand

Value Mnemonic Description
0 AA,0 ADDRESS A OPERAND IS ZERO
1 AA,MARG ADDRESS A OPERAND IS MINIARGUMENT
2 AA,DISP ADDRESS A OPERAND IS DISPLACEMENT
3 AA,DATA ADDRESS A OPERAND IS DATA REGISTER
4 AA,EAO ADDRESS A OPERAND IS EAO REGISTER
5 AA,EA1 ADDRESS A OPERAND IS EA1 REGISTER
6 AA,EA2 ADDRESS A OPERAND IS EA2 REGISTER
7 AA,EA3 ADDRESS A OPERAND IS EA3 REGISTER

AB (Bits 12-9)

Address B-operand

Value Mnemonic Description
0 AB,0 ADDRESS B OPERAND IS ZERO
1 AB,MARG ADDRESS B OPERAND IS MINIARGUMENT
2 AB,B ADDRESS B OPERAND IS BASE (B) REGISTER
3 AB,R ADDRESS B OPERAND IS RECORD (R) REGISTER
4 AB,IX1 ADDRESS B OPERAND IS INDEX REGISTER X1
5 AB,IX2 ADDRESS B OPERAND IS INDEX REGISTER X2
6 AB,IX3 ADDRESS B OPERAND IS INDEX REGISTER X3
7 AB,IX4 ADDRESS B OPERAND IS INDEX REGISTER X4
8 AB,CMBRET RETURN FROM CMISS U-CODE
9 AB,ADR EAO IF RECYCLE NOT NECESSARY
10 AB,EA1DIR EA1 IF RECYCLE NOT NECESSARY
11 AB,ADR+4 PREVIOUS ADDRESS +4 IF RECYCLE NOT NECESSARY
12 AB,X1ORS DESC(X)(I1), I1 SCALED ACCORDING TO INSTRUCTION
13 AB,X2ORS DESC(X)(I2), I2 SCALED ACCORDING TO INSTRUCTION
14 AB,X3ORS DESC(X)(I3), I3 SCALED ACCORDING TO INSTRUCTION
15 AB,X4ORS DESC(X)(I4), I4 SCALED ACCORDING TO INSTRUCTION

SCAL (Bits 8-6)

Index scaling

Value Mnemonic Description
0 IX*1 SCALING = *1 (Byte)
1 IX*2 SCALING = *2 (Halfword)
2 IX*4 SCALING = *4 (Word/Single float)
3 IX*8 SCALING = *8 (Double float)
4 IX/8 SCALING = /8 (Bit)
5 IX*16 SCALING = *16 (80-bit floating)

ORCON (Bits 5-0)

OR logic control field

ORCON_N (Bits 5-5)

Value Mnemonic Description
0 (current) OR-CONTROL IS FOR CURRENT CYCLE
1 OR.N OR-CONTROL IS FOR NEXT CYCLE

ORCON_E (Bits 4-4)

Value Mnemonic Description
0 (disabled) EXTENSION REGISTER DISABLED
1 OR,NE ENABLE EXTENSION REGISTER IN NEXT MICRO CYCLE

ORCON_A (Bits 3-2)

Value Mnemonic Description
0 ORA,IN OR A OPERAND FROM INSTRUCTION
1 ORA,OP OR A OPERAND FROM OPERAND SPECIFIER
3 ORA,ALTEN OR A OPERAND FROM STRING SOURCE OPERAND

ORCON_D (Bits 1-0)

Value Mnemonic Description
0 ORD,IN OR DESTINATION FROM INSTRUCTION
1 ORD,OP OR DESTINATION FROM OPERAND SPECIFIER
2 ORD,OP1 OR DESTINATION FROM FIRST OPERAND SPECIFIER
3 ORD,ALTEN OR DESTINATION FROM STRING DEST. OPERAND

Composite ALU Mnemonics (Assembler Shortcuts)

The following mnemonics are composite forms that combine an ALU operation with a CARRY selection. These are shortcuts supported by the assembler that expand to the base ALU operation plus the appropriate carry modifier.

ALU True Path Composites

These combine ALU operations (bits 127-124) with CRY,ONE (carry=1, bits 123-122):

Composite Mnemonic Expands To Description
ALU,A+1 ALU,A + CRY,ONE A operand plus 1
ALU,A+B+1 ALU,A+B + CRY,ONE A plus B plus 1
ALU,A-B ALU,A-B + CRY,ONE A minus B (with borrow compensation)
ALU,A-B,*2 ALU,A-B,*2 + CRY,ONE (A minus B) times 2
ALU,B-A ALU,B-A + CRY,ONE B minus A (with borrow compensation)

These combine ALU operations with CRY,C (carry from status):

Composite Mnemonic Expands To Description
ALU,A-B-1+C ALU,A-B + CRY,C A minus B minus 1 plus status carry

These use base carry=0:

Composite Mnemonic Expands To Description
ALU,A-B-1 ALU,A-B + (zero) A minus B minus 1
ALU,A-B-1,*2 ALU,A-B,*2 + (zero) (A minus B minus 1) times 2
ALU,B-A-1 ALU,B-A + (zero) B minus A minus 1

ALU False Path Composites

Same pattern as True path but using ALUF and CRYF prefixes:

Composite Mnemonic Expands To Description
ALUF,A+1 ALUF,A + CRYF,ONE A operand plus 1
ALUF,A+B+1 ALUF,A+B + CRYF,ONE A plus B plus 1
ALUF,A-B ALUF,A-B + CRYF,ONE A minus B (with borrow compensation)
ALUF,A-B,*2 ALUF,A-B,*2 + CRYF,ONE (A minus B) times 2
ALUF,B-A ALUF,B-A + CRYF,ONE B minus A (with borrow compensation)
ALUF,A-B-1+C ALUF,A-B + CRYF,C A minus B minus 1 plus status carry
ALUF,B-A-1+C ALUF,B-A + CRYF,C B minus A minus 1 plus status carry
ALUF,A-B-1 ALUF,A-B + (zero) A minus B minus 1
ALUF,A-B-1,*2 ALUF,A-B,*2 + (zero) (A minus B minus 1) times 2
ALUF,B-A-1 ALUF,B-A + (zero) B minus A minus 1

Note: The disassembler displays the base ALU operation and CARRY as separate mnemonics (e.g., "ALU,A CRY,ONE" instead of "ALU,A+1"). This provides more explicit information about the actual microcode encoding.