|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T m
Length: 17217 (0x4341) Types: TextFile Names: »machine.c«
└─⟦9ae75bfbd⟧ Bits:30007242 EUUGD3: Starter Kit └─⟦3f75c1919⟧ »EurOpenD3/utils/decomp.tar.Z« └─⟦510c4d5ee⟧ └─⟦this⟧ »decomp/machine.c«
/* * Module: machine.c * * Author: J. Reuter * * This module contains the table needed to decode VAX machine * instructions. The instructions are organized in the opcode[] * array in ascending opcode order. This table is adapted from * the Unix "adb" program. */ #include "defs.h" #include "machine.h" struct opcode opcode[] = { { MACRO, "halt", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "nop", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "rei", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "bpt", 0, 0, 0, 0, 0, 0, 0}, { OPONLY, "return @value@", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "rsb", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "ldpctx", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "svpctx", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "cvtps", 4, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0}, { MACRO, "cvtsp", 4, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0}, { MACRO, "index", 6, ACCR+TYPL, ACCR+TYPL, ACCR+TYPL, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL}, { MACRO, "crc", 4, ACCA+TYPB, ACCR+TYPL, ACCR+TYPW, ACCA+TYPB, 0, 0}, { MACRO, "prober", 3, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0, 0}, { MACRO, "probew", 3, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0, 0}, { MACRO, "insque", 2, ACCA+TYPB, ACCA+TYPB, 0, 0, 0, 0}, { MACRO, "remque", 2, ACCA+TYPB, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "bsbb", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { MACRO, "brb", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "bneq", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "beql", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "bgtr", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "bleq", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { MACRO, "jsb", 1, ACCA+TYPB, 0, 0, 0, 0, 0}, { MACRO, "jmp", 1, ACCA+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "bgeq", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "blss", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "bgtru", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { CBRANCH, "blequ", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { MACRO, "bvc", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { MACRO, "bvs", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { MACRO, "bcc", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { MACRO, "bcs", 1, ACCB+TYPB, 0, 0, 0, 0, 0}, { MACRO, "addp4", 4, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0}, { MACRO, "addp6", 6, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB}, { MACRO, "subp4", 4, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0}, { MACRO, "subp6", 6, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB}, { MACRO, "cvtpt", 5, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0}, { MACRO, "mulp", 6, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB}, { MACRO, "cvttp", 5, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0}, { MACRO, "divp", 6, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB}, { MACRO, "movc3", 3, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, 0, 0, 0}, { MACRO, "cmpc3", 3, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, 0, 0, 0}, { MACRO, "scanc", 4, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, ACCR+TYPB, 0, 0}, { MACRO, "spanc", 4, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, ACCR+TYPB, 0, 0}, { MACRO, "movc5", 5, ACCR+TYPW, ACCA+TYPB, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB, 0}, { MACRO, "cmpc5", 5, ACCR+TYPW, ACCA+TYPB, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB, 0}, { MACRO, "movtc", 6, ACCR+TYPW, ACCA+TYPB, ACCR+TYPB, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB}, { MACRO, "movtuc", 6, ACCR+TYPW, ACCA+TYPB, ACCR+TYPB, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB}, { MACRO, "bsbw", 1, ACCB+TYPW, 0, 0, 0, 0, 0}, { MACRO, "brw", 1, ACCB+TYPW, 0, 0, 0, 0, 0}, { A1OPA0, " = (long)", 2, ACCR+TYPW, ACCW+TYPL, 0, 0, 0, 0}, { A1OPA0, " = (char)", 2, ACCR+TYPW, ACCW+TYPB, 0, 0, 0, 0}, { MACRO, "movp", 3, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, 0, 0, 0}, { MACRO, "cmpp3", 3, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, 0, 0, 0}, { MACRO, "cvtpl", 3, ACCR+TYPW, ACCA+TYPB, ACCW+TYPL, 0, 0, 0}, { MACRO, "cmpp4", 4, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0}, { MACRO, "editpc", 4, ACCR+TYPW, ACCA+TYPB, ACCA+TYPB, ACCA+TYPB, 0, 0}, { MACRO, "matchc", 4, ACCR+TYPW, ACCA+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0}, { MACRO, "locc", 3, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0, 0}, { MACRO, "skpc", 3, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB, 0, 0, 0}, { A1OPA0, " = (long)", 2, ACCR+TYPUW, ACCW+TYPL, 0, 0, 0, 0}, { BBRANCH, "acbw", 4, ACCR+TYPW, ACCR+TYPW, ACCM+TYPW, ACCB+TYPW, 0, 0}, { A1OPA0, " = &", 2, ACCA+TYPW, ACCW+TYPL, 0, 0, 0, 0}, { PUSHA, "pushaw", 1, ACCA+TYPW, 0, 0, 0, 0, 0}, { A1OPA0, " += ", 2, ACCR+TYPF, ACCM+TYPF, 0, 0, 0, 0}, { A2EQ1OP0, " + ", 3, ACCR+TYPF, ACCR+TYPF, ACCW+TYPF, 0, 0, 0}, { A1OPA0, " -= ", 2, ACCR+TYPF, ACCM+TYPF, 0, 0, 0, 0}, { A2EQ1OP0, " - ", 3, ACCR+TYPF, ACCR+TYPF, ACCW+TYPF, 0, 0, 0}, { A1OPA0, " *= ", 2, ACCR+TYPF, ACCM+TYPF, 0, 0, 0, 0}, { A2EQ1OP0, " * ", 3, ACCR+TYPF, ACCR+TYPF, ACCW+TYPF, 0, 0, 0}, { A1OPA0, " /= ", 2, ACCR+TYPF, ACCM+TYPF, 0, 0, 0, 0}, { A2EQ1OP0, " / ", 3, ACCR+TYPF, ACCR+TYPF, ACCW+TYPF, 0, 0, 0}, { A1OPA0, " = (char)", 2, ACCR+TYPF, ACCW+TYPB, 0, 0, 0, 0}, { A1OPA0, " = (short)", 2, ACCR+TYPF, ACCW+TYPW, 0, 0, 0, 0}, { A1OPA0, " = (long)", 2, ACCR+TYPF, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "cvtrfl", 2, ACCR+TYPF, ACCW+TYPL, 0, 0, 0, 0}, { A1OPA0, " = (float)", 2, ACCR+TYPB, ACCW+TYPB, 0, 0, 0, 0}, { A1OPA0, " = (float)", 2, ACCR+TYPW, ACCW+TYPF, 0, 0, 0, 0}, { A1OPA0, " = (float)", 2, ACCR+TYPL, ACCW+TYPF, 0, 0, 0, 0}, { BBRANCH, "acbf", 4, ACCR+TYPF, ACCR+TYPF, ACCM+TYPF, ACCB+TYPW, 0, 0}, { A1OPA0, " = ", 2, ACCR+TYPF, ACCW+TYPF, 0, 0, 0, 0}, { COMP, "cmpf", 2, ACCR+TYPF, ACCR+TYPF, 0, 0, 0, 0}, { A1OPA0, " = -", 2, ACCR+TYPF, ACCW+TYPF, 0, 0, 0, 0}, { TEST, "tstf", 1, ACCR+TYPF, 0, 0, 0, 0, 0}, { MACRO, "emodf", 5, ACCR+TYPF, ACCR+TYPB, ACCR+TYPF, ACCW+TYPL, ACCW+TYPF, 0}, { MACRO, "polyf", 3, ACCR+TYPF, ACCR+TYPW, ACCA+TYPB, 0, 0, 0}, { A1OPA0, " = (double)", 2, ACCR+TYPF, ACCW+TYPD, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "adawi", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "dummy", 0, 0, 0, 0, 0, 0, 0}, { A1OPA0, " += ", 2, ACCR+TYPD, ACCM+TYPD, 0, 0, 0, 0}, { A2EQ1OP0, " + ", 3, ACCR+TYPD, ACCR+TYPD, ACCW+TYPD, 0, 0, 0}, { A1OPA0, " -= ", 2, ACCR+TYPD, ACCM+TYPD, 0, 0, 0, 0}, { A2EQ1OP0, " - ", 3, ACCR+TYPD, ACCR+TYPD, ACCW+TYPD, 0, 0, 0}, { A1OPA0, " *= ", 2, ACCR+TYPD, ACCM+TYPD, 0, 0, 0, 0}, { A2EQ1OP0, " * ", 3, ACCR+TYPD, ACCR+TYPD, ACCW+TYPD, 0, 0, 0}, { A1OPA0, " /= ", 2, ACCR+TYPD, ACCM+TYPD, 0, 0, 0, 0}, { A2EQ1OP0, " / ", 3, ACCR+TYPD, ACCR+TYPD, ACCR+TYPD, 0, 0, 0}, { A1OPA0, " = (char)", 2, ACCR+TYPD, ACCW+TYPB, 0, 0, 0, 0}, { A1OPA0, " = (short)", 2, ACCR+TYPD, ACCW+TYPW, 0, 0, 0, 0}, { A1OPA0, " = (long)", 2, ACCR+TYPD, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "cvtrdl", 2, ACCR+TYPD, ACCW+TYPL, 0, 0, 0, 0}, { A1OPA0, " = (double)", 2, ACCR+TYPB, ACCW+TYPD, 0, 0, 0, 0}, { A1OPA0, " = (double)", 2, ACCR+TYPW, ACCW+TYPD, 0, 0, 0, 0}, { A1OPA0, " = (double)", 2, ACCR+TYPL, ACCW+TYPD, 0, 0, 0, 0}, { BBRANCH, "acbd", 4, ACCR+TYPD, ACCR+TYPD, ACCM+TYPD, ACCB+TYPW, 0, 0}, { A1OPA0, " = ", 2, ACCR+TYPD, ACCW+TYPD, 0, 0, 0, 0}, { COMP, "cmpd", 2, ACCR+TYPD, ACCR+TYPD, 0, 0, 0, 0}, { A1OPA0, " = -", 2, ACCR+TYPD, ACCW+TYPD, 0, 0, 0, 0}, { TEST, "tstd", 1, ACCR+TYPD, 0, 0, 0, 0, 0}, { MACRO, "emodd", 5, ACCR+TYPD, ACCR+TYPB, ACCR+TYPD, ACCW+TYPL, ACCW+TYPD, 0}, { MACRO, "polyd", 3, ACCR+TYPD, ACCR+TYPW, ACCA+TYPB, 0, 0, 0}, { A1OPA0, " = (float)", 2, ACCR+TYPD, ACCW+TYPF, 0, 0, 0, 0}, { MACRO, "dummy0x77", 0, 0, 0, 0, 0, 0, 0}, { A2EQ1OP0, " << ", 3, ACCR+TYPB, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { MACRO, "ashq", 3, ACCR+TYPB, ACCR+TYPQ, ACCW+TYPQ, 0, 0, 0}, { MACRO, "emul", 4, ACCR+TYPL, ACCR+TYPL, ACCR+TYPL, ACCW+TYPQ, 0, 0}, { MACRO, "ediv", 4, ACCR+TYPL, ACCR+TYPQ, ACCW+TYPL, ACCW+TYPL, 0, 0}, { MACRO, "clrq", 1, ACCW+TYPD, 0, 0, 0, 0, 0}, { MACRO, "movq", 2, ACCR+TYPQ, ACCW+TYPQ, 0, 0, 0, 0}, { MACRO, "movaq", 2, ACCA+TYPQ, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "pushaq", 1, ACCA+TYPQ, 0, 0, 0, 0, 0}, { A1OPA0, " += ", 2, ACCR+TYPB, ACCM+TYPB, 0, 0, 0, 0}, { A2EQ1OP0, " + ", 3, ACCR+TYPB, ACCR+TYPB, ACCW+TYPB, 0, 0, 0}, { A1OPA0, " -= ", 2, ACCR+TYPB, ACCM+TYPB, 0, 0, 0, 0}, { A2EQ1OP0, " - ", 3, ACCR+TYPB, ACCR+TYPB, ACCW+TYPB, 0, 0, 0}, { A1OPA0, " *= ", 2, ACCR+TYPB, ACCM+TYPB, 0, 0, 0, 0}, { A2EQ1OP0, " * ", 3, ACCR+TYPB, ACCR+TYPB, ACCW+TYPB, 0, 0, 0}, { A1OPA0, " /= ", 2, ACCR+TYPB, ACCM+TYPB, 0, 0, 0, 0}, { A2EQ1OP0, " / ", 3, ACCR+TYPB, ACCR+TYPB, ACCW+TYPB, 0, 0, 0}, { A1OPA0, " |= ", 2, ACCR+TYPB, ACCM+TYPB, 0, 0, 0, 0}, { A2EQ1OP0, " | ", 3, ACCR+TYPB, ACCR+TYPB, ACCW+TYPB, 0, 0, 0}, { A1OPA0, " &= ~", 2, ACCR+TYPB, ACCM+TYPB, 0, 0, 0, 0}, { A2EQ1OP0, " & ~", 3, ACCR+TYPB, ACCR+TYPB, ACCW+TYPB, 0, 0, 0}, { A1OPA0, " ^= ", 2, ACCR+TYPB, ACCM+TYPB, 0, 0, 0, 0}, { A2EQ1OP0, " ^ ", 3, ACCR+TYPB, ACCR+TYPB, ACCW+TYPB, 0, 0, 0}, { A1OPA0, " = -", 2, ACCR+TYPB, ACCW+TYPB, 0, 0, 0, 0}, { MACRO, "caseb", 3, ACCR+TYPB, ACCR+TYPB, ACCR+TYPB, 0, 0, 0}, { A1OPA0, " = ", 2, ACCR+TYPB, ACCW+TYPB, 0, 0, 0, 0}, { COMP, "cmpb", 2, ACCR+TYPB, ACCR+TYPB, 0, 0, 0, 0}, { A1OPA0, " = ~", 2, ACCR+TYPB, ACCW+TYPB, 0, 0, 0, 0}, { MACRO, "bitb", 2, ACCR+TYPB, ACCR+TYPB, 0, 0, 0, 0}, { A0OP, " = 0", 1, ACCW+TYPB, 0, 0, 0, 0, 0}, { TEST, "tstb", 1, ACCR+TYPB, 0, 0, 0, 0, 0}, { A0OP, "++", 1, ACCM+TYPB, 0, 0, 0, 0, 0}, { A0OP, "--", 1, ACCM+TYPB, 0, 0, 0, 0, 0}, { A1OPA0, " = (long)", 2, ACCR+TYPB, ACCW+TYPL, 0, 0, 0, 0}, { A1OPA0, " = (short)", 2, ACCR+TYPB, ACCW+TYPW, 0, 0, 0, 0}, { A1OPA0, " = (long)", 2, ACCR+TYPUB, ACCW+TYPL, 0, 0, 0, 0}, { A1OPA0, " = (short)", 2, ACCR+TYPUB, ACCW+TYPW, 0, 0, 0, 0}, { MACRO, "rotl", 3, ACCR+TYPB, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { BBRANCH, "acbb", 4, ACCR+TYPB, ACCR+TYPB, ACCM+TYPB, ACCB+TYPW, 0, 0}, { A1OPA0, " = &", 2, ACCA+TYPB, ACCW+TYPL, 0, 0, 0, 0}, { PUSHA, "pushab", 1, ACCA+TYPB, 0, 0, 0, 0, 0}, { A1OPA0, " += ", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { A2EQ1OP0, " + ", 3, ACCR+TYPW, ACCR+TYPW, ACCW+TYPW, 0, 0, 0}, { A1OPA0, " -= ", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { A2EQ1OP0, " - ", 3, ACCR+TYPW, ACCR+TYPW, ACCW+TYPW, 0, 0, 0}, { A1OPA0, " *= ", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { A2EQ1OP0, " * ", 3, ACCR+TYPW, ACCR+TYPW, ACCW+TYPW, 0, 0, 0}, { A1OPA0, " /= ", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { A2EQ1OP0, " / ", 3, ACCR+TYPW, ACCR+TYPW, ACCW+TYPW, 0, 0, 0}, { A1OPA0, " |= ", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { A2EQ1OP0, " | ", 3, ACCR+TYPW, ACCR+TYPW, ACCW+TYPW, 0, 0, 0}, { A1OPA0, " &= ~", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { A2EQ1OP0, " & ~", 3, ACCR+TYPW, ACCR+TYPW, ACCW+TYPW, 0, 0, 0}, { A1OPA0, " ^= ", 2, ACCR+TYPW, ACCM+TYPW, 0, 0, 0, 0}, { A2EQ1OP0, " ^ ", 3, ACCR+TYPW, ACCR+TYPW, ACCW+TYPW, 0, 0, 0}, { A1OPA0, " = -", 2, ACCR+TYPW, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "casew", 3, ACCR+TYPW, ACCR+TYPW, ACCR+TYPW, 0, 0, 0}, { A1OPA0, " = ", 2, ACCR+TYPW, ACCW+TYPW, 0, 0, 0, 0}, { COMP, "cmpw", 2, ACCR+TYPW, ACCR+TYPW, 0, 0, 0, 0}, { A1OPA0, " = ~", 2, ACCR+TYPW, ACCW+TYPW, 0, 0, 0, 0}, { MACRO, "bitw", 2, ACCR+TYPW, ACCR+TYPW, 0, 0, 0, 0}, { A0OP, " = 0", 1, ACCW+TYPW, 0, 0, 0, 0, 0}, { TEST, "tstw", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { A0OP, "++", 1, ACCM+TYPW, 0, 0, 0, 0, 0}, { A0OP, "--", 1, ACCM+TYPW, 0, 0, 0, 0, 0}, { MACRO, "bispsw", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { MACRO, "bicpsw", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { MACRO, "popr", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { MACRO, "pushr", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { MACRO, "chmk", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { MACRO, "chme", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { MACRO, "chms", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { MACRO, "chmu", 1, ACCR+TYPW, 0, 0, 0, 0, 0}, { A1OPA0, " += ", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { A2EQ1OP0, " + ", 3, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { A1OPA0, " -= ", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { A2EQ1OP0, " - ", 3, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { A1OPA0, " *= ", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { A2EQ1OP0, " * ", 3, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { A1OPA0, " /= ", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { A2EQ1OP0, " / ", 3, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { A1OPA0, " |= ", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { A2EQ1OP0, " | ", 3, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { A1OPA0, " &= ~", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { A2EQ1OP0, " & ~", 3, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { A1OPA0, " ^= ", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { A2EQ1OP0, " ^ ", 3, ACCR+TYPL, ACCR+TYPL, ACCW+TYPL, 0, 0, 0}, { A1OPA0, " = -", 2, ACCR+TYPL, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "casel", 3, ACCR+TYPL, ACCR+TYPL, ACCR+TYPL, 0, 0, 0}, { A1OPA0, " = ", 2, ACCR+TYPL, ACCW+TYPL, 0, 0, 0, 0}, { COMP, "cmpl", 2, ACCR+TYPL, ACCR+TYPL, 0, 0, 0, 0}, { A1OPA0, " = ~", 2, ACCR+TYPL, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "bitl", 2, ACCR+TYPL, ACCR+TYPL, 0, 0, 0, 0}, { A0OP, " = 0", 1, ACCW+TYPL, 0, 0, 0, 0, 0}, { TEST, "tstl", 1, ACCR+TYPL, 0, 0, 0, 0, 0}, { A0OP, "++", 1, ACCM+TYPL, 0, 0, 0, 0, 0}, { A0OP, "--", 1, ACCM+TYPL, 0, 0, 0, 0, 0}, { MACRO, "adwc", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { MACRO, "sbwc", 2, ACCR+TYPL, ACCM+TYPL, 0, 0, 0, 0}, { MACRO, "mtpr", 2, ACCR+TYPL, ACCR+TYPL, 0, 0, 0, 0}, { MACRO, "mfpr", 2, ACCR+TYPL, ACCW+TYPL, 0, 0, 0, 0}, { MACRO, "movpsl", 1, ACCW+TYPL, 0, 0, 0, 0, 0}, { PUSH, "pushl", 1, ACCR+TYPL, 0, 0, 0, 0, 0}, { A1OPA0, " = &", 2, ACCA+TYPL, ACCW+TYPL, 0, 0, 0, 0}, { PUSHA, "pushal", 1, ACCA+TYPL, 0, 0, 0, 0, 0}, { BBRANCH, "bbs", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "bbc", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "bbss", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "bbcs", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "bbsc", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "bbcc", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "bbssi", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "bbcci", 3, ACCR+TYPL, ACCR+TYPB, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "blbs", 2, ACCR+TYPL, ACCB+TYPB, 0, 0, 0, 0}, { BBRANCH, "blbc", 2, ACCR+TYPL, ACCB+TYPB, 0, 0, 0, 0}, { MACRO, "ffs", 4, ACCR+TYPL, ACCR+TYPB, ACCR+TYPB, ACCW+TYPL, 0, 0}, { MACRO, "ffc", 4, ACCR+TYPL, ACCR+TYPB, ACCR+TYPB, ACCW+TYPL, 0, 0}, { MACRO, "cmpv", 4, ACCR+TYPL, ACCR+TYPB, ACCR+TYPB, ACCR+TYPL, 0, 0}, { COMP, "cmpzv", 4, ACCR+TYPL, ACCR+TYPB, ACCR+TYPB, ACCR+TYPL, 0, 0}, { MACRO, "extv", 4, ACCR+TYPL, ACCR+TYPB, ACCR+TYPB, ACCW+TYPL, 0, 0}, { EXTZV, "extzv", 4, ACCR+TYPL, ACCR+TYPB, ACCR+TYPB, ACCW+TYPL, 0, 0}, { MACRO, "insv", 4, ACCR+TYPL, ACCR+TYPL, ACCR+TYPB, ACCW+TYPB, 0, 0}, { BBRANCH, "acbl", 4, ACCR+TYPL, ACCR+TYPL, ACCM+TYPL, ACCB+TYPW, 0, 0}, { BBRANCH, "aoblss", 3, ACCR+TYPL, ACCM+TYPL, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "aobleq", 3, ACCR+TYPL, ACCM+TYPL, ACCB+TYPB, 0, 0, 0}, { BBRANCH, "sobgeq", 2, ACCM+TYPL, ACCB+TYPB, 0, 0, 0, 0}, { BBRANCH, "sobgtr", 2, ACCM+TYPL, ACCB+TYPB, 0, 0, 0, 0}, { A1OPA0, " = (char)", 2, ACCR+TYPL, ACCW+TYPB, 0, 0, 0, 0}, { A1OPA0, " = (short)", 2, ACCR+TYPL, ACCW+TYPW, 0, 0, 0, 0}, { MACRO, "ashp", 6, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB, ACCR+TYPB, ACCR+TYPW, ACCA+TYPB}, { MACRO, "cvtlp", 3, ACCR+TYPL, ACCR+TYPW, ACCA+TYPB, 0, 0, 0}, { MACRO, "callg", 2, ACCA+TYPB, ACCA+TYPS, 0, 0, 0, 0}, { CALLS, "calls", 2, ACCR+TYPL, ACCA+TYPS, 0, 0, 0, 0}, { MACRO, "xfc", 1, ACCI+TYPB, 0, 0, 0, 0, 0}, { MACRO, "escd", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "esce", 0, 0, 0, 0, 0, 0, 0}, { MACRO, "escf", 0, 0, 0, 0, 0, 0, 0}, }; /* * Floating point immediate operands. */ char *fltimm[] = { "0.5", "0.5625", "0.625", "0.6875", "0.75", "0.8125", "0.875", "0.9375", "1.0", "1.125", "1.25", "1.375", "1.5", "1.625", "1.75", "1.875", "2.0", "2.25", "2.5", "2.75", "3.0", "3.25", "3.5", "3.75", "4.0", "4.5", "5.0", "5.5", "6.0", "6.5", "7.0", "7.5", "8.0", "9.0", "10.0", "11.0", "12.0", "13.0", "14.0", "15.0", "16.0", "18.0", "20.0", "22.0", "24.0", "26.0", "28.0", "30.0", "32.0", "36.0", "40.0", "44.0", "48.0", "52.0", "56.0", "60.0", "64.0", "72.0", "80.0", "88.0", "96.0", "104.0", "112.0", "120.0" };