mem_port.c

来自「mem_lib,arm9的内存管理系统」· C语言 代码 · 共 102 行

C
102
字号
#include "aktypes.h"
#include "mem_api.h"
#include "Mem_Port.h"
#include "global.h"

static T_U8 gb_RAMBuffer[9 * 1024 * 1024 + 512*1024];

T_VOID Fwl_MallocInit(T_VOID)
{
	Ram_Initial(gb_RAMBuffer, sizeof(gb_RAMBuffer));
}

T_VOID Fwl_hMallocInit(T_VOID)
{
}

#ifdef _MEMORY_DEBUG_
T_pVOID Fwl_MallocAndTrace(T_U32 size, T_pSTR filename, T_U32 line)
{
	return (T_pVOID)Ram_Alloc(size, filename, line);
}

T_pVOID	Fwl_ReMallocAndTrace(T_pVOID var, T_U32 size, T_pSTR filename, T_U32 line)
{
	return (T_pVOID)Ram_Realloc(var, size, filename, line);
}

#endif

T_pVOID Fwl_Malloc(T_U32 size)
{
	return (T_pVOID)Ram_Alloc(size
#ifdef _MEMORY_DEBUG_
	, __FILE__, __LINE__
#endif
		);
}

T_pVOID Fwl_ReMalloc(T_pVOID var, T_U32 size)
{
	return (T_pVOID)Ram_Realloc(var, size
#ifdef _MEMORY_DEBUG_
	, __FILE__, __LINE__
#endif
		);
}

T_pVOID Fwl_hMalloc(T_U32 size)
{
	return (T_pVOID)Ram_Alloc(size
#ifdef _MEMORY_DEBUG_
	, __FILE__, __LINE__
#endif
		);
}

T_pVOID Fwl_Free(T_pVOID var)
{
	return Ram_Free(var);
}

T_pVOID Fwl_hFree(T_pVOID var)
{
	return Ram_Free(var);
}

T_U32 Fwl_GetTotalRamSize(T_VOID)
{
	return Ram_Total();
}

T_U32 Fwl_RamUsedBlock(T_VOID)
{
	return gRam.UsedBlockNum;
}

T_U32 Fwl_GetUsedRamSize(T_VOID)
{
	return Ram_Used();
}

T_pVOID Utl_hRamFree(T_pVOID var)
{	
	return Ram_Free(var);
}

T_U32 Utl_hRamUsedBlock(T_VOID)
{
	return gRam.UsedBlockNum;
}

T_U32 Utl_hRamGetBlockNum(T_VOID)
{
	return	gRam.TotalBlockNum - gRam.UsedBlockNum;	
}

T_U32 Utl_hRamGetBlockLen()
{
	return MEM_BLOCK_LEN;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?