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

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

?? flmenu.c

?? mtk1389L latest sourcecode enjoy
?? C
?? 第 1 頁 / 共 5 頁
字號:
      {
       if(_wFlCurAdoIdx != 0xffff && _wFlCurAdoIdx >= wFlGetItemIdx(_bFlMnCurItemIdx))
       {
        _wFlCurAdoIdx --;
       }
      }
      //added end  
      if (fgFlClLock(FL_CMDPATH_PL_RM))
        fgFlCmdGetItems(_bFlMnListId, 0x0);
    }
    else
    {
      fgFlMnChgListType();
    }
  }
  else
  {
    // - error occurs
    _wFlMnListLen = 0xFF;
  }

  return;
}

/**
 * Check the return value of command "FLCMD_CLEAN".
 */
static void vFlMnRetRmAllFromPl(void) large
{
  WORD wBlkPtr;
  BYTE bRCode;

  vFlCmdDone();
  wBlkPtr = FL_CMD_BLK_SA + 1; // - shift to the parameter block
  bRCode = bSharedInfo(wBlkPtr ++);

  if (bRCode == FLRET_S_OK)
  {
    // - successful
    fgFlMnChgListType();
  }
  else
  {
    // - error occurs
  }
}

static void vFlMnRetQueryItem(void) large
{
  WORD  wBlkPtr, wTmp;
  BYTE  bRCode;
  BYTE  bTmp1, bTmp2;
#ifdef FSMENU_WITH_FILE_INFO
  DWRD  dwFileSz;
#endif

  wBlkPtr = FL_CMD_BLK_SA + 1;
  bRCode = bSharedInfo(wBlkPtr ++);

#ifdef FSMENU_WITH_FILE_INFO
  if (bRCode != FLRET_S_OK)
#else
  if ((bRCode != FLRET_S_OK) || !fgFlClIsLock())
#endif
    return;

  vFlCmdDone();

  switch (bFlClPath())
  {
    case FL_CMDPATH_ATPLY_0:
      vFlClNext();
      wBlkPtr += 5;
      bLoByte(wTmp) = bSharedInfo(wBlkPtr);
      bHiByte(wTmp) = bSharedInfo(wBlkPtr + 1);
      if (_wFlCurAdoDir != wTmp)
      {
        _wFlCurAdoDir = wTmp;
        bLoByte(_wFlCurAdoIdx) = bSharedInfo(wBlkPtr + 2);
        bHiByte(_wFlCurAdoIdx) = bSharedInfo(wBlkPtr + 3);
        vFlCmdSet(_bFlMnListId, FLPARM_LIST_FOLDER, FLPARM_INC_PARENT,
                  _wFlCurAdoDir, FLPARM_FF_DIR|FLMN_DEF_FFAC, FLPARM_SO_GDIR);
      }
      else
      {
        bLoByte(wTmp) = bSharedInfo(wBlkPtr + 2);
        bHiByte(wTmp) = bSharedInfo(wBlkPtr + 3);

        bTmp1 = (BYTE) (wTmp % FLMN_ITEM_N);
        bTmp2 = (BYTE) (_wFlCurAdoIdx % FLMN_ITEM_N);

        if ((bTmp1 > bTmp2) && (bTmp1 < (bTmp2 + FLMN_ITEM_N)))
        {
          vFlCmdClickItem(_bFlMnListId, _wFlCurAdoIdx);
        }
        else
        {
          fgFlCmdGetItems(_bFlMnListId, _wFlCurAdoIdx - (_wFlCurAdoIdx % FLMN_ITEM_N));
        }
     }

     break;
#ifdef FSMENU_WITH_FILE_INFO
    default:
      switch (bSharedInfo(wBlkPtr ++))
      {
        case FTYPE_MPG:
        case FTYPE_DAT:
        case FTYPE_VOB:
        case FTYPE_AVI:
        case FTYPE_TS1:
        case FTYPE_MP4:
        case FTYPE_3GP:
        case FTYPE_TS2:
        case FTYPE_OGG:
        case FTYPE_TS4:
          bLoByte(wLoWord(dwFileSz)) = bSharedInfo(wBlkPtr);
          bHiByte(wLoWord(dwFileSz)) = bSharedInfo(wBlkPtr + 1);
          bLoByte(wHiWord(dwFileSz)) = bSharedInfo(wBlkPtr + 2);
          bHiByte(wHiWord(dwFileSz)) = bSharedInfo(wBlkPtr + 3);
          vFlClRls();
          break;

        default:
          break;
      }
      break;
#endif
  }

  return;
}

/**
 * Check the return value of command "FLCMD_ADD_TO_PL".
 */
void vFlMnRetAddToPl(void) large
{
  WORD wBlkPtr;
  BYTE bRCode;

  wBlkPtr = FL_CMD_BLK_SA + 1; // - shift to the parameter block
  bRCode = bSharedInfo(wBlkPtr ++);

  vFlCmdDone();
  //added by msz00049 for CR PL00105822
  if(fgFlClIsLock() && bFlClPath() == FL_CMDPATH_ADDTO_PLAYLIST)
  {
    vFlClRls();
  }
  //added end
  if (bRCode == FLRET_S_OK)
  {
    // - successful
//    _wFlMnPlLen = bSharedInfo(wBlkPtr ++);
    vOsdPosShow(OSD_POS_FS_INFO_BAR, OSD_MSG_FL_ADD_TO_PLAYLIST, OSD_TIMEOUT_SHORT);
  }
  else
  {
    // - error occurs
//    _wFlMnPlLen = 0xFF;
  }

  return;
}

#ifdef SUPPORT_EMD
static void vFlMnRetAddItem(void) large
{
  WORD  wBlkPtr, wItem;
  BYTE  bRCode;

  wBlkPtr = FL_CMD_BLK_SA + 1;
  bRCode = bSharedInfo(wBlkPtr ++);

  vFlCmdDone();

  if (bRCode == FLRET_S_OK)
  {
    switch (bFlClPath())
    {
    case FL_CMDPATH_MV:
      if (_fgFlSrcSet)
      {
        _fgFlFmving = TRUE;
      }
      _fgFlSrcSet = !_fgFlSrcSet;
      break;
    }
  }
  else
  {
    _fgFlSrcSet = FALSE;
    _fgFlFmving = FALSE;
  }

  vFlClRls();
}

static void vFlMnRetDelItem(void) large
{
  WORD  wBlkPtr, wItem;
  BYTE  bRCode;

  wBlkPtr = FL_CMD_BLK_SA + 1;
  bRCode = bSharedInfo(wBlkPtr ++);

  vFlCmdDone();

  if (bRCode == FLRET_S_OK)
  {
    switch (bFlClPath())
    {
    case FL_CMDPATH_MV:
      vFlClRls();
      vFlMnRdListInfo(_bFlMnListId);
      if (_wFlMnListLen)
      {
        if (fgFlClLock(FL_CMDPATH_REDRAW))
        {
          _bFlMnCurItemIdx = (_bFlMnCurItemIdx + FLMN_ITEM_N - 1) % FLMN_ITEM_N;
          fgFlCmdGetItems(_bFlMnListId, wFlGetItemIdx(_bFlMnCurItemIdx) - (WORD)_bFlMnCurItemIdx);
        }
      }
      else
      {
    #ifdef SUPPORT_EMD
        vFlMnClrPage();
        vFlMnShowPage();
        vDrawFolderName(FALSE);
        vOsdPosClear(OSD_POS_FS_INFO_BAR);
        vFlIpShowInfo(IP_INFO_EMD_ATTACH, EMD_INFO_USB, 0);
        vFlMnDrawInfoPanel(_bFlIpState);
        vFlIpShowInfo(IP_INFO_FILE_INDEX, 0, 0);
        _wStartX = FLMN_BTN_1_X + FLMN_MENU_BORDER + 80;
        _wStartY = FLMN_BTN_1_Y + FLMN_MENU_BORDER + 2;
        vOsdMsgPaste(FL_MENU_WB, OSD_MSG_EMPTY_CARD);
    #endif
      }

      break;
    }
  }
  else
  {
    _fgFlSrcSet = FALSE;
    _fgFlFmving = FALSE;
  }

  vFlClRls();
}

static void vFlMnRetCancelCopy(void) large
{
  WORD  wBlkPtr, wItem;
  BYTE  bRCode;

  wBlkPtr = FL_CMD_BLK_SA + 1;
  bRCode = bSharedInfo(wBlkPtr ++);

  vFlCmdDone();

  if (bRCode == FLRET_S_OK)
  {
    switch (bFlClPath())
    {
    case FL_CMDPATH_MV:
      _fgFlSrcSet = FALSE;
      _fgFlFmving = FALSE;
      //vSendUopCmd(UOP_CHG_DEV, SV_ASSIGN_DEV, _bSourceDev, 0);
      break;
    }
  }
  else
  {
    _fgFlSrcSet = FALSE;
    _fgFlFmving = FALSE;
  }

  vFlClRls();
}
#endif  // SUPPORT_EMD

////////////////////////////////////////////////////////////////////////////////
//
// MP3 ID3
//
#ifdef ENABLE_ID3

static code BYTE _pbId3V1Tag[3] = { 'T', 'A', 'G' };
static code BYTE _pbId3V1FldLen[ID3V1_MAX] =  { 3, 30, 30, 30,  4, 30 , 1 };
static code BYTE _pbId3V1FldPos[ID3V1_MAX] =  { 0, 3, 33, 63, 93, 97, 127 };

static void vFlGetId3Info(void) large
{
  DWRD  dwAddr, dwTmpAddr;
  BYTE  bFld, i, bChar, bLen;


#ifndef MT1379_MANUFACTURE_TEST
  vPlayerShowLogo(ISO_STOP_LOGO, ISO_LOGO_COLOR);
#endif

  dwAddr = dwMakeDWord(SI_MP3_ID3TAG_B1);

  if (dwAddr == 0xffffffff)
    return;

  for (bFld=0; bFld < ID3V1_MAX; bFld++)
  {
    dwTmpAddr = dwAddr;
    for (i=0; i<_pbId3V1FldLen[bFld]; i++)
    {
      bChar = bReadDRAMTbl(bLoByte(wHiWord(dwTmpAddr)), wLoWord(dwTmpAddr));

      if (bFld == 0)
      {
        if (bChar != _pbId3V1Tag[i])
          return;
      }

      if (bChar == 0x00)
      {
        bLen = i;
        break;
      }
      else
      {
        dwTmpAddr++;
      }
    }

    if (bFld != 0)
    {
      _wStartX = (WORD) FLMN_PREVIEW_X - FSMENU_BASIC_WB_LEFT;
      _wStartY = (WORD) FLMN_PREVIEW_Y - FSMENU_BASIC_WB_TOP + 15 + 30 * bFld;
    #ifdef FLMN_DONT_SHOW_NONPRINTABLE_CHAR
      vDrawStrAddr(FL_MENU_WB, bLen, 0xffff, dwAddr, '_', 0);
    #else
      vDrawStrAddr(FL_MENU_WB, bLen, 0xffff, dwAddr, 0, 0);
    #endif
    }
    dwAddr += _pbId3V1FldLen[bFld];
  }
}
#endif

////////////////////////////////////////////////////////////////////////////////
//
// Last Memory
//

#ifdef ISO_LAST_MEM
static void vFlMnGetLastMemItem(void) large
{
  WORD  wSlotSa, wIdx;

  _wFlCurAdoIdx = 0xFFFF;

  wSlotSa = wSIItemPos(bSharedInfo(SI_DDISC_LASTMEM_GRP), 1);

  wSlotSa += ((bSharedInfo(SI_DDISC_LASTMEM_NS)-1) *
               bSharedInfo(SI_DDISC_MEM_SLOT_SZ));

  wSlotSa++;

  if (bSharedInfo(wSlotSa) != SV_MEM_SLOT_DDISC)
  {
    return;
  }

  wSlotSa += 9;
  bLoByte(wIdx) = bSharedInfo(wSlotSa);
  wSlotSa ++;
  bHiByte(wIdx) = bSharedInfo(wSlotSa);
  _wFlCurAdoDir = wIdx;

  wSlotSa ++;
  bLoByte(wIdx) = bSharedInfo(wSlotSa);
  wSlotSa ++;
  bHiByte(wIdx) = bSharedInfo(wSlotSa);

  _wFlCurAdoIdx = wIdx;
/* it seems unnecessary
  if (_wFlCurAdoDir != 0)
      _wFlCurAdoIdx++;
*/
}
#endif

////////////////////////////////////////////////////////////////////////////////
//
// General Display Function
//

/**
 * Operations for showing the basic visual components of the
 *  file browser menu.
 */
#ifdef FL_USE_LOGO

static void vFlMnShowPage(void) large
{
  // - display the menu logo
#ifndef MT1379_MANUFACTURE_TEST
  vPlayerShowLogo(ISO_STOP_LOGO, ISO_LOGO_COLOR);
#endif

#ifdef FSMENU_INFO_PANEL
  vEnableWB(FL_INFO_WB);
#endif
  vEnableWB(FL_MENU_WB);

  vSetSharedInfo(SI_HLI_STATE, SV_ON); // - turn on hili select mode

  return;
}

#else  // FL_USE_LOGO

static void vFlMnShowPage(void) large
{
  _wStartX = FLMN_BTN_0_X;
  _wEndX = FLMN_BTN_0_X + FLMN_BTN_0_W;
  _wStartY = FLMN_BTN_0_Y;
  _wEndY = FLMN_BTN_0_Y + FLMN_BTN_0_H;
  vCreateButton(FL_MENU_WB, 30, 4);
  vSetBtnCol(FL_MENU_WB, 0, 0, 3, 2);
  vUnselButton(FL_MENU_WB, 30);

  _wStartX = FLMN_BTN_1_X;
  _wEndX = FLMN_BTN_1_X + FLMN_BTN_1_W;
  _wStartY = FLMN_BTN_1_Y;
  _wEndY = FLMN_BTN_1_Y + FLMN_BTN_1_H;
  vCreateButton(FL_MENU_WB, 30, 4);
  vSetBtnCol(FL_MENU_WB, 0, 0, 3, 2);
  vSelButton(FL_MENU_WB, 30);

  _wStartX = FLMN_BTN_2_X;
  _wEndX = FLMN_BTN_2_X + FLMN_BTN_2_W;
  _wStartY = FLMN_BTN_2_Y;
  _wEndY = FLMN_BTN_2_Y + FLMN_BTN_2_H;
  vCreateButton(FL_MENU_WB, 30, 4);
  vSetBtnCol(FL_MENU_WB, 0, 0, 3, 2);
  vSelButton(FL_MENU_WB, 30);

  _wStartX = FLMN_BTN_3_X;
  _wEndX = FLMN_BTN_3_X + FLMN_BTN_3_W;
  _wStartY = FLMN_BTN_3_Y;
  _wEndY = FLMN_BTN_3_Y + FLMN_BTN_3_H;
  vCreateButton(FL_MENU_WB, 30, 4);
  vSetBtnCol(FL_MENU_WB, 0, 0, 3, 2);
  vSelButton(FL_MENU_WB, 30);

  vDrawSpin();
}
#endif  // FL_USE_LOGO

/**
 * This function draw the file name of the given item by the
 *  new OSD command "vpast_msg_addr".
 *
 * It also demos how to get item info from descriptor.
 */
void vFlMnDrawItem(BYTE bItemIdx) large
{
  DWRD dwAddr;
  WORD wPos;
  BYTE bFType, bStrLen;
  WORD wIdx, wDirIdx;
  BYTE pbStr[4];
  BOOL fgIsPrnt = TRUE;

  wPos = FL_ITEM_FIELD(bItemIdx);

  // - collect misc info
  bFType = bSharedInfo(wPos + 5);
  bLoByte(wIdx) = bSharedInfo(wPos + 6);
  bHiByte(wIdx) = bSharedInfo(wPos + 7);
  if (bFType == FTYPE_DIR)
  {
    bLoByte(wDirIdx) = bSharedInfo(wPos + 12);
    bHiByte(wDirIdx) = bSharedInfo(wPos + 13);
  }

  // - collect name info
  dwAddr = dwMakeDWord(wPos);
  bStrLen = bSharedInfo(wPos + 4);

  // - preprocess the name string
  if (!((bStrLen == 1) && (bReadDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr)) == 0x01)))
  {
    fgIsPrnt = FALSE;
    vFlMnPProcName(&dwAddr, &bStrLen);
  }

  // - paste icon
  vOsdPasteBmpXY(_prFlMnItemTbl[bItemIdx].wLeft,
                 _prFlMnItemTbl[bItemIdx].wTop,
                 FL_MENU_WB, bFlMnGetIconIdx(bFType));

  // - paste the message of file name
  _wStartX = _prFlMnItemTbl[bItemIdx].wLeft + FL_ICON_W;
  _wStartY = _prFlMnItemTbl[bItemIdx].wTop;

  if (fgIsPrnt)
  {
    // - special case " .." as the string of parent dir
    pbStr[0] = 3;
    pbStr[1] = ' ';
    pbStr[2] = pbStr[3] = '.';
    vOsdShowStr(FL_MENU_WB, pbStr);
  }
  else
  {
  #ifdef FLMN_DONT_SHOW_NONPRINTABLE_CHAR
    vDrawStrAddr(FL_MENU_WB, bStrLen, 0xffff, dwAddr, '_', 0);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一卡2卡三卡4卡5免费| 色综合久久久久综合| 26uuu久久综合| 久久99精品久久久久久动态图| 精品国产一区二区三区四区四| 久久99这里只有精品| 2021中文字幕一区亚洲| 成人精品一区二区三区中文字幕 | 欧美日韩国产精选| 日韩国产欧美在线视频| 2023国产精品自拍| www.日韩av| 亚洲人成网站色在线观看| 欧美性受xxxx黑人xyx性爽| 无码av免费一区二区三区试看| 91精品久久久久久久91蜜桃| 国产原创一区二区| 中文字幕亚洲成人| 精品视频色一区| 精品一区二区av| 久久久久久电影| 91成人免费在线视频| 偷拍与自拍一区| 2024国产精品视频| 在线免费观看不卡av| 六月丁香婷婷久久| 亚洲人成在线播放网站岛国| 日韩欧美卡一卡二| 99r精品视频| 麻豆91在线播放| 亚洲天堂av老司机| 日韩视频在线观看一区二区| 97久久人人超碰| 美女精品自拍一二三四| 国产精品国产馆在线真实露脸 | 免费观看成人av| 国产精品久久久一区麻豆最新章节| 色屁屁一区二区| 九色综合狠狠综合久久| 亚洲欧美中日韩| 日韩天堂在线观看| 91传媒视频在线播放| 国内精品国产成人国产三级粉色| 亚洲永久精品国产| 国产免费观看久久| 欧美一区二区高清| 色天天综合久久久久综合片| 国产经典欧美精品| 视频在线观看一区| 亚洲丝袜精品丝袜在线| 久久综合五月天婷婷伊人| 91国偷自产一区二区开放时间| 精品一区二区综合| 亚洲第一狼人社区| 亚洲精品精品亚洲| 中文字幕av资源一区| 日韩欧美国产综合| 51久久夜色精品国产麻豆| 色吊一区二区三区| av电影一区二区| 国精产品一区一区三区mba桃花| 亚洲国产另类精品专区| 专区另类欧美日韩| 国产精品麻豆一区二区| 久久网站最新地址| 欧美日本免费一区二区三区| 在线免费视频一区二区| a美女胸又www黄视频久久| 国产激情视频一区二区在线观看| 人人狠狠综合久久亚洲| 亚洲福利视频导航| 亚洲国产视频a| 日韩理论电影院| 亚洲欧洲av在线| 国产精品美女久久久久久久| 国产精品―色哟哟| 国产拍揄自揄精品视频麻豆| 国产亚洲一本大道中文在线| 国产亚洲欧美一级| 欧美国产视频在线| 国产精品久久久久久久岛一牛影视| 国产欧美日韩另类一区| 中文字幕av一区 二区| 国产日韩精品一区二区浪潮av | 久久99精品国产麻豆不卡| 日韩影院精彩在线| 蜜桃精品视频在线观看| 日产国产高清一区二区三区| 奇米精品一区二区三区在线观看一| 日韩中文字幕1| 久久精品国产亚洲高清剧情介绍 | 久久综合色之久久综合| 欧美一级黄色录像| 精品精品国产高清a毛片牛牛| 欧美tk—视频vk| 2020国产精品久久精品美国| 国产亚洲va综合人人澡精品| 最好看的中文字幕久久| 亚洲尤物视频在线| 男人的j进女人的j一区| 国产在线不卡一卡二卡三卡四卡| 国产在线不卡一卡二卡三卡四卡| 成人app网站| 欧美亚州韩日在线看免费版国语版| 在线综合亚洲欧美在线视频| 26uuu亚洲综合色| 亚洲欧洲无码一区二区三区| 亚洲福利视频一区二区| 国内精品久久久久影院色| 成人av资源在线观看| 欧美性受xxxx| 2020国产精品自拍| 悠悠色在线精品| 黄色精品一二区| 色综合一区二区| 欧美一二三区在线| 综合欧美一区二区三区| 日韩精品电影一区亚洲| 国产99一区视频免费| 欧美绝品在线观看成人午夜影视| 国产日韩精品视频一区| 午夜精品成人在线视频| 国产精品一区二区三区四区 | 亚洲bdsm女犯bdsm网站| 久99久精品视频免费观看| 色狠狠av一区二区三区| 欧美成人三级在线| 亚洲自拍偷拍综合| 国产风韵犹存在线视精品| 欧美亚洲禁片免费| 中文字幕精品一区二区精品绿巨人 | 国产91精品一区二区麻豆网站| 欧美午夜精品电影| 久久久www成人免费无遮挡大片| 亚洲国产另类av| jizz一区二区| 精品理论电影在线观看| 亚洲第一会所有码转帖| 97久久超碰国产精品电影| 日韩美女视频在线| 亚洲成人精品一区| 91丝袜国产在线播放| 2017欧美狠狠色| 美国av一区二区| 欧美色区777第一页| 国产精品欧美综合在线| 激情文学综合插| 欧美日韩国产电影| 亚洲综合av网| 97久久久精品综合88久久| 欧美激情一区在线| 国产精品一区二区在线观看网站| 日韩一级成人av| 日韩国产高清影视| 欧美老女人在线| 亚洲va在线va天堂| 欧美一a一片一级一片| 综合自拍亚洲综合图不卡区| 成人18精品视频| 国产欧美一区二区三区网站| 狠狠色丁香久久婷婷综| 日韩精品中文字幕在线一区| 奇米888四色在线精品| 欧美日韩高清一区二区| 亚洲午夜久久久久久久久电影网 | 精品综合免费视频观看| 欧美三级日韩在线| 一区二区三区在线免费播放| 一本久道中文字幕精品亚洲嫩| 国产精品青草综合久久久久99| 成人午夜私人影院| 国产精品高潮久久久久无| 成人激情免费网站| 国产精品国产三级国产aⅴ中文| 成人a级免费电影| 亚洲视频一二三区| 欧美视频在线观看一区二区| 亚洲444eee在线观看| 日韩欧美一二三| 国模少妇一区二区三区| 国产欧美日韩中文久久| 处破女av一区二区| 国产精品久久久久久久浪潮网站| bt欧美亚洲午夜电影天堂| 亚洲精品欧美综合四区| 欧美丝袜自拍制服另类| 视频一区二区三区入口| 日韩欧美一级二级| 成人永久看片免费视频天堂| 国产精品久久精品日日| 在线观看区一区二| 午夜精品成人在线视频| 久久久精品综合| 一本久久精品一区二区| 五月天精品一区二区三区| 日韩精品一区二区三区视频播放| 国产精品456| 玉米视频成人免费看| 日韩欧美在线123| 99久久伊人久久99|