Changes

Jump to: navigation, search

Z80

199 bytes added, 09:29, 1 September 2024
/* Z80 Instructions: I */
! Instruction !! Opcode !! Cycles !! S !! Z !! X !! H !! Y !! P !! N !! C !! Effect !! Description
|-
| im 0 || 11101101 01*0*110 || 8 || - || - || - || - || - || - || - || - || mode 0: execute instruction on bus||rowspan=3|Set Interrupt Mode
|-
| im 1 || 11101101 01*10110 || 8 || - || - || - || - || - || - || - || - || mode 1: execute rst $38
| im 2 || 11101101 01*11110 || 8 || - || - || - || - || - || - || - || - || mode 2: call (i * 256 + byte on bus)
|-
| in a,(N) || 11011011 nnnnnnnn || 11 || - || - || - || - || - || - || - || - || a := ((N))||rowspan=3|I/O Input
|-
| in R,(c) || 11101101 01rrr000 || 12 || + || + || + || 0 || + || P || 0 || - || R := ((c))
| in f,(c) || 11101101 01110000 || 12 || + || + || + || 0 || + || P || 0 || - || tmp := ((c))
|-
| inc R || 00rrr100 || 4 || + || + || + || + || + || V || 0 || - || R += 1||rowspan=6|Increment
|-
| inc J || 11i11101 0010b100 || 8 || + || + || + || + || + || V || 0 || - || J += 1
pf := parity of [[tmp2 AND 0x07] XOR b],
hf := cf := tmp2 > 255
|| I/O Input and Decrement
|-
| indr || 11101101 10111010 || 21/16 || + || + || + || X || + || X || X || X || ind, if b <> 0 then pc -= 2|| I/O Input and Decrement, Repeat
|-
| ini || 11101101 10100010 || 16 || + || + || + || X || + || X || X || X || tmp := ((c)), (hl) := tmp, hl += 1,
pf := parity of [[tmp2 AND 0x07] XOR b],
hf := cf := tmp2 > 255
|| I/O Input and Increment
|-
| inir || 11101101 10110010 || 21/16 || + || + || + || X || + || X || X || X || ini, if b <> 0 then pc -= 2|| I/O Input and Increment, Repeat
|}
13,173
edits