[RSP] installed LWC2 mnemonics matrix to the command stepper

This commit is contained in:
unknown 2015-06-20 00:11:44 -04:00
parent 56369a4214
commit e503041f5d
1 changed files with 27 additions and 52 deletions

View File

@ -842,6 +842,12 @@ static const char* mnemonics_vector[8 << 3] = {
"VRCP" ,"VRCPL" ,"VRCPH" ,"VMOV" ,"VRSQ" ,"VRSQL" ,"VRSQH" ,"VNOP" ,
unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,
};/* 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 */
static const char* mnemonics_lwc2[8 << 2] = {
"LBV" ,"LSV" ,"LLV" ,"LDV" ,"LQV" ,"LRV" ,"LPV" ,"LUV" ,
"LHV" ,"LFV" ,unused_op,"LTV" ,unused_op,unused_op,unused_op,unused_op,
unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,
unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,unused_op,
};/* 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 */
char * RSPSpecialName ( DWORD OpCode, DWORD PC )
{
@ -1233,59 +1239,28 @@ char * RSPLc2Name ( DWORD OpCode, DWORD PC )
PC = PC; // unused
switch (command.rd)
if (strcmp(mnemonics_lwc2[command.rd], unused_op) == 0)
{
case RSP_LSC2_BV:
sprintf(CommandName,"LBV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
command.voffset, GPR_Name(command.base));
break;
case RSP_LSC2_SV:
sprintf(CommandName,"LSV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 1), GPR_Name(command.base));
break;
case RSP_LSC2_LV:
sprintf(CommandName,"LLV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 2), GPR_Name(command.base));
break;
case RSP_LSC2_DV:
sprintf(CommandName,"LDV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 3), GPR_Name(command.base));
break;
case RSP_LSC2_QV:
sprintf(CommandName,"LQV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 4), GPR_Name(command.base));
break;
case RSP_LSC2_RV:
sprintf(CommandName,"LRV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 4), GPR_Name(command.base));
break;
case RSP_LSC2_PV:
sprintf(CommandName,"LPV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 3), GPR_Name(command.base));
break;
case RSP_LSC2_UV:
sprintf(CommandName,"LUV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 3), GPR_Name(command.base));
break;
case RSP_LSC2_HV:
sprintf(CommandName,"LHV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 4), GPR_Name(command.base));
break;
case RSP_LSC2_FV:
sprintf(CommandName,"LFV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 4), GPR_Name(command.base));
break;
case RSP_LSC2_WV:
sprintf(CommandName,"LWV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 4), GPR_Name(command.base));
break;
case RSP_LSC2_TV:
sprintf(CommandName,"LTV\t$v%d [%d], 0x%04X (%s)",command.rt, command.del,
(command.voffset << 4), GPR_Name(command.base));
break;
default:
sprintf(CommandName,"RSP: Unknown\t%02X %02X %02X %02X",
command.Ascii[3],command.Ascii[2],command.Ascii[1],command.Ascii[0]);
sprintf(
CommandName,
"RSP: Unknown\t%02X %02X %02X %02X",
command.Ascii[3],
command.Ascii[2],
command.Ascii[1],
command.Ascii[0]
);
}
else
{
sprintf(
CommandName,
"%s\t$v%d[%d], 0x%04X(%s)",
mnemonics_lwc2[command.rd],
command.rt,
command.del,
command.voffset,
GPR_Name(command.base)
);
}
return CommandName;
}