diff --git a/source/arm11/hardware/gfx.c b/source/arm11/hardware/gfx.c index 57371c2..236fed5 100644 --- a/source/arm11/hardware/gfx.c +++ b/source/arm11/hardware/gfx.c @@ -289,10 +289,6 @@ GFX_waitForEvent(GFX_EVENT_PSC1, true); GX_memoryFill((u64*)RENDERBUF_TOP, 1u<<9, SCREEN_SIZE_TOP, 0, (u64*)RENDERBUF_SUB, 1u<<9, SCREEN_SIZE_SUB, 0); GFX_waitForEvent(GFX_EVENT_PSC0, true); - - // The transfer engine is borked on screen init on New 3DS. - // Doing a dummy texture copy fixes it. - GX_textureCopy((u64*)RENDERBUF_TOP, 0, (u64*)RENDERBUF_SUB, 0, 16); } // We must make sure the I2C bus is not used until this finishes diff --git a/source/arm11/menu/menu_util.c b/source/arm11/menu/menu_util.c index 08af864..14fd8a3 100644 --- a/source/arm11/menu/menu_util.c +++ b/source/arm11/menu/menu_util.c @@ -307,6 +307,7 @@ { GX_textureCopy((u64*)RENDERBUF_TOP, 0, (u64*)GFX_getFramebuffer(SCREEN_TOP), 0, SCREEN_SIZE_TOP + SCREEN_SIZE_SUB); + GFX_waitForEvent(GFX_EVENT_PPF, true); // Texture copy GFX_swapFramebufs(); GFX_waitForEvent(GFX_EVENT_PDC0, true); // VBlank }