summaryrefslogtreecommitdiff
path: root/apps (follow)
Commit message (Collapse)AuthorAge
...
* Cleanup MV/MD macros a little.Michael Sevakis2013-08-17
| | | | | | | | | | When using variadic macros there's no need for IF_MD2/IF_MV2 to deal with function parameters. IF_MD/IF_MV are enough. Throw in IF_MD_DRV/ID_MV_VOL that return the parameter if MD/MV, or 0 if not. Change-Id: I7605e6039f3be19cb47110c84dcb3c5516f2c3eb
* Fix logdiskAmaury Pouly2013-08-16
| | | | | | | | | | | | The code was broken in a subtle but crucial way: storage idle callbacks are oneshot so after the first flush everything would stay in the buffer forever and would never be written to the disk thus resulting into many events being lost. This changed correctly registers the idle callback each time the buffer is not empty. Note that the idle storage code checks if a callback has is in the queue already so we don't register twice. Change-Id: Ifdf331d4b757e05b8a6902bf5926cbc7689f5109
* Cube plugin fixLorenzo Miori2013-08-12
| | | | | | | | | | | | | | This small patch aims to fix a trivial problem: when exiting the "cube" plugin in a hosted environment (at least on YP-R0) this caused the whole program, and consequently also the player, to be turned off. I don't know why the exit() function was used here... Change-Id: I7b58d4ca5c01c230f2c53204b51ec553c5fe1287 Reviewed-on: http://gerrit.rockbox.org/321 Reviewed-by: Bertrik Sikken <bertrik@sikken.nl>
* [ONDAV VX777][simulator] fix missing keymaps in test_touchscreenJean-Louis Biasini2013-07-29
| | | | | | | | Missing TOUCHSCREEN_QUIT and TOUCHSCREEN_TOGGLE define Change-Id: I3b9b3a1afc8e95ae95ca73ee9c31057d6e72098d Reviewed-on: http://gerrit.rockbox.org/531 Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
* FS#12882 - Updated translation for PT-PTTiago Medeiros2013-07-18
| | | | | | Signed-off-by: Bertrik Sikken <bertrik@sikken.nl> Change-Id: I473e2c53f7333b94fbda7786cbb506732466eb1c
* [Fuze+][Keymaps] Application and viewer keymaps updateJean-Louis Biasini2013-07-18
| | | | | | | | Last core update for keymaps and manual. Manual is now 100% complete Change-Id: I9ad33206ecea41a88cba7a355da911fa7ab0455d Reviewed-on: http://gerrit.rockbox.org/521 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* [Fuze+][Keymaps] keymaps for radio and recorder updateJean-Louis Biasini2013-07-16
| | | | | | | | | | | | 1) Now that recording is working a few keymaps update are required. 2) also implement the radio.c file so that fm dedicated keymaps works. 3) implement some missing fm keymaps 4) manual updated accordingly Change-Id: I40be3e245853ccb9ed7a5bc5a76fe4ed90772272 Reviewed-on: http://gerrit.rockbox.org/513 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* [Fuze+][lang] keymaps hint updateJean-Louis Biasini2013-07-16
| | | | | | | | | | | A few keymaps hint were wrong, this correct them: - database/filemanager on cancelling songs insertion - alarm clock - set alarm Change-Id: Ifb50a9452c208a7d5c28bdac96c825030b943c25 Reviewed-on: http://gerrit.rockbox.org/508 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Add an alternative analogic touchpad sensitivity settingJean-Louis Biasini2013-07-15
| | | | | | | | | | | | | | | | | | | Set an alternative touchpad sensitivity setting if the 3 following variables are defined: DEFAULT_TOUCHPAD_SENSITIVITY_SETTING MIN_TOUCHPAD_SENSITIVITY_SETTING MAX_TOUCHPAD_SENSITIVITY_SETTING aside from the usual: HAVE_TOUCHPAD HAVE_TOUCHPAD_SENSITIVITY_SETTING In such a case the setting will allow the user to set a precise value within the defined range unstead of the boolean choice HIGH/NORMAL Change-Id: Iba8140285317077381191e494df0d3f6ab556872 Reviewed-on: http://gerrit.rockbox.org/123 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Add FM softlock to the FM Ondio.Jean-Louis Biasini2013-07-13
| | | | | | | | | This change activate the newly implemented fm softlock (thanks to Pamaury) on the FM Ondio target. Thanks to Lebellium for testing. Change-Id: I903f05be892e7537a34ba40bc0f3c65541a497a4 Reviewed-on: http://gerrit.rockbox.org/498 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Get rid of some superfluous single-purpose functions in playback.Michael Sevakis2013-07-13
| | | | | | | | | | | * Remove explicit tracking of elapsed time of previous track. * Remove function to obtain auto skip flag. * Most playback events now carry the extra information instead and pass 'struct track_event *' for data. * Tweak scrobbler to use PLAYBACK_EVENT_TRACK_FINISH, which makes it cleaner and removes the struct mp3entry. Change-Id: I500d2abb4056a32646496efc3617406e36811ec5
* Fix whitespace in files for following commit.Michael Sevakis2013-07-12
| | | | Change-Id: I4adb8a152e9b99fcd26d95da7334d7d0cbe2a036
* Fix .ncbss from possibly overlapping .ncdata in plugins/codecs.Michael Sevakis2013-07-11
| | | | | | | | | | | | | | | | | (Take #2) If .bss wasn't large enough, and .ncdata was empty, .ncbss would be at an address overlapping the alignment-padded end of .ncdata and and linking would fail with an overlap error. Adds plugin load end address that accounts for IRAM going past the final .bss sections, making IRAM overlay compatible. load_code could also use this instead of the file size. The .lds becomes a bit more straightforward and explicit when assigning addresses. Change-Id: Id0c33f257710e97ece2c831e0feaaa32c1a14e05
* Revert "Fix .ncbss from possibly overlapping .ncdata in plugins/codecs."Michael Sevakis2013-07-11
| | | | | | This reverts commit 5c2ad2fd36be7a0d1ec2468e6b270047c36d8a6f. The .ncbss bug is still showing up. Will try again shortly.
* Fix .ncbss from possibly overlapping .ncdata in plugins/codecs.Michael Sevakis2013-07-10
| | | | | | | | | | | If .bss wasn't large enough, and .ncdata was empty, .ncbss would be at an address overlapping the alignment-padded end of .ncdata and and linking would fail with an overlap error. There also should no longer be an issue that needs special correction with iramcopy and empty .bss. The .maps look good in that case. Change-Id: I02bf73a0acef2c0c04b5d135ecf4e18fb97ee339
* Swap over a position of cursor while reaching the end of filename in keyboardRoman2013-07-09
| | | | | | | | | | | | In sansa clip + with virtual keyboard you can write/rename a stuff and move your cursor in the filename field. But while your cursor reaches the end/start of filename it just blocks the movement of cursor and beeps if you enabled the "Voice Menu" feature. This patch swaps over cursor to the start/end of filename instead of just blocking movement. Change-Id: I37450df062df60ef4c0d747c13e448d0adbde05b Reviewed-on: http://gerrit.rockbox.org/503 Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
* SWCODEC recording: Boost CPU frequency before doing flush on stopMichael Sevakis2013-07-09
| | | | | | | If CPU is not boosted for some reason already, then the stop flush can take longer than it really ought to. Change-Id: I0572cc83067749e9945b3eb825f976db21d914f9
* 19b289a somehow missed one last LANG_RECORDING_FREQUENCY.Michael Sevakis2013-07-06
| | | | | | Did grep fail me? Change-Id: Id8254aa542d57204e265ef06829b4e034f032137
* Reuse frequency string from recording for playback frequency.Michael Sevakis2013-07-06
| | | | | | | | | | | Update all .lang files and change the id from LANG_RECORDING_FREQUENCY to LANG_FREQUENCY. Also update description and target. It will throw things off for targets without recording but that do have 48KHz, possibly older iPods. I'm not sure what else it might be off hand. Regenerate voice files and replace .lang files in that case. Change-Id: I9ab396ecfcca9206054bde34aa2cc23b505dabff
* Bugfix: (un)locking state message(s) did not disappearLorenzo Miori2013-07-06
| | | | | | | | | | | | after unlocking the device while being into FM radio screen. This patch restores expected behaviour by forcing screen refresh when receiving the proper event. Change-Id: Ibe0864ab78619ddf235912d06a2efe3203b5042a Reviewed-on: http://gerrit.rockbox.org/505 Reviewed-by: Lorenzo Miori <memorys60@gmail.com> Tested-by: Lorenzo Miori <memorys60@gmail.com> Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* Samsung YP-R0: small patch to enable support to new keylock-in-FM feature.Lorenzo Miori2013-07-06
| | | | | | | Change-Id: I965550753bdd65ef4b02ef24e44e0faad2c74289 Reviewed-on: http://gerrit.rockbox.org/504 Reviewed-by: Lorenzo Miori <memorys60@gmail.com> Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* ...and mixer_set/get_frequency is SWCODEC only! :-)Michael Sevakis2013-07-05
| | | | Change-Id: I6badf687ef330abf79f2e1a809d8b2f93ba4e911
* Oops, two test plugins were left in apps/plugins/SOURCES.Michael Sevakis2013-07-05
| | | | Change-Id: I1df74c535a8c054223e8687e7c28bc6a130070d0
* Enable setting of global output samplerate on certain targets.Michael Sevakis2013-07-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replaces the NATIVE_FREQUENCY constant with a configurable frequency. The user may select 48000Hz if the hardware supports it. The default is still 44100Hz and the minimum is 44100Hz. The setting is located in the playback settings, under "Frequency". "Frequency" was duplicated in english.lang for now to avoid having to fix every .lang file for the moment and throwing everything out of sync because of the new play_frequency feature in features.txt. The next cleanup should combine it with the one included for recording and generalize the ID label. If the hardware doesn't support 48000Hz, no setting will be available. On particular hardware where very high rates are practical and desireable, the upper bound can be extended by patching. The PCM mixer can be configured to play at the full hardware frequency range. The DSP core can configure to the hardware minimum up to the maximum playback setting (some buffers must be reserved according to the maximum rate). If only 44100Hz is supported or possible on a given target for playback, using the DSP and mixer at other samperates is possible if the hardware offers them. Change-Id: I6023cf0c0baa8bc6292b6919b4dd3618a6a25622 Reviewed-on: http://gerrit.rockbox.org/479 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* Temporarily disable keyclick in recording screen.Michael Sevakis2013-06-30
| | | | | | | | Those who have keyclick enabled and are really eagar to record upon boot can get the samplerate messed up because who gets to set the sample rate last (recording or mixer) is not currently deterministic. Change-Id: Icc43ed789cf23f928ca49657cb146445b0c558cb
* SWCODEC Audio: Add some INIT_ATTR's to get a few bytes back.Michael Sevakis2013-06-29
| | | | Change-Id: Ie7b04ecf3b3535e0ed45a6e0e8d81af89e38378e
* Fix whitespaceMichael Sevakis2013-06-29
| | | | Change-Id: I2072c355f05b6e709a5c179512bc2b71756163a5
* Fix strlcpy warnings in 4888131.Michael Sevakis2013-06-29
| | | | Change-Id: Ibd355ee1cf39d1a4b07def94634f0316468bf727
* Update software recording engine to latest codec interface.Michael Sevakis2013-06-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Basically, just give it a good rewrite. Software codec recording can be implemented in a more straightforward and simple manner and made more robust through the better codec control now available. Encoded audio buffer uses a packed format instead of fixed-size chunks and uses smaller data headers leading to more efficient usage. The greatest benefit is with a VBR format like wavpack which needs to request a maximum size but only actually ends up committing part of that request. No guard buffers are used for either PCM or encoded audio. PCM is read into the codec's provided buffer and mono conversion done at that time in the core if required. Any highly-specialized sample conversion is still done within the codec itself, such as 32-bit (wavpack) or interleaved mono (mp3). There is no longer a separate filename array. All metadata goes onto the main encoded audio buffer, eliminating any predermined file limit on the buffer as well as not wasting the space for unused path queue slots. The core and codec interface is less awkward and a bit more sensible. Some less useful interface features were removed. Threads are kept on narrow code paths ie. the audio thread never calls encoding functions and the codec thread never calls file functions as before. Codecs no longer call file functions directly. Writes are buffered in the core and data written to storage in larger chunks to speed up flushing of data. In fact, codecs are no longer aware of the stream being a file at all and have no access to the fd. SPDIF frequency detection no longer requires a restart of recording or plugging the source before entering the screen. It will poll for changes and update when stopped or prerecording (which does discard now-invalid prerecorded data). I've seen to it that writing a proper header on full disk works when the format makes it reasonably practical to do so. Other cases may have incorrect data sizes but sample info will be in tact. File left that way may play anyway. mp3_enc.codec acquires the ability to write 'Info' headers with LAME tags to make it gapless (bonus). Change-Id: I670685166d5eb32ef58ef317f50b8af766ceb653 Reviewed-on: http://gerrit.rockbox.org/493 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* Fix some whitespace in files changed in following commit.Michael Sevakis2013-06-30
| | | | | | | Change-Id: Ie3f43e43076e0dcae9a10f1b0b9e4698b398acee Reviewed-on: http://gerrit.rockbox.org/492 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* clip+/zip: add FMS soft lock actionAmaury Pouly2013-06-29
| | | | | | Change-Id: Iba5cb8b29ad06080d04105d6f9ef2c62e81d4f36 Reviewed-on: http://gerrit.rockbox.org/491 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* Fix a bug in pcmbuf.c when doing offset with modulus.Michael Sevakis2013-06-28
| | | | | | | | | | Causes the track change to go in the wrong buffer (and even be missed by playback) if the current descriptor for the write index is descriptor 0 because the offset used is "-1" upon track change. Got nailed by implicit conversion of the % operator dividend to unsigned. Change-Id: I32538db801ac9d790c8b1b5bd041b09ad4b64d2e
* Fix whitespace for next commitMichael Sevakis2013-06-28
| | | | Change-Id: I8773ff7275372882321ebf2e66462781735cddc6
* skin_engine: Fix crash on skin_reset (e.g. on language change).Thomas Martitz2013-06-23
| | | | Change-Id: Ie2da1a1ba9d2dad76e2f1c45abd907c3ede4f56c
* plugin_midi: expand gustable[] to 128 entriesFrank Gevaerts2013-06-16
| | | | | | | | | | The code assumes that gustable[] has 128 entries, while it only had 120. Since the entries follow a simple pattern (they seem to be note frequencies, so each entry is the previous one multiplied by the 2^(1/12)), expanding the table is the simple fix. Change-Id: If5b5a50378afd3206c9d550227dd9aac8e355c96
* Silence some (harmless) warnings.Frank Gevaerts2013-06-16
| | | | Change-Id: I8d1278b8cfaa376d2ad5a99dd552dc980c66e1da
* test_mem: silence -Wunused-but-set-variable warningRafaël Carré2013-06-13
| | | | Change-Id: I4a14c8b0cf1a8c822166ce01087b31c06722d8ae
* Enable key lock in radio screenAmaury Pouly2013-06-10
| | | | | | | Change-Id: I75efbf1077359e4218ad33f4c1d885b24c0b7b01 Reviewed-on: http://gerrit.rockbox.org/421 Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info> Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* Fix rockblox instadrop behaviourMax Zerzouri2013-06-09
| | | | | | | | | Prevents the player from moving an instadropped block (could happen before the next game tick when using left/right buttons anticipatorily). Change-Id: Id62168842d8458f864a2e05c5d236f054bf54f65 Reviewed-on: http://gerrit.rockbox.org/473 Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* Fix warning (move variable into #ifdef section).Thomas Martitz2013-06-09
| | | | Change-Id: Ic6ba4b786eef00eab7f20abd5fbf2bcb8977993a
* Fix reds (this code needs #ifdef HAVE_ALBUMART)Thomas Martitz2013-06-09
| | | | Change-Id: Ia50cd846d5451b0cb5cf3a6f8097ea9fe3b3c60a
* Fix multiple problems in radioart.cThomas Martitz2013-06-09
| | | | | | | The code was pretty broken with regard to the handle management of radio art images, e.g. passing the wrong data to bufopen(). Change-Id: I3480f40bce81af05d14dbf045a78485c857fb261
* skin_engine: Fix albumart logic on skin reloading.Thomas Martitz2013-06-09
| | | | | | | | | | | This logic checks whether the skin's albumart dimensions differ from the previous skin to force rebuffering if necessary. This was broken since a while as the necessary information was reset. Change-Id: I3b9f3a819c6af202af8ad66c13742f704ce45ab1 Reviewed-on: http://gerrit.rockbox.org/476 Tested-by: Thomas Martitz <kugel@rockbox.org> Reviewed-by: Thomas Martitz <kugel@rockbox.org>
* Fix color of files with no extension.Boris Gjenero2013-06-05
| | | | | | | | | Based on all other references, unknown_file.color is a color, not an index into custom_colors[]. Previously, custom_colors[-1] was returned for files without an extension, accessing outside array boundaries and making files without an extension black, which is hard to see. Change-Id: Ia0883aba929582324b767df7828a36a84c0b36b9
* Argh, move a comment to the (now) proper location. :)Michael Sevakis2013-05-31
| | | | Change-Id: I13847b99d9aeaa05efa5b22a8e4842f193f01a3c
* Have voice fire an event when it starts and stops playing.Michael Sevakis2013-05-31
| | | | | | | | | | | Further decouples voice_thread.c from other playback areas. Also allows other audio sources, such as FM radio, to be attenuated when voice is playing by implementing a callback. Defined as another playback event rather than a new event class: PLAYBACK_EVENT_VOICE_PLAYING Change-Id: I2e3e218be6cd6bebbf39e7883a8c0e4ed42b62bb
* Should use HAVE_RECORDING, not AUDIO_HAVE_RECORDING in playback.cMichael Sevakis2013-05-31
| | | | | | SIM should work like target, sort of, when recording is initialized. Change-Id: I12314bb98cec53d574f4b25984ef803b2c038a96
* Just init audio thread event with Q_NULL instead of SYS_TIMEOUT.Michael Sevakis2013-05-31
| | | | | | | What was I thinking? Anyway, it's a little nicer and it's reserved so shouldn't end up as a case value anywhere. Change-Id: If745c24951518608e3f4fc51f7419ef07d7cf2ac
* Some corrections after 5857c44.Michael Sevakis2013-05-31
| | | | | | | | | | Playback needs to receive a couple of settings-related messages even when not playing. Put the message reply back where it was when loading an encoder for recording. Change-Id: I8cc80f46e42a0afd119991d698510e1ebef38ead
* Refactor audio thread to run both recording and playback.Michael Sevakis2013-05-31
| | | | | | | | | | | | | | | | Eliminates the pcmrec thread and keeps playback and recording engine operation mutually-exclusive. audio_thread.c contains the audio thread which branches to the correct engine depending upon the request. It also handles the main audio initialization. Moves pcm_init into main.c just before dsp_init because I don't want that one in audio_init in the new file. (Also makes revision df6e1bc pointless ;) Change-Id: Ifc1db24404e6d8dd9ac42d9f4dfbc207aa9a26e1