📄 upg.c
字号:
/**********************************************************************/
/*************** MTK CONFIDENTIAL & COPYRIGHTED ****************/
/*************** ****************/
/*************** $Modtime:: 08-05-22 13:39 $ ****************/
/*************** $Revision:: 1 $ ****************/
/*************** ****************/
/*************** Description : Setup ADSP ****************/
/*************** relative routine ****************/
/*************** ****************/
/*************** Company : MediaTek Inc. ****************/
/*************** Programmer : Peter Huang ****************/
/**********************************************************************/
#include "general.h"
#include "..\..\common\dsp\dspshm.h"
#pragma NOAREGS
#if (defined(AUTO_SWITCH_USB_MCR)||defined(AUTO_SWITCH_USB_MCR2))
extern BYTE xdata _bSwitchUSBMCRFlag ;
extern BOOL _fgAutoSwitchEnable;
extern BYTE xdata _bInswitchStateCnt;
#endif
#ifdef CANCEL_UPG_SWITCH_TO_DVD
BOOL _fgSwitchtoDVDEnable;
BOOL _fgInUpgradeState;
#endif
#ifdef SUPPORT_ONEKEY_SWITCH_USB_MCR
extern BYTE xdata _bUSBMCRIdx;
#endif
#ifdef DISC_UPDATE_CODE
// *********************************************************************
// Function : void vUpgInit(BYTE fgInit)
// Description :
// Parameter :
// Return : None
// *********************************************************************
void vUpgInit(BYTE fgInit) large
{
/* chnage OSD mode to user mode */
//vOsdShowWb(OSD_WB_USER);
vOsdShowWb(OSD_WB_DISABLE);
#if (defined(AUTO_SWITCH_USB_MCR)||defined(AUTO_SWITCH_USB_MCR2)) //for PL00108256 ,when in upgrade state,we do not allow to switch DEV.
_bSwitchUSBMCRFlag = 0x3F;
#endif
#if (DRAM_SZ == DRAM_2M) || defined(USE_DRAM_CFG1)
vOsdSetMemBlk(OSD_MEM_BLK_DYNAMIC, OSD_MEM_DEFAULT);
#endif
#ifdef ALL_WB_USE_TRUECOLOR
vCreateWB(WB_UPG, TRUE);
vSetWBTcColor(WB_UPG);
#else
vCreateWB(WB_UPG, FALSE);
#endif
vEnableWB(WB_UPG);
vDrawBorderWB(WB_UPG, 0);
vSetMsgCol4(WB_UPG, 0, 0, 0, 3);
vOsdPosPaste(OSD_POS_UPG_HEAD, OSD_MSG_UPG_DET);
vOsdPosPaste(OSD_POS_UPG_DES, OSD_MSG_UPGRADE);
vOsdPosPaste(OSD_POS_UPG_PLAY, OSD_MSG_PLAY_KEY_START);
#ifdef CANCEL_UPG_SWITCH_TO_DVD
_fgSwitchtoDVDEnable = FALSE;
_fgInUpgradeState = TRUE;
#endif
}
// *********************************************************************
// Function : BOOL fgUpgState(void)
// Description :
// Parameter :
// Return : None
// *********************************************************************
BOOL fgUpgState(void) large
{
switch(_bIRKey)
{
case IR_ENTER:
case IR_PLAY:
case IR_PLAY_ENTER:
case IR_PLAY_PAUSE:
//
vWriteDspSharedDInfo(D_LEVEL_THRESHOLD, 0xffffE);
//
vOsdPosPaste(OSD_POS_UPG_RES, OSD_MSG_FILE_COPY);
#ifdef VFDMSG_upg
VfdMsgDirect(VFDMSG_upg);
#endif
vSendUopCmd(UOP_PLAY, 0, 0, 0);
break;
default:
vOsdPosPaste(OSD_POS_UPG_RES, OSD_MSG_CANCEL_UPG);
if(bSharedInfo(SI_DEVICE_ID) == SV_DEVID_CDVDROM)
{
vSendUopCmd(UOP_OPEN_CLOSE, 0, 0, 0);
}
#ifdef CANCEL_UPG_SWITCH_TO_DVD
else if(bSharedInfo(SI_DEVICE_ID)!= SV_DEVID_CDVDROM)
{
_fgSwitchtoDVDEnable = TRUE;
vSetSharedInfo(SI_UPGRADE_ST, SV_UPG_CANCEL);
vSendUopCmd(UOP_CHG_DEV, SV_ASSIGN_DEV, SV_DEVID_CDVDROM, 0); //danvar070921
#ifdef SUPPORT_ONEKEY_SWITCH_USB_MCR
_bUSBMCRIdx = SV_DEVID_CDVDROM;
#endif
}
#endif
vSetExitInputState();
}
return(TRUE);
}
// *********************************************************************
// Function : void vUpgExit(void)
// Description :
// Parameter :
// Return : None
// *********************************************************************
void vUpgExit(void) large
{
vDeleteWB(WB_UPG);
#if (DRAM_SZ == DRAM_2M) || defined(USE_DRAM_CFG1)
vOsdSetMemBlk(OSD_MEM_BLK_STATIC, OSD_MEM_DEFAULT);
#endif
#if 0 //def CANCEL_UPG_SWITCH_TO_DVD
if (_fgSwitchtoDVDEnable == TRUE)
{
vSendUopCmd(UOP_CHG_DEV, SV_ASSIGN_DEV, SV_DEVID_CDVDROM, 0); //danvar070921
#ifdef SUPPORT_ONEKEY_SWITCH_USB_MCR
_bUSBMCRIdx = SV_DEVID_CDVDROM;
#endif
}
#endif
#if (defined(AUTO_SWITCH_USB_MCR)||defined(AUTO_SWITCH_USB_MCR2))
_bSwitchUSBMCRFlag = 0;
_fgAutoSwitchEnable = FALSE;
_bInswitchStateCnt = 0;
#endif
/* restore OSD mode */
vOsdShowWb(OSD_WB_RESTORE);
#ifdef CANCEL_UPG_SWITCH_TO_DVD
if (_fgSwitchtoDVDEnable == TRUE)
{
_fgSwitchtoDVDEnable = FALSE;
}
_fgInUpgradeState = FALSE;
#endif
}
// *********************************************************************
// Function : void vUpgShowState(BYTE bState)
// Description :
// Parameter :
// Return : None
// *********************************************************************
void vUpgShowState(BYTE bState) large
{
switch (bState)
{
case SV_FILE_EXIST:
fgSetPlayPostKey(IR_UPG);
break;
case SV_COPY_RETRY:
vOsdPosPaste(OSD_POS_UPG_RES, OSD_MSG_RETRY_COPY);
break;
case SV_CHKSUM_OK:
vSendUopCmd(UOP_PLAY, 0, 0, 0);
#ifdef DISC_UPG_RESET_DEFAULT
fgEepromWriteByte(RESET_POSITION, SV_ON);
#endif
vOsdPosPaste(OSD_POS_UPG_RES, OSD_MSG_UPGRADING);
break;
case SV_CHKSUM_ERR:
vOsdPosPaste(OSD_POS_UPG_RES, OSD_MSG_CHKSUM_ERR);
break;
}
}
#else /* not define DISC_UPDATE_CODE */
void vUpgExit(void) large { return; }
BOOL fgUpgState(void) large { return (FALSE); }
void vUpgInit(BYTE fgInit) large { return; }
#endif /* DISC_UPDATE_CODE */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -