Last active
August 8, 2018 01:25
-
-
Save cjsmeele/e7d254bd1ffc7b9d639342adc99defb8 to your computer and use it in GitHub Desktop.
Game Boy CPU instruction listing with concise (partial) emulator implementation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Ops {{{ | |
// Copyright (c) 2018, Chris Smeele. | |
// All rights reserved. | |
// Rights to the actual ISA may belong to the respective right holders. | |
// Clock / flag attributes sourced from this table: | |
// http://pastraiser.com/cpu/gameboy/gameboy_opcodes.html | |
// | |
// - e2 and f2 have been changed to size '1' from '2' (this appears to be an error in the table). | |
// - cb (the prefix) was changed to size '2' from '1', for convenience (all prefixed ops are 2 bytes long). | |
constexpr static u8 oplen[256] { | |
// 0 1 2 3 4 5 6 7 8 9 a b c d e f | |
/* 0x0_ */ 1,3,1,1,1,1,2,1,3,1,1,1,1,1,2,1, | |
/* 0x1_ */ 2,3,1,1,1,1,2,1,2,1,1,1,1,1,2,1, | |
/* 0x2_ */ 2,3,1,1,1,1,2,1,2,1,1,1,1,1,2,1, | |
/* 0x3_ */ 2,3,1,1,1,1,2,1,2,1,1,1,1,1,2,1, | |
/* 0x4_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0x5_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0x6_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0x7_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0x8_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0x9_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0xa_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0xb_ */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |
/* 0xc_ */ 1,1,3,3,3,1,2,1,1,1,3,2,3,3,2,1, | |
/* 0xd_ */ 1,1,3,1,3,1,2,1,1,1,3,1,3,1,2,1, | |
/* 0xe_ */ 2,1,1,1,1,1,2,1,2,1,3,1,1,1,2,1, | |
/* 0xf_ */ 2,1,1,1,1,1,2,1,2,1,3,1,1,1,2,1, | |
// Len of the 256 CB ops is always 2. | |
}; | |
#pragma GCC diagnostic ignored "-Wunused-parameter" | |
// C++ Gods please forgive me, for I have sinned gravely. | |
#define Q(op) cpu.next_op = [] (Cpu &cpu) { op; }; | |
#define R cpu.state.cpu.regs | |
#define BR(a) { R.pc(a); cpu.branched = true; } | |
#define OP cpu.op | |
#define IMM16 (OP[2] << 8 | OP[1]) | |
#define IMM8 (OP[1]) | |
#define _ (-1) | |
#define LD8(a, r) R.r(cpu.mcc.load_byte(a)) | |
#define QLD8(a, r, ...) Q(R.r(cpu.mcc.load_byte(a)); __VA_ARGS__) | |
#define QLD16(a, rh, rl, ...) { cpu.tmpaddr = (a); \ | |
QLD8(cpu.tmpaddr, rl, \ | |
QLD8(cpu.tmpaddr+1, rh, __VA_ARGS__)) } | |
#define ST8(a, x) cpu.mcc.store_byte(a, x) | |
#define QST8(a, x, ...) Q(cpu.mcc.store_byte(a, x); __VA_ARGS__) | |
#define QST16(a, x, ...) Q(cpu.tmpaddr = (a); cpu.tmpval = (x); \ | |
ST8(cpu.tmpaddr, cpu.tmpval & 0xff); \ | |
Q(ST8(cpu.tmpaddr+1, (cpu.tmpval >> 8) & 0xff); __VA_ARGS__)) | |
// PUSH = 3 cycles | |
#define QPUSH(r, ...) QST16(R.sp()-2,R.r(), Q(R.sp(R.sp()-2); __VA_ARGS__)) | |
// POP = 2 cycles | |
#define QPOP(rh, rl, ...) QLD16(R.sp(),rh,rl, R.sp(R.sp()+2); __VA_ARGS__) | |
#define FN(c) [] (Cpu &cpu) { c; } | |
#define FN_() [] (Cpu &cpu) { abort(); } | |
#define IMPL_INC(r) { R.r(R.r()+1); R.flags(!R.r(),0,0,_); } | |
#define IMPL_DEC(r) { R.r(R.r()-1); R.flags(!R.r(),1,0,_); } | |
//#define IMPL_RL(r) { auto x = R.r(); R.r((x<<1)|(x>>7)); R.flags(!R.r(),0,0,R.r()&1); } | |
#define IMPL_RL(r) { auto x = R.r(); R.r((x<<1)|R.fc()); R.flags(!R.r(),0,0,!!(x&0x80)); } | |
#define IMPL_ADD8(r,v) { u8 x = R.r()+v; R.flags(!x,0,0,0); R.r(x); } // XXX | |
#define IMPL_SUB(v) { u8 x = R.a()-v; R.flags(!x,1,0,0); R.a(x); } // XXX | |
#define IMPL_CP(v) { u8 x = R.a()-v; R.flags(!x,1,0,0); } // XXX | |
constexpr static Op *ops[512] { | |
/* OP NAME ARGS LEN CLK ZNHC */ | |
/* ================================= */ | |
/* 0x00 NOP - 1 4 ---- */ FN(/* :D */), | |
/* 0x01 LD BC,d16 3 12 ---- */ FN(R.bc(IMM16)), | |
/* 0x02 LD (BC),A 1 8 ---- */ FN(QST8(R.bc(),R.a())), | |
/* 0x03 INC BC 1 8 ---- */ FN(Q(R.bc(R.bc()+1))), | |
/* 0x04 INC B 1 4 Z0H- */ FN(IMPL_INC(b)), | |
/* 0x05 DEC B 1 4 Z1H- */ FN(IMPL_DEC(b)), | |
/* 0x06 LD B,d8 2 8 ---- */ FN(R.b(IMM8)), | |
/* 0x07 RLCA - 1 4 000C */ FN_(), | |
/* 0x08 LD (a16),SP 3 20 ---- */ FN_(), | |
/* 0x09 ADD HL,BC 1 8 -0HC */ FN_(), | |
/* 0x0a LD A,(BC) 1 8 ---- */ FN_(), | |
/* 0x0b DEC BC 1 8 ---- */ FN(R.bc(R.bc()-1)), | |
/* 0x0c INC C 1 4 Z0H- */ FN(IMPL_INC(c)), | |
/* 0x0d DEC C 1 4 Z1H- */ FN(IMPL_DEC(c)), | |
/* 0x0e LD C,d8 2 8 ---- */ FN(R.c(IMM8)), | |
/* 0x0f RRCA - 1 4 000C */ FN_(), | |
/* 0x10 STOP 0 2 4 ---- */ FN(abort()), | |
/* 0x11 LD DE,d16 3 12 ---- */ FN(R.de(IMM16)), | |
/* 0x12 LD (DE),A 1 8 ---- */ FN_(), | |
/* 0x13 INC DE 1 8 ---- */ FN(R.de(R.de()+1)), | |
/* 0x14 INC D 1 4 Z0H- */ FN(IMPL_INC(d)), | |
/* 0x15 DEC D 1 4 Z1H- */ FN(IMPL_DEC(d)), | |
/* 0x16 LD D,d8 2 8 ---- */ FN(R.d(IMM8)), | |
/* 0x17 RLA - 1 4 000C */ FN(IMPL_RL(a); R.fz(0)), | |
/* 0x18 JR r8 2 12 ---- */ FN(Q(BR(R.pc() + (s8)IMM8))), | |
/* 0x19 ADD HL,DE 1 8 -0HC */ FN_(), | |
/* 0x1a LD A,(DE) 1 8 ---- */ FN(QLD8(R.de(), a)), | |
/* 0x1b DEC DE 1 8 ---- */ FN(Q(R.de(R.de()-1))), | |
/* 0x1c INC E 1 4 Z0H- */ FN(IMPL_INC(e)), | |
/* 0x1d DEC E 1 4 Z1H- */ FN(IMPL_DEC(e)), | |
/* 0x1e LD E,d8 2 8 ---- */ FN(R.e(IMM8)), | |
/* 0x1f RRA - 1 4 000C */ FN_(), | |
/* 0x20 JR NZ,r8 2 12/8 ---- */ FN(if (!R.fz()) Q(BR(R.pc() + (s8)IMM8))), | |
/* 0x21 LD HL,d16 3 12 ---- */ FN(R.hl(IMM16);), | |
/* 0x22 LD (HL+),A 1 8 ---- */ FN(QST8(R.hl(),R.a(), R.hl(R.hl()+1))), | |
/* 0x23 INC HL 1 8 ---- */ FN(Q(R.hl(R.hl()+1))), | |
/* 0x24 INC H 1 4 Z0H- */ FN(IMPL_INC(h)), | |
/* 0x25 DEC H 1 4 Z1H- */ FN(IMPL_DEC(h)), | |
/* 0x26 LD H,d8 2 8 ---- */ FN(R.h(IMM8)), | |
/* 0x27 DAA - 1 4 Z-0C */ FN_(), | |
/* 0x28 JR Z,r8 2 12/8 ---- */ FN(if (R.fz()) Q(BR(R.pc() + (s8)IMM8))), | |
/* 0x29 ADD HL,HL 1 8 -0HC */ FN_(), | |
/* 0x2a LD A,(HL+) 1 8 ---- */ FN_(), | |
/* 0x2b DEC HL 1 8 ---- */ FN_(), | |
/* 0x2c INC L 1 4 Z0H- */ FN_(), | |
/* 0x2d DEC L 1 4 Z1H- */ FN_(), | |
/* 0x2e LD L,d8 2 8 ---- */ FN(R.l(IMM8)), | |
/* 0x2f CPL - 1 4 -11- */ FN_(), | |
/* 0x30 JR NC,r8 2 12/8 ---- */ FN_(), | |
/* 0x31 LD SP,d16 3 12 ---- */ FN(R.sp(IMM16);), | |
/* 0x32 LD (HL-),A 1 8 ---- */ FN(QST8(R.hl(),R.a(), R.hl(R.hl()-1))), | |
/* 0x33 INC SP 1 8 ---- */ FN_(), | |
/* 0x34 INC (HL) 1 12 Z0H- */ FN_(), | |
/* 0x35 DEC (HL) 1 12 Z1H- */ FN_(), | |
/* 0x36 LD (HL),d8 2 12 ---- */ FN_(), | |
/* 0x37 SCF - 1 4 -001 */ FN_(), | |
/* 0x38 JR C,r8 2 12/8 ---- */ FN_(), | |
/* 0x39 ADD HL,SP 1 8 -0HC */ FN_(), | |
/* 0x3a LD A,(HL-) 1 8 ---- */ FN_(), | |
/* 0x3b DEC SP 1 8 ---- */ FN_(), | |
/* 0x3c INC A 1 4 Z0H- */ FN(IMPL_INC(a)), | |
/* 0x3d DEC A 1 4 Z1H- */ FN(IMPL_DEC(a)), | |
/* 0x3e LD A,d8 2 8 ---- */ FN(R.a(IMM8);), | |
/* 0x3f CCF - 1 4 -00C */ FN_(), | |
/* 0x40 LD B,B 1 4 ---- */ FN(R.b(R.b())), | |
/* 0x41 LD B,C 1 4 ---- */ FN(R.b(R.c())), | |
/* 0x42 LD B,D 1 4 ---- */ FN(R.b(R.d())), | |
/* 0x43 LD B,E 1 4 ---- */ FN(R.b(R.e())), | |
/* 0x44 LD B,H 1 4 ---- */ FN(R.b(R.h())), | |
/* 0x45 LD B,L 1 4 ---- */ FN(R.b(R.l())), | |
/* 0x46 LD B,(HL) 1 8 ---- */ FN_(), | |
/* 0x47 LD B,A 1 4 ---- */ FN(R.b(R.a())), | |
/* 0x48 LD C,B 1 4 ---- */ FN(R.c(R.b())), | |
/* 0x49 LD C,C 1 4 ---- */ FN(R.c(R.c())), | |
/* 0x4a LD C,D 1 4 ---- */ FN(R.c(R.d())), | |
/* 0x4b LD C,E 1 4 ---- */ FN(R.c(R.e())), | |
/* 0x4c LD C,H 1 4 ---- */ FN(R.c(R.h())), | |
/* 0x4d LD C,L 1 4 ---- */ FN(R.c(R.l())), | |
/* 0x4e LD C,(HL) 1 8 ---- */ FN_(), | |
/* 0x4f LD C,A 1 4 ---- */ FN(R.c(R.a())), | |
/* 0x50 LD D,B 1 4 ---- */ FN(R.d(R.b())), | |
/* 0x51 LD D,C 1 4 ---- */ FN(R.d(R.c())), | |
/* 0x52 LD D,D 1 4 ---- */ FN(R.d(R.d())), | |
/* 0x53 LD D,E 1 4 ---- */ FN(R.d(R.e())), | |
/* 0x54 LD D,H 1 4 ---- */ FN(R.d(R.h())), | |
/* 0x55 LD D,L 1 4 ---- */ FN(R.d(R.l())), | |
/* 0x56 LD D,(HL) 1 8 ---- */ FN_(), | |
/* 0x57 LD D,A 1 4 ---- */ FN(R.d(R.a())), | |
/* 0x58 LD E,B 1 4 ---- */ FN(R.e(R.b())), | |
/* 0x59 LD E,C 1 4 ---- */ FN(R.e(R.c())), | |
/* 0x5a LD E,D 1 4 ---- */ FN(R.e(R.d())), | |
/* 0x5b LD E,E 1 4 ---- */ FN(R.e(R.e())), | |
/* 0x5c LD E,H 1 4 ---- */ FN(R.e(R.h())), | |
/* 0x5d LD E,L 1 4 ---- */ FN(R.e(R.l())), | |
/* 0x5e LD E,(HL) 1 8 ---- */ FN_(), | |
/* 0x5f LD E,A 1 4 ---- */ FN(R.e(R.a())), | |
/* 0x60 LD H,B 1 4 ---- */ FN(R.h(R.b())), | |
/* 0x61 LD H,C 1 4 ---- */ FN(R.h(R.c())), | |
/* 0x62 LD H,D 1 4 ---- */ FN(R.h(R.d())), | |
/* 0x63 LD H,E 1 4 ---- */ FN(R.h(R.e())), | |
/* 0x64 LD H,H 1 4 ---- */ FN(R.h(R.h())), | |
/* 0x65 LD H,L 1 4 ---- */ FN(R.h(R.l())), | |
/* 0x66 LD H,(HL) 1 8 ---- */ FN_(), | |
/* 0x67 LD H,A 1 4 ---- */ FN(R.h(R.a())), | |
/* 0x68 LD L,B 1 4 ---- */ FN(R.l(R.b())), | |
/* 0x69 LD L,C 1 4 ---- */ FN(R.l(R.c())), | |
/* 0x6a LD L,D 1 4 ---- */ FN(R.l(R.d())), | |
/* 0x6b LD L,E 1 4 ---- */ FN(R.l(R.e())), | |
/* 0x6c LD L,H 1 4 ---- */ FN(R.l(R.h())), | |
/* 0x6d LD L,L 1 4 ---- */ FN(R.l(R.l())), | |
/* 0x6e LD L,(HL) 1 8 ---- */ FN_(), | |
/* 0x6f LD L,A 1 4 ---- */ FN(R.l(R.a())), | |
/* 0x70 LD (HL),B 1 8 ---- */ FN_(), | |
/* 0x71 LD (HL),C 1 8 ---- */ FN_(), | |
/* 0x72 LD (HL),D 1 8 ---- */ FN_(), | |
/* 0x73 LD (HL),E 1 8 ---- */ FN_(), | |
/* 0x74 LD (HL),H 1 8 ---- */ FN_(), | |
/* 0x75 LD (HL),L 1 8 ---- */ FN_(), | |
/* 0x76 HALT - 1 4 ---- */ FN_(), | |
/* 0x77 LD (HL),A 1 8 ---- */ FN(QST8(R.hl(), R.a())), | |
/* 0x78 LD A,B 1 4 ---- */ FN(R.a(R.b())), | |
/* 0x79 LD A,C 1 4 ---- */ FN(R.a(R.c())), | |
/* 0x7a LD A,D 1 4 ---- */ FN(R.a(R.d())), | |
/* 0x7b LD A,E 1 4 ---- */ FN(R.a(R.e())), | |
/* 0x7c LD A,H 1 4 ---- */ FN(R.a(R.h())), | |
/* 0x7d LD A,L 1 4 ---- */ FN(R.a(R.l())), | |
/* 0x7e LD A,(HL) 1 8 ---- */ FN_(), | |
/* 0x7f LD A,A 1 4 ---- */ FN(R.a(R.a())), | |
/* 0x80 ADD A,B 1 4 Z0HC */ FN(IMPL_ADD8(a,R.b())), | |
/* 0x81 ADD A,C 1 4 Z0HC */ FN(IMPL_ADD8(a,R.c())), | |
/* 0x82 ADD A,D 1 4 Z0HC */ FN(IMPL_ADD8(a,R.d())), | |
/* 0x83 ADD A,E 1 4 Z0HC */ FN(IMPL_ADD8(a,R.e())), | |
/* 0x84 ADD A,H 1 4 Z0HC */ FN(IMPL_ADD8(a,R.h())), | |
/* 0x85 ADD A,L 1 4 Z0HC */ FN(IMPL_ADD8(a,R.l())), | |
/* 0x86 ADD A,(HL) 1 8 Z0HC */ FN(QLD8(R.hl(),tmp8, IMPL_ADD8(a,R.tmp8()))), | |
/* 0x87 ADD A,A 1 4 Z0HC */ FN(IMPL_ADD8(a,R.b())), | |
/* 0x88 ADC A,B 1 4 Z0HC */ FN_(), | |
/* 0x89 ADC A,C 1 4 Z0HC */ FN_(), | |
/* 0x8a ADC A,D 1 4 Z0HC */ FN_(), | |
/* 0x8b ADC A,E 1 4 Z0HC */ FN_(), | |
/* 0x8c ADC A,H 1 4 Z0HC */ FN_(), | |
/* 0x8d ADC A,L 1 4 Z0HC */ FN_(), | |
/* 0x8e ADC A,(HL) 1 8 Z0HC */ FN_(), | |
/* 0x8f ADC A,A 1 4 Z0HC */ FN_(), | |
/* 0x90 SUB B 1 4 Z1HC */ FN(IMPL_SUB(R.b())), | |
/* 0x91 SUB C 1 4 Z1HC */ FN(IMPL_SUB(R.c())), | |
/* 0x92 SUB D 1 4 Z1HC */ FN(IMPL_SUB(R.d())), | |
/* 0x93 SUB E 1 4 Z1HC */ FN(IMPL_SUB(R.e())), | |
/* 0x94 SUB H 1 4 Z1HC */ FN(IMPL_SUB(R.h())), | |
/* 0x95 SUB L 1 4 Z1HC */ FN(IMPL_SUB(R.l())), | |
/* 0x96 SUB (HL) 1 8 Z1HC */ FN_(), | |
/* 0x97 SUB A 1 4 Z1HC */ FN_(), | |
/* 0x98 SBC A,B 1 4 Z1HC */ FN_(), | |
/* 0x99 SBC A,C 1 4 Z1HC */ FN_(), | |
/* 0x9a SBC A,D 1 4 Z1HC */ FN_(), | |
/* 0x9b SBC A,E 1 4 Z1HC */ FN_(), | |
/* 0x9c SBC A,H 1 4 Z1HC */ FN_(), | |
/* 0x9d SBC A,L 1 4 Z1HC */ FN_(), | |
/* 0x9e SBC A,(HL) 1 8 Z1HC */ FN_(), | |
/* 0x9f SBC A,A 1 4 Z1HC */ FN_(), | |
/* 0xa0 AND B 1 4 Z010 */ FN_(), | |
/* 0xa1 AND C 1 4 Z010 */ FN_(), | |
/* 0xa2 AND D 1 4 Z010 */ FN_(), | |
/* 0xa3 AND E 1 4 Z010 */ FN_(), | |
/* 0xa4 AND H 1 4 Z010 */ FN_(), | |
/* 0xa5 AND L 1 4 Z010 */ FN_(), | |
/* 0xa6 AND (HL) 1 8 Z010 */ FN_(), | |
/* 0xa7 AND A 1 4 Z010 */ FN_(), | |
/* 0xa8 XOR B 1 4 Z000 */ FN_(), | |
/* 0xa9 XOR C 1 4 Z000 */ FN_(), | |
/* 0xaa XOR D 1 4 Z000 */ FN_(), | |
/* 0xab XOR E 1 4 Z000 */ FN_(), | |
/* 0xac XOR H 1 4 Z000 */ FN_(), | |
/* 0xad XOR L 1 4 Z000 */ FN_(), | |
/* 0xae XOR (HL) 1 8 Z000 */ FN_(), | |
/* 0xaf XOR A 1 4 Z000 */ FN(R.a(0); R.flags(1,0,0,0);), | |
/* 0xb0 OR B 1 4 Z000 */ FN_(), | |
/* 0xb1 OR C 1 4 Z000 */ FN_(), | |
/* 0xb2 OR D 1 4 Z000 */ FN_(), | |
/* 0xb3 OR E 1 4 Z000 */ FN_(), | |
/* 0xb4 OR H 1 4 Z000 */ FN_(), | |
/* 0xb5 OR L 1 4 Z000 */ FN_(), | |
/* 0xb6 OR (HL) 1 8 Z000 */ FN_(), | |
/* 0xb7 OR A 1 4 Z000 */ FN_(), | |
/* 0xb8 CP B 1 4 Z1HC */ FN(IMPL_CP(R.b())), | |
/* 0xb9 CP C 1 4 Z1HC */ FN(IMPL_CP(R.c())), | |
/* 0xba CP D 1 4 Z1HC */ FN(IMPL_CP(R.d())), | |
/* 0xbb CP E 1 4 Z1HC */ FN(IMPL_CP(R.e())), | |
/* 0xbc CP H 1 4 Z1HC */ FN(IMPL_CP(R.h())), | |
/* 0xbd CP L 1 4 Z1HC */ FN(IMPL_CP(R.l())), | |
/* 0xbe CP (HL) 1 8 Z1HC */ FN(QLD8(R.hl(),tmp8, IMPL_CP(R.tmp8()))), | |
/* 0xbf CP A 1 4 Z1HC */ FN(IMPL_CP(R.a())), | |
/* 0xc0 RET NZ 1 20/8 ---- */ FN_(), | |
/* 0xc1 POP BC 1 12 ---- */ FN(QPOP(b,c)), | |
/* 0xc2 JP NZ,a16 3 16/12 ---- */ FN_(), | |
/* 0xc3 JP a16 3 16 ---- */ FN(Q(BR(IMM16))), | |
/* 0xc4 CALL NZ,a16 3 24/12 ---- */ FN_(), | |
/* 0xc5 PUSH BC 1 16 ---- */ FN(QPUSH(bc)), | |
/* 0xc6 ADD A,d8 2 8 Z0HC */ FN_(), | |
/* 0xc7 RST 00H 1 16 ---- */ FN_(), | |
/* 0xc8 RET Z 1 20/8 ---- */ FN_(), | |
/* 0xc9 RET - 1 16 ---- */ FN(Q(QPOP(pch,pcl, BR(R.pc())))), | |
/* 0xca JP Z,a16 3 16/12 ---- */ FN_(), | |
/* 0xcb PREFIX CB 1 4 ---- */ FN(abort(); /*ops[cpu.op[1]](cpu);*/), | |
/* 0xcc CALL Z,a16 3 24/12 ---- */ FN_(), | |
/* 0xcd CALL a16 3 24 ---- */ FN(QPUSH(pc, BR(IMM16))), | |
/* 0xce ADC A,d8 2 8 Z0HC */ FN_(), | |
/* 0xcf RST 08H 1 16 ---- */ FN_(), | |
/* 0xd0 RET NC 1 20/8 ---- */ FN_(), | |
/* 0xd1 POP DE 1 12 ---- */ FN_(), | |
/* 0xd2 JP NC,a16 3 16/12 ---- */ FN_(), | |
/* 0xd3 XXX */ FN_(), | |
/* 0xd4 CALL NC,a16 3 24/12 ---- */ FN_(), | |
/* 0xd5 PUSH DE 1 16 ---- */ FN_(), | |
/* 0xd6 SUB d8 2 8 Z1HC */ FN_(), | |
/* 0xd7 RST 10H 1 16 ---- */ FN_(), | |
/* 0xd8 RET C 1 20/8 ---- */ FN_(), | |
/* 0xd9 RETI - 1 16 ---- */ FN_(), | |
/* 0xda JP C,a16 3 16/12 ---- */ FN_(), | |
/* 0xdb XXX */ FN_(), | |
/* 0xdc CALL C,a16 3 24/12 ---- */ FN_(), | |
/* 0xdd XXX */ FN_(), | |
/* 0xde SBC A,d8 2 8 Z1HC */ FN_(), | |
/* 0xdf RST 18H 1 16 ---- */ FN_(), | |
/* 0xe0 LDH (a8),A 2 12 ---- */ FN(QST8(0xff00 | IMM8, R.a())), | |
/* 0xe1 POP HL 1 12 ---- */ FN_(), | |
/* 0xe2 LD (C),A 1 8 ---- */ FN(QST8(0xff00 | R.c(), R.a())), | |
/* 0xe3 XXX */ FN_(), | |
/* 0xe4 XXX */ FN_(), | |
/* 0xe5 PUSH HL 1 16 ---- */ FN_(), | |
/* 0xe6 AND d8 2 8 Z010 */ FN_(), | |
/* 0xe7 RST 20H 1 16 ---- */ FN_(), | |
/* 0xe8 ADD SP,r8 2 16 00HC */ FN_(), | |
/* 0xe9 JP (HL) 1 4 ---- */ FN_(), | |
/* 0xea LD (a16),A 3 16 ---- */ FN(QST8(IMM16,R.a())), | |
/* 0xeb XXX */ FN_(), | |
/* 0xec XXX */ FN_(), | |
/* 0xed XXX */ FN_(), | |
/* 0xee XOR d8 2 8 Z000 */ FN_(), | |
/* 0xef RST 28H 1 16 ---- */ FN_(), | |
/* 0xf0 LDH A,(a8) 2 12 ---- */ FN(QLD8(0xff00 | IMM8, a)), | |
/* 0xf1 POP AF 1 12 ZNHC */ FN_(), | |
/* 0xf2 LD A,(C) 1 8 ---- */ FN_(), | |
/* 0xf3 DI - 1 4 ---- */ FN_(), | |
/* 0xf4 XXX */ FN_(), | |
/* 0xf5 PUSH AF 1 16 ---- */ FN_(), | |
/* 0xf6 OR d8 2 8 Z000 */ FN_(), | |
/* 0xf7 RST 30H 1 16 ---- */ FN_(), | |
/* 0xf8 LD HL,SP+r8 2 12 00HC */ FN_(), | |
/* 0xf9 LD SP,HL 1 8 ---- */ FN_(), | |
/* 0xfa LD A,(a16) 3 16 ---- */ FN_(), | |
/* 0xfb EI - 1 4 ---- */ FN_(), | |
/* 0xfc XXX */ FN_(), | |
/* 0xfd XXX */ FN_(), | |
/* 0xfe CP d8 2 8 Z1HC */ FN(IMPL_CP(IMM8)), | |
/* 0xff RST 38H 1 16 ---- */ FN_(), | |
// Prefix 0xcb: | |
/* 0x0100 RLC B 2 8 Z00C */ FN_(), | |
/* 0x0101 RLC C 2 8 Z00C */ FN_(), | |
/* 0x0102 RLC D 2 8 Z00C */ FN_(), | |
/* 0x0103 RLC E 2 8 Z00C */ FN_(), | |
/* 0x0104 RLC H 2 8 Z00C */ FN_(), | |
/* 0x0105 RLC L 2 8 Z00C */ FN_(), | |
/* 0x0106 RLC (HL) 2 16 Z00C */ FN_(), | |
/* 0x0107 RLC A 2 8 Z00C */ FN_(), | |
/* 0x0108 RRC B 2 8 Z00C */ FN_(), | |
/* 0x0109 RRC C 2 8 Z00C */ FN_(), | |
/* 0x010a RRC D 2 8 Z00C */ FN_(), | |
/* 0x010b RRC E 2 8 Z00C */ FN_(), | |
/* 0x010c RRC H 2 8 Z00C */ FN_(), | |
/* 0x010d RRC L 2 8 Z00C */ FN_(), | |
/* 0x010e RRC (HL) 2 16 Z00C */ FN_(), | |
/* 0x010f RRC A 2 8 Z00C */ FN_(), | |
/* 0x0110 RL B 2 8 Z00C */ FN(IMPL_RL(b)), | |
/* 0x0111 RL C 2 8 Z00C */ FN(IMPL_RL(c)), | |
/* 0x0112 RL D 2 8 Z00C */ FN(IMPL_RL(d)), | |
/* 0x0113 RL E 2 8 Z00C */ FN(IMPL_RL(e)), | |
/* 0x0114 RL H 2 8 Z00C */ FN(IMPL_RL(h)), | |
/* 0x0115 RL L 2 8 Z00C */ FN(IMPL_RL(l)), | |
/* 0x0116 RL (HL) 2 16 Z00C */ FN_(), | |
/* 0x0117 RL A 2 8 Z00C */ FN(IMPL_RL(a)), | |
/* 0x0118 RR B 2 8 Z00C */ FN_(), | |
/* 0x0119 RR C 2 8 Z00C */ FN_(), | |
/* 0x011a RR D 2 8 Z00C */ FN_(), | |
/* 0x011b RR E 2 8 Z00C */ FN_(), | |
/* 0x011c RR H 2 8 Z00C */ FN_(), | |
/* 0x011d RR L 2 8 Z00C */ FN_(), | |
/* 0x011e RR (HL) 2 16 Z00C */ FN_(), | |
/* 0x011f RR A 2 8 Z00C */ FN_(), | |
/* 0x0120 SLA B 2 8 Z00C */ FN_(), | |
/* 0x0121 SLA C 2 8 Z00C */ FN_(), | |
/* 0x0122 SLA D 2 8 Z00C */ FN_(), | |
/* 0x0123 SLA E 2 8 Z00C */ FN_(), | |
/* 0x0124 SLA H 2 8 Z00C */ FN_(), | |
/* 0x0125 SLA L 2 8 Z00C */ FN_(), | |
/* 0x0126 SLA (HL) 2 16 Z00C */ FN_(), | |
/* 0x0127 SLA A 2 8 Z00C */ FN_(), | |
/* 0x0128 SRA B 2 8 Z000 */ FN_(), | |
/* 0x0129 SRA C 2 8 Z000 */ FN_(), | |
/* 0x012a SRA D 2 8 Z000 */ FN_(), | |
/* 0x012b SRA E 2 8 Z000 */ FN_(), | |
/* 0x012c SRA H 2 8 Z000 */ FN_(), | |
/* 0x012d SRA L 2 8 Z000 */ FN_(), | |
/* 0x012e SRA (HL) 2 16 Z000 */ FN_(), | |
/* 0x012f SRA A 2 8 Z000 */ FN_(), | |
/* 0x0130 SWAP B 2 8 Z000 */ FN_(), | |
/* 0x0131 SWAP C 2 8 Z000 */ FN_(), | |
/* 0x0132 SWAP D 2 8 Z000 */ FN_(), | |
/* 0x0133 SWAP E 2 8 Z000 */ FN_(), | |
/* 0x0134 SWAP H 2 8 Z000 */ FN_(), | |
/* 0x0135 SWAP L 2 8 Z000 */ FN_(), | |
/* 0x0136 SWAP (HL) 2 16 Z000 */ FN_(), | |
/* 0x0137 SWAP A 2 8 Z000 */ FN_(), | |
/* 0x0138 SRL B 2 8 Z00C */ FN_(), | |
/* 0x0139 SRL C 2 8 Z00C */ FN_(), | |
/* 0x013a SRL D 2 8 Z00C */ FN_(), | |
/* 0x013b SRL E 2 8 Z00C */ FN_(), | |
/* 0x013c SRL H 2 8 Z00C */ FN_(), | |
/* 0x013d SRL L 2 8 Z00C */ FN_(), | |
/* 0x013e SRL (HL) 2 16 Z00C */ FN_(), | |
/* 0x013f SRL A 2 8 Z00C */ FN_(), | |
/* 0x0140 BIT 0,B 2 8 Z01- */ FN_(), | |
/* 0x0141 BIT 0,C 2 8 Z01- */ FN_(), | |
/* 0x0142 BIT 0,D 2 8 Z01- */ FN_(), | |
/* 0x0143 BIT 0,E 2 8 Z01- */ FN_(), | |
/* 0x0144 BIT 0,H 2 8 Z01- */ FN_(), | |
/* 0x0145 BIT 0,L 2 8 Z01- */ FN_(), | |
/* 0x0146 BIT 0,(HL) 2 16 Z01- */ FN_(), | |
/* 0x0147 BIT 0,A 2 8 Z01- */ FN_(), | |
/* 0x0148 BIT 1,B 2 8 Z01- */ FN_(), | |
/* 0x0149 BIT 1,C 2 8 Z01- */ FN_(), | |
/* 0x014a BIT 1,D 2 8 Z01- */ FN_(), | |
/* 0x014b BIT 1,E 2 8 Z01- */ FN_(), | |
/* 0x014c BIT 1,H 2 8 Z01- */ FN_(), | |
/* 0x014d BIT 1,L 2 8 Z01- */ FN_(), | |
/* 0x014e BIT 1,(HL) 2 16 Z01- */ FN_(), | |
/* 0x014f BIT 1,A 2 8 Z01- */ FN_(), | |
/* 0x0150 BIT 2,B 2 8 Z01- */ FN_(), | |
/* 0x0151 BIT 2,C 2 8 Z01- */ FN_(), | |
/* 0x0152 BIT 2,D 2 8 Z01- */ FN_(), | |
/* 0x0153 BIT 2,E 2 8 Z01- */ FN_(), | |
/* 0x0154 BIT 2,H 2 8 Z01- */ FN_(), | |
/* 0x0155 BIT 2,L 2 8 Z01- */ FN_(), | |
/* 0x0156 BIT 2,(HL) 2 16 Z01- */ FN_(), | |
/* 0x0157 BIT 2,A 2 8 Z01- */ FN_(), | |
/* 0x0158 BIT 3,B 2 8 Z01- */ FN_(), | |
/* 0x0159 BIT 3,C 2 8 Z01- */ FN_(), | |
/* 0x015a BIT 3,D 2 8 Z01- */ FN_(), | |
/* 0x015b BIT 3,E 2 8 Z01- */ FN_(), | |
/* 0x015c BIT 3,H 2 8 Z01- */ FN_(), | |
/* 0x015d BIT 3,L 2 8 Z01- */ FN_(), | |
/* 0x015e BIT 3,(HL) 2 16 Z01- */ FN_(), | |
/* 0x015f BIT 3,A 2 8 Z01- */ FN_(), | |
/* 0x0160 BIT 4,B 2 8 Z01- */ FN_(), | |
/* 0x0161 BIT 4,C 2 8 Z01- */ FN_(), | |
/* 0x0162 BIT 4,D 2 8 Z01- */ FN_(), | |
/* 0x0163 BIT 4,E 2 8 Z01- */ FN_(), | |
/* 0x0164 BIT 4,H 2 8 Z01- */ FN_(), | |
/* 0x0165 BIT 4,L 2 8 Z01- */ FN_(), | |
/* 0x0166 BIT 4,(HL) 2 16 Z01- */ FN_(), | |
/* 0x0167 BIT 4,A 2 8 Z01- */ FN_(), | |
/* 0x0168 BIT 5,B 2 8 Z01- */ FN_(), | |
/* 0x0169 BIT 5,C 2 8 Z01- */ FN_(), | |
/* 0x016a BIT 5,D 2 8 Z01- */ FN_(), | |
/* 0x016b BIT 5,E 2 8 Z01- */ FN_(), | |
/* 0x016c BIT 5,H 2 8 Z01- */ FN_(), | |
/* 0x016d BIT 5,L 2 8 Z01- */ FN_(), | |
/* 0x016e BIT 5,(HL) 2 16 Z01- */ FN_(), | |
/* 0x016f BIT 5,A 2 8 Z01- */ FN_(), | |
/* 0x0170 BIT 6,B 2 8 Z01- */ FN_(), | |
/* 0x0171 BIT 6,C 2 8 Z01- */ FN_(), | |
/* 0x0172 BIT 6,D 2 8 Z01- */ FN_(), | |
/* 0x0173 BIT 6,E 2 8 Z01- */ FN_(), | |
/* 0x0174 BIT 6,H 2 8 Z01- */ FN_(), | |
/* 0x0175 BIT 6,L 2 8 Z01- */ FN_(), | |
/* 0x0176 BIT 6,(HL) 2 16 Z01- */ FN_(), | |
/* 0x0177 BIT 6,A 2 8 Z01- */ FN_(), | |
/* 0x0178 BIT 7,B 2 8 Z01- */ FN_(), | |
/* 0x0179 BIT 7,C 2 8 Z01- */ FN_(), | |
/* 0x017a BIT 7,D 2 8 Z01- */ FN_(), | |
/* 0x017b BIT 7,E 2 8 Z01- */ FN_(), | |
/* 0x017c BIT 7,H 2 8 Z01- */ FN(R.flags(!(R.h() & (1 << 7)), 0, 1, _);), | |
/* 0x017d BIT 7,L 2 8 Z01- */ FN_(), | |
/* 0x017e BIT 7,(HL) 2 16 Z01- */ FN_(), | |
/* 0x017f BIT 7,A 2 8 Z01- */ FN_(), | |
/* 0x0180 RES 0,B 2 8 ---- */ FN_(), | |
/* 0x0181 RES 0,C 2 8 ---- */ FN_(), | |
/* 0x0182 RES 0,D 2 8 ---- */ FN_(), | |
/* 0x0183 RES 0,E 2 8 ---- */ FN_(), | |
/* 0x0184 RES 0,H 2 8 ---- */ FN_(), | |
/* 0x0185 RES 0,L 2 8 ---- */ FN_(), | |
/* 0x0186 RES 0,(HL) 2 16 ---- */ FN_(), | |
/* 0x0187 RES 0,A 2 8 ---- */ FN_(), | |
/* 0x0188 RES 1,B 2 8 ---- */ FN_(), | |
/* 0x0189 RES 1,C 2 8 ---- */ FN_(), | |
/* 0x018a RES 1,D 2 8 ---- */ FN_(), | |
/* 0x018b RES 1,E 2 8 ---- */ FN_(), | |
/* 0x018c RES 1,H 2 8 ---- */ FN_(), | |
/* 0x018d RES 1,L 2 8 ---- */ FN_(), | |
/* 0x018e RES 1,(HL) 2 16 ---- */ FN_(), | |
/* 0x018f RES 1,A 2 8 ---- */ FN_(), | |
/* 0x0190 RES 2,B 2 8 ---- */ FN_(), | |
/* 0x0191 RES 2,C 2 8 ---- */ FN_(), | |
/* 0x0192 RES 2,D 2 8 ---- */ FN_(), | |
/* 0x0193 RES 2,E 2 8 ---- */ FN_(), | |
/* 0x0194 RES 2,H 2 8 ---- */ FN_(), | |
/* 0x0195 RES 2,L 2 8 ---- */ FN_(), | |
/* 0x0196 RES 2,(HL) 2 16 ---- */ FN_(), | |
/* 0x0197 RES 2,A 2 8 ---- */ FN_(), | |
/* 0x0198 RES 3,B 2 8 ---- */ FN_(), | |
/* 0x0199 RES 3,C 2 8 ---- */ FN_(), | |
/* 0x019a RES 3,D 2 8 ---- */ FN_(), | |
/* 0x019b RES 3,E 2 8 ---- */ FN_(), | |
/* 0x019c RES 3,H 2 8 ---- */ FN_(), | |
/* 0x019d RES 3,L 2 8 ---- */ FN_(), | |
/* 0x019e RES 3,(HL) 2 16 ---- */ FN_(), | |
/* 0x019f RES 3,A 2 8 ---- */ FN_(), | |
/* 0x01a0 RES 4,B 2 8 ---- */ FN_(), | |
/* 0x01a1 RES 4,C 2 8 ---- */ FN_(), | |
/* 0x01a2 RES 4,D 2 8 ---- */ FN_(), | |
/* 0x01a3 RES 4,E 2 8 ---- */ FN_(), | |
/* 0x01a4 RES 4,H 2 8 ---- */ FN_(), | |
/* 0x01a5 RES 4,L 2 8 ---- */ FN_(), | |
/* 0x01a6 RES 4,(HL) 2 16 ---- */ FN_(), | |
/* 0x01a7 RES 4,A 2 8 ---- */ FN_(), | |
/* 0x01a8 RES 5,B 2 8 ---- */ FN_(), | |
/* 0x01a9 RES 5,C 2 8 ---- */ FN_(), | |
/* 0x01aa RES 5,D 2 8 ---- */ FN_(), | |
/* 0x01ab RES 5,E 2 8 ---- */ FN_(), | |
/* 0x01ac RES 5,H 2 8 ---- */ FN_(), | |
/* 0x01ad RES 5,L 2 8 ---- */ FN_(), | |
/* 0x01ae RES 5,(HL) 2 16 ---- */ FN_(), | |
/* 0x01af RES 5,A 2 8 ---- */ FN_(), | |
/* 0x01b0 RES 6,B 2 8 ---- */ FN_(), | |
/* 0x01b1 RES 6,C 2 8 ---- */ FN_(), | |
/* 0x01b2 RES 6,D 2 8 ---- */ FN_(), | |
/* 0x01b3 RES 6,E 2 8 ---- */ FN_(), | |
/* 0x01b4 RES 6,H 2 8 ---- */ FN_(), | |
/* 0x01b5 RES 6,L 2 8 ---- */ FN_(), | |
/* 0x01b6 RES 6,(HL) 2 16 ---- */ FN_(), | |
/* 0x01b7 RES 6,A 2 8 ---- */ FN_(), | |
/* 0x01b8 RES 7,B 2 8 ---- */ FN_(), | |
/* 0x01b9 RES 7,C 2 8 ---- */ FN_(), | |
/* 0x01ba RES 7,D 2 8 ---- */ FN_(), | |
/* 0x01bb RES 7,E 2 8 ---- */ FN_(), | |
/* 0x01bc RES 7,H 2 8 ---- */ FN_(), | |
/* 0x01bd RES 7,L 2 8 ---- */ FN_(), | |
/* 0x01be RES 7,(HL) 2 16 ---- */ FN_(), | |
/* 0x01bf RES 7,A 2 8 ---- */ FN_(), | |
/* 0x01c0 SET 0,B 2 8 ---- */ FN_(), | |
/* 0x01c1 SET 0,C 2 8 ---- */ FN_(), | |
/* 0x01c2 SET 0,D 2 8 ---- */ FN_(), | |
/* 0x01c3 SET 0,E 2 8 ---- */ FN_(), | |
/* 0x01c4 SET 0,H 2 8 ---- */ FN_(), | |
/* 0x01c5 SET 0,L 2 8 ---- */ FN_(), | |
/* 0x01c6 SET 0,(HL) 2 16 ---- */ FN_(), | |
/* 0x01c7 SET 0,A 2 8 ---- */ FN_(), | |
/* 0x01c8 SET 1,B 2 8 ---- */ FN_(), | |
/* 0x01c9 SET 1,C 2 8 ---- */ FN_(), | |
/* 0x01ca SET 1,D 2 8 ---- */ FN_(), | |
/* 0x01cb SET 1,E 2 8 ---- */ FN_(), | |
/* 0x01cc SET 1,H 2 8 ---- */ FN_(), | |
/* 0x01cd SET 1,L 2 8 ---- */ FN_(), | |
/* 0x01ce SET 1,(HL) 2 16 ---- */ FN_(), | |
/* 0x01cf SET 1,A 2 8 ---- */ FN_(), | |
/* 0x01d0 SET 2,B 2 8 ---- */ FN_(), | |
/* 0x01d1 SET 2,C 2 8 ---- */ FN_(), | |
/* 0x01d2 SET 2,D 2 8 ---- */ FN_(), | |
/* 0x01d3 SET 2,E 2 8 ---- */ FN_(), | |
/* 0x01d4 SET 2,H 2 8 ---- */ FN_(), | |
/* 0x01d5 SET 2,L 2 8 ---- */ FN_(), | |
/* 0x01d6 SET 2,(HL) 2 16 ---- */ FN_(), | |
/* 0x01d7 SET 2,A 2 8 ---- */ FN_(), | |
/* 0x01d8 SET 3,B 2 8 ---- */ FN_(), | |
/* 0x01d9 SET 3,C 2 8 ---- */ FN_(), | |
/* 0x01da SET 3,D 2 8 ---- */ FN_(), | |
/* 0x01db SET 3,E 2 8 ---- */ FN_(), | |
/* 0x01dc SET 3,H 2 8 ---- */ FN_(), | |
/* 0x01dd SET 3,L 2 8 ---- */ FN_(), | |
/* 0x01de SET 3,(HL) 2 16 ---- */ FN_(), | |
/* 0x01df SET 3,A 2 8 ---- */ FN_(), | |
/* 0x01e0 SET 4,B 2 8 ---- */ FN_(), | |
/* 0x01e1 SET 4,C 2 8 ---- */ FN_(), | |
/* 0x01e2 SET 4,D 2 8 ---- */ FN_(), | |
/* 0x01e3 SET 4,E 2 8 ---- */ FN_(), | |
/* 0x01e4 SET 4,H 2 8 ---- */ FN_(), | |
/* 0x01e5 SET 4,L 2 8 ---- */ FN_(), | |
/* 0x01e6 SET 4,(HL) 2 16 ---- */ FN_(), | |
/* 0x01e7 SET 4,A 2 8 ---- */ FN_(), | |
/* 0x01e8 SET 5,B 2 8 ---- */ FN_(), | |
/* 0x01e9 SET 5,C 2 8 ---- */ FN_(), | |
/* 0x01ea SET 5,D 2 8 ---- */ FN_(), | |
/* 0x01eb SET 5,E 2 8 ---- */ FN_(), | |
/* 0x01ec SET 5,H 2 8 ---- */ FN_(), | |
/* 0x01ed SET 5,L 2 8 ---- */ FN_(), | |
/* 0x01ee SET 5,(HL) 2 16 ---- */ FN_(), | |
/* 0x01ef SET 5,A 2 8 ---- */ FN_(), | |
/* 0x01f0 SET 6,B 2 8 ---- */ FN_(), | |
/* 0x01f1 SET 6,C 2 8 ---- */ FN_(), | |
/* 0x01f2 SET 6,D 2 8 ---- */ FN_(), | |
/* 0x01f3 SET 6,E 2 8 ---- */ FN_(), | |
/* 0x01f4 SET 6,H 2 8 ---- */ FN_(), | |
/* 0x01f5 SET 6,L 2 8 ---- */ FN_(), | |
/* 0x01f6 SET 6,(HL) 2 16 ---- */ FN_(), | |
/* 0x01f7 SET 6,A 2 8 ---- */ FN_(), | |
/* 0x01f8 SET 7,B 2 8 ---- */ FN_(), | |
/* 0x01f9 SET 7,C 2 8 ---- */ FN_(), | |
/* 0x01fa SET 7,D 2 8 ---- */ FN_(), | |
/* 0x01fb SET 7,E 2 8 ---- */ FN_(), | |
/* 0x01fc SET 7,H 2 8 ---- */ FN_(), | |
/* 0x01fd SET 7,L 2 8 ---- */ FN_(), | |
/* 0x01fe SET 7,(HL) 2 16 ---- */ FN_(), | |
/* 0x01ff SET 7,A 2 8 ---- */ FN_(), | |
#undef Q | |
#undef R | |
#undef BR | |
#undef OP | |
#undef IMM16 | |
#undef IMM8 | |
#undef _ | |
#undef LD8 | |
#undef QLD8 | |
#undef QLD16 | |
#undef ST8 | |
#undef QST8 | |
#undef QST16 | |
#undef QPUSH | |
#undef QPOP | |
#undef FN | |
#undef FN_ | |
#undef IMPL_INC | |
#undef IMPL_DEC | |
#undef IMPL_RL | |
#undef IMPL_ADD8 | |
#undef IMPL_SUB | |
#undef IMPL_CP | |
}; | |
#pragma GCC diagnostic pop | |
// OP names {{{ | |
static constexpr const char *opnames[512] { | |
"NOP - "/* 1 4 ----"*/, | |
"LD BC,d16 "/* 3 12 ----"*/, | |
"LD (BC),A "/* 1 8 ----"*/, | |
"INC BC "/* 1 8 ----"*/, | |
"INC B "/* 1 4 Z0H-"*/, | |
"DEC B "/* 1 4 Z1H-"*/, | |
"LD B,d8 "/* 2 8 ----"*/, | |
"RLCA - "/* 1 4 000C"*/, | |
"LD (a16),SP"/* 3 20 ----"*/, | |
"ADD HL,BC "/* 1 8 -0HC"*/, | |
"LD A,(BC) "/* 1 8 ----"*/, | |
"DEC BC "/* 1 8 ----"*/, | |
"INC C "/* 1 4 Z0H-"*/, | |
"DEC C "/* 1 4 Z1H-"*/, | |
"LD C,d8 "/* 2 8 ----"*/, | |
"RRCA - "/* 1 4 000C"*/, | |
"STOP 0 "/* 2 4 ----"*/, | |
"LD DE,d16 "/* 3 12 ----"*/, | |
"LD (DE),A "/* 1 8 ----"*/, | |
"INC DE "/* 1 8 ----"*/, | |
"INC D "/* 1 4 Z0H-"*/, | |
"DEC D "/* 1 4 Z1H-"*/, | |
"LD D,d8 "/* 2 8 ----"*/, | |
"RLA - "/* 1 4 000C"*/, | |
"JR r8 "/* 2 12 ----"*/, | |
"ADD HL,DE "/* 1 8 -0HC"*/, | |
"LD A,(DE) "/* 1 8 ----"*/, | |
"DEC DE "/* 1 8 ----"*/, | |
"INC E "/* 1 4 Z0H-"*/, | |
"DEC E "/* 1 4 Z1H-"*/, | |
"LD E,d8 "/* 2 8 ----"*/, | |
"RRA - "/* 1 4 000C"*/, | |
"JR NZ,r8 "/* 2 12/8 ----"*/, | |
"LD HL,d16 "/* 3 12 ----"*/, | |
"LD (HL+),A "/* 1 8 ----"*/, | |
"INC HL "/* 1 8 ----"*/, | |
"INC H "/* 1 4 Z0H-"*/, | |
"DEC H "/* 1 4 Z1H-"*/, | |
"LD H,d8 "/* 2 8 ----"*/, | |
"DAA - "/* 1 4 Z-0C"*/, | |
"JR Z,r8 "/* 2 12/8 ----"*/, | |
"ADD HL,HL "/* 1 8 -0HC"*/, | |
"LD A,(HL+) "/* 1 8 ----"*/, | |
"DEC HL "/* 1 8 ----"*/, | |
"INC L "/* 1 4 Z0H-"*/, | |
"DEC L "/* 1 4 Z1H-"*/, | |
"LD L,d8 "/* 2 8 ----"*/, | |
"CPL - "/* 1 4 -11-"*/, | |
"JR NC,r8 "/* 2 12/8 ----"*/, | |
"LD SP,d16 "/* 3 12 ----"*/, | |
"LD (HL-),A "/* 1 8 ----"*/, | |
"INC SP "/* 1 8 ----"*/, | |
"INC (HL) "/* 1 12 Z0H-"*/, | |
"DEC (HL) "/* 1 12 Z1H-"*/, | |
"LD (HL),d8 "/* 2 12 ----"*/, | |
"SCF - "/* 1 4 -001"*/, | |
"JR C,r8 "/* 2 12/8 ----"*/, | |
"ADD HL,SP "/* 1 8 -0HC"*/, | |
"LD A,(HL-) "/* 1 8 ----"*/, | |
"DEC SP "/* 1 8 ----"*/, | |
"INC A "/* 1 4 Z0H-"*/, | |
"DEC A "/* 1 4 Z1H-"*/, | |
"LD A,d8 "/* 2 8 ----"*/, | |
"CCF - "/* 1 4 -00C"*/, | |
"LD B,B "/* 1 4 ----"*/, | |
"LD B,C "/* 1 4 ----"*/, | |
"LD B,D "/* 1 4 ----"*/, | |
"LD B,E "/* 1 4 ----"*/, | |
"LD B,H "/* 1 4 ----"*/, | |
"LD B,L "/* 1 4 ----"*/, | |
"LD B,(HL) "/* 1 8 ----"*/, | |
"LD B,A "/* 1 4 ----"*/, | |
"LD C,B "/* 1 4 ----"*/, | |
"LD C,C "/* 1 4 ----"*/, | |
"LD C,D "/* 1 4 ----"*/, | |
"LD C,E "/* 1 4 ----"*/, | |
"LD C,H "/* 1 4 ----"*/, | |
"LD C,L "/* 1 4 ----"*/, | |
"LD C,(HL) "/* 1 8 ----"*/, | |
"LD C,A "/* 1 4 ----"*/, | |
"LD D,B "/* 1 4 ----"*/, | |
"LD D,C "/* 1 4 ----"*/, | |
"LD D,D "/* 1 4 ----"*/, | |
"LD D,E "/* 1 4 ----"*/, | |
"LD D,H "/* 1 4 ----"*/, | |
"LD D,L "/* 1 4 ----"*/, | |
"LD D,(HL) "/* 1 8 ----"*/, | |
"LD D,A "/* 1 4 ----"*/, | |
"LD E,B "/* 1 4 ----"*/, | |
"LD E,C "/* 1 4 ----"*/, | |
"LD E,D "/* 1 4 ----"*/, | |
"LD E,E "/* 1 4 ----"*/, | |
"LD E,H "/* 1 4 ----"*/, | |
"LD E,L "/* 1 4 ----"*/, | |
"LD E,(HL) "/* 1 8 ----"*/, | |
"LD E,A "/* 1 4 ----"*/, | |
"LD H,B "/* 1 4 ----"*/, | |
"LD H,C "/* 1 4 ----"*/, | |
"LD H,D "/* 1 4 ----"*/, | |
"LD H,E "/* 1 4 ----"*/, | |
"LD H,H "/* 1 4 ----"*/, | |
"LD H,L "/* 1 4 ----"*/, | |
"LD H,(HL) "/* 1 8 ----"*/, | |
"LD H,A "/* 1 4 ----"*/, | |
"LD L,B "/* 1 4 ----"*/, | |
"LD L,C "/* 1 4 ----"*/, | |
"LD L,D "/* 1 4 ----"*/, | |
"LD L,E "/* 1 4 ----"*/, | |
"LD L,H "/* 1 4 ----"*/, | |
"LD L,L "/* 1 4 ----"*/, | |
"LD L,(HL) "/* 1 8 ----"*/, | |
"LD L,A "/* 1 4 ----"*/, | |
"LD (HL),B "/* 1 8 ----"*/, | |
"LD (HL),C "/* 1 8 ----"*/, | |
"LD (HL),D "/* 1 8 ----"*/, | |
"LD (HL),E "/* 1 8 ----"*/, | |
"LD (HL),H "/* 1 8 ----"*/, | |
"LD (HL),L "/* 1 8 ----"*/, | |
"HALT - "/* 1 4 ----"*/, | |
"LD (HL),A "/* 1 8 ----"*/, | |
"LD A,B "/* 1 4 ----"*/, | |
"LD A,C "/* 1 4 ----"*/, | |
"LD A,D "/* 1 4 ----"*/, | |
"LD A,E "/* 1 4 ----"*/, | |
"LD A,H "/* 1 4 ----"*/, | |
"LD A,L "/* 1 4 ----"*/, | |
"LD A,(HL) "/* 1 8 ----"*/, | |
"LD A,A "/* 1 4 ----"*/, | |
"ADD A,B "/* 1 4 Z0HC"*/, | |
"ADD A,C "/* 1 4 Z0HC"*/, | |
"ADD A,D "/* 1 4 Z0HC"*/, | |
"ADD A,E "/* 1 4 Z0HC"*/, | |
"ADD A,H "/* 1 4 Z0HC"*/, | |
"ADD A,L "/* 1 4 Z0HC"*/, | |
"ADD A,(HL) "/* 1 8 Z0HC"*/, | |
"ADD A,A "/* 1 4 Z0HC"*/, | |
"ADC A,B "/* 1 4 Z0HC"*/, | |
"ADC A,C "/* 1 4 Z0HC"*/, | |
"ADC A,D "/* 1 4 Z0HC"*/, | |
"ADC A,E "/* 1 4 Z0HC"*/, | |
"ADC A,H "/* 1 4 Z0HC"*/, | |
"ADC A,L "/* 1 4 Z0HC"*/, | |
"ADC A,(HL) "/* 1 8 Z0HC"*/, | |
"ADC A,A "/* 1 4 Z0HC"*/, | |
"SUB B "/* 1 4 Z1HC"*/, | |
"SUB C "/* 1 4 Z1HC"*/, | |
"SUB D "/* 1 4 Z1HC"*/, | |
"SUB E "/* 1 4 Z1HC"*/, | |
"SUB H "/* 1 4 Z1HC"*/, | |
"SUB L "/* 1 4 Z1HC"*/, | |
"SUB (HL) "/* 1 8 Z1HC"*/, | |
"SUB A "/* 1 4 Z1HC"*/, | |
"SBC A,B "/* 1 4 Z1HC"*/, | |
"SBC A,C "/* 1 4 Z1HC"*/, | |
"SBC A,D "/* 1 4 Z1HC"*/, | |
"SBC A,E "/* 1 4 Z1HC"*/, | |
"SBC A,H "/* 1 4 Z1HC"*/, | |
"SBC A,L "/* 1 4 Z1HC"*/, | |
"SBC A,(HL) "/* 1 8 Z1HC"*/, | |
"SBC A,A "/* 1 4 Z1HC"*/, | |
"AND B "/* 1 4 Z010"*/, | |
"AND C "/* 1 4 Z010"*/, | |
"AND D "/* 1 4 Z010"*/, | |
"AND E "/* 1 4 Z010"*/, | |
"AND H "/* 1 4 Z010"*/, | |
"AND L "/* 1 4 Z010"*/, | |
"AND (HL) "/* 1 8 Z010"*/, | |
"AND A "/* 1 4 Z010"*/, | |
"XOR B "/* 1 4 Z000"*/, | |
"XOR C "/* 1 4 Z000"*/, | |
"XOR D "/* 1 4 Z000"*/, | |
"XOR E "/* 1 4 Z000"*/, | |
"XOR H "/* 1 4 Z000"*/, | |
"XOR L "/* 1 4 Z000"*/, | |
"XOR (HL) "/* 1 8 Z000"*/, | |
"XOR A "/* 1 4 Z000"*/, | |
"OR B "/* 1 4 Z000"*/, | |
"OR C "/* 1 4 Z000"*/, | |
"OR D "/* 1 4 Z000"*/, | |
"OR E "/* 1 4 Z000"*/, | |
"OR H "/* 1 4 Z000"*/, | |
"OR L "/* 1 4 Z000"*/, | |
"OR (HL) "/* 1 8 Z000"*/, | |
"OR A "/* 1 4 Z000"*/, | |
"CP B "/* 1 4 Z1HC"*/, | |
"CP C "/* 1 4 Z1HC"*/, | |
"CP D "/* 1 4 Z1HC"*/, | |
"CP E "/* 1 4 Z1HC"*/, | |
"CP H "/* 1 4 Z1HC"*/, | |
"CP L "/* 1 4 Z1HC"*/, | |
"CP (HL) "/* 1 8 Z1HC"*/, | |
"CP A "/* 1 4 Z1HC"*/, | |
"RET NZ "/* 1 20/8 ----"*/, | |
"POP BC "/* 1 12 ----"*/, | |
"JP NZ,a16 "/* 3 16/12 ----"*/, | |
"JP a16 "/* 3 16 ----"*/, | |
"CALL NZ,a16 "/* 3 24/12 ----"*/, | |
"PUSH BC "/* 1 16 ----"*/, | |
"ADD A,d8 "/* 2 8 Z0HC"*/, | |
"RST 00H "/* 1 16 ----"*/, | |
"RET Z "/* 1 20/8 ----"*/, | |
"RET - "/* 1 16 ----"*/, | |
"JP Z,a16 "/* 3 16/12 ----"*/, | |
"PREFIX CB "/* 1 4 ----"*/, | |
"CALL Z,a16 "/* 3 24/12 ----"*/, | |
"CALL a16 "/* 3 24 ----"*/, | |
"ADC A,d8 "/* 2 8 Z0HC"*/, | |
"RST 08H "/* 1 16 ----"*/, | |
"RET NC "/* 1 20/8 ----"*/, | |
"POP DE "/* 1 12 ----"*/, | |
"JP NC,a16 "/* 3 16/12 ----"*/, | |
"XXX "/* "*/, | |
"CALL NC,a16 "/* 3 24/12 ----"*/, | |
"PUSH DE "/* 1 16 ----"*/, | |
"SUB d8 "/* 2 8 Z1HC"*/, | |
"RST 10H "/* 1 16 ----"*/, | |
"RET C "/* 1 20/8 ----"*/, | |
"RETI - "/* 1 16 ----"*/, | |
"JP C,a16 "/* 3 16/12 ----"*/, | |
"XXX "/* "*/, | |
"CALL C,a16 "/* 3 24/12 ----"*/, | |
"XXX "/* "*/, | |
"SBC A,d8 "/* 2 8 Z1HC"*/, | |
"RST 18H "/* 1 16 ----"*/, | |
"LDH (a8),A "/* 2 12 ----"*/, | |
"POP HL "/* 1 12 ----"*/, | |
"LD (C),A "/* 1 8 ----"*/, | |
"XXX "/* "*/, | |
"XXX "/* "*/, | |
"PUSH HL "/* 1 16 ----"*/, | |
"AND d8 "/* 2 8 Z010"*/, | |
"RST 20H "/* 1 16 ----"*/, | |
"ADD SP,r8 "/* 2 16 00HC"*/, | |
"JP (HL) "/* 1 4 ----"*/, | |
"LD (a16),A "/* 3 16 ----"*/, | |
"XXX "/* "*/, | |
"XXX "/* "*/, | |
"XXX "/* "*/, | |
"XOR d8 "/* 2 8 Z000"*/, | |
"RST 28H "/* 1 16 ----"*/, | |
"LDH A,(a8) "/* 2 12 ----"*/, | |
"POP AF "/* 1 12 ZNHC"*/, | |
"LD A,(C) "/* 1 8 ----"*/, | |
"DI - "/* 1 4 ----"*/, | |
"XXX "/* "*/, | |
"PUSH AF "/* 1 16 ----"*/, | |
"OR d8 "/* 2 8 Z000"*/, | |
"RST 30H "/* 1 16 ----"*/, | |
"LD HL,SP+r8"/* 2 12 00HC"*/, | |
"LD SP,HL "/* 1 8 ----"*/, | |
"LD A,(a16) "/* 3 16 ----"*/, | |
"EI - "/* 1 4 ----"*/, | |
"XXX "/* "*/, | |
"XXX "/* "*/, | |
"CP d8 "/* 2 8 Z1HC"*/, | |
"RST 38H "/* 1 16 ----"*/, | |
// --- | |
"RLC B "/* 2 8 Z00C"*/, | |
"RLC C "/* 2 8 Z00C"*/, | |
"RLC D "/* 2 8 Z00C"*/, | |
"RLC E "/* 2 8 Z00C"*/, | |
"RLC H "/* 2 8 Z00C"*/, | |
"RLC L "/* 2 8 Z00C"*/, | |
"RLC (HL) "/* 2 16 Z00C"*/, | |
"RLC A "/* 2 8 Z00C"*/, | |
"RRC B "/* 2 8 Z00C"*/, | |
"RRC C "/* 2 8 Z00C"*/, | |
"RRC D "/* 2 8 Z00C"*/, | |
"RRC E "/* 2 8 Z00C"*/, | |
"RRC H "/* 2 8 Z00C"*/, | |
"RRC L "/* 2 8 Z00C"*/, | |
"RRC (HL) "/* 2 16 Z00C"*/, | |
"RRC A "/* 2 8 Z00C"*/, | |
"RL B "/* 2 8 Z00C"*/, | |
"RL C "/* 2 8 Z00C"*/, | |
"RL D "/* 2 8 Z00C"*/, | |
"RL E "/* 2 8 Z00C"*/, | |
"RL H "/* 2 8 Z00C"*/, | |
"RL L "/* 2 8 Z00C"*/, | |
"RL (HL) "/* 2 16 Z00C"*/, | |
"RL A "/* 2 8 Z00C"*/, | |
"RR B "/* 2 8 Z00C"*/, | |
"RR C "/* 2 8 Z00C"*/, | |
"RR D "/* 2 8 Z00C"*/, | |
"RR E "/* 2 8 Z00C"*/, | |
"RR H "/* 2 8 Z00C"*/, | |
"RR L "/* 2 8 Z00C"*/, | |
"RR (HL) "/* 2 16 Z00C"*/, | |
"RR A "/* 2 8 Z00C"*/, | |
"SLA B "/* 2 8 Z00C"*/, | |
"SLA C "/* 2 8 Z00C"*/, | |
"SLA D "/* 2 8 Z00C"*/, | |
"SLA E "/* 2 8 Z00C"*/, | |
"SLA H "/* 2 8 Z00C"*/, | |
"SLA L "/* 2 8 Z00C"*/, | |
"SLA (HL) "/* 2 16 Z00C"*/, | |
"SLA A "/* 2 8 Z00C"*/, | |
"SRA B "/* 2 8 Z000"*/, | |
"SRA C "/* 2 8 Z000"*/, | |
"SRA D "/* 2 8 Z000"*/, | |
"SRA E "/* 2 8 Z000"*/, | |
"SRA H "/* 2 8 Z000"*/, | |
"SRA L "/* 2 8 Z000"*/, | |
"SRA (HL) "/* 2 16 Z000"*/, | |
"SRA A "/* 2 8 Z000"*/, | |
"SWAP B "/* 2 8 Z000"*/, | |
"SWAP C "/* 2 8 Z000"*/, | |
"SWAP D "/* 2 8 Z000"*/, | |
"SWAP E "/* 2 8 Z000"*/, | |
"SWAP H "/* 2 8 Z000"*/, | |
"SWAP L "/* 2 8 Z000"*/, | |
"SWAP (HL) "/* 2 16 Z000"*/, | |
"SWAP A "/* 2 8 Z000"*/, | |
"SRL B "/* 2 8 Z00C"*/, | |
"SRL C "/* 2 8 Z00C"*/, | |
"SRL D "/* 2 8 Z00C"*/, | |
"SRL E "/* 2 8 Z00C"*/, | |
"SRL H "/* 2 8 Z00C"*/, | |
"SRL L "/* 2 8 Z00C"*/, | |
"SRL (HL) "/* 2 16 Z00C"*/, | |
"SRL A "/* 2 8 Z00C"*/, | |
"BIT 0,B "/* 2 8 Z01-"*/, | |
"BIT 0,C "/* 2 8 Z01-"*/, | |
"BIT 0,D "/* 2 8 Z01-"*/, | |
"BIT 0,E "/* 2 8 Z01-"*/, | |
"BIT 0,H "/* 2 8 Z01-"*/, | |
"BIT 0,L "/* 2 8 Z01-"*/, | |
"BIT 0,(HL)"/* 2 16 Z01-"*/, | |
"BIT 0,A "/* 2 8 Z01-"*/, | |
"BIT 1,B "/* 2 8 Z01-"*/, | |
"BIT 1,C "/* 2 8 Z01-"*/, | |
"BIT 1,D "/* 2 8 Z01-"*/, | |
"BIT 1,E "/* 2 8 Z01-"*/, | |
"BIT 1,H "/* 2 8 Z01-"*/, | |
"BIT 1,L "/* 2 8 Z01-"*/, | |
"BIT 1,(HL)"/* 2 16 Z01-"*/, | |
"BIT 1,A "/* 2 8 Z01-"*/, | |
"BIT 2,B "/* 2 8 Z01-"*/, | |
"BIT 2,C "/* 2 8 Z01-"*/, | |
"BIT 2,D "/* 2 8 Z01-"*/, | |
"BIT 2,E "/* 2 8 Z01-"*/, | |
"BIT 2,H "/* 2 8 Z01-"*/, | |
"BIT 2,L "/* 2 8 Z01-"*/, | |
"BIT 2,(HL)"/* 2 16 Z01-"*/, | |
"BIT 2,A "/* 2 8 Z01-"*/, | |
"BIT 3,B "/* 2 8 Z01-"*/, | |
"BIT 3,C "/* 2 8 Z01-"*/, | |
"BIT 3,D "/* 2 8 Z01-"*/, | |
"BIT 3,E "/* 2 8 Z01-"*/, | |
"BIT 3,H "/* 2 8 Z01-"*/, | |
"BIT 3,L "/* 2 8 Z01-"*/, | |
"BIT 3,(HL)"/* 2 16 Z01-"*/, | |
"BIT 3,A "/* 2 8 Z01-"*/, | |
"BIT 4,B "/* 2 8 Z01-"*/, | |
"BIT 4,C "/* 2 8 Z01-"*/, | |
"BIT 4,D "/* 2 8 Z01-"*/, | |
"BIT 4,E "/* 2 8 Z01-"*/, | |
"BIT 4,H "/* 2 8 Z01-"*/, | |
"BIT 4,L "/* 2 8 Z01-"*/, | |
"BIT 4,(HL)"/* 2 16 Z01-"*/, | |
"BIT 4,A "/* 2 8 Z01-"*/, | |
"BIT 5,B "/* 2 8 Z01-"*/, | |
"BIT 5,C "/* 2 8 Z01-"*/, | |
"BIT 5,D "/* 2 8 Z01-"*/, | |
"BIT 5,E "/* 2 8 Z01-"*/, | |
"BIT 5,H "/* 2 8 Z01-"*/, | |
"BIT 5,L "/* 2 8 Z01-"*/, | |
"BIT 5,(HL)"/* 2 16 Z01-"*/, | |
"BIT 5,A "/* 2 8 Z01-"*/, | |
"BIT 6,B "/* 2 8 Z01-"*/, | |
"BIT 6,C "/* 2 8 Z01-"*/, | |
"BIT 6,D "/* 2 8 Z01-"*/, | |
"BIT 6,E "/* 2 8 Z01-"*/, | |
"BIT 6,H "/* 2 8 Z01-"*/, | |
"BIT 6,L "/* 2 8 Z01-"*/, | |
"BIT 6,(HL)"/* 2 16 Z01-"*/, | |
"BIT 6,A "/* 2 8 Z01-"*/, | |
"BIT 7,B "/* 2 8 Z01-"*/, | |
"BIT 7,C "/* 2 8 Z01-"*/, | |
"BIT 7,D "/* 2 8 Z01-"*/, | |
"BIT 7,E "/* 2 8 Z01-"*/, | |
"BIT 7,H "/* 2 8 Z01-"*/, | |
"BIT 7,L "/* 2 8 Z01-"*/, | |
"BIT 7,(HL)"/* 2 16 Z01-"*/, | |
"BIT 7,A "/* 2 8 Z01-"*/, | |
"RES 0,B "/* 2 8 ----"*/, | |
"RES 0,C "/* 2 8 ----"*/, | |
"RES 0,D "/* 2 8 ----"*/, | |
"RES 0,E "/* 2 8 ----"*/, | |
"RES 0,H "/* 2 8 ----"*/, | |
"RES 0,L "/* 2 8 ----"*/, | |
"RES 0,(HL)"/* 2 16 ----"*/, | |
"RES 0,A "/* 2 8 ----"*/, | |
"RES 1,B "/* 2 8 ----"*/, | |
"RES 1,C "/* 2 8 ----"*/, | |
"RES 1,D "/* 2 8 ----"*/, | |
"RES 1,E "/* 2 8 ----"*/, | |
"RES 1,H "/* 2 8 ----"*/, | |
"RES 1,L "/* 2 8 ----"*/, | |
"RES 1,(HL)"/* 2 16 ----"*/, | |
"RES 1,A "/* 2 8 ----"*/, | |
"RES 2,B "/* 2 8 ----"*/, | |
"RES 2,C "/* 2 8 ----"*/, | |
"RES 2,D "/* 2 8 ----"*/, | |
"RES 2,E "/* 2 8 ----"*/, | |
"RES 2,H "/* 2 8 ----"*/, | |
"RES 2,L "/* 2 8 ----"*/, | |
"RES 2,(HL)"/* 2 16 ----"*/, | |
"RES 2,A "/* 2 8 ----"*/, | |
"RES 3,B "/* 2 8 ----"*/, | |
"RES 3,C "/* 2 8 ----"*/, | |
"RES 3,D "/* 2 8 ----"*/, | |
"RES 3,E "/* 2 8 ----"*/, | |
"RES 3,H "/* 2 8 ----"*/, | |
"RES 3,L "/* 2 8 ----"*/, | |
"RES 3,(HL)"/* 2 16 ----"*/, | |
"RES 3,A "/* 2 8 ----"*/, | |
"RES 4,B "/* 2 8 ----"*/, | |
"RES 4,C "/* 2 8 ----"*/, | |
"RES 4,D "/* 2 8 ----"*/, | |
"RES 4,E "/* 2 8 ----"*/, | |
"RES 4,H "/* 2 8 ----"*/, | |
"RES 4,L "/* 2 8 ----"*/, | |
"RES 4,(HL)"/* 2 16 ----"*/, | |
"RES 4,A "/* 2 8 ----"*/, | |
"RES 5,B "/* 2 8 ----"*/, | |
"RES 5,C "/* 2 8 ----"*/, | |
"RES 5,D "/* 2 8 ----"*/, | |
"RES 5,E "/* 2 8 ----"*/, | |
"RES 5,H "/* 2 8 ----"*/, | |
"RES 5,L "/* 2 8 ----"*/, | |
"RES 5,(HL)"/* 2 16 ----"*/, | |
"RES 5,A "/* 2 8 ----"*/, | |
"RES 6,B "/* 2 8 ----"*/, | |
"RES 6,C "/* 2 8 ----"*/, | |
"RES 6,D "/* 2 8 ----"*/, | |
"RES 6,E "/* 2 8 ----"*/, | |
"RES 6,H "/* 2 8 ----"*/, | |
"RES 6,L "/* 2 8 ----"*/, | |
"RES 6,(HL)"/* 2 16 ----"*/, | |
"RES 6,A "/* 2 8 ----"*/, | |
"RES 7,B "/* 2 8 ----"*/, | |
"RES 7,C "/* 2 8 ----"*/, | |
"RES 7,D "/* 2 8 ----"*/, | |
"RES 7,E "/* 2 8 ----"*/, | |
"RES 7,H "/* 2 8 ----"*/, | |
"RES 7,L "/* 2 8 ----"*/, | |
"RES 7,(HL)"/* 2 16 ----"*/, | |
"RES 7,A "/* 2 8 ----"*/, | |
"SET 0,B "/* 2 8 ----"*/, | |
"SET 0,C "/* 2 8 ----"*/, | |
"SET 0,D "/* 2 8 ----"*/, | |
"SET 0,E "/* 2 8 ----"*/, | |
"SET 0,H "/* 2 8 ----"*/, | |
"SET 0,L "/* 2 8 ----"*/, | |
"SET 0,(HL)"/* 2 16 ----"*/, | |
"SET 0,A "/* 2 8 ----"*/, | |
"SET 1,B "/* 2 8 ----"*/, | |
"SET 1,C "/* 2 8 ----"*/, | |
"SET 1,D "/* 2 8 ----"*/, | |
"SET 1,E "/* 2 8 ----"*/, | |
"SET 1,H "/* 2 8 ----"*/, | |
"SET 1,L "/* 2 8 ----"*/, | |
"SET 1,(HL)"/* 2 16 ----"*/, | |
"SET 1,A "/* 2 8 ----"*/, | |
"SET 2,B "/* 2 8 ----"*/, | |
"SET 2,C "/* 2 8 ----"*/, | |
"SET 2,D "/* 2 8 ----"*/, | |
"SET 2,E "/* 2 8 ----"*/, | |
"SET 2,H "/* 2 8 ----"*/, | |
"SET 2,L "/* 2 8 ----"*/, | |
"SET 2,(HL)"/* 2 16 ----"*/, | |
"SET 2,A "/* 2 8 ----"*/, | |
"SET 3,B "/* 2 8 ----"*/, | |
"SET 3,C "/* 2 8 ----"*/, | |
"SET 3,D "/* 2 8 ----"*/, | |
"SET 3,E "/* 2 8 ----"*/, | |
"SET 3,H "/* 2 8 ----"*/, | |
"SET 3,L "/* 2 8 ----"*/, | |
"SET 3,(HL)"/* 2 16 ----"*/, | |
"SET 3,A "/* 2 8 ----"*/, | |
"SET 4,B "/* 2 8 ----"*/, | |
"SET 4,C "/* 2 8 ----"*/, | |
"SET 4,D "/* 2 8 ----"*/, | |
"SET 4,E "/* 2 8 ----"*/, | |
"SET 4,H "/* 2 8 ----"*/, | |
"SET 4,L "/* 2 8 ----"*/, | |
"SET 4,(HL)"/* 2 16 ----"*/, | |
"SET 4,A "/* 2 8 ----"*/, | |
"SET 5,B "/* 2 8 ----"*/, | |
"SET 5,C "/* 2 8 ----"*/, | |
"SET 5,D "/* 2 8 ----"*/, | |
"SET 5,E "/* 2 8 ----"*/, | |
"SET 5,H "/* 2 8 ----"*/, | |
"SET 5,L "/* 2 8 ----"*/, | |
"SET 5,(HL)"/* 2 16 ----"*/, | |
"SET 5,A "/* 2 8 ----"*/, | |
"SET 6,B "/* 2 8 ----"*/, | |
"SET 6,C "/* 2 8 ----"*/, | |
"SET 6,D "/* 2 8 ----"*/, | |
"SET 6,E "/* 2 8 ----"*/, | |
"SET 6,H "/* 2 8 ----"*/, | |
"SET 6,L "/* 2 8 ----"*/, | |
"SET 6,(HL)"/* 2 16 ----"*/, | |
"SET 6,A "/* 2 8 ----"*/, | |
"SET 7,B "/* 2 8 ----"*/, | |
"SET 7,C "/* 2 8 ----"*/, | |
"SET 7,D "/* 2 8 ----"*/, | |
"SET 7,E "/* 2 8 ----"*/, | |
"SET 7,H "/* 2 8 ----"*/, | |
"SET 7,L "/* 2 8 ----"*/, | |
"SET 7,(HL)"/* 2 16 ----"*/, | |
"SET 7,A "/* 2 8 ----"*/, | |
}; | |
// }}} | |
// }}} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment