Commit graph

76 commits

Author SHA1 Message Date
Linus Nielsen Feltzing
41249b7059 Fixed a bug that included the reserved clusters 0 and 1 in the search for available clusters. That could in some cases lead to a bogus disk-full error.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3836 a1c6a512-1295-4272-9138-f99709370657
2003-07-16 22:28:24 +00:00
Linus Nielsen Feltzing
474c4b5427 Now handles a full disk a little better, and it doesn't trust the fsinfo anymore
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3755 a1c6a512-1295-4272-9138-f99709370657
2003-06-19 12:03:36 +00:00
Hardeep Sidhu
fc9b28d0a9 Small seek optimization -- begin seek at last read cluster if possible
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3720 a1c6a512-1295-4272-9138-f99709370657
2003-06-03 18:04:22 +00:00
Linus Nielsen Feltzing
cc6183e73c More detailed error codes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3605 a1c6a512-1295-4272-9138-f99709370657
2003-04-24 18:33:32 +00:00
Björn Stenberg
a9302fd1e8 Corrected win1251 -> iso 8859-5 conversion (Alex)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3532 a1c6a512-1295-4272-9138-f99709370657
2003-04-11 08:39:12 +00:00
Linus Nielsen Feltzing
16d1a68b33 update_fat_entry() set the wrong cache line dirty if bpb_resvdseccnt wasn't divisible by 32 (didn't compensate for the reserved sector count)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3379 a1c6a512-1295-4272-9138-f99709370657
2003-03-04 13:50:23 +00:00
Linus Nielsen Feltzing
96f519999d Enhanced error codes for better error tracking
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3341 a1c6a512-1295-4272-9138-f99709370657
2003-02-26 03:02:49 +00:00
Björn Stenberg
38bc30b0d6 The dir code is now reentrant.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3184 a1c6a512-1295-4272-9138-f99709370657
2003-01-29 12:33:23 +00:00
Björn Stenberg
184fd55411 Directories can now be renamed too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3167 a1c6a512-1295-4272-9138-f99709370657
2003-01-27 09:32:17 +00:00
Mats Lidell
74cc9e41fa Remove use of rockbox-mode.el in local variables list.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3157 a1c6a512-1295-4272-9138-f99709370657
2003-01-24 10:56:06 +00:00
Björn Stenberg
1855cdb7f0 Added table for converting unicode page 1 and 2 into ISO 8859-2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3123 a1c6a512-1295-4272-9138-f99709370657
2003-01-17 10:08:48 +00:00
Björn Stenberg
4b6a1f2566 Made unicode2iso() static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3087 a1c6a512-1295-4272-9138-f99709370657
2003-01-14 15:07:19 +00:00
Björn Stenberg
32bfc9940c Added unicode conversion from cyrillic, greek, hebrew, arabic and thai.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3086 a1c6a512-1295-4272-9138-f99709370657
2003-01-14 14:49:19 +00:00
Björn Stenberg
b17fe5a727 Added recalculation of free disk space. Press PLAY in Debug->Disk Info->Free to run it. Takes ~30 sec on my 40GB Toshiba.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2968 a1c6a512-1295-4272-9138-f99709370657
2002-12-09 15:39:32 +00:00
Björn Stenberg
ac88b9e5ff Fixed warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2876 a1c6a512-1295-4272-9138-f99709370657
2002-11-22 23:55:08 +00:00
Björn Stenberg
b5184d761b Added creation and last-modified timestamps.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2875 a1c6a512-1295-4272-9138-f99709370657
2002-11-22 23:51:46 +00:00
Björn Stenberg
282c819a19 Removed some debug output.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2858 a1c6a512-1295-4272-9138-f99709370657
2002-11-19 12:58:45 +00:00
Björn Stenberg
c5f5be565e Added rename()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2857 a1c6a512-1295-4272-9138-f99709370657
2002-11-19 12:48:50 +00:00
Björn Stenberg
0a488fb155 Bug fixes: 1) add_dir_entry() would update end-of-dir marker even when not supposed to. 2) create_dos_name() didn't treat spaces correctly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2854 a1c6a512-1295-4272-9138-f99709370657
2002-11-18 14:55:05 +00:00
Björn Stenberg
eee2c01697 Added longname handling to fat_remove().
Added proper 0xffff padding of last longname entry.
add_dir_entry() now makes sure shortname is unique.
Changed update_file_size() to use dir-as-file handling.
Simplified create_dos_name() since we never use shortnames.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2853 a1c6a512-1295-4272-9138-f99709370657
2002-11-18 11:58:43 +00:00
Björn Stenberg
7aabb1ab66 Long filename support added. (fat_remove() not updated yet.)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2852 a1c6a512-1295-4272-9138-f99709370657
2002-11-15 16:41:02 +00:00
Björn Stenberg
c442a68322 Cleaned up dir handling further.
Fixed a bug where a new dir cluster wasn't completely cleared.
Added freecount calculation if unset.
Removed a couple of signed mul/divs.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2851 a1c6a512-1295-4272-9138-f99709370657
2002-11-15 11:20:33 +00:00
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