Documentation ¶
Overview ¶
Package zex provides test cases of Z80 Exerciser.
Index ¶
Constants ¶
const Msbt = 0x0103
Msbt means machine state before test.
const MsbtHi = (Msbt >> 8) & 0xff
MsbtHi has high 8 bits of Msbt.
const MsbtLo = Msbt & 0xff
MsbtLo has low 8 bits of Msbt.
Variables ¶
var AllADC16 = Case{ 0xff, Status{ 0xed, 0x42, 0x00, 0x00, 0x832c, 0x4f88, 0xf22b, 0xb339, 0x7e1f, 0x1563, 0xd3, 0x89, 0x465e, }, Status{ 0x00, 0x38, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0xd48ad519), "<adc,sbc> hl,<bc,de,hl,sp>", }
AllADC16 - <adc,sbc> hl,<bc,de,hl,sp> (38,912 cycles)
var AllADD16 = Case{ 0xff, Status{ 0x09, 0x00, 0x00, 0x00, 0xc4a5, 0xc4c7, 0xd226, 0xa050, 0x58ea, 0x8566, 0xc6, 0xde, 0x9bc9, }, Status{ 0x30, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0xd9a4ca05), "add hl,<bc,de,hl,sp>", }
AllADD16 - add hl,<bc,de,hl,sp> (19,456 cycles)
var AllADD16X = Case{ 0xff, Status{ 0xdd, 0x09, 0x00, 0x00, 0xddac, 0xc294, 0x635b, 0x33d3, 0x6a76, 0xfa20, 0x94, 0x68, 0x36f5, }, Status{ 0x00, 0x30, 0x00, 0x00, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0xffff, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0xb1df8ec0), "add ix,<bc,de,ix,sp>", }
AllADD16X - add ix,<bc,de,ix,sp> (19,456 cycles)
var AllADD16Y = Case{ 0xff, Status{ 0xfd, 0x09, 0x00, 0x00, 0xc7c2, 0xf407, 0x51c1, 0x3e96, 0x0bf4, 0x510f, 0x92, 0x1e, 0x71ea, }, Status{ 0x00, 0x30, 0x00, 0x00, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0x39c8589b), "add iy,<bc,de,iy,sp>", }
AllADD16Y - add iy,<bc,de,iy,sp> (19,456 cycles)
var AllALU8I = Case{ 0xff, Status{ 0xc6, 0x00, 0x00, 0x00, 0x9140, 0x7e3c, 0x7a67, 0xdf6d, 0x5b61, 0x0b29, 0x10, 0x66, 0x85b2, }, Status{ 0x38, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0xff, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x51c19c2e), "aluop a,nn", }
AllALU8I - aluop a,nn (28,672 cycles)
var AllALU8R = Case{ 0xff, Status{ 0x80, 0x00, 0x00, 0x00, 0xc53e, 0x573a, 0x4c4d, Msbt, 0xe309, 0xa666, 0xd0, 0x3b, 0xadbb, }, Status{ 0x3f, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0x0000, }, CRC32(0x06c7aa8e), "aluop a,<b,c,d,e,h,l,(hl),a>", }
AllALU8R - aluop a,<b,c,d,e,h,l,(hl),a> (753,664 cycles)
var AllALU8RX = Case{ 0xff, Status{ 0xdd, 0x84, 0x00, 0x00, 0xd6f7, 0xc76e, 0xaccf, 0x2847, 0x22dd, 0xc035, 0xc5, 0x38, 0x234b, }, Status{ 0x20, 0x39, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0x0000, }, CRC32(0xa886cc44), "aluop a,<ixh,ixl,iyh,iyl>", }
AllALU8RX - aluop a,<ixh,ixl,iyh,iyl> (376,832 cycles)
var AllALU8X = Case{ 0xff, Status{ 0xdd, 0x86, 0x01, 0x00, 0x90b7, Msbt - 1, Msbt - 1, 0x32fd, 0x406e, 0xc1dc, 0x45, 0x6e, 0xe5fa, }, Status{ 0x20, 0x38, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xd3f2d74a), "aluop a,(<ix,iy>+1)", }
AllALU8X - aluop a,(<ix,iy>+1) (229,376 cycles)
var AllBITX = Case{ 0xff, Status{ 0xdd, 0xcb, 0x01, 0x46, 0x2075, Msbt - 1, Msbt - 1, 0x3cfc, 0xa79a, 0x3d74, 0x51, 0x27, 0xca14, }, Status{ 0x20, 0x00, 0x00, 0x38, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x53, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x83534ee1), "bit n,(<ix,iy>+1)", }
AllBITX - bit n,(<ix,iy>+1) (2048 cycles)
var AllBITZ80 = Case{ 0xff, Status{ 0xcb, 0x40, 0x00, 0x00, 0x3ef1, 0x9dfc, 0x7acc, Msbt, 0xbe61, 0x7a86, 0x50, 0x24, 0x1998, }, Status{ 0x00, 0x3f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x53, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x00, 0xff, 0x0000, }, CRC32(0x5e020e98), "bit n,<b,c,d,e,h,l,(hl),a>", }
AllBITZ80 - bit n,<b,c,d,e,h,l,(hl),a> (49,152 cycles)
var AllCPD1 = Case{ 0xff, Status{ 0xed, 0xa9, 0x00, 0x00, 0xc7b6, 0x72b4, 0x18f6, Msbt + 17, 0x8dbd, 0x0001, 0xc0, 0x30, 0x94a3, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000a, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x134b622d), "cpd<r>", }
AllCPD1 - cpd<r> (1) (6144 cycles)
var AllCPI1 = Case{ 0xff, Status{ 0xed, 0xa1, 0x00, 0x00, 0x4d48, 0xaf4a, 0x906b, Msbt, 0x4e71, 0x0001, 0x93, 0x6a, 0x907c, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000a, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x2da42d19), "cpi<r>", }
AllCPI1 - cpi<r> (1) (6144 cycles)
var AllCases = []Case{ AllADC16, AllADD16, AllADD16X, AllADD16Y, AllALU8I, AllALU8R, AllALU8RX, AllALU8X, AllBITX, AllBITZ80, AllCPD1, AllCPI1, AllDAAOP, AllINCA, AllINCB, AllINCBC, AllINCC, AllINCD, AllINCDE, AllINCE, AllINCH, AllINCHL, AllINCIX, AllINCIY, AllINCL, AllINCM, AllINCSP, AllINCX, AllINCXH, AllINCXL, AllINCYH, AllINCYL, AllLD161, AllLD162, AllLD163, AllLD164, AllLD165, AllLD166, AllLD167, AllLD168, AllLD16IM, AllLD16IX, AllLD8BD, AllLD8IM, AllLD8IMX, AllLD8IX1, AllLD8IX2, AllLD8IX3, AllLD8IXY, AllLD8RR, AllLD8RRX, AllLDA, AllLDD1, AllLDD2, AllLDI1, AllLDI2, AllNEGOP, AllRLDOP, AllROT8080, AllROTXY, AllROTZ80, AllSRZ80, AllSRZX, AllST8IX1, AllST8IX2, AllST8IX3, AllSTABD, }
AllCases has all test cases in zexdoc.asm
var AllDAAOP = Case{ 0xff, Status{ 0x27, 0x00, 0x00, 0x00, 0x2141, 0x09fa, 0x1d60, 0xa559, 0x8d5b, 0x9079, 0x04, 0x8e, 0x299d, }, Status{ 0x18, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x6d2dd213), "<daa,cpl,scf,ccf>", }
AllDAAOP - <daa,cpl,scf,ccf> (65,536 cycles)
var AllINCA = Case{ 0xff, Status{ 0x3c, 0x00, 0x00, 0x00, 0x4adf, 0xd5d8, 0xe598, 0x8a2b, 0xa7b0, 0x431b, 0x44, 0x5a, 0xd030, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x81fa8100), "<inc,dec> a", }
AllINCA - <inc,dec> a (3072 cycles)
var AllINCB = Case{ 0xff, Status{ 0x04, 0x00, 0x00, 0x00, 0xd623, 0x432d, 0x7a61, 0x8180, 0x5a86, 0x1e85, 0x86, 0x58, 0x9bbb, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xff00, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x77f35a73), "<inc,dec> b", }
AllINCB - <inc,dec> b (3072 cycles)
var AllINCBC = Case{ 0xff, Status{ 0x03, 0x00, 0x00, 0x00, 0xcd97, 0x44ab, 0x8dc9, 0xe3e3, 0x11cc, 0xe8a4, 0x02, 0x49, 0x2a4d, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf821, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xd2ae3bec), "<inc,dec> bc", }
AllINCBC - <inc,dec> bc (1536 cycles)
var AllINCC = Case{ 0xff, Status{ 0x0c, 0x00, 0x00, 0x00, 0xd789, 0x0935, 0x055b, 0x9f85, 0x8b27, 0xd208, 0x95, 0x05, 0x0660, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00ff, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x1af612a7), "<inc,dec> c", }
AllINCC - <inc,dec> c (3072 cycles)
var AllINCD = Case{ 0xff, Status{ 0x14, 0x00, 0x00, 0x00, 0xa0ea, 0x5fba, 0x65fb, 0x981c, 0x38cc, 0xdebc, 0x43, 0x5c, 0x03bd, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xff00, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xd146bf51), "<inc,dec> d", }
AllINCD - <inc,dec> d (3072 cycles)
var AllINCDE = Case{ 0xff, Status{ 0x13, 0x00, 0x00, 0x00, 0x342e, 0x131d, 0x28c9, 0x0aca, 0x9967, 0x3a2e, 0x92, 0xf6, 0x9d54, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xaec6d42c), "<inc,dec> de", }
AllINCDE - <inc,dec> de (1536 cycles)
var AllINCE = Case{ 0xff, Status{ 0x1c, 0x00, 0x00, 0x00, 0x602f, 0x4c0d, 0x2402, 0xe2f5, 0xa0f4, 0xa10a, 0x13, 0x32, 0x5925, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x00ff, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xca8c6ac2), "<inc,dec> e", }
AllINCE - <inc,dec> e (3072 cycles)
var AllINCH = Case{ 0xff, Status{ 0x24, 0x00, 0x00, 0x00, 0x1506, 0xf2eb, 0xe8dd, 0x262b, 0x11a6, 0xbc1a, 0x17, 0x06, 0x2818, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xff00, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x560f955e), "<inc,dec> h", }
AllINCH - <inc,dec> h (3072 cycles)
var AllINCHL = Case{ 0xff, Status{ 0x23, 0x00, 0x00, 0x00, 0xc3f4, 0x07a5, 0x1b6d, 0x4f04, 0xe2c2, 0x822a, 0x57, 0xe0, 0xc3e1, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xfc0d6d4a), "<inc,dec> hl", }
AllINCHL - <inc,dec> hl (1536 cycles)
var AllINCIX = Case{ 0xff, Status{ 0xdd, 0x23, 0x00, 0x00, 0xbc3c, 0x0d9b, 0xe081, 0xadfd, 0x9a7f, 0x96e5, 0x13, 0x85, 0x0be2, }, Status{ 0x00, 0x08, 0x00, 0x00, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xa54dbe31), "<inc,dec> ix", }
AllINCIX - <inc,dec> ix (1536 cycles)
var AllINCIY = Case{ 0xff, Status{ 0xfd, 0x23, 0x00, 0x00, 0x9402, 0x637a, 0x3182, 0xc65a, 0xb2e9, 0xabb4, 0x16, 0xf2, 0x6d05, }, Status{ 0x00, 0x08, 0x00, 0x00, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x505d51a3), "<inc,dec> iy", }
AllINCIY - <inc,dec> iy (1536 cycles)
var AllINCL = Case{ 0xff, Status{ 0x2c, 0x00, 0x00, 0x00, 0x8031, 0xa520, 0x4356, 0xb409, 0xf4c1, 0xdfa2, 0xd1, 0x3c, 0x3ea2, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x00ff, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xa0a1b49f), "<inc,dec> l", }
AllINCL - <inc,dec> l (3072 cycles)
var AllINCM = Case{ 0xff, Status{ 0x34, 0x00, 0x00, 0x00, 0xb856, 0x0c7c, 0xe53e, Msbt, 0x877e, 0xda58, 0x15, 0x5c, 0x1f37, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x28295ece), "<inc,dec> (hl)", }
AllINCM - <inc,dec> (hl) (3072 cycles)
var AllINCSP = Case{ 0xff, Status{ 0x33, 0x00, 0x00, 0x00, 0x346f, 0xd482, 0xd169, 0xdeb6, 0xa494, 0xf476, 0x53, 0x02, 0x855b, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0xf821, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x5dacd527), "<inc,dec> sp", }
AllINCSP - <inc,dec> sp (1536 cycles)
var AllINCX = Case{ 0xff, Status{ 0xdd, 0x34, 0x01, 0x00, 0xfa6e, Msbt - 1, Msbt - 1, 0x2c28, 0x8894, 0x5057, 0x16, 0x33, 0x286f, }, Status{ 0x20, 0x01, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x0b95a8ea), "<inc,dec> (<ix,iy>+1)", }
AllINCX - <inc,dec> (<ix,iy>+1) (6144 cycles)
var AllINCXH = Case{ 0xff, Status{ 0xdd, 0x24, 0x00, 0x00, 0xb838, 0x316c, 0xc6d4, 0x3e01, 0x8358, 0x15b4, 0x81, 0xde, 0x4259, }, Status{ 0x00, 0x01, 0x00, 0x00, 0x0000, 0xff00, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x6f463662), "<inc,dec> ixh", }
AllINCXH - <inc,dec> ixh (3072 cycles)
var AllINCXL = Case{ 0xff, Status{ 0xdd, 0x2c, 0x00, 0x00, 0x4d14, 0x7460, 0x76d4, 0x06e7, 0x32a2, 0x213c, 0xd6, 0xd7, 0x99a5, }, Status{ 0x00, 0x01, 0x00, 0x00, 0x0000, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x027bef2c), "<inc,dec> ixl", }
AllINCXL - <inc,dec> ixl (3072 cycles)
var AllINCYH = Case{ 0xff, Status{ 0xdd, 0x24, 0x00, 0x00, 0x2836, 0x9f6f, 0x9116, 0x61b9, 0x82cb, 0xe219, 0x92, 0x73, 0xa98c, }, Status{ 0x00, 0x01, 0x00, 0x00, 0xff00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x2d966cf3), "<inc,dec> iyh", }
AllINCYH - <inc,dec> iyh (3072 cycles)
var AllINCYL = Case{ 0xff, Status{ 0xdd, 0x2c, 0x00, 0x00, 0xd7c6, 0x62d5, 0xa09e, 0x7039, 0x3e7e, 0x9f12, 0x90, 0xd9, 0x220f, }, Status{ 0x00, 0x01, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x36c11e75), "<inc,dec> iyl", }
AllINCYL - <inc,dec> iyl (3072 cycles)
var AllLD161 = Case{ 0xff, Status{ 0xed, 0x4b, MsbtLo, MsbtHi, 0xf9a8, 0xf559, 0x93a4, 0xf5ed, 0x6f96, 0xd968, 0x86, 0xe6, 0x4bd8, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x4d45a9ac), "ld <bc,de>,(nnnn)", }
AllLD161 - ld <bc,de>,(nnnn) (32 cycles)
var AllLD162 = Case{ 0xff, Status{ 0x2a, MsbtLo, MsbtHi, 0x00, 0x9863, 0x7830, 0x2077, 0xb1fe, 0xb9fa, 0xabb8, 0x04, 0x06, 0x6015, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x5f972487), "ld hl,(nnnn)", }
AllLD162 - ld hl,(nnnn) (16 cycles)
var AllLD163 = Case{ 0xff, Status{ 0xed, 0x7b, MsbtLo, MsbtHi, 0x8dfc, 0x57d7, 0x2161, 0xca18, 0xc185, 0x27da, 0x83, 0x1e, 0xf460, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x7acea11b), "ld sp,(nnnn)", }
AllLD163 - ld sp,(nnnn) (16 cycles)
var AllLD164 = Case{ 0xff, Status{ 0xdd, 0x2a, MsbtLo, MsbtHi, 0xded7, 0xa6fa, 0xf780, 0x244c, 0x87de, 0xbcc2, 0x16, 0x63, 0x4c96, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x858bf16d), "ld <ix,iy>,(nnnn)", }
AllLD164 - ld <ix,iy>,(nnnn) (32 cycles)
var AllLD165 = Case{ 0xff, Status{ 0xed, 0x43, MsbtLo, MsbtHi, 0x1f98, 0x844d, 0xe8ac, 0xc9ed, 0xc95d, 0x8f61, 0x80, 0x3f, 0xc7bf, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x00, 0x00, 0x0000, }, CRC32(0x641e8715), "ld (nnnn),<bc,de>", }
AllLD165 - ld (nnnn),<bc,de> (64 cycles)
var AllLD166 = Case{ 0xff, Status{ 0x22, MsbtLo, MsbtHi, 0x00, 0xd003, 0x7772, 0x7f53, 0x3f72, 0x64ea, 0xe180, 0x10, 0x2d, 0x35e9, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xa3608b47), "ld (nnnn),hl", }
AllLD166 - ld (nnnn),hl (16 cycles)
var AllLD167 = Case{ 0xff, Status{ 0xed, 0x73, MsbtLo, MsbtHi, 0xc0dc, 0xd1d6, 0xed5a, 0xf356, 0xafda, 0x6ca7, 0x44, 0x9f, 0x3f0a, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0xffff, }, CRC32(0x16585fd7), "ld (nnnn),sp", }
AllLD167 - ld (nnnn),sp (16 cycles)
var AllLD168 = Case{ 0xff, Status{ 0xdd, 0x22, MsbtLo, MsbtHi, 0x6cc3, 0x0d91, 0x6900, 0x8ef8, 0xe3d6, 0xc3f7, 0xc6, 0xd9, 0xc2df, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xba102a6b), "ld (nnnn),<ix,iy>", }
AllLD168 - ld (nnnn),<ix,iy> (64 cycles)
var AllLD16IM = Case{ 0xff, Status{ 0x01, 0x00, 0x00, 0x00, 0x5c1c, 0x2d46, 0x8eb9, 0x6078, 0x74b1, 0xb30e, 0x46, 0xd1, 0x30cc, }, Status{ 0x30, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0xff, 0xff, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xde391969), "ld <bc,de,hl,sp>,nnnn", }
AllLD16IM - ld <bc,de,hl,sp>,nnnn (64 cycles)
var AllLD16IX = Case{ 0xff, Status{ 0xdd, 0x21, 0x00, 0x00, 0x87e8, 0x2006, 0xbd12, 0xb69b, 0x7253, 0xa1e5, 0x51, 0x13, 0xf1bd, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0xff, 0xff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x227dd525), "ld <ix,iy>,nnnn", }
AllLD16IX - ld <ix,iy>,nnnn (32 cycles)
var AllLD8BD = Case{ 0xff, Status{ 0x0a, 0x00, 0x00, 0x00, 0xb3a8, 0x1d2a, 0x7f8e, 0x42ac, Msbt, Msbt, 0xc6, 0xb1, 0xef8e, }, Status{ 0x10, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, CRC32(0xb0818935), "ld a,<(bc),(de)>", }
AllLD8BD - ld a,<(bc),(de)> (44 cycles)
var AllLD8IM = Case{ 0xff, Status{ 0x06, 0x00, 0x00, 0x00, 0xc407, 0xf49d, 0xd13d, 0x0339, 0xde89, 0x7455, 0x53, 0xc0, 0x5509, }, Status{ 0x38, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0xf1dab556), "ld <b,c,d,e,h,l,(hl),a>,nn", }
AllLD8IM - ld <b,c,d,e,h,l,(hl),a>,nn (64 cycles)
var AllLD8IMX = Case{ 0xff, Status{ 0xdd, 0x36, 0x01, 0x00, 0x1b45, Msbt - 1, Msbt - 1, 0xd5c1, 0x61c7, 0xbdc4, 0xc0, 0x85, 0xcd16, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0xff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0x26db477e), "ld (<ix,iy>+1),nn", }
AllLD8IMX - ld (<ix,iy>+1),nn (32 cycles)
var AllLD8IX1 = Case{ 0xff, Status{ 0xdd, 0x46, 0x01, 0x00, 0xd016, Msbt - 1, Msbt - 1, 0x4260, 0x7f39, 0x0404, 0x97, 0x4a, 0xd085, }, Status{ 0x20, 0x18, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xcc1106a8), "ld <b,c,d,e>,(<ix,iy>+1)", }
AllLD8IX1 - ld <b,c,d,e>,(<ix,iy>+1) (512 cycles)
var AllLD8IX2 = Case{ 0xff, Status{ 0xdd, 0x66, 0x01, 0x00, 0x84e0, Msbt - 1, Msbt - 1, 0x9c52, 0xa799, 0x49b6, 0x93, 0x00, 0xeead, }, Status{ 0x20, 0x08, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xfa2a4d03), "ld <h,l>,(<ix,iy>+1)", }
AllLD8IX2 - ld <h,l>,(<ix,iy>+1) (256 cycles)
var AllLD8IX3 = Case{ 0xff, Status{ 0xdd, 0x7e, 0x01, 0x00, 0xd8b6, Msbt - 1, Msbt - 1, 0xc612, 0xdf07, 0x9cd0, 0x43, 0xa6, 0xa0e5, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xa5e9ac64), "ld a,(<ix,iy>+1)", }
AllLD8IX3 - ld a,(<ix,iy>+1) (128 cycles)
var AllLD8IXY = Case{ 0xff, Status{ 0xdd, 0x26, 0x00, 0x00, 0x3c53, 0x4640, 0xe179, 0x7711, 0xc107, 0x1afa, 0x81, 0xad, 0x5d9b, }, Status{ 0x20, 0x08, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0x24e8828b), "ld <ixh,ixl,iyh,iyl>,nn", }
AllLD8IXY - ld <ixh,ixl,iyh,iyl>,nn (32 cycles)
var AllLD8RR = Case{ 0xff, Status{ 0x40, 0x00, 0x00, 0x00, 0x72a4, 0xa024, 0x61ac, Msbt, 0x82c7, 0x718f, 0x97, 0x8f, 0xef8e, }, Status{ 0x3f, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0xff, 0x0000, }, CRC32(0x744b0118), "ld <bcdehla>,<bcdehla>", }
AllLD8RR - ld <b,c,d,e,h,l,a>,<b,c,d,e,h,l,a> (3456 cycles)
var AllLD8RRX = Case{ 0xff, Status{ 0xdd, 0x40, 0x00, 0x00, 0xbcc5, Msbt, Msbt, Msbt, 0x2fc2, 0x98c0, 0x83, 0x1f, 0x3bcd, }, Status{ 0x20, 0x3f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0xff, 0x0000, }, CRC32(0x478ba36b), "ld <bcdexya>,<bcdexya>", }
AllLD8RRX - ld <b,c,d,e,ixy,a>,<b,c,d,e,ixy,a> (6912 cycles)
var AllLDA = Case{ 0xff, Status{ 0x32, MsbtLo, MsbtHi, 0x00, 0xfd68, 0xf4ec, 0x44a0, 0xb543, 0x0653, 0xcdba, 0xd2, 0x4f, 0x1fd8, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, CRC32(0xc9262de5), "ld a,(nnnn) / ld (nnnn),a", }
AllLDA - ld a,(nnnn) / ld (nnnn),a (44 cycles)
var AllLDD1 = Case{ 0xff, Status{ 0xed, 0xa8, 0x00, 0x00, 0x9852, 0x68fa, 0x66a1, Msbt + 3, Msbt + 1, 0x0001, 0xc1, 0x68, 0x20b7, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x94f42769), "ldd<r> (1)", }
AllLDD1 - ldd<r> (1) (44 cycles)
var AllLDD2 = Case{ 0xff, Status{ 0xed, 0xa8, 0x00, 0x00, 0xf12e, 0xeb2a, 0xd5ba, Msbt + 3, Msbt + 1, 0x0002, 0x47, 0xff, 0xfbe4, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x39dd3de1), "ldd<r> (2)", }
AllLDD2 - ldd<r> (2) (44 cycles)
var AllLDI1 = Case{ 0xff, Status{ 0xed, 0xa0, 0x00, 0x00, 0xfe30, 0x03cd, 0x6058, Msbt + 2, Msbt, 0x0001, 0x04, 0x60, 0x2688, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xf782b0d1), "ldi<r> (1)", }
AllLDI1 - ldi<r> (1) (44 cycles)
var AllLDI2 = Case{ 0xff, Status{ 0xed, 0xa0, 0x00, 0x00, 0x4ace, 0xc26e, 0xb188, Msbt + 2, Msbt, 0x0002, 0x14, 0x2d, 0xa39f, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xe9ead0ae), "ldi<r> (2)", }
AllLDI2 - ldi<r> (2) (44 cycles)
var AllNEGOP = Case{ 0xff, Status{ 0xed, 0x44, 0x00, 0x00, 0x38a2, 0x5f6b, 0xd934, 0x57e4, 0xd2d6, 0x4642, 0x43, 0x5a, 0x09cc, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xd638dd6a), "neg", }
AllNEGOP - neg (16,384 cycles)
var AllRLDOP = Case{ 0xff, Status{ 0xed, 0x67, 0x00, 0x00, 0x91cb, 0xc48b, 0xfa62, Msbt, 0xe720, 0xb479, 0x40, 0x06, 0x8ae2, }, Status{ 0x00, 0x08, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, CRC32(0xff823e77), "<rrd,rld>", }
AllRLDOP - <rld,rrd> (7168 cycles)
var AllROT8080 = Case{ 0xff, Status{ 0x07, 0x00, 0x00, 0x00, 0xcb92, 0x6d43, 0x0a90, 0xc284, 0x0c53, 0xf50e, 0x91, 0xeb, 0x40fc, }, Status{ 0x18, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x9ba3807c), "<rlca,rrca,rla,rra>", }
AllROT8080 - <rlca,rrca,rla,rra> (6144 cycles)
var AllROTXY = Case{ 0xff, Status{ 0xdd, 0xcb, 0x01, 0x06, 0xddaf, Msbt - 1, Msbt - 1, 0xff3c, 0xdbf6, 0x94f4, 0x82, 0x80, 0x61d9, }, Status{ 0x20, 0x00, 0x00, 0x38, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x80, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x57, 0x00, 0x0000, }, CRC32(0x710034cb), "shf/rot (<ix,iy>+1)", }
AllROTXY - shift/rotate (<ix,iy>+1) (416 cycles)
var AllROTZ80 = Case{ 0xff, Status{ 0xcb, 0x00, 0x00, 0x00, 0xcceb, 0x5d4a, 0xe007, Msbt, 0x1395, 0x30ee, 0x43, 0x78, 0x3dad, }, Status{ 0x00, 0x3f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x80, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x57, 0xff, 0x0000, }, CRC32(0xa4255833), "shf/rot <b,c,d,e,h,l,(hl),a>", }
AllROTZ80 - shift/rotate <b,c,d,e,h,l,(hl),a> (6784 cycles)
var AllSRZ80 = Case{ 0xff, Status{ 0xcb, 0x80, 0x00, 0x00, 0x2cd5, 0x97ab, 0x39ff, Msbt, 0xd14b, 0x6ab2, 0x53, 0x27, 0xb538, }, Status{ 0x00, 0x7f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0xff, 0x0000, }, CRC32(0x8b57f008), "<set,res> n,<bcdehl(hl)a>", }
AllSRZ80 - <set,res> n,<b,c,d,e,h,l,(hl),a> (7936 cycles)
var AllSRZX = Case{ 0xff, Status{ 0xdd, 0xcb, 0x01, 0x86, 0xfb44, Msbt - 1, Msbt - 1, 0xba09, 0x68be, 0x32d8, 0x10, 0x5e, 0xa867, }, Status{ 0x20, 0x00, 0x00, 0x78, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xcc63f98a), "<set,res> n,(<ix,iy>+1)", }
AllSRZX - <set,res> n,(<ix,iy>+1) (1792 cycles)
var AllST8IX1 = Case{ 0xff, Status{ 0xdd, 0x70, 0x01, 0x00, 0x270d, Msbt - 1, Msbt - 1, 0xb73a, 0x887b, 0x99ee, 0x86, 0x70, 0xca07, }, Status{ 0x20, 0x03, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x00, 0x00, 0x0000, }, CRC32(0x04626abf), "ld (<ix,iy>+1),<b,c,d,e>", }
AllST8IX1 - ld (<ix,iy>+1),<b,c,d,e> (1024 cycles)
var AllST8IX2 = Case{ 0xff, Status{ 0xdd, 0x74, 0x01, 0x00, 0xb664, Msbt - 1, Msbt - 1, 0xe8ac, 0xb5f5, 0xaafe, 0x12, 0x10, 0x9566, }, Status{ 0x20, 0x01, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x6a1a8831), "ld (<ix,iy>+1),<h,l>", }
AllST8IX2 - ld (<ix,iy>+1),<h,l> (256 cycles)
var AllST8IX3 = Case{ 0xff, Status{ 0xdd, 0x77, 0x01, 0x00, 0x67af, Msbt - 1, Msbt - 1, 0x4f13, 0x0644, 0xbcd7, 0x50, 0xac, 0x5faf, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0xccbe5a96), "ld (<ix,iy>+1),a", }
AllST8IX3 - ld (<ix,iy>+1),a (64 cycles)
var AllSTABD = Case{ 0xff, Status{ 0x02, 0x00, 0x00, 0x00, 0x0c3b, 0xb592, 0x6cff, 0x959e, Msbt, Msbt + 1, 0xc1, 0x21, 0xbde7, }, Status{ 0x18, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0x7a4c114f), "ld (<bc,de>),a", }
AllSTABD - ld (<bc,de>),a (96 cycles)
var DocADC16 = Case{ 0xc7, Status{ 0xed, 0x42, 0x00, 0x00, 0x832c, 0x4f88, 0xf22b, 0xb339, 0x7e1f, 0x1563, 0xd3, 0x89, 0x465e, }, Status{ 0x00, 0x38, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0xf8b4eaa9), "<adc,sbc> hl,<bc,de,hl,sp>", }
DocADC16 - <adc,sbc> hl,<bc,de,hl,sp> (38,912 cycles)
var DocADD16 = Case{ 0xc7, Status{ 0x09, 0x00, 0x00, 0x00, 0xc4a5, 0xc4c7, 0xd226, 0xa050, 0x58ea, 0x8566, 0xc6, 0xde, 0x9bc9, }, Status{ 0x30, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0x89fdb635), "add hl,<bc,de,hl,sp>", }
DocADD16 - add hl,<bc,de,hl,sp> (19,456 cycles)
var DocADD16X = Case{ 0xc7, Status{ 0xdd, 0x09, 0x00, 0x00, 0xddac, 0xc294, 0x635b, 0x33d3, 0x6a76, 0xfa20, 0x94, 0x68, 0x36f5, }, Status{ 0x00, 0x30, 0x00, 0x00, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0xffff, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0xc133790b), "add ix,<bc,de,ix,sp>", }
DocADD16X - add ix,<bc,de,ix,sp> (19,456 cycles)
var DocADD16Y = Case{ 0xc7, Status{ 0xfd, 0x09, 0x00, 0x00, 0xc7c2, 0xf407, 0x51c1, 0x3e96, 0x0bf4, 0x510f, 0x92, 0x1e, 0x71ea, }, Status{ 0x00, 0x30, 0x00, 0x00, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0xffff, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0xffff, }, CRC32(0xe8817b9e), "add iy,<bc,de,iy,sp>", }
DocADD16Y - add iy,<bc,de,iy,sp> (19,456 cycles)
var DocALU8I = Case{ 0xd7, Status{ 0xc6, 0x00, 0x00, 0x00, 0x9140, 0x7e3c, 0x7a67, 0xdf6d, 0x5b61, 0x0b29, 0x10, 0x66, 0x85b2, }, Status{ 0x38, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0xff, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x48799360), "aluop a,nn", }
DocALU8I - aluop a,nn (28,672 cycles)
var DocALU8R = Case{ 0xd7, Status{ 0x80, 0x00, 0x00, 0x00, 0xc53e, 0x573a, 0x4c4d, Msbt, 0xe309, 0xa666, 0xd0, 0x3b, 0xadbb, }, Status{ 0x3f, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0x0000, }, CRC32(0xfe43b016), "aluop a,<b,c,d,e,h,l,(hl),a>", }
DocALU8R - aluop a,<b,c,d,e,h,l,(hl),a> (753,664 cycles)
var DocALU8RX = Case{ 0xd7, Status{ 0xdd, 0x84, 0x00, 0x00, 0xd6f7, 0xc76e, 0xaccf, 0x2847, 0x22dd, 0xc035, 0xc5, 0x38, 0x234b, }, Status{ 0x20, 0x39, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0x00, 0x0000, }, CRC32(0xa4026d5a), "aluop a,<ixh,ixl,iyh,iyl>", }
DocALU8RX - aluop a,<ixh,ixl,iyh,iyl> (376,832 cycles)
var DocALU8X = Case{ 0xd7, Status{ 0xdd, 0x86, 0x01, 0x00, 0x90b7, Msbt - 1, Msbt - 1, 0x32fd, 0x406e, 0xc1dc, 0x45, 0x6e, 0xe5fa, }, Status{ 0x20, 0x38, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xe849676e), "aluop a,(<ix,iy>+1)", }
DocALU8X - aluop a,(<ix,iy>+1) (229,376 cycles)
var DocBITX = Case{ 0x53, Status{ 0xdd, 0xcb, 0x01, 0x46, 0x2075, Msbt - 1, Msbt - 1, 0x3cfc, 0xa79a, 0x3d74, 0x51, 0x27, 0xca14, }, Status{ 0x20, 0x00, 0x00, 0x38, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x53, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xa8ee0867), "bit n,(<ix,iy>+1)", }
DocBITX - bit n,(<ix,iy>+1) (2048 cycles)
var DocBITZ80 = Case{ 0x53, Status{ 0xcb, 0x40, 0x00, 0x00, 0x3ef1, 0x9dfc, 0x7acc, Msbt, 0xbe61, 0x7a86, 0x50, 0x24, 0x1998, }, Status{ 0x00, 0x3f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x53, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x00, 0xff, 0x0000, }, CRC32(0x7b55e6c8), "bit n,<b,c,d,e,h,l,(hl),a>", }
DocBITZ80 - bit n,<b,c,d,e,h,l,(hl),a> (49,152 cycles)
var DocCPD1 = Case{ 0xd7, Status{ 0xed, 0xa9, 0x00, 0x00, 0xc7b6, 0x72b4, 0x18f6, Msbt + 17, 0x8dbd, 0x0001, 0xc0, 0x30, 0x94a3, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000a, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xa87e6cfa), "cpd<r>", }
DocCPD1 - cpd<r> (1) (6144 cycles)
var DocCPI1 = Case{ 0xd7, Status{ 0xed, 0xa1, 0x00, 0x00, 0x4d48, 0xaf4a, 0x906b, Msbt, 0x4e71, 0x0001, 0x93, 0x6a, 0x907c, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000a, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x06deb356), "cpi<r>", }
DocCPI1 - cpi<r> (1) (6144 cycles)
var DocCases = []Case{ DocADC16, DocADD16, DocADD16X, DocADD16Y, DocALU8I, DocALU8R, DocALU8RX, DocALU8X, DocBITX, DocBITZ80, DocCPD1, DocCPI1, DocDAAOP, DocINCA, DocINCB, DocINCBC, DocINCC, DocINCD, DocINCDE, DocINCE, DocINCH, DocINCHL, DocINCIX, DocINCIY, DocINCL, DocINCM, DocINCSP, DocINCX, DocINCXH, DocINCXL, DocINCYH, DocINCYL, DocLD161, DocLD162, DocLD163, DocLD164, DocLD165, DocLD166, DocLD167, DocLD168, DocLD16IM, DocLD16IX, DocLD8BD, DocLD8IM, DocLD8IMX, DocLD8IX1, DocLD8IX2, DocLD8IX3, DocLD8IXY, DocLD8RR, DocLD8RRX, DocLDA, DocLDD1, DocLDD2, DocLDI1, DocLDI2, DocNEGOP, DocRLDOP, DocROT8080, DocROTXY, DocROTZ80, DocSRZ80, DocSRZX, DocST8IX1, DocST8IX2, DocST8IX3, DocSTABD, }
DocCases has all test cases in zexdoc.asm
var DocDAAOP = Case{ 0xd7, Status{ 0x27, 0x00, 0x00, 0x00, 0x2141, 0x09fa, 0x1d60, 0xa559, 0x8d5b, 0x9079, 0x04, 0x8e, 0x299d, }, Status{ 0x18, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x9b4ba675), "<daa,cpl,scf,ccf>", }
DocDAAOP - <daa,cpl,scf,ccf> (65,536 cycles)
var DocINCA = Case{ 0xd7, Status{ 0x3c, 0x00, 0x00, 0x00, 0x4adf, 0xd5d8, 0xe598, 0x8a2b, 0xa7b0, 0x431b, 0x44, 0x5a, 0xd030, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xd18815a4), "<inc,dec> a", }
DocINCA - <inc,dec> a (3072 cycles)
var DocINCB = Case{ 0xd7, Status{ 0x04, 0x00, 0x00, 0x00, 0xd623, 0x432d, 0x7a61, 0x8180, 0x5a86, 0x1e85, 0x86, 0x58, 0x9bbb, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xff00, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x5f682264), "<inc,dec> b", }
DocINCB - <inc,dec> b (3072 cycles)
var DocINCBC = Case{ 0xd7, Status{ 0x03, 0x00, 0x00, 0x00, 0xcd97, 0x44ab, 0x8dc9, 0xe3e3, 0x11cc, 0xe8a4, 0x02, 0x49, 0x2a4d, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xf821, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xd2ae3bec), "<inc,dec> bc", }
DocINCBC - <inc,dec> bc (1536 cycles)
var DocINCC = Case{ 0xd7, Status{ 0x0c, 0x00, 0x00, 0x00, 0xd789, 0x0935, 0x055b, 0x9f85, 0x8b27, 0xd208, 0x95, 0x05, 0x0660, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00ff, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xc284554c), "<inc,dec> c", }
DocINCC - <inc,dec> c (3072 cycles)
var DocINCD = Case{ 0xd7, Status{ 0x14, 0x00, 0x00, 0x00, 0xa0ea, 0x5fba, 0x65fb, 0x981c, 0x38cc, 0xdebc, 0x43, 0x5c, 0x03bd, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xff00, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x4523de10), "<inc,dec> d", }
DocINCD - <inc,dec> d (3072 cycles)
var DocINCDE = Case{ 0xd7, Status{ 0x13, 0x00, 0x00, 0x00, 0x342e, 0x131d, 0x28c9, 0x0aca, 0x9967, 0x3a2e, 0x92, 0xf6, 0x9d54, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xaec6d42c), "<inc,dec> de", }
DocINCDE - <inc,dec> de (1536 cycles)
var DocINCE = Case{ 0xd7, Status{ 0x1c, 0x00, 0x00, 0x00, 0x602f, 0x4c0d, 0x2402, 0xe2f5, 0xa0f4, 0xa10a, 0x13, 0x32, 0x5925, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x00ff, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xe175afcc), "<inc,dec> e", }
DocINCE - <inc,dec> e (3072 cycles)
var DocINCH = Case{ 0xd7, Status{ 0x24, 0x00, 0x00, 0x00, 0x1506, 0xf2eb, 0xe8dd, 0x262b, 0x11a6, 0xbc1a, 0x17, 0x06, 0x2818, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xff00, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x1ced847d), "<inc,dec> h", }
DocINCH - <inc,dec> h (3072 cycles)
var DocINCHL = Case{ 0xd7, Status{ 0x23, 0x00, 0x00, 0x00, 0xc3f4, 0x07a5, 0x1b6d, 0x4f04, 0xe2c2, 0x822a, 0x57, 0xe0, 0xc3e1, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xfc0d6d4a), "<inc,dec> hl", }
DocINCHL - <inc,dec> hl (1536 cycles)
var DocINCIX = Case{ 0xd7, Status{ 0xdd, 0x23, 0x00, 0x00, 0xbc3c, 0x0d9b, 0xe081, 0xadfd, 0x9a7f, 0x96e5, 0x13, 0x85, 0x0be2, }, Status{ 0x00, 0x08, 0x00, 0x00, 0x0000, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xa54dbe31), "<inc,dec> ix", }
DocINCIX - <inc,dec> ix (1536 cycles)
var DocINCIY = Case{ 0xd7, Status{ 0xfd, 0x23, 0x00, 0x00, 0x9402, 0x637a, 0x3182, 0xc65a, 0xb2e9, 0xabb4, 0x16, 0xf2, 0x6d05, }, Status{ 0x00, 0x08, 0x00, 0x00, 0x0000, 0xf821, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x505d51a3), "<inc,dec> iy", }
DocINCIY - <inc,dec> iy (1536 cycles)
var DocINCL = Case{ 0xd7, Status{ 0x2c, 0x00, 0x00, 0x00, 0x8031, 0xa520, 0x4356, 0xb409, 0xf4c1, 0xdfa2, 0xd1, 0x3c, 0x3ea2, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x00ff, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x56cd06f3), "<inc,dec> l", }
DocINCL - <inc,dec> l (3072 cycles)
var DocINCM = Case{ 0xd7, Status{ 0x34, 0x00, 0x00, 0x00, 0xb856, 0x0c7c, 0xe53e, Msbt, 0x877e, 0xda58, 0x15, 0x5c, 0x1f37, }, Status{ 0x01, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xb83adcef), "<inc,dec> (hl)", }
DocINCM - <inc,dec> (hl) (3072 cycles)
var DocINCSP = Case{ 0xd7, Status{ 0x33, 0x00, 0x00, 0x00, 0x346f, 0xd482, 0xd169, 0xdeb6, 0xa494, 0xf476, 0x53, 0x02, 0x855b, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0xf821, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x5dacd527), "<inc,dec> sp", }
DocINCSP - <inc,dec> sp (1536 cycles)
var DocINCX = Case{ 0xd7, Status{ 0xdd, 0x34, 0x01, 0x00, 0xfa6e, Msbt - 1, Msbt - 1, 0x2c28, 0x8894, 0x5057, 0x16, 0x33, 0x286f, }, Status{ 0x20, 0x01, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x20581470), "<inc,dec> (<ix,iy>+1)", }
DocINCX - <inc,dec> (<ix,iy>+1) (6144 cycles)
var DocINCXH = Case{ 0xd7, Status{ 0xdd, 0x24, 0x00, 0x00, 0xb838, 0x316c, 0xc6d4, 0x3e01, 0x8358, 0x15b4, 0x81, 0xde, 0x4259, }, Status{ 0x00, 0x01, 0x00, 0x00, 0x0000, 0xff00, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x6f463662), "<inc,dec> ixh", }
DocINCXH - <inc,dec> ixh (3072 cycles)
var DocINCXL = Case{ 0xd7, Status{ 0xdd, 0x2c, 0x00, 0x00, 0x4d14, 0x7460, 0x76d4, 0x06e7, 0x32a2, 0x213c, 0xd6, 0xd7, 0x99a5, }, Status{ 0x00, 0x01, 0x00, 0x00, 0x0000, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x027bef2c), "<inc,dec> ixl", }
DocINCXL - <inc,dec> ixl (3072 cycles)
var DocINCYH = Case{ 0xd7, Status{ 0xdd, 0x24, 0x00, 0x00, 0x2836, 0x9f6f, 0x9116, 0x61b9, 0x82cb, 0xe219, 0x92, 0x73, 0xa98c, }, Status{ 0x00, 0x01, 0x00, 0x00, 0xff00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x2d966cf3), "<inc,dec> iyh", }
DocINCYH - <inc,dec> iyh (3072 cycles)
var DocINCYL = Case{ 0xd7, Status{ 0xdd, 0x2c, 0x00, 0x00, 0xd7c6, 0x62d5, 0xa09e, 0x7039, 0x3e7e, 0x9f12, 0x90, 0xd9, 0x220f, }, Status{ 0x00, 0x01, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xfbcbba95), "<inc,dec> iyl", }
DocINCYL - <inc,dec> iyl (3072 cycles)
var DocLD161 = Case{ 0xd7, Status{ 0xed, 0x4b, MsbtLo, MsbtHi, 0xf9a8, 0xf559, 0x93a4, 0xf5ed, 0x6f96, 0xd968, 0x86, 0xe6, 0x4bd8, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x4d45a9ac), "ld <bc,de>,(nnnn)", }
DocLD161 - ld <bc,de>,(nnnn) (32 cycles)
var DocLD162 = Case{ 0xd7, Status{ 0x2a, MsbtLo, MsbtHi, 0x00, 0x9863, 0x7830, 0x2077, 0xb1fe, 0xb9fa, 0xabb8, 0x04, 0x06, 0x6015, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x5f972487), "ld hl,(nnnn)", }
DocLD162 - ld hl,(nnnn) (16 cycles)
var DocLD163 = Case{ 0xd7, Status{ 0xed, 0x7b, MsbtLo, MsbtHi, 0x8dfc, 0x57d7, 0x2161, 0xca18, 0xc185, 0x27da, 0x83, 0x1e, 0xf460, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x7acea11b), "ld sp,(nnnn)", }
DocLD163 - ld sp,(nnnn) (16 cycles)
var DocLD164 = Case{ 0xd7, Status{ 0xdd, 0x2a, MsbtLo, MsbtHi, 0xded7, 0xa6fa, 0xf780, 0x244c, 0x87de, 0xbcc2, 0x16, 0x63, 0x4c96, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x858bf16d), "ld <ix,iy>,(nnnn)", }
DocLD164 - ld <ix,iy>,(nnnn) (32 cycles)
var DocLD165 = Case{ 0xd7, Status{ 0xed, 0x43, MsbtLo, MsbtHi, 0x1f98, 0x844d, 0xe8ac, 0xc9ed, 0xc95d, 0x8f61, 0x80, 0x3f, 0xc7bf, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x00, 0x00, 0x0000, }, CRC32(0x641e8715), "ld (nnnn),<bc,de>", }
DocLD165 - ld (nnnn),<bc,de> (64 cycles)
var DocLD166 = Case{ 0xd7, Status{ 0x22, MsbtLo, MsbtHi, 0x00, 0xd003, 0x7772, 0x7f53, 0x3f72, 0x64ea, 0xe180, 0x10, 0x2d, 0x35e9, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xa3608b47), "ld (nnnn),hl", }
DocLD166 - ld (nnnn),hl (16 cycles)
var DocLD167 = Case{ 0xd7, Status{ 0xed, 0x73, MsbtLo, MsbtHi, 0xc0dc, 0xd1d6, 0xed5a, 0xf356, 0xafda, 0x6ca7, 0x44, 0x9f, 0x3f0a, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0xffff, }, CRC32(0x16585fd7), "ld (nnnn),sp", }
DocLD167 - ld (nnnn),sp (16 cycles)
var DocLD168 = Case{ 0xd7, Status{ 0xdd, 0x22, MsbtLo, MsbtHi, 0x6cc3, 0x0d91, 0x6900, 0x8ef8, 0xe3d6, 0xc3f7, 0xc6, 0xd9, 0xc2df, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0xffff, 0xffff, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xba102a6b), "ld (nnnn),<ix,iy>", }
DocLD168 - ld (nnnn),<ix,iy> (64 cycles)
var DocLD16IM = Case{ 0xd7, Status{ 0x01, 0x00, 0x00, 0x00, 0x5c1c, 0x2d46, 0x8eb9, 0x6078, 0x74b1, 0xb30e, 0x46, 0xd1, 0x30cc, }, Status{ 0x30, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0xff, 0xff, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xde391969), "ld <bc,de,hl,sp>,nnnn", }
DocLD16IM - ld <bc,de,hl,sp>,nnnn (64 cycles)
var DocLD16IX = Case{ 0xd7, Status{ 0xdd, 0x21, 0x00, 0x00, 0x87e8, 0x2006, 0xbd12, 0xb69b, 0x7253, 0xa1e5, 0x51, 0x13, 0xf1bd, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0xff, 0xff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x227dd525), "ld <ix,iy>,nnnn", }
DocLD16IX - ld <ix,iy>,nnnn (32 cycles)
var DocLD8BD = Case{ 0xd7, Status{ 0x0a, 0x00, 0x00, 0x00, 0xb3a8, 0x1d2a, 0x7f8e, 0x42ac, Msbt, Msbt, 0xc6, 0xb1, 0xef8e, }, Status{ 0x10, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, CRC32(0xb0818935), "ld a,<(bc),(de)>", }
DocLD8BD - ld a,<(bc),(de)> (44 cycles)
var DocLD8IM = Case{ 0xd7, Status{ 0x06, 0x00, 0x00, 0x00, 0xc407, 0xf49d, 0xd13d, 0x0339, 0xde89, 0x7455, 0x53, 0xc0, 0x5509, }, Status{ 0x38, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0xf1dab556), "ld <b,c,d,e,h,l,(hl),a>,nn", }
DocLD8IM - ld <b,c,d,e,h,l,(hl),a>,nn (64 cycles)
var DocLD8IMX = Case{ 0xd7, Status{ 0xdd, 0x36, 0x01, 0x00, 0x1b45, Msbt - 1, Msbt - 1, 0xd5c1, 0x61c7, 0xbdc4, 0xc0, 0x85, 0xcd16, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0xff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0x26db477e), "ld (<ix,iy>+1),nn", }
DocLD8IMX - ld (<ix,iy>+1),nn (32 cycles)
var DocLD8IX1 = Case{ 0xd7, Status{ 0xdd, 0x46, 0x01, 0x00, 0xd016, Msbt - 1, Msbt - 1, 0x4260, 0x7f39, 0x0404, 0x97, 0x4a, 0xd085, }, Status{ 0x20, 0x18, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xcc1106a8), "ld <b,c,d,e>,(<ix,iy>+1)", }
DocLD8IX1 - ld <b,c,d,e>,(<ix,iy>+1) (512 cycles)
var DocLD8IX2 = Case{ 0xd7, Status{ 0xdd, 0x66, 0x01, 0x00, 0x84e0, Msbt - 1, Msbt - 1, 0x9c52, 0xa799, 0x49b6, 0x93, 0x00, 0xeead, }, Status{ 0x20, 0x08, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xfa2a4d03), "ld <h,l>,(<ix,iy>+1)", }
DocLD8IX2 - ld <h,l>,(<ix,iy>+1) (256 cycles)
var DocLD8IX3 = Case{ 0xd7, Status{ 0xdd, 0x7e, 0x01, 0x00, 0xd8b6, Msbt - 1, Msbt - 1, 0xc612, 0xdf07, 0x9cd0, 0x43, 0xa6, 0xa0e5, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0xa5e9ac64), "ld a,(<ix,iy>+1)", }
DocLD8IX3 - ld a,(<ix,iy>+1) (128 cycles)
var DocLD8IXY = Case{ 0xd7, Status{ 0xdd, 0x26, 0x00, 0x00, 0x3c53, 0x4640, 0xe179, 0x7711, 0xc107, 0x1afa, 0x81, 0xad, 0x5d9b, }, Status{ 0x20, 0x08, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0x24e8828b), "ld <ixh,ixl,iyh,iyl>,nn", }
DocLD8IXY - ld <ixh,ixl,iyh,iyl>,nn (32 cycles)
var DocLD8RR = Case{ 0xd7, Status{ 0x40, 0x00, 0x00, 0x00, 0x72a4, 0xa024, 0x61ac, Msbt, 0x82c7, 0x718f, 0x97, 0x8f, 0xef8e, }, Status{ 0x3f, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0xff, 0x0000, }, CRC32(0x744b0118), "ld <bcdehla>,<bcdehla>", }
DocLD8RR - ld <b,c,d,e,h,l,a>,<b,c,d,e,h,l,a> (3456 cycles)
var DocLD8RRX = Case{ 0xd7, Status{ 0xdd, 0x40, 0x00, 0x00, 0xbcc5, Msbt, Msbt, Msbt, 0x2fc2, 0x98c0, 0x83, 0x1f, 0x3bcd, }, Status{ 0x20, 0x3f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0xff, 0x0000, }, CRC32(0x478ba36b), "ld <bcdexya>,<bcdexya>", }
DocLD8RRX - ld <b,c,d,e,ixy,a>,<b,c,d,e,ixy,a> (6912 cycles)
var DocLDA = Case{ 0xd7, Status{ 0x32, MsbtLo, MsbtHi, 0x00, 0xfd68, 0xf4ec, 0x44a0, 0xb543, 0x0653, 0xcdba, 0xd2, 0x4f, 0x1fd8, }, Status{ 0x08, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, CRC32(0xc9262de5), "ld a,(nnnn) / ld (nnnn),a", }
DocLDA - ld a,(nnnn) / ld (nnnn),a (44 cycles)
var DocLDD1 = Case{ 0xd7, Status{ 0xed, 0xa8, 0x00, 0x00, 0x9852, 0x68fa, 0x66a1, Msbt + 3, Msbt + 1, 0x0001, 0xc1, 0x68, 0x20b7, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x94f42769), "ldd<r> (1)", }
DocLDD1 - ldd<r> (1) (44 cycles)
var DocLDD2 = Case{ 0xd7, Status{ 0xed, 0xa8, 0x00, 0x00, 0xf12e, 0xeb2a, 0xd5ba, Msbt + 3, Msbt + 1, 0x0002, 0x47, 0xff, 0xfbe4, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x5a907ed4), "ldd<r> (2)", }
DocLDD2 - ldd<r> (2) (44 cycles)
var DocLDI1 = Case{ 0xd7, Status{ 0xed, 0xa0, 0x00, 0x00, 0xfe30, 0x03cd, 0x6058, Msbt + 2, Msbt, 0x0001, 0x04, 0x60, 0x2688, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x9abdf6b5), "ldi<r> (1)", }
DocLDI1 - ldi<r> (1) (44 cycles)
var DocLDI2 = Case{ 0xd7, Status{ 0xed, 0xa0, 0x00, 0x00, 0x4ace, 0xc26e, 0xb188, Msbt + 2, Msbt, 0x0002, 0x14, 0x2d, 0xa39f, }, Status{ 0x00, 0x10, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xeb59891b), "ldi<r> (2)", }
DocLDI2 - ldi<r> (2) (44 cycles)
var DocNEGOP = Case{ 0xd7, Status{ 0xed, 0x44, 0x00, 0x00, 0x38a2, 0x5f6b, 0xd934, 0x57e4, 0xd2d6, 0x4642, 0x43, 0x5a, 0x09cc, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x6a3c3bbd), "neg", }
DocNEGOP - neg (16,384 cycles)
var DocRLDOP = Case{ 0xd7, Status{ 0xed, 0x67, 0x00, 0x00, 0x91cb, 0xc48b, 0xfa62, Msbt, 0xe720, 0xb479, 0x40, 0x06, 0x8ae2, }, Status{ 0x00, 0x08, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0xff, 0x0000, }, CRC32(0x955ba326), "<rrd,rld>", }
DocRLDOP - <rld,rrd> (7168 cycles)
var DocROT8080 = Case{ 0xd7, Status{ 0x07, 0x00, 0x00, 0x00, 0xcb92, 0x6d43, 0x0a90, 0xc284, 0x0c53, 0xf50e, 0x91, 0xeb, 0x40fc, }, Status{ 0x18, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0x251330ae), "<rlca,rrca,rla,rra>", }
DocROT8080 - <rlca,rrca,rla,rra> (6144 cycles)
var DocROTXY = Case{ 0xd7, Status{ 0xdd, 0xcb, 0x01, 0x06, 0xddaf, Msbt - 1, Msbt - 1, 0xff3c, 0xdbf6, 0x94f4, 0x82, 0x80, 0x61d9, }, Status{ 0x20, 0x00, 0x00, 0x38, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x80, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x57, 0x00, 0x0000, }, CRC32(0x713acd81), "shf/rot (<ix,iy>+1)", }
DocROTXY - shift/rotate (<ix,iy>+1) (416 cycles)
var DocROTZ80 = Case{ 0xd7, Status{ 0xcb, 0x00, 0x00, 0x00, 0xcceb, 0x5d4a, 0xe007, Msbt, 0x1395, 0x30ee, 0x43, 0x78, 0x3dad, }, Status{ 0x00, 0x3f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x80, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x57, 0xff, 0x0000, }, CRC32(0xeb604d58), "shf/rot <b,c,d,e,h,l,(hl),a>", }
DocROTZ80 - shift/rotate <b,c,d,e,h,l,(hl),a> (6784 cycles)
var DocSRZ80 = Case{ 0xd7, Status{ 0xcb, 0x80, 0x00, 0x00, 0x2cd5, 0x97ab, 0x39ff, Msbt, 0xd14b, 0x6ab2, 0x53, 0x27, 0xb538, }, Status{ 0x00, 0x7f, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0xd7, 0xff, 0x0000, }, CRC32(0x8b57f008), "<set,res> n,<bcdehl(hl)a>", }
DocSRZ80 - <set,res> n,<b,c,d,e,h,l,(hl),a> (7936 cycles)
var DocSRZX = Case{ 0xd7, Status{ 0xdd, 0xcb, 0x01, 0x86, 0xfb44, Msbt - 1, Msbt - 1, 0xba09, 0x68be, 0x32d8, 0x10, 0x5e, 0xa867, }, Status{ 0x20, 0x00, 0x00, 0x78, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xd7, 0x00, 0x0000, }, CRC32(0xcc63f98a), "<set,res> n,(<ix,iy>+1)", }
DocSRZX - <set,res> n,(<ix,iy>+1) (1792 cycles)
var DocST8IX1 = Case{ 0xd7, Status{ 0xdd, 0x70, 0x01, 0x00, 0x270d, Msbt - 1, Msbt - 1, 0xb73a, 0x887b, 0x99ee, 0x86, 0x70, 0xca07, }, Status{ 0x20, 0x03, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0xffff, 0xffff, 0x00, 0x00, 0x0000, }, CRC32(0x04626abf), "ld (<ix,iy>+1),<b,c,d,e>", }
DocST8IX1 - ld (<ix,iy>+1),<b,c,d,e> (1024 cycles)
var DocST8IX2 = Case{ 0xd7, Status{ 0xdd, 0x74, 0x01, 0x00, 0xb664, Msbt - 1, Msbt - 1, 0xe8ac, 0xb5f5, 0xaafe, 0x12, 0x10, 0x9566, }, Status{ 0x20, 0x01, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0xffff, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, CRC32(0x6a1a8831), "ld (<ix,iy>+1),<h,l>", }
DocST8IX2 - ld (<ix,iy>+1),<h,l> (256 cycles)
var DocST8IX3 = Case{ 0xd7, Status{ 0xdd, 0x77, 0x01, 0x00, 0x67af, Msbt - 1, Msbt - 1, 0x4f13, 0x0644, 0xbcd7, 0x50, 0xac, 0x5faf, }, Status{ 0x20, 0x00, 0x00, 0x00, 0x0000, 0x0001, 0x0001, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0xccbe5a96), "ld (<ix,iy>+1),a", }
DocST8IX3 - ld (<ix,iy>+1),a (64 cycles)
var DocSTABD = Case{ 0xd7, Status{ 0x02, 0x00, 0x00, 0x00, 0x0c3b, 0xb592, 0x6cff, 0x959e, Msbt, Msbt + 1, 0xc1, 0x21, 0xbde7, }, Status{ 0x18, 0x00, 0x00, 0x00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0x00, 0x0000, }, Status{ 0x00, 0x00, 0x00, 0x00, 0xffff, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x00, 0xff, 0x0000, }, CRC32(0x7a4c114f), "ld (<bc,de>),a", }
DocSTABD - ld (<bc,de>),a (96 cycles)
Functions ¶
This section is empty.
Types ¶
type Case ¶
type Case struct { FlagMask uint8 BaseCase Status IncVec Status ShiftVec Status Expect CRC32 Desc string }
Case defines a test case.
type Iter ¶
type Iter struct {
// contains filtered or unexported fields
}
Iter is states iterator/generator.