From 89789b29d7856a8d17bd8e304c89ab2879712349 Mon Sep 17 00:00:00 2001 From: anod <182859762@qq.com> Date: Wed, 19 Oct 2022 18:11:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E7=BC=96=E8=AF=91=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/arm11/open_agb_firm.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/source/arm11/open_agb_firm.c b/source/arm11/open_agb_firm.c index 0004493..81d2504 100644 --- a/source/arm11/open_agb_firm.c +++ b/source/arm11/open_agb_firm.c @@ -675,8 +675,6 @@ static void gbaGfxHandler(void *args) // 地址0x18180000保存的是360x240大小的贴图数据rgb888(序列:↑↘↑) // 地址0x18200000保存的是512x512大小的GBA的240x160贴图数据(序列:→↙→) // 所以GPU做的事情就是将18200000的数据逆时针旋转90° - int src = 16*240*3; - int dst_offset = src_offset; if( g_oafConfig.scaler == 0 ) { int base_offset = 120; // 3ds高240, gba高160,居中需要平移40个像素,rgb888每个像素3字节,共120字节 @@ -684,7 +682,7 @@ static void gbaGfxHandler(void *args) // 0x18180000 <----------> screen_top + 16*240*3 + 120 是正确对准,左边对16求余为0,右边为8 // 现在右边加上8,是2|2/3个像素 GX_displayTransfer((u32*)(0x18180000 + 24*240*3), 300u<<16 | 240u, - GFX_getFramebuffer(SCREEN_BOT) + 40*3, 300u<<16 | 240u, 2u<<12 | 1u<<8); + GFX_getFramebuffer(SCREEN_BOT) + 40*2, 300u<<16 | 240u, 2u<<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);