From c87fbf3ff2efb7a4aa019bdb5f985921039aefa6 Mon Sep 17 00:00:00 2001 From: anod <182859762@qq.com> Date: Wed, 19 Oct 2022 21:56:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8D=A2=E6=88=90RGBA8=E8=AF=95=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/arm11/main.c | 2 +- source/arm11/open_agb_firm.c | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/source/arm11/main.c b/source/arm11/main.c index 70a4fe7..1ba0b13 100644 --- a/source/arm11/main.c +++ b/source/arm11/main.c @@ -51,7 +51,7 @@ int main(void) { Result res = fMount(FS_DRIVE_SDMC); if(res == RES_OK) res = oafParseConfigEarly(); - GFX_init(GFX_BGR8, GFX_RGB565); + GFX_init(GFX_RGBA8, GFX_RGB565); setBacklight(); consoleInit(SCREEN_BOT, NULL); //CODEC_init(); diff --git a/source/arm11/open_agb_firm.c b/source/arm11/open_agb_firm.c index 29ed774..d0cfa7f 100644 --- a/source/arm11/open_agb_firm.c +++ b/source/arm11/open_agb_firm.c @@ -682,10 +682,10 @@ static void gbaGfxHandler(void *args) // 0x18180000 <----------> screen_top + 16*240*3 + 120 是正确对准,左边对16求余为0,右边为8 // 现在右边加上8,是2|2/3个像素 GX_displayTransfer((u32*)(0x18180000 + 16*240*3), 368u<<16 | 240u, - GFX_getFramebuffer(SCREEN_TOP) + 16*240*2 + 80, 368u<<16 | 240u, 2u<<12 | 1u<<8); + GFX_getFramebuffer(SCREEN_TOP) + 16*240*4 + 160, 368u<<16 | 240u, 0u<<12 | 1u<<8); } else GX_displayTransfer((u32*)(0x18180000 + 16*240*3), 368u<<16 | 240u, - GFX_getFramebuffer(SCREEN_TOP) + 16*240*3, 368u<<16 | 240u, 1u<<12 | 1u<<8); + GFX_getFramebuffer(SCREEN_TOP) + 16*240*4, 368u<<16 | 240u, 0u<<12 | 1u<<8); GFX_waitForPPF(); GFX_swapFramebufs(); @@ -912,7 +912,6 @@ Result oafInitAndRun(void) const KHandle frameReadyEvent = createEvent(false); LGYFB_init(frameReadyEvent, g_oafConfig.scaler); // 这里把GBA的输出转换成0x18200000处512x512大小的纹理 patchGbaGpuCmdList(g_oafConfig.scaler); - if( g_oafConfig.scaler == 0 ) GFX_setFramebufFmt(GFX_RGB565, GFX_RGB565); createTask(0x800, 3, gbaGfxHandler, (void*)frameReadyEvent); g_frameReadyEvent = frameReadyEvent;