Z80Next Only Instruction Table: Difference between revisions
From SpecNext Wiki
adding the link to the whole table |
m better words |
||
| Line 1: | Line 1: | ||
This is an extract | In this table only the Z80Next CPU instructions are listed. This is an extract from the table of all instructions: [[Z80_Instruction_Table_NoSemantic]]. | ||
{| class="wikitable sortable" style="margin:auto" | {| class="wikitable sortable" style="margin:auto" | ||
Latest revision as of 16:50, 20 January 2025
In this table only the Z80Next CPU instructions are listed. This is an extract from the table of all instructions: Z80_Instruction_Table_NoSemantic.
| Mnemonic | Status | Addressing Mode 1 | Addressing Mode 2 | Flags: C N PV H Z S | T-States | Summary |
|---|---|---|---|---|---|---|
| ADD HL/DE/BC, A | E | Register | Register | ? - - - - - | 8 | rr+=unsigned A |
| ADD HL/DE/BC, nn | E | Register | Immediate | - - - - - - | 16 | rr+=nn |
| BRLC DE,B | E | - | - | - - - - - - | 8 | DE:=DE<<(B&15) OR DE>>(16-B&15) |
| BSLA DE,B | E | - | - | - - - - - - | 8 | DE:=DE<<(B&31) |
| BSRA DE,B | E | - | - | - - - - - - | 8 | DE:=signed(DE)>>(B&31) |
| BSRF DE,B | E | - | - | - - - - - - | 8 | DE:=~(unsigned(~DE)>>(B&31)) |
| BSRL DE,B | E | - | - | - - - - - - | 8 | DE:=unsigned(DE)>>(B&31) |
| JP (C) | E | Register | - | ? ? ? ? ? ? | 13 | PC:=PC&$C000+IN(C)<<6 |
| LDDRX | E | - | - | - - - - - - | 21/16 | do LDDX while(BC>0) |
| LDDX | E | - | - | - - - - - - | 16 | {if HL*!=A DE*:=HL*;} DE++; HL--; BC-- |
| LDIRX | E | - | - | - - - - - - | 21/16 | do LDIX while(BC>0) |
| LDIX | E | - | - | - - - - - - | 16 | {if HL*!=A DE*:=HL*;} DE++; HL++; BC-- |
| LDPIRX | E | - | - | - - - - - - | 21/16 | do{t:=(HL&$FFF8+E&7)*; {if t!=A DE*:=t;} DE++; BC--}while(BC>0) |
| LDWS | E | - | - | - 0 ! S S S | 14 | DE*:=HL*; INC L; INC D; |
| MIRROR A | E | Register | - | - - - - - - | 8 | A[76543210]:=A[01234567] |
| MUL d,e | E | - | - | - - - - - - | 8 | DE:=D*E |
| NEXTREG n, A | E | Immediate | Accumulator | - - - - - - | 17 | HwNextReg_n:=A |
| NEXTREG n,n' | E | Immediate | Immediate | - - - - - - | 20 | HwNextReg_n:=n' |
| OUTINB | E | - | - | ? ? ? ? ? ? | 16 | out(BC,HL*); HL++ |
| PIXELAD | E | - | - | - - - - - - | 8 | HL:=$4000+((D&$C0)<<5)+((D&$07)<<8)+((D&$38)<<2)+(E>>3) |
| PIXELDN | E | - | - | - - - - - - | 8 | if(HL&$0700!=$0700) HL+=256; else if(HL&$e0!=$e0) HL:=HL&$F8FF+$20; else HL:=HL&$F81F+$0800 |
| PUSH nn | E | Immediate | - | - - - - - - | 23 | SP-=2; SP*:=nn |
| SETAE | E | - | - | - - - - - - | 8 | A:=unsigned($80)>>(E&7) |
| SWAPNIB | E | - | - | - - - - - - | 8 | A:=A[3210]<<4 OR A[7654]>>4 |
| TEST n | E | Immediate | - | S ? P S S S | 11 | A&n? |