13.Assembler reference - mattsteeldue/vforth-next GitHub Wiki

Z80 instruction table

In this table:

rr|      :  BC|   DE|   HL|   SP|  and in case  IX|   IY|   and   AF|   also 
 r|      :   B|    C|    D|    E|    H|    L|    A|   and    (HL)|    { source registers }
r'|      :  B'|   C'|   D'|   E'|   H'|   L'|   A'|   and   (HL)'|    { destination registers - NOT "alternate" }
 f|      :  NZ|    Z|   NC|   CY|   PO|   PE|    P|    M|   { flags used by JP, CALL and RET }
f'|      : NZ'|   Z'|  NC'|  CY'|   { same as flags above but used by JR }
 b|      :   0|    1|    2|    3|    4|    5|    6|    7|   { bit number used in SET/RES/BIT }
 a|      :  00|   08|   10|   18|   20|   28|   30|   38|
 d       :   byte displacement                   { associated with D, }
 n       :   byte value (8 bits)                 { associated with N, }
nn       :   word value (16 bits)                { associated with NN, }
aa       :   address                             { associated with AA, }
rn       :   number of Next-hardware-register    { associated with P, }

In this list you can use IX+d operand wherever you can use IY+d operand.


FORTH ASSEMBLER                         Z80 MNEMONIC

ADCA      (HL)|                         ADC A, (HL)                
ADCA  (IY+ d )|                         ADC A, (IY+d)             
ADCN         n    N,                    ADC A, n                   
ADCA         r|                         ADC A, r                   
ADCHL       rr|                         ADC HL, BC/DE/HL/SP        
ADDA      (HL)|                         ADD A, (HL)                
ADDA  (IY+ n )|                         ADD A, (IY+d)             
ADDA         n    N,                    ADD A, n                   
ADDA         r|                         ADD A, r                   
ADDHL       rr|                         ADD HL, BC/DE/HL/SP        
ADDHL,A                                 ADD HL, A            
ADDDE,A                                 ADD DE, A            
ADDBC,A                                 ADD BC, A            
ADDHL,      nn   NN,                    ADD HL, nn         
ADDDE,      nn   NN,                    ADD DE, nn         
ADDBC,      nn   NN,                    ADD BC, nn         
ADDIX       rr|                         ADD IX, BC/DE/IX/SP      
ADDIY       rr|                         ADD IY, BC/DE/IY/SP      
ANDA      (HL)|                         AND (HL)                   
ANDA  (IY+ n )|                         AND (IY+d)                
ANDA         n    N,                    AND n                      
ANDA         r|                         AND r                      
BIT          b|     (HL)|               BIT b, (HL)                 
BIT          b| (IY+ d )|               BIT b, (IY+d)              
BIT          b|        r|               BIT b, r                    
BRLCDE,B                                BRLC DE, B                  
BSLADE,B                                BSLA DE, B                  
BSRADE,B                                BSRA DE, B                  
BSRFDE,B                                BSRF DE, B                  
BSRLDE,B                                BSRL DE, B                  
CALLF        f|  aa   AA,               CALL Z/NZ/C/NC/PO/PE/P/M, aa
CALL             aa   AA,               CALL aa                    
CCF                                     CCF                        
CPA       (HL)|                         CP (HL)                    
CPA   (IY+ n )|                         CP (IY+d)                 
CPA          n    N,                    CP n                       
CPA          r|                         CP r                       
CPD                                     CPD                        
CPDR                                    CPDR                       
CPI                                     CPI                        
CPIR                                    CPIR                       
CPL                                     CPL                        
DAA                                     DAA                        
DEC      (HL)'|                         DEC (HL)                   
DEC  (IY'+ d )|                         DEC (IY+d)                
DECX        rr|                         DEC BC/DE/HL/SP/IX/IY            
DEC         r'|                         DEC r                      
DI                                      DI                         
DJNZ         d    D,                    DJNZ d                     
EI                                      EI                         
EX(SP)HL                                EX (SP), HL                
EX(SP)IX                                EX (SP), IX               
EX(SP)IY                                EX (SP), IY               
EXAFAF                                  EX AF, AF'                 
EXDEHL                                  EX DE, HL                  
EXX                                     EXX                        
HALT                                    HALT                       
IM0                                     IM 0
IM1                                     IM 1
IM2                                     IM 2
IN(C)    (HL)'|                         IN (c)                     
INA          n    P,                    IN A, (n)                  
IN(C)       r'|                         IN r, (c)                  
INC      (HL)'|                         INC (HL)                   
INC  (IY'+ d )|                         INC (IY+d)                
INCX        rr|                         INC BC/DE/HL/SP/IX/IY            
INC         r'|                         INC r                      
IND                                     IND                        
INDR                                    INDR                       
INI                                     INI                        
INIR                                    INIR                       
JP(C)                                   JP (C)                     
JPHL                                    JP (HL)                    
JPIX                                    JP (IX)  
JPIY                                    JP (IY)  
JPF          f|   aa   AA,              JP Z/NZ/NC/C/PO/PE/P/M, aa 
JP                aa   AA,              JP aa                      
JRF         f'|    d    D,              JR C/NC/Z/NZ, d           
JR                 d    D,              JR d                      
LD(X)A      rr|                         LD (BC/DE), A              
LD       (HL)'|         r|              LD (HL), n                 
LDN      (HL)'|    n    N,              LD (HL), r                  
LDN (IY'+ d  )|    n    N,              LD (IY+d), n              
LD(IY+     d )|         r|              LD (IY+d), r               
LD()A             aa   AA,              LD (nn), A                 
LD()X       rr|   nn   AA,              LD (nn), BC/DE/SP          
LD()IX            aa   AA,              LD (nn), IX               
LD()IY            aa   AA,              LD (nn), IY               
LD()HL            aa   AA,              LD (nn), HL                
LDA(X)      rr|                         LD A, (BC/DE)              
LDA()             aa   AA,              LD A, (aa)                 
LDAI                                    LD A, I                    
LDAR                                    LD A, R                    
LDX         rr|   nn   NN,              LD BC/DE/HL/SP/IX/IY, nn         
LDX()       rr|   nn   AA,              LD BC/DE/HL/SP/IX/IY, (aa)      
LDHL()            aa   AA,              LD HL, (aa)                
LDIA                                    LD I, A                    
LDRA                                    LD R, A                    
LDSPHL                                  LD SP, HL                  
LDSPIX                                  LD SP, IX                 
LDSPIY                                  LD SP, IY                 
LD          r'|      (HL)|              LD r, (HL)                 
LD          r'|  (IY+ d )|              LD r, (IY+d)              
LD          r'|         r|              LD r, r                   
LDN         r'|    n    N,              LD r, n                     
LDD                                     LDD                        
LDDR                                    LDDR                       
LDDRX                                   LDDRX                      
LDDX                                    LDDX                       
LDI                                     LDI                        
LDIR                                    LDIR                       
LDIRX                                   LDIRX                      
LDIX                                    LDIX                       
LDPIRX                                  LDPIRX                     
LDWS                                    LDWS                       
MIRRORA                                 MIRROR A                   
MUL                                     MUL                        
NEG                                     NEG                        
NEXTREGA  rn  P,                        NEXTREG r, A              
NEXTREG   rn  P,  n  N,                 NEXTREG r, n             
NOP                                     NOP                        
ORA       (HL)|                         OR (HL)                    
ORA   (IY+ d )|                         OR (IY+d)                 
ORN          n    N,                    OR n                       
ORA          r|                         OR r                       
OTDR                                    OTDR                       
OTIR                                    OTIR                       
OUT(C)   (HL)'|                         OUT (c), 0                  
OUT(C)      r'|                         OUT (c), r                  
OUTA         n    P,                    OUT (n), A                  
OUTD                                    OUTD                       
OUTI                                    OUTI                       
OUTINB                                  OUTINB                     
PIXELAD                                 PIXELAD                    
PIXELDN                                 PIXELDN                    
POP         rr|                         POP AF/BC/DE/HL/IX/IY               
PUSH        rr|                         PUSH AF/BC/DE/HL/IX/IY
PUSHN       nn   LH,                    PUSH nn                  
RES          b|     (HL)|               RES b, (HL)                 
RES          b| (IY+ d )|               RES b, (IY+d)              
RES          b|        r|               RES b, r                    
RES          b|        r|  (IY+ d )|    RES r, b, (IY+d)             
RET                                     RET                        
RETF         f|                         RET Z/NZ/C/NC/PO/PE/P/M    
RETI                                    RETI                       
RETN                                    RETN                       
RL        (HL)|                         RL (HL)                    
RL    (IY+ d )|                         RL (IY+d)                 
RL           r|                         RL r                       
RL           r| (IY+ d )|               RL r, (IY+d)                
RLA                                     RLA                        
RLC       (HL)|                         RLC (HL)                   
RLC   (IY+ d )|                         RLC (IY+d)                
RLC          r|                         RLC r                      
RLC          r| (IY+ d )|               RLC r, (IY+d)               
RLCA                                    RLCA                       
RLD                                     RLD                        
RR        (HL)|                         RR (HL)                    
RR    (IY+ d )|                         RR (IY+d)                 
RR           r|                         RR r                       
RR           r| (IY+ d )|               RR r, (IY+d)                
RRA                                     RRA                        
RRC       (HL)|                         RRC (HL)                   
RRC   (IY+ d )|                         RRC (IY+d)                
RRC          r|                         RRC r                      
RRC          r| (IY+ d )|               RRC r,(IY+d)               
RRCA                                    RRCA                       
RRD                                     RRD                        
RST          a|                         RST n                      
SBCA      (HL)|                         SBC A, (HL)                
SBCA  (IY+ d )|                         SBC A, (IY+d)             
SBCN         n   N,                     SBC A, n                   
SBCA         r|                         SBC A, r                   
SBCHL       rr|                         SBC HL, BC/DE/HL/SP        
SCF                                     SCF                        
SET          b|     (HL)|               SET b, (HL)                 
SET          b| (IY+ d )|               SET b, (IY+d)              
SET          b|        r|               SET b, r                    
SET          b|        r|  (IY+ d )|    SET r, b, (IX+d)             
SETAE                                   SETAE                      
SLL       (HL)|                         SL1 (HL)                   
SLL   (IY+ d )|                         SL1 (IY+d)                
SLL          r|                         SL1 r                      
SLL          r| (IY+ d )|               SL1 r, (IY+d)              
SLA       (HL)|                         SLA (HL)                   
SLA   (IY+ d )|                         SLA (IY+d)                
SLA          r|                         SLA r                      
SLA          r| (IY+ d )|               SLA r, (IY+d)               
SRA       (HL)|                         SRA (HL)                   
SRA   (IY+ d )|                         SRA (IY+d)                
SRA          r|                         SRA r                      
SRA          r| (IY+ d )|               SRA r, (IY+d)               
SRL       (HL)|                         SRL (HL)                   
SRL   (IY+ d )|                         SRL (IY+d)                
SRL          r|                         SRL r                      
SRL          r| (IY+ d )|               SRL r, (IY+d)              
SUBA      (HL)|                         SUB (HL)                   
SUBA  (IY+ d )|                         SUB (IY+d)                
SUBN         n   N,                     SUB n                      
SUBA         r|                         SUB r                      
SWAPNIB                                 SWAPNIB                    
TESTN        n   N,                     TEST n                     
XORA      (HL)|                         XOR (HL)                   
XORA  (IY+ d )|                         XOR (IY+d)                
XORN         n   N,                     XOR n                      
XORA         r|                         XOR r