X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/f0c7a11670b2e31ab35c22a41c705841bcd64637..7f5dab4f261e08972d3f31512c970c29e54707d1:/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h diff --git a/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h b/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h index 760fb4064..156760afd 100644 --- a/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h +++ b/Bootloaders/Incomplete/MassStorage/Lib/VirtualFAT.h @@ -38,11 +38,17 @@ #include /* Macros: */ - #define VIRTUAL_MEMORY_BLOCK_SIZE 512 + #define FIRMWARE_FILE_SIZE (FLASHEND + 1UL) + #define FILE_CLUSTERS(size) ((size / CLUSTER_SIZE_BYTES) + ((size % CLUSTER_SIZE_BYTES) ? 1 : 0)) - #define FIRMWARE_FILE_SIZE (FLASHEND + 1UL) + #define SECTOR_SIZE_BYTES 512 + #define SECTOR_PER_CLUSTER 4 + #define CLUSTER_SIZE_BYTES (SECTOR_PER_CLUSTER * SECTOR_SIZE_BYTES) - #define LUN_MEDIA_BLOCKS ((FIRMWARE_FILE_SIZE / VIRTUAL_MEMORY_BLOCK_SIZE) + 32) + #define LUN_MEDIA_BLOCKS ((FIRMWARE_FILE_SIZE / SECTOR_SIZE_BYTES) + 32) + + #define FAT_TIME(h, m, s) ((h << 11) | (m << 5) | (s >> 1)) + #define FAT_DATE(d, m, y) (((y - 1980) << 9) | (m << 5) | (d << 0)) /* Type Definitions: */ typedef struct