mirror of
https://github.com/libretro/RetroArch
synced 2025-02-03 17:54:04 +00:00
(CTR/3DS) reduce memory usage.
build fix.
This commit is contained in:
parent
3687b29d9a
commit
8cc805c38a
@ -27,7 +27,7 @@ CTR_STACK_SIZE = 0x400000
|
||||
else
|
||||
CTR_STACK_SIZE = 0x100000
|
||||
endif
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
include ctr/Makefile.cores
|
||||
|
||||
@ -178,9 +178,7 @@ else
|
||||
OBJS += menu/menu_entry.o
|
||||
OBJS += menu/menu_entries.o
|
||||
OBJS += menu/menu_setting.o
|
||||
OBJS += menu/menu_list.o
|
||||
OBJS += menu/menu_cbs.o
|
||||
OBJS += menu/menu_video.o
|
||||
OBJS += menu/cbs/menu_cbs_ok.o
|
||||
OBJS += menu/cbs/menu_cbs_cancel.o
|
||||
OBJS += menu/cbs/menu_cbs_select.o
|
||||
|
@ -11,6 +11,7 @@ ifeq ($(LIBRETRO), gambatte)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), gpsp)
|
||||
APP_TITLE = gpSP Libretro
|
||||
@ -23,6 +24,7 @@ else ifeq ($(LIBRETRO), gpsp)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), fceumm)
|
||||
APP_TITLE = FCeumm Libretro
|
||||
@ -35,6 +37,7 @@ else ifeq ($(LIBRETRO), fceumm)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), nestopia)
|
||||
APP_TITLE = Nestopia Libretro
|
||||
@ -47,6 +50,7 @@ else ifeq ($(LIBRETRO), nestopia)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
|
||||
else ifeq ($(LIBRETRO), nxengine)
|
||||
APP_TITLE = NXengine Libretro
|
||||
@ -59,6 +63,7 @@ else ifeq ($(LIBRETRO), nxengine)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), genesis_plus_gx)
|
||||
APP_TITLE = Genesis Plus GX Libretro
|
||||
@ -71,6 +76,7 @@ else ifeq ($(LIBRETRO), genesis_plus_gx)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
|
||||
else ifeq ($(LIBRETRO), catsfc)
|
||||
APP_TITLE = CATSFC Libretro
|
||||
@ -83,6 +89,7 @@ else ifeq ($(LIBRETRO), catsfc)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), mednafen_wswan)
|
||||
APP_TITLE = Mednafen wswan Libretro
|
||||
@ -95,6 +102,7 @@ else ifeq ($(LIBRETRO), mednafen_wswan)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
|
||||
else ifeq ($(LIBRETRO), mednafen_vb)
|
||||
APP_TITLE = Mednafen VB Libretro
|
||||
@ -107,6 +115,7 @@ else ifeq ($(LIBRETRO), mednafen_vb)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
|
||||
else ifeq ($(LIBRETRO), mednafen_ngp)
|
||||
APP_TITLE = Mednafen NGP Libretro
|
||||
@ -119,6 +128,7 @@ else ifeq ($(LIBRETRO), mednafen_ngp)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
|
||||
else ifeq ($(LIBRETRO), 2048)
|
||||
APP_TITLE = 2048 Libretro
|
||||
@ -131,6 +141,7 @@ else ifeq ($(LIBRETRO), 2048)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
|
||||
else ifeq ($(LIBRETRO), picodrive)
|
||||
APP_TITLE = Picodrive Libretro
|
||||
@ -143,6 +154,7 @@ else ifeq ($(LIBRETRO), picodrive)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), snes9x_next)
|
||||
APP_TITLE = Snes9x Next Libretro
|
||||
@ -155,6 +167,7 @@ else ifeq ($(LIBRETRO), snes9x_next)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), mgba)
|
||||
APP_TITLE = mGBA Libretro
|
||||
@ -167,6 +180,7 @@ else ifeq ($(LIBRETRO), mgba)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), quicknes)
|
||||
APP_TITLE = QuickNES Libretro
|
||||
@ -179,6 +193,7 @@ else ifeq ($(LIBRETRO), quicknes)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), fb_alpha_neo)
|
||||
APP_TITLE = Neo Geo (FB Alpha)
|
||||
@ -191,6 +206,7 @@ else ifeq ($(LIBRETRO), fb_alpha_neo)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
APP_SYSTEM_MODE = 80MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), fb_alpha_cps1)
|
||||
APP_TITLE = Final Burn Alpha - CPS-1
|
||||
@ -203,6 +219,7 @@ else ifeq ($(LIBRETRO), fb_alpha_cps1)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), fb_alpha_cps2)
|
||||
APP_TITLE = Final Burn Alpha - CPS-2
|
||||
@ -215,6 +232,7 @@ else ifeq ($(LIBRETRO), fb_alpha_cps2)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
APP_SYSTEM_MODE = 80MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), catsfc_plus)
|
||||
APP_TITLE = CATSFC Plus Libretro
|
||||
@ -227,6 +245,7 @@ else ifeq ($(LIBRETRO), catsfc_plus)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), mednafen_pce_fast)
|
||||
APP_TITLE = Mednafen/Beetle PCE FAST
|
||||
@ -239,6 +258,7 @@ else ifeq ($(LIBRETRO), mednafen_pce_fast)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
else ifeq ($(LIBRETRO), pcsx_rearmed)
|
||||
APP_TITLE = PCSX ReARMed
|
||||
@ -251,6 +271,7 @@ else ifeq ($(LIBRETRO), pcsx_rearmed)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
CTR_LINEAR_HEAP_SIZE = 0xE00000
|
||||
|
||||
else ifeq ($(LIBRETRO), fmsx)
|
||||
APP_TITLE = fMSX
|
||||
@ -263,5 +284,6 @@ else ifeq ($(LIBRETRO), fmsx)
|
||||
#APP_AUDIO = ctr/silent.wav
|
||||
#APP_SYSTEM_MODE = 64MB
|
||||
#APP_SYSTEM_MODE_EXT = Legacy
|
||||
#CTR_LINEAR_HEAP_SIZE = 0x600000
|
||||
|
||||
endif
|
||||
|
@ -34,7 +34,6 @@
|
||||
#include "../../file_ext.h"
|
||||
#else
|
||||
#include "../../menu/menu.h"
|
||||
#include "../../menu/menu_list.h"
|
||||
#endif
|
||||
|
||||
const char* elf_path_cst = "sdmc:/retroarch/test.3dsx";
|
||||
@ -50,7 +49,7 @@ extern char* fake_heap_start;
|
||||
extern char* fake_heap_end;
|
||||
u32 __linear_heap;
|
||||
u32 __heapBase;
|
||||
static u32 heap_size;
|
||||
u32 heap_size;
|
||||
extern u32 linear_heap_size;
|
||||
|
||||
extern void (*__system_retAddr)(void);
|
||||
|
@ -258,12 +258,12 @@ static void* ctr_init(const video_info_t* video,
|
||||
ctr->vp.full_height = CTR_TOP_FRAMEBUFFER_HEIGHT;
|
||||
|
||||
|
||||
ctr->display_list_size = 0x40000;
|
||||
ctr->display_list_size = 0x400;
|
||||
ctr->display_list = linearAlloc(ctr->display_list_size * sizeof(uint32_t));
|
||||
GPU_Reset(NULL, ctr->display_list, ctr->display_list_size);
|
||||
|
||||
ctr->texture_width = 1024;
|
||||
ctr->texture_height = 512;
|
||||
ctr->texture_width = video->input_scale * RARCH_SCALE_BASE;
|
||||
ctr->texture_height = video->input_scale * RARCH_SCALE_BASE;
|
||||
ctr->texture_linear =
|
||||
linearMemAlign(ctr->texture_width * ctr->texture_height * sizeof(uint32_t), 128);
|
||||
ctr->texture_swizzled =
|
||||
@ -281,9 +281,9 @@ static void* ctr_init(const video_info_t* video,
|
||||
ctr->menu.texture_width = 512;
|
||||
ctr->menu.texture_height = 512;
|
||||
ctr->menu.texture_linear =
|
||||
linearMemAlign(ctr->texture_width * ctr->texture_height * sizeof(uint16_t), 128);
|
||||
linearMemAlign(ctr->menu.texture_width * ctr->menu.texture_height * sizeof(uint16_t), 128);
|
||||
ctr->menu.texture_swizzled =
|
||||
linearMemAlign(ctr->texture_width * ctr->texture_height * sizeof(uint16_t), 128);
|
||||
linearMemAlign(ctr->menu.texture_width * ctr->menu.texture_height * sizeof(uint16_t), 128);
|
||||
|
||||
ctr->menu.frame_coords = linearAlloc(sizeof(ctr_vertex_t));
|
||||
|
||||
@ -459,6 +459,11 @@ static bool ctr_frame(void* data, const void* frame,
|
||||
frames = 0;
|
||||
}
|
||||
|
||||
// extern u32 __linear_heap_size;
|
||||
// extern u32 gpuCmdBufOffset;
|
||||
// extern u32 heap_size;
|
||||
// printf("0x%08X 0x%08X 0x%08X\r", heap_size, gpuCmdBufOffset, (__linear_heap_size - linearSpaceFree() +0x3FF) & ~0x3FF);
|
||||
// printf("fps: %8.4f frames: %i (%X)\r", fps, total_frames++, (__linear_heap_size - linearSpaceFree()));
|
||||
printf("fps: %8.4f frames: %i\r", fps, total_frames++);
|
||||
fflush(stdout);
|
||||
|
||||
@ -506,7 +511,7 @@ static bool ctr_frame(void* data, const void* frame,
|
||||
GSPGPU_FlushDataCache(NULL, ctr->texture_linear,
|
||||
ctr->texture_width * ctr->texture_height * sizeof(uint16_t));
|
||||
|
||||
ctrGuCopyImage(false, ctr->texture_linear, ctr->texture_width, ctr->menu.texture_height, CTRGU_RGB565, false,
|
||||
ctrGuCopyImage(false, ctr->texture_linear, ctr->texture_width, ctr->texture_height, CTRGU_RGB565, false,
|
||||
ctr->texture_swizzled, ctr->texture_width, CTRGU_RGB565, true);
|
||||
|
||||
}
|
||||
|
@ -54,6 +54,8 @@
|
||||
#ifndef DEBUG_HOLD
|
||||
void wait_for_input(void);
|
||||
#define DEBUG_HOLD() do{printf("%s@%s:%d.\n",__FUNCTION__, __FILE__, __LINE__);fflush(stdout);wait_for_input();}while(0)
|
||||
#define DEBUG_VAR(X) printf( "%-20s: 0x%08X\n", #X, (u32)(X))
|
||||
#define DEBUG_VAR64(X) printf( #X"\r\t\t\t\t : 0x%016llX\n", (u64)(X))
|
||||
#endif
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user