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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? file.c

?? 8051實(shí)現(xiàn)的MP3播放程序,大家可以一起學(xué)習(xí).
?? C
字號:
/*C**************************************************************************
* NAME:         file.c
*----------------------------------------------------------------------------
* Copyright (c) 2003 Atmel.
*----------------------------------------------------------------------------
* RELEASE:      snd1c-refd-nf-4_0_3      
* REVISION:     1.10     
*----------------------------------------------------------------------------
* PURPOSE:
* This file contains extention routines to the file system
*****************************************************************************/

/*_____ I N C L U D E S ____________________________________________________*/

#include "config.h"                         /* system configuration   */
#include "file.h"                           /* file system definition */
/*_____ M A C R O S ________________________________________________________*/

//#define F_SEEK_TIME ((Byte)4)

//extern  bit     fs_memory;          /* selected file system */
extern  bdata bit     fat_is_fat16;         /* TRUE: FAT16 - FALSE: FAT12 */
extern  bdata bit     fat_is_fat32;         /* TRUE: FAT32 - FALSE: FAT12/FAT16 */
/*_____ D E F I N I T I O N ________________________________________________*/


/*_____ D E C L A R A T I O N ______________________________________________*/


/*F**************************************************************************
* NAME: file_seek_prev
*----------------------------------------------------------------------------
* PARAMS:
*   id: file type identifier
*   loop: loop to the last file
*
* return:
*----------------------------------------------------------------------------
* PURPOSE:
*   Select previous file with specified extension
*----------------------------------------------------------------------------
* EXAMPLE:
*----------------------------------------------------------------------------
* NOTE:
*   Depending on the time played, this function selects the previous file
*   or restarts the file under playing.
*----------------------------------------------------------------------------
* REQUIREMENTS:
*****************************************************************************/
bit file_seek_prev (Byte id, bit loop)
{
  //if (1)/*(disp_get_sec() < F_SEEK_TIME) && (disp_get_min() == 0)*/
  {
    while (File_goto_prev() == OK)
    {
      /* a file or a directory exists */
      if ((File_type() & id) != 0)            /* specified file type found */
      { 
        return TRUE;                          /* exit when found */
      }
    }
    /* beginning of dir */
    if (File_goto_last() == OK)               /* goto to the end of dir */
    {
      if (loop)                               /* loop = false when ask previous and play */
      {
        do
        {
          if ((File_type() & id) != 0)          /* look for a specified file */
          {                                     /* specified file type found */
            return TRUE;                        /* exit when found */
          }
        }
        while (File_goto_prev() == OK);
        return FALSE;
      }
      else                                    /* no loop */
      {
        return FALSE;                         /* Stop at the last */
      }
    }
    else
      return FALSE;
  }
  return TRUE;
}

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

bit file32_seek_prev (Byte id, bit loop)
{
  //if (1)/*(disp_get_sec() < F_SEEK_TIME) && (disp_get_min() == 0)*/
  {
    while (File32_goto_prev() == OK)
    {
      /* a file or a directory exists */
      if ((File32_type() & id) != 0)            /* specified file type found */
      { 
        return TRUE;                          /* exit when found */
      }
    }
    /* beginning of dir */
    if (File32_goto_last() == OK)               /* goto to the end of dir */
    {
      if (loop)                               /* loop = false when ask previous and play */
      {
        do
        {
          if ((File32_type() & id) != 0)          /* look for a specified file */
          {                                     /* specified file type found */
            return TRUE;                        /* exit when found */
          }
        }
        while (File32_goto_prev() == OK);
        return FALSE;
      }
      else                                    /* no loop */
      {
        return FALSE;                         /* Stop at the last */
      }
    }
    else
      return FALSE;
  }
  return TRUE;
}


/*F**************************************************************************
* NAME: file_seek_next
*----------------------------------------------------------------------------
* PARAMS:
*   id:   file type identifier
*   loop: loop to the first file
*
* return:
*----------------------------------------------------------------------------
* PURPOSE:
*   Select next file with specified extension
*----------------------------------------------------------------------------
* EXAMPLE:
*----------------------------------------------------------------------------
* NOTE:
*----------------------------------------------------------------------------
* REQUIREMENTS:
*****************************************************************************/
bit file_seek_next (Byte id, bit loop)
{
  
  while (File_goto_next() == OK)
  { 
    /* file or dir found */
    if ((File_type() & id) != 0)
    { /* specified file type found */
      return TRUE;                          /* exit when found */
    }
  }
                                            /* end of dir */
  if (File_goto_first() == OK)              /* goto beginning of the dir */
  {
    if (loop)                               /* loop ? */
    {                                       /* re-start at the beginning */
      do
      {
        if ((File_type() & id) != 0)        /* look for a specified file */
        {                                   /* specified file type found */
          return TRUE;                      /* exit when found */
        }
      }
      while (File_goto_next() == OK);      
      return FALSE;                         /* no specified file in the dir */
    }
    else                                    /* no loop */
    {
      return FALSE;                         /* Stop at the beginning */
    }
  }
  else
    return FALSE;
}

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
bit file32_seek_next (Byte id, bit loop)
{
  
  while (File32_goto_next() == OK)
  { 
    /* file or dir found */
    if ((File_type() & id) != 0)
    { /* specified file type found */
      return TRUE;                          /* exit when found */
    }
  }
                                            /* end of dir */
  if (File32_goto_first() == OK)              /* goto beginning of the dir */
  {
    if (loop)                               /* loop ? */
    {                                       /* re-start at the beginning */
      do
      {
        if ((File32_type() & id) != 0)        /* look for a specified file */
        {                                   /* specified file type found */
          return TRUE;                      /* exit when found */
        }
      }
      while (File32_goto_next() == OK);      
      return FALSE;                         /* no specified file in the dir */
    }
    else                                    /* no loop */
    {
      return FALSE;                         /* Stop at the beginning */
    }
  }
  else
    return FALSE;
}

/*F**************************************************************************
* NAME: file_entry_dir
*----------------------------------------------------------------------------
* PARAMS:
*   id: file type identifier
*
* return:
*   OK: file type found in dir
*   KO: file type not found in dir
*----------------------------------------------------------------------------
* PURPOSE:
*   Enter a directory
*----------------------------------------------------------------------------
* EXAMPLE:
*----------------------------------------------------------------------------
* NOTE:
*----------------------------------------------------------------------------
* REQUIREMENTS:
*****************************************************************************/
bit file_entry_dir (Byte id)
{ 
  if (File_type() == FILE_DIR)              /* only for directory! */
  { /* stopped on a directory */
    if (File_goto_child(id) == KO)
    {
      /* no file in dir */
      File_goto_parent(id);
      return KO;
    }
    else
     return OK;
  }
  else
  {
    return KO;
  }
}

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

bit file32_entry_dir (Byte id)
{ 
  if (File32_type() == FILE_DIR)              /* only for directory! */
  { /* stopped on a directory */
    if (File32_goto_child(id) == KO)
    {
      /* no file in dir */
      File32_goto_parent(id);
      return KO;
    }
    else
     return OK;
  }
  else
  {
    return KO;
  }
}







?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91香蕉视频mp4| av午夜一区麻豆| 精品久久久久久久人人人人传媒| 国产成人精品亚洲777人妖| 免费精品视频在线| 亚洲韩国一区二区三区| 亚洲一区二区在线免费观看视频| 国产精品福利电影一区二区三区四区| 久久在线免费观看| 欧美国产乱子伦| 国产精品美女一区二区三区| 国产女主播视频一区二区| 久久亚区不卡日本| 欧美国产精品一区| 国产精品久久福利| 1024亚洲合集| 亚洲福中文字幕伊人影院| 午夜久久久久久久久久一区二区| |精品福利一区二区三区| 一区二区三区中文字幕| 亚洲超碰97人人做人人爱| 日av在线不卡| 成人国产电影网| 7878成人国产在线观看| 亚洲欧美一区二区三区国产精品| 亚洲日本va午夜在线影院| 一区二区高清免费观看影视大全| 一二三四区精品视频| 日韩成人午夜精品| 国产精品影视网| 国内精品视频一区二区三区八戒| 韩国中文字幕2020精品| 久久国产精品露脸对白| 高清免费成人av| 欧美视频三区在线播放| 91超碰这里只有精品国产| 中文在线一区二区| 日韩电影在线一区二区三区| 成人在线综合网| 91精品国产高清一区二区三区蜜臀| 久久久久久99精品| 亚洲一区二区视频在线| 国产剧情在线观看一区二区| 色一情一伦一子一伦一区| 欧美一区二区三区性视频| 久久精品男人的天堂| 亚洲午夜精品久久久久久久久| 久久爱www久久做| 欧美在线免费观看亚洲| www欧美成人18+| 五月激情综合色| 99精品视频一区| 久久久午夜精品理论片中文字幕| 伊人婷婷欧美激情| www.欧美日韩国产在线| 欧美tk—视频vk| 日韩中文字幕av电影| 99re视频精品| 欧美激情综合五月色丁香小说| 日产国产高清一区二区三区| 成人av综合在线| 久久综合成人精品亚洲另类欧美| 五月综合激情日本mⅴ| 成人免费黄色在线| 国产蜜臀av在线一区二区三区| 免播放器亚洲一区| 91精品国产福利在线观看| 一区二区成人在线视频| 色综合天天在线| 在线播放91灌醉迷j高跟美女 | 久久精品国产免费看久久精品| 97se亚洲国产综合自在线| 国产亚洲女人久久久久毛片| 久久机这里只有精品| 宅男噜噜噜66一区二区66| 亚洲精品视频在线观看网站| 91在线免费看| 一区二区三区在线免费| 94-欧美-setu| 一二三四区精品视频| 色8久久精品久久久久久蜜| 国产精品久久久久永久免费观看| 国产东北露脸精品视频| 国产亲近乱来精品视频| 国产成人在线免费观看| 日本一区二区三区久久久久久久久不 | 三级精品在线观看| 欧美性做爰猛烈叫床潮| 亚洲成人免费影院| 日韩午夜在线影院| 国产精品一区二区无线| 国产性天天综合网| 成人在线综合网站| 亚洲黄色免费电影| 欧美视频精品在线| 欧美a一区二区| 2020日本不卡一区二区视频| 国产999精品久久| 亚洲男人电影天堂| 欧美日韩免费一区二区三区视频 | 极品少妇xxxx精品少妇| 国产欧美日韩亚州综合 | 丁香婷婷综合色啪| 亚洲激情图片一区| 欧美一级一区二区| 久久精品国产网站| 精品欧美一区二区三区精品久久 | 欧美成人一区二区三区在线观看| 喷水一区二区三区| 亚洲国产高清aⅴ视频| 欧美性受xxxx黑人xyx性爽| 秋霞影院一区二区| 亚洲欧美综合网| 91精品国产入口在线| 成人黄页毛片网站| 日本欧美大码aⅴ在线播放| 中文字幕电影一区| 制服丝袜中文字幕亚洲| 成人av影院在线| 青青青爽久久午夜综合久久午夜| 中文字幕av一区二区三区免费看| 欧美日韩一区久久| 韩国一区二区在线观看| 亚洲欧洲日韩女同| 日韩欧美一二区| 91免费在线看| 国产成人鲁色资源国产91色综| 亚洲一区二区在线免费看| 国产片一区二区三区| 日韩精品一区二区三区在线观看 | 亚洲精品一二三区| 亚洲精品一区二区精华| 欧美日韩一区二区三区在线| 波多野结衣在线一区| 韩国v欧美v亚洲v日本v| 午夜在线电影亚洲一区| 亚洲人成精品久久久久久| 久久久天堂av| 日韩精品专区在线| 日韩欧美中文一区二区| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 国产一区二区调教| 日本成人在线视频网站| 图片区小说区国产精品视频| 亚洲男帅同性gay1069| 最新日韩在线视频| 国产精品成人免费精品自在线观看| 精品久久久三级丝袜| 欧美成人精品3d动漫h| 91精品蜜臀在线一区尤物| 欧美午夜在线一二页| 欧美午夜在线观看| 欧美喷水一区二区| 欧美三级欧美一级| 欧美日韩色综合| 制服丝袜一区二区三区| 日韩无一区二区| 亚洲精品在线三区| 久久久久亚洲综合| 中文字幕va一区二区三区| 日本一二三不卡| 中文字幕在线观看不卡视频| 亚洲精品亚洲人成人网在线播放| 亚洲在线视频一区| 亚洲h动漫在线| 奇米一区二区三区| 国产一区二区三区免费| 岛国一区二区在线观看| 国内久久婷婷综合| 成人黄色av电影| 在线观看视频一区二区| 91精品国模一区二区三区| 日韩你懂的在线播放| 国产欧美一区二区精品久导航 | 久久色成人在线| 国产亚洲一区二区三区四区| 国产精品三级视频| 亚洲一区二区精品久久av| 日本aⅴ亚洲精品中文乱码| 国产在线一区二区| 91天堂素人约啪| 欧美一区二区在线免费播放| 久久久久久免费| 伊人一区二区三区| 激情欧美日韩一区二区| 99久久99久久综合| 欧美一区二区三区不卡| 国产精品久99| 视频一区视频二区中文| 风间由美一区二区av101| 色天天综合色天天久久| 精品女同一区二区| 久久久国产一区二区三区四区小说 | 亚洲精品成人在线| 九色综合狠狠综合久久| 懂色av一区二区三区免费观看| 欧美日韩三级一区二区| 久久精品日产第一区二区三区高清版 | 宅男在线国产精品| 中文字幕制服丝袜成人av|