Commit graph

14960 commits

Author SHA1 Message Date
Asier Arsuaga
6b16ac1cf3 FS#12725 - Basque translation
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: I2b35a3210e1f4128cd598633c0017bee2a30d17f
2012-08-07 18:59:43 +02:00
Michael Giacomelli
d46b090771 Introduce logging to disk feature into rockbox.
Logs information, errors, etc to disk using the register_storage_idle_func
mechanism to write to the disk when available.  Currently, this is disabled
in normal builds, but can be enabled by adding ROCKBOX_HAS_LOGDISKF to the
config file.  By default, it uses a 2KB buffer and drops text if the buffer
overflows.

The system includes a simple warning level mechanism that can be used to by
default exclude non-serious errors from logging on release builds.

Change-Id: I0a3d186a93625c7c93dae37b993a0d37e5a3a925
Reviewed-on: http://gerrit.rockbox.org/288
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Tested-by: Michael Giacomelli <mgiacomelli@gmail.com>
Reviewed-by: Michael Giacomelli <mgiacomelli@gmail.com>
2012-08-07 00:53:46 +02:00
Jonathan Gordon
7c31ff2fb0 Fix skin engine error message
Change-Id: I2250be6d4e82cd5d91ed1a2c080e263dd7543129
2012-08-06 10:35:22 +10:00
Thomas Martitz
efe73e143a Fix database tool.
It was also broken functionally, probably since a while.So restore the
functionality. Run it on the dap, the tcd files will be placed into .rockbox folder.

Change-Id: Id7a6ce4389dfaf99799258902be80d630af0601c
2012-07-31 10:33:27 +02:00
Thomas Martitz
63d27626e4 Database: Support for multiple search roots.
Support multiple roots (i.e. scan folders) using the new folder_select()
function.

Amaximum of 12 dirs can be selected, however the setting (i.e. the entire
folder list) cannot be longer than 80 chars.

The setting works similar to the autoresume dirs: Directories are seperated
by colons, e.g. "/Music:/Podcasts". Default is "/sdcard" on android, "/" on
all other targets.

Changes are made to the multiple-root logic in tagcache.c. This is to
a) provide the logic at all on native targets and b) support more than
one root before the scan even starts (until now it was used to add roots
during scan due to symlinks).

Change-Id: I64992c0678324536e8e64cd4427c8abbd8e8b39e
2012-07-30 21:20:51 +02:00
Thomas Martitz
0a645d212c autoresume: Use GUI browser instead of text entry to select autoresumable folders.
Change-Id: I89d78305410ed9a1f0a64433e9139592b12ad900
2012-07-30 21:20:51 +02:00
Thomas Martitz
8c655cfdc0 New GUI browser to select one (or more) folders.
The browser lets the user pick one or more directories in a convinient
GUI browser. The initial directory list is read from a string
(separated by colons) and the resulting list is written back to the same
string (again separated by colons).

Note: The work was initially done by Jonathan Gordon, however I changed
it substantially so I claim autorship.

This selector is going to be used for autoresume and database scan folders.

Change-Id: Id1d3186dad783411eb5c6056ce93f5b6123c7aa0
2012-07-30 21:20:51 +02:00
Jonathan Gordon
9dd2eb49be skin_engine: Support percentages for viewport positioning
%V(0,50%,75%,50%,-) - make a viewport at x=0, y=half the lcd height,
75% lcd width and the remaining height (the other half) of the lcd.

Change-Id: If26ccb65e8dc52c9225f3fd6d7b222d770add0f0
Reviewed-on: http://gerrit.rockbox.org/184
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-07-29 04:24:38 +02:00
Jonathan Gordon
4348b45857 shortcuts: Remove the selected shortcut with the context menu button
Change-Id: Ie551fdda39bae3b0c5f37c1cb0ff905151d352de
2012-07-26 17:51:51 +10:00
Jonathan Gordon
08238178d3 lists: Support '\t' in list item text to indent the line containing it.
Change-Id: I1583371228ed477b504c135f81cb59a0c3c931e6
Reviewed-on: http://gerrit.rockbox.org/296
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
Tested-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-07-19 01:21:10 +02:00
Purdea Andrei
323282f22d Fixing data abort (pc in strchr). when scrolling a big playlist very fast.
Change-Id: Ibe00a11592a18d320682cce755e48ce701ff5b4a
Reviewed-on: http://gerrit.rockbox.org/281
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
2012-07-19 00:00:41 +02:00
James Hunt
f0430e291a FS#12716 - Updated Russian translation
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: Ib98ab5b2c4c1750ce83208a36355e41ec3500f1e
2012-07-18 15:17:44 +02:00
Thomas Martitz
15775c8bad fix erroneous button read in yesno screen and missed buttons in action.c.
If two yesno screens directly follow each other the button release of the
first one was incorrectly accepted in the second one. The fix exposed another
problem in action.c if action_wait_for_release() is called when no button is
actually pressed. The next press was silently eaten.

Change-Id: Iaa5f246f7ea1fd775606620a989cdaec74a9305e
2012-07-18 10:28:08 +02:00
Asier Arsuaga
df9bd8730c FS#12715 - Translation for basque completed
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: I31aff123f414e04482b3c9f8af3fe481dab7284d
2012-07-16 18:35:20 +02:00
Jonathan Gordon
68ee7aac6e skin_engine: Make pressing the setting bar touch region work
might need some tweaking, but works.

Change-Id: I0784cd4fe9996531da6cc275491ff3b4e83cdbcf
2012-07-06 14:28:34 +10:00
Jonathan Gordon
65f9df3083 skin_engine: Allow the %St() (setting) skin tag be used as a bar
%St(<setting name>) or %St(<bar tags>, setting, <setting name>)

Change-Id: I71396d683634d4d1ad2357018c4029ecb4229677
2012-07-05 23:30:06 +10:00
Jonathan Gordon
f6d6a4602c Fix fast_readline to handle windows line endings (\r\n)
Change-Id: I3561eff9bc4e244a84ef4afee26a40432d1073dd
2012-07-05 23:00:31 +10:00
Jonathan Gordon
c413591e7e fix build warnings
Change-Id: Id5f0e84834f1cb74a317bb5653fdb6f665233345
2012-07-05 11:24:08 +10:00
Jonathan Gordon
d336eb30f8 skin_engine: Automatically create touch regions for skin bars
skin bars now automatically create the touch region the same size
as the bar on touchscreen targets. This means touches will
magically "just work" for reveresed bars (rtl or otherwise).

~5% padding is added on all 4 sides of the region rectangle but
this may need to be tweaked.

Please consider the 'progressbar' and 'volume' touchregion actions
to be deprecated.

Kudos to my new wife for figuring out the bleedingly obvious way to
do this!

Change-Id: I997a7bcaa70fce9885808aae27953c7676e9c2ff
2012-07-05 11:15:16 +10:00
Mārtiņš Šimis
e8d1583068 FS#12710 - Latvian translation update
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: I2e1e79a5df45117f83d631d65144c0a012c6f2e4
2012-06-28 21:37:30 +02:00
Enric Morales
3214849f4e FS#12707 - [PATCH] Last missing strings in Catalan translation
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: Icf726324d533ce2cd0eb918a7188ab6201e5c99f
2012-06-26 09:00:50 +02:00
Marcin Bukat
5785cfb741 Add fms to cabbiev2 by default
Currently we have only fms for 160x128x2 and all others will
fallback to built in one.

Change-Id: I43efa2795e1ab62185e2e25b6c8c4979c87c4299
2012-06-25 22:07:43 +02:00
Michael Chicoine
277533fb57 US English language update
Change-Id: Ib0a6c7f979d201f1c3729a210cc71a4313f95158
2012-06-23 16:07:43 -05:00
Szymon Dziok
afc09442cd Update Polish translation.
Change-Id: Ie7d54dd3086ba4b20eb37671b9e08b51fec5571c
2012-06-23 18:24:42 +02:00
Michael Giacomelli
d245997667 Fix warning on previous commit.
Change-Id: Idd760f4e83fc5ade972fe88db3cab9e03c24966c
2012-06-22 11:38:35 -04:00
Michael Giacomelli
b30edcd62f Make playlist.c aware of external storage when determining paths
format_track_path currenyly corrects for things like windows volumes  and
relative paths in playlists, but does not handle external media like SD
cards correctly, resulting in some seemingly valid playlists not working
because of rockbox's mount point for external media.  Correct this by checking
to see if a playlist is on external media and then formulate the path correctly
if it is.

Unfortunately, this breaks the playlist_save logic if the CWD is on an external
device.  Its not clear to me why we should be checking the CWD when saving a
playlist, as the only apparent use of this is to let people save relative
paths on the virtual keyboard.  As far as I can tell, this is actually more
difficult to do then using an absolute path given that we insert the CWD
onto the virtualkeyboard by default.  Therefore, I'm removing the option
to use '..' in playlist save paths since its seems useless.

Change-Id: I47946cc45d776c7a72ecbd0ecc720dbf85550f6f
Reviewed-on: http://gerrit.rockbox.org/270
Reviewed-by: Michael Giacomelli <mgiacomelli@gmail.com>
Tested-by: Michael Giacomelli <mgiacomelli@gmail.com>
2012-06-22 17:05:03 +02:00
Frank Gevaerts
7151111228 Make touchscreen handling work with skinned lists.
Change-Id: I7df93319c8f16f05e840d74b022aab4803bb8f80
2012-06-19 22:02:59 +02:00
Frank Gevaerts
21ddcbec66 CHARCELL doesn't have sbs support, so disable it properly.
This actually fixes a nullpointer dereference.

Change-Id: Ie3e153d72bcacdce46bfe5a514ff77aebdfd7225
2012-06-19 21:53:29 +02:00
Bertrik Sikken
bc657b5163 brickmania: adapt to 96x96 screen of sansa clip zip
Change-Id: I298e989f4b1ae274eb9a28d97c453cc473609176
2012-06-19 21:09:51 +02:00
Bertrik Sikken
1ccc6587df Fix Czech phrase for LANG_DEPTH_3D (assume the translation didn't change, only the targets)
Change-Id: Ic7c974c4c641cf0e0356bc92cc9785ac1d472c14
2012-06-19 19:49:46 +02:00
Marek Salaba
d72f4d2ca2 FS#12701 - June update of Czech language
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: I56c500c97b8dcb92f0aff0409319299579cbb631
2012-06-19 19:34:32 +02:00
Bertrik Sikken
beb61a93c5 Not quite a fix for FS#12693 yet, but at least invalidate the playlist file descriptors after closing and removing
Change-Id: Ia43eb517d154d24a6bd581fa3aa69c99a28228ae
2012-06-18 00:45:50 +02:00
Thomas Martitz
2760d578ca touchscreen: Don't hide selection by default. Fixes FS#12675.
Change-Id: Ic7e22ce6280d4105c38f7588717f4cf34c1bb5a3
2012-06-15 13:00:20 +02:00
Michael Giacomelli
2ca6fe1a77 Fix stop watch plugin from inserting 0 second laps if a new lap is started with the timer off.
Change-Id: I3d23d6dd47bb3b78a51d8a42b052403f7bf7665c
Reviewed-on: http://gerrit.rockbox.org/276
Reviewed-by: Michael Giacomelli <mgiacomelli@gmail.com>
Tested-by: Michael Giacomelli <mgiacomelli@gmail.com>
2012-06-14 04:24:54 +02:00
Li Jie
35b45a838f FS#12691 - Simplified Chinese translation update
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: Id32dc25e0b6473ed2e8f354d3b85d55e97964257
2012-06-10 21:25:46 +02:00
Thomas Martitz
66b6fdbb73 wpsbuild: Rewrite to fix various issues and support .fms
wpsbuild.pl is enhanced to produce fallback themes that were previously
hardcoded in buildzip.pl. It also recognizes resolution strings as
regular expressions now so you can specify resolution dependant settings
as <setting>.<regex>: <value> (needed to support single themes on multiple
resolutions). The WPSBUILD syntax completely changed as
well and it includes the fallback themes as well. Ultimately wpsbuild is
also able to install .fms files.

Change-Id: Idf5994f17b9750983d7bc3ef583540a8cdae1dde
2012-06-10 21:20:36 +02:00
Bertrik Sikken
d023bf0f5d Fix checks on buflib allocated handles (0 is not a valid handle value)
Change-Id: I8fdc5a59a5062f40a431cd49971390e21631b8ec
2012-06-10 17:15:47 +02:00
Dominik Riebeling
4e41c6d9ba Only check lng files for MAX_LANGUAGE_SIZE.
Since the build system now creates files holding the voice strings and an
archive holding those creating MAX_LANGUAGE_SIZE needs to be created using a
more specific wildcard.

Change-Id: Ia424533a8053e4817f23b8dd99f6ab3c324d584d
2012-06-09 23:04:42 +02:00
Dominik Riebeling
d6ef5a0d80 Create binary voice string archive on target.
Extend genlang to create files holding the voice strings in a binary format
similar to lng. Create such files for all languages during a normal build, put
them in a zip file and add them to rockbox.zip so they are installed with a
main build.

Creating a voice file requires access to the voice strings, which are currently
not distributed with Rockbox. Therefore it is necessary to either have access
to the source code of the installed build or to use a build the genlang service
on rockbox.org can retrieve the strings for, making it impossible for normal
users to generate a voice file for custom builds, test builds and older builds
that aren't supported by the rockbox.org script. It also requires a network
connection when creating voice files with Rockbox Utility even if creating a
voice file by itself isn't network related.

Furthermore, putting the voice strings on the target is also a prerequisite for
eventually supporting a TTS on the player.

Strip voice strings path.

Change-Id: Ic2f86130909b3b257986a348e5cfcf618c4500c3
2012-06-09 22:44:56 +02:00
Ivan Pesic
db6853c066 FS#12690 - Serbian translation update
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: Iacda723380276546b5d27159497d713eef1084d9
2012-06-08 22:46:08 +02:00
Dominik Riebeling
de6f96229b Add comment to clarify calculation.
Change-Id: Ie0eaa2bb1c672c974246b3e97b5d5f3b9e1f9925
2012-06-05 22:53:21 +02:00
Eduardo Gonzalez
299ce2294e FS#12689 - Missing strings for Español (Spanish) translation
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: I2f33c613dc8dbf149c10efc6b73b16e969cf0903
2012-06-05 14:15:19 +02:00
Bertrik Sikken
0fd04941a3 matrix plugin: Fix out-of-bounds array access. Unify for-loop style.
Change-Id: I74ec8e559b80bee6c7de02193e943244dcf352c4
2012-06-03 23:37:33 +02:00
Magnus Holmgren
382ea6b67a Update the Swedish translation.
Change-Id: I1829750a1da11d036ba4904975efb086bbb63bed
2012-06-03 15:33:22 +02:00
Peter Lecký
dce80eaa19 FS#12686 - Slovak lang update
Signed-off-by: Bertrik Sikken <bertrik@sikken.nl>

Change-Id: Ice4ac40aa849a62ba4c2eba6e6ec45b0ed990fff
2012-05-31 21:55:48 +02:00
Michael Sevakis
ba8e4367fb Disable attempts to voice init_tagcache.
It just cannot work anyways because init_tagcache is called before
audio_init. Besides, FS#12684 may be helped for now as well.

Change-Id: I2bb4f81f807bae509b220ee6656a6a109b5eb011
2012-05-30 18:42:16 -04:00
Michael Sevakis
77220147b5 Get voice PCM queue indexes updating in right order...
...from the compiled code standpoint anyway. frame_out was being
incremented before updating size...sometimes...depending on what
GCC was up to. This seems to help.

Change-Id: Ie4ee3337a2937bd2c26f0a9c4a1a00467954821b
2012-05-30 12:55:26 -04:00
Jonathan Gordon
7a009276bc Fix FS#12674 - %ax() doesnt mirror viewport correctly
Change-Id: I10c933542037eeedc9c4be74b3d43a1430ec05b2
2012-05-30 21:17:40 +10:00
Lorenzo Miori
3cad5573b6 ypr0: This patch adds radio support to Samsung YP-R0
Basically it uses the default SI4700 radio chip driver, the only thing that's different is the I2C access,
written specifically to interact with my kernel module.
Next things to add are:
- RDS support!

Change-Id: I0ed125641e00f93124d7a34f90dd508e7f1db5a4
Signed-off-by: Lorenzo Miori <memorys60@gmail.com>
2012-05-28 19:39:14 +02:00
Bertrik Sikken
afc96087f8 New crossfeed algorithm for Rockbox: "Meier" crossfeed
Emulates the basic "Meier" crossfeed (2 capacitors, 3 resistors)
as discussed in
http://www.meier-audio.homepage.t-online.de/passivefilter.htm

This crossfeed blends a bit of low-pass filtered L signal into
the R signal (and vice versa) while adding about 300 us delay
to the crossfed-signal. A difference with the crossfeed already
present in rockbox, is that this algorithm keeps the total
spectrum flat (the one currently in rockbox accentuates
low-frequency signals, making it sound a bit muffled).

This implementation is quite lightweight, just 3 multiplies per
left-right pair of samples. Has a default C implementation and
optimized assembly versions for ARM and Coldfire.

The crossfeed effect is quite subtle and is noticeable mostly
one albums that have very strong left-right separation (e.g.
one instrument only on the left, another only on the right).

In the user interface, the new crossfeed option appears as
"Meier" and is not configureable. The existing crossfeed is
renamed to "Custom" as it allows itself to be customised.

There is no entry for the user manual yet.

Change-Id: Iaa100616fe0fcd7e16f08cdb9a7f41501973eee1
2012-05-28 11:34:15 +02:00
Bertrik Sikken
872a3a7be3 clipzip: fix default font and icon set
Change-Id: I6eb247eaf7e3306cfc2db25cf93e3be5585cf904
2012-05-27 02:38:04 +02:00
Thomas Martitz
d523fd6e64 load_code/overlay: Don't close plugin handle before calling the plugin.
Doesnt fix an actual bug because closing a handle is a no-op on all
native targets and others dont use overlay.

Change-Id: Ie55e3fd4abd08b174d86ca25aed54a970dddbebd
2012-05-26 22:57:21 +02:00
Michael Sevakis
652b39b9e1 More snafu fix. Need a couple more patchups for now.
Must restore talk buffer explicitly when not taking it and promote
the buffer state.

Change-Id: Ia0341ede05837e6e94885a9ad62460c415ec6f00
2012-05-24 20:59:05 -04:00
Michael Sevakis
4b97437c23 Correct snafu in talk.c
When allocating the voice buffer, it's supposed to start at the beginning
of the audio buffer, not at the end of the voice buffer. ;-D

Might clear up a thing or two.

Change-Id: I94796ff21090bcc56813cdc569957a1a9178abcd
2012-05-24 20:47:40 -04:00
Michael Sevakis
545f41790b voice_thread_init was left INIT_ATTR but is being called too late.
Must just remove that attribute for the moment which might fix a
problem or two.

Change-Id: I16bfdb63a526ca6fbae78a86e6293957ebe2fa41
2012-05-21 15:21:36 -04:00
Michael Sevakis
0ebfb937aa Fix some lockup caused by handles not being initialized to < 0...
...by default where they would be interpreted as valid but not actually
be which would cause calls to buffering while it was not initialized.

Add BUFFER_EVENT_BUFFER_RESET to inform users of buffering that the
buffer is being reinitialized. Basically, this wraps all the
functionality being provided by three events (...START_PLAYBACK,
RECORDING_EVENT_START, RECORDING_EVENT_STOP) into one for radioart.c,
the only user of those events (perhaps remove them?) and closes some
loopholes.

Change-Id: I99ec46b9b5fb4e36605db5944c60ed986163db3a
2012-05-21 02:28:13 -04:00
Bertrik Sikken
d01a182e65 Creative Zen x-fi: fix battery bench plugin
Change-Id: Iaab6353b94cc4462b5953a9fbec315d2e19f47b3
2012-05-20 17:06:14 +02:00
Bertrik Sikken
f340768ad5 _lists_uiviewport_update_callback can be made static
Change-Id: I25dfaa1636811a0340d1730a5a8f44caa85b1771
2012-05-20 01:57:49 +02:00
Frank Gevaerts
9db0cf0f93 Fix typo in error message
Change-Id: I69c87fac21b034b639fbce4324397b273d66d41b
2012-05-19 18:53:17 +02:00
Amaury Pouly
e401683482 zenxfi3&stfm1000: implement fmradio i2c and debug screen
Change-Id: I83dbdee13185d9adcf590dc213da5a8c97adb2ba
2012-05-19 18:04:25 +02:00
Peter D'Hoye
4f5efac9e5 Update Dutch translation
Change-Id: Ie8f11ceac709fee6977ac59e483ee8233228a5f8
2012-05-19 17:11:20 +02:00
Amaury Pouly
12c64a4b79 Initial commit for the Creative ZEN X-Fi2 and X-Fi3 ports
These are really similar devices so one commit for both is ok.

Change-Id: I8bd1d3fef1eb6d00aaadfb7af56c771f62d0c9c3
2012-05-19 16:10:52 +02:00
Dominik Riebeling
2d9c0bab54 Add support for cp1252 (Western European) codepage.
In Europe Windows defaults to its own codepage cp1252 (also known as "WinLatin"
or "Windows-1252"). cp1252 adds some characters to ISO-8859-1.

Some mp3 tagging software on Windows uses cp1252 instead of ISO-8859-1. This
violates the ID3 specification, which requires tags to be ISO-8859-1 or
Unicode. However, similar violations are made for other codepages and supported
by Rockbox using the "Default Codepage" setting. Add support for cp1252 to
enable people using such broken tools to override the correct decoding to get
their tags displayed properly.

Change-Id: I9f2ec478afe2503e99ee8e6609416c92b0f453e0
Reviewed-on: http://gerrit.rockbox.org/209
Reviewed-by: Jens Arnold <amiconn@rockbox.org>
Tested-by: Jens Arnold <amiconn@rockbox.org>
2012-05-19 01:42:53 +02:00
Bertrik Sikken
4a6b875eda Make lbitlib.c include its own header (for the luaopen_bit prototype)
Change-Id: I6da9d6ff084b89c519f1abfc50ba3375a7d0f958
2012-05-19 01:19:20 +02:00
Frank Gevaerts
053722a573 Don't trigger a skin refresh from skinlist_draw()
Thiskin refresh trigger apparently causes the skin and list to continuously
refresh, with the side effect that buttons no longer work.

Change-Id: I4439406176890ac46a3f217bfff43c6935a03a7c
Reviewed-on: http://gerrit.rockbox.org/240
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-05-18 09:48:31 +02:00
Michael Sevakis
8bbd4d91a0 Zero out voice buffer memory immediately after allocation.
Can't wait for the voice thread to initialize it since it concievably
could be moved before the voice thread actually does so and the move
callback accesses data that must be first set up in the voice thread
function.

Change-Id: Ia0d09539854db85e132e09d26cb129f02f5d93ff
2012-05-17 11:16:20 -04:00
Jonathan Gordon
7909bf039f (hopefully) Fix FS#12639 and other skin related buflib corruption issues.
Kudos to funman for figuring out the problem - skin_find_item() rather
stupidly uses the global skin_buffer variable in skin_parser.c which is
fine in the parser EXCEPT it gets changed in skin_render when the sbs
is being redrawn while another skin is loading, so fix this by makeing
skin_find_item() use a local data pointer so a skin_render() during
parsing won't break anything.

Change-Id: I80e1c0efe569c18225e5772159c18ebb21e07332
2012-05-16 22:33:40 +10:00
Dominik Riebeling
642f523320 Remove < and > from voice strings.
Some strings indicate a special meaning by being surrounded with < and > (like
"<All tracks>" in the database view). There is no point in having those
characters in the voice strings, most translations have them removed. Remove
them on the remaining ones since they were causing problems with creating
voicefiles.

Change-Id: I22cfa251b141cb765020e3222624671399d3c133
2012-05-14 23:02:21 +02:00
Thomas Martitz
8689bcc186 Touchscreen: Check if click is outside of list. Fixes FS#12669
Change-Id: Ic036f4c399b89c65bdc43bfdf7111bf4a13be484
2012-05-13 19:15:19 +02:00
Michael Sevakis
80d5267a9b More strictly enforce "no PCM insert" rules for codecs.
Takes care of when codecs try to sneak-in another PCM buffer insert
at the wrong time. Codecs are wiley and just can't always be trusted
to cooperate.

Change-Id: Idc2f51238a5fd69a9d9c0741fbc29addc6615bdf
2012-05-13 03:25:55 -04:00
Nils Wallménius
d29a11b7a8 Rename HAVE_PITCHSCREEN to HAVE_PITCHCONTROL
Also move the definition to config.h

Change-Id: I36bb5020c5e06b2344292bc05e8c13ccc7a6a1ff
Reviewed-on: http://gerrit.rockbox.org/234
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2012-05-09 14:32:38 +02:00
Marcin Bukat
b371b705c7 fix yellow introduced in 10829b2
Change-Id: Ice66e976f90ad5d37c116b27f94c96e17e97e70f
2012-05-08 21:59:01 +02:00
Nils Wallménius
158aeb5087 Add more #ifdefs
Change-Id: I46a1eb7e012363cc7337282497c62f86fd16c8dc
2012-05-08 15:39:24 +02:00
Marcin Bukat
10829b2f78 Fix fat test program not compiling (FS#12646).
This changes the way creat() is wrapped around in native builds
so more experienced devs should look at it.

This patch forces to compile fat test in 32bit mode. Building
natively on x86-64 works just fine but our fat code apparently
can't deal with 64bit pointers/ints correctly.

Change-Id: I000015094f7db957ce826c22672608cd419908b0
Reviewed-on: http://gerrit.rockbox.org/228
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
2012-05-08 13:00:14 +02:00
Nils Wallménius
7803f31c53 Don't reinvent ctype.h functions
Remove ctype.h functions in text_editor and rockboy,
fix #define name clash in mpegplayer.

Change-Id: Icb40cf45e27b793c62cb095197757a27f508f344
2012-05-07 18:43:12 +02:00
Nils Wallménius
3f61caa0cd rbcodec: abstract tdspeed buffer allocation
Move code dealing with rockbox specific buflib allocations into a
rockbox specific file and implement buffer allocation with
malloc/free for warble/stand alone lib.
Based on patch by Sean Bartell.

Change-Id: I8cb85dad5890fbd34c1bb26abbb89c0b0f6b55cf
Reviewed-on: http://gerrit.rockbox.org/144
Tested-by: Nils Wallménius <nils@rockbox.org>
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2012-05-07 10:29:07 +02:00
Michael Sevakis
51a73d81cd Stop clickiness on manual track changes as best as possible.
Get the DSP_FLUSH sprinkled in the right spot so that history-
keeping prcessing stages are cleared on a forced stop. They already
were on a seek.

Change-Id: I560f1bc5fd813a4142fa099bf53ee1658e49cd8c
2012-05-07 04:13:50 -04:00
Rafaël Carré
7ca2081036 remove debug-target.h 2012-05-07 00:55:59 -04:00
Rafaël Carré
65bb8e4452 Remove extraneous parens 2012-05-06 23:13:34 -04:00
Rafaël Carré
aaf9a1be49 get_image_filename() return value is never used 2012-05-06 23:00:52 -04:00
Rafaël Carré
675f171cf1 skin_parser: simplify skin_buffer_alloc
- no need to cast void * return value (it is not C++)
- use sizeof(*var) instead of sizeof(struct foobar), it is shorter and will
  stay correct if the type is changed but forgotten in the sizeof()
2012-05-06 22:43:21 -04:00
Michael Sevakis
dbe5e5f2df rbcodec: Hooks for target specific functions in dsp_process loop
Use them to move tick counting, yielding and coldfire macsr handling
code to a rockbox specific file.

Change-Id: Id7417dc98c08a342eba45ba56b044a276e50564b
Reviewed-on: http://gerrit.rockbox.org/229
Tested-by: Nils Wallménius <nils@rockbox.org>
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2012-05-03 23:47:46 +02:00
Sean Bartell
cadb3627fc Add rbcodecplatform.h and rbcodecconfig.h.
librbcodec users must provide these two files when the library is built.
rbcodecconfig.h provides configuration #defines and basic types, and
will be included by public librbcodec headers, so it must not conflict
with the user's code. rbcodecplatform.h provides various OS functions,
and will only be included by source files and private headers. This
system is intended to provide maximum flexibility for use on embedded
systems, where no operating system headers are included. Unix systems
can just copy rbcodecconfig-example.h and rbcodecplatform-unix.h with
minimal changes.

Change-Id: I350a2274d173da391fd1ca00c4202e9760d91def
Reviewed-on: http://gerrit.rockbox.org/143
Reviewed-by: Nils Wallménius <nils@rockbox.org>
Tested-by: Nils Wallménius <nils@rockbox.org>
2012-05-03 14:49:35 +02:00
Michael Sevakis
e189b33ff4 Clean up peak calculating code.
Mixer needn't keep peak data around that will never be used. Just
pass pcm_peaks structure to it instead of allocating for every
channel. Plugin API becomes incompatible.

vu_meter digital mode was still using global peak calculation;
switch it to playback channel like the rest.

Remove some accumulated soil peaks inside pcm.c and make it more
generic.

Change-Id: Ib4d268d80b6a9d09915eea1c91eab483c1a2c009
2012-05-02 20:53:07 -04:00
Michael Sevakis
c0208f0f64 Oops, need to init the voice_buf indexes too. :-)
Change-Id: I12e48e9e7d70e779511aac05be6e6145d30f456a
2012-05-02 18:25:34 -04:00
Michael Sevakis
da6cebb6b0 Use buflib for the allocation of voice PCM resources.
Buffers are not allocated and thread is not created until the first
call where voice is required.

Adds a different callback (sync_callback) to buflib so that other
sorts of synchonization are possible, such as briefly locking-out the
PCM callback for a buffer move. It's sort of a messy addition but it
is needed so voice decoding won't have to be stopped when its buffer
is moved.

Change-Id: I4d4d8c35eed5dd15fb7ee7df9323af3d036e92b3
2012-05-02 17:22:28 -04:00
Andrew Ryabinin
3d3a144cf6 hm801: Tweak keymap.
Change-Id: I5e4f8eeae0f6d6eb836dc75570589e4d5c961a3d
2012-05-02 23:20:31 +04:00
Sean Bartell
4bef502d4d rbcodec refactoring: autoresumable
Moved to playback.c, since it doesn't use metadata from the music file.

Change-Id: I5c3ad7750d94b36754f64eb302f96ec163785cb9
Reviewed-on: http://gerrit.rockbox.org/142
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2012-05-01 11:28:38 +02:00
Michael Sevakis
57a20d2d63 Make DSP's replaygain independent of global_settings.
Moves replaygain definitions to lib/rbcodec/dsp/dsp_misc.h.
Intermediate functions in misc.c handle any adjustment and calling
the rbcodec APIs.

Change-Id: I9f03561bca9aedd13760cf19c4e19aa3c68e7024
Reviewed-on: http://gerrit.rockbox.org/140
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
2012-04-30 22:47:37 +02:00
Wieland Hoffmann
84355f3493 brickmania: Disable resuming after game over 2012-04-30 12:06:05 +02:00
Michael Sevakis
56f17c4164 Make rbcodec/dsp includes more specific.
Change-Id: Idb6af40df26f5b8499a40e8b98602261ef227044
2012-04-29 17:31:30 -04:00
Michael Sevakis
4928810354 M5/X5 (MCF5250): Scoot the core/plugin IRAM boundary forward by 0x800.
Change-Id: I482fe3f4f2f59a3f17026e796c245c4efa8279f3
2012-04-29 14:35:53 -04:00
Michael Sevakis
737e92f4f5 Oops forgot to remove test_codec from plugin SOURCES.
Change-Id: I2730db9430ff688f74a86e6ea8818d0c306aa511
2012-04-29 04:13:10 -04:00
Michael Sevakis
c9bcbe202d Fundamentally rewrite much of the audio DSP.
Creates a standard buffer passing, local data passing and messaging
system for processing stages. Stages can be moved to their own source
files to reduce clutter and ease assimilation of new ones. dsp.c
becomes dsp_core.c which supports an engine and framework for effects.

Formats and change notifications are passed along with the buffer so
that they arrive at the correct time at each stage in the chain
regardless of the internal delays of a particular one.

Removes restrictions on the number of samples that can be processed at
a time and it pays attention to destination buffer size restrictions
without having to limit input count, which also allows pcmbuf to
remain fuller and safely set its own buffer limits as it sees fit.
There is no longer a need to query input/output counts given a certain
number of input samples; just give it the sizes of the source and
destination buffers.

Works in harmony with stages that are not deterministic in terms of
sample input/output ratio (like both resamplers but most notably
the timestretch). As a result it fixes quirks with timestretch hanging
up with certain settings and it now operates properly throughout its
full settings range.
Change-Id: Ib206ec78f6f6c79259c5af9009fe021d68be9734
Reviewed-on: http://gerrit.rockbox.org/200
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested-by: Michael Sevakis <jethead71@rockbox.org>
2012-04-29 10:00:56 +02:00
Sean Bartell
fe3d58004c rbcodec refactoring: get_audio_base_data_type
This function has been changed to rbcodec_format_is_atomic, which
doesn't require an enum from the kernel.

Change-Id: I1d537605087fe130a9b545509d7b8a340806dbf2
Reviewed-on: http://gerrit.rockbox.org/141
Reviewed-by: Nils Wallménius <nils@rockbox.org>
Tested-by: Nils Wallménius <nils@rockbox.org>
2012-04-28 09:07:40 +02:00
Michael Sevakis
fdd363481f Fix up some more type stuff in pcmbuf.c.
(Never seem to find it all at once :-)

Change-Id: I4b3d145c6d90be13f9afc8a72d8d87a92de88d88
2012-04-27 16:51:54 -04:00
Sean Bartell
a6dea9e13d rbcodec refactoring: dsp_set_eq_coefs
dsp_set_eq_coefs now has parameters for the band settings, so it doesn't
need to access global_settings.

Change-Id: I29ac19fc353b15a79cb25f0e45132aef0881e4c9
Reviewed-on: http://gerrit.rockbox.org/138
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2012-04-27 16:33:27 +02:00
Michael Sevakis
0842d7f7e1 Consolidate compressor settings into a struct.
Doing that makes things cleaner for later on.

Change-Id: I4e279aa57ace16a348acc0fc09059592325ec95f
2012-04-26 17:19:16 -04:00
Michael Sevakis
97a535d83c Oops, Shoulda been "int16_t" not "uint16_t".
Change-Id: Ic2a54e9f283acb1c362857a3f1422ed3c532249f
2012-04-26 16:24:12 -04:00
Michael Sevakis
cfc32fe75f Adjust some typing in voice_thread.c. Constants are also counts, not sizes.
Change-Id: I05700f6c87c775e98f05323d2ab0550fad8befd7
2012-04-26 16:04:44 -04:00