Path: blob/a-new-beginning/Cherry/Core/include/opcodexx_names.h
2 views
/*1* Gearcoleco - ColecoVision Emulator2* Copyright (C) 2021 Ignacio Sanchez34* This program is free software: you can redistribute it and/or modify5* it under the terms of the GNU General Public License as published by6* the Free Software Foundation, either version 3 of the License, or7* any later version.89* This program is distributed in the hope that it will be useful,10* but WITHOUT ANY WARRANTY; without even the implied warranty of11* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the12* GNU General Public License for more details.1314* You should have received a copy of the GNU General Public License15* along with this program. If not, see http://www.gnu.org/licenses/16*17*/1819#ifndef OPCODEXX_NAMES_H20#define OPCODEXX_NAMES_H2122static stOPCodeInfo kOPCodeNames[256] = {23{ "NOP", 1, 0 },24{ "LD BC,$%04X", 3, 3 },25{ "LD (BC),A", 1, 0 },26{ "INC BC", 1, 0 },27{ "INC B", 1, 0 },28{ "DEC B", 1, 0 },29{ "LD B,$%02X", 2, 2 },30{ "RLCA", 1, 0 },31{ "EX AF,AF'", 1, 0 },32{ "ADD HL,BC", 1, 0 },33{ "LD A,(BC)", 1, 0 },34{ "DEC BC", 1, 0 },35{ "INC C", 1, 0 },36{ "DEC C", 1, 0 },37{ "LD C,$%02X", 2, 2 },38{ "RRCA", 1, 0 },3940{ "DJNZ $%04X [%+d]", 2, 5 },41{ "LD DE,$%04X", 3, 3 },42{ "LD (DE),A", 1, 0 },43{ "INC DE", 1, 0 },44{ "INC D", 1, 0 },45{ "DEC D", 1, 0 },46{ "LD D,$%02X", 2, 2 },47{ "RLA", 1, 0 },48{ "JR $%04X [%+d]", 2, 5 },49{ "ADD HL,DE", 1, 0 },50{ "LD A,(DE)", 1, 0 },51{ "DEC DE", 1, 0 },52{ "INC E", 1, 0 },53{ "DEC E", 1, 0 },54{ "LD E,$%02X", 2, 2 },55{ "RRA", 1, 0 },5657{ "JR NZ,$%04X [%+d]", 2, 5 },58{ "LD HL,$%04X", 3, 3 },59{ "LD ($%04X),HL", 3, 3 },60{ "INC HL", 1, 0 },61{ "INC H", 1, 0 },62{ "DEC H", 1, 0 },63{ "LD H,$%02X", 2, 2 },64{ "DAA", 1, 0 },65{ "JR Z,$%04X [%+d]", 2, 5 },66{ "ADD HL,HL", 1, 0 },67{ "LD HL,($%04X)", 3, 3 },68{ "DEC HL", 1, 0 },69{ "INC L", 1, 0 },70{ "DEC L", 1, 0 },71{ "LD L,$%02X", 2, 2 },72{ "CPL", 1, 0 },7374{ "JR NC,$%04X [%+d]", 2, 5 },75{ "LD SP,$%04X", 3, 3 },76{ "LD ($%04X),A", 3, 3 },77{ "INC SP", 1, 0 },78{ "INC (HL)", 1, 0 },79{ "DEC (HL)", 1, 0 },80{ "LD (HL),$%02X", 2, 2 },81{ "SCF", 1, 0 },82{ "JR C,$%04X [%+d]", 2, 5 },83{ "ADD HL,SP", 1, 0 },84{ "LD A,($%04X)", 3, 3 },85{ "DEC SP", 1, 0 },86{ "INC A", 1, 0 },87{ "DEC A", 1, 0 },88{ "LD A,$%02X", 2, 2 },89{ "CCF", 1, 0 },9091{ "LD B,B", 1, 0 },92{ "LD B,C", 1, 0 },93{ "LD B,D", 1, 0 },94{ "LD B,E", 1, 0 },95{ "LD B,H", 1, 0 },96{ "LD B,L", 1, 0 },97{ "LD B,(HL)", 1, 0 },98{ "LD B,A", 1, 0 },99{ "LD C,B", 1, 0 },100{ "LD C,C", 1, 0 },101{ "LD C,D", 1, 0 },102{ "LD C,E", 1, 0 },103{ "LD C,H", 1, 0 },104{ "LD C,L", 1, 0 },105{ "LD C,(HL)", 1, 0 },106{ "LD C,A", 1, 0 },107108{ "LD D,B", 1, 0 },109{ "LD D,C", 1, 0 },110{ "LD D,D", 1, 0 },111{ "LD D,E", 1, 0 },112{ "LD D,H", 1, 0 },113{ "LD D,L", 1, 0 },114{ "LD D,(HL)", 1, 0 },115{ "LD D,A", 1, 0 },116{ "LD E,B", 1, 0 },117{ "LD E,C", 1, 0 },118{ "LD E,D", 1, 0 },119{ "LD E,E", 1, 0 },120{ "LD E,H", 1, 0 },121{ "LD E,L", 1, 0 },122{ "LD E,(HL)", 1, 0 },123{ "LD E,A", 1, 0 },124125{ "LD H,B", 1, 0 },126{ "LD H,C", 1, 0 },127{ "LD H,D", 1, 0 },128{ "LD H,E", 1, 0 },129{ "LD H,H", 1, 0 },130{ "LD H,L", 1, 0 },131{ "LD H,(HL)", 1, 0 },132{ "LD H,A", 1, 0 },133{ "LD L,B", 1, 0 },134{ "LD L,C", 1, 0 },135{ "LD L,D", 1, 0 },136{ "LD L,E", 1, 0 },137{ "LD L,H", 1, 0 },138{ "LD L,L", 1, 0 },139{ "LD L,(HL)", 1, 0 },140{ "LD L,A", 1, 0 },141142{ "LD (HL),B", 1, 0 },143{ "LD (HL),C", 1, 0 },144{ "LD (HL),D", 1, 0 },145{ "LD (HL),E", 1, 0 },146{ "LD (HL),H", 1, 0 },147{ "LD (HL),L", 1, 0 },148{ "HALT", 1, 0 },149{ "LD (HL),A", 1, 0 },150{ "LD A,B", 1, 0 },151{ "LD A,C", 1, 0 },152{ "LD A,D", 1, 0 },153{ "LD A,E", 1, 0 },154{ "LD A,H", 1, 0 },155{ "LD A,L", 1, 0 },156{ "LD A,(HL)", 1, 0 },157{ "LD A,A", 1, 0 },158159{ "ADD A,B", 1, 0 },160{ "ADD A,C", 1, 0 },161{ "ADD A,D", 1, 0 },162{ "ADD A,E", 1, 0 },163{ "ADD A,H", 1, 0 },164{ "ADD A,L", 1, 0 },165{ "ADD A,(HL)", 1, 0 },166{ "ADD A,A", 1, 0 },167{ "ADC A,B", 1, 0 },168{ "ADC A,C", 1, 0 },169{ "ADC A,D", 1, 0 },170{ "ADC A,E", 1, 0 },171{ "ADC A,H", 1, 0 },172{ "ADC A,L", 1, 0 },173{ "ADC A,(HL)", 1, 0 },174{ "ADC A,A", 1, 0 },175176{ "SUB B", 1, 0 },177{ "SUB C", 1, 0 },178{ "SUB D", 1, 0 },179{ "SUB E", 1, 0 },180{ "SUB H", 1, 0 },181{ "SUB L", 1, 0 },182{ "SUB (HL)", 1, 0 },183{ "SUB A", 1, 0 },184{ "SBC A,B", 1, 0 },185{ "SBC A,C", 1, 0 },186{ "SBC A,D", 1, 0 },187{ "SBC A,E", 1, 0 },188{ "SBC A,H", 1, 0 },189{ "SBC A,L", 1, 0 },190{ "SBC A,(HL)", 1, 0 },191{ "SBC A,A", 1, 0 },192193{ "AND B", 1, 0 },194{ "AND C", 1, 0 },195{ "AND D", 1, 0 },196{ "AND E", 1, 0 },197{ "AND H", 1, 0 },198{ "AND L", 1, 0 },199{ "AND (HL)", 1, 0 },200{ "AND A", 1, 0 },201{ "XOR B", 1, 0 },202{ "XOR C", 1, 0 },203{ "XOR D", 1, 0 },204{ "XOR E", 1, 0 },205{ "XOR H", 1, 0 },206{ "XOR L", 1, 0 },207{ "XOR (HL)", 1, 0 },208{ "XOR A", 1, 0 },209210{ "OR B", 1, 0 },211{ "OR C", 1, 0 },212{ "OR D", 1, 0 },213{ "OR E", 1, 0 },214{ "OR H", 1, 0 },215{ "OR L", 1, 0 },216{ "OR (HL)", 1, 0 },217{ "OR A", 1, 0 },218{ "CP B", 1, 0 },219{ "CP C", 1, 0 },220{ "CP D", 1, 0 },221{ "CP E", 1, 0 },222{ "CP H", 1, 0 },223{ "CP L", 1, 0 },224{ "CP (HL)", 1, 0 },225{ "CP A", 1, 0 },226227{ "RET NZ", 1, 0 },228{ "POP BC", 1, 0 },229{ "JP NZ,$%04X", 3, 3 },230{ "JP $%04X", 3, 3 },231{ "CALL NZ,$%04X", 3, 3 },232{ "PUSH BC", 1, 0 },233{ "ADD A,$%02X", 2, 2 },234{ "RST ", 1, 0 },235{ "RET Z", 1, 0 },236{ "RET", 1, 0 },237{ "JP Z,$%04X", 3, 3 },238{ "CB PREFIX", 1, 0 },239{ "CALL Z,$%04X", 3, 3 },240{ "CALL $%04X", 3, 3 },241{ "ADC A,$%02X", 2, 2 },242{ "RST 08H", 1, 0 },243244{ "RET NC", 1, 0 },245{ "POP DE", 1, 0 },246{ "JP NC,$%04X", 3, 3 },247{ "OUT ($%02X),A", 2, 2 },248{ "CALL NC,$%04X", 3, 3 },249{ "PUSH DE", 1, 0 },250{ "SUB $%02X", 2, 2 },251{ "RST 10H", 1, 0 },252{ "RET C", 1, 0 },253{ "EXX", 1, 0 },254{ "JP C,$%04X", 3, 3 },255{ "IN A,($%02X)", 2, 2 },256{ "CALL C,$%04X", 3, 3 },257{ "DD PREFIX", 1, 0 },258{ "SBC A,$%02X", 2, 2 },259{ "RST 18H", 1, 0 },260261{ "RET PO", 1, 0 },262{ "POP HL", 1, 0 },263{ "JP PO,$%04X", 3, 3 },264{ "EX (SP),HL", 1, 0 },265{ "CALL PO,$%04X", 3, 3 },266{ "PUSH HL", 1, 0 },267{ "AND $%02X", 2, 2 },268{ "RST 20H", 1, 0 },269{ "RET PE", 1, 0 },270{ "JP (HL)", 1, 0 },271{ "JP PE,$%04X", 3, 3 },272{ "EX DE,HL", 1, 0 },273{ "CALL PE,$%04X", 3, 3 },274{ "ED PREFIX", 1, 0 },275{ "XOR $%02X", 2, 2 },276{ "RST 28H", 1, 0 },277278{ "RET P", 1, 0 },279{ "POP AF", 1, 0 },280{ "JP P,$%04X", 3, 3 },281{ "DI", 1, 0 },282{ "CALL P,$%04X", 3, 3 },283{ "PUSH AF", 1, 0 },284{ "OR $%02X", 2, 2 },285{ "RST 30H", 1, 0 },286{ "RET M", 1, 0 },287{ "LD SP,HL", 1, 0 },288{ "JP M,$%04X", 3, 3 },289{ "EI", 1, 0 },290{ "CALL M,$%04X", 3, 3 },291{ "FD PREFIX", 1, 0 },292{ "CP $%02X", 2, 2 },293{ "RST 38H", 1, 0 }294};295296#endif /* OPCODEXX_NAMES_H */297298299300