diff --git a/rpcs3/Emu/GS/GL/GLFragmentProgram.h b/rpcs3/Emu/GS/GL/GLFragmentProgram.h index b903fd927b..0ff5af0d4f 100644 --- a/rpcs3/Emu/GS/GL/GLFragmentProgram.h +++ b/rpcs3/Emu/GS/GL/GLFragmentProgram.h @@ -79,16 +79,16 @@ struct GLFragmentDecompilerThread : public ThreadBase struct { u32 else_offset : 31; - u32 : 1; + u32 : 1; }; struct { - u32 : 2; - u32 rep1 : 8; - u32 rep2 : 8; - u32 : 1; - u32 rep3 : 8; + u32 : 2; + u32 rep1 : 8; + u32 rep2 : 8; + u32 : 1; + u32 rep3 : 8; }; } src1; diff --git a/rpcs3/Emu/GS/GL/GLVertexProgram.h b/rpcs3/Emu/GS/GL/GLVertexProgram.h index 1a0c41c922..ffa19e8238 100644 --- a/rpcs3/Emu/GS/GL/GLVertexProgram.h +++ b/rpcs3/Emu/GS/GL/GLVertexProgram.h @@ -10,26 +10,26 @@ struct GLVertexDecompilerThread : public ThreadBase struct { - u32 addr_swz : 2; - u32 mask_w : 2; - u32 mask_z : 2; - u32 mask_y : 2; - u32 mask_x : 2; - u32 cond : 3; - u32 cond_test_enable : 1; - u32 cond_update_enable_0 : 1; - u32 dst_tmp : 6; - u32 src0_abs : 1; - u32 src1_abs : 1; - u32 src2_abs : 1; - u32 addr_reg_sel_1 : 1; - u32 cond_reg_sel_1 : 1; - u32 staturate : 1; - u32 index_input : 1; - u32 : 1; - u32 cond_update_enable_1 : 1; - u32 vec_result : 1; - u32 : 1; + u32 addr_swz : 2; + u32 mask_w : 2; + u32 mask_z : 2; + u32 mask_y : 2; + u32 mask_x : 2; + u32 cond : 3; + u32 cond_test_enable : 1; + u32 cond_update_enable_0 : 1; + u32 dst_tmp : 6; + u32 src0_abs : 1; + u32 src1_abs : 1; + u32 src2_abs : 1; + u32 addr_reg_sel_1 : 1; + u32 cond_reg_sel_1 : 1; + u32 staturate : 1; + u32 index_input : 1; + u32 : 1; + u32 cond_update_enable_1 : 1; + u32 vec_result : 1; + u32 : 1; }; } d0; @@ -39,11 +39,11 @@ struct GLVertexDecompilerThread : public ThreadBase struct { - u32 src0h : 8; - u32 input_src : 4; - u32 const_src : 10; - u32 vec_opcode : 5; - u32 sca_opcode : 5; + u32 src0h : 8; + u32 input_src : 4; + u32 const_src : 10; + u32 vec_opcode : 5; + u32 sca_opcode : 5; }; } d1; @@ -53,14 +53,14 @@ struct GLVertexDecompilerThread : public ThreadBase struct { - u32 src2h : 6; - u32 src1 : 17; - u32 src0l : 9; + u32 src2h : 6; + u32 src1 : 17; + u32 src0l : 9; }; struct { - u32 iaddrh : 6; - u32 : 26; + u32 iaddrh : 6; + u32 : 26; }; } d2; @@ -70,10 +70,10 @@ struct GLVertexDecompilerThread : public ThreadBase struct { - u32 end : 1; - u32 index_const : 1; - u32 dst : 5; - u32 sca_dst_tmp : 6; + u32 end : 1; + u32 index_const : 1; + u32 dst : 5; + u32 sca_dst_tmp : 6; u32 vec_writemask_w : 1; u32 vec_writemask_z : 1; u32 vec_writemask_y : 1; @@ -82,12 +82,12 @@ struct GLVertexDecompilerThread : public ThreadBase u32 sca_writemask_z : 1; u32 sca_writemask_y : 1; u32 sca_writemask_x : 1; - u32 src2l : 11; + u32 src2l : 11; }; struct { - u32 : 29; - u32 iaddrl : 3; + u32 : 29; + u32 iaddrl : 3; }; } d3; @@ -99,31 +99,31 @@ struct GLVertexDecompilerThread : public ThreadBase struct { - u32 src0l : 9; - u32 src0h : 8; + u32 src0l : 9; + u32 src0h : 8; }; struct { - u32 src1 : 17; + u32 src1 : 17; }; struct { - u32 src2l : 11; - u32 src2h : 6; + u32 src2l : 11; + u32 src2h : 6; }; }; struct { - u32 reg_type : 2; - u32 tmp_src : 6; - u32 swz_w : 2; - u32 swz_z : 2; - u32 swz_y : 2; - u32 swz_x : 2; - u32 neg : 1; + u32 reg_type : 2; + u32 tmp_src : 6; + u32 swz_w : 2; + u32 swz_z : 2; + u32 swz_y : 2; + u32 swz_x : 2; + u32 neg : 1; }; } src[3]; diff --git a/rpcs3/Emu/GS/RSXThread.cpp b/rpcs3/Emu/GS/RSXThread.cpp index 60a464f342..c0bb2b1127 100644 --- a/rpcs3/Emu/GS/RSXThread.cpp +++ b/rpcs3/Emu/GS/RSXThread.cpp @@ -1677,12 +1677,12 @@ void RSXThread::DoCmd(const u32 fcmd, const u32 cmd, mem32_ptr_t args, const u32 { const u32 a0 = ARGS(0); m_set_clip_plane = true; - m_clip_plane_0 = a0 & 0xf; - m_clip_plane_1 = (a0 >> 4) & 0xf; - m_clip_plane_2 = (a0 >> 8) & 0xf; - m_clip_plane_3 = (a0 >> 12) & 0xf; - m_clip_plane_4 = (a0 >> 16) & 0xf; - m_clip_plane_5 = a0 >> 20; + m_clip_plane_0 = (a0 & 0xf) ? true : false; + m_clip_plane_1 = ((a0 >> 4)) & 0xf ? true : false; + m_clip_plane_2 = ((a0 >> 8)) & 0xf ? true : false; + m_clip_plane_3 = ((a0 >> 12)) & 0xf ? true : false; + m_clip_plane_4 = ((a0 >> 16)) & 0xf ? true : false; + m_clip_plane_5 = (a0 >> 20) ? true : false; } break; diff --git a/rpcs3/Emu/GS/RSXThread.h b/rpcs3/Emu/GS/RSXThread.h index 623a1a433c..42a0c7695e 100644 --- a/rpcs3/Emu/GS/RSXThread.h +++ b/rpcs3/Emu/GS/RSXThread.h @@ -348,12 +348,12 @@ public: // Clip plane bool m_set_clip_plane; - u32 m_clip_plane_0; - u32 m_clip_plane_1; - u32 m_clip_plane_2; - u32 m_clip_plane_3; - u32 m_clip_plane_4; - u32 m_clip_plane_5; + bool m_clip_plane_0; + bool m_clip_plane_1; + bool m_clip_plane_2; + bool m_clip_plane_3; + bool m_clip_plane_4; + bool m_clip_plane_5; // Surface bool m_set_surface_format;