40 #if FATFS_INC_WRITE_SUPPORT 
   49     uint32 start = *startCluster;
 
   55     for (i=0;i<clusters;i++)
 
   69                 *startCluster = nextcluster;
 
   97     clusterCount = (size / clusterSize);
 
  100     if (size-(clusterSize*clusterCount))
 
  113             *startCluster = nextcluster;
 
  119         nextcluster = *startCluster;
 
  130 static int fatfs_find_free_dir_offset(
struct fatfs *
fs, 
uint32 dirCluster, 
int entryCount, 
uint32 *pSector, 
uint8 *pOffset)
 
  137     int possible_spaces = 0;
 
  138     int start_recorded = 0;
 
  163                     if (possible_spaces == 0)
 
  182                         if (possible_spaces == 0)
 
  193                         if (possible_spaces >= entryCount)
 
  202                         if (possible_spaces == 0)
 
  214                         if (possible_spaces >= entryCount)
 
  242             for (i=0;i<
fs->sectors_per_cluster;i++)
 
  284     if (!
fs->disk_io.write_media)
 
  287 #if FATFS_INC_LFN_SUPPORT 
  299     if (!fatfs_find_free_dir_offset(
fs, dirCluster, entryCount + 1, &dirSector, &dirOffset))
 
  303     pSname = (
uint8*)shortfilename;
 
  305     for (i=11; i!=0; i--) checksum = ((checksum & 1) ? 0x80 : 0) + (checksum >> 1) + *pSname++;
 
  324                     if ( (dirSector==(x-1)) && (dirOffset==item) )
 
  335 #if FATFS_INC_TIME_DATE_SUPPORT 
  340                         memcpy(&
fs->currentsector.sector[recordoffset], &shortEntry, 
sizeof(shortEntry));
 
  343                         return fs->disk_io.write_media(
fs->currentsector.address, 
fs->currentsector.sector, 1);
 
  345 #if FATFS_INC_LFN_SUPPORT 
  361                 if (!
fs->disk_io.write_media(
fs->currentsector.address, 
fs->currentsector.sector, 1))