Commit Graph

187 Commits

Author SHA1 Message Date
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
Michael Chisholm
8956d40bc1 Now clears the whole cluster when creating or extending a directory, bug found by Hermes 2006-09-30 16:00:01 +00:00
Michael Chisholm
dbdb8900b5 Added _FAT_fat_linkFreeClusterCleared to clear a cluster when it is allocated 2006-09-30 15:58:33 +00:00
Michael Chisholm
31a9ccffec Validity checks performed on the time supplied by the IPC
Cleaned up magic numbers
2006-09-30 11:39:55 +00:00
Michael Chisholm
299d69a1e3 Definitely supports SC Lite now 2006-08-19 12:32:54 +00:00
Michael Chisholm
698f3aecee Updated dirnext return values to return correctly 2006-08-19 12:32:17 +00:00
Michael Chisholm
9c7ddccd44 Fixed entryFromPath bug when looking for "." in root directory 2006-08-19 03:37:35 +00:00
Michael Chisholm
c93d8672e1 Added SuperCard Lite support 2006-08-19 03:17:43 +00:00
Michael Chisholm
1a5766fbd3 entryFromPath doesn't look for "" anymore - use "." to refer to the current directory 2006-08-17 13:49:59 +00:00
Michael Chisholm
af89e9074f *** empty log message *** 2006-08-14 12:04:56 +00:00
Michael Chisholm
11140aaa33 Added directory iterator functions 2006-08-14 12:04:16 +00:00
Michael Chisholm
1288d8f8ec Added extended devoptab_t functions 2006-08-14 11:59:25 +00:00
Michael Chisholm
247b640036 entryFromPath correctly finds "" and "." now 2006-08-14 11:49:30 +00:00
Michael Chisholm
11eb212459 Added _FAT_mkdir_r
Moved all externally visible directory related functions to fatdir
2006-08-13 09:44:20 +00:00
Michael Chisholm
a8bbf71829 Moved all externally visible directory related functions to fatdir 2006-08-13 09:43:38 +00:00
Dave Murphy
cae34ed566 fix warnings 2006-08-13 09:10:30 +00:00
Michael Chisholm
0d1dbf4df5 Fixed problem when openning files starting with "fat" 2006-08-10 08:40:48 +00:00
Michael Chisholm
fdf340791d Init aborts when it doesn't get a valid response to APP_CMD 2006-08-08 07:32:39 +00:00
Michael Chisholm
7b4d9b8d0a Moved the SD initialization to a common function 2006-08-07 11:54:04 +00:00
Michael Chisholm
8ceb43c66c Removed unneeded _NJSD_writeRAM function
Removed casts for calls to cardWriteCommand
2006-08-06 08:08:21 +00:00
Michael Chisholm
42415d44a4 Added NinjaDS SD adapter support 2006-08-05 08:12:53 +00:00
Michael Chisholm
c9759d5b6c Now tries multiple times to get a Relative Card Address at startup 2006-08-05 08:08:47 +00:00
Michael Chisholm
f7f51d6a5e Fixed _FAT_seek_r 2006-08-02 10:07:09 +00:00
Michael Chisholm
05645cd8c2 Changed SD OCR to a larger voltage range, hopefully fixing problems with a few cards. 2006-07-28 06:00:56 +00:00
Michael Chisholm
9077692f45 Fixed problem that got wrong fstat when creating a new file at the end of a directory 2006-07-26 11:11:47 +00:00
Michael Chisholm
eb2b6d1e20 Changed all IO_INTERFACEs to const. M3SD and SCSD drivers no longer delay card detection when it is not inserted. 2006-07-25 10:36:42 +00:00
Michael Chisholm
58996ae0d2 Removed (now unneeded) padding from FILE_STRUCT 2006-07-24 08:22:30 +00:00
Michael Chisholm
8bf1f6e7fb Added SCSD support. Fixed a few FAT errors. 2006-07-22 12:16:40 +00:00
Michael Chisholm
9ad203bc6d Added _FAT_rename_r for use when devoptab_t is extended. 2006-07-17 08:10:00 +00:00
Michael Chisholm
b540acafed Added fatInitDefault to fat.h and libfat.c 2006-07-16 07:37:24 +00:00
Michael Chisholm
3a9b3b5e3a Changed _CF_USE_DMA and _CF_ALLOW_UNALIGNED to _IO_USE_DMA and _IO_ALLOW_UNALIGNED respectively.
Combined all CF-based hardware drivers into one set of routines with different sets of registers. Speed should remain the same, but size should be reduced.
2006-07-16 06:18:23 +00:00
Michael Chisholm
cc64edfab8 Initial import into devkitpro CVS. 2006-07-14 02:42:37 +00:00