| 191 |  | * if [ all clusters (from 0 to cluster_id) arealready allocated in FAT] it scan the FAT to find the cluster index on device, and load the missing cluster in the File-Cache, marked as dirty if writable is set. | 
                        | 192 |  | * if [writable and all clusters (from 0 to cluster_id) are not allocated], it allocates in FAT the required cluster, it updates the size attribute (for a file), or the is_dir attribute (for a directory), and load the missing cluster in the File-Cache, marked as dirty. | 
                        | 193 |  | * if [not writable and all clusters (from 0 to cluster_id) are not allocated] it returns an error. | 
                      
                        |  | 191 | * if [cluster_id already allocated in FAT] it scan the FAT to find the cluster index on device, and load the missing cluster in the File-Cache, marked as dirty if writable is set. | 
                        |  | 192 | * if [writable and cluster_id not allocated in FAT], it allocates in FAT the required cluster, it updates the size attribute (for a file), or the is_dir attribute (for a directory), and load the missing cluster in the File-Cache, marked as dirty. | 
                        |  | 193 | * if [not writable and cluster_id not allocated in FAT] it returns an error. |