Commit graph

380 commits

Author SHA1 Message Date
Barry Wardell
58038d86f1 Add support for the .precision format in the sprintf()-like functions to allow limiting the maximum length of a string.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12838 a1c6a512-1295-4272-9138-f99709370657
2007-03-19 10:57:23 +00:00
Magnus Holmgren
01a010fd19 Fix several printf-style warnings in logf builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12830 a1c6a512-1295-4272-9138-f99709370657
2007-03-18 09:50:53 +00:00
Jens Arnold
2c7b127dd7 Set CONFIG_RTC to 0 for non-RTC targets, and check with #if to profit from -Wundef. No code change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12811 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 23:47:03 +00:00
Daniel Ankers
82f9056988 Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - iPod G3 will be coming soon.) This allows threads to be run on either core provided that all communications between the cores is done using uncached memory. There should be no significant change in battery life from doing this. Documentation (on the RockboxKernel wiki page) will follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12601 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 20:06:41 +00:00
Robert Kukla
ae08eeb4ff remove runtime detection of h1x0 series RTC MOD, but leave driver code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12554 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 00:11:20 +00:00
Robert Kukla
50b5ee4781 FS#6419 - driver for H1x0 series RTC Mod with runtime detection
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12520 a1c6a512-1295-4272-9138-f99709370657
2007-02-28 13:20:36 +00:00
Miika Pekkarinen
7a395a23bf Start using the new endian conversion system outside tagcache also to simplify code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12309 a1c6a512-1295-4272-9138-f99709370657
2007-02-14 19:20:13 +00:00
Jens Arnold
19417db99a Use the correct swap functions for live conversion, and fix 64 bit sims.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12302 a1c6a512-1295-4272-9138-f99709370657
2007-02-14 07:46:11 +00:00
Miika Pekkarinen
9b9539c8d3 Make database endianess independent.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12297 a1c6a512-1295-4272-9138-f99709370657
2007-02-13 21:51:18 +00:00
Jens Arnold
6b0fdae0f6 Removed unused 'mode' parameter from mkdir() for consistency with creat().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12183 a1c6a512-1295-4272-9138-f99709370657
2007-02-03 10:28:55 +00:00
Jens Arnold
67eb154146 Removed 'mode' parameter from creat(). It wasn't pure posix anyway, it was ignored on target and mixed into 'oflags' in the simulator. * Simplified io.c a bit by defining a dummy O_BINARY for OSes which don't have that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12179 a1c6a512-1295-4272-9138-f99709370657
2007-02-01 23:08:15 +00:00
Steve Bavin
74db69e240 Fix dircache on simulators
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12175 a1c6a512-1295-4272-9138-f99709370657
2007-02-01 17:15:50 +00:00
Nils Wallménius
faba818e1d Comment out an unused function and make another one static to save a few bytes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12073 a1c6a512-1295-4272-9138-f99709370657
2007-01-19 15:55:11 +00:00
Jonathan Gordon
b0d1bb891e increase the dircache thread size to hopefully stop it StkOv'ing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12040 a1c6a512-1295-4272-9138-f99709370657
2007-01-17 10:25:11 +00:00
Steve Bavin
12ef310466 Fix lockup of simulator at startup if dircache enabled
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11990 a1c6a512-1295-4272-9138-f99709370657
2007-01-12 11:10:04 +00:00
Linus Nielsen Feltzing
e2022a26d0 Removed executable flag
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11967 a1c6a512-1295-4272-9138-f99709370657
2007-01-09 23:29:07 +00:00
Miika Pekkarinen
c8a9ca748d Try to make sure dircache state file on flashed H1xx targets is
handled correctly and no old state is never used.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11833 a1c6a512-1295-4272-9138-f99709370657
2006-12-22 09:11:09 +00:00
Karl Kurbjun
1e0fb0246b Some fixes and additions to sscanf - Still has bugs but it works for doom currently. As a note: this function is only used by doom to my knowledge.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11740 a1c6a512-1295-4272-9138-f99709370657
2006-12-13 04:55:48 +00:00
Miika Pekkarinen
c5d57f0aae Removed the cpu boost tracking debug feature for now because of
different kind of problems. Better implementation can be done later.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11665 a1c6a512-1295-4272-9138-f99709370657
2006-12-05 20:01:48 +00:00
Jens Arnold
ef3e129b65 Much simpler implementation of large virtual sector support, not needing larger sector buffers and not touching file.c at all. secmult is simply used to normalize all sector counts to 512-byte physical sectors. * Moved MAX_SECTOR_SIZE definition to config-*.h, and enabled it for iPod Video only. MAX_SECTOR_SIZE now only enables checking for alternate disk layouts due to sector size (as iPod Video G5.5 is presented as having 2048-byte _physical_ sectors to the PC). Large virtual sector support in fat.c is always enabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11659 a1c6a512-1295-4272-9138-f99709370657
2006-12-04 21:37:22 +00:00
Miika Pekkarinen
ae66c2b9ee Add support (runtime detection) for 2048 bytes/sector filesystem.
Large sectors are enabled for iPod Video (including 5.5G) only. Might
still cause FS corruption (however, unlikely), so beware! Based on
FS#6169 by Robert Carboneau.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11651 a1c6a512-1295-4272-9138-f99709370657
2006-12-03 18:12:19 +00:00
Miika Pekkarinen
0dd7ea2d71 Support building tagcache db natively on PC using the core of the
Rockbox tagcache database engine. Only host endian support at the
moment and no command line parameters. Mainly for developers for
debugging at the moment.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11497 a1c6a512-1295-4272-9138-f99709370657
2006-11-10 08:03:33 +00:00
Linus Nielsen Feltzing
da153da0be Patch #5166 by Robert Keevil - Last.fm logging
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11269 a1c6a512-1295-4272-9138-f99709370657
2006-10-19 09:42:58 +00:00
Steve Bavin
2161407c6e Cygwin-built simulator can produce garbled debugging output without our snprintf
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11235 a1c6a512-1295-4272-9138-f99709370657
2006-10-16 09:06:19 +00:00
Tomasz Malesinski
a60bb9a067 Do not use our simple snprintf in simulator, because
ALSA library requires a more advanced one. Fixes the
problem with ALSA on Linux.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11206 a1c6a512-1295-4272-9138-f99709370657
2006-10-12 20:09:18 +00:00
Steve Bavin
d49c810ec9 Add CPU boost tracker to see where boosts are coming from
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11125 a1c6a512-1295-4272-9138-f99709370657
2006-10-05 10:07:03 +00:00
Miika Pekkarinen
a85044bf9e New scheduler, with priorities for swcodec platforms. Frequent task
switching should be more efficient and tasks are stored in linked
lists to eliminate unnecessary task switching to improve performance.
Audio should no longer skip on swcodec targets caused by too CPU
hungry UI thread or background threads.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10958 a1c6a512-1295-4272-9138-f99709370657
2006-09-16 16:18:11 +00:00
Jens Arnold
9d2f7b5c6d Assembler optimised memset16() for ARM, by Thom Johansen. Should speed up LCD clearing and solid rectangle drawing on colour iPods somewhat.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10900 a1c6a512-1295-4272-9138-f99709370657
2006-09-07 00:16:04 +00:00
Dave Chapman
657dcb5165 Initial commit of work for port to the Tatung Elio TPJ-1022 - yet another PortalPlayer PP5020 target.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10828 a1c6a512-1295-4272-9138-f99709370657
2006-08-31 19:19:35 +00:00
Miika Pekkarinen
6523ba44a9 Fixed performance problems when initializing tagcache.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10754 a1c6a512-1295-4272-9138-f99709370657
2006-08-26 09:24:20 +00:00
Miika Pekkarinen
5019b32620 Make sure dircache blocks correctly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10573 a1c6a512-1295-4272-9138-f99709370657
2006-08-14 19:03:37 +00:00
Miika Pekkarinen
954b732654 Initial support and use for EEPROM memory on H120 & H140 players when
Rockbox firmware has been flashed over original firmware (not yet
possible to do). Dircache & tagcache serialization for fast bootup
without the need to scan disk when Rockbox is in flash.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10464 a1c6a512-1295-4272-9138-f99709370657
2006-08-05 20:19:10 +00:00
Miika Pekkarinen
d8ac607418 Tagcache: Fixed runtime stats not being gathered when tagcache is kept
on disk. Initial attempt to make tagcache thread safe. Replaced a few
direct buffer allocations with buffer_alloc from tagcache and dircache
where possible.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10415 a1c6a512-1295-4272-9138-f99709370657
2006-08-02 17:39:34 +00:00
Miika Pekkarinen
b40eb3d662 Fixed unicode buffer overflow issue (metadata parser crashed with some
mp3 files).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10324 a1c6a512-1295-4272-9138-f99709370657
2006-07-25 18:12:57 +00:00
Linus Nielsen Feltzing
5a0cb68e43 Moved some assembly optimizations to the target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10318 a1c6a512-1295-4272-9138-f99709370657
2006-07-25 11:16:03 +00:00
Miika Pekkarinen
9cd5c3e119 Tagcache update: Support removal of entries and no longer the need for
dircache to load tagcache in ram (however, dircache with tagcache is
still strongly recommended).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10192 a1c6a512-1295-4272-9138-f99709370657
2006-07-10 16:22:03 +00:00
Jens Arnold
7bbf53eae5 Simplify code...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10156 a1c6a512-1295-4272-9138-f99709370657
2006-06-30 05:43:08 +00:00
Jens Arnold
f9b20914e6 volume_strip() now ignores multiple leading slashes like the rest of the path handling code. Fixes the stats plugin only counting the internal flash on Ondio, and other potential problems. Posix says multiple slashes are legal. * More precise volume name check.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10155 a1c6a512-1295-4272-9138-f99709370657
2006-06-30 05:35:11 +00:00
Miika Pekkarinen
5127cfad1d Fixed incorrect memory allocation bug with tagcache.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10023 a1c6a512-1295-4272-9138-f99709370657
2006-05-30 18:13:18 +00:00
Hardeep Sidhu
2436dbabe7 Update dircache startcluster at file close when writing. Fixes bug when creating small files (dircache startcluster remains 0 because fat write doesn't occur until close).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9950 a1c6a512-1295-4272-9138-f99709370657
2006-05-16 06:53:41 +00:00
Frank Dischner
bf64c45148 Use filesize instead of lseek to find the size of a file. Reduces disk access and improves font loading time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9792 a1c6a512-1295-4272-9138-f99709370657
2006-04-24 16:02:44 +00:00
Miika Pekkarinen
fa893c6b88 Performance optimizations for tagcache commit. Still more left to be done.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9721 a1c6a512-1295-4272-9138-f99709370657
2006-04-18 18:56:56 +00:00
Miika Pekkarinen
3b31346103 Commit tagcache in background when possible (at least dircache enabled).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9686 a1c6a512-1295-4272-9138-f99709370657
2006-04-16 17:32:54 +00:00
Miika Pekkarinen
d489377d46 Fixed the file renaming/removing issue with dircache enabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9649 a1c6a512-1295-4272-9138-f99709370657
2006-04-13 21:14:13 +00:00
Thom Johansen
872797be0e Make ASM memset for ARM return destination address, as is standard.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9519 a1c6a512-1295-4272-9138-f99709370657
2006-04-05 15:41:07 +00:00
Hristo Kovachev
ffefe9237b CP1251 is cyrillic, and not only russian codepage
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9518 a1c6a512-1295-4272-9138-f99709370657
2006-04-05 14:23:57 +00:00
Miika Pekkarinen
3881ce94bd Dircache support for simulator also.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9365 a1c6a512-1295-4272-9138-f99709370657
2006-03-30 18:53:44 +00:00
Miika Pekkarinen
82f32e3f73 Do the dircache operation first to block properly when necessary.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9356 a1c6a512-1295-4272-9138-f99709370657
2006-03-30 10:20:44 +00:00
Miika Pekkarinen
6ce466ea2c More safety checks to dircache to block updates until cache is ready.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9339 a1c6a512-1295-4272-9138-f99709370657
2006-03-29 09:38:45 +00:00
Miika Pekkarinen
2d93495df2 Boost open() performance on platforms with dircache. Tagcache initial
scanning now over 50% faster than before.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9306 a1c6a512-1295-4272-9138-f99709370657
2006-03-28 11:51:12 +00:00
Miika Pekkarinen
7c4e0c8730 Initial version of tagcache! There are still some bugs in the engine
and much more problems with the UI.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9256 a1c6a512-1295-4272-9138-f99709370657
2006-03-26 11:33:42 +00:00
Miika Pekkarinen
e4c0ef35fc Don't stop dircache thread when charger is plugged in/removed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9193 a1c6a512-1295-4272-9138-f99709370657
2006-03-22 17:09:13 +00:00
Jens Arnold
a738c3be31 Iriver firmware compatibility kludge: RTC year offset. The offset is chosen in a way to make leap years work correctly in rockbox; the original firmware will still be one year off but doesn't reset the date anymore. [We don't want to wait until 2016 ;-) ]
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8991 a1c6a512-1295-4272-9138-f99709370657
2006-03-10 19:17:01 +00:00
Marcoen Hirschberg
ea4dea67ae some unicode fixes by Frank Dischner
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8988 a1c6a512-1295-4272-9138-f99709370657
2006-03-10 11:13:21 +00:00
Brandon Low
19f4c2a093 Improve ipod i2c driver somewhat by at least taking advantage of the in-device addressing in the pcf50605, also switch to a 10bit resistive divider for the ipod battery reading, this is easily configurable if it needs changing, or even to become a user/runtime setting
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8980 a1c6a512-1295-4272-9138-f99709370657
2006-03-09 19:47:12 +00:00
Brandon Low
8348cebe9a Fix red builds (with frustration)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8941 a1c6a512-1295-4272-9138-f99709370657
2006-03-07 05:26:18 +00:00
Brandon Low
40d0d752aa Make seconds flow evenly and further throttle RTC reads solution partially thanks to amiconn
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8938 a1c6a512-1295-4272-9138-f99709370657
2006-03-06 22:53:59 +00:00
Brandon Low
4a301c3275 Make the RTC read throttling work, thanks to herz42 on irc
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8926 a1c6a512-1295-4272-9138-f99709370657
2006-03-05 23:38:52 +00:00
Brandon Low
aab008053e Fix some yellow builds
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8913 a1c6a512-1295-4272-9138-f99709370657
2006-03-05 18:34:27 +00:00
Brandon Low
6668b65ef2 Move the RTC read throttling to a smarter place
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8912 a1c6a512-1295-4272-9138-f99709370657
2006-03-05 18:19:46 +00:00
Jens Arnold
7a0110eedd TAB policed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8887 a1c6a512-1295-4272-9138-f99709370657
2006-03-02 22:29:53 +00:00
Dan Everton
ccd0e7451d Change rename() to set errno to EXDEV if a rename is attempted across volumes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8883 a1c6a512-1295-4272-9138-f99709370657
2006-03-02 11:03:34 +00:00
Miika Pekkarinen
871575f0f0 Implement . and .. path in dircache to properly support moving files
to other directories without absolute destination path provided.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8866 a1c6a512-1295-4272-9138-f99709370657
2006-02-28 11:41:35 +00:00
Thom Johansen
c85ad42c35 Didn't mean to commit this, revert.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8794 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 22:53:41 +00:00
Jens Arnold
c7ba2b518d Fix silly bug that made it crash on iPod.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8791 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 22:33:25 +00:00
Thom Johansen
374647f478 Fix stupid mistake.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8787 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 19:34:42 +00:00
Thom Johansen
ff493e081f Commit correct file this time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8786 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 19:03:20 +00:00
Thom Johansen
e94d262795 ARM optimised memset from Linux.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8785 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 18:52:08 +00:00
Jens Arnold
eb65f89f0e Added memset16() for filling memory regions with 16 bit values, needed for upcoming 16 bit LCD driver opts. ASM optimised for coldfire.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8773 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 01:20:45 +00:00
Jens Arnold
d036e97d38 Added memmove() to the rockbox core. C implementation taken from newlib. Fully optimised ASM implementations for SH1 and coldfire, reusing the AMS memcpy code path for forward copying.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8601 a1c6a512-1295-4272-9138-f99709370657
2006-02-06 16:00:58 +00:00
Tomasz Malesinski
91f08b5a24 Made %n not eat white space.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8557 a1c6a512-1295-4272-9138-f99709370657
2006-02-03 23:39:12 +00:00
Miika Pekkarinen
de281db7e7 Now dircache should work on players requiring long aligned memory
accesses.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8502 a1c6a512-1295-4272-9138-f99709370657
2006-01-31 10:08:53 +00:00
Tomasz Malesinski
e8e0b241bd Simple sscanf implementation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8444 a1c6a512-1295-4272-9138-f99709370657
2006-01-25 01:35:04 +00:00
Jens Arnold
c05cd1676f Better random number generator: Mersenne twiser with improved initialisation. BSD-style license.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8396 a1c6a512-1295-4272-9138-f99709370657
2006-01-20 01:21:26 +00:00
Jens Arnold
a601fb8d19 More compact & straight-forward headbytes handling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8255 a1c6a512-1295-4272-9138-f99709370657
2005-12-17 12:17:11 +00:00
Miika Pekkarinen
a6a0c4b2d5 Now the file corruption bug when reading & writing the same file is
hopefully fully fixed.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8251 a1c6a512-1295-4272-9138-f99709370657
2005-12-16 20:44:41 +00:00
Miika Pekkarinen
d9dcb0fbcf Fixed a file system driver caching bug corrupting files on certain situations
(when reading and writing the same file).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8231 a1c6a512-1295-4272-9138-f99709370657
2005-12-13 16:11:00 +00:00
Dave Chapman
790b365595 Reworking of Archos RTC code to create a (slightly) more abstract RTC api
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8216 a1c6a512-1295-4272-9138-f99709370657
2005-12-11 00:47:40 +00:00
Marcoen Hirschberg
46b726eaab several small fixes sugested by different people (FireFly, Lear, Takka)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8184 a1c6a512-1295-4272-9138-f99709370657
2005-12-07 08:37:14 +00:00
Marcoen Hirschberg
f9752c408d move some code from .h files to .c files and polish unicode.c a bit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8174 a1c6a512-1295-4272-9138-f99709370657
2005-12-06 15:04:48 +00:00
Marcoen Hirschberg
b0fee17d6e waiting is over: initial unicode commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8169 a1c6a512-1295-4272-9138-f99709370657
2005-12-06 13:27:15 +00:00
Dave Chapman
8c800cf59a Replace references to HAVE_RTC with CONFIG_RTC and remove the HAVE_RTC defines from config-*.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8147 a1c6a512-1295-4272-9138-f99709370657
2005-12-04 15:23:47 +00:00
Miika Pekkarinen
29e04eff05 More comments to the dircache functions and a debug menu entry to
determine how long the disk scanning took.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8072 a1c6a512-1295-4272-9138-f99709370657
2005-11-26 20:47:10 +00:00
Miika Pekkarinen
8f280a30f3 Debug menu entry for the dircache.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8071 a1c6a512-1295-4272-9138-f99709370657
2005-11-26 20:22:19 +00:00
Daniel Stenberg
1a29cfb23e Initial gcc4 warning cleanup (and some minor policing)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8063 a1c6a512-1295-4272-9138-f99709370657
2005-11-25 00:10:12 +00:00
Miika Pekkarinen
10f2f89d0f Fixed an empty directory problem with dircache when renaming files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7966 a1c6a512-1295-4272-9138-f99709370657
2005-11-18 19:28:22 +00:00
Miika Pekkarinen
735f453730 Added dircache support to playlist. Now playlist filename pointers are
automatically accuired from dircache. WPS UI response with dircache
enabled should be instant.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7931 a1c6a512-1295-4272-9138-f99709370657
2005-11-17 19:31:29 +00:00
Jens Arnold
83d3dcfd88 Coldfire: Assembler optimised memcpy(), 2.4x...10x (avg. 6.8x) as fast as the C version when copying large blocks within SDRAM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7835 a1c6a512-1295-4272-9138-f99709370657
2005-11-12 23:42:47 +00:00
Jens Arnold
d8ad74de74 SH1 memcpy(): Slightly changed loop concept: saved 4 bytes, and the long+1 case is now as fast as the long+3 case.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7696 a1c6a512-1295-4272-9138-f99709370657
2005-10-31 01:10:27 +00:00
Jens Arnold
c082bc42a2 Further optimised SH1 memcpy(): Lower latency for very small blocks, faster large block copying for odd destination alignment (+27% for long+1, +33% for long+3).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7690 a1c6a512-1295-4272-9138-f99709370657
2005-10-30 20:48:52 +00:00
Jens Arnold
aaf36caeb6 Coldfire: slight optimisations of memset().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7649 a1c6a512-1295-4272-9138-f99709370657
2005-10-22 08:06:49 +00:00
Miika Pekkarinen
4b2aa9830e Now correctly interrupting the dircache rebuilding.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7645 a1c6a512-1295-4272-9138-f99709370657
2005-10-20 08:33:59 +00:00
Miika Pekkarinen
20bc58dc9a Do not try to read from dircache if directory was opened when cache was not
available.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7602 a1c6a512-1295-4272-9138-f99709370657
2005-10-09 07:32:23 +00:00
Miika Pekkarinen
b76e8c09fa Fixed a problem with dircache where filetree modified dircache
structures directly. Moved #ifdef directly to SOURCES instead of
dircache.c to decide whether to compile the cache or not.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7599 a1c6a512-1295-4272-9138-f99709370657
2005-10-08 18:41:11 +00:00
Miika Pekkarinen
ab78b04680 Implemented directory caching. No more waiting for disk to spin up while
browsing when cache is enabled (system -> disk -> enable directory
cache). Cache building on boot is transparent except the first boot.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7588 a1c6a512-1295-4272-9138-f99709370657
2005-10-07 17:38:05 +00:00
Linus Nielsen Feltzing
073f83ada3 Correct usage of ICODE_ATTR in memcpy.c and strlen.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7328 a1c6a512-1295-4272-9138-f99709370657
2005-08-15 05:33:10 +00:00
Christian Gmeiner
c6ff1f5eb5 Added CPU_COLDFIRE define - one step closer to iAudio-port
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7186 a1c6a512-1295-4272-9138-f99709370657
2005-07-18 12:40:29 +00:00
Daniel Stenberg
db4fb95585 make the ctype array unsigned so that bit 7 (octal 0200) can be set and
used properly without warnings


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7120 a1c6a512-1295-4272-9138-f99709370657
2005-07-12 11:06:38 +00:00
Linus Nielsen Feltzing
eaf8b2d76d Patch #1232549 by Ryan Jackson, adds seeking and comments to Vorbis playback
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7025 a1c6a512-1295-4272-9138-f99709370657
2005-07-05 08:43:36 +00:00
Jens Arnold
292b77b097 Coldfire: slight memset() optimisation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6799 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 07:44:21 +00:00
Jens Arnold
8caf175c7f memset() on coldfire now exploits burst mode whenever possible, giving another speed increase of up to 2.4 times for large blocks. Added a slight optimisation for small blocks as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6790 a1c6a512-1295-4272-9138-f99709370657
2005-06-21 18:15:35 +00:00
Jens Arnold
ac0bc83777 Assembler optimised memset() for coldfire. Speed increase ranging from a few percent (small blocks) to 4 times (large unaligned blocks). Slight optimisation for SH1 as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6789 a1c6a512-1295-4272-9138-f99709370657
2005-06-21 13:25:18 +00:00
Jens Arnold
91c46c818a Slightly more optimised memset() for SH1. Especially faster for 4 < length < 12.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6594 a1c6a512-1295-4272-9138-f99709370657
2005-06-07 17:27:47 +00:00
Jens Arnold
fe1ce9d842 Hotswap: Better placement for switching the MMC monitor off/on.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6480 a1c6a512-1295-4272-9138-f99709370657
2005-05-16 15:21:09 +00:00
Jean-Philippe Bernardy
a83214d16f couple of fixes for 16 bits archs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6073 a1c6a512-1295-4272-9138-f99709370657
2005-02-27 20:44:26 +00:00
Jean-Philippe Bernardy
fc19445ba0 more long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6065 a1c6a512-1295-4272-9138-f99709370657
2005-02-25 18:50:16 +00:00
Daniel Stenberg
22b7701fe7 Build cleanup and general fixes. fprintf() is now fdprintf(), the separation
between uisimulator files and firmware/apps files are better done.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6031 a1c6a512-1295-4272-9138-f99709370657
2005-02-22 12:19:12 +00:00
Daniel Stenberg
cdde25b597 Unified build system to use SOURCES for sim builds too, a single Makefile-look
made by configure and various related adjustments. This has not yet been tested
on cygwin.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6001 a1c6a512-1295-4272-9138-f99709370657
2005-02-18 13:47:17 +00:00
Jean-Philippe Bernardy
effb196053 random longness fixes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5950 a1c6a512-1295-4272-9138-f99709370657
2005-02-15 13:28:39 +00:00
Jean-Philippe Bernardy
a161ef490f long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5946 a1c6a512-1295-4272-9138-f99709370657
2005-02-15 11:13:00 +00:00
Jörg Hohensohn
dc7534bdb2 preparations for hotswapping MMC
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5701 a1c6a512-1295-4272-9138-f99709370657
2005-01-28 21:32:16 +00:00
Björn Stenberg
6660f8e910 Added ID3 searching
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5683 a1c6a512-1295-4272-9138-f99709370657
2005-01-27 22:21:08 +00:00
Jens Arnold
81d4b8c492 TABs removed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5645 a1c6a512-1295-4272-9138-f99709370657
2005-01-24 00:56:39 +00:00
Jean-Philippe Bernardy
cea551dd9c int -> long where needed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5643 a1c6a512-1295-4272-9138-f99709370657
2005-01-23 23:29:35 +00:00
Jean-Philippe Bernardy
fc0372b209 Support for %l* plus __attribute__ printf support
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5641 a1c6a512-1295-4272-9138-f99709370657
2005-01-23 23:08:07 +00:00
Jens Arnold
756e7404d8 Forgot to commit removal of string.c when reviving memcpy.c and memset.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5633 a1c6a512-1295-4272-9138-f99709370657
2005-01-22 22:06:29 +00:00
Jens Arnold
78826de045 Assembler optimized strlen() for SH1, both smaller & faster. Moved strlen() into IRAM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5629 a1c6a512-1295-4272-9138-f99709370657
2005-01-22 13:18:33 +00:00
Jens Arnold
0310f16005 Revived C implementations of memcpy() and memset() for platforms without asm optimized versions (gmini), replacing the intermediate strings.c. Moved the asm optimized versions 'out of the way' for the implicit 'make' rules by renaming them to *_a.S (for assembler/alternative).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5628 a1c6a512-1295-4272-9138-f99709370657
2005-01-21 22:43:02 +00:00
Daniel Stenberg
39fb8f0705 Jean-Philippe Bernardy: C versions of memset() and memcpy() for archs with
no asm optimized versions.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5550 a1c6a512-1295-4272-9138-f99709370657
2005-01-10 21:31:13 +00:00
Jörg Hohensohn
dcdffe828c using a pointer instead of array dereferencing saves ~250 bytes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5529 a1c6a512-1295-4272-9138-f99709370657
2005-01-03 20:23:42 +00:00
Jörg Hohensohn
6dda40124d volume names look better in sharp brackets, code slightly more compact
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5523 a1c6a512-1295-4272-9138-f99709370657
2005-01-01 14:27:28 +00:00
Jörg Hohensohn
1a5962f2be Shared mounting code, also more general. It will mount multiple HD partitions, too, once HAVE_MULTIVOLUME is enabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5518 a1c6a512-1295-4272-9138-f99709370657
2004-12-29 22:10:24 +00:00
Jörg Hohensohn
da84857631 prepared to mount multiple partitions into one logical file system (most useful for Ondio, internal memory + external MMC)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5514 a1c6a512-1295-4272-9138-f99709370657
2004-12-28 22:16:07 +00:00
Jens Arnold
f78524bf93 Bug fix: Do only flush the sector buffer after writing head bytes if it really needs to be. The old code did flush always, causing the huge slowdown of fprintf() and other places writing byte-wise
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5413 a1c6a512-1295-4272-9138-f99709370657
2004-11-17 02:34:17 +00:00
Linus Nielsen Feltzing
04c5ecb4ee Wrong typing caused a very skewed random number distribution
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5385 a1c6a512-1295-4272-9138-f99709370657
2004-11-06 23:33:07 +00:00
Linus Nielsen Feltzing
ba809183a8 Ported to Coldfire
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5347 a1c6a512-1295-4272-9138-f99709370657
2004-10-26 05:40:24 +00:00
Jörg Hohensohn
85c91a3b8e void* can't be offset, gcc should not allows this
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5147 a1c6a512-1295-4272-9138-f99709370657
2004-10-01 19:45:51 +00:00
Jens Arnold
8537e2d12a Bug fix: open() now handles O_TRUNC correctly (this was the real cause for the .playlist_control corruption)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5048 a1c6a512-1295-4272-9138-f99709370657
2004-09-06 23:33:21 +00:00
Linus Nielsen Feltzing
e0e0140f4e Bug fix: renaming a directory could cause a name clash. New feature: rename() can now move files/directories as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5008 a1c6a512-1295-4272-9138-f99709370657
2004-08-22 11:28:24 +00:00
Jens Arnold
0ceaa5e365 Const policed pointer arguments to functions, part 2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4996 a1c6a512-1295-4272-9138-f99709370657
2004-08-17 01:45:48 +00:00
Jens Arnold
3a43231392 Fixed a warning when (experimentally) compiling with -Os
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4966 a1c6a512-1295-4272-9138-f99709370657
2004-07-27 19:51:05 +00:00
Jens Arnold
0258287e57 Made the char property lookup table constant
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4905 a1c6a512-1295-4272-9138-f99709370657
2004-07-20 22:32:17 +00:00
Jens Arnold
f68e13c5b4 The pathname argument for open() is declared const, so copy it has to be copied
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4894 a1c6a512-1295-4272-9138-f99709370657
2004-07-19 21:08:44 +00:00
Jörg Hohensohn
74eb64257a infrastructure for sorting by date+time, now we "only" need to decide on the UI
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4778 a1c6a512-1295-4272-9138-f99709370657
2004-06-20 16:34:29 +00:00
Linus Nielsen Feltzing
7662f06e53 valid_time() now handles tm_wday correctly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4555 a1c6a512-1295-4272-9138-f99709370657
2004-04-25 23:47:50 +00:00
Jens Arnold
4f7956c206 (v)snprintf() wrote past buffer end if string length was equal to buffer size
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4549 a1c6a512-1295-4272-9138-f99709370657
2004-04-22 21:19:33 +00:00
Linus Nielsen Feltzing
7ddf0d673d Reworked the time get/set functions
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4522 a1c6a512-1295-4272-9138-f99709370657
2004-04-20 10:23:57 +00:00
Linus Nielsen Feltzing
18d5d30c1c Better POSIX compatibility for mkdir(), rmdir() and opendir()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4521 a1c6a512-1295-4272-9138-f99709370657
2004-04-20 10:15:39 +00:00
Linus Nielsen Feltzing
bc9397d1fa New function: rmdir(). Also some changes in the fat code, to track the parent directory in opendir(), to be able to delete directories
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4509 a1c6a512-1295-4272-9138-f99709370657
2004-04-16 08:58:29 +00:00
Linus Nielsen Feltzing
b8beff39e9 No need to call fat_truncate() to delete the file, fat_remove() frees all clusters anyway
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4508 a1c6a512-1295-4272-9138-f99709370657
2004-04-16 08:54:13 +00:00
Jörg Hohensohn
b61cf76aba patch #917153: faster memset()/memcpy()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4406 a1c6a512-1295-4272-9138-f99709370657
2004-03-18 22:06:36 +00:00
Linus Nielsen Feltzing
5c8e82e097 You can't open() a directory as a file (at least not for writing)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4359 a1c6a512-1295-4272-9138-f99709370657
2004-03-10 19:47:59 +00:00
Linus Nielsen Feltzing
05f1fc4654 Empty file/dir names are now rejected by open() and mkdir()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4303 a1c6a512-1295-4272-9138-f99709370657
2004-02-11 14:37:16 +00:00
Linus Nielsen Feltzing
ef7293f0bc New feature: NOw you can store the recorded files in either /recordings (the directory will be created automatically) or in the current directory.
New feature: A "Create directory" menu option (untested in the simulator).
Bug fix: The ON+Play menu could do nasty things if you pressed ON+Play in an empty dir.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4268 a1c6a512-1295-4272-9138-f99709370657
2004-01-21 14:58:40 +00:00
Linus Nielsen Feltzing
54353e04b1 Second bug in mkdir() :-)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4241 a1c6a512-1295-4272-9138-f99709370657
2004-01-15 15:56:19 +00:00
Linus Nielsen Feltzing
ce1c93d628 First mkdir() bug killed :-)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4239 a1c6a512-1295-4272-9138-f99709370657
2004-01-15 14:34:54 +00:00
Linus Nielsen Feltzing
60b1c4bbe1 Implemented the mkdir() function in the FAT32 driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4238 a1c6a512-1295-4272-9138-f99709370657
2004-01-15 14:30:59 +00:00
Björn Stenberg
96147edb7d Moved memset() out of .iram
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4170 a1c6a512-1295-4272-9138-f99709370657
2003-12-21 12:22:50 +00:00
Daniel Stenberg
ae960a9ece my take at fixing the simulator warnings by adding mode_t, size_t, ssize_t
and off_t


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4116 a1c6a512-1295-4272-9138-f99709370657
2003-12-08 21:58:38 +00:00
Hardeep Sidhu
9e4262081b Added dynamic playlists. ON+PLAY->Playlist on a track, directory, or playlist from file browser to see available options.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3796 a1c6a512-1295-4272-9138-f99709370657
2003-07-01 21:05:43 +00:00