fat16lib vs SD standard library

The "standard SD library" is a wrapper for my SdFat library. It is slow due to choices made in the wrapper. It can be faster than my Fat16 library.

Fat16 was designed to be small so it only supports FAT16 file systems and gives up some performance.

I have completed a major rewrite of SdFat. The beta is here Google Code Archive - Long-term storage for Google Code Project Hosting.

Here are the results of running the bench.pde example on a 2GB SanDisk card:

Free RAM: 1075
Type is FAT16
File size 5MB
Starting write test. Please wait up to a minute
Write 194.49 KB/sec

Starting read test. Please wait up to a minute
Read 297.32 KB/sec
Done

This is an old blue card, not a "high speed" card. Often older cards are faster than the newer cards since the performance of the SPI controller is better. New high speed cards are not optimized for SPI transfers.

Here are the results on an old 512MB Corsair card which is no longer in production:

Type is FAT16
File size 5MB
Starting write test. Please wait up to a minute
Write 301.08 KB/sec

Starting read test. Please wait up to a minute
Read 327.44 KB/sec