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

📄 stppage.c

📁 MTK portableDVD 采用mtk1389方案的代码
💻 C
字号:
/**********************************************************************/
/***************    MTK CONFIDENTIAL & COPYRIGHTED     ****************/
/***************                                       ****************/
/***************  $Modtime:: 03/10/27 10:19a   $       ****************/
/***************  $Revision: 2.0 $       ****************/
/***************                                       ****************/
/***************   Description : Setup Page            ****************/
/***************                 Relative routine      ****************/
/***************                                       ****************/
/***************       Company : MediaTek Inc.         ****************/
/***************    Programmer : Peter Huang           ****************/
/**********************************************************************/

#include "general.h"
#include "stposdfn.h"
#include "stpmain.h"

#include SETUP_MENU_FILE


#pragma NOAREGS

#ifdef NEW_RISC_VER//
static BYTE code _pbRISCVer[] = VER_RISC;    
#endif

#ifdef SUPPORT_SENSEKEY
extern BYTE xdata bSenseKEyVersion[10];
#endif


#ifdef STP_DEBUG
extern void DRS232LogS(char *pcStr);
extern void DRS232LogB(BYTE bV1, BYTE bV2, BYTE bV3, BYTE bV4);
#endif


code BYTE _pbVerStr[] = {VER_STR};

void vShowRegion(void) large
{
	BYTE i;
	BYTE bNum;
  BYTE pbStr[6];

	bNum = bEepromReadByte(REGION_CODE_POSITION);

#ifdef HAVE_TRUE_REGION
	#ifdef CANNOT_CHANGE_REGION
       if (bNum != REGION_NO)
	#else
       if (bNum != REGION_NO && bNum != 0)
	#endif	
         {
          bNum = REGION_NO;	
         }
#else
	if (bNum>6 || bNum<0)
        {
         bNum = REGION_NO;	
        }
#endif

	pbStr[0] = 5;

	for(i =1; i < 5; i++)
	{
    pbStr[i] = ' ';
	}
	pbStr[5] = bNum + '0';

  vSetMsgCol4(WB_STP_ITEM, SCOL_BLACK_75P, SCOL_BLACK_75P, SCOL_BLACK_75P, SCOL_WHITE);
	_wStartX = REGION_CODE_POS_X;
	_wStartY = REGION_CODE_POS_Y;
	vOsdShowStr(WB_STP_ITEM, pbStr);
}


void vShowVerPage() large
{
  BYTE i, j;
	BYTE bNum;
  BYTE  pbStr[16];
  sMenu *prMenu;
#ifdef REGIONO_UPGRADE
  BYTE  curtRegNo;
#endif

  prMenu = _rMenuRoot.prMenu[_bMenu];
  
  _wStartX = 30;
  _wStartY = 40;
  _wEndX = STP_MENU_WIDTH - 30;
  _wEndY = STP_MENU_HEIGHT - 40;
  vRectangle(WB_STP_ITEM, 0, 0, TRUE, SCOL_BLACK_75P);
  vPastePanelCorner(TRUE, _wStartY);

  _wStartX = 112;
  _wStartY = 70;
  vSetMsgCol4(WB_STP_ITEM, SCOL_BLACK_75P, SCOL_BLACK_75P, SCOL_BLACK_75P, SCOL_WHITE);
  for (j = 0; j < prMenu->bTotalEntry; j ++)
  {
    vOsdPasteMsgXY(_wStartX, _wStartY, WB_STP_ITEM, prMenu->prEntry[j]->wEntryMsg);
    if(prMenu->prEntry[j]->wType == ENTRY_TYPE_STATIC)
    {
      pbStr[0] = 14;//13->14 change for FW version
      pbStr[3] = pbStr[6] = pbStr[9] = '.';
      pbStr[12] = ' ';
      pbStr[13] = ' ';
      pbStr[14] = ' ';
      pbStr[15] = ' ';//add for FW version
#ifdef NEW_RISC_VER
       if(prMenu->prEntry[j]->wEntryMsg != OSD_MSG_BBK_VER) 
       {
         if(prMenu->prEntry[j]->wEntryMsg != OSD_MSG_RISC) 
          {
          #ifdef SUPPORT_SENSEKEY
         	if(prMenu->prEntry[j]->wEntryMsg == OSD_MSG_DSP) 
          	{
			for(i=1;i<=13;i++)//leguo
			{
				pbStr[i] = ' ';
			}
      		    pbStr[1] = '2';
      		    pbStr[2] = '0';
      		    pbStr[3] = '0';
      		    pbStr[4] = '6';
      		    pbStr[11] = 'K';
      		    pbStr[12] = 'E';
      		    pbStr[13] = 'Y';
		    pbStr[5] = ' ';
		    pbStr[6] = bSenseKEyVersion[1]/10+'0';
		    pbStr[7] = bSenseKEyVersion[1]%10+'0';
		    pbStr[8] = bSenseKEyVersion[2]/10+'0';
		    pbStr[9] = bSenseKEyVersion[2]%10+'0';
		    pbStr[10] = ' ';
         	}
		else
	  #endif
             {
               for(i=0; i<4; i++)
                {
                 pbStr[3*i+1] = bDigToAsc(BCD_HI(bSharedInfo(prMenu->prEntry[j]->wSIPos + i)));
                 pbStr[3*i+2] = bDigToAsc(BCD_LO(bSharedInfo(prMenu->prEntry[j]->wSIPos + i)));
                }
             }
          }
        else
          {
           for(i=1;i<=11;i++)  
             {
              pbStr[i] = _pbRISCVer[i-1];
             }
       #ifdef REGIONO_UPGRADE    //debug by chengbaoyuan 070320
	curtRegNo = bEepromReadByte(REGION_CODE_POSITION);
	pbStr[11]= curtRegNo + 0x30;
       #endif

          }
      }
     else 
      {
        for(i=1;i<=14;i++)//13->14 change for FW version
         {
          pbStr[i] = _pbVerStr[i-1];
         }
      }
#else
      if(prMenu->prEntry[j]->wEntryMsg != OSD_MSG_BBK_VER)
      {
        for(i=0; i<4; i++)
        {
          pbStr[3*i+1] = bDigToAsc(BCD_HI(bSharedInfo(prMenu->prEntry[j]->wSIPos + i)));
          pbStr[3*i+2] = bDigToAsc(BCD_LO(bSharedInfo(prMenu->prEntry[j]->wSIPos + i)));
        }
      }
      else
      {
        pbStr[0] = 14;
        for(i=1;i <= 14;i++)
        {
          pbStr[i] = _pbVerStr[i-1];
        }
      }
#endif
      _wStartX += 160;
      vOsdShowStr(WB_STP_ITEM, pbStr);
      _wStartX -= 160;
    }
		else if(prMenu->prEntry[j]->wType == ENTRY_TYPE_CODE)
		{
			vShowRegion();
		}
    _wStartY += 45;
  }
}


BYTE bInitSetup() large
{
  _bInitStep = STP_INIT_STEP_0;
  
  return(ENTRY_FUN_SHOW_INIT_STEP);
}




⌨️ 快捷键说明

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