Instructions Set Summary==============================================================================================
proj HERSIM -- ISA summary
==============================================================================================
Operational Code Mnemonic Description Cy Flags
----------------------------------------------------------------------------------------------
000 rra aaa aaa ldz r, addr Load page zero r= [000 00a aaa aaa] 1 ZN
001 rra aaa aaa stz r, addr Store page zero [000 00a aaa aaa]=r 1 ----
010 rra aaa aaa ldd r, addr Load direct r=[ppp ppa aaa aaa] 1 ZN
011 rra aaa aaa sto r, addr Store direct [ppp ppa aaa aaa ]=r 1 ----
----------------------------------------------------------------------------------------------
100 rrr 000 sss ldr r, s Register r=s
100 rrr 100 000 ldi r, value Immediate r=[PC+1]
----------------------------------------------------------------------------------------------
101 rrr 000 xxx ldx r, x Load indirect r=[x] 1 ZN
101 rrr 001 xxx stx r, x Store indirect [x]=r 1 ----
101 rrr 010 xxx ldy r, x with auto-inc r=[x], x++ 1 ZN
101 rrr 011 xxx sty r, x with auto-inc [x]=r, x++ 1 ----
101 000 100 xxx ldch x Read channel indirect [x]=channel 2 ----
101 000 101 xxx stch x Write channel indirect channel=[x] 2 ----
101 000 110 xxx ldct x Read channel control register indirect 2 ----
101 000 111 xxx stct x Write channel control register indirect 2 ----
----------------------------------------------------------------------------------------------
110 rrr 0dd ddd ldix r, d Load indexed r=[IX+d]
110 rrr 1dd ddd stix r, d Store indexed [IX+d]=r
----------------------------------------------------------------------------------------------
111 000 000 000 halt Halt the computer
111 000 000 001 di Disable interrupts
111 000 000 010 dt Disable trap
111 000 000 011 ?
111 000 000 1.. ?
111 000 001 000 ?
111 000 001 001 ei Enable Interrupts
111 000 001 010 et Enable trap
111 000 001 011 ?
111 000 01. ... ?
111 000 10. ... ?
111 000 11. ... ?
----------------------------------------------------------------------------------------------
111 001 0gg ggg setp g Set Page
111 001 10c ccc setch c Set Channel
----------------------------------------------------------------------------------------------
111 010 rrf fff ALU (--- pending design---)
111 010 11f fff ALU LOCK (--- pending design---)
----------------------------------------------------------------------------------------------
111 011 000 000 jp address Unconditional jump
111 011 000 ... ?
111 011 001 000 jz address Jump if Zero
111 011 001 001 jc address Jump if Carry
111 011 001 010 jn address Jump if Negative
111 011 001 011 jv address Jump if Overflow
111 011 001 100 jnz address Jump if Not Zero
111 011 001 101 jnc address Jump if Not Carry
111 011 001 110 jnn address Jump if Positive
111 011 001 111 jnv address Jump if Not Overflow
111 011 010 000 ret Unconditional return
111 011 010 ... ?
111 011 011 000 rz Return if Zero
111 011 011 001 rc Return if Carry
111 011 011 010 rn Return if Negative
111 011 011 011 rv Return if Overflow
111 011 011 100 rnz Return if Not Zero
111 011 011 101 rnc Return if Not Carry
111 011 011 110 rnn Return if Positive
111 011 011 111 rnv Return if Not Overflow
111 011 100 000 call address Unconditional call
111 011 100 ... ?
111 011 101 000 cz address Call if Zero
111 011 101 001 cc address Call if Carry
111 011 101 010 cn address Call if Negative
111 011 101 011 cv address Call if Overflow
111 011 101 100 cnz address Call if Not Zero
111 011 101 101 cnc address Call if Not Carry
111 011 101 110 cnn address Call if Positive
111 011 101 111 cnv address Call if Not Overflow
----------------------------------------------------------------------------------------------
111 100 000 rrr push r SP--, [SP]=r
111 100 100 rrr pop r r=[SP], SP++
----------------------------------------------------------------------------------------------
111 101 000 rrr dec r r--
111 101 001 rrr inc r r++
----------------------------------------------------------------------------------------------
111 11a aaa aaa callz addr Call Page Zero
|