亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? nonshow.c

?? mtk1389L latest sourcecode enjoy
?? C
?? 第 1 頁 / 共 3 頁
字號:
/**********************************************************************/
/***************    MTK CONFIDENTIAL & COPYRIGHTED     ****************/
/***************                                       ****************/
/***************  $Modtime:: 07/04/09 11:49a   $       ****************/
/***************  $Revision:: 2                $       ****************/
/***************                                       ****************/
/***************   Description : OSD                   ****************/
/***************                                       ****************/
/***************       Company : MediaTek Inc.         ****************/
/***************    Programmer : Peter Huang           ****************/
/**********************************************************************/

#define _NONSHOW_C_

#pragma NOAREGS

#include "general.h"
#include "osdshow.h"
#ifdef MT1379_MANUFACTURE_TEST
extern void vOsdShowTestInfo(BYTE bIndex) large;
#endif

extern BOOL fgIsDiscError(void) large;

// *********************************************************************
// Function : void vOsdShowInitState(BYTE bInitState)
// Description :
// Parameter :
// Return    : None
// Note      :
// *********************************************************************
void vOsdShowInitState(BYTE bInitState) large
{
  BYTE pbBmp[3];


#ifndef VFD_SUPPORT
  if (bInitState != SV_DISC_IDENTIFIED)
    vVfdLedSet(TRUE, FALSE, LED_ALL);
#endif

  if(bInitState != SV_DISC_IDENTIFIED)
  {
    vVfdClearAll();
  }
  switch (bInitState)
  {
    case SV_LOADING_DISC:
      vDelBmp(); /* to clear bitmap ICON */
      pbBmp[0] = 2;
      pbBmp[1] = BMP_LOAD_0;
      pbBmp[2] = BMP_LOAD_1;
#ifndef MT1389HD_NO_SERVO       
      vClearWB(WB_NORMAL_HEAD1);
      vOsdShowBmpXY(0, 0, WB_NORMAL_HEAD1, pbBmp, 1, OSD_NO_DISAPPEAR);
      vOsdPosShow(OSD_POS_INIT, OSD_MSG_LOADING, OSD_NO_DISAPPEAR);
#endif //MT1389HD_NO_SERVO
      vVfdMessage(VFD_MESSAGE_LOADING);
      break;

    case SV_TRAY_OPENING:
      vDelBmp(); /* to clear bitmap ICON */
      pbBmp[0] = 1;
      pbBmp[1] = BMP_OPEN;
#ifndef MT1389HD_NO_SERVO            
      vOsdShowBmpXY(0, 0, WB_NORMAL_HEAD1, pbBmp, 0, OSD_NO_DISAPPEAR);
      vOsdPosShow(OSD_POS_INIT, OSD_MSG_OPEN, OSD_NO_DISAPPEAR);
#endif //MT1389HD_NO_SERVO
      vVfdMessage(VFD_MESSAGE_OPEN);
      break;

    case SV_TRAY_CLOSING:
      vDelBmp(); /* to clear bitmap ICON */
      pbBmp[0] = 1;
      pbBmp[1] = BMP_CLOSE;
#ifndef MT1389HD_NO_SERVO            
      vOsdShowBmpXY(0, 0, WB_NORMAL_HEAD1, pbBmp, 0, OSD_NO_DISAPPEAR);
      vOsdPosShow(OSD_POS_INIT, OSD_MSG_CLOSE, OSD_NO_DISAPPEAR);
#endif //MT1389HD_NO_SERVO
      vVfdMessage(VFD_MESSAGE_CLOSE);
      break;

    case SV_TRAY_ERROR:
      vDelBmp(); /* to clear bitmap ICON */
#ifndef MT1389HD_NO_SERVO            
      vOsdPosShow(OSD_POS_INIT, OSD_MSG_TRAY_ERROR, OSD_NO_DISAPPEAR);
#endif //MT1389HD_NO_SERVO
      break;

    case SV_NO_DISC:
  #ifdef MT1379_MANUFACTURE_TEST
      vOsdShowTestInfo(0x10);
      _bPlayPostKey = IR_EJECT;
	#endif

      vDelBmp(); /* to clear bitmap ICON */

#ifndef MT1389HD_NO_SERVO            
      if (fgIsDiscError())
      {      
        vOsdPosShow(OSD_POS_INIT, OSD_MSG_DISC_ERROR, OSD_NO_DISAPPEAR);
      }
      else
      {
        vOsdPosShow(OSD_POS_INIT, OSD_MSG_NO_DISC, OSD_NO_DISAPPEAR);
      }
#endif //MT1389HD_NO_SERVO
      
      vVfdMessage(VFD_MESSAGE_NO_DISC);
      break;

    case SV_UNKNOWN_DISC:
      vDelBmp(); /* to clear bitmap ICON */
#ifndef MT1389HD_NO_SERVO                  
      vOsdPosShow(OSD_POS_INIT, OSD_MSG_UNKNOWN_DISC, OSD_NO_DISAPPEAR);
#endif //MT1389HD_NO_SERVO
      vVfdMessage(VFD_MESSAGE_UN_DISC);
      break;

    case SV_DISC_IDENTIFIED:
      // HACK code: let the icon and message disappear at the same time
      vOsdSetSt(OSD_ST_BURST);
      vOsdPosClear(OSD_POS_INIT); /* the disc type show os moved to layer 2 */
      vDelBmp(); /* to clear bitmap ICON */
      // HACK code
      vOsdSetSt(OSD_ST_NML);
      break;

    case SV_EMD_LOADING:
      vDelBmp();
/*
  Add the 'vOsdPosClear(OSD_POS_REMAIN_MSG);' by Bright_liu 2005/12/21, for CQ(PL00101404)
  when the OSD show the remmain time message, and press the key to change device, the 'waiting'
  message overlay the old message but it has some garbage.
*/
      vOsdPosClear(OSD_POS_REMAIN_MSG);

      vOsdPosShow(OSD_POS_INIT, OSD_MSG_WAITING, OSD_NO_DISAPPEAR);
      break;

    default:
      vOsdPosClear(OSD_POS_INIT);
      vDelBmp(); /* to clear bitmap ICON */
      break;
  }

  pbBmp[0]=bSharedInfo(SI_TV_SYSTEM);
  if (pbBmp[0]==SV_NTSC)
    vVfdSymbol(VFD_SYM_TV_NTSC);
  else if (pbBmp[0]==SV_PAL)
    vVfdSymbol(VFD_SYM_TV_PAL);
  else
    vVfdSymbol(VFD_SYM_TV_MULTI);


#ifdef PSCAN_EN

  if (bEepromReadByte(TV_PSCAN_EN_POS)==SV_ON)
  	{
  	if (bEepromReadByte(TV_COMP_POS)==SV_TVE_VGA)
      vVfdSymbol(VFD_SYM_TV_VGA);
  	else
      vVfdSymbol(VFD_SYM_TV_PSCAN);
  	}
  else
    vVfdSymbol(VFD_SYM_TV_INTERLACE);

#endif  //PSCAN_EN

#ifdef MTK_MIC
#ifdef PLAYER_KARAOKE

  if (bEepromReadByte(MIC_SW_POS) == EV_ON)
    vVfdSymbol(VFD_SYM_VOCAL_ON);
  else
    vVfdSymbol(VFD_SYM_VOCAL_OFF);

#endif  //PLAYER_KARAOKE
#endif  //MTK_MIC

#ifdef VFD_INIT_FLASHING
  if (fgIsDiscReady(bStatus))
  {
    vVfdFlashSwitch(VFD_FLASHING_OFF);
  }
  else
  {
    vVfdFlashSwitch(VFD_FLASHING_ON);
  }
#endif /* VFD_INIT_FLASHING */

}

// *********************************************************************
// Function : void vOsdShowPlayStatus(BYTE bStatus, BYTE bTime)
// Description :
// Parameter :  bState
// Return    : None
// *********************************************************************
void vOsdShowPlayStatus(BYTE bStatus, BYTE bTime) large
{
  WORD wMsgIndex = 0;
#ifdef PLAYER_GOTO
  BYTE pbStr[] = { 0 };
#endif

  switch (bStatus)
  {
    case OSD_SHOW_PLAY:
      wMsgIndex = OSD_MSG_ICON_PLAY;
      break;

    case OSD_SHOW_TRICK:
      break;

#if 1
    case OSD_SHOW_NEXT_TRK:
    case OSD_SHOW_NEXT_CH:
    case OSD_SHOW_NEXT_ITEM:
      wMsgIndex = OSD_MSG_ICON_NEXT;
      break;

    case OSD_SHOW_PREV_TRK:
    case OSD_SHOW_PREV_CH:
    case OSD_SHOW_PREV_ITEM:
      wMsgIndex = OSD_MSG_ICON_PREV;
      break;
#else /* show message instead icon */
    case OSD_SHOW_NEXT_TRK:
      vOsdPosShow(OSD_POS_NORMAL, OSD_MSG_NEXT_TRACK, bTime);
      break;

    case OSD_SHOW_NEXT_CH:
      vOsdPosShow(OSD_POS_NORMAL, OSD_MSG_NEXT_CHAPTER, bTime);
      break;

    case OSD_SHOW_NEXT_ITEM:
      vOsdPosShow(OSD_POS_NORMAL, OSD_MSG_NEXT_ITEM, bTime);
      break;

    case OSD_SHOW_PREV_TRK:
      vOsdPosShow(OSD_POS_NORMAL, OSD_MSG_PREVIOUS_TRACK, bTime);
      break;

    case OSD_SHOW_PREV_CH:
      vOsdPosShow(OSD_POS_NORMAL, OSD_MSG_PREVIOUS_CHAPTER, bTime);
      break;

    case OSD_SHOW_PREV_ITEM:
      vOsdPosShow(OSD_POS_NORMAL, OSD_MSG_PREVIOUS_ITEM, bTime);
      break;
#endif

    default:
      bStatus = OSD_SHOW_CLEAR;
      break;
  }

  if (wMsgIndex != 0)
  {
    vOsdCoreSetPlayStatus(bStatus, bTime);
  }

  if (bStatus == OSD_SHOW_CLEAR)
  {
    vOsdDisplayChange(DISP_TRICK, bSharedInfo(SI_PBC_STATE));
  }
  else if (wMsgIndex != 0)
  {
#if 0
#ifdef PLAYER_FLMENU
    if (fgFlVdoOn)
    {
      //vFlIpShowInfo(IP_INFO_PBC, bHiByte(wMsgIndex), bLoByte(wMsgIndex));
      //vOsdPosShow(OSD_POS_NORMAL, wMsgIndex, bTime);
      vOsdPosShow(OSD_POS_PLAY_STATUS, wMsgIndex, bTime);
    }
    else
#endif /* PLAYER_FLMENU */
#endif
    {
      vOsdPosShow(OSD_POS_PLAY_STATUS, wMsgIndex, bTime);
#ifdef PLAYER_GOTO
      if (fgIsInGoto())
      {
        vGotoShowIcon(wMsgIndex, pbStr);
      }
#endif /* PLAYER_GOTO */
    }
  }
}

struct _sPbcStateMsg
{
  WORD  wMsg;
  WORD  wIcon;
};

static code struct _sPbcStateMsg _rPbcStateMsg[SV_DIGEST+1] =
{
  { OSD_MSG_NULL, OSD_MSG_NULL },
  { OSD_MSG_STOP, OSD_MSG_ICON_STOP },    // SV_STOP
  { OSD_MSG_PLAY, OSD_MSG_ICON_PLAY },    // SV_PLAY
  { OSD_MSG_FFX, OSD_MSG_ICON_FFX},       // SV_FF
  { OSD_MSG_SFX, OSD_MSG_ICON_SFX},       // SV_SF
  { OSD_MSG_FRX, OSD_MSG_ICON_FRX},       // SV_FR
  { OSD_MSG_ICON_SRX, OSD_MSG_ICON_SRX }, // SV_SR
  { OSD_MSG_PAUSE, OSD_MSG_ICON_PAUSE },  // SV_PAUSE
  { OSD_MSG_STEP, OSD_MSG_ICON_STEP },    // SV_STEP
  { OSD_MSG_ICON_STEP_BACK, OSD_MSG_ICON_STEP_BACK }, // SV_STEP_BACK
  { OSD_MSG_NULL, OSD_MSG_NULL},          // SV_FREEZE
  { OSD_MSG_PLAY, OSD_MSG_ICON_PLAY },    // SV_STILL
  { OSD_MSG_NULL, OSD_MSG_NULL},          // SV_SETUP_PAUSE
  { OSD_MSG_STOP, OSD_MSG_ICON_STOP },    // SV_STOP_RESUME
  { OSD_MSG_PLAY, OSD_MSG_ICON_PLAY },    // SV_DIGEST9
  { OSD_MSG_PLAY, OSD_MSG_ICON_PLAY },    // SV_DIGEST4
  { OSD_MSG_PLAY, OSD_MSG_ICON_PLAY },    // SV_DIGEST
};

void vGetPbcStateMsg(BYTE bState, BYTE bVal, WORD *wMsg, BYTE *pbStr) large
{
  pbStr[0] = 2;

  if ((bState == SV_FF) || (bState == SV_FR))
  {
    if (bVal == 0)
    {
      bState = SV_PLAY;
    }
    else
    {
      bVal = bHEXToBCD(bVal);
      if (BCD_HI(bVal) > 0)
      {
        pbStr[1] = BCD_HI(bVal) + '0';
      }
      else
      {
        pbStr[1] = ' ';
      }
      pbStr[2] = BCD_LO(bVal) + '0';
    }
  }
  else if ((bState == SV_SF) || (bState == SV_SR))
  {
    if (bVal == 0)
    {
      bState = SV_PLAY;
    }
    else
    {
      bVal = bHEXToBCD(bVal);
      if (BCD_HI(bVal) > 0)
      {
        pbStr[1] = BCD_HI(bVal) + '0';
        pbStr[2] = BCD_LO(bVal) + '0';
      }
      else
      {
        pbStr[1] = BCD_LO(bVal) + '0';
        pbStr[2] = ' ';
      }
    }
  }
  else
  {
    pbStr[0] = 0;
  }
  
  // 20050517, PL00000965, when bState == SV_PRE_PLAY, it's out of range and will show unexpected msg.
  // So we add check if it's out of range, set msg as NULL
  if (bState > SV_DIGEST)
  {
    *wMsg = OSD_MSG_NULL ;
    return ;
  }

  *wMsg = _rPbcStateMsg[bState].wIcon;
//  *wMsg = (fgFlCheckStatus(FL_STATUS_IN_MENU)) ? _rPbcStateMsg[bState].wIcon :
//                                _rPbcStateMsg[bState].wMsg;
}

// *********************************************************************
// Function : void vOsdShowPbcState(BYTE bState, BYTE bVal, BYTE bTime)
// Description :
// Parameter :  bState
//                      - SV_STOP
//                      - SV_PLAY
//                      - SV_FF
//                      - SV_FR
//                      - SV_SF
//                      - SV_SR
//                      - SV_PAUSE
//                      - SV_STEP
// Return    : None
// *********************************************************************
void vOsdShowPbcState(BYTE bState, BYTE bVal, BYTE bTime) large
{
  BYTE pbStr[5];
  WORD wMsgIndex = 0;
  BYTE bPlayType = bOsdCoreCurrPlayType();

  if (bPlayType != OSD_SHOW_CLEAR)
  {
    if (bPlayType != OSD_SHOW_PLAY)
    {
      // we must by pass user action here
      if (fgIsTrickPlay(bState))
      {
        vOsdCoreSetPlayStatus(OSD_SHOW_TRICK, bTime);
      }
      else if ((bState == SV_PLAY) && (bPlayType == OSD_SHOW_TRICK))
      {
        // clear play status first, this should be moved to vChangePbcState()
        vOsdCoreSetPlayStatus(OSD_SHOW_CLEAR, 0);
      }
      else
      {
        return;
      }
    }
    else if (bState == SV_PLAY)  // && (bPlayType == OSD_SHOW_PLAY)
    {
      return;
    }
    else
    {
      // clear play status first
      vOsdCoreSetPlayStatus(OSD_SHOW_CLEAR, 0);
    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产拍欧美日韩视频二区| 成人午夜精品一区二区三区| 国产精品天美传媒沈樵| 2021久久国产精品不只是精品| 欧美性猛片aaaaaaa做受| 成人高清免费在线播放| 波多野结衣视频一区| 国产成人在线观看| av成人动漫在线观看| 91在线视频免费观看| 色又黄又爽网站www久久| 色婷婷激情综合| 欧美欧美欧美欧美| 欧美一卡二卡在线观看| 欧美一级视频精品观看| xfplay精品久久| 国产精品久线在线观看| 一区二区高清视频在线观看| 亚洲国产精品欧美一二99| 日本aⅴ精品一区二区三区| 男人的天堂亚洲一区| 激情六月婷婷综合| 岛国精品在线播放| 色欧美片视频在线观看| 91成人免费在线| 日韩欧美国产一区在线观看| 久久久久久久一区| 亚洲尤物在线视频观看| 日本亚洲一区二区| 国产精品888| 在线观看亚洲专区| 精品日韩成人av| 亚洲视频小说图片| 美国十次了思思久久精品导航| 国产一区二区美女诱惑| 91麻豆国产精品久久| 欧美精品vⅰdeose4hd| 久久综合一区二区| 亚洲综合免费观看高清完整版| 日本伊人精品一区二区三区观看方式| 美女高潮久久久| 99久久婷婷国产综合精品| 91精品国产入口| 久久精品亚洲国产奇米99| 亚洲三级免费电影| 久久99精品国产91久久来源| 色噜噜狠狠色综合欧洲selulu| 日韩一二三四区| 依依成人综合视频| 国产高清精品在线| 欧美一区二区三区四区五区| 亚洲色大成网站www久久九九| 免费在线看成人av| 色综合久久久久综合体| 久久精品综合网| 日本欧美在线看| 欧美性色欧美a在线播放| 欧美韩国一区二区| 蜜桃视频第一区免费观看| 欧美在线视频不卡| 亚洲男同性视频| 成人中文字幕电影| 国产婷婷色一区二区三区在线| 天堂影院一区二区| 欧美性色综合网| 亚洲第一综合色| 91官网在线免费观看| 久久精品亚洲麻豆av一区二区| 国产精品久久久久永久免费观看| 美女脱光内衣内裤视频久久网站| 欧美群妇大交群中文字幕| 亚洲综合无码一区二区| 色悠悠久久综合| 亚洲色图在线播放| 99久久99久久精品国产片果冻| 国产女人水真多18毛片18精品视频 | 亚洲国产aⅴ成人精品无吗| eeuss影院一区二区三区| 欧美经典三级视频一区二区三区| 久久se精品一区二区| 欧美不卡视频一区| 久久99久久99小草精品免视看| 91精品黄色片免费大全| 免费不卡在线视频| 久久综合九色综合欧美98| 国产精品一级在线| 久久精品视频在线看| 成人av资源网站| 尤物av一区二区| 91精品国产一区二区三区香蕉| 日本美女一区二区三区| 日韩视频免费观看高清在线视频| 日韩精品欧美精品| 日韩精品一区在线| 国产mv日韩mv欧美| 亚洲精品免费看| 51精品国自产在线| 国产精品影视网| 亚洲天天做日日做天天谢日日欢| 在线欧美日韩国产| 麻豆91精品视频| 国产精品麻豆视频| 欧美另类久久久品| 国产盗摄精品一区二区三区在线| 中文字幕在线视频一区| 欧美日韩精品一区二区三区蜜桃| 日本三级韩国三级欧美三级| 欧美极品另类videosde| 欧美性生活一区| 国产成人鲁色资源国产91色综| 一色桃子久久精品亚洲| 欧美精品丝袜久久久中文字幕| 黄网站免费久久| 亚洲一区二区高清| 国产亚洲精品精华液| 欧美人xxxx| 91丝袜高跟美女视频| 九九热在线视频观看这里只有精品| 欧美国产日韩a欧美在线观看| 欧美日韩国产一级片| 懂色一区二区三区免费观看| 日本欧美韩国一区三区| 国产精品丝袜久久久久久app| 欧美顶级少妇做爰| 99精品视频一区| 国产精品99久久久久久有的能看 | 午夜在线电影亚洲一区| 久久久国产综合精品女国产盗摄| 91国产成人在线| 成人免费黄色大片| 久久精品国产在热久久| 亚洲国产乱码最新视频 | 91精品国产综合久久久久| 成人免费精品视频| 国产乱妇无码大片在线观看| 日本中文字幕不卡| 亚洲国产欧美在线| 亚洲免费在线电影| 国产精品三级视频| 日韩午夜激情av| 日本久久电影网| 99久久综合精品| 国产成人在线免费| 国产又黄又大久久| 麻豆成人久久精品二区三区小说| 亚洲动漫第一页| 亚洲午夜精品在线| 婷婷综合另类小说色区| 亚洲午夜国产一区99re久久| 亚洲精品日产精品乱码不卡| 亚洲欧洲三级电影| 国产精品福利一区二区| 欧美国产视频在线| 国产欧美日韩在线视频| 国产日韩在线不卡| 久久九九久精品国产免费直播| 久久午夜国产精品| 国产亚洲人成网站| 欧美国产亚洲另类动漫| 国产精品国产a| 国产精品初高中害羞小美女文| 久久九九全国免费| 亚洲图片另类小说| 亚洲尤物视频在线| 日韩电影网1区2区| 国产在线视频精品一区| 国产自产2019最新不卡| 国产一区二区精品久久91| 久久99精品久久只有精品| 国产一区二区视频在线播放| 国产传媒欧美日韩成人| 97se亚洲国产综合自在线不卡| av一区二区三区在线| 在线观看精品一区| 欧美日本在线视频| 久久综合一区二区| 一区二区三区中文免费| 男人的j进女人的j一区| 成人免费视频视频在线观看免费| 99精品视频在线免费观看| 欧美视频一区在线| 久久亚洲捆绑美女| 亚洲免费av高清| 免费在线欧美视频| av一区二区三区四区| 欧美日韩电影在线| 久久久不卡影院| 亚洲午夜久久久久中文字幕久| 日本伊人色综合网| 成人国产精品视频| 欧美在线观看视频在线| 欧美一级欧美三级| 亚洲视频在线一区观看| 精品一区二区影视| 欧美伊人久久久久久久久影院| 久久蜜桃香蕉精品一区二区三区| 一区二区在线观看av| 国产成人一区在线| 欧美一区二区播放| 亚洲综合激情网|