UiPlayProcess.c
资源名称:SDK_M5661.rar [点击查看]
上传用户:hjhsjcl
上传日期:2020-09-25
资源大小:11378k
文件大小:19k
源码类别:
压缩解压
开发平台:
C++ Builder
- /*==========================================================================
- Copyright (c) 2004 ALi Corporation. All Rights Reserved
- File:
- content:
- History: Created by Walace2006/05/29
- ==========================================================================*/
- #define _UI_PLAY_PRC_H_
- #include <DP8051XP.H>
- #include "TypeDef.h"
- #include "Const.h"
- #include "Reg5661.h"
- #include "Common.h"
- #include "UiCommon.h"
- #include "SysStrDef.h"
- //#include "Key.h"
- #include "UiPlayCommon.h"
- #include "SaveSetting.h"
- #if(_PM_DVR_)
- #include "ImaAdpcm.h"
- #endif
- #include "UiPlayProcess.h"
- #include "Oled.h"
- #include "OledString.h"
- #include "Playback.h"
- #include "NandFlash.h"
- #include "Idma.h"
- #include "FileSystem.h"
- //#include "OLED.h"
- #include "ClassDataBase.h"
- #include "OledString.h"
- void UiPlayStartInitial(void) large;
- BOOL UiGetSlideShowFile(void);
- void PlayConsumeVarInitial(void);
- BYTE PlayEofProcess(BYTE bPeCommand);
- #if(SETTING_FOR_ICE_START)
- void PlayProcessInitialForIce(void);
- #endif
- #define gxbLastDirNameBuff gxbNameBuf //tne 512 tag
- #define gxbLastFileNameBuff gxbStringBuffer
- //XBYTE gxbLastFileDepth;
- ////////////////////////////////////////////////////////////////////////////////////
- ///////////////////////////////// Ui Header End ///////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////////
- /*--------------------------------------------------------------------------
- Description:
- Main program for TARGET Playback
- Arguments:
- Global arguments:
- Returns:
- --------------------------------------------------------------------------*/
- main(void)
- {
- BYTE bPeCommand;
- bPeCommand=obDCV_INT_FLAG;
- EA=1;
- #if(ICE_REAL_MODE) //vicky061001#2 Debug Play
- EnableTimer0();
- IE=0x83;
- #endif
- PlayConsumeVarInitial();
- switch(gxbPlayProcessCmd&PLAY_PROC_TYPE)
- {
- case PLAY_PROC_INIT:
- UiPlayStartInitial();
- if(gxbModuleState!=(MODULE_PLAY|MODULE_PRC_REC_KEY_END))
- gxbModuleState=(MODULE_PLAY|MODULE_PRC_INIT); //Walace061222#1
- break;
- case PLAY_PROC_EOF_CTRL:
- KeepMemory(RESTORE_MEMORY);
- gpstFileIndex=&stFsFileInf; //Vicky050321#2
- bPeCommand=PlayEofProcess(gxbPlayProcessCmd&PLAY_PROC_CMD);
- PlayEngine(bPeCommand);
- gxbModuleState&=(~MODULE_SUB);
- gxbModuleState|=MODULE_PRC_EOF_CTRL;
- KeepMemory(KEEP_MEMORY);
- break;
- case PLAY_PROC_PE_CMD:
- KeepMemory(RESTORE_MEMORY);
- gpstFileIndex=&stFsFileInf; //Walace061206#1
- PlayEngine(gxbPlayProcessCmd&PLAY_PROC_CMD);
- if((gxbModuleState&MODULE_SUB)==MODULE_FILE_DEL)
- {
- gxbModuleState&=(~MODULE_SUB);
- gxbModuleState|=MODULE_DEL_AFTER_PRC;
- KeepMemory(KEEP_MEMORY);
- }
- else
- gxbModuleState=MODULE_PLAY;
- break;
- default:
- break;
- }
- if(gxbErrCode!=ERR_NO_ERROR) //Walace061025#1
- gxbLastErrCode=gxbErrCode;
- switch(gxbModuleState&MODULE_MASTER)
- {
- case MODULE_PLAY_MENU:
- #if(_PM_DVR_)
- LoadProgram(PM_DVR_MENU,BASIC_CODE_ONLY);
- #else
- LoadProgram(PM_PLAY_MENU,BASIC_CODE_ONLY);
- #endif
- break;
- case MODULE_PLAY:
- #if(_PM_DVR_)
- LoadProgram(PM_PLAY_DVR,BASIC_CODE_ONLY);
- #else
- LoadProgram(PM_PLAY_FAT_LARGE,BASIC_CODE_ONLY);
- #endif
- break;
- case MODULE_PLAY_FLIST:
- #if(_PM_DVR_)
- LoadProgram(PM_DVR_FILE_LIST,BASIC_CODE_ONLY);
- #else
- LoadProgram(PM_PLAY_FILE_LIST,BASIC_CODE_ONLY);
- #endif
- break;
- #if(_PM_DVR_)
- case MODULE_REC_MENU:
- LoadProgram(PM_DVR_REC_MENU,BASIC_CODE_ONLY);
- break;
- #endif
- #if(!_PM_DVR_)
- case MODULE_PLAY_CLIST:
- LoadProgram(PM_CLASS_LIST,BASIC_CODE_ONLY);
- break;
- case MODULE_SLIDE_SHOW:
- LoadProgram(PM_SLIDE_SHOW,BASIC_CODE_ONLY);
- break;
- #endif
- }
- }
- void InitFsStrPtToRoot(void)
- {
- gpstFileIndex->pbFileName=gxbFileName;
- gpstFileIndex->pbLongFileName=gxbLongFileName;
- gpstFileIndex->dwFileSize=0;
- gpstFileIndex->bPathDepth=0;
- gpstFileIndex->dwDirStartSec=gxdwRoot;
- gpstFileIndex->dwDirSec[0]=gxdwRoot;
- gpstFileIndex->wDirOffset[0]=0;
- }
- #if(UI_USE_SLIDE_SHOW)
- BOOL UiGetSlideShowFile(void)
- {
- if(gbFsUnableUse) //Walace060629#2
- return FALSE;
- //3 1.find the correct directory "SLIDESHOW"
- if(!FsOpenFile(FIRST_DIR_IN_DIR))
- return FALSE;
- while(!StrComp(gxbFileName,"SLS ", 8))
- {
- if(!FsOpenFile(NEXT_DIR_IN_DIR))
- return FALSE;
- }
- FsChangeDir(ENTER_DIR);
- //3 2. find the correct file "slide.sls"
- if(!FsOpenFile(FIRST_FILE_IN_DIR))
- return FALSE;
- while(!StrComp(gxbFileName+8,"sls", 3))
- {
- if(!FsOpenFile(NEXT_FILE_IN_DIR))
- return FALSE;
- }
- return TRUE;
- }
- #endif
- void UiSetZeroFile(void)
- {
- gxwTotalFileInAll=0;
- gxwNumTotalFiles=0;
- gxwCurrentFileNum=0;
- gxwTotalFileInDir=0;
- gxwTotalDirInDir=0;
- gxwFileNumInFileList=0;
- gxwCurtFileInAll=0;
- gxwCurtFileInDir=0;
- }
- void PlayGlobalVarInitialize(void) //Walace060518
- {
- gxbMemContorlSts=0;
- gxbUiMenuMainStates=UI_NO_MENU;
- gxbErrCode=0;
- gxbLastErrCode=0;
- gxwCurrentPlayTime=0;
- gxwMusicTotalTime=0;
- gxwUiLastBitRate=0;
- gxwAutoOffCounter=0;
- gxbTargetVolume = FADEOUT_VOL;
- gxbLastVolume = FADEOUT_VOL;
- gxbSysState=S_PE_WAIT;
- gxbAbRepeatSts=AB_REPT_RESET;
- gxbFastPlaySts=PLAY_SPEED_NORMAL;
- //Vicky061001#1
- #if(FF_SOUND_EN)
- gxbFFSound=TRUE;
- #else
- gxbFFSound=FALSE;
- #endif
- //End
- gxbLrcState=0;
- gxbLastLyrcBuf[0]=STRING_TYPE_ASCII;
- gfDelFile=FALSE;
- fGoPrevNext=FALSE;
- gfFillDspBufEn=FALSE;
- gfFirstResume=FALSE; //tne 2005/11/21 #1
- gfChangeMusic=FALSE;
- //tne 2005/08/11
- gxbIntroMode = 0; //Tne051228#1
- gfIntroPlaying=INTRO_NOP;
- gfDspCtrlCdc=FALSE;
- gfCdcAlreadyInit = FALSE;
- #if(_PM_DVR_)
- SetSysSpeed(SYS_SPEED_NORMAL);
- MCU_ACCESS_CODEC_I2S_EN(); /*Renshuo050216#A*/
- obALGPAREG |= 0x04;
- obALGPAREG |= 0x01;
- obALGPAREG |= 0x02;
- MCU_ACCESS_CODEC_I2S_DIS(); /*Renshuo050216#A*/
- SetSysSpeed(SYS_SPEED_UP_UI);
- #endif
- gxbPeDispCmd=UI_PE_NOP;
- gxbLongFileName[0]=STRING_TYPE_UNICODE;
- UiSetZeroFile();
- gpstFileIndex=&stFsFileInf;
- InitFsStrPtToRoot();
- gpstFileIndex=&stUiFileListData;
- InitFsStrPtToRoot();
- }
- void PlayLoadNandSetting(void)
- {
- BYTE bI;
- #if(_PM_DVR_)
- BYTE bRecSource;
- #endif
- NandPrivateEn();
- ReadSettingData(FS_DATA_0_0);
- //NandPrivateDis(); //tne 2006/01/10
- #if(_PM_DVR_)
- /////tne 2006/01/16/////
- gxwEqMode=gxbFsData[SRAM_DVR_EQ+gxwOffsetDataSec];
- gxw3DMode=gxbFsData[SRAM_DVR_3D+gxwOffsetDataSec];
- gxbUserDefEq[0]=gxbFsData[SRAM_DVR_USER_EQ_LV1+gxwOffsetDataSec];
- gxbUserDefEq[1]=gxbFsData[SRAM_DVR_USER_EQ_LV2+gxwOffsetDataSec];
- gxbUserDefEq[2]=gxbFsData[SRAM_DVR_USER_EQ_LV3+gxwOffsetDataSec];
- gxbUserDefEq[3]=gxbFsData[SRAM_DVR_USER_EQ_LV4+gxwOffsetDataSec];
- gxbUserDefEq[4]=gxbFsData[SRAM_DVR_USER_EQ_LV5+gxwOffsetDataSec];
- gxbUserDefEq[5]=gxbFsData[SRAM_DVR_USER_EQ_ALL+gxwOffsetDataSec];
- ////////////////////////
- gxbRepeatMode=gxbFsData[SRAM_DVR_REPEAT_MODE+gxwOffsetDataSec];
- gfPlayAutoSearchFile = ((gxbRepeatMode & REPEAT_SETTING_DIR_FLAG_J)>>7);
- gxbRepeatMode &= REPEAT_SETTING_MODE;
- gxbRecOption=gxbFsData[SRAM_VAD_MODE+gxwOffsetDataSec]; //tne 2006/01/16
- //Renshuo050603#A
- gxdwLastFileSec=*((DWORD*)&gxbFsData[SRAM_DVR_LAST_FILESECTOR+gxwOffsetDataSec]);
- gxdwLastFileSize=*((DWORD*)&gxbFsData[SRAM_DVR_LAST_FILESIZE+gxwOffsetDataSec]);
- gxdwLastFrameNum=*((DWORD*)&gxbFsData[SRAM_DVR_LAST_FRAMENUM+gxwOffsetDataSec]);
- gxbSpectrumMode=gxbFsData[SRAM_SPECTRUM_MODE+gxwOffsetDataSec];
- gxwLastPlayTime=*((WORD*)&gxbFsData[SRAM_LAST_DVR_TIME+gxwOffsetDataSec]);
- gxbPlayClassMode=P_CLASS_MODE_FILE; //UI for class
- #if(_PEDOMETER_Mode_)
- gxbCustomerAge=gxbFsData[SRAM_CUSTOMERAGE+gxwOffsetDataSec];
- gxbUserStanding=gxbFsData[SRAM_CUSTOMERSTATURE+gxwOffsetDataSec];
- gxbUserWeight=gxbFsData[SRAM_CUSTOMERWEIGHT+gxwOffsetDataSec];
- gxbWalkingStride=gxbFsData[SRAM_CUSTOMERSTRIDE+gxwOffsetDataSec];
- gxbCustomerSEX=gxbFsData[SRAM_CUSTOMERSEX+gxwOffsetDataSec];
- #endif
- #else
- /////tne 2006/01/16/////
- gxwEqMode=gxbFsData[SRAM_EQ+gxwOffsetDataSec];
- gxw3DMode=gxbFsData[SRAM_3D+gxwOffsetDataSec];
- gxbUserDefEq[0]=gxbFsData[SRAM_USER_EQ_LV1+gxwOffsetDataSec];
- gxbUserDefEq[1]=gxbFsData[SRAM_USER_EQ_LV2+gxwOffsetDataSec];
- gxbUserDefEq[2]=gxbFsData[SRAM_USER_EQ_LV3+gxwOffsetDataSec];
- gxbUserDefEq[3]=gxbFsData[SRAM_USER_EQ_LV4+gxwOffsetDataSec];
- gxbUserDefEq[4]=gxbFsData[SRAM_USER_EQ_LV5+gxwOffsetDataSec];
- gxbUserDefEq[5]=gxbFsData[SRAM_USER_EQ_ALL+gxwOffsetDataSec];
- ////////////////////////
- gxbRepeatMode=gxbFsData[SRAM_REPT_MODE+gxwOffsetDataSec];
- #if(_PEDOMETER_Mode_)
- gxbCustomerAge=gxbFsData[SRAM_CUSTOMERAGE+gxwOffsetDataSec];
- gxbUserStanding=gxbFsData[SRAM_CUSTOMERSTATURE+gxwOffsetDataSec];
- gxbUserWeight=gxbFsData[SRAM_CUSTOMERWEIGHT+gxwOffsetDataSec];
- gxbWalkingStride=gxbFsData[SRAM_CUSTOMERSTRIDE+gxwOffsetDataSec];
- gxbCustomerSEX=gxbFsData[SRAM_CUSTOMERSEX+gxwOffsetDataSec];
- #endif
- gfPlayAutoSearchFile = ((gxbRepeatMode & REPEAT_SETTING_DIR_FLAG_J)>>7);
- gxbRepeatMode &= REPEAT_SETTING_MODE;
- //Renshuo050603#A
- gxdwLastFileSec=*((DWORD*)&gxbFsData[SRAM_PLAY_LAST_FILESECTOR+gxwOffsetDataSec]);
- gxdwLastFileSize=*((DWORD*)&gxbFsData[SRAM_PLAY_LAST_FILESIZE+gxwOffsetDataSec]);
- gxdwLastFrameNum=*((DWORD*)&gxbFsData[SRAM_PLAY_LAST_FRAMENUM+gxwOffsetDataSec]);
- gxbSpectrumMode=gxbFsData[SRAM_SPECTRUM_MODE+gxwOffsetDataSec];
- gxwLastPlayTime=*((WORD*)&gxbFsData[SRAM_LAST_PLAY_TIME+gxwOffsetDataSec]);
- #if(UI_USE_SLIDE_SHOW)
- gxbSlideShowSet = gxbFsData[SRAM_SLIDE_SHOW_DATA+gxwOffsetDataSec]; //Walace060220#1
- #endif
- //Ui for class
- #if(UI_USE_CLASS_LIST)
- //tne CDB for SD
- if( ((gxbStorage==STOR_NAND)&&(gxbFsData[SRAM_MSC_MODIFY_FLAG+gxwOffsetDataSec]==MSC_DATA_NOT_MODIFIED)) ||
- ((gxbStorage!=STOR_NAND)&&(gxbFsData[SRAM_SD_MODIFY_FLAG+gxwOffsetDataSec]==SD_DATA_NOT_MODIFIED)) )
- {
- gxbPlayClassMode=gxbFsData[SRAM_PLAY_CLASS_MODE+gxwOffsetDataSec];
- gdwCdbAddPoint=*((DWORD*)&gxbFsData[SRAM_CLASS_ADDR_POINT+gxwOffsetDataSec]);
- gxwCurtFileInAllClass=*((WORD*)&gxbFsData[SRAM_FILE_NUM_IN_ALL_CLASS+gxwOffsetDataSec]);
- gxwTotalFileInAllClass=*((WORD*)&gxbFsData[SRAM_TOTAL_NUM_IN_ALL_CLASS+gxwOffsetDataSec]);
- gxwTotalFileInClass=*((WORD*)&gxbFsData[SRMA_TOTAL_NUM_IN_CLASS+gxwOffsetDataSec]);
- //tne 2006/01/10 //Force to use file play to avoid playing illegal file if user don't power off safely
- if(gxbPlayClassMode!=P_CLASS_MODE_FILE)
- {
- gxbFsData[SRAM_PLAY_CLASS_MODE+gxwOffsetDataSec]=P_CLASS_MODE_FILE;
- FsWrite(SAVE_SETTING_NAND_ADD,1,FS_DATA_0_0);
- NandFinishJob();
- }
- }
- else
- #endif
- {
- gxbPlayClassMode=P_CLASS_MODE_FILE;
- gdwCdbAddPoint=CDB_NULL_POINT;
- }
- #endif
- #if(_PM_DVR_)
- //restore last record file
- gxbLastDirNameBuff[0]=0;
- for(bRecSource=0;bRecSource<REC_DIR_NUM;bRecSource++)
- {
- //Only compare 2 words here for code size & speed
- if( (gxbFsData[SRAM_LAST_DVR_FILE+gxwOffsetDataSec]==gxbUiFileName[bRecSource][0]) &&
- (gxbFsData[SRAM_LAST_DVR_FILE+gxwOffsetDataSec+1]==gxbUiFileName[bRecSource][1]) )
- {
- for(bI=0;bI<11;bI++)
- {
- gxbLastDirNameBuff[bI]=gxbUiDirName[bRecSource][bI];
- gxbLastFileNameBuff[bI]=gxbFsData[SRAM_LAST_DVR_FILE+bI+gxwOffsetDataSec];
- }
- break;
- }
- }
- gxbLastFileDepth=1;
- #else
- for(bI=0;bI<(MAX_PATH_DEPTH-1)*11;bI++)
- gxbLastDirNameBuff[bI]=gxbFsData[SRAM_PLAY_PATH_START+bI+gxwOffsetDataSec];
- for(bI=0;bI<11;bI++)
- gxbLastFileNameBuff[bI]=gxbFsData[SRAM_LAST_PLAY_FILE+bI+gxwOffsetDataSec];
- gxbLastFileDepth=gxbFsData[SRAM_PLAY_PATH_DEPTH+gxwOffsetDataSec];
- #endif
- NandPrivateDis(); //tne 2006/01/10
- #if(!UI_USE_FILE_LIST)
- gfPlayAutoSearchFile=TRUE;
- #endif
- }
- void UiPlayStartFileInitial()
- {
- BYTE bI;
- gpstFileIndex=&stUiFileListData;
- InitFsStrPtToRoot();
- gxwTotalFileInAll=UiCountFileInDir(COUNT_ALL_PLAYBACK);
- if(gxwTotalFileInAll==0)
- {
- UiSetZeroFile();
- gxbErrCode=ERR_FS_NO_FILE_FOUND;
- goto FINISH_LAST_PLAY_JOB;
- }
- if(gxbPlayClassMode!=P_CLASS_MODE_FILE)
- goto FINISH_LAST_PLAY_JOB;
- //Search last play dir
- InitFsStrPtToRoot();
- #define bDepth bI
- for(bDepth=1;bDepth<=gxbLastFileDepth;bDepth++)
- {
- if(UiSearchFile(ALL_DIR_IN_DIR,(PBYTE)(gxbLastDirNameBuff+(bDepth-1)*11)))
- { FsChangeDir(ENTER_DIR); }
- else
- { goto SET_TO_FIRST_PLAYBACK; }
- }
- #undef bDepth
- //search last play file
- gpstFileIndex=&stFsFileInf;
- InitFsStrPtToRoot();
- FsOpenFile(FIRST_PLAYBACK);
- gxwCurtFileInAll=1;
- gxwCurtFileInDir=0;
- while(1)
- {
- //check the same dir
- if(stFsFileInf.dwDirStartSec==stUiFileListData.dwDirStartSec)
- {
- //if(gxwCurtFileInDir==0) //first file in the dir //tne 2005/11/09 not need
- // wFirstNumInDir=gxwCurtFileInAll;
- gxwCurtFileInDir++;
- for(bI=0;bI<11;bI++)
- {
- if(gxbLastFileNameBuff[bI]!=gxbFileName[bI])
- break;
- }
- if(bI==11) //find the same file
- { //OLED
- gfFirstResume=TRUE; //tne 2005/08/19
- break;
- }
- }
- if(gxwCurtFileInAll>=gxwTotalFileInAll) //not found the same file
- goto SET_TO_FIRST_PLAYBACK;
- FsOpenFile(NEXT_PLAYBACK);
- gxwCurtFileInAll++;
- }
- goto FINISH_GET_A_FILE;
- SET_TO_FIRST_PLAYBACK:
- gpstFileIndex=&stFsFileInf;
- InitFsStrPtToRoot();
- FsOpenFile(FIRST_PLAYBACK);
- gxwCurtFileInAll=1;
- gxwCurtFileInDir=1;
- // Here, stFsFileInf -> (last) playback file
- // stUiFileListData -> (last) playback file path (anyfile)
- FINISH_GET_A_FILE:
- stUiFileListData=stFsFileInf; //all point to playback file
- UiGetFileListNum();
- if(gfPlayAutoSearchFile)
- {
- gxwNumTotalFiles=gxwTotalFileInAll;
- gxwCurrentFileNum=gxwCurtFileInAll;
- }
- else
- {
- gxwNumTotalFiles=gxwTotalFileInDir;
- gxwCurrentFileNum=gxwCurtFileInDir;
- }
- gxwFileNumInFileList=gxwCurtFileInDir+gxwTotalDirInDir;
- FsOpenFile(RELOAD_FILE_NAME);
- // if(gxbErrCode==ERR_FS_NO_FILE_FOUND) //clean not found file error
- // gxbErrCode=ERR_NO_ERROR;
- FINISH_LAST_PLAY_JOB:
- gpstFileIndex=&stFsFileInf;
- //tne CDB
- #if(!_PM_DVR_ & UI_USE_CLASS_LIST)
- CdbGetDbSector();
- if( (gxwTotalFileInAll>0) && (gdwCdbAddPoint!=CDB_NULL_POINT) )
- {
- if(gxbPlayClassMode==P_CLASS_MODE_FILE)
- { CdbSearchData(CDB_SEARCH_FIRST_TITLE); }
- else
- {
- CdbGetClassHeader(gdwCdbAddPoint);
- gxwCurtFileInClass=stCdbClassInfo.wItemNum;
- UiOpenClassFile();
- stUiFileListData=stFsFileInf;
- if(gfPlayAutoSearchFile)
- {
- gxwNumTotalFiles=gxwTotalFileInAllClass;
- gxwCurrentFileNum=gxwCurtFileInAllClass;
- }
- else
- {
- gxwNumTotalFiles=gxwTotalFileInClass;
- gxwCurrentFileNum=gxwCurtFileInClass;
- }
- gfFirstResume=TRUE;
- }
- }
- #endif
- //vicky060926#1
- if(gfFirstResume)
- {
- if( (gxdwLastFileSec == 0)
- || (gxdwLastFileSec>= gpstFileIndex->dwFileTotalSector)
- || (gpstFileIndex->dwFileTotalSector != gxdwLastFileSize)
- || (gxwLastPlayTime==0)
- )
- {
- if((gxdwLastFileSec) &&(gxdwLastFileSec==gpstFileIndex->dwFileTotalSector)) //vicky070320
- {
- gxdwLastFileSec--;
- }
- else
- gfFirstResume=FALSE;
- }
- }
- //End
- if(gfFirstResume)
- gxwCurrentPlayTime=gxwLastPlayTime;
- else
- gxdwLastFileSize = 0; //cancel resume
- }
- void UiPlayStartInitial(void) large
- {
- if(gbFsUnableUse)
- {
- //gxbLastErrCode=ERR_FS_INIT_ERROR;
- //vicky070103#3
- gxbLastErrCode=ERR_INIT_FS_ERR;
- OledShowIconNew(2,IM_BG_CLEAR_TO_BLACK,0,0);
- //OLED_CLEAR_ALL();
- //End
- UiCheckIniErr();
- return;
- }
- #if(UI_USE_CHK_CARD)
- if(gxbStorage!=STOR_NAND)
- UiCheckCardRemoved();
- #endif
- PlayGlobalVarInitialize();
- PlayLoadNandSetting();
- PeInit();
- //Walace061030#1 start
- #if(UI_USE_SLIDE_SHOW)
- gpstFileIndex=&stUiFileListData;
- InitFsStrPtToRoot();
- if(UiGetSlideShowFile())
- {
- gxdwSlsFileCurClu=gpstFileIndex->dwFileCurClu;
- gxdwSlsFileStartClu=gpstFileIndex->dwFileStartClu;
- gxdwSlsFileTotalSector=gpstFileIndex->dwFileTotalSector;
- }
- else
- {
- gxdwSlsFileCurClu = 0;
- gxdwSlsFileStartClu = 0;
- gxdwSlsFileTotalSector = 0;
- }
- #endif
- //Walace061030#1 end
- #if(DRM_MODE_EN)
- UiSearchMtpPropFile();
- #else
- gxbExceptFileAttrib=(FILE_ATTR_LABEL|FILE_ATTR_SYSTEM|FILE_ATTR_HIDDEN);
- #endif
- UiPlayStartFileInitial();
- if(gxbErrCode==ERR_NO_ERROR)
- {
- PeStart();
- UiRndPlayInit();
- }
- //if(gxbErrCode!=ERR_NO_ERROR) //tne 2006/07/21 #1 //Walace061025#1
- // gxbLastErrCode=gxbErrCode;
- }
- void PlayConsumeVarInitial(void)
- {
- // set default common value
- gxbCheckBattCounter=0;
- gxbBtyReTestNum=0;
- gxfSourceUnicode=STRING_TYPE_ASCII;
- gfPwOffStop=FALSE;
- gxbBtyLowNum=0;
- gxbPwOffCounter = 0;
- gxbLcdLimitCol=MAX_COLNUM;
- #if(SYS_USE_KEY_HOLD)
- gfLastKeyLocked=KEY_UNLOCK;
- #endif
- UiFileListFileType=UI_FILE_LIST_PLAYBACK;
- #if(UI_USE_SLIDE_SHOW) //Walace060306#2
- gxbSlsCounter=0;
- #endif
- OLED_DISP_MASK_INIT();
- gxbLastFileDepth=0;
- }
- #if(SETTING_FOR_ICE_START)
- void PlayProcessInitialForIce(void)
- {
- SettingForIceStart();
- NandInit();
- FsInit();
- OledInit() ;
- FontTableInit();
- LoadStringTableIndex();
- LoadTransTableIndex();
- EnableTimer0();
- #if(_PM_DVR_)
- gxbDeviceMode=DEV_DVR;
- #else
- gxbDeviceMode=DEV_MUSIC;
- #endif
- gxwProgramIndex=PM_PLAY_PRC;
- gfIntroPlaying=INTRO_NOP;
- gxbIntroMode=0;
- gxwEqMode=EQ_NORMAL;
- gxbRepeatMode=NO_REPEAT;
- gxw3DMode=SOUND_3D_DEFAULT;
- gxwLastTotalFiles=0;
- gdwSampleNum=0;
- gxbExtRtc=0;
- }
- #endif
- BYTE PlayEofProcess(BYTE bPeCommand)
- {
- if(bPeCommand==P_PLAYBACK)
- return bPeCommand;
- if((bPeCommand==P_NEXT)||(bPeCommand==P_PREV)||(bPeCommand==P_RESTART)) //tne 2006/02/15 #1
- {
- if(bPeCommand!=P_RESTART) //tne 2006/02/15 #1
- {
- #if(UI_USE_RND_PLAY_ONE_EN)
- if( (gxbRepeatMode==RND_ALL_REPEAT) || (gxbRepeatMode==RND_REPEAT) )
- #else
- if(gxbRepeatMode==RND_ALL_REPEAT)
- #endif
- bPeCommand=UiSelectRandMusic(bPeCommand);
- else
- bPeCommand=UiSelectNextMusic(bPeCommand);
- }
- gxbAbRepeatSts=AB_REPT_RESET;
- }
- switch(bPeCommand)
- {
- case P_NEXT:
- case P_RESTART:
- case P_LAST:
- gxbFileNumSearchMode=FNUM_SEARCH_NEXT_MODE;
- gfChangeMusic=TRUE;
- break;
- case P_FIRST:
- case P_PREV:
- gxbFileNumSearchMode=FNUM_SEARCH_PREV_MODE;
- gfChangeMusic=TRUE;
- break;
- }
- if(gfChangeMusic) //tne 2005/11/18
- gfFirstResume = FALSE;
- return bPeCommand;
- }