Computer history: Control Data 6000 series Peripheral Processor instruction set
Control Data 6000 series Peripheral Processor instruction set
Instruction | Operation | Variable(s) | Description | Clock cycles |
---|---|---|---|---|
00x | Pass | Pass | 1 | |
01d m | LJM | m,d | Long jump to address m+(d) | 3 |
02d m | RJM | m,d | Return jump to address dm (m+(d))= P+2; P=m+(d)+1 |
4 |
03r | UJN | r | Unconditional relative (fwd/bkwd) jump to P+r | 1 |
04r | ZJN | r | Relative jump on zero | 1 |
05r | NJN | r | Relative jump on non-zero | 1 |
06r | PJN | r | Relative jump on >= 0 | 1 |
07r | MJN | r | Relative jump on < 0 | 1 |
10r | SHN | r | Shift left circular (+r) or right end-off (-r) | 1 |
11d | LMN | d | Logical difference (A)-d to A | 1 |
12d | LPN | d | Logical product (A)*d to A | 1 |
13d | SCN | d | Selective clear each d bit set in A to A | 1 |
14d | LDN | d | Load d to A | 1 |
15d | LCN | d | Load complement d to A | 1 |
16d | ADN | d | Add (A)+d to A | 1 |
17d | SBN | d | Subtract (A)-d to A | 1 |
20d m | LDC | dm | Load constant dm to A | 2 |
21d m | ADC | dm | Add constant dm+(A) to A | 2 |
22d m | LPC | dm | Logical product constant dm*(A) to A | 2 |
23d m | LMC | dm | Logical difference (A)-constant dm to A | 2 |
2400 | PSN | Pass (no-op) | 3 | |
24d | LRD | d | Load (R) from d and d+1 (relocate register) Cyber 8X5 series only |
3 |
25d | SRD | d | Store (R) to d and d+1 (relocate register) Cyber 8X5 series only |
4 |
260d | EXN, ETN | d | Exchange jump CPU d unconditional to (A) non-Cyber 76/176 models |
2 |
261d | MXN | d | Monitor exchange jump CPU d to (A) Cyber 76/176 models only |
2 |
262d | MAN | d | Monitor exchange jump CPU d to (MA) non Cyber 76/176 models |
2 |
270d | RPN | d | Read program address CPU d to A | 1 |
30d | LDD | d | Load (d) to A | 2 |
31d | ADD | d | Add (A)+(d) to A | 2 |
32d | SBD | d | Subtract (A)-(d) to A | 2 |
33d | LMD | d | Logical difference (A)-(d) to A | 2 |
34d | STD | d | Store (A) to d | 2 |
35d | RAD | d | Replace add (d)+(A) to A and d | 4 |
36d | AOD | d | Replace add one (d)+1 to A and d | 5 |
37d | SOD | d | Replace substract one (d)-1 to A and d | 5 |
40d | LDI | d | Load ((d)) to A | 3 |
41d | ADI | d | Add (A)+((d)) to A | 3 |
42d | SBI | d | Subtract (A)-((d)) to A | 3 |
43d | LMI | d | Logical difference (A)-((d)) to A | 3 |
44d | STI | d | Store (A) to (d) | 3 |
45d | RAI | d | Replace add ((d))+(A) to A and (d) | 5 |
46d | AOI | d | Replace add one ((d))+1 to A and (d) | 6 |
47d | SOI | d | Replace substract one ((d))-1 to A and (d) | 6 |
50d | LDM | m,d | Load (m+(d)) to A | 4 |
51d | ADM | m,d | Add (A)+(m+(d)) to A | 4 |
52d | SBM | m,d | Subtract (A)-(m+(d)) to A | 4 |
53d | LMM | m,d | Logical difference (A)-(m+(d)) to A | 4 |
54d | STM | m,d | Store (A) to m+(d) | 4 |
55d | RAM | m,d | Replace add (m+(d))+(A) to A and m+(d) | 6 |
56d | AOM | m,d | Replace add one (m+(d))+1 to A and m+(d) | 7 |
57d | SOM | m,d | Replace substract one (m+(d))-1 to A and m+(d) | 7 |
60d m | FIM | m,d | Jump to m on input word flag on channel d Cyber 76/176 models only |
? |
60d | CRD | d | Central read from (A) to d (up to d+4) non-Cyber 76/176 models |
12 |
61d m | EIM | m,d | Jump to m if no input word on channel d Cyber 76/176 models only |
? |
61d m | CRM | d | Central read (d) words from (A) to m (up to m+d-1) non-Cyber 76/176 models |
7+(d)*5 |
62d m | IRM | m,d | Jump to m on input record flag on channel d Cyber 76/176 models only |
? |
62d | CWD | d | Central write from d (up to d+4) to (A) non-Cyber 76/176 models |
6 |
63d m | NIM | m,d | Jump to m if no input record flag on channel d Cyber 76/176 models only |
? |
63d m | CWM | m,d | Central write (d) words from m to (A) up to (A)+(d)-1 non-Cyber 76/176 models |
6+(d)*5 |
644d m | SCF | m,d | Jump to m if d flag set Cyber 8X5 series only |
? |
64d m | FOM | m,d | Jump to m on output word flag on channel d Cyber 76/176 models only |
2 |
64d m | AJM | m,d | Jump to m if channel d is active non-Cyber 76/176 models |
? |
654d m | CCF | m,d | Clear channel d flag Cyber 8X5 series only |
? |
65d m | EOM | m,d | Jump to m if no output word flag on channel d Cyber 76/176 models only |
? |
65d m | IJM | m,d | Jump to m if channel d is inactive non-Cyber 76/176 models |
2 |
664d m | SFM | m,d | Jump to m if channel d error flag set Cyber 8X5 series only |
? |
66d m | ORM | m,d | Jump to m on output record flag on channel d Cyber 76/176 models only |
? |
66d m | FJM | m,d | Jump to m if channel d is full non-Cyber 76/176 models |
2 |
674d m | CFM | m,d | Jump to m if channel d error flag clear Cyber 8X5 series only |
2 |
67d m | NOM | m,d | Jump to m if no output record flag on channel d Cyber 76/176 models only |
? |
67d m | EJM | m,d | Jump to m if channel d is empty non-Cyber 76/176 models |
2 |
70d | IAN | d | Input from channel d to A | 2 |
71d m | IAM | m,d | Input (A) words from channel d to m | min. 5+(A)*1 |
72d | OAN | d | Output (A) to channel d | 2 |
73d m | OAM | d | Output (A) words on channel d from m | min. 5+(A)*1 |
74d | RFN | d | Send record flag to channel d Cyber 76/176 models only |
? |
74d | ACN | d | Activate channel d | 2 |
75d | DCN | d | Disconnect channel d | 2 |
76d | FAN | d | Function (A) on channel d | 2 |
77d m | FNC | m,d | Function m on channel d non-Cyber 76/176 models |
2 |
7700 | ESN | Error stop Cyber 76/176 models only |
? |
Legenda | |
---|---|
dm | 18-bit constant = upper 6 bits=d; lower 12 bits=m |
() | contents of |
(d) | contents of lower PP cell d |
((d)) | indirect: contents of the address depicted by the contents of lower PP cell d |
r | 6-bit relative value (sign=bit 5) |
Virtual state 16/32 bit PP instruction set
Instruction | Operation | Variable(s) | Description | Clock cycles |
---|---|---|---|---|
1022d | LPDL | d | Logical product (d) long to A | |
1023d | LPIL | d | Logical product ((d)) long to A | |
1024d m | LPML | d, m | Logical product (m+(d)) long to A | |
1026d | INPN | d | Interrupt processor on memory port d | |
1030d | LDDL | d | Load (d) long to A | |
1031d | ADDL | d | Add (d) long +(A) to A | |
1032d | SBDL | d | Subtract (A)-(d) long to A | |
1033d | LMDL | d | Logical difference (d) long to A | |
1034d | STDL | d | Store (A) to d long | |
1035d | RADL | d | Replace add (d) long | |
1036d | AODL | d | Replace add one (d) long | |
1037d | SODL | d | Replace subtract one (d) long | |
1040d | LDIL | d | Load ((d)) long to A | |
1041d | ADIL | d | Add ((d)) long +(A) to A | |
1042d | SBIL | d | Subtract (A)-((d)) long to A | |
1043d | LMIL | d | Logical difference ((d)) long to A | |
1044d | STIL | d | Store (A) to (d) long | |
1045d | RAIL | d | Replace add ((d)) long | |
1046d | AOIL | d | Replace add one ((d)) long | |
1047d | SOIL | d | Replace subtract one ((d)) long | |
1050d m | LDML | d,m | Load (m+(d)) long to A | |
1051d m | ADML | d,m | Add (A)+(m+(d)) long to A | |
1052d m | SBML | d,m | Subtract (A)-(m+(d)) long to A | |
1053d m | LMML | d, m | Logical difference (m+(d)) long to A | |
1054d m | STML | d,m | Store (m+(d)) long | |
1055d | RAML | d | Replace add (m+(d) long | |
1056d | AOML | d | Replace add one (m+(d)) long | |
1057d | SOML | d | Replace subtract one (m+(d)) long | |
1060d | CRDL | d | Central read from (A) to d long | |
1061d m | CRML | d,m | Central read (d) words from (A) to m long | |
1062d | CWDL | d | Central write to (A) from d long | |
1063d m | CWML | d,m | Central write (d) words to (A) from m long | |
10640 cm | FSJM | m,c | Jump to m if channel c flag set | |
1065x cm | FCJM | m,c | Jump to m if channel c flag clear | |
10710 cm | IAPM | m,c | Input (A) words to m from channel c packed | |
10730 cm | OAPM | m,c | Output (A) words from m from channel c |
Logical operations
- Logical Product is the Boolean AND operation
- Logical addition is the Boolean OR operation
- Logical difference is the Boolean Exclusive OR (EXOR) operation