Skip to content

Commit

Permalink
RSP: Add RSP_Vector_Reserved
Browse files Browse the repository at this point in the history
  • Loading branch information
project64 committed Sep 7, 2023
1 parent ab67374 commit 8b71ef3
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 24 deletions.
38 changes: 19 additions & 19 deletions Source/Project64-rsp-core/cpu/RSPInterpreterCPU.cpp
Expand Up @@ -257,20 +257,20 @@ void BuildInterpreterCPU(void)
RSP_Vector[15] = RSP_Vector_VMADH;
RSP_Vector[16] = RSP_Vector_VADD;
RSP_Vector[17] = RSP_Vector_VSUB;
RSP_Vector[18] = RSP_Vector_VSUT;
RSP_Vector[18] = RSP_Vector_Reserved;
RSP_Vector[19] = RSP_Vector_VABS;
RSP_Vector[20] = RSP_Vector_VADDC;
RSP_Vector[21] = RSP_Vector_VSUBC;
RSP_Vector[22] = rsp_UnknownOpcode;
RSP_Vector[23] = rsp_UnknownOpcode;
RSP_Vector[24] = rsp_UnknownOpcode;
RSP_Vector[25] = rsp_UnknownOpcode;
RSP_Vector[26] = rsp_UnknownOpcode;
RSP_Vector[27] = rsp_UnknownOpcode;
RSP_Vector[28] = rsp_UnknownOpcode;
RSP_Vector[22] = RSP_Vector_Reserved;
RSP_Vector[23] = RSP_Vector_Reserved;
RSP_Vector[24] = RSP_Vector_Reserved;
RSP_Vector[25] = RSP_Vector_Reserved;
RSP_Vector[26] = RSP_Vector_Reserved;
RSP_Vector[27] = RSP_Vector_Reserved;
RSP_Vector[28] = RSP_Vector_Reserved;
RSP_Vector[29] = RSP_Vector_VSAW;
RSP_Vector[30] = rsp_UnknownOpcode;
RSP_Vector[31] = rsp_UnknownOpcode;
RSP_Vector[30] = RSP_Vector_Reserved;
RSP_Vector[31] = RSP_Vector_Reserved;
RSP_Vector[32] = RSP_Vector_VLT;
RSP_Vector[33] = RSP_Vector_VEQ;
RSP_Vector[34] = RSP_Vector_VNE;
Expand All @@ -285,8 +285,8 @@ void BuildInterpreterCPU(void)
RSP_Vector[43] = RSP_Vector_VNOR;
RSP_Vector[44] = RSP_Vector_VXOR;
RSP_Vector[45] = RSP_Vector_VNXOR;
RSP_Vector[46] = rsp_UnknownOpcode;
RSP_Vector[47] = rsp_UnknownOpcode;
RSP_Vector[46] = RSP_Vector_Reserved;
RSP_Vector[47] = RSP_Vector_Reserved;
RSP_Vector[48] = RSP_Vector_VRCP;
RSP_Vector[49] = RSP_Vector_VRCPL;
RSP_Vector[50] = RSP_Vector_VRCPH;
Expand All @@ -295,13 +295,13 @@ void BuildInterpreterCPU(void)
RSP_Vector[53] = RSP_Vector_VRSQL;
RSP_Vector[54] = RSP_Vector_VRSQH;
RSP_Vector[55] = RSP_Vector_VNOOP;
RSP_Vector[56] = rsp_UnknownOpcode;
RSP_Vector[57] = rsp_UnknownOpcode;
RSP_Vector[58] = rsp_UnknownOpcode;
RSP_Vector[59] = rsp_UnknownOpcode;
RSP_Vector[60] = rsp_UnknownOpcode;
RSP_Vector[61] = rsp_UnknownOpcode;
RSP_Vector[62] = rsp_UnknownOpcode;
RSP_Vector[56] = RSP_Vector_Reserved;
RSP_Vector[57] = RSP_Vector_Reserved;
RSP_Vector[58] = RSP_Vector_Reserved;
RSP_Vector[59] = RSP_Vector_Reserved;
RSP_Vector[60] = RSP_Vector_Reserved;
RSP_Vector[61] = RSP_Vector_Reserved;
RSP_Vector[62] = RSP_Vector_Reserved;
RSP_Vector[63] = rsp_UnknownOpcode;

RSP_Lc2[0] = RSP_Opcode_LBV;
Expand Down
13 changes: 9 additions & 4 deletions Source/Project64-rsp-core/cpu/RSPInterpreterOps.cpp
Expand Up @@ -1276,10 +1276,6 @@ void RSP_Vector_VSUB(void)
RSP_Vect[RSPOpC.vd] = Result;
}

void RSP_Vector_VSUT(void)
{
}

void RSP_Vector_VABS(void)
{
RSPVector Result;
Expand Down Expand Up @@ -1342,6 +1338,15 @@ void RSP_Vector_VSUBC(void)
RSP_Vect[RSPOpC.vd] = Result;
}

void RSP_Vector_Reserved(void)
{
for (uint8_t el = 0; el < 8; el++)
{
RSP_ACCUM[el].HW[1] = RSP_Vect[RSPOpC.vs].s16(el) + RSP_Vect[RSPOpC.vt].se(el, RSPOpC.e);
}
RSP_Vect[RSPOpC.vd] = RSPVector();
}

void RSP_Vector_VSAW(void)
{
RSPVector Result;
Expand Down
2 changes: 1 addition & 1 deletion Source/Project64-rsp-core/cpu/RSPInterpreterOps.h
Expand Up @@ -89,10 +89,10 @@ void RSP_Vector_VMADN(void);
void RSP_Vector_VMADH(void);
void RSP_Vector_VADD(void);
void RSP_Vector_VSUB(void);
void RSP_Vector_VSUT(void);
void RSP_Vector_VABS(void);
void RSP_Vector_VADDC(void);
void RSP_Vector_VSUBC(void);
void RSP_Vector_Reserved(void);
void RSP_Vector_VSAW(void);
void RSP_Vector_VLT(void);
void RSP_Vector_VEQ(void);
Expand Down

0 comments on commit 8b71ef3

Please sign in to comment.