From 529039f7666692fd528530fef342a58a3084b347 Mon Sep 17 00:00:00 2001 From: StapleButter <thetotalworm@gmail.com> Date: Sat, 27 May 2017 23:47:20 +0200 Subject: * delay 3D rendering a bit (fixes Monster Trucks flickering) * remove logging for ITCM/DTCM --- src/CP15.cpp | 8 ++++---- src/GPU.cpp | 13 ++++++++----- src/GPU2D.cpp | 1 + 3 files changed, 13 insertions(+), 9 deletions(-) (limited to 'src') diff --git a/src/CP15.cpp b/src/CP15.cpp index 4d1fee6..cc6a6af 100644 --- a/src/CP15.cpp +++ b/src/CP15.cpp @@ -64,13 +64,13 @@ void UpdateDTCMSetting() { DTCMBase = DTCMSetting & 0xFFFFF000; DTCMSize = 0x200 << ((DTCMSetting >> 1) & 0x1F); - printf("DTCM [%08X] enabled at %08X, size %X\n", DTCMSetting, DTCMBase, DTCMSize); + //printf("DTCM [%08X] enabled at %08X, size %X\n", DTCMSetting, DTCMBase, DTCMSize); } else { DTCMBase = 0xFFFFFFFF; DTCMSize = 0; - printf("DTCM disabled\n"); + //printf("DTCM disabled\n"); } } @@ -79,12 +79,12 @@ void UpdateITCMSetting() if (Control & (1<<18)) { ITCMSize = 0x200 << ((ITCMSetting >> 1) & 0x1F); - printf("ITCM [%08X] enabled at %08X, size %X\n", ITCMSetting, 0, ITCMSize); + //printf("ITCM [%08X] enabled at %08X, size %X\n", ITCMSetting, 0, ITCMSize); } else { ITCMSize = 0; - printf("ITCM disabled\n"); + //printf("ITCM disabled\n"); } } diff --git a/src/GPU.cpp b/src/GPU.cpp index cef7095..20cfadd 100644 --- a/src/GPU.cpp +++ b/src/GPU.cpp @@ -617,7 +617,14 @@ void StartHBlank(u32 line) DispStat[0] |= (1<<1); DispStat[1] |= (1<<1); - if (VCount < 192) NDS::CheckDMAs(0, 0x02); + if (VCount < 192) + { + NDS::CheckDMAs(0, 0x02); + } + else if (VCount == 215) + { + GPU3D::VCount215(); + } if (DispStat[0] & (1<<4)) NDS::SetIRQ(0, NDS::IRQ_HBlank); if (DispStat[1] & (1<<4)) NDS::SetIRQ(1, NDS::IRQ_HBlank); @@ -725,10 +732,6 @@ void StartScanline(u32 line) { GPU3D::VCount144(); } - else if (VCount == 215) - { - GPU3D::VCount215(); - } } NDS::ScheduleEvent(NDS::Event_LCD, true, HBLANK_CYCLES, StartHBlank, line); diff --git a/src/GPU2D.cpp b/src/GPU2D.cpp index eb6600c..6d92011 100644 --- a/src/GPU2D.cpp +++ b/src/GPU2D.cpp @@ -382,6 +382,7 @@ void GPU2D::DrawScanline(u32 line) // request each 3D scanline in advance // this is required for the threaded mode of the software renderer + // (alternately we could call GetLine() once and store the result somewhere) if (Num == 0) GPU3D::RequestLine(line); -- cgit v1.2.3