diff --git a/tables/tables/instr_id/cpu/cpu_cop0.inc b/tables/tables/instr_id/cpu/cpu_cop0.inc index 78415b1e..9f14569c 100644 --- a/tables/tables/instr_id/cpu/cpu_cop0.inc +++ b/tables/tables/instr_id/cpu/cpu_cop0.inc @@ -1,6 +1,19 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31--------26-25------21 ----------------------------------------0 + | = COP0 | fmt | | + ------6----------5----------------------------------------------- + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo + 00 | MFC0 | DMFC0 | CFC0 | --- | MTC0 | DMTC0 | CTC0 | --- | + 01 | *1 | --- | --- | --- | --- | --- | --- | --- | + 10 | *2 | --- | --- | --- | --- | --- | --- | --- | + 11 | --- | --- | --- | --- | --- | --- | --- | --- | + hi |-------|-------|-------|-------|-------|-------|-------|-------| + *1=BC See BC0 list *2 = TLB instr, see TLB list +*/ + // OP rt, cop0d RABBITIZER_DEF_INSTR_ID( cpu, 0x00, mfc0, diff --git a/tables/tables/instr_id/cpu/cpu_cop0_bc0.inc b/tables/tables/instr_id/cpu/cpu_cop0_bc0.inc index 4cd4142f..0dac3a29 100644 --- a/tables/tables/instr_id/cpu/cpu_cop0_bc0.inc +++ b/tables/tables/instr_id/cpu/cpu_cop0_bc0.inc @@ -1,6 +1,18 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31--------26-25------21-20------16------------------------------0 + | = COP0 | BC0 | fmt | | + ------6----------5----------5------------------------------------ + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo + 00 | BC0F | BC0T | BC0FL | BC0TL | --- | --- | --- | --- | + 01 | --- | --- | --- | --- | --- | --- | --- | --- | + 10 | --- | --- | --- | --- | --- | --- | --- | --- | + 11 | --- | --- | --- | --- | --- | --- | --- | --- | + hi |-------|-------|-------|-------|-------|-------|-------|-------| +*/ + // OP IMM RABBITIZER_DEF_INSTR_ID( cpu, 0x00, bc0f, diff --git a/tables/tables/instr_id/cpu/cpu_cop0_tlb.inc b/tables/tables/instr_id/cpu/cpu_cop0_tlb.inc index 1f2ecdc3..56726d40 100644 --- a/tables/tables/instr_id/cpu/cpu_cop0_tlb.inc +++ b/tables/tables/instr_id/cpu/cpu_cop0_tlb.inc @@ -1,6 +1,21 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31--------26-25------21--------------------------------5--------0 + | = COP0 | TLB | | fmt | + ------6----------5----------------------------------------------- + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo +000 | --- | TLBR | TLBWI | --- | --- | --- | TLBWR | --- | +001 | TLBP | --- | --- | --- | --- | --- | --- | --- | +010 | --- | --- | --- | --- | --- | --- | --- | --- | +011 | ERET | --- | --- | --- | --- | --- | --- | --- | +100 | --- | --- | --- | --- | --- | --- | --- | --- | +101 | --- | --- | --- | --- | --- | --- | --- | --- | +110 | --- | --- | --- | --- | --- | --- | --- | --- | +111 | --- | --- | --- | --- | --- | --- | --- | --- | + hi |-------|-------|-------|-------|-------|-------|-------|-------| +*/ // OP RABBITIZER_DEF_INSTR_ID( cpu, 0x01, tlbr, diff --git a/tables/tables/instr_id/cpu/cpu_cop1.inc b/tables/tables/instr_id/cpu/cpu_cop1.inc index 4f94fe8a..bb892262 100644 --- a/tables/tables/instr_id/cpu/cpu_cop1.inc +++ b/tables/tables/instr_id/cpu/cpu_cop1.inc @@ -1,6 +1,21 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31--------26-25------21 ----------------------------------------0 + | = COP1 | fmt | | + ------6----------5----------------------------------------------- + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo + 00 | MFC1 | DMFC1 | CFC1 | --- | MTC1 | DMTC1 | CTC1 | --- | + 01 | *1 | --- | --- | --- | --- | --- | --- | --- | + 10 | *2 | *3 | --- | --- | *4 | *5 | --- | --- | + 11 | --- | --- | --- | --- | --- | --- | --- | --- | + hi |-------|-------|-------|-------|-------|-------|-------|-------| + *1 = BC instructions, see BC1 list *2 = S instr, see FPU S list + *3 = D instr, see FPU D list *4 = W instr, see FPU W list + *5 = L instr, see FPU L list +*/ + // OP rt, fs RABBITIZER_DEF_INSTR_ID( cpu, 0x00, mfc1, diff --git a/tables/tables/instr_id/cpu/cpu_cop1_bc1.inc b/tables/tables/instr_id/cpu/cpu_cop1_bc1.inc index 6db93376..c3b427aa 100644 --- a/tables/tables/instr_id/cpu/cpu_cop1_bc1.inc +++ b/tables/tables/instr_id/cpu/cpu_cop1_bc1.inc @@ -1,6 +1,18 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31--------26-25------21-20------16------------------------------0 + | = COP1 | BC1 | fmt | | + ------6----------5----------5------------------------------------ + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo + 00 | BC1F | BC1T | BC1FL | BC1TL | --- | --- | --- | --- | + 01 | --- | --- | --- | --- | --- | --- | --- | --- | + 10 | --- | --- | --- | --- | --- | --- | --- | --- | + 11 | --- | --- | --- | --- | --- | --- | --- | --- | + hi |-------|-------|-------|-------|-------|-------|-------|-------| +*/ + // OP IMM RABBITIZER_DEF_INSTR_ID( cpu, 0x00, bc1f, diff --git a/tables/tables/instr_id/cpu/cpu_cop1_fpu_s.inc b/tables/tables/instr_id/cpu/cpu_cop1_fpu_s.inc index 4eb8372e..ace1fba3 100644 --- a/tables/tables/instr_id/cpu/cpu_cop1_fpu_s.inc +++ b/tables/tables/instr_id/cpu/cpu_cop1_fpu_s.inc @@ -1,6 +1,22 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31--------26-25------21 -------------------------------5--------0 + | = COP1 | = S | | function| + ------6----------5-----------------------------------------6----- + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo +000 | ADD.S | SUB.S | MUL.S | DIV.S | SQRT.S| ABS.S | MOV.S | NEG.S | +001 |ROUND.L.S|TRUNC.L.S| CEIL.L.S|FLOOR.L.S|ROUND.W.S|TRUNC.W.S| CEIL.W.S|FLOOR.W.S| +010 | --- | --- | --- | --- | --- | --- | --- | --- | +011 | --- | --- | --- | --- | --- | --- | --- | --- | +100 | --- |CVT.D.S| --- | --- |CVT.W.S|CVT.L.S| --- | --- | +101 | --- | --- | --- | --- | --- | --- | --- | --- | +110 | C.F.S | C.UN.S| C.EQ.S|C.UEQ.S|C.OLT.S|C.ULT.S|C.OLE.S|C.ULE.S| +111 | C.SF.S|C.NGLE.S|C.SEQ.S|C.NGL.S|C.LT.S|C.NGE.S|C.LE.S|C.NGT.S| + hi |-------|-------|-------|-------|-------|-------|-------|-------| +*/ + // OP fd, fs, ft RABBITIZER_DEF_INSTR_ID_ALTNAME( cpu, 0x00, add_s, add.s, diff --git a/tables/tables/instr_id/cpu/cpu_cop2.inc b/tables/tables/instr_id/cpu/cpu_cop2.inc index 02a27eca..17d9461f 100644 --- a/tables/tables/instr_id/cpu/cpu_cop2.inc +++ b/tables/tables/instr_id/cpu/cpu_cop2.inc @@ -1,6 +1,18 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31--------26-25------21 ----------------------------------------0 + | = COP0 | fmt | | + ------6----------5----------------------------------------------- + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo + 00 | MFC2 | --- | CFC0 | --- | MTC2 | --- | CTC2 | --- | + 01 | --- | --- | --- | --- | --- | --- | --- | --- | + 10 | --- | --- | --- | --- | --- | --- | --- | --- | + 11 | --- | --- | --- | --- | --- | --- | --- | --- | + hi |-------|-------|-------|-------|-------|-------|-------|-------| +*/ + // OP rt, cop2cd RABBITIZER_DEF_INSTR_ID( cpu, 0x00, mfc2, diff --git a/tables/tables/instr_id/cpu/cpu_normal.inc b/tables/tables/instr_id/cpu/cpu_normal.inc index 0879ab75..6d25632c 100644 --- a/tables/tables/instr_id/cpu/cpu_normal.inc +++ b/tables/tables/instr_id/cpu/cpu_normal.inc @@ -1,6 +1,25 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31---------26---------------------------------------------------0 + | opcode | | + ------6---------------------------------------------------------- + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo +000 | *1 | *2 | J | JAL | BEQ | BNE | BLEZ | BGTZ | +001 | ADDI | ADDIU | SLTI | SLTIU | ANDI | ORI | XORI | LUI | +010 | *3 | *4 | *5 | --- | BEQL | BNEL | BLEZL | BGTZL | +011 | DADDI |DADDIU | LDL | LDR | --- | --- | --- | --- | +100 | LB | LH | LWL | LW | LBU | LHU | LWR | LWU | +101 | SB | SH | SWL | SW | SDL | SDR | SWR | CACHE | +110 | LL | LWC1 | LWC2 | PREF | LLD | LDC1 | LDC2 | LD | +111 | SC | SWC1 | SWC2 | --- | SCD | SDC1 | SDC2 | SD | + hi |-------|-------|-------|-------|-------|-------|-------|-------| + *1 = SPECIAL, see SPECIAL list *2 = REGIMM, see REGIMM list + *3 = COP0 *4 = COP1 + *5 = COP2 +*/ + // OP LABEL RABBITIZER_DEF_INSTR_ID( cpu, 0x02, j, diff --git a/tables/tables/instr_id/cpu/cpu_regimm.inc b/tables/tables/instr_id/cpu/cpu_regimm.inc index 22bd58d2..78245b76 100644 --- a/tables/tables/instr_id/cpu/cpu_regimm.inc +++ b/tables/tables/instr_id/cpu/cpu_regimm.inc @@ -1,6 +1,18 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31---------26----------20-------16------------------------------0 + | = REGIMM | | rt | | + ------6---------------------5------------------------------------ + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo + 00 | BLTZ | BGEZ | BLTZL | BGEZL | --- | --- | --- | --- | + 01 | TGEI | TGEIU | TLTI | TLTIU | TEQI | --- | TNEI | --- | + 10 | BLTZAL| BGEZAL|BLTZALL|BGEZALL| --- | --- | --- | --- | + 11 | --- | --- | --- | --- | --- | --- | --- | --- | + hi |-------|-------|-------|-------|-------|-------|-------|-------| +*/ + // OP rs, IMM RABBITIZER_DEF_INSTR_ID( cpu, 0x00, bltz, diff --git a/tables/tables/instr_id/cpu/cpu_special.inc b/tables/tables/instr_id/cpu/cpu_special.inc index e414f334..479f1452 100644 --- a/tables/tables/instr_id/cpu/cpu_special.inc +++ b/tables/tables/instr_id/cpu/cpu_special.inc @@ -1,6 +1,22 @@ /* SPDX-FileCopyrightText: © 2022-2024 Decompollaborate */ /* SPDX-License-Identifier: MIT */ +/* + 31---------26------------------------------------------5--------0 + | = SPECIAL | | function| + ------6----------------------------------------------------6----- + |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo +000 | SLL | --- | SRL | SRA | SLLV | --- | SRLV | SRAV | +001 | JR | JALR | MOVZ | MOVN |SYSCALL| BREAK | --- | SYNC | +010 | MFHI | MTHI | MFLO | MTLO | DSLLV | --- | DSRLV | DSRAV | +011 | MULT | MULTU | DIV | DIVU | DMULT | DMULTU| DDIV | DDIVU | +100 | ADD | ADDU | SUB | SUBU | AND | OR | XOR | NOR | +101 | --- | --- | SLT | SLTU | DADD | DADDU | DSUB | DSUBU | +110 | TGE | TGEU | TLT | TLTU | TEQ | --- | TNE | --- | +111 | DSLL | --- | DSRL | DSRA | DSLL32| --- | DSRL32| DSRA32| + hi |-------|-------|-------|-------|-------|-------|-------|-------| +*/ + // OP rd, rt, sa RABBITIZER_DEF_INSTR_ID( cpu, 0x00, sll, diff --git a/tables/tables/instr_id/r5900/r5900_cop0_tlb.inc b/tables/tables/instr_id/r5900/r5900_cop0_tlb.inc index 12aef5bf..03d44082 100644 --- a/tables/tables/instr_id/r5900/r5900_cop0_tlb.inc +++ b/tables/tables/instr_id/r5900/r5900_cop0_tlb.inc @@ -6,14 +6,14 @@ | = COP0 | TLB | | fmt | ------6----------5----------------------------------------------- |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo -000 | --- | TLBR | TLBWI | --- | --- | --- | TLBWR | --- | -001 | TLBP | --- | --- | --- | --- | --- | --- | --- | -010 | --- | --- | --- | --- | --- | --- | --- | --- | -011 | ERET | --- | --- | --- | --- | --- | --- | --- | -100 | --- | --- | --- | --- | --- | --- | --- | --- | -101 | --- | --- | --- | --- | --- | --- | --- | --- | -110 | --- | --- | --- | --- | --- | --- | --- | --- | -111 | EI | DI | --- | --- | --- | --- | --- | --- | +000 | --- | TLBR | TLBWI | --- | --- | --- | TLBWR | --- | +001 | TLBP | --- | --- | --- | --- | --- | --- | --- | +010 | --- | --- | --- | --- | --- | --- | --- | --- | +011 | ERET | --- | --- | --- | --- | --- | --- | --- | +100 | --- | --- | --- | --- | --- | --- | --- | --- | +101 | --- | --- | --- | --- | --- | --- | --- | --- | +110 | --- | --- | --- | --- | --- | --- | --- | --- | +111 | EI | DI | --- | --- | --- | --- | --- | --- | hi |-------|-------|-------|-------|-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_cop1_fpu_s.inc b/tables/tables/instr_id/r5900/r5900_cop1_fpu_s.inc index fcf29884..7fac92f6 100644 --- a/tables/tables/instr_id/r5900/r5900_cop1_fpu_s.inc +++ b/tables/tables/instr_id/r5900/r5900_cop1_fpu_s.inc @@ -7,13 +7,13 @@ ------6----------5-----------------------------------------6----- |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo 000 | ADD.S | SUB.S | MUL.S | DIV.S | SQRT.S| ABS.S | MOV.S | NEG.S | -001 | --- | --- | --- | --- | --- | --- | --- | --- | -010 | --- | --- | --- | --- | --- | --- |RSQRT.S| --- | -011 | ADDA.S| SUBA.S| MULA.S| --- | MADD.S| MSUB.S|MADDA.S|MSUBA.S| -100 | --- | --- | --- | --- | CVT.W | --- | --- | --- | -101 | MAX.S | MIN.S | --- | --- | --- | --- | --- | --- | -110 | C.F | --- | C.EQ | --- | C.LT | --- | C.LE | --- | -111 | --- | --- | --- | --- | --- | --- | --- | --- | +001 | --- | --- | --- | --- | --- | --- | --- | --- | +010 | --- | --- | --- | --- | --- | --- |RSQRT.S| --- | +011 | ADDA.S| SUBA.S| MULA.S| --- | MADD.S| MSUB.S|MADDA.S|MSUBA.S| +100 | --- | --- | --- | --- | CVT.W | --- | --- | --- | +101 | MAX.S | MIN.S | --- | --- | --- | --- | --- | --- | +110 | C.F | --- | C.EQ | --- | C.LT | --- | C.LE | --- | +111 | --- | --- | --- | --- | --- | --- | --- | --- | hi |-------|-------|-------|-------|-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_cop2.inc b/tables/tables/instr_id/r5900/r5900_cop2.inc index 9ad598cc..24d35125 100644 --- a/tables/tables/instr_id/r5900/r5900_cop2.inc +++ b/tables/tables/instr_id/r5900/r5900_cop2.inc @@ -6,8 +6,8 @@ | = COP2 | fmt | | ------6----------5----------------------------------------------- |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo - 00 | --- | QMFC2 | CFC2 | --- | --- | QMTC2 | CTC2 | --- | - 01 | *1 | --- | --- | --- | --- | --- | --- | --- | + 00 | --- | QMFC2 | CFC2 | --- | --- | QMTC2 | CTC2 | --- | + 01 | *1 | --- | --- | --- | --- | --- | --- | --- | 10 | *2 | *2 | *2 | *2 | *2 | *2 | *2 | *2 | 11 | *2 | *2 | *2 | *2 | *2 | *2 | *2 | *2 | hi |-------|-------|-------|-------|-------|-------|-------|-------| diff --git a/tables/tables/instr_id/r5900/r5900_cop2_bc2.inc b/tables/tables/instr_id/r5900/r5900_cop2_bc2.inc index 0e8c18b5..36168a8b 100644 --- a/tables/tables/instr_id/r5900/r5900_cop2_bc2.inc +++ b/tables/tables/instr_id/r5900/r5900_cop2_bc2.inc @@ -6,10 +6,10 @@ | = COP0 | BC2 | fmt | | ------6----------5----------5------------------------------------ |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo - 00 | BC2F | BC2T | BC2FL | BC2TL | --- | --- | --- | --- | - 01 | --- | --- | --- | --- | --- | --- | --- | --- | - 10 | --- | --- | --- | --- | --- | --- | --- | --- | - 11 | --- | --- | --- | --- | --- | --- | --- | --- | + 00 | BC2F | BC2T | BC2FL | BC2TL | --- | --- | --- | --- | + 01 | --- | --- | --- | --- | --- | --- | --- | --- | + 10 | --- | --- | --- | --- | --- | --- | --- | --- | + 11 | --- | --- | --- | --- | --- | --- | --- | --- | hi |-------|-------|-------|-------|-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_cop2_special1.inc b/tables/tables/instr_id/r5900/r5900_cop2_special1.inc index d3362784..6f37e929 100644 --- a/tables/tables/instr_id/r5900/r5900_cop2_special1.inc +++ b/tables/tables/instr_id/r5900/r5900_cop2_special1.inc @@ -12,8 +12,8 @@ 011 |VMULx |VMULy |VMULz |VMULw |VMULq |VMAXi |VMULi |VMINIi | 100 |VADDq |VMADDq |VADDi |VMADDi |VSUBq |VMSUBq |VSUbi |VMSUBi | 101 |VADD |VMADD |VMUL |VMAX |VSUB |VMSUB |VOPMSUB|VMINI | -110 |VIADD |VISUB |VIADDI | --- |VIAND |VIOR | --- | --- | -111 |VCALLMS|VCALLMSR| --- | --- | *1 | *1 | *1 | *1 | +110 |VIADD |VISUB |VIADDI | --- |VIAND |VIOR | --- | --- | +111 |VCALLMS|VCALLMSR| --- | --- | *1 | *1 | *1 | *1 | hi |-------|-------|-------|-------|-------|-------|-------|-------| *1=see special2 table */ diff --git a/tables/tables/instr_id/r5900/r5900_cop2_special2.inc b/tables/tables/instr_id/r5900/r5900_cop2_special2.inc index 69aa01c1..c78392c9 100644 --- a/tables/tables/instr_id/r5900/r5900_cop2_special2.inc +++ b/tables/tables/instr_id/r5900/r5900_cop2_special2.inc @@ -14,17 +14,17 @@ Note: opcode is flo | ( 0010 |VITOF0 |VITOF4 |VITOF12|VITOF15|VFTOI0 |VFTOI4 |VFTOI12|VFTOI15| 0011 |VMULAx |VMULAy |VMULAz |VMULAw |VMULAq |VABS |VMULAi |VCLIPw | 0100 |VADDAq |VMADDAq|VADDAi |VMADDAi|VSUBAq |VMSUBAq|VSUBAi |VMSUBAi| -0101 |VADDA |VMADDA |VMULA | --- |VSUBA |VMSUBA |VOPMULA|VNOP | -0110 |VMOVE |VMR32 | --- | --- |VLQI |VSQI |VLQD |VSQD | +0101 |VADDA |VMADDA |VMULA | --- |VSUBA |VMSUBA |VOPMULA|VNOP | +0110 |VMOVE |VMR32 | --- | --- |VLQI |VSQI |VLQD |VSQD | 0111 |VDIV |VSQRT |VRSQRT |VWAITQ |VMTIR |VMFIR |VILWR |VISWR | -1000 |VRNEXT |VRGET |VRINIT |VRXOR | --- | --- | --- | --- | -1001 | --- | --- | --- | --- | --- | --- | --- | --- | -1010 | --- | --- | --- | --- | --- | --- | --- | --- | -1011 | --- | --- | --- | --- | --- | --- | --- | --- | -1100 | --- | --- | --- | --- | --- | --- | --- | --- | -1101 | --- | --- | --- | --- | --- | --- | --- | --- | -1110 | --- | --- | --- | --- | --- | --- | --- | --- | -1111 | --- | --- | --- | --- | --- | --- | --- | --- | +1000 |VRNEXT |VRGET |VRINIT |VRXOR | --- | --- | --- | --- | +1001 | --- | --- | --- | --- | --- | --- | --- | --- | +1010 | --- | --- | --- | --- | --- | --- | --- | --- | +1011 | --- | --- | --- | --- | --- | --- | --- | --- | +1100 | --- | --- | --- | --- | --- | --- | --- | --- | +1101 | --- | --- | --- | --- | --- | --- | --- | --- | +1110 | --- | --- | --- | --- | --- | --- | --- | --- | +1111 | --- | --- | --- | --- | --- | --- | --- | --- | hi |-------|-------|-------|-------|-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_mmi.inc b/tables/tables/instr_id/r5900/r5900_mmi.inc index b05d3f80..32668337 100644 --- a/tables/tables/instr_id/r5900/r5900_mmi.inc +++ b/tables/tables/instr_id/r5900/r5900_mmi.inc @@ -6,14 +6,14 @@ | = MMI | | function| ------6----------------------------------------------------6----- |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo -000 | MADD | MADDU | --- | --- | PLZCW | --- | --- | --- | -001 | *1 | *2 | --- | --- | --- | --- | --- | --- | -010 | MFHI1 | MTHI1 | MFLO1 | MTLO1 | --- | --- | --- | --- | -011 | MULT1 | MULTU1| DIV1 | DIVU1 | --- | --- | --- | --- | -100 | MADD1 | MADDU1| --- | --- | --- | --- | --- | --- | -101 | *3 | *4 | --- | --- | --- | --- | --- | --- | -110 | PMFHL | PMTHL | --- | --- | PSLLH | --- | PSRLH | PSRAH | -111 | --- | --- | --- | --- | PSLLW | --- | PSRLW | PSRAW | +000 | MADD | MADDU | --- | --- | PLZCW | --- | --- | --- | +001 | *1 | *2 | --- | --- | --- | --- | --- | --- | +010 | MFHI1 | MTHI1 | MFLO1 | MTLO1 | --- | --- | --- | --- | +011 | MULT1 | MULTU1| DIV1 | DIVU1 | --- | --- | --- | --- | +100 | MADD1 | MADDU1| --- | --- | --- | --- | --- | --- | +101 | *3 | *4 | --- | --- | --- | --- | --- | --- | +110 | PMFHL | PMTHL | --- | --- | PSLLH | --- | PSRLH | PSRAH | +111 | --- | --- | --- | --- | PSLLW | --- | PSRLW | PSRAW | hi |-------|-------|-------|-------|-------|-------|-------|-------| *1 = MMI0 list *2 = MMI2 list *3 = MMI1 list *4 = MMI3 list diff --git a/tables/tables/instr_id/r5900/r5900_mmi_0.inc b/tables/tables/instr_id/r5900/r5900_mmi_0.inc index 1ed1532b..95597fdf 100644 --- a/tables/tables/instr_id/r5900/r5900_mmi_0.inc +++ b/tables/tables/instr_id/r5900/r5900_mmi_0.inc @@ -8,12 +8,12 @@ |---00--|---01--|---10--|---11--| lo 000 |PADDW | PSUBW | PCGTW | PMAXW | 001 |PADDH | PSUBH | PCGTH | PMAXH | -010 |PADDB | PSUBB | PCGTB | --- | -011 | --- | --- | --- | --- | +010 |PADDB | PSUBB | PCGTB | --- | +011 | --- | --- | --- | --- | 100 |PADDSW |PSUBSW |PEXTLW | PPACW | 101 |PADDSH |PSUBSH |PEXTLH | PPACH | 110 |PADDSB |PSUBSB |PEXTLB | PPACB | -111 | --- | --- | PEXT5 | PPAC5 | +111 | --- | --- | PEXT5 | PPAC5 | hi |-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_mmi_1.inc b/tables/tables/instr_id/r5900/r5900_mmi_1.inc index c4734fbd..278212ed 100644 --- a/tables/tables/instr_id/r5900/r5900_mmi_1.inc +++ b/tables/tables/instr_id/r5900/r5900_mmi_1.inc @@ -6,14 +6,14 @@ | | |function | MMI1 | ------6----------------------------------------------------6----- |---00--|---01--|---10--|---11--| lo -000 | --- | PABSW | PCEQW | PMINW | +000 | --- | PABSW | PCEQW | PMINW | 001 |PADSBH | PABSH | PCEQH | PMINH | -010 | --- | --- | PCEQB | --- | -011 | --- | --- | --- | --- | -100 |PADDUW |PSUBUW |PEXTUW | --- | -101 |PADDUH |PSUBUH |PEXTUH | --- | +010 | --- | --- | PCEQB | --- | +011 | --- | --- | --- | --- | +100 |PADDUW |PSUBUW |PEXTUW | --- | +101 |PADDUH |PSUBUH |PEXTUH | --- | 110 |PADDUB |PSUBUB |PEXTUB | QFSRV | -111 | --- | --- | --- | --- | +111 | --- | --- | --- | --- | hi |-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_mmi_2.inc b/tables/tables/instr_id/r5900/r5900_mmi_2.inc index 4140e3d6..613441ed 100644 --- a/tables/tables/instr_id/r5900/r5900_mmi_2.inc +++ b/tables/tables/instr_id/r5900/r5900_mmi_2.inc @@ -6,13 +6,13 @@ | | |function | MMI2 | ------6----------------------------------------------------6----- |---00--|---01--|---10--|---11--| lo -000 |PMADDW | --- |PSLLVW |PSRLVW | -001 |PMSUBW | --- | --- | --- | -010 |PMFHI |PMFLO |PINTH | --- | -011 |PMULTW |PDIVW |PCPYLD | --- | +000 |PMADDW | --- |PSLLVW |PSRLVW | +001 |PMSUBW | --- | --- | --- | +010 |PMFHI |PMFLO |PINTH | --- | +011 |PMULTW |PDIVW |PCPYLD | --- | 100 |PMADDH |PHMADH | PAND | PXOR | -101 |PMSUBH |PHMSBH | --- | --- | -110 | --- | --- | PEXEH | PREVH | +101 |PMSUBH |PHMSBH | --- | --- | +110 | --- | --- | PEXEH | PREVH | 111 |PMULTH |PDIVBW | PEXEW |PROT3W | hi |-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_mmi_3.inc b/tables/tables/instr_id/r5900/r5900_mmi_3.inc index 6341687a..d124f24a 100644 --- a/tables/tables/instr_id/r5900/r5900_mmi_3.inc +++ b/tables/tables/instr_id/r5900/r5900_mmi_3.inc @@ -6,14 +6,14 @@ | | |function | MMI3 | ------6----------------------------------------------------6----- |---00--|---01--|---10--|---11--| lo -000 |PMADDUW| --- | --- |PSRAVW | -001 | --- | --- | --- | --- | -010 |PMTHI | PMTLO |PINTEH | --- | -011 |PMULTUW| PDIVUW|PCPYUD | --- | -100 | --- | --- | POR | PNOR | -101 | --- | --- | --- | --- | -110 | --- | --- | PEXCH | PCPYH | -111 | --- | --- | PEXCW | --- | +000 |PMADDUW| --- | --- |PSRAVW | +001 | --- | --- | --- | --- | +010 |PMTHI | PMTLO |PINTEH | --- | +011 |PMULTUW| PDIVUW|PCPYUD | --- | +100 | --- | --- | POR | PNOR | +101 | --- | --- | --- | --- | +110 | --- | --- | PEXCH | PCPYH | +111 | --- | --- | PEXCW | --- | hi |-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_normal.inc b/tables/tables/instr_id/r5900/r5900_normal.inc index 5651292c..ecdd2ee2 100644 --- a/tables/tables/instr_id/r5900/r5900_normal.inc +++ b/tables/tables/instr_id/r5900/r5900_normal.inc @@ -9,7 +9,7 @@ 000 | *1 | *2 | J | JAL | BEQ | BNE | BLEZ | BGTZ | 001 | ADDI | ADDIU | SLTI | SLTIU | ANDI | ORI | XORI | LUI | 010 | *3 | *4 | *5 | --- | BEQL | BNEL | BLEZL | BGTZL | -011 | DADDI |DADDIU | LDL | LDR | *6 | --- | LQ | SQ | +011 | DADDI |DADDIU | LDL | LDR | *6 | --- | LQ | SQ | 100 | LB | LH | LWL | LW | LBU | LHU | LWR | LWU | 101 | SB | SH | SWL | SW | SDL | SDR | SWR | CACHE | 110 | --- | LWC1 | --- | PREF | --- | --- | LQC2 | LD | diff --git a/tables/tables/instr_id/r5900/r5900_regimm.inc b/tables/tables/instr_id/r5900/r5900_regimm.inc index 454948c3..1d8c4ffc 100644 --- a/tables/tables/instr_id/r5900/r5900_regimm.inc +++ b/tables/tables/instr_id/r5900/r5900_regimm.inc @@ -6,10 +6,10 @@ | = REGIMM | | rt | | ------6---------------------5------------------------------------ |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo - 00 | BLTZ | BGEZ | BLTZL | BGEZL | --- | --- | --- | --- | - 01 | TGEI | TGEIU | TLTI | TLTIU | TEQI | --- | TNEI | --- | - 10 | BLTZAL| BGEZAL|BLTZALL|BGEZALL| --- | --- | --- | --- | - 11 | MTSAB | MTSAH | --- | --- | --- | --- | --- | --- | + 00 | BLTZ | BGEZ | BLTZL | BGEZL | --- | --- | --- | --- | + 01 | TGEI | TGEIU | TLTI | TLTIU | TEQI | --- | TNEI | --- | + 10 | BLTZAL| BGEZAL|BLTZALL|BGEZALL| --- | --- | --- | --- | + 11 | MTSAB | MTSAH | --- | --- | --- | --- | --- | --- | hi |-------|-------|-------|-------|-------|-------|-------|-------| */ diff --git a/tables/tables/instr_id/r5900/r5900_special.inc b/tables/tables/instr_id/r5900/r5900_special.inc index 0d17cd50..3192459a 100644 --- a/tables/tables/instr_id/r5900/r5900_special.inc +++ b/tables/tables/instr_id/r5900/r5900_special.inc @@ -6,14 +6,14 @@ | = SPECIAL | | function| ------6----------------------------------------------------6----- |--000--|--001--|--010--|--011--|--100--|--101--|--110--|--111--| lo -000 | SLL | --- | SRL | SRA | SLLV | --- | SRLV | SRAV | -001 | JR | JALR | MOVZ | MOVN |SYSCALL| BREAK | --- | SYNC | -010 | MFHI | MTHI | MFLO | MTLO | DSLLV | --- | DSRLV | DSRAV | -011 | MULT | MULTU | DIV | DIVU | ---- | --- | ---- | ----- | +000 | SLL | --- | SRL | SRA | SLLV | --- | SRLV | SRAV | +001 | JR | JALR | MOVZ | MOVN |SYSCALL| BREAK | --- | SYNC | +010 | MFHI | MTHI | MFLO | MTLO | DSLLV | --- | DSRLV | DSRAV | +011 | MULT | MULTU | DIV | DIVU | ---- | --- | ---- | ----- | 100 | ADD | ADDU | SUB | SUBU | AND | OR | XOR | NOR | 101 | MFSA | MTSA | SLT | SLTU | DADD | DADDU | DSUB | DSUBU | -110 | TGE | TGEU | TLT | TLTU | TEQ | --- | TNE | --- | -111 | DSLL | --- | DSRL | DSRA |DSLL32 | --- |DSRL32 |DSRA32 | +110 | TGE | TGEU | TLT | TLTU | TEQ | --- | TNE | --- | +111 | DSLL | --- | DSRL | DSRA |DSLL32 | --- |DSRL32 |DSRA32 | hi |-------|-------|-------|-------|-------|-------|-------|-------| */