summaryrefslogtreecommitdiff
path: root/apps/plugins (follow)
Commit message (Collapse)AuthorAge
* events: Rework event subsystem (add_event, send_event) to be more versatile.Thomas Martitz2014-03-14
| | | | | | | | | | | | | | | | | | add_event_ex is added that takes an extra user_data pointer. This pointer is passed to the callback (add_event and add_event_ex have slightly different callbacks types). All callbacks also get the event id passed. Events added with add_event_ex must be removed with remove_event_ex because the user_data pointer must match in addition to the callback pointer. On the other add_event is simplified to omit the oneshort parameter which was almost always false (still there with add_event_ex). As a side effect the ata_idle_notify callbacks are changed as well, they do not take a data parameter anymore which was always NULL anyway. This commit also adds some documentation to events.h Change-Id: I13e29a0f88ef908f175b376d83550f9e0231f772
* Implement time-based resume and playback start.Michael Sevakis2014-03-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | This complements offset-based resume and playback start funcionality. The implementation is global on both HWCODEC and SWCODEC. Basically, if either the specified elapsed or offset are non-zero, it indicates a mid-track resume. To resume by time only, set elapsed to nonzero and offset to zero. To resume by offset only, set offset to nonzero and elapsed to zero. Which one the codec uses and which has priority is up to the codec; however, using an elapsed time covers more cases: * Codecs not able to use an offset such as VGM or other atomic formats * Starting playback at a nonzero elapsed time from a source that contains no offset, such as a cuesheet The change re-versions pretty much everything from tagcache to nvram. Change-Id: Ic7aebb24e99a03ae99585c5e236eba960d163f38 Reviewed-on: http://gerrit.rockbox.org/516 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested: Michael Sevakis <jethead71@rockbox.org>
* Oscilloscope: Fix loading of the speed setting for waveform viewMichael Sevakis2014-03-06
| | | | | | | | Somehow, a long long time ago, I put MAX*/MAX* in the config data range fields instead of MIN*/MAX* which forced the settings loader to acknowledge only 100 as a valid setting other than the default. Change-Id: Ifbfcafad27e239942449848d6a09426173bbde54
* test_disk: Add an additional dirscan test that calls dir_get_info() also.Thomas Martitz2014-02-25
| | | | | | | | Especially on hosted dir_get_info() can be relatively. It is commonly called after every readdir() for further information about the dir entry. So it's peformance compared to readdir()-only is interesting. Change-Id: I03ab41fb190acf738e04a5d3b2a4fe29276094f6
* hosted: Rename a bit in functions to avoid name clashes with unix headers.Thomas Martitz2014-02-23
| | | | Change-Id: I2baa5532ddcbca8a839c31434309013f02173ed8
* fix red, strtok_r being annoying on sim buildsJonathan Gordon2014-02-13
| | | | Change-Id: Ifb884a53d801db9534dd0c5ab5921800e971963e
* main_menu_config: New plugin to configur the main menu orderJonathan Gordon2014-02-13
| | | | | | | | | | | | | Plugins/Applications/main_menu_config allows you to edit the main menu order without having to manually edit config.cfg. Press the standard OK button to access the internal menu which allows you to move items up/down in the order and toggle their visibility. Exit via this menu to have the order saved. (Suggestions welcome to improve this UI) Change-Id: I59715ef1ca265aeb6f9666ef27026bc1093f2579
* Fixed bug where exiting textviewer after using up all the bookmarks caused ↵Avi Eisenberg2014-02-07
| | | | | | that file unable to be read the next time. Change-Id: I1924fe68c8528c03c4197f74a4f014edb0ac9f2a
* Samsung YP-R1 target portLorenzo Miori2014-02-05
| | | | | | | | | This is the basic port to the new target Samsung YP-R1, which runs on a similar platform as YP-R0. Port is usable, although there are still some optimizations that have to be done. Change-Id: If83a8e386369e413581753780c159026d9e41f04
* rockbox: Improve button repeat handling.Thomas Martitz2014-01-18
| | | | Change-Id: I1259c43019c51828b2af73f312aee9cf399d57cf
* rockboy: Fix button read method.Thomas Martitz2014-01-18
| | | | | | | | | | The old method simply polled the lastbtn variable in button.c. This approach does not clear the button event queue which overflows as a result (panic in the simulator). Use proper APIs to fix that and adopt the method from the old read_scroll_wheel() function, which reads buttons until the button queue is empty, for all targets. Change-Id: Ibf198f6e597e7f51ab4ebcfcae4ebebbe8d7845c
* rockblox: Fix compilation under recent mingw-w64-gcc.Thomas Martitz2014-01-17
| | | | Change-Id: I703d967e9288e5c74556b54ad4f72ef2f6247083
* reversi: Update viewport initialization to new member fields.Thomas Martitz2014-01-07
| | | | Change-Id: I37f77e4ad5abf04006dd6ee2a82de115ef204e3a
* lcd/grey: Enable viewport fg_pattern and bg_pattern for all bitmap targets.Thomas Martitz2014-01-07
| | | | | | | | | Greylib performed a horrible hack and stored fg and bg patterns in other struct viewport fields. One of them was just removed. So instead of this hack simply enable the *_pattern fields for mono targets as well, so that greylib can use them normally. Change-Id: Ib0842ebcc97f5bf9d9382b4471903afa2f96f39f
* lcd-16bit: Remove {lss,lse,lst}_pattern fields from struct viewport.Thomas Martitz2014-01-07
| | | | | | | These where used for line styling during scrolling, which is now done in apps/, The viewport struct doesn't need to record these anymore. Change-Id: I810d9dcb2644b00a798c6e75acab69c74a78e77f
* lcd-common: Remove support for custom line heights from viewport.Thomas Martitz2014-01-07
| | | | | | | | Since scrolling is now pixel-based this is not necessary anymore. custom line height is handled by put_line() but can also possible to implement with lcd_puts_scroll_func(). Change-Id: Iee9b12bf99afac93d95d2a1a6f5d5b4db237b21c
* test_gfx: Add benchmark for put_line().Thomas Martitz2014-01-07
| | | | Change-Id: I94cd5cec5ce169a4ddb60fcb3c09e2ffb50a3401
* splitedit: Adapt put_line().Thomas Martitz2014-01-07
| | | | | | | This plugin had a (broken) poor-mans list implementation which can be better achieved through put_line(). Change-Id: I4ba92ba3a01b84a273b3f0a5d067b24c622ddc9e
* scroll_engine: Rename scroll_stop* functions to be more consistent with the ↵Thomas Martitz2013-12-14
| | | | | | lcd api. Change-Id: I8ada10b96bfb628cca0331689e8b936ae47c7e1c
* Fix typo in apps/plugins/lib/pluginlib_actions.cBenjamin Brown2013-11-17
| | | | | | | | | BUTOTN_REL should be BUTTON_REL Change-Id: I5b4aaeb87f31c5c0779656651b074512e22bcc4e Reviewed-on: http://gerrit.rockbox.org/663 Reviewed-by: Benjamin Brown <foolshperson@gmail.com> Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
* sonynwz: add pluginlib keymapAmaury Pouly2013-11-14
| | | | Change-Id: I7753fb8d9a5f9e2e95dfaa03ce8d2469ae0bd74a
* sonynwz: add battery_bench keymapAmaury Pouly2013-11-14
| | | | Change-Id: I7be9131356b8655f2dbb90f203b44b2225257450
* lua: Switch memory allocator from dl to tlsfMarcin Bukat2013-08-26
| | | | | | | | | | | | | | | | | | Instead of providing yet another memory allocator implementation use tlsf and simply link tlsf library. Another small improvement is to *grow* memory pool by grabbing audiobuffer instead of just switching to use audiobuf exclusively. Tested with simple lua 'memory eater' script. This patch extends tlsf lib slightly. You can provide void *get_new_area(size_t * size) function which will override weak dummy implementation provided in lib itself. This allows to automaticaly initialize memory pool as well as grow memory pool if needed (for example grab audiobuffer when pluginbuffer is exhaused). Change-Id: I841af6b6b5bbbf546c14cbf139a7723fbb982f1b
* 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>
* [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>
* 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
* 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>
* 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
* 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 CPU boosting in test_codec.Michael Sevakis2013-05-21
| | | | | | | Boost only for tests and unboost immediately afterwards. It was leaving the CPU boosted after exiting. Change-Id: I010c4b975bd27e8990dc057ddd244dab233411ca
* Purge the usage of DSP_SWITCH_FREQUENCY.Michael Sevakis2013-05-05
| | | | | | | | DSP_SWITCH_FREQUENCY has been deprecated and the same enumerated value as DSP_SET_FREQUENCY since major DSP revisions were committed. This task should have been performed much earlier but, oh well, do it now. Change-Id: I3f30d651b894136a07c7e17f78fc16a7d98631ff
* Make fixepoint.c as a shared library (libfixedpoint.a).Michael Sevakis2013-04-26
| | | | | | | Change-Id: Icc10d6e85f890c432f191233a4d64e09f00be43d Reviewed-on: http://gerrit.rockbox.org/456 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* imageviewer: fix animated gifs handlingMarcin Bukat2013-04-18
| | | | | | | | | | | If disposal method is set to BACKGROUND one would expect that canvas should be restored to global background color. That is what gif standard suggests. Most (all?) decoders however treat this as reseting canvas to transparency or fixed, decoder specific background color. Virtually all gifs are prepared with this in mind so to not break them we can't follow standard here. Change-Id: I90ca712bba89d4190771eb5320eabda353d3e2bb
* Use equivalent puts_scroll() call.Thomas Martitz2013-04-14
| | | | Change-Id: I09e5046f153a276fa6eb047e040b8f752e73d03c
* Move fixedpoint.h to be accessible in /firmware.Michael Sevakis2013-04-10
| | | | | | | | | | Will need it soon enough. Combine the contents of all the various fixedpoint.h files. Not moving fixedpoint.c for now since I'm not sure where it should be and it causes some dependency issues. Change-Id: Ideacbca2ca78f9158c2b114b113c274f68e908d5
* Consolidate identical fixedpoint exp and ln functions.Michael Sevakis2013-04-09
| | | | | | | | grey_core.c and fixedpoint.c each had their own copies. grey_core.c can use the ones fixedpoint.c. fixedpoint.c gets the more complete and optimized version of fp_16exp from grey_core.c. Change-Id: I43ee3add60796b06ed12012fbbd91815d64675a6
* Make the git viewer use the global libtlsf.aFrank Gevaerts2013-02-23
| | | | Change-Id: Id529858f902aa7ffd3a63e4e335db2ac3c411430
* Fix FS#12824 : Malfunctioning FFT plugin in Sansa Clip ZipMichael Sevakis2013-02-21
| | | | | | | | | The "plot" variable was left NULL when FFT_FREQ_SCALE key wasn't defined. Please add FFT_FREQ_SCALE keys to targets missing them! I added the key for Clip Zip and reminders for others. Change-Id: I49c0dc2ea2e5bc494db793da7a2f3059b4fb20df
* snake2: clip/m200 use same keypad than e200/c200Rafaël Carré2013-02-18
| | | | Change-Id: Ie9c75e14717c14f7670e093d0d637b8d238f3fd0
* blackjack: c200 keymap is identical to clip keymapRafaël Carré2013-02-18
| | | | Change-Id: I8f9036d541e04c869ca7e981331ffb91a13f5218
* blackjack: adapt to narrow clip zip screenRafaël Carré2013-02-18
| | | | Change-Id: I5d45d202bc63c7cf36cfb97c98579e83a4720fbf
* [Fuze+] redo osciloscope keymaps update that was canceled latelyJean-Louis Biasini2013-02-14
| | | | | | | | thanks to pixelma for pointing this out Change-Id: Ie50fc44acb51d9e0364f960c421996b0b8f297d9 Reviewed-on: http://gerrit.rockbox.org/403 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* EQ settings: Rework the settings to clean up the config file.Jonathan Gordon2013-02-09
| | | | | | | | | | | | | | | | | | | Instead of 3 cfg lines per eq band there is now a single line for each: <config name>: <cutoff/center freq>, <q>, <gain> In addition, the config value names make a bit more sense. The old settings are still readable but config.cfg and any new settings files will be written with the new config values. (The old settings will be removed completly sometime after the next stable release). Also a slight rework of the advanced EQ menu UI Change-Id: I9008658d36ded442a5f2f825916df42a3934cbef Reviewed-on: http://gerrit.rockbox.org/394 Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
* Additional colors for lamp.rockHayden Pearce2013-02-04
| | | | | | | | | | | | | | | | | | | | | | | | | | - Available colors (in order of display): white - default red orange yellow green blue indigo violet black - More colors combined with the existing brightness control (also added by myself) allow for a much wider range of light to suit the user's current mood or environment - ToDo(?): * add a color picker for custom colors * allow custom colors to be saved for later user Change-Id: I0b2f6376a408acaa9b2459b2fa56b43f5427b965 Reviewed-on: http://gerrit.rockbox.org/390 Tested-by: Hayden Pearce <saint.lascivious@gmail.com> Reviewed-by: benjamin brown <foolshperson@gmail.com> Tested-by: benjamin brown <foolshperson@gmail.com> Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>