Full Z80 Opcode List Including Undocumented Opcodes effects of Z80 opcodes =================================================== File: Docs.Comp.Z80.OpEffectst - Update: 0.10 Author: J.G.Harston - Date: 09-09-1997 nn nn NZ5H3--C Effects ---------------------------------------------------- 00 NOP -------- 01 LD BC,&0000 -------- C=[PC+1] B=[PC+2] 02 LD (BC),A -------- A=[BC] 03 INC BC -------- BC=BC+1 04 INC B B=B+1 05 DEC B B=B-1 06 LD B,&00 -------- B=[PC+1] 07 RLCA Cy=Ab7, A=A*2, Ab0=Cy 08 EX AF,AF' ******** A=A', F=F' 09 ADD HL,BC T 0A LD A,(BC) B 0B DEC BC D 0C INC C C 0D DEC C D 0E LD C,&00 E 0F RRCA F 10 DJNZ &4546 11 LD DE,&0000 12 LD (DE),A 13 INC DE 14 INC D 15 DEC D 16 LD D,&00 17 RLA 18 JR &4546 19 ADD HL,DE 1A LD A,(DE) 1B DEC DE 1C INC E 1D DEC E 1E LD E,&00 1F RRA 20 JR NZ,&4546 21 LD HL,&0000 22 LD (&0000),HL 23 INC HL 24 INC H 25 DEC H 26 LD H,&00 27 DAA 28 JR Z,&4546 29 ADD HL,HL 2A LD HL,(&0000) 2B DEC HL 2C INC L 2D DEC L 2E LD L,&00 2F CPL 30 JR NC,&4546 31 LD SP,&0000 32 LD (&0000),A 33 INC SP 34 INC (HL) 35 DEC (HL) 36 LD (HL),&00 37 SCF 38 JR C,&4546 39 ADD HL,SP 3A LD A,(&0000) 3B DEC SP 3C INC A 3D DEC A 3E LD A,&00 3F CCF 40 LD B,B (C) 41 LD B,C ),B 42 LD B,D ,BC 43 LD B,E 0000),BC 44 LD B,H 45 LD B,L 46 LD B,(HL) 47 LD B,A A 48 LD C,B (C) 49 LD C,C ),C 4A LD C,D ,BC 4B LD C,E ,(&0000) 4C LD C,H 4D LD C,L 4E LD C,(HL) 4F LD C,A A 50 LD D,B (C) 51 LD D,C ),D 52 LD D,D ,DE 53 LD D,E 0000),DE 54 LD D,H 55 LD D,L 56 LD D,(HL) 57 LD D,A I 58 LD E,B (C) 59 LD E,C ),E 5A LD E,D ,DE 5B LD E,E ,(&0000) 5C LD E,H 5D LD E,L 5E LD E,(HL) 5F LD E,A R 60 LD H,B (C) 61 LD H,C ),H 62 LD H,D ,HL 63 LD H,E 0000),HL 64 LD H,H 65 LD H,L 66 LD H,(HL) 67 LD H,A 68 LD L,B (C) 69 LD L,C ),L 6A LD L,D ,HL 6B LD L,E ,(&0000) 6C LD L,H 6D LD L,L 6E LD L,(HL) 6F LD L,A 70 LD (HL),B (C) 71 LD (HL),C ),F 72 LD (HL),D ,SP 73 LD (HL),E 0000),SP 74 LD (HL),H 75 LD (HL),L 76 HALT 77 LD (HL),A ?] 78 LD A,B (C) 79 LD A,C ),A 7A LD A,D ,SP 7B LD A,E ,(&0000) 7C LD A,H 7D LD A,L 7E LD A,(HL) 7F LD A,A ?] 80 ADD A,B 81 ADD A,C 82 ADD A,D 83 ADD A,E 84 ADD A,H 85 ADD A,L 86 ADD A,(HL) 87 ADD A,A 88 ADC A,B 89 ADC A,C 8A ADC A,D 8B ADC A,E 8C ADC A,H 8D ADC A,L 8E ADC A,(HL) 8F ADC A,A 90 SUB A,B 91 SUB A,C 92 SUB A,D 93 SUB A,E 94 SUB A,H 95 SUB A,L 96 SUB A,(HL) 97 SUB A,A 98 SBC A,B 99 SBC A,C 9A SBC A,D 9B SBC A,E 9C SBC A,H 9D SBC A,L 9E SBC A,(HL) 9F SBC A,A A0 AND B A1 AND C A2 AND D A3 AND E A4 AND H A5 AND L A6 AND (HL) A7 AND A A8 XOR B A9 XOR C AA XOR D AB XOR E AC XOR H AD XOR L AE XOR (HL) AF XOR A B0 OR B B1 OR C B2 OR D B3 OR E B4 OR H B5 OR L B6 OR (HL) B7 OR A B8 CP B B9 CP C BA CP D BB CP E BC CP H BD CP L BE CP (HL) BF CP A C0 RET NZ C1 POP BC C2 JP NZ,&0000 C3 JP &0000 C4 CALL NZ,&0000 C5 PUSH BC C6 ADD A,&00 C7 RST &00 C8 RET Z C9 RET CA JP Z,&0000 CB **** CB **** CC CALL Z,&0000 CD CALL &0000 CE ADC A,&00 CF RST &08 D0 RET NC D1 POP DE D2 JP NC,&0000 D3 OUT (&00),A D4 CALL NC,&0000 D5 PUSH DE D6 SUB A,&00 D7 RST &10 D8 RET C D9 EXX DA JP C,&0000 DB IN A,(&00) DC CALL C,&0000 DD **** DD **** DE SBC A,&00 DF RST &18 E0 RET PO E1 POP HL E2 JP PO,&0000 E3 EX (SP),HL E4 CALL PO,&0000 E5 PUSH HL E6 AND &00 E7 RST &20 E8 RET PE E9 JP (HL) EA JP PE,&0000 EB EX DE,HL EC CALL PE,&0000 ED **** ED **** EE XOR &00 EF RST &28 F0 RET P F1 POP AF F2 JP P,&0000 F3 DI F4 CALL P,&0000 F5 PUSH AF F6 OR &00 F7 RST &30 F8 RET M F9 LD SP,HL FA JP M,&0000 FB EI FC CALL M,&0000 FD **** FD **** FE CP &00 FF RST &38 nn nn DD nn CB nn FD CB ff nn ED nn -------------------------------------------------------------------------- 00 NOP - RLC B rlc (iy+0)->b MOS_QUIT 01 LD BC,&0000 - RLC C rlc (iy+0)->c MOS_CLI 02 LD (BC),A - RLC D rlc (iy+0)->d MOS_BYTE 03 INC BC - RLC E rlc (iy+0)->e MOS_WORD 04 INC B - RLC H rlc (iy+0)->h MOS_WRCH 05 DEC B - RLC L rlc (iy+0)->l MOS_RDCH 06 LD B,&00 - RLC (HL) RLC (IY+0) MOS_FILE 07 RLCA - RLC A rlc (iy+0)->a MOS_ARGS 08 EX AF,AF' - RRC B rrc (iy+0)->b MOS_BGET 09 ADD HL,BC ADD IX,BC RRC C rrc (iy+0)->c MOS_BPUT 0A LD A,(BC) - RRC D rrc (iy+0)->d MOS_GBPB 0B DEC BC - RRC E rrc (iy+0)->e MOS_FIND 0C INC C - RRC H rrc (iy+0)->h MOS_FF0C 0D DEC C - RRC L rrc (iy+0)->l MOS_FF0D 0E LD C,&00 - RRC (HL) RRC (IY+0) MOS_FF0E 0F RRCA - RRC A rrc (iy+0)->a MOS_FF0F 10 DJNZ &4546 - RL B rl (iy+0)->b - 11 LD DE,&0000 - RL C rl (iy+0)->c - 12 LD (DE),A - RL D rl (iy+0)->d - 13 INC DE - RL E rl (iy+0)->e - 14 INC D - RL H rl (iy+0)->h - 15 DEC D - RL L rl (iy+0)->l - 16 LD D,&00 - RL (HL) RL (IY+0) - 17 RLA - RL A rl (iy+0)->a - 18 JR &4546 - RR B rr (iy+0)->b - 19 ADD HL,DE ADD IX,DE RR C rr (iy+0)->c - 1A LD A,(DE) - RR D rr (iy+0)->d - 1B DEC DE - RR E rr (iy+0)->e - 1C INC E - RR H rr (iy+0)->h - 1D DEC E - RR L rr (iy+0)->l - 1E LD E,&00 - RR (HL) RR (IY+0) - 1F RRA - RR A rr (iy+0)->a - 20 JR NZ,&4546 - SLA B sla (iy+0)->b - 21 LD HL,&0000 LD IX,&0000 SLA C sla (iy+0)->c - 22 LD (&0000),HL LD (&0000),IX SLA D sla (iy+0)->d - 23 INC HL INC IX SLA E sla (iy+0)->e - 24 INC H INC IXH SLA H sla (iy+0)->h - 25 DEC H DEC IXH SLA L sla (iy+0)->l - 26 LD H,&00 LD IXH,&00 SLA (HL) SLA (IY+0) - 27 DAA - SLA A sla (iy+0)->a - 28 JR Z,&4546 - SRA B sra (iy+0)->b - 29 ADD HL,HL ADD IX,IX SRA C sra (iy+0)->c - 2A LD HL,(&0000) LD IX,(&0000) SRA D sra (iy+0)->d - 2B DEC HL DEC IX SRA E sra (iy+0)->e - 2C INC L INC IXL SRA H sra (iy+0)->h - 2D DEC L DEC IXL SRA L sra (iy+0)->l - 2E LD L,&00 LD IXL,&00 SRA (HL) SRA (IY+0) - 2F CPL - SRA A sra (iy+0)->a - 30 JR NC,&4546 - SLS B sls (iy+0)->b - 31 LD SP,&0000 - SLS C sls (iy+0)->c - 32 LD (&0000),A - SLS D sls (iy+0)->d - 33 INC SP - SLS E sls (iy+0)->e - 34 INC (HL) INC (IX+0) SLS H sls (iy+0)->h - 35 DEC (HL) DEC (IX+0) SLS L sls (iy+0)->l - 36 LD (HL),&00 LD (IX+0),&00 SLS (HL) SLS (IY+0) - 37 SCF - SLS A sls (iy+0)->a - 38 JR C,&4546 - SRL B srl (iy+0)->b - 39 ADD HL,SP ADD IX,SP SRL C srl (iy+0)->c - 3A LD A,(&0000) - SRL D srl (iy+0)->d - 3B DEC SP - SRL E srl (iy+0)->e - 3C INC A - SRL H srl (iy+0)->h - 3D DEC A - SRL L srl (iy+0)->l - 3E LD A,&00 - SRL (HL) SRL (IY+0) - 3F CCF - SRL A srl (iy+0)->a - 40 LD B,B - BIT 0,B bit 0,(iy+0)->b IN B,(C) 41 LD B,C - BIT 0,C bit 0,(iy+0)->c OUT (C),B 42 LD B,D - BIT 0,D bit 0,(iy+0)->d SBC HL,BC 43 LD B,E - BIT 0,E bit 0,(iy+0)->e LD (&0000),BC 44 LD B,H LD B,IXH BIT 0,H bit 0,(iy+0)->h NEG 45 LD B,L LD B,IXL BIT 0,L bit 0,(iy+0)->l RETN 46 LD B,(HL) LD B,(IX+0) BIT 0,(HL) BIT 0,(IY+0) IM 0 47 LD B,A - BIT 0,A bit 0,(iy+0)->a LD I,A 48 LD C,B - BIT 1,B bit 1,(iy+0)->b IN C,(C) 49 LD C,C - BIT 1,C bit 1,(iy+0)->c OUT (C),C 4A LD C,D - BIT 1,D bit 1,(iy+0)->d ADC HL,BC 4B LD C,E - BIT 1,E bit 1,(iy+0)->e LD BC,(&0000) 4C LD C,H LD C,IXH BIT 1,H bit 1,(iy+0)->h [neg] 4D LD C,L LD C,IXL BIT 1,L bit 1,(iy+0)->l RETI 4E LD C,(HL) LD C,(IX+0) BIT 1,(HL) BIT 1,(IY+0) [im0] 4F LD C,A - BIT 1,A bit 1,(iy+0)->a LD R,A 50 LD D,B - BIT 2,B bit 2,(iy+0)->b IN D,(C) 51 LD D,C - BIT 2,C bit 2,(iy+0)->c OUT (C),D 52 LD D,D - BIT 2,D bit 2,(iy+0)->d SBC HL,DE 53 LD D,E - BIT 2,E bit 2,(iy+0)->e LD (&0000),DE 54 LD D,H LD D,IXH BIT 2,H bit 2,(iy+0)->h [neg] 55 LD D,L LD D,IXL BIT 2,L bit 2,(iy+0)->l [retn] 56 LD D,(HL) LD D,(IX+0) BIT 2,(HL) BIT 2,(IY+0) IM 1 57 LD D,A - BIT 2,A bit 2,(iy+0)->a LD A,I 58 LD E,B - BIT 3,B bit 3,(iy+0)->b IN E,(C) 59 LD E,C - BIT 3,C bit 3,(iy+0)->c OUT (C),E 5A LD E,D - BIT 3,D bit 3,(iy+0)->d ADC HL,DE 5B LD E,E - BIT 3,E bit 3,(iy+0)->e LD DE,(&0000) 5C LD E,H LD E,IXH BIT 3,H bit 3,(iy+0)->h [neg] 5D LD E,L LD E,IXL BIT 3,L bit 3,(iy+0)->l [reti] 5E LD E,(HL) LD E,(IX+0) BIT 3,(HL) BIT 3,(IY+0) IM 2 5F LD E,A - BIT 3,A bit 3,(iy+0)->a LD A,R 60 LD H,B LD IXH,B BIT 4,B bit 4,(iy+0)->b IN H,(C) 61 LD H,C LD IXH,C BIT 4,C bit 4,(iy+0)->c OUT (C),H 62 LD H,D LD IXH,D BIT 4,D bit 4,(iy+0)->d SBC HL,HL 63 LD H,E LD IXH,E BIT 4,E bit 4,(iy+0)->e LD (&0000),HL 64 LD H,H LD IXH,IXH BIT 4,H bit 4,(iy+0)->h [neg] 65 LD H,L LD IXH,IXL BIT 4,L bit 4,(iy+0)->l [retn] 66 LD H,(HL) LD H,(IX+0) BIT 4,(HL) BIT 4,(IY+0) [im0] 67 LD H,A LD IXH,A BIT 4,A bit 4,(iy+0)->a RRD 68 LD L,B LD IXL,B BIT 5,B bit 5,(iy+0)->b IN L,(C) 69 LD L,C LD IXL,C BIT 5,C bit 5,(iy+0)->c OUT (C),L 6A LD L,D LD IXL,D BIT 5,D bit 5,(iy+0)->d ADC HL,HL 6B LD L,E LD IXL,E BIT 5,E bit 5,(iy+0)->e LD HL,(&0000) 6C LD L,H LD IXL,IXH BIT 5,H bit 5,(iy+0)->h [neg] 6D LD L,L LD IXL,IXL BIT 5,L bit 5,(iy+0)->l [reti] 6E LD L,(HL) LD L,(IX+0) BIT 5,(HL) BIT 5,(IY+0) [im0] 6F LD L,A LD IXL,A BIT 5,A bit 5,(iy+0)->a RLD 70 LD (HL),B LD (IX+0),B BIT 6,B bit 6,(iy+0)->b IN F,(C) 71 LD (HL),C LD (IX+0),C BIT 6,C bit 6,(iy+0)->c OUT (C),F 72 LD (HL),D LD (IX+0),D BIT 6,D bit 6,(iy+0)->d SBC HL,SP 73 LD (HL),E LD (IX+0),E BIT 6,E bit 6,(iy+0)->e LD (&0000),SP 74 LD (HL),H LD (IX+0),H BIT 6,H bit 6,(iy+0)->h [neg] 75 LD (HL),L LD (IX+0),L BIT 6,L bit 6,(iy+0)->l [retn] 76 HALT - BIT 6,(HL) BIT 6,(IY+0) [im1] 77 LD (HL),A LD (IX+0),A BIT 6,A bit 6,(iy+0)->a [ld i,i?] 78 LD A,B - BIT 7,B bit 7,(iy+0)->b IN A,(C) 79 LD A,C - BIT 7,C bit 7,(iy+0)->c OUT (C),A 7A LD A,D - BIT 7,D bit 7,(iy+0)->d ADC HL,SP 7B LD A,E - BIT 7,E bit 7,(iy+0)->e LD SP,(&0000) 7C LD A,H LD A,IXH BIT 7,H bit 7,(iy+0)->h [neg] 7D LD A,L LD A,IXL BIT 7,L bit 7,(iy+0)->l [reti] 7E LD A,(HL) LD A,(IX+0) BIT 7,(HL) BIT 7,(IY+0) [im2] 7F LD A,A - BIT 7,A bit 7,(iy+0)->a [ld r,r?] 80 ADD A,B - RES 0,B res 0,(iy+0)->b - 81 ADD A,C - RES 0,C res 0,(iy+0)->c - 82 ADD A,D - RES 0,D res 0,(iy+0)->d - 83 ADD A,E - RES 0,E res 0,(iy+0)->e - 84 ADD A,H ADD A,IXH RES 0,H res 0,(iy+0)->h - 85 ADD A,L ADD A,IXL RES 0,L res 0,(iy+0)->l - 86 ADD A,(HL) ADD A,(IX+0) RES 0,(HL) RES 0,(IY+0) - 87 ADD A,A - RES 0,A res 0,(iy+0)->a - 88 ADC A,B - RES 1,B res 1,(iy+0)->b - 89 ADC A,C - RES 1,C res 1,(iy+0)->c - 8A ADC A,D - RES 1,D res 1,(iy+0)->d - 8B ADC A,E - RES 1,E res 1,(iy+0)->e - 8C ADC A,H ADC A,IXH RES 1,H res 1,(iy+0)->h - 8D ADC A,L ADC A,IXL RES 1,L res 1,(iy+0)->l - 8E ADC A,(HL) ADC A,(IX+0) RES 1,(HL) RES 1,(IY+0) - 8F ADC A,A - RES 1,A res 1,(iy+0)->a - 90 SUB A,B - RES 2,B res 2,(iy+0)->b - 91 SUB A,C - RES 2,C res 2,(iy+0)->c - 92 SUB A,D - RES 2,D res 2,(iy+0)->d - 93 SUB A,E - RES 2,E res 2,(iy+0)->e - 94 SUB A,H SUB A,IXH RES 2,H res 2,(iy+0)->h - 95 SUB A,L SUB A,IXL RES 2,L res 2,(iy+0)->l - 96 SUB A,(HL) SUB A,(IX+0) RES 2,(HL) RES 2,(IY+0) - 97 SUB A,A - RES 2,A res 2,(iy+0)->a - 98 SBC A,B - RES 3,B res 3,(iy+0)->b - 99 SBC A,C - RES 3,C res 3,(iy+0)->c - 9A SBC A,D - RES 3,D res 3,(iy+0)->d - 9B SBC A,E - RES 3,E res 3,(iy+0)->e - 9C SBC A,H SBC A,IXH RES 3,H res 3,(iy+0)->h - 9D SBC A,L SBC A,IXL RES 3,L res 3,(iy+0)->l - 9E SBC A,(HL) SBC A,(IX+0) RES 3,(HL) RES 3,(IY+0) - 9F SBC A,A - RES 3,A res 3,(iy+0)->a - A0 AND B - RES 4,B res 4,(iy+0)->b LDI A1 AND C - RES 4,C res 4,(iy+0)->c CPI A2 AND D - RES 4,D res 4,(iy+0)->d INI A3 AND E - RES 4,E res 4,(iy+0)->e OTI A4 AND H AND IXH RES 4,H res 4,(iy+0)->h - A5 AND L AND IXL RES 4,L res 4,(iy+0)->l - A6 AND (HL) AND (IX+0) RES 4,(HL) RES 4,(IY+0) - A7 AND A - RES 4,A res 4,(iy+0)->a - A8 XOR B - RES 5,B res 5,(iy+0)->b LDD A9 XOR C - RES 5,C res 5,(iy+0)->c CPD AA XOR D - RES 5,D res 5,(iy+0)->d IND AB XOR E - RES 5,E res 5,(iy+0)->e OTD AC XOR H XOR IXH RES 5,H res 5,(iy+0)->h - AD XOR L XOR IXL RES 5,L res 5,(iy+0)->l - AE XOR (HL) XOR (IX+0) RES 5,(HL) RES 5,(IY+0) - AF XOR A - RES 5,A res 5,(iy+0)->a - B0 OR B - RES 6,B res 6,(iy+0)->b LDIR B1 OR C - RES 6,C res 6,(iy+0)->c CPIR B2 OR D - RES 6,D res 6,(iy+0)->d INIR B3 OR E - RES 6,E res 6,(iy+0)->e OTIR B4 OR H OR IXH RES 6,H res 6,(iy+0)->h - B5 OR L OR IXL RES 6,L res 6,(iy+0)->l - B6 OR (HL) OR (IX+0) RES 6,(HL) RES 6,(IY+0) - B7 OR A - RES 6,A res 6,(iy+0)->a - B8 CP B - RES 7,B res 7,(iy+0)->b LDDR B9 CP C - RES 7,C res 7,(iy+0)->c CPDR BA CP D - RES 7,D res 7,(iy+0)->d INDR BB CP E - RES 7,E res 7,(iy+0)->e OTDR BC CP H CP IXH RES 7,H res 7,(iy+0)->h - BD CP L CP IXL RES 7,L res 7,(iy+0)->l - BE CP (HL) CP (IX+0) RES 7,(HL) RES 7,(IY+0) - BF CP A - RES 7,A res 7,(iy+0)->a - C0 RET NZ - SET 0,B set 0,(iy+0)->b - C1 POP BC - SET 0,C set 0,(iy+0)->c - C2 JP NZ,&0000 - SET 0,D set 0,(iy+0)->d - C3 JP &0000 - SET 0,E set 0,(iy+0)->e - C4 CALL NZ,&0000 - SET 0,H set 0,(iy+0)->h - C5 PUSH BC - SET 0,L set 0,(iy+0)->l - C6 ADD A,&00 - SET 0,(HL) SET 0,(IY+0) - C7 RST &00 - SET 0,A set 0,(iy+0)->a - C8 RET Z - SET 1,B set 1,(iy+0)->b - C9 RET - SET 1,C set 1,(iy+0)->c - CA JP Z,&0000 - SET 1,D set 1,(iy+0)->d - CB **** CB **** - SET 1,E set 1,(iy+0)->e - CC CALL Z,&0000 - SET 1,H set 1,(iy+0)->h - CD CALL &0000 - SET 1,L set 1,(iy+0)->l - CE ADC A,&00 - SET 1,(HL) SET 1,(IY+0) - CF RST &08 - SET 1,A set 1,(iy+0)->a - D0 RET NC - SET 2,B set 2,(iy+0)->b - D1 POP DE - SET 2,C set 2,(iy+0)->c - D2 JP NC,&0000 - SET 2,D set 2,(iy+0)->d - D3 OUT (&00),A - SET 2,E set 2,(iy+0)->e - D4 CALL NC,&0000 - SET 2,H set 2,(iy+0)->h - D5 PUSH DE - SET 2,L set 2,(iy+0)->l - D6 SUB A,&00 - SET 2,(HL) SET 2,(IY+0) - D7 RST &10 - SET 2,A set 2,(iy+0)->a - D8 RET C - SET 3,B set 3,(iy+0)->b - D9 EXX - SET 3,C set 3,(iy+0)->c - DA JP C,&0000 - SET 3,D set 3,(iy+0)->d - DB IN A,(&00) - SET 3,E set 3,(iy+0)->e - DC CALL C,&0000 - SET 3,H set 3,(iy+0)->h - DD **** DD **** - SET 3,L set 3,(iy+0)->l - DE SBC A,&00 - SET 3,(HL) SET 3,(IY+0) - DF RST &18 - SET 3,A set 3,(iy+0)->a - E0 RET PO - SET 4,B set 4,(iy+0)->b - E1 POP HL POP IX SET 4,C set 4,(iy+0)->c - E2 JP PO,&0000 - SET 4,D set 4,(iy+0)->d - E3 EX (SP),HL EX (SP),IX SET 4,E set 4,(iy+0)->e - E4 CALL PO,&0000 - SET 4,H set 4,(iy+0)->h - E5 PUSH HL PUSH IX SET 4,L set 4,(iy+0)->l - E6 AND &00 - SET 4,(HL) SET 4,(IY+0) - E7 RST &20 - SET 4,A set 4,(iy+0)->a - E8 RET PE - SET 5,B set 5,(iy+0)->b - E9 JP (HL) JP (IX) SET 5,C set 5,(iy+0)->c - EA JP PE,&0000 - SET 5,D set 5,(iy+0)->d - EB EX DE,HL - SET 5,E set 5,(iy+0)->e - EC CALL PE,&0000 - SET 5,H set 5,(iy+0)->h - ED **** ED **** - SET 5,L set 5,(iy+0)->l - EE XOR &00 - SET 5,(HL) SET 5,(IY+0) - EF RST &28 - SET 5,A set 5,(iy+0)->a - F0 RET P - SET 6,B set 6,(iy+0)->b - F1 POP AF - SET 6,C set 6,(iy+0)->c - F2 JP P,&0000 - SET 6,D set 6,(iy+0)->d - F3 DI - SET 6,E set 6,(iy+0)->e - F4 CALL P,&0000 - SET 6,H set 6,(iy+0)->h - F5 PUSH AF - SET 6,L set 6,(iy+0)->l - F6 OR &00 - SET 6,(HL) SET 6,(IY+0) - F7 RST &30 - SET 6,A set 6,(iy+0)->a - F8 RET M - SET 7,B set 7,(iy+0)->b [z80] F9 LD SP,HL - SET 7,C set 7,(iy+0)->c [z80] FA JP M,&0000 - SET 7,D set 7,(iy+0)->d [z80] FB EI - SET 7,E set 7,(iy+0)->e ED_LOAD FC CALL M,&0000 - SET 7,H set 7,(iy+0)->h [z80] FD **** FD **** - SET 7,L set 7,(iy+0)->l [z80] FE CP &00 - SET 7,(HL) SET 7,(IY+0) [z80] FF RST &38 - SET 7,A set 7,(iy+0)->a ED_DOS nn nn DD nn CB nn FD CB ff nn ED nn -------------------------------------------------------------------------- 00 NOP - RLC B rlc (iy+0)->b MOS_QUIT 01 LD BC,&0000 - RLC C rlc (iy+0)->c MOS_CLI 02 LD (BC),A - RLC D rlc (iy+0)->d MOS_BYTE 03 INC BC - RLC E rlc (iy+0)->e MOS_WORD 04 INC B - RLC H rlc (iy+0)->h MOS_WRCH 05 DEC B - RLC L rlc (iy+0)->l MOS_RDCH 06 LD B,&00 - RLC (HL) RLC (IY+0) MOS_FILE 07 RLCA - RLC A rlc (iy+0)->a MOS_ARGS 08 EX AF,AF' - RRC B rrc (iy+0)->b MOS_BGET 09 ADD HL,BC ADD IX,BC RRC C rrc (iy+0)->c MOS_BPUT 0A LD A,(BC) - RRC D rrc (iy+0)->d MOS_GBPB 0B DEC BC - RRC E rrc (iy+0)->e MOS_FIND 0C INC C - RRC H rrc (iy+0)->h MOS_FF0C 0D DEC C - RRC L rrc (iy+0)->l MOS_FF0D 0E LD C,&00 - RRC (HL) RRC (IY+0) MOS_FF0E 0F RRCA - RRC A rrc (iy+0)->a MOS_FF0F 10 DJNZ &4546 - RL B rl (iy+0)->b - 11 LD DE,&0000 - RL C rl (iy+0)->c - 12 LD (DE),A - RL D rl (iy+0)->d - 13 INC DE - RL E rl (iy+0)->e - 14 INC D - RL H rl (iy+0)->h - 15 DEC D - RL L rl (iy+0)->l - 16 LD D,&00 - RL (HL) RL (IY+0) - 17 RLA - RL A rl (iy+0)->a - 18 JR &4546 - RR B rr (iy+0)->b - 19 ADD HL,DE ADD IX,DE RR C rr (iy+0)->c - 1A LD A,(DE) - RR D rr (iy+0)->d - 1B DEC DE - RR E rr (iy+0)->e - 1C INC E - RR H rr (iy+0)->h - 1D DEC E - RR L rr (iy+0)->l - 1E LD E,&00 - RR (HL) RR (IY+0) - 1F RRA - RR A rr (iy+0)->a - 20 JR NZ,&4546 - SLA B sla (iy+0)->b - 21 LD HL,&0000 LD IX,&0000 SLA C sla (iy+0)->c - 22 LD (&0000),HL LD (&0000),IX SLA D sla (iy+0)->d - 23 INC HL INC IX SLA E sla (iy+0)->e - 24 INC H INC IXH SLA H sla (iy+0)->h - 25 DEC H DEC IXH SLA L sla (iy+0)->l - 26 LD H,&00 LD IXH,&00 SLA (HL) SLA (IY+0) - 27 DAA - SLA A sla (iy+0)->a - 28 JR Z,&4546 - SRA B sra (iy+0)->b - 29 ADD HL,HL ADD IX,IX SRA C sra (iy+0)->c - 2A LD HL,(&0000) LD IX,(&0000) SRA D sra (iy+0)->d - 2B DEC HL DEC IX SRA E sra (iy+0)->e - 2C INC L INC IXL SRA H sra (iy+0)->h - 2D DEC L DEC IXL SRA L sra (iy+0)->l - 2E LD L,&00 LD IXL,&00 SRA (HL) SRA (IY+0) - 2F CPL - SRA A sra (iy+0)->a - 30 JR NC,&4546 - SLS B sls (iy+0)->b - 31 LD SP,&0000 - SLS C sls (iy+0)->c - 32 LD (&0000),A - SLS D sls (iy+0)->d - 33 INC SP - SLS E sls (iy+0)->e - 34 INC (HL) INC (IX+0) SLS H sls (iy+0)->h - 35 DEC (HL) DEC (IX+0) SLS L sls (iy+0)->l - 36 LD (HL),&00 LD (IX+0),&00 SLS (HL) SLS (IY+0) - 37 SCF - SLS A sls (iy+0)->a - 38 JR C,&4546 - SRL B srl (iy+0)->b - 39 ADD HL,SP ADD IX,SP SRL C srl (iy+0)->c - 3A LD A,(&0000) - SRL D srl (iy+0)->d - 3B DEC SP - SRL E srl (iy+0)->e - 3C INC A - SRL H srl (iy+0)->h - 3D DEC A - SRL L srl (iy+0)->l - 3E LD A,&00 - SRL (HL) SRL (IY+0) - 3F CCF - SRL A srl (iy+0)->a - 40 LD B,B - BIT 0,B bit 0,(iy+0)->b IN B,(C) 41 LD B,C - BIT 0,C bit 0,(iy+0)->c OUT (C),B 42 LD B,D - BIT 0,D bit 0,(iy+0)->d SBC HL,BC 43 LD B,E - BIT 0,E bit 0,(iy+0)->e LD (&0000),BC 44 LD B,H LD B,IXH BIT 0,H bit 0,(iy+0)->h NEG 45 LD B,L LD B,IXL BIT 0,L bit 0,(iy+0)->l RETN 46 LD B,(HL) LD B,(IX+0) BIT 0,(HL) BIT 0,(IY+0) IM 0 47 LD B,A - BIT 0,A bit 0,(iy+0)->a LD I,A 48 LD C,B - BIT 1,B bit 1,(iy+0)->b IN C,(C) 49 LD C,C - BIT 1,C bit 1,(iy+0)->c OUT (C),C 4A LD C,D - BIT 1,D bit 1,(iy+0)->d ADC HL,BC 4B LD C,E - BIT 1,E bit 1,(iy+0)->e LD BC,(&0000) 4C LD C,H LD C,IXH BIT 1,H bit 1,(iy+0)->h [neg] 4D LD C,L LD C,IXL BIT 1,L bit 1,(iy+0)->l RETI 4E LD C,(HL) LD C,(IX+0) BIT 1,(HL) BIT 1,(IY+0) [im0] 4F LD C,A - BIT 1,A bit 1,(iy+0)->a LD R,A 50 LD D,B - BIT 2,B bit 2,(iy+0)->b IN D,(C) 51 LD D,C - BIT 2,C bit 2,(iy+0)->c OUT (C),D 52 LD D,D - BIT 2,D bit 2,(iy+0)->d SBC HL,DE 53 LD D,E - BIT 2,E bit 2,(iy+0)->e LD (&0000),DE 54 LD D,H LD D,IXH BIT 2,H bit 2,(iy+0)->h [neg] 55 LD D,L LD D,IXL BIT 2,L bit 2,(iy+0)->l [retn] 56 LD D,(HL) LD D,(IX+0) BIT 2,(HL) BIT 2,(IY+0) IM 1 57 LD D,A - BIT 2,A bit 2,(iy+0)->a LD A,I 58 LD E,B - BIT 3,B bit 3,(iy+0)->b IN E,(C) 59 LD E,C - BIT 3,C bit 3,(iy+0)->c OUT (C),E 5A LD E,D - BIT 3,D bit 3,(iy+0)->d ADC HL,DE 5B LD E,E - BIT 3,E bit 3,(iy+0)->e LD DE,(&0000) 5C LD E,H LD E,IXH BIT 3,H bit 3,(iy+0)->h [neg] 5D LD E,L LD E,IXL BIT 3,L bit 3,(iy+0)->l [reti] 5E LD E,(HL) LD E,(IX+0) BIT 3,(HL) BIT 3,(IY+0) IM 2 5F LD E,A - BIT 3,A bit 3,(iy+0)->a LD A,R 60 LD H,B LD IXH,B BIT 4,B bit 4,(iy+0)->b IN H,(C) 61 LD H,C LD IXH,C BIT 4,C bit 4,(iy+0)->c OUT (C),H 62 LD H,D LD IXH,D BIT 4,D bit 4,(iy+0)->d SBC HL,HL 63 LD H,E LD IXH,E BIT 4,E bit 4,(iy+0)->e LD (&0000),HL 64 LD H,H LD IXH,IXH BIT 4,H bit 4,(iy+0)->h [neg] 65 LD H,L LD IXH,IXL BIT 4,L bit 4,(iy+0)->l [retn] 66 LD H,(HL) LD H,(IX+0) BIT 4,(HL) BIT 4,(IY+0) [im0] 67 LD H,A LD IXH,A BIT 4,A bit 4,(iy+0)->a RRD 68 LD L,B LD IXL,B BIT 5,B bit 5,(iy+0)->b IN L,(C) 69 LD L,C LD IXL,C BIT 5,C bit 5,(iy+0)->c OUT (C),L 6A LD L,D LD IXL,D BIT 5,D bit 5,(iy+0)->d ADC HL,HL 6B LD L,E LD IXL,E BIT 5,E bit 5,(iy+0)->e LD HL,(&0000) 6C LD L,H LD IXL,IXH BIT 5,H bit 5,(iy+0)->h [neg] 6D LD L,L LD IXL,IXL BIT 5,L bit 5,(iy+0)->l [reti] 6E LD L,(HL) LD L,(IX+0) BIT 5,(HL) BIT 5,(IY+0) [im0] 6F LD L,A LD IXL,A BIT 5,A bit 5,(iy+0)->a RLD 70 LD (HL),B LD (IX+0),B BIT 6,B bit 6,(iy+0)->b IN F,(C) 71 LD (HL),C LD (IX+0),C BIT 6,C bit 6,(iy+0)->c OUT (C),F 72 LD (HL),D LD (IX+0),D BIT 6,D bit 6,(iy+0)->d SBC HL,SP 73 LD (HL),E LD (IX+0),E BIT 6,E bit 6,(iy+0)->e LD (&0000),SP 74 LD (HL),H LD (IX+0),H BIT 6,H bit 6,(iy+0)->h [neg] 75 LD (HL),L LD (IX+0),L BIT 6,L bit 6,(iy+0)->l [retn] 76 HALT - BIT 6,(HL) BIT 6,(IY+0) [im1] 77 LD (HL),A LD (IX+0),A BIT 6,A bit 6,(iy+0)->a [ld i,i?] 78 LD A,B - BIT 7,B bit 7,(iy+0)->b IN A,(C) 79 LD A,C - BIT 7,C bit 7,(iy+0)->c OUT (C),A 7A LD A,D - BIT 7,D bit 7,(iy+0)->d ADC HL,SP 7B LD A,E - BIT 7,E bit 7,(iy+0)->e LD SP,(&0000) 7C LD A,H LD A,IXH BIT 7,H bit 7,(iy+0)->h [neg] 7D LD A,L LD A,IXL BIT 7,L bit 7,(iy+0)->l [reti] 7E LD A,(HL) LD A,(IX+0) BIT 7,(HL) BIT 7,(IY+0) [im2] 7F LD A,A - BIT 7,A bit 7,(iy+0)->a [ld r,r?] 80 ADD A,B - RES 0,B res 0,(iy+0)->b - 81 ADD A,C - RES 0,C res 0,(iy+0)->c - 82 ADD A,D - RES 0,D res 0,(iy+0)->d - 83 ADD A,E - RES 0,E res 0,(iy+0)->e - 84 ADD A,H ADD A,IXH RES 0,H res 0,(iy+0)->h - 85 ADD A,L ADD A,IXL RES 0,L res 0,(iy+0)->l - 86 ADD A,(HL) ADD A,(IX+0) RES 0,(HL) RES 0,(IY+0) - 87 ADD A,A - RES 0,A res 0,(iy+0)->a - 88 ADC A,B - RES 1,B res 1,(iy+0)->b - 89 ADC A,C - RES 1,C res 1,(iy+0)->c - 8A ADC A,D - RES 1,D res 1,(iy+0)->d - 8B ADC A,E - RES 1,E res 1,(iy+0)->e - 8C ADC A,H ADC A,IXH RES 1,H res 1,(iy+0)->h - 8D ADC A,L ADC A,IXL RES 1,L res 1,(iy+0)->l - 8E ADC A,(HL) ADC A,(IX+0) RES 1,(HL) RES 1,(IY+0) - 8F ADC A,A - RES 1,A res 1,(iy+0)->a - 90 SUB A,B - RES 2,B res 2,(iy+0)->b - 91 SUB A,C - RES 2,C res 2,(iy+0)->c - 92 SUB A,D - RES 2,D res 2,(iy+0)->d - 93 SUB A,E - RES 2,E res 2,(iy+0)->e - 94 SUB A,H SUB A,IXH RES 2,H res 2,(iy+0)->h - 95 SUB A,L SUB A,IXL RES 2,L res 2,(iy+0)->l - 96 SUB A,(HL) SUB A,(IX+0) RES 2,(HL) RES 2,(IY+0) - 97 SUB A,A - RES 2,A res 2,(iy+0)->a - 98 SBC A,B - RES 3,B res 3,(iy+0)->b - 99 SBC A,C - RES 3,C res 3,(iy+0)->c - 9A SBC A,D - RES 3,D res 3,(iy+0)->d - 9B SBC A,E - RES 3,E res 3,(iy+0)->e - 9C SBC A,H SBC A,IXH RES 3,H res 3,(iy+0)->h - 9D SBC A,L SBC A,IXL RES 3,L res 3,(iy+0)->l - 9E SBC A,(HL) SBC A,(IX+0) RES 3,(HL) RES 3,(IY+0) - 9F SBC A,A - RES 3,A res 3,(iy+0)->a - A0 AND B - RES 4,B res 4,(iy+0)->b LDI A1 AND C - RES 4,C res 4,(iy+0)->c CPI A2 AND D - RES 4,D res 4,(iy+0)->d INI A3 AND E - RES 4,E res 4,(iy+0)->e OTI A4 AND H AND IXH RES 4,H res 4,(iy+0)->h - A5 AND L AND IXL RES 4,L res 4,(iy+0)->l - A6 AND (HL) AND (IX+0) RES 4,(HL) RES 4,(IY+0) - A7 AND A - RES 4,A res 4,(iy+0)->a - A8 XOR B - RES 5,B res 5,(iy+0)->b LDD A9 XOR C - RES 5,C res 5,(iy+0)->c CPD AA XOR D - RES 5,D res 5,(iy+0)->d IND AB XOR E - RES 5,E res 5,(iy+0)->e OTD AC XOR H XOR IXH RES 5,H res 5,(iy+0)->h - AD XOR L XOR IXL RES 5,L res 5,(iy+0)->l - AE XOR (HL) XOR (IX+0) RES 5,(HL) RES 5,(IY+0) - AF XOR A - RES 5,A res 5,(iy+0)->a - B0 OR B - RES 6,B res 6,(iy+0)->b LDIR B1 OR C - RES 6,C res 6,(iy+0)->c CPIR B2 OR D - RES 6,D res 6,(iy+0)->d INIR B3 OR E - RES 6,E res 6,(iy+0)->e OTIR B4 OR H OR IXH RES 6,H res 6,(iy+0)->h - B5 OR L OR IXL RES 6,L res 6,(iy+0)->l - B6 OR (HL) OR (IX+0) RES 6,(HL) RES 6,(IY+0) - B7 OR A - RES 6,A res 6,(iy+0)->a - B8 CP B - RES 7,B res 7,(iy+0)->b LDDR B9 CP C - RES 7,C res 7,(iy+0)->c CPDR BA CP D - RES 7,D res 7,(iy+0)->d INDR BB CP E - RES 7,E res 7,(iy+0)->e OTDR BC CP H CP IXH RES 7,H res 7,(iy+0)->h - BD CP L CP IXL RES 7,L res 7,(iy+0)->l - BE CP (HL) CP (IX+0) RES 7,(HL) RES 7,(IY+0) - BF CP A - RES 7,A res 7,(iy+0)->a - C0 RET NZ - SET 0,B set 0,(iy+0)->b - C1 POP BC - SET 0,C set 0,(iy+0)->c - C2 JP NZ,&0000 - SET 0,D set 0,(iy+0)->d - C3 JP &0000 - SET 0,E set 0,(iy+0)->e - C4 CALL NZ,&0000 - SET 0,H set 0,(iy+0)->h - C5 PUSH BC - SET 0,L set 0,(iy+0)->l - C6 ADD A,&00 - SET 0,(HL) SET 0,(IY+0) - C7 RST &00 - SET 0,A set 0,(iy+0)->a - C8 RET Z - SET 1,B set 1,(iy+0)->b - C9 RET - SET 1,C set 1,(iy+0)->c - CA JP Z,&0000 - SET 1,D set 1,(iy+0)->d - CB **** CB **** - SET 1,E set 1,(iy+0)->e - CC CALL Z,&0000 - SET 1,H set 1,(iy+0)->h - CD CALL &0000 - SET 1,L set 1,(iy+0)->l - CE ADC A,&00 - SET 1,(HL) SET 1,(IY+0) - CF RST &08 - SET 1,A set 1,(iy+0)->a - D0 RET NC - SET 2,B set 2,(iy+0)->b - D1 POP DE - SET 2,C set 2,(iy+0)->c - D2 JP NC,&0000 - SET 2,D set 2,(iy+0)->d - D3 OUT (&00),A - SET 2,E set 2,(iy+0)->e - D4 CALL NC,&0000 - SET 2,H set 2,(iy+0)->h - D5 PUSH DE - SET 2,L set 2,(iy+0)->l - D6 SUB A,&00 - SET 2,(HL) SET 2,(IY+0) - D7 RST &10 - SET 2,A set 2,(iy+0)->a - D8 RET C - SET 3,B set 3,(iy+0)->b - D9 EXX - SET 3,C set 3,(iy+0)->c - DA JP C,&0000 - SET 3,D set 3,(iy+0)->d - DB IN A,(&00) - SET 3,E set 3,(iy+0)->e - DC CALL C,&0000 - SET 3,H set 3,(iy+0)->h - DD **** DD **** - SET 3,L set 3,(iy+0)->l - DE SBC A,&00 - SET 3,(HL) SET 3,(IY+0) - DF RST &18 - SET 3,A set 3,(iy+0)->a - E0 RET PO - SET 4,B set 4,(iy+0)->b - E1 POP HL POP IX SET 4,C set 4,(iy+0)->c - E2 JP PO,&0000 - SET 4,D set 4,(iy+0)->d - E3 EX (SP),HL EX (SP),IX SET 4,E set 4,(iy+0)->e - E4 CALL PO,&0000 - SET 4,H set 4,(iy+0)->h - E5 PUSH HL PUSH IX SET 4,L set 4,(iy+0)->l - E6 AND &00 - SET 4,(HL) SET 4,(IY+0) - E7 RST &20 - SET 4,A set 4,(iy+0)->a - E8 RET PE - SET 5,B set 5,(iy+0)->b - E9 JP (HL) JP (IX) SET 5,C set 5,(iy+0)->c - EA JP PE,&0000 - SET 5,D set 5,(iy+0)->d - EB EX DE,HL - SET 5,E set 5,(iy+0)->e - EC CALL PE,&0000 - SET 5,H set 5,(iy+0)->h - ED **** ED **** - SET 5,L set 5,(iy+0)->l - EE XOR &00 - SET 5,(HL) SET 5,(IY+0) - EF RST &28 - SET 5,A set 5,(iy+0)->a - F0 RET P - SET 6,B set 6,(iy+0)->b - F1 POP AF - SET 6,C set 6,(iy+0)->c - F2 JP P,&0000 - SET 6,D set 6,(iy+0)->d - F3 DI - SET 6,E set 6,(iy+0)->e - F4 CALL P,&0000 - SET 6,H set 6,(iy+0)->h - F5 PUSH AF - SET 6,L set 6,(iy+0)->l - F6 OR &00 - SET 6,(HL) SET 6,(IY+0) - F7 RST &30 - SET 6,A set 6,(iy+0)->a - F8 RET M - SET 7,B set 7,(iy+0)->b [z80] F9 LD SP,HL - SET 7,C set 7,(iy+0)->c [z80] FA JP M,&0000 - SET 7,D set 7,(iy+0)->d [z80] FB EI - SET 7,E set 7,(iy+0)->e ED_LOAD FC CALL M,&0000 - SET 7,H set 7,(iy+0)->h [z80] FD **** FD **** - SET 7,L set 7,(iy+0)->l [z80] FE CP &00 - SET 7,(HL) SET 7,(IY+0) [z80] FF RST &38 - SET 7,A set 7,(iy+0)->a ED_DOS nn nn DD nn CB nn FD CB ff nn ED nn -------------------------------------------------------------------------- 00 NOP - RLC B rlc (iy+0)->b MOS_QUIT 01 LD BC,&0000 - RLC C rlc (iy+0)->c MOS_CLI 02 LD (BC),A - RLC D rlc (iy+0)->d MOS_BYTE 03 INC BC - RLC E rlc (iy+0)->e MOS_WORD 04 INC B - RLC H rlc (iy+0)->h MOS_WRCH 05 DEC B - RLC L rlc (iy+0)->l MOS_RDCH 06 LD B,&00 - RLC (HL) RLC (IY+0) MOS_FILE 07 RLCA - RLC A rlc (iy+0)->a MOS_ARGS 08 EX AF,AF' - RRC B rrc (iy+0)->b MOS_BGET 09 ADD HL,BC ADD IX,BC RRC C rrc (iy+0)->c MOS_BPUT 0A LD A,(BC) - RRC D rrc (iy+0)->d MOS_GBPB 0B DEC BC - RRC E rrc (iy+0)->e MOS_FIND 0C INC C - RRC H rrc (iy+0)->h MOS_FF0C 0D DEC C - RRC L rrc (iy+0)->l MOS_FF0D 0E LD C,&00 - RRC (HL) RRC (IY+0) MOS_FF0E 0F RRCA - RRC A rrc (iy+0)->a MOS_FF0F 10 DJNZ &4546 - RL B rl (iy+0)->b - 11 LD DE,&0000 - RL C rl (iy+0)->c - 12 LD (DE),A - RL D rl (iy+0)->d - 13 INC DE - RL E rl (iy+0)->e - 14 INC D - RL H rl (iy+0)->h - 15 DEC D - RL L rl (iy+0)->l - 16 LD D,&00 - RL (HL) RL (IY+0) - 17 RLA - RL A rl (iy+0)->a - 18 JR &4546 - RR B rr (iy+0)->b - 19 ADD HL,DE ADD IX,DE RR C rr (iy+0)->c - 1A LD A,(DE) - RR D rr (iy+0)->d - 1B DEC DE - RR E rr (iy+0)->e - 1C INC E - RR H rr (iy+0)->h - 1D DEC E - RR L rr (iy+0)->l - 1E LD E,&00 - RR (HL) RR (IY+0) - 1F RRA - RR A rr (iy+0)->a - 20 JR NZ,&4546 - SLA B sla (iy+0)->b - 21 LD HL,&0000 LD IX,&0000 SLA C sla (iy+0)->c - 22 LD (&0000),HL LD (&0000),IX SLA D sla (iy+0)->d - 23 INC HL INC IX SLA E sla (iy+0)->e - 24 INC H INC IXH SLA H sla (iy+0)->h - 25 DEC H DEC IXH SLA L sla (iy+0)->l - 26 LD H,&00 LD IXH,&00 SLA (HL) SLA (IY+0) - 27 DAA - SLA A sla (iy+0)->a - 28 JR Z,&4546 - SRA B sra (iy+0)->b - 29 ADD HL,HL ADD IX,IX SRA C sra (iy+0)->c - 2A LD HL,(&0000) LD IX,(&0000) SRA D sra (iy+0)->d - 2B DEC HL DEC IX SRA E sra (iy+0)->e - 2C INC L INC IXL SRA H sra (iy+0)->h - 2D DEC L DEC IXL SRA L sra (iy+0)->l - 2E LD L,&00 LD IXL,&00 SRA (HL) SRA (IY+0) - 2F CPL - SRA A sra (iy+0)->a - 30 JR NC,&4546 - SLS B sls (iy+0)->b - 31 LD SP,&0000 - SLS C sls (iy+0)->c - 32 LD (&0000),A - SLS D sls (iy+0)->d - 33 INC SP - SLS E sls (iy+0)->e - 34 INC (HL) INC (IX+0) SLS H sls (iy+0)->h - 35 DEC (HL) DEC (IX+0) SLS L sls (iy+0)->l - 36 LD (HL),&00 LD (IX+0),&00 SLS (HL) SLS (IY+0) - 37 SCF - SLS A sls (iy+0)->a - 38 JR C,&4546 - SRL B srl (iy+0)->b - 39 ADD HL,SP ADD IX,SP SRL C srl (iy+0)->c - 3A LD A,(&0000) - SRL D srl (iy+0)->d - 3B DEC SP - SRL E srl (iy+0)->e - 3C INC A - SRL H srl (iy+0)->h - 3D DEC A - SRL L srl (iy+0)->l - 3E LD A,&00 - SRL (HL) SRL (IY+0) - 3F CCF - SRL A srl (iy+0)->a - 40 LD B,B - BIT 0,B bit 0,(iy+0)->b IN B,(C) 41 LD B,C - BIT 0,C bit 0,(iy+0)->c OUT (C),B 42 LD B,D - BIT 0,D bit 0,(iy+0)->d SBC HL,BC 43 LD B,E - BIT 0,E bit 0,(iy+0)->e LD (&0000),BC 44 LD B,H LD B,IXH BIT 0,H bit 0,(iy+0)->h NEG 45 LD B,L LD B,IXL BIT 0,L bit 0,(iy+0)->l RETN 46 LD B,(HL) LD B,(IX+0) BIT 0,(HL) BIT 0,(IY+0) IM 0 47 LD B,A - BIT 0,A bit 0,(iy+0)->a LD I,A 48 LD C,B - BIT 1,B bit 1,(iy+0)->b IN C,(C) 49 LD C,C - BIT 1,C bit 1,(iy+0)->c OUT (C),C 4A LD C,D - BIT 1,D bit 1,(iy+0)->d ADC HL,BC 4B LD C,E - BIT 1,E bit 1,(iy+0)->e LD BC,(&0000) 4C LD C,H LD C,IXH BIT 1,H bit 1,(iy+0)->h [neg] 4D LD C,L LD C,IXL BIT 1,L bit 1,(iy+0)->l RETI 4E LD C,(HL) LD C,(IX+0) BIT 1,(HL) BIT 1,(IY+0) [im0] 4F LD C,A - BIT 1,A bit 1,(iy+0)->a LD R,A 50 LD D,B - BIT 2,B bit 2,(iy+0)->b IN D,(C) 51 LD D,C - BIT 2,C bit 2,(iy+0)->c OUT (C),D 52 LD D,D - BIT 2,D bit 2,(iy+0)->d SBC HL,DE 53 LD D,E - BIT 2,E bit 2,(iy+0)->e LD (&0000),DE 54 LD D,H LD D,IXH BIT 2,H bit 2,(iy+0)->h [neg] 55 LD D,L LD D,IXL BIT 2,L bit 2,(iy+0)->l [retn] 56 LD D,(HL) LD D,(IX+0) BIT 2,(HL) BIT 2,(IY+0) IM 1 57 LD D,A - BIT 2,A bit 2,(iy+0)->a LD A,I 58 LD E,B - BIT 3,B bit 3,(iy+0)->b IN E,(C) 59 LD E,C - BIT 3,C bit 3,(iy+0)->c OUT (C),E 5A LD E,D - BIT 3,D bit 3,(iy+0)->d ADC HL,DE 5B LD E,E - BIT 3,E bit 3,(iy+0)->e LD DE,(&0000) 5C LD E,H LD E,IXH BIT 3,H bit 3,(iy+0)->h [neg] 5D LD E,L LD E,IXL BIT 3,L bit 3,(iy+0)->l [reti] 5E LD E,(HL) LD E,(IX+0) BIT 3,(HL) BIT 3,(IY+0) IM 2 5F LD E,A - BIT 3,A bit 3,(iy+0)->a LD A,R 60 LD H,B LD IXH,B BIT 4,B bit 4,(iy+0)->b IN H,(C) 61 LD H,C LD IXH,C BIT 4,C bit 4,(iy+0)->c OUT (C),H 62 LD H,D LD IXH,D BIT 4,D bit 4,(iy+0)->d SBC HL,HL 63 LD H,E LD IXH,E BIT 4,E bit 4,(iy+0)->e LD (&0000),HL 64 LD H,H LD IXH,IXH BIT 4,H bit 4,(iy+0)->h [neg] 65 LD H,L LD IXH,IXL BIT 4,L bit 4,(iy+0)->l [retn] 66 LD H,(HL) LD H,(IX+0) BIT 4,(HL) BIT 4,(IY+0) [im0] 67 LD H,A LD IXH,A BIT 4,A bit 4,(iy+0)->a RRD 68 LD L,B LD IXL,B BIT 5,B bit 5,(iy+0)->b IN L,(C) 69 LD L,C LD IXL,C BIT 5,C bit 5,(iy+0)->c OUT (C),L 6A LD L,D LD IXL,D BIT 5,D bit 5,(iy+0)->d ADC HL,HL 6B LD L,E LD IXL,E BIT 5,E bit 5,(iy+0)->e LD HL,(&0000) 6C LD L,H LD IXL,IXH BIT 5,H bit 5,(iy+0)->h [neg] 6D LD L,L LD IXL,IXL BIT 5,L bit 5,(iy+0)->l [reti] 6E LD L,(HL) LD L,(IX+0) BIT 5,(HL) BIT 5,(IY+0) [im0] 6F LD L,A LD IXL,A BIT 5,A bit 5,(iy+0)->a RLD 70 LD (HL),B LD (IX+0),B BIT 6,B bit 6,(iy+0)->b IN F,(C) 71 LD (HL),C LD (IX+0),C BIT 6,C bit 6,(iy+0)->c OUT (C),F 72 LD (HL),D LD (IX+0),D BIT 6,D bit 6,(iy+0)->d SBC HL,SP 73 LD (HL),E LD (IX+0),E BIT 6,E bit 6,(iy+0)->e LD (&0000),SP 74 LD (HL),H LD (IX+0),H BIT 6,H bit 6,(iy+0)->h [neg] 75 LD (HL),L LD (IX+0),L BIT 6,L bit 6,(iy+0)->l [retn] 76 HALT - BIT 6,(HL) BIT 6,(IY+0) [im1] 77 LD (HL),A LD (IX+0),A BIT 6,A bit 6,(iy+0)->a [ld i,i?] 78 LD A,B - BIT 7,B bit 7,(iy+0)->b IN A,(C) 79 LD A,C - BIT 7,C bit 7,(iy+0)->c OUT (C),A 7A LD A,D - BIT 7,D bit 7,(iy+0)->d ADC HL,SP 7B LD A,E - BIT 7,E bit 7,(iy+0)->e LD SP,(&0000) 7C LD A,H LD A,IXH BIT 7,H bit 7,(iy+0)->h [neg] 7D LD A,L LD A,IXL BIT 7,L bit 7,(iy+0)->l [reti] 7E LD A,(HL) LD A,(IX+0) BIT 7,(HL) BIT 7,(IY+0) [im2] 7F LD A,A - BIT 7,A bit 7,(iy+0)->a [ld r,r?] 80 ADD A,B - RES 0,B res 0,(iy+0)->b - 81 ADD A,C - RES 0,C res 0,(iy+0)->c - 82 ADD A,D - RES 0,D res 0,(iy+0)->d - 83 ADD A,E - RES 0,E res 0,(iy+0)->e - 84 ADD A,H ADD A,IXH RES 0,H res 0,(iy+0)->h - 85 ADD A,L ADD A,IXL RES 0,L res 0,(iy+0)->l - 86 ADD A,(HL) ADD A,(IX+0) RES 0,(HL) RES 0,(IY+0) - 87 ADD A,A - RES 0,A res 0,(iy+0)->a - 88 ADC A,B - RES 1,B res 1,(iy+0)->b - 89 ADC A,C - RES 1,C res 1,(iy+0)->c - 8A ADC A,D - RES 1,D res 1,(iy+0)->d - 8B ADC A,E - RES 1,E res 1,(iy+0)->e - 8C ADC A,H ADC A,IXH RES 1,H res 1,(iy+0)->h - 8D ADC A,L ADC A,IXL RES 1,L res 1,(iy+0)->l - 8E ADC A,(HL) ADC A,(IX+0) RES 1,(HL) RES 1,(IY+0) - 8F ADC A,A - RES 1,A res 1,(iy+0)->a - 90 SUB A,B - RES 2,B res 2,(iy+0)->b - 91 SUB A,C - RES 2,C res 2,(iy+0)->c - 92 SUB A,D - RES 2,D res 2,(iy+0)->d - 93 SUB A,E - RES 2,E res 2,(iy+0)->e - 94 SUB A,H SUB A,IXH RES 2,H res 2,(iy+0)->h - 95 SUB A,L SUB A,IXL RES 2,L res 2,(iy+0)->l - 96 SUB A,(HL) SUB A,(IX+0) RES 2,(HL) RES 2,(IY+0) - 97 SUB A,A - RES 2,A res 2,(iy+0)->a - 98 SBC A,B - RES 3,B res 3,(iy+0)->b - 99 SBC A,C - RES 3,C res 3,(iy+0)->c - 9A SBC A,D - RES 3,D res 3,(iy+0)->d - 9B SBC A,E - RES 3,E res 3,(iy+0)->e - 9C SBC A,H SBC A,IXH RES 3,H res 3,(iy+0)->h - 9D SBC A,L SBC A,IXL RES 3,L res 3,(iy+0)->l - 9E SBC A,(HL) SBC A,(IX+0) RES 3,(HL) RES 3,(IY+0) - 9F SBC A,A - RES 3,A res 3,(iy+0)->a - A0 AND B - RES 4,B res 4,(iy+0)->b LDI A1 AND C - RES 4,C res 4,(iy+0)->c CPI A2 AND D - RES 4,D res 4,(iy+0)->d INI A3 AND E - RES 4,E res 4,(iy+0)->e OTI A4 AND H AND IXH RES 4,H res 4,(iy+0)->h - A5 AND L AND IXL RES 4,L res 4,(iy+0)->l - A6 AND (HL) AND (IX+0) RES 4,(HL) RES 4,(IY+0) - A7 AND A - RES 4,A res 4,(iy+0)->a - A8 XOR B - RES 5,B res 5,(iy+0)->b LDD A9 XOR C - RES 5,C res 5,(iy+0)->c CPD AA XOR D - RES 5,D res 5,(iy+0)->d IND AB XOR E - RES 5,E res 5,(iy+0)->e OTD AC XOR H XOR IXH RES 5,H res 5,(iy+0)->h - AD XOR L XOR IXL RES 5,L res 5,(iy+0)->l - AE XOR (HL) XOR (IX+0) RES 5,(HL) RES 5,(IY+0) - AF XOR A - RES 5,A res 5,(iy+0)->a - B0 OR B - RES 6,B res 6,(iy+0)->b LDIR B1 OR C - RES 6,C res 6,(iy+0)->c CPIR B2 OR D - RES 6,D res 6,(iy+0)->d INIR B3 OR E - RES 6,E res 6,(iy+0)->e OTIR B4 OR H OR IXH RES 6,H res 6,(iy+0)->h - B5 OR L OR IXL RES 6,L res 6,(iy+0)->l - B6 OR (HL) OR (IX+0) RES 6,(HL) RES 6,(IY+0) - B7 OR A - RES 6,A res 6,(iy+0)->a - B8 CP B - RES 7,B res 7,(iy+0)->b LDDR B9 CP C - RES 7,C res 7,(iy+0)->c CPDR BA CP D - RES 7,D res 7,(iy+0)->d INDR BB CP E - RES 7,E res 7,(iy+0)->e OTDR BC CP H CP IXH RES 7,H res 7,(iy+0)->h - BD CP L CP IXL RES 7,L res 7,(iy+0)->l - BE CP (HL) CP (IX+0) RES 7,(HL) RES 7,(IY+0) - BF CP A - RES 7,A res 7,(iy+0)->a - C0 RET NZ - SET 0,B set 0,(iy+0)->b - C1 POP BC - SET 0,C set 0,(iy+0)->c - C2 JP NZ,&0000 - SET 0,D set 0,(iy+0)->d - C3 JP &0000 - SET 0,E set 0,(iy+0)->e - C4 CALL NZ,&0000 - SET 0,H set 0,(iy+0)->h - C5 PUSH BC - SET 0,L set 0,(iy+0)->l - C6 ADD A,&00 - SET 0,(HL) SET 0,(IY+0) - C7 RST &00 - SET 0,A set 0,(iy+0)->a - C8 RET Z - SET 1,B set 1,(iy+0)->b - C9 RET - SET 1,C set 1,(iy+0)->c - CA JP Z,&0000 - SET 1,D set 1,(iy+0)->d - CB **** CB **** - SET 1,E set 1,(iy+0)->e - CC CALL Z,&0000 - SET 1,H set 1,(iy+0)->h - CD CALL &0000 - SET 1,L set 1,(iy+0)->l - CE ADC A,&00 - SET 1,(HL) SET 1,(IY+0) - CF RST &08 - SET 1,A set 1,(iy+0)->a - D0 RET NC - SET 2,B set 2,(iy+0)->b - D1 POP DE - SET 2,C set 2,(iy+0)->c - D2 JP NC,&0000 - SET 2,D set 2,(iy+0)->d - D3 OUT (&00),A - SET 2,E set 2,(iy+0)->e - D4 CALL NC,&0000 - SET 2,H set 2,(iy+0)->h - D5 PUSH DE - SET 2,L set 2,(iy+0)->l - D6 SUB A,&00 - SET 2,(HL) SET 2,(IY+0) - D7 RST &10 - SET 2,A set 2,(iy+0)->a - D8 RET C - SET 3,B set 3,(iy+0)->b - D9 EXX - SET 3,C set 3,(iy+0)->c - DA JP C,&0000 - SET 3,D set 3,(iy+0)->d - DB IN A,(&00) - SET 3,E set 3,(iy+0)->e - DC CALL C,&0000 - SET 3,H set 3,(iy+0)->h - DD **** DD **** - SET 3,L set 3,(iy+0)->l - DE SBC A,&00 - SET 3,(HL) SET 3,(IY+0) - DF RST &18 - SET 3,A set 3,(iy+0)->a - E0 RET PO - SET 4,B set 4,(iy+0)->b - E1 POP HL POP IX SET 4,C set 4,(iy+0)->c - E2 JP PO,&0000 - SET 4,D set 4,(iy+0)->d - E3 EX (SP),HL EX (SP),IX SET 4,E set 4,(iy+0)->e - E4 CALL PO,&0000 - SET 4,H set 4,(iy+0)->h - E5 PUSH HL PUSH IX SET 4,L set 4,(iy+0)->l - E6 AND &00 - SET 4,(HL) SET 4,(IY+0) - E7 RST &20 - SET 4,A set 4,(iy+0)->a - E8 RET PE - SET 5,B set 5,(iy+0)->b - E9 JP (HL) JP (IX) SET 5,C set 5,(iy+0)->c - EA JP PE,&0000 - SET 5,D set 5,(iy+0)->d - EB EX DE,HL - SET 5,E set 5,(iy+0)->e - EC CALL PE,&0000 - SET 5,H set 5,(iy+0)->h - ED **** ED **** - SET 5,L set 5,(iy+0)->l - EE XOR &00 - SET 5,(HL) SET 5,(IY+0) - EF RST &28 - SET 5,A set 5,(iy+0)->a - F0 RET P - SET 6,B set 6,(iy+0)->b - F1 POP AF - SET 6,C set 6,(iy+0)->c - F2 JP P,&0000 - SET 6,D set 6,(iy+0)->d - F3 DI - SET 6,E set 6,(iy+0)->e - F4 CALL P,&0000 - SET 6,H set 6,(iy+0)->h - F5 PUSH AF - SET 6,L set 6,(iy+0)->l - F6 OR &00 - SET 6,(HL) SET 6,(IY+0) - F7 RST &30 - SET 6,A set 6,(iy+0)->a - F8 RET M - SET 7,B set 7,(iy+0)->b [z80] F9 LD SP,HL - SET 7,C set 7,(iy+0)->c [z80] FA JP M,&0000 - SET 7,D set 7,(iy+0)->d [z80] FB EI - SET 7,E set 7,(iy+0)->e ED_LOAD FC CALL M,&0000 - SET 7,H set 7,(iy+0)->h [z80] FD **** FD **** - SET 7,L set 7,(iy+0)->l [z80] FE CP &00 - SET 7,(HL) SET 7,(IY+0) [z80] FF RST &38 - SET 7,A set 7,(iy+0)->a ED_DOS Notes on index registers ------------------------ Where DD and IX are mentioned, FD and IY may be substituted and vis versa. Notes on Indexed Shift/Bit Operations ------------------------------------- A shift or bit operation on an indexed byte in memory is done by prefixing a CB opcode refering to (HL) with DD or FD to specify (IX+n) or (IY+n). If the CB opcode does not refer to (HL), slightly differing things happen. The majority of Z80 CPUs execute them as shown; the shift or bit operation is done on and indexed byte in memory, and then if the opcode does not specify (HL) originally, the resultant byte is copied into the specified register. This is summarised with this example: CB 0x RLC r FD CB nn 0x RLC (IY+nn)->r for x=0..5, 7 for r=B,C,D,E,H,L,A Some CPUs allow access to the high and low halves of the index register, if x is 4 or 5, the operation does RLC IYH or RLC IYH. CB 04 RLC H FD CB nn 04 RLC IYH CB 05 RLC L FD CB nn 05 RLC IYL Some CPUs treat all the subcodes as accessing the indexed byte and nothing else: CB 0x RLC r FD CB nn 0X RLC (IY+nn) for all x=0..7 Notes on ED opcodes ------------------- J.G.Harston's !Z80Tube Z80 CoPro emulator includes the extra opcodes ED00 to ED0F to interface with the host. G.A.Lunter's Z80 Spectrum emulator includes the extra opcodes EDF8 to EDFF to interface to the host.