1 /* 2 * Copyright (c) 2007-2013 Michael Mondy 3 * Copyright (c) 2012-2016 Harry Reed 4 * Copyright (c) 2013-2016 Charles Anthony 5 * Copyright (c) 2021 The DPS8M Development Team 6 * 7 * All rights reserved. 8 * 9 * This software is made available under the terms of the ICU 10 * License, version 1.8.1 or later. For more details, see the 11 * LICENSE.md file at the top-level directory of this distribution. 12 */ 13 14 #include "dps8.h" 15 #include "dps8_opcodetable.h" 16 17 #define _EIS_ NO_TAG | NO_XED | NO_RPT | IGN_B29 18 19 struct opcode_s opcodes10[02000] = { 20 // NonEIS 21 /* 000 */ 22 {NULL, 0, 0, 0, 0}, 23 {"mme", PREPARE_CA | NO_RPT, 0, 0, 0}, 24 {"drl", PREPARE_CA | NO_RPT, 0, 0, 0}, 25 {NULL, 0, 0, 0, 0}, 26 {"mme2", PREPARE_CA | NO_BAR | NO_RPT, 0, 0, 0}, 27 {"mme3", PREPARE_CA | NO_BAR | NO_RPT, 0, 0, 0}, 28 {NULL, 0, 0, 0, 0}, 29 {"mme4", PREPARE_CA | NO_BAR | NO_RPT, 0, 0, 0}, 30 {NULL, 0, 0, 0, 0}, 31 {"nop", PREPARE_CA | NO_RPT, 0, 0, ru_none}, 32 {"puls1", PREPARE_CA | NO_RPT, 0, 0, 0}, 33 {"puls2", PREPARE_CA | NO_RPT, 0, 0, 0}, 34 {NULL, 0, 0, 0, 0}, 35 {"cioc", READ_OPERAND | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 36 {NULL, 0, 0, 0, 0}, 37 {NULL, 0, 0, 0, 0}, 38 {"adlx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_A | ru_X0}, 39 {"adlx1", READ_OPERAND, NO_CSS, 0, ru_A | ru_X1}, 40 {"adlx2", READ_OPERAND, NO_CSS, 0, ru_A | ru_X2}, 41 {"adlx3", READ_OPERAND, NO_CSS, 0, ru_A | ru_X3}, 42 {"adlx4", READ_OPERAND, NO_CSS, 0, ru_A | ru_X4}, 43 {"adlx5", READ_OPERAND, NO_CSS, 0, ru_A | ru_X5}, 44 {"adlx6", READ_OPERAND, NO_CSS, 0, ru_A | ru_X6}, 45 {"adlx7", READ_OPERAND, NO_CSS, 0, ru_A | ru_X7}, 46 {NULL, 0, 0, 0, 0}, 47 {NULL, 0, 0, 0, 0}, 48 {"ldqc", RMW, NO_DDCSS, 0, ru_Q}, 49 {"adl", READ_OPERAND, NO_CSS, 0, ru_AQ}, 50 {"ldac", RMW, NO_DDCSS, 0, ru_A}, 51 {"adla", READ_OPERAND, 0, 0, ru_A}, 52 {"adlq", READ_OPERAND, 0, 0, ru_Q}, 53 {"adlaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 54 {"asx0", RMW | NO_RPT | NO_RPL, NO_DDCSS, 0, ru_X0}, 55 {"asx1", RMW | NO_RPL, NO_DDCSS, 0, ru_X1}, 56 {"asx2", RMW | NO_RPL, NO_DDCSS, 0, ru_X2}, 57 {"asx3", RMW | NO_RPL, NO_DDCSS, 0, ru_X3}, 58 {"asx4", RMW | NO_RPL, NO_DDCSS, 0, ru_X4}, 59 {"asx5", RMW | NO_RPL, NO_DDCSS, 0, ru_X5}, 60 {"asx6", RMW | NO_RPL, NO_DDCSS, 0, ru_X6}, 61 {"asx7", RMW | NO_RPL, NO_DDCSS, 0, ru_X7}, 62 {"adwp0", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 63 {"adwp1", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 64 {"adwp2", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 65 {"adwp3", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 66 {"aos", RMW | NO_RPL, NO_DDCSS, 0, ru_none}, 67 {"asa", RMW | NO_RPL, NO_DDCSS, 0, ru_A}, 68 {"asq", RMW | NO_RPL, NO_DDCSS, 0, ru_Q}, 69 {"sscr", PREPARE_CA | PRIV_INS, NO_DDCSS, 0, ru_AQ}, 70 {"adx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 71 {"adx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 72 {"adx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 73 {"adx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 74 {"adx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 75 {"adx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 76 {"adx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 77 {"adx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 78 {NULL, 0, 0, 0, 0}, 79 {"awca", READ_OPERAND, 0, 0, ru_A}, 80 {"awcq", READ_OPERAND, 0, 0, ru_Q}, 81 {"lreg", READ_YBLOCK8 | NO_RPT, NO_DDCSS, 0, MASK10}, 82 {NULL, 0, 0, 0, 0}, 83 {"ada", READ_OPERAND, 0, 0, ru_A}, 84 {"adq", READ_OPERAND, 0, 0, ru_Q}, 85 {"adaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 86 87 /* 100 */ 88 {"cmpx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 89 {"cmpx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 90 {"cmpx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 91 {"cmpx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 92 {"cmpx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 93 {"cmpx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 94 {"cmpx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 95 {"cmpx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 96 {NULL, 0, 0, 0, 0}, 97 {"cwl", READ_OPERAND, 0, 0, ru_AQ}, 98 {NULL, 0, 0, 0, 0}, 99 {NULL, 0, 0, 0, 0}, 100 {NULL, 0, 0, 0, 0}, 101 {"cmpa", READ_OPERAND, 0, 0, ru_A}, 102 {"cmpq", READ_OPERAND, 0, 0, ru_Q}, 103 {"cmpaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 104 {"sblx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 105 {"sblx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 106 {"sblx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 107 {"sblx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 108 {"sblx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 109 {"sblx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 110 {"sblx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 111 {"sblx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 112 {NULL, 0, 0, 0, 0}, 113 {NULL, 0, 0, 0, 0}, 114 {NULL, 0, 0, 0, 0}, 115 {NULL, 0, 0, 0, 0}, 116 {NULL, 0, 0, 0, 0}, 117 {"sbla", READ_OPERAND, 0, 0, ru_A}, 118 {"sblq", READ_OPERAND, 0, 0, ru_Q}, 119 {"sblaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 120 {"ssx0", RMW | NO_RPT | NO_RPL, NO_DDCSS, 0, ru_X0}, 121 {"ssx1", RMW | NO_RPL, NO_DDCSS, 0, ru_X1}, 122 {"ssx2", RMW | NO_RPL, NO_DDCSS, 0, ru_X2}, 123 {"ssx3", RMW | NO_RPL, NO_DDCSS, 0, ru_X3}, 124 {"ssx4", RMW | NO_RPL, NO_DDCSS, 0, ru_X4}, 125 {"ssx5", RMW | NO_RPL, NO_DDCSS, 0, ru_X5}, 126 {"ssx6", RMW | NO_RPL, NO_DDCSS, 0, ru_X6}, 127 {"ssx7", RMW | NO_RPL, NO_DDCSS, 0, ru_X7}, 128 {"adwp4", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 129 {"adwp5", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 130 {"adwp6", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 131 {"adwp7", READ_OPERAND | NO_BAR | NO_RPT, NO_DLCSS, 0, 0}, 132 {"sdbr", STORE_YPAIR | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 133 {"ssa", RMW | NO_RPL, NO_DDCSS, 0, ru_A}, 134 {"ssq", RMW | NO_RPL, NO_DDCSS, 0, ru_Q}, 135 {NULL, 0, 0, 0, 0}, 136 {"sbx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 137 {"sbx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 138 {"sbx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 139 {"sbx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 140 {"sbx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 141 {"sbx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 142 {"sbx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 143 {"sbx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 144 {NULL, 0, 0, 0, 0}, 145 {"swca", READ_OPERAND, 0, 0, ru_A}, 146 {"swcq", READ_OPERAND, 0, 0, ru_Q}, 147 {"lpri", READ_YBLOCK16 | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 148 {NULL, 0, 0, 0, 0}, 149 {"sba", READ_OPERAND, 0, 0, ru_A}, 150 {"sbq", READ_OPERAND, 0, 0, ru_Q}, 151 {"sbaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 152 153 /* 200 */ 154 {"cnax0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 155 {"cnax1", READ_OPERAND, NO_CSS, 0, ru_X1}, 156 {"cnax2", READ_OPERAND, NO_CSS, 0, ru_X2}, 157 {"cnax3", READ_OPERAND, NO_CSS, 0, ru_X3}, 158 {"cnax4", READ_OPERAND, NO_CSS, 0, ru_X4}, 159 {"cnax5", READ_OPERAND, NO_CSS, 0, ru_X5}, 160 {"cnax6", READ_OPERAND, NO_CSS, 0, ru_X6}, 161 {"cnax7", READ_OPERAND, NO_CSS, 0, ru_X7}, 162 {NULL, 0, 0, 0, 0}, 163 {"cmk", READ_OPERAND, 0, 0, ru_AQ}, 164 // XXX AL-39 seems wrong w.r.t absa; it makes no sense as privileged. 165 {"absa", PREPARE_CA | PRIV_INS | NO_RPT, NO_DDCSS, 0, ru_A}, 166 {"epaq", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, ru_AQ}, 167 {"sznc", RMW, NO_DDCSS, 0, ru_none}, 168 {"cnaa", READ_OPERAND, 0, 0, ru_A}, 169 {"cnaq", READ_OPERAND, 0, 0, ru_Q}, 170 {"cnaaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 171 {"ldx0", READ_OPERAND | NO_RPT | NO_RPL, NO_CSS, 0, ru_X0}, 172 {"ldx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 173 {"ldx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 174 {"ldx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 175 {"ldx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 176 {"ldx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 177 {"ldx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 178 {"ldx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 179 {"lbar", READ_OPERAND | NO_RPT | NO_BAR, NO_CSS, 0, 0}, 180 {"rsw", PREPARE_CA | PRIV_INS | NO_RPT, 0, 0, ru_A}, 181 {"ldbr", READ_YPAIR | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 182 {"rmcm", PRIV_INS, NO_DDCSS, 0, ru_AQ}, 183 {"szn", READ_OPERAND, 0, 0, ru_none}, 184 {"lda", READ_OPERAND, 0, 0, ru_A}, 185 {"ldq", READ_OPERAND, 0, 0, ru_Q}, 186 {"ldaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 187 {"orsx0", RMW | NO_RPT | NO_RPL, NO_DDCSS, 0, ru_X0}, 188 {"orsx1", RMW | NO_RPL, NO_DDCSS, 0, ru_X1}, 189 {"orsx2", RMW | NO_RPL, NO_DDCSS, 0, ru_X2}, 190 {"orsx3", RMW | NO_RPL, NO_DDCSS, 0, ru_X3}, 191 {"orsx4", RMW | NO_RPL, NO_DDCSS, 0, ru_X4}, 192 {"orsx5", RMW | NO_RPL, NO_DDCSS, 0, ru_X5}, 193 {"orsx6", RMW | NO_RPL, NO_DDCSS, 0, ru_X6}, 194 {"orsx7", RMW | NO_RPL, NO_DDCSS, 0, ru_X7}, 195 {"spri0", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 196 {"spbp1", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 197 {"spri2", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 198 {"spbp3", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 199 {"spri", STORE_YBLOCK16 | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 200 {"orsa", RMW | NO_RPL, NO_DDCSS, 0, ru_A}, 201 {"orsq", RMW | NO_RPL, NO_DDCSS, 0, ru_Q}, 202 {"lsdp", READ_YBLOCK16 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, // not available on a dps8m 203 {"orx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 204 {"orx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 205 {"orx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 206 {"orx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 207 {"orx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 208 {"orx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 209 {"orx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 210 {"orx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 211 {"tsp0", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 212 {"tsp1", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 213 {"tsp2", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 214 {"tsp3", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 215 {NULL, 0, 0, 0, 0}, 216 {"ora", READ_OPERAND, 0, 0, ru_A}, 217 {"orq", READ_OPERAND, 0, 0, ru_Q}, 218 {"oraq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 219 220 /* 300 */ 221 {"canx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 222 {"canx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 223 {"canx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 224 {"canx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 225 {"canx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 226 {"canx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 227 {"canx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 228 {"canx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 229 {"eawp0", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 230 {"easp0", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 231 {"eawp2", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 232 {"easp2", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 233 {NULL, 0, 0, 0, 0}, 234 {"cana", READ_OPERAND, 0, 0, ru_A}, 235 {"canq", READ_OPERAND, 0, 0, ru_Q}, 236 {"canaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 237 {"lcx0", READ_OPERAND | NO_RPT | NO_RPL, NO_CSS, 0, ru_X0}, 238 {"lcx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 239 {"lcx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 240 {"lcx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 241 {"lcx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 242 {"lcx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 243 {"lcx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 244 {"lcx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 245 {"eawp4", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 246 {"easp4", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 247 {"eawp6", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 248 {"easp6", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 249 {NULL, 0, 0, 0, 0}, 250 {"lca", READ_OPERAND, 0, 0, ru_A}, 251 {"lcq", READ_OPERAND, 0, 0, ru_Q}, 252 {"lcaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 253 {"ansx0", RMW | NO_RPT | NO_RPL, NO_DDCSS, 0, ru_X0}, 254 {"ansx1", RMW | NO_RPL, NO_DDCSS, 0, ru_X1}, 255 {"ansx2", RMW | NO_RPL, NO_DDCSS, 0, ru_X2}, 256 {"ansx3", RMW | NO_RPL, NO_DDCSS, 0, ru_X3}, 257 {"ansx4", RMW | NO_RPL, NO_DDCSS, 0, ru_X4}, 258 {"ansx5", RMW | NO_RPL, NO_DDCSS, 0, ru_X5}, 259 {"ansx6", RMW | NO_RPL, NO_DDCSS, 0, ru_X6}, 260 {"ansx7", RMW | NO_RPL, NO_DDCSS, 0, ru_X7}, 261 {"epp0", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 262 {"epbp1", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 263 {"epp2", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 264 {"epbp3", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 265 {"stac", RMW | NO_RPL | NO_BAR, NO_DDCSS, 0, ru_A}, 266 {"ansa", RMW | NO_RPL, NO_DDCSS, 0, ru_A}, 267 {"ansq", RMW | NO_RPL, NO_DDCSS, 0, ru_Q}, 268 {"stcd", STORE_YPAIR | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 269 {"anx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 270 {"anx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 271 {"anx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 272 {"anx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 273 {"anx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 274 {"anx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 275 {"anx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 276 {"anx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 277 {"epp4", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 278 {"epbp5", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 279 {"epp6", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 280 {"epbp7", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 281 {NULL, 0, 0, 0, 0}, 282 {"ana", READ_OPERAND, 0, 0, ru_A}, 283 {"anq", READ_OPERAND, 0, 0, ru_Q}, 284 {"anaq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 285 286 /* 400 */ 287 {NULL, 0, 0, 0, 0}, 288 {"mpf", READ_OPERAND, NO_CSS, 0, ru_AQ}, 289 {"mpy", READ_OPERAND, NO_CSS, 0, ru_AQ}, 290 {NULL, 0, 0, 0, 0}, 291 {NULL, 0, 0, 0, 0}, 292 {"cmg", READ_OPERAND, 0, 0, ru_A}, 293 {NULL, 0, 0, 0, 0}, 294 {NULL, 0, 0, 0, 0}, 295 {NULL, 0, 0, 0, 0}, 296 {"lde", READ_OPERAND, NO_CSS, 0, ru_none}, 297 {NULL, 0, 0, 0, 0}, 298 {"rscr", PREPARE_CA | PRIV_INS | NO_RPL, NO_DDCSS, 0, 0}, 299 {NULL, 0, 0, 0, 0}, 300 {"ade", READ_OPERAND, NO_CSS, 0, ru_none}, 301 {NULL, 0, 0, 0, 0}, 302 {NULL, 0, 0, 0, 0}, 303 {NULL, 0, 0, 0, 0}, 304 {"ufm", READ_OPERAND, NO_CSS, 0, ru_AQ}, 305 {NULL, 0, 0, 0, 0}, 306 {"dufm", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 307 {NULL, 0, 0, 0, 0}, 308 {"fcmg", READ_OPERAND, NO_CSS, 0, ru_AQ}, 309 {NULL, 0, 0, 0, 0}, 310 {"dfcmg", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 311 {"fszn", READ_OPERAND, NO_CSS, 0, ru_none}, 312 {"fld", READ_OPERAND, NO_CSS, 0, ru_AQ}, 313 {NULL, 0, 0, 0, 0}, 314 {"dfld", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 315 {NULL, 0, 0, 0, 0}, 316 {"ufa", READ_OPERAND, NO_CSS, 0, ru_AQ}, 317 {NULL, 0, 0, 0, 0}, 318 {"dufa", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 319 {"sxl0", STORE_OPERAND | NO_RPT | NO_RPL, NO_DDCSS, 0, ru_X0}, 320 {"sxl1", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X1}, 321 {"sxl2", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X2}, 322 {"sxl3", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X3}, 323 {"sxl4", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X4}, 324 {"sxl5", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X5}, 325 {"sxl6", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X6}, 326 {"sxl7", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X7}, 327 {"stz", STORE_OPERAND | NO_RPL, NO_DUDL, 0, ru_none}, 328 {"smic", PREPARE_CA | PRIV_INS, NO_DDCSS, 0, 0}, 329 {"scpr", STORE_YPAIR | NO_TAG | PRIV_INS | NO_RPT, 0, 0, 0}, 330 {NULL, 0, 0, 0, 0}, 331 {"stt", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, 0}, 332 {"fst", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_A}, 333 {"ste", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_none}, 334 {"dfst", STORE_YPAIR | NO_RPL, NO_DDCSS, 0, ru_AQ}, 335 {NULL, 0, 0, 0, 0}, 336 {"fmp", READ_OPERAND, NO_CSS, 0, ru_AQ}, 337 {NULL, 0, 0, 0, 0}, 338 {"dfmp", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 339 {NULL, 0, 0, 0, 0}, 340 {NULL, 0, 0, 0, 0}, 341 {NULL, 0, 0, 0, 0}, 342 {NULL, 0, 0, 0, 0}, 343 {"fstr", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_AQ}, 344 {"frd", NO_RPL, 0, 0, ru_AQ}, 345 {"dfstr", STORE_YPAIR | NO_RPL, NO_DDCSS, 0, ru_AQ}, 346 {"dfrd", NO_RPL, 0, 0, ru_AQ}, 347 {NULL, 0, 0, 0, 0}, 348 {"fad", READ_OPERAND, NO_CSS, 0, ru_AQ}, 349 {NULL, 0, 0, 0, 0}, 350 {"dfad", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 351 352 /* 500 */ 353 {"rpl", NO_TAG | NO_RPT, 0, 0, ru_X0}, 354 {NULL, 0, 0, 0, 0}, 355 {NULL, 0, 0, 0, 0}, 356 {NULL, 0, 0, 0, 0}, 357 {NULL, 0, 0, 0, 0}, 358 {"bcd", READ_OPERAND | NO_RPL, NO_CSS, 0, ru_AQ}, 359 {"div", READ_OPERAND, 0, 0, ru_AQ}, 360 {"dvf", READ_OPERAND, 0, 0, ru_AQ}, 361 {NULL, 0, 0, 0, 0}, 362 {NULL, 0, 0, 0, 0}, 363 {NULL, 0, 0, 0, 0}, 364 {"fneg", NO_RPL, 0, 0, ru_AQ}, 365 {NULL, 0, 0, 0, 0}, 366 {"fcmp", READ_OPERAND, NO_CSS, 0, ru_AQ}, 367 {NULL, 0, 0, 0, 0}, 368 {"dfcmp", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 369 {"rpt", NO_TAG | NO_RPT, 0, 0, ru_X0}, 370 {NULL, 0, 0, 0, 0}, 371 {NULL, 0, 0, 0, 0}, 372 {NULL, 0, 0, 0, 0}, 373 {NULL, 0, 0, 0, 0}, 374 {"fdi", READ_OPERAND, NO_CSS, 0, ru_AQ}, 375 {NULL, 0, 0, 0, 0}, 376 {"dfdi", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 377 {NULL, 0, 0, 0, 0}, 378 {"neg", NO_RPL, 0, 0, ru_A}, 379 {"cams", PREPARE_CA | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 380 {"negl", NO_RPL, 0, 0, ru_AQ}, 381 {NULL, 0, 0, 0, 0}, 382 {"ufs", READ_OPERAND, NO_CSS, 0, ru_AQ}, 383 {NULL, 0, 0, 0, 0}, 384 {"dufs", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 385 {"sprp0", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 386 {"sprp1", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 387 {"sprp2", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 388 {"sprp3", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 389 {"sprp4", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 390 {"sprp5", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 391 {"sprp6", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 392 {"sprp7", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 393 {"sbar", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, 0}, 394 {"stba", STORE_OPERAND | NO_TAG | NO_RPT, 0, 0, ru_A}, 395 {"stbq", STORE_OPERAND | NO_TAG | NO_RPT, 0, 0, ru_Q}, 396 {"smcm", PREPARE_CA | PRIV_INS | NO_RPL, NO_DDCSS, 0, 0}, 397 {"stc1", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, 0}, 398 {NULL, 0, 0, 0, 0}, 399 {NULL, 0, 0, 0, 0}, 400 {"ssdp", STORE_YBLOCK16 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 401 {"rpd", NO_TAG | NO_RPT, 0, 0, ru_X0}, 402 {NULL, 0, 0, 0, 0}, 403 {NULL, 0, 0, 0, 0}, 404 {NULL, 0, 0, 0, 0}, 405 {NULL, 0, 0, 0, 0}, 406 {"fdv", READ_OPERAND, NO_CSS, 0, ru_AQ}, 407 {NULL, 0, 0, 0, 0}, 408 {"dfdv", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 409 {NULL, 0, 0, 0, 0}, 410 {NULL, 0, 0, 0, 0}, 411 {NULL, 0, 0, 0, 0}, 412 {"fno", NO_RPL, 0, 0, ru_AQ}, 413 {NULL, 0, 0, 0, 0}, 414 {"fsb", READ_OPERAND, NO_CSS, 0, ru_AQ}, 415 {NULL, 0, 0, 0, 0}, 416 {"dfsb", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 417 /* 600 */ 418 {"tze", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 419 {"tnz", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 420 {"tnc", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 421 {"trc", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 422 {"tmi", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 423 {"tpl", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 424 {NULL, 0, 0, 0, 0}, 425 {"ttf", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 426 {"rtcd", NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 427 {NULL, 0, 0, 0, 0}, 428 {NULL, 0, 0, 0, 0}, 429 {"rcu", READ_YBLOCK8 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 430 {"teo", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 431 {"teu", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 432 {"dis", PRIV_INS | NO_RPT, 0, 0, 0}, 433 {"tov", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_none}, 434 {"eax0", PREPARE_CA | NO_RPT | NO_RPL, NO_DUDL, 0, ru_X0}, 435 {"eax1", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_X1}, 436 {"eax2", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_X2}, 437 {"eax3", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_X3}, 438 {"eax4", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_X4}, 439 {"eax5", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_X5}, 440 {"eax6", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_X6}, 441 {"eax7", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_X7}, 442 {"ret", NO_RPT, NO_DDCSS, 0, 0}, 443 {NULL, 0, 0, 0, 0}, 444 {NULL, 0, 0, 0, 0}, 445 {"rccl", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 446 {"ldi", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_none}, 447 {"eaa", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_A}, 448 {"eaq", PREPARE_CA | NO_RPL, NO_DUDL, 0, ru_Q}, 449 {"ldt", READ_OPERAND | PRIV_INS | NO_RPT, NO_CSS, 0, 0}, 450 {"ersx0", RMW | NO_RPT | NO_RPL, NO_DDCSS, 0, ru_X0}, 451 {"ersx1", RMW | NO_RPL, NO_DDCSS, 0, ru_X1}, 452 {"ersx2", RMW | NO_RPL, NO_DDCSS, 0, ru_X2}, 453 {"ersx3", RMW | NO_RPL, NO_DDCSS, 0, ru_X3}, 454 {"ersx4", RMW | NO_RPL, NO_DDCSS, 0, ru_X4}, 455 {"ersx5", RMW | NO_RPL, NO_DDCSS, 0, ru_X5}, 456 {"ersx6", RMW | NO_RPL, NO_DDCSS, 0, ru_X6}, 457 {"ersx7", RMW | NO_RPL, NO_DDCSS, 0, ru_X7}, 458 {"spri4", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 459 {"spbp5", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 460 {"spri6", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 461 {"spbp7", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 462 {"stacq", RMW | NO_RPL | NO_BAR, NO_DDCSS, 0, ru_AQ}, 463 {"ersa", RMW | NO_RPL, NO_DDCSS, 0, ru_A}, 464 {"ersq", RMW | NO_RPL, NO_DDCSS, 0, ru_Q}, 465 {"scu", STORE_YBLOCK8 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 466 {"erx0", READ_OPERAND | NO_RPT, NO_CSS, 0, ru_X0}, 467 {"erx1", READ_OPERAND, NO_CSS, 0, ru_X1}, 468 {"erx2", READ_OPERAND, NO_CSS, 0, ru_X2}, 469 {"erx3", READ_OPERAND, NO_CSS, 0, ru_X3}, 470 {"erx4", READ_OPERAND, NO_CSS, 0, ru_X4}, 471 {"erx5", READ_OPERAND, NO_CSS, 0, ru_X5}, 472 {"erx6", READ_OPERAND, NO_CSS, 0, ru_X6}, 473 {"erx7", READ_OPERAND, NO_CSS, 0, ru_X7}, 474 {"tsp4", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 475 {"tsp5", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 476 {"tsp6", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 477 {"tsp7", TRANSFER_INS | TSPN_INS | NO_RPT | NO_BAR, NO_DDCSS, 0, 0}, 478 {"lcpr", READ_OPERAND | NO_TAG | PRIV_INS | NO_RPT, 0, 0, 0}, 479 {"era", READ_OPERAND, 0, 0, ru_A}, 480 {"erq", READ_OPERAND, 0, 0, ru_Q}, 481 {"eraq", READ_YPAIR, NO_DDCSS, 0, ru_AQ}, 482 483 /* 700 */ 484 {"tsx0", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X0}, 485 {"tsx1", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X1}, 486 {"tsx2", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X2}, 487 {"tsx3", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X3}, 488 {"tsx4", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X4}, 489 {"tsx5", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X5}, 490 {"tsx6", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X6}, 491 {"tsx7", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, ru_X7}, 492 {"tra", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, 0}, 493 {NULL, 0, 0, 0, 0}, 494 {NULL, 0, 0, 0, 0}, 495 // CALL6 must fetch the destination instruction to force do_append_cycle 496 // to do all of the ring checks and processing. 497 //{"call6", PREPARE_CA | TRANSFER_INS | CALL6_INS | NO_RPT, NO_DDCSS, 0}, 498 {"call6", TRANSFER_INS | CALL6_INS | NO_RPT, NO_DDCSS, 0, 0}, 499 {NULL, 0, 0, 0, 0}, 500 {"tss", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, 0}, 501 {"xec", READ_OPERAND | NO_RPT, NO_DDCSS, 0, 0}, 502 {"xed", READ_YPAIR | NO_RPT, NO_DDCSS, 0, 0}, // ???? 503 {"lxl0", READ_OPERAND | NO_RPT | NO_RPL, NO_CSS, 0, ru_X0}, 504 {"lxl1", READ_OPERAND, NO_CSS, 0, ru_X1}, 505 {"lxl2", READ_OPERAND, NO_CSS, 0, ru_X2}, 506 {"lxl3", READ_OPERAND, NO_CSS, 0, ru_X3}, 507 {"lxl4", READ_OPERAND, NO_CSS, 0, ru_X4}, 508 {"lxl5", READ_OPERAND, NO_CSS, 0, ru_X5}, 509 {"lxl6", READ_OPERAND, NO_CSS, 0, ru_X6}, 510 {"lxl7", READ_OPERAND, NO_CSS, 0, ru_X7}, 511 {NULL, 0, 0, 0, 0}, 512 {"ars", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_A}, 513 {"qrs", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_Q}, 514 {"lrs", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_AQ}, 515 {NULL, 0, 0, 0, 0}, 516 {"als", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_A}, 517 {"qls", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_Q}, 518 {"lls", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_AQ}, 519 {"stx0", STORE_OPERAND | NO_RPT | NO_RPL, NO_DDCSS, 0, ru_X0}, 520 {"stx1", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X1}, 521 {"stx2", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X2}, 522 {"stx3", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X3}, 523 {"stx4", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X4}, 524 {"stx5", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X5}, 525 {"stx6", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X6}, 526 {"stx7", STORE_OPERAND | NO_RPL, NO_DDCSS, 0, ru_X7}, 527 {"stc2", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, 0}, 528 {"stca", STORE_OPERAND | NO_TAG | NO_RPT, 0, 0, ru_A}, 529 {"stcq", STORE_OPERAND | NO_TAG | NO_RPT, 0, 0, ru_Q}, 530 {"sreg", STORE_YBLOCK8 | NO_RPT, NO_DDCSS, 0, MASK10}, 531 {"sti", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, 0}, 532 {"sta", STORE_OPERAND | NO_RPL, NO_DUDL, 0, ru_A}, 533 {"stq", STORE_OPERAND | NO_RPL, NO_DUDL, 0, ru_Q}, 534 {"staq", STORE_YPAIR | NO_RPL, NO_DDCSS, 0, ru_AQ}, 535 {"lprp0", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 536 {"lprp1", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 537 {"lprp2", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 538 {"lprp3", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 539 {"lprp4", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 540 {"lprp5", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 541 {"lprp6", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 542 {"lprp7", READ_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 543 {NULL, 0, 0, 0, 0}, 544 {"arl", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_A}, 545 {"qrl", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_Q}, 546 {"lrl", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_AQ}, 547 {"gtb", PREPARE_CA | NO_RPL, 0, 0, ru_A}, 548 {"alr", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_A}, 549 {"qlr", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_Q}, 550 {"llr", PREPARE_CA | NO_RPL, NO_DDCSS, 0, ru_AQ}, 551 // EIS 552 /* 000 - 017 */ 553 {NULL, 0, 0, 0, 0}, 554 {NULL, 0, 0, 0, 0}, 555 {NULL, 0, 0, 0, 0}, 556 {NULL, 0, 0, 0, 0}, 557 {NULL, 0, 0, 0, 0}, 558 {NULL, 0, 0, 0, 0}, 559 {NULL, 0, 0, 0, 0}, 560 {NULL, 0, 0, 0, 0}, 561 {NULL, 0, 0, 0, 0}, 562 {NULL, 0, 0, 0, 0}, 563 {NULL, 0, 0, 0, 0}, 564 {NULL, 0, 0, 0, 0}, 565 {NULL, 0, 0, 0, 0}, 566 {NULL, 0, 0, 0, 0}, 567 {NULL, 0, 0, 0, 0}, 568 {NULL, 0, 0, 0, 0}, 569 /* 020 - 037 */ 570 {"mve", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 571 {NULL, 0, 0, 0, 0}, 572 {NULL, 0, 0, 0, 0}, 573 {NULL, 0, 0, 0, 0}, 574 {"mvne", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 575 {NULL, 0, 0, 0, 0}, 576 {NULL, 0, 0, 0, 0}, 577 {NULL, 0, 0, 0, 0}, 578 {NULL, 0, 0, 0, 0}, 579 {NULL, 0, 0, 0, 0}, 580 {NULL, 0, 0, 0, 0}, 581 {NULL, 0, 0, 0, 0}, 582 {NULL, 0, 0, 0, 0}, 583 {NULL, 0, 0, 0, 0}, 584 {NULL, 0, 0, 0, 0}, 585 {NULL, 0, 0, 0, 0}, 586 /* 040 - 057 */ 587 {NULL, 0, 0, 0, 0}, 588 {NULL, 0, 0, 0, 0}, 589 {NULL, 0, 0, 0, 0}, 590 {NULL, 0, 0, 0, 0}, 591 {NULL, 0, 0, 0, 0}, 592 {NULL, 0, 0, 0, 0}, 593 {NULL, 0, 0, 0, 0}, 594 {NULL, 0, 0, 0, 0}, 595 {NULL, 0, 0, 0, 0}, 596 {NULL, 0, 0, 0, 0}, 597 {NULL, 0, 0, 0, 0}, 598 {NULL, 0, 0, 0, 0}, 599 {NULL, 0, 0, 0, 0}, 600 {NULL, 0, 0, 0, 0}, 601 {NULL, 0, 0, 0, 0}, 602 {NULL, 0, 0, 0, 0}, 603 /* 060 - 077 */ 604 {"csl", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 605 {"csr", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 606 {NULL, 0, 0, 0, 0}, 607 {NULL, 0, 0, 0, 0}, 608 {"sztl", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 609 {"sztr", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 610 {"cmpb", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 611 {NULL, 0, 0, 0, 0}, 612 {NULL, 0, 0, 0, 0}, 613 {NULL, 0, 0, 0, 0}, 614 {NULL, 0, 0, 0, 0}, 615 {NULL, 0, 0, 0, 0}, 616 {NULL, 0, 0, 0, 0}, 617 {NULL, 0, 0, 0, 0}, 618 {NULL, 0, 0, 0, 0}, 619 {NULL, 0, 0, 0, 0}, 620 /* 100 - 117 */ 621 {"mlr", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 622 {"mrl", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 623 {NULL, 0, 0, 0, 0}, 624 {NULL, 0, 0, 0, 0}, 625 {NULL, 0, 0, 0, 0}, 626 {NULL, 0, 0, 0, 0}, 627 {"cmpc", _EIS_ | EOP1_ALPHA | EOP2_ALPHA, 0, 2, is_DU}, 628 {NULL, 0, 0, 0, 0}, 629 {NULL, 0, 0, 0, 0}, 630 {NULL, 0, 0, 0, 0}, 631 {NULL, 0, 0, 0, 0}, 632 {NULL, 0, 0, 0, 0}, 633 {NULL, 0, 0, 0, 0}, 634 {NULL, 0, 0, 0, 0}, 635 {NULL, 0, 0, 0, 0}, 636 {NULL, 0, 0, 0, 0}, 637 /* 120 - 137 */ 638 {"scd", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 639 {"scdr", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 640 {NULL, 0, 0, 0, 0}, 641 {NULL, 0, 0, 0, 0}, 642 {"scm", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 643 {"scmr", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 644 {NULL, 0, 0, 0, 0}, 645 {NULL, 0, 0, 0, 0}, 646 {NULL, 0, 0, 0, 0}, 647 {NULL, 0, 0, 0, 0}, 648 {NULL, 0, 0, 0, 0}, 649 {NULL, 0, 0, 0, 0}, 650 {NULL, 0, 0, 0, 0}, 651 {NULL, 0, 0, 0, 0}, 652 {NULL, 0, 0, 0, 0}, 653 {NULL, 0, 0, 0, 0}, 654 /* 140 - 157 */ 655 {NULL, 0, 0, 0, 0}, 656 {NULL, 0, 0, 0, 0}, 657 {NULL, 0, 0, 0, 0}, 658 {NULL, 0, 0, 0, 0}, 659 {NULL, 0, 0, 0, 0}, 660 {NULL, 0, 0, 0, 0}, 661 {NULL, 0, 0, 0, 0}, 662 {NULL, 0, 0, 0, 0}, 663 {NULL, 0, 0, 0, 0}, 664 {NULL, 0, 0, 0, 0}, 665 {NULL, 0, 0, 0, 0}, 666 {NULL, 0, 0, 0, 0}, 667 {"sptr", STORE_YBLOCK16 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 668 {NULL, 0, 0, 0, 0}, 669 {NULL, 0, 0, 0, 0}, 670 {NULL, 0, 0, 0, 0}, 671 /* 167 - 177 */ 672 {"mvt", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 673 {NULL, 0, 0, 0, 0}, 674 {NULL, 0, 0, 0, 0}, 675 {NULL, 0, 0, 0, 0}, 676 {"tct", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 677 {"tctr", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 678 {NULL, 0, 0, 0, 0}, 679 {NULL, 0, 0, 0, 0}, 680 {NULL, 0, 0, 0, 0}, 681 {NULL, 0, 0, 0, 0}, 682 {NULL, 0, 0, 0, 0}, 683 {"lptr", READ_YBLOCK16 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 684 {NULL, 0, 0, 0, 0}, 685 {NULL, 0, 0, 0, 0}, 686 {NULL, 0, 0, 0, 0}, 687 {NULL, 0, 0, 0, 0}, 688 /* 200 - 217 */ 689 {NULL, 0, 0, 0, 0}, 690 {NULL, 0, 0, 0, 0}, 691 {"ad2d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 692 {"sb2d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 693 {NULL, 0, 0, 0, 0}, 694 {NULL, 0, 0, 0, 0}, 695 {"mp2d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 696 {"dv2d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 697 {NULL, 0, 0, 0, 0}, 698 {NULL, 0, 0, 0, 0}, 699 {NULL, 0, 0, 0, 0}, 700 {NULL, 0, 0, 0, 0}, 701 {NULL, 0, 0, 0, 0}, 702 {NULL, 0, 0, 0, 0}, 703 {NULL, 0, 0, 0, 0}, 704 {NULL, 0, 0, 0, 0}, 705 /* 220 - 237 */ 706 {NULL, 0, 0, 0, 0}, 707 {NULL, 0, 0, 0, 0}, 708 {"ad3d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 709 {"sb3d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 710 {NULL, 0, 0, 0, 0}, 711 {NULL, 0, 0, 0, 0}, 712 {"mp3d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 713 {"dv3d", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 3, is_DU}, 714 {NULL, 0, 0, 0, 0}, 715 {NULL, 0, 0, 0, 0}, 716 {"lsdr", READ_YBLOCK32 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 717 {NULL, 0, 0, 0, 0}, 718 {NULL, 0, 0, 0, 0}, 719 {NULL, 0, 0, 0, 0}, 720 {NULL, 0, 0, 0, 0}, 721 {NULL, 0, 0, 0, 0}, 722 /* 240 - 257 */ 723 {NULL, 0, 0, 0, 0}, 724 {NULL, 0, 0, 0, 0}, 725 {NULL, 0, 0, 0, 0}, 726 {NULL, 0, 0, 0, 0}, 727 {NULL, 0, 0, 0, 0}, 728 {NULL, 0, 0, 0, 0}, 729 {NULL, 0, 0, 0, 0}, 730 {NULL, 0, 0, 0, 0}, 731 {"spbp0", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 732 {"spri1", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 733 {"spbp2", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 734 {"spri3", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 735 {"ssdr", STORE_YBLOCK32 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 736 {NULL, 0, 0, 0, 0}, 737 {NULL, 0, 0, 0, 0}, 738 {"lptp", READ_YBLOCK16 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 739 /* 260 - 277 */ 740 {NULL, 0, 0, 0, 0}, 741 {NULL, 0, 0, 0, 0}, 742 {NULL, 0, 0, 0, 0}, 743 {NULL, 0, 0, 0, 0}, 744 {NULL, 0, 0, 0, 0}, 745 {NULL, 0, 0, 0, 0}, 746 {NULL, 0, 0, 0, 0}, 747 {NULL, 0, 0, 0, 0}, 748 {NULL, 0, 0, 0, 0}, 749 {NULL, 0, 0, 0, 0}, 750 {NULL, 0, 0, 0, 0}, 751 {NULL, 0, 0, 0, 0}, 752 {NULL, 0, 0, 0, 0}, 753 {NULL, 0, 0, 0, 0}, 754 {NULL, 0, 0, 0, 0}, 755 {NULL, 0, 0, 0, 0}, 756 /* 300 - 317 */ 757 {"mvn", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 758 {"btd", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 759 {NULL, 0, 0, 0, 0}, 760 {"cmpn", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 761 {NULL, 0, 0, 0, 0}, 762 {"dtb", NO_TAG | NO_XED | NO_RPT | IGN_B29, 0, 2, is_DU}, 763 {NULL, 0, 0, 0, 0}, 764 {NULL, 0, 0, 0, 0}, 765 {"easp1", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 766 {"eawp1", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 767 {"easp3", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 768 {"eawp3", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 769 {NULL, 0, 0, 0, 0}, 770 {NULL, 0, 0, 0, 0}, 771 {NULL, 0, 0, 0, 0}, 772 {NULL, 0, 0, 0, 0}, 773 /* 320 - 337 */ 774 {NULL, 0, 0, 0, 0}, 775 {NULL, 0, 0, 0, 0}, 776 {NULL, 0, 0, 0, 0}, 777 {NULL, 0, 0, 0, 0}, 778 {NULL, 0, 0, 0, 0}, 779 {NULL, 0, 0, 0, 0}, 780 {NULL, 0, 0, 0, 0}, 781 {NULL, 0, 0, 0, 0}, 782 {"easp5", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 783 {"eawp5", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 784 {"easp7", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 785 {"eawp7", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 786 {NULL, 0, 0, 0, 0}, 787 {NULL, 0, 0, 0, 0}, 788 {NULL, 0, 0, 0, 0}, 789 {NULL, 0, 0, 0, 0}, 790 /* 340 - 357 */ 791 {NULL, 0, 0, 0, 0}, 792 {NULL, 0, 0, 0, 0}, 793 {NULL, 0, 0, 0, 0}, 794 {NULL, 0, 0, 0, 0}, 795 {NULL, 0, 0, 0, 0}, 796 {NULL, 0, 0, 0, 0}, 797 {NULL, 0, 0, 0, 0}, 798 {NULL, 0, 0, 0, 0}, 799 {"epbp0", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 800 {"epp1", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 801 {"epbp2", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 802 {"epp3", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 803 {NULL, 0, 0, 0, 0}, 804 {NULL, 0, 0, 0, 0}, 805 {NULL, 0, 0, 0, 0}, 806 {NULL, 0, 0, 0, 0}, 807 /* 360 - 377 */ 808 {NULL, 0, 0, 0, 0}, 809 {NULL, 0, 0, 0, 0}, 810 {NULL, 0, 0, 0, 0}, 811 {NULL, 0, 0, 0, 0}, 812 {NULL, 0, 0, 0, 0}, 813 {NULL, 0, 0, 0, 0}, 814 {NULL, 0, 0, 0, 0}, 815 {NULL, 0, 0, 0, 0}, 816 {"epbp4", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 817 {"epp5", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 818 {"epbp6", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 819 {"epp7", PREPARE_CA | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 820 {NULL, 0, 0, 0, 0}, 821 {NULL, 0, 0, 0, 0}, 822 {NULL, 0, 0, 0, 0}, 823 {NULL, 0, 0, 0, 0}, 824 /* 400 - 417 */ 825 {NULL, 0, 0, 0, 0}, 826 {NULL, 0, 0, 0, 0}, 827 {NULL, 0, 0, 0, 0}, 828 {NULL, 0, 0, 0, 0}, 829 {NULL, 0, 0, 0, 0}, 830 {NULL, 0, 0, 0, 0}, 831 {NULL, 0, 0, 0, 0}, 832 {NULL, 0, 0, 0, 0}, 833 {NULL, 0, 0, 0, 0}, 834 {NULL, 0, 0, 0, 0}, 835 {NULL, 0, 0, 0, 0}, 836 {NULL, 0, 0, 0, 0}, 837 {NULL, 0, 0, 0, 0}, 838 {NULL, 0, 0, 0, 0}, 839 {NULL, 0, 0, 0, 0}, 840 {NULL, 0, 0, 0, 0}, 841 /* 420 - 437 */ 842 {"emcall", IGN_B29, 0, 0, 0}, // 420 simulator escape 843 {NULL, 0, 0, 0, 0}, 844 {NULL, 0, 0, 0, 0}, 845 {NULL, 0, 0, 0, 0}, 846 {NULL, 0, 0, 0, 0}, 847 {NULL, 0, 0, 0, 0}, 848 {NULL, 0, 0, 0, 0}, 849 {NULL, 0, 0, 0, 0}, 850 {NULL, 0, 0, 0, 0}, 851 {NULL, 0, 0, 0, 0}, 852 {NULL, 0, 0, 0, 0}, 853 {NULL, 0, 0, 0, 0}, 854 {NULL, 0, 0, 0, 0}, 855 {NULL, 0, 0, 0, 0}, 856 {NULL, 0, 0, 0, 0}, 857 {NULL, 0, 0, 0, 0}, 858 /* 440 - 457 */ 859 {NULL, 0, 0, 0, 0}, 860 {NULL, 0, 0, 0, 0}, 861 {NULL, 0, 0, 0, 0}, 862 {"sareg", STORE_YBLOCK8 | NO_RPT, NO_DDCSS, 0, is_DU}, 863 {NULL, 0, 0, 0, 0}, 864 {NULL, 0, 0, 0, 0}, 865 {NULL, 0, 0, 0, 0}, 866 {"spl", STORE_YBLOCK8 | NO_RPT, NO_DDCSS, 0, is_DU}, 867 {NULL, 0, 0, 0, 0}, 868 {NULL, 0, 0, 0, 0}, 869 {NULL, 0, 0, 0, 0}, 870 {NULL, 0, 0, 0, 0}, 871 {NULL, 0, 0, 0, 0}, 872 {NULL, 0, 0, 0, 0}, 873 {NULL, 0, 0, 0, 0}, 874 {NULL, 0, 0, 0, 0}, 875 /* 460 - 477 */ 876 {NULL, 0, 0, 0, 0}, 877 {NULL, 0, 0, 0, 0}, 878 {NULL, 0, 0, 0, 0}, 879 {"lareg", READ_YBLOCK8 | NO_RPT, NO_DDCSS, 0, is_DU}, 880 {NULL, 0, 0, 0, 0}, 881 {NULL, 0, 0, 0, 0}, 882 {NULL, 0, 0, 0, 0}, 883 {"lpl", READ_YBLOCK8 | NO_RPT, NO_DDCSS, 0, is_DU}, 884 {NULL, 0, 0, 0, 0}, 885 {NULL, 0, 0, 0, 0}, 886 {NULL, 0, 0, 0, 0}, 887 {NULL, 0, 0, 0, 0}, 888 {NULL, 0, 0, 0, 0}, 889 {NULL, 0, 0, 0, 0}, 890 {NULL, 0, 0, 0, 0}, 891 {NULL, 0, 0, 0, 0}, 892 /* 500 - 517 */ 893 {"a9bd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_9}, 894 {"a6bd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_6}, 895 {"a4bd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_4}, 896 {"abd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_1}, 897 {NULL, 0, 0, 0, 0}, 898 {NULL, 0, 0, 0, 0}, 899 {NULL, 0, 0, 0, 0}, 900 {"awd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_WRD}, 901 {NULL, 0, 0, 0, 0}, 902 {NULL, 0, 0, 0, 0}, 903 {NULL, 0, 0, 0, 0}, 904 {NULL, 0, 0, 0, 0}, 905 {NULL, 0, 0, 0, 0}, 906 {NULL, 0, 0, 0, 0}, 907 {NULL, 0, 0, 0, 0}, 908 {NULL, 0, 0, 0, 0}, 909 /* 520 - 537 */ 910 {"s9bd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_9}, 911 {"s6bd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_6}, 912 {"s4bd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_4}, 913 {"sbd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_1}, 914 {NULL, 0, 0, 0, 0}, 915 {NULL, 0, 0, 0, 0}, 916 {NULL, 0, 0, 0, 0}, 917 {"swd", IGN_B29 | NO_RPT, ONLY_AU_QU_AL_QL_XN, 0, is_WRD}, 918 {NULL, 0, 0, 0, 0}, 919 {NULL, 0, 0, 0, 0}, 920 {"camp", PREPARE_CA | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 921 {NULL, 0, 0, 0, 0}, 922 {NULL, 0, 0, 0, 0}, 923 {NULL, 0, 0, 0, 0}, 924 {NULL, 0, 0, 0, 0}, 925 {NULL, 0, 0, 0, 0}, 926 /* 540 - 557 */ 927 {"ara0", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 928 {"ara1", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 929 {"ara2", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 930 {"ara3", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 931 {"ara4", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 932 {"ara5", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 933 {"ara6", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 934 {"ara7", RMW | NO_RPT, NO_DDCSS, 0, is_DU}, 935 {NULL, 0, 0, 0, 0}, 936 {NULL, 0, 0, 0, 0}, 937 {NULL, 0, 0, 0, 0}, 938 {NULL, 0, 0, 0, 0}, 939 {NULL, 0, 0, 0, 0}, 940 {NULL, 0, 0, 0, 0}, 941 {NULL, 0, 0, 0, 0}, 942 {"sptp", STORE_YBLOCK16 | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 943 /* 560 - 577 */ 944 {"aar0", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 945 {"aar1", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 946 {"aar2", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 947 {"aar3", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 948 {"aar4", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 949 {"aar5", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 950 {"aar6", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 951 {"aar7", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 952 {NULL, 0, 0, 0, 0}, 953 {NULL, 0, 0, 0, 0}, 954 {NULL, 0, 0, 0, 0}, 955 {NULL, 0, 0, 0, 0}, 956 {NULL, 0, 0, 0, 0}, 957 {NULL, 0, 0, 0, 0}, 958 {NULL, 0, 0, 0, 0}, 959 {NULL, 0, 0, 0, 0}, 960 /* 600 - 617 */ 961 {"trtn", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, 0}, 962 {"trtf", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, 0}, 963 {NULL, 0, 0, 0, 0}, 964 {NULL, 0, 0, 0, 0}, 965 {"tmoz", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, 0}, 966 {"tpnz", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, 0}, 967 {"ttn", TRANSFER_INS | NO_RPT, NO_DDCSS, 0, 0}, 968 {NULL, 0, 0, 0, 0}, 969 {NULL, 0, 0, 0, 0}, 970 {NULL, 0, 0, 0, 0}, 971 {NULL, 0, 0, 0, 0}, 972 {NULL, 0, 0, 0, 0}, 973 {NULL, 0, 0, 0, 0}, 974 {NULL, 0, 0, 0, 0}, 975 {NULL, 0, 0, 0, 0}, 976 {NULL, 0, 0, 0, 0}, 977 /* 620 - 637 */ 978 {NULL, 0, 0, 0, 0}, 979 {NULL, 0, 0, 0, 0}, 980 {NULL, 0, 0, 0, 0}, 981 {NULL, 0, 0, 0, 0}, 982 {NULL, 0, 0, 0, 0}, 983 {NULL, 0, 0, 0, 0}, 984 {NULL, 0, 0, 0, 0}, 985 {NULL, 0, 0, 0, 0}, 986 {NULL, 0, 0, 0, 0}, 987 {NULL, 0, 0, 0, 0}, 988 {NULL, 0, 0, 0, 0}, 989 {NULL, 0, 0, 0, 0}, 990 {NULL, 0, 0, 0, 0}, 991 {NULL, 0, 0, 0, 0}, 992 {NULL, 0, 0, 0, 0}, 993 {NULL, 0, 0, 0, 0}, 994 /* 640 - 657 */ 995 {"arn0", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 996 {"arn1", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 997 {"arn2", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 998 {"arn3", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 999 {"arn4", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1000 {"arn5", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1001 {"arn6", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1002 {"arn7", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1003 {"spbp4", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 1004 {"spri5", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 1005 {"spbp6", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 1006 {"spri7", STORE_YPAIR | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 1007 {NULL, 0, 0, 0, 0}, 1008 {NULL, 0, 0, 0, 0}, 1009 {NULL, 0, 0, 0, 0}, 1010 {NULL, 0, 0, 0, 0}, 1011 /* 660 - 677 */ 1012 {"nar0", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1013 {"nar1", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1014 {"nar2", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1015 {"nar3", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1016 {"nar4", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1017 {"nar5", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1018 {"nar6", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1019 {"nar7", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1020 {NULL, 0, 0, 0, 0}, 1021 {NULL, 0, 0, 0, 0}, 1022 {NULL, 0, 0, 0, 0}, 1023 {NULL, 0, 0, 0, 0}, 1024 {NULL, 0, 0, 0, 0}, 1025 {NULL, 0, 0, 0, 0}, 1026 {NULL, 0, 0, 0, 0}, 1027 {NULL, 0, 0, 0, 0}, 1028 /* 700 - 717 */ 1029 {NULL, 0, 0, 0, 0}, 1030 {NULL, 0, 0, 0, 0}, 1031 {NULL, 0, 0, 0, 0}, 1032 {NULL, 0, 0, 0, 0}, 1033 {NULL, 0, 0, 0, 0}, 1034 {NULL, 0, 0, 0, 0}, 1035 {NULL, 0, 0, 0, 0}, 1036 {NULL, 0, 0, 0, 0}, 1037 {NULL, 0, 0, 0, 0}, 1038 {NULL, 0, 0, 0, 0}, 1039 {NULL, 0, 0, 0, 0}, 1040 {NULL, 0, 0, 0, 0}, 1041 {NULL, 0, 0, 0, 0}, 1042 {NULL, 0, 0, 0, 0}, 1043 {NULL, 0, 0, 0, 0}, 1044 {NULL, 0, 0, 0, 0}, 1045 /* 720 - 737 */ 1046 {NULL, 0, 0, 0, 0}, 1047 {NULL, 0, 0, 0, 0}, 1048 {NULL, 0, 0, 0, 0}, 1049 {NULL, 0, 0, 0, 0}, 1050 {NULL, 0, 0, 0, 0}, 1051 {NULL, 0, 0, 0, 0}, 1052 {NULL, 0, 0, 0, 0}, 1053 {NULL, 0, 0, 0, 0}, 1054 {NULL, 0, 0, 0, 0}, 1055 {NULL, 0, 0, 0, 0}, 1056 {NULL, 0, 0, 0, 0}, 1057 {NULL, 0, 0, 0, 0}, 1058 {NULL, 0, 0, 0, 0}, 1059 {NULL, 0, 0, 0, 0}, 1060 {NULL, 0, 0, 0, 0}, 1061 {NULL, 0, 0, 0, 0}, 1062 /* 740 - 757 */ 1063 {"sar0", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1064 {"sar1", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1065 {"sar2", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1066 {"sar3", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1067 {"sar4", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1068 {"sar5", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1069 {"sar6", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1070 {"sar7", STORE_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1071 {NULL, 0, 0, 0, 0}, 1072 {NULL, 0, 0, 0, 0}, 1073 {NULL, 0, 0, 0, 0}, 1074 {NULL, 0, 0, 0, 0}, 1075 {"sra", STORE_OPERAND | NO_BAR | NO_RPT, NO_DDCSS, 0, 0}, 1076 {NULL, 0, 0, 0, 0}, 1077 {NULL, 0, 0, 0, 0}, 1078 {NULL, 0, 0, 0, 0}, 1079 /* 760 - 777 */ 1080 {"lar0", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1081 {"lar1", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1082 {"lar2", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1083 {"lar3", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1084 {"lar4", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1085 {"lar5", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1086 {"lar6", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1087 {"lar7", READ_OPERAND | NO_RPT, NO_DDCSS, 0, is_DU}, 1088 {NULL, 0, 0, 0, 0}, 1089 {NULL, 0, 0, 0, 0}, 1090 {NULL, 0, 0, 0, 0}, 1091 {NULL, 0, 0, 0, 0}, 1092 {"lra", READ_OPERAND | PRIV_INS | NO_RPT, NO_DDCSS, 0, 0}, 1093 {NULL, 0, 0, 0, 0}, 1094 {NULL, 0, 0, 0, 0}, 1095 {NULL, 0, 0, 0, 0} 1096 }; 1097 1098 1099 struct adrMods extMods[0100] = { ///< address modifiers w/ extended info 1100 /* R */ 1101 {"", 0, 0}, 1102 {"au", 1, 0}, 1103 {"qu", 2, 0}, 1104 {"du", 3, 0}, 1105 {"ic", 4, 0}, 1106 {"al", 5, 0}, 1107 {"ql", 6, 0}, 1108 {"dl", 7, 0}, 1109 {"0", 8, 0}, 1110 {"1", 9, 0}, 1111 {"2", 10, 0}, 1112 {"3", 11, 0}, 1113 {"4", 12, 0}, 1114 {"5", 13, 0}, 1115 {"6", 14, 0}, 1116 {"7", 15, 0}, 1117 1118 /* RI */ 1119 {"n*", 16, 0}, 1120 {"au*", 17, 0}, 1121 {"qu*", 18, 0}, 1122 {NULL, 19, 0}, 1123 {"ic*", 20, 0}, 1124 {"al*", 21, 0}, 1125 {"ql*", 22, 0}, 1126 {NULL, 23, 0}, 1127 {"0*", 24, 0}, 1128 {"1*", 25, 0}, 1129 {"2*", 26, 0}, 1130 {"3*", 27, 0}, 1131 {"4*", 28, 0}, 1132 {"5*", 29, 0}, 1133 {"6*", 30, 0}, 1134 {"7*", 31, 0}, 1135 1136 /* IT */ 1137 {"f1", 32, 0}, 1138 {"itp", 33, 0}, 1139 {NULL, 34, 0}, 1140 {"its", 35, 0}, 1141 {"sd", 36, 0}, 1142 {"scr", 37, 0}, 1143 {"f2", 38, 0}, 1144 {"f3", 39, 0}, 1145 {"ci", 40, 0}, 1146 {"i", 41, 0}, 1147 {"sc", 42, 0}, 1148 {"ad", 43, 0}, 1149 {"di", 44, 0}, 1150 {"dic", 45, 0}, 1151 {"id", 46, 0}, 1152 {"idc", 47, 0}, 1153 1154 /* IR */ 1155 {"*n", 48, 0}, 1156 {"*au", 49, 0}, 1157 {"*qu", 50, 0}, 1158 {"*du", 51, 0}, 1159 {"*ic", 52, 0}, 1160 {"*al", 53, 0}, 1161 {"*ql", 54, 0}, 1162 {"*dl", 55, 0}, 1163 {"*0", 56, 0}, 1164 {"*1", 57, 0}, 1165 {"*2", 58, 0}, 1166 {"*3", 59, 0}, 1167 {"*4", 60, 0}, 1168 {"*5", 61, 0}, 1169 {"*6", 62, 0}, 1170 {"*7", 63, 0}, 1171 }; 1172 1173 char GEBcdToASCII[64] = ///< from pg 271 CPB1004F_GE635pgmRef_Jul69 1174 { 1175 /* 000 - 007 */ '0', '1', '2', '3', '4', '5', '6', '7', 1176 /* 010 - 017 */ '8', '9', '[', '#', '@', ':', '>', '?', 1177 /* 020 - 027 */ ' ', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 1178 /* 030 - 037 */ 'H', 'I', '&', '.', ']', '(', '<', '\\', 1179 /* 040 - 047 */ '^', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 1180 /* 050 - 057 */ 'Q', 'R', '-', '$', '*', ')', ';', '\'', 1181 /* 060 - 067 */ '+', '/', 'S', 'T', 'U', 'V', 'W', 'X', 1182 /* 070 - 077 */ 'Y', 'Z', '_', ',', '%', '=', '"', '!' 1183 }; 1184 1185 #ifndef QUIET_UNUSED 1186 char ASCIIToGEBcd[128] = 1187 { 1188 /* 000 - 007 */ -1, -1, -1, -1, -1, -1, -1, -1, 1189 /* 010 - 017 */ -1, -1, -1, -1, -1, -1, -1, -1, 1190 /* 020 - 027 */ -1, -1, -1, -1, -1, -1, -1, -1, 1191 /* 030 - 037 */ -1, -1, -1, -1, -1, -1, -1, -1, 1192 /* 040 - 047 */ 16, 63, 62, 11, 43, 60, 26, 47, 1193 /* 050 - 057 */ 29, 45, 44, 48, 59, 42, 27, 49, 1194 /* 060 - 067 */ 0, 1, 2, 3, 4, 5, 6, 7, 1195 /* 070 - 077 */ 8, 9, 13, 46, 30, 61, 14, 15, 1196 /* 100 - 107 */ 12, 17, 18, 19, 20, 21, 22, 23, 1197 /* 110 - 117 */ 24, 25, 33, 34, 35, 36, 37, 38, 1198 /* 120 - 127 */ 39, 40, 41, 50, 51, 52, 53, 54, 1199 /* 130 - 137 */ 55, 56, 57, 10, 31, 28, 32, 58, 1200 /* 140 - 147 */ -1, 17, 18, 19, 20, 21, 22, 23, 1201 /* 150 - 157 */ 24, 25, 33, 34, 35, 36, 37, 38, 1202 /* 160 - 167 */ 39, 40, 41, 50, 51, 52, 53, 54, 1203 /* 170 - 177 */ 55, 56, 57, -1, -1, -1, -1, -1, 1204 }; 1205 #endif 1206 1207 #ifndef QUIET_UNUSED 1208 char *op0text[512] = { 1209 // index by upper 9 bits of those opcodes with bit 27 == 0 1210 NULL, "mme", "drl", NULL, "mme2", "mme3", NULL, "mme4", 1211 NULL, "nop", "puls1", "puls2", NULL, "cioc", NULL, NULL, 1212 "adlx0", "adlx1", "adlx2", "adlx3", "adlx4", "adlx5", "adlx6", "adlx7", 1213 NULL, NULL, "ldqc", "adl", "ldac", "adla", "adlq", "adlaq", 1214 "asx0", "asx1", "asx2", "asx3", "asx4", "asx5", "asx6", "asx7", 1215 "adwp0", "adwp1", "adwp2", "adwp3", "aos", "asa", "asq", "sscr", 1216 "adx0", "adx1", "adx2", "adx3", "adx4", "adx5", "adx6", "adx7", 1217 NULL, "awca", "awcq", "lreg", NULL, "ada", "adq", "adaq", 1218 "cmpx0", "cmpx1", "cmpx2", "cmpx3", "cmpx4", "cmpx5", "cmpx6", "cmpx7", 1219 NULL, "cwl", NULL, NULL, NULL, "cmpa", "cmpq", "cmpaq", 1220 "sblx0", "sblx1", "sblx2", "sblx3", "sblx4", "sblx5", "sblx6", "sblx7", 1221 NULL, NULL, NULL, NULL, NULL, "sbla", "sblq", "sblaq", 1222 "ssx0", "ssx1", "ssx2", "ssx3", "ssx4", "ssx5", "ssx6", "ssx7", 1223 "adwp4", "adwp5", "adwp6", "adwp7", "sdbr", "ssa", "ssq", NULL, 1224 "sbx0", "sbx1", "sbx2", "sbx3", "sbx4", "sbx5", "sbx6", "sbx7", 1225 NULL, "swca", "swcq", "lpri", NULL, "sba", "sbq", "sbaq", 1226 "cnax0", "cnax1", "cnax2", "cnax3", "cnax4", "cnax5", "cnax6", "cnax7", 1227 NULL, "cmk", "absa", "epaq", "sznc", "cnaa", "cnaq", "cnaaq", 1228 "ldx0", "ldx1", "ldx2", "ldx3", "ldx4", "ldx5", "ldx6", "ldx7", 1229 "lbar", "rsw", "ldbr", "rmcm", "szn", "lda", "ldq", "ldaq", 1230 "orsx0", "orsx1", "orsx2", "orsx3", "orsx4", "orsx5", "orsx6", "orsx7", 1231 "spri0", "spbp1", "spri2", "spbp3", "spri", "orsa", "orsq", "lsdp", 1232 "orx0", "orx1", "orx2", "orx3", "orx4", "orx5", "orx6", "orx7", 1233 "tsp0", "tsp1", "tsp2", "tsp3", NULL, "ora", "orq", "oraq", 1234 "canx0", "canx1", "canx2", "canx3", "canx4", "canx5", "canx6", "canx7", 1235 "eawp0", "easp0", "eawp2", "easp2", NULL, "cana", "canq", "canaq", 1236 "lcx0", "lcx1", "lcx2", "lcx3", "lcx4", "lcx5", "lcx6", "lcx7", 1237 "eawp4", "easp4", "eawp6", "easp6", NULL, "lca", "lcq", "lcaq", 1238 "ansx0", "ansx1", "ansx2", "ansx3", "ansx4", "ansx5", "ansx6", "ansx7", 1239 "epp0", "pbp1", "epp2", "epbp3", "stac", "ansa", "ansq", "stcd", 1240 "anx0", "anx1", "anx2", "anx3", "anx4", "anx5", "anx6", "anx7", 1241 "epp4", "epbp5", "epp6", "epbp7", NULL, "ana", "anq", "anaq", 1242 NULL, "mpf", "mpy", NULL, NULL, "cmg", NULL, NULL, 1243 NULL, "lde", NULL, "rscr", NULL, "ade", NULL, NULL, 1244 NULL, "ufm", NULL, "dufm", NULL, "fcmg", NULL, "dfcmg", 1245 "fszn", "fld", NULL, "dfld", NULL, "ufa", NULL, "dufa", 1246 "sxl0", "sxl1", "sxl2", "sxl3", "sxl4", "sxl5", "sxl6", "sxl7", 1247 "stz", "smic", "scpr", NULL, "stt", "fst", "ste", "dfst", 1248 NULL, "fmp", NULL, "dfmp", NULL, NULL, NULL, NULL, 1249 "fstr", "frd", "dfstr", "dfrd", NULL, "fad", NULL, "dfad", 1250 "rpl", NULL, NULL, NULL, NULL, "bcd", "div", "dvf", 1251 NULL, NULL, NULL, "fneg", NULL, "fcmp", NULL, "dfcmp", 1252 "rpt", NULL, NULL, NULL, NULL, "fdi", NULL, "dfdi", 1253 NULL, "neg", "cams", "negl", NULL, "ufs", NULL, "dufs", 1254 "sprp0", "sprp1", "sprp2", "sprp3", "sprp4", "sprp5", "sprp6", "sprp7", 1255 "sbar", "stba", "stbq", "smcm", "stc1", NULL, NULL, "ssdp", 1256 "rpd", NULL, NULL, NULL, NULL, "fdv", NULL, "dfdv", 1257 NULL, NULL, NULL, "fno", NULL, "fsb", NULL, "dfsb", 1258 "tze", "tnz", "tnc", "trc", "tmi", "tpl", NULL, "ttf", 1259 "rtcd", NULL, NULL, "rcu", "teo", "teu", "dis", "tov", 1260 "eax0", "eax1", "eax2", "eax3", "eax4", "eax5", "eax6", "eax7", 1261 "ret", NULL, NULL, "rccl", "ldi", "eaa", "eaq", "ldt", 1262 "ersx0", "ersx1", "ersx2", "ersx3", "ersx4", "ersx5", "ersx6", "ersx7", 1263 "spri4", "spbp5", "spri6", "spbp7", "stacq", "ersa", "ersq", "scu", 1264 "erx0", "erx1", "erx2", "erx3", "erx4", "erx5", "erx6", "erx7", 1265 "tsp4", "tsp5", "tsp6", "tsp7", "lcpr", "era", "erq", "eraq", 1266 "tsx0", "tsx1", "tsx2", "tsx3", "tsx4", "tsx5", "tsx6", "tsx7", 1267 "tra", NULL, NULL, "call6", NULL, "tss", "xec", "xed", 1268 "lxl0", "lxl1", "lxl2", "lxl3", "lxl4", "lxl5", "lxl6", "lxl7", 1269 NULL, "ars", "qrs", "lrs", NULL, "als", "qls", "lls", 1270 "stx0", "stx1", "stx2", "stx3", "stx4", "stx5", "stx6", "stx7", 1271 "stc2", "stca", "stcq", "sreg", "sti", "sta", "stq", "staq", 1272 "lprp0", "lprp1", "lprp2", "lprp3", "lprp4", "lprp5", "lprp6", "lprp7", 1273 NULL, "arl", "qrl", "lrl", "gtb", "alr", "qlr", "llr" 1274 }; 1275 #endif 1276 1277 #ifndef QUIET_UNUSED 1278 char *op1text[512] = { 1279 // index by upper 9 bits of those opcodes with bit 27 == 1 1280 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1281 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1282 "mve", NULL, NULL, NULL, "mvne", NULL, NULL, NULL, 1283 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1284 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1285 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1286 "csl", "csr", NULL, NULL, "sztl", "sztr", "cmpb", NULL, 1287 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1288 "mlr", "mrl", NULL, NULL, NULL, NULL, "cmpc", NULL, 1289 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1290 "scd", "scdr", NULL, NULL, "scm", "scmr", NULL, NULL, 1291 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1292 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1293 NULL, NULL, NULL, NULL, "sptr", NULL, NULL, NULL, 1294 "mvt", NULL, NULL, NULL, "tct", "tctr", NULL, NULL, 1295 NULL, NULL, NULL, "lptr", NULL, NULL, NULL, NULL, 1296 NULL, NULL, "ad2d", "sb2d", NULL, NULL, "mp2d", "dv2d", 1297 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1298 NULL, NULL, "ad3d", "sb3d", NULL, NULL, "mp3d", "dv3d", 1299 NULL, NULL, "lsdr", NULL, NULL, NULL, NULL, NULL, 1300 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1301 "spbp0", "spri1", "spbp2", "spri3", "ssdr", NULL, NULL, "lptp", 1302 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1303 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1304 "mvn", "btd", NULL, "cmpn", NULL, "dtb", NULL, NULL, 1305 "easp1", "eawp1", "easp3", "eawp3", NULL, NULL, NULL, NULL, 1306 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1307 "easp5", "eawp5", "easp7", "eawp7", NULL, NULL, NULL, NULL, 1308 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1309 "epbp0", "epp1", "epbp2", "epp3", NULL, NULL, NULL, NULL, 1310 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1311 "epbp4", "epp5", "epbp6", "epp7", NULL, NULL, NULL, NULL, 1312 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1313 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1314 "emcall", NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1315 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1316 NULL, NULL, NULL, "sareg", NULL, NULL, NULL, "spl", 1317 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1318 NULL, NULL, NULL, "lareg", NULL, NULL, NULL, "lpl", 1319 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1320 "a9bd", "a6bd", "a4bd", "abd", NULL, NULL, NULL, "awd", 1321 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1322 "s9bd", "s6bd", "s4bd", "sbd", NULL, NULL, NULL, "swd", 1323 NULL, NULL, "camp", NULL, NULL, NULL, NULL, NULL, 1324 "ara0", "ara1", "ara2", "ara3", "ara4", "ara5", "ara6", "ara7", 1325 NULL, NULL, NULL, NULL, NULL, NULL, NULL, "sptp", 1326 "aar0", "aar1", "aar2", "aar3", "aar4", "aar5", "aar6", "aar7", 1327 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1328 "trtn", "trtf", NULL, NULL, "tmoz", "tpnz", "ttn", NULL, 1329 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1330 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1331 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1332 "arn0", "arn1", "arn2", "arn3", "arn4", "arn5", "arn6", "arn7", 1333 "spbp4", "spri5", "spbp6", "spri7", NULL, NULL, NULL, NULL, 1334 "nar0", "nar1", "nar2", "nar3", "nar4", "nar5", "nar6", "nar7", 1335 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1336 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1337 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1338 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1339 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1340 "sar0", "sar1", "sar2", "sar3", "sar4", "sar5", "sar6", "sar7", 1341 NULL, NULL, NULL, NULL, "sra", NULL, NULL, NULL, 1342 "lar0", "lar1", "lar2", "lar3", "lar4", "lar5", "lar6", "lar7", 1343 NULL, NULL, NULL, NULL, "lra", NULL, NULL, NULL 1344 }; 1345 #endif 1346 1347 #ifndef QUIET_UNUSED 1348 char *opcodes2text[1024] = { 1349 // index by all 10 bits of all opcodes 1350 NULL, NULL, "mme", NULL, "drl", NULL, NULL, NULL, 1351 "mme2", NULL, "mme3", NULL, NULL, NULL, "mme4", NULL, 1352 NULL, NULL, "nop", NULL, "puls1", NULL, "puls2", NULL, 1353 NULL, NULL, "cioc", NULL, NULL, NULL, NULL, NULL, 1354 "adlx0", "mve", "adlx1", NULL, "adlx2", NULL, "adlx3", NULL, 1355 "adlx4", "mvne", "adlx5", NULL, "adlx6", NULL, "adlx7", NULL, 1356 NULL, NULL, NULL, NULL, "ldqc", NULL, "adl", NULL, 1357 "ldac", NULL, "adla", NULL, "adlq", NULL, "adlaq", NULL, 1358 "asx0", NULL, "asx1", NULL, "asx2", NULL, "asx3", NULL, 1359 "asx4", NULL, "asx5", NULL, "asx6", NULL, "asx7", NULL, 1360 "adwp0", NULL, "adwp1", NULL, "adwp2", NULL, "adwp3", NULL, 1361 "aos", NULL, "asa", NULL, "asq", NULL, "sscr", NULL, 1362 "adx0", "csl", "adx1", "csr", "adx2", NULL, "adx3", NULL, 1363 "adx4", "sztl", "adx5", "sztr", "adx6", "cmpb", "adx7", NULL, 1364 NULL, NULL, "awca", NULL, "awcq", NULL, "lreg", NULL, 1365 NULL, NULL, "ada", NULL, "adq", NULL, "adaq", NULL, 1366 "cmpx0", "mlr", "cmpx1", "mrl", "cmpx2", NULL, "cmpx3", NULL, 1367 "cmpx4", NULL, "cmpx5", NULL, "cmpx6", "cmpc", "cmpx7", NULL, 1368 NULL, NULL, "cwl", NULL, NULL, NULL, NULL, NULL, 1369 NULL, NULL, "cmpa", NULL, "cmpq", NULL, "cmpaq", NULL, 1370 "sblx0", "scd", "sblx1", "scdr", "sblx2", NULL, "sblx3", NULL, 1371 "sblx4", "scm", "sblx5", "scmr", "sblx6", NULL, "sblx7", NULL, 1372 NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1373 NULL, NULL, "sbla", NULL, "sblq", NULL, "sblaq", NULL, 1374 "ssx0", NULL, "ssx1", NULL, "ssx2", NULL, "ssx3", NULL, 1375 "ssx4", NULL, "ssx5", NULL, "ssx6", NULL, "ssx7", NULL, 1376 "adwp4", NULL, "adwp5", NULL, "adwp6", NULL, "adwp7", NULL, 1377 "sdbr", "sptr", "ssa", NULL, "ssq", NULL, NULL, NULL, 1378 "sbx0", "mvt", "sbx1", NULL, "sbx2", NULL, "sbx3", NULL, 1379 "sbx4", "tct", "sbx5", "tctr", "sbx6", NULL, "sbx7", NULL, 1380 NULL, NULL, "swca", NULL, "swcq", NULL, "lpri", "lptr", 1381 NULL, NULL, "sba", NULL, "sbq", NULL, "sbaq", NULL, 1382 "cnax0", NULL, "cnax1", NULL, "cnax2", "ad2d", "cnax3", "sb2d", 1383 "cnax4", NULL, "cnax5", NULL, "cnax6", "mp2d", "cnax7", "dv2d", 1384 NULL, NULL, "cmk", NULL, "absa", NULL, "epaq", NULL, 1385 "sznc", NULL, "cnaa", NULL, "cnaq", NULL, "cnaaq", NULL, 1386 "ldx0", NULL, "ldx1", NULL, "ldx2", "ad3d", "ldx3", "sb3d", 1387 "ldx4", NULL, "ldx5", NULL, "ldx6", "mp3d", "ldx7", "dv3d", 1388 "lbar", NULL, "rsw", NULL, "ldbr", "lsdr", "rmcm", NULL, 1389 "szn", NULL, "lda", NULL, "ldq", NULL, "ldaq", NULL, 1390 "orsx0", NULL, "orsx1", NULL, "orsx2", NULL, "orsx3", NULL, 1391 "orsx4", NULL, "orsx5", NULL, "orsx6", NULL, "orsx7", NULL, 1392 "spri0", "spbp0", "spbp1", "spri1", "spri2", "spbp2", "spbp3", "spri3", 1393 "spri", "ssdr", "orsa", NULL, "orsq", NULL, "lsdp", "lptp", 1394 "orx0", NULL, "orx1", NULL, "orx2", NULL, "orx3", NULL, 1395 "orx4", NULL, "orx5", NULL, "orx6", NULL, "orx7", NULL, 1396 "tsp0", NULL, "tsp1", NULL, "tsp2", NULL, "tsp3", NULL, 1397 NULL, NULL, "ora", NULL, "orq", NULL, "oraq", NULL, 1398 "canx0", "mvn", "canx1", "btd", "canx2", NULL, "canx3", "cmpn", 1399 "canx4", NULL, "canx5", "dtb", "canx6", NULL, "canx7", NULL, 1400 "eawp0", "easp1", "easp0", "eawp1", "eawp2", "easp3", "easp2", "eawp3", 1401 NULL, NULL, "cana", NULL, "canq", NULL, "canaq", NULL, 1402 "lcx0", NULL, "lcx1", NULL, "lcx2", NULL, "lcx3", NULL, 1403 "lcx4", NULL, "lcx5", NULL, "lcx6", NULL, "lcx7", NULL, 1404 "eawp4", "easp5", "easp4", "eawp5", "eawp6", "easp7", "easp6", "eawp7", 1405 NULL, NULL, "lca", NULL, "lcq", NULL, "lcaq", NULL, 1406 "ansx0", NULL, "ansx1", NULL, "ansx2", NULL, "ansx3", NULL, 1407 "ansx4", NULL, "ansx5", NULL, "ansx6", NULL, "ansx7", NULL, 1408 "epp0", "epbp0", "epbp1", "epp1", "epp2", "epbp2", "epbp3", "epp3", 1409 "stac", NULL, "ansa", NULL, "ansq", NULL, "stcd", NULL, 1410 "anx0", NULL, "anx1", NULL, "anx2", NULL, "anx3", NULL, 1411 "anx4", NULL, "anx5", NULL, "anx6", NULL, "anx7", NULL, 1412 "epp4", "epbp4", "epbp5", "epp5", "epp6", "epbp6", "epbp7", "epp7", 1413 NULL, NULL, "ana", NULL, "anq", NULL, "anaq", NULL, 1414 NULL, NULL, "mpf", NULL, "mpy", NULL, NULL, NULL, 1415 NULL, NULL, "cmg", NULL, NULL, NULL, NULL, NULL, 1416 NULL, NULL, "lde", NULL, NULL, NULL, "rscr", NULL, 1417 NULL, NULL, "ade", NULL, NULL, NULL, NULL, NULL, 1418 NULL, "emcall","ufm", NULL, NULL, NULL, "dufm", NULL, 1419 NULL, NULL, "fcmg", NULL, NULL, NULL, "dfcmg", NULL, 1420 "fszn", NULL, "fld", NULL, NULL, NULL, "dfld", NULL, 1421 NULL, NULL, "ufa", NULL, NULL, NULL, "dufa", NULL, 1422 "sxl0", NULL, "sxl1", NULL, "sxl2", NULL, "sxl3", "sareg", 1423 "sxl4", NULL, "sxl5", NULL, "sxl6", NULL, "sxl7", "spl", 1424 "stz", NULL, "smic", NULL, "scpr", NULL, NULL, NULL, 1425 "stt", NULL, "fst", NULL, "ste", NULL, "dfst", NULL, 1426 NULL, NULL, "fmp", NULL, NULL, NULL, "dfmp", "lareg", 1427 NULL, NULL, NULL, NULL, NULL, NULL, NULL, "lpl", 1428 "fstr", NULL, "frd", NULL, "dfstr", NULL, "dfrd", NULL, 1429 NULL, NULL, "fad", NULL, NULL, NULL, "dfad", NULL, 1430 "rpl", "a9bd", NULL, "a6bd", NULL, "a4bd", NULL, "abd", 1431 NULL, NULL, "bcd", NULL, "div", NULL, "dvf", "awd", 1432 NULL, NULL, NULL, NULL, NULL, NULL, "fneg", NULL, 1433 NULL, NULL, "fcmp", NULL, NULL, NULL, "dfcmp", NULL, 1434 "rpt", "s9bd", NULL, "s6bd", NULL, "s4bd", NULL, "sbd", 1435 NULL, NULL, "fdi", NULL, NULL, NULL, "dfdi", "swd", 1436 NULL, NULL, "neg", NULL, "cams", "camp", "negl", NULL, 1437 NULL, NULL, "ufs", NULL, NULL, NULL, "dufs", NULL, 1438 "sprp0", "ara0", "sprp1", "ara1", "sprp2", "ara2", "sprp3", "ara3", 1439 "sprp4", "ara4", "sprp5", "ara5", "sprp6", "ara6", "sprp7", "ara7", 1440 "sbar", NULL, "stba", NULL, "stbq", NULL, "smcm", NULL, 1441 "stc1", NULL, NULL, NULL, NULL, NULL, "ssdp", "sptp", 1442 "rpd", "aar0", NULL, "aar1", NULL, "aar2", NULL, "aar3", 1443 NULL, "aar4", "fdv", "aar5", NULL, "aar6", "dfdv", "aar7", 1444 NULL, NULL, NULL, NULL, NULL, NULL, "fno", NULL, 1445 NULL, NULL, "fsb", NULL, NULL, NULL, "dfsb", NULL, 1446 "tze", "trtn", "tnz", "trtf", "tnc", NULL, "trc", NULL, 1447 "tmi", "tmoz", "tpl", "tpnz", NULL, "ttn", "ttf", NULL, 1448 "rtcd", NULL, NULL, NULL, NULL, NULL, "rcu", NULL, 1449 "teo", NULL, "teu", NULL, "dis", NULL, "tov", NULL, 1450 "eax0", NULL, "eax1", NULL, "eax2", NULL, "eax3", NULL, 1451 "eax4", NULL, "eax5", NULL, "eax6", NULL, "eax7", NULL, 1452 "ret", NULL, NULL, NULL, NULL, NULL, "rccl", NULL, 1453 "ldi", NULL, "eaa", NULL, "eaq", NULL, "ldt", NULL, 1454 "ersx0", "arn0", "ersx1", "arn1", "ersx2", "arn2", "ersx3", "arn3", 1455 "ersx4", "arn4", "ersx5", "arn5", "ersx6", "arn6", "ersx7", "arn7", 1456 "spri4", "spbp4", "spbp5", "spri5", "spri6", "spbp6", "spbp7", "spri7", 1457 "stacq", NULL, "ersa", NULL, "ersq", NULL, "scu", NULL, 1458 "erx0", "nar0", "erx1", "nar1", "erx2", "nar2", "erx3", "nar3", 1459 "erx4", "nar4", "erx5", "nar5", "erx6", "nar6", "erx7", "nar7", 1460 "tsp4", NULL, "tsp5", NULL, "tsp6", NULL, "tsp7", NULL, 1461 "lcpr", NULL, "era", NULL, "erq", NULL, "eraq", NULL, 1462 "tsx0", NULL, "tsx1", NULL, "tsx2", NULL, "tsx3", NULL, 1463 "tsx4", NULL, "tsx5", NULL, "tsx6", NULL, "tsx7", NULL, 1464 "tra", NULL, NULL, NULL, NULL, NULL, "call6", NULL, 1465 NULL, NULL, "tss", NULL, "xec", NULL, "xed", NULL, 1466 "lxl0", NULL, "lxl1", NULL, "lxl2", NULL, "lxl3", NULL, 1467 "lxl4", NULL, "lxl5", NULL, "lxl6", NULL, "lxl7", NULL, 1468 NULL, NULL, "ars", NULL, "qrs", NULL, "lrs", NULL, 1469 NULL, NULL, "als", NULL, "qls", NULL, "lls", NULL, 1470 "stx0", "sar0", "stx1", "sar1", "stx2", "sar2", "stx3", "sar3", 1471 "stx4", "sar4", "stx5", "sar5", "stx6", "sar6", "stx7", "sar7", 1472 "stc2", NULL, "stca", NULL, "stcq", NULL, "sreg", NULL, 1473 "sti", "sra", "sta", NULL, "stq", NULL, "staq", NULL, 1474 "lprp0", "lar0", "lprp1", "lar1", "lprp2", "lar2", "lprp3", "lar3", 1475 "lprp4", "lar4", "lprp5", "lar5", "lprp6", "lar6", "lprp7", "lar7", 1476 NULL, NULL, "arl", NULL, "qrl", NULL, "lrl", NULL, 1477 "gtb", "lra", "alr", NULL, "qlr", NULL, "llr", NULL 1478 }; 1479 #endif 1480 1481 #ifdef PANEL 1482 word8 insGrp [02000] = 1483 { 1484 // nonEIS 1485 GRP_UNKN, GRP_MISC, GRP_MISC, GRP_UNKN, GRP_MISC, GRP_PSC, GRP_UNKN, GRP_MISC, // 000-007 1486 GRP_UNKN, GRP_MISC, GRP_MISC, GRP_MISC, GRP_UNKN, GRP_PCS, GRP_UNKN, GRP_UNKN, // 010-017 1487 GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, // 020-027 1488 GRP_UNKN, GRP_UNKN, GRP_FXDML, GRP_FXA, GRP_FXDML, GRP_FXA, GRP_FXA, GRP_FXA, // 030-037 1489 GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, // 040-047 1490 GRP_PRAA, GRP_PRAA, GRP_PRAA, GRP_PRAA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_PSC, // 050-057 1491 GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, GRP_FXA, // 060-067 1492 GRP_UNKN, GRP_FXA, GRP_FXA, GRP_FXDML, GRP_UNKN, GRP_FXA, GRP_FXA, GRP_FXA, // 070-077 1493 GRP_FXC, GRP_FXC, GRP_FXC, GRP_FXC, GRP_FXC, GRP_FXC, GRP_FXC, GRP_FXC, // 100-107 1494 GRP_UNKN, GRP_FXC, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_FXC, GRP_FXC, GRP_FXC, // 110-117 1495 GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, // 120-127 1496 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_FXS, GRP_FXS, GRP_FXS, // 130-137 1497 GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, // 140-147 1498 GRP_PRAA, GRP_PRAA, GRP_PRAA, GRP_PRAA, GRP_PRS, GRP_FXS, GRP_FXS, GRP_UNKN, // 150-157 1499 GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, GRP_FXS, // 160-167 1500 GRP_UNKN, GRP_FXS, GRP_FXS, GRP_PRDML, GRP_UNKN, GRP_FXS, GRP_FXS, GRP_FXS, // 170-177 1501 GRP_BCN, GRP_BCN, GRP_BCN, GRP_BCN, GRP_BCN, GRP_BCN, GRP_BCN, GRP_BCN, // 200-207 1502 GRP_UNKN, GRP_FXC, GRP_PM, GRP_PRM, GRP_FXI, GRP_BCN, GRP_BCN, GRP_BCN, // 210-217 1503 GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, // 220-227 1504 GRP_MISC, GRP_PCS, GRP_PRL, GRP_PCS, GRP_FXI, GRP_FXDML, GRP_FXDML, GRP_FXDML, // 230-237 1505 GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, // 240-247 1506 GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_BO, GRP_BO, GRP_PRL, // 250-257 1507 GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, GRP_BO, // 260-267 1508 GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_UNKN, GRP_BO, GRP_BO, GRP_BO, // 270-277 1509 GRP_BCA, GRP_BCA, GRP_BCA, GRP_BCA, GRP_BCA, GRP_BCA, GRP_BCA, GRP_BCA, // 300-307 1510 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_UNKN, GRP_BCA, GRP_BCA, GRP_BCA, // 310-317 1511 GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, // 320-327 1512 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_UNKN, GRP_FXDML, GRP_FXDML, GRP_FXDML, // 330-337 1513 GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, // 340-347 1514 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_FXDMS, GRP_BA, GRP_BA, GRP_FXDMS, // 350-357 1515 GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, GRP_BA, // 360-367 1516 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_UNKN, GRP_BA, GRP_BA, GRP_BA, // 370-377 1517 GRP_UNKN, GRP_FXM, GRP_FXM, GRP_UNKN, GRP_UNKN, GRP_FXC, GRP_UNKN, GRP_UNKN, // 400-407 1518 GRP_UNKN, GRP_FLI, GRP_UNKN, GRP_PCS, GRP_UNKN, GRP_FLI, GRP_UNKN, GRP_UNKN, // 410-417 1519 GRP_UNKN, GRP_FLM, GRP_UNKN, GRP_FLM, GRP_UNKN, GRP_FLC, GRP_UNKN, GRP_FLC, // 420-427 1520 GRP_FLI, GRP_FLDML, GRP_UNKN, GRP_FLDML, GRP_UNKN, GRP_FLA, GRP_UNKN, GRP_FLA, // 430-437 1521 GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, // 440-447 1522 GRP_FXDMS, GRP_PSC, GRP_PRS, GRP_UNKN, GRP_FXDMS, GRP_FLDMS, GRP_UNKN, GRP_FLDMS, // 450-457 1523 GRP_UNKN, GRP_FLM, GRP_UNKN, GRP_FLM, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 460-467 1524 GRP_FLDMS, GRP_FLR, GRP_FLDMS, GRP_FLR, GRP_UNKN, GRP_FLA, GRP_UNKN, GRP_FLA, // 470-477 1525 GRP_MISC, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_MISC, GRP_UNKN, GRP_FXD, // 500-507 1526 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_FLN, GRP_UNKN, GRP_FLC, GRP_UNKN, GRP_FLC, // 510-517 1527 GRP_MISC, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_FLD, GRP_UNKN, GRP_FLD, // 520-527 1528 GRP_UNKN, GRP_FXN, GRP_PCAM, GRP_FXN, GRP_UNKN, GRP_FLS, GRP_UNKN, GRP_FLS, // 530-537 1529 GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, // 540-547 1530 GRP_MISC, GRP_FXDMS, GRP_FXDMS, GRP_PSC, GRP_FXDMS, GRP_UNKN, GRP_FLI, GRP_PRS, // 550-557 1531 GRP_MISC, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_FLD, GRP_UNKN, GRP_FLD, // 560-567 1532 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_FLNOR, GRP_UNKN, GRP_FLS, GRP_UNKN, GRP_FLS, // 570-577 1533 GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, // 600-607 1534 GRP_TRA, GRP_UNKN, GRP_UNKN, GRP_PRL, GRP_TRA, GRP_TRA, GRP_PM, GRP_TRA, // 610-617 1535 GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, // 620-627 1536 GRP_TRA, GRP_UNKN, GRP_UNKN, GRP_MISC, GRP_UNKN, GRP_FXDML, GRP_FXDML, GRP_PRL, // 630-637 1537 GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, // 640-647 1538 GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_PRDMS, GRP_FXDMS, GRP_BE, GRP_BE, GRP_PRS, // 650-657 1539 GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, GRP_BE, // 660-667 1540 GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_PRL, GRP_BE, GRP_BE, GRP_BE, // 670-677 1541 GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, GRP_TRA, // 700-707 1542 GRP_TRA, GRP_UNKN, GRP_UNKN, GRP_TRA, GRP_UNKN, GRP_TRA, GRP_MISC, GRP_MISC, // 710-717 1543 GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, GRP_FXDML, // 720-727 1544 GRP_UNKN, GRP_FXDMR, GRP_FXDMR, GRP_FXDMR, GRP_UNKN, GRP_FXDMR, GRP_FXDMR, GRP_FXDMR, // 730-737 1545 GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, // 740-747 1546 GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, GRP_FXDMS, // 750-757 1547 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, // 760-767 1548 GRP_UNKN, GRP_FXDMR, GRP_FXDMR, GRP_FXDMR, GRP_MISC, GRP_FXDMR, GRP_FXDMR, GRP_FXDMR, // 770-777 1549 // EIS 1550 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 000-007 1551 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 010-017 1552 GRP_EANM, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_ENM, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 020-027 1553 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 030-037 1554 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 040-047 1555 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 050-057 1556 GRP_EBCN, GRP_EBCN, GRP_UNKN, GRP_UNKN, GRP_EBSI, GRP_EBSI, GRP_EBCR, GRP_UNKN, // 060-067 1557 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 070-077 1558 GRP_EANM, GRP_EANM, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EANC, GRP_UNKN, // 100-107 1559 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 110-117 1560 GRP_EANC, GRP_EANC, GRP_UNKN, GRP_UNKN, GRP_EANC, GRP_EANC, GRP_UNKN, GRP_UNKN, // 120-127 1561 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 130-137 1562 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 140-147 1563 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_PRS, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 150-157 1564 GRP_EANM, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EANC, GRP_EANC, GRP_UNKN, GRP_UNKN, // 160-167 1565 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_PRL, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 170-177 1566 GRP_UNKN, GRP_UNKN, GRP_EDA, GRP_EDS, GRP_UNKN, GRP_UNKN, GRP_EDM, GRP_EDD, // 200-207 1567 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 210-217 1568 GRP_UNKN, GRP_UNKN, GRP_EDA, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EDM, GRP_EDD, // 220-227 1569 GRP_UNKN, GRP_UNKN, GRP_PRL, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 230-237 1570 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 240-247 1571 GRP_PRDMS, GRP_UNKN, GRP_PRDMS, GRP_UNKN, GRP_PRS, GRP_UNKN, GRP_UNKN, GRP_PRL, // 250-257 1572 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 260-267 1573 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 270-277 1574 GRP_ENM, GRP_EDC, GRP_UNKN, GRP_ENC, GRP_UNKN, GRP_EDC, GRP_UNKN, GRP_UNKN, // 300-307 1575 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 310-317 1576 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 320-327 1577 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 330-337 1578 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 340-347 1579 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 350-357 1580 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 360-367 1581 GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_PRDML, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 370-377 1582 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 400-407 1583 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 410-417 1584 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 420-427 1585 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 430-437 1586 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EARS, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EARS, // 440-447 1587 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 450-457 1588 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EARL, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EARL, // 460-467 1589 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 470-477 1590 GRP_EARSA, GRP_EARSA, GRP_EARSA, GRP_EARSA, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EARSA, // 500-507 1591 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 510-517 1592 GRP_EARSA, GRP_EARSA, GRP_EARSA, GRP_EARSA, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_EARSA, // 520-527 1593 GRP_UNKN, GRP_UNKN, GRP_PCAM, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 530-537 1594 GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, // 540-547 1595 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_PRS, // 550-557 1596 GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, // 560-567 1597 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 570-577 1598 GRP_TRA, GRP_TRA, GRP_UNKN, GRP_UNKN, GRP_TRA, GRP_TRA, GRP_UNKN, GRP_UNKN, // 600-607 1599 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 610-617 1600 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 620-627 1601 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 630-637 1602 GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, // 640-647 1603 GRP_PRDMS, GRP_UNKN, GRP_PRDMS, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 650-657 1604 GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, // 660-667 1605 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 670-677 1606 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 700-707 1607 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 710-717 1608 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 720-727 1609 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 730-737 1610 GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, GRP_EARS, // 740-747 1611 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_MISC, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 750-757 1612 GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, GRP_EARL, // 760-767 1613 GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_UNKN, GRP_PRL, GRP_UNKN, GRP_UNKN, GRP_UNKN, // 770-777 1614 }; 1615 #endif 1616