Commit graph

125 commits

Author SHA1 Message Date
Brandon Low
9a550524af Make RTC tags display hyphens instead of nothing on non-rtc targets. This makes WPSs that use RTC tags look decent again with the new separated RTC tag style
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13639 a1c6a512-1295-4272-9138-f99709370657
2007-06-16 20:33:30 +00:00
Nils Wallménius
f46657ec5a Move the setvol wrapper function to misc.c and use it in more places instead of doing the same checks everywhere
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13524 a1c6a512-1295-4272-9138-f99709370657
2007-05-30 17:57:32 +00:00
Dave Chapman
f0d4fc6c6b Commit my patch from FS#7179 - a standalone command-line checkwps tool. To build, just type "make checkwps" in tools and run it with "checkwps wpsname.wps".
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13517 a1c6a512-1295-4272-9138-f99709370657
2007-05-29 19:00:36 +00:00
Nicolas Pennequin
6579818b43 Add the possibility to store cuesheets in /.rockbox/cue. The code will look for a cuesheet there in case there wasn't one in the same folder as the audio file. This is to reduce the clutter created by one cuesheet per audio file in some places.
Also some duplicate code was replaced by a function call.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13508 a1c6a512-1295-4272-9138-f99709370657
2007-05-28 23:18:31 +00:00
Nicolas Pennequin
5cc98efddc Add %fk and %Fk WPS tags : (next) file audio frequency in KHz (rewrite of FS#6393 to adapt it to the tokenizer).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13455 a1c6a512-1295-4272-9138-f99709370657
2007-05-21 13:41:43 +00:00
Nicolas Pennequin
9d5e376fc3 Allow the day of month (%cm) and day of week (%cu and %cw) RTC tags to be used in enums.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13454 a1c6a512-1295-4272-9138-f99709370657
2007-05-21 12:54:07 +00:00
Nicolas Pennequin
4a6ab0d031 Commit FS#7164 (request is FS#6780) : Improve WPS volume enumeration. It is now the following : %?pv<Mute|...|...|0 dB|Above 0 dB>. It almost doesn't changes anything for most WPSs but adds some new possibilities. Keep in mind that some targets don't go above 0 dB so the last case might be unused.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13387 a1c6a512-1295-4272-9138-f99709370657
2007-05-14 14:33:43 +00:00
Michael Sevakis
1c59b101df SWCODEC Playback: Seriously mess with it and get rid of (at least some ;) race conditions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13361 a1c6a512-1295-4272-9138-f99709370657
2007-05-08 22:56:12 +00:00
Nicolas Pennequin
aa220d5acd Trim a bunch of long lines and fix an infinite loop and buffer overrun in the impossible case that a WPS line ends with a litteral string but without a newline char (wps_parser.c:774).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13306 a1c6a512-1295-4272-9138-f99709370657
2007-05-02 17:51:01 +00:00
Magnus Holmgren
05a158ecf3 Treat empty strings as 'no value' in conditionals, as it used to.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13304 a1c6a512-1295-4272-9138-f99709370657
2007-05-02 16:28:24 +00:00
Nicolas Pennequin
1cf2ec38b1 Change some ifdefs for the recent backdrop changes (fixes the yellow builds) and move the backdrop files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13265 a1c6a512-1295-4272-9138-f99709370657
2007-04-25 22:08:00 +00:00
Nicolas Pennequin
7fdfa56454 Add backdrop support for LCD remotes with depth > 1-bit. Only WPS backdrops, but the groundwork is laid for main backdrops too (all that's really needed are menus to set/clear them).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13263 a1c6a512-1295-4272-9138-f99709370657
2007-04-25 21:44:56 +00:00
Nicolas Pennequin
814d402d4c More strict WPS parsing and displaying code. If there are errors, WPS loading will fail and the default WPS will be displayed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13236 a1c6a512-1295-4272-9138-f99709370657
2007-04-21 19:31:46 +00:00
Miika Pekkarinen
f53a8f8cd4 Added autoscore tag (%ra) to wps.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13169 a1c6a512-1295-4272-9138-f99709370657
2007-04-15 15:46:46 +00:00
Miika Pekkarinen
1c0f41447a Reverted FS#6949 as we have a strict policy against anonymous contributions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13168 a1c6a512-1295-4272-9138-f99709370657
2007-04-15 15:38:08 +00:00
Miika Pekkarinen
3c6e46ce64 FS#6949 - WPS tag for database autoscore. Author wanted to remain anonymous.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13164 a1c6a512-1295-4272-9138-f99709370657
2007-04-15 13:50:07 +00:00
Nicolas Pennequin
483c87a04d Oops, the condition was wrong. Sorry about that :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13163 a1c6a512-1295-4272-9138-f99709370657
2007-04-15 03:26:26 +00:00
Nicolas Pennequin
2e1169bdda * Make the WPS parser close open conditionals on new sublines and comments as well as new lines.
* Make the displaying code check for invalid conditional constructs in order to avoid some rare cases of infinite looping.
* Make the WPS parser check that it doesn't read more strings than it can.
* Increase the string buffer size (from 512 to 1024, to accomodate the TextBox WPS which uses a lot of unicode characters).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13162 a1c6a512-1295-4272-9138-f99709370657
2007-04-15 02:59:34 +00:00
Jens Arnold
47bf6c5a5a Moved archos backlight code to target tree. Changed old mutlivalue CONFIG_BACKLIGHT to a simple HAVE_BACKLIGHT.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13136 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 22:12:13 +00:00
Nicolas Pennequin
27cbf6bcea * Add the crossfade (%xf) WPS tag
* Avoid eating the whole line when unsuccessfully parsing a %x or %xl tag. This will prevent unknown tags starting with %x from making the line disappear.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13127 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 16:15:34 +00:00
Nicolas Pennequin
5cac46164a Use valid_time() instead of using individual checks which amount to the same thing, and add RTC tokens beginning and end values that are used to check if a token is an RTC one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13096 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 15:27:52 +00:00
Nicolas Pennequin
536c5d9e74 RTC tags for the WPS: Accept FS#6998 and FS#7001 by Alexander Levin with changes by me. CUSTOM WPS FILES NEED TO BE UPDATED !
The RTC tags are now atomic, i.e. instead of using one tag with the format (e.g. %cd m yc), we use several separate tags, one for each value (e.g. %cd %cm %cy).
Also, %cP produces an uppercase AM/PM indicator and %cp a lowercase one, which is the opposite from what they did before.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13093 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 13:37:08 +00:00
Nicolas Pennequin
ad07c23a83 Accept FS#7004 by Michal Jevjak: Fix new sublines not being displayed after scrolling lines. This bug was introduced in the previous WPS commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13090 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 01:14:04 +00:00
Nicolas Pennequin
cda89411b0 Accept FS#7000 by Dave Hooper: Fix scrolling line behaviour for dynamic tags (e.g. when a line with info about the next track didn't scroll) and fix some incorrect refreshing flags.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13081 a1c6a512-1295-4272-9138-f99709370657
2007-04-09 14:06:38 +00:00
Nicolas Pennequin
9ce77aa554 Skip leading UTF8 BOM if present. Fixes the first line of the WPS not being understood as a comment when it is one.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13074 a1c6a512-1295-4272-9138-f99709370657
2007-04-08 15:02:26 +00:00
Nicolas Pennequin
fd19b8dba4 * Improve conditional evaluation to allow using enums with only two cases (problem reported by roolku). This happens to simplify the code.
* Rename get_tag() to get_token_value() and make it get a token pointer instead of the index of a token. This also simplifies the code a bit.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13073 a1c6a512-1295-4272-9138-f99709370657
2007-04-08 14:00:00 +00:00
Nicolas Pennequin
07696c10b1 FS#6991. Patch by Alexander Levin, modified by me:
* Reorganisation of the WPS data structure with line and subline structs. This allows us to use sublines more sparingly, so it should save some memory. Also it removes the need for the "End Of Line" token. Overall, the data structure and the code are simplified and gain in clarity.
* Some code improvements and added comments.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13065 a1c6a512-1295-4272-9138-f99709370657
2007-04-08 04:01:06 +00:00
Nicolas Pennequin
3dc42ba8c7 Add the sleep timer tag that got forgotten in the initial code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13056 a1c6a512-1295-4272-9138-f99709370657
2007-04-07 11:57:59 +00:00
Nicolas Pennequin
f3a149acf6 Make conditionals trigger a line update. Fixes FS#6987.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13054 a1c6a512-1295-4272-9138-f99709370657
2007-04-07 00:18:28 +00:00
Nicolas Pennequin
8527ce82b6 Use the default subline timeout value in case the value isn't explicitly set. Hopefully this will be the last commit in that area :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13048 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 19:07:57 +00:00
Nicolas Pennequin
87e77ba466 This time I hope I got it right! Basically, remove what the previous commit about subline timeouts added and make the values be computed by a special function at display time. This should bring complete compatibility with the previous code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13047 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 16:43:07 +00:00
Nicolas Pennequin
3954a51311 Better handling of subline timeout values : All values are set to the default before another value is found by the parser. No more
resetting to the default value at displaying time (this caused problems especially noticeable on the DancePuffDuo WPS). Changing 
the values with conditionals is still possible but only strictly positive tiemout values are accepted now. 


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13045 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 14:18:07 +00:00
Nicolas Pennequin
31d8068b33 End the default remote-WPS with a newline. Fixes FS #6979.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13041 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 02:01:34 +00:00
Nicolas Pennequin
29e18caacf Allow subline timeout values to be changed dynamically in the WPS (e.g. by using conditionals).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13026 a1c6a512-1295-4272-9138-f99709370657
2007-04-05 02:44:01 +00:00
Jens Arnold
7b8767c093 Player full-line progress bar: No more separate character cell(s) for the colon(s) in the time display. Looks better, and takes less software-definable characters, allowing for up to 99:59:59 with the last progress bar character still working properly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13023 a1c6a512-1295-4272-9138-f99709370657
2007-04-04 23:18:35 +00:00
Jens Arnold
c6fce6cad3 Player progress drawing rewrite (both emptying cup and full-line bar): * Fixes FS #6820, related to the glitch that progress moved in the opposite direction when seeking. * Smaller, more efficient code. * Full-line bar only displays as many software defined characters as needed, freeing the remaining ones for other text. * Don't cut last digit from times >=1 hour (at the cost of inexact last progress bar character).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13021 a1c6a512-1295-4272-9138-f99709370657
2007-04-04 22:05:04 +00:00
Nicolas Pennequin
830a3a4720 * Make some private variables 'static'.
* Fix the pitch tag and allow it to be used on all targets except the Archos Player.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13020 a1c6a512-1295-4272-9138-f99709370657
2007-04-04 15:47:51 +00:00
Nicolas Pennequin
ab90d58801 Introducing the WPS tokenizer !
When a WPS file is loaded, it is parsed to an array of tokens, which allows more efficient displaying. More info on the tracker entry : FS #6862.
The parsing code is completely independant and is all in wps_parser.c. The displaying part stays in gwps-common.c.
Debugging code is provided (with the right ifdefs) and is disabled by default.
Overall, the code should be easier to read and maintain. Adding new WPS tags is made quite trivial.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13019 a1c6a512-1295-4272-9138-f99709370657
2007-04-04 14:41:40 +00:00
Jens Arnold
2684e36724 Repair player progressbars (single char and full line) broken in the full unicode support move, and enable text alignment for charcell.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12993 a1c6a512-1295-4272-9138-f99709370657
2007-04-01 17:32:12 +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
Jens Arnold
4d6374c923 Get rid of the 'center' parameter for splashes. There were only 2 of almost 500 splashes which were not centered.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12807 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 21:56:08 +00:00
Robert Kukla
23c136c892 don't restart the whole wps to essentially update the display of runtime info, but make the concerned tags dynamic. Now scrolling is not restarted at end of buffering.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12592 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 16:09:18 +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
79a2a936a2 remove numerical genre and use genre_string consistently:
- fix spurious display of "blues" genre for missing genre tag 
- simplify code/use less code
- numerical->string conversion only once instead of at every use

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12552 a1c6a512-1295-4272-9138-f99709370657
2007-03-02 21:49:42 +00:00
Jens Arnold
b49602e7a9 Fix a potential race condition with cuesheets (that hit every time in an archos test), plus a slight optimisation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12524 a1c6a512-1295-4272-9138-f99709370657
2007-02-28 23:43:38 +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
Dave Chapman
6c6c352310 Character-encoding policing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12516 a1c6a512-1295-4272-9138-f99709370657
2007-02-28 01:36:32 +00:00
Jens Arnold
3a37f46fc9 Fix CONFIG_BACKLIGHT warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12393 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 10:07:27 +00:00
Jonathan Gordon
9a6f419775 CONFIG_CHARGING
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12384 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 05:32:06 +00:00
Jonathan Gordon
bd47d48c21 Do the CONFIG_LED define
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12383 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 05:07:19 +00:00