Semantic search

Jump to: navigation, search
Mnemonic (use uppercase)StatusAddressing Mode 1Addressing Mode 2CNPVHZST-StatesSummary
EXXS--------4swap(BC,BC');swap(DE,DE');swap(HL,HL')
HALTS--------4waits for interrupt
IM nSImmediate-------8Interrupt mode:=n
IN (c)URegister--0P0SS12in(BC)?
IN A, (n)SAccumulatorImmediate------11A := in(An)
IN r, (c)SRegisterRegister-0P0SS12r := in(BC)
INC (HL)SIndirect--0!SSS11HL*++
INC (IXY+d)SIndexed--0!SSS23(IXY+d)*++
INC BC/DE/HL/SPSRegister-------6rr++
INC IXYSRegister-------10rr++
INC rSRegister--0!SSS4r++
INDS--?1??!?16HL*:=in(BC); HL--; B--
INDRS--?1??1?21x+16do IND while(B>0)
INIS--?1??!?16HL*:=in(BC); HL++; B--
INIRS--?1??1?21x+16do INI while(B>0)
JP (C)ERegister-??????13PC:=PC&$C000+IN(C)<<6
JP (HL)SRegister-------4PC:=HL (not PC:=HL*)
JP (IXY)SRegister-------8PC:=IXY (not PC:=IXY*)
JP Z/NZ/NC/C/PO/PE/P/M, nnSAddress-------10if cc PC:=nn
JP nnSAddress-------10PC:=nn
JR C/NC/Z/NZ, nnSImmediate-------12 ; 7 if not ccif cc PC+=nn
JR nnSImmediate-------12PC+=nn
LD (BC/DE), ASIndirectAccumulator------7rr* := A
LD (HL), nSIndirectImmediate------10HL* := n
LD (HL),rSIndirectRegister------7HL* := r
LD (IXY+d), nSIndexedImmediate------19(IXY+d)* := n
LD (IXY+d),rSIndexedRegister------19(IXY+D)* := r
LD (nn), ASAddressAccumulator------13(nn)* := A
LD (nn), BC/DE/SP/IXYSAddressRegister------20(nn)* := rr
LD (nn), HLSAddressRegister------16(nn)* := HL
LD A, (BC/DE)SAccumulatorIndirect------7A := rr*
LD A, (nn)SAccumulatorAddress------13A := (nn)*
LD A, ISAccumulatorRegister-0!0SS9A := I; P/V:=IFF2
LD A, RSAccumulatorRegister-0!0SS9A := R; P/V:=IFF2
LD BC/DE/HL/SP, nnSRegisterImmediate------10rr := nn
LD BC/DE/SP/IXY, (nn)SRegisterAddress------20rr := (nn)*
LD HL, (nn)SRegisterAddress------16HL := (nn)*
LD I, ASRegisterAccumulator------9I := A
LD IXY, nnSRegisterImmediate------14rr := nn
LD R, ASRegisterAccumulator------9R := A
LD SP, HLSRegisterRegister------6SP := HL
LD SP, IXYSRegisterRegister------10SP := IXY
LD r, (HL)SRegisterIndirect------7r := HL*
LD r, (IXY+d)SRegisterIndexed------19r := (IXY+d)*
LD r, r'SRegisterRegister------4r := r'
LD r,nSRegisterImmediate------7r := n
LDDS---0L0--16DE*:=HL*; DE--; HL--; BC--
LDDRS---000--21x+16do LDD while(BC>0)
LDDRXE--------21/16do LDDX while(BC>0)
LDDXE--------16{if HL*!=A DE*:=HL*;} DE++; HL--; BC--
LDIS---0L0--16DE*:=HL*; DE++; HL++; BC--
LDIRS---0L0--21x+16do LDI while(BC>0)
LDIRXE--------21/16do LDIX while(BC>0)
LDIXE--------16{if HL*!=A DE*:=HL*;} DE++; HL++; BC--
LDPIRXE--------21/16do{t:=(HL&$FFF8+E&7)*; {if t!=A DE*:=t;} DE++; BC--}while(BC>0)
LDWSE---0!SSS14DE*:=HL*; INC L; INC D;
MIRROR AERegister-------8A[76543210]:=A[01234567]
MUL d,eE--------8DE:=D*E
NEGS--!1!SSS8A:=0-A
NEXTREG n, AEImmediateAccumulator------17HwNextReg_n:=A
NEXTREG n,n'EImmediateImmediate------20HwNextReg_n:=n'
NOPS--------4PC+=1
OR (HL)SIndirect-00P0SS7A := A OR HL*
OR (IXY+d)SIndexed-00P0SS19A := A OR (IXY+d)*
OR nSImmediate-00P0SS7A := A OR n
OR rSRegister-00P0SS4A := A OR r
OTDRS--?1??1?21x+16do OUTD while (B>0)
OTIRS--?1??1?21x+16do OUTI while (B>0)
OUT (c),0URegisterImmediate------12out(BC,0)
OUT (c),rSRegisterRegister------12out(BC,r)
OUT (n),ASImmediateAccumulator------11out(An,A)
OUTDS--?1??!?16B--; out(BC,HL*); HL--
OUTIS--?1??!?16B--; out(BC,HL*); HL++
OUTINBE--??????16out(BC,HL*); HL++
PIXELADE--------8HL:=$4000+((D&$C0)<<5)+((D&$07)<<8)+((D&$38)<<2)+(E>>3)
PIXELDNE--------8if(HL&$0700!=$0700) HL+=256;
else if(HL&$e0!=$e0) HL:=HL&$F8FF+$20;
else HL:=HL&$F81F+$0800
POP AFSRegister-!!!!!!10rr:=SP*; SP+=2
POP BC/DE/HLSRegister-------10rr:=SP*; SP+=2
POP IXYSRegister-------14rr:=SP*; SP+=2
PUSH BC/DE/HL/AFSRegister-------11SP-=2; SP*:=rr
PUSH IXYSRegister-------15SP-=2; SP*:=rr
PUSH nnEImmediate-------23SP-=2; SP*:=nn
RES b,(HL)SImmediateRegister------15HL*:=HL* & (~(1<<b))
RES b,(IXY+d)SImmediateIndexed------23(IXY+d)*:=(IXY+d)* & (~(1<<b))
RES b,rSImmediateRegister------8r:=r & (~(1<<b))
RES r,b,(IX+d)UImmediateIndexed------23(IX+d)*:=(IX+d)* & (~(1<<b)); r:=(IX+d)*
RETS--------10PC:=SP*; SP+=2
RET Z/NZ/C/NC/PO/PE/P/MS--------11 ; 5 if not ccif cc {PC:=SP*; SP+=2}
RETIS--------14PC:=SP*; SP+=2
RETNS--------14IFF1:=IFF2; PC:=SP*; SP+=2
RL (HL)SIndirect-!0P0SS15x:=HL*[7]; HL*:=HL*<<1; HL*[0]:=CF; CF:=x
RL (IXY+d)SIndexed-!0P0SS23x:=(IXY+d)*[7]; (IXY+d)*:=(IXY+d)*<<1; (IXY+d)*[0]:=CF; CF:=x
RL rSRegister-!0P0SS8x:=r[7]; r:=r<<1; r[0]:=CF; CF:=x
RL r,(IX+d)URegisterIndexed!0P0SS23x:=(IX+d)*[7]; (IX+d)*:=(IX+d)*<<1; (IX+d)*[0]:=CF; CF:=x; r:=(IX+d)*
RLAS--!0-0--4x:=A[7]; A:=A<<1; A[0]:=CF; CF:=x
RLC (HL)SIndirect-!0P0SS15x:=HL*[7]; HL*:=HL*<<1; HL*[0]:=x; CF:=x
RLC (IXY+d)SIndexed-!0P0SS23x:=(IXY+d)*[7]; (IXY+d)*:=(IXY+d)*<<1; (IXY+d)*[0]:=x; CF:=x
RLC rSRegister-!0P0SS8x:=r[7]; r:=r<<1; r[0]:=x; CF:=x
RLC r,(IX+d)URegisterIndexed!0P0SS23x:=(IX+d)*[7]; (IX+d)*:=(IX+d)*<<1; (IX+d)*[0]:=x; CF:=x; r:=(IX+d)*
RLCAS--!0-0--4x:=A[7]; A:=A<<1; A[0]:=x; CF:=x