1 /***************************************************************************** 2 * 3 * Portable uPD7810/11, 7810H/11H, 78C10/C11/C14 emulator V0.2 4 * Copyright (c) 2001 Juergen Buchmueller, all rights reserved. 5 * 6 * 7810tbl.c - function pointer tables 7 * 8 *****************************************************************************/ 9 10 static void illegal(void); 11 static void illegal2(void); 12 13 static void ACI_ANM_xx(void); 14 static void ACI_A_xx(void); 15 static void ACI_B_xx(void); 16 static void ACI_C_xx(void); 17 static void ACI_D_xx(void); 18 static void ACI_EOM_xx(void); 19 static void ACI_E_xx(void); 20 static void ACI_H_xx(void); 21 static void ACI_L_xx(void); 22 static void ACI_MKH_xx(void); 23 static void ACI_MKL_xx(void); 24 static void ACI_PA_xx(void); 25 static void ACI_PB_xx(void); 26 static void ACI_PC_xx(void); 27 static void ACI_PD_xx(void); 28 static void ACI_PF_xx(void); 29 static void ACI_SMH_xx(void); 30 static void ACI_TMM_xx(void); 31 static void ACI_V_xx(void); 32 static void ADCW_wa(void); 33 static void ADCX_B(void); 34 static void ADCX_D(void); 35 static void ADCX_Dm(void); 36 static void ADCX_Dp(void); 37 static void ADCX_H(void); 38 static void ADCX_Hm(void); 39 static void ADCX_Hp(void); 40 static void ADC_A_A(void); 41 static void ADC_A_A(void); 42 static void ADC_A_B(void); 43 static void ADC_A_C(void); 44 static void ADC_A_D(void); 45 static void ADC_A_E(void); 46 static void ADC_A_H(void); 47 static void ADC_A_L(void); 48 static void ADC_A_V(void); 49 static void ADC_B_A(void); 50 static void ADC_C_A(void); 51 static void ADC_D_A(void); 52 static void ADC_E_A(void); 53 static void ADC_H_A(void); 54 static void ADC_L_A(void); 55 static void ADC_V_A(void); 56 static void ADDNCW_wa(void); 57 static void ADDNCX_B(void); 58 static void ADDNCX_D(void); 59 static void ADDNCX_Dm(void); 60 static void ADDNCX_Dp(void); 61 static void ADDNCX_H(void); 62 static void ADDNCX_Hm(void); 63 static void ADDNCX_Hp(void); 64 static void ADDNC_A_A(void); 65 static void ADDNC_A_A(void); 66 static void ADDNC_A_B(void); 67 static void ADDNC_A_C(void); 68 static void ADDNC_A_D(void); 69 static void ADDNC_A_E(void); 70 static void ADDNC_A_H(void); 71 static void ADDNC_A_L(void); 72 static void ADDNC_A_V(void); 73 static void ADDNC_B_A(void); 74 static void ADDNC_C_A(void); 75 static void ADDNC_D_A(void); 76 static void ADDNC_E_A(void); 77 static void ADDNC_H_A(void); 78 static void ADDNC_L_A(void); 79 static void ADDNC_V_A(void); 80 static void ADDW_wa(void); 81 static void ADDX_B(void); 82 static void ADDX_D(void); 83 static void ADDX_Dm(void); 84 static void ADDX_Dp(void); 85 static void ADDX_H(void); 86 static void ADDX_Hm(void); 87 static void ADDX_Hp(void); 88 static void ADD_A_A(void); 89 static void ADD_A_A(void); 90 static void ADD_A_B(void); 91 static void ADD_A_C(void); 92 static void ADD_A_D(void); 93 static void ADD_A_E(void); 94 static void ADD_A_H(void); 95 static void ADD_A_L(void); 96 static void ADD_A_V(void); 97 static void ADD_B_A(void); 98 static void ADD_C_A(void); 99 static void ADD_D_A(void); 100 static void ADD_E_A(void); 101 static void ADD_H_A(void); 102 static void ADD_L_A(void); 103 static void ADD_V_A(void); 104 static void ADINC_ANM_xx(void); 105 static void ADINC_A_xx(void); 106 static void ADINC_A_xx(void); 107 static void ADINC_B_xx(void); 108 static void ADINC_C_xx(void); 109 static void ADINC_D_xx(void); 110 static void ADINC_EOM_xx(void); 111 static void ADINC_E_xx(void); 112 static void ADINC_H_xx(void); 113 static void ADINC_L_xx(void); 114 static void ADINC_MKH_xx(void); 115 static void ADINC_MKL_xx(void); 116 static void ADINC_PA_xx(void); 117 static void ADINC_PB_xx(void); 118 static void ADINC_PC_xx(void); 119 static void ADINC_PD_xx(void); 120 static void ADINC_PF_xx(void); 121 static void ADINC_SMH_xx(void); 122 static void ADINC_TMM_xx(void); 123 static void ADINC_V_xx(void); 124 static void ADI_ANM_xx(void); 125 static void ADI_A_xx(void); 126 static void ADI_A_xx(void); 127 static void ADI_B_xx(void); 128 static void ADI_C_xx(void); 129 static void ADI_D_xx(void); 130 static void ADI_EOM_xx(void); 131 static void ADI_E_xx(void); 132 static void ADI_H_xx(void); 133 static void ADI_L_xx(void); 134 static void ADI_MKH_xx(void); 135 static void ADI_MKL_xx(void); 136 static void ADI_PA_xx(void); 137 static void ADI_PB_xx(void); 138 static void ADI_PC_xx(void); 139 static void ADI_PD_xx(void); 140 static void ADI_PF_xx(void); 141 static void ADI_SMH_xx(void); 142 static void ADI_TMM_xx(void); 143 static void ADI_V_xx(void); 144 static void ANAW_wa(void); 145 static void ANAX_B(void); 146 static void ANAX_D(void); 147 static void ANAX_Dm(void); 148 static void ANAX_Dp(void); 149 static void ANAX_H(void); 150 static void ANAX_Hm(void); 151 static void ANAX_Hp(void); 152 static void ANA_A_A(void); 153 static void ANA_A_A(void); 154 static void ANA_A_B(void); 155 static void ANA_A_C(void); 156 static void ANA_A_D(void); 157 static void ANA_A_E(void); 158 static void ANA_A_H(void); 159 static void ANA_A_L(void); 160 static void ANA_A_V(void); 161 static void ANA_B_A(void); 162 static void ANA_C_A(void); 163 static void ANA_D_A(void); 164 static void ANA_E_A(void); 165 static void ANA_H_A(void); 166 static void ANA_L_A(void); 167 static void ANA_V_A(void); 168 static void ANIW_wa_xx(void); 169 static void ANI_ANM_xx(void); 170 static void ANI_A_xx(void); 171 static void ANI_A_xx(void); 172 static void ANI_B_xx(void); 173 static void ANI_C_xx(void); 174 static void ANI_D_xx(void); 175 static void ANI_EOM_xx(void); 176 static void ANI_E_xx(void); 177 static void ANI_H_xx(void); 178 static void ANI_L_xx(void); 179 static void ANI_MKH_xx(void); 180 static void ANI_MKL_xx(void); 181 static void ANI_PA_xx(void); 182 static void ANI_PB_xx(void); 183 static void ANI_PC_xx(void); 184 static void ANI_PD_xx(void); 185 static void ANI_PF_xx(void); 186 static void ANI_SMH_xx(void); 187 static void ANI_TMM_xx(void); 188 static void ANI_V_xx(void); 189 static void BIT_0_wa(void); 190 static void BIT_1_wa(void); 191 static void BIT_2_wa(void); 192 static void BIT_3_wa(void); 193 static void BIT_4_wa(void); 194 static void BIT_5_wa(void); 195 static void BIT_6_wa(void); 196 static void BIT_7_wa(void); 197 static void BLOCK(void); 198 static void CALB(void); 199 static void CALF(void); 200 static void CALL_w(void); 201 static void CALT(void); 202 static void CLC(void); 203 static void CLR(void); 204 static void DAA(void); 205 static void DADC_EA_BC(void); 206 static void DADC_EA_DE(void); 207 static void DADC_EA_HL(void); 208 static void DADDNC_EA_BC(void); 209 static void DADDNC_EA_DE(void); 210 static void DADDNC_EA_HL(void); 211 static void DADD_EA_BC(void); 212 static void DADD_EA_DE(void); 213 static void DADD_EA_HL(void); 214 static void DAN_EA_BC(void); 215 static void DAN_EA_DE(void); 216 static void DAN_EA_HL(void); 217 static void DCRW_wa(void); 218 static void DCR_A(void); 219 static void DCR_B(void); 220 static void DCR_C(void); 221 static void DCX_BC(void); 222 static void DCX_DE(void); 223 static void DCX_EA(void); 224 static void DCX_HL(void); 225 static void DCX_SP(void); 226 static void DEQ_EA_BC(void); 227 static void DEQ_EA_DE(void); 228 static void DEQ_EA_HL(void); 229 static void DGT_EA_BC(void); 230 static void DGT_EA_DE(void); 231 static void DGT_EA_HL(void); 232 static void DI(void); 233 static void DIV_A(void); 234 static void DIV_B(void); 235 static void DIV_C(void); 236 static void DLT_EA_BC(void); 237 static void DLT_EA_DE(void); 238 static void DLT_EA_HL(void); 239 static void DMOV_BC_EA(void); 240 static void DMOV_DE_EA(void); 241 static void DMOV_EA_BC(void); 242 static void DMOV_EA_DE(void); 243 static void DMOV_EA_ECNT(void); 244 static void DMOV_EA_ECPT(void); 245 static void DMOV_EA_HL(void); 246 static void DMOV_ETM0_EA(void); 247 static void DMOV_ETM1_EA(void); 248 static void DMOV_HL_EA(void); 249 static void DNE_EA_BC(void); 250 static void DNE_EA_DE(void); 251 static void DNE_EA_HL(void); 252 static void DOFF_EA_BC(void); 253 static void DOFF_EA_DE(void); 254 static void DOFF_EA_HL(void); 255 static void DON_EA_BC(void); 256 static void DON_EA_DE(void); 257 static void DON_EA_HL(void); 258 static void DOR_EA_BC(void); 259 static void DOR_EA_DE(void); 260 static void DOR_EA_HL(void); 261 static void DRLL_EA(void); 262 static void DRLR_EA(void); 263 static void DSBB_EA_BC(void); 264 static void DSBB_EA_DE(void); 265 static void DSBB_EA_HL(void); 266 static void DSLL_EA(void); 267 static void DSLR_EA(void); 268 static void DSUBNB_EA_BC(void); 269 static void DSUBNB_EA_DE(void); 270 static void DSUBNB_EA_HL(void); 271 static void DSUB_EA_BC(void); 272 static void DSUB_EA_DE(void); 273 static void DSUB_EA_HL(void); 274 static void DXR_EA_BC(void); 275 static void DXR_EA_DE(void); 276 static void DXR_EA_HL(void); 277 static void EADD_EA_A(void); 278 static void EADD_EA_B(void); 279 static void EADD_EA_C(void); 280 static void EI(void); 281 static void EQAW_wa(void); 282 static void EQAX_B(void); 283 static void EQAX_D(void); 284 static void EQAX_Dm(void); 285 static void EQAX_Dp(void); 286 static void EQAX_H(void); 287 static void EQAX_Hm(void); 288 static void EQAX_Hp(void); 289 static void EQA_A_A(void); 290 static void EQA_A_A(void); 291 static void EQA_A_B(void); 292 static void EQA_A_C(void); 293 static void EQA_A_D(void); 294 static void EQA_A_E(void); 295 static void EQA_A_H(void); 296 static void EQA_A_L(void); 297 static void EQA_A_V(void); 298 static void EQA_B_A(void); 299 static void EQA_C_A(void); 300 static void EQA_D_A(void); 301 static void EQA_E_A(void); 302 static void EQA_H_A(void); 303 static void EQA_L_A(void); 304 static void EQA_V_A(void); 305 static void EQIW_wa_xx(void); 306 static void EQI_ANM_xx(void); 307 static void EQI_A_xx(void); 308 static void EQI_A_xx(void); 309 static void EQI_B_xx(void); 310 static void EQI_C_xx(void); 311 static void EQI_D_xx(void); 312 static void EQI_EOM_xx(void); 313 static void EQI_E_xx(void); 314 static void EQI_H_xx(void); 315 static void EQI_L_xx(void); 316 static void EQI_MKH_xx(void); 317 static void EQI_MKL_xx(void); 318 static void EQI_PA_xx(void); 319 static void EQI_PB_xx(void); 320 static void EQI_PC_xx(void); 321 static void EQI_PD_xx(void); 322 static void EQI_PF_xx(void); 323 static void EQI_SMH_xx(void); 324 static void EQI_TMM_xx(void); 325 static void EQI_V_xx(void); 326 static void ESUB_EA_A(void); 327 static void ESUB_EA_B(void); 328 static void ESUB_EA_C(void); 329 static void EXA(void); 330 static void EXH(void); 331 static void EXX(void); 332 static void EXR(void); 333 static void GTAW_wa(void); 334 static void GTAX_B(void); 335 static void GTAX_D(void); 336 static void GTAX_Dm(void); 337 static void GTAX_Dp(void); 338 static void GTAX_H(void); 339 static void GTAX_Hm(void); 340 static void GTAX_Hp(void); 341 static void GTA_A_A(void); 342 static void GTA_A_A(void); 343 static void GTA_A_B(void); 344 static void GTA_A_C(void); 345 static void GTA_A_D(void); 346 static void GTA_A_E(void); 347 static void GTA_A_H(void); 348 static void GTA_A_L(void); 349 static void GTA_A_V(void); 350 static void GTA_B_A(void); 351 static void GTA_C_A(void); 352 static void GTA_D_A(void); 353 static void GTA_E_A(void); 354 static void GTA_H_A(void); 355 static void GTA_L_A(void); 356 static void GTA_V_A(void); 357 static void GTIW_wa_xx(void); 358 static void GTI_ANM_xx(void); 359 static void GTI_A_xx(void); 360 static void GTI_A_xx(void); 361 static void GTI_B_xx(void); 362 static void GTI_C_xx(void); 363 static void GTI_D_xx(void); 364 static void GTI_EOM_xx(void); 365 static void GTI_E_xx(void); 366 static void GTI_H_xx(void); 367 static void GTI_L_xx(void); 368 static void GTI_MKH_xx(void); 369 static void GTI_MKL_xx(void); 370 static void GTI_PA_xx(void); 371 static void GTI_PB_xx(void); 372 static void GTI_PC_xx(void); 373 static void GTI_PD_xx(void); 374 static void GTI_PF_xx(void); 375 static void GTI_SMH_xx(void); 376 static void GTI_TMM_xx(void); 377 static void GTI_V_xx(void); 378 static void HALT(void); 379 static void INRW_wa(void); 380 static void INR_A(void); 381 static void INR_B(void); 382 static void INR_C(void); 383 static void INX_BC(void); 384 static void INX_DE(void); 385 static void INX_EA(void); 386 static void INX_HL(void); 387 static void INX_SP(void); 388 static void JB(void); 389 static void JEA(void); 390 static void JMP_w(void); 391 static void JR(void); 392 static void JRE(void); 393 static void LBCD_w(void); 394 static void LDAW_wa(void); 395 static void LDAX_B(void); 396 static void LDAX_D(void); 397 static void LDAX_D_xx(void); 398 static void LDAX_Dm(void); 399 static void LDAX_Dp(void); 400 static void LDAX_H(void); 401 static void LDAX_H_A(void); 402 static void LDAX_H_B(void); 403 static void LDAX_H_EA(void); 404 static void LDAX_H_xx(void); 405 static void LDAX_Hm(void); 406 static void LDAX_Hp(void); 407 static void LDEAX_D(void); 408 static void LDEAX_D_xx(void); 409 static void LDEAX_Dp(void); 410 static void LDEAX_H(void); 411 static void LDEAX_H_A(void); 412 static void LDEAX_H_B(void); 413 static void LDEAX_H_EA(void); 414 static void LDEAX_H_xx(void); 415 static void LDEAX_Hp(void); 416 static void LDED_w(void); 417 static void LHLD_w(void); 418 static void LSPD_w(void); 419 static void LTAW_wa(void); 420 static void LTAX_B(void); 421 static void LTAX_D(void); 422 static void LTAX_Dm(void); 423 static void LTAX_Dp(void); 424 static void LTAX_H(void); 425 static void LTAX_Hm(void); 426 static void LTAX_Hp(void); 427 static void LTA_A_A(void); 428 static void LTA_A_A(void); 429 static void LTA_A_B(void); 430 static void LTA_A_C(void); 431 static void LTA_A_D(void); 432 static void LTA_A_E(void); 433 static void LTA_A_H(void); 434 static void LTA_A_L(void); 435 static void LTA_A_V(void); 436 static void LTA_B_A(void); 437 static void LTA_C_A(void); 438 static void LTA_D_A(void); 439 static void LTA_E_A(void); 440 static void LTA_H_A(void); 441 static void LTA_L_A(void); 442 static void LTA_V_A(void); 443 static void LTIW_wa_xx(void); 444 static void LTI_ANM_xx(void); 445 static void LTI_A_xx(void); 446 static void LTI_A_xx(void); 447 static void LTI_B_xx(void); 448 static void LTI_C_xx(void); 449 static void LTI_D_xx(void); 450 static void LTI_EOM_xx(void); 451 static void LTI_E_xx(void); 452 static void LTI_H_xx(void); 453 static void LTI_L_xx(void); 454 static void LTI_MKH_xx(void); 455 static void LTI_MKL_xx(void); 456 static void LTI_PA_xx(void); 457 static void LTI_PB_xx(void); 458 static void LTI_PC_xx(void); 459 static void LTI_PD_xx(void); 460 static void LTI_PF_xx(void); 461 static void LTI_SMH_xx(void); 462 static void LTI_TMM_xx(void); 463 static void LTI_V_xx(void); 464 static void LXI_B_w(void); 465 static void LXI_D_w(void); 466 static void LXI_EA_s(void); 467 static void LXI_H_w(void); 468 static void LXI_S_w(void); 469 static void MOV_ANM_A(void); 470 static void MOV_A_ANM(void); 471 static void MOV_A_B(void); 472 static void MOV_A_C(void); 473 static void MOV_A_CR0(void); 474 static void MOV_A_CR1(void); 475 static void MOV_A_CR2(void); 476 static void MOV_A_CR3(void); 477 static void MOV_A_D(void); 478 static void MOV_A_E(void); 479 static void MOV_A_EAH(void); 480 static void MOV_A_EAL(void); 481 static void MOV_A_EOM(void); 482 static void MOV_A_H(void); 483 static void MOV_A_L(void); 484 static void MOV_A_MKH(void); 485 static void MOV_A_MKL(void); 486 static void MOV_A_PA(void); 487 static void MOV_A_PB(void); 488 static void MOV_A_PC(void); 489 static void MOV_A_PD(void); 490 static void MOV_A_PF(void); 491 static void MOV_A_RXB(void); 492 static void MOV_A_SMH(void); 493 static void MOV_A_TMM(void); 494 static void MOV_A_PT(void); 495 static void MOV_A_w(void); 496 static void MOV_B_A(void); 497 static void MOV_B_w(void); 498 static void MOV_C_A(void); 499 static void MOV_C_w(void); 500 static void MOV_D_A(void); 501 static void MOV_D_w(void); 502 static void MOV_EAH_A(void); 503 static void MOV_EAL_A(void); 504 static void MOV_EOM_A(void); 505 static void MOV_ETMM_A(void); 506 static void MOV_E_A(void); 507 static void MOV_E_w(void); 508 static void MOV_H_A(void); 509 static void MOV_H_w(void); 510 static void MOV_L_A(void); 511 static void MOV_L_w(void); 512 static void MOV_MA_A(void); 513 static void MOV_MB_A(void); 514 static void MOV_MCC_A(void); 515 static void MOV_MC_A(void); 516 static void MOV_MF_A(void); 517 static void MOV_MKH_A(void); 518 static void MOV_MKL_A(void); 519 static void MOV_MM_A(void); 520 static void MOV_PA_A(void); 521 static void MOV_PB_A(void); 522 static void MOV_PC_A(void); 523 static void MOV_PD_A(void); 524 static void MOV_PF_A(void); 525 static void MOV_SMH_A(void); 526 static void MOV_SML_A(void); 527 static void MOV_TM0_A(void); 528 static void MOV_TM1_A(void); 529 static void MOV_TMM_A(void); 530 static void MOV_TXB_A(void); 531 static void MOV_V_w(void); 532 static void MOV_ZCM_A(void); 533 static void MOV_w_A(void); 534 static void MOV_w_B(void); 535 static void MOV_w_C(void); 536 static void MOV_w_D(void); 537 static void MOV_w_E(void); 538 static void MOV_w_H(void); 539 static void MOV_w_L(void); 540 static void MOV_w_V(void); 541 static void MUL_A(void); 542 static void MUL_B(void); 543 static void MUL_C(void); 544 static void MVIW_wa_xx(void); 545 static void MVIX_BC_xx(void); 546 static void MVIX_DE_xx(void); 547 static void MVIX_HL_xx(void); 548 static void MVI_ANM_xx(void); 549 static void MVI_A_xx(void); 550 static void MVI_B_xx(void); 551 static void MVI_C_xx(void); 552 static void MVI_D_xx(void); 553 static void MVI_EOM_xx(void); 554 static void MVI_E_xx(void); 555 static void MVI_H_xx(void); 556 static void MVI_L_xx(void); 557 static void MVI_MKH_xx(void); 558 static void MVI_MKL_xx(void); 559 static void MVI_PA_xx(void); 560 static void MVI_PB_xx(void); 561 static void MVI_PC_xx(void); 562 static void MVI_PD_xx(void); 563 static void MVI_PF_xx(void); 564 static void MVI_SMH_xx(void); 565 static void MVI_TMM_xx(void); 566 static void MVI_V_xx(void); 567 static void NEAW_wa(void); 568 static void NEAX_B(void); 569 static void NEAX_D(void); 570 static void NEAX_Dm(void); 571 static void NEAX_Dp(void); 572 static void NEAX_H(void); 573 static void NEAX_Hm(void); 574 static void NEAX_Hp(void); 575 static void NEA_A_A(void); 576 static void NEA_A_A(void); 577 static void NEA_A_B(void); 578 static void NEA_A_C(void); 579 static void NEA_A_D(void); 580 static void NEA_A_E(void); 581 static void NEA_A_H(void); 582 static void NEA_A_L(void); 583 static void NEA_A_V(void); 584 static void NEA_B_A(void); 585 static void NEA_C_A(void); 586 static void NEA_D_A(void); 587 static void NEA_E_A(void); 588 static void NEA_H_A(void); 589 static void NEA_L_A(void); 590 static void NEA_V_A(void); 591 static void NEGA(void); 592 static void NEIW_wa_xx(void); 593 static void NEI_ANM_xx(void); 594 static void NEI_A_xx(void); 595 static void NEI_A_xx(void); 596 static void NEI_B_xx(void); 597 static void NEI_C_xx(void); 598 static void NEI_D_xx(void); 599 static void NEI_EOM_xx(void); 600 static void NEI_E_xx(void); 601 static void NEI_H_xx(void); 602 static void NEI_L_xx(void); 603 static void NEI_MKH_xx(void); 604 static void NEI_MKL_xx(void); 605 static void NEI_PA_xx(void); 606 static void NEI_PB_xx(void); 607 static void NEI_PC_xx(void); 608 static void NEI_PD_xx(void); 609 static void NEI_PF_xx(void); 610 static void NEI_SMH_xx(void); 611 static void NEI_TMM_xx(void); 612 static void NEI_V_xx(void); 613 static void NOP(void); 614 static void OFFAW_wa(void); 615 static void OFFAX_B(void); 616 static void OFFAX_D(void); 617 static void OFFAX_Dm(void); 618 static void OFFAX_Dp(void); 619 static void OFFAX_H(void); 620 static void OFFAX_Hm(void); 621 static void OFFAX_Hp(void); 622 static void OFFA_A_A(void); 623 static void OFFA_A_B(void); 624 static void OFFA_A_C(void); 625 static void OFFA_A_D(void); 626 static void OFFA_A_E(void); 627 static void OFFA_A_H(void); 628 static void OFFA_A_L(void); 629 static void OFFA_A_V(void); 630 static void OFFIW_wa_xx(void); 631 static void OFFI_ANM_xx(void); 632 static void OFFI_A_xx(void); 633 static void OFFI_A_xx(void); 634 static void OFFI_B_xx(void); 635 static void OFFI_C_xx(void); 636 static void OFFI_D_xx(void); 637 static void OFFI_EOM_xx(void); 638 static void OFFI_E_xx(void); 639 static void OFFI_H_xx(void); 640 static void OFFI_L_xx(void); 641 static void OFFI_MKH_xx(void); 642 static void OFFI_MKL_xx(void); 643 static void OFFI_PA_xx(void); 644 static void OFFI_PB_xx(void); 645 static void OFFI_PC_xx(void); 646 static void OFFI_PD_xx(void); 647 static void OFFI_PF_xx(void); 648 static void OFFI_SMH_xx(void); 649 static void OFFI_TMM_xx(void); 650 static void OFFI_V_xx(void); 651 static void ONAW_wa(void); 652 static void ONAX_B(void); 653 static void ONAX_D(void); 654 static void ONAX_Dm(void); 655 static void ONAX_Dp(void); 656 static void ONAX_H(void); 657 static void ONAX_Hm(void); 658 static void ONAX_Hp(void); 659 static void ONA_A_A(void); 660 static void ONA_A_B(void); 661 static void ONA_A_C(void); 662 static void ONA_A_D(void); 663 static void ONA_A_E(void); 664 static void ONA_A_H(void); 665 static void ONA_A_L(void); 666 static void ONA_A_V(void); 667 static void ONIW_wa_xx(void); 668 static void ONI_ANM_xx(void); 669 static void ONI_A_xx(void); 670 static void ONI_A_xx(void); 671 static void ONI_B_xx(void); 672 static void ONI_C_xx(void); 673 static void ONI_D_xx(void); 674 static void ONI_EOM_xx(void); 675 static void ONI_E_xx(void); 676 static void ONI_H_xx(void); 677 static void ONI_L_xx(void); 678 static void ONI_MKH_xx(void); 679 static void ONI_MKL_xx(void); 680 static void ONI_PA_xx(void); 681 static void ONI_PB_xx(void); 682 static void ONI_PC_xx(void); 683 static void ONI_PD_xx(void); 684 static void ONI_PF_xx(void); 685 static void ONI_SMH_xx(void); 686 static void ONI_TMM_xx(void); 687 static void ONI_V_xx(void); 688 static void ORAW_wa(void); 689 static void ORAX_B(void); 690 static void ORAX_D(void); 691 static void ORAX_Dm(void); 692 static void ORAX_Dp(void); 693 static void ORAX_H(void); 694 static void ORAX_Hm(void); 695 static void ORAX_Hp(void); 696 static void ORA_A_A(void); 697 static void ORA_A_A(void); 698 static void ORA_A_B(void); 699 static void ORA_A_C(void); 700 static void ORA_A_D(void); 701 static void ORA_A_E(void); 702 static void ORA_A_H(void); 703 static void ORA_A_L(void); 704 static void ORA_A_V(void); 705 static void ORA_B_A(void); 706 static void ORA_C_A(void); 707 static void ORA_D_A(void); 708 static void ORA_E_A(void); 709 static void ORA_H_A(void); 710 static void ORA_L_A(void); 711 static void ORA_V_A(void); 712 static void ORIW_wa_xx(void); 713 static void ORI_ANM_xx(void); 714 static void ORI_A_xx(void); 715 static void ORI_A_xx(void); 716 static void ORI_B_xx(void); 717 static void ORI_C_xx(void); 718 static void ORI_D_xx(void); 719 static void ORI_EOM_xx(void); 720 static void ORI_E_xx(void); 721 static void ORI_H_xx(void); 722 static void ORI_L_xx(void); 723 static void ORI_MKH_xx(void); 724 static void ORI_MKL_xx(void); 725 static void ORI_PA_xx(void); 726 static void ORI_PB_xx(void); 727 static void ORI_PC_xx(void); 728 static void ORI_PD_xx(void); 729 static void ORI_PF_xx(void); 730 static void ORI_SMH_xx(void); 731 static void ORI_TMM_xx(void); 732 static void ORI_V_xx(void); 733 static void POP_BC(void); 734 static void POP_DE(void); 735 static void POP_EA(void); 736 static void POP_HL(void); 737 static void POP_VA(void); 738 static void PRE_48(void); 739 static void PRE_4C(void); 740 static void PRE_4D(void); 741 static void PRE_60(void); 742 static void PRE_64(void); 743 static void PRE_70(void); 744 static void PRE_74(void); 745 static void PUSH_BC(void); 746 static void PUSH_DE(void); 747 static void PUSH_EA(void); 748 static void PUSH_HL(void); 749 static void PUSH_VA(void); 750 static void RET(void); 751 static void RETI(void); 752 static void RETS(void); 753 static void RLD(void); 754 static void RLL_A(void); 755 static void RLL_B(void); 756 static void RLL_C(void); 757 static void RLR_A(void); 758 static void RLR_B(void); 759 static void RLR_C(void); 760 static void RRD(void); 761 static void SBBW_wa(void); 762 static void SBBX_B(void); 763 static void SBBX_D(void); 764 static void SBBX_Dm(void); 765 static void SBBX_Dp(void); 766 static void SBBX_H(void); 767 static void SBBX_Hm(void); 768 static void SBBX_Hp(void); 769 static void SBB_A_A(void); 770 static void SBB_A_A(void); 771 static void SBB_A_B(void); 772 static void SBB_A_C(void); 773 static void SBB_A_D(void); 774 static void SBB_A_E(void); 775 static void SBB_A_H(void); 776 static void SBB_A_L(void); 777 static void SBB_A_V(void); 778 static void SBB_B_A(void); 779 static void SBB_C_A(void); 780 static void SBB_D_A(void); 781 static void SBB_E_A(void); 782 static void SBB_H_A(void); 783 static void SBB_L_A(void); 784 static void SBB_V_A(void); 785 static void SBCD_w(void); 786 static void SBI_ANM_xx(void); 787 static void SBI_A_xx(void); 788 static void SBI_A_xx(void); 789 static void SBI_B_xx(void); 790 static void SBI_C_xx(void); 791 static void SBI_D_xx(void); 792 static void SBI_EOM_xx(void); 793 static void SBI_E_xx(void); 794 static void SBI_H_xx(void); 795 static void SBI_L_xx(void); 796 static void SBI_MKH_xx(void); 797 static void SBI_MKL_xx(void); 798 static void SBI_PA_xx(void); 799 static void SBI_PB_xx(void); 800 static void SBI_PC_xx(void); 801 static void SBI_PD_xx(void); 802 static void SBI_PF_xx(void); 803 static void SBI_SMH_xx(void); 804 static void SBI_TMM_xx(void); 805 static void SBI_V_xx(void); 806 static void SDED_w(void); 807 static void SETB(void); 808 static void SHLD_w(void); 809 static void SK_bit(void); 810 static void SKN_bit(void); 811 static void SKIT_AN4(void); 812 static void SKIT_AN5(void); 813 static void SKIT_AN6(void); 814 static void SKIT_AN7(void); 815 static void SKIT_ER(void); 816 static void SKIT_F1(void); 817 static void SKIT_F2(void); 818 static void SKIT_FAD(void); 819 static void SKIT_FE0(void); 820 static void SKIT_FE1(void); 821 static void SKIT_FEIN(void); 822 static void SKIT_FSR(void); 823 static void SKIT_FST(void); 824 static void SKIT_FT0(void); 825 static void SKIT_FT1(void); 826 static void SKIT_NMI(void); 827 static void SKIT_OV(void); 828 static void SKIT_SB(void); 829 static void SKNIT_AN4(void); 830 static void SKNIT_AN5(void); 831 static void SKNIT_AN6(void); 832 static void SKNIT_AN7(void); 833 static void SKNIT_ER(void); 834 static void SKNIT_F1(void); 835 static void SKNIT_F2(void); 836 static void SKNIT_FAD(void); 837 static void SKNIT_FE0(void); 838 static void SKNIT_FE1(void); 839 static void SKNIT_FEIN(void); 840 static void SKNIT_FSR(void); 841 static void SKNIT_FST(void); 842 static void SKNIT_FT0(void); 843 static void SKNIT_FT1(void); 844 static void SKNIT_NMI(void); 845 static void SKNIT_OV(void); 846 static void SKNIT_SB(void); 847 static void SKN_CY(void); 848 static void SKN_HC(void); 849 static void SKN_NV(void); 850 static void SKN_Z(void); 851 static void SK_CY(void); 852 static void SK_HC(void); 853 static void SK_NV(void); 854 static void SK_Z(void); 855 static void SLLC_A(void); 856 static void SLLC_B(void); 857 static void SLLC_C(void); 858 static void SLL_A(void); 859 static void SLL_B(void); 860 static void SLL_C(void); 861 static void SLRC_A(void); 862 static void SLRC_B(void); 863 static void SLRC_C(void); 864 static void SLR_A(void); 865 static void SLR_B(void); 866 static void SLR_C(void); 867 static void SOFTI(void); 868 static void SSPD_w(void); 869 static void STAW_wa(void); 870 static void STAX_B(void); 871 static void STAX_D(void); 872 static void STAX_D_xx(void); 873 static void STAX_Dm(void); 874 static void STAX_Dp(void); 875 static void STAX_H(void); 876 static void STAX_H_A(void); 877 static void STAX_H_B(void); 878 static void STAX_H_EA(void); 879 static void STAX_H_xx(void); 880 static void STAX_Hm(void); 881 static void STAX_Hp(void); 882 static void STC(void); 883 static void STEAX_D(void); 884 static void STEAX_D_xx(void); 885 static void STEAX_Dp(void); 886 static void STEAX_H(void); 887 static void STEAX_H_A(void); 888 static void STEAX_H_B(void); 889 static void STEAX_H_EA(void); 890 static void STEAX_H_xx(void); 891 static void STEAX_Hp(void); 892 static void STOP(void); 893 static void SUBNBW_wa(void); 894 static void SUBNBX_B(void); 895 static void SUBNBX_D(void); 896 static void SUBNBX_Dm(void); 897 static void SUBNBX_Dp(void); 898 static void SUBNBX_H(void); 899 static void SUBNBX_Hm(void); 900 static void SUBNBX_Hp(void); 901 static void SUBNB_A_A(void); 902 static void SUBNB_A_A(void); 903 static void SUBNB_A_B(void); 904 static void SUBNB_A_C(void); 905 static void SUBNB_A_D(void); 906 static void SUBNB_A_E(void); 907 static void SUBNB_A_H(void); 908 static void SUBNB_A_L(void); 909 static void SUBNB_A_V(void); 910 static void SUBNB_B_A(void); 911 static void SUBNB_C_A(void); 912 static void SUBNB_D_A(void); 913 static void SUBNB_E_A(void); 914 static void SUBNB_H_A(void); 915 static void SUBNB_L_A(void); 916 static void SUBNB_V_A(void); 917 static void SUBW_wa(void); 918 static void SUBX_B(void); 919 static void SUBX_D(void); 920 static void SUBX_Dm(void); 921 static void SUBX_Dp(void); 922 static void SUBX_H(void); 923 static void SUBX_Hm(void); 924 static void SUBX_Hp(void); 925 static void SUB_A_A(void); 926 static void SUB_A_A(void); 927 static void SUB_A_B(void); 928 static void SUB_A_C(void); 929 static void SUB_A_D(void); 930 static void SUB_A_E(void); 931 static void SUB_A_H(void); 932 static void SUB_A_L(void); 933 static void SUB_A_V(void); 934 static void SUB_B_A(void); 935 static void SUB_C_A(void); 936 static void SUB_D_A(void); 937 static void SUB_E_A(void); 938 static void SUB_H_A(void); 939 static void SUB_L_A(void); 940 static void SUB_V_A(void); 941 static void SUINB_ANM_xx(void); 942 static void SUINB_A_xx(void); 943 static void SUINB_A_xx(void); 944 static void SUINB_B_xx(void); 945 static void SUINB_C_xx(void); 946 static void SUINB_D_xx(void); 947 static void SUINB_EOM_xx(void); 948 static void SUINB_E_xx(void); 949 static void SUINB_H_xx(void); 950 static void SUINB_L_xx(void); 951 static void SUINB_MKH_xx(void); 952 static void SUINB_MKL_xx(void); 953 static void SUINB_PA_xx(void); 954 static void SUINB_PB_xx(void); 955 static void SUINB_PC_xx(void); 956 static void SUINB_PD_xx(void); 957 static void SUINB_PF_xx(void); 958 static void SUINB_SMH_xx(void); 959 static void SUINB_TMM_xx(void); 960 static void SUINB_V_xx(void); 961 static void SUI_ANM_xx(void); 962 static void SUI_A_xx(void); 963 static void SUI_A_xx(void); 964 static void SUI_B_xx(void); 965 static void SUI_C_xx(void); 966 static void SUI_D_xx(void); 967 static void SUI_EOM_xx(void); 968 static void SUI_E_xx(void); 969 static void SUI_H_xx(void); 970 static void SUI_L_xx(void); 971 static void SUI_MKH_xx(void); 972 static void SUI_MKL_xx(void); 973 static void SUI_PA_xx(void); 974 static void SUI_PB_xx(void); 975 static void SUI_PC_xx(void); 976 static void SUI_PD_xx(void); 977 static void SUI_PF_xx(void); 978 static void SUI_SMH_xx(void); 979 static void SUI_TMM_xx(void); 980 static void SUI_V_xx(void); 981 static void TABLE(void); 982 static void XRAW_wa(void); 983 static void XRAX_B(void); 984 static void XRAX_D(void); 985 static void XRAX_Dm(void); 986 static void XRAX_Dp(void); 987 static void XRAX_H(void); 988 static void XRAX_Hm(void); 989 static void XRAX_Hp(void); 990 static void XRA_A_A(void); 991 static void XRA_A_A(void); 992 static void XRA_A_B(void); 993 static void XRA_A_C(void); 994 static void XRA_A_D(void); 995 static void XRA_A_E(void); 996 static void XRA_A_H(void); 997 static void XRA_A_L(void); 998 static void XRA_A_V(void); 999 static void XRA_B_A(void); 1000 static void XRA_C_A(void); 1001 static void XRA_D_A(void); 1002 static void XRA_E_A(void); 1003 static void XRA_H_A(void); 1004 static void XRA_L_A(void); 1005 static void XRA_V_A(void); 1006 static void XRI_ANM_xx(void); 1007 static void XRI_A_xx(void); 1008 static void XRI_A_xx(void); 1009 static void XRI_B_xx(void); 1010 static void XRI_C_xx(void); 1011 static void XRI_D_xx(void); 1012 static void XRI_EOM_xx(void); 1013 static void XRI_E_xx(void); 1014 static void XRI_H_xx(void); 1015 static void XRI_L_xx(void); 1016 static void XRI_MKH_xx(void); 1017 static void XRI_MKL_xx(void); 1018 static void XRI_PA_xx(void); 1019 static void XRI_PB_xx(void); 1020 static void XRI_PC_xx(void); 1021 static void XRI_PD_xx(void); 1022 static void XRI_PF_xx(void); 1023 static void XRI_SMH_xx(void); 1024 static void XRI_TMM_xx(void); 1025 static void XRI_V_xx(void); 1026 1027 static struct opcode_s op48[256] = 1028 { 1029 {illegal, 2, 8, 8,L0|L1}, /* 00: 0100 1000 0000 0000 */ 1030 {SLRC_A, 2, 8, 8,L0|L1}, /* 01: 0100 1000 0000 0001 */ 1031 {SLRC_B, 2, 8, 8,L0|L1}, /* 02: 0100 1000 0000 0010 */ 1032 {SLRC_C, 2, 8, 8,L0|L1}, /* 03: 0100 1000 0000 0011 */ 1033 {illegal, 2, 8, 8,L0|L1}, /* 04: 0100 1000 0000 0100 */ 1034 {SLLC_A, 2, 8, 8,L0|L1}, /* 05: 0100 1000 0000 0101 */ 1035 {SLLC_B, 2, 8, 8,L0|L1}, /* 06: 0100 1000 0000 0110 */ 1036 {SLLC_C, 2, 8, 8,L0|L1}, /* 07: 0100 1000 0000 0111 */ 1037 {SK_NV, 2, 8, 8,L0|L1}, /* 08: 0100 1000 0000 1000 */ 1038 {illegal, 2, 8, 8,L0|L1}, /* 09: 0100 1000 0000 1001 */ 1039 {SK_CY, 2, 8, 8,L0|L1}, /* 0a: 0100 1000 0000 1010 */ 1040 {SK_HC, 2, 8, 8,L0|L1}, /* 0b: 0100 1000 0000 1011 */ 1041 {SK_Z, 2, 8, 8,L0|L1}, /* 0c: 0100 1000 0000 1100 */ 1042 {illegal, 2, 8, 8,L0|L1}, /* 0d: 0100 1000 0000 1101 */ 1043 {illegal, 2, 8, 8,L0|L1}, /* 0e: 0100 1000 0000 1110 */ 1044 {illegal, 2, 8, 8,L0|L1}, /* 0f: 0100 1000 0000 1111 */ 1045 1046 {illegal2, 2, 8, 8,L0|L1}, /* 10: 0100 1000 0001 0000 */ 1047 {illegal2, 2, 8, 8,L0|L1}, /* 11: 0100 1000 0001 0001 */ 1048 {illegal2, 2, 8, 8,L0|L1}, /* 12: 0100 1000 0001 0010 */ 1049 {illegal2, 2, 8, 8,L0|L1}, /* 13: 0100 1000 0001 0011 */ 1050 {illegal2, 2, 8, 8,L0|L1}, /* 14: 0100 1000 0001 0100 */ 1051 {illegal2, 2, 8, 8,L0|L1}, /* 15: 0100 1000 0001 0101 */ 1052 {illegal2, 2, 8, 8,L0|L1}, /* 16: 0100 1000 0001 0110 */ 1053 {illegal2, 2, 8, 8,L0|L1}, /* 17: 0100 1000 0001 0111 */ 1054 {SKN_NV, 2, 8, 8,L0|L1}, /* 18: 0100 1000 0001 1000 */ 1055 {illegal, 2, 8, 8,L0|L1}, /* 19: 0100 1000 0001 1001 */ 1056 {SKN_CY, 2, 8, 8,L0|L1}, /* 1a: 0100 1000 0001 1010 */ 1057 {SKN_HC, 2, 8, 8,L0|L1}, /* 1b: 0100 1000 0001 1011 */ 1058 {SKN_Z, 2, 8, 8,L0|L1}, /* 1c: 0100 1000 0001 1100 */ 1059 {illegal, 2, 8, 8,L0|L1}, /* 1d: 0100 1000 0001 1101 */ 1060 {illegal, 2, 8, 8,L0|L1}, /* 1e: 0100 1000 0001 1110 */ 1061 {illegal, 2, 8, 8,L0|L1}, /* 1f: 0100 1000 0001 1111 */ 1062 1063 {illegal, 2, 8, 8,L0|L1}, /* 20: 0100 1000 0010 0000 */ 1064 {SLR_A, 2, 8, 8,L0|L1}, /* 21: 0100 1000 0010 0001 */ 1065 {SLR_B, 2, 8, 8,L0|L1}, /* 22: 0100 1000 0010 0010 */ 1066 {SLR_C, 2, 8, 8,L0|L1}, /* 23: 0100 1000 0010 0011 */ 1067 {illegal, 2, 8, 8,L0|L1}, /* 24: 0100 1000 0010 0100 */ 1068 {SLL_A, 2, 8, 8,L0|L1}, /* 25: 0100 1000 0010 0101 */ 1069 {SLL_B, 2, 8, 8,L0|L1}, /* 26: 0100 1000 0010 0110 */ 1070 {SLL_C, 2, 8, 8,L0|L1}, /* 27: 0100 1000 0010 0111 */ 1071 {JEA, 2, 8, 8,L0|L1}, /* 28: 0100 1000 0010 1000 */ 1072 {CALB, 2,17,17,L0|L1}, /* 29: 0100 1000 0010 1001 */ 1073 {CLC, 2, 8, 8,L0|L1}, /* 2a: 0100 1000 0010 1010 */ 1074 {STC, 2, 8, 8,L0|L1}, /* 2b: 0100 1000 0010 1011 */ 1075 {illegal, 2,32,32,L0|L1}, /* 2c: 0100 1000 0010 1100 */ 1076 {MUL_A, 2,32,32,L0|L1}, /* 2d: 0100 1000 0010 1101 */ 1077 {MUL_B, 2,32,32,L0|L1}, /* 2e: 0100 1000 0010 1110 */ 1078 {MUL_C, 2,32,32,L0|L1}, /* 2f: 0100 1000 0010 1111 */ 1079 1080 {illegal, 2, 8, 8,L0|L1}, /* 30: 0100 1000 0011 0000 */ 1081 {RLR_A, 2, 8, 8,L0|L1}, /* 31: 0100 1000 0011 0001 */ 1082 {RLR_B, 2, 8, 8,L0|L1}, /* 32: 0100 1000 0011 0010 */ 1083 {RLR_C, 2, 8, 8,L0|L1}, /* 33: 0100 1000 0011 0011 */ 1084 {illegal, 2, 8, 8,L0|L1}, /* 34: 0100 1000 0011 0100 */ 1085 {RLL_A, 2, 8, 8,L0|L1}, /* 35: 0100 1000 0011 0101 */ 1086 {RLL_B, 2, 8, 8,L0|L1}, /* 36: 0100 1000 0011 0110 */ 1087 {RLL_C, 2, 8, 8,L0|L1}, /* 37: 0100 1000 0011 0111 */ 1088 {RLD, 2,17,17,L0|L1}, /* 38: 0100 1000 0011 1000 */ 1089 {RRD, 2,17,17,L0|L1}, /* 39: 0100 1000 0011 1001 */ 1090 {NEGA, 2, 8, 8,L0|L1}, /* 3a: 0100 1000 0011 1010 */ 1091 {HALT, 2,12,12,L0|L1}, /* 3b: 0100 1000 0011 1011 */ 1092 {illegal, 2, 8, 8,L0|L1}, /* 3c: 0100 1000 0011 1100 */ 1093 {DIV_A, 2,59,59,L0|L1}, /* 3d: 0100 1000 0011 1101 */ 1094 {DIV_B, 2,59,59,L0|L1}, /* 3e: 0100 1000 0011 1110 */ 1095 {DIV_C, 2,59,59,L0|L1}, /* 3f: 0100 1000 0011 1111 */ 1096 1097 {SKIT_NMI, 2, 8, 8,L0|L1}, /* 40: 0100 1000 0100 0000 */ 1098 {SKIT_FT0, 2, 8, 8,L0|L1}, /* 41: 0100 1000 0100 0001 */ 1099 {SKIT_FT1, 2, 8, 8,L0|L1}, /* 42: 0100 1000 0100 0010 */ 1100 {SKIT_F1, 2, 8, 8,L0|L1}, /* 43: 0100 1000 0100 0011 */ 1101 {SKIT_F2, 2, 8, 8,L0|L1}, /* 44: 0100 1000 0100 0100 */ 1102 {SKIT_FE0, 2, 8, 8,L0|L1}, /* 45: 0100 1000 0100 0101 */ 1103 {SKIT_FE1, 2, 8, 8,L0|L1}, /* 46: 0100 1000 0100 0110 */ 1104 {SKIT_FEIN, 2, 8, 8,L0|L1}, /* 47: 0100 1000 0100 0111 */ 1105 {SKIT_FAD, 2, 8, 8,L0|L1}, /* 48: 0100 1000 0100 1000 */ 1106 {SKIT_FSR, 2, 8, 8,L0|L1}, /* 49: 0100 1000 0100 1001 */ 1107 {SKIT_FST, 2, 8, 8,L0|L1}, /* 4a: 0100 1000 0100 1010 */ 1108 {SKIT_ER, 2, 8, 8,L0|L1}, /* 4b: 0100 1000 0100 1011 */ 1109 {SKIT_OV, 2, 8, 8,L0|L1}, /* 4c: 0100 1000 0100 1100 */ 1110 {illegal2, 2, 8, 8,L0|L1}, /* 4d: 0100 1000 0100 1101 */ 1111 {illegal2, 2, 8, 8,L0|L1}, /* 4e: 0100 1000 0100 1110 */ 1112 {illegal2, 2, 8, 8,L0|L1}, /* 4f: 0100 1000 0100 1111 */ 1113 1114 {SKIT_AN4, 2, 8, 8,L0|L1}, /* 50: 0100 1000 0101 0000 */ 1115 {SKIT_AN5, 2, 8, 8,L0|L1}, /* 51: 0100 1000 0101 0001 */ 1116 {SKIT_AN6, 2, 8, 8,L0|L1}, /* 52: 0100 1000 0101 0010 */ 1117 {SKIT_AN7, 2, 8, 8,L0|L1}, /* 53: 0100 1000 0101 0011 */ 1118 {SKIT_SB, 2, 8, 8,L0|L1}, /* 54: 0100 1000 0101 0100 */ 1119 {illegal2, 2, 8, 8,L0|L1}, /* 55: 0100 1000 0101 0101 */ 1120 {illegal2, 2, 8, 8,L0|L1}, /* 56: 0100 1000 0101 0110 */ 1121 {illegal2, 2, 8, 8,L0|L1}, /* 57: 0100 1000 0101 0111 */ 1122 {illegal2, 2, 8, 8,L0|L1}, /* 58: 0100 1000 0101 1000 */ 1123 {illegal2, 2, 8, 8,L0|L1}, /* 59: 0100 1000 0101 1001 */ 1124 {illegal2, 2, 8, 8,L0|L1}, /* 5a: 0100 1000 0101 1010 */ 1125 {illegal2, 2, 8, 8,L0|L1}, /* 5b: 0100 1000 0101 1011 */ 1126 {illegal2, 2, 8, 8,L0|L1}, /* 5c: 0100 1000 0101 1100 */ 1127 {illegal2, 2, 8, 8,L0|L1}, /* 5d: 0100 1000 0101 1101 */ 1128 {illegal2, 2, 8, 8,L0|L1}, /* 5e: 0100 1000 0101 1110 */ 1129 {illegal2, 2, 8, 8,L0|L1}, /* 5f: 0100 1000 0101 1111 */ 1130 1131 {SKNIT_NMI, 2, 8, 8,L0|L1}, /* 60: 0100 1000 0110 0000 */ 1132 {SKNIT_FT0, 2, 8, 8,L0|L1}, /* 61: 0100 1000 0110 0001 */ 1133 {SKNIT_FT1, 2, 8, 8,L0|L1}, /* 62: 0100 1000 0110 0010 */ 1134 {SKNIT_F1, 2, 8, 8,L0|L1}, /* 63: 0100 1000 0110 0011 */ 1135 {SKNIT_F2, 2, 8, 8,L0|L1}, /* 64: 0100 1000 0110 0100 */ 1136 {SKNIT_FE0, 2, 8, 8,L0|L1}, /* 65: 0100 1000 0110 0101 */ 1137 {SKNIT_FE1, 2, 8, 8,L0|L1}, /* 66: 0100 1000 0110 0110 */ 1138 {SKNIT_FEIN, 2, 8, 8,L0|L1}, /* 67: 0100 1000 0110 0111 */ 1139 {SKNIT_FAD, 2, 8, 8,L0|L1}, /* 68: 0100 1000 0110 1000 */ 1140 {SKNIT_FSR, 2, 8, 8,L0|L1}, /* 69: 0100 1000 0110 1001 */ 1141 {SKNIT_FST, 2, 8, 8,L0|L1}, /* 6a: 0100 1000 0110 1010 */ 1142 {SKNIT_ER, 2, 8, 8,L0|L1}, /* 6b: 0100 1000 0110 1011 */ 1143 {SKNIT_OV, 2, 8, 8,L0|L1}, /* 6c: 0100 1000 0110 1100 */ 1144 {illegal2, 2, 8, 8,L0|L1}, /* 6d: 0100 1000 0110 1101 */ 1145 {illegal2, 2, 8, 8,L0|L1}, /* 6e: 0100 1000 0110 1110 */ 1146 {illegal2, 2, 8, 8,L0|L1}, /* 6f: 0100 1000 0110 1111 */ 1147 1148 {SKNIT_AN4, 2, 8, 8,L0|L1}, /* 70: 0100 1000 0111 0000 */ 1149 {SKNIT_AN5, 2, 8, 8,L0|L1}, /* 71: 0100 1000 0111 0001 */ 1150 {SKNIT_AN6, 2, 8, 8,L0|L1}, /* 72: 0100 1000 0111 0010 */ 1151 {SKNIT_AN7, 2, 8, 8,L0|L1}, /* 73: 0100 1000 0111 0011 */ 1152 {SKNIT_SB, 2, 8, 8,L0|L1}, /* 74: 0100 1000 0111 0100 */ 1153 {illegal2, 2, 8, 8,L0|L1}, /* 75: 0100 1000 0111 0101 */ 1154 {illegal2, 2, 8, 8,L0|L1}, /* 76: 0100 1000 0111 0110 */ 1155 {illegal2, 2, 8, 8,L0|L1}, /* 77: 0100 1000 0111 0111 */ 1156 {illegal2, 2, 8, 8,L0|L1}, /* 78: 0100 1000 0111 1000 */ 1157 {illegal2, 2, 8, 8,L0|L1}, /* 79: 0100 1000 0111 1001 */ 1158 {illegal2, 2, 8, 8,L0|L1}, /* 7a: 0100 1000 0111 1010 */ 1159 {illegal2, 2, 8, 8,L0|L1}, /* 7b: 0100 1000 0111 1011 */ 1160 {illegal2, 2, 8, 8,L0|L1}, /* 7c: 0100 1000 0111 1100 */ 1161 {illegal2, 2, 8, 8,L0|L1}, /* 7d: 0100 1000 0111 1101 */ 1162 {illegal2, 2, 8, 8,L0|L1}, /* 7e: 0100 1000 0111 1110 */ 1163 {illegal2, 2, 8, 8,L0|L1}, /* 7f: 0100 1000 0111 1111 */ 1164 1165 {illegal2, 2, 8, 8,L0|L1}, /* 80: 0100 1000 1000 0000 */ 1166 {illegal2, 2, 8, 8,L0|L1}, /* 81: 0100 1000 1000 0001 */ 1167 {LDEAX_D, 2,14,11,L0|L1}, /* 82: 0100 1000 1000 0010 */ 1168 {LDEAX_H, 2,14,11,L0|L1}, /* 83: 0100 1000 1000 0011 */ 1169 {LDEAX_Dp, 2,14,11,L0|L1}, /* 84: 0100 1000 1000 0100 */ 1170 {LDEAX_Hp, 2,14,11,L0|L1}, /* 85: 0100 1000 1000 0101 */ 1171 {illegal2, 2, 8, 8,L0|L1}, /* 86: 0100 1000 1000 0110 */ 1172 {illegal2, 2, 8, 8,L0|L1}, /* 87: 0100 1000 1000 0111 */ 1173 {illegal2, 2, 8, 8,L0|L1}, /* 88: 0100 1000 1000 1000 */ 1174 {illegal2, 2, 8, 8,L0|L1}, /* 89: 0100 1000 1000 1001 */ 1175 {illegal2, 2, 8, 8,L0|L1}, /* 8a: 0100 1000 1000 1010 */ 1176 {LDEAX_D_xx, 3,20,20,L0|L1}, /* 8b: 0100 1000 1000 1011 xxxx xxxx */ 1177 {LDEAX_H_A, 2,20,20,L0|L1}, /* 8c: 0100 1000 1000 1100 */ 1178 {LDEAX_H_B, 2,20,20,L0|L1}, /* 8d: 0100 1000 1000 1101 */ 1179 {LDEAX_H_EA, 2,20,20,L0|L1}, /* 8e: 0100 1000 1000 1110 */ 1180 {LDEAX_H_xx, 3,20,20,L0|L1}, /* 8f: 0100 1000 1000 1111 xxxx xxxx */ 1181 1182 {illegal2, 2, 8, 8,L0|L1}, /* 90: 0100 1000 1000 0000 */ 1183 {illegal2, 2, 8, 8,L0|L1}, /* 91: 0100 1000 1000 0001 */ 1184 {STEAX_D, 2,14,11,L0|L1}, /* 92: 0100 1000 1000 0010 */ 1185 {STEAX_H, 2,14,11,L0|L1}, /* 93: 0100 1000 1000 0011 */ 1186 {STEAX_Dp, 2,14,11,L0|L1}, /* 94: 0100 1000 1000 0100 */ 1187 {STEAX_Hp, 2,14,11,L0|L1}, /* 95: 0100 1000 1000 0101 */ 1188 {illegal2, 2, 8, 8,L0|L1}, /* 96: 0100 1000 1000 0110 */ 1189 {illegal2, 2, 8, 8,L0|L1}, /* 97: 0100 1000 1000 0111 */ 1190 {illegal2, 2, 8, 8,L0|L1}, /* 98: 0100 1000 1000 1000 */ 1191 {illegal2, 2, 8, 8,L0|L1}, /* 99: 0100 1000 1000 1001 */ 1192 {illegal2, 2, 8, 8,L0|L1}, /* 9a: 0100 1000 1000 1010 */ 1193 {STEAX_D_xx, 3,20,20,L0|L1}, /* 9b: 0100 1000 1000 1011 xxxx xxxx */ 1194 {STEAX_H_A, 2,20,20,L0|L1}, /* 9c: 0100 1000 1000 1100 */ 1195 {STEAX_H_B, 2,20,20,L0|L1}, /* 9d: 0100 1000 1000 1101 */ 1196 {STEAX_H_EA, 2,20,20,L0|L1}, /* 9e: 0100 1000 1000 1110 */ 1197 {STEAX_H_xx, 3,20,20,L0|L1}, /* 9f: 0100 1000 1000 1111 xxxx xxxx */ 1198 1199 {DSLR_EA, 2, 8, 8,L0|L1}, /* a0: 0100 1000 1010 0000 */ 1200 {illegal2, 2, 8, 8,L0|L1}, /* a1: 0100 1000 1010 0001 */ 1201 {illegal2, 2, 8, 8,L0|L1}, /* a2: 0100 1000 1010 0010 */ 1202 {illegal2, 2, 8, 8,L0|L1}, /* a3: 0100 1000 1010 0011 */ 1203 {DSLL_EA, 2, 8, 8,L0|L1}, /* a4: 0100 1000 1010 0100 */ 1204 {illegal2, 2, 8, 8,L0|L1}, /* a5: 0100 1000 1010 0101 */ 1205 {illegal2, 2, 8, 8,L0|L1}, /* a6: 0100 1000 1010 0110 */ 1206 {illegal2, 2, 8, 8,L0|L1}, /* a7: 0100 1000 1010 0111 */ 1207 {TABLE, 2,17,17,L0|L1}, /* a8: 0100 1000 1010 1000 */ 1208 {illegal2, 2, 8, 8,L0|L1}, /* a9: 0100 1000 1010 1001 */ 1209 {illegal2, 2, 8, 8,L0|L1}, /* aa: 0100 1000 1010 1010 */ 1210 {illegal2, 2, 8, 8,L0|L1}, /* ab: 0100 1000 1010 1011 */ 1211 // {illegal2, 2, 8, 8,L0|L1}, /* ac: 0100 1000 1010 1100 */ 1212 // {illegal2, 2, 8, 8,L0|L1}, /* ad: 0100 1000 1010 1101 */ 1213 // {illegal2, 2, 8, 8,L0|L1}, /* ae: 0100 1000 1010 1110 */ 1214 // {illegal2, 2, 8, 8,L0|L1}, /* af: 0100 1000 1010 1111 */ 1215 {EXA, 2, 8, 8,L0|L1}, /* ac: 0100 1000 1010 1100 */ /* 7807 */ 1216 {EXR, 2, 8, 8,L0|L1}, /* ad: 0100 1000 1010 1101 */ /* 7807 */ 1217 {EXH, 2, 8, 8,L0|L1}, /* ae: 0100 1000 1010 1110 */ /* 7807 */ 1218 {EXX, 2, 8, 8,L0|L1}, /* af: 0100 1000 1010 1111 */ /* 7807 */ 1219 {DRLR_EA, 2, 8, 8,L0|L1}, /* b0: 0100 1000 1011 0000 */ 1220 {illegal2, 2, 8, 8,L0|L1}, /* b1: 0100 1000 1011 0001 */ 1221 {illegal2, 2, 8, 8,L0|L1}, /* b2: 0100 1000 1011 0010 */ 1222 {illegal2, 2, 8, 8,L0|L1}, /* b3: 0100 1000 1011 0011 */ 1223 {DRLL_EA, 2, 8, 8,L0|L1}, /* b4: 0100 1000 1011 0100 */ 1224 {illegal2, 2, 8, 8,L0|L1}, /* b5: 0100 1000 1011 0101 */ 1225 {illegal2, 2, 8, 8,L0|L1}, /* b6: 0100 1000 1011 0110 */ 1226 {illegal2, 2, 8, 8,L0|L1}, /* b7: 0100 1000 1011 0111 */ 1227 {illegal2, 2, 8, 8,L0|L1}, /* b8: 0100 1000 1011 1000 */ 1228 {illegal2, 2, 8, 8,L0|L1}, /* b9: 0100 1000 1011 1001 */ 1229 {illegal2, 2, 8, 8,L0|L1}, /* ba: 0100 1000 1011 1010 */ 1230 {STOP, 2,12,12,L0|L1}, /* bb: 0100 1000 1011 1011 */ 1231 {illegal2, 2, 8, 8,L0|L1}, /* bc: 0100 1000 1011 1100 */ 1232 {illegal2, 2, 8, 8,L0|L1}, /* bd: 0100 1000 1011 1101 */ 1233 {illegal2, 2, 8, 8,L0|L1}, /* be: 0100 1000 1011 1110 */ 1234 {illegal2, 2, 8, 8,L0|L1}, /* bf: 0100 1000 1011 1111 */ 1235 1236 {DMOV_EA_ECNT, 2,14,11,L0|L1}, /* c0: 0100 1000 1100 0000 */ 1237 {DMOV_EA_ECPT, 2,14,11,L0|L1}, /* c1: 0100 1000 1100 0001 */ 1238 {illegal2, 2, 8, 8,L0|L1}, /* c2: 0100 1000 1100 0010 */ 1239 {illegal2, 2, 8, 8,L0|L1}, /* c3: 0100 1000 1100 0011 */ 1240 {illegal2, 2, 8, 8,L0|L1}, /* c4: 0100 1000 1100 0100 */ 1241 {illegal2, 2, 8, 8,L0|L1}, /* c5: 0100 1000 1100 0101 */ 1242 {illegal2, 2, 8, 8,L0|L1}, /* c6: 0100 1000 1100 0110 */ 1243 {illegal2, 2, 8, 8,L0|L1}, /* c7: 0100 1000 1100 0111 */ 1244 {illegal2, 2, 8, 8,L0|L1}, /* c8: 0100 1000 1100 1000 */ 1245 {illegal2, 2, 8, 8,L0|L1}, /* c9: 0100 1000 1100 1001 */ 1246 {illegal2, 2, 8, 8,L0|L1}, /* ca: 0100 1000 1100 1010 */ 1247 {illegal2, 2, 8, 8,L0|L1}, /* cb: 0100 1000 1100 1011 */ 1248 {illegal2, 2, 8, 8,L0|L1}, /* cc: 0100 1000 1100 1100 */ 1249 {illegal2, 2, 8, 8,L0|L1}, /* cd: 0100 1000 1100 1101 */ 1250 {illegal2, 2, 8, 8,L0|L1}, /* ce: 0100 1000 1100 1110 */ 1251 {illegal2, 2, 8, 8,L0|L1}, /* cf: 0100 1000 1100 1111 */ 1252 1253 {illegal2, 2, 8, 8,L0|L1}, /* d0: 0100 1000 1101 0000 */ 1254 {illegal2, 2, 8, 8,L0|L1}, /* d1: 0100 1000 1101 0001 */ 1255 {DMOV_ETM0_EA, 2,14,11,L0|L1}, /* d2: 0100 1000 1101 0010 */ 1256 {DMOV_ETM1_EA, 2,14,11,L0|L1}, /* d3: 0100 1000 1101 0011 */ 1257 {illegal2, 2, 8, 8,L0|L1}, /* d4: 0100 1000 1101 0100 */ 1258 {illegal2, 2, 8, 8,L0|L1}, /* d5: 0100 1000 1101 0101 */ 1259 {illegal2, 2, 8, 8,L0|L1}, /* d6: 0100 1000 1101 0110 */ 1260 {illegal2, 2, 8, 8,L0|L1}, /* d7: 0100 1000 1101 0111 */ 1261 {illegal2, 2, 8, 8,L0|L1}, /* d8: 0100 1000 1101 1000 */ 1262 {illegal2, 2, 8, 8,L0|L1}, /* d9: 0100 1000 1101 1001 */ 1263 {illegal2, 2, 8, 8,L0|L1}, /* da: 0100 1000 1101 1010 */ 1264 {illegal2, 2, 8, 8,L0|L1}, /* db: 0100 1000 1101 1011 */ 1265 {illegal2, 2, 8, 8,L0|L1}, /* dc: 0100 1000 1101 1100 */ 1266 {illegal2, 2, 8, 8,L0|L1}, /* dd: 0100 1000 1101 1101 */ 1267 {illegal2, 2, 8, 8,L0|L1}, /* de: 0100 1000 1101 1110 */ 1268 {illegal2, 2, 8, 8,L0|L1}, /* df: 0100 1000 1101 1111 */ 1269 1270 {illegal2, 2, 8, 8,L0|L1}, /* e0: 0100 1000 1110 0000 */ 1271 {illegal2, 2, 8, 8,L0|L1}, /* e1: 0100 1000 1110 0001 */ 1272 {illegal2, 2, 8, 8,L0|L1}, /* e2: 0100 1000 1110 0010 */ 1273 {illegal2, 2, 8, 8,L0|L1}, /* e3: 0100 1000 1110 0011 */ 1274 {illegal2, 2, 8, 8,L0|L1}, /* e4: 0100 1000 1110 0100 */ 1275 {illegal2, 2, 8, 8,L0|L1}, /* e5: 0100 1000 1110 0101 */ 1276 {illegal2, 2, 8, 8,L0|L1}, /* e6: 0100 1000 1110 0110 */ 1277 {illegal2, 2, 8, 8,L0|L1}, /* e7: 0100 1000 1110 0111 */ 1278 {illegal2, 2, 8, 8,L0|L1}, /* e8: 0100 1000 1110 1000 */ 1279 {illegal2, 2, 8, 8,L0|L1}, /* e9: 0100 1000 1110 1001 */ 1280 {illegal2, 2, 8, 8,L0|L1}, /* ea: 0100 1000 1110 1010 */ 1281 {illegal2, 2, 8, 8,L0|L1}, /* eb: 0100 1000 1110 1011 */ 1282 {illegal2, 2, 8, 8,L0|L1}, /* ec: 0100 1000 1110 1100 */ 1283 {illegal2, 2, 8, 8,L0|L1}, /* ed: 0100 1000 1110 1101 */ 1284 {illegal2, 2, 8, 8,L0|L1}, /* ee: 0100 1000 1110 1110 */ 1285 {illegal2, 2, 8, 8,L0|L1}, /* ef: 0100 1000 1110 1111 */ 1286 1287 {illegal2, 2, 8, 8,L0|L1}, /* f0: 0100 1000 1111 0000 */ 1288 {illegal2, 2, 8, 8,L0|L1}, /* f1: 0100 1000 1111 0001 */ 1289 {illegal2, 2, 8, 8,L0|L1}, /* f2: 0100 1000 1111 0010 */ 1290 {illegal2, 2, 8, 8,L0|L1}, /* f3: 0100 1000 1111 0011 */ 1291 {illegal2, 2, 8, 8,L0|L1}, /* f4: 0100 1000 1111 0100 */ 1292 {illegal2, 2, 8, 8,L0|L1}, /* f5: 0100 1000 1111 0101 */ 1293 {illegal2, 2, 8, 8,L0|L1}, /* f6: 0100 1000 1111 0110 */ 1294 {illegal2, 2, 8, 8,L0|L1}, /* f7: 0100 1000 1111 0111 */ 1295 {illegal2, 2, 8, 8,L0|L1}, /* f8: 0100 1000 1111 1000 */ 1296 {illegal2, 2, 8, 8,L0|L1}, /* f9: 0100 1000 1111 1001 */ 1297 {illegal2, 2, 8, 8,L0|L1}, /* fa: 0100 1000 1111 1010 */ 1298 {illegal2, 2, 8, 8,L0|L1}, /* fb: 0100 1000 1111 1011 */ 1299 {illegal2, 2, 8, 8,L0|L1}, /* fc: 0100 1000 1111 1100 */ 1300 {illegal2, 2, 8, 8,L0|L1}, /* fd: 0100 1000 1111 1101 */ 1301 {illegal2, 2, 8, 8,L0|L1}, /* fe: 0100 1000 1111 1110 */ 1302 {illegal2, 2, 8, 8,L0|L1} /* ff: 0100 1000 1111 1111 */ 1303 }; 1304 1305 /* prefix 4C */ 1306 static struct opcode_s op4C[256] = 1307 { 1308 {illegal2, 2, 8, 8,L0|L1}, /* 00: 0100 1100 0000 0000 */ 1309 {illegal2, 2, 8, 8,L0|L1}, /* 01: 0100 1100 0000 0001 */ 1310 {illegal2, 2, 8, 8,L0|L1}, /* 02: 0100 1100 0000 0010 */ 1311 {illegal2, 2, 8, 8,L0|L1}, /* 03: 0100 1100 0000 0011 */ 1312 {illegal2, 2, 8, 8,L0|L1}, /* 04: 0100 1100 0000 0100 */ 1313 {illegal2, 2, 8, 8,L0|L1}, /* 05: 0100 1100 0000 0101 */ 1314 {illegal2, 2, 8, 8,L0|L1}, /* 06: 0100 1100 0000 0110 */ 1315 {illegal2, 2, 8, 8,L0|L1}, /* 07: 0100 1100 0000 0111 */ 1316 {illegal2, 2, 8, 8,L0|L1}, /* 08: 0100 1100 0000 1000 */ 1317 {illegal2, 2, 8, 8,L0|L1}, /* 09: 0100 1100 0000 1001 */ 1318 {illegal2, 2, 8, 8,L0|L1}, /* 0a: 0100 1100 0000 1010 */ 1319 {illegal2, 2, 8, 8,L0|L1}, /* 0b: 0100 1100 0000 1011 */ 1320 {illegal2, 2, 8, 8,L0|L1}, /* 0c: 0100 1100 0000 1100 */ 1321 {illegal2, 2, 8, 8,L0|L1}, /* 0d: 0100 1100 0000 1101 */ 1322 {illegal2, 2, 8, 8,L0|L1}, /* 0e: 0100 1100 0000 1110 */ 1323 {illegal2, 2, 8, 8,L0|L1}, /* 0f: 0100 1100 0000 1111 */ 1324 1325 {illegal2, 2, 8, 8,L0|L1}, /* 10: 0100 1100 0001 0000 */ 1326 {illegal2, 2, 8, 8,L0|L1}, /* 11: 0100 1100 0001 0001 */ 1327 {illegal2, 2, 8, 8,L0|L1}, /* 12: 0100 1100 0001 0010 */ 1328 {illegal2, 2, 8, 8,L0|L1}, /* 13: 0100 1100 0001 0011 */ 1329 {illegal2, 2, 8, 8,L0|L1}, /* 14: 0100 1100 0001 0100 */ 1330 {illegal2, 2, 8, 8,L0|L1}, /* 15: 0100 1100 0001 0101 */ 1331 {illegal2, 2, 8, 8,L0|L1}, /* 16: 0100 1100 0001 0110 */ 1332 {illegal2, 2, 8, 8,L0|L1}, /* 17: 0100 1100 0001 0111 */ 1333 {illegal2, 2, 8, 8,L0|L1}, /* 18: 0100 1100 0001 1000 */ 1334 {illegal2, 2, 8, 8,L0|L1}, /* 19: 0100 1100 0001 1001 */ 1335 {illegal2, 2, 8, 8,L0|L1}, /* 1a: 0100 1100 0001 1010 */ 1336 {illegal2, 2, 8, 8,L0|L1}, /* 1b: 0100 1100 0001 1011 */ 1337 {illegal2, 2, 8, 8,L0|L1}, /* 1c: 0100 1100 0001 1100 */ 1338 {illegal2, 2, 8, 8,L0|L1}, /* 1d: 0100 1100 0001 1101 */ 1339 {illegal2, 2, 8, 8,L0|L1}, /* 1e: 0100 1100 0001 1110 */ 1340 {illegal2, 2, 8, 8,L0|L1}, /* 1f: 0100 1100 0001 1111 */ 1341 1342 {illegal2, 2, 8, 8,L0|L1}, /* 20: 0100 1100 0010 0000 */ 1343 {illegal2, 2, 8, 8,L0|L1}, /* 21: 0100 1100 0010 0001 */ 1344 {illegal2, 2, 8, 8,L0|L1}, /* 22: 0100 1100 0010 0010 */ 1345 {illegal2, 2, 8, 8,L0|L1}, /* 23: 0100 1100 0010 0011 */ 1346 {illegal2, 2, 8, 8,L0|L1}, /* 24: 0100 1100 0010 0100 */ 1347 {illegal2, 2, 8, 8,L0|L1}, /* 25: 0100 1100 0010 0101 */ 1348 {illegal2, 2, 8, 8,L0|L1}, /* 26: 0100 1100 0010 0110 */ 1349 {illegal2, 2, 8, 8,L0|L1}, /* 27: 0100 1100 0010 0111 */ 1350 {illegal2, 2, 8, 8,L0|L1}, /* 28: 0100 1100 0010 1000 */ 1351 {illegal2, 2, 8, 8,L0|L1}, /* 29: 0100 1100 0010 1001 */ 1352 {illegal2, 2, 8, 8,L0|L1}, /* 2a: 0100 1100 0010 1010 */ 1353 {illegal2, 2, 8, 8,L0|L1}, /* 2b: 0100 1100 0010 1011 */ 1354 {illegal2, 2, 8, 8,L0|L1}, /* 2c: 0100 1100 0010 1100 */ 1355 {illegal2, 2, 8, 8,L0|L1}, /* 2d: 0100 1100 0010 1101 */ 1356 {illegal2, 2, 8, 8,L0|L1}, /* 2e: 0100 1100 0010 1110 */ 1357 {illegal2, 2, 8, 8,L0|L1}, /* 2f: 0100 1100 0010 1111 */ 1358 1359 {illegal2, 2, 8, 8,L0|L1}, /* 30: 0100 1100 0011 0000 */ 1360 {illegal2, 2, 8, 8,L0|L1}, /* 31: 0100 1100 0011 0001 */ 1361 {illegal2, 2, 8, 8,L0|L1}, /* 32: 0100 1100 0011 0010 */ 1362 {illegal2, 2, 8, 8,L0|L1}, /* 33: 0100 1100 0011 0011 */ 1363 {illegal2, 2, 8, 8,L0|L1}, /* 34: 0100 1100 0011 0100 */ 1364 {illegal2, 2, 8, 8,L0|L1}, /* 35: 0100 1100 0011 0101 */ 1365 {illegal2, 2, 8, 8,L0|L1}, /* 36: 0100 1100 0011 0110 */ 1366 {illegal2, 2, 8, 8,L0|L1}, /* 37: 0100 1100 0011 0111 */ 1367 {illegal2, 2, 8, 8,L0|L1}, /* 38: 0100 1100 0011 1000 */ 1368 {illegal2, 2, 8, 8,L0|L1}, /* 39: 0100 1100 0011 1001 */ 1369 {illegal2, 2, 8, 8,L0|L1}, /* 3a: 0100 1100 0011 1010 */ 1370 {illegal2, 2, 8, 8,L0|L1}, /* 3b: 0100 1100 0011 1011 */ 1371 {illegal2, 2, 8, 8,L0|L1}, /* 3c: 0100 1100 0011 1100 */ 1372 {illegal2, 2, 8, 8,L0|L1}, /* 3d: 0100 1100 0011 1101 */ 1373 {illegal2, 2, 8, 8,L0|L1}, /* 3e: 0100 1100 0011 1110 */ 1374 {illegal2, 2, 8, 8,L0|L1}, /* 3f: 0100 1100 0011 1111 */ 1375 1376 {illegal2, 2, 8, 8,L0|L1}, /* 40: 0100 1100 0100 0000 */ 1377 {illegal2, 2, 8, 8,L0|L1}, /* 41: 0100 1100 0100 0001 */ 1378 {illegal2, 2, 8, 8,L0|L1}, /* 42: 0100 1100 0100 0010 */ 1379 {illegal2, 2, 8, 8,L0|L1}, /* 43: 0100 1100 0100 0011 */ 1380 {illegal2, 2, 8, 8,L0|L1}, /* 44: 0100 1100 0100 0100 */ 1381 {illegal2, 2, 8, 8,L0|L1}, /* 45: 0100 1100 0100 0101 */ 1382 {illegal2, 2, 8, 8,L0|L1}, /* 46: 0100 1100 0100 0110 */ 1383 {illegal2, 2, 8, 8,L0|L1}, /* 47: 0100 1100 0100 0111 */ 1384 {illegal2, 2, 8, 8,L0|L1}, /* 48: 0100 1100 0100 1000 */ 1385 {illegal2, 2, 8, 8,L0|L1}, /* 49: 0100 1100 0100 1001 */ 1386 {illegal2, 2, 8, 8,L0|L1}, /* 4a: 0100 1100 0100 1010 */ 1387 {illegal2, 2, 8, 8,L0|L1}, /* 4b: 0100 1100 0100 1011 */ 1388 {illegal2, 2, 8, 8,L0|L1}, /* 4c: 0100 1100 0100 1100 */ 1389 {illegal2, 2, 8, 8,L0|L1}, /* 4d: 0100 1100 0100 1101 */ 1390 {illegal2, 2, 8, 8,L0|L1}, /* 4e: 0100 1100 0100 1110 */ 1391 {illegal2, 2, 8, 8,L0|L1}, /* 4f: 0100 1100 0100 1111 */ 1392 1393 {illegal2, 2, 8, 8,L0|L1}, /* 50: 0100 1100 0101 0000 */ 1394 {illegal2, 2, 8, 8,L0|L1}, /* 51: 0100 1100 0101 0001 */ 1395 {illegal2, 2, 8, 8,L0|L1}, /* 52: 0100 1100 0101 0010 */ 1396 {illegal2, 2, 8, 8,L0|L1}, /* 53: 0100 1100 0101 0011 */ 1397 {illegal2, 2, 8, 8,L0|L1}, /* 54: 0100 1100 0101 0100 */ 1398 {illegal2, 2, 8, 8,L0|L1}, /* 55: 0100 1100 0101 0101 */ 1399 {illegal2, 2, 8, 8,L0|L1}, /* 56: 0100 1100 0101 0110 */ 1400 {illegal2, 2, 8, 8,L0|L1}, /* 57: 0100 1100 0101 0111 */ 1401 {illegal2, 2, 8, 8,L0|L1}, /* 58: 0100 1100 0101 1000 */ 1402 {illegal2, 2, 8, 8,L0|L1}, /* 59: 0100 1100 0101 1001 */ 1403 {illegal2, 2, 8, 8,L0|L1}, /* 5a: 0100 1100 0101 1010 */ 1404 {illegal2, 2, 8, 8,L0|L1}, /* 5b: 0100 1100 0101 1011 */ 1405 {illegal2, 2, 8, 8,L0|L1}, /* 5c: 0100 1100 0101 1100 */ 1406 {illegal2, 2, 8, 8,L0|L1}, /* 5d: 0100 1100 0101 1101 */ 1407 {illegal2, 2, 8, 8,L0|L1}, /* 5e: 0100 1100 0101 1110 */ 1408 {illegal2, 2, 8, 8,L0|L1}, /* 5f: 0100 1100 0101 1111 */ 1409 1410 {illegal2, 2, 8, 8,L0|L1}, /* 60: 0100 1100 0110 0000 */ 1411 {illegal2, 2, 8, 8,L0|L1}, /* 61: 0100 1100 0110 0001 */ 1412 {illegal2, 2, 8, 8,L0|L1}, /* 62: 0100 1100 0110 0010 */ 1413 {illegal2, 2, 8, 8,L0|L1}, /* 63: 0100 1100 0110 0011 */ 1414 {illegal2, 2, 8, 8,L0|L1}, /* 64: 0100 1100 0110 0100 */ 1415 {illegal2, 2, 8, 8,L0|L1}, /* 65: 0100 1100 0110 0101 */ 1416 {illegal2, 2, 8, 8,L0|L1}, /* 66: 0100 1100 0110 0110 */ 1417 {illegal2, 2, 8, 8,L0|L1}, /* 67: 0100 1100 0110 0111 */ 1418 {illegal2, 2, 8, 8,L0|L1}, /* 68: 0100 1100 0110 1000 */ 1419 {illegal2, 2, 8, 8,L0|L1}, /* 69: 0100 1100 0110 1001 */ 1420 {illegal2, 2, 8, 8,L0|L1}, /* 6a: 0100 1100 0110 1010 */ 1421 {illegal2, 2, 8, 8,L0|L1}, /* 6b: 0100 1100 0110 1011 */ 1422 {illegal2, 2, 8, 8,L0|L1}, /* 6c: 0100 1100 0110 1100 */ 1423 {illegal2, 2, 8, 8,L0|L1}, /* 6d: 0100 1100 0110 1101 */ 1424 {illegal2, 2, 8, 8,L0|L1}, /* 6e: 0100 1100 0110 1110 */ 1425 {illegal2, 2, 8, 8,L0|L1}, /* 6f: 0100 1100 0110 1111 */ 1426 1427 {illegal2, 2, 8, 8,L0|L1}, /* 70: 0100 1100 0111 0000 */ 1428 {illegal2, 2, 8, 8,L0|L1}, /* 71: 0100 1100 0111 0001 */ 1429 {illegal2, 2, 8, 8,L0|L1}, /* 72: 0100 1100 0111 0010 */ 1430 {illegal2, 2, 8, 8,L0|L1}, /* 73: 0100 1100 0111 0011 */ 1431 {illegal2, 2, 8, 8,L0|L1}, /* 74: 0100 1100 0111 0100 */ 1432 {illegal2, 2, 8, 8,L0|L1}, /* 75: 0100 1100 0111 0101 */ 1433 {illegal2, 2, 8, 8,L0|L1}, /* 76: 0100 1100 0111 0110 */ 1434 {illegal2, 2, 8, 8,L0|L1}, /* 77: 0100 1100 0111 0111 */ 1435 {illegal2, 2, 8, 8,L0|L1}, /* 78: 0100 1100 0111 1000 */ 1436 {illegal2, 2, 8, 8,L0|L1}, /* 79: 0100 1100 0111 1001 */ 1437 {illegal2, 2, 8, 8,L0|L1}, /* 7a: 0100 1100 0111 1010 */ 1438 {illegal2, 2, 8, 8,L0|L1}, /* 7b: 0100 1100 0111 1011 */ 1439 {illegal2, 2, 8, 8,L0|L1}, /* 7c: 0100 1100 0111 1100 */ 1440 {illegal2, 2, 8, 8,L0|L1}, /* 7d: 0100 1100 0111 1101 */ 1441 {illegal2, 2, 8, 8,L0|L1}, /* 7e: 0100 1100 0111 1110 */ 1442 {illegal2, 2, 8, 8,L0|L1}, /* 7f: 0100 1100 0111 1111 */ 1443 1444 {illegal2, 2, 8, 8,L0|L1}, /* 80: 0100 1100 1000 0000 */ 1445 {illegal2, 2, 8, 8,L0|L1}, /* 81: 0100 1100 1000 0001 */ 1446 {illegal2, 2, 8, 8,L0|L1}, /* 82: 0100 1100 1000 0010 */ 1447 {illegal2, 2, 8, 8,L0|L1}, /* 83: 0100 1100 1000 0011 */ 1448 {illegal2, 2, 8, 8,L0|L1}, /* 84: 0100 1100 1000 0100 */ 1449 {illegal2, 2, 8, 8,L0|L1}, /* 85: 0100 1100 1000 0101 */ 1450 {illegal2, 2, 8, 8,L0|L1}, /* 86: 0100 1100 1000 0110 */ 1451 {illegal2, 2, 8, 8,L0|L1}, /* 87: 0100 1100 1000 0111 */ 1452 {illegal2, 2, 8, 8,L0|L1}, /* 88: 0100 1100 1000 1000 */ 1453 {illegal2, 2, 8, 8,L0|L1}, /* 89: 0100 1100 1000 1001 */ 1454 {illegal2, 2, 8, 8,L0|L1}, /* 8a: 0100 1100 1000 1010 */ 1455 {illegal2, 2, 8, 8,L0|L1}, /* 8b: 0100 1100 1000 1011 */ 1456 {illegal2, 2, 8, 8,L0|L1}, /* 8c: 0100 1100 1000 1100 */ 1457 {illegal2, 2, 8, 8,L0|L1}, /* 8d: 0100 1100 1000 1101 */ 1458 {illegal2, 2, 8, 8,L0|L1}, /* 8e: 0100 1100 1000 1110 */ 1459 {illegal2, 2, 8, 8,L0|L1}, /* 8f: 0100 1100 1000 1111 */ 1460 1461 {illegal2, 2, 8, 8,L0|L1}, /* 90: 0100 1100 1001 0000 */ 1462 {illegal2, 2, 8, 8,L0|L1}, /* 91: 0100 1100 1001 0001 */ 1463 {illegal2, 2, 8, 8,L0|L1}, /* 92: 0100 1100 1001 0010 */ 1464 {illegal2, 2, 8, 8,L0|L1}, /* 93: 0100 1100 1001 0011 */ 1465 {illegal2, 2, 8, 8,L0|L1}, /* 94: 0100 1100 1001 0100 */ 1466 {illegal2, 2, 8, 8,L0|L1}, /* 95: 0100 1100 1001 0101 */ 1467 {illegal2, 2, 8, 8,L0|L1}, /* 96: 0100 1100 1001 0110 */ 1468 {illegal2, 2, 8, 8,L0|L1}, /* 97: 0100 1100 1001 0111 */ 1469 {illegal2, 2, 8, 8,L0|L1}, /* 98: 0100 1100 1001 1000 */ 1470 {illegal2, 2, 8, 8,L0|L1}, /* 99: 0100 1100 1001 1001 */ 1471 {illegal2, 2, 8, 8,L0|L1}, /* 9a: 0100 1100 1001 1010 */ 1472 {illegal2, 2, 8, 8,L0|L1}, /* 9b: 0100 1100 1001 1011 */ 1473 {illegal2, 2, 8, 8,L0|L1}, /* 9c: 0100 1100 1001 1100 */ 1474 {illegal2, 2, 8, 8,L0|L1}, /* 9d: 0100 1100 1001 1101 */ 1475 {illegal2, 2, 8, 8,L0|L1}, /* 9e: 0100 1100 1001 1110 */ 1476 {illegal2, 2, 8, 8,L0|L1}, /* 9f: 0100 1100 1001 1111 */ 1477 1478 {illegal2, 2, 8, 8,L0|L1}, /* a0: 0100 1100 1010 0000 */ 1479 {illegal2, 2, 8, 8,L0|L1}, /* a1: 0100 1100 1010 0001 */ 1480 {illegal2, 2, 8, 8,L0|L1}, /* a2: 0100 1100 1010 0010 */ 1481 {illegal2, 2, 8, 8,L0|L1}, /* a3: 0100 1100 1010 0011 */ 1482 {illegal2, 2, 8, 8,L0|L1}, /* a4: 0100 1100 1010 0100 */ 1483 {illegal2, 2, 8, 8,L0|L1}, /* a5: 0100 1100 1010 0101 */ 1484 {illegal2, 2, 8, 8,L0|L1}, /* a6: 0100 1100 1010 0110 */ 1485 {illegal2, 2, 8, 8,L0|L1}, /* a7: 0100 1100 1010 0111 */ 1486 {illegal2, 2, 8, 8,L0|L1}, /* a8: 0100 1100 1010 1000 */ 1487 {illegal2, 2, 8, 8,L0|L1}, /* a9: 0100 1100 1010 1001 */ 1488 {illegal2, 2, 8, 8,L0|L1}, /* aa: 0100 1100 1010 1010 */ 1489 {illegal2, 2, 8, 8,L0|L1}, /* ab: 0100 1100 1010 1011 */ 1490 {illegal2, 2, 8, 8,L0|L1}, /* ac: 0100 1100 1010 1100 */ 1491 {illegal2, 2, 8, 8,L0|L1}, /* ad: 0100 1100 1010 1101 */ 1492 {illegal2, 2, 8, 8,L0|L1}, /* ae: 0100 1100 1010 1110 */ 1493 {illegal2, 2, 8, 8,L0|L1}, /* af: 0100 1100 1010 1111 */ 1494 1495 {illegal2, 2, 8, 8,L0|L1}, /* b0: 0100 1100 1011 0000 */ 1496 {illegal2, 2, 8, 8,L0|L1}, /* b1: 0100 1100 1011 0001 */ 1497 {illegal2, 2, 8, 8,L0|L1}, /* b2: 0100 1100 1011 0010 */ 1498 {illegal2, 2, 8, 8,L0|L1}, /* b3: 0100 1100 1011 0011 */ 1499 {illegal2, 2, 8, 8,L0|L1}, /* b4: 0100 1100 1011 0100 */ 1500 {illegal2, 2, 8, 8,L0|L1}, /* b5: 0100 1100 1011 0101 */ 1501 {illegal2, 2, 8, 8,L0|L1}, /* b6: 0100 1100 1011 0110 */ 1502 {illegal2, 2, 8, 8,L0|L1}, /* b7: 0100 1100 1011 0111 */ 1503 {illegal2, 2, 8, 8,L0|L1}, /* b8: 0100 1100 1011 1000 */ 1504 {illegal2, 2, 8, 8,L0|L1}, /* b9: 0100 1100 1011 1001 */ 1505 {illegal2, 2, 8, 8,L0|L1}, /* ba: 0100 1100 1011 1010 */ 1506 {illegal2, 2, 8, 8,L0|L1}, /* bb: 0100 1100 1011 1011 */ 1507 {illegal2, 2, 8, 8,L0|L1}, /* bc: 0100 1100 1011 1100 */ 1508 {illegal2, 2, 8, 8,L0|L1}, /* bd: 0100 1100 1011 1101 */ 1509 {illegal2, 2, 8, 8,L0|L1}, /* be: 0100 1100 1011 1110 */ 1510 {illegal2, 2, 8, 8,L0|L1}, /* bf: 0100 1100 1011 1111 */ 1511 1512 {MOV_A_PA, 2,10,10,L0|L1}, /* c0: 0100 1100 1100 0000 */ 1513 {MOV_A_PB, 2,10,10,L0|L1}, /* c1: 0100 1100 1100 0001 */ 1514 {MOV_A_PC, 2,10,10,L0|L1}, /* c2: 0100 1100 1100 0010 */ 1515 {MOV_A_PD, 2,10,10,L0|L1}, /* c3: 0100 1100 1100 0011 */ 1516 {illegal2, 2,10,10,L0|L1}, /* c4: 0100 1100 1100 0100 */ 1517 {MOV_A_PF, 2,10,10,L0|L1}, /* c5: 0100 1100 1100 0101 */ 1518 {MOV_A_MKH, 2,10,10,L0|L1}, /* c6: 0100 1100 1100 0110 */ 1519 {MOV_A_MKL, 2,10,10,L0|L1}, /* c7: 0100 1100 1100 0111 */ 1520 {MOV_A_ANM, 2,10,10,L0|L1}, /* c8: 0100 1100 1100 1000 */ 1521 {MOV_A_SMH, 2,10,10,L0|L1}, /* c9: 0100 1100 1100 1001 */ 1522 {illegal2, 2,10,10,L0|L1}, /* ca: 0100 1100 1100 1010 */ 1523 {MOV_A_EOM, 2,10,10,L0|L1}, /* cb: 0100 1100 1100 1011 */ 1524 {illegal2, 2,10,10,L0|L1}, /* cc: 0100 1100 1100 1100 */ 1525 {MOV_A_TMM, 2,10,10,L0|L1}, /* cd: 0100 1100 1100 1101 */ 1526 // {illegal2, 2,10,10,L0|L1}, /* ce: 0100 1100 1100 1110 */ 1527 {MOV_A_PT, 2,10,10,L0|L1}, /* ce: 0100 1100 1100 1110 */ /* 7807 */ 1528 {illegal2, 2,10,10,L0|L1}, /* cf: 0100 1100 1100 1111 */ 1529 1530 {illegal2, 2,10,10,L0|L1}, /* d0: 0100 1100 1101 0000 */ 1531 {illegal2, 2,10,10,L0|L1}, /* d1: 0100 1100 1101 0001 */ 1532 {illegal2, 2,10,10,L0|L1}, /* d2: 0100 1100 1101 0010 */ 1533 {illegal2, 2,10,10,L0|L1}, /* d3: 0100 1100 1101 0011 */ 1534 {illegal2, 2,10,10,L0|L1}, /* d4: 0100 1100 1101 0100 */ 1535 {illegal2, 2,10,10,L0|L1}, /* d5: 0100 1100 1101 0101 */ 1536 {illegal2, 2,10,10,L0|L1}, /* d6: 0100 1100 1101 0110 */ 1537 {illegal2, 2,10,10,L0|L1}, /* d7: 0100 1100 1101 0111 */ 1538 {illegal2, 2,10,10,L0|L1}, /* d8: 0100 1100 1101 1000 */ 1539 {MOV_A_RXB, 2,10,10,L0|L1}, /* d9: 0100 1100 1101 1001 */ 1540 {illegal2, 2,10,10,L0|L1}, /* da: 0100 1100 1101 1010 */ 1541 {illegal2, 2,10,10,L0|L1}, /* db: 0100 1100 1101 1011 */ 1542 {illegal2, 2,10,10,L0|L1}, /* dc: 0100 1100 1101 1100 */ 1543 {illegal2, 2,10,10,L0|L1}, /* dd: 0100 1100 1101 1101 */ 1544 {illegal2, 2,10,10,L0|L1}, /* de: 0100 1100 1101 1110 */ 1545 {illegal2, 2,10,10,L0|L1}, /* df: 0100 1100 1101 1111 */ 1546 1547 {MOV_A_CR0, 2,10,10,L0|L1}, /* e0: 0100 1100 1110 0000 */ 1548 {MOV_A_CR1, 2,10,10,L0|L1}, /* e1: 0100 1100 1110 0001 */ 1549 {MOV_A_CR2, 2,10,10,L0|L1}, /* e2: 0100 1100 1110 0010 */ 1550 {MOV_A_CR3, 2,10,10,L0|L1}, /* e3: 0100 1100 1110 0011 */ 1551 {illegal2, 2,10,10,L0|L1}, /* e4: 0100 1100 1110 0100 */ 1552 {illegal2, 2,10,10,L0|L1}, /* e5: 0100 1100 1110 0101 */ 1553 {illegal2, 2,10,10,L0|L1}, /* e6: 0100 1100 1110 0110 */ 1554 {illegal2, 2,10,10,L0|L1}, /* e7: 0100 1100 1110 0111 */ 1555 {illegal2, 2,10,10,L0|L1}, /* e8: 0100 1100 1110 1000 */ 1556 {illegal2, 2,10,10,L0|L1}, /* e9: 0100 1100 1110 1001 */ 1557 {illegal2, 2,10,10,L0|L1}, /* ea: 0100 1100 1110 1010 */ 1558 {illegal2, 2,10,10,L0|L1}, /* eb: 0100 1100 1110 1011 */ 1559 {illegal2, 2,10,10,L0|L1}, /* ec: 0100 1100 1110 1100 */ 1560 {illegal2, 2,10,10,L0|L1}, /* ed: 0100 1100 1110 1101 */ 1561 {illegal2, 2,10,10,L0|L1}, /* ee: 0100 1100 1110 1110 */ 1562 {illegal2, 2,10,10,L0|L1}, /* ef: 0100 1100 1110 1111 */ 1563 1564 {illegal2, 2,10,10,L0|L1}, /* f0: 0100 1100 1111 0000 */ 1565 {illegal2, 2,10,10,L0|L1}, /* f1: 0100 1100 1111 0001 */ 1566 {illegal2, 2,10,10,L0|L1}, /* f2: 0100 1100 1111 0010 */ 1567 {illegal2, 2,10,10,L0|L1}, /* f3: 0100 1100 1111 0011 */ 1568 {illegal2, 2,10,10,L0|L1}, /* f4: 0100 1100 1111 0100 */ 1569 {illegal2, 2,10,10,L0|L1}, /* f5: 0100 1100 1111 0101 */ 1570 {illegal2, 2,10,10,L0|L1}, /* f6: 0100 1100 1111 0110 */ 1571 {illegal2, 2,10,10,L0|L1}, /* f7: 0100 1100 1111 0111 */ 1572 {illegal2, 2,10,10,L0|L1}, /* f8: 0100 1100 1111 1000 */ 1573 {illegal2, 2,10,10,L0|L1}, /* f9: 0100 1100 1111 1001 */ 1574 {illegal2, 2,10,10,L0|L1}, /* fa: 0100 1100 1111 1010 */ 1575 {illegal2, 2,10,10,L0|L1}, /* fb: 0100 1100 1111 1011 */ 1576 {illegal2, 2,10,10,L0|L1}, /* fc: 0100 1100 1111 1100 */ 1577 {illegal2, 2,10,10,L0|L1}, /* fd: 0100 1100 1111 1101 */ 1578 {illegal2, 2,10,10,L0|L1}, /* fe: 0100 1100 1111 1110 */ 1579 {illegal2, 2,10,10,L0|L1}, /* ff: 0100 1100 1111 1111 */ 1580 }; 1581 1582 /* prefix 4D */ 1583 static struct opcode_s op4D[256] = 1584 { 1585 {illegal2, 2, 8, 8,L0|L1}, /* 00: 0100 1101 0000 0000 */ 1586 {illegal2, 2, 8, 8,L0|L1}, /* 01: 0100 1101 0000 0001 */ 1587 {illegal2, 2, 8, 8,L0|L1}, /* 02: 0100 1101 0000 0010 */ 1588 {illegal2, 2, 8, 8,L0|L1}, /* 03: 0100 1101 0000 0011 */ 1589 {illegal2, 2, 8, 8,L0|L1}, /* 04: 0100 1101 0000 0100 */ 1590 {illegal2, 2, 8, 8,L0|L1}, /* 05: 0100 1101 0000 0101 */ 1591 {illegal2, 2, 8, 8,L0|L1}, /* 06: 0100 1101 0000 0110 */ 1592 {illegal2, 2, 8, 8,L0|L1}, /* 07: 0100 1101 0000 0111 */ 1593 {illegal2, 2, 8, 8,L0|L1}, /* 08: 0100 1101 0000 1000 */ 1594 {illegal2, 2, 8, 8,L0|L1}, /* 09: 0100 1101 0000 1001 */ 1595 {illegal2, 2, 8, 8,L0|L1}, /* 0a: 0100 1101 0000 1010 */ 1596 {illegal2, 2, 8, 8,L0|L1}, /* 0b: 0100 1101 0000 1011 */ 1597 {illegal2, 2, 8, 8,L0|L1}, /* 0c: 0100 1101 0000 1100 */ 1598 {illegal2, 2, 8, 8,L0|L1}, /* 0d: 0100 1101 0000 1101 */ 1599 {illegal2, 2, 8, 8,L0|L1}, /* 0e: 0100 1101 0000 1110 */ 1600 {illegal2, 2, 8, 8,L0|L1}, /* 0f: 0100 1101 0000 1111 */ 1601 1602 {illegal2, 2, 8, 8,L0|L1}, /* 10: 0100 1101 0001 0000 */ 1603 {illegal2, 2, 8, 8,L0|L1}, /* 11: 0100 1101 0001 0001 */ 1604 {illegal2, 2, 8, 8,L0|L1}, /* 12: 0100 1101 0001 0010 */ 1605 {illegal2, 2, 8, 8,L0|L1}, /* 13: 0100 1101 0001 0011 */ 1606 {illegal2, 2, 8, 8,L0|L1}, /* 14: 0100 1101 0001 0100 */ 1607 {illegal2, 2, 8, 8,L0|L1}, /* 15: 0100 1101 0001 0101 */ 1608 {illegal2, 2, 8, 8,L0|L1}, /* 16: 0100 1101 0001 0110 */ 1609 {illegal2, 2, 8, 8,L0|L1}, /* 17: 0100 1101 0001 0111 */ 1610 {illegal2, 2, 8, 8,L0|L1}, /* 18: 0100 1101 0001 1000 */ 1611 {illegal2, 2, 8, 8,L0|L1}, /* 19: 0100 1101 0001 1001 */ 1612 {illegal2, 2, 8, 8,L0|L1}, /* 1a: 0100 1101 0001 1010 */ 1613 {illegal2, 2, 8, 8,L0|L1}, /* 1b: 0100 1101 0001 1011 */ 1614 {illegal2, 2, 8, 8,L0|L1}, /* 1c: 0100 1101 0001 1100 */ 1615 {illegal2, 2, 8, 8,L0|L1}, /* 1d: 0100 1101 0001 1101 */ 1616 {illegal2, 2, 8, 8,L0|L1}, /* 1e: 0100 1101 0001 1110 */ 1617 {illegal2, 2, 8, 8,L0|L1}, /* 1f: 0100 1101 0001 1111 */ 1618 1619 {illegal2, 2, 8, 8,L0|L1}, /* 20: 0100 1101 0010 0000 */ 1620 {illegal2, 2, 8, 8,L0|L1}, /* 21: 0100 1101 0010 0001 */ 1621 {illegal2, 2, 8, 8,L0|L1}, /* 22: 0100 1101 0010 0010 */ 1622 {illegal2, 2, 8, 8,L0|L1}, /* 23: 0100 1101 0010 0011 */ 1623 {illegal2, 2, 8, 8,L0|L1}, /* 24: 0100 1101 0010 0100 */ 1624 {illegal2, 2, 8, 8,L0|L1}, /* 25: 0100 1101 0010 0101 */ 1625 {illegal2, 2, 8, 8,L0|L1}, /* 26: 0100 1101 0010 0110 */ 1626 {illegal2, 2, 8, 8,L0|L1}, /* 27: 0100 1101 0010 0111 */ 1627 {illegal2, 2, 8, 8,L0|L1}, /* 28: 0100 1101 0010 1000 */ 1628 {illegal2, 2, 8, 8,L0|L1}, /* 29: 0100 1101 0010 1001 */ 1629 {illegal2, 2, 8, 8,L0|L1}, /* 2a: 0100 1101 0010 1010 */ 1630 {illegal2, 2, 8, 8,L0|L1}, /* 2b: 0100 1101 0010 1011 */ 1631 {illegal2, 2, 8, 8,L0|L1}, /* 2c: 0100 1101 0010 1100 */ 1632 {illegal2, 2, 8, 8,L0|L1}, /* 2d: 0100 1101 0010 1101 */ 1633 {illegal2, 2, 8, 8,L0|L1}, /* 2e: 0100 1101 0010 1110 */ 1634 {illegal2, 2, 8, 8,L0|L1}, /* 2f: 0100 1101 0010 1111 */ 1635 1636 {illegal2, 2, 8, 8,L0|L1}, /* 30: 0100 1101 0011 0000 */ 1637 {illegal2, 2, 8, 8,L0|L1}, /* 31: 0100 1101 0011 0001 */ 1638 {illegal2, 2, 8, 8,L0|L1}, /* 32: 0100 1101 0011 0010 */ 1639 {illegal2, 2, 8, 8,L0|L1}, /* 33: 0100 1101 0011 0011 */ 1640 {illegal2, 2, 8, 8,L0|L1}, /* 34: 0100 1101 0011 0100 */ 1641 {illegal2, 2, 8, 8,L0|L1}, /* 35: 0100 1101 0011 0101 */ 1642 {illegal2, 2, 8, 8,L0|L1}, /* 36: 0100 1101 0011 0110 */ 1643 {illegal2, 2, 8, 8,L0|L1}, /* 37: 0100 1101 0011 0111 */ 1644 {illegal2, 2, 8, 8,L0|L1}, /* 38: 0100 1101 0011 1000 */ 1645 {illegal2, 2, 8, 8,L0|L1}, /* 39: 0100 1101 0011 1001 */ 1646 {illegal2, 2, 8, 8,L0|L1}, /* 3a: 0100 1101 0011 1010 */ 1647 {illegal2, 2, 8, 8,L0|L1}, /* 3b: 0100 1101 0011 1011 */ 1648 {illegal2, 2, 8, 8,L0|L1}, /* 3c: 0100 1101 0011 1100 */ 1649 {illegal2, 2, 8, 8,L0|L1}, /* 3d: 0100 1101 0011 1101 */ 1650 {illegal2, 2, 8, 8,L0|L1}, /* 3e: 0100 1101 0011 1110 */ 1651 {illegal2, 2, 8, 8,L0|L1}, /* 3f: 0100 1101 0011 1111 */ 1652 1653 {illegal2, 2, 8, 8,L0|L1}, /* 40: 0100 1101 0100 0000 */ 1654 {illegal2, 2, 8, 8,L0|L1}, /* 41: 0100 1101 0100 0001 */ 1655 {illegal2, 2, 8, 8,L0|L1}, /* 42: 0100 1101 0100 0010 */ 1656 {illegal2, 2, 8, 8,L0|L1}, /* 43: 0100 1101 0100 0011 */ 1657 {illegal2, 2, 8, 8,L0|L1}, /* 44: 0100 1101 0100 0100 */ 1658 {illegal2, 2, 8, 8,L0|L1}, /* 45: 0100 1101 0100 0101 */ 1659 {illegal2, 2, 8, 8,L0|L1}, /* 46: 0100 1101 0100 0110 */ 1660 {illegal2, 2, 8, 8,L0|L1}, /* 47: 0100 1101 0100 0111 */ 1661 {illegal2, 2, 8, 8,L0|L1}, /* 48: 0100 1101 0100 1000 */ 1662 {illegal2, 2, 8, 8,L0|L1}, /* 49: 0100 1101 0100 1001 */ 1663 {illegal2, 2, 8, 8,L0|L1}, /* 4a: 0100 1101 0100 1010 */ 1664 {illegal2, 2, 8, 8,L0|L1}, /* 4b: 0100 1101 0100 1011 */ 1665 {illegal2, 2, 8, 8,L0|L1}, /* 4c: 0100 1101 0100 1100 */ 1666 {illegal2, 2, 8, 8,L0|L1}, /* 4d: 0100 1101 0100 1101 */ 1667 {illegal2, 2, 8, 8,L0|L1}, /* 4e: 0100 1101 0100 1110 */ 1668 {illegal2, 2, 8, 8,L0|L1}, /* 4f: 0100 1101 0100 1111 */ 1669 1670 {illegal2, 2, 8, 8,L0|L1}, /* 50: 0100 1101 0101 0000 */ 1671 {illegal2, 2, 8, 8,L0|L1}, /* 51: 0100 1101 0101 0001 */ 1672 {illegal2, 2, 8, 8,L0|L1}, /* 52: 0100 1101 0101 0010 */ 1673 {illegal2, 2, 8, 8,L0|L1}, /* 53: 0100 1101 0101 0011 */ 1674 {illegal2, 2, 8, 8,L0|L1}, /* 54: 0100 1101 0101 0100 */ 1675 {illegal2, 2, 8, 8,L0|L1}, /* 55: 0100 1101 0101 0101 */ 1676 {illegal2, 2, 8, 8,L0|L1}, /* 56: 0100 1101 0101 0110 */ 1677 {illegal2, 2, 8, 8,L0|L1}, /* 57: 0100 1101 0101 0111 */ 1678 {illegal2, 2, 8, 8,L0|L1}, /* 58: 0100 1101 0101 1000 */ 1679 {illegal2, 2, 8, 8,L0|L1}, /* 59: 0100 1101 0101 1001 */ 1680 {illegal2, 2, 8, 8,L0|L1}, /* 5a: 0100 1101 0101 1010 */ 1681 {illegal2, 2, 8, 8,L0|L1}, /* 5b: 0100 1101 0101 1011 */ 1682 {illegal2, 2, 8, 8,L0|L1}, /* 5c: 0100 1101 0101 1100 */ 1683 {illegal2, 2, 8, 8,L0|L1}, /* 5d: 0100 1101 0101 1101 */ 1684 {illegal2, 2, 8, 8,L0|L1}, /* 5e: 0100 1101 0101 1110 */ 1685 {illegal2, 2, 8, 8,L0|L1}, /* 5f: 0100 1101 0101 1111 */ 1686 1687 {illegal2, 2, 8, 8,L0|L1}, /* 60: 0100 1101 0110 0000 */ 1688 {illegal2, 2, 8, 8,L0|L1}, /* 61: 0100 1101 0110 0001 */ 1689 {illegal2, 2, 8, 8,L0|L1}, /* 62: 0100 1101 0110 0010 */ 1690 {illegal2, 2, 8, 8,L0|L1}, /* 63: 0100 1101 0110 0011 */ 1691 {illegal2, 2, 8, 8,L0|L1}, /* 64: 0100 1101 0110 0100 */ 1692 {illegal2, 2, 8, 8,L0|L1}, /* 65: 0100 1101 0110 0101 */ 1693 {illegal2, 2, 8, 8,L0|L1}, /* 66: 0100 1101 0110 0110 */ 1694 {illegal2, 2, 8, 8,L0|L1}, /* 67: 0100 1101 0110 0111 */ 1695 {illegal2, 2, 8, 8,L0|L1}, /* 68: 0100 1101 0110 1000 */ 1696 {illegal2, 2, 8, 8,L0|L1}, /* 69: 0100 1101 0110 1001 */ 1697 {illegal2, 2, 8, 8,L0|L1}, /* 6a: 0100 1101 0110 1010 */ 1698 {illegal2, 2, 8, 8,L0|L1}, /* 6b: 0100 1101 0110 1011 */ 1699 {illegal2, 2, 8, 8,L0|L1}, /* 6c: 0100 1101 0110 1100 */ 1700 {illegal2, 2, 8, 8,L0|L1}, /* 6d: 0100 1101 0110 1101 */ 1701 {illegal2, 2, 8, 8,L0|L1}, /* 6e: 0100 1101 0110 1110 */ 1702 {illegal2, 2, 8, 8,L0|L1}, /* 6f: 0100 1101 0110 1111 */ 1703 1704 {illegal2, 2, 8, 8,L0|L1}, /* 70: 0100 1101 0111 0000 */ 1705 {illegal2, 2, 8, 8,L0|L1}, /* 71: 0100 1101 0111 0001 */ 1706 {illegal2, 2, 8, 8,L0|L1}, /* 72: 0100 1101 0111 0010 */ 1707 {illegal2, 2, 8, 8,L0|L1}, /* 73: 0100 1101 0111 0011 */ 1708 {illegal2, 2, 8, 8,L0|L1}, /* 74: 0100 1101 0111 0100 */ 1709 {illegal2, 2, 8, 8,L0|L1}, /* 75: 0100 1101 0111 0101 */ 1710 {illegal2, 2, 8, 8,L0|L1}, /* 76: 0100 1101 0111 0110 */ 1711 {illegal2, 2, 8, 8,L0|L1}, /* 77: 0100 1101 0111 0111 */ 1712 {illegal2, 2, 8, 8,L0|L1}, /* 78: 0100 1101 0111 1000 */ 1713 {illegal2, 2, 8, 8,L0|L1}, /* 79: 0100 1101 0111 1001 */ 1714 {illegal2, 2, 8, 8,L0|L1}, /* 7a: 0100 1101 0111 1010 */ 1715 {illegal2, 2, 8, 8,L0|L1}, /* 7b: 0100 1101 0111 1011 */ 1716 {illegal2, 2, 8, 8,L0|L1}, /* 7c: 0100 1101 0111 1100 */ 1717 {illegal2, 2, 8, 8,L0|L1}, /* 7d: 0100 1101 0111 1101 */ 1718 {illegal2, 2, 8, 8,L0|L1}, /* 7e: 0100 1101 0111 1110 */ 1719 {illegal2, 2, 8, 8,L0|L1}, /* 7f: 0100 1101 0111 1111 */ 1720 1721 {illegal2, 2, 8, 8,L0|L1}, /* 80: 0100 1101 1000 0000 */ 1722 {illegal2, 2, 8, 8,L0|L1}, /* 81: 0100 1101 1000 0001 */ 1723 {illegal2, 2, 8, 8,L0|L1}, /* 82: 0100 1101 1000 0010 */ 1724 {illegal2, 2, 8, 8,L0|L1}, /* 83: 0100 1101 1000 0011 */ 1725 {illegal2, 2, 8, 8,L0|L1}, /* 84: 0100 1101 1000 0100 */ 1726 {illegal2, 2, 8, 8,L0|L1}, /* 85: 0100 1101 1000 0101 */ 1727 {illegal2, 2, 8, 8,L0|L1}, /* 86: 0100 1101 1000 0110 */ 1728 {illegal2, 2, 8, 8,L0|L1}, /* 87: 0100 1101 1000 0111 */ 1729 {illegal2, 2, 8, 8,L0|L1}, /* 88: 0100 1101 1000 1000 */ 1730 {illegal2, 2, 8, 8,L0|L1}, /* 89: 0100 1101 1000 1001 */ 1731 {illegal2, 2, 8, 8,L0|L1}, /* 8a: 0100 1101 1000 1010 */ 1732 {illegal2, 2, 8, 8,L0|L1}, /* 8b: 0100 1101 1000 1011 */ 1733 {illegal2, 2, 8, 8,L0|L1}, /* 8c: 0100 1101 1000 1100 */ 1734 {illegal2, 2, 8, 8,L0|L1}, /* 8d: 0100 1101 1000 1101 */ 1735 {illegal2, 2, 8, 8,L0|L1}, /* 8e: 0100 1101 1000 1110 */ 1736 {illegal2, 2, 8, 8,L0|L1}, /* 8f: 0100 1101 1000 1111 */ 1737 1738 {illegal2, 2, 8, 8,L0|L1}, /* 90: 0100 1101 1001 0000 */ 1739 {illegal2, 2, 8, 8,L0|L1}, /* 91: 0100 1101 1001 0001 */ 1740 {illegal2, 2, 8, 8,L0|L1}, /* 92: 0100 1101 1001 0010 */ 1741 {illegal2, 2, 8, 8,L0|L1}, /* 93: 0100 1101 1001 0011 */ 1742 {illegal2, 2, 8, 8,L0|L1}, /* 94: 0100 1101 1001 0100 */ 1743 {illegal2, 2, 8, 8,L0|L1}, /* 95: 0100 1101 1001 0101 */ 1744 {illegal2, 2, 8, 8,L0|L1}, /* 96: 0100 1101 1001 0110 */ 1745 {illegal2, 2, 8, 8,L0|L1}, /* 97: 0100 1101 1001 0111 */ 1746 {illegal2, 2, 8, 8,L0|L1}, /* 98: 0100 1101 1001 1000 */ 1747 {illegal2, 2, 8, 8,L0|L1}, /* 99: 0100 1101 1001 1001 */ 1748 {illegal2, 2, 8, 8,L0|L1}, /* 9a: 0100 1101 1001 1010 */ 1749 {illegal2, 2, 8, 8,L0|L1}, /* 9b: 0100 1101 1001 1011 */ 1750 {illegal2, 2, 8, 8,L0|L1}, /* 9c: 0100 1101 1001 1100 */ 1751 {illegal2, 2, 8, 8,L0|L1}, /* 9d: 0100 1101 1001 1101 */ 1752 {illegal2, 2, 8, 8,L0|L1}, /* 9e: 0100 1101 1001 1110 */ 1753 {illegal2, 2, 8, 8,L0|L1}, /* 9f: 0100 1101 1001 1111 */ 1754 1755 {illegal2, 2, 8, 8,L0|L1}, /* a0: 0100 1101 1010 0000 */ 1756 {illegal2, 2, 8, 8,L0|L1}, /* a1: 0100 1101 1010 0001 */ 1757 {illegal2, 2, 8, 8,L0|L1}, /* a2: 0100 1101 1010 0010 */ 1758 {illegal2, 2, 8, 8,L0|L1}, /* a3: 0100 1101 1010 0011 */ 1759 {illegal2, 2, 8, 8,L0|L1}, /* a4: 0100 1101 1010 0100 */ 1760 {illegal2, 2, 8, 8,L0|L1}, /* a5: 0100 1101 1010 0101 */ 1761 {illegal2, 2, 8, 8,L0|L1}, /* a6: 0100 1101 1010 0110 */ 1762 {illegal2, 2, 8, 8,L0|L1}, /* a7: 0100 1101 1010 0111 */ 1763 {illegal2, 2, 8, 8,L0|L1}, /* a8: 0100 1101 1010 1000 */ 1764 {illegal2, 2, 8, 8,L0|L1}, /* a9: 0100 1101 1010 1001 */ 1765 {illegal2, 2, 8, 8,L0|L1}, /* aa: 0100 1101 1010 1010 */ 1766 {illegal2, 2, 8, 8,L0|L1}, /* ab: 0100 1101 1010 1011 */ 1767 {illegal2, 2, 8, 8,L0|L1}, /* ac: 0100 1101 1010 1100 */ 1768 {illegal2, 2, 8, 8,L0|L1}, /* ad: 0100 1101 1010 1101 */ 1769 {illegal2, 2, 8, 8,L0|L1}, /* ae: 0100 1101 1010 1110 */ 1770 {illegal2, 2, 8, 8,L0|L1}, /* af: 0100 1101 1010 1111 */ 1771 1772 {illegal2, 2, 8, 8,L0|L1}, /* b0: 0100 1101 1011 0000 */ 1773 {illegal2, 2, 8, 8,L0|L1}, /* b1: 0100 1101 1011 0001 */ 1774 {illegal2, 2, 8, 8,L0|L1}, /* b2: 0100 1101 1011 0010 */ 1775 {illegal2, 2, 8, 8,L0|L1}, /* b3: 0100 1101 1011 0011 */ 1776 {illegal2, 2, 8, 8,L0|L1}, /* b4: 0100 1101 1011 0100 */ 1777 {illegal2, 2, 8, 8,L0|L1}, /* b5: 0100 1101 1011 0101 */ 1778 {illegal2, 2, 8, 8,L0|L1}, /* b6: 0100 1101 1011 0110 */ 1779 {illegal2, 2, 8, 8,L0|L1}, /* b7: 0100 1101 1011 0111 */ 1780 {illegal2, 2, 8, 8,L0|L1}, /* b8: 0100 1101 1011 1000 */ 1781 {illegal2, 2, 8, 8,L0|L1}, /* b9: 0100 1101 1011 1001 */ 1782 {illegal2, 2, 8, 8,L0|L1}, /* ba: 0100 1101 1011 1010 */ 1783 {illegal2, 2, 8, 8,L0|L1}, /* bb: 0100 1101 1011 1011 */ 1784 {illegal2, 2, 8, 8,L0|L1}, /* bc: 0100 1101 1011 1100 */ 1785 {illegal2, 2, 8, 8,L0|L1}, /* bd: 0100 1101 1011 1101 */ 1786 {illegal2, 2, 8, 8,L0|L1}, /* be: 0100 1101 1011 1110 */ 1787 {illegal2, 2, 8, 8,L0|L1}, /* bf: 0100 1101 1011 1111 */ 1788 1789 {MOV_PA_A, 2,10,10,L0|L1}, /* c0: 0100 1101 1100 0000 */ 1790 {MOV_PB_A, 2,10,10,L0|L1}, /* c1: 0100 1101 1100 0001 */ 1791 {MOV_PC_A, 2,10,10,L0|L1}, /* c2: 0100 1101 1100 0010 */ 1792 {MOV_PD_A, 2,10,10,L0|L1}, /* c3: 0100 1101 1100 0011 */ 1793 {illegal2, 2,10,10,L0|L1}, /* c4: 0100 1101 1100 0100 */ 1794 {MOV_PF_A, 2,10,10,L0|L1}, /* c5: 0100 1101 1100 0101 */ 1795 {MOV_MKH_A, 2,10,10,L0|L1}, /* c6: 0100 1101 1100 0110 */ 1796 {MOV_MKL_A, 2,10,10,L0|L1}, /* c7: 0100 1101 1100 0111 */ 1797 {MOV_ANM_A, 2,10,10,L0|L1}, /* c8: 0100 1101 1100 1000 */ 1798 {MOV_SMH_A, 2,10,10,L0|L1}, /* c9: 0100 1101 1100 1001 */ 1799 {MOV_SML_A, 2,10,10,L0|L1}, /* ca: 0100 1101 1100 1010 */ 1800 {MOV_EOM_A, 2,10,10,L0|L1}, /* cb: 0100 1101 1100 1011 */ 1801 {MOV_ETMM_A, 2,10,10,L0|L1}, /* cc: 0100 1101 1100 1100 */ 1802 {MOV_TMM_A, 2,10,10,L0|L1}, /* cd: 0100 1101 1100 1101 */ 1803 {illegal2, 2,10,10,L0|L1}, /* ce: 0100 1101 1100 1110 */ 1804 {illegal2, 2,10,10,L0|L1}, /* cf: 0100 1101 1100 1111 */ 1805 1806 {MOV_MM_A, 2,10,10,L0|L1}, /* d0: 0100 1101 1101 0000 */ 1807 {MOV_MCC_A, 2,10,10,L0|L1}, /* d1: 0100 1101 1101 0001 */ 1808 {MOV_MA_A, 2,10,10,L0|L1}, /* d2: 0100 1101 1101 0010 */ 1809 {MOV_MB_A, 2,10,10,L0|L1}, /* d3: 0100 1101 1101 0011 */ 1810 {MOV_MC_A, 2,10,10,L0|L1}, /* d4: 0100 1101 1101 0100 */ 1811 {illegal2, 2,10,10,L0|L1}, /* d5: 0100 1101 1101 0101 */ 1812 {illegal2, 2,10,10,L0|L1}, /* d6: 0100 1101 1101 0110 */ 1813 {MOV_MF_A, 2,10,10,L0|L1}, /* d7: 0100 1101 1101 0111 */ 1814 {MOV_TXB_A, 2,10,10,L0|L1}, /* d8: 0100 1101 1101 1000 */ 1815 {illegal2, 2,10,10,L0|L1}, /* d9: 0100 1101 1101 1001 */ 1816 {MOV_TM0_A, 2,10,10,L0|L1}, /* da: 0100 1101 1101 1010 */ 1817 {MOV_TM1_A, 2,10,10,L0|L1}, /* db: 0100 1101 1101 1011 */ 1818 {illegal2, 2,10,10,L0|L1}, /* dc: 0100 1101 1101 1100 */ 1819 {illegal2, 2,10,10,L0|L1}, /* dd: 0100 1101 1101 1101 */ 1820 {illegal2, 2,10,10,L0|L1}, /* de: 0100 1101 1101 1110 */ 1821 {illegal2, 2,10,10,L0|L1}, /* df: 0100 1101 1101 1111 */ 1822 1823 {illegal2, 2,10,10,L0|L1}, /* e0: 0100 1101 1110 0000 */ 1824 {illegal2, 2,10,10,L0|L1}, /* e1: 0100 1101 1110 0001 */ 1825 {illegal2, 2,10,10,L0|L1}, /* e2: 0100 1101 1110 0010 */ 1826 {illegal2, 2,10,10,L0|L1}, /* e3: 0100 1101 1110 0011 */ 1827 {illegal2, 2,10,10,L0|L1}, /* e4: 0100 1101 1110 0100 */ 1828 {illegal2, 2,10,10,L0|L1}, /* e5: 0100 1101 1110 0101 */ 1829 {illegal2, 2,10,10,L0|L1}, /* e6: 0100 1101 1110 0110 */ 1830 {illegal2, 2,10,10,L0|L1}, /* e7: 0100 1101 1110 0111 */ 1831 {MOV_ZCM_A, 2,10,10,L0|L1}, /* e8: 0100 1101 1110 1000 */ 1832 {illegal2, 2,10,10,L0|L1}, /* e9: 0100 1101 1110 1001 */ 1833 {illegal2, 2,10,10,L0|L1}, /* ea: 0100 1101 1110 1010 */ 1834 {illegal2, 2,10,10,L0|L1}, /* eb: 0100 1101 1110 1011 */ 1835 {illegal2, 2,10,10,L0|L1}, /* ec: 0100 1101 1110 1100 */ 1836 {illegal2, 2,10,10,L0|L1}, /* ed: 0100 1101 1110 1101 */ 1837 {illegal2, 2,10,10,L0|L1}, /* ee: 0100 1101 1110 1110 */ 1838 {illegal2, 2,10,10,L0|L1}, /* ef: 0100 1101 1110 1111 */ 1839 1840 {illegal2, 2,10,10,L0|L1}, /* f0: 0100 1101 1111 0000 */ 1841 {illegal2, 2,10,10,L0|L1}, /* f1: 0100 1101 1111 0001 */ 1842 {illegal2, 2,10,10,L0|L1}, /* f2: 0100 1101 1111 0010 */ 1843 {illegal2, 2,10,10,L0|L1}, /* f3: 0100 1101 1111 0011 */ 1844 {illegal2, 2,10,10,L0|L1}, /* f4: 0100 1101 1111 0100 */ 1845 {illegal2, 2,10,10,L0|L1}, /* f5: 0100 1101 1111 0101 */ 1846 {illegal2, 2,10,10,L0|L1}, /* f6: 0100 1101 1111 0110 */ 1847 {illegal2, 2,10,10,L0|L1}, /* f7: 0100 1101 1111 0111 */ 1848 {illegal2, 2,10,10,L0|L1}, /* f8: 0100 1101 1111 1000 */ 1849 {illegal2, 2,10,10,L0|L1}, /* f9: 0100 1101 1111 1001 */ 1850 {illegal2, 2,10,10,L0|L1}, /* fa: 0100 1101 1111 1010 */ 1851 {illegal2, 2,10,10,L0|L1}, /* fb: 0100 1101 1111 1011 */ 1852 {illegal2, 2,10,10,L0|L1}, /* fc: 0100 1101 1111 1100 */ 1853 {illegal2, 2,10,10,L0|L1}, /* fd: 0100 1101 1111 1101 */ 1854 {illegal2, 2,10,10,L0|L1}, /* fe: 0100 1101 1111 1110 */ 1855 {illegal2, 2,10,10,L0|L1} /* ff: 0100 1101 1111 1111 */ 1856 }; 1857 1858 /* prefix 60 */ 1859 static struct opcode_s op60[256] = 1860 { 1861 {illegal2, 2, 8, 8,L0|L1}, /* 00: 0110 0000 0000 0000 */ 1862 {illegal2, 2, 8, 8,L0|L1}, /* 01: 0110 0000 0000 0001 */ 1863 {illegal2, 2, 8, 8,L0|L1}, /* 02: 0110 0000 0000 0010 */ 1864 {illegal2, 2, 8, 8,L0|L1}, /* 03: 0110 0000 0000 0011 */ 1865 {illegal2, 2, 8, 8,L0|L1}, /* 04: 0110 0000 0000 0100 */ 1866 {illegal2, 2, 8, 8,L0|L1}, /* 05: 0110 0000 0000 0101 */ 1867 {illegal2, 2, 8, 8,L0|L1}, /* 06: 0110 0000 0000 0110 */ 1868 {illegal2, 2, 8, 8,L0|L1}, /* 07: 0110 0000 0000 0111 */ 1869 {ANA_V_A, 2, 8, 8,L0|L1}, /* 08: 0110 0000 0000 1000 */ 1870 {ANA_A_A, 2, 8, 8,L0|L1}, /* 09: 0110 0000 0000 1001 */ 1871 {ANA_B_A, 2, 8, 8,L0|L1}, /* 0a: 0110 0000 0000 1010 */ 1872 {ANA_C_A, 2, 8, 8,L0|L1}, /* 0b: 0110 0000 0000 1011 */ 1873 {ANA_D_A, 2, 8, 8,L0|L1}, /* 0c: 0110 0000 0000 1100 */ 1874 {ANA_E_A, 2, 8, 8,L0|L1}, /* 0d: 0110 0000 0000 1101 */ 1875 {ANA_H_A, 2, 8, 8,L0|L1}, /* 0e: 0110 0000 0000 1110 */ 1876 {ANA_L_A, 2, 8, 8,L0|L1}, /* 0f: 0110 0000 0000 1111 */ 1877 1878 {XRA_V_A, 2, 8, 8,L0|L1}, /* 10: 0110 0000 0001 0000 */ 1879 {XRA_A_A, 2, 8, 8,L0|L1}, /* 11: 0110 0000 0001 0001 */ 1880 {XRA_B_A, 2, 8, 8,L0|L1}, /* 12: 0110 0000 0001 0010 */ 1881 {XRA_C_A, 2, 8, 8,L0|L1}, /* 13: 0110 0000 0001 0011 */ 1882 {XRA_D_A, 2, 8, 8,L0|L1}, /* 14: 0110 0000 0001 0100 */ 1883 {XRA_E_A, 2, 8, 8,L0|L1}, /* 15: 0110 0000 0001 0101 */ 1884 {XRA_H_A, 2, 8, 8,L0|L1}, /* 16: 0110 0000 0001 0110 */ 1885 {XRA_L_A, 2, 8, 8,L0|L1}, /* 17: 0110 0000 0001 0111 */ 1886 {ORA_V_A, 2, 8, 8,L0|L1}, /* 18: 0110 0000 0001 1000 */ 1887 {ORA_A_A, 2, 8, 8,L0|L1}, /* 19: 0110 0000 0001 1001 */ 1888 {ORA_B_A, 2, 8, 8,L0|L1}, /* 1a: 0110 0000 0001 1010 */ 1889 {ORA_C_A, 2, 8, 8,L0|L1}, /* 1b: 0110 0000 0001 1011 */ 1890 {ORA_D_A, 2, 8, 8,L0|L1}, /* 1c: 0110 0000 0001 1100 */ 1891 {ORA_E_A, 2, 8, 8,L0|L1}, /* 1d: 0110 0000 0001 1101 */ 1892 {ORA_H_A, 2, 8, 8,L0|L1}, /* 1e: 0110 0000 0001 1110 */ 1893 {ORA_L_A, 2, 8, 8,L0|L1}, /* 1f: 0110 0000 0001 1111 */ 1894 1895 {ADDNC_V_A, 2, 8, 8,L0|L1}, /* 20: 0110 0000 0010 0000 */ 1896 {ADDNC_A_A, 2, 8, 8,L0|L1}, /* 21: 0110 0000 0010 0001 */ 1897 {ADDNC_B_A, 2, 8, 8,L0|L1}, /* 22: 0110 0000 0010 0010 */ 1898 {ADDNC_C_A, 2, 8, 8,L0|L1}, /* 23: 0110 0000 0010 0011 */ 1899 {ADDNC_D_A, 2, 8, 8,L0|L1}, /* 24: 0110 0000 0010 0100 */ 1900 {ADDNC_E_A, 2, 8, 8,L0|L1}, /* 25: 0110 0000 0010 0101 */ 1901 {ADDNC_H_A, 2, 8, 8,L0|L1}, /* 26: 0110 0000 0010 0110 */ 1902 {ADDNC_L_A, 2, 8, 8,L0|L1}, /* 27: 0110 0000 0010 0111 */ 1903 {GTA_V_A, 2, 8, 8,L0|L1}, /* 28: 0110 0000 0010 1000 */ 1904 {GTA_A_A, 2, 8, 8,L0|L1}, /* 29: 0110 0000 0010 1001 */ 1905 {GTA_B_A, 2, 8, 8,L0|L1}, /* 2a: 0110 0000 0010 1010 */ 1906 {GTA_C_A, 2, 8, 8,L0|L1}, /* 2b: 0110 0000 0010 1011 */ 1907 {GTA_D_A, 2, 8, 8,L0|L1}, /* 2c: 0110 0000 0010 1100 */ 1908 {GTA_E_A, 2, 8, 8,L0|L1}, /* 2d: 0110 0000 0010 1101 */ 1909 {GTA_H_A, 2, 8, 8,L0|L1}, /* 2e: 0110 0000 0010 1110 */ 1910 {GTA_L_A, 2, 8, 8,L0|L1}, /* 2f: 0110 0000 0010 1111 */ 1911 1912 {SUBNB_V_A, 2, 8, 8,L0|L1}, /* 30: 0110 0000 0011 0000 */ 1913 {SUBNB_A_A, 2, 8, 8,L0|L1}, /* 31: 0110 0000 0011 0001 */ 1914 {SUBNB_B_A, 2, 8, 8,L0|L1}, /* 32: 0110 0000 0011 0010 */ 1915 {SUBNB_C_A, 2, 8, 8,L0|L1}, /* 33: 0110 0000 0011 0011 */ 1916 {SUBNB_D_A, 2, 8, 8,L0|L1}, /* 34: 0110 0000 0011 0100 */ 1917 {SUBNB_E_A, 2, 8, 8,L0|L1}, /* 35: 0110 0000 0011 0101 */ 1918 {SUBNB_H_A, 2, 8, 8,L0|L1}, /* 36: 0110 0000 0011 0110 */ 1919 {SUBNB_L_A, 2, 8, 8,L0|L1}, /* 37: 0110 0000 0011 0111 */ 1920 {LTA_V_A, 2, 8, 8,L0|L1}, /* 38: 0110 0000 0011 1000 */ 1921 {LTA_A_A, 2, 8, 8,L0|L1}, /* 39: 0110 0000 0011 1001 */ 1922 {LTA_B_A, 2, 8, 8,L0|L1}, /* 3a: 0110 0000 0011 1010 */ 1923 {LTA_C_A, 2, 8, 8,L0|L1}, /* 3b: 0110 0000 0011 1011 */ 1924 {LTA_D_A, 2, 8, 8,L0|L1}, /* 3c: 0110 0000 0011 1100 */ 1925 {LTA_E_A, 2, 8, 8,L0|L1}, /* 3d: 0110 0000 0011 1101 */ 1926 {LTA_H_A, 2, 8, 8,L0|L1}, /* 3e: 0110 0000 0011 1110 */ 1927 {LTA_L_A, 2, 8, 8,L0|L1}, /* 3f: 0110 0000 0011 1111 */ 1928 1929 {ADD_V_A, 2, 8, 8,L0|L1}, /* 40: 0110 0000 0100 0000 */ 1930 {ADD_A_A, 2, 8, 8,L0|L1}, /* 41: 0110 0000 0100 0001 */ 1931 {ADD_B_A, 2, 8, 8,L0|L1}, /* 42: 0110 0000 0100 0010 */ 1932 {ADD_C_A, 2, 8, 8,L0|L1}, /* 43: 0110 0000 0100 0011 */ 1933 {ADD_D_A, 2, 8, 8,L0|L1}, /* 44: 0110 0000 0100 0100 */ 1934 {ADD_E_A, 2, 8, 8,L0|L1}, /* 45: 0110 0000 0100 0101 */ 1935 {ADD_H_A, 2, 8, 8,L0|L1}, /* 46: 0110 0000 0100 0110 */ 1936 {ADD_L_A, 2, 8, 8,L0|L1}, /* 47: 0110 0000 0100 0111 */ 1937 {illegal2, 2, 8, 8,L0|L1}, /* 48: 0110 0000 0100 1000 */ 1938 {illegal2, 2, 8, 8,L0|L1}, /* 49: 0110 0000 0100 1001 */ 1939 {illegal2, 2, 8, 8,L0|L1}, /* 4a: 0110 0000 0100 1010 */ 1940 {illegal2, 2, 8, 8,L0|L1}, /* 4b: 0110 0000 0100 1011 */ 1941 {illegal2, 2, 8, 8,L0|L1}, /* 4c: 0110 0000 0100 1100 */ 1942 {illegal2, 2, 8, 8,L0|L1}, /* 4d: 0110 0000 0100 1101 */ 1943 {illegal2, 2, 8, 8,L0|L1}, /* 4e: 0110 0000 0100 1110 */ 1944 {illegal2, 2, 8, 8,L0|L1}, /* 4f: 0110 0000 0100 1111 */ 1945 1946 {ADC_V_A, 2, 8, 8,L0|L1}, /* 50: 0110 0000 0101 0000 */ 1947 {ADC_A_A, 2, 8, 8,L0|L1}, /* 51: 0110 0000 0101 0001 */ 1948 {ADC_B_A, 2, 8, 8,L0|L1}, /* 52: 0110 0000 0101 0010 */ 1949 {ADC_C_A, 2, 8, 8,L0|L1}, /* 53: 0110 0000 0101 0011 */ 1950 {ADC_D_A, 2, 8, 8,L0|L1}, /* 54: 0110 0000 0101 0100 */ 1951 {ADC_E_A, 2, 8, 8,L0|L1}, /* 55: 0110 0000 0101 0101 */ 1952 {ADC_H_A, 2, 8, 8,L0|L1}, /* 56: 0110 0000 0101 0110 */ 1953 {ADC_L_A, 2, 8, 8,L0|L1}, /* 57: 0110 0000 0101 0111 */ 1954 {illegal2, 2, 8, 8,L0|L1}, /* 58: 0110 0000 0101 1000 */ 1955 {illegal2, 2, 8, 8,L0|L1}, /* 59: 0110 0000 0101 1001 */ 1956 {illegal2, 2, 8, 8,L0|L1}, /* 5a: 0110 0000 0101 1010 */ 1957 {illegal2, 2, 8, 8,L0|L1}, /* 5b: 0110 0000 0101 1011 */ 1958 {illegal2, 2, 8, 8,L0|L1}, /* 5c: 0110 0000 0101 1100 */ 1959 {illegal2, 2, 8, 8,L0|L1}, /* 5d: 0110 0000 0101 1101 */ 1960 {illegal2, 2, 8, 8,L0|L1}, /* 5e: 0110 0000 0101 1110 */ 1961 {illegal2, 2, 8, 8,L0|L1}, /* 5f: 0110 0000 0101 1111 */ 1962 1963 {SUB_V_A, 2, 8, 8,L0|L1}, /* 60: 0110 0000 0110 0000 */ 1964 {SUB_A_A, 2, 8, 8,L0|L1}, /* 61: 0110 0000 0110 0001 */ 1965 {SUB_B_A, 2, 8, 8,L0|L1}, /* 62: 0110 0000 0110 0010 */ 1966 {SUB_C_A, 2, 8, 8,L0|L1}, /* 63: 0110 0000 0110 0011 */ 1967 {SUB_D_A, 2, 8, 8,L0|L1}, /* 64: 0110 0000 0110 0100 */ 1968 {SUB_E_A, 2, 8, 8,L0|L1}, /* 65: 0110 0000 0110 0101 */ 1969 {SUB_H_A, 2, 8, 8,L0|L1}, /* 66: 0110 0000 0110 0110 */ 1970 {SUB_L_A, 2, 8, 8,L0|L1}, /* 67: 0110 0000 0110 0111 */ 1971 {NEA_V_A, 2, 8, 8,L0|L1}, /* 68: 0110 0000 0110 1000 */ 1972 {NEA_A_A, 2, 8, 8,L0|L1}, /* 69: 0110 0000 0110 1001 */ 1973 {NEA_B_A, 2, 8, 8,L0|L1}, /* 6a: 0110 0000 0110 1010 */ 1974 {NEA_C_A, 2, 8, 8,L0|L1}, /* 6b: 0110 0000 0110 1011 */ 1975 {NEA_D_A, 2, 8, 8,L0|L1}, /* 6c: 0110 0000 0110 1100 */ 1976 {NEA_E_A, 2, 8, 8,L0|L1}, /* 6d: 0110 0000 0110 1101 */ 1977 {NEA_H_A, 2, 8, 8,L0|L1}, /* 6e: 0110 0000 0110 1110 */ 1978 {NEA_L_A, 2, 8, 8,L0|L1}, /* 6f: 0110 0000 0110 1111 */ 1979 1980 {SBB_V_A, 2, 8, 8,L0|L1}, /* 70: 0110 0000 0111 0000 */ 1981 {SBB_A_A, 2, 8, 8,L0|L1}, /* 71: 0110 0000 0111 0001 */ 1982 {SBB_B_A, 2, 8, 8,L0|L1}, /* 72: 0110 0000 0111 0010 */ 1983 {SBB_C_A, 2, 8, 8,L0|L1}, /* 73: 0110 0000 0111 0011 */ 1984 {SBB_D_A, 2, 8, 8,L0|L1}, /* 74: 0110 0000 0111 0100 */ 1985 {SBB_E_A, 2, 8, 8,L0|L1}, /* 75: 0110 0000 0111 0101 */ 1986 {SBB_H_A, 2, 8, 8,L0|L1}, /* 76: 0110 0000 0111 0110 */ 1987 {SBB_L_A, 2, 8, 8,L0|L1}, /* 77: 0110 0000 0111 0111 */ 1988 {EQA_V_A, 2, 8, 8,L0|L1}, /* 78: 0110 0000 0111 1000 */ 1989 {EQA_A_A, 2, 8, 8,L0|L1}, /* 79: 0110 0000 0111 1001 */ 1990 {EQA_B_A, 2, 8, 8,L0|L1}, /* 7a: 0110 0000 0111 1010 */ 1991 {EQA_C_A, 2, 8, 8,L0|L1}, /* 7b: 0110 0000 0111 1011 */ 1992 {EQA_D_A, 2, 8, 8,L0|L1}, /* 7c: 0110 0000 0111 1100 */ 1993 {EQA_E_A, 2, 8, 8,L0|L1}, /* 7d: 0110 0000 0111 1101 */ 1994 {EQA_H_A, 2, 8, 8,L0|L1}, /* 7e: 0110 0000 0111 1110 */ 1995 {EQA_L_A, 2, 8, 8,L0|L1}, /* 7f: 0110 0000 0111 1111 */ 1996 1997 {illegal2, 2, 8, 8,L0|L1}, /* 80: 0110 0000 1000 0000 */ 1998 {illegal2, 2, 8, 8,L0|L1}, /* 81: 0110 0000 1000 0001 */ 1999 {illegal2, 2, 8, 8,L0|L1}, /* 82: 0110 0000 1000 0010 */ 2000 {illegal2, 2, 8, 8,L0|L1}, /* 83: 0110 0000 1000 0011 */ 2001 {illegal2, 2, 8, 8,L0|L1}, /* 84: 0110 0000 1000 0100 */ 2002 {illegal2, 2, 8, 8,L0|L1}, /* 85: 0110 0000 1000 0101 */ 2003 {illegal2, 2, 8, 8,L0|L1}, /* 86: 0110 0000 1000 0110 */ 2004 {illegal2, 2, 8, 8,L0|L1}, /* 87: 0110 0000 1000 0111 */ 2005 {ANA_A_V, 2, 8, 8,L0|L1}, /* 88: 0110 0000 1000 1000 */ 2006 {ANA_A_A, 2, 8, 8,L0|L1}, /* 89: 0110 0000 1000 1001 */ 2007 {ANA_A_B, 2, 8, 8,L0|L1}, /* 8a: 0110 0000 1000 1010 */ 2008 {ANA_A_C, 2, 8, 8,L0|L1}, /* 8b: 0110 0000 1000 1011 */ 2009 {ANA_A_D, 2, 8, 8,L0|L1}, /* 8c: 0110 0000 1000 1100 */ 2010 {ANA_A_E, 2, 8, 8,L0|L1}, /* 8d: 0110 0000 1000 1101 */ 2011 {ANA_A_H, 2, 8, 8,L0|L1}, /* 8e: 0110 0000 1000 1110 */ 2012 {ANA_A_L, 2, 8, 8,L0|L1}, /* 8f: 0110 0000 1000 1111 */ 2013 2014 {XRA_A_V, 2, 8, 8,L0|L1}, /* 90: 0110 0000 1001 0000 */ 2015 {XRA_A_A, 2, 8, 8,L0|L1}, /* 91: 0110 0000 1001 0001 */ 2016 {XRA_A_B, 2, 8, 8,L0|L1}, /* 92: 0110 0000 1001 0010 */ 2017 {XRA_A_C, 2, 8, 8,L0|L1}, /* 93: 0110 0000 1001 0011 */ 2018 {XRA_A_D, 2, 8, 8,L0|L1}, /* 94: 0110 0000 1001 0100 */ 2019 {XRA_A_E, 2, 8, 8,L0|L1}, /* 95: 0110 0000 1001 0101 */ 2020 {XRA_A_H, 2, 8, 8,L0|L1}, /* 96: 0110 0000 1001 0110 */ 2021 {XRA_A_L, 2, 8, 8,L0|L1}, /* 97: 0110 0000 1001 0111 */ 2022 {ORA_A_V, 2, 8, 8,L0|L1}, /* 98: 0110 0000 1001 1000 */ 2023 {ORA_A_A, 2, 8, 8,L0|L1}, /* 99: 0110 0000 1001 1001 */ 2024 {ORA_A_B, 2, 8, 8,L0|L1}, /* 9a: 0110 0000 1001 1010 */ 2025 {ORA_A_C, 2, 8, 8,L0|L1}, /* 9b: 0110 0000 1001 1011 */ 2026 {ORA_A_D, 2, 8, 8,L0|L1}, /* 9c: 0110 0000 1001 1100 */ 2027 {ORA_A_E, 2, 8, 8,L0|L1}, /* 9d: 0110 0000 1001 1101 */ 2028 {ORA_A_H, 2, 8, 8,L0|L1}, /* 9e: 0110 0000 1001 1110 */ 2029 {ORA_A_L, 2, 8, 8,L0|L1}, /* 9f: 0110 0000 1001 1111 */ 2030 2031 {ADDNC_A_V, 2, 8, 8,L0|L1}, /* a0: 0110 0000 1010 0000 */ 2032 {ADDNC_A_A, 2, 8, 8,L0|L1}, /* a1: 0110 0000 1010 0001 */ 2033 {ADDNC_A_B, 2, 8, 8,L0|L1}, /* a2: 0110 0000 1010 0010 */ 2034 {ADDNC_A_C, 2, 8, 8,L0|L1}, /* a3: 0110 0000 1010 0011 */ 2035 {ADDNC_A_D, 2, 8, 8,L0|L1}, /* a4: 0110 0000 1010 0100 */ 2036 {ADDNC_A_E, 2, 8, 8,L0|L1}, /* a5: 0110 0000 1010 0101 */ 2037 {ADDNC_A_H, 2, 8, 8,L0|L1}, /* a6: 0110 0000 1010 0110 */ 2038 {ADDNC_A_L, 2, 8, 8,L0|L1}, /* a7: 0110 0000 1010 0111 */ 2039 {GTA_A_V, 2, 8, 8,L0|L1}, /* a8: 0110 0000 1010 1000 */ 2040 {GTA_A_A, 2, 8, 8,L0|L1}, /* a9: 0110 0000 1010 1001 */ 2041 {GTA_A_B, 2, 8, 8,L0|L1}, /* aa: 0110 0000 1010 1010 */ 2042 {GTA_A_C, 2, 8, 8,L0|L1}, /* ab: 0110 0000 1010 1011 */ 2043 {GTA_A_D, 2, 8, 8,L0|L1}, /* ac: 0110 0000 1010 1100 */ 2044 {GTA_A_E, 2, 8, 8,L0|L1}, /* ad: 0110 0000 1010 1101 */ 2045 {GTA_A_H, 2, 8, 8,L0|L1}, /* ae: 0110 0000 1010 1110 */ 2046 {GTA_A_L, 2, 8, 8,L0|L1}, /* af: 0110 0000 1010 1111 */ 2047 2048 {SUBNB_A_V, 2, 8, 8,L0|L1}, /* b0: 0110 0000 1011 0000 */ 2049 {SUBNB_A_A, 2, 8, 8,L0|L1}, /* b1: 0110 0000 1011 0001 */ 2050 {SUBNB_A_B, 2, 8, 8,L0|L1}, /* b2: 0110 0000 1011 0010 */ 2051 {SUBNB_A_C, 2, 8, 8,L0|L1}, /* b3: 0110 0000 1011 0011 */ 2052 {SUBNB_A_D, 2, 8, 8,L0|L1}, /* b4: 0110 0000 1011 0100 */ 2053 {SUBNB_A_E, 2, 8, 8,L0|L1}, /* b5: 0110 0000 1011 0101 */ 2054 {SUBNB_A_H, 2, 8, 8,L0|L1}, /* b6: 0110 0000 1011 0110 */ 2055 {SUBNB_A_L, 2, 8, 8,L0|L1}, /* b7: 0110 0000 1011 0111 */ 2056 {LTA_A_V, 2, 8, 8,L0|L1}, /* b8: 0110 0000 1011 1000 */ 2057 {LTA_A_A, 2, 8, 8,L0|L1}, /* b9: 0110 0000 1011 1001 */ 2058 {LTA_A_B, 2, 8, 8,L0|L1}, /* ba: 0110 0000 1011 1010 */ 2059 {LTA_A_C, 2, 8, 8,L0|L1}, /* bb: 0110 0000 1011 1011 */ 2060 {LTA_A_D, 2, 8, 8,L0|L1}, /* bc: 0110 0000 1011 1100 */ 2061 {LTA_A_E, 2, 8, 8,L0|L1}, /* bd: 0110 0000 1011 1101 */ 2062 {LTA_A_H, 2, 8, 8,L0|L1}, /* be: 0110 0000 1011 1110 */ 2063 {LTA_A_L, 2, 8, 8,L0|L1}, /* bf: 0110 0000 1011 1111 */ 2064 2065 {ADD_A_V, 2, 8, 8,L0|L1}, /* c0: 0110 0000 1100 0000 */ 2066 {ADD_A_A, 2, 8, 8,L0|L1}, /* c1: 0110 0000 1100 0001 */ 2067 {ADD_A_B, 2, 8, 8,L0|L1}, /* c2: 0110 0000 1100 0010 */ 2068 {ADD_A_C, 2, 8, 8,L0|L1}, /* c3: 0110 0000 1100 0011 */ 2069 {ADD_A_D, 2, 8, 8,L0|L1}, /* c4: 0110 0000 1100 0100 */ 2070 {ADD_A_E, 2, 8, 8,L0|L1}, /* c5: 0110 0000 1100 0101 */ 2071 {ADD_A_H, 2, 8, 8,L0|L1}, /* c6: 0110 0000 1100 0110 */ 2072 {ADD_A_L, 2, 8, 8,L0|L1}, /* c7: 0110 0000 1100 0111 */ 2073 {ONA_A_V, 2, 8, 8,L0|L1}, /* c8: 0110 0000 1100 1000 */ 2074 {ONA_A_A, 2, 8, 8,L0|L1}, /* c9: 0110 0000 1100 1001 */ 2075 {ONA_A_B, 2, 8, 8,L0|L1}, /* ca: 0110 0000 1100 1010 */ 2076 {ONA_A_C, 2, 8, 8,L0|L1}, /* cb: 0110 0000 1100 1011 */ 2077 {ONA_A_D, 2, 8, 8,L0|L1}, /* cc: 0110 0000 1100 1100 */ 2078 {ONA_A_E, 2, 8, 8,L0|L1}, /* cd: 0110 0000 1100 1101 */ 2079 {ONA_A_H, 2, 8, 8,L0|L1}, /* ce: 0110 0000 1100 1110 */ 2080 {ONA_A_L, 2, 8, 8,L0|L1}, /* cf: 0110 0000 1100 1111 */ 2081 2082 {ADC_A_V, 2, 8, 8,L0|L1}, /* d0: 0110 0000 1101 0000 */ 2083 {ADC_A_A, 2, 8, 8,L0|L1}, /* d1: 0110 0000 1101 0001 */ 2084 {ADC_A_B, 2, 8, 8,L0|L1}, /* d2: 0110 0000 1101 0010 */ 2085 {ADC_A_C, 2, 8, 8,L0|L1}, /* d3: 0110 0000 1101 0011 */ 2086 {ADC_A_D, 2, 8, 8,L0|L1}, /* d4: 0110 0000 1101 0100 */ 2087 {ADC_A_E, 2, 8, 8,L0|L1}, /* d5: 0110 0000 1101 0101 */ 2088 {ADC_A_H, 2, 8, 8,L0|L1}, /* d6: 0110 0000 1101 0110 */ 2089 {ADC_A_L, 2, 8, 8,L0|L1}, /* d7: 0110 0000 1101 0111 */ 2090 {OFFA_A_V, 2, 8, 8,L0|L1}, /* d8: 0110 0000 1101 1000 */ 2091 {OFFA_A_A, 2, 8, 8,L0|L1}, /* d9: 0110 0000 1101 1001 */ 2092 {OFFA_A_B, 2, 8, 8,L0|L1}, /* da: 0110 0000 1101 1010 */ 2093 {OFFA_A_C, 2, 8, 8,L0|L1}, /* db: 0110 0000 1101 1011 */ 2094 {OFFA_A_D, 2, 8, 8,L0|L1}, /* dc: 0110 0000 1101 1100 */ 2095 {OFFA_A_E, 2, 8, 8,L0|L1}, /* dd: 0110 0000 1101 1101 */ 2096 {OFFA_A_H, 2, 8, 8,L0|L1}, /* de: 0110 0000 1101 1110 */ 2097 {OFFA_A_L, 2, 8, 8,L0|L1}, /* df: 0110 0000 1101 1111 */ 2098 2099 {SUB_A_V, 2, 8, 8,L0|L1}, /* e0: 0110 0000 1110 0000 */ 2100 {SUB_A_A, 2, 8, 8,L0|L1}, /* e1: 0110 0000 1110 0001 */ 2101 {SUB_A_B, 2, 8, 8,L0|L1}, /* e2: 0110 0000 1110 0010 */ 2102 {SUB_A_C, 2, 8, 8,L0|L1}, /* e3: 0110 0000 1110 0011 */ 2103 {SUB_A_D, 2, 8, 8,L0|L1}, /* e4: 0110 0000 1110 0100 */ 2104 {SUB_A_E, 2, 8, 8,L0|L1}, /* e5: 0110 0000 1110 0101 */ 2105 {SUB_A_H, 2, 8, 8,L0|L1}, /* e6: 0110 0000 1110 0110 */ 2106 {SUB_A_L, 2, 8, 8,L0|L1}, /* e7: 0110 0000 1110 0111 */ 2107 {NEA_A_V, 2, 8, 8,L0|L1}, /* e8: 0110 0000 1110 1000 */ 2108 {NEA_A_A, 2, 8, 8,L0|L1}, /* e9: 0110 0000 1110 1001 */ 2109 {NEA_A_B, 2, 8, 8,L0|L1}, /* ea: 0110 0000 1110 1010 */ 2110 {NEA_A_C, 2, 8, 8,L0|L1}, /* eb: 0110 0000 1110 1011 */ 2111 {NEA_A_D, 2, 8, 8,L0|L1}, /* ec: 0110 0000 1110 1100 */ 2112 {NEA_A_E, 2, 8, 8,L0|L1}, /* ed: 0110 0000 1110 1101 */ 2113 {NEA_A_H, 2, 8, 8,L0|L1}, /* ee: 0110 0000 1110 1110 */ 2114 {NEA_A_L, 2, 8, 8,L0|L1}, /* ef: 0110 0000 1110 1111 */ 2115 2116 {SBB_A_V, 2, 8, 8,L0|L1}, /* f0: 0110 0000 1111 0000 */ 2117 {SBB_A_A, 2, 8, 8,L0|L1}, /* f1: 0110 0000 1111 0001 */ 2118 {SBB_A_B, 2, 8, 8,L0|L1}, /* f2: 0110 0000 1111 0010 */ 2119 {SBB_A_C, 2, 8, 8,L0|L1}, /* f3: 0110 0000 1111 0011 */ 2120 {SBB_A_D, 2, 8, 8,L0|L1}, /* f4: 0110 0000 1111 0100 */ 2121 {SBB_A_E, 2, 8, 8,L0|L1}, /* f5: 0110 0000 1111 0101 */ 2122 {SBB_A_H, 2, 8, 8,L0|L1}, /* f6: 0110 0000 1111 0110 */ 2123 {SBB_A_L, 2, 8, 8,L0|L1}, /* f7: 0110 0000 1111 0111 */ 2124 {EQA_A_V, 2, 8, 8,L0|L1}, /* f8: 0110 0000 1111 1000 */ 2125 {EQA_A_A, 2, 8, 8,L0|L1}, /* f9: 0110 0000 1111 1001 */ 2126 {EQA_A_B, 2, 8, 8,L0|L1}, /* fa: 0110 0000 1111 1010 */ 2127 {EQA_A_C, 2, 8, 8,L0|L1}, /* fb: 0110 0000 1111 1011 */ 2128 {EQA_A_D, 2, 8, 8,L0|L1}, /* fc: 0110 0000 1111 1100 */ 2129 {EQA_A_E, 2, 8, 8,L0|L1}, /* fd: 0110 0000 1111 1101 */ 2130 {EQA_A_H, 2, 8, 8,L0|L1}, /* fe: 0110 0000 1111 1110 */ 2131 {EQA_A_L, 2, 8, 8,L0|L1} /* ff: 0110 0000 1111 1111 */ 2132 }; 2133 2134 /* prefix 64 */ 2135 static struct opcode_s op64[256] = 2136 { 2137 {MVI_PA_xx, 3,14,11,L0|L1}, /* 00: 0110 0100 0000 0000 xxxx xxxx */ 2138 {MVI_PB_xx, 3,14,11,L0|L1}, /* 01: 0110 0100 0000 0001 xxxx xxxx */ 2139 {MVI_PC_xx, 3,14,11,L0|L1}, /* 02: 0110 0100 0000 0010 xxxx xxxx */ 2140 {MVI_PD_xx, 3,14,11,L0|L1}, /* 03: 0110 0100 0000 0011 xxxx xxxx */ 2141 {illegal2, 3,11,11,L0|L1}, /* 04: 0110 0100 0000 0100 xxxx xxxx */ 2142 {MVI_PF_xx, 3,14,11,L0|L1}, /* 05: 0110 0100 0000 0101 xxxx xxxx */ 2143 {MVI_MKH_xx, 3,14,11,L0|L1}, /* 06: 0110 0100 0000 0110 xxxx xxxx */ 2144 {MVI_MKL_xx, 3,14,11,L0|L1}, /* 07: 0110 0100 0000 0111 xxxx xxxx */ 2145 {ANI_PA_xx, 3,20,11,L0|L1}, /* 08: 0110 0100 0000 1000 xxxx xxxx */ 2146 {ANI_PB_xx, 3,20,11,L0|L1}, /* 09: 0110 0100 0000 1001 xxxx xxxx */ 2147 {ANI_PC_xx, 3,20,11,L0|L1}, /* 0a: 0110 0100 0000 1010 xxxx xxxx */ 2148 {ANI_PD_xx, 3,20,11,L0|L1}, /* 0b: 0110 0100 0000 1011 xxxx xxxx */ 2149 {illegal2, 3,11,11,L0|L1}, /* 0c: 0110 0100 0000 1100 xxxx xxxx */ 2150 {ANI_PF_xx, 3,20,11,L0|L1}, /* 0d: 0110 0100 0000 1101 xxxx xxxx */ 2151 {ANI_MKH_xx, 3,20,11,L0|L1}, /* 0e: 0110 0100 0000 1110 xxxx xxxx */ 2152 {ANI_MKL_xx, 3,20,11,L0|L1}, /* 0f: 0110 0100 0000 1111 xxxx xxxx */ 2153 2154 {XRI_PA_xx, 3,20,11,L0|L1}, /* 10: 0110 0100 0001 0000 xxxx xxxx */ 2155 {XRI_PB_xx, 3,20,11,L0|L1}, /* 11: 0110 0100 0001 0001 xxxx xxxx */ 2156 {XRI_PC_xx, 3,20,11,L0|L1}, /* 12: 0110 0100 0001 0010 xxxx xxxx */ 2157 {XRI_PD_xx, 3,20,11,L0|L1}, /* 13: 0110 0100 0001 0011 xxxx xxxx */ 2158 {illegal2, 3,11,11,L0|L1}, /* 14: 0110 0100 0001 0100 xxxx xxxx */ 2159 {XRI_PF_xx, 3,20,11,L0|L1}, /* 15: 0110 0100 0001 0101 xxxx xxxx */ 2160 {XRI_MKH_xx, 3,20,11,L0|L1}, /* 16: 0110 0100 0001 0110 xxxx xxxx */ 2161 {XRI_MKL_xx, 3,20,11,L0|L1}, /* 17: 0110 0100 0001 0111 xxxx xxxx */ 2162 {ORI_PA_xx, 3,20,11,L0|L1}, /* 18: 0110 0100 0001 1000 xxxx xxxx */ 2163 {ORI_PB_xx, 3,20,11,L0|L1}, /* 19: 0110 0100 0001 1001 xxxx xxxx */ 2164 {ORI_PC_xx, 3,20,11,L0|L1}, /* 1a: 0110 0100 0001 1010 xxxx xxxx */ 2165 {ORI_PD_xx, 3,20,11,L0|L1}, /* 1b: 0110 0100 0001 1011 xxxx xxxx */ 2166 {illegal2, 3,11,11,L0|L1}, /* 1c: 0110 0100 0001 1100 xxxx xxxx */ 2167 {ORI_PF_xx, 3,20,11,L0|L1}, /* 1d: 0110 0100 0001 1101 xxxx xxxx */ 2168 {ORI_MKH_xx, 3,20,11,L0|L1}, /* 1e: 0110 0100 0001 1110 xxxx xxxx */ 2169 {ORI_MKL_xx, 3,20,11,L0|L1}, /* 1f: 0110 0100 0001 1111 xxxx xxxx */ 2170 2171 {ADINC_PA_xx, 3,20,11,L0|L1}, /* 20: 0110 0100 0010 0000 xxxx xxxx */ 2172 {ADINC_PB_xx, 3,20,11,L0|L1}, /* 21: 0110 0100 0010 0001 xxxx xxxx */ 2173 {ADINC_PC_xx, 3,20,11,L0|L1}, /* 22: 0110 0100 0010 0010 xxxx xxxx */ 2174 {ADINC_PD_xx, 3,20,11,L0|L1}, /* 23: 0110 0100 0010 0011 xxxx xxxx */ 2175 {illegal2, 3,11,11,L0|L1}, /* 24: 0110 0100 0010 0100 xxxx xxxx */ 2176 {ADINC_PF_xx, 3,20,11,L0|L1}, /* 25: 0110 0100 0010 0101 xxxx xxxx */ 2177 {ADINC_MKH_xx, 3,20,11,L0|L1}, /* 26: 0110 0100 0010 0110 xxxx xxxx */ 2178 {ADINC_MKL_xx, 3,20,11,L0|L1}, /* 27: 0110 0100 0010 0111 xxxx xxxx */ 2179 {GTI_PA_xx, 3,20,11,L0|L1}, /* 28: 0110 0100 0010 1000 xxxx xxxx */ 2180 {GTI_PB_xx, 3,20,11,L0|L1}, /* 29: 0110 0100 0010 1001 xxxx xxxx */ 2181 {GTI_PC_xx, 3,20,11,L0|L1}, /* 2a: 0110 0100 0010 1010 xxxx xxxx */ 2182 {GTI_PD_xx, 3,20,11,L0|L1}, /* 2b: 0110 0100 0010 1011 xxxx xxxx */ 2183 {illegal2, 3,11,11,L0|L1}, /* 2c: 0110 0100 0010 1100 xxxx xxxx */ 2184 {GTI_PF_xx, 3,20,11,L0|L1}, /* 2d: 0110 0100 0010 1101 xxxx xxxx */ 2185 {GTI_MKH_xx, 3,20,11,L0|L1}, /* 2e: 0110 0100 0010 1110 xxxx xxxx */ 2186 {GTI_MKL_xx, 3,20,11,L0|L1}, /* 2f: 0110 0100 0010 1111 xxxx xxxx */ 2187 2188 {SUINB_PA_xx, 3,20,11,L0|L1}, /* 30: 0110 0100 0011 0000 xxxx xxxx */ 2189 {SUINB_PB_xx, 3,20,11,L0|L1}, /* 31: 0110 0100 0011 0001 xxxx xxxx */ 2190 {SUINB_PC_xx, 3,20,11,L0|L1}, /* 32: 0110 0100 0011 0010 xxxx xxxx */ 2191 {SUINB_PD_xx, 3,20,11,L0|L1}, /* 33: 0110 0100 0011 0011 xxxx xxxx */ 2192 {illegal2, 3,11,11,L0|L1}, /* 34: 0110 0100 0011 0100 xxxx xxxx */ 2193 {SUINB_PF_xx, 3,20,11,L0|L1}, /* 35: 0110 0100 0011 0101 xxxx xxxx */ 2194 {SUINB_MKH_xx, 3,20,11,L0|L1}, /* 36: 0110 0100 0011 0110 xxxx xxxx */ 2195 {SUINB_MKL_xx, 3,20,11,L0|L1}, /* 37: 0110 0100 0011 0111 xxxx xxxx */ 2196 {LTI_PA_xx, 3,20,11,L0|L1}, /* 38: 0110 0100 0011 1000 xxxx xxxx */ 2197 {LTI_PB_xx, 3,20,11,L0|L1}, /* 39: 0110 0100 0011 1001 xxxx xxxx */ 2198 {LTI_PC_xx, 3,20,11,L0|L1}, /* 3a: 0110 0100 0011 1010 xxxx xxxx */ 2199 {LTI_PD_xx, 3,20,11,L0|L1}, /* 3b: 0110 0100 0011 1011 xxxx xxxx */ 2200 {illegal2, 3,11,11,L0|L1}, /* 3c: 0110 0100 0011 1100 xxxx xxxx */ 2201 {LTI_PF_xx, 3,20,11,L0|L1}, /* 3d: 0110 0100 0011 1101 xxxx xxxx */ 2202 {LTI_MKH_xx, 3,20,11,L0|L1}, /* 3e: 0110 0100 0011 1110 xxxx xxxx */ 2203 {LTI_MKL_xx, 3,20,11,L0|L1}, /* 3f: 0110 0100 0011 1111 xxxx xxxx */ 2204 2205 {ADI_PA_xx, 3,20,11,L0|L1}, /* 40: 0110 0100 0100 0000 xxxx xxxx */ 2206 {ADI_PB_xx, 3,20,11,L0|L1}, /* 41: 0110 0100 0100 0001 xxxx xxxx */ 2207 {ADI_PC_xx, 3,20,11,L0|L1}, /* 42: 0110 0100 0100 0010 xxxx xxxx */ 2208 {ADI_PD_xx, 3,20,11,L0|L1}, /* 43: 0110 0100 0100 0011 xxxx xxxx */ 2209 {illegal2, 3,11,11,L0|L1}, /* 44: 0110 0100 0100 0100 xxxx xxxx */ 2210 {ADI_PF_xx, 3,20,11,L0|L1}, /* 45: 0110 0100 0100 0101 xxxx xxxx */ 2211 {ADI_MKH_xx, 3,20,11,L0|L1}, /* 46: 0110 0100 0100 0110 xxxx xxxx */ 2212 {ADI_MKL_xx, 3,20,11,L0|L1}, /* 47: 0110 0100 0100 0111 xxxx xxxx */ 2213 {ONI_PA_xx, 3,20,11,L0|L1}, /* 48: 0110 0100 0100 1000 xxxx xxxx */ 2214 {ONI_PB_xx, 3,20,11,L0|L1}, /* 49: 0110 0100 0100 1001 xxxx xxxx */ 2215 {ONI_PC_xx, 3,20,11,L0|L1}, /* 4a: 0110 0100 0100 1010 xxxx xxxx */ 2216 {ONI_PD_xx, 3,20,11,L0|L1}, /* 4b: 0110 0100 0100 1011 xxxx xxxx */ 2217 {illegal2, 3,11,11,L0|L1}, /* 4c: 0110 0100 0100 1100 xxxx xxxx */ 2218 {ONI_PF_xx, 3,20,11,L0|L1}, /* 4d: 0110 0100 0100 1101 xxxx xxxx */ 2219 {ONI_MKH_xx, 3,20,11,L0|L1}, /* 4e: 0110 0100 0100 1110 xxxx xxxx */ 2220 {ONI_MKL_xx, 3,20,11,L0|L1}, /* 4f: 0110 0100 0100 1111 xxxx xxxx */ 2221 2222 {ACI_PA_xx, 3,20,11,L0|L1}, /* 50: 0110 0100 0101 0000 xxxx xxxx */ 2223 {ACI_PB_xx, 3,20,11,L0|L1}, /* 51: 0110 0100 0101 0001 xxxx xxxx */ 2224 {ACI_PC_xx, 3,20,11,L0|L1}, /* 52: 0110 0100 0101 0010 xxxx xxxx */ 2225 {ACI_PD_xx, 3,20,11,L0|L1}, /* 53: 0110 0100 0101 0011 xxxx xxxx */ 2226 {illegal2, 3,11,11,L0|L1}, /* 54: 0110 0100 0101 0100 xxxx xxxx */ 2227 {ACI_PF_xx, 3,20,11,L0|L1}, /* 55: 0110 0100 0101 0101 xxxx xxxx */ 2228 {ACI_MKH_xx, 3,20,11,L0|L1}, /* 56: 0110 0100 0101 0110 xxxx xxxx */ 2229 {ACI_MKL_xx, 3,20,11,L0|L1}, /* 57: 0110 0100 0101 0111 xxxx xxxx */ 2230 {OFFI_PA_xx, 3,20,11,L0|L1}, /* 58: 0110 0100 0101 1000 xxxx xxxx */ 2231 {OFFI_PB_xx, 3,20,11,L0|L1}, /* 59: 0110 0100 0101 1001 xxxx xxxx */ 2232 {OFFI_PC_xx, 3,20,11,L0|L1}, /* 5a: 0110 0100 0101 1010 xxxx xxxx */ 2233 {OFFI_PD_xx, 3,20,11,L0|L1}, /* 5b: 0110 0100 0101 1011 xxxx xxxx */ 2234 {illegal2, 3,11,11,L0|L1}, /* 5c: 0110 0100 0101 1100 xxxx xxxx */ 2235 {OFFI_PF_xx, 3,20,11,L0|L1}, /* 5d: 0110 0100 0101 1101 xxxx xxxx */ 2236 {OFFI_MKH_xx, 3,20,11,L0|L1}, /* 5e: 0110 0100 0101 1110 xxxx xxxx */ 2237 {OFFI_MKL_xx, 3,20,11,L0|L1}, /* 5f: 0110 0100 0101 1111 xxxx xxxx */ 2238 2239 {SUI_PA_xx, 3,20,11,L0|L1}, /* 60: 0110 0100 0110 0000 xxxx xxxx */ 2240 {SUI_PB_xx, 3,20,11,L0|L1}, /* 61: 0110 0100 0110 0001 xxxx xxxx */ 2241 {SUI_PC_xx, 3,20,11,L0|L1}, /* 62: 0110 0100 0110 0010 xxxx xxxx */ 2242 {SUI_PD_xx, 3,20,11,L0|L1}, /* 63: 0110 0100 0110 0011 xxxx xxxx */ 2243 {illegal2, 3,11,11,L0|L1}, /* 64: 0110 0100 0110 0100 xxxx xxxx */ 2244 {SUI_PF_xx, 3,20,11,L0|L1}, /* 65: 0110 0100 0110 0101 xxxx xxxx */ 2245 {SUI_MKH_xx, 3,20,11,L0|L1}, /* 66: 0110 0100 0110 0110 xxxx xxxx */ 2246 {SUI_MKL_xx, 3,20,11,L0|L1}, /* 67: 0110 0100 0110 0111 xxxx xxxx */ 2247 {NEI_PA_xx, 3,20,11,L0|L1}, /* 68: 0110 0100 0110 1000 xxxx xxxx */ 2248 {NEI_PB_xx, 3,20,11,L0|L1}, /* 69: 0110 0100 0110 1001 xxxx xxxx */ 2249 {NEI_PC_xx, 3,20,11,L0|L1}, /* 6a: 0110 0100 0110 1010 xxxx xxxx */ 2250 {NEI_PD_xx, 3,20,11,L0|L1}, /* 6b: 0110 0100 0110 1011 xxxx xxxx */ 2251 {illegal2, 3,11,11,L0|L1}, /* 6c: 0110 0100 0110 1100 xxxx xxxx */ 2252 {NEI_PF_xx, 3,20,11,L0|L1}, /* 6d: 0110 0100 0110 1101 xxxx xxxx */ 2253 {NEI_MKH_xx, 3,20,11,L0|L1}, /* 6e: 0110 0100 0110 1110 xxxx xxxx */ 2254 {NEI_MKL_xx, 3,20,11,L0|L1}, /* 6f: 0110 0100 0110 1111 xxxx xxxx */ 2255 2256 {SBI_PA_xx, 3,20,11,L0|L1}, /* 70: 0110 0100 0111 0000 xxxx xxxx */ 2257 {SBI_PB_xx, 3,20,11,L0|L1}, /* 71: 0110 0100 0111 0001 xxxx xxxx */ 2258 {SBI_PC_xx, 3,20,11,L0|L1}, /* 72: 0110 0100 0111 0010 xxxx xxxx */ 2259 {SBI_PD_xx, 3,20,11,L0|L1}, /* 73: 0110 0100 0111 0011 xxxx xxxx */ 2260 {illegal2, 3,11,11,L0|L1}, /* 74: 0110 0100 0111 0100 xxxx xxxx */ 2261 {SBI_PF_xx, 3,20,11,L0|L1}, /* 75: 0110 0100 0111 0101 xxxx xxxx */ 2262 {SBI_MKH_xx, 3,20,11,L0|L1}, /* 76: 0110 0100 0111 0110 xxxx xxxx */ 2263 {SBI_MKL_xx, 3,20,11,L0|L1}, /* 77: 0110 0100 0111 0111 xxxx xxxx */ 2264 {EQI_PA_xx, 3,20,11,L0|L1}, /* 78: 0110 0100 0111 1000 xxxx xxxx */ 2265 {EQI_PB_xx, 3,20,11,L0|L1}, /* 79: 0110 0100 0111 1001 xxxx xxxx */ 2266 {EQI_PC_xx, 3,20,11,L0|L1}, /* 7a: 0110 0100 0111 1010 xxxx xxxx */ 2267 {EQI_PD_xx, 3,20,11,L0|L1}, /* 7b: 0110 0100 0111 1011 xxxx xxxx */ 2268 {illegal2, 3,11,11,L0|L1}, /* 7c: 0110 0100 0111 1100 xxxx xxxx */ 2269 {EQI_PF_xx, 3,20,11,L0|L1}, /* 7d: 0110 0100 0111 1101 xxxx xxxx */ 2270 {EQI_MKH_xx, 3,20,11,L0|L1}, /* 7e: 0110 0100 0111 1110 xxxx xxxx */ 2271 {EQI_MKL_xx, 3,20,11,L0|L1}, /* 7f: 0110 0100 0111 1111 xxxx xxxx */ 2272 2273 {MVI_ANM_xx, 3,14,11,L0|L1}, /* 80: 0110 0100 1000 0000 xxxx xxxx */ 2274 {MVI_SMH_xx, 3,14,11,L0|L1}, /* 81: 0110 0100 1000 0001 xxxx xxxx */ 2275 {illegal2, 3,11,11,L0|L1}, /* 82: 0110 0100 1000 0010 xxxx xxxx */ 2276 {MVI_EOM_xx, 3,14,11,L0|L1}, /* 83: 0110 0100 1000 0011 xxxx xxxx */ 2277 {illegal2, 3,11,11,L0|L1}, /* 84: 0110 0100 1000 0100 xxxx xxxx */ 2278 {MVI_TMM_xx, 3,14,11,L0|L1}, /* 85: 0110 0100 1000 0101 xxxx xxxx */ 2279 {illegal2, 3,11,11,L0|L1}, /* 86: 0110 0100 1000 0110 xxxx xxxx */ 2280 {illegal2, 3,11,11,L0|L1}, /* 87: 0110 0100 1000 0111 xxxx xxxx */ 2281 {ANI_ANM_xx, 3,20,11,L0|L1}, /* 88: 0110 0100 1000 1000 xxxx xxxx */ 2282 {ANI_SMH_xx, 3,20,11,L0|L1}, /* 89: 0110 0100 1000 1001 xxxx xxxx */ 2283 {illegal2, 3,11,11,L0|L1}, /* 8a: 0110 0100 1000 1010 xxxx xxxx */ 2284 {ANI_EOM_xx, 3,20,11,L0|L1}, /* 8b: 0110 0100 1000 1011 xxxx xxxx */ 2285 {illegal2, 3,11,11,L0|L1}, /* 8c: 0110 0100 1000 1100 xxxx xxxx */ 2286 {ANI_TMM_xx, 3,20,11,L0|L1}, /* 8d: 0110 0100 1000 1101 xxxx xxxx */ 2287 {illegal2, 3,11,11,L0|L1}, /* 8e: 0110 0100 1000 1110 xxxx xxxx */ 2288 {illegal2, 3,11,11,L0|L1}, /* 8f: 0110 0100 1000 1111 xxxx xxxx */ 2289 2290 {XRI_ANM_xx, 3,20,11,L0|L1}, /* 90: 0110 0100 1001 0000 xxxx xxxx */ 2291 {XRI_SMH_xx, 3,20,11,L0|L1}, /* 91: 0110 0100 1001 0001 xxxx xxxx */ 2292 {illegal2, 3,11,11,L0|L1}, /* 92: 0110 0100 1001 0010 xxxx xxxx */ 2293 {XRI_EOM_xx, 3,20,11,L0|L1}, /* 93: 0110 0100 1001 0011 xxxx xxxx */ 2294 {illegal2, 3,11,11,L0|L1}, /* 94: 0110 0100 1001 0100 xxxx xxxx */ 2295 {XRI_TMM_xx, 3,20,11,L0|L1}, /* 95: 0110 0100 1001 0101 xxxx xxxx */ 2296 {illegal2, 3,11,11,L0|L1}, /* 96: 0110 0100 1001 0110 xxxx xxxx */ 2297 {illegal2, 3,11,11,L0|L1}, /* 97: 0110 0100 1001 0111 xxxx xxxx */ 2298 {ORI_ANM_xx, 3,20,11,L0|L1}, /* 98: 0110 0100 1001 1000 xxxx xxxx */ 2299 {ORI_SMH_xx, 3,20,11,L0|L1}, /* 99: 0110 0100 1001 1001 xxxx xxxx */ 2300 {illegal2, 3,11,11,L0|L1}, /* 9a: 0110 0100 1001 1010 xxxx xxxx */ 2301 {ORI_EOM_xx, 3,20,11,L0|L1}, /* 9b: 0110 0100 1001 1011 xxxx xxxx */ 2302 {illegal2, 3,11,11,L0|L1}, /* 9c: 0110 0100 1001 1100 xxxx xxxx */ 2303 {ORI_TMM_xx, 3,20,11,L0|L1}, /* 9d: 0110 0100 1001 1101 xxxx xxxx */ 2304 {illegal2, 3,11,11,L0|L1}, /* 9e: 0110 0100 1001 1110 xxxx xxxx */ 2305 {illegal2, 3,11,11,L0|L1}, /* 9f: 0110 0100 1001 1111 xxxx xxxx */ 2306 2307 {ADINC_ANM_xx, 3,20,11,L0|L1}, /* a0: 0110 0100 1010 0000 xxxx xxxx */ 2308 {ADINC_SMH_xx, 3,20,11,L0|L1}, /* a1: 0110 0100 1010 0001 xxxx xxxx */ 2309 {illegal2, 3,11,11,L0|L1}, /* a2: 0110 0100 1010 0010 xxxx xxxx */ 2310 {ADINC_EOM_xx, 3,20,11,L0|L1}, /* a3: 0110 0100 1010 0011 xxxx xxxx */ 2311 {illegal2, 3,11,11,L0|L1}, /* a4: 0110 0100 1010 0100 xxxx xxxx */ 2312 {ADINC_TMM_xx, 3,20,11,L0|L1}, /* a5: 0110 0100 1010 0101 xxxx xxxx */ 2313 {illegal2, 3,11,11,L0|L1}, /* a6: 0110 0100 1010 0110 xxxx xxxx */ 2314 {illegal2, 3,11,11,L0|L1}, /* a7: 0110 0100 1010 0111 xxxx xxxx */ 2315 {GTI_ANM_xx, 3,20,11,L0|L1}, /* a8: 0110 0100 1010 1000 xxxx xxxx */ 2316 {GTI_SMH_xx, 3,20,11,L0|L1}, /* a9: 0110 0100 1010 1001 xxxx xxxx */ 2317 {illegal2, 3,11,11,L0|L1}, /* aa: 0110 0100 1010 1010 xxxx xxxx */ 2318 {GTI_EOM_xx, 3,20,11,L0|L1}, /* ab: 0110 0100 1010 1011 xxxx xxxx */ 2319 {illegal2, 3,11,11,L0|L1}, /* ac: 0110 0100 1010 1100 xxxx xxxx */ 2320 {GTI_TMM_xx, 3,20,11,L0|L1}, /* ad: 0110 0100 1010 1101 xxxx xxxx */ 2321 {illegal2, 3,11,11,L0|L1}, /* ae: 0110 0100 1010 1110 xxxx xxxx */ 2322 {illegal2, 3,11,11,L0|L1}, /* af: 0110 0100 1010 1111 xxxx xxxx */ 2323 2324 {SUINB_ANM_xx, 3,20,11,L0|L1}, /* b0: 0110 0100 1011 0000 xxxx xxxx */ 2325 {SUINB_SMH_xx, 3,20,11,L0|L1}, /* b1: 0110 0100 1011 0001 xxxx xxxx */ 2326 {illegal2, 3,11,11,L0|L1}, /* b2: 0110 0100 1011 0010 xxxx xxxx */ 2327 {SUINB_EOM_xx, 3,20,11,L0|L1}, /* b3: 0110 0100 1011 0011 xxxx xxxx */ 2328 {illegal2, 3,11,11,L0|L1}, /* b4: 0110 0100 1011 0100 xxxx xxxx */ 2329 {SUINB_TMM_xx, 3,20,11,L0|L1}, /* b5: 0110 0100 1011 0101 xxxx xxxx */ 2330 {illegal2, 3,11,11,L0|L1}, /* b6: 0110 0100 1011 0110 xxxx xxxx */ 2331 {illegal2, 3,11,11,L0|L1}, /* b7: 0110 0100 1011 0111 xxxx xxxx */ 2332 {LTI_ANM_xx, 3,20,11,L0|L1}, /* b8: 0110 0100 1011 1000 xxxx xxxx */ 2333 {LTI_SMH_xx, 3,20,11,L0|L1}, /* b9: 0110 0100 1011 1001 xxxx xxxx */ 2334 {illegal2, 3,11,11,L0|L1}, /* ba: 0110 0100 1011 1010 xxxx xxxx */ 2335 {LTI_EOM_xx, 3,20,11,L0|L1}, /* bb: 0110 0100 1011 1011 xxxx xxxx */ 2336 {illegal2, 3,11,11,L0|L1}, /* bc: 0110 0100 1011 1100 xxxx xxxx */ 2337 {LTI_TMM_xx, 3,20,11,L0|L1}, /* bd: 0110 0100 1011 1101 xxxx xxxx */ 2338 {illegal2, 3,11,11,L0|L1}, /* be: 0110 0100 1011 1110 xxxx xxxx */ 2339 {illegal2, 3,11,11,L0|L1}, /* bf: 0110 0100 1011 1111 xxxx xxxx */ 2340 2341 {ADI_ANM_xx, 3,20,11,L0|L1}, /* c0: 0110 0100 1100 0000 xxxx xxxx */ 2342 {ADI_SMH_xx, 3,20,11,L0|L1}, /* c1: 0110 0100 1100 0001 xxxx xxxx */ 2343 {illegal2, 3,11,11,L0|L1}, /* c2: 0110 0100 1100 0010 xxxx xxxx */ 2344 {ADI_EOM_xx, 3,20,11,L0|L1}, /* c3: 0110 0100 1100 0011 xxxx xxxx */ 2345 {illegal2, 3,11,11,L0|L1}, /* c4: 0110 0100 1100 0100 xxxx xxxx */ 2346 {ADI_TMM_xx, 3,20,11,L0|L1}, /* c5: 0110 0100 1100 0101 xxxx xxxx */ 2347 {illegal2, 3,11,11,L0|L1}, /* c6: 0110 0100 1100 0110 xxxx xxxx */ 2348 {illegal2, 3,11,11,L0|L1}, /* c7: 0110 0100 1100 0111 xxxx xxxx */ 2349 {ONI_ANM_xx, 3,20,11,L0|L1}, /* c8: 0110 0100 1100 1000 xxxx xxxx */ 2350 {ONI_SMH_xx, 3,20,11,L0|L1}, /* c9: 0110 0100 1100 1001 xxxx xxxx */ 2351 {illegal2, 3,11,11,L0|L1}, /* ca: 0110 0100 1100 1010 xxxx xxxx */ 2352 {ONI_EOM_xx, 3,20,11,L0|L1}, /* cb: 0110 0100 1100 1011 xxxx xxxx */ 2353 {illegal2, 3,11,11,L0|L1}, /* cc: 0110 0100 1100 1100 xxxx xxxx */ 2354 {ONI_TMM_xx, 3,20,11,L0|L1}, /* cd: 0110 0100 1100 1101 xxxx xxxx */ 2355 {illegal2, 3,11,11,L0|L1}, /* ce: 0110 0100 1100 1110 xxxx xxxx */ 2356 {illegal2, 3,11,11,L0|L1}, /* cf: 0110 0100 1100 1111 xxxx xxxx */ 2357 2358 {ACI_ANM_xx, 3,20,11,L0|L1}, /* d0: 0110 0100 1101 0000 xxxx xxxx */ 2359 {ACI_SMH_xx, 3,20,11,L0|L1}, /* d1: 0110 0100 1101 0001 xxxx xxxx */ 2360 {illegal2, 3,11,11,L0|L1}, /* d2: 0110 0100 1101 0010 xxxx xxxx */ 2361 {ACI_EOM_xx, 3,20,11,L0|L1}, /* d3: 0110 0100 1101 0011 xxxx xxxx */ 2362 {illegal2, 3,11,11,L0|L1}, /* d4: 0110 0100 1101 0100 xxxx xxxx */ 2363 {ACI_TMM_xx, 3,20,11,L0|L1}, /* d5: 0110 0100 1101 0101 xxxx xxxx */ 2364 {illegal2, 3,11,11,L0|L1}, /* d6: 0110 0100 1101 0110 xxxx xxxx */ 2365 {illegal2, 3,11,11,L0|L1}, /* d7: 0110 0100 1101 0111 xxxx xxxx */ 2366 {OFFI_ANM_xx, 3,20,11,L0|L1}, /* d8: 0110 0100 1101 1000 xxxx xxxx */ 2367 {OFFI_SMH_xx, 3,20,11,L0|L1}, /* d9: 0110 0100 1101 1001 xxxx xxxx */ 2368 {illegal2, 3,11,11,L0|L1}, /* da: 0110 0100 1101 1010 xxxx xxxx */ 2369 {OFFI_EOM_xx, 3,20,11,L0|L1}, /* db: 0110 0100 1101 1011 xxxx xxxx */ 2370 {illegal2, 3,11,11,L0|L1}, /* dc: 0110 0100 1101 1100 xxxx xxxx */ 2371 {OFFI_TMM_xx, 3,20,11,L0|L1}, /* dd: 0110 0100 1101 1101 xxxx xxxx */ 2372 {illegal2, 3,11,11,L0|L1}, /* de: 0110 0100 1101 1110 xxxx xxxx */ 2373 {illegal2, 3,11,11,L0|L1}, /* df: 0110 0100 1101 1111 xxxx xxxx */ 2374 2375 {SUI_ANM_xx, 3,20,11,L0|L1}, /* e0: 0110 0100 1110 0000 xxxx xxxx */ 2376 {SUI_SMH_xx, 3,20,11,L0|L1}, /* e1: 0110 0100 1110 0001 xxxx xxxx */ 2377 {illegal2, 3,11,11,L0|L1}, /* e2: 0110 0100 1110 0010 xxxx xxxx */ 2378 {SUI_EOM_xx, 3,20,11,L0|L1}, /* e3: 0110 0100 1110 0011 xxxx xxxx */ 2379 {illegal2, 3,11,11,L0|L1}, /* e4: 0110 0100 1110 0100 xxxx xxxx */ 2380 {SUI_TMM_xx, 3,20,11,L0|L1}, /* e5: 0110 0100 1110 0101 xxxx xxxx */ 2381 {illegal2, 3,11,11,L0|L1}, /* e6: 0110 0100 1110 0110 xxxx xxxx */ 2382 {illegal2, 3,11,11,L0|L1}, /* e7: 0110 0100 1110 0111 xxxx xxxx */ 2383 {NEI_ANM_xx, 3,20,11,L0|L1}, /* e8: 0110 0100 1110 1000 xxxx xxxx */ 2384 {NEI_SMH_xx, 3,20,11,L0|L1}, /* e9: 0110 0100 1110 1001 xxxx xxxx */ 2385 {illegal2, 3,11,11,L0|L1}, /* ea: 0110 0100 1110 1010 xxxx xxxx */ 2386 {NEI_EOM_xx, 3,20,11,L0|L1}, /* eb: 0110 0100 1110 1011 xxxx xxxx */ 2387 {illegal2, 3,11,11,L0|L1}, /* ec: 0110 0100 1110 1100 xxxx xxxx */ 2388 {NEI_TMM_xx, 3,20,11,L0|L1}, /* ed: 0110 0100 1110 1101 xxxx xxxx */ 2389 {illegal2, 3,11,11,L0|L1}, /* ee: 0110 0100 1110 1110 xxxx xxxx */ 2390 {illegal2, 3,11,11,L0|L1}, /* ef: 0110 0100 1110 1111 xxxx xxxx */ 2391 2392 {SBI_ANM_xx, 3,20,11,L0|L1}, /* f0: 0110 0100 1111 0000 xxxx xxxx */ 2393 {SBI_SMH_xx, 3,20,11,L0|L1}, /* f1: 0110 0100 1111 0001 xxxx xxxx */ 2394 {illegal2, 3,11,11,L0|L1}, /* f2: 0110 0100 1111 0010 xxxx xxxx */ 2395 {SBI_EOM_xx, 3,20,11,L0|L1}, /* f3: 0110 0100 1111 0011 xxxx xxxx */ 2396 {illegal2, 3,11,11,L0|L1}, /* f4: 0110 0100 1111 0100 xxxx xxxx */ 2397 {SBI_TMM_xx, 3,20,11,L0|L1}, /* f5: 0110 0100 1111 0101 xxxx xxxx */ 2398 {illegal2, 3,11,11,L0|L1}, /* f6: 0110 0100 1111 0110 xxxx xxxx */ 2399 {illegal2, 3,11,11,L0|L1}, /* f7: 0110 0100 1111 0111 xxxx xxxx */ 2400 {EQI_ANM_xx, 3,20,11,L0|L1}, /* f8: 0110 0100 1111 1000 xxxx xxxx */ 2401 {EQI_SMH_xx, 3,20,11,L0|L1}, /* f9: 0110 0100 1111 1001 xxxx xxxx */ 2402 {illegal2, 3,11,11,L0|L1}, /* fa: 0110 0100 1111 1010 xxxx xxxx */ 2403 {EQI_EOM_xx, 3,20,11,L0|L1}, /* fb: 0110 0100 1111 1011 xxxx xxxx */ 2404 {illegal2, 3,11,11,L0|L1}, /* fc: 0110 0100 1111 1100 xxxx xxxx */ 2405 {EQI_TMM_xx, 3,20,11,L0|L1}, /* fd: 0110 0100 1111 1101 xxxx xxxx */ 2406 {illegal2, 3,11,11,L0|L1}, /* fe: 0110 0100 1111 1110 xxxx xxxx */ 2407 {illegal2, 3,11,11,L0|L1} /* ff: 0110 0100 1111 1111 xxxx xxxx */ 2408 }; 2409 2410 /* prefix 70 */ 2411 static struct opcode_s op70[256] = 2412 { 2413 {illegal2, 2, 8, 8,L0|L1}, /* 00: 0111 0000 0000 0000 */ 2414 {illegal2, 2, 8, 8,L0|L1}, /* 01: 0111 0000 0000 0001 */ 2415 {illegal2, 2, 8, 8,L0|L1}, /* 02: 0111 0000 0000 0010 */ 2416 {illegal2, 2, 8, 8,L0|L1}, /* 03: 0111 0000 0000 0011 */ 2417 {illegal2, 2, 8, 8,L0|L1}, /* 04: 0111 0000 0000 0100 */ 2418 {illegal2, 2, 8, 8,L0|L1}, /* 05: 0111 0000 0000 0101 */ 2419 {illegal2, 2, 8, 8,L0|L1}, /* 06: 0111 0000 0000 0110 */ 2420 {illegal2, 2, 8, 8,L0|L1}, /* 07: 0111 0000 0000 0111 */ 2421 {illegal2, 2, 8, 8,L0|L1}, /* 08: 0111 0000 0000 1000 */ 2422 {illegal2, 2, 8, 8,L0|L1}, /* 09: 0111 0000 0000 1001 */ 2423 {illegal2, 2, 8, 8,L0|L1}, /* 0a: 0111 0000 0000 1010 */ 2424 {illegal2, 2, 8, 8,L0|L1}, /* 0b: 0111 0000 0000 1011 */ 2425 {illegal2, 2, 8, 8,L0|L1}, /* 0c: 0111 0000 0000 1100 */ 2426 {illegal2, 2, 8, 8,L0|L1}, /* 0d: 0111 0000 0000 1101 */ 2427 {SSPD_w, 4,20,20,L0|L1}, /* 0e: 0111 0000 0000 1110 llll llll hhhh hhhh */ 2428 {LSPD_w, 4,20,20,L0|L1}, /* 0f: 0111 0000 0000 1111 llll llll hhhh hhhh */ 2429 2430 {illegal2, 2, 8, 8,L0|L1}, /* 10: 0111 0000 0001 0000 */ 2431 {illegal2, 2, 8, 8,L0|L1}, /* 11: 0111 0000 0001 0001 */ 2432 {illegal2, 2, 8, 8,L0|L1}, /* 12: 0111 0000 0001 0010 */ 2433 {illegal2, 2, 8, 8,L0|L1}, /* 13: 0111 0000 0001 0011 */ 2434 {illegal2, 2, 8, 8,L0|L1}, /* 14: 0111 0000 0001 0100 */ 2435 {illegal2, 2, 8, 8,L0|L1}, /* 15: 0111 0000 0001 0101 */ 2436 {illegal2, 2, 8, 8,L0|L1}, /* 16: 0111 0000 0001 0110 */ 2437 {illegal2, 2, 8, 8,L0|L1}, /* 17: 0111 0000 0001 0111 */ 2438 {illegal2, 2, 8, 8,L0|L1}, /* 18: 0111 0000 0001 1000 */ 2439 {illegal2, 2, 8, 8,L0|L1}, /* 19: 0111 0000 0001 1001 */ 2440 {illegal2, 2, 8, 8,L0|L1}, /* 1a: 0111 0000 0001 1010 */ 2441 {illegal2, 2, 8, 8,L0|L1}, /* 1b: 0111 0000 0001 1011 */ 2442 {illegal2, 2, 8, 8,L0|L1}, /* 1c: 0111 0000 0001 1100 */ 2443 {illegal2, 2, 8, 8,L0|L1}, /* 1d: 0111 0000 0001 1101 */ 2444 {SBCD_w, 4,20,20,L0|L1}, /* 1e: 0111 0000 0001 1110 llll llll hhhh hhhh */ 2445 {LBCD_w, 4,20,20,L0|L1}, /* 1f: 0111 0000 0001 1111 llll llll hhhh hhhh */ 2446 2447 {illegal2, 2, 8, 8,L0|L1}, /* 20: 0111 0000 0010 0000 */ 2448 {illegal2, 2, 8, 8,L0|L1}, /* 21: 0111 0000 0010 0001 */ 2449 {illegal2, 2, 8, 8,L0|L1}, /* 22: 0111 0000 0010 0010 */ 2450 {illegal2, 2, 8, 8,L0|L1}, /* 23: 0111 0000 0010 0011 */ 2451 {illegal2, 2, 8, 8,L0|L1}, /* 24: 0111 0000 0010 0100 */ 2452 {illegal2, 2, 8, 8,L0|L1}, /* 25: 0111 0000 0010 0101 */ 2453 {illegal2, 2, 8, 8,L0|L1}, /* 26: 0111 0000 0010 0110 */ 2454 {illegal2, 2, 8, 8,L0|L1}, /* 27: 0111 0000 0010 0111 */ 2455 {illegal2, 2, 8, 8,L0|L1}, /* 28: 0111 0000 0010 1000 */ 2456 {illegal2, 2, 8, 8,L0|L1}, /* 29: 0111 0000 0010 1001 */ 2457 {illegal2, 2, 8, 8,L0|L1}, /* 2a: 0111 0000 0010 1010 */ 2458 {illegal2, 2, 8, 8,L0|L1}, /* 2b: 0111 0000 0010 1011 */ 2459 {illegal2, 2, 8, 8,L0|L1}, /* 2c: 0111 0000 0010 1100 */ 2460 {illegal2, 2, 8, 8,L0|L1}, /* 2d: 0111 0000 0010 1101 */ 2461 {SDED_w, 4,20,20,L0|L1}, /* 2e: 0111 0000 0010 1110 llll llll hhhh hhhh */ 2462 {LDED_w, 4,20,20,L0|L1}, /* 2f: 0111 0000 0010 1111 llll llll hhhh hhhh */ 2463 2464 {illegal2, 2, 8, 8,L0|L1}, /* 30: 0111 0000 0011 0000 */ 2465 {illegal2, 2, 8, 8,L0|L1}, /* 31: 0111 0000 0011 0001 */ 2466 {illegal2, 2, 8, 8,L0|L1}, /* 32: 0111 0000 0011 0010 */ 2467 {illegal2, 2, 8, 8,L0|L1}, /* 33: 0111 0000 0011 0011 */ 2468 {illegal2, 2, 8, 8,L0|L1}, /* 34: 0111 0000 0011 0100 */ 2469 {illegal2, 2, 8, 8,L0|L1}, /* 35: 0111 0000 0011 0101 */ 2470 {illegal2, 2, 8, 8,L0|L1}, /* 36: 0111 0000 0011 0110 */ 2471 {illegal2, 2, 8, 8,L0|L1}, /* 37: 0111 0000 0011 0111 */ 2472 {illegal2, 2, 8, 8,L0|L1}, /* 38: 0111 0000 0011 1000 */ 2473 {illegal2, 2, 8, 8,L0|L1}, /* 39: 0111 0000 0011 1001 */ 2474 {illegal2, 2, 8, 8,L0|L1}, /* 3a: 0111 0000 0011 1010 */ 2475 {illegal2, 2, 8, 8,L0|L1}, /* 3b: 0111 0000 0011 1011 */ 2476 {illegal2, 2, 8, 8,L0|L1}, /* 3c: 0111 0000 0011 1100 */ 2477 {illegal2, 2, 8, 8,L0|L1}, /* 3d: 0111 0000 0011 1101 */ 2478 {SHLD_w, 4,20,20,L0|L1}, /* 3e: 0111 0000 0011 1110 llll llll hhhh hhhh */ 2479 {LHLD_w, 4,20,20,L0|L1}, /* 3f: 0111 0000 0011 1111 llll llll hhhh hhhh */ 2480 2481 {illegal2, 2, 8, 8,L0|L1}, /* 40: 0111 0000 0100 0000 */ 2482 {EADD_EA_A, 2,11,11,L0|L1}, /* 41: 0111 0000 0100 0001 */ 2483 {EADD_EA_B, 2,11,11,L0|L1}, /* 42: 0111 0000 0100 0010 */ 2484 {EADD_EA_C, 2,11,11,L0|L1}, /* 43: 0111 0000 0100 0011 */ 2485 {illegal2, 2, 8, 8,L0|L1}, /* 44: 0111 0000 0100 0100 */ 2486 {illegal2, 2, 8, 8,L0|L1}, /* 45: 0111 0000 0100 0101 */ 2487 {illegal2, 2, 8, 8,L0|L1}, /* 46: 0111 0000 0100 0110 */ 2488 {illegal2, 2, 8, 8,L0|L1}, /* 47: 0111 0000 0100 0111 */ 2489 {illegal2, 2, 8, 8,L0|L1}, /* 48: 0111 0000 0100 1000 */ 2490 {illegal2, 2, 8, 8,L0|L1}, /* 49: 0111 0000 0100 1001 */ 2491 {illegal2, 2, 8, 8,L0|L1}, /* 4a: 0111 0000 0100 1010 */ 2492 {illegal2, 2, 8, 8,L0|L1}, /* 4b: 0111 0000 0100 1011 */ 2493 {illegal2, 2, 8, 8,L0|L1}, /* 4c: 0111 0000 0100 1100 */ 2494 {illegal2, 2, 8, 8,L0|L1}, /* 4d: 0111 0000 0100 1101 */ 2495 {illegal2, 2, 8, 8,L0|L1}, /* 4e: 0111 0000 0100 1110 */ 2496 {illegal2, 2, 8, 8,L0|L1}, /* 4f: 0111 0000 0100 1111 */ 2497 2498 {illegal2, 2, 8, 8,L0|L1}, /* 50: 0111 0000 0101 0000 */ 2499 {illegal2, 2, 8, 8,L0|L1}, /* 51: 0111 0000 0101 0001 */ 2500 {illegal2, 2, 8, 8,L0|L1}, /* 52: 0111 0000 0101 0010 */ 2501 {illegal2, 2, 8, 8,L0|L1}, /* 53: 0111 0000 0101 0011 */ 2502 {illegal2, 2, 8, 8,L0|L1}, /* 54: 0111 0000 0101 0100 */ 2503 {illegal2, 2, 8, 8,L0|L1}, /* 55: 0111 0000 0101 0101 */ 2504 {illegal2, 2, 8, 8,L0|L1}, /* 56: 0111 0000 0101 0110 */ 2505 {illegal2, 2, 8, 8,L0|L1}, /* 57: 0111 0000 0101 0111 */ 2506 {illegal2, 2, 8, 8,L0|L1}, /* 58: 0111 0000 0101 1000 */ 2507 {illegal2, 2, 8, 8,L0|L1}, /* 59: 0111 0000 0101 1001 */ 2508 {illegal2, 2, 8, 8,L0|L1}, /* 5a: 0111 0000 0101 1010 */ 2509 {illegal2, 2, 8, 8,L0|L1}, /* 5b: 0111 0000 0101 1011 */ 2510 {illegal2, 2, 8, 8,L0|L1}, /* 5c: 0111 0000 0101 1100 */ 2511 {illegal2, 2, 8, 8,L0|L1}, /* 5d: 0111 0000 0101 1101 */ 2512 {illegal2, 2, 8, 8,L0|L1}, /* 5e: 0111 0000 0101 1110 */ 2513 {illegal2, 2, 8, 8,L0|L1}, /* 5f: 0111 0000 0101 1111 */ 2514 2515 {illegal2, 2, 8, 8,L0|L1}, /* 60: 0111 0000 0110 0000 */ 2516 {ESUB_EA_A, 2,11,11,L0|L1}, /* 61: 0111 0000 0110 0001 */ 2517 {ESUB_EA_B, 2,11,11,L0|L1}, /* 62: 0111 0000 0110 0010 */ 2518 {ESUB_EA_C, 2,11,11,L0|L1}, /* 63: 0111 0000 0110 0011 */ 2519 {illegal2, 2, 8, 8,L0|L1}, /* 64: 0111 0000 0110 0100 */ 2520 {illegal2, 2, 8, 8,L0|L1}, /* 65: 0111 0000 0110 0101 */ 2521 {illegal2, 2, 8, 8,L0|L1}, /* 66: 0111 0000 0110 0110 */ 2522 {illegal2, 2, 8, 8,L0|L1}, /* 67: 0111 0000 0110 0111 */ 2523 {MOV_V_w, 4,17,17,L0|L1}, /* 68: 0111 0000 0110 1000 llll llll hhhh hhhh */ 2524 {MOV_A_w, 4,17,17,L0|L1}, /* 69: 0111 0000 0110 1001 llll llll hhhh hhhh */ 2525 {MOV_B_w, 4,17,17,L0|L1}, /* 6a: 0111 0000 0110 1010 llll llll hhhh hhhh */ 2526 {MOV_C_w, 4,17,17,L0|L1}, /* 6b: 0111 0000 0110 1011 llll llll hhhh hhhh */ 2527 {MOV_D_w, 4,17,17,L0|L1}, /* 6c: 0111 0000 0110 1100 llll llll hhhh hhhh */ 2528 {MOV_E_w, 4,17,17,L0|L1}, /* 6d: 0111 0000 0110 1101 llll llll hhhh hhhh */ 2529 {MOV_H_w, 4,17,17,L0|L1}, /* 6e: 0111 0000 0110 1110 llll llll hhhh hhhh */ 2530 {MOV_L_w, 4,17,17,L0|L1}, /* 6f: 0111 0000 0110 1111 llll llll hhhh hhhh */ 2531 2532 {illegal2, 2, 8, 8,L0|L1}, /* 70: 0111 0000 0111 0000 */ 2533 {illegal2, 2, 8, 8,L0|L1}, /* 71: 0111 0000 0111 0001 */ 2534 {illegal2, 2, 8, 8,L0|L1}, /* 72: 0111 0000 0111 0010 */ 2535 {illegal2, 2, 8, 8,L0|L1}, /* 73: 0111 0000 0111 0011 */ 2536 {illegal2, 2, 8, 8,L0|L1}, /* 74: 0111 0000 0111 0100 */ 2537 {illegal2, 2, 8, 8,L0|L1}, /* 75: 0111 0000 0111 0101 */ 2538 {illegal2, 2, 8, 8,L0|L1}, /* 76: 0111 0000 0111 0110 */ 2539 {illegal2, 2, 8, 8,L0|L1}, /* 77: 0111 0000 0111 0111 */ 2540 {MOV_w_V, 4,17,17,L0|L1}, /* 78: 0111 0000 0111 1000 llll llll hhhh hhhh */ 2541 {MOV_w_A, 4,17,17,L0|L1}, /* 79: 0111 0000 0111 1001 llll llll hhhh hhhh */ 2542 {MOV_w_B, 4,17,17,L0|L1}, /* 7a: 0111 0000 0111 1010 llll llll hhhh hhhh */ 2543 {MOV_w_C, 4,17,17,L0|L1}, /* 7b: 0111 0000 0111 1011 llll llll hhhh hhhh */ 2544 {MOV_w_D, 4,17,17,L0|L1}, /* 7c: 0111 0000 0111 1100 llll llll hhhh hhhh */ 2545 {MOV_w_E, 4,17,17,L0|L1}, /* 7d: 0111 0000 0111 1101 llll llll hhhh hhhh */ 2546 {MOV_w_H, 4,17,17,L0|L1}, /* 7e: 0111 0000 0111 1110 llll llll hhhh hhhh */ 2547 {MOV_w_L, 4,17,17,L0|L1}, /* 7f: 0111 0000 0111 1111 llll llll hhhh hhhh */ 2548 2549 {illegal2, 2, 8, 8,L0|L1}, /* 80: 0111 0000 1000 0000 */ 2550 {illegal2, 2, 8, 8,L0|L1}, /* 81: 0111 0000 1000 0001 */ 2551 {illegal2, 2, 8, 8,L0|L1}, /* 82: 0111 0000 1000 0010 */ 2552 {illegal2, 2, 8, 8,L0|L1}, /* 83: 0111 0000 1000 0011 */ 2553 {illegal2, 2, 8, 8,L0|L1}, /* 84: 0111 0000 1000 0100 */ 2554 {illegal2, 2, 8, 8,L0|L1}, /* 85: 0111 0000 1000 0101 */ 2555 {illegal2, 2, 8, 8,L0|L1}, /* 86: 0111 0000 1000 0110 */ 2556 {illegal2, 2, 8, 8,L0|L1}, /* 87: 0111 0000 1000 0111 */ 2557 {illegal2, 2, 8, 8,L0|L1}, /* 88: 0111 0000 1000 1000 */ 2558 {ANAX_B, 2,11,11,L0|L1}, /* 89: 0111 0000 1000 1001 */ 2559 {ANAX_D, 2,11,11,L0|L1}, /* 8a: 0111 0000 1000 1010 */ 2560 {ANAX_H, 2,11,11,L0|L1}, /* 8b: 0111 0000 1000 1011 */ 2561 {ANAX_Dp, 2,11,11,L0|L1}, /* 8c: 0111 0000 1000 1100 */ 2562 {ANAX_Hp, 2,11,11,L0|L1}, /* 8d: 0111 0000 1000 1101 */ 2563 {ANAX_Dm, 2,11,11,L0|L1}, /* 8e: 0111 0000 1000 1110 */ 2564 {ANAX_Hm, 2,11,11,L0|L1}, /* 8f: 0111 0000 1000 1111 */ 2565 2566 {illegal2, 2, 8, 8,L0|L1}, /* 90: 0111 0000 1001 0000 */ 2567 {XRAX_B, 2,11,11,L0|L1}, /* 91: 0111 0000 1001 0001 */ 2568 {XRAX_D, 2,11,11,L0|L1}, /* 92: 0111 0000 1001 0010 */ 2569 {XRAX_H, 2,11,11,L0|L1}, /* 93: 0111 0000 1001 0011 */ 2570 {XRAX_Dp, 2,11,11,L0|L1}, /* 94: 0111 0000 1001 0100 */ 2571 {XRAX_Hp, 2,11,11,L0|L1}, /* 95: 0111 0000 1001 0101 */ 2572 {XRAX_Dm, 2,11,11,L0|L1}, /* 96: 0111 0000 1001 0110 */ 2573 {XRAX_Hm, 2,11,11,L0|L1}, /* 97: 0111 0000 1001 0111 */ 2574 {illegal2, 2, 8, 8,L0|L1}, /* 98: 0111 0000 1001 1000 */ 2575 // orax added, timings not verified 2576 {ORAX_B, 2,11, 8,L0|L1}, /* 99: 0111 0000 1001 1001 */ 2577 {ORAX_D, 2,11, 8,L0|L1}, /* 9a: 0111 0000 1001 1010 */ 2578 {ORAX_H, 2,11, 8,L0|L1}, /* 9b: 0111 0000 1001 1011 */ 2579 {ORAX_Dp, 2,11, 8,L0|L1}, /* 9c: 0111 0000 1001 1100 */ 2580 {ORAX_Hp, 2,11, 8,L0|L1}, /* 9d: 0111 0000 1001 1101 */ 2581 {ORAX_Dm, 2,11, 8,L0|L1}, /* 9e: 0111 0000 1001 1110 */ 2582 {ORAX_Hm, 2,11, 8,L0|L1}, /* 9f: 0111 0000 1001 1111 */ 2583 2584 {illegal2, 2, 8, 8,L0|L1}, /* a0: 0111 0000 1010 0000 */ 2585 {ADDNCX_B, 2,11, 8,L0|L1}, /* a1: 0111 0000 1010 0001 */ 2586 {ADDNCX_D, 2,11, 8,L0|L1}, /* a2: 0111 0000 1010 0010 */ 2587 {ADDNCX_H, 2,11, 8,L0|L1}, /* a3: 0111 0000 1010 0011 */ 2588 {ADDNCX_Dp, 2,11, 8,L0|L1}, /* a4: 0111 0000 1010 0100 */ 2589 {ADDNCX_Hp, 2,11, 8,L0|L1}, /* a5: 0111 0000 1010 0101 */ 2590 {ADDNCX_Dm, 2,11, 8,L0|L1}, /* a6: 0111 0000 1010 0110 */ 2591 {ADDNCX_Hm, 2,11, 8,L0|L1}, /* a7: 0111 0000 1010 0111 */ 2592 {illegal2, 2, 8, 8,L0|L1}, /* a8: 0111 0000 1010 1000 */ 2593 {GTAX_B, 2,11,11,L0|L1}, /* a9: 0111 0000 1010 1001 */ 2594 {GTAX_D, 2,11,11,L0|L1}, /* aa: 0111 0000 1010 1010 */ 2595 {GTAX_H, 2,11,11,L0|L1}, /* ab: 0111 0000 1010 1011 */ 2596 {GTAX_Dp, 2,11,11,L0|L1}, /* ac: 0111 0000 1010 1100 */ 2597 {GTAX_Hp, 2,11,11,L0|L1}, /* ad: 0111 0000 1010 1101 */ 2598 {GTAX_Dm, 2,11,11,L0|L1}, /* ae: 0111 0000 1010 1110 */ 2599 {GTAX_Hm, 2,11,11,L0|L1}, /* af: 0111 0000 1010 1111 */ 2600 2601 {illegal2, 2, 8, 8,L0|L1}, /* b0: 0111 0000 1011 0000 */ 2602 {SUBNBX_B, 2,11,11,L0|L1}, /* b1: 0111 0000 1011 0001 */ 2603 {SUBNBX_D, 2,11,11,L0|L1}, /* b2: 0111 0000 1011 0010 */ 2604 {SUBNBX_H, 2,11,11,L0|L1}, /* b3: 0111 0000 1011 0011 */ 2605 {SUBNBX_Dp, 2,11,11,L0|L1}, /* b4: 0111 0000 1011 0100 */ 2606 {SUBNBX_Hp, 2,11,11,L0|L1}, /* b5: 0111 0000 1011 0101 */ 2607 {SUBNBX_Dm, 2,11,11,L0|L1}, /* b6: 0111 0000 1011 0110 */ 2608 {SUBNBX_Hm, 2,11,11,L0|L1}, /* b7: 0111 0000 1011 0111 */ 2609 {illegal2, 2, 8, 8,L0|L1}, /* b8: 0111 0000 1011 1000 */ 2610 {LTAX_B, 2,11,11,L0|L1}, /* b9: 0111 0000 1011 1001 */ 2611 {LTAX_D, 2,11,11,L0|L1}, /* ba: 0111 0000 1011 1010 */ 2612 {LTAX_H, 2,11,11,L0|L1}, /* bb: 0111 0000 1011 1011 */ 2613 {LTAX_Dp, 2,11,11,L0|L1}, /* bc: 0111 0000 1011 1100 */ 2614 {LTAX_Hp, 2,11,11,L0|L1}, /* bd: 0111 0000 1011 1101 */ 2615 {LTAX_Dm, 2,11,11,L0|L1}, /* be: 0111 0000 1011 1110 */ 2616 {LTAX_Hm, 2,11,11,L0|L1}, /* bf: 0111 0000 1011 1111 */ 2617 2618 {illegal2, 2, 8, 8,L0|L1}, /* c0: 0111 0000 1100 0000 */ 2619 {ADDX_B, 2,11, 8,L0|L1}, /* c1: 0111 0000 1100 0001 */ 2620 {ADDX_D, 2,11, 8,L0|L1}, /* c2: 0111 0000 1100 0010 */ 2621 {ADDX_H, 2,11, 8,L0|L1}, /* c3: 0111 0000 1100 0011 */ 2622 {ADDX_Dp, 2,11, 8,L0|L1}, /* c4: 0111 0000 1100 0100 */ 2623 {ADDX_Hp, 2,11, 8,L0|L1}, /* c5: 0111 0000 1100 0101 */ 2624 {ADDX_Dm, 2,11, 8,L0|L1}, /* c6: 0111 0000 1100 0110 */ 2625 {ADDX_Hm, 2,11, 8,L0|L1}, /* c7: 0111 0000 1100 0111 */ 2626 {illegal2, 2, 8, 8,L0|L1}, /* c8: 0111 0000 1100 1000 */ 2627 {ONAX_B, 2,11, 8,L0|L1}, /* c9: 0111 0000 1100 1001 */ 2628 {ONAX_D, 2,11, 8,L0|L1}, /* ca: 0111 0000 1100 1010 */ 2629 {ONAX_H, 2,11, 8,L0|L1}, /* cb: 0111 0000 1100 1011 */ 2630 {ONAX_Dp, 2,11, 8,L0|L1}, /* cc: 0111 0000 1100 1100 */ 2631 {ONAX_Hp, 2,11, 8,L0|L1}, /* cd: 0111 0000 1100 1101 */ 2632 {ONAX_Dm, 2,11, 8,L0|L1}, /* ce: 0111 0000 1100 1110 */ 2633 {ONAX_Hm, 2,11, 8,L0|L1}, /* cf: 0111 0000 1100 1111 */ 2634 2635 {illegal2, 2, 8, 8,L0|L1}, /* d0: 0111 0000 1101 0000 */ 2636 {ADCX_B, 2,11, 8,L0|L1}, /* d1: 0111 0000 1101 0001 */ 2637 {ADCX_D, 2,11, 8,L0|L1}, /* d2: 0111 0000 1101 0010 */ 2638 {ADCX_H, 2,11, 8,L0|L1}, /* d3: 0111 0000 1101 0011 */ 2639 {ADCX_Dp, 2,11, 8,L0|L1}, /* d4: 0111 0000 1101 0100 */ 2640 {ADCX_Hp, 2,11, 8,L0|L1}, /* d5: 0111 0000 1101 0101 */ 2641 {ADCX_Dm, 2,11, 8,L0|L1}, /* d6: 0111 0000 1101 0110 */ 2642 {ADCX_Hm, 2,11, 8,L0|L1}, /* d7: 0111 0000 1101 0111 */ 2643 {illegal2, 2, 8, 8,L0|L1}, /* d8: 0111 0000 1101 1000 */ 2644 {OFFAX_B, 2,11, 8,L0|L1}, /* d9: 0111 0000 1101 1001 */ 2645 {OFFAX_D, 2,11, 8,L0|L1}, /* da: 0111 0000 1101 1010 */ 2646 {OFFAX_H, 2,11, 8,L0|L1}, /* db: 0111 0000 1101 1011 */ 2647 {OFFAX_Dp, 2,11, 8,L0|L1}, /* dc: 0111 0000 1101 1100 */ 2648 {OFFAX_Hp, 2,11, 8,L0|L1}, /* dd: 0111 0000 1101 1101 */ 2649 {OFFAX_Dm, 2,11, 8,L0|L1}, /* de: 0111 0000 1101 1110 */ 2650 {OFFAX_Hm, 2,11, 8,L0|L1}, /* df: 0111 0000 1101 1111 */ 2651 2652 {illegal2, 2, 8, 8,L0|L1}, /* e0: 0111 0000 1110 0000 */ 2653 {SUBX_B, 2,11,11,L0|L1}, /* e1: 0111 0000 1110 0001 */ 2654 {SUBX_D, 2,11,11,L0|L1}, /* e2: 0111 0000 1110 0010 */ 2655 {SUBX_H, 2,11,11,L0|L1}, /* e3: 0111 0000 1110 0011 */ 2656 {SUBX_Dp, 2,11,11,L0|L1}, /* e4: 0111 0000 1110 0100 */ 2657 {SUBX_Hp, 2,11,11,L0|L1}, /* e5: 0111 0000 1110 0101 */ 2658 {SUBX_Dm, 2,11,11,L0|L1}, /* e6: 0111 0000 1110 0110 */ 2659 {SUBX_Hm, 2,11,11,L0|L1}, /* e7: 0111 0000 1110 0111 */ 2660 {illegal2, 2, 8, 8,L0|L1}, /* e8: 0111 0000 1110 1000 */ 2661 {NEAX_B, 2,11,11,L0|L1}, /* e9: 0111 0000 1110 1001 */ 2662 {NEAX_D, 2,11,11,L0|L1}, /* ea: 0111 0000 1110 1010 */ 2663 {NEAX_H, 2,11,11,L0|L1}, /* eb: 0111 0000 1110 1011 */ 2664 {NEAX_Dp, 2,11,11,L0|L1}, /* ec: 0111 0000 1110 1100 */ 2665 {NEAX_Hp, 2,11,11,L0|L1}, /* ed: 0111 0000 1110 1101 */ 2666 {NEAX_Dm, 2,11,11,L0|L1}, /* ee: 0111 0000 1110 1110 */ 2667 {NEAX_Hm, 2,11,11,L0|L1}, /* ef: 0111 0000 1110 1111 */ 2668 2669 {illegal2, 2, 8, 8,L0|L1}, /* f0: 0111 0000 1111 0000 */ 2670 {SBBX_B, 2,11,11,L0|L1}, /* f1: 0111 0000 1111 0001 */ 2671 {SBBX_D, 2,11,11,L0|L1}, /* f2: 0111 0000 1111 0010 */ 2672 {SBBX_H, 2,11,11,L0|L1}, /* f3: 0111 0000 1111 0011 */ 2673 {SBBX_Dp, 2,11,11,L0|L1}, /* f4: 0111 0000 1111 0100 */ 2674 {SBBX_Hp, 2,11,11,L0|L1}, /* f5: 0111 0000 1111 0101 */ 2675 {SBBX_Dm, 2,11,11,L0|L1}, /* f6: 0111 0000 1111 0110 */ 2676 {SBBX_Hm, 2,11,11,L0|L1}, /* f7: 0111 0000 1111 0111 */ 2677 {illegal2, 2, 8, 8,L0|L1}, /* f8: 0111 0000 1111 1000 */ 2678 {EQAX_B, 2,11,11,L0|L1}, /* f9: 0111 0000 1111 1001 */ 2679 {EQAX_D, 2,11,11,L0|L1}, /* fa: 0111 0000 1111 1010 */ 2680 {EQAX_H, 2,11,11,L0|L1}, /* fb: 0111 0000 1111 1011 */ 2681 {EQAX_Dp, 2,11,11,L0|L1}, /* fc: 0111 0000 1111 1100 */ 2682 {EQAX_Hp, 2,11,11,L0|L1}, /* fd: 0111 0000 1111 1101 */ 2683 {EQAX_Dm, 2,11,11,L0|L1}, /* fe: 0111 0000 1111 1110 */ 2684 {EQAX_Hm, 2,11,11,L0|L1} /* ff: 0111 0000 1111 1111 */ 2685 }; 2686 2687 /* prefix 74 */ 2688 static struct opcode_s op74[256] = 2689 { 2690 {illegal2, 2, 8, 8,L0|L1}, /* 00: 0111 0100 0000 0000 */ 2691 {illegal2, 2, 8, 8,L0|L1}, /* 01: 0111 0100 0000 0001 */ 2692 {illegal2, 2, 8, 8,L0|L1}, /* 02: 0111 0100 0000 0010 */ 2693 {illegal2, 2, 8, 8,L0|L1}, /* 03: 0111 0100 0000 0011 */ 2694 {illegal2, 2, 8, 8,L0|L1}, /* 04: 0111 0100 0000 0100 */ 2695 {illegal2, 2, 8, 8,L0|L1}, /* 05: 0111 0100 0000 0101 */ 2696 {illegal2, 2, 8, 8,L0|L1}, /* 06: 0111 0100 0000 0110 */ 2697 {illegal2, 2, 8, 8,L0|L1}, /* 07: 0111 0100 0000 0111 */ 2698 {ANI_V_xx, 3,11,11,L0|L1}, /* 08: 0111 0100 0000 1000 xxxx xxxx */ 2699 {ANI_A_xx, 3,11,11,L0|L1}, /* 09: 0111 0100 0000 1001 xxxx xxxx */ 2700 {ANI_B_xx, 3,11,11,L0|L1}, /* 0a: 0111 0100 0000 1010 xxxx xxxx */ 2701 {ANI_C_xx, 3,11,11,L0|L1}, /* 0b: 0111 0100 0000 1011 xxxx xxxx */ 2702 {ANI_D_xx, 3,11,11,L0|L1}, /* 0c: 0111 0100 0000 1100 xxxx xxxx */ 2703 {ANI_E_xx, 3,11,11,L0|L1}, /* 0d: 0111 0100 0000 1101 xxxx xxxx */ 2704 {ANI_H_xx, 3,11,11,L0|L1}, /* 0e: 0111 0100 0000 1110 xxxx xxxx */ 2705 {ANI_L_xx, 3,11,11,L0|L1}, /* 0f: 0111 0100 0000 1111 xxxx xxxx */ 2706 2707 {XRI_V_xx, 3,11,11,L0|L1}, /* 10: 0111 0100 0001 0000 xxxx xxxx */ 2708 {XRI_A_xx, 3,11,11,L0|L1}, /* 11: 0111 0100 0001 0001 xxxx xxxx */ 2709 {XRI_B_xx, 3,11,11,L0|L1}, /* 12: 0111 0100 0001 0010 xxxx xxxx */ 2710 {XRI_C_xx, 3,11,11,L0|L1}, /* 13: 0111 0100 0001 0011 xxxx xxxx */ 2711 {XRI_D_xx, 3,11,11,L0|L1}, /* 14: 0111 0100 0001 0100 xxxx xxxx */ 2712 {XRI_E_xx, 3,11,11,L0|L1}, /* 15: 0111 0100 0001 0101 xxxx xxxx */ 2713 {XRI_H_xx, 3,11,11,L0|L1}, /* 16: 0111 0100 0001 0110 xxxx xxxx */ 2714 {XRI_L_xx, 3,11,11,L0|L1}, /* 17: 0111 0100 0001 0111 xxxx xxxx */ 2715 {ORI_V_xx, 3,11,11,L0|L1}, /* 18: 0111 0100 0001 1000 xxxx xxxx */ 2716 {ORI_A_xx, 3,11,11,L0|L1}, /* 19: 0111 0100 0001 1001 xxxx xxxx */ 2717 {ORI_B_xx, 3,11,11,L0|L1}, /* 1a: 0111 0100 0001 1010 xxxx xxxx */ 2718 {ORI_C_xx, 3,11,11,L0|L1}, /* 1b: 0111 0100 0001 1011 xxxx xxxx */ 2719 {ORI_D_xx, 3,11,11,L0|L1}, /* 1c: 0111 0100 0001 1100 xxxx xxxx */ 2720 {ORI_E_xx, 3,11,11,L0|L1}, /* 1d: 0111 0100 0001 1101 xxxx xxxx */ 2721 {ORI_H_xx, 3,11,11,L0|L1}, /* 1e: 0111 0100 0001 1110 xxxx xxxx */ 2722 {ORI_L_xx, 3,11,11,L0|L1}, /* 1f: 0111 0100 0001 1111 xxxx xxxx */ 2723 2724 {ADINC_V_xx, 3,11,11,L0|L1}, /* 20: 0111 0100 0010 0000 xxxx xxxx */ 2725 {ADINC_A_xx, 3,11,11,L0|L1}, /* 21: 0111 0100 0010 0001 xxxx xxxx */ 2726 {ADINC_B_xx, 3,11,11,L0|L1}, /* 22: 0111 0100 0010 0010 xxxx xxxx */ 2727 {ADINC_C_xx, 3,11,11,L0|L1}, /* 23: 0111 0100 0010 0011 xxxx xxxx */ 2728 {ADINC_D_xx, 3,11,11,L0|L1}, /* 24: 0111 0100 0010 0100 xxxx xxxx */ 2729 {ADINC_E_xx, 3,11,11,L0|L1}, /* 25: 0111 0100 0010 0101 xxxx xxxx */ 2730 {ADINC_H_xx, 3,11,11,L0|L1}, /* 26: 0111 0100 0010 0110 xxxx xxxx */ 2731 {ADINC_L_xx, 3,11,11,L0|L1}, /* 27: 0111 0100 0010 0111 xxxx xxxx */ 2732 {GTI_V_xx, 3,11,11,L0|L1}, /* 28: 0111 0100 0010 1000 xxxx xxxx */ 2733 {GTI_A_xx, 3,11,11,L0|L1}, /* 29: 0111 0100 0010 1001 xxxx xxxx */ 2734 {GTI_B_xx, 3,11,11,L0|L1}, /* 2a: 0111 0100 0010 1010 xxxx xxxx */ 2735 {GTI_C_xx, 3,11,11,L0|L1}, /* 2b: 0111 0100 0010 1011 xxxx xxxx */ 2736 {GTI_D_xx, 3,11,11,L0|L1}, /* 2c: 0111 0100 0010 1100 xxxx xxxx */ 2737 {GTI_E_xx, 3,11,11,L0|L1}, /* 2d: 0111 0100 0010 1101 xxxx xxxx */ 2738 {GTI_H_xx, 3,11,11,L0|L1}, /* 2e: 0111 0100 0010 1110 xxxx xxxx */ 2739 {GTI_L_xx, 3,11,11,L0|L1}, /* 2f: 0111 0100 0010 1111 xxxx xxxx */ 2740 2741 {SUINB_V_xx, 3,11,11,L0|L1}, /* 30: 0111 0100 0011 0000 xxxx xxxx */ 2742 {SUINB_A_xx, 3,11,11,L0|L1}, /* 31: 0111 0100 0011 0001 xxxx xxxx */ 2743 {SUINB_B_xx, 3,11,11,L0|L1}, /* 32: 0111 0100 0011 0010 xxxx xxxx */ 2744 {SUINB_C_xx, 3,11,11,L0|L1}, /* 33: 0111 0100 0011 0011 xxxx xxxx */ 2745 {SUINB_D_xx, 3,11,11,L0|L1}, /* 34: 0111 0100 0011 0100 xxxx xxxx */ 2746 {SUINB_E_xx, 3,11,11,L0|L1}, /* 35: 0111 0100 0011 0101 xxxx xxxx */ 2747 {SUINB_H_xx, 3,11,11,L0|L1}, /* 36: 0111 0100 0011 0110 xxxx xxxx */ 2748 {SUINB_L_xx, 3,11,11,L0|L1}, /* 37: 0111 0100 0011 0111 xxxx xxxx */ 2749 {LTI_V_xx, 3,11,11,L0|L1}, /* 38: 0111 0100 0011 1000 xxxx xxxx */ 2750 {LTI_A_xx, 3,11,11,L0|L1}, /* 39: 0111 0100 0011 1001 xxxx xxxx */ 2751 {LTI_B_xx, 3,11,11,L0|L1}, /* 3a: 0111 0100 0011 1010 xxxx xxxx */ 2752 {LTI_C_xx, 3,11,11,L0|L1}, /* 3b: 0111 0100 0011 1011 xxxx xxxx */ 2753 {LTI_D_xx, 3,11,11,L0|L1}, /* 3c: 0111 0100 0011 1100 xxxx xxxx */ 2754 {LTI_E_xx, 3,11,11,L0|L1}, /* 3d: 0111 0100 0011 1101 xxxx xxxx */ 2755 {LTI_H_xx, 3,11,11,L0|L1}, /* 3e: 0111 0100 0011 1110 xxxx xxxx */ 2756 {LTI_L_xx, 3,11,11,L0|L1}, /* 3f: 0111 0100 0011 1111 xxxx xxxx */ 2757 2758 {ADI_V_xx, 3,11,11,L0|L1}, /* 40: 0111 0100 0100 0000 xxxx xxxx */ 2759 {ADI_A_xx, 3,11,11,L0|L1}, /* 41: 0111 0100 0100 0001 xxxx xxxx */ 2760 {ADI_B_xx, 3,11,11,L0|L1}, /* 42: 0111 0100 0100 0010 xxxx xxxx */ 2761 {ADI_C_xx, 3,11,11,L0|L1}, /* 43: 0111 0100 0100 0011 xxxx xxxx */ 2762 {ADI_D_xx, 3,11,11,L0|L1}, /* 44: 0111 0100 0100 0100 xxxx xxxx */ 2763 {ADI_E_xx, 3,11,11,L0|L1}, /* 45: 0111 0100 0100 0101 xxxx xxxx */ 2764 {ADI_H_xx, 3,11,11,L0|L1}, /* 46: 0111 0100 0100 0110 xxxx xxxx */ 2765 {ADI_L_xx, 3,11,11,L0|L1}, /* 47: 0111 0100 0100 0111 xxxx xxxx */ 2766 {ONI_V_xx, 3,11,11,L0|L1}, /* 48: 0111 0100 0100 1000 xxxx xxxx */ 2767 {ONI_A_xx, 3,11,11,L0|L1}, /* 49: 0111 0100 0100 1001 xxxx xxxx */ 2768 {ONI_B_xx, 3,11,11,L0|L1}, /* 4a: 0111 0100 0100 1010 xxxx xxxx */ 2769 {ONI_C_xx, 3,11,11,L0|L1}, /* 4b: 0111 0100 0100 1011 xxxx xxxx */ 2770 {ONI_D_xx, 3,11,11,L0|L1}, /* 4c: 0111 0100 0100 1100 xxxx xxxx */ 2771 {ONI_E_xx, 3,11,11,L0|L1}, /* 4d: 0111 0100 0100 1101 xxxx xxxx */ 2772 {ONI_H_xx, 3,11,11,L0|L1}, /* 4e: 0111 0100 0100 1110 xxxx xxxx */ 2773 {ONI_L_xx, 3,11,11,L0|L1}, /* 4f: 0111 0100 0100 1111 xxxx xxxx */ 2774 2775 {ACI_V_xx, 3,11,11,L0|L1}, /* 50: 0111 0100 0101 0000 xxxx xxxx */ 2776 {ACI_A_xx, 3,11,11,L0|L1}, /* 51: 0111 0100 0101 0001 xxxx xxxx */ 2777 {ACI_B_xx, 3,11,11,L0|L1}, /* 52: 0111 0100 0101 0010 xxxx xxxx */ 2778 {ACI_C_xx, 3,11,11,L0|L1}, /* 53: 0111 0100 0101 0011 xxxx xxxx */ 2779 {ACI_D_xx, 3,11,11,L0|L1}, /* 54: 0111 0100 0101 0100 xxxx xxxx */ 2780 {ACI_E_xx, 3,11,11,L0|L1}, /* 55: 0111 0100 0101 0101 xxxx xxxx */ 2781 {ACI_H_xx, 3,11,11,L0|L1}, /* 56: 0111 0100 0101 0110 xxxx xxxx */ 2782 {ACI_L_xx, 3,11,11,L0|L1}, /* 57: 0111 0100 0101 0111 xxxx xxxx */ 2783 {OFFI_V_xx, 3,11,11,L0|L1}, /* 58: 0111 0100 0101 1000 xxxx xxxx */ 2784 {OFFI_A_xx, 3,11,11,L0|L1}, /* 59: 0111 0100 0101 1001 xxxx xxxx */ 2785 {OFFI_B_xx, 3,11,11,L0|L1}, /* 5a: 0111 0100 0101 1010 xxxx xxxx */ 2786 {OFFI_C_xx, 3,11,11,L0|L1}, /* 5b: 0111 0100 0101 1011 xxxx xxxx */ 2787 {OFFI_D_xx, 3,11,11,L0|L1}, /* 5c: 0111 0100 0101 1100 xxxx xxxx */ 2788 {OFFI_E_xx, 3,11,11,L0|L1}, /* 5d: 0111 0100 0101 1101 xxxx xxxx */ 2789 {OFFI_H_xx, 3,11,11,L0|L1}, /* 5e: 0111 0100 0101 1110 xxxx xxxx */ 2790 {OFFI_L_xx, 3,11,11,L0|L1}, /* 5f: 0111 0100 0101 1111 xxxx xxxx */ 2791 2792 {SUI_V_xx, 3,11,11,L0|L1}, /* 60: 0111 0100 0110 0000 xxxx xxxx */ 2793 {SUI_A_xx, 3,11,11,L0|L1}, /* 61: 0111 0100 0110 0001 xxxx xxxx */ 2794 {SUI_B_xx, 3,11,11,L0|L1}, /* 62: 0111 0100 0110 0010 xxxx xxxx */ 2795 {SUI_C_xx, 3,11,11,L0|L1}, /* 63: 0111 0100 0110 0011 xxxx xxxx */ 2796 {SUI_D_xx, 3,11,11,L0|L1}, /* 64: 0111 0100 0110 0100 xxxx xxxx */ 2797 {SUI_E_xx, 3,11,11,L0|L1}, /* 65: 0111 0100 0110 0101 xxxx xxxx */ 2798 {SUI_H_xx, 3,11,11,L0|L1}, /* 66: 0111 0100 0110 0110 xxxx xxxx */ 2799 {SUI_L_xx, 3,11,11,L0|L1}, /* 67: 0111 0100 0110 0111 xxxx xxxx */ 2800 {NEI_V_xx, 3,11,11,L0|L1}, /* 68: 0111 0100 0110 1000 xxxx xxxx */ 2801 {NEI_A_xx, 3,11,11,L0|L1}, /* 69: 0111 0100 0110 1001 xxxx xxxx */ 2802 {NEI_B_xx, 3,11,11,L0|L1}, /* 6a: 0111 0100 0110 1010 xxxx xxxx */ 2803 {NEI_C_xx, 3,11,11,L0|L1}, /* 6b: 0111 0100 0110 1011 xxxx xxxx */ 2804 {NEI_D_xx, 3,11,11,L0|L1}, /* 6c: 0111 0100 0110 1100 xxxx xxxx */ 2805 {NEI_E_xx, 3,11,11,L0|L1}, /* 6d: 0111 0100 0110 1101 xxxx xxxx */ 2806 {NEI_H_xx, 3,11,11,L0|L1}, /* 6e: 0111 0100 0110 1110 xxxx xxxx */ 2807 {NEI_L_xx, 3,11,11,L0|L1}, /* 6f: 0111 0100 0110 1111 xxxx xxxx */ 2808 2809 {SBI_V_xx, 3,11,11,L0|L1}, /* 70: 0111 0100 0111 0000 xxxx xxxx */ 2810 {SBI_A_xx, 3,11,11,L0|L1}, /* 71: 0111 0100 0111 0001 xxxx xxxx */ 2811 {SBI_B_xx, 3,11,11,L0|L1}, /* 72: 0111 0100 0111 0010 xxxx xxxx */ 2812 {SBI_C_xx, 3,11,11,L0|L1}, /* 73: 0111 0100 0111 0011 xxxx xxxx */ 2813 {SBI_D_xx, 3,11,11,L0|L1}, /* 74: 0111 0100 0111 0100 xxxx xxxx */ 2814 {SBI_E_xx, 3,11,11,L0|L1}, /* 75: 0111 0100 0111 0101 xxxx xxxx */ 2815 {SBI_H_xx, 3,11,11,L0|L1}, /* 76: 0111 0100 0111 0110 xxxx xxxx */ 2816 {SBI_L_xx, 3,11,11,L0|L1}, /* 77: 0111 0100 0111 0111 xxxx xxxx */ 2817 {EQI_V_xx, 3,11,11,L0|L1}, /* 78: 0111 0100 0111 1000 xxxx xxxx */ 2818 {EQI_A_xx, 3,11,11,L0|L1}, /* 79: 0111 0100 0111 1001 xxxx xxxx */ 2819 {EQI_B_xx, 3,11,11,L0|L1}, /* 7a: 0111 0100 0111 1010 xxxx xxxx */ 2820 {EQI_C_xx, 3,11,11,L0|L1}, /* 7b: 0111 0100 0111 1011 xxxx xxxx */ 2821 {EQI_D_xx, 3,11,11,L0|L1}, /* 7c: 0111 0100 0111 1100 xxxx xxxx */ 2822 {EQI_E_xx, 3,11,11,L0|L1}, /* 7d: 0111 0100 0111 1101 xxxx xxxx */ 2823 {EQI_H_xx, 3,11,11,L0|L1}, /* 7e: 0111 0100 0111 1110 xxxx xxxx */ 2824 {EQI_L_xx, 3,11,11,L0|L1}, /* 7f: 0111 0100 0111 1111 xxxx xxxx */ 2825 2826 {illegal2, 2, 8, 8,L0|L1}, /* 80: 0111 0100 1000 0000 */ 2827 {illegal2, 2, 8, 8,L0|L1}, /* 81: 0111 0100 1000 0001 */ 2828 {illegal2, 2, 8, 8,L0|L1}, /* 82: 0111 0100 1000 0010 */ 2829 {illegal2, 2, 8, 8,L0|L1}, /* 83: 0111 0100 1000 0011 */ 2830 {illegal2, 2, 8, 8,L0|L1}, /* 84: 0111 0100 1000 0100 */ 2831 {illegal2, 2, 8, 8,L0|L1}, /* 85: 0111 0100 1000 0101 */ 2832 {illegal2, 2, 8, 8,L0|L1}, /* 86: 0111 0100 1000 0110 */ 2833 {illegal2, 2, 8, 8,L0|L1}, /* 87: 0111 0100 1000 0111 */ 2834 {ANAW_wa, 3,14,11,L0|L1}, /* 88: 0111 0100 1000 1000 oooo oooo */ 2835 {illegal2, 2, 8, 8,L0|L1}, /* 89: 0111 0100 1000 1001 */ 2836 {illegal2, 2, 8, 8,L0|L1}, /* 8a: 0111 0100 1000 1010 */ 2837 {illegal2, 2, 8, 8,L0|L1}, /* 8b: 0111 0100 1000 1011 */ 2838 {illegal2, 2, 8, 8,L0|L1}, /* 8c: 0111 0100 1000 1100 */ 2839 {DAN_EA_BC, 2,11,11,L0|L1}, /* 8d: 0111 0100 1000 1101 */ 2840 {DAN_EA_DE, 2,11,11,L0|L1}, /* 8e: 0111 0100 1000 1110 */ 2841 {DAN_EA_HL, 2,11,11,L0|L1}, /* 8f: 0111 0100 1000 1111 */ 2842 2843 {XRAW_wa, 3,14,11,L0|L1}, /* 90: 0111 0100 1001 0000 oooo oooo */ 2844 {illegal2, 2, 8, 8,L0|L1}, /* 91: 0111 0100 1001 0001 */ 2845 {illegal2, 2, 8, 8,L0|L1}, /* 92: 0111 0100 1001 0010 */ 2846 {illegal2, 2, 8, 8,L0|L1}, /* 93: 0111 0100 1001 0011 */ 2847 {illegal2, 2, 8, 8,L0|L1}, /* 94: 0111 0100 1001 0100 */ 2848 {DXR_EA_BC, 2,11,11,L0|L1}, /* 95: 0111 0100 1001 0101 */ 2849 {DXR_EA_DE, 2,11,11,L0|L1}, /* 96: 0111 0100 1001 0110 */ 2850 {DXR_EA_HL, 2,11,11,L0|L1}, /* 97: 0111 0100 1001 0111 */ 2851 {ORAW_wa, 3,14,11,L0|L1}, /* 98: 0111 0100 1001 1000 oooo oooo */ 2852 {illegal2, 2, 8, 8,L0|L1}, /* 99: 0111 0100 1001 1001 */ 2853 {illegal2, 2, 8, 8,L0|L1}, /* 9a: 0111 0100 1001 1010 */ 2854 {illegal2, 2, 8, 8,L0|L1}, /* 9b: 0111 0100 1001 1011 */ 2855 {illegal2, 2, 8, 8,L0|L1}, /* 9c: 0111 0100 1001 1100 */ 2856 {DOR_EA_BC, 2,11,11,L0|L1}, /* 9d: 0111 0100 1001 1101 */ 2857 {DOR_EA_DE, 2,11,11,L0|L1}, /* 9e: 0111 0100 1001 1110 */ 2858 {DOR_EA_HL, 2,11,11,L0|L1}, /* 9f: 0111 0100 1001 1111 */ 2859 2860 {ADDNCW_wa, 3,14,11,L0|L1}, /* a0: 0111 0100 1010 0000 oooo oooo */ 2861 {illegal2, 2, 8, 8,L0|L1}, /* a1: 0111 0100 1010 0001 */ 2862 {illegal2, 2, 8, 8,L0|L1}, /* a2: 0111 0100 1010 0010 */ 2863 {illegal2, 2, 8, 8,L0|L1}, /* a3: 0111 0100 1010 0011 */ 2864 {illegal2, 2, 8, 8,L0|L1}, /* a4: 0111 0100 1010 0100 */ 2865 {DADDNC_EA_BC, 2,11,11,L0|L1}, /* a5: 0111 0100 1010 0101 */ 2866 {DADDNC_EA_DE, 2,11,11,L0|L1}, /* a6: 0111 0100 1010 0110 */ 2867 {DADDNC_EA_HL, 2,11,11,L0|L1}, /* a7: 0111 0100 1010 0111 */ 2868 {GTAW_wa, 3,14,11,L0|L1}, /* a8: 0111 0100 1010 1000 oooo oooo */ 2869 {illegal2, 2, 8, 8,L0|L1}, /* a9: 0111 0100 1010 1001 */ 2870 {illegal2, 2, 8, 8,L0|L1}, /* aa: 0111 0100 1010 1010 */ 2871 {illegal2, 2, 8, 8,L0|L1}, /* ab: 0111 0100 1010 1011 */ 2872 {illegal2, 2, 8, 8,L0|L1}, /* ac: 0111 0100 1010 1100 */ 2873 {DGT_EA_BC, 2,11,11,L0|L1}, /* ad: 0111 0100 1010 1101 */ 2874 {DGT_EA_DE, 2,11,11,L0|L1}, /* ae: 0111 0100 1010 1110 */ 2875 {DGT_EA_HL, 2,11,11,L0|L1}, /* af: 0111 0100 1010 1111 */ 2876 2877 {SUBNBW_wa, 3,14,11,L0|L1}, /* b0: 0111 0100 1011 0000 oooo oooo */ 2878 {illegal2, 2, 8, 8,L0|L1}, /* b1: 0111 0100 1011 0001 */ 2879 {illegal2, 2, 8, 8,L0|L1}, /* b2: 0111 0100 1011 0010 */ 2880 {illegal2, 2, 8, 8,L0|L1}, /* b3: 0111 0100 1011 0011 */ 2881 {illegal2, 2, 8, 8,L0|L1}, /* b4: 0111 0100 1011 0100 */ 2882 {DSUBNB_EA_BC, 2,11,11,L0|L1}, /* b5: 0111 0100 1011 0101 */ 2883 {DSUBNB_EA_DE, 2,11,11,L0|L1}, /* b6: 0111 0100 1011 0110 */ 2884 {DSUBNB_EA_HL, 2,11,11,L0|L1}, /* b7: 0111 0100 1011 0111 */ 2885 {LTAW_wa, 3,14,11,L0|L1}, /* b8: 0111 0100 1011 1000 oooo oooo */ 2886 {illegal2, 2, 8, 8,L0|L1}, /* b9: 0111 0100 1011 1001 */ 2887 {illegal2, 2, 8, 8,L0|L1}, /* ba: 0111 0100 1011 1010 */ 2888 {illegal2, 2, 8, 8,L0|L1}, /* bb: 0111 0100 1011 1011 */ 2889 {illegal2, 2, 8, 8,L0|L1}, /* bc: 0111 0100 1011 1100 */ 2890 {DLT_EA_BC, 2,11,11,L0|L1}, /* bd: 0111 0100 1011 1101 */ 2891 {DLT_EA_DE, 2,11,11,L0|L1}, /* be: 0111 0100 1011 1110 */ 2892 {DLT_EA_HL, 2,11,11,L0|L1}, /* bf: 0111 0100 1011 1111 */ 2893 2894 {ADDW_wa, 3,14,11,L0|L1}, /* c0: 0111 0100 1100 0000 oooo oooo */ 2895 {illegal2, 2, 8, 8,L0|L1}, /* c1: 0111 0100 1100 0001 */ 2896 {illegal2, 2, 8, 8,L0|L1}, /* c2: 0111 0100 1100 0010 */ 2897 {illegal2, 2, 8, 8,L0|L1}, /* c3: 0111 0100 1100 0011 */ 2898 {illegal2, 2, 8, 8,L0|L1}, /* c4: 0111 0100 1100 0100 */ 2899 {DADD_EA_BC, 2,11,11,L0|L1}, /* c5: 0111 0100 1100 0101 */ 2900 {DADD_EA_DE, 2,11,11,L0|L1}, /* c6: 0111 0100 1100 0110 */ 2901 {DADD_EA_HL, 2,11,11,L0|L1}, /* c7: 0111 0100 1100 0111 */ 2902 {ONAW_wa, 3,14,11,L0|L1}, /* c8: 0111 0100 1100 1000 oooo oooo */ 2903 {illegal2, 2, 8, 8,L0|L1}, /* c9: 0111 0100 1100 1001 */ 2904 {illegal2, 2, 8, 8,L0|L1}, /* ca: 0111 0100 1100 1010 */ 2905 {illegal2, 2, 8, 8,L0|L1}, /* cb: 0111 0100 1100 1011 */ 2906 {illegal2, 2, 8, 8,L0|L1}, /* cc: 0111 0100 1100 1100 */ 2907 {DON_EA_BC, 2,11,11,L0|L1}, /* cd: 0111 0100 1100 1101 */ 2908 {DON_EA_DE, 2,11,11,L0|L1}, /* ce: 0111 0100 1100 1110 */ 2909 {DON_EA_HL, 2,11,11,L0|L1}, /* cf: 0111 0100 1100 1111 */ 2910 2911 {ADCW_wa, 3,14,11,L0|L1}, /* d0: 0111 0100 1101 0000 oooo oooo */ 2912 {illegal2, 2, 8, 8,L0|L1}, /* d1: 0111 0100 1101 0001 */ 2913 {illegal2, 2, 8, 8,L0|L1}, /* d2: 0111 0100 1101 0010 */ 2914 {illegal2, 2, 8, 8,L0|L1}, /* d3: 0111 0100 1101 0011 */ 2915 {illegal2, 2, 8, 8,L0|L1}, /* d4: 0111 0100 1101 0100 */ 2916 {DADC_EA_BC, 2,11,11,L0|L1}, /* d5: 0111 0100 1101 0101 */ 2917 {DADC_EA_DE, 2,11,11,L0|L1}, /* d6: 0111 0100 1101 0110 */ 2918 {DADC_EA_HL, 2,11,11,L0|L1}, /* d7: 0111 0100 1101 0111 */ 2919 {OFFAW_wa, 3,14,11,L0|L1}, /* d8: 0111 0100 1101 1000 oooo oooo */ 2920 {illegal2, 2, 8, 8,L0|L1}, /* d9: 0111 0100 1101 1001 */ 2921 {illegal2, 2, 8, 8,L0|L1}, /* da: 0111 0100 1101 1010 */ 2922 {illegal2, 2, 8, 8,L0|L1}, /* db: 0111 0100 1101 1011 */ 2923 {illegal2, 2, 8, 8,L0|L1}, /* dc: 0111 0100 1101 1100 */ 2924 {DOFF_EA_BC, 2,11,11,L0|L1}, /* dd: 0111 0100 1101 1101 */ 2925 {DOFF_EA_DE, 2,11,11,L0|L1}, /* de: 0111 0100 1101 1110 */ 2926 {DOFF_EA_HL, 2,11,11,L0|L1}, /* df: 0111 0100 1101 1111 */ 2927 2928 {SUBW_wa, 3,14,11,L0|L1}, /* e0: 0111 0100 1110 0000 oooo oooo */ 2929 {illegal2, 2, 8, 8,L0|L1}, /* e1: 0111 0100 1110 0001 */ 2930 {illegal2, 2, 8, 8,L0|L1}, /* e2: 0111 0100 1110 0010 */ 2931 {illegal2, 2, 8, 8,L0|L1}, /* e3: 0111 0100 1110 0011 */ 2932 {illegal2, 2, 8, 8,L0|L1}, /* e4: 0111 0100 1110 0100 */ 2933 {DSUB_EA_BC, 2,11,11,L0|L1}, /* e5: 0111 0100 1110 0101 */ 2934 {DSUB_EA_DE, 2,11,11,L0|L1}, /* e6: 0111 0100 1110 0110 */ 2935 {DSUB_EA_HL, 2,11,11,L0|L1}, /* e7: 0111 0100 1110 0111 */ 2936 {NEAW_wa, 3,14,11,L0|L1}, /* e8: 0111 0100 1110 1000 oooo oooo */ 2937 {illegal2, 2, 8, 8,L0|L1}, /* e9: 0111 0100 1110 1001 */ 2938 {illegal2, 2, 8, 8,L0|L1}, /* ea: 0111 0100 1110 1010 */ 2939 {illegal2, 2, 8, 8,L0|L1}, /* eb: 0111 0100 1110 1011 */ 2940 {illegal2, 2, 8, 8,L0|L1}, /* ec: 0111 0100 1110 1100 */ 2941 {DNE_EA_BC, 2,11,11,L0|L1}, /* ed: 0111 0100 1110 1101 */ 2942 {DNE_EA_DE, 2,11,11,L0|L1}, /* ee: 0111 0100 1110 1110 */ 2943 {DNE_EA_HL, 2,11,11,L0|L1}, /* ef: 0111 0100 1110 1111 */ 2944 2945 {SBBW_wa, 3,14,11,L0|L1}, /* f0: 0111 0100 1111 0000 oooo oooo */ 2946 {illegal2, 2, 8, 8,L0|L1}, /* f1: 0111 0100 1111 0001 */ 2947 {illegal2, 2, 8, 8,L0|L1}, /* f2: 0111 0100 1111 0010 */ 2948 {illegal2, 2, 8, 8,L0|L1}, /* f3: 0111 0100 1111 0011 */ 2949 {illegal2, 2, 8, 8,L0|L1}, /* f4: 0111 0100 1111 0100 */ 2950 {DSBB_EA_BC, 2,11,11,L0|L1}, /* f5: 0111 0100 1111 0101 */ 2951 {DSBB_EA_DE, 2,11,11,L0|L1}, /* f6: 0111 0100 1111 0110 */ 2952 {DSBB_EA_HL, 2,11,11,L0|L1}, /* f7: 0111 0100 1111 0111 */ 2953 {EQAW_wa, 3,14,11,L0|L1}, /* f8: 0111 0100 1111 1000 oooo oooo */ 2954 {illegal2, 2, 8, 8,L0|L1}, /* f9: 0111 0100 1111 1001 */ 2955 {illegal2, 2, 8, 8,L0|L1}, /* fa: 0111 0100 1111 1010 */ 2956 {illegal2, 2, 8, 8,L0|L1}, /* fb: 0111 0100 1111 1011 */ 2957 {illegal2, 2, 8, 8,L0|L1}, /* fc: 0111 0100 1111 1100 */ 2958 {DEQ_EA_BC, 2,11,11,L0|L1}, /* fd: 0111 0100 1111 1101 */ 2959 {DEQ_EA_DE, 2,11,11,L0|L1}, /* fe: 0111 0100 1111 1110 */ 2960 {DEQ_EA_HL, 2,11,11,L0|L1} /* ff: 0111 0100 1111 1111 */ 2961 }; 2962 2963 /* main opcodes */ 2964 static struct opcode_s opXX_7810[256] = 2965 { 2966 {NOP, 1, 4, 4,L0|L1}, /* 00: 0000 0000 */ 2967 {LDAW_wa, 2,10,10,L0|L1}, /* 01: 0000 0001 oooo oooo */ 2968 {INX_SP, 1, 7, 7,L0|L1}, /* 02: 0000 0010 */ 2969 {DCX_SP, 1, 7, 7,L0|L1}, /* 03: 0000 0011 */ 2970 {LXI_S_w, 3,10,10,L0|L1}, /* 04: 0000 0100 llll llll hhhh hhhh */ 2971 {ANIW_wa_xx, 3,19,19,L0|L1}, /* 05: 0000 0101 oooo oooo xxxx xxxx */ 2972 {illegal, 1, 4, 4,L0|L1}, /* 06: */ 2973 {ANI_A_xx, 2, 7, 7,L0|L1}, /* 07: 0000 0111 xxxx xxxx */ 2974 {MOV_A_EAH, 1, 4, 4,L0|L1}, /* 08: 0000 1000 */ 2975 {MOV_A_EAL, 1, 4, 4,L0|L1}, /* 09: 0000 1001 */ 2976 {MOV_A_B, 1, 4, 4,L0|L1}, /* 0a: 0000 1010 */ 2977 {MOV_A_C, 1, 4, 4,L0|L1}, /* 0b: 0000 1011 */ 2978 {MOV_A_D, 1, 4, 4,L0|L1}, /* 0c: 0000 1100 */ 2979 {MOV_A_E, 1, 4, 4,L0|L1}, /* 0d: 0000 1101 */ 2980 {MOV_A_H, 1, 4, 4,L0|L1}, /* 0e: 0000 1110 */ 2981 {MOV_A_L, 1, 4, 4,L0|L1}, /* 0f: 0000 1111 */ 2982 2983 {EXA, 1, 4, 4,L0|L1}, /* 10: 0001 0000 */ 2984 {EXX, 1, 4, 4,L0|L1}, /* 11: 0001 0001 */ 2985 {INX_BC, 1, 7, 7,L0|L1}, /* 12: 0001 0010 */ 2986 {DCX_BC, 1, 7, 7,L0|L1}, /* 13: 0001 0011 */ 2987 {LXI_B_w, 3,10,10,L0|L1}, /* 14: 0001 0100 llll llll hhhh hhhh */ 2988 {ORIW_wa_xx, 3,19,19,L0|L1}, /* 15: 0001 0101 oooo oooo xxxx xxxx */ 2989 {XRI_A_xx, 2, 7, 7,L0|L1}, /* 16: 0001 0110 xxxx xxxx */ 2990 {ORI_A_xx, 2, 7, 7,L0|L1}, /* 17: 0001 0111 xxxx xxxx */ 2991 {MOV_EAH_A, 1, 4, 4,L0|L1}, /* 18: 0001 1000 */ 2992 {MOV_EAL_A, 1, 4, 4,L0|L1}, /* 19: 0001 1001 */ 2993 {MOV_B_A, 1, 4, 4,L0|L1}, /* 1a: 0001 1010 */ 2994 {MOV_C_A, 1, 4, 4,L0|L1}, /* 1b: 0001 1011 */ 2995 {MOV_D_A, 1, 4, 4,L0|L1}, /* 1c: 0001 1100 */ 2996 {MOV_E_A, 1, 4, 4,L0|L1}, /* 1d: 0001 1101 */ 2997 {MOV_H_A, 1, 4, 4,L0|L1}, /* 1e: 0001 1110 */ 2998 {MOV_L_A, 1, 4, 4,L0|L1}, /* 1f: 0001 1111 */ 2999 3000 {INRW_wa, 2,16,16,L0|L1}, /* 20: 0010 0000 oooo oooo */ 3001 {JB, 1, 4, 4,L0|L1}, /* 21: 0010 0001 */ 3002 {INX_DE, 1, 7, 7,L0|L1}, /* 22: 0010 0010 */ 3003 {DCX_DE, 1, 7, 7,L0|L1}, /* 23: 0010 0011 */ 3004 {LXI_D_w, 3,10,10,L0|L1}, /* 24: 0010 0100 llll llll hhhh hhhh */ 3005 {GTIW_wa_xx, 3,19,19,L0|L1}, /* 25: 0010 0101 oooo oooo xxxx xxxx */ 3006 {ADINC_A_xx, 2, 7, 7,L0|L1}, /* 26: 0010 0110 xxxx xxxx */ 3007 {GTI_A_xx, 2, 7, 7,L0|L1}, /* 27: 0010 0111 xxxx xxxx */ 3008 {illegal, 1, 4, 4,L0|L1}, /* 28: */ 3009 {LDAX_B, 2, 7, 7,L0|L1}, /* 29: 0010 1001 dddd dddd */ 3010 {LDAX_D, 2, 7, 7,L0|L1}, /* 2a: 0010 1010 dddd dddd */ 3011 {LDAX_H, 2, 7, 7,L0|L1}, /* 2b: 0010 1011 dddd dddd */ 3012 {LDAX_Dp, 2, 7, 7,L0|L1}, /* 2c: 0010 1100 dddd dddd */ 3013 {LDAX_Hp, 2, 7, 7,L0|L1}, /* 2d: 0010 1101 dddd dddd */ 3014 {LDAX_Dm, 2, 7, 7,L0|L1}, /* 2e: 0010 1110 dddd dddd */ 3015 {LDAX_Hm, 2, 7, 7,L0|L1}, /* 2f: 0010 1111 dddd dddd */ 3016 3017 {DCRW_wa, 2,16,16,L0|L1}, /* 30: 0011 0000 oooo oooo */ 3018 {BLOCK, 1,13,13,L0|L1}, /* 31: 0011 0001 */ /* 7810 */ 3019 {INX_HL, 1, 7, 7,L0|L1}, /* 32: 0011 0010 */ 3020 {DCX_HL, 1, 7, 7,L0|L1}, /* 33: 0011 0011 */ 3021 {LXI_H_w, 3,10,10, L1}, /* 34: 0011 0100 llll llll hhhh hhhh */ 3022 {LTIW_wa_xx, 3,19,19,L0|L1}, /* 35: 0011 0101 oooo oooo xxxx xxxx */ 3023 {SUINB_A_xx, 2, 7, 7,L0|L1}, /* 36: 0011 0110 xxxx xxxx */ 3024 {LTI_A_xx, 2, 7, 7,L0|L1}, /* 37: 0011 0111 xxxx xxxx */ 3025 {illegal, 1, 4, 4,L0|L1}, /* 38: */ 3026 {STAX_B, 2, 7, 7,L0|L1}, /* 39: 0011 1001 dddd dddd */ 3027 {STAX_D, 2, 7, 7,L0|L1}, /* 3a: 0011 1010 dddd dddd */ 3028 {STAX_H, 2, 7, 7,L0|L1}, /* 3b: 0011 1011 dddd dddd */ 3029 {STAX_Dp, 2, 7, 7,L0|L1}, /* 3c: 0011 1100 dddd dddd */ 3030 {STAX_Hp, 2, 7, 7,L0|L1}, /* 3d: 0011 1101 dddd dddd */ 3031 {STAX_Dm, 2, 7, 7,L0|L1}, /* 3e: 0011 1110 dddd dddd */ 3032 {STAX_Hm, 2, 7, 7,L0|L1}, /* 3f: 0011 1111 dddd dddd */ 3033 3034 {CALL_w, 3,16,16,L0|L1}, /* 40: 0100 0000 llll llll hhhh hhhh */ 3035 {INR_A, 1, 4, 4,L0|L1}, /* 41: 0100 0001 */ 3036 {INR_B, 1, 4, 4,L0|L1}, /* 42: 0100 0010 */ 3037 {INR_C, 1, 4, 4,L0|L1}, /* 43: 0100 0011 */ 3038 {LXI_EA_s, 3,10,10,L0|L1}, /* 44: 0100 0100 llll llll hhhh hhhh */ 3039 {ONIW_wa_xx, 3,19,19,L0|L1}, /* 45: 0100 0101 oooo oooo xxxx xxxx */ 3040 {ADI_A_xx, 2, 7, 7,L0|L1}, /* 46: 0100 0110 xxxx xxxx */ 3041 {ONI_A_xx, 2, 7, 7,L0|L1}, /* 47: 0100 0111 xxxx xxxx */ 3042 {PRE_48, 1, 0, 0,L0|L1}, /* 48: prefix */ 3043 {MVIX_BC_xx, 2,10,10,L0|L1}, /* 49: 0100 1001 xxxx xxxx */ 3044 {MVIX_DE_xx, 2,10,10,L0|L1}, /* 4a: 0100 1010 xxxx xxxx */ 3045 {MVIX_HL_xx, 2,10,10,L0|L1}, /* 4b: 0100 1011 xxxx xxxx */ 3046 {PRE_4C, 1, 0, 0,L0|L1}, /* 4c: prefix */ 3047 {PRE_4D, 1, 4, 4,L0|L1}, /* 4d: prefix */ 3048 {JRE, 2,10,10,L0|L1}, /* 4e: 0100 111d dddd dddd */ 3049 {JRE, 2,10,10,L0|L1}, /* 4f: 0100 111d dddd dddd */ 3050 3051 {EXH, 1, 4, 4,L0|L1}, /* 50: 0101 0000 */ /* 7810 */ 3052 {DCR_A, 1, 4, 4,L0|L1}, /* 51: 0101 0001 */ 3053 {DCR_B, 1, 4, 4,L0|L1}, /* 52: 0101 0010 */ 3054 {DCR_C, 1, 4, 4,L0|L1}, /* 53: 0101 0011 */ 3055 {JMP_w, 3,10,10,L0|L1}, /* 54: 0101 0100 llll llll hhhh hhhh */ 3056 {OFFIW_wa_xx, 3,19,19,L0|L1}, /* 55: 0101 0101 oooo oooo xxxx xxxx */ 3057 {ACI_A_xx, 2, 7, 7,L0|L1}, /* 56: 0101 0110 xxxx xxxx */ 3058 {OFFI_A_xx, 2, 7, 7,L0|L1}, /* 57: 0101 0111 xxxx xxxx */ 3059 {BIT_0_wa, 2,10,10,L0|L1}, /* 58: 0101 1000 oooo oooo */ /* 7810 */ 3060 {BIT_1_wa, 2,10,10,L0|L1}, /* 59: 0101 1001 oooo oooo */ /* 7810 */ 3061 {BIT_2_wa, 2,10,10,L0|L1}, /* 5a: 0101 1010 oooo oooo */ /* 7810 */ 3062 {BIT_3_wa, 2,10,10,L0|L1}, /* 5b: 0101 1011 oooo oooo */ /* 7810 */ 3063 {BIT_4_wa, 2,10,10,L0|L1}, /* 5c: 0101 1100 oooo oooo */ /* 7810 */ 3064 {BIT_5_wa, 2,10,10,L0|L1}, /* 5d: 0101 1101 oooo oooo */ /* 7810 */ 3065 {BIT_6_wa, 2,10,10,L0|L1}, /* 5e: 0101 1110 oooo oooo */ /* 7810 */ 3066 {BIT_7_wa, 2,10,10,L0|L1}, /* 5f: 0101 1111 oooo oooo */ /* 7810 */ 3067 3068 {PRE_60, 1, 0, 0,L0|L1}, /* 60: */ 3069 {DAA, 1, 4, 4,L0|L1}, /* 61: 0110 0001 */ 3070 {RETI, 1,13,13,L0|L1}, /* 62: 0110 0010 */ 3071 {STAW_wa, 2,10,10,L0|L1}, /* 63: 0110 0011 oooo oooo */ 3072 {PRE_64, 1, 0, 0,L0|L1}, /* 64: */ 3073 {NEIW_wa_xx, 3,19,19,L0|L1}, /* 65: 0110 0101 oooo oooo xxxx xxxx */ 3074 {SUI_A_xx, 2, 7, 7,L0|L1}, /* 66: 0110 0110 xxxx xxxx */ 3075 {NEI_A_xx, 2, 7, 7,L0|L1}, /* 67: 0110 0111 xxxx xxxx */ 3076 {MVI_V_xx, 2, 7, 7,L0|L1}, /* 68: 0110 1000 xxxx xxxx */ 3077 {MVI_A_xx, 2, 7, 7,L0 }, /* 69: 0110 1001 xxxx xxxx */ 3078 {MVI_B_xx, 2, 7, 7,L0|L1}, /* 6a: 0110 1010 xxxx xxxx */ 3079 {MVI_C_xx, 2, 7, 7,L0|L1}, /* 6b: 0110 1011 xxxx xxxx */ 3080 {MVI_D_xx, 2, 7, 7,L0|L1}, /* 6c: 0110 1100 xxxx xxxx */ 3081 {MVI_E_xx, 2, 7, 7,L0|L1}, /* 6d: 0110 1101 xxxx xxxx */ 3082 {MVI_H_xx, 2, 7, 7,L0|L1}, /* 6e: 0110 1110 xxxx xxxx */ 3083 {MVI_L_xx, 2, 7, 7, L1}, /* 6f: 0110 1111 xxxx xxxx */ 3084 3085 {PRE_70, 1, 0, 0,L0|L1}, /* 70: */ 3086 {MVIW_wa_xx, 3,13,13,L0|L1}, /* 71: 0111 0001 oooo oooo xxxx xxxx */ 3087 {SOFTI, 1,16,16,L0|L1}, /* 72: 0111 0010 */ 3088 {illegal, 1, 0, 0,L0|L1}, /* 73: */ 3089 {PRE_74, 1, 0, 0,L0|L1}, /* 74: prefix */ 3090 {EQIW_wa_xx, 3,19,19,L0|L1}, /* 75: 0111 0101 oooo oooo xxxx xxxx */ 3091 {SBI_A_xx, 2, 7, 7,L0|L1}, /* 76: 0111 0110 xxxx xxxx */ 3092 {EQI_A_xx, 2, 7, 7,L0|L1}, /* 77: 0111 0111 xxxx xxxx */ 3093 {CALF, 2,13,13,L0|L1}, /* 78: 0111 1xxx xxxx xxxx */ 3094 {CALF, 2,13,13,L0|L1}, /* 79: 0111 1xxx xxxx xxxx */ 3095 {CALF, 2,13,13,L0|L1}, /* 7a: 0111 1xxx xxxx xxxx */ 3096 {CALF, 2,13,13,L0|L1}, /* 7b: 0111 1xxx xxxx xxxx */ 3097 {CALF, 2,13,13,L0|L1}, /* 7c: 0111 1xxx xxxx xxxx */ 3098 {CALF, 2,13,13,L0|L1}, /* 7d: 0111 1xxx xxxx xxxx */ 3099 {CALF, 2,13,13,L0|L1}, /* 7e: 0111 1xxx xxxx xxxx */ 3100 {CALF, 2,13,13,L0|L1}, /* 7f: 0111 1xxx xxxx xxxx */ 3101 3102 {CALT, 1,16,16,L0|L1}, /* 80: 100x xxxx */ 3103 {CALT, 1,16,16,L0|L1}, /* 81: 100x xxxx */ 3104 {CALT, 1,16,16,L0|L1}, /* 82: 100x xxxx */ 3105 {CALT, 1,16,16,L0|L1}, /* 83: 100x xxxx */ 3106 {CALT, 1,16,16,L0|L1}, /* 84: 100x xxxx */ 3107 {CALT, 1,16,16,L0|L1}, /* 85: 100x xxxx */ 3108 {CALT, 1,16,16,L0|L1}, /* 86: 100x xxxx */ 3109 {CALT, 1,16,16,L0|L1}, /* 87: 100x xxxx */ 3110 {CALT, 1,16,16,L0|L1}, /* 88: 100x xxxx */ 3111 {CALT, 1,16,16,L0|L1}, /* 89: 100x xxxx */ 3112 {CALT, 1,16,16,L0|L1}, /* 8a: 100x xxxx */ 3113 {CALT, 1,16,16,L0|L1}, /* 8b: 100x xxxx */ 3114 {CALT, 1,16,16,L0|L1}, /* 8c: 100x xxxx */ 3115 {CALT, 1,16,16,L0|L1}, /* 8d: 100x xxxx */ 3116 {CALT, 1,16,16,L0|L1}, /* 8e: 100x xxxx */ 3117 {CALT, 1,16,16,L0|L1}, /* 8f: 100x xxxx */ 3118 3119 {CALT, 1,16,16,L0|L1}, /* 90: 100x xxxx */ 3120 {CALT, 1,16,16,L0|L1}, /* 91: 100x xxxx */ 3121 {CALT, 1,16,16,L0|L1}, /* 92: 100x xxxx */ 3122 {CALT, 1,16,16,L0|L1}, /* 93: 100x xxxx */ 3123 {CALT, 1,16,16,L0|L1}, /* 94: 100x xxxx */ 3124 {CALT, 1,16,16,L0|L1}, /* 95: 100x xxxx */ 3125 {CALT, 1,16,16,L0|L1}, /* 96: 100x xxxx */ 3126 {CALT, 1,16,16,L0|L1}, /* 97: 100x xxxx */ 3127 {CALT, 1,16,16,L0|L1}, /* 98: 100x xxxx */ 3128 {CALT, 1,16,16,L0|L1}, /* 99: 100x xxxx */ 3129 {CALT, 1,16,16,L0|L1}, /* 9a: 100x xxxx */ 3130 {CALT, 1,16,16,L0|L1}, /* 9b: 100x xxxx */ 3131 {CALT, 1,16,16,L0|L1}, /* 9c: 100x xxxx */ 3132 {CALT, 1,16,16,L0|L1}, /* 9d: 100x xxxx */ 3133 {CALT, 1,16,16,L0|L1}, /* 9e: 100x xxxx */ 3134 {CALT, 1,16,16,L0|L1}, /* 9f: 100x xxxx */ 3135 3136 {POP_VA, 1,10,10,L0|L1}, /* a0: 1010 0000 */ 3137 {POP_BC, 1,10,10,L0|L1}, /* a1: 1010 0001 */ 3138 {POP_DE, 1,10,10,L0|L1}, /* a2: 1010 0010 */ 3139 {POP_HL, 1,10,10,L0|L1}, /* a3: 1010 0011 */ 3140 {POP_EA, 1,10,10,L0|L1}, /* a4: 1010 0100 */ 3141 {DMOV_EA_BC, 1, 4, 4,L0|L1}, /* a5: 1010 0101 */ 3142 {DMOV_EA_DE, 1, 4, 4,L0|L1}, /* a6: 1010 0110 */ 3143 {DMOV_EA_HL, 1, 4, 4,L0|L1}, /* a7: 1010 0111 */ 3144 {INX_EA, 1, 7, 7,L0|L1}, /* a8: 1010 1000 */ 3145 {DCX_EA, 1, 7, 7,L0|L1}, /* a9: 1010 1001 */ 3146 {EI, 1, 4, 4,L0|L1}, /* aa: 1010 1010 */ 3147 {LDAX_D_xx, 2, 7, 7,L0|L1}, /* ab: 1010 1011 dddd dddd */ 3148 {LDAX_H_A, 1, 7, 7,L0|L1}, /* ac: 1010 1100 */ 3149 {LDAX_H_B, 1, 7, 7,L0|L1}, /* ad: 1010 1101 */ 3150 {LDAX_H_EA, 1, 7, 7,L0|L1}, /* ae: 1010 1110 */ 3151 {LDAX_H_xx, 2, 7, 7,L0|L1}, /* af: 1010 1111 dddd dddd */ 3152 3153 {PUSH_VA, 1,13,13,L0|L1}, /* b0: 1011 0000 */ 3154 {PUSH_BC, 1,13,13,L0|L1}, /* b1: 1011 0001 */ 3155 {PUSH_DE, 1,13,13,L0|L1}, /* b2: 1011 0010 */ 3156 {PUSH_HL, 1,13,13,L0|L1}, /* b3: 1011 0011 */ 3157 {PUSH_EA, 1,13,13,L0|L1}, /* b4: 1011 0100 */ 3158 {DMOV_BC_EA, 1, 4, 4,L0|L1}, /* b5: 1011 0101 */ 3159 {DMOV_DE_EA, 1, 4, 4,L0|L1}, /* b6: 1011 0110 */ 3160 {DMOV_HL_EA, 1, 4, 4,L0|L1}, /* b7: 1011 0111 */ 3161 {RET, 1,10,10,L0|L1}, /* b8: 1011 1000 */ 3162 {RETS, 1,10,10,L0|L1}, /* b9: 1011 1001 */ 3163 {DI, 1, 4, 4,L0|L1}, /* ba: 1011 1010 */ 3164 {STAX_D_xx, 2, 7, 7,L0|L1}, /* bb: 1011 1011 dddd dddd */ 3165 {STAX_H_A, 1, 7, 7,L0|L1}, /* bc: 1011 1100 */ 3166 {STAX_H_B, 1, 7, 7,L0|L1}, /* bd: 1011 1101 */ 3167 {STAX_H_EA, 1, 7, 7,L0|L1}, /* be: 1011 1110 */ 3168 {STAX_H_xx, 2, 7, 7,L0|L1}, /* bf: 1011 1111 dddd dddd */ 3169 3170 {JR, 1,10,10,L0|L1}, /* c0: 1100 0000 */ 3171 {JR, 1,10,10,L0|L1}, /* c1: 1100 0001 */ 3172 {JR, 1,10,10,L0|L1}, /* c2: 1100 0010 */ 3173 {JR, 1,10,10,L0|L1}, /* c3: 1100 0011 */ 3174 {JR, 1,10,10,L0|L1}, /* c4: 1100 0100 */ 3175 {JR, 1,10,10,L0|L1}, /* c5: 1100 0101 */ 3176 {JR, 1,10,10,L0|L1}, /* c6: 1100 0110 */ 3177 {JR, 1,10,10,L0|L1}, /* c7: 1100 0111 */ 3178 {JR, 1,10,10,L0|L1}, /* c8: 1100 1000 */ 3179 {JR, 1,10,10,L0|L1}, /* c9: 1100 1001 */ 3180 {JR, 1,10,10,L0|L1}, /* ca: 1100 1010 */ 3181 {JR, 1,10,10,L0|L1}, /* cb: 1100 1011 */ 3182 {JR, 1,10,10,L0|L1}, /* cc: 1100 1100 */ 3183 {JR, 1,10,10,L0|L1}, /* cd: 1100 1101 */ 3184 {JR, 1,10,10,L0|L1}, /* ce: 1100 1110 */ 3185 {JR, 1,10,10,L0|L1}, /* cf: 1100 1111 */ 3186 3187 {JR, 1,10,10,L0|L1}, /* d0: 1101 0000 */ 3188 {JR, 1,10,10,L0|L1}, /* d1: 1101 0001 */ 3189 {JR, 1,10,10,L0|L1}, /* d2: 1101 0010 */ 3190 {JR, 1,10,10,L0|L1}, /* d3: 1101 0011 */ 3191 {JR, 1,10,10,L0|L1}, /* d4: 1101 0100 */ 3192 {JR, 1,10,10,L0|L1}, /* d5: 1101 0101 */ 3193 {JR, 1,10,10,L0|L1}, /* d6: 1101 0110 */ 3194 {JR, 1,10,10,L0|L1}, /* d7: 1101 0111 */ 3195 {JR, 1,10,10,L0|L1}, /* d8: 1101 1000 */ 3196 {JR, 1,10,10,L0|L1}, /* d9: 1101 1001 */ 3197 {JR, 1,10,10,L0|L1}, /* da: 1101 1010 */ 3198 {JR, 1,10,10,L0|L1}, /* db: 1101 1011 */ 3199 {JR, 1,10,10,L0|L1}, /* dc: 1101 1100 */ 3200 {JR, 1,10,10,L0|L1}, /* dd: 1101 1101 */ 3201 {JR, 1,10,10,L0|L1}, /* de: 1101 1110 */ 3202 {JR, 1,10,10,L0|L1}, /* df: 1101 1111 */ 3203 3204 {JR, 1,10,10,L0|L1}, /* e0: 1110 0000 */ 3205 {JR, 1,10,10,L0|L1}, /* e1: 1110 0001 */ 3206 {JR, 1,10,10,L0|L1}, /* e2: 1110 0010 */ 3207 {JR, 1,10,10,L0|L1}, /* e3: 1110 0011 */ 3208 {JR, 1,10,10,L0|L1}, /* e4: 1110 0100 */ 3209 {JR, 1,10,10,L0|L1}, /* e5: 1110 0101 */ 3210 {JR, 1,10,10,L0|L1}, /* e6: 1110 0110 */ 3211 {JR, 1,10,10,L0|L1}, /* e7: 1110 0111 */ 3212 {JR, 1,10,10,L0|L1}, /* e8: 1110 1000 */ 3213 {JR, 1,10,10,L0|L1}, /* e9: 1110 1001 */ 3214 {JR, 1,10,10,L0|L1}, /* ea: 1110 1010 */ 3215 {JR, 1,10,10,L0|L1}, /* eb: 1110 1011 */ 3216 {JR, 1,10,10,L0|L1}, /* ec: 1110 1100 */ 3217 {JR, 1,10,10,L0|L1}, /* ed: 1110 1101 */ 3218 {JR, 1,10,10,L0|L1}, /* ee: 1110 1110 */ 3219 {JR, 1,10,10,L0|L1}, /* ef: 1110 1111 */ 3220 3221 {JR, 1,10,10,L0|L1}, /* f0: 1111 0000 */ 3222 {JR, 1,10,10,L0|L1}, /* f1: 1111 0001 */ 3223 {JR, 1,10,10,L0|L1}, /* f2: 1111 0010 */ 3224 {JR, 1,10,10,L0|L1}, /* f3: 1111 0011 */ 3225 {JR, 1,10,10,L0|L1}, /* f4: 1111 0100 */ 3226 {JR, 1,10,10,L0|L1}, /* f5: 1111 0101 */ 3227 {JR, 1,10,10,L0|L1}, /* f6: 1111 0110 */ 3228 {JR, 1,10,10,L0|L1}, /* f7: 1111 0111 */ 3229 {JR, 1,10,10,L0|L1}, /* f8: 1111 1000 */ 3230 {JR, 1,10,10,L0|L1}, /* f9: 1111 1001 */ 3231 {JR, 1,10,10,L0|L1}, /* fa: 1111 1010 */ 3232 {JR, 1,10,10,L0|L1}, /* fb: 1111 1011 */ 3233 {JR, 1,10,10,L0|L1}, /* fc: 1111 1100 */ 3234 {JR, 1,10,10,L0|L1}, /* fd: 1111 1101 */ 3235 {JR, 1,10,10,L0|L1}, /* fe: 1111 1110 */ 3236 {JR, 1,10,10,L0|L1} /* ff: 1111 1111 */ 3237 }; 3238 3239 static struct opcode_s opXX_7807[256] = 3240 { 3241 {NOP, 1, 4, 4,L0|L1}, /* 00: 0000 0000 */ 3242 {LDAW_wa, 2,10,10,L0|L1}, /* 01: 0000 0001 oooo oooo */ 3243 {INX_SP, 1, 7, 7,L0|L1}, /* 02: 0000 0010 */ 3244 {DCX_SP, 1, 7, 7,L0|L1}, /* 03: 0000 0011 */ 3245 {LXI_S_w, 3,10,10,L0|L1}, /* 04: 0000 0100 llll llll hhhh hhhh */ 3246 {ANIW_wa_xx, 3,19,19,L0|L1}, /* 05: 0000 0101 oooo oooo xxxx xxxx */ 3247 {illegal, 1, 4, 4,L0|L1}, /* 06: */ 3248 {ANI_A_xx, 2, 7, 7,L0|L1}, /* 07: 0000 0111 xxxx xxxx */ 3249 {MOV_A_EAH, 1, 4, 4,L0|L1}, /* 08: 0000 1000 */ 3250 {MOV_A_EAL, 1, 4, 4,L0|L1}, /* 09: 0000 1001 */ 3251 {MOV_A_B, 1, 4, 4,L0|L1}, /* 0a: 0000 1010 */ 3252 {MOV_A_C, 1, 4, 4,L0|L1}, /* 0b: 0000 1011 */ 3253 {MOV_A_D, 1, 4, 4,L0|L1}, /* 0c: 0000 1100 */ 3254 {MOV_A_E, 1, 4, 4,L0|L1}, /* 0d: 0000 1101 */ 3255 {MOV_A_H, 1, 4, 4,L0|L1}, /* 0e: 0000 1110 */ 3256 {MOV_A_L, 1, 4, 4,L0|L1}, /* 0f: 0000 1111 */ 3257 3258 {illegal, 1,13, 4,L0|L1}, /* 10: 0001 0000 */ /* 7807 */ 3259 {illegal, 1,13, 4,L0|L1}, /* 11: 0001 0001 */ /* 7807 */ 3260 {INX_BC, 1, 7, 7,L0|L1}, /* 12: 0001 0010 */ 3261 {DCX_BC, 1, 7, 7,L0|L1}, /* 13: 0001 0011 */ 3262 {LXI_B_w, 3,10,10,L0|L1}, /* 14: 0001 0100 llll llll hhhh hhhh */ 3263 {ORIW_wa_xx, 3,19,19,L0|L1}, /* 15: 0001 0101 oooo oooo xxxx xxxx */ 3264 {XRI_A_xx, 2, 7, 7,L0|L1}, /* 16: 0001 0110 xxxx xxxx */ 3265 {ORI_A_xx, 2, 7, 7,L0|L1}, /* 17: 0001 0111 xxxx xxxx */ 3266 {MOV_EAH_A, 1, 4, 4,L0|L1}, /* 18: 0001 1000 */ 3267 {MOV_EAL_A, 1, 4, 4,L0|L1}, /* 19: 0001 1001 */ 3268 {MOV_B_A, 1, 4, 4,L0|L1}, /* 1a: 0001 1010 */ 3269 {MOV_C_A, 1, 4, 4,L0|L1}, /* 1b: 0001 1011 */ 3270 {MOV_D_A, 1, 4, 4,L0|L1}, /* 1c: 0001 1100 */ 3271 {MOV_E_A, 1, 4, 4,L0|L1}, /* 1d: 0001 1101 */ 3272 {MOV_H_A, 1, 4, 4,L0|L1}, /* 1e: 0001 1110 */ 3273 {MOV_L_A, 1, 4, 4,L0|L1}, /* 1f: 0001 1111 */ 3274 3275 {INRW_wa, 2,16,16,L0|L1}, /* 20: 0010 0000 oooo oooo */ 3276 {JB, 1, 4, 4,L0|L1}, /* 21: 0010 0001 */ 3277 {INX_DE, 1, 7, 7,L0|L1}, /* 22: 0010 0010 */ 3278 {DCX_DE, 1, 7, 7,L0|L1}, /* 23: 0010 0011 */ 3279 {LXI_D_w, 3,10,10,L0|L1}, /* 24: 0010 0100 llll llll hhhh hhhh */ 3280 {GTIW_wa_xx, 3,19,19,L0|L1}, /* 25: 0010 0101 oooo oooo xxxx xxxx */ 3281 {ADINC_A_xx, 2, 7, 7,L0|L1}, /* 26: 0010 0110 xxxx xxxx */ 3282 {GTI_A_xx, 2, 7, 7,L0|L1}, /* 27: 0010 0111 xxxx xxxx */ 3283 {illegal, 1, 4, 4,L0|L1}, /* 28: */ 3284 {LDAX_B, 2, 7, 7,L0|L1}, /* 29: 0010 1001 dddd dddd */ 3285 {LDAX_D, 2, 7, 7,L0|L1}, /* 2a: 0010 1010 dddd dddd */ 3286 {LDAX_H, 2, 7, 7,L0|L1}, /* 2b: 0010 1011 dddd dddd */ 3287 {LDAX_Dp, 2, 7, 7,L0|L1}, /* 2c: 0010 1100 dddd dddd */ 3288 {LDAX_Hp, 2, 7, 7,L0|L1}, /* 2d: 0010 1101 dddd dddd */ 3289 {LDAX_Dm, 2, 7, 7,L0|L1}, /* 2e: 0010 1110 dddd dddd */ 3290 {LDAX_Hm, 2, 7, 7,L0|L1}, /* 2f: 0010 1111 dddd dddd */ 3291 3292 {DCRW_wa, 2,16,16,L0|L1}, /* 30: 0011 0000 oooo oooo */ 3293 {illegal, 2, 8, 8,L0|L1}, /* 31: 0011 0001 bbbb bbbb */ /* 7807 */ 3294 {INX_HL, 1, 7, 7,L0|L1}, /* 32: 0011 0010 */ 3295 {DCX_HL, 1, 7, 7,L0|L1}, /* 33: 0011 0011 */ 3296 {LXI_H_w, 3,10,10, L1}, /* 34: 0011 0100 llll llll hhhh hhhh */ 3297 {LTIW_wa_xx, 3,19,19,L0|L1}, /* 35: 0011 0101 oooo oooo xxxx xxxx */ 3298 {SUINB_A_xx, 2, 7, 7,L0|L1}, /* 36: 0011 0110 xxxx xxxx */ 3299 {LTI_A_xx, 2, 7, 7,L0|L1}, /* 37: 0011 0111 xxxx xxxx */ 3300 {illegal, 1, 4, 4,L0|L1}, /* 38: */ 3301 {STAX_B, 2, 7, 7,L0|L1}, /* 39: 0011 1001 dddd dddd */ 3302 {STAX_D, 2, 7, 7,L0|L1}, /* 3a: 0011 1010 dddd dddd */ 3303 {STAX_H, 2, 7, 7,L0|L1}, /* 3b: 0011 1011 dddd dddd */ 3304 {STAX_Dp, 2, 7, 7,L0|L1}, /* 3c: 0011 1100 dddd dddd */ 3305 {STAX_Hp, 2, 7, 7,L0|L1}, /* 3d: 0011 1101 dddd dddd */ 3306 {STAX_Dm, 2, 7, 7,L0|L1}, /* 3e: 0011 1110 dddd dddd */ 3307 {STAX_Hm, 2, 7, 7,L0|L1}, /* 3f: 0011 1111 dddd dddd */ 3308 3309 {CALL_w, 3,16,16,L0|L1}, /* 40: 0100 0000 llll llll hhhh hhhh */ 3310 {INR_A, 1, 4, 4,L0|L1}, /* 41: 0100 0001 */ 3311 {INR_B, 1, 4, 4,L0|L1}, /* 42: 0100 0010 */ 3312 {INR_C, 1, 4, 4,L0|L1}, /* 43: 0100 0011 */ 3313 {LXI_EA_s, 3,10,10,L0|L1}, /* 44: 0100 0100 llll llll hhhh hhhh */ 3314 {ONIW_wa_xx, 3,19,19,L0|L1}, /* 45: 0100 0101 oooo oooo xxxx xxxx */ 3315 {ADI_A_xx, 2, 7, 7,L0|L1}, /* 46: 0100 0110 xxxx xxxx */ 3316 {ONI_A_xx, 2, 7, 7,L0|L1}, /* 47: 0100 0111 xxxx xxxx */ 3317 {PRE_48, 1, 0, 0,L0|L1}, /* 48: prefix */ 3318 {MVIX_BC_xx, 2,10,10,L0|L1}, /* 49: 0100 1001 xxxx xxxx */ 3319 {MVIX_DE_xx, 2,10,10,L0|L1}, /* 4a: 0100 1010 xxxx xxxx */ 3320 {MVIX_HL_xx, 2,10,10,L0|L1}, /* 4b: 0100 1011 xxxx xxxx */ 3321 {PRE_4C, 1, 0, 0,L0|L1}, /* 4c: prefix */ 3322 {PRE_4D, 1, 4, 4,L0|L1}, /* 4d: prefix */ 3323 {JRE, 2,10,10,L0|L1}, /* 4e: 0100 111d dddd dddd */ 3324 {JRE, 2,10,10,L0|L1}, /* 4f: 0100 111d dddd dddd */ 3325 3326 {SKN_bit, 2,13,13,L0|L1}, /* 50: 0101 0000 bbbb bbbb */ /* 7807 */ 3327 {DCR_A, 1, 4, 4,L0|L1}, /* 51: 0101 0001 */ 3328 {DCR_B, 1, 4, 4,L0|L1}, /* 52: 0101 0010 */ 3329 {DCR_C, 1, 4, 4,L0|L1}, /* 53: 0101 0011 */ 3330 {JMP_w, 3,10,10,L0|L1}, /* 54: 0101 0100 llll llll hhhh hhhh */ 3331 {OFFIW_wa_xx, 3,19,19,L0|L1}, /* 55: 0101 0101 oooo oooo xxxx xxxx */ 3332 {ACI_A_xx, 2, 7, 7,L0|L1}, /* 56: 0101 0110 xxxx xxxx */ 3333 {OFFI_A_xx, 2, 7, 7,L0|L1}, /* 57: 0101 0111 xxxx xxxx */ 3334 {SETB, 2,13,13,L0|L1}, /* 58: 0101 1000 bbbb bbbb */ /* 7807 */ 3335 {illegal, 2, 8, 8,L0|L1}, /* 59: 0101 1001 bbbb bbbb */ /* 7807 */ 3336 {illegal, 2, 8, 8,L0|L1}, /* 5a: 0101 1010 bbbb bbbb */ /* 7807 */ 3337 {CLR, 2,13,13,L0|L1}, /* 5b: 0101 1011 bbbb bbbb */ /* 7807 */ 3338 {illegal, 2, 8, 8,L0|L1}, /* 5c: 0101 1100 bbbb bbbb */ /* 7807 */ 3339 {SK_bit, 2,10,10,L0|L1}, /* 5d: 0101 1101 bbbb bbbb */ /* 7807 */ 3340 {illegal, 2, 8, 8,L0|L1}, /* 5e: 0101 1110 bbbb bbbb */ /* 7807 */ 3341 {illegal, 2, 8, 8,L0|L1}, /* 5f: 0101 1111 bbbb bbbb */ /* 7807 */ 3342 3343 {PRE_60, 1, 0, 0,L0|L1}, /* 60: */ 3344 {DAA, 1, 4, 4,L0|L1}, /* 61: 0110 0001 */ 3345 {RETI, 1,13,13,L0|L1}, /* 62: 0110 0010 */ 3346 {STAW_wa, 2,10,10,L0|L1}, /* 63: 0110 0011 oooo oooo */ 3347 {PRE_64, 1, 0, 0,L0|L1}, /* 64: */ 3348 {NEIW_wa_xx, 3,19,19,L0|L1}, /* 65: 0110 0101 oooo oooo xxxx xxxx */ 3349 {SUI_A_xx, 2, 7, 7,L0|L1}, /* 66: 0110 0110 xxxx xxxx */ 3350 {NEI_A_xx, 2, 7, 7,L0|L1}, /* 67: 0110 0111 xxxx xxxx */ 3351 {MVI_V_xx, 2, 7, 7,L0|L1}, /* 68: 0110 1000 xxxx xxxx */ 3352 {MVI_A_xx, 2, 7, 7,L0 }, /* 69: 0110 1001 xxxx xxxx */ 3353 {MVI_B_xx, 2, 7, 7,L0|L1}, /* 6a: 0110 1010 xxxx xxxx */ 3354 {MVI_C_xx, 2, 7, 7,L0|L1}, /* 6b: 0110 1011 xxxx xxxx */ 3355 {MVI_D_xx, 2, 7, 7,L0|L1}, /* 6c: 0110 1100 xxxx xxxx */ 3356 {MVI_E_xx, 2, 7, 7,L0|L1}, /* 6d: 0110 1101 xxxx xxxx */ 3357 {MVI_H_xx, 2, 7, 7,L0|L1}, /* 6e: 0110 1110 xxxx xxxx */ 3358 {MVI_L_xx, 2, 7, 7, L1}, /* 6f: 0110 1111 xxxx xxxx */ 3359 3360 {PRE_70, 1, 0, 0,L0|L1}, /* 70: */ 3361 {MVIW_wa_xx, 3,13,13,L0|L1}, /* 71: 0111 0001 oooo oooo xxxx xxxx */ 3362 {SOFTI, 1,16,16,L0|L1}, /* 72: 0111 0010 */ 3363 {illegal, 1, 0, 0,L0|L1}, /* 73: */ 3364 {PRE_74, 1, 0, 0,L0|L1}, /* 74: prefix */ 3365 {EQIW_wa_xx, 3,19,19,L0|L1}, /* 75: 0111 0101 oooo oooo xxxx xxxx */ 3366 {SBI_A_xx, 2, 7, 7,L0|L1}, /* 76: 0111 0110 xxxx xxxx */ 3367 {EQI_A_xx, 2, 7, 7,L0|L1}, /* 77: 0111 0111 xxxx xxxx */ 3368 {CALF, 2,13,13,L0|L1}, /* 78: 0111 1xxx xxxx xxxx */ 3369 {CALF, 2,13,13,L0|L1}, /* 79: 0111 1xxx xxxx xxxx */ 3370 {CALF, 2,13,13,L0|L1}, /* 7a: 0111 1xxx xxxx xxxx */ 3371 {CALF, 2,13,13,L0|L1}, /* 7b: 0111 1xxx xxxx xxxx */ 3372 {CALF, 2,13,13,L0|L1}, /* 7c: 0111 1xxx xxxx xxxx */ 3373 {CALF, 2,13,13,L0|L1}, /* 7d: 0111 1xxx xxxx xxxx */ 3374 {CALF, 2,13,13,L0|L1}, /* 7e: 0111 1xxx xxxx xxxx */ 3375 {CALF, 2,13,13,L0|L1}, /* 7f: 0111 1xxx xxxx xxxx */ 3376 3377 {CALT, 1,16,16,L0|L1}, /* 80: 100x xxxx */ 3378 {CALT, 1,16,16,L0|L1}, /* 81: 100x xxxx */ 3379 {CALT, 1,16,16,L0|L1}, /* 82: 100x xxxx */ 3380 {CALT, 1,16,16,L0|L1}, /* 83: 100x xxxx */ 3381 {CALT, 1,16,16,L0|L1}, /* 84: 100x xxxx */ 3382 {CALT, 1,16,16,L0|L1}, /* 85: 100x xxxx */ 3383 {CALT, 1,16,16,L0|L1}, /* 86: 100x xxxx */ 3384 {CALT, 1,16,16,L0|L1}, /* 87: 100x xxxx */ 3385 {CALT, 1,16,16,L0|L1}, /* 88: 100x xxxx */ 3386 {CALT, 1,16,16,L0|L1}, /* 89: 100x xxxx */ 3387 {CALT, 1,16,16,L0|L1}, /* 8a: 100x xxxx */ 3388 {CALT, 1,16,16,L0|L1}, /* 8b: 100x xxxx */ 3389 {CALT, 1,16,16,L0|L1}, /* 8c: 100x xxxx */ 3390 {CALT, 1,16,16,L0|L1}, /* 8d: 100x xxxx */ 3391 {CALT, 1,16,16,L0|L1}, /* 8e: 100x xxxx */ 3392 {CALT, 1,16,16,L0|L1}, /* 8f: 100x xxxx */ 3393 3394 {CALT, 1,16,16,L0|L1}, /* 90: 100x xxxx */ 3395 {CALT, 1,16,16,L0|L1}, /* 91: 100x xxxx */ 3396 {CALT, 1,16,16,L0|L1}, /* 92: 100x xxxx */ 3397 {CALT, 1,16,16,L0|L1}, /* 93: 100x xxxx */ 3398 {CALT, 1,16,16,L0|L1}, /* 94: 100x xxxx */ 3399 {CALT, 1,16,16,L0|L1}, /* 95: 100x xxxx */ 3400 {CALT, 1,16,16,L0|L1}, /* 96: 100x xxxx */ 3401 {CALT, 1,16,16,L0|L1}, /* 97: 100x xxxx */ 3402 {CALT, 1,16,16,L0|L1}, /* 98: 100x xxxx */ 3403 {CALT, 1,16,16,L0|L1}, /* 99: 100x xxxx */ 3404 {CALT, 1,16,16,L0|L1}, /* 9a: 100x xxxx */ 3405 {CALT, 1,16,16,L0|L1}, /* 9b: 100x xxxx */ 3406 {CALT, 1,16,16,L0|L1}, /* 9c: 100x xxxx */ 3407 {CALT, 1,16,16,L0|L1}, /* 9d: 100x xxxx */ 3408 {CALT, 1,16,16,L0|L1}, /* 9e: 100x xxxx */ 3409 {CALT, 1,16,16,L0|L1}, /* 9f: 100x xxxx */ 3410 3411 {POP_VA, 1,10,10,L0|L1}, /* a0: 1010 0000 */ 3412 {POP_BC, 1,10,10,L0|L1}, /* a1: 1010 0001 */ 3413 {POP_DE, 1,10,10,L0|L1}, /* a2: 1010 0010 */ 3414 {POP_HL, 1,10,10,L0|L1}, /* a3: 1010 0011 */ 3415 {POP_EA, 1,10,10,L0|L1}, /* a4: 1010 0100 */ 3416 {DMOV_EA_BC, 1, 4, 4,L0|L1}, /* a5: 1010 0101 */ 3417 {DMOV_EA_DE, 1, 4, 4,L0|L1}, /* a6: 1010 0110 */ 3418 {DMOV_EA_HL, 1, 4, 4,L0|L1}, /* a7: 1010 0111 */ 3419 {INX_EA, 1, 7, 7,L0|L1}, /* a8: 1010 1000 */ 3420 {DCX_EA, 1, 7, 7,L0|L1}, /* a9: 1010 1001 */ 3421 {EI, 1, 4, 4,L0|L1}, /* aa: 1010 1010 */ 3422 {LDAX_D_xx, 2, 7, 7,L0|L1}, /* ab: 1010 1011 dddd dddd */ 3423 {LDAX_H_A, 1, 7, 7,L0|L1}, /* ac: 1010 1100 */ 3424 {LDAX_H_B, 1, 7, 7,L0|L1}, /* ad: 1010 1101 */ 3425 {LDAX_H_EA, 1, 7, 7,L0|L1}, /* ae: 1010 1110 */ 3426 {LDAX_H_xx, 2, 7, 7,L0|L1}, /* af: 1010 1111 dddd dddd */ 3427 3428 {PUSH_VA, 1,13,13,L0|L1}, /* b0: 1011 0000 */ 3429 {PUSH_BC, 1,13,13,L0|L1}, /* b1: 1011 0001 */ 3430 {PUSH_DE, 1,13,13,L0|L1}, /* b2: 1011 0010 */ 3431 {PUSH_HL, 1,13,13,L0|L1}, /* b3: 1011 0011 */ 3432 {PUSH_EA, 1,13,13,L0|L1}, /* b4: 1011 0100 */ 3433 {DMOV_BC_EA, 1, 4, 4,L0|L1}, /* b5: 1011 0101 */ 3434 {DMOV_DE_EA, 1, 4, 4,L0|L1}, /* b6: 1011 0110 */ 3435 {DMOV_HL_EA, 1, 4, 4,L0|L1}, /* b7: 1011 0111 */ 3436 {RET, 1,10,10,L0|L1}, /* b8: 1011 1000 */ 3437 {RETS, 1,10,10,L0|L1}, /* b9: 1011 1001 */ 3438 {DI, 1, 4, 4,L0|L1}, /* ba: 1011 1010 */ 3439 {STAX_D_xx, 2, 7, 7,L0|L1}, /* bb: 1011 1011 dddd dddd */ 3440 {STAX_H_A, 1, 7, 7,L0|L1}, /* bc: 1011 1100 */ 3441 {STAX_H_B, 1, 7, 7,L0|L1}, /* bd: 1011 1101 */ 3442 {STAX_H_EA, 1, 7, 7,L0|L1}, /* be: 1011 1110 */ 3443 {STAX_H_xx, 2, 7, 7,L0|L1}, /* bf: 1011 1111 dddd dddd */ 3444 3445 {JR, 1,10,10,L0|L1}, /* c0: 1100 0000 */ 3446 {JR, 1,10,10,L0|L1}, /* c1: 1100 0001 */ 3447 {JR, 1,10,10,L0|L1}, /* c2: 1100 0010 */ 3448 {JR, 1,10,10,L0|L1}, /* c3: 1100 0011 */ 3449 {JR, 1,10,10,L0|L1}, /* c4: 1100 0100 */ 3450 {JR, 1,10,10,L0|L1}, /* c5: 1100 0101 */ 3451 {JR, 1,10,10,L0|L1}, /* c6: 1100 0110 */ 3452 {JR, 1,10,10,L0|L1}, /* c7: 1100 0111 */ 3453 {JR, 1,10,10,L0|L1}, /* c8: 1100 1000 */ 3454 {JR, 1,10,10,L0|L1}, /* c9: 1100 1001 */ 3455 {JR, 1,10,10,L0|L1}, /* ca: 1100 1010 */ 3456 {JR, 1,10,10,L0|L1}, /* cb: 1100 1011 */ 3457 {JR, 1,10,10,L0|L1}, /* cc: 1100 1100 */ 3458 {JR, 1,10,10,L0|L1}, /* cd: 1100 1101 */ 3459 {JR, 1,10,10,L0|L1}, /* ce: 1100 1110 */ 3460 {JR, 1,10,10,L0|L1}, /* cf: 1100 1111 */ 3461 3462 {JR, 1,10,10,L0|L1}, /* d0: 1101 0000 */ 3463 {JR, 1,10,10,L0|L1}, /* d1: 1101 0001 */ 3464 {JR, 1,10,10,L0|L1}, /* d2: 1101 0010 */ 3465 {JR, 1,10,10,L0|L1}, /* d3: 1101 0011 */ 3466 {JR, 1,10,10,L0|L1}, /* d4: 1101 0100 */ 3467 {JR, 1,10,10,L0|L1}, /* d5: 1101 0101 */ 3468 {JR, 1,10,10,L0|L1}, /* d6: 1101 0110 */ 3469 {JR, 1,10,10,L0|L1}, /* d7: 1101 0111 */ 3470 {JR, 1,10,10,L0|L1}, /* d8: 1101 1000 */ 3471 {JR, 1,10,10,L0|L1}, /* d9: 1101 1001 */ 3472 {JR, 1,10,10,L0|L1}, /* da: 1101 1010 */ 3473 {JR, 1,10,10,L0|L1}, /* db: 1101 1011 */ 3474 {JR, 1,10,10,L0|L1}, /* dc: 1101 1100 */ 3475 {JR, 1,10,10,L0|L1}, /* dd: 1101 1101 */ 3476 {JR, 1,10,10,L0|L1}, /* de: 1101 1110 */ 3477 {JR, 1,10,10,L0|L1}, /* df: 1101 1111 */ 3478 3479 {JR, 1,10,10,L0|L1}, /* e0: 1110 0000 */ 3480 {JR, 1,10,10,L0|L1}, /* e1: 1110 0001 */ 3481 {JR, 1,10,10,L0|L1}, /* e2: 1110 0010 */ 3482 {JR, 1,10,10,L0|L1}, /* e3: 1110 0011 */ 3483 {JR, 1,10,10,L0|L1}, /* e4: 1110 0100 */ 3484 {JR, 1,10,10,L0|L1}, /* e5: 1110 0101 */ 3485 {JR, 1,10,10,L0|L1}, /* e6: 1110 0110 */ 3486 {JR, 1,10,10,L0|L1}, /* e7: 1110 0111 */ 3487 {JR, 1,10,10,L0|L1}, /* e8: 1110 1000 */ 3488 {JR, 1,10,10,L0|L1}, /* e9: 1110 1001 */ 3489 {JR, 1,10,10,L0|L1}, /* ea: 1110 1010 */ 3490 {JR, 1,10,10,L0|L1}, /* eb: 1110 1011 */ 3491 {JR, 1,10,10,L0|L1}, /* ec: 1110 1100 */ 3492 {JR, 1,10,10,L0|L1}, /* ed: 1110 1101 */ 3493 {JR, 1,10,10,L0|L1}, /* ee: 1110 1110 */ 3494 {JR, 1,10,10,L0|L1}, /* ef: 1110 1111 */ 3495 3496 {JR, 1,10,10,L0|L1}, /* f0: 1111 0000 */ 3497 {JR, 1,10,10,L0|L1}, /* f1: 1111 0001 */ 3498 {JR, 1,10,10,L0|L1}, /* f2: 1111 0010 */ 3499 {JR, 1,10,10,L0|L1}, /* f3: 1111 0011 */ 3500 {JR, 1,10,10,L0|L1}, /* f4: 1111 0100 */ 3501 {JR, 1,10,10,L0|L1}, /* f5: 1111 0101 */ 3502 {JR, 1,10,10,L0|L1}, /* f6: 1111 0110 */ 3503 {JR, 1,10,10,L0|L1}, /* f7: 1111 0111 */ 3504 {JR, 1,10,10,L0|L1}, /* f8: 1111 1000 */ 3505 {JR, 1,10,10,L0|L1}, /* f9: 1111 1001 */ 3506 {JR, 1,10,10,L0|L1}, /* fa: 1111 1010 */ 3507 {JR, 1,10,10,L0|L1}, /* fb: 1111 1011 */ 3508 {JR, 1,10,10,L0|L1}, /* fc: 1111 1100 */ 3509 {JR, 1,10,10,L0|L1}, /* fd: 1111 1101 */ 3510 {JR, 1,10,10,L0|L1}, /* fe: 1111 1110 */ 3511 {JR, 1,10,10,L0|L1} /* ff: 1111 1111 */ 3512 }; 3513 3514