mirror of
https://github.com/libretro/Play-.git
synced 2024-12-04 23:36:30 +00:00
Added missing VU operand check.
This commit is contained in:
parent
1651da80f2
commit
206d6a019e
@ -337,7 +337,7 @@ VUINSTRUCTION CMA_VU::CUpper::m_cVuReflVX0[32] =
|
||||
{ "ITOF0", NULL, ReflOpAffFtFs },
|
||||
{ "FTOI0", NULL, ReflOpAffFtFs },
|
||||
{ "MULA", NULL, ReflOpAffWrARdFtFs },
|
||||
{ "MULA", NULL, NULL },
|
||||
{ "MULA", NULL, ReflOpAffWrARdFsQ },
|
||||
//0x08
|
||||
{ NULL, NULL, NULL },
|
||||
{ NULL, NULL, NULL },
|
||||
|
@ -199,6 +199,7 @@ namespace VUShared
|
||||
void ReflOpAffQ(VUINSTRUCTION*, CMIPS*, uint32, uint32, OPERANDSET&);
|
||||
|
||||
void ReflOpAffWrARdFtFs(VUINSTRUCTION*, CMIPS*, uint32, uint32, OPERANDSET&);
|
||||
void ReflOpAffWrARdFsQ(VUINSTRUCTION*, CMIPS*, uint32, uint32, OPERANDSET&);
|
||||
void ReflOpAffWrCfRdFtFs(VUINSTRUCTION*, CMIPS*, uint32, uint32, OPERANDSET&);
|
||||
void ReflOpAffWrFdRdFtFs(VUINSTRUCTION*, CMIPS*, uint32, uint32, OPERANDSET&);
|
||||
void ReflOpAffWrQRdFt(VUINSTRUCTION*, CMIPS*, uint32, uint32, OPERANDSET&);
|
||||
|
@ -364,6 +364,15 @@ void VUShared::ReflOpAffWrARdFtFs(VUINSTRUCTION*, CMIPS*, uint32, uint32 opcode,
|
||||
operandSet.readF1 = fs;
|
||||
}
|
||||
|
||||
void VUShared::ReflOpAffWrARdFsQ(VUINSTRUCTION*, CMIPS*, uint32, uint32 opcode, OPERANDSET& operandSet)
|
||||
{
|
||||
auto fs = static_cast<uint8>((opcode >> 11) & 0x001F);
|
||||
|
||||
//TODO: Write A
|
||||
operandSet.readF0 = fs;
|
||||
operandSet.readQ = true;
|
||||
}
|
||||
|
||||
void VUShared::ReflOpAffWrCfRdFtFs(VUINSTRUCTION*, CMIPS*, uint32, uint32 opcode, OPERANDSET& operandSet)
|
||||
{
|
||||
auto ft = static_cast<uint8>((opcode >> 16) & 0x001F);
|
||||
|
Loading…
Reference in New Issue
Block a user