# This is a combination of 4 commits.

# The first commit's message is:
SD Card Alpha Sorting

First iteration of alphabetical sorting for SD cards, both
slow+efficient and fast+rammy. Option for folders to sort first, last,
or not at all.

# This is the 2nd commit message:

Expand on More RAM concept, address minor bugs

# This is the 3rd commit message:

Improvements, more SORT_USES_MORE_RAM

With this option, always keeps the dir in RAM, doubling as a cache for
getfilename. A board with only 8K of SRAM is cutting it very close.

# This is the 4th commit message:

Completed SORT_USES_MORE_RAM implementation

For the MORE_RAM option we need to buffer both the short and long
names, even though long names are sometimes redundant. Worst case, all
the names are max length. We can save some RAM by not storing these. We
could save more RAM by only storing the visible part of the long name.
This commit is contained in:
Scott Lahteine
2014-11-24 14:03:20 -08:00
parent 1977b4490f
commit de725bd408
5 changed files with 237 additions and 52 deletions

View File

@@ -111,10 +111,12 @@ uint8_t const SOFT_SPI_SCK_PIN = 13;
/**
* Defines for long (vfat) filenames
*/
/** Number of UTF-16 characters per entry */
#define FILENAME_LENGTH 13
/** Number of VFAT entries used. Every entry has 13 UTF-16 characters */
#define MAX_VFAT_ENTRIES (2)
/** Total size of the buffer used to store the long filenames */
#define LONG_FILENAME_LENGTH (13*MAX_VFAT_ENTRIES+1)
#define LONG_FILENAME_LENGTH (FILENAME_LENGTH*MAX_VFAT_ENTRIES+1)
#endif // SdFatConfig_h