cellVideoOut accuracy improved, logging additions

Now basic settings are logged in the start of every log, to help devs in
determining  possible problems, when users test or try to run certain
games.
This commit is contained in:
Raul Tambre 2015-08-22 11:20:48 +03:00 committed by Nekotekina
parent c923cb54d3
commit 09673c928c
3 changed files with 101 additions and 6 deletions

View File

@ -1,6 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Utilities/Log.h" #include "Utilities/Log.h"
#include "Utilities/File.h" #include "Utilities/File.h"
#include "rpcs3/Ini.h"
#include "Emu/Memory/Memory.h" #include "Emu/Memory/Memory.h"
#include "Emu/System.h" #include "Emu/System.h"
@ -199,14 +200,34 @@ void Emulator::Load()
} }
} }
LOG_NOTICE(LOADER, " "); //used to be skip_line LOG_NOTICE(LOADER, "");
LOG_NOTICE(LOADER, "Mount info:"); LOG_NOTICE(LOADER, "Mount info:");
for (uint i = 0; i < GetVFS().m_devices.size(); ++i) for (uint i = 0; i < GetVFS().m_devices.size(); ++i)
{ {
LOG_NOTICE(LOADER, "%s -> %s", GetVFS().m_devices[i]->GetPs3Path().c_str(), GetVFS().m_devices[i]->GetLocalPath().c_str()); LOG_NOTICE(LOADER, "%s -> %s", GetVFS().m_devices[i]->GetPs3Path().c_str(), GetVFS().m_devices[i]->GetLocalPath().c_str());
} }
LOG_NOTICE(LOADER, " "); //used to be skip_line LOG_NOTICE(LOADER, "");
LOG_NOTICE(LOADER, "Settings:");
LOG_NOTICE(LOADER, "CPU: %s", Ini.CPUIdToString(Ini.CPUDecoderMode.GetValue()));
LOG_NOTICE(LOADER, "SPU: %s", Ini.SPUIdToString(Ini.SPUDecoderMode.GetValue()));
LOG_NOTICE(LOADER, "Renderer: %s", Ini.RendererIdToString(Ini.GSRenderMode.GetValue()));
if (Ini.GSRenderMode.GetValue() == 2)
{
LOG_NOTICE(LOADER, "D3D Adapter: %s", Ini.AdapterIdToString(Ini.GSD3DAdaptater.GetValue()));
}
LOG_NOTICE(LOADER, "Resolution: %s", Ini.ResolutionIdToString(Ini.GSResolution.GetValue()));
LOG_NOTICE(LOADER, "Write Depth Buffer: %s", Ini.GSDumpDepthBuffer.GetValue() ? "Yes" : "No");
LOG_NOTICE(LOADER, "Write Color Buffers: %s", Ini.GSDumpColorBuffers.GetValue() ? "Yes" : "No");
LOG_NOTICE(LOADER, "Read Color Buffer: %s", Ini.GSReadColorBuffer.GetValue() ? "Yes" : "No");
LOG_NOTICE(LOADER, "Audio Out: %s", Ini.AudioOutIdToString(Ini.AudioOutMode.GetValue()));
LOG_NOTICE(LOADER, "Log Everything: %s", Ini.HLELogging.GetValue() ? "Yes" : "No");
LOG_NOTICE(LOADER, "RSX Logging: %s", Ini.RSXLogging.GetValue() ? "Yes" : "No");
LOG_NOTICE(LOADER, "");
f.Open("/app_home/../PARAM.SFO"); f.Open("/app_home/../PARAM.SFO");
const PSFLoader psf(f); const PSFLoader psf(f);
std::string title = psf.GetString("TITLE"); std::string title = psf.GetString("TITLE");

View File

@ -160,10 +160,10 @@ SettingsDialog::SettingsDialog(wxWindow *parent)
#endif #endif
cbox_gs_d3d_adaptater->Append("WARP"); cbox_gs_d3d_adaptater->Append("WARP");
cbox_gs_d3d_adaptater->Append("default"); cbox_gs_d3d_adaptater->Append("Default");
cbox_gs_d3d_adaptater->Append("renderer 0"); cbox_gs_d3d_adaptater->Append("Renderer 0");
cbox_gs_d3d_adaptater->Append("renderer 1"); cbox_gs_d3d_adaptater->Append("Renderer 1");
cbox_gs_d3d_adaptater->Append("renderer 2"); cbox_gs_d3d_adaptater->Append("Renderer 2");
#if !defined(DX12_SUPPORT) #if !defined(DX12_SUPPORT)
cbox_gs_d3d_adaptater->Enable(false); cbox_gs_d3d_adaptater->Enable(false);

View File

@ -441,6 +441,80 @@ public:
SysEmulationDirPath.Save(); SysEmulationDirPath.Save();
SysEmulationDirPathEnable.Save(); SysEmulationDirPathEnable.Save();
} }
// For getting strings for certain options to display settings in the log.
inline static const char* CPUIdToString(u8 code)
{
switch (code)
{
case 0: return "PPU Interpreter";
case 1: return "PPU Interpreter 2";
case 2: return "PPU JIT (LLVM)";
default: return "Unknown";
}
}
inline static const char* SPUIdToString(u8 code)
{
switch (code)
{
case 0: return "SPU Interpreter (precise)";
case 1: return "SPU Interpreter (fast)";
case 2: return "SPU Recompiler (ASMJIT)";
default: return "Unknown";
}
}
inline static const char* RendererIdToString(u8 code)
{
switch (code)
{
case 0: return "Null";
case 1: return "OpenGL";
case 2: return "DirectX 12";
default: return "Unknown";
}
}
inline static const char* AdapterIdToString(u8 code)
{
switch (code)
{
case 0: return "WARP";
case 1: return "Default";
case 2: return "Renderer 0";
case 3: return "Renderer 1";
case 4: return "Renderer 2";
default: return "Unknown";
}
}
inline static const char* AudioOutIdToString(u8 code)
{
switch (code)
{
case 0: return "Null";
case 1: return "OpenAL";
case 2: return "XAudio2";
default: return "Unknown";
}
}
inline static const char* ResolutionIdToString(u32 id)
{
switch (id)
{
case 1: return "1920x1080";
case 2: return "1280x720";
case 4: return "720x480";
case 5: return "720x576";
case 10: return "1600x1080";
case 11: return "1440x1080";
case 12: return "1280x1080";
case 13: return "960x1080";
default: return "Unknown";
}
}
}; };
extern Inis Ini; extern Inis Ini;