Merge pull request #3305 from unknownbrackets/reporting

Increase and decrease some reporting (mostly decrease...)
This commit is contained in:
Henrik Rydgård 2013-08-21 09:57:31 -07:00
commit 620c707aa5
8 changed files with 52 additions and 22 deletions

View file

@ -139,11 +139,7 @@ void ElfReader::LoadRelocations(Elf32_Rel *rels, int numRelocs)
break;
case R_MIPS_GPREL16: //gp
{
char temp[256];
MIPSDisAsm(op, 0, temp);
WARN_LOG_REPORT(LOADER, "ARGH IT'S A GP!!!!!!!! %08x : %s", addr, temp);
}
// It seems safe to ignore this, almost a notification of a gp-relative operation?
break;
case R_MIPS_16:
@ -154,12 +150,8 @@ void ElfReader::LoadRelocations(Elf32_Rel *rels, int numRelocs)
}
break;
case 0: // another GP reloc!
{
char temp[256];
MIPSDisAsm(op, 0, temp);
ERROR_LOG_REPORT(LOADER, "WARNING: GP reloc? @ %08x : 0 : %s", addr, temp);
}
case R_MIPS_NONE:
// This shouldn't matter, not sure the purpose of it.
break;
default:

View file

@ -195,7 +195,7 @@ bool MetaFileSystem::MapFilePath(const std::string &_inpath, std::string &outpat
if (inpath.find(':') == std::string::npos /* means path is relative */)
{
lastOpenError = SCE_KERNEL_ERROR_NOCWD;
WARN_LOG_REPORT(HLE, "Path is relative, but current directory not set for thread %i. returning 8002032C(SCE_KERNEL_ERROR_NOCWD) instead.", currentThread);
WARN_LOG(HLE, "Path is relative, but current directory not set for thread %i. returning 8002032C(SCE_KERNEL_ERROR_NOCWD) instead.", currentThread);
}
}
else

View file

@ -124,6 +124,12 @@ const HLEFunction IoFileMgrForKernel[] =
{0x8E982A74, 0, "sceIoAddDrv"},
{0xC7F35804, 0, "sceIoDelDrv"},
{0x3C54E908, 0, "sceIoReopen"},
{0xb29ddf9c, 0, "sceIoDopen"},
{0xe3eb004c, 0, "sceIoDread"},
{0xeb092469, 0, "sceIoDclose"},
{0x109f50bc, 0, "sceIoOpen"},
{0x810c4bc3, 0, "sceIoClose"},
{0x779103a0, 0, "sceIoRename"},
};
const HLEFunction StdioForKernel[] =
{

View file

@ -863,6 +863,14 @@ void Register_ExceptionManagerForKernel()
// Seen in some homebrew
const HLEFunction UtilsForKernel[] = {
{0xC2DF770E, 0, "sceKernelIcacheInvalidateRange"},
{0x78934841, 0, "sceKernelGzipDecompress"},
{0xe8db3ce6, 0, "sceKernelDeflateDecompress"},
{0x840259f1, 0, "sceKernelUtilsSha1Digest"},
{0x6c6887ee, 0, "UtilsForKernel_6C6887EE"},
{0x91e4f6a7, 0, "sceKernelLibcClock"},
{0x79d1c3fa, 0, "sceKernelDcacheWritebackAll"},
{0x34b9fa9e, 0, "sceKernelDcacheWritebackInvalidateRange"},
{0x920f104a, 0, "sceKernelIcacheInvalidateAll"},
};

View file

@ -742,7 +742,7 @@ Module *__KernelLoadELFFromPtr(const u8 *ptr, u32 loadAddress, std::string *erro
u32_le *residentPtr = (u32_le *)Memory::GetPointer(ent->resident);
u32_le *exportPtr = residentPtr + ent->fcount + variableCount;
if (ent->size != 4) {
if (ent->size != 4 && ent->unknown1 != 0 && ent->unknown2 != 0) {
WARN_LOG_REPORT(LOADER, "Unexpected export module entry size %d, vcountNew=%08x, unknown1=%08x, unknown2=%08x", ent->size, ent->vcountNew, ent->unknown1, ent->unknown2);
}

View file

@ -174,7 +174,7 @@ u32 sceSasSetVoice(u32 core, int voiceNum, u32 vagAddr, int size, int loop) {
u32 sceSasSetVoicePCM(u32 core, int voiceNum, u32 pcmAddr, int size, int loop)
{
INFO_LOG_REPORT(HLE, "sceSasSetVoicePCM(%08x, %i, %08x, %i, %i)", core, voiceNum, pcmAddr, size, loop);
INFO_LOG(HLE, "sceSasSetVoicePCM(%08x, %i, %08x, %i, %i)", core, voiceNum, pcmAddr, size, loop);
if (voiceNum >= PSP_SAS_VOICES_MAX || voiceNum < 0) {
WARN_LOG(HLE, "%s: invalid voicenum %d", __FUNCTION__, voiceNum);

View file

@ -15,14 +15,15 @@
// Official git repository and contact information can be found at
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
#include "Common.h"
#include "Atomics.h"
#include "Common/Common.h"
#include "Common/Atomics.h"
#include "MemMap.h"
#include "Config.h"
#include "Host.h"
#include "Core/MemMap.h"
#include "Core/Config.h"
#include "Core/Host.h"
#include "Core/Reporting.h"
#include "MIPS/MIPS.h"
#include "Core/MIPS/MIPS.h"
namespace Memory
{
@ -52,6 +53,11 @@ u8 *GetPointer(const u32 address)
}
else {
ERROR_LOG(MEMMAP, "Unknown GetPointer %08x PC %08x LR %08x", address, currentMIPS->pc, currentMIPS->r[MIPS_REG_RA]);
static bool reported = false;
if (!reported) {
Reporting::ReportMessage("Unknown GetPointer %08x PC %08x LR %08x", address, currentMIPS->pc, currentMIPS->r[MIPS_REG_RA]);
reported = true;
}
if (!g_Config.bIgnoreBadMemAccess) {
Core_EnableStepping(true);
host->SetDebugMode(true);
@ -88,6 +94,11 @@ inline void ReadFromHardware(T &var, const u32 address)
} else {
WARN_LOG(MEMMAP, "ReadFromHardware: Invalid address %08x PC %08x LR %08x", address, currentMIPS->pc, currentMIPS->r[MIPS_REG_RA]);
}
static bool reported = false;
if (!reported) {
Reporting::ReportMessage("ReadFromHardware: Invalid address %08x near PC %08x LR %08x", address, currentMIPS->pc, currentMIPS->r[MIPS_REG_RA]);
reported = true;
}
if (!g_Config.bIgnoreBadMemAccess) {
Core_EnableStepping(true);
host->SetDebugMode(true);
@ -120,6 +131,11 @@ inline void WriteToHardware(u32 address, const T data)
} else {
WARN_LOG(MEMMAP, "WriteToHardware: Invalid address %08x PC %08x LR %08x", address, currentMIPS->pc, currentMIPS->r[MIPS_REG_RA]);
}
static bool reported = false;
if (!reported) {
Reporting::ReportMessage("WriteToHardware: Invalid address %08x near PC %08x LR %08x", address, currentMIPS->pc, currentMIPS->r[MIPS_REG_RA]);
reported = true;
}
if (!g_Config.bIgnoreBadMemAccess) {
Core_EnableStepping(true);
host->SetDebugMode(true);

View file

@ -134,7 +134,11 @@ void TransformDrawEngine::GLLost() {
void TransformDrawEngine::DrawBezier(int ucount, int vcount) {
u16 indices[3 * 3 * 6];
Reporting::ReportMessage("Unsupported bezier curve");
static bool reported = false;
if (!reported) {
Reporting::ReportMessage("Unsupported bezier curve");
reported = true;
}
// if (gstate.patchprimitive)
// Generate indices for a rectangular mesh.
@ -180,7 +184,11 @@ void TransformDrawEngine::DrawBezier(int ucount, int vcount) {
void TransformDrawEngine::DrawSpline(int ucount, int vcount, int utype, int vtype) {
u16 indices[3 * 3 * 6];
Reporting::ReportMessage("Unsupported spline curve");
static bool reported = false;
if (!reported) {
Reporting::ReportMessage("Unsupported spline curve");
reported = true;
}
// Generate indices for a rectangular mesh.
int c = 0;