Commit graph

154 commits

Author SHA1 Message Date
Björn Stenberg
a69e98d7cc Added check to avoid FAT sector 0 panic.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2850 a1c6a512-1295-4272-9138-f99709370657
2002-11-14 22:17:41 +00:00
Björn Stenberg
1f214f2732 Directories are now handled as files, using fat_readwrite() instead of ata_read/write_sector().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2844 a1c6a512-1295-4272-9138-f99709370657
2002-11-13 23:16:32 +00:00
Björn Stenberg
099a6b58d1 Added extra safety checks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2839 a1c6a512-1295-4272-9138-f99709370657
2002-11-12 20:02:23 +00:00
Björn Stenberg
6fb512aba5 Added disk space to Info menu item. (Players press + to see it.)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2837 a1c6a512-1295-4272-9138-f99709370657
2002-11-12 11:32:26 +00:00
Björn Stenberg
68640edf90 Added ftruncate().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2827 a1c6a512-1295-4272-9138-f99709370657
2002-11-11 14:40:18 +00:00
Björn Stenberg
11a09e632c close() now does not truncate the file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2821 a1c6a512-1295-4272-9138-f99709370657
2002-11-11 10:21:51 +00:00
Linus Nielsen Feltzing
4382c68b3f Greg's improved fat_cache_sector() function, now updates the second FAT
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2814 a1c6a512-1295-4272-9138-f99709370657
2002-11-09 09:23:43 +00:00
Linus Nielsen Feltzing
81449d9642 fat_cache_sector() wrote to the wrong sector when flushing an entry. Thanks to Greg Haerr for finding the bug.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2813 a1c6a512-1295-4272-9138-f99709370657
2002-11-08 19:31:19 +00:00
Björn Stenberg
0e51fefda6 Bug fixes: fat_seek(0) would sometimes start at sector 1. find_free_cluster() didn't find all free clusters.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2806 a1c6a512-1295-4272-9138-f99709370657
2002-11-05 14:46:27 +00:00
Björn Stenberg
c9fb098250 Bugfix: lseek() did not invalidate sector cache when seeking to start of file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2803 a1c6a512-1295-4272-9138-f99709370657
2002-11-04 14:59:46 +00:00
Björn Stenberg
6a8900b528 Bugfix: If last sector of a requested transfer was nonconsecutive, it would not be written.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2802 a1c6a512-1295-4272-9138-f99709370657
2002-11-04 13:52:47 +00:00
Björn Stenberg
307f5d846e Added remove()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2801 a1c6a512-1295-4272-9138-f99709370657
2002-11-01 15:26:06 +00:00
Björn Stenberg
aa25f0962c Removed warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2799 a1c6a512-1295-4272-9138-f99709370657
2002-11-01 08:31:55 +00:00
Björn Stenberg
675d258575 Fixed lseek().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2796 a1c6a512-1295-4272-9138-f99709370657
2002-10-31 20:41:36 +00:00
Björn Stenberg
08356fb50a More graceful handling when running out of space.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2793 a1c6a512-1295-4272-9138-f99709370657
2002-10-31 19:05:25 +00:00
Björn Stenberg
a5e77d8f94 Fat writing update. File creation now works, though still only short filenames.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2790 a1c6a512-1295-4272-9138-f99709370657
2002-10-31 16:09:28 +00:00
Björn Stenberg
d2df3c01dc Improved find_free_cluster(). Split readwrite() in two to simplify debugging.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2783 a1c6a512-1295-4272-9138-f99709370657
2002-10-30 16:16:47 +00:00
Björn Stenberg
7c62863fbe Fixed bug where first sector was skipped on reads.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2746 a1c6a512-1295-4272-9138-f99709370657
2002-10-23 14:05:30 +00:00
Björn Stenberg
46ddacf533 Fat32 write updates: Nixed some bugs. Basic file creation now works. Todo: Long filenames and extensive test cases.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2742 a1c6a512-1295-4272-9138-f99709370657
2002-10-22 15:06:08 +00:00
Björn Stenberg
b7b48fea02 Snapshot of file writing code. Bugs remain. Only short names are supported yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2726 a1c6a512-1295-4272-9138-f99709370657
2002-10-20 22:50:58 +00:00
Daniel Stenberg
d45a1dbe1f no longer include unicode.h, we've removed that file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2273 a1c6a512-1295-4272-9138-f99709370657
2002-09-12 13:51:54 +00:00
Daniel Stenberg
93b231c693 Greg Haerr's new loadable font. No more #ifdef font-style, removed old
propfont and loadable font code. New font file format.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2269 a1c6a512-1295-4272-9138-f99709370657
2002-09-12 13:33:59 +00:00
Hardeep Sidhu
e60a999ca0 Fixed minor bug in previous change: 0 is a valid sector
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1969 a1c6a512-1295-4272-9138-f99709370657
2002-08-24 18:36:08 +00:00
Hardeep Sidhu
f9e7ed4694 Data at end of file was not being read if last sector fell on cluster boundary
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1968 a1c6a512-1295-4272-9138-f99709370657
2002-08-24 17:00:10 +00:00
Björn Stenberg
30033df6fa fat_read() now reads multiple sectors per ATA command
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1737 a1c6a512-1295-4272-9138-f99709370657
2002-08-14 16:39:39 +00:00
Björn Stenberg
113fffaa86 Don't save settings on disk if it has no partition table
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1712 a1c6a512-1295-4272-9138-f99709370657
2002-08-13 13:21:55 +00:00
Björn Stenberg
cd225736f9 First version of loadable fonts patch by Alex Gitelman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1666 a1c6a512-1295-4272-9138-f99709370657
2002-08-11 09:17:47 +00:00
Linus Nielsen Feltzing
a36439ebce fat_seek() end-of-file bug fix by Hardeep Sidhu
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1426 a1c6a512-1295-4272-9138-f99709370657
2002-07-24 07:19:01 +00:00
Björn Stenberg
d1de4f8d38 Fixed name garbling bug
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1363 a1c6a512-1295-4272-9138-f99709370657
2002-07-15 23:39:06 +00:00
Björn Stenberg
702dd052ae Ignore volume ID
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1096 a1c6a512-1295-4272-9138-f99709370657
2002-06-19 17:31:35 +00:00
Björn Stenberg
258919cc55 We don't need time unless we're writing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1085 a1c6a512-1295-4272-9138-f99709370657
2002-06-19 14:34:54 +00:00
Björn Stenberg
eacbef9466 Umm, bpb must be static to be local :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@833 a1c6a512-1295-4272-9138-f99709370657
2002-05-30 19:49:15 +00:00
Björn Stenberg
827cee37d7 struct bpb does not have to be global
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@832 a1c6a512-1295-4272-9138-f99709370657
2002-05-30 19:47:56 +00:00
Björn Stenberg
3ad66b95fb FAT cache now uses static memory
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@789 a1c6a512-1295-4272-9138-f99709370657
2002-05-29 11:56:42 +00:00
Linus Nielsen Feltzing
14a20d54b3 fat_seek couldn't seek in the first cluster
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@751 a1c6a512-1295-4272-9138-f99709370657
2002-05-27 14:04:18 +00:00
Björn Stenberg
e5992829d7 Fixed compiler warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@574 a1c6a512-1295-4272-9138-f99709370657
2002-05-14 12:28:48 +00:00
Linus Nielsen Feltzing
564bb3edb0 Removed a few annoying debugf calls
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@534 a1c6a512-1295-4272-9138-f99709370657
2002-05-09 23:11:44 +00:00
Linus Nielsen Feltzing
8083e7a227 get_next_cluster forgot to byteswap the FAT entry, among others
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@527 a1c6a512-1295-4272-9138-f99709370657
2002-05-09 22:57:54 +00:00
Linus Nielsen Feltzing
114fce01dd New cache algorithm
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@526 a1c6a512-1295-4272-9138-f99709370657
2002-05-09 21:27:49 +00:00
Björn Stenberg
1c3217909b Added lseek()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@518 a1c6a512-1295-4272-9138-f99709370657
2002-05-08 15:16:02 +00:00
Björn Stenberg
7dd442b7c3 Fixed EOF handling
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@512 a1c6a512-1295-4272-9138-f99709370657
2002-05-08 12:02:42 +00:00
Linus Nielsen Feltzing
3fd7fe9bb2 Fixed some debug output
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@506 a1c6a512-1295-4272-9138-f99709370657
2002-05-08 08:26:38 +00:00
Björn Stenberg
802740cd88 Create correct shortnames
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@499 a1c6a512-1295-4272-9138-f99709370657
2002-05-07 18:56:32 +00:00
Björn Stenberg
924164e6a7 Changed to global 'bpb' struct
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@411 a1c6a512-1295-4272-9138-f99709370657
2002-05-03 15:35:51 +00:00
Björn Stenberg
c7f7934e8f Added disk/partition handling
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@405 a1c6a512-1295-4272-9138-f99709370657
2002-05-03 11:59:53 +00:00
Björn Stenberg
697dd70ac4 Changed debug to DEBUGF and panic to panicf.
Also some linking changes.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@383 a1c6a512-1295-4272-9138-f99709370657
2002-05-02 14:05:51 +00:00
Björn Stenberg
3df8650a97 Renamed get_bpb() into fat_mount() and added it to the API.
Fixed a bug in fat_seek().
Added comment about unicode->iso8859-1 for longnames.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@312 a1c6a512-1295-4272-9138-f99709370657
2002-04-29 08:03:59 +00:00
Björn Stenberg
21594a4e2a Slight simplification
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@277 a1c6a512-1295-4272-9138-f99709370657
2002-04-27 22:45:23 +00:00
Björn Stenberg
24a2de64ac Added longname handling
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@276 a1c6a512-1295-4272-9138-f99709370657
2002-04-27 22:32:37 +00:00
Björn Stenberg
0ea9f3772a Added fat_seek()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@271 a1c6a512-1295-4272-9138-f99709370657
2002-04-27 20:03:05 +00:00
Björn Stenberg
e8bcc01edf Added fat_open() and fat_read().
Renamed BLOCK_SIZE to SECTOR_SIZE.
Added #ifdef DISK_WRITE to all write code.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@269 a1c6a512-1295-4272-9138-f99709370657
2002-04-27 19:37:41 +00:00
Björn Stenberg
5661b2332f Cluster chaining now works.
Moved all implementation details in .h to .c file.
Changed all printfs to DEBUG macros.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@256 a1c6a512-1295-4272-9138-f99709370657
2002-04-27 01:25:22 +00:00
Björn Stenberg
1dff4b65f7 FAT update
Added fat test code


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@254 a1c6a512-1295-4272-9138-f99709370657
2002-04-26 16:44:58 +00:00
Björn Stenberg
c6773e1436 Moved driver to 'drivers' subdir
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@189 a1c6a512-1295-4272-9138-f99709370657
2002-04-23 09:13:23 +00:00
Renamed from firmware/fat.c (Browse further)