mirror of
https://github.com/izzy2lost/WeeU.git
synced 2026-07-06 00:19:59 -07:00
Logging migration (forceLogDebug_printf) (#780)
* script changes - no arguments * script changes with 2 arguments * script changes with > 2 arguments * script conversions with 1 argument - pt. 1 * script conversions with 1 argument - pt. 2 * script conversions with 1 argument - pt. 3 * script conversions with 1 argument - pt. 4 * script conversions with 1 argument - pt. 5 Pointer format hunting * Fixed pointer format * script conversions with 1 argument - final * fixed conversion in non utf-8 file * fixed conversion with capital letter * actually fixed conversion with capital letter * fixed another capital lettering issue * Added conversions with LR removed * removed LR from logs * Converted logs that previously contained LR * converted log that originally specified string length * fixed log with commas in main text * fixed multi-line log * Fixed more logs with commas in main text * Fixed unformatted pointer * added conversion with float value * converted lines with double parameters * converted missed line * corrected argument formatting Co-authored-by: Crementif <26669564+Crementif@users.noreply.github.com> * Fixed misspellings of "unhandled" unhandeled -> unhandled Co-authored-by: Crementif <26669564+Crementif@users.noreply.github.com> --------- Co-authored-by: Crementif <26669564+Crementif@users.noreply.github.com>
This commit is contained in:
@@ -350,7 +350,7 @@ void GamePatch_scan()
|
||||
hleAddr = hle_locate(ffl_floatArrayEndianSwap, NULL, sizeof(ffl_floatArrayEndianSwap));
|
||||
if (hleAddr)
|
||||
{
|
||||
forceLogDebug_printf("HLE: Hook FFL float array endian swap function at 0x%08x", hleAddr);
|
||||
cemuLog_logDebug(LogType::Force, "HLE: Hook FFL float array endian swap function at 0x{:08x}", hleAddr);
|
||||
sint32 functionIndex = hleIndex_h000000003;
|
||||
uint32 opcode = (1 << 26) | (functionIndex); // opcode for HLE: 0x1000 + FunctionIndex
|
||||
memory_write<uint32>(hleAddr, opcode);
|
||||
@@ -360,7 +360,7 @@ void GamePatch_scan()
|
||||
//hleAddr = hle_locate(xcx_enterCriticalSectionSignature, xcx_enterCriticalSectionMask, sizeof(xcx_enterCriticalSectionSignature));
|
||||
//if (hleAddr)
|
||||
//{
|
||||
// forceLogDebug_printf("HLE: Hook XCX enterCriticalSection function at 0x%08x", hleAddr);
|
||||
// cemuLog_logDebug(LogType::Force, "HLE: Hook XCX enterCriticalSection function at 0x{:08x}", hleAddr);
|
||||
// hleIndex_h000000004 = osLib_getFunctionIndex("hle", "h000000004");
|
||||
// sint32 functionIndex = hleIndex_h000000004;
|
||||
// uint32 opcode = (1 << 26) | (functionIndex); // opcode for HLE: 0x1000 + FunctionIndex
|
||||
@@ -387,7 +387,7 @@ void GamePatch_scan()
|
||||
hleAddr = hle_locate(smash4_softlockFixV0Signature, smash4_softlockFixV0Mask, sizeof(smash4_softlockFixV0Signature));
|
||||
if (hleAddr)
|
||||
{
|
||||
forceLogDebug_printf("Smash softlock fix: 0x%08x", hleAddr);
|
||||
cemuLog_logDebug(LogType::Force, "Smash softlock fix: 0x{:08x}", hleAddr);
|
||||
memory_writeU32(hleAddr+0x20, memory_readU32(hleAddr+0x1C));
|
||||
}
|
||||
|
||||
@@ -396,7 +396,7 @@ void GamePatch_scan()
|
||||
hleAddr = hle_locate(pmcs_yellowPaintStarCrashV0Signature, nullptr, sizeof(pmcs_yellowPaintStarCrashV0Signature));
|
||||
if (hleAddr)
|
||||
{
|
||||
forceLogDebug_printf("Color Splash crash fix: 0x%08x", hleAddr);
|
||||
cemuLog_logDebug(LogType::Force, "Color Splash crash fix: 0x{:08x}", hleAddr);
|
||||
uint32 funcAddr = PPCInterpreter_makeCallableExportDepr(hleExport_pmcs_yellowPaintStarCrashWorkaround);
|
||||
// set absolute jump
|
||||
uint32 opc = 0x48000000;
|
||||
|
||||
@@ -25,13 +25,13 @@ namespace HW_ACR
|
||||
/* 0x0D00021C | Accesses VI register currently selected by VIADDR */
|
||||
HWREG::ACR_VI_DATA ACR_VIDATA_R32(PAddr addr)
|
||||
{
|
||||
forceLogDebug_printf("ACR_VIDATA read with selected reg %08x", g_acr.viAddr.get_ADDR());
|
||||
cemuLog_logDebug(LogType::Force, "ACR_VIDATA read with selected reg {:08x}", g_acr.viAddr.get_ADDR());
|
||||
return HWREG::ACR_VI_DATA();
|
||||
}
|
||||
|
||||
void ACR_VIDATA_W32(PAddr addr, HWREG::ACR_VI_DATA newValue)
|
||||
{
|
||||
forceLogDebug_printf("ACR_VIDATA write %08x with selected reg %08x", newValue.get_DATA(), g_acr.viAddr.get_ADDR());
|
||||
cemuLog_logDebug(LogType::Force, "ACR_VIDATA write {:08x} with selected reg {:08x}", newValue.get_DATA(), g_acr.viAddr.get_ADDR());
|
||||
}
|
||||
|
||||
/* 0x0D000224 | Controls the selected VI register? */
|
||||
|
||||
@@ -412,7 +412,7 @@ static void PPCInterpreter_DIVW(PPCInterpreter_t* hCPU, uint32 opcode)
|
||||
sint32 b = hCPU->gpr[rB];
|
||||
if (b == 0)
|
||||
{
|
||||
forceLogDebug_printf("Error: Division by zero! [%08X]\n", (uint32)hCPU->instructionPointer);
|
||||
cemuLog_logDebug(LogType::Force, "Error: Division by zero! [{:08x}]", (uint32)hCPU->instructionPointer);
|
||||
b++;
|
||||
}
|
||||
hCPU->gpr[rD] = a / b;
|
||||
|
||||
@@ -237,7 +237,7 @@ public:
|
||||
lookupHash = ~lookupHash;
|
||||
}
|
||||
|
||||
forceLogDebug_printf("DSI exception at 0x%08x LR 0x%08x DataAddress %08x", hCPU->instructionPointer, hCPU->spr.LR, vAddr);
|
||||
cemuLog_logDebug(LogType::Force, "DSI exception at 0x{:08x} DataAddress {:08x}", hCPU->instructionPointer, vAddr);
|
||||
|
||||
generateDSIException(hCPU, vAddr);
|
||||
|
||||
@@ -378,12 +378,12 @@ public:
|
||||
if (pAddr >= 0x01FFF000 && pAddr < 0x02000000)
|
||||
{
|
||||
debug_printf("Access u32 boot param block 0x%08x IP %08x LR %08x\n", pAddr, hCPU->instructionPointer, hCPU->spr.LR);
|
||||
forceLogDebug_printf("Access u32 boot param block 0x%08x (org %08x) IP %08x LR %08x\n", pAddr, address, hCPU->instructionPointer, hCPU->spr.LR);
|
||||
cemuLog_logDebug(LogType::Force, "Access u32 boot param block 0x{:08x} (org {:08x}) IP {:08x}", pAddr, address, hCPU->instructionPointer);
|
||||
}
|
||||
if (pAddr >= 0xFFEB73B0 && pAddr < (0xFFEB73B0+0x40C))
|
||||
{
|
||||
debug_printf("Access cached u32 boot param block 0x%08x IP %08x LR %08x\n", pAddr, hCPU->instructionPointer, hCPU->spr.LR);
|
||||
forceLogDebug_printf("Access cached u32 boot param block 0x%08x (org %08x) IP %08x LR %08x\n", pAddr, address, hCPU->instructionPointer, hCPU->spr.LR);
|
||||
cemuLog_logDebug(LogType::Force, "Access cached u32 boot param block 0x{:08x} (org {:08x}) IP {:08x}", pAddr, address, hCPU->instructionPointer);
|
||||
}
|
||||
|
||||
if (pAddr >= 0x0c000000 && pAddr < 0x0d100000)
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
|
||||
void PPCInterpreter_MFMSR(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
{
|
||||
forceLogDebug_printf("Rare instruction: MFMSR");
|
||||
cemuLog_logDebug(LogType::Force, "Rare instruction: MFMSR");
|
||||
if (hCPU->sprExtended.msr & MSR_PR)
|
||||
{
|
||||
PPC_ASSERT(true);
|
||||
@@ -28,7 +28,7 @@ void PPCInterpreter_MFMSR(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
|
||||
void PPCInterpreter_MTMSR(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
{
|
||||
forceLogDebug_printf("Rare instruction: MTMSR");
|
||||
cemuLog_logDebug(LogType::Force, "Rare instruction: MTMSR");
|
||||
if (hCPU->sprExtended.msr & MSR_PR)
|
||||
{
|
||||
PPC_ASSERT(true);
|
||||
@@ -43,7 +43,7 @@ void PPCInterpreter_MTMSR(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
|
||||
void PPCInterpreter_MTFSB1X(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
{
|
||||
forceLogDebug_printf("Rare instruction: MTFSB1X");
|
||||
cemuLog_logDebug(LogType::Force, "Rare instruction: MTFSB1X");
|
||||
int crbD, n1, n2;
|
||||
PPC_OPC_TEMPL_X(Opcode, crbD, n1, n2);
|
||||
if (crbD != 1 && crbD != 2)
|
||||
@@ -212,7 +212,7 @@ void PPCInterpreter_BCLRX(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
if (hCPU->spr.CTR == 0)
|
||||
{
|
||||
PPC_ASSERT(true);
|
||||
forceLogDebug_printf("Decrementer underflow!\n");
|
||||
cemuLog_logDebug(LogType::Force, "Decrementer underflow!");
|
||||
}
|
||||
hCPU->spr.CTR--;
|
||||
}
|
||||
@@ -331,7 +331,7 @@ void PPCInterpreter_EIEIO(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
|
||||
void PPCInterpreter_SC(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
{
|
||||
forceLogDebug_printf("SC executed at 0x%08x", hCPU->instructionPointer);
|
||||
cemuLog_logDebug(LogType::Force, "SC executed at 0x{:08x}", hCPU->instructionPointer);
|
||||
// next instruction
|
||||
PPCInterpreter_nextInstruction(hCPU);
|
||||
}
|
||||
@@ -352,7 +352,7 @@ void PPCInterpreter_ISYNC(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
|
||||
void PPCInterpreter_RFI(PPCInterpreter_t* hCPU, uint32 Opcode)
|
||||
{
|
||||
forceLogDebug_printf("RFI");
|
||||
cemuLog_logDebug(LogType::Force, "RFI");
|
||||
hCPU->sprExtended.msr &= ~(0x87C0FF73 | 0x00040000);
|
||||
hCPU->sprExtended.msr |= hCPU->sprExtended.srr1 & 0x87c0ff73;
|
||||
hCPU->sprExtended.msr |= MSR_RI;
|
||||
|
||||
@@ -163,7 +163,7 @@ void smdpArea_processCommand(smdpArea_t* smdpArea, smdpCommand_t* cmd)
|
||||
{
|
||||
cmd->ukn08 = 1;
|
||||
// cmd->ukn2C ?
|
||||
forceLogDebug_printf("SMDP command received - todo");
|
||||
cemuLog_logDebug(LogType::Force, "SMDP command received - todo");
|
||||
smdpArea_pushResult(smdpArea, memory_getVirtualOffsetFromPointer(cmd));
|
||||
}
|
||||
else
|
||||
@@ -242,4 +242,4 @@ void PPCCoreLLE_startSingleCoreScheduler(uint32 entrypoint)
|
||||
}
|
||||
}
|
||||
assert_dbg();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -500,7 +500,7 @@ void PPCRecompiler_init()
|
||||
codeRegionEnd = (codeRegionEnd + PPC_REC_ALLOC_BLOCK_SIZE - 1) & ~(PPC_REC_ALLOC_BLOCK_SIZE - 1);
|
||||
|
||||
uint32 codeRegionSize = codeRegionEnd - PPC_REC_CODE_AREA_START;
|
||||
forceLogDebug_printf("Allocating recompiler tables for range 0x%08x-0x%08x", PPC_REC_CODE_AREA_START, codeRegionEnd);
|
||||
cemuLog_logDebug(LogType::Force, "Allocating recompiler tables for range 0x{:08x}-0x{:08x}", PPC_REC_CODE_AREA_START, codeRegionEnd);
|
||||
|
||||
for (uint32 i = 0; i < codeRegionSize; i += PPC_REC_ALLOC_BLOCK_SIZE)
|
||||
{
|
||||
|
||||
@@ -192,7 +192,7 @@ void _PPCRecRA_checkAndTryExtendRange(ppcImlGenContext_t* ppcImlGenContext, PPCR
|
||||
{
|
||||
if (routeDepth >= 64)
|
||||
{
|
||||
forceLogDebug_printf("Recompiler RA route maximum depth exceeded for function 0x%08x\n", ppcImlGenContext->functionRef->ppcAddress);
|
||||
cemuLog_logDebug(LogType::Force, "Recompiler RA route maximum depth exceeded for function 0x{:08x}", ppcImlGenContext->functionRef->ppcAddress);
|
||||
return;
|
||||
}
|
||||
route[routeDepth] = currentSegment;
|
||||
@@ -411,4 +411,4 @@ void PPCRecRA_analyzeRangeDataFlowV2(ppcImlGenContext_t* ppcImlGenContext)
|
||||
_analyzeRangeDataFlow(subrange);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -120,7 +120,7 @@ void LatteAsyncCommands_checkAndExecute()
|
||||
}
|
||||
else
|
||||
{
|
||||
forceLogDebug_printf("Texture not found for readback");
|
||||
cemuLog_logDebug(LogType::Force, "Texture not found for readback");
|
||||
}
|
||||
}
|
||||
else if (asyncCommand.type == ASYNC_CMD_DELETE_SHADER)
|
||||
@@ -135,4 +135,4 @@ void LatteAsyncCommands_checkAndExecute()
|
||||
LatteAsyncCommandQueue.pop();
|
||||
}
|
||||
swl_gpuAsyncCommands.UnlockWrite();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -304,7 +304,7 @@ public:
|
||||
{
|
||||
if ((rangeBegin & 0xF))
|
||||
{
|
||||
forceLogDebug_printf("writeStreamout(): RangeBegin not aligned to 16. Begin %08x End %08x", rangeBegin, rangeEnd);
|
||||
cemuLog_logDebug(LogType::Force, "writeStreamout(): RangeBegin not aligned to 16. Begin {:08x} End {:08x}", rangeBegin, rangeEnd);
|
||||
rangeBegin = (rangeBegin + 0xF) & ~0xF;
|
||||
rangeEnd = std::max(rangeBegin, rangeEnd);
|
||||
}
|
||||
@@ -313,7 +313,7 @@ public:
|
||||
// todo - add support for 4 byte granularity for streamout writes and cache
|
||||
// used by Affordable Space Adventures and YWW Level 1-8
|
||||
// also used by CoD Ghosts (8 byte granularity)
|
||||
//forceLogDebug_printf("Streamout write size is not aligned to 16 bytes");
|
||||
//cemuLog_logDebug(LogType::Force, "Streamout write size is not aligned to 16 bytes");
|
||||
rangeEnd &= ~0xF;
|
||||
}
|
||||
//cemu_assert_debug((rangeEnd & 0xF) == 0);
|
||||
|
||||
@@ -50,12 +50,12 @@ private:
|
||||
}
|
||||
if (effectiveWidth < rtEffectiveSize.x)
|
||||
{
|
||||
forceLogDebug_printf("Framebuffer has color texture with smaller effective width (%d -> %d)", rtEffectiveSize.x, effectiveWidth);
|
||||
cemuLog_logDebug(LogType::Force, "Framebuffer has color texture with smaller effective width ({} -> {})", rtEffectiveSize.x, effectiveWidth);
|
||||
rtEffectiveSize.x = effectiveWidth;
|
||||
}
|
||||
if (effectiveHeight < rtEffectiveSize.y)
|
||||
{
|
||||
forceLogDebug_printf("Framebuffer has color texture with smaller effective height (%d -> %d)", rtEffectiveSize.y, effectiveHeight);
|
||||
cemuLog_logDebug(LogType::Force, "Framebuffer has color texture with smaller effective height ({} -> {})", rtEffectiveSize.y, effectiveHeight);
|
||||
rtEffectiveSize.y = effectiveHeight;
|
||||
}
|
||||
numViews++;
|
||||
@@ -72,12 +72,12 @@ private:
|
||||
}
|
||||
if (effectiveWidth < rtEffectiveSize.x)
|
||||
{
|
||||
forceLogDebug_printf("Framebuffer has depth texture with smaller effective width (%d -> %d)", rtEffectiveSize.x, effectiveWidth);
|
||||
cemuLog_logDebug(LogType::Force, "Framebuffer has depth texture with smaller effective width ({} -> {})", rtEffectiveSize.x, effectiveWidth);
|
||||
rtEffectiveSize.x = effectiveWidth;
|
||||
}
|
||||
if (effectiveHeight < rtEffectiveSize.y)
|
||||
{
|
||||
forceLogDebug_printf("Framebuffer has depth texture with smaller effective height (%d -> %d)", rtEffectiveSize.y, effectiveHeight);
|
||||
cemuLog_logDebug(LogType::Force, "Framebuffer has depth texture with smaller effective height ({} -> {})", rtEffectiveSize.y, effectiveHeight);
|
||||
rtEffectiveSize.y = effectiveHeight;
|
||||
}
|
||||
numViews++;
|
||||
@@ -145,4 +145,4 @@ public:
|
||||
|
||||
private:
|
||||
static LatteCachedFBO* CreateCachedFBO(uint64 key);
|
||||
};
|
||||
};
|
||||
|
||||
@@ -638,7 +638,7 @@ LatteCMDPtr LatteCP_itDrawIndexAuto(LatteCMDPtr cmd, uint32 nWords, DrawPassCont
|
||||
{
|
||||
uint32 vsProgramCode = ((LatteGPUState.contextRegister[mmSQ_PGM_START_ES] & 0xFFFFFF) << 8);
|
||||
uint32 vsProgramSize = LatteGPUState.contextRegister[mmSQ_PGM_START_ES + 1] << 3;
|
||||
forceLogDebug_printf("Compute %d %08x %08x (unsupported)\n", count, vsProgramCode, vsProgramSize);
|
||||
cemuLog_logDebug(LogType::Force, "Compute {} {:08x} {:08x} (unsupported)", count, vsProgramCode, vsProgramSize);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -611,7 +611,7 @@ bool LatteMRT::UpdateCurrentFBO()
|
||||
{
|
||||
if (_depthBufferSizeWarningCount < 100)
|
||||
{
|
||||
forceLogDebug_printf("Depth buffer size too small. Effective size: %dx%d Real size: %dx%d Mismatching texture: %08x %dx%d fmt %04x", effectiveWidth, effectiveHeight, depthBufferView->baseTexture->width, depthBufferView->baseTexture->height, depthBufferView->baseTexture->physAddress, depthBufferView->baseTexture->width, depthBufferView->baseTexture->height, (uint32)depthBufferView->baseTexture->format);
|
||||
cemuLog_logDebug(LogType::Force, "Depth buffer size too small. Effective size: {}x{} Real size: {}x{} Mismatching texture: {:08x} {}x{} fmt {:04x}", effectiveWidth, effectiveHeight, depthBufferView->baseTexture->width, depthBufferView->baseTexture->height, depthBufferView->baseTexture->physAddress, depthBufferView->baseTexture->width, depthBufferView->baseTexture->height, (uint32)depthBufferView->baseTexture->format);
|
||||
_depthBufferSizeWarningCount++;
|
||||
}
|
||||
}
|
||||
@@ -721,7 +721,7 @@ void LatteRenderTarget_applyTextureColorClear(LatteTexture* texture, uint32 slic
|
||||
{
|
||||
if (texture->isDepth)
|
||||
{
|
||||
forceLogDebug_printf("Unsupported clear depth as color");
|
||||
cemuLog_logDebug(LogType::Force, "Unsupported clear depth as color");
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -283,7 +283,7 @@ void LatteShader_UpdatePSInputs(uint32* contextRegisters)
|
||||
#ifdef CEMU_DEBUG_ASSERT
|
||||
if (semanticMask[psSemanticId >> 3] & (1 << (psSemanticId & 7)))
|
||||
{
|
||||
forceLogDebug_printf("SemanticId already used");
|
||||
cemuLog_logDebug(LogType::Force, "SemanticId already used");
|
||||
}
|
||||
semanticMask[psSemanticId >> 3] |= (1 << (psSemanticId & 7));
|
||||
#endif
|
||||
@@ -339,7 +339,7 @@ void LatteShader_CreateRendererShader(LatteDecompilerShader* shader, bool compil
|
||||
(shader->baseHash == 0x15bc7edf9de2ed30 || shader->baseHash == 0x83a697d61a3b9202 ||
|
||||
shader->baseHash == 0x97bc44a5028381c6 || shader->baseHash == 0x24838b84d15a1da1))
|
||||
{
|
||||
forceLogDebug_printf("Filtered shader to avoid AMD crash");
|
||||
cemuLog_logDebug(LogType::Force, "Filtered shader to avoid AMD crash");
|
||||
shader->shader = nullptr;
|
||||
shader->hasError = true;
|
||||
return;
|
||||
@@ -357,7 +357,7 @@ void LatteShader_FinishCompilation(LatteDecompilerShader* shader)
|
||||
{
|
||||
if (shader->hasError)
|
||||
{
|
||||
forceLogDebug_printf("LatteShader_finishCompilation(): Skipped because of error in shader %llx", shader->baseHash);
|
||||
cemuLog_logDebug(LogType::Force, "LatteShader_finishCompilation(): Skipped because of error in shader {:x}", shader->baseHash);
|
||||
return;
|
||||
}
|
||||
shader->shader->WaitForCompiled();
|
||||
|
||||
@@ -101,7 +101,7 @@ void LatteSurfaceCopy_copySurfaceNew(MPTR srcPhysAddr, MPTR srcMipAddr, uint32 s
|
||||
// download destination texture if it matches known accessed formats
|
||||
if (destinationTexture->width == 8 && destinationTexture->height == 8 && destinationTexture->tileMode == Latte::E_HWTILEMODE::TM_1D_TILED_THIN1)
|
||||
{
|
||||
forceLogDebug_printf("Texture readback after copy for Bayonetta 2 (phys: 0x%08x)", destinationTexture->physAddress);
|
||||
cemuLog_logDebug(LogType::Force, "Texture readback after copy for Bayonetta 2 (phys: 0x{:08x})", destinationTexture->physAddress);
|
||||
LatteTextureReadback_Initate(destinationView);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -302,9 +302,9 @@ void LatteTexture_copyData(LatteTexture* srcTexture, LatteTexture* dstTexture, s
|
||||
LatteTexture_getEffectiveSize(dstTexture, &effectiveWidth_src, &effectiveHeight_src, NULL, 0);
|
||||
|
||||
debug_printf("texture_copyData(): Effective size mismatch\n");
|
||||
forceLogDebug_printf("texture_copyData(): Effective size mismatch (due to texture rule)");
|
||||
forceLogDebug_printf("Destination: origResolution %04dx%04d effectiveResolution %04dx%04d fmt %04x mipIndex %d", srcTexture->width, srcTexture->height, effectiveWidth_dst, effectiveHeight_dst, (uint32)dstTexture->format, 0);
|
||||
forceLogDebug_printf("Source: origResolution %04dx%04d effectiveResolution %04dx%04d fmt %04x mipIndex %d", srcTexture->width, srcTexture->height, effectiveWidth_src, effectiveHeight_src, (uint32)srcTexture->format, 0);
|
||||
cemuLog_logDebug(LogType::Force, "texture_copyData(): Effective size mismatch (due to texture rule)");
|
||||
cemuLog_logDebug(LogType::Force, "Destination: origResolution {:04}x{:04} effectiveResolution {:04}x{:04} fmt {:04x} mipIndex {}", srcTexture->width, srcTexture->height, effectiveWidth_dst, effectiveHeight_dst, (uint32)dstTexture->format, 0);
|
||||
cemuLog_logDebug(LogType::Force, "Source: origResolution {:04}x{:04} effectiveResolution {:04}x{:04} fmt {:04x} mipIndex {}", srcTexture->width, srcTexture->height, effectiveWidth_src, effectiveHeight_src, (uint32)srcTexture->format, 0);
|
||||
return;
|
||||
}
|
||||
catchOpenGLError();
|
||||
@@ -384,7 +384,7 @@ void LatteTexture_CopySlice(LatteTexture* srcTexture, sint32 srcSlice, sint32 sr
|
||||
cemuLog_log(LogType::Force, "Source: {:08x} origResolution {:4}/{:4} effectiveResolution {:4}/{:4} fmt {:04x} mipIndex {} ratioW/H: {:.4}/{:.4}", srcTexture->physAddress, srcTexture->width, srcTexture->height, effectiveWidth_src, effectiveHeight_src, (uint32)srcTexture->format, srcMip, ratioWidth_src, ratioHeight_src);
|
||||
cemuLog_log(LogType::Force, "Destination: {:08x} origResolution {:4}/{:4} effectiveResolution {:4}/{:4} fmt {:04x} mipIndex {} ratioW/H: {:.4}/{:.4}", dstTexture->physAddress, dstTexture->width, dstTexture->height, effectiveWidth_dst, effectiveHeight_dst, (uint32)dstTexture->format, dstMip, ratioWidth_dst, ratioHeight_dst);
|
||||
}
|
||||
//forceLogDebug_printf("If these textures are not meant to share data you can ignore this");
|
||||
//cemuLog_logDebug(LogType::Force, "If these textures are not meant to share data you can ignore this");
|
||||
return;
|
||||
}
|
||||
// todo - store 'lastUpdated' value per slice/mip and copy it's value when copying the slice data
|
||||
@@ -877,7 +877,7 @@ VIEWCOMPATIBILITY LatteTexture_CanTextureBeRepresentedAsView(LatteTexture* baseT
|
||||
if (baseTexture->isDepth && baseTexture->format != format)
|
||||
{
|
||||
// depth view with different format
|
||||
forceLogDebug_printf("_createMapping(): Incompatible depth view format");
|
||||
cemuLog_logDebug(LogType::Force, "_createMapping(): Incompatible depth view format");
|
||||
return VIEW_NOT_COMPATIBLE;
|
||||
}
|
||||
|
||||
@@ -929,7 +929,7 @@ VIEWCOMPATIBILITY LatteTexture_CanTextureBeRepresentedAsView(LatteTexture* baseT
|
||||
if (baseTexture->isDepth && baseTexture->format != format)
|
||||
{
|
||||
// depth view with different format
|
||||
forceLogDebug_printf("_createMapping(): Incompatible depth view format");
|
||||
cemuLog_logDebug(LogType::Force, "_createMapping(): Incompatible depth view format");
|
||||
return VIEW_NOT_COMPATIBLE;
|
||||
}
|
||||
|
||||
@@ -1003,7 +1003,7 @@ LatteTextureView* LatteTexture_CreateMapping(MPTR physAddr, MPTR physMipAddr, si
|
||||
{
|
||||
if (format == Latte::E_GX2SURFFMT::INVALID_FORMAT)
|
||||
{
|
||||
forceLogDebug_printf("LatteTexture_CreateMapping(): Invalid format");
|
||||
cemuLog_logDebug(LogType::Force, "LatteTexture_CreateMapping(): Invalid format");
|
||||
return nullptr;
|
||||
}
|
||||
// note: When creating an existing texture, we only allow mip and slice expansion at the end
|
||||
|
||||
@@ -818,7 +818,7 @@ void LatteTextureLoader_writeReadbackTextureToMemory(LatteTextureDefinition* tex
|
||||
}
|
||||
else
|
||||
{
|
||||
forceLogDebug_printf("Linear texture readback unsupported for format 0x%04x", (uint32)textureData->format);
|
||||
cemuLog_logDebug(LogType::Force, "Linear texture readback unsupported for format 0x{:04x}", (uint32)textureData->format);
|
||||
debugBreakpoint();
|
||||
}
|
||||
return;
|
||||
@@ -856,7 +856,7 @@ void LatteTextureLoader_writeReadbackTextureToMemory(LatteTextureDefinition* tex
|
||||
}
|
||||
else
|
||||
{
|
||||
forceLogDebug_printf("Texture readback unsupported format %04x for tileMode 0x%02x", (uint32)textureData->format, textureData->tileMode);
|
||||
cemuLog_logDebug(LogType::Force, "Texture readback unsupported format {:04x} for tileMode 0x{:02x}", (uint32)textureData->format, textureData->tileMode);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -932,7 +932,7 @@ void LatteDecompiler_ParseTEXClause(LatteDecompilerShader* shaderContext, LatteD
|
||||
}
|
||||
else
|
||||
{
|
||||
forceLogDebug_printf("Unsupported tex instruction %d\n", inst0_4);
|
||||
cemuLog_logDebug(LogType::Force, "Unsupported tex instruction {}", inst0_4);
|
||||
shaderContext->hasError = true;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -310,7 +310,7 @@ void LatteDecompiler_analyzeTEXClause(LatteDecompilerShaderContext* shaderContex
|
||||
{
|
||||
if (texInstruction.textureFetch.textureIndex < 0 || texInstruction.textureFetch.textureIndex >= LATTE_NUM_MAX_TEX_UNITS)
|
||||
{
|
||||
forceLogDebug_printf("Shader %llx has out of bounds texture access (texture %d)", shaderContext->shader->baseHash, (sint32)texInstruction.textureFetch.textureIndex);
|
||||
cemuLog_logDebug(LogType::Force, "Shader {:16x} has out of bounds texture access (texture {})", shaderContext->shader->baseHash, (sint32)texInstruction.textureFetch.textureIndex);
|
||||
continue;
|
||||
}
|
||||
if( texInstruction.textureFetch.samplerIndex < 0 || texInstruction.textureFetch.samplerIndex >= 0x12 )
|
||||
@@ -984,7 +984,7 @@ void LatteDecompiler_analyze(LatteDecompilerShaderContext* shaderContext, LatteD
|
||||
cemu_assert_debug(false);
|
||||
}
|
||||
if(list_subroutineAddrs.empty() == false)
|
||||
forceLogDebug_printf("Todo - analyze shader subroutine CF stack");
|
||||
cemuLog_logDebug(LogType::Force, "Todo - analyze shader subroutine CF stack");
|
||||
// TF mode
|
||||
if (shaderContext->options->useTFViaSSBO && shaderContext->output->streamoutBufferWriteMask.any())
|
||||
{
|
||||
|
||||
@@ -488,7 +488,7 @@ void LatteDecompiler_emitAttributeDecodeGLSL(LatteDecompilerShader* shaderContex
|
||||
}
|
||||
else
|
||||
{
|
||||
forceLogDebug_printf("_emitAttributeDecodeGLSL(): Unsupported fmt {:02x} nfa {} signed {} endian {}\n", attrib->format, attrib->nfa, attrib->isSigned, attrib->endianSwap);
|
||||
cemuLog_logDebug(LogType::Force, "_emitAttributeDecodeGLSL(): Unsupported fmt {:02x} nfa {} signed {} endian {}", attrib->format, attrib->nfa, attrib->isSigned, attrib->endianSwap);
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user