Commit graph

300 commits

Author SHA1 Message Date
Rafaël Carré
33f5b60999 strncpy.c / assert.h : need to include _ansi.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27549 a1c6a512-1295-4272-9138-f99709370657
2010-07-25 14:53:06 +00:00
Rafaël Carré
a72aa856bd Move some gcc extensions to new gcc_extensions.h header
- Move ATTRIBUTE_PRINTF/ATTRIBUTE_SCANF from _ansi.h
  They are not related at all to this file, and this broke compilation
  with Code Sourcery GCC which ships its own _ansi.h
- Move LIKELY/UNLIKELY from system.h

There is likely a lot more GCC extensions used everywhere in the source,
conditionally on __GNUC__ or unconditionally

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27548 a1c6a512-1295-4272-9138-f99709370657
2010-07-25 14:44:29 +00:00
Thomas Martitz
35e8b1429a Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently).
The simulator defines PLATFORM_HOSTED, as RaaA will do (RaaA will not define SIMULATOR).
The new define is to (de-)select code to compile on hosted platforms generally.

Should be no functional change to targets or the simulator.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27019 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 16:53:00 +00:00
Frank Gevaerts
530c25130f Make the sim buildable with mingw again
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26037 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 22:57:52 +00:00
Frank Gevaerts
5d987d61cf Move include/sys along with libc/, so hosted (sim/RaaA) builds use the proper files for their OS
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26030 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 22:01:07 +00:00
Thomas Martitz
68947473e1 Move math.h to firmware/libc/include/ and fix slight incompatibilities between our and the host's math.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26020 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 12:43:45 +00:00
Michael Sevakis
8ffbe2e467 Remove stray function prototype used only for long-ago-removed codec swapping. Function definition was removed when adding internal voice codec.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25868 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 04:14:59 +00:00
Thomas Martitz
6ac64206f3 Revert r25854 which was bad for the database tool (I forgot it still needs the wrappers from uisimulator/common/io.c). Fix it so it works for both.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25856 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 22:17:34 +00:00
Thomas Martitz
3e400b2ae6 Fix checkwps by using host system's file IO (thanks to r25843/r25844) and by including a work around for systems that try to get intN_t via sys/types.h (which should be wrong, but well).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25854 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:49:09 +00:00
Thomas Martitz
50a6ca39ad Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes).
This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:04:40 +00:00
Thomas Martitz
0a1d7c28b7 Make open() posix compliant api-wise. A few calls (those with O_CREAT) need the additional optional mode parameter so add it. Impact for the core is almost zero, as open() is a wrapper macro for the real open function which doesn't take the variable parameter.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25844 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:13 +00:00
Thomas Martitz
c61e89c0ed Make creat() posix compliant API-wise. Shouldn't affect the core as it's wrapped via a static inline.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25843 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:04 +00:00
Tomer Shalev
56058c7213 FS#11187 - diacritic.c is in 'drivers' but it does not belong there
- Move diacritic.c to firmware/common
- The function is_diacritic returns bool now


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25526 a1c6a512-1295-4272-9138-f99709370657
2010-04-07 20:41:18 +00:00
Alexander Levin
a57ec82a4e Set SVN keywords; small addition to the comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25522 a1c6a512-1295-4272-9138-f99709370657
2010-04-07 19:30:32 +00:00
Tomer Shalev
b5466cd2ec Add comment to is_diacritic()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25521 a1c6a512-1295-4272-9138-f99709370657
2010-04-07 18:45:12 +00:00
Amaury Pouly
56069476be Get rid of the parent_dir field in dir_uncached.c by using the same FAT trick as in dircache. This should save ~20KB on 512B/sector targets and ~80KB on 2K/sector ones.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25105 a1c6a512-1295-4272-9138-f99709370657
2010-03-10 08:56:27 +00:00
Thomas Martitz
f8edc32589 FS#10756 - Free unused init code
Introduce a new .init section for initialisation code, so that it can be copied to an area which is later overwritten before calling. The stack/bss can then overwrite that code, effectively freeing the code size that the initialisation routines need. Gives a few kB ram usage back.
Only implemented for PP and as3525 so far. More targets could be added, as well as more functions.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25013 a1c6a512-1295-4272-9138-f99709370657
2010-03-03 23:20:32 +00:00
Andree Buschmann
0b7dcd69c8 Remove tabs in firmware path (taking into account the original spacing).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24864 a1c6a512-1295-4272-9138-f99709370657
2010-02-22 21:24:09 +00:00
Amaury Pouly
62257ebc38 Remove obsolete comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24711 a1c6a512-1295-4272-9138-f99709370657
2010-02-16 23:17:28 +00:00
Amaury Pouly
53b1af7a61 -Cosmetic change in a comparison
-Move fat_dir structure out of dircache stack to RAM. Reduce dircache stack size (max level depth should stay be around 20). This should fix nano2g dircache stkov of FS#10679
-Change the structure returned by readdir_cached to match the one returned by readdir_uncached: remove useless fields to save space and avoid any potential incoherence
-Remove one field from the internal structure used by {opend,read,close}dir_cached because it was mostly redundant.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24708 a1c6a512-1295-4272-9138-f99709370657
2010-02-16 22:49:11 +00:00
Jonathan Gordon
1281b1c065 fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24645 a1c6a512-1295-4272-9138-f99709370657
2010-02-14 06:37:48 +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
081da63d09 Add support for errno in plugins.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24109 a1c6a512-1295-4272-9138-f99709370657
2009-12-24 17:07:20 +00:00
Tomer Shalev
c2617dc4ed Diacritic display enhancements
- Use the fact that unicode code currently does not support chars above 0xffff
  (see utf8decode()), and change diacritic database's char code type to
  unsigned short from int. Also comment out database entries above unsupported
  range.

- Use const when possible.

- Iterate over buffer using the buffer's pointer, thus avoiding usage of some
  variables, and avoiding multiple access to the same array item.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23776 a1c6a512-1295-4272-9138-f99709370657
2009-11-28 17:07:57 +00:00
Tomer Shalev
7682cb5ca8 FS#10720 - Support for displaying diacritic characters
This commit corrects the display of diacritic characters, which exist in many
languages. Hopefully, it will make Rockbox much more usable for users of these
languages.

Diacritic information (which used to decide whether a given character is
diacritic or not) is taken from the Unicode Standard, Version 5.2.

This feature does not affect drawing performance much, as the diacritic
database is cached (simple MRU mechanism).

There may be room for further performance, footprint, and
code-reuse wise improvements, that could be worked on in the future.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23742 a1c6a512-1295-4272-9138-f99709370657
2009-11-24 20:41:42 +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
Frank Gevaerts
6e11572e07 Make the database tool buildable from configure.
Also update the checkwps makefile to make checkwps builds not break


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22998 a1c6a512-1295-4272-9138-f99709370657
2009-10-07 16:54:15 +00:00
Tomer Shalev
32d261e3f9 Have codepage name show in a comment
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22929 a1c6a512-1295-4272-9138-f99709370657
2009-10-04 21:55:53 +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
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
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
85ece84b1c Remove various ABS() definitions with a single one using typeof (if using gcc) to avoid multiple evaluations of the input expressions. Speex still uses its own as I didn't want to change this imported code too much.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22129 a1c6a512-1295-4272-9138-f99709370657
2009-08-03 01:38:58 +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
Maurus Cuelenaere
cf87597226 Commit FS#9174: Lua scripting language by Dan Everton
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21020 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 19:01: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
Björn Stenberg
a36cdf5b37 Removed the sim_ prefix from the plugin api.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19704 a1c6a512-1295-4272-9138-f99709370657
2009-01-07 09:53:46 +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
Frank Gevaerts
19d1cacb1a cleanup storage defines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18950 a1c6a512-1295-4272-9138-f99709370657
2008-10-31 21:25:04 +00:00
Frank Gevaerts
5d22e3cbdd Add wpseditor, the Google Summer of Code 2008 project of Rostislav Chekan. Closes FS#9327
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18362 a1c6a512-1295-4272-9138-f99709370657
2008-08-29 21:08:38 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Nicolas Pennequin
357ffb3c46 Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:32:46 +00:00
Bertrik Sikken
2843469876 Moved atoi declaration to stdlib.h. Deleted atoi.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17280 a1c6a512-1295-4272-9138-f99709370657
2008-04-28 16:18:04 +00:00
Miika Pekkarinen
52d827a26d FS#7598 - Dircache support for multivolume targets (by Phil Light).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16632 a1c6a512-1295-4272-9138-f99709370657
2008-03-11 19:39:26 +00:00
Miika Pekkarinen
39c597b5e1 Always check for deleted files, no matter how slow it might be when DB autoupdate is enabled. Also simplified code a bit. Fixed a crash when search is performaed and dircache has been vanished and DB is still exists ram.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16081 a1c6a512-1295-4272-9138-f99709370657
2008-01-13 19:13:37 +00:00
Michael Sevakis
0b0c23ff13 Fix some plugins that use NULL instead of -1 when not using a voice id in struct opt_items. Change as many '#define NULL 0' to '#define NULL ((void*)0)' as grep would find - somewehere the former is still hiding it seems. :\
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15117 a1c6a512-1295-4272-9138-f99709370657
2007-10-15 07:59:13 +00:00
Nicolas Pennequin
ef9abe4385 Keep track of the number of opened files in the sim to enforce the same limit as on target.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15045 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 15:15:00 +00:00
Michael Sevakis
f64ebb1c1f Sim I/O and threading that runs more like on target. Tweakable if any genuine slowness imitation is required for any one of them. One point of concern is the sim shutdown on an OS other than Linux just because terminating threads in a manner other than having the do it themselves is kind of dirty IMHO.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14639 a1c6a512-1295-4272-9138-f99709370657
2007-09-08 12:20:53 +00:00
Jonathan Gordon
e73f287b5a Fix FS#7679 - modifying files with dircahce enabled doesnt change the access time/date in dircache
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14580 a1c6a512-1295-4272-9138-f99709370657
2007-09-02 13:24:51 +00:00
Kevin Ferrare
0843a070b8 Ooops
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13953 a1c6a512-1295-4272-9138-f99709370657
2007-07-21 14:21:45 +00:00
Kevin Ferrare
5633dc6ce3 This should fix dircache being disabled by my last commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13952 a1c6a512-1295-4272-9138-f99709370657
2007-07-21 14:21:11 +00:00
Kevin Ferrare
011a325e32 Makes apps and plugins interract with directories using a posix-like api instead of calling dircache / simulator functions (no additionnal layer added, only a cosmetic change)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13943 a1c6a512-1295-4272-9138-f99709370657
2007-07-20 17:06:55 +00:00
Robert Keevil
ef65d91492 FS#7353 - mktime() is only used by targets that have an RTC
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13883 a1c6a512-1295-4272-9138-f99709370657
2007-07-14 12:34:52 +00:00
Michael Sevakis
1167e3c72f Accept FS#7134 - Sansa: external sd card support by Antonius Hellmann with some tweaks. All testers have given the green light. (Now for the RED ?? ;).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13741 a1c6a512-1295-4272-9138-f99709370657
2007-06-30 02:08:27 +00:00
Barry Wardell
54c73a24b6 Bring back rolo for mi4-based targets (H10 and Sansa).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13550 a1c6a512-1295-4272-9138-f99709370657
2007-06-04 13:48:21 +00:00
Michael Sevakis
af7780e0b3 More complete sized integer definitions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13092 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 09:43:06 +00:00
Jens Arnold
738c37cdcf Player: Reduced the selectable codepages to those which can actually work, and made them work.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12990 a1c6a512-1295-4272-9138-f99709370657
2007-04-01 13:09:22 +00:00
Michael Sevakis
e1dd10ddfb SWCODEC: Get rid of extra swap buffer and get back 512K of RAM or 100K if the players RAM is <= 1MB. Make any needed changes to things to stabilize and facilitate this including removing flattening out initialization. Comment some things heavily. Fix a few logfs I didn't want to see the compiler complaining about.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12843 a1c6a512-1295-4272-9138-f99709370657
2007-03-19 22:04:17 +00:00
Jens Arnold
79c8a8cbbe Let GCC check arguments of some more printf-style functions, also for plugins and codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12815 a1c6a512-1295-4272-9138-f99709370657
2007-03-17 09:02:53 +00:00
Miika Pekkarinen
fcf8145fee Fixed database export crashing with long tags. And failing without DB loaded to RAM due to the recently added new tags in DB, thus reaching the fd limit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12481 a1c6a512-1295-4272-9138-f99709370657
2007-02-25 19:01:32 +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
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
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
Michael Sevakis
84a013ea41 Attempt at fixing 64-bit sim warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11788 a1c6a512-1295-4272-9138-f99709370657
2006-12-17 14:47:12 +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
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
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
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
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
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
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
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
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
Jens Arnold
fb7368e12f More 64bit simulator fixes: inttypes, settings block handling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8888 a1c6a512-1295-4272-9138-f99709370657
2006-03-03 01:12:50 +00:00
Marcoen Hirschberg
f2fe4e0c4c improve FreeBSD support a little
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8884 a1c6a512-1295-4272-9138-f99709370657
2006-03-02 13:07:11 +00:00
Jens Arnold
b4ada860b3 Allow building simulators on systems where errno is thread-local by using the system's implementation of errno.h for simulator builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8871 a1c6a512-1295-4272-9138-f99709370657
2006-02-28 23:56:44 +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
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
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
Tomasz Malesinski
0868ac8cb2 Added ATTRIBUTE_SCANF
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8443 a1c6a512-1295-4272-9138-f99709370657
2006-01-25 01:33: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
Jens Arnold
4efecf6435 Fix yellow builds :/
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8073 a1c6a512-1295-4272-9138-f99709370657
2005-11-26 23:47:06 +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
Miika Pekkarinen
354a00627e User now receives a message if initial directory cache initialization
fails.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7988 a1c6a512-1295-4272-9138-f99709370657
2005-11-19 09:47:31 +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
Dave Chapman
782d335dd4 Explicitly make int8_t a "signed char" for better portability. e.g. "char" is by default unsigned for ARM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7822 a1c6a512-1295-4272-9138-f99709370657
2005-11-12 15:02:59 +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
Magnus Holmgren
889ab162a5 Cast to unsigned isn't enough in the isXXXX macros (chars > 127 caused a negative array index). With a cast to unsigned char, the macros work as expected. The other macros were changed accordingly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7305 a1c6a512-1295-4272-9138-f99709370657
2005-08-11 19:32:39 +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
Jens Arnold
399c081f93 Simulators: lseek() working again for systems with an off_t datatype differing from 'long' (cygwin/x11, maybe others). Removed unused sim_close().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6084 a1c6a512-1295-4272-9138-f99709370657
2005-02-28 18:32:57 +00:00
Jean-Philippe Bernardy
5426994398 Better definition & usage of the ATTRIBUTE_PRINTF macro
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6080 a1c6a512-1295-4272-9138-f99709370657
2005-02-28 09:48:35 +00:00
Jean-Philippe Bernardy
5da99ed570 long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6071 a1c6a512-1295-4272-9138-f99709370657
2005-02-26 21:18:05 +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
Dave Chapman
8243127dc4 Add an labs() macro - needed by Tremor
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6014 a1c6a512-1295-4272-9138-f99709370657
2005-02-19 11:50:53 +00:00
Daniel Stenberg
593510549f simulator prototype for exit()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6006 a1c6a512-1295-4272-9138-f99709370657
2005-02-18 15:37:56 +00:00
Daniel Stenberg
bd8d576e1a add a fprintf() for the sims too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6005 a1c6a512-1295-4272-9138-f99709370657
2005-02-18 14:46:25 +00:00
Daniel Stenberg
56337006ff localtime() proto for sims
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6004 a1c6a512-1295-4272-9138-f99709370657
2005-02-18 14:41:42 +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
Dave Chapman
de3d58c4dc Initial check-in - needed by various codec libraries
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5956 a1c6a512-1295-4272-9138-f99709370657
2005-02-15 19:45:38 +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
fe06a23699 long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5947 a1c6a512-1295-4272-9138-f99709370657
2005-02-15 11:49:15 +00:00
Jean-Philippe Bernardy
947dceb205 long policy
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5839 a1c6a512-1295-4272-9138-f99709370657
2005-02-07 21:54:31 +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
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
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
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
Linus Nielsen Feltzing
dd0b12c9ac Added RAND_MAX
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4921 a1c6a512-1295-4272-9138-f99709370657
2004-07-23 10:38:16 +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
Linus Nielsen Feltzing
0c458c043a The plugin API now supports ctype macros like tolower() and friends
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4872 a1c6a512-1295-4272-9138-f99709370657
2004-07-13 14:01:41 +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
a6142ab7ab Finally, the archos directory sandbox works in the same way for both X11 and win32 simulators. Unfortunately, this breaks the VC++ compatibility. Also, the plugin API now supports DEBUGF. Last, but not least, we have a new plugin, vbrfix.rock.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4726 a1c6a512-1295-4272-9138-f99709370657
2004-06-10 13:29:52 +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
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
Daniel Stenberg
e15ac75ea0 easy-to-use function types for typecasting
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4118 a1c6a512-1295-4272-9138-f99709370657
2003-12-09 06:48:10 +00:00
Daniel Stenberg
cf2c577d3d works with older glibc headers too now
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4117 a1c6a512-1295-4272-9138-f99709370657
2003-12-08 22:29:40 +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
Björn Stenberg
12e237a3f1 Cleanup
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4112 a1c6a512-1295-4272-9138-f99709370657
2003-12-06 23:22:05 +00:00
Björn Stenberg
a4baacd3ec Renamed flush() to fsync() to be more in line with POSIX/unix
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3766 a1c6a512-1295-4272-9138-f99709370657
2003-06-29 13:17:19 +00:00
Linus Nielsen Feltzing
e98bad5b38 Added the filesize() function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3473 a1c6a512-1295-4272-9138-f99709370657
2003-03-18 00:39:57 +00:00
Daniel Stenberg
5bbed107ab added fprintf() proto
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3451 a1c6a512-1295-4272-9138-f99709370657
2003-03-16 19:44:48 +00:00
Linus Nielsen Feltzing
44e51833ed Zagor added the flush() function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3416 a1c6a512-1295-4272-9138-f99709370657
2003-03-10 17:10:46 +00:00
Robert Hak
648ccc8f0f code police
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3350 a1c6a512-1295-4272-9138-f99709370657
2003-02-26 21:39:13 +00:00
Daniel Stenberg
c97056d9ed include "standard" files with <> and not ""
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3266 a1c6a512-1295-4272-9138-f99709370657
2003-02-14 23:38:21 +00:00
Felix Arends
e3403ecd9f this fixes the win32 simulator compilation
the simulator does not use the firmare\include path, instead it uses standard header files
those header files that do not exist in the SDK are placed in the win32 directory (dir.h, sprintf.h)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3264 a1c6a512-1295-4272-9138-f99709370657
2003-02-14 20:51:10 +00:00
Daniel Stenberg
cb2de174c1 more moves
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3221 a1c6a512-1295-4272-9138-f99709370657
2003-02-07 10:13:23 +00:00
Daniel Stenberg
f9b4490066 Include File Cleanup And Move-Around Party 2003.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3213 a1c6a512-1295-4272-9138-f99709370657
2003-02-07 09:41:57 +00:00
Daniel Stenberg
b6bf9b768d Public firmware header files should now be put in firmware/include/ directory
while firmware-private header files may remain in firmware/

First out: kernel.h is moved


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3209 a1c6a512-1295-4272-9138-f99709370657
2003-02-05 11:57:04 +00:00
Björn Stenberg
529e166888 New vastly improved random algorithm: Mersenne Twister
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1377 a1c6a512-1295-4272-9138-f99709370657
2002-07-17 23:07:45 +00:00
Felix Arends
dce52c7901 added debug function header file.
it defines macros that can be used for debugging purposes. IS_FUNCTION checks whether a function pointer is inside the memory (not in ROM).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1159 a1c6a512-1295-4272-9138-f99709370657
2002-06-24 16:00:06 +00:00
Daniel Stenberg
ac7b23f7ae removed lotsa protos and now it seems to build on sim too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1063 a1c6a512-1295-4272-9138-f99709370657
2002-06-18 11:04:22 +00:00
Daniel Stenberg
c5d24c6702 fat.c includes time.h so we need this
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1062 a1c6a512-1295-4272-9138-f99709370657
2002-06-18 09:41:28 +00:00
Daniel Stenberg
b1fe81d8c7 abs() is abs and should work as abs when you want abs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1056 a1c6a512-1295-4272-9138-f99709370657
2002-06-18 07:08:41 +00:00
Daniel Stenberg
945a5973b5 remove bad include
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1053 a1c6a512-1295-4272-9138-f99709370657
2002-06-18 06:45:40 +00:00
Daniel Stenberg
980359f924 fix ctype extern
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1046 a1c6a512-1295-4272-9138-f99709370657
2002-06-17 13:51:51 +00:00
Daniel Stenberg
a898728c54 fixed to work
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1039 a1c6a512-1295-4272-9138-f99709370657
2002-06-17 13:34:04 +00:00
Daniel Stenberg
f7b10a3747 added protos and fixed to make them work as proper newlib replacement
headers


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1034 a1c6a512-1295-4272-9138-f99709370657
2002-06-17 13:19:18 +00:00
Daniel Stenberg
7da93d58fd This is my initial attempt to get rid of the newlib headers requirement,
for gcc built without newlib.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1017 a1c6a512-1295-4272-9138-f99709370657
2002-06-15 15:49:32 +00:00