1211201Stakawata/* Opcode table for PDP-11. 2211201Stakawata Copyright (C) 2001-2017 Free Software Foundation, Inc. 3211201Stakawata 4211201Stakawata This file is part of the GNU opcodes library. 5211201Stakawata 6211201Stakawata This library is free software; you can redistribute it and/or modify 7211201Stakawata it under the terms of the GNU General Public License as published by 8211201Stakawata the Free Software Foundation; either version 3, or (at your option) 9211201Stakawata any later version. 10211201Stakawata 11211201Stakawata It is distributed in the hope that it will be useful, but WITHOUT 12211201Stakawata ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 13211201Stakawata or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public 14211201Stakawata License for more details. 15211201Stakawata 16211201Stakawata You should have received a copy of the GNU General Public License 17211201Stakawata along with this file; see the file COPYING. If not, write to the 18211201Stakawata Free Software Foundation, 51 Franklin Street - Fifth Floor, Boston, 19211201Stakawata MA 02110-1301, USA. */ 20211201Stakawata 21211201Stakawata#include "opcode/pdp11.h" 22211201Stakawata 23211201Stakawataconst struct pdp11_opcode pdp11_opcodes[] = 24211201Stakawata{ 25211201Stakawata /* name, pattern, mask, opcode type, insn type, alias */ 26211201Stakawata { "halt", 0x0000, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 27211201Stakawata { "wait", 0x0001, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 28211201Stakawata { "rti", 0x0002, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 29211201Stakawata { "bpt", 0x0003, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 30211201Stakawata { "iot", 0x0004, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 31211201Stakawata { "reset", 0x0005, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 32211201Stakawata { "rtt", 0x0006, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_LEIS }, 33211201Stakawata { "mfpt", 0x0007, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_MFPT }, 34211201Stakawata { "jmp", 0x0040, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 35211201Stakawata { "rts", 0x0080, 0xfff8, PDP11_OPCODE_REG, PDP11_BASIC }, 36211201Stakawata { "", 0x0088, 0xfff8, PDP11_OPCODE_ILLEGAL, PDP11_NONE }, 37211201Stakawata { "", 0x0090, 0xfff8, PDP11_OPCODE_ILLEGAL, PDP11_NONE }, 38211201Stakawata { "spl", 0x0098, 0xfff8, PDP11_OPCODE_IMM3, PDP11_SPL }, 39211201Stakawata { "nop", 0x00a0, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 40211201Stakawata { "clc", 0x00a1, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 41211201Stakawata { "clv", 0x00a2, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 42211201Stakawata { "cl_3", 0x00a3, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 43211201Stakawata { "clz", 0x00a4, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 44211201Stakawata { "cl_5", 0x00a5, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 45211201Stakawata { "cl_6", 0x00a6, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 46211201Stakawata { "cl_7", 0x00a7, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 47211201Stakawata { "cln", 0x00a8, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 48211201Stakawata { "cl_9", 0x00a9, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 49211201Stakawata { "cl_a", 0x00aa, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 50211201Stakawata { "cl_b", 0x00ab, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 51211201Stakawata { "cl_c", 0x00ac, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 52211201Stakawata { "cl_d", 0x00ad, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 53211201Stakawata { "cl_e", 0x00ae, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 54211201Stakawata { "ccc", 0x00af, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 55211201Stakawata { "se_0", 0x00b0, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 56211201Stakawata { "sec", 0x00b1, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 57211201Stakawata { "sev", 0x00b2, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 58211201Stakawata { "se_3", 0x00b3, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 59211201Stakawata { "sez", 0x00b4, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 60211201Stakawata { "se_5", 0x00b5, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 61211201Stakawata { "se_6", 0x00b6, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 62211201Stakawata { "se_7", 0x00b7, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 63211201Stakawata { "sen", 0x00b8, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 64211201Stakawata { "se_9", 0x00b9, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 65211201Stakawata { "se_a", 0x00ba, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 66211201Stakawata { "se_b", 0x00bb, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 67211201Stakawata { "se_c", 0x00bc, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 68211201Stakawata { "se_d", 0x00bd, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 69211201Stakawata { "se_e", 0x00be, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 70211201Stakawata { "scc", 0x00bf, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_BASIC }, 71211201Stakawata { "swab", 0x00c0, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 72211201Stakawata { "br", 0x0100, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 73211201Stakawata { "bne", 0x0200, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 74211201Stakawata { "beq", 0x0300, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 75211201Stakawata { "bge", 0x0400, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 76211201Stakawata { "blt", 0x0500, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 77211201Stakawata { "bgt", 0x0600, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 78211201Stakawata { "ble", 0x0700, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 79211201Stakawata { "jsr", 0x0800, 0xfe00, PDP11_OPCODE_REG_OP, PDP11_BASIC }, 80211201Stakawata { "clr", 0x0a00, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 81211201Stakawata { "com", 0x0a40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 82211201Stakawata { "inc", 0x0a80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 83211201Stakawata { "dec", 0x0ac0, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 84211201Stakawata { "neg", 0x0b00, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 85211201Stakawata { "adc", 0x0b40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 86211201Stakawata { "sbc", 0x0b80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 87211201Stakawata { "tst", 0x0bc0, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 88211201Stakawata { "ror", 0x0c00, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 89211201Stakawata { "rol", 0x0c40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 90211201Stakawata { "asr", 0x0c80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 91211201Stakawata { "asl", 0x0cc0, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 92211201Stakawata { "mark", 0x0d00, 0xffc0, PDP11_OPCODE_IMM6, PDP11_LEIS }, 93211201Stakawata { "mfpi", 0x0d40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 94211201Stakawata { "mtpi", 0x0d80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 95211201Stakawata { "sxt", 0x0dc0, 0xffc0, PDP11_OPCODE_OP, PDP11_LEIS }, 96211201Stakawata { "csm", 0x0e00, 0xffc0, PDP11_OPCODE_OP, PDP11_CSM }, 97211201Stakawata { "tstset", 0x0e40, 0xffc0, PDP11_OPCODE_OP, PDP11_MPROC }, 98211201Stakawata { "wrtlck", 0x0e80, 0xffc0, PDP11_OPCODE_OP, PDP11_MPROC }, 99211201Stakawata/*{ "", 0x0ec0, 0xffe0, PDP11_OPCODE_ILLEGAL, PDP11_NONE },*/ 100211201Stakawata { "mov", 0x1000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 101211201Stakawata { "cmp", 0x2000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 102211201Stakawata { "bit", 0x3000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 103211201Stakawata { "bic", 0x4000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 104211201Stakawata { "bis", 0x5000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 105211201Stakawata { "add", 0x6000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 106211201Stakawata { "mul", 0x7000, 0xfe00, PDP11_OPCODE_REG_OP_REV,PDP11_EIS }, 107211201Stakawata { "div", 0x7200, 0xfe00, PDP11_OPCODE_REG_OP_REV,PDP11_EIS }, 108211201Stakawata { "ash", 0x7400, 0xfe00, PDP11_OPCODE_REG_OP_REV,PDP11_EIS }, 109211201Stakawata { "ashc", 0x7600, 0xfe00, PDP11_OPCODE_REG_OP_REV,PDP11_EIS }, 110211201Stakawata { "xor", 0x7800, 0xfe00, PDP11_OPCODE_REG_OP, PDP11_LEIS }, 111211201Stakawata { "fadd", 0x7a00, 0xfff8, PDP11_OPCODE_REG, PDP11_FIS }, 112211201Stakawata { "fsub", 0x7a08, 0xfff8, PDP11_OPCODE_REG, PDP11_FIS }, 113211201Stakawata { "fmul", 0x7a10, 0xfff8, PDP11_OPCODE_REG, PDP11_FIS }, 114211201Stakawata { "fdiv", 0x7a18, 0xfff8, PDP11_OPCODE_REG, PDP11_FIS }, 115211201Stakawata/*{ "", 0x7a20, 0xffe0, PDP11_OPCODE_ILLEGAL, PDP11_NONE },*/ 116211201Stakawata/*{ "", 0x7a40, 0xffc0, PDP11_OPCODE_ILLEGAL, PDP11_NONE },*/ 117211201Stakawata/*{ "", 0x7a80, 0xff80, PDP11_OPCODE_ILLEGAL, PDP11_NONE },*/ 118211201Stakawata/*{ "", 0x7b00, 0xffe0, PDP11_OPCODE_ILLEGAL, PDP11_NONE },*/ 119211201Stakawata { "l2dr", 0x7c10, 0xfff8, PDP11_OPCODE_REG, PDP11_CIS },/*l2d*/ 120211201Stakawata { "movc", 0x7c18, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 121211201Stakawata { "movrc", 0x7c19, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 122211201Stakawata { "movtc", 0x7c1a, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 123211201Stakawata { "locc", 0x7c20, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 124211201Stakawata { "skpc", 0x7c21, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 125211201Stakawata { "scanc", 0x7c22, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 126211201Stakawata { "spanc", 0x7c23, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 127211201Stakawata { "cmpc", 0x7c24, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 128211201Stakawata { "matc", 0x7c25, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 129211201Stakawata { "addn", 0x7c28, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 130211201Stakawata { "subn", 0x7c29, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 131211201Stakawata { "cmpn", 0x7c2a, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 132211201Stakawata { "cvtnl", 0x7c2b, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 133211201Stakawata { "cvtpn", 0x7c2c, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 134211201Stakawata { "cvtnp", 0x7c2d, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 135211201Stakawata { "ashn", 0x7c2e, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 136211201Stakawata { "cvtln", 0x7c2f, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 137211201Stakawata { "l3dr", 0x7c30, 0xfff8, PDP11_OPCODE_REG, PDP11_CIS },/*l3d*/ 138211201Stakawata { "addp", 0x7c38, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 139211201Stakawata { "subp", 0x7c39, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 140211201Stakawata { "cmpp", 0x7c3a, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 141211201Stakawata { "cvtpl", 0x7c3b, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 142211201Stakawata { "mulp", 0x7c3c, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 143211201Stakawata { "divp", 0x7c3d, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 144211201Stakawata { "ashp", 0x7c3e, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 145211201Stakawata { "cvtlp", 0x7c3f, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 146211201Stakawata { "movci", 0x7c58, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 147211201Stakawata { "movrci", 0x7c59, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 148211201Stakawata { "movtci", 0x7c5a, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 149211201Stakawata { "locci", 0x7c60, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 150211201Stakawata { "skpci", 0x7c61, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 151211201Stakawata { "scanci", 0x7c62, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 152211201Stakawata { "spanci", 0x7c63, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 153211201Stakawata { "cmpci", 0x7c64, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 154211201Stakawata { "matci", 0x7c65, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 155211201Stakawata { "addni", 0x7c68, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 156211201Stakawata { "subni", 0x7c69, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 157211201Stakawata { "cmpni", 0x7c6a, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 158211201Stakawata { "cvtnli", 0x7c6b, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 159211201Stakawata { "cvtpni", 0x7c6c, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 160211201Stakawata { "cvtnpi", 0x7c6d, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 161211201Stakawata { "ashni", 0x7c6e, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 162211201Stakawata { "cvtlni", 0x7c6f, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 163211201Stakawata { "addpi", 0x7c78, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 164211201Stakawata { "subpi", 0x7c79, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 165211201Stakawata { "cmppi", 0x7c7a, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 166211201Stakawata { "cvtpli", 0x7c7b, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 167211201Stakawata { "mulpi", 0x7c7c, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 168211201Stakawata { "divpi", 0x7c7d, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 169211201Stakawata { "ashpi", 0x7c7e, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 170211201Stakawata { "cvtlpi", 0x7c7f, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_CIS }, 171211201Stakawata { "med", 0x7d80, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_UCODE }, 172211201Stakawata { "xfc", 0x7dc0, 0xffc0, PDP11_OPCODE_IMM6, PDP11_UCODE }, 173211201Stakawata { "sob", 0x7e00, 0xfe00, PDP11_OPCODE_REG_DISPL, PDP11_LEIS }, 174211201Stakawata { "bpl", 0x8000, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 175211201Stakawata { "bmi", 0x8100, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 176211201Stakawata { "bhi", 0x8200, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 177211201Stakawata { "blos", 0x8300, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 178211201Stakawata { "bvc", 0x8400, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 179211201Stakawata { "bvs", 0x8500, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 180211201Stakawata { "bcc", 0x8600, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC },/*bhis*/ 181211201Stakawata { "bcs", 0x8700, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC },/*blo*/ 182211201Stakawata { "emt", 0x8800, 0xff00, PDP11_OPCODE_IMM8, PDP11_BASIC }, 183211201Stakawata { "sys", 0x8900, 0xff00, PDP11_OPCODE_IMM8, PDP11_BASIC },/*trap*/ 184211201Stakawata { "clrb", 0x8a00, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 185211201Stakawata { "comb", 0x8a40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 186211201Stakawata { "incb", 0x8a80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 187211201Stakawata { "decb", 0x8ac0, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 188211201Stakawata { "negb", 0x8b00, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 189211201Stakawata { "adcb", 0x8b40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 190211201Stakawata { "sbcb", 0x8b80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 191211201Stakawata { "tstb", 0x8bc0, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 192211201Stakawata { "rorb", 0x8c00, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 193211201Stakawata { "rolb", 0x8c40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 194211201Stakawata { "asrb", 0x8c80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 195211201Stakawata { "aslb", 0x8cc0, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 196211201Stakawata { "mtps", 0x8d00, 0xffc0, PDP11_OPCODE_OP, PDP11_MXPS }, 197211201Stakawata { "mfpd", 0x8d40, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 198211201Stakawata { "mtpd", 0x8d80, 0xffc0, PDP11_OPCODE_OP, PDP11_BASIC }, 199211201Stakawata { "mfps", 0x8dc0, 0xffc0, PDP11_OPCODE_OP, PDP11_MXPS }, 200211201Stakawata { "movb", 0x9000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 201211201Stakawata { "cmpb", 0xa000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 202211201Stakawata { "bitb", 0xb000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 203211201Stakawata { "bicb", 0xc000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 204211201Stakawata { "bisb", 0xd000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 205211201Stakawata { "sub", 0xe000, 0xf000, PDP11_OPCODE_OP_OP, PDP11_BASIC }, 206211201Stakawata { "cfcc", 0xf000, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_FPP }, 207211201Stakawata { "setf", 0xf001, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_FPP }, 208211201Stakawata { "seti", 0xf002, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_FPP }, 209211201Stakawata { "ldub", 0xf003, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_UCODE }, 210211201Stakawata /* fpp trap 0xf004..0xf008 */ 211211201Stakawata { "setd", 0xf009, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_FPP }, 212211201Stakawata { "setl", 0xf00a, 0xffff, PDP11_OPCODE_NO_OPS, PDP11_FPP }, 213211201Stakawata /* fpp trap 0xf00b..0xf03f */ 214211201Stakawata { "ldfps", 0xf040, 0xffc0, PDP11_OPCODE_OP, PDP11_FPP }, 215211201Stakawata { "stfps", 0xf080, 0xffc0, PDP11_OPCODE_OP, PDP11_FPP }, 216211201Stakawata { "stst", 0xf0c0, 0xffc0, PDP11_OPCODE_OP, PDP11_FPP }, 217211201Stakawata { "clrf", 0xf100, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 218211201Stakawata { "tstf", 0xf140, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 219211201Stakawata { "absf", 0xf180, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 220211201Stakawata { "negf", 0xf1c0, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 221211201Stakawata { "mulf", 0xf200, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 222211201Stakawata { "modf", 0xf300, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 223211201Stakawata { "addf", 0xf400, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 224211201Stakawata { "ldf", 0xf500, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP },/*movif*/ 225211201Stakawata { "subf", 0xf600, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 226211201Stakawata { "cmpf", 0xf700, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 227211201Stakawata { "stf", 0xf800, 0xff00, PDP11_OPCODE_AC_FOP, PDP11_FPP },/*movfi*/ 228211201Stakawata { "divf", 0xf900, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 229211201Stakawata { "stexp", 0xfa00, 0xff00, PDP11_OPCODE_AC_OP, PDP11_FPP }, 230211201Stakawata { "stcfi", 0xfb00, 0xff00, PDP11_OPCODE_AC_OP, PDP11_FPP }, 231211201Stakawata { "stcff", 0xfc00, 0xff00, PDP11_OPCODE_AC_FOP, PDP11_FPP },/* ? */ 232211201Stakawata { "ldexp", 0xfd00, 0xff00, PDP11_OPCODE_OP_AC, PDP11_FPP }, 233211201Stakawata { "ldcif", 0xfe00, 0xff00, PDP11_OPCODE_OP_AC, PDP11_FPP }, 234211201Stakawata { "ldcff", 0xff00, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP },/* ? */ 235211201Stakawata/* This entry MUST be last; it is a "catch-all" entry that will match when no 236211201Stakawata * other opcode entry matches during disassembly. 237211201Stakawata */ 238211201Stakawata { "", 0x0000, 0x0000, PDP11_OPCODE_ILLEGAL, PDP11_NONE }, 239211201Stakawata}; 240211201Stakawata 241211201Stakawataconst struct pdp11_opcode pdp11_aliases[] = 242211201Stakawata{ 243211201Stakawata /* name, pattern, mask, opcode type, insn type */ 244211201Stakawata { "l2d", 0x7c10, 0xfff8, PDP11_OPCODE_REG, PDP11_CIS }, 245211201Stakawata { "l3d", 0x7c30, 0xfff8, PDP11_OPCODE_REG, PDP11_CIS }, 246211201Stakawata { "bhis", 0x8600, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 247211201Stakawata { "blo", 0x8700, 0xff00, PDP11_OPCODE_DISPL, PDP11_BASIC }, 248211201Stakawata { "trap", 0x8900, 0xff00, PDP11_OPCODE_IMM8, PDP11_BASIC }, 249211201Stakawata /* fpp xxxd alternate names to xxxf opcodes */ 250211201Stakawata { "clrd", 0xf100, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 251211201Stakawata { "tstd", 0xf140, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 252211201Stakawata { "absd", 0xf180, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 253211201Stakawata { "negd", 0xf1c0, 0xffc0, PDP11_OPCODE_FOP, PDP11_FPP }, 254211201Stakawata { "muld", 0xf200, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 255211201Stakawata { "modd", 0xf300, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 256211201Stakawata { "addd", 0xf400, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 257211201Stakawata { "ldd", 0xf500, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP },/*movif*/ 258211201Stakawata { "subd", 0xf600, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 259211201Stakawata { "cmpd", 0xf700, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 260211201Stakawata { "std", 0xf800, 0xff00, PDP11_OPCODE_AC_FOP, PDP11_FPP },/*movfi*/ 261211201Stakawata { "divd", 0xf900, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP }, 262211201Stakawata { "stcfl", 0xfb00, 0xff00, PDP11_OPCODE_AC_OP, PDP11_FPP }, 263211201Stakawata { "stcdi", 0xfb00, 0xff00, PDP11_OPCODE_AC_OP, PDP11_FPP }, 264211201Stakawata { "stcdl", 0xfb00, 0xff00, PDP11_OPCODE_AC_OP, PDP11_FPP }, 265211201Stakawata { "stcfd", 0xfc00, 0xff00, PDP11_OPCODE_AC_FOP, PDP11_FPP },/* ? */ 266211201Stakawata { "stcdf", 0xfc00, 0xff00, PDP11_OPCODE_AC_FOP, PDP11_FPP },/* ? */ 267211201Stakawata { "ldcid", 0xfe00, 0xff00, PDP11_OPCODE_OP_AC, PDP11_FPP }, 268211201Stakawata { "ldclf", 0xfe00, 0xff00, PDP11_OPCODE_OP_AC, PDP11_FPP }, 269211201Stakawata { "ldcld", 0xfe00, 0xff00, PDP11_OPCODE_OP_AC, PDP11_FPP }, 270211201Stakawata { "ldcfd", 0xff00, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP },/* ? */ 271211201Stakawata { "ldcdf", 0xff00, 0xff00, PDP11_OPCODE_FOP_AC, PDP11_FPP },/* ? */ 272211201Stakawata}; 273211201Stakawata 274211201Stakawataconst int pdp11_num_opcodes = sizeof pdp11_opcodes / sizeof pdp11_opcodes[0]; 275211201Stakawataconst int pdp11_num_aliases = sizeof pdp11_aliases / sizeof pdp11_aliases[0]; 276211201Stakawata