Form 1 Instruction Microcode ---------------------------- name - instruction name code - form 1 opcode value wA? - writes to register A? wB? - writes to register B? rA? - reads register A? rB? - reads register B? wm? - writes to memory? rm? - reads from memory? notes - misc. comments |--------+----------+-----+-----+-----+-----+-----+-----+-------| | name | code | wA? | wB? | rA? | rB? | wm? | rm? | notes | |--------+----------+-----+-----+-----+-----+-----+-----+-------| | nop | 00000000 | 0 | 0 | 0 | 0 | 0 | 0 | | | ldi.l | 00000001 | 1 | 0 | 0 | 0 | 0 | 1 | | | mov | 00000010 | 1 | 0 | 0 | 1 | 0 | 0 | | | jsra | 00000011 | 0 | 0 | 0 | 0 | 0 | 0 | | | ret | 00000100 | 0 | 0 | 0 | 0 | 0 | 0 | | | add.l | 00000101 | 1 | 0 | 1 | 1 | 0 | 0 | | | push | 00000110 | 1 | 0 | 0 | 0 | 1 | 0 | | | pop | 00000111 | 1 | 1 | 1 | 0 | 0 | 1 | | | lda.l | 00001000 | 1 | 0 | 0 | 0 | 0 | 1 | | | sta.l | 00001001 | 0 | 0 | 1 | 0 | 1 | 0 | | | ld.l | 00001010 | 1 | 0 | 1 | 0 | 0 | 1 | | | st.l | 00001011 | 0 | 0 | 1 | 0 | 1 | 0 | | | ldo.l | 00001100 | 1 | 0 | 1 | 1 | 0 | 1 | | | sto.l | 00001101 | 0 | 0 | 1 | 1 | 1 | 0 | | | cmp | 00001110 | 0 | 0 | 1 | 1 | 0 | 0 | | | jsr | 00011001 | 0 | 0 | 1 | 0 | 0 | 0 | | | jmpa | 00011010 | 0 | 0 | 0 | 0 | 0 | 0 | | | ldi.b | 00011011 | 1 | 0 | 0 | 0 | 0 | 0 | | | ld.b | 00011100 | 1 | 0 | 1 | 0 | 0 | 1 | | | lda.b | 00011101 | 1 | 0 | 0 | 0 | 0 | 1 | | | st.b | 00011110 | 0 | 0 | 1 | 1 | 1 | 0 | | | sta.b | 00011111 | 0 | 0 | 1 | 0 | 1 | 0 | | | ldi.s | 00100000 | 1 | 0 | 0 | 0 | 0 | 0 | | | ld.s | 00100001 | 1 | 0 | 1 | 0 | 0 | 1 | | | lda.s | 00100010 | 1 | 0 | 1 | 0 | 0 | 1 | | | st.s | 00100011 | 0 | 0 | 1 | 1 | 1 | 0 | | | sta.s | 00100100 | 0 | 0 | 1 | 0 | 1 | 0 | | | jmp | 00100101 | 0 | 0 | 0 | 0 | 0 | 0 | | | and | 00100110 | 1 | 0 | 1 | 1 | 0 | 0 | | | lshr | 00100111 | 1 | 0 | 1 | 1 | 0 | 0 | | | ashr | 00101000 | 1 | 0 | 1 | 1 | 0 | 0 | | | sub.l | 00101001 | 1 | 0 | 1 | 1 | 0 | 0 | | | neg | 00101010 | 1 | 0 | 1 | 1 | 0 | 0 | | | or | 00101011 | 1 | 0 | 1 | 1 | 0 | 0 | | | not | 00101100 | 1 | 0 | 1 | 1 | 0 | 0 | | | ashr | 00101101 | 1 | 0 | 1 | 1 | 0 | 0 | | | xor | 00101110 | 1 | 0 | 1 | 1 | 0 | 0 | | | mul.l | 00101111 | 1 | 0 | 1 | 1 | 0 | 0 | | | swi | 00110000 | 0 | 0 | 0 | 0 | 0 | 0 | | | div.l | 00110001 | 1 | 0 | 1 | 1 | 0 | 0 | | | udiv.l | 00110010 | 1 | 0 | 1 | 1 | 0 | 0 | | | mod.l | 00110011 | 1 | 0 | 1 | 1 | 0 | 0 | | | umod.l | 00110100 | 1 | 0 | 1 | 1 | 0 | 0 | | | brk | 00110101 | 0 | 0 | 0 | 0 | 0 | 0 | | | ldo.b | 00110110 | 1 | 0 | 1 | 1 | 0 | 1 | | | sto.b | 00110111 | 0 | 0 | 1 | 1 | 1 | 0 | | | ldo.s | 00111000 | 1 | 0 | 1 | 1 | 0 | 1 | | | sto.s | 00111001 | 0 | 0 | 0 | 0 | 1 | 0 | | |--------+----------+-----+-----+-----+-----+-----+-----+-------|