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

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

?? dirsearchbrowse.c

?? 一個FAT32文件系統的源代碼,可用于嵌入式系統,并能夠直接在linux下直接驗證.
?? C
字號:
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//					    FAT32 File IO Library Linux Test Version
//									  V1.0L
// 	  								Rob Riglar
//								Copyright 2003,2004 
//
//   					  Email: admin@robs-projects.com
//
//			   Compiled and tested on Redhat 'Shrike' with GNU gcc
//-----------------------------------------------------------------------------
//
// This file is part of FAT32 File IO Library.
//
// FAT32 File IO Library is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// FAT32 File IO Library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with FAT32 File IO Library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#include "../IDE/IDE_Access.h"
#include "../FAT/FAT32_Base.h"
#include "../FAT/FAT32_Access.h"
#include "FileString.h"
#include "DirSearchBrowse.h"
#include "fatmisc.h"

#define clusterprint 1
//-----------------------------------------------------------------------------
// ListDirectory: Using starting cluster number of a directory and the FAT,
//				  list all directories and files 
//-----------------------------------------------------------------------------
void ListDirectory(UI32 StartCluster)
{
	byte i,item,index;
	word recordoffset;
	byte tempitem=0;
	byte LFNIndex=0;
	UI32 x=0;
	int statusreturned=0;
	  
  	FAT32.no_of_strings=0;
	FAT32.filenumber=0;
	printf("\r\nNo. 	   Filename\r\n");
	
  
	while (statusreturned!= 1) // Do while not end of cluster chain
	{
	// Read Sector
	statusreturned = FAT32_SectorReader(StartCluster, x++);

	if (!statusreturned)
	{
	LFNIndex=0;
	for (item=0; item<=15;item++)
		{
		 recordoffset = (32*item);
 
		 // Long File Name Text Found
		 if ( FATMisc_If_LFN_TextOnly(recordoffset) )   FATMisc_cacheLFN(recordoffset);
		 	 
		 // If Invalid record found delete any long file name information collated
		 else if ( FATMisc_If_LFN_Invalid(recordoffset) ) 	FAT32.no_of_strings = 0;  

		 // Normal Entry and Long text exists 
		 else if ( FATMisc_If_LFN_Exists(recordoffset,FAT32.no_of_strings) )
		 {
 	   	      FAT32.filenumber++; //File / Dir Count
		 	  if (FATMisc_If_dir_entry(recordoffset)) printf("\r\nDirectory ");
    		  if (FATMisc_If_file_entry(recordoffset)) printf("\r\nFile ");

			  // Print number of file or directory
			  
			  printf("%d -  ",FAT32.filenumber);
			  			  
			  for (index=0;index<FAT32.no_of_strings;index++)
		 	  	  for (i=0; i<13; i++)
			 	  	  putchar(FAT32.String[index][i]);
				 
			  // --- Print CLuster number
  			  if (clusterprint) printf("    Cluster Number 0x%lx", FATMisc_ClusterReassemble(recordoffset));
		 	  FAT32.no_of_strings=0;		  
		 }
		 
		 // Normal Entry, only 8.3 Text		 
		 else if ( FATMisc_If_noLFN_SFN_Only(recordoffset) )
		 {
       		  FAT32.no_of_strings=0;
			  FAT32.filenumber++; //File / Dir Count
		 	  if (FATMisc_If_dir_entry(recordoffset)) printf("\r\nDirectory ");
    		  if (FATMisc_If_file_entry(recordoffset)) printf("\r\nFile ");

			  // Print number of file or directory
			  printf("%d -  ",FAT32.filenumber);
			  
			  // Screen Print Name of file or directory
	  		  for (i=0; i<8;i++)
				{
					if ((IDE_SectorByte(i+recordoffset))!=0x20) putchar((IDE_SectorByte(i+recordoffset)));
				}
			  
			  // Dont Print dot seperator if is a directory
			  if ((IDE_SectorByte(8+recordoffset)!=0x20) && (IDE_SectorByte(9+recordoffset)!=0x20) && (IDE_SectorByte(10+recordoffset)!=0x20) ) putchar('.');

		      // Print 3 character extension
			  for (i=8; i<11;i++)
				  {
				 	if ((IDE_SectorByte(i+recordoffset))!=0x20) putchar((IDE_SectorByte(i+recordoffset)));
				  }
				  
			  // --- Print Cluster number
			  if (clusterprint) printf("    Cluster Number 0x%lx", FATMisc_ClusterReassemble(recordoffset));
		 }
		}// end of for
	}
	}
} 

//-------------------------------------------------------------
// MatchName: This function can be improved... 
//-------------------------------------------------------------
UI32 MatchName(UI32 Cluster, char *nametofind)
{

UI32 clusterchain=0;
byte item=0;
UI32 backupcluster=0;
UI32 recordoffset = 0;
UI32 ClustertoReturn = 0;
byte index=0;
byte i=0;
int lfncount=0;
int x=0;
char LFNtoMatch[maxLFNlength];
FAT32.no_of_strings = 0;

// Main cluster following loop
while (clusterchain!=1)
	{
	// Read sector
	clusterchain = FAT32_SectorReader(Cluster, x++);

	if (!clusterchain) // If sector read was successfull
	{
		// Analyse Sector
		for (item=0; item<=15;item++)
		{
			// Create the multiplier for sector access
			recordoffset = (32*item);

			// Long File Name Text Found
			if (FATMisc_If_LFN_TextOnly(recordoffset) ) FATMisc_cacheLFN(recordoffset);

			// If Invalid record found delete any long file name information collated
			else if (FATMisc_If_LFN_Invalid(recordoffset) ) FAT32.no_of_strings = 0;  

			// Normal SFN Entry and Long text exists 
			else if (FATMisc_If_LFN_Exists(recordoffset, FAT32.no_of_strings) ) 
				{

				// Copy LFN from LFN Cache into a string
				for (index=0;index<FAT32.no_of_strings;index++)
		 	  		for (i=0; i<13; i++)
						{
						// Check string isnt to long for array
						if (lfncount<maxLFNlength) LFNtoMatch[lfncount++] = FAT32.String[index][i];
						else 
							{
							printf("\r\nError: LFN to long for string memory");
							}
						}

				// Null terminate string
				LFNtoMatch[lfncount]='\0';

				// Compare names to see if they match
				if (FileString_CompareNames(LFNtoMatch, nametofind)) 
					{
					ClustertoReturn = FATMisc_ClusterReassemble(recordoffset);
					return (ClustertoReturn);
					}

		 			FAT32.no_of_strings=0;
					lfncount = 0;
				}

			// Normal Entry, only 8.3 Text		 
			else if (FATMisc_If_noLFN_SFN_Only(recordoffset) )
				{
       			FAT32.no_of_strings=0;
			  
				// Copy name to string
				for (i=0; i<11;i++) LFNtoMatch[lfncount++] = IDE_SectorByte(i+recordoffset);

				// Null terminate string
				LFNtoMatch[lfncount]='\0';
	  			
				// Compare names to see if they match
				if (FileString_CompareNames(LFNtoMatch, nametofind)) 
					{
					ClustertoReturn = FATMisc_ClusterReassemble(recordoffset);
					return (ClustertoReturn);
					}

		 		FAT32.no_of_strings=0;
				lfncount = 0;
				}
			} // End of if
		} // End of for loop

	} // End of while loop

return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本一本久久a久久精品综合麻豆| 日本不卡视频一二三区| 国产精品一区二区男女羞羞无遮挡 | 蜜臀久久99精品久久久画质超高清| 色综合久久99| 亚洲一区二区在线观看视频| 精品婷婷伊人一区三区三| 国产**成人网毛片九色| 国产亚洲精品bt天堂精选| 国产·精品毛片| 亚洲私人黄色宅男| 欧美日韩国产一级二级| 蜜臀久久99精品久久久久久9| 欧美精品一区二区三区高清aⅴ| 国产一区激情在线| 中文av一区特黄| 在线欧美日韩精品| 免费人成精品欧美精品| 国产午夜精品久久久久久免费视| 99久久精品免费精品国产| 夜夜嗨av一区二区三区四季av | 久久精品欧美一区二区三区不卡 | 亚洲欧美国产77777| 欧美日韩高清在线| 国产酒店精品激情| 亚洲男人的天堂网| 欧美xxxxxxxxx| 91影院在线观看| 青椒成人免费视频| 国产精品毛片a∨一区二区三区| 欧美色男人天堂| 国产一区不卡视频| 尤物视频一区二区| www久久精品| 日本久久一区二区| 国产在线精品一区在线观看麻豆| 亚洲精品国产视频| 一个色在线综合| 日韩午夜在线观看视频| 99精品视频在线免费观看| 蜜臀av性久久久久蜜臀aⅴ| 中文字幕一区二区三区在线观看 | 亚洲欧洲在线观看av| 555夜色666亚洲国产免| 97久久超碰精品国产| 国产一区二区三区在线看麻豆| 亚洲伦理在线精品| 国产欧美一区二区精品性色 | 国产精品理论在线观看| 91精品国产综合久久久久| 99热精品一区二区| 国产一区二区三区日韩| 午夜精品久久久久| 亚洲三级在线免费| 日本一区二区电影| 欧美大黄免费观看| 欧美性生活大片视频| 99久久综合精品| 粉嫩久久99精品久久久久久夜| 久久精工是国产品牌吗| 亚洲超碰精品一区二区| 亚洲精品成人精品456| 国产精品美女视频| 久久久国产午夜精品| 欧美一区二区三区四区视频| 国产精品三级在线观看| 精品国产乱码久久久久久图片 | 欧美日韩一区二区三区在线| 99精品国产热久久91蜜凸| 国产剧情av麻豆香蕉精品| 美女看a上一区| 免费成人小视频| 视频一区在线播放| 亚洲bt欧美bt精品777| 一区二区激情视频| 亚洲综合一二区| 亚洲成人免费看| 午夜电影一区二区三区| 亚洲国产日日夜夜| 亚洲成a人片在线观看中文| 一区二区三区资源| 伊人开心综合网| 一区二区三区欧美| 亚洲午夜激情网站| 婷婷中文字幕一区三区| 日韩经典中文字幕一区| 秋霞av亚洲一区二区三| 久久99深爱久久99精品| 国产麻豆精品视频| 成人综合日日夜夜| 99久久精品情趣| 欧美视频三区在线播放| 欧美日韩1区2区| 日韩一区国产二区欧美三区| 欧美精品一区二区在线观看| 国产欧美精品一区| 自拍偷拍国产精品| 性做久久久久久免费观看 | 奇米影视一区二区三区| 久久精品国产亚洲高清剧情介绍| 国产一区二区在线影院| 成人h动漫精品一区二区| 91色.com| 51久久夜色精品国产麻豆| 精品美女一区二区| 国产精品久久久久一区二区三区共| 国产精品麻豆久久久| 一区二区三区色| 看电视剧不卡顿的网站| 国产91丝袜在线播放九色| 91网站在线播放| 91精品国产入口| 中文字幕va一区二区三区| 亚洲精品日日夜夜| 久久国产精品露脸对白| a美女胸又www黄视频久久| 欧美日韩国产一级| 国产片一区二区| 日韩精品亚洲专区| 国产精品66部| 欧美嫩在线观看| 国产精品视频观看| 日本成人在线电影网| 成人精品在线视频观看| 欧美疯狂性受xxxxx喷水图片| 亚洲成av人片在线| 久久99国内精品| 91极品美女在线| 日本一区二区三区免费乱视频| 亚洲亚洲人成综合网络| 国产白丝精品91爽爽久久| 欧美日韩成人综合| 亚洲欧洲日韩在线| 久久99精品视频| 欧美日韩免费视频| 国产精品国产三级国产三级人妇| 日韩激情中文字幕| 91免费版在线看| 国产色产综合色产在线视频| 婷婷综合另类小说色区| 99在线视频精品| 久久久久亚洲综合| 奇米一区二区三区| 欧美视频在线观看一区二区| 国产精品国产三级国产a| 毛片av一区二区| 精品视频免费看| 一区二区三区国产豹纹内裤在线| 国产999精品久久久久久绿帽| 欧美刺激午夜性久久久久久久| 亚洲.国产.中文慕字在线| 色呦呦日韩精品| 1024亚洲合集| 成人免费看片app下载| 精品少妇一区二区三区视频免付费| 亚洲福利视频三区| 日本精品免费观看高清观看| 中文字幕一区二区三区色视频| 国产一区二区三区精品视频| 日韩一区国产二区欧美三区| 日本伊人午夜精品| 欧美日韩久久久一区| 亚洲第一电影网| 欧美日韩一区二区三区在线看 | 欧美性猛片xxxx免费看久爱| 一区视频在线播放| 91在线免费播放| 亚洲品质自拍视频| 91视频免费播放| 亚洲老司机在线| 一本大道综合伊人精品热热| 国产精品成人在线观看| 97se亚洲国产综合自在线不卡| 国产精品久久国产精麻豆99网站| 成人激情图片网| 亚洲丝袜另类动漫二区| 99久久久久久99| 一区二区三区 在线观看视频| 在线视频综合导航| 亚洲国产美女搞黄色| 在线电影院国产精品| 蜜臀av在线播放一区二区三区| 精品国产一区二区三区久久影院| 久久精品999| 国产欧美日韩精品一区| 99久久99久久免费精品蜜臀| 亚洲精品乱码久久久久久| 欧美日韩五月天| 久久99精品国产.久久久久| 国产欧美久久久精品影院| 99re热视频精品| 亚洲成a人片综合在线| 精品欧美乱码久久久久久1区2区| 国产一区在线精品| 国产精品乱码人人做人人爱 | 欧美三级日本三级少妇99| 琪琪久久久久日韩精品| 久久先锋资源网| 91网站最新地址| 美女在线视频一区|