ej_nvram.c 1.46 KB
#include "MMI_features.h"
#include "MMI_include.h"
#include "ej_api_base.h"
#include "ej_nvram.h"

void ej_read_nvram(void*buf, ej_s32 size)
{
	ej_s32	fp = 0;
	ej_u16	filename[64] = {0};
	
	filename[0] = ej_get_sys_symbol();
	ej_ucs2_strcat((ej_u16*)filename, (const ej_u16*)L":\\ej_nvram.dat");
	fp =FS_Open((const WCHAR *)filename, FS_READ_ONLY);
	ej_simpletts_printf(" ej_read_nvram.fp = %d", fp);	
	
	if(fp < FS_NO_ERROR)
		return;
	FS_Read(fp, buf, size, 0);
	FS_Close(fp);
}

void ej_write_nvram(void* buf, ej_s32 size)
{
	ej_s32	fp = 0;
	ej_u16	filename[64] = {0};

	filename[0] = ej_get_sys_symbol();
	ej_ucs2_strcat((ej_u16*)filename, (const ej_u16*)L":\\ej_nvram.dat");
	fp =FS_Open((const WCHAR *)filename, FS_READ_WRITE);
	ej_simpletts_printf(" ej_write_nvram.fp = %d", fp);	
	
	if(fp < FS_NO_ERROR)
		return;
	FS_Write(fp, buf, size, 0);
	FS_Close(fp);
}

void ej_write_default_nvram(void);
/*检查NVRAM是否大小不对或者未初始化*/
void ej_check_nvram(void)
{
	ej_u16	filename[64] ={0};
	ej_s32	fp = 0;
	
	filename[0] = ej_get_sys_symbol();
	ej_ucs2_strcat((ej_u16*)filename, (const ej_u16*)L":\\ej_nvram.dat");
	fp = FS_Open((const WCHAR *)filename, FS_READ_ONLY);

	ej_simpletts_printf(" ej_check_nvram.fp = %d", fp);	
	if(fp >= FS_NO_ERROR)
	{
		FS_Close(fp);
		return;
	}
	fp = FS_Open((const WCHAR *)filename, FS_CREATE);
	if(fp >= FS_NO_ERROR)
		FS_Close(fp);
	ej_write_default_nvram();	
}


/*写入拨号盘默认值*/
void ej_write_default_nvram(void)
{
	MySimplettsNvramDefault();
}