DIY Calculator CPU Instructions: ================================ 1.) Hardware Events +---------------------------------------------+-------+--------+ | Hardware Events | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || RST | | | | - | 10 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || IRQ | | | | - | 12 | +--------++--------+--------+--------+--------+-------+--------+ 2.) Implied Addressing Mode instructions +---------------------------------------------+-------+--------+ | Implied Addressing Mode instructions | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || HALT | | | | 1 | 3 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || INCA | DECA | INCX | DECX | | | | || SHL | SHR | ROLC | RORC | 1 | 3 | | || SETIM | CLRIM | NOP | | | | +--------++--------+--------+--------+--------+-------+--------+ | grp 3 || POPA | POPSR | | | 1 | 5 | +--------++--------+--------+--------+--------+-------+--------+ | grp 4 || PUSHA | PUSHSR | | | 1 | 6 | +--------++--------+--------+--------+--------+-------+--------+ | grp 5 || RTS | | | | 1 | 8 | +--------++--------+--------+--------+--------+-------+--------+ | grp 6 || RTI | | | | 1 | 10 | +--------++--------+--------+--------+--------+-------+--------+ 3.) Immediate Addressing Mode instructions +---------------------------------------------+-------+--------+ | Immediate Addressing Mode instructions | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || ADD | ADDC | SUB | SUBC | | | | || AND | OR | XOR | CMPA | 2 | 5 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || LDA | | | | 2 | 4 | +--------++--------+--------+--------+--------+-------+--------+ 4.) Big Immediate Addressing Mode instructions +---------------------------------------------+-------+--------+ | Big Immediate Addressing Mode instructions | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || BLDIV | BLDSP | BLDX | | 3 | 7 | +--------++--------+--------+--------+--------+-------+--------+ 5.) Absolute Addressing Mode instructions +---------------------------------------------+-------+--------+ | Absolute Addressing Mode instructions | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || ADD | ADDC | SUB | SUBC | | | | || AND | OR | XOR | CMPA | 3 | 10 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || LDA | | | | 3 | 9 | +--------++--------+--------+--------+--------+-------+--------+ | grp 3 || STA | | | | 3 | 10 | +--------++--------+--------+--------+--------+-------+--------+ | grp 4 || JMP | | | | 3 | 7 | +--------++--------+--------+--------+--------+-------+--------+ | grp 5 || JSR | | | | 3 | 13 | +--------++--------+--------+--------+--------+-------+--------+ | grp 6 || JC | JNC | JN | JNN | | 4 fail | | || JO | JNO | JZ | JNZ | 3 | 7 pass | +--------++--------+--------+--------+--------+-------+--------+ 6.) Big Absolute Addressing Mode instructions +---------------------------------------------+-------+--------+ | Big Absolute Addressing Mode instructions | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || BLDIV | BLDSP | BLDX | | 3 | 11 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || | BSTSP | BSTX | | 3 | 13 | +--------++--------+--------+--------+--------+-------+--------+ 7.) Indexed Addressing Mode instructions +---------------------------------------------+-------+--------+ | Indexed Addressing Mode instructions | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || ADD | ADDC | SUB | SUBC | | | | || AND | OR | XOR | CMPA | 3 | 10 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || LDA | | | | 3 | 9 | +--------++--------+--------+--------+--------+-------+--------+ | grp 3 || STA | | | | 3 | 10 | +--------++--------+--------+--------+--------+-------+--------+ | grp 4 || JMP | | | | 3 | 8 | +--------++--------+--------+--------+--------+-------+--------+ | grp 5 || JSR | | | | 3 | 14 | +--------++--------+--------+--------+--------+-------+--------+ 8.) Indirect Addressing Mode instructions +---------------------------------------------+-------+--------+ | Indirect Addressing Mode instructions | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || LDA | | | | 3 | 14 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || STA | | | | 3 | 15 | +--------++--------+--------+--------+--------+-------+--------+ | grp 3 || JMP | | | | 3 | 12 | +--------++--------+--------+--------+--------+-------+--------+ | grp 4 || JSR | | | | 3 | 18 | +--------++--------+--------+--------+--------+-------+--------+ 9.) Pre-Indexed Indirect Addressing Mode instructions +---------------------------------------------+-------+--------+ | Pre-Indexed Indirect Addressing Mode instr. | Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || LDA | | | | 3 | 14 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || STA | | | | 3 | 15 | +--------++--------+--------+--------+--------+-------+--------+ | grp 3 || JMP | | | | 3 | 12 | +--------++--------+--------+--------+--------+-------+--------+ | grp 4 || JSR | | | | 3 | 18 | +--------++--------+--------+--------+--------+-------+--------+ 10.) Indirect Post-Indexed Addressing Mode instructions +---------------------------------------------+-------+--------+ | Indirect Post-Indexed Addressing Mode instr.| Bytes | Cycles | +--------++--------+--------+--------+--------+-------+--------+ | grp 1 || LDA | | | | 3 | 14 | +--------++--------+--------+--------+--------+-------+--------+ | grp 2 || STA | | | | 3 | 15 | +--------++--------+--------+--------+--------+-------+--------+ | grp 3 || JMP | | | | 3 | 13 | +--------++--------+--------+--------+--------+-------+--------+ | grp 4 || JSR | | | | 3 | 19 | +--------++--------+--------+--------+--------+-------+--------+