Commit graph

385 commits

Author SHA1 Message Date
Amaury Pouly
26c0e753d1 Rewrite dircache generation to take advantage for the FAT code. Reduce RAM usage by ~30Kb and binsize by at least several hundreds bytes. Also remove the directory depth limit of dircache.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24657 a1c6a512-1295-4272-9138-f99709370657
2010-02-14 19:09:52 +00:00
Amaury Pouly
cbf136d57a Remove a file that mcuelenaere forgot to delete (see r23763 and r23767).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24543 a1c6a512-1295-4272-9138-f99709370657
2010-02-07 13:31:52 +00:00
Amaury Pouly
64c0cfb0bd Optimize (size and speed) strncasecmp (based on a newlib patch).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24542 a1c6a512-1295-4272-9138-f99709370657
2010-02-07 00:37:47 +00:00
Amaury Pouly
1459bbc45f Various dircache improvements: reduce size of a path buffer to MAX_PATH and rewrote copy_path to improve stack usage. Also simplified get_entry.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24445 a1c6a512-1295-4272-9138-f99709370657
2010-02-01 23:00:35 +00:00
Amaury Pouly
4b930df35e Fix a dircache bug (opening a directory opens the first file of that directory). Also clarify the behaviour of dircache_get_entry.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24420 a1c6a512-1295-4272-9138-f99709370657
2010-01-31 17:02:56 +00:00
Andree Buschmann
508bf2b45a Final removal of tabs in firmware path
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24158 a1c6a512-1295-4272-9138-f99709370657
2010-01-03 11:31:14 +00:00
Torne Wuff
6e9af8bd44 Add strlcat to core to match strlcpy (also add to plugin api). Some uses of strcat could probably do with being changed to this.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24141 a1c6a512-1295-4272-9138-f99709370657
2010-01-02 13:31:46 +00:00
Amaury Pouly
839007872a FS#9409: fix rename which didn't close file handles on error and enventually cause cut/paste to fail between volumes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24134 a1c6a512-1295-4272-9138-f99709370657
2010-01-01 20:41:29 +00:00
Frank Gevaerts
5509372f03 Make read() and write() return -1/EISDIR on directories
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24106 a1c6a512-1295-4272-9138-f99709370657
2009-12-23 22:13:37 +00:00
Frank Gevaerts
e0263b166c only get the file pointer if fd is actually valid.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24105 a1c6a512-1295-4272-9138-f99709370657
2009-12-23 21:51:29 +00:00
Maurus Cuelenaere
d7d3bc248f Move strip_volume() to filefuncs.c and set properties.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23767 a1c6a512-1295-4272-9138-f99709370657
2009-11-26 22:34:08 +00:00
Maurus Cuelenaere
d027ddb75d Forgot file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23763 a1c6a512-1295-4272-9138-f99709370657
2009-11-26 17:41:19 +00:00
Maurus Cuelenaere
eab70ca28c - Split off strip_volume() to a separate file
- fix some yellows

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23762 a1c6a512-1295-4272-9138-f99709370657
2009-11-26 17:39:30 +00:00
Maurus Cuelenaere
d052ced874 Merge branch 'hotswap'
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23759 a1c6a512-1295-4272-9138-f99709370657
2009-11-26 16:57:30 +00:00
Thomas Martitz
1ddb91ad36 Rename vfnprintf to vuprintf (u stands for user for the user callback and data passed to it) to avoid confusion with file and buffer size related functions from the printf-family, and add a comment to its declaration.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23503 a1c6a512-1295-4272-9138-f99709370657
2009-11-03 21:20:09 +00:00
Nils Wallménius
0b302f0cb9 Little bit of const correctness
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23343 a1c6a512-1295-4272-9138-f99709370657
2009-10-25 10:42:21 +00:00
Bertrik Sikken
d24d885aa4 Use wrap-safe TIME_BEFORE/TIME_AFTER macros to compare times with current_time, instead of comparing them directly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23246 a1c6a512-1295-4272-9138-f99709370657
2009-10-18 15:50:30 +00:00
Dave Chapman
14eb02d347 Patch #1 from FS#10633 (Nano 2G developments) by Michael Sparmann - Allows targets to set a different sector size than 512 for the storage system. Should not affect any other target.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22874 a1c6a512-1295-4272-9138-f99709370657
2009-10-02 16:41:55 +00:00
Nils Wallménius
c8b87d76eb FS#10569 RTC driver cleanup
Change the RTC drivers so that the rtc_(read|write)_datetime functions now deal directly with the tm struct instead of passing a string of bcd digits to/from (set|get)_time .
This simplifies drivers for rtc's that do not use a bcd representation internally and cleans up some target specific code and #ifdefs in generic code. Implement simple stubs for the sim to avoid #ifdefing for that too.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22839 a1c6a512-1295-4272-9138-f99709370657
2009-09-26 14:58:32 +00:00
Maurus Cuelenaere
20b0dd2788 A new implementation of logf, logfdisplay and logfdump.
Flyspray: FS#10528
Author: Amaury Pouly


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22462 a1c6a512-1295-4272-9138-f99709370657
2009-08-21 22:54:23 +00:00
Alexander Levin
345920fe7e Remove dead code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22268 a1c6a512-1295-4272-9138-f99709370657
2009-08-12 13:49:29 +00:00
Alexander Levin
d353a7fd4e Change the function name in strnatsort so that the code doesn't contradict itself
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22267 a1c6a512-1295-4272-9138-f99709370657
2009-08-12 13:44:50 +00:00
Frank Gevaerts
ceccec503e Move yearday_to_daymonth() to usb_storage.c. It's the only user, this function is pretty specific, and it seems to be the cleanest way to avoid ram usage increases for unrelated targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22259 a1c6a512-1295-4272-9138-f99709370657
2009-08-11 20:03:59 +00:00
Frank Gevaerts
2dc50471ca Consolidate day of week calculation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22258 a1c6a512-1295-4272-9138-f99709370657
2009-08-11 19:30:19 +00:00
Frank Gevaerts
eadfa483d1 rework new time handling functions a bit to be more memory efficient
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22257 a1c6a512-1295-4272-9138-f99709370657
2009-08-11 18:54:13 +00:00
Frank Gevaerts
ed73a3274c Add support for setting the clock using a special SCSI command. This is the same method that itunes uses, and there are host-side tools for it (e.g. libgpod)
Flyspray: FS#10514
Author: Laurent Papier and myself



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22255 a1c6a512-1295-4272-9138-f99709370657
2009-08-11 17:54:47 +00:00
Thomas Martitz
28fbb49c0b Fix for:
FS#10031 - "improper sorting of names with underscores when Interpret numbers when sorting is used" and
FS#10200 - "Incorrect sorting of roman numerals when whole numbers selected"

a) By using tolower instead of toupper for case-insensitive sorting
b) By not ignoring spaces (which isn't really what we aimed for anyway).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22153 a1c6a512-1295-4272-9138-f99709370657
2009-08-04 13:00:40 +00:00
Frank Gevaerts
c0a5a67387 Commit FS#9545, storage cleanup and multi-driver support
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21933 a1c6a512-1295-4272-9138-f99709370657
2009-07-17 22:28:49 +00:00
Nils Wallménius
3d4701a6e4 FS#10080
* Move strncpy() from core to the pluginlib
* Introduce strlcpy() and use that instead in most places (use memcpy in a few) in core and some plugins
* Drop strncpy() from the codec api as no codec used it
* Bump codec and plugin api versions


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21863 a1c6a512-1295-4272-9138-f99709370657
2009-07-14 13:57:45 +00:00
Alexander Levin
eaa9df37e0 Fix yellow introduced in r21561
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21563 a1c6a512-1295-4272-9138-f99709370657
2009-06-29 14:58:02 +00:00
Alexander Levin
44bf40988b Make the get_time on non-RTC sims behave like target, i.e. always return a constant time (FS#10390)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21561 a1c6a512-1295-4272-9138-f99709370657
2009-06-29 14:31:46 +00:00
Bertrik Sikken
bef264264c Add missing #includes for the ondas.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20457 a1c6a512-1295-4272-9138-f99709370657
2009-03-22 15:40:40 +00:00
Thomas Martitz
877efe1123 Update the comment about our changes too.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20341 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 19:01:25 +00:00
Thomas Martitz
fa2d011a55 Restore behavior of the original implementation strnatcmp to not ignore leading zeros. Fixes FS#10029 (Files being sorted incorrectly in latest builds), leads to better sorting of decimal numbers. It also doesn't sort 2 before 03 (but still before 10) anymore.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20340 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 18:58:47 +00:00
Frank Gevaerts
babda88228 Make strnatcmp() and strnatcasecmp() call strcmp() or strcasecmp() if strings otherwise sort the same. This is done to make sure that strings always sort the same.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20265 a1c6a512-1295-4272-9138-f99709370657
2009-03-09 22:04:40 +00:00
Alexander Levin
7389928d89 Make sure that sorting works both for signed and unsigned char (it depends on the platform/compiler used)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20183 a1c6a512-1295-4272-9138-f99709370657
2009-03-02 22:02:13 +00:00
Alexander Levin
22b925495a Make natural sorting work properly with cyrillic chars: they should be placed after the latin ones (FS#9975).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20180 a1c6a512-1295-4272-9138-f99709370657
2009-03-02 21:35:05 +00:00
Thomas Martitz
7125b9ebcb Actually apply the patch...thanks again to Bryan Vandyke (and Tom Ross for notifying me about my commit-fail).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20167 a1c6a512-1295-4272-9138-f99709370657
2009-03-02 02:30:39 +00:00
Thomas Martitz
4fd02fdd42 FS#9972 - Simplify strnatcmp. As we do ignore leading zeros (as opposed to the original version), we can remove some unused code.
Also, change the header to state that we changed it and do not use the original version.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20166 a1c6a512-1295-4272-9138-f99709370657
2009-03-02 02:07:13 +00:00
Tom Ross
c645752314 Fix some memset calls that use the wrong order for arguments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20165 a1c6a512-1295-4272-9138-f99709370657
2009-03-02 01:40:41 +00:00
Thomas Martitz
d13f1a485f Commit FS#8314. This adds strnat[case]cmp written by Martin Pool, which respects numbers within strings, and gives a more intuitive
sorting. This also adds a setting, so that the sorting can be used in the file browser. The implementation is very generic, and can possibly 
be used in other places.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20155 a1c6a512-1295-4272-9138-f99709370657
2009-03-01 17:55:59 +00:00
Maurus Cuelenaere
4532d145f1 Onda VX747:
* Add preliminary keymap
 * Split up generic MIPS stuff from Ingenic specific
 * Make apps/ compilable
 * Add SD driver
 * Fix RTC driver
 * Add debug screen
 * Other cleanups/rewrites/fixes


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19993 a1c6a512-1295-4272-9138-f99709370657
2009-02-13 00:45:49 +00:00
Björn Stenberg
ee46a3d88e Moved database builder into a separate directory, and gave it its' own Makefile. Now it compiles cleanly and builds a database if ran in root of music tree.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19448 a1c6a512-1295-4272-9138-f99709370657
2008-12-15 23:42:19 +00:00
Björn Stenberg
af078b4f86 Cleaned up codepage handling, by Yoshihisa Uchida. (FS#9349)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19339 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 22:00:12 +00:00
Björn Stenberg
ad8d6031c1 Added support for configurable rockbox directory. FS#9567 by Alex Bennee.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19208 a1c6a512-1295-4272-9138-f99709370657
2008-11-24 22:16:07 +00:00
Karl Kurbjun
f6791faedd Fix a small bug in %x when padding is being added
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19092 a1c6a512-1295-4272-9138-f99709370657
2008-11-12 03:50:11 +00:00
Rafaël Carré
f18591e410 drive might be used uninitialized, prevent that
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19042 a1c6a512-1295-4272-9138-f99709370657
2008-11-09 06:17:07 +00:00
Frank Gevaerts
430343bca7 implement single-driver storage layer with macros instead of inlines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18975 a1c6a512-1295-4272-9138-f99709370657
2008-11-02 01:14:46 +00:00
Frank Gevaerts
2f8a0081c6 Apply FS#9500. This adds a storage_*() abstraction to replace ata_*(). To do that, it also introduces sd_*, nand_*, and mmc_*.
This should be a good first step to allow multi-driver targets, like the Elio (ATA/SD), or the D2 (NAND/SD).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18960 a1c6a512-1295-4272-9138-f99709370657
2008-11-01 16:14:28 +00:00
Maurus Cuelenaere
23fc923bde ZVM:
* Optimize MiniFS handling
 * Add basic CFS handling (doesn't work yet)
 * Remove hacky stuff in disk.c


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18438 a1c6a512-1295-4272-9138-f99709370657
2008-09-07 17:24:14 +00:00