Fixed condition decompilation in vertex & fragment shaders

Added 30 & 60 modes to frame limiter
This commit is contained in:
DHrpcs3 2014-12-22 01:10:22 +02:00
parent 5f40f732a9
commit e1ea7a28c3
6 changed files with 8 additions and 12 deletions

View file

@ -47,7 +47,7 @@ void GLFragmentDecompilerThread::SetDst(std::string code, bool append_mask)
std::string dest = AddReg(dst.dest_reg, dst.fp16) + "$m"; std::string dest = AddReg(dst.dest_reg, dst.fp16) + "$m";
AddCodeCond(dest, code); AddCodeCond(Format(dest), code);
//AddCode("$ifcond " + dest + code + (append_mask ? "$m;" : ";")); //AddCode("$ifcond " + dest + code + (append_mask ? "$m;" : ";"));
if (dst.set_cond) if (dst.set_cond)

View file

@ -165,7 +165,7 @@ void GLVertexDecompilerThread::SetDST(bool is_sca, std::string value)
//code += dest + value; //code += dest + value;
//AddCode(code + ";"); //AddCode(code + ";");
AddCodeCond(dest, value); AddCodeCond(Format(dest), value);
} }
std::string GLVertexDecompilerThread::GetFunc() std::string GLVertexDecompilerThread::GetFunc()
@ -454,7 +454,7 @@ std::string GLVertexDecompilerThread::BuildCode()
std::string fp; std::string fp;
for (int i = m_funcs.size() - 1; i>0; --i) for (int i = m_funcs.size() - 1; i > 0; --i)
{ {
fp += fmt::Format("void %s();\n", m_funcs[i].name.c_str()); fp += fmt::Format("void %s();\n", m_funcs[i].name.c_str());
} }

View file

@ -340,9 +340,11 @@ void RSXThread::DoCmd(const u32 fcmd, const u32 cmd, const u32 args_addr, const
double limit; double limit;
switch (Ini.GSFrameLimit.GetValue()) switch (Ini.GSFrameLimit.GetValue())
{ {
case 1: limit = 50.0; break; case 1: limit = 50.; break;
case 2: limit = 59.94; break; case 2: limit = 59.94; break;
case 3: limit = m_fps_limit; break; //TODO case 3: limit = 30.; break;
case 4: limit = 60.; break;
case 5: limit = m_fps_limit; break; //TODO
case 0: case 0:
default: default:

View file

@ -450,7 +450,7 @@ void MainFrame::Config(wxCommandEvent& WXUNUSED(event))
cbox_gs_aspect->Append("4:3"); cbox_gs_aspect->Append("4:3");
cbox_gs_aspect->Append("16:9"); cbox_gs_aspect->Append("16:9");
for (auto item : { "Off", "50", "59.94", "Auto" }) for (auto item : { "Off", "50", "59.94", "30", "60", "Auto" })
cbox_gs_frame_limit->Append(item); cbox_gs_frame_limit->Append(item);
cbox_pad_handler->Append("Null"); cbox_pad_handler->Append("Null");

View file

@ -231,9 +231,6 @@
<Project>{c4a10229-4712-4bd2-b63e-50d93c67a038}</Project> <Project>{c4a10229-4712-4bd2-b63e-50d93c67a038}</Project>
</ProjectReference> </ProjectReference>
</ItemGroup> </ItemGroup>
<ItemGroup>
<None Include="ClassDiagram.cd" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets"> <ImportGroup Label="ExtensionTargets">
</ImportGroup> </ImportGroup>

View file

@ -192,7 +192,4 @@
<Filter>Gui</Filter> <Filter>Gui</Filter>
</ClInclude> </ClInclude>
</ItemGroup> </ItemGroup>
<ItemGroup>
<None Include="ClassDiagram.cd" />
</ItemGroup>
</Project> </Project>