The following table is an overview of all differences between the SYSTEM00, CDP1801 and CDP1802 instruction sets. Incompatible differences are shown with text in orange. The CDP1804 and CDP1805 (as well as CDP1806) have additional instructions starting with opcode 68.
Note that the SYSTEM00 is an implementation of the COSMAC instruction set likely constructed largely of 7400-series TTL logic, i.e. not a microprocessor. For more details on the SYSTEM00 see also Herb Johnson's page System 00 inspection. The 1801 is a 2-chip implementation which became the 1802.
This info is also available online on the Emma 02 site.
Opcode | SYSTEM 00 | CDP1801 | CDP1802 |
---|---|---|---|
00 | IDLE R0 | IDLE | IDLE |
0N (N<>0) | IDLE RN | undefined | LDN RN |
1N | INC RN | INC RN | INC RN |
2N | DEC RN | DEC RN | DEC RN |
30 | BR xx | BR xx | BR xx |
31 | BNZ xx | undefined | BQ xx |
32 | BZ xx | BZ xx | BZ xx |
33 | BDF xx, BPZ xx or BGE xx | BDF xx, BPZ xx or BGE xx | BDF xx, BPZ xx or BGE xx |
34 | B1 xx | B1 xx | B1 xx |
35 | B2 xx | B2 xx | B2 xx |
36 | B3 xx | B3 xx | B3 xx |
37 | B4 xx | B4 xx | B4 xx |
38 | undefined | SKP or NBR | SKP or NBR |
39 | undefined | undefined | BNQ xx |
3A | undefined | BNZ xx | BNZ xx |
3B | undefined | BNF xx, BM xx, BL xx | BNF xx, BM xx, BL xx |
3C | undefined | BN1 xx | BN1 xx |
3D | undefined | BN2 xx | BN2 xx |
3E | undefined | BN3 xx | BN3 xx |
3F | undefined | BN4 xx | BN4 xx |
4N | LDA RN | LDA RN | LDA RN |
5N | STR RN | STR RN | STR RN |
60 | undefined | OUT 0 | IRX |
6N (1 ≤ N ≤ 3) | OUT N | OUT N | OUT N |
6N (4 ≤ N ≤ 7) | undefined | OUT N | OUT N |
68 | INP 0: BUS -> M(RX) | INP 0: BUS -> M(RX) | Reserved for 1804/1805 |
6N (9 ≤ N ≤ F) | undefined | INP N-8: BUS -> M(RX) | INP N-8: BUS -> D, BUS -> M(RX) |
70 | RET | RET | RET |
71 | undefined | DIS | DIS |
72 | undefined | undefined | LDXA |
73 | undefined | undefined | STXD |
74 | undefined | undefined | ADC |
75 | undefined | undefined | SDB |
76 | undefined | undefined | SHRC or RSHR |
77 | undefined | undefined | SMB |
78 | SAV | SAV | SAV |
79 | undefined | undefined | MARK |
7A | undefined | undefined | REQ |
7B | undefined | undefined | SEQ |
7C | undefined | undefined | ADCI xx |
7D | undefined | undefined | SDBI xx |
7E | undefined | undefined | SHLC or RSHL |
7F | undefined | undefined | SMBI xx |
8N | GLO RN | GLO RN | GLO RN |
9N | GHI RN | GHI RN | GHI RN |
AN | PLO RN | PLO RN | PLO RN |
BN | PHI RN | PHI RN | PHI RN |
C0 | PHI R0 | undefined | LBR xxxx |
C1 | PHI R1 | undefined | LBQ xxxx |
C2 | PHI R2 | undefined | LBZ xxxx |
C3 | PHI R3 | undefined | LBDF xxxx |
C4 | PHI R4 | undefined | NOP |
C5 | PHI R5 | undefined | LSNQ |
C6 | PHI R6 | undefined | LSNZ |
C7 | PHI R7 | undefined | LSNF |
C8 | PHI R8 | undefined | LSKP or NLBR |
C9 | PHI R9 | undefined | LBNQ xxxx |
CA | PHI RA | undefined | LBNZ xxxx |
CB | PHI RB | undefined | LBNF xxxx |
CC | PHI RC | undefined | LSIE |
CD | PHI RD | undefined | LSQ |
CE | PHI RE | undefined | LSZ |
CF | PHI RF | undefined | LSDF |
DN | SEP RN | SEP RN | SEP RN |
EN | SEX RN | SEX RN | SEX RN |
F0 | LDX | LDX | LDX |
F1 | OR | OR | OR |
F2 | AND | AND | AND |
F3 | XOR | XOR | XOR |
F4 | ADD | ADD | ADD |
F5 | SD | SD | SD |
F6 | SHR | SHR | SHR |
F7 | undefined | SM | SM |
F8 | undefined | LDI xx | LDI xx |
F9 | undefined | ORI xx | ORI xx |
FA | undefined | ANI xx | ANI xx |
FB | undefined | XRI xx | XRI xx |
FC | undefined | ADI xx | ADI xx |
FD | undefined | SDI xx | SDI xx |
FE | undefined | SHL | SHL |
FF | undefined | SMI xx | SMI xx |