opcode_names.h (16331B)
1/* 2 * Gearboy - Nintendo Game Boy Emulator 3 * Copyright (C) 2012 Ignacio Sanchez 4 5 * This program is free software: you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation, either version 3 of the License, or 8 * any later version. 9 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see http://www.gnu.org/licenses/ 17 * 18 */ 19 20#ifndef OPCODE_NAMES_H 21#define OPCODE_NAMES_H 22 23struct stOPCodeInfo 24{ 25 const char* name; 26 int size; 27 int type; 28}; 29 30static const stOPCodeInfo kOPCodeNames[256] = { 31 { "NOP", 1, 0 }, 32 { "LD BC,$%04X", 3, 2 }, 33 { "LD (BC),A", 1, 0 }, 34 { "INC BC", 1, 0 }, 35 { "INC B", 1, 0 }, 36 { "DEC B", 1, 0 }, 37 { "LD B,$%02X", 2, 1 }, 38 { "RLCA", 1, 0 }, 39 { "LD ($%04X),SP", 3, 2 }, 40 { "ADD HL,BC", 1, 0 }, 41 { "LD A,(BC)", 1, 0 }, 42 { "DEC BC", 1, 0 }, 43 { "INC C", 1, 0 }, 44 { "DEC C", 1, 0 }, 45 { "LD C,$%02X", 2, 1 }, 46 { "RRCA", 1, 0 }, 47 48 { "STOP", 2, 0 }, 49 { "LD DE,$%04X", 3, 2 }, 50 { "LD (DE),A", 1, 0 }, 51 { "INC DE", 1, 0 }, 52 { "INC D", 1, 0 }, 53 { "DEC D", 1, 0 }, 54 { "LD D,$%02X", 2, 1 }, 55 { "RLA", 1, 0 }, 56 { "JR $%04X [%+d]", 2, 4 }, 57 { "ADD HL,DE", 1, 0 }, 58 { "LD A,(DE)", 1, 0 }, 59 { "DEC DE", 1, 0 }, 60 { "INC E", 1, 0 }, 61 { "DEC E", 1, 0 }, 62 { "LD E,$%02X", 2, 1 }, 63 { "RRA", 1, 0 }, 64 65 { "JR NZ,$%04X [%+d]", 2, 4 }, 66 { "LD HL,$%04X", 3, 2 }, 67 { "LD (HL+),A", 1, 0 }, 68 { "INC HL", 1, 0 }, 69 { "INC H", 1, 0 }, 70 { "DEC H", 1, 0 }, 71 { "LD H,$%02X", 2, 1 }, 72 { "DAA", 1, 0 }, 73 { "JR Z,$%04X [%+d]", 2, 4 }, 74 { "ADD HL,HL", 1, 0 }, 75 { "LD A,(HL+)", 1, 0 }, 76 { "DEC HL", 1, 0 }, 77 { "INC L", 1, 0 }, 78 { "DEC L", 1, 0 }, 79 { "LD L,$%02X", 2, 1 }, 80 { "CPL", 1, 0 }, 81 82 { "JR NC,$%04X [%+d]", 2, 4 }, 83 { "LD SP,$%04X", 3, 2 }, 84 { "LD (HL-),A", 1, 0 }, 85 { "INC SP", 1, 0 }, 86 { "INC (HL)", 1, 0 }, 87 { "DEC (HL)", 1, 0 }, 88 { "LD (HL),$%02X", 2, 1 }, 89 { "SCF", 1, 0 }, 90 { "JR C,$%04X [%+d]", 2, 4 }, 91 { "ADD HL,SP", 1, 0 }, 92 { "LD A,(HL-)", 1, 0 }, 93 { "DEC SP", 1, 0 }, 94 { "INC A", 1, 0 }, 95 { "DEC A", 1, 0 }, 96 { "LD A,$%02X", 2, 1 }, 97 { "CCF", 1, 0 }, 98 99 { "LD B,B", 1, 0 }, 100 { "LD B,C", 1, 0 }, 101 { "LD B,D", 1, 0 }, 102 { "LD B,E", 1, 0 }, 103 { "LD B,H", 1, 0 }, 104 { "LD B,L", 1, 0 }, 105 { "LD B,(HL)", 1, 0 }, 106 { "LD B,A", 1, 0 }, 107 { "LD C,B", 1, 0 }, 108 { "LD C,C", 1, 0 }, 109 { "LD C,D", 1, 0 }, 110 { "LD C,E", 1, 0 }, 111 { "LD C,H", 1, 0 }, 112 { "LD C,L", 1, 0 }, 113 { "LD C,(HL)", 1, 0 }, 114 { "LD C,A", 1, 0 }, 115 116 { "LD D,B", 1, 0 }, 117 { "LD D,C", 1, 0 }, 118 { "LD D,D", 1, 0 }, 119 { "LD D,E", 1, 0 }, 120 { "LD D,H", 1, 0 }, 121 { "LD D,L", 1, 0 }, 122 { "LD D,(HL)", 1, 0 }, 123 { "LD D,A", 1, 0 }, 124 { "LD E,B", 1, 0 }, 125 { "LD E,C", 1, 0 }, 126 { "LD E,D", 1, 0 }, 127 { "LD E,E", 1, 0 }, 128 { "LD E,H", 1, 0 }, 129 { "LD E,L", 1, 0 }, 130 { "LD E,(HL)", 1, 0 }, 131 { "LD E,A", 1, 0 }, 132 133 { "LD H,B", 1, 0 }, 134 { "LD H,C", 1, 0 }, 135 { "LD H,D", 1, 0 }, 136 { "LD H,E", 1, 0 }, 137 { "LD H,H", 1, 0 }, 138 { "LD H,L", 1, 0 }, 139 { "LD H,(HL)", 1, 0 }, 140 { "LD H,A", 1, 0 }, 141 { "LD L,B", 1, 0 }, 142 { "LD L,C", 1, 0 }, 143 { "LD L,D", 1, 0 }, 144 { "LD L,E", 1, 0 }, 145 { "LD L,H", 1, 0 }, 146 { "LD L,L", 1, 0 }, 147 { "LD L,(HL)", 1, 0 }, 148 { "LD L,A", 1, 0 }, 149 150 { "LD (HL),B", 1, 0 }, 151 { "LD (HL),C", 1, 0 }, 152 { "LD (HL),D", 1, 0 }, 153 { "LD (HL),E", 1, 0 }, 154 { "LD (HL),H", 1, 0 }, 155 { "LD (HL),L", 1, 0 }, 156 { "HALT", 1, 0 }, 157 { "LD (HL),A", 1, 0 }, 158 { "LD A,B", 1, 0 }, 159 { "LD A,C", 1, 0 }, 160 { "LD A,D", 1, 0 }, 161 { "LD A,E", 1, 0 }, 162 { "LD A,H", 1, 0 }, 163 { "LD A,L", 1, 0 }, 164 { "LD A,(HL)", 1, 0 }, 165 { "LD A,A", 1, 0 }, 166 167 { "ADD A,B", 1, 0 }, 168 { "ADD A,C", 1, 0 }, 169 { "ADD A,D", 1, 0 }, 170 { "ADD A,E", 1, 0 }, 171 { "ADD A,H", 1, 0 }, 172 { "ADD A,L", 1, 0 }, 173 { "ADD A,(HL)", 1, 0 }, 174 { "ADD A,A", 1, 0 }, 175 { "ADC A,B", 1, 0 }, 176 { "ADC A,C", 1, 0 }, 177 { "ADC A,D", 1, 0 }, 178 { "ADC A,E", 1, 0 }, 179 { "ADC A,H", 1, 0 }, 180 { "ADC A,L", 1, 0 }, 181 { "ADC A,(HL)", 1, 0 }, 182 { "ADC A,A", 1, 0 }, 183 184 { "SUB B", 1, 0 }, 185 { "SUB C", 1, 0 }, 186 { "SUB D", 1, 0 }, 187 { "SUB E", 1, 0 }, 188 { "SUB H", 1, 0 }, 189 { "SUB L", 1, 0 }, 190 { "SUB (HL)", 1, 0 }, 191 { "SUB A", 1, 0 }, 192 { "SBC A,B", 1, 0 }, 193 { "SBC A,C", 1, 0 }, 194 { "SBC A,D", 1, 0 }, 195 { "SBC A,E", 1, 0 }, 196 { "SBC A,H", 1, 0 }, 197 { "SBC A,L", 1, 0 }, 198 { "SBC A,(HL)", 1, 0 }, 199 { "SBC A,A", 1, 0 }, 200 201 { "AND B", 1, 0 }, 202 { "AND C", 1, 0 }, 203 { "AND D", 1, 0 }, 204 { "AND E", 1, 0 }, 205 { "AND H", 1, 0 }, 206 { "AND L", 1, 0 }, 207 { "AND (HL)", 1, 0 }, 208 { "AND A", 1, 0 }, 209 { "XOR B", 1, 0 }, 210 { "XOR C", 1, 0 }, 211 { "XOR D", 1, 0 }, 212 { "XOR E", 1, 0 }, 213 { "XOR H", 1, 0 }, 214 { "XOR L", 1, 0 }, 215 { "XOR (HL)", 1, 0 }, 216 { "XOR A", 1, 0 }, 217 218 { "OR B", 1, 0 }, 219 { "OR C", 1, 0 }, 220 { "OR D", 1, 0 }, 221 { "OR E", 1, 0 }, 222 { "OR H", 1, 0 }, 223 { "OR L", 1, 0 }, 224 { "OR (HL)", 1, 0 }, 225 { "OR A", 1, 0 }, 226 { "CP B", 1, 0 }, 227 { "CP C", 1, 0 }, 228 { "CP D", 1, 0 }, 229 { "CP E", 1, 0 }, 230 { "CP H", 1, 0 }, 231 { "CP L", 1, 0 }, 232 { "CP (HL)", 1, 0 }, 233 { "CP A", 1, 0 }, 234 235 { "RET NZ", 1, 0 }, 236 { "POP BC", 1, 0 }, 237 { "JP NZ,$%04X", 3, 2 }, 238 { "JP $%04X", 3, 2 }, 239 { "CALL NZ,$%04X", 3, 2 }, 240 { "PUSH BC", 1, 0 }, 241 { "ADD A,$%02X", 2, 1 }, 242 { "RST ", 1, 0 }, 243 { "RET Z", 1, 0 }, 244 { "RET", 1, 0 }, 245 { "JP Z,$%04X", 3, 2 }, 246 { "cb opcode", 1, 0 }, 247 { "CALL Z,$%04X", 3, 2 }, 248 { "CALL $%04X", 3, 2 }, 249 { "ADC A,$%02X", 2, 1 }, 250 { "RST $08", 1, 0 }, 251 252 { "RET NC", 1, 0 }, 253 { "POP DE", 1, 0 }, 254 { "JP NC,$%04X", 3, 2 }, 255 { "[UNUSED]", 1, 0 }, 256 { "CALL NC,$%04X", 3, 2 }, 257 { "PUSH DE", 1, 0 }, 258 { "SUB $%02X", 2, 1 }, 259 { "RST $10", 1, 0 }, 260 { "RET C", 1, 0 }, 261 { "RETI", 1, 0 }, 262 { "JP C,$%04X", 3, 2 }, 263 { "[UNUSED]", 1, 0 }, 264 { "CALL C,$%04X", 3, 2 }, 265 { "[UNUSED]", 1, 0 }, 266 { "SBC A,$%02X", 2, 1 }, 267 { "RST $18", 1, 0 }, 268 269 { "LD ($FF00+$%02X),A [%s]", 2, 5 }, 270 { "POP HL", 1, 0 }, 271 { "LD ($FF00+C),A", 1, 0 }, 272 { "[UNUSED]", 1, 0 }, 273 { "[UNUSED]", 1, 0 }, 274 { "PUSH HL", 1, 0 }, 275 { "AND $%02X", 2, 1 }, 276 { "RST $20", 1, 0 }, 277 { "ADD SP,%+d", 2, 3 }, 278 { "JP (HL)", 1, 0 }, 279 { "LD ($%04X),A", 3, 2 }, 280 { "[UNUSED]", 1, 0 }, 281 { "[UNUSED]", 1, 0 }, 282 { "[UNUSED]", 1, 0 }, 283 { "XOR $%02X", 2, 1 }, 284 { "RST $28", 1, 0 }, 285 286 { "LD A,($FF00+$%02X) [%s]", 2, 5 }, 287 { "POP AF", 1, 0 }, 288 { "LD A,($FF00+C)", 1, 0 }, 289 { "DI", 1, 0 }, 290 { "[UNUSED]", 1, 0 }, 291 { "PUSH AF", 1, 0 }, 292 { "OR $%02X", 2, 1 }, 293 { "RST $30", 1, 0 }, 294 { "LD HL,(SP%+d)", 2, 3 }, 295 { "LD SP,HL", 1, 0 }, 296 { "LD A,($%04X)", 3, 2 }, 297 { "EI", 1, 0 }, 298 { "[UNUSED]", 1, 0 }, 299 { "[UNUSED]", 1, 0 }, 300 { "CP $%02X", 2, 1 }, 301 { "RST $38", 1, 0 } 302}; 303 304static const stOPCodeInfo kOPCodeCBNames[256] = { 305 { "RLC B", 2, 0 }, 306 { "RLC C", 2, 0 }, 307 { "RLC D", 2, 0 }, 308 { "RLC E", 2, 0 }, 309 { "RLC H", 2, 0 }, 310 { "RLC L", 2, 0 }, 311 { "RLC (HL)", 2, 0 }, 312 { "RLC A", 2, 0 }, 313 { "RRC B", 2, 0 }, 314 { "RRC C", 2, 0 }, 315 { "RRC D", 2, 0 }, 316 { "RRC E", 2, 0 }, 317 { "RRC H", 2, 0 }, 318 { "RRC L", 2, 0 }, 319 { "RRC (HL)", 2, 0 }, 320 { "RRC A", 2, 0 }, 321 322 { "RL B", 2, 0 }, 323 { "RL C", 2, 0 }, 324 { "RL D", 2, 0 }, 325 { "RL E", 2, 0 }, 326 { "RL H", 2, 0 }, 327 { "RL L ", 2, 0 }, 328 { "RL (HL)", 2, 0 }, 329 { "RL A", 2, 0 }, 330 { "RR B", 2, 0 }, 331 { "RR C", 2, 0 }, 332 { "RR D", 2, 0 }, 333 { "RR E", 2, 0 }, 334 { "RR H", 2, 0 }, 335 { "RR L", 2, 0 }, 336 { "RR (HL)", 2, 0 }, 337 { "RR A", 2, 0 }, 338 339 { "SLA B", 2, 0 }, 340 { "SLA C", 2, 0 }, 341 { "SLA D", 2, 0 }, 342 { "SLA E", 2, 0 }, 343 { "SLA H", 2, 0 }, 344 { "SLA L", 2, 0 }, 345 { "SLA (HL)", 2, 0 }, 346 { "SLA A", 2, 0 }, 347 { "SRA B", 2, 0 }, 348 { "SRA C", 2, 0 }, 349 { "SRA D", 2, 0 }, 350 { "SRA E", 2, 0 }, 351 { "SRA H", 2, 0 }, 352 { "SRA L", 2, 0 }, 353 { "SRA (HL)", 2, 0 }, 354 { "SRA A", 2, 0 }, 355 356 { "SWAP B", 2, 0 }, 357 { "SWAP C", 2, 0 }, 358 { "SWAP D", 2, 0 }, 359 { "SWAP E", 2, 0 }, 360 { "SWAP H", 2, 0 }, 361 { "SWAP L", 2, 0 }, 362 { "SWAP (HL)", 2, 0 }, 363 { "SWAP A", 2, 0 }, 364 { "SRL B", 2, 0 }, 365 { "SRL C", 2, 0 }, 366 { "SRL D", 2, 0 }, 367 { "SRL E", 2, 0 }, 368 { "SRL H", 2, 0 }, 369 { "SRL L", 2, 0 }, 370 { "SRL (HL)", 2, 0 }, 371 { "SRL A", 2, 0 }, 372 373 { "BIT 0 B", 2, 0 }, 374 { "BIT 0 C", 2, 0 }, 375 { "BIT 0 D", 2, 0 }, 376 { "BIT 0 E", 2, 0 }, 377 { "BIT 0 H", 2, 0 }, 378 { "BIT 0 L", 2, 0 }, 379 { "BIT 0 (HL)", 2, 0 }, 380 { "BIT 0 A", 2, 0 }, 381 { "BIT 1 B", 2, 0 }, 382 { "BIT 1 C", 2, 0 }, 383 { "BIT 1 D", 2, 0 }, 384 { "BIT 1 E", 2, 0 }, 385 { "BIT 1 H", 2, 0 }, 386 { "BIT 1 L", 2, 0 }, 387 { "BIT 1 (HL)", 2, 0 }, 388 { "BIT 1 A", 2, 0 }, 389 390 { "BIT 2 B", 2, 0 }, 391 { "BIT 2 C", 2, 0 }, 392 { "BIT 2 D", 2, 0 }, 393 { "BIT 2 E", 2, 0 }, 394 { "BIT 2 H", 2, 0 }, 395 { "BIT 2 L", 2, 0 }, 396 { "BIT 2 (HL)", 2, 0 }, 397 { "BIT 2 A", 2, 0 }, 398 { "BIT 3 B", 2, 0 }, 399 { "BIT 3 C", 2, 0 }, 400 { "BIT 3 D", 2, 0 }, 401 { "BIT 3 E", 2, 0 }, 402 { "BIT 3 H", 2, 0 }, 403 { "BIT 3 L", 2, 0 }, 404 { "BIT 3 (HL)", 2, 0 }, 405 { "BIT 3 A", 2, 0 }, 406 407 { "BIT 4 B", 2, 0 }, 408 { "BIT 4 C", 2, 0 }, 409 { "BIT 4 D", 2, 0 }, 410 { "BIT 4 E", 2, 0 }, 411 { "BIT 4 H", 2, 0 }, 412 { "BIT 4 L", 2, 0 }, 413 { "BIT 4 (HL)", 2, 0 }, 414 { "BIT 4 A", 2, 0 }, 415 { "BIT 5 B", 2, 0 }, 416 { "BIT 5 C", 2, 0 }, 417 { "BIT 5 D", 2, 0 }, 418 { "BIT 5 E", 2, 0 }, 419 { "BIT 5 H", 2, 0 }, 420 { "BIT 5 L", 2, 0 }, 421 { "BIT 5 (HL)", 2, 0 }, 422 { "BIT 5 A", 2, 0 }, 423 424 { "BIT 6 B", 2, 0 }, 425 { "BIT 6 C", 2, 0 }, 426 { "BIT 6 D", 2, 0 }, 427 { "BIT 6 E", 2, 0 }, 428 { "BIT 6 H", 2, 0 }, 429 { "BIT 6 L", 2, 0 }, 430 { "BIT 6 (HL)", 2, 0 }, 431 { "BIT 6 A", 2, 0 }, 432 { "BIT 7 B", 2, 0 }, 433 { "BIT 7 C", 2, 0 }, 434 { "BIT 7 D", 2, 0 }, 435 { "BIT 7 E", 2, 0 }, 436 { "BIT 7 H", 2, 0 }, 437 { "BIT 7 L", 2, 0 }, 438 { "BIT 7 (HL)", 2, 0 }, 439 { "BIT 7 A", 2, 0 }, 440 441 { "RES 0 B", 2, 0 }, 442 { "RES 0 C", 2, 0 }, 443 { "RES 0 D", 2, 0 }, 444 { "RES 0 E", 2, 0 }, 445 { "RES 0 H", 2, 0 }, 446 { "RES 0 L", 2, 0 }, 447 { "RES 0 (HL)", 2, 0 }, 448 { "RES 0 A", 2, 0 }, 449 { "RES 1 B", 2, 0 }, 450 { "RES 1 C", 2, 0 }, 451 { "RES 1 D", 2, 0 }, 452 { "RES 1 E", 2, 0 }, 453 { "RES 1 H", 2, 0 }, 454 { "RES 1 L", 2, 0 }, 455 { "RES 1 (HL)", 2, 0 }, 456 { "RES 1 A", 2, 0 }, 457 458 { "RES 2 B", 2, 0 }, 459 { "RES 2 C", 2, 0 }, 460 { "RES 2 D", 2, 0 }, 461 { "RES 2 E", 2, 0 }, 462 { "RES 2 H", 2, 0 }, 463 { "RES 2 L", 2, 0 }, 464 { "RES 2 (HL)", 2, 0 }, 465 { "RES 2 A", 2, 0 }, 466 { "RES 3 B", 2, 0 }, 467 { "RES 3 C", 2, 0 }, 468 { "RES 3 D", 2, 0 }, 469 { "RES 3 E", 2, 0 }, 470 { "RES 3 H", 2, 0 }, 471 { "RES 3 L", 2, 0 }, 472 { "RES 3 (HL)", 2, 0 }, 473 { "RES 3 A", 2, 0 }, 474 475 { "RES 4 B", 2, 0 }, 476 { "RES 4 C", 2, 0 }, 477 { "RES 4 D", 2, 0 }, 478 { "RES 4 E", 2, 0 }, 479 { "RES 4 H", 2, 0 }, 480 { "RES 4 L", 2, 0 }, 481 { "RES 4 (HL)", 2, 0 }, 482 { "RES 4 A", 2, 0 }, 483 { "RES 5 B", 2, 0 }, 484 { "RES 5 C", 2, 0 }, 485 { "RES 5 D", 2, 0 }, 486 { "RES 5 E", 2, 0 }, 487 { "RES 5 H", 2, 0 }, 488 { "RES 5 L", 2, 0 }, 489 { "RES 5 (HL)", 2, 0 }, 490 { "RES 5 A", 2, 0 }, 491 492 { "RES 6 B", 2, 0 }, 493 { "RES 6 C", 2, 0 }, 494 { "RES 6 D", 2, 0 }, 495 { "RES 6 E", 2, 0 }, 496 { "RES 6 H", 2, 0 }, 497 { "RES 6 L", 2, 0 }, 498 { "RES 6 (HL)", 2, 0 }, 499 { "RES 6 A", 2, 0 }, 500 { "RES 7 B", 2, 0 }, 501 { "RES 7 C", 2, 0 }, 502 { "RES 7 D", 2, 0 }, 503 { "RES 7 E", 2, 0 }, 504 { "RES 7 H", 2, 0 }, 505 { "RES 7 L", 2, 0 }, 506 { "RES 7 (HL)", 2, 0 }, 507 { "RES 7 A", 2, 0 }, 508 509 { "SET 0 B", 2, 0 }, 510 { "SET 0 C", 2, 0 }, 511 { "SET 0 D", 2, 0 }, 512 { "SET 0 E", 2, 0 }, 513 { "SET 0 H", 2, 0 }, 514 { "SET 0 L", 2, 0 }, 515 { "SET 0 (HL)", 2, 0 }, 516 { "SET 0 A", 2, 0 }, 517 { "SET 1 B", 2, 0 }, 518 { "SET 1 C", 2, 0 }, 519 { "SET 1 D", 2, 0 }, 520 { "SET 1 E", 2, 0 }, 521 { "SET 1 H", 2, 0 }, 522 { "SET 1 L", 2, 0 }, 523 { "SET 1 (HL)", 2, 0 }, 524 { "SET 1 A", 2, 0 }, 525 526 { "SET 2 B", 2, 0 }, 527 { "SET 2 C", 2, 0 }, 528 { "SET 2 D", 2, 0 }, 529 { "SET 2 E", 2, 0 }, 530 { "SET 2 H", 2, 0 }, 531 { "SET 2 L", 2, 0 }, 532 { "SET 2 (HL)", 2, 0 }, 533 { "SET 2 A", 2, 0 }, 534 { "SET 3 B", 2, 0 }, 535 { "SET 3 C", 2, 0 }, 536 { "SET 3 D", 2, 0 }, 537 { "SET 3 E", 2, 0 }, 538 { "SET 3 H", 2, 0 }, 539 { "SET 3 L", 2, 0 }, 540 { "SET 3 (HL)", 2, 0 }, 541 { "SET 3 A", 2, 0 }, 542 543 { "SET 4 B", 2, 0 }, 544 { "SET 4 C", 2, 0 }, 545 { "SET 4 D", 2, 0 }, 546 { "SET 4 E", 2, 0 }, 547 { "SET 4 H", 2, 0 }, 548 { "SET 4 L", 2, 0 }, 549 { "SET 4 (HL)", 2, 0 }, 550 { "SET 4 A", 2, 0 }, 551 { "SET 5 B", 2, 0 }, 552 { "SET 5 C", 2, 0 }, 553 { "SET 5 D", 2, 0 }, 554 { "SET 5 E", 2, 0 }, 555 { "SET 5 H", 2, 0 }, 556 { "SET 5 L", 2, 0 }, 557 { "SET 5 (HL)", 2, 0 }, 558 { "SET 5 A", 2, 0 }, 559 560 { "SET 6 B", 2, 0 }, 561 { "SET 6 C", 2, 0 }, 562 { "SET 6 D", 2, 0 }, 563 { "SET 6 E", 2, 0 }, 564 { "SET 6 H", 2, 0 }, 565 { "SET 6 L", 2, 0 }, 566 { "SET 6 (HL)", 2, 0 }, 567 { "SET 6 A", 2, 0 }, 568 { "SET 7 B", 2, 0 }, 569 { "SET 7 C", 2, 0 }, 570 { "SET 7 D", 2, 0 }, 571 { "SET 7 E", 2, 0 }, 572 { "SET 7 H", 2, 0 }, 573 { "SET 7 L", 2, 0 }, 574 { "SET 7 (HL)", 2, 0 }, 575 { "SET 7 A", 2, 0 } 576}; 577 578static const char* kRegisterNames[256] = { 579 "P1", "SB", "SC", "UNKNOWN", "DIV", "TIMA", "TMA", "TAC", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "IF", 580 "NR10", "NR11", "NR12", "NR13", "NR14", "UNKNOWN", "NR21", "NR22", "NR23", "NR24", "NR30", "NR31", "NR32", "NR33", "NR34", "UNKNOWN", 581 "NR41", "NR42", "NR43", "NR44", "NR50", "NR51", "NR52", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", 582 "WAVE 0", "WAVE 1", "WAVE 2", "WAVE 3", "WAVE 4", "WAVE 5", "WAVE 6", "WAVE 7", "WAVE 8", "WAVE 9", "WAVE A", "WAVE B", "WAVE C", "WAVE D", "WAVE E", "WAVE F", 583 "LCDC", "STAT", "SCY", "SCX", "LY", "LYC", "DMA", "BGP", "OBP0", "OBP1", "WY", "WX", "UNKNOWN", "KEY1", "UNKNOWN", "VBK", 584 "BOOT", "HDMA SOURCE HI", "HDMA SOURCE LOW", "HDMA DEST HI", "HDMA DEST LOW", "HDMA LEN", "RP", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", 585 "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "BCPS", "BCPD", "OCPS", "OCPD", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", 586 "SVBK", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "PCM12", "PCM34", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN", 587 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", 588 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", 589 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", 590 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", 591 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", 592 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", 593 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", 594 "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "HIRAM", "IE" 595}; 596 597#endif /* OPCODE_NAMES_H */ 598