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

📄 stprisc.c

📁 mtk1389L latest sourcecode enjoy
💻 C
📖 第 1 页 / 共 2 页
字号:

  _bPrevItem = 0xFF;
  _bMenu = LANG_PAGE;
  _bEntry = 1;
  _bDataSel = 0;

  return (ENTRY_FUN_REDRAW);
#endif
//  vRedrawPage();
}
#endif

// *********************************************************************
// Function : BYTE bSetLangCd(WORD wEEPos, BYTE bValue) large
// Description :
// Parameter :
// Return    : None
// *********************************************************************
BYTE bSetLangCd(WORD wEEPos, BYTE bValue) large
{
  BYTE bLc0;
  BYTE bLc1;
  BYTE i;

  //wEEPos = _rMenuRoot.prMenu[_bMenu]->prEntry[_bEntry-1]->prData[_bDataSel]->bVal;

  //if (wEEPos == EV_OTHER)
  if (bValue == EV_OTHER)
  {
#ifdef ENABLE_USER_LANG_CODE
    //return (bSwitchLang(wEEPos, bValue));
    return (bSwitchLang(wEEPos, 0));
#endif
    return (ENTRY_FUN_OK);
  }
  
  i = 0;
  while ((rLangChar[i].wLangItem != 0) && (rLangChar[i].wLangItem != bValue))
    i++;

  if (rLangChar[i].wLangItem != 0)
  {
    bLc0 = rLangChar[i].c0;
    bLc1 = rLangChar[i].c1;
  }
  else
  {
    bLc0 = 'e';
    bLc1 = 'n';
  }

  switch (wEEPos)
  {
    case AUDIO_LCD_POSITION:
      vSystemPrefAuLang(bLc0, bLc1);
      break;

    case SP_LCD_POSITION:
      vSystemPrefSpLang(bLc0, bLc1);
      break;

    case MENU_LCD_POSITION:
      vSystemPrefMenuLang(bLc0, bLc1);
      break;
  }
/*
  wEEPos = _rMenuRoot.prMenu[_bMenu]->prEntry[_bEntry-1]->wEEPos;

  switch (wEEPos)
  {
    case AUDIO_LCD_POSITION:
      vSystemPrefAuLang(bLc0, bLc1);
      break;

    case SP_LCD_POSITION:
      vSystemPrefSpLang(bLc0, bLc1);
      break;

    case MENU_LCD_POSITION:
      vSystemPrefMenuLang(bLc0, bLc1);
      break;
  }
*/
}

// *********************************************************************
// Function : BYTE bSetPrLvl(WORD wEEPos, BYTE bValue) large
// Description :
// Parameter :
// Return    : None
// *********************************************************************
BYTE bSetPrLvl(WORD wEEPos, BYTE bValue) large
{
  if (!_fgNotify)
  {
    return (ENTRY_FUN_OK);
  }
  
  fgEepromWriteByte(PTL_LEVEL_POSITION, bValue);
  vSystemParentalLevel(bValue);

  return (ENTRY_FUN_OK);
}

#if (defined(SCART_SELECTION) && !defined(MTK_TVE))
// *********************************************************************
// Function : void vScartSel(void) large
// Description :
// Parameter :
// Return    : None
// *********************************************************************
BYTE bScartSel(WORD wEEPos, BYTE bValue) large
{
  if (bValue == EV_RGB)
  {
    vTvRGBOut(TRUE);
  }
  else
  {
    vTvRGBOut(FALSE);
  }
  
  return (ENTRY_FUN_OK);
}
#endif /* SCART_SELECTION, !MTK_TVE */

#ifdef MTK_TVE
//[runma] change this function from standard release.
#if 0
// *********************************************************************
// Function : BYTE bSetCompOut(WORD wEEPos, BYTE bValue) large
// Description :
// Parameter :
// Return    : None
// *********************************************************************
BYTE bSetCompOut(WORD wEEPos, BYTE bValue) large
{
  BYTE bTvOut;

  bTvOut = bEepromReadByte(TV_COMP_POS);

  if (bTvOut == SV_TVE_DIRECT)
  {
    if (bEepromReadByte(TV_PSCAN_EN_POS) == SV_ON)
    {
      fgEepromWriteByte(TV_PSCAN_EN_POS, SV_OFF);

#ifdef PSCAN_EN
      vVideoPScanMode(SV_OFF);
#endif
    }
  }

  vSetSharedInfo(SI_TVE_OUT_MODE, bTvOut);
  vNotifySharedInfo(SI_TVE_OUT_MODE, 0, 0);

  //vRedrawPage();
  return (ENTRY_FUN_REDRAW);
}
#endif
//[runma] copy from standard release
// *********************************************************************
// Function : BYTE bSetCompOut(WORD wEEPos, BYTE bValue) large
// Description :
// Parameter :
// Return    : None
// *********************************************************************
BYTE bSetCompOut(WORD wEEPos, BYTE bValue) large
{
  BYTE bTvOut;
  BYTE bPScan;
#if defined(HD_VIDEO) && defined(PSCAN_EN)
  BYTE bTvHdMode = bSharedInfo(SI_HD_MODE);
  #ifdef HD_MODE_OFF_CHG_TO_DEF_SD_MODE
  BYTE bTvSys = bSharedInfo(SI_TV_SYSTEM);
  #endif
  vSetSharedInfo(SI_TV_CHG_MODE, bSharedInfo(SI_HD_MODE));
#endif

  bPScan = bEepromReadByte(TV_PSCAN_EN_POS);
  bTvOut = bEepromReadByte(TV_COMP_POS);

  if ((bTvOut == SV_TVE_DIRECT) || (bTvOut == SV_TVE_SCART))
  {
    if (bPScan != SV_OFF)
    {
      bPScan = SV_OFF;
      fgEepromWriteByte(TV_PSCAN_EN_POS, SV_OFF);
    }
    
#if defined(HD_VIDEO) && defined(PSCAN_EN)
    if ((bTvOut == SV_TVE_DIRECT) && (bTvHdMode != SV_HD_MODE_OFF))
    {
      bTvHdMode = SV_HD_MODE_OFF;
      fgEepromWriteByte(TV_HD_MODE_POS, SV_HD_MODE_OFF);

  #ifdef HD_MODE_OFF_CHG_TO_DEF_SD_MODE
      if (bTvSys != SV_NTSC)
      {
        bTvSys = SV_NTSC;
        fgEepromWriteByte(TV_SYSTEM_POSITION, SV_NTSC);
      }
  #endif
    }
#endif
    
  }
  else if (bTvOut == SV_TVE_VGA)
  {
    if (bPScan != SV_ON)
    {
      bPScan = SV_ON;
      fgEepromWriteByte(TV_PSCAN_EN_POS, SV_ON);
    }

#if defined(HD_VIDEO) && defined(PSCAN_EN)
    if (SV_HD_MODE_1080I == bTvHdMode)
    {
      bTvHdMode = SV_HD_MODE_OFF;
      fgEepromWriteByte(TV_HD_MODE_POS, SV_HD_MODE_OFF);
    }
#endif
  }
#if defined(HD_VIDEO) && defined(PSCAN_EN)
  else
  {
    if ((SV_HD_MODE_720P == bTvHdMode) && (bPScan == SV_OFF))
    {
      bPScan = SV_ON;
      fgEepromWriteByte(TV_PSCAN_EN_POS, SV_ON);
    }
    else if ((SV_HD_MODE_1080I == bTvHdMode) && (bPScan == SV_ON))
    {
      bPScan = SV_OFF;
      fgEepromWriteByte(TV_PSCAN_EN_POS, SV_OFF);
    }
  } 
 
  #ifdef HD_MODE_OFF_CHG_TO_DEF_SD_MODE
  if (bTvSys != bSharedInfo(SI_TV_SYSTEM))
  {
    vVideoTvSystem(bTvSys);
  }
  #endif
#endif

  vVideoPScanMode(bPScan, bTvOut);

#if defined(HD_VIDEO) && defined(PSCAN_EN)
  if (bTvHdMode != bSharedInfo(SI_HD_MODE))
  {
    vSetSharedInfo(SI_HD_MODE, bTvHdMode);
    vNotifySharedInfo(SI_HD_MODE, 0, 0);
  }
#endif

  return (ENTRY_FUN_REDRAW);
}
#endif /* MTK_TVE */

#ifdef SUPPORT_CAPTURE_LOGO
// *********************************************************************
// Function : BYTE bSetLogoType(WORD wItem, BYTE bValue)
// Description :
// Parameter :
// Return    : None
// Note      : this function will be called from play_iso for NUI file list
//             Do not use code segment in this function
// *********************************************************************
BYTE bSetLogoType(WORD wItem, BYTE bValue) large
{
  switch (bValue)
  {
    case EV_LOGO_JACKET:
      bValue = SV_LOGO_JACKET;
      vSetSharedInfo(SI_FLASH_LOGO_IDX, 0);
      break;

    case EV_LOGO_BLUE:
      vSetSharedInfo(SI_DEFAULT_LOGO_CLR_Y, (LOGO_BLUE & 0x000f) << 4);
      vSetSharedInfo(SI_DEFAULT_LOGO_CLR_CB, ((LOGO_BLUE >> 4) & 0x000f) << 4);
      vSetSharedInfo(SI_DEFAULT_LOGO_CLR_CR, ((LOGO_BLUE >> 8) & 0x000f) << 4);
      bValue = SV_LOGO_COLOR;
  #ifdef PLAYER_FLMENU
      vSetSharedInfo(SI_FLASH_LOGO_IDX, 2);
  #else
      vSetSharedInfo(SI_FLASH_LOGO_IDX, 0);
  #endif
      break;

    case EV_LOGO_CAPTURED:
      bValue = SV_LOGO_CAPTURE;
      vSetSharedInfo(SI_FLASH_LOGO_IDX, 0);
      break;

    case EV_LOGO_DEFAULT:
    default:
      bValue = SV_LOGO_FLASH;
      vSetSharedInfo(SI_FLASH_LOGO_IDX, 0);
      break;
  }

  #ifdef PLAYER_FLMENU
  // when enter setup menu from flmenu, do not change share info
  // restore it when exit ISO play module
  if (fgIsInSetupMenu() && fgIsIsoPlay())
  {
    return (ENTRY_FUN_OK);
  }
  #endif

  vSetSharedInfo(SI_DEFAULT_LOGO, bValue);
  vNotifySharedInfo(SI_DEFAULT_LOGO, 0, 0);  

  return (ENTRY_FUN_OK);
}

// *********************************************************************
// Function : BYTE bResetDefault(WORD wItem, BYTE bValue)
// Description :
// Parameter :
// Return    : None
// *********************************************************************
BYTE bCaptureLogo(WORD wItem, BYTE bValue) large
{
  fgSetPlayPostKey(IR_CAPTURE);
  
  return (ENTRY_FUN_EXIT);
}
#endif /* SUPPORT_CAPTURE_LOGO */

#ifdef PAUSE_MODE_SWITCH
BYTE bSetPauseMode(WORD wItem, BYTE bValue) large
{
  switch (bValue)
  {
  case EV_PM_AUTO:
    vSetSharedInfo(SI_PSCAN_PAUSE_MODE, SV_PSCAN_PAUSE_AUTO);
    vSetSharedInfo(SI_V2_PAUSE_SHOW_1FLD, 0);
    vNotifySharedInfo(SI_PSCAN_PAUSE_MODE, 0, 0);
    break;
  case EV_PM_FRAME:
    vSetSharedInfo(SI_PSCAN_PAUSE_MODE, SV_PSCAN_PAUSE_FRAME);
    vSetSharedInfo(SI_V2_PAUSE_SHOW_1FLD, 0);
    vNotifySharedInfo(SI_PSCAN_PAUSE_MODE, 0, 0);
    break;  
  case EV_PM_VIDEO:
    vSetSharedInfo(SI_PSCAN_PAUSE_MODE, SV_PSCAN_PAUSE_FIELD);
    vSetSharedInfo(SI_V2_PAUSE_SHOW_1FLD, 1);
    vNotifySharedInfo(SI_PSCAN_PAUSE_MODE, 0, 0);
    break;
  default:
    // error!
    break;
  }

  return (ENTRY_FUN_OK);
}
#endif /* PAUSE_MODE_SWITCH */

#ifdef SUPPORT_HDMI
BYTE bSetHDMIEnable(WORD wEEPos, BYTE bValue) large
{
  vSetHDMIEnable(bValue);
  vChkValid(CHK_HDMI);
  return (ENTRY_FUN_REDRAW);
  //return (ENTRY_FUN_OK);
}
BYTE bSetHDMIRes(WORD wEEPos, BYTE bValue) large
{
  vSetHDMIRes(bValue);
  return (ENTRY_FUN_OK);
}
BYTE bSetHDMIVideo(WORD wEEPos, BYTE bValue) large
{
  vSetHDMIVideo(bValue);
  return (ENTRY_FUN_OK);
}
BYTE bSetHDMIAudio(WORD wEEPos, BYTE bValue) large
{
  vSetHDMIAudio(bValue);
  return (ENTRY_FUN_OK);
}
BYTE bSetHDMISRC(WORD wEEPos, BYTE bValue) large
{
  vSetHDMISRC(bValue);
  return (ENTRY_FUN_OK);
}
BYTE bSetHDMIDVI(WORD wEEPos, BYTE bValue) large
{
  vSetHDMIDVI(bValue);
  return (ENTRY_FUN_OK);
}
#endif //#ifdef SUPPORT_HDMI

#if defined(HD_VIDEO) && defined(PSCAN_EN)
BYTE bSetHdMode(WORD wEEPos, BYTE bValue) large
{
  BYTE bPScanEn = bEepromReadByte(TV_PSCAN_EN_POS);
  BYTE bTvOut = bEepromReadByte(TV_COMP_POS);
  BYTE bTvSys = bEepromReadByte(TV_SYSTEM_POSITION);
  #ifdef SETUP_INVALID_ITEM
  BYTE bAspect = bEepromReadByte(ASPECT_POSITION);
  #endif

  // keep the previous HD mode in SI_TV_CHG_MODE
  vSetSharedInfo(SI_TV_CHG_MODE, bSharedInfo(SI_HD_MODE));

  if ((bValue == SV_HD_MODE_720P) || (bValue == SV_HD_MODE_1080I))
  {
   #ifdef SETUP_INVALID_ITEM
    if((bAspect != SV_WIDE) && (bAspect != SV_WIDESQZ))
    {
       fgEepromWriteByte(ASPECT_POSITION,SV_WIDE);
       vSetSharedInfo(SI_ASPECT_RATIO, SV_WIDE);
       vNotifySharedInfo(SI_ASPECT_RATIO, 0, 0);
     }
   #endif

    if ((bTvOut == SV_TVE_DIRECT) && bValue == SV_HD_MODE_1080I)
      bTvOut = SV_TVE_YCBCR;
      
    if (bValue == SV_HD_MODE_720P)
      bPScanEn = SV_ON;
    else
      bPScanEn = SV_OFF;
	#ifdef HD_HIGH_PALCLOSE
   	if(bEepromReadByte(TV_SYSTEM_POSITION)==SV_PAL)
   	{
   		bNormalVdo(TV_SYSTEM_POSITION,SV_AUTO);
   		fgEepromWriteByte(TV_SYSTEM_POSITION,SV_AUTO);
   	}
	#endif
      
  }
  else
  {
    if ((bTvOut == SV_TVE_DIRECT) && (bPScanEn == SV_ON))
      bTvOut = SV_TVE_YCBCR;
  }

  if (bEepromReadByte(TV_COMP_POS) != bTvOut)
  {
    fgEepromWriteByte(TV_COMP_POS, bTvOut);
  }

  if (bEepromReadByte(TV_PSCAN_EN_POS) != bPScanEn)
  {
    fgEepromWriteByte(TV_PSCAN_EN_POS, bPScanEn);
  }

  vSetSharedInfo(SI_HD_MODE, bValue);  
  vVideoPScanMode(bPScanEn, bTvOut);  
  vNotifySharedInfo(SI_HD_MODE, 0, 0);

  return (ENTRY_FUN_REDRAW);
}
#endif

#ifdef SUPPORT_DRM
// *********************************************************************
// Function : BYTE bDivXRegCode(WORD wItem, BYTE bValue)
// Description :
// Parameter :
// Return    : None
// *********************************************************************
BYTE bDivXRegCode(WORD wItem, BYTE bValue) large
{
  fgSetPlayPostKey(IR_PLAY_TYPE);
  
  return (ENTRY_FUN_EXIT);
}
#endif

⌨️ 快捷键说明

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