Commit Graph

181 Commits

Author SHA1 Message Date
tantricity
a8ed97403b added fatGetVolumeLabel (rodries) 2009-10-17 20:29:48 +00:00
tantricity
9f7c3edc44 correct mixed line endings 2009-10-17 18:59:17 +00:00
tantricity
3b6561d4ca do not shut down the interface on unmount. other partitons (fat, ntfs, etc) may still be mounted on the device! 2009-10-16 21:38:51 +00:00
Dave Murphy
bf2d7d1130 bypass cache fill on write 2009-10-07 19:54:16 +00:00
Dave Murphy
b7dcf2ce33 fix cluster over allocation, skip cluster alignment write if already aligned 2009-10-07 19:48:51 +00:00
Dave Murphy
18d059aaec don't limit sectors on DS 2009-10-07 19:46:09 +00:00
Dave Murphy
6cb8909dc8 correct typo 2009-10-06 20:27:38 +00:00
tantricity
d09577c51a find the first valid fat partition (rodries) 2009-06-30 08:01:04 +00:00
tantricity
8ad45f1556 clean 2009-06-30 07:54:49 +00:00
tantricity
38528ce18f correct line endings 2009-06-30 07:48:29 +00:00
Dave Murphy
aa7a8929ee removed commented test code 2009-06-11 00:48:34 +00:00
Dave Murphy
488d832012 make LFN tables static 2009-06-11 00:47:38 +00:00
Dave Murphy
1befdfead1 prevent caching off end of partition 2009-06-09 19:42:35 +00:00
Dave Murphy
eafce2e122 .. in subdir of root always links to cluster 0 2009-06-09 18:22:51 +00:00
Dave Murphy
76a9624d2e only sync if file open for writing 2009-06-09 18:20:22 +00:00
Michael Wiedenbauer
980ade67d4 - reverted .last_access handling to use the static counter. Old behaviour - counting up .last_access directly - lead to a heavy performance impact. 2009-06-09 11:39:57 +00:00
Michael Wiedenbauer
5324215493 - if current sector is not in cache the starting sector to read from disc needs to be recalculated to be a multiple of sectorsPerPage 2009-06-08 21:00:42 +00:00
tantricity
245ac2fee5 change partition->disc to partition->cache (from rodries) 2009-06-06 22:54:40 +00:00
Michael Wiedenbauer
806fc418e0 - cleaned up cache code. reverted access policy to what it was before.
- _FAT_fat_linkFreeClusterCleared must go thru cache aswell.
2009-06-06 16:06:42 +00:00
Dave Murphy
22f3dea64f short aliases aren't multibyte
zero terminate generated alias
2009-06-02 13:40:14 +00:00
tantricity
e89b232b5f remove unused code, r18 args fix 2009-05-30 16:22:09 +00:00
Dave Murphy
af94077a7a move device startup to fatMount
shut device down in fatUnmount
2009-05-30 15:54:52 +00:00
tantricity
7262354c49 new write cache, flush dirty pages. fix by rodries. 2009-05-30 06:52:18 +00:00
tantricity
7d8f5f3194 sync written data to disk on f_write 2009-05-28 17:50:36 +00:00
tantricity
56261df0c7 counter fix 2009-05-20 18:22:26 +00:00
tantricity
1c6db0ae1b remove unnecessary function 2009-05-20 18:12:27 +00:00
Dave Murphy
206ce78022 add read ahead cache by Rodries 2009-05-17 22:16:35 +00:00
Dave Murphy
527a26f299 reinstate memcard drivers for wii 2009-05-17 20:40:15 +00:00
tantricity
fcb840cd66 remove trailing spaces 2009-05-17 20:19:56 +00:00
Dave Murphy
36b712eb75 correct year in _FAT_filetime_to_time_t 2009-05-01 07:57:13 +00:00
Dave Murphy
22f264e5fd set access and modify times on dir creation 2009-05-01 07:56:08 +00:00
Dave Murphy
52def810fc patch applied from https://sourceforge.net/tracker/?func=detail&aid=2721592&group_id=114505&atid=668551 2009-05-01 07:37:36 +00:00
Dave Murphy
2266f93113 applied patch http://sourceforge.net/tracker2/?func=detail&aid=1983783&group_id=114505&atid=668553 2009-03-13 08:34:32 +00:00
Michael Chisholm
18e980f050 Add missing unlocks to _FAT_fread_r, thanks to dhewg 2008-12-23 12:58:17 +00:00
Michael Chisholm
145e2cc9d3 Truncated files are modified upon opening 2008-12-13 03:14:54 +00:00
Michael Chisholm
2a239bcd2b Remove left-over debugging code 2008-12-13 02:18:40 +00:00
Dave Murphy
4d5a03f03c rearrange structs in size order, initialise partition open file list 2008-12-10 14:26:58 +00:00
Michael Chisholm
d7e584d6e5 Removed memcard drivers for Wii 2008-12-10 08:22:35 +00:00
Michael Chisholm
aa0d8773da Removed superfluous debug messages 2008-12-01 23:57:00 +00:00
Dave Murphy
71b1b585b8 ifdef debug code 2008-12-01 18:52:22 +00:00
Michael Chisholm
198df1272d Reload partition boot sector when sector 0 is an MBR 2008-11-30 07:12:08 +00:00
Michael Chisholm
94c4eac0cb Read/write contigious clusters in one operation to improve speed. 2008-11-22 13:37:16 +00:00
Michael Wiedenbauer
c0c2a463f6 prepended __ to the io_x exports 2008-11-20 14:18:42 +00:00
Michael Chisholm
9501328dca Added disc.c -- wrapper for DISC_INTERFACEs. 2008-11-20 05:32:59 +00:00
Michael Chisholm
2cc2cc2e39 Moved disc interfaces to appropriate libraries (DLDI to libnds, SD/USB to libogc).
Changed read/write functions to use size_t and seek function to use off_t -- will help on 64 bit platforms.
Partitions no longer specified by fat1:/, fat2:/, etc.
Use "nice" device names. On GBA/NDS the default partition is still fat:/; however on Wii and GC sd:/, usb:/, etc. are used instead.
Added fsync and ftruncate functions.
Mount and unmount no longer startup/shutdown the device, this is the job of the host app.
Mount now accepts a partition start parameter.
Used standard types, eg uint32_t instead of u32.
Archive bit is set when closing/synchronizing a modified file.
Various minor bug fixes.
2008-11-20 05:22:28 +00:00
Dave Murphy
841c1a692c files moved to libogc 2008-11-14 16:47:24 +00:00
Michael Chisholm
03bed3a1bd Only set append position when file is opened for append, as suggested by rodries. Improves open speed for large files. 2008-09-12 11:18:09 +00:00
Michael Chisholm
d72dcb0384 Fixed unlink not freeing cluster chains 2008-09-11 08:54:23 +00:00
Michael Chisholm
bfb4d60d1f Don't read high 16 bits of start cluster from a directory entry on non-FAT32 partititions, in case it contains non-zero data 2008-09-08 08:28:17 +00:00
Michael Chisholm
783ea08837 Added CLUSTER_ROOT definition 2008-08-16 14:12:56 +00:00
Michael Chisholm
c01d5f3e69 Correct cluster given on FAT32 when .. entry is included in path to subdirectory.
Fixed creation of long filename entry for all-caps filenames longer than 8 characters.
2008-08-02 04:22:47 +00:00
Dave Murphy
e6b8be341d disable sdgecko on Wii 2008-05-25 14:52:04 +00:00
Dave Murphy
486efc2bc9 files added by http://sourceforge.net/tracker/?func=detail&atid=668553&aid=1970541&group_id=114505 2008-05-23 21:54:50 +00:00
Dave Murphy
8b9d437f76 add locks for threaded systems.
fix eof conditions
https://sourceforge.net/tracker/?func=detail&atid=668553&aid=1970541&group_id=114505
2008-05-23 19:37:46 +00:00
Dave Murphy
cc1480bf9a calculate remaining space 2008-05-23 10:38:18 +00:00
Dave Murphy
a839587b4d correct initial path setting from argv 2008-05-23 10:37:33 +00:00
Dave Murphy
25b615836f simplified read/write position reset 2008-05-14 13:01:15 +00:00
Dave Murphy
ef3f19697c get time & date on Wii/cube too 2008-05-12 16:38:50 +00:00
Dave Murphy
ad1161c083 reset read/write position properly on first cluster allocation 2008-05-12 16:10:42 +00:00
Michael Chisholm
8d36ebe061 Modified WinterMute's seek then write fix for elegance, removed
resetPosition
2008-05-12 09:35:18 +00:00
Dave Murphy
a6dd89dbe4 Only reset file->currentPostion on first creation 2008-05-12 02:52:12 +00:00
Dave Murphy
46df48ba21 add libogc port and nitroFS support 2008-05-10 19:35:18 +00:00
Dave Murphy
5b9bfaecf0 commit bushing's endianess fixes 2008-05-01 10:02:19 +00:00
Michael Chisholm
bef33572eb Fixed _FAT_cache_constructor to return NULL on error, not false
Fixed _FAT_cache_flush to return false on error. With thanks to xorloser
2008-05-01 09:31:34 +00:00
Dave Murphy
23a406ddd1 First pass at gamecube/wii support 2008-03-16 18:06:25 +00:00
Dave Murphy
82c3168c36 use <nds/ndstypes.h> 2008-02-12 16:14:39 +00:00
Michael Chisholm
64012781ef Fixed LFN creation with character codes > 0x7F 2007-11-16 10:49:52 +00:00
Michael Chisholm
62745e4b21 Fixed alias creation bugs 2007-11-04 09:52:39 +00:00
Michael Chisholm
634887aa0f A cluster is only allocated for a file when data is written, instead of when the file is opened
file_extend_r renamed to _FAT_file_extend_r
2007-11-04 09:51:31 +00:00
Michael Chisholm
28e71f2920 _FAT_fat_nextCluster now returns CLUSTER_FREE when input cluster is CLUSTER_FREE 2007-11-04 09:50:39 +00:00
Michael Chisholm
838cc907d1 Fix off-by-one error for months value 2007-11-04 09:50:02 +00:00
Michael Chisholm
9deb154adb Added unicode support 2007-11-01 06:00:30 +00:00
Michael Chisholm
ccb080a071 Fixed compare against (time_t)-1 2007-10-30 05:59:06 +00:00
Michael Chisholm
2f4af3f8c0 Uses standard POSIX time functions 2007-10-30 02:46:22 +00:00
Michael Chisholm
def250bd28 Use CLUSTER_ERROR when an error occurs with the FAT, not CLUSTER_FREE 2007-10-25 12:55:18 +00:00
Michael Chisholm
8c319ec76a Added statvfs functionality 2007-10-25 12:52:08 +00:00
Michael Chisholm
8cfa906c22 Use CLUSTER_ERROR when an error occurs with the FAT, not CLUSTER_FREE 2007-09-01 07:55:38 +00:00
Michael Chisholm
4a0c7c4046 Added space to list of illegal alias characters - fixes filename creation bug when filename contained a space 2007-04-22 07:34:18 +00:00
Michael Chisholm
c394419d72 Fixed seek to end of file when reading 2007-04-12 01:06:35 +00:00
Michael Chisholm
cdc8378826 Fixed device type identifier 2007-04-04 12:31:08 +00:00
Michael Chisholm
4191c6de84 Check long file names for buffer overflow 2007-03-14 10:51:45 +00:00
Michael Chisholm
be7f9f10fb Fixed seek to the end of a file bug 2007-02-25 09:51:47 +00:00
Michael Chisholm
c26b60e6e0 Propagate disc errors up to the user app 2007-02-11 02:08:53 +00:00
Michael Chisholm
359b38085a Added SC_MODE_FLASH 2007-02-11 02:07:58 +00:00
Dave Murphy
e64acc0133 make dirnext return 0 for success & -1 for error/no more files 2007-01-25 18:01:02 +00:00
Dave Murphy
537cb4c6d7 use updated names for time structs 2007-01-25 17:15:43 +00:00
Dave Murphy
1bad1ac5d6 use libnds functions for bus ownership 2007-01-25 17:15:13 +00:00
Michael Chisholm
e81de2b33a Modified header to include RAM start address 2007-01-11 11:23:52 +00:00
Michael Chisholm
fc538f0164 Added missing #include <unistd.h> 2007-01-11 11:23:18 +00:00
Michael Chisholm
f4cb675198 fatInit now sets the correct path when setAsDefaultDevice 2007-01-10 10:48:46 +00:00
Michael Chisholm
7d0b004900 Updated directory iterator functions for DevkitPro r20 2007-01-10 10:34:47 +00:00
Michael Chisholm
0dc13f35a1 Directory support updated for DKP r20 2007-01-10 10:33:20 +00:00
Michael Chisholm
6ea9f6b6c0 Removed MMCF from repository 2007-01-05 10:01:36 +00:00
Michael Chisholm
677a1e386a Added DLDI interface. 2006-12-25 11:45:21 +00:00
Michael Chisholm
516b204100 Removed warning fix, which is actually due to a bug in libnds 2006-11-14 06:42:20 +00:00
Michael Chisholm
d48f48d55a Changed data register address to 0x09000000 2006-11-14 06:32:27 +00:00
Michael Chisholm
e5c6ce9a09 Reduced voltage range again. Hopefully fixes MicroSD cards. 2006-11-14 06:29:41 +00:00
Michael Chisholm
74f3ca8a59 _partitions changed to _FAT_partitions to maintain the same style of naming as the functions 2006-10-28 07:39:11 +00:00
Michael Chisholm
43f90657e3 stat returns the hostType for the st_dev value 2006-10-28 07:38:31 +00:00
Michael Chisholm
ef95b683be Fixed incorrect use of bitwise-or instead of logical-or 2006-10-01 12:29:10 +00:00