⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sys_load.c

📁 凌阳SPCE3200多媒体开发板自带源程序。共安排了32个子目录
💻 C
字号:
/******************************************************************************
 *
 *     The information contained herein is the exclusive property of
 *   Sunplus Technology Co. And shall not be distributed, reproduced,
 *   or disclosed in whole in part without prior written permission.
 *
 *         (C) COPYRIGHT 2005   SUNPLUS TECHNOLOGY CO.
 *                        ALL RIGHTS RESERVED
 *
 * The entire notice above must be reproduced on all authorized copies.
 *
 *****************************************************************************/

/******************************************************************************
 *  Filename:   	Sys_Load.c
 *  Author:     	Robin.xjliu  (eMail: xjliu@sunplus.com)
 *  Tel:        	00885-028-87848688-5884
 *  Date:       	2005-11-16
 *  Description:	all kinds of load data ways in this file
 *  Reference:
 *  Version history:
 *-----------------------------------------------------------------------------
 *	Version   YYYY-MM-DD-INDEX   Modified By         Description
 *	1.0.0     2005-11-16           xjliu               Create
 *
 *****************************************************************************/
#include ".\System\SystemDefine\Sys_Load.h"

#define SPMP                    0x504D5053	//Header flag "SPMP"
#define idx1                    0x31786469  //Index flag "idx1"
#define PictureFlag1            0x62643030  //00db
#define PictureFlag2            0x62633030  //00dc

extern S32	gl_fp;

void Sys_Init_FS(void)
{
	S32	fp;
	S32	ret;
	
	fs_init();	
	
	ret = fs_mount(0); 
	
	if(ret) 
       	while(1);
}

/**
 * Sys_Load_SDCard - load data from SD Card
 * @pLoadInfo:
 */
/*void Sys_Load_SDCard(const LOAD_INFO *pLoadInfo, U16 nFileNum)
{
	U8 i;
	S32	fp;
	S32	ret;
	
	fs_init();
	
	ret = fs_mount(0); 
	
	if(ret)
       	while(1);
    
    for(i = 0; i < nFileNum; i ++)
    {
		fp = open(pLoadInfo[i].path, pLoadInfo[i].sOpenFlag);
		read(fp, (void *)pLoadInfo[i].nLoadAddress, pLoadInfo[i].nLength);
		close(fp);
    }
}*/

U32 Sys_Load_SDCard(const LOAD_INFO *pLoadInfo, U16 nFileNum)
{
	U8 i;
	S32	fp;
	S32	ret;
	U32  ulNumberOfKF;
	U32  *pAddr_Ptr;
	
	fs_init();
	
	ret = fs_mount(0); 
	
	if(ret)
       	while(1);
    
    for(i = 0; i < nFileNum; i ++)
    {
		fp = open(pLoadInfo[i].path, pLoadInfo[i].sOpenFlag);
		read(fp, (void *)pLoadInfo[i].nLoadAddress, pLoadInfo[i].nLength);
		close(fp);
    }
  
    pAddr_Ptr = (U32 *)pLoadInfo->nLoadAddress;
	//Check header flag
	if (*pAddr_Ptr != SPMP)
	{
		while(1);
	}
	pAddr_Ptr++;
	//Get total KF number
	ulNumberOfKF = *pAddr_Ptr;
	return  ulNumberOfKF;
}

int MP4_Open_File_SDCard(S32 *fp, S32 *fp1,const LOAD_INFO *pLoadInfo)
//int MP4_Open_File_SDCard(S32 *fp, const LOAD_INFO *pLoadInfo)
{    
    
    *fp = open(pLoadInfo->path, pLoadInfo->sOpenFlag);
    *fp1= open(pLoadInfo->path, pLoadInfo->sOpenFlag);	
     
    return 0;    
}

void MP4_Close_File_SDCard(S32 *fp)
{
    close(*fp);
    return 0;
}

int MP4_Open_File_CD(S32 *fp, const LOAD_INFO *pLoadInfo)
{    
//	S32	ret;
//	int status;
//	
//	ret = ret;
//    *fp = iso_open(pLoadInfo->path);
//    return status = 1;    
}

void MP4_Close_File_CD(S32 *fp)
{
 //   iso_close(*fp);
    return 0;
}

⌨️ 快捷键说明

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