]> cloudbase.mooo.com Git - z180-stamp.git/blame - fatfs/documents/updates.html
Adaptions for fatfs R0.15
[z180-stamp.git] / fatfs / documents / updates.html
CommitLineData
5630b930
L
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\r
2<html lang="en">\r
3<head>\r
4<meta http-equiv="Content-Type" content="text/html; charset=utf-8">\r
5<meta http-equiv="Content-Style-Type" content="text/css">\r
6<meta http-equiv="cache-control" content="no-cache">\r
7<link rel="start" title="Site Top" href="../../">\r
8<link rel="stylesheet" href="css_e.css" type="text/css" media="screen" title="ELM Default">\r
9<title>FatFs - Updates and Migration Notes</title>\r
10</head>\r
11<body style="max-width: none;">\r
12<h2>Updates and Migration Notes</h2>\r
13<table class="lst4">\r
14<tr><th>Revision</th><th>Updates</th><th>Migration Notes</th></tr>\r
15<tr>\r
16<td>R0.15<br>Nov 6, 2022</td>\r
17<td>\r
18Changed user provided synchronization functions in order to completely eliminate the platform dependency from FatFs code.<br>\r
19Fixed a potential error in <tt>f_mount</tt> when <tt>FF_FS_REENTRANT</tt>.<br>\r
20Fixed file lock control <tt>FF_FS_LOCK</tt> is not mutal excluded when <tt>FF_FS_REENTRANT && FF_VOLUMES &gt; 1</tt> is true.<br>\r
21Fixed <tt>f_mkfs</tt> creates broken exFAT volume when the size of volume is <tt>&gt;= 2^32</tt> sectors.<br>\r
22Fixed string functions cannot write the unicode characters not in BMP when <tt>FF_LFN_UNICODE == 2</tt> (UTF-8).<br>\r
23Fixed a compatibility issue in identification of GPT header.<br>\r
24</td>\r
25<td>\r
26User provided synchronization functions, <tt>ff_cre_syncobj</tt>, <tt>ff_del_syncobj</tt>, <tt>ff_req_grant</tt> and <tt>ff_rel_grant</tt>, needed when <tt>FF_FS_REENTRANT</tt> are replaced with <tt>ff_mutex_create</tt>, <tt>ff_mutex_delete</tt>, <tt>ff_mutex_take</tt> and <tt>ff_mutex_give</tt> respectively. For example, see <tt>ffsystem.c</tt>.<br>\r
27<tt>FF_SYNC_t</tt> is removed from the configuration options.<br>\r
28</td>\r
29</tr>\r
30<tr>\r
31<td>R0.14b<br>Apr 17, 2021</td>\r
32<td>\r
33Made FatFs uses standard library <tt>string.h</tt> for copy, compare and search instead of built-in string functions.<br>\r
34Added support for long long integer and floating point to <tt>f_printf</tt>. (<tt>FF_STRF_LLI</tt> and <tt>FF_STRF_FP</tt>)<br>\r
35Made path name parser ignores the terminating separator to allow <tt>"dir/"</tt>.<br>\r
36Improved the compatibility in Unix style path name feature.<br>\r
37Fixed the file gets dead-locked when <tt>f_open</tt> failed with certain conditions. (appeared at R0.12a)<br>\r
38Fixed <tt>f_mkfs</tt> can create wrong exFAT volume due to a timing dependent error. (appeared at R0.12)<br>\r
39Fixed code page 855 cannot be set by <tt>f_setcp</tt>. (appeared at R0.13)<br>\r
40Fixed some compiler warnings.<br>\r
41</td>\r
42<td>\r
43From this revision, FatFs depends on <tt>string.h</tt>.<br>\r
44</td>\r
45</tr>\r
46<tr>\r
47<td>R0.14a<br>Dec 05, 2020</td>\r
48<td>\r
49Limited number of recursive calls in <tt>f_findnext</tt> to prevent stack overflow.<br>\r
50Fixed old floppy disks formatted with MS-DOS 2.x and 3.x cannot be mounted.<br>\r
51Fixed some compiler warnings.<br>\r
52</td>\r
53<td>\r
54Number of wildcards in the matching pattern in <tt>f_findfirst</tt> is limited to 4.<br>\r
55</td>\r
56</tr>\r
57<tr>\r
58<td>R0.14<br>Oct 14, 2019</td>\r
59<td>\r
60Added support for 64-bit LBA and GUID partition table (<tt>FF_LBA64</tt>)<br>\r
61Changed some API functions, <tt>f_mkfs</tt> and <tt>f_fdisk</tt>.<br>\r
62Fixed <tt>f_open</tt> cannot find the file with file name in length of <tt>FF_MAX_LFN</tt> characters.<br>\r
63Fixed <tt>f_readdir</tt> cannot retrieve long file names in length of <tt>FF_MAX_LFN - 1</tt> characters.<br>\r
64Fixed <tt>f_readdir</tt> returns file names with wrong case conversion. (appeared at R0.12)<br>\r
65Fixed <tt>f_mkfs</tt> can fail to create exFAT volume in the second partition. (appeared at R0.12)<br>\r
66</td>\r
67<td>\r
68Usage of <tt>f_mkfs</tt> and <tt>f_fdisk</tt> is changed and some features are added to these functions.<br>\r
69</td>\r
70</tr>\r
71<tr>\r
72<td>R0.13c<br>Oct 14, 2018</td>\r
73<td>\r
74Supported <tt>stdint.h</tt> for C99 and later. (<tt>integer.h</tt> was included in <tt>ff.h</tt>)<br>\r
75Fixed reading a directory gets infinite loop when the last directory entry is not empty. (appeared at R0.12)<br>\r
76Fixed creating a sub-directory in the fragmented sub-directory on the exFAT volume collapses FAT chain of the parent directory. (appeared at R0.12)<br>\r
77Fixed <tt>f_getcwd</tt> cause output buffer overrun when the buffer has a valid drive number. (appeared at R0.13b)<br>\r
78</td>\r
79<td>\r
80From this revision, FatFs depends on <tt>stdint.h</tt> in C99 or later.<br>\r
81<tt>integer.h</tt> is removed.<br>\r
82</td>\r
83</tr>\r
84<tr>\r
85<td>R0.13b<br>Apr 07, 2018</td>\r
86<td>\r
87Added support for UTF-32 encoding on the API. (<tt>FF_LFN_UNICODE = 3</tt>)<br>\r
88Added support for Unix style volume prefix. (<tt>FF_STR_VOLUME_ID = 2</tt>)<br>\r
89Fixed accesing objects in the exFAT root directory beyond the cluster boundary can fail. (appeared at R0.12c)<br>\r
90Fixed <tt>f_setlabel</tt> does not reject some invalid characters. (appeared at R0.09b)<br>\r
91</td>\r
92<td>\r
93</td>\r
94</tr>\r
95<tr>\r
96<td>R0.13a<br>Oct 14, 2017</td>\r
97<td>\r
98Added support for UTF-8 encoding on the API. (<tt>FF_LFN_UNICODE = 2</tt>)<br>\r
99Added options for file name output buffer. (<tt>FF_LFN_BUF, FF_SFN_BUF</tt>)<br>\r
100Added dynamic memory allocation option for working buffer of <tt>f_mkfs</tt> and <tt>f_fdisk</tt>.<br>\r
101Fixed <tt>f_fdisk</tt> and <tt>f_mkfs</tt> create the partition table with wrong CHS parameters. (appeared at R0.09)<br>\r
102Fixed <tt>f_unlink</tt> can cause lost clusters at fragmented file on the exFAT volume. (appeared at R0.12c)<br>\r
103Fixed <tt>f_setlabel</tt> rejects some valid characters for exFAT volume. (appeared at R0.12)<br>\r
104</td>\r
105<td>\r
106</td>\r
107</tr>\r
108<tr>\r
109<td>R0.13<br>May 21, 2017</td>\r
110<td>\r
111Prefix of configuration item names are changed from <tt>"_"</tt> to <tt>"FF_"</tt>.<br>\r
112Added <tt>f_setcp</tt>, run-time code page configuration. (<tt>FF_CODE_PAGE = 0</tt>)<br>\r
113Improved cluster allocation time on stretch a deep buried cluster chain.<br>\r
114Improved processing time of <tt>f_mkdir</tt> with large cluster size by using <tt>FF_USE_LFN = 3</tt>.<br>\r
115Improved exFAT <tt>NoFatChain</tt> flag of the fragmented file to be set after it is truncated and got contiguous.<br>\r
116Fixed archive attribute is left not set when a file on the exFAT volume is renamed. (appeared at R0.12)<br>\r
117Fixed exFAT FAT entry can be collapsed when write or lseek operation to the existing file is done. (appeared at R0.12c)<br>\r
118Fixed creating a file can fail when a new cluster allocation to the exFAT directory occures. (appeared at R0.12c)<br>\r
119</td>\r
120<td>\r
121ASCII only configuration, <tt>FF_CODE_PAGE = 1</tt>, is removed. Use <tt>FF_CODE_PAGE = 437</tt> instead.<br>\r
122</td>\r
123</tr>\r
124<tr>\r
125<td>R0.12c<br>Mar 04, 2017</td>\r
126<td>\r
127Improved write throughput at the fragmented file on the exFAT volume.<br>\r
128Made memory usage for exFAT be able to be reduced as decreasing <tt>_MAX_LFN</tt>.<br>\r
129Fixed successive <tt>f_getfree</tt> can return wrong count on the FAT12/16 volume. (appeared at R0.12)<br>\r
130Fixed configuration option <tt>_VOLUMES</tt> cannot be set 10. (appeared at R0.10c)<br>\r
131</td>\r
132<td>\r
133</td>\r
134</tr>\r
135<tr>\r
136<td>R0.12b<br>Sep 4, 2016</td>\r
137<td>\r
138Made <tt>f_rename</tt> be able to rename objects with the same name but case.<br>\r
139Fixed an error in the case conversion teble of code page 866. (<tt>ff.c</tt>)<br>\r
140Fixed writing data is truncated at the file offset 4GiB on the exFAT volume. (appeared at R0.12)<br>\r
141Fixed creating a file in the root directory of exFAT volume can fail. (appeared at R0.12)<br>\r
142Fixed <tt>f_mkfs</tt> creating exFAT volume with too small cluster size can collapse unallocated memory. (appeared at R0.12a)<br>\r
143Fixed wrong object name can be returned when read directory at Unicode cfg. (appeared at R0.12)<br>\r
144Fixed large file allocation/removing on the exFAT volume collapses allocation bitmap. (appeared at R0.12)<br>\r
145Fixed some internal errors in <tt>f_expand</tt> and <tt>f_lseek.</tt> (appeared at R0.12)<br>\r
146</td>\r
147<td>\r
148</td>\r
149</tr>\r
150<tr>\r
151<td>R0.12a<br>Jul 10, 2016</td>\r
152<td>\r
153Added support for creating exFAT volume with some changes of <tt>f_mkfs</tt>.<br>\r
154Added a file open method <tt>FA_OPEN_APPEND</tt>.<br>\r
155<tt>f_forward</tt> is available regardless of <tt>_FS_TINY</tt>.<br>\r
156Fixed <tt>f_mkfs</tt> creates broken volume. (appeared at R0.12)<br>\r
157Fixed wrong memory read in <tt>create_name</tt>. (appeared at R0.12)<br>\r
158Fixed compilation fails at some configurations, <tt>_USE_FASTSEEK</tt> and <tt>_USE_FORWARD</tt>.<br>\r
159</td>\r
160<td>\r
161Usage of <tt>f_mkfs</tt> is changed.<br>\r
162</td>\r
163</tr>\r
164<tr>\r
165<td>R0.12<br>Apr 12, 2016</td>\r
166<td>\r
167Added support for exFAT file system. (<tt>_FS_EXFAT</tt>)<br>\r
168Added <tt>f_expand</tt>. (<tt>_USE_EXPAND</tt>)<br>\r
169Changed some members in <tt>FINFO</tt> and behavior of <tt>f_readdir</tt>.<br>\r
170Added a configuration option <tt>_USE_CHMOD</tt>.<br>\r
171Fixed errors in the case conversion teble of Unicode (<tt>cc*.c</tt>).<br>\r
172</td>\r
173<td>\r
174Usage and members of <tt>FINFO</tt> sructure used in <tt>f_readdir</tt> is changed.<br>\r
175Dot entries in the sub-directory are never appear in <tt>f_readdir</tt>.<br>\r
176<tt>".."</tt> does not work as path name in exFAT volume.<br>\r
177<tt>f_getcwd</tt> does not work in exFAT volume.</br>\r
178Many members in <tt>FIL</tt> and <tt>DIR</tt> structure are changed.<br>\r
179To use <tt>f_chmod</tt>, <tt>_USE_CHMOD</tt> needs to be set.<br>\r
180<tt>_WORD_ACCESS</tt> is removed from the configuration options.<br>\r
181</td>\r
182</tr>\r
183<tr>\r
184<td>R0.11a<br>Sep 5, 2015</td>\r
185<td>\r
186Fixed wrong media change can lead a deadlock at thread-safe configuration.<br>\r
187Added code page 771, 860, 861, 863, 864, 865 and 869. (<tt>_CODE_PAGE</tt>)<br>\r
188Fixed errors in the case conversion teble of code page 437 and 850 (<tt>ff.c</tt>).<br>\r
189Fixed errors in the case conversion teble of Unicode (<tt>cc*.c</tt>).<br>\r
190</td>\r
191<td>\r
192Removed some code pages actually not exist on the standard systems. (<tt>_CODE_PAGE</tt>)<br>\r
193</td>\r
194</tr>\r
195<tr>\r
196<td>R0.11<br>Feb 9, 2015</td>\r
197<td>\r
198Added <tt>f_findfirst</tt> and <tt>f_findnext.</tt> (<tt>_USE_FIND</tt>)<br>\r
199Fixed <tt>f_unlink</tt> does not remove cluster chain of the file. (appeared at R0.10c)<br>\r
200Fixed <tt>_FS_NORTC</tt> option does not work properly. (appeared at R0.10c)<br>\r
201</td>\r
202<td>\r
203</td>\r
204</tr>\r
205<tr>\r
206<td>R0.10c<br>Nov 9, 2014</td>\r
207<td>\r
208Added a configuration option for the platforms without RTC. (<tt>_FS_NORTC</tt>)<br>\r
209Fixed volume label created by Mac OS X cannot be retrieved with <tt>f_getlabel</tt>. (appeared at R0.09b)<br>\r
210Fixed a potential problem of FAT access that can appear on disk error.<br>\r
211Fixed null pointer dereference on attempting to delete the root direcotry. (appeared at R0.08)<br>\r
212</td>\r
213<td>\r
214</td>\r
215</tr>\r
216<tr>\r
217<td>R0.10b<br>May 19, 2014</td>\r
218<td>\r
219Fixed a hard error in the disk I/O layer can collapse the directory entry.<br>\r
220Fixed LFN entry is not deleted on delete/rename an object with its lossy converted SFN. (appeared at R0.07)<br>\r
221</td>\r
222<td>\r
223</td>\r
224</tr>\r
225<tr>\r
226<td>R0.10a<br>Jan 15, 2014</td>\r
227<td>\r
228Added arbitrary strings as drive number in the path name. (<tt>_STR_VOLUME_ID</tt>)<br>\r
229Added an option for minimum sector size. (<tt>_MIN_SS</tt>)<br>\r
2302nd argument of <tt>f_rename</tt> can have a drive number and it will be ignored.<br>\r
231Fixed <tt>f_mount</tt> with forced mount fails when drive number is larger than 0. (appeared at R0.10)<br>\r
232Fixed <tt>f_close</tt> invalidates the file object without volume lock.<br>\r
233Fixed volume lock is left acquired after return from <tt>f_closedir</tt>. (appeared at R0.10)<br>\r
234Fixed creation of a directory entry with LFN fails on too many SFN collisions. (appeared at R0.07)<br>\r
235</td>\r
236<td>\r
237</td>\r
238</tr>\r
239<tr>\r
240<td>R0.10<br>Oct 2, 2013</td>\r
241<td>\r
242Added an option for character encoding on the file. (<tt>_STRF_ENCODE</tt>)<br>\r
243Added f_closedir.<br>\r
244Added forced full FAT scan option for <tt>f_getfree</tt>. (<tt>_FS_NOFSINFO</tt>)<br>\r
245Added forced mount option with changes of <tt>f_mount</tt>.<br>\r
246Improved behavior of volume auto detection.<br>\r
247Improved write throughput of <tt>f_puts</tt> and <tt>f_printf</tt>.<br>\r
248Changed argument of <tt>f_chdrive,</tt> <tt>f_mkfs</tt>, <tt>disk_read</tt> and <tt>disk_write</tt>.<br>\r
249Fixed <tt>f_write</tt> can be truncated when the file size is close to 4 GB.<br>\r
250Fixed <tt>f_open</tt>, <tt>f_mkdir</tt> and <tt>f_setlabel</tt> can return incorrect result code on error.<br>\r
251</td>\r
252<td>\r
253</td>\r
254</tr>\r
255<tr>\r
256<td>R0.09b<br>Jan 24, 2013</td>\r
257<td>\r
258Added <tt>f_getlabel</tt> and <tt>f_setlabel</tt>. (<tt>_USE_LABEL</tt>)<br>\r
259</td>\r
260<td>\r
261</td>\r
262</tr>\r
263<tr>\r
264<td>R0.09a<br>Aug 27, 2012</td>\r
265<td>\r
266Fixed assertion failure due to OS/2 EA on FAT12/16 volume.<br>\r
267Changed file functions reject null object pointer to avoid crash.<br>\r
268Changed option name <tt>_FS_SHARE</tt> to <tt>_FS_LOCK</tt>.<br>\r
269</td>\r
270<td>\r
271</td>\r
272</tr>\r
273<tr>\r
274<td>R0.09<br>Sep 6, 2011</td>\r
275<td>\r
276<tt>f_mkfs</tt> supports multiple partition on a physical drive.<br>\r
277Added <tt>f_fdisk</tt>. (<tt>_MULTI_PARTITION = 2</tt>)<br>\r
278</td>\r
279<td>\r
280</td>\r
281</tr>\r
282<tr>\r
283<td>R0.08b<br>Jan 15, 2011</td>\r
284<td>\r
285Fast seek function is also applied to <tt>f_read</tt> and <tt>f_write</tt>.<br>\r
286<tt>f_lseek</tt> reports required table size on creating CLMP.<br>\r
287Extended format syntax of <tt>f_printf</tt>.<br>\r
288Ignores duplicated directory separators in given path names.<br>\r
289</td>\r
290<td>\r
291</td>\r
292</tr>\r
293<tr>\r
294<td>R0.08a<br>Aug 16, 2010</td>\r
295<td>\r
296Added <tt>f_getcwd</tt>. (<tt>_FS_RPATH = 2</tt>)<br>\r
297Added sector erase function. (<tt>_USE_ERASE</tt>)<br>\r
298Moved file lock semaphore table from fs object to the bss.<br>\r
299Fixed <tt>f_mkdir</tt> creates wrong directory on non-LFN cfg when the given name contains <tt>';'</tt>.<br>\r
300Fixed <tt>f_mkfs</tt> creates wrong FAT32 volume.<br>\r
301</td>\r
302<td>\r
303</td>\r
304</tr>\r
305<tr>\r
306<td>R0.08<br>May 15, 2010</td>\r
307<td>\r
308Added an option to <tt>_USE_LFN</tt><br>\r
309Added support of file lock. (<tt>_FS_SHARE</tt>)<br>\r
310Added fast seek function. (<tt>_USE_FASTSEEK</tt>)<br>\r
311Changed a type name on the API, <tt>XCHAR</tt> to <tt>TCHAR</tt>.<br>\r
312Changed member, <tt>fname</tt>, in the <tt>FILINFO</tt> on Unicode cfg.<br>\r
313String functions support UTF-8 encoding files on Unicode cfg.<br>\r
314</td>\r
315<td>\r
316</td>\r
317</tr>\r
318<tr>\r
319<td>R0.07e<br>Nov 3, 2009</td>\r
320<td>\r
321Separated out configuration options from <tt>ff.h</tt> to <tt>ffconf.h</tt>.<br>\r
322Added a configuration option, <tt>_LFN_UNICODE</tt>.<br>\r
323Fixed <tt>f_unlink</tt> fails to remove a sub-dir on <tt>_FS_RPATH</tt>.<br>\r
324Fixed name matching error on the 13 char boundary.<br>\r
325Changed <tt>f_readdir</tt> to return the SFN with always upper case on non-LFN cfg.<br>\r
326</td>\r
327<td>\r
328</td>\r
329</tr>\r
330<tr>\r
331<td>R0.07c<br>Jan 21, 2009</td>\r
332<td>\r
333Fixed <tt>f_unlink</tt> may return FR_OK on error.<br>\r
334Fixed wrong cache control in <tt>f_lseek</tt>.<br>\r
335Added support of relative path.<br>\r
336Added <tt>f_chdir</tt>.<br>\r
337Added <tt>f_chdrive</tt>.<br>\r
338Added proper case conversion to extended characters.<br>\r
339</td>\r
340<td>\r
341</td>\r
342</tr>\r
343<tr>\r
344<td>R0.07a<br>Apr 14, 2009</td>\r
345<td>\r
346Separated out OS dependent code on re-entrant configuration.<br>\r
347Added multiple sector size support.<br>\r
348</td>\r
349<td>\r
350</td>\r
351</tr>\r
352<tr>\r
353<td>R0.07<br>Apr 1, 2009</td>\r
354<td>\r
355Merged Tiny-FatFs into FatFs as a buffer configuration option.<br>\r
356Added support for long file extension.<br>\r
357Added multiple code page support.<br>\r
358Added re-entrancy for multitask operation.<br>\r
359Added auto cluster size selection to <tt>f_mkfs</tt>.<br>\r
360Added rewind option to <tt>f_readdir</tt>.<br>\r
361Changed result code of critical errors.<br>\r
362Renamed string functions to avoid name collision.<br>\r
363</td>\r
364<td>\r
365</td>\r
366</tr>\r
367<tr>\r
368<td>R0.06<br>Apr 1, 2008</td>\r
369<td>\r
370Added <tt>f_forward</tt>. (Tiny-FatFs)<br>\r
371Added string functions: <tt>f_gets</tt>, <tt>f_putc</tt>, <tt>f_puts</tt> and <tt>f_printf</tt>.<br>\r
372Improved performance of <tt>f_lseek</tt> on moving to the same or following cluster.<br>\r
373</td>\r
374<td>\r
375</td>\r
376</tr>\r
377<tr>\r
378<td>R0.05a<br>Feb 3, 2008</td>\r
379<td>\r
380Added <tt>f_truncate</tt>.<br>\r
381Added <tt>f_utime</tt>.<br>\r
382Fixed off by one error at FAT sub-type determination.<br>\r
383Fixed btr in <tt>f_read</tt> can be mistruncated.<br>\r
384Fixed cached sector is left not flushed when create and close without write.<br>\r
385</td>\r
386<td>\r
387</td>\r
388</tr>\r
389<tr>\r
390<td>R0.05<br>Aug 26, 2007</td>\r
391<td>\r
392Changed arguments of <tt>f_read</tt>, <tt>f_write</tt>.<br>\r
393Changed arguments of <tt>f_mkfs</tt>. (FatFs)<br>\r
394Fixed <tt>f_mkfs</tt> on FAT32 creates incorrect FSInfo. (FatFs)<br>\r
395Fixed <tt>f_mkdir</tt> on FAT32 creates broken directory. (FatFs)<br>\r
396</td>\r
397<td>\r
398</td>\r
399</tr>\r
400<tr>\r
401<td>R0.04b<br>May 5, 2007</td>\r
402<td>\r
403Added <tt>_USE_NTFLAG</tt> option.<br>\r
404Added support for FSInfo in FAT32 volume.<br>\r
405Fixed some problems corresponds to FAT32. (Tiny-FatFs)<br>\r
406Fixed DBCS name can result <tt>FR_INVALID_NAME</tt>.<br>\r
407Fixed short seek (<tt>&lt;= csize</tt>) collapses the file object.<br>\r
408</td>\r
409<td>\r
410</td>\r
411</tr>\r
412<tr>\r
413<td>R0.04a<br>Apr 1, 2007</td>\r
414<td>\r
415Supported multiple partitions on a plysical drive. (FatFs)<br>\r
416Added minimization level 3.<br>\r
417Added a capability of extending file size to <tt>f_lseek</tt>.<br>\r
418Fixed an endian sensitive code in <tt>f_mkfs</tt>. (FatFs)<br>\r
419Fixed a problem corresponds to FAT32 support. (Tiny-FatFs)<br>\r
420</td>\r
421<td>\r
422</td>\r
423</tr>\r
424<tr>\r
425<td>R0.04<br>Feb 4, 2007</td>\r
426<td>\r
427Supported multiple drive system. (FatFs)<br>\r
428Changed some APIs for multiple drive system.<br>\r
429Added <tt>f_mkfs</tt>. (FatFs)<br>\r
430Added <tt>_USE_FAT32</tt> option. (Tiny-FatFs)<br>\r
431</td>\r
432<td>\r
433</td>\r
434</tr>\r
435<tr>\r
436<td>R0.03a<br>Dec 11, 2006</td>\r
437<td>\r
438Improved cluster scan algolithm to write files fast.<br>\r
439Fixed <tt>f_mkdir</tt> creates broken directory on FAT32.<br>\r
440</td>\r
441<td>\r
442</td>\r
443</tr>\r
444<tr>\r
445<td>R0.03<br>Sep 22, 2006</td>\r
446<td>\r
447Added <tt>f_rename</tt>.\r
448Changed option <tt>_FS_MINIMUM</tt> to <tt>_FS_MINIMIZE</tt>.<br>\r
449</td>\r
450<td>\r
451</td>\r
452</tr>\r
453<tr>\r
454<td>R0.02a<br>Jun 10, 2006</td>\r
455<td>\r
456Added a configuration option <tt>_FS_MINIMUM</tt>.<br>\r
457</td>\r
458<td>\r
459</td>\r
460</tr>\r
461<tr>\r
462<td>R0.02<br>Jun 01, 2006</td>\r
463<td>\r
464Added FAT12.<br>\r
465Removed unbuffered mode.<br>\r
466Fixed a problem on small (<tt>&lt;32M</tt>) patition.<br>\r
467</td>\r
468<td>\r
469</td>\r
470</tr>\r
471<tr>\r
472<td>R0.01<br>Apr 29, 2006</td>\r
473<td>\r
474First release.<br>\r
475</td>\r
476<td>\r
477</td>\r
478</tr>\r
479</table>\r
480</body>\r
481</html>\r