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

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

?? flmenu.c

?? mtk1389L latest sourcecode enjoy
?? C
?? 第 1 頁 / 共 5 頁
字號:

#ifdef ENABLE_ID3
  if ((_bFlMnItemType == FTYPE_AUDIO) && fgFlMnIsCurrPlayItem(bItemIdx))
  {
    _wStartX = (WORD) FLMN_PREVIEW_X - FSMENU_BASIC_WB_LEFT;
    _wStartY = (WORD) FLMN_PREVIEW_Y - FSMENU_BASIC_WB_TOP + 15;
    vOsdClearPos(FL_MENU_WB, 200, 180);
  }
#endif

  vMoveSlider(wFlGetItemIdx(bItemIdx), _wFlMnListLen, FALSE);

#ifdef FSMENU_WITH_FILE_INFO
    // Set to indicate the content is dirty
    vSetSharedInfo(SI_DDISC_FILE_INFO_MODE, SV_FI_DIRTY);
#endif

  // - terminate the JPEG preview timing
  _bPreview = PREVIEW_STATE_IDLE;

  return TRUE;
}

/**
 * Perform the operation to the given item when the hover cursor enter it.
 */
static BOOL fgFlMnEntItem(BYTE bItemIdx) large
{
  WORD  wNum;

  if ((bItemIdx >= _bFlMnItemNs) || (bItemIdx >= FLMN_PAGE_SZ))
    return FALSE;

  wNum = wFlGetItemIdx(bItemIdx);
  vFlMnHiliItem(bItemIdx, TRUE);
  vMoveSlider(wNum, _wFlMnListLen, TRUE);
  _bFlMnItemType = bFlGetItemType(bItemIdx);

  vFlIpShowInfo(IP_INFO_FILE_INDEX, 0, wNum);

  // - restart the JPEG preview timing if we enter a JPEG file
  if (_bFlMnItemType == FTYPE_STILL)
  {
    _bPreview = PREVIEW_STATE_START;
  }
#ifdef FSMENU_WITH_FILE_INFO
  else if (_bFlMnItemType == FTYPE_AV)
  {
    if (bSharedInfo(SI_MP3_STT) != MP3STT_PB_STRT)
    {
      vSetSharedInfo(SI_DDISC_FILE_INFO_MODE, SV_FI_GET_START);
      vFlCmdQueryItem(_bFlMnListId, wFlGetItemIdx(bItemIdx));
    }
  }
#endif

  // - move current item to the given one
  _bFlMnCurItemIdx = bItemIdx;

#ifdef ENABLE_ID3
  if ((_bFlMnItemType == FTYPE_AUDIO) && fgFlMnIsCurrPlayItem(_bFlMnCurItemIdx))
  {
    vFlGetId3Info();
  }
#endif

  vFlUpdateVfd(FALSE);

#ifdef MT8302_MANUFACTURE_TEST
  vTstPostEvt(TST_EVT_ENTER_ITEM, 0, 0, 0);
#endif

  return TRUE;
}

/**
 * Read in the list info from proper shared info group.
 */
void vFlMnRdListInfo(BYTE bId) large
{
  BYTE bIncItemType;
  WORD wBsDir, wPos;

  if (bId >= FL_MAX_LIST_NS)
    return;

  wPos = FL_LIST_FIELD(bId);
  _bFlMnListType =  bSharedInfo(wPos);//061208 xinzhen modify for CQ(PL00103667)
  bIncItemType = bSharedInfo(wPos + 1);
  bLoByte(wBsDir) = bSharedInfo(wPos + 2);
  bHiByte(wBsDir) = bSharedInfo(wPos + 3);

  bLoByte(_wFlMnListLen) = bSharedInfo(wPos + 4);
  bHiByte(_wFlMnListLen) = bSharedInfo(wPos + 5);

  return;
}

/**
 * Leave the current dir to its parent.
 */
static BOOL fgFlMnLeavDir(void) large
{
  BYTE bICfg;
  WORD wPos, wBsDir;

  // - check current dir
  wPos = FL_LIST_FIELD(_bFlMnListId);
  bICfg = bSharedInfo(wPos + 1);
  bLoByte(wBsDir) = bSharedInfo(wPos + 2);
  bHiByte(wBsDir) = bSharedInfo(wPos + 3);

  if (!wBsDir || !(bICfg & FLPARM_INC_PARENT))
    return FALSE;

  if (fgFlCmdIsOOC()) // Prevent doing fgFlMnEntDir() before other command returns.
    return FALSE;

  // - get in parent dir
  fgFlMnLeavItem(_bFlMnCurItemIdx); // - leave current item
  if ((wFlGetItemIdx(0) == 0) && (bFlGetItemType(0) == FTYPE_FOLDER))
  {
    if (fgFlClLock(FL_CMDPATH_DIR_UP_1))
    {
      fgFlMnEntDir(0, TRUE);
    }
  }
  else
  {
    //_bFlMnCurItemIdx = 0;  // this should be ".."
    //fgFlCmdGetItems(_bFlMnListId, 0x0, FLCMD_RET_OP_ENTDIR);
    if (fgFlClLock(FL_CMDPATH_DIR_UP_0))
      fgFlCmdGetItems(_bFlMnListId, 0x0);
  }

  return TRUE;
}

/**
 * Enter the dir given by item index.
 */
static BOOL fgFlMnEntDir(BYTE bItemIdx, BOOL fgMoveUp) large
{
  WORD wPos, wBsDir, wIdx;
  BYTE bFType;

  if (bItemIdx >= FL_MIN(_bFlMnItemNs, FLMN_PAGE_SZ))
  {
    return FALSE;
  }

  // - check the type of the given item
  wPos = FL_ITEM_FIELD(bItemIdx);

  // - parse the full path
  _bFlMnMemLock = TRUE;
  vParseFolderName(bItemIdx, fgMoveUp);

  // - get the base dir index and set the list to it
  bLoByte(wBsDir) = bSharedInfo(wPos + 12);
  bHiByte(wBsDir) = bSharedInfo(wPos + 13);
  wPos = FL_LIST_FIELD(_bFlMnListId);

  vFlCmdClickItem(_bFlMnListId, wFlGetItemIdx(bItemIdx));

  return TRUE;
}

/**
 * Handle the notification of MP3 playback status change.
 *
 * NOTE: In order to avoid the racing condition, check the parameters
 *  of notification instead of shared info slot.
 */
static void vFlMnChgMp3State(BYTE bStt) large
{
  BYTE  bIdx;
  WORD  wItemIdx, wIdx;

  // - the current item of MP3 module
  bLoByte(wItemIdx) = bSharedInfo(SI_MP3_ITEM_IDX_LO);
  bHiByte(wItemIdx) = bSharedInfo(SI_MP3_ITEM_IDX_HI);

  bStt = bSharedInfo(SI_MP3_STT);

  switch (bStt)
  {
    case MP3STT_PB_ENB:
      // - playback enabled
      break;
    case MP3STT_PB_STRT:
      // - playback starts

      // - temp solution
#ifdef SPTM_SUPPORT
      if (_bFlIpState == IP_STATE_PANEL_1)
        vFlIpShowInfo(IP_INFO_EQ, 0, 0);
      else
        vHideEqBar();
#endif

      if (_wFlCurAdoDir == wFlGetListBaseDir(_bFlMnListId))
      {
        vFlMnHiliOff(FLMN_HILI_PLAY);
        _wFlCurAdoIdx = wItemIdx;
        wIdx = wFlGetItemIdx(0);
        if ((_wFlCurAdoIdx != wFlGetItemIdx(_bFlMnCurItemIdx)) &&
            (wItemIdx >= wIdx) && (wItemIdx < wIdx + FLMN_ITEM_N))
        {
          bIdx = _wFlCurAdoIdx % FLMN_ITEM_N;
          vFlMnHiliOn(bIdx, FLMN_HILI_PLAY, FLMN_CLR_BG, FLMN_CLR_PLAY);
        }
      }

      vFlIpShowInfo(IP_INFO_FILE_INDEX, 0, wItemIdx);
      vFlIpShowInfo(IP_INFO_TOTALTIME, bSharedInfo(SI_MP3_TOTAL_TIME_MM),
                                         bSharedInfo(SI_MP3_TOTAL_TIME_SS));
      vFlIpShowInfo(IP_INFO_PBC, 0, 0);

#ifdef ENABLE_ID3
      vFlGetId3Info();
#endif
      break;
    case MP3STT_PB_FSH:
      // - playback finishes
      // break;
    case MP3STT_PB_ABT:
      // - playback is aborted
      // break;
    case MP3STT_PB_ERR:
      // - temp solution
#ifdef SPTM_SUPPORT
      vHideEqBar();
#endif

      // - some playback erro occurs
#ifdef SUPPORT_SACD
      if (!IS_SACD_TYPE() || bSharedInfo(SI_SACD_INFO_STYLE) != SACD_INFO_STYLE_CDDA)
#endif
      {
        vFlIpShowInfo(IP_INFO_PLAYTIME, 0, 0);
        vFlIpShowInfo(IP_INFO_TOTALTIME, 0, 0);
      }

      if (_wFlCurAdoDir == wFlGetListBaseDir(_bFlMnListId))
      {
        vFlMnHiliOff(FLMN_HILI_PLAY);
        _wFlCurAdoIdx = 0xFFFF;
      }
      if (_bFlIpState == IP_STATE_PANEL_1)
      {
        _wStartX = FS_EQ_X;
        _wStartY = 32;
        vOsdClearPos(FL_INFO_WB, 200, 32);
      }

      vFlIpShowInfo(IP_INFO_BITRATE, 0, 0xFFFF);

#ifdef MT8302_MANUFACTURE_TEST
      vTstPostEvt(TST_EVT_PLAY_ITEM_DONE, 0, 0, 0);
#endif

#ifdef ISO_AUTO_PLAY
      fgFlAutoPlayNext();
#endif
      break;
    default:
      // - error occurs
      break;
  }

  return;
}


/**
 * Clear the working area barrowed from DRAM.
 */
static void vWorkAreaClear(void) large
{
  BYTE bLen, i;
  DWRD dwAddr;

  bLen = bSharedInfo(SI_FS_WA_SZ);

  dwAddr = dwMakeDWord(SI_FS_WA_SA_B1);

  WriteDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr), 0);
  dwAddr++;
  WriteDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr), 0);
  dwAddr++;
  WriteDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr), 1);
  dwAddr++;
  WriteDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr), '\\');
  dwAddr++;

  for (i=4; i < bLen-4; i++)
  {
    WriteDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr), 0);
  }

  return;
}

#ifdef FLMN_RET_PLAY_DIR
static void vWorkAreaMove(BOOL fgToFront) large
{
  BYTE  bLen, bChar, i;
  DWRD  dwAddr, dwSrcAddr, dwDesAddr;


  dwAddr = dwMakeDWord(SI_FS_WA_SA_B1);

  if (fgToFront)
  {
    dwDesAddr = dwAddr;
    dwSrcAddr = dwAddr + FLMN_MAX_WA_SIZE;
  }
  else
  {
    dwSrcAddr = dwAddr;
    dwDesAddr = dwAddr + FLMN_MAX_WA_SIZE;
  }

  bChar = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
  WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bChar);
  dwSrcAddr ++;
  dwDesAddr ++;

  bChar = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
  WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bChar);
  dwSrcAddr ++;
  dwDesAddr ++;

  bLen = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
  WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bLen);
  dwSrcAddr ++;
  dwDesAddr ++;

  while (bLen)
  {
    bChar = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
    WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bChar);
    dwSrcAddr ++;
    dwDesAddr ++;
    bLen--;
  }
}
#endif

/**
 * Draw the name string of the current folder.
 */
static void vDrawFolderName(BOOL fgDraw) large
{
  BYTE bLen, i;
  DWRD dwAddr;


  if (fgDraw)
  {
    dwAddr = dwMakeDWord(SI_FS_WA_SA_B1);

    dwAddr += 2;
    bLen = bReadDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr));

    _wStartX = FLMN_BTN_1_X + FLMN_MENU_BORDER + 20;
    _wStartY = FLMN_BTN_1_Y + FLMN_MENU_BORDER + 2;
    vPasteBmp(FL_MENU_WB, BMP_FOLDER);

    _wStartY = FLMN_BTN_1_Y + FLMN_MENU_BORDER;
    _wStartX += 50;

    _wEndY = _wStartY + 30;
    _wEndX = FLMN_BTN_1_X + FLMN_BTN_2_W - FLMN_MENU_BORDER * 2;
    vRectangle(FL_MENU_WB, 0, 0, 1, 0);

    vSetFsCodePage(0);
    vSetMsgCol4(FL_MENU_WB, 0, 0, 3, 2);
    if (bLen > FLMN_FOLDER_LEN)
    {
      dwAddr += (bLen - FLMN_FOLDER_LEN);
      bLen = FLMN_FOLDER_LEN;
    }
  #ifdef FLMN_DONT_SHOW_NONPRINTABLE_CHAR
    vDrawStrAddrXY(_wStartX, _wStartY, 0xffff, FL_MENU_WB, bLen, dwAddr+1, '_', 0);
  #else
    vDrawStrAddrXY(_wStartX, _wStartY, 0xffff, FL_MENU_WB, bLen, dwAddr+1, 0, 0);
  #endif
    vSetFsCodePage(CODE_PAGE_MENU);
  }
  else
  {
    _wStartX = FLMN_BTN_1_X + FLMN_MENU_BORDER + 20;
    _wStartY = FLMN_BTN_1_Y + FLMN_MENU_BORDER + 2;
//    _wEndY = _wStartY + 30;
//    _wEndX = FLMN_BTN_1_X + FLMN_BTN_2_W - FLMN_MENU_BORDER * 2;
    vOsdClearPos(FL_MENU_WB, FSMENU_BASIC_WB_WIDTH, 30);
  }

  return;
}

/**
 * Calculate the name string of the folder.
 */
static void vParseFolderName(BYTE bItem, BOOL fgMoveUp) large
{
  BYTE bSrcLen, bDesLen, bTmp, i;
  WORD wPos, wBsDir;
  DWRD dwSrcAddr, dwDesAddr, dwAddr;
  BYTE bDepth, bDirLvl;


  if (fgMoveUp == TRUE)
  {
    dwSrcAddr = dwMakeDWord(SI_FS_WA_SA_B1);

    bDepth = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
    bDepth--;
    WriteDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr), bDepth);
    dwSrcAddr++;

    bDirLvl = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
    if (bDirLvl == bDepth + 1)
    {
      bDirLvl--;
      WriteDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr), bDirLvl);
    }
    dwSrcAddr++;

    dwDesAddr = dwSrcAddr;

    bSrcLen = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
    dwSrcAddr += bSrcLen;

    dwSrcAddr--;
    bSrcLen--;
    while ((bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr)) != '\\') && (bSrcLen > 1))
    {
      bSrcLen--;
      dwSrcAddr--;
    }
    WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bSrcLen);
  }
  else
  {
    wPos = FL_ITEM_FIELD(bItem);

    dwDesAddr = dwMakeDWord(SI_FS_WA_SA_B1);
    dwSrcAddr = dwMakeDWord(wPos);

    bDepth = bReadDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr));
    bDepth++;
    WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bDepth);
    dwDesAddr++;

    bDirLvl = bReadDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr));
    dwAddr = dwDesAddr;
    dwDesAddr++;

    bSrcLen = bSharedInfo(FL_ITEM_FIELD(bItem) + 4);
    bDesLen = bReadDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr));

    if (bSrcLen + 1 + bDesLen < FLMN_MAX_WA_SIZE - 2)
    {
      bDirLvl++;
      WriteDRAMTbl(bLoByte(wHiWord(dwAddr)), wLoWord(dwAddr), bDirLvl);

      WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bSrcLen + 1 + bDesLen);

      dwDesAddr += (bDesLen + 1);

      i=0;
      while (i < bSrcLen)
      {
        bTmp = bReadDRAMTbl(bLoByte(wHiWord(dwSrcAddr)), wLoWord(dwSrcAddr));
  //#ifdef FLMN_DONT_SHOW_NONPRINTABLE_CHAR
  #if 0
        if ((bTmp < 0x20) || (bTmp > 0x7E))
        {
          bTmp = '_';
        }
  #endif
        WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), bTmp);
        dwSrcAddr++;
        dwDesAddr++;
        i++;
      }
      WriteDRAMTbl(bLoByte(wHiWord(dwDesAddr)), wLoWord(dwDesAddr), '\\');
    }
  }

  return;
}

////////////////////////////////////////////////////////////////////////////////
//
// Info Panel
//

static void vFlMnDrawInfoPanel(BYTE bPanel) large
{
  switch(bPanel)
  {
    case IP_STATE_PANEL_1:
      vFlIpShowInfo(IP_INFO_EQ, 0, 0);
      vFlIpClearInfoArea(IP_INFO_PANEL_2);
      vFlIpShowInfo(IP_INFO_VOLUME, bAdspCurrVol(),
                    (fgIsMute() ? FLIP_VOLUME_MUTE_ON : FLIP_VOLUME_REDRAW));
      vFlIpShowInfo(IP_INFO_PBC, 0, 0);
              vFlIpShowInfo(IP_INFO_USR_AUX_CTRL, bSharedInfo(SI_USR_AUX_CTRL), 0);
      if (bS

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美综合在线精品| 亚洲成精国产精品女| 中文字幕中文字幕一区| 日韩在线卡一卡二| kk眼镜猥琐国模调教系列一区二区| 欧美无砖砖区免费| 一区二区三区中文在线观看| 麻豆一区二区99久久久久| 91在线porny国产在线看| 337p日本欧洲亚洲大胆色噜噜| 艳妇臀荡乳欲伦亚洲一区| 国产1区2区3区精品美女| 欧美丰满少妇xxxxx高潮对白| 中文字幕在线观看不卡| 国产一区二区伦理| 日韩欧美精品三级| 日韩高清欧美激情| 精品视频一区二区不卡| 一区二区三区中文字幕| 91免费视频网| 综合欧美一区二区三区| 成人晚上爱看视频| 国产日韩欧美麻豆| 麻豆国产精品777777在线| 欧美精品tushy高清| 亚洲高清免费在线| 欧美日韩在线一区二区| 亚洲图片欧美色图| 欧美日韩精品一区二区天天拍小说| 国产精品免费av| 成人黄色av网站在线| 精品久久久久久久久久久久久久久久久 | 国内不卡的二区三区中文字幕| 欧美一区三区二区| 蜜桃av一区二区三区| 日韩一级免费一区| 久久精品国内一区二区三区| 欧美本精品男人aⅴ天堂| 毛片av一区二区三区| 日韩免费性生活视频播放| 亚洲韩国一区二区三区| 欧美一区二区在线观看| 久久99精品国产.久久久久| 日韩欧美一卡二卡| 国产高清在线精品| 国产精品乱码久久久久久| 色综合天天综合网天天狠天天| 亚洲欧美视频在线观看视频| 欧美亚洲禁片免费| 日韩精品国产精品| 久久久久久久久久久99999| 成人免费高清视频| 亚洲在线视频一区| 日韩欧美国产精品| 成人美女视频在线观看18| 国产精品理论在线观看| 欧美三级在线视频| 久久99久久精品| 国产精品国产三级国产有无不卡| 色吊一区二区三区| 麻豆精品在线看| 国产精品国产自产拍高清av王其 | 亚洲人成网站影音先锋播放| 欧美体内she精高潮| 精品亚洲国产成人av制服丝袜| 国产精品美女久久福利网站| 欧美日韩一区二区在线观看视频| 激情综合网av| 亚洲一区在线观看免费| 2023国产精品| 欧美日韩久久久| 国产成人免费视频精品含羞草妖精| 亚洲视频狠狠干| 精品久久国产97色综合| 91久久精品一区二区| 国产精品伊人色| 五月婷婷激情综合网| 欧美国产国产综合| 欧美一区二区三区影视| 99re热视频这里只精品| 另类综合日韩欧美亚洲| 一区二区在线观看免费| 国产午夜一区二区三区| 91精品在线观看入口| 97久久超碰国产精品电影| 精品系列免费在线观看| 亚洲第一狼人社区| 中文字幕综合网| 国产视频不卡一区| 欧美一级午夜免费电影| 欧美色视频在线观看| 99久久精品国产导航| 久久99精品国产91久久来源| 视频在线观看91| 一区二区三区在线观看网站| 国产欧美日韩综合精品一区二区| 91超碰这里只有精品国产| 色久综合一二码| 99国产一区二区三精品乱码| 国产精品 日产精品 欧美精品| 日日摸夜夜添夜夜添精品视频| 亚洲麻豆国产自偷在线| 亚洲欧洲99久久| 国产精品欧美久久久久一区二区 | 国产精品综合视频| 蜜桃精品在线观看| 日韩电影免费一区| 午夜精彩视频在线观看不卡| 亚洲黄色尤物视频| 亚洲欧美成人一区二区三区| 国产精品久久久久影院老司 | 成人听书哪个软件好| 国产精品123| 成人国产精品免费| 波多野结衣一区二区三区| 成人免费黄色在线| 成人免费毛片片v| 99免费精品在线| 色婷婷国产精品| 在线观看日韩国产| 欧美三级电影网站| 4hu四虎永久在线影院成人| 欧美一区二区视频在线观看2020| 欧美肥妇毛茸茸| 欧美成人国产一区二区| 久久久亚洲综合| 国产精品久久久久一区二区三区| 中文字幕欧美一区| 亚洲综合激情另类小说区| 亚洲va欧美va人人爽午夜| 日韩精品一区第一页| 看片网站欧美日韩| 国产成人精品在线看| 色综合久久中文综合久久牛| 欧美午夜理伦三级在线观看| 欧美一区午夜精品| 国产午夜精品一区二区三区嫩草| 国产精品久久久久精k8| 亚洲成人午夜电影| 精品在线播放午夜| 91网址在线看| 91精品国产乱| 国产精品国产三级国产a| 一片黄亚洲嫩模| 久久99精品久久久久久国产越南 | 欧美视频精品在线| 日韩欧美一区电影| 亚洲人成在线观看一区二区| 日韩成人一级片| 成人av网站大全| 这里只有精品99re| 国产精品国产三级国产a| 日韩精品福利网| 成人h动漫精品一区二区| 欧美日韩在线免费视频| 日本一区二区三区电影| 首页国产丝袜综合| 不卡av电影在线播放| 欧美一区二区视频在线观看2020 | 色综合久久久久久久| 欧美日韩国产区一| 国产精品美女久久久久久2018| 亚洲高清免费一级二级三级| 福利一区福利二区| 欧美日韩亚州综合| 国产日韩在线不卡| 免费成人在线观看视频| 一道本成人在线| 久久伊99综合婷婷久久伊| 国产精品久久一级| 韩日欧美一区二区三区| 欧美日韩精品福利| 亚洲人亚洲人成电影网站色| 九色|91porny| 9191成人精品久久| 一区二区三区四区高清精品免费观看| 国产精品99久久久久| 欧美高清视频不卡网| 中文字幕一区二区三区视频| 毛片av中文字幕一区二区| 欧美色网站导航| 中文字幕国产一区二区| 日韩福利视频导航| 欧美一a一片一级一片| 国产精品视频看| 国产中文字幕一区| 日韩欧美电影一区| 水野朝阳av一区二区三区| 在线亚洲一区二区| 最新热久久免费视频| 大白屁股一区二区视频| 精品av久久707| 精品一二线国产| 精品福利av导航| 激情av综合网| 久久亚洲捆绑美女| 久久er99热精品一区二区| 欧美一级片在线看| 免费观看在线综合色| 555夜色666亚洲国产免|