summaryrefslogtreecommitdiff
path: root/apps/plugins/lib (follow)
Commit message (Collapse)AuthorAge
* Quake: attempt 2duke3dFranklin Wei2018-02-11
| | | | Change-Id: I4285036e967d7f0722802d43cf2096c808ca5799
* fix red once moreFranklin Wei2017-12-24
| | | | Change-Id: I6290cc6cca468c197656236d3dd31c3f72c53842
* Undef potentially conflicting macros in stdio_compat.hFranklin Wei2017-12-24
| | | | Change-Id: If4af3e3cc16a947127e6253d0b81b684b5abb0c9
* fix redFranklin Wei2017-12-24
| | | | Change-Id: Ib28cfd9037901c7b8bc9b2960ad2c1c9a1e25a69
* Port of Duke Nukem 3DFranklin Wei2017-12-23
| | | | | | | This ports Fabien Sanglard's Chocolate Duke to run on a version of SDL for Rockbox. Change-Id: I8f2c4c78af19de10c1633ed7bb7a997b43256dd9
* stdio compat layer for pluginsMarcin Bukat2017-12-23
| | | | | | | | | | | | | This is attempt to simplify porting programs to rockbox (as plugins). Currently this compat layer implements: fopen(), fclose(), fflush(), fread(), fwrite(), fseek(), fseeko(), ftell(), ftello(), fgetc(), ungetc(), fputc(), fgets(), clearerr(), ferror(), feof(), fprintf() In order to use it you need to include in ported sources "lib/stdio_compat.h" Change-Id: I5add615dd19c5af9c767ccbfb1bd5a4e466741cb
* Fix last commitFranklin Wei2017-12-16
| | | | Change-Id: Ie3b3fad702e8c03d33b4a264139b6de74736e058
* Change button mappings in plugins/lib/keymaps.hFranklin Wei2017-12-16
| | | | | | Some of the previous mappings didn't make much sense. Change-Id: If373e7d5f28b572523856763c999eb7c5180aced
* xworld: support diagonal buttons on Zen X-FiFranklin Wei2017-09-30
| | | | Change-Id: Ia738ecd2a39c0c0772d6f939d549dd5d0eda055e
* Harmonize plugin keymapsFranklin Wei2017-09-30
| | | | | | | | Aims to provide a lib/keymaps.h for plugins needing simple button functionality beyond that provided by PLA. Currently used by puzzles and xworld. Change-Id: Icb3493aaf176d401762de834dd48fc76a3824c5a
* Fix dangerous castsAmaury Pouly2017-02-04
| | | | | | | | | On Windows 64-bit, the size of long is 32-bit, thus any pointer to long cast is not valid. In any case, one should use intptr_t and ptrdiff_t when casting to integers. This commit attempts to fix all instances reported by GCC. When relevant, I replaced code by the macros PTR_ADD, ALIGN_UP from system.h Change-Id: I2273b0e8465d3c4689824717ed5afa5ed238a2dc
* Renamed defines UNALIGNED to ROCKBOX_UNALIGNED - UNALIGNED is alreadyMatthias Mohr2017-01-15
| | | | | | | | | | defined in mingw environments. Renamed defines of UNALIGNED to ROCKBOX_UNALIGNED so that they don't conflict with definitions in mingw32 cross-compiling environments (defined in _mingw.h). Change-Id: I369848c0f507e6bf5ff9ab4a60663bbbda6edc52
* Add circle drawing/filling to xlcdFranklin Wei2016-12-18
| | | | Change-Id: I5d28ade42145d9d82babcf62c0db7948927cafec
* Fix endianness handling for sha1 (used by the otp plugin)Frank Gevaerts2016-06-28
| | | | Change-Id: I408d88d984f9026539c2d1bc2a9608243802c152
* One-Time Password client (HOTP and TOTP)Franklin Wei2016-06-05
| | | | | | | | | | * Implements RFC 4226 (HOTP) and RFC 6238 (TOTP) * Adds sha1.c to apps/plugins/lib (orignally tools/hmac-sha1.c) * See manual entry for more information Change-Id: Ia4a4031b29f97361b541e71438aa7f3ea82212f2
* Replace SAMSUNG_YH920_PAD with YH92XSebastian Leonhardt2016-01-25
| | | | | | | seems more logical to me, and is more consistent, since "SAMSUNG_YH92X_PAD" is already used in the tex files. Change-Id: Ie9a9d850ea86155a7dcf86c88a22a420a10a3837
* YH8xx,YH9xx: Keymap improvementSebastian Leonhardt2015-11-15
| | | | | | | | | | | | | | | The main "innovation" in this patch are two "virtual buttons" for the record switch on YH92x targets. When the switch state changes, a single BUTTON_REC_SW_ON or .._OFF button event will be generated. Thus keymap code can react on switching, but not on the actual state of the switch. Wherever sensible, the following user scheme is applied: - use PLAY as confirm button - use REW button or Long REW to exit - use REC (YH820) or FFWD (YH92X) as modifier key for button combos Change-Id: Ic8d1db9cc6869daed8dda98990dfdf7f6fd5d5a1
* Lamp plugin: Allow toggling the button light using "select".Frank Gevaerts2015-02-22
| | | | Change-Id: I0f276a74010ef463ebdb0eb0cc00fc50123966f0
* Fix red/yellowMarcin Bukat2015-01-12
| | | | Change-Id: Ie01251af2cd843979b5fdefcfa541ba377d13bd7
* Get rid of stupid _backlight_* function namesMarcin Bukat2015-01-12
| | | | | | _remote_backlight_* and _buttonlight_* are cleaned as well Change-Id: I73653752831bbe170c26ba95d3bc04c2e3a5cf30
* Introducing Targets iBasso DX50 & iBasso DX90Simon Rothen2014-09-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The port to for this two targets has been entirely developped by Ilia Sergachev (alias Il or xzcc). His source can be found at https://bitbucket.org/isergachev/rockbox . The few necesary modifications for the DX90 port was done by headwhacker form head-fi.org. Unfortunately i could not try out the final state of the DX90 port. The port is hosted on android (without java) as standalone app. The official Firmware is required to run this port. Ilia did modify the source files for the "android" target in the rockbox source to make the DX port work. The work I did was to separate the code for DX50 (&DX90) from the android target. On this Target Ilia used source from tinyalsa from AOSP. I did not touch that part of the code because I do not understand it. What else I changed from Ilias sources besides the separation from the target "android": * removed a dirty hack to keep backlight off * changed value battery meter to voltage battery meter * made all plugins compile (named target as "standalone") and added keymaps * i added the graphics for the manual but did not do anything else for the manual yet * minor optimizations known bugs: * timers are slowed donw when playback is active (tinyalsa related?) * some minor bugs Things to do: * The main prolem will be how to install the app correctly. A guy called DOC2008 added a CWM (by androtab.info) to the official firmware and Ilia made a CWM installation script and a dualboot selector (rbutils/ibassoboot, build with ndk-build). We will have to find a way to install rockbox in a proper way without breaking any copyrights. Maybe ADB is an option but it is not enable with OF by default. Patching the OF is probably the way to go. * All the wiki and manual to build: needed: android ndk installed, android sdk installed with additional build-tools 19.1.0 installed ./tools/configure select iBasso DX50 or iBasso DX90 make -j apk the content of rockbox.zip/.rockbox needs to be copied to /system/rockbox/app_rockbox/rockbox/ (rockbox app not needed) the content of libs/armeabi to /system/rockbox/lib/ (rockbox app needed) The boot selector is needed as /system/bin/MangoPlayer and the iBasso app as /system/bin/MangoPlayer_original. There is also the "vold" file. The one from OF does not work with DX50 rockbox (DX90 works!?), the one from Ilia is necessary. Until we have found a proper way to install it, it can only be installed following the instructions of Ilia on his bitbucket page, using the CWM-OF and his installation script package. Change-Id: Ic4faaf84824c162aabcc08e492cee6e0068719d0 Reviewed-on: http://gerrit.rockbox.org/941 Tested: Chiwen Chang <rock1104.tw@yahoo.com.tw> Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
* zen/zenxfi/zenxfistyle/zenmozaic: implement plugin keymaps and enable pluginsAmaury Pouly2014-07-17
| | | | | | Plugins on the ZEN/ZEN X-Fi require to increase the plugin buffer size. Change-Id: If4651c87b402060faa24530985c6e871379c8ea1
* lcd-24bit: Introduce a 24-bit mid-level LCD driverThomas Martitz2014-06-21
| | | | | | | | | | | | | | | | | With LCD driver all calculation will be performed on RGB888 and the hardware/OS can display from our 24bit framebuffer. It is not yet as performance optimized as the existing drivers but should be good enough.The vast number of small changes is due to the fact that fb_data can be a struct type now, while most of the code expected a scalar type. lcd-as-memframe ASM code does not work with 24bit currently so the with 24bit it enforces the generic C code. All plugins are ported over. Except for rockpaint. It uses so much memory that it wouldnt fit into the 512k plugin buffer anymore (patches welcome). Change-Id: Ibb1964545028ce0d8ff9833ccc3ab66be3ee0754
* Separate keymaps for YH-820 and YH-920/925Sebastian Leonhardt2014-05-24
| | | | | | | | | | | | | | | Although both players basically have the same keys, the differences in the layout is rather big, so I think both deserve their own keymaps. (On the yh820 the FFWD/PLAY/REW buttons are located above the direction keys, on the yh920 at the side of the player. Furthermore the yh920/925 has a REC switch, whereas yh820 has a push button.) Change-Id: I0e62a1b101c387646c0bdb07ea142d9d2430ca15 Reviewed-on: http://gerrit.rockbox.org/814 Reviewed-by: Szymon Dziok <b0hoon@o2.pl>
* Complete Plugin Keymaps for Creative Zen X-Fi3David Jilke2014-04-06
| | | | | | | | | | This patch completes the plugin keymaps for the Zen X-Fi3 and enables those plugins for compilation. One key was changed in "button-target.h" for compatibility with Rockboy. This also caused the changes to "keymap-zenxfi3.c", to keep the stock functionality (no further changes in here). Change-Id: Ic222faf89e9a9a2332a49d6e532cedb6eb16d3d7 Reviewed-on: http://gerrit.rockbox.org/762 Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* 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>
* 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-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
* 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
* 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>
* 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
* Use crc32 of filename to resume tracksRichard Quirk2013-01-02
| | | | | | | | | | | | | | | | | As well as using an index, which breaks when a file is added or removed, use the crc32 of the filename. When the crc32 check passes the index is used directly. When it fails, the slow path is taken checking each file name in the playlist until the right crc is found. If that fails the playlist is started from the beginning. See http://www.rockbox.org/tracker/6411 Bump plugin API and nvram version numbers Change-Id: I156f61a9f1ac428b4a682bc680379cb6b60b1b10 Reviewed-on: http://gerrit.rockbox.org/372 Tested-by: Jonathan Gordon <rockbox@jdgordon.info> Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
* Adapt OSD in plugin lib to be greylib compatible.Michael Sevakis2012-12-18
| | | | | | | | | | | | | | | Requires addition of viewports and alternate framebuffers to greylib which are essentially similar to the core implementation except that the framebuffer can be any size and relationship to a viewport. Drawing is always fully clipped to the intersecting area. Adapt oscilloscope.c to the API change. FFT will use the new features (later update). Get rid of silly and wrong lcd_bmp_part use in OSD. Remove it from plugin API (must be made incompatible now). Change-Id: Iafa5e2174148fb8ad11db6b9d4add0dcabc5c563
* Add a true waveform display to the oscilloscope plugin.Michael Sevakis2012-12-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Adds some additional niftyness like a floating popup display that is implemented in an OSD library for use by other plugins. * Speed changes are now gradual for both views and follow a curve derived from some fiddling around to get a nice feel. * Refined a few behavioral things overall. It needs a bit of help from a direct PCM channel callback so it may capture PCM for waveform display. Also need a few other core routines to help out for the OSD. Messes with some keymaps. Some targets need keymaps to access the different views. Some devices can't support the additional view because it requires a large buffer ( > 1 s) for samples. If the plugin buffer is small, they can still use the popup display since the plugin is also much smaller in that case. Slow speed waveform needs some refining so it draws gradually like a real oscilloscope but I'll stick with what it is, for the moment. Change-Id: Ieb5b7922a2238264e9b19a58cb437739194eb036 Reviewed-on: http://gerrit.rockbox.org/245 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* Revert "SH gcc 4.6.3 with link-time optimization, for Archos targets"Marcin Bukat2012-10-24
| | | | This was commited by accident, sorry.
* SH gcc 4.6.3 with link-time optimization, for Archos targetsBoris Gjenero2012-10-24
| | | | | | | This is work from FS#12431 synced to current HEAD and slightly tweaked (gcc 4.6.2 -> 4.6.3, binutils 2.21.1 -> 2.22) Change-Id: I76af91e80ac2a9c16a776c7f0a33cc51603bbf9b
* load_code/overlay: Don't close plugin handle before calling the plugin.Thomas Martitz2012-05-26
| | | | | | | 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
* Fix typo in error messageFrank Gevaerts2012-05-19
| | | | Change-Id: I69c87fac21b034b639fbce4324397b273d66d41b
* Initial commit for the Creative ZEN X-Fi2 and X-Fi3 portsAmaury Pouly2012-05-19
| | | | | | These are really similar devices so one commit for both is ok. Change-Id: I8bd1d3fef1eb6d00aaadfb7af56c771f62d0c9c3
* hm801: Add support for plugins.Andrew Ryabinin2012-04-19
| | | | Change-Id: I81654db87d38324d8680a56bcdb7e9922ee5b619
* hm60x: Add support for plugins.Andrew Ryabinin2012-04-19
| | | | Change-Id: I4cad0881c8249f163680a280f70d1a0b36248da8
* Fuze+ PLA_EXIT slight mapping cleanupJean-Louis Biasini2012-02-09
| | | | | | | | | | | 1) On all non PLA plugin, power button is used for exit. For consistency, we set PLA_EXIT to power button. 2) Manual updated accordingly Change-Id: Ia4b8fce13bad2f8dc0710cdb29ccf6c74b3fd9c4 Reviewed-on: http://gerrit.rockbox.org/91 Reviewed-by: Thomas Martitz <kugel@rockbox.org> Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
* MPIOs: keymap tweaksMarcin Bukat2012-02-02
| | | | Change-Id: Ic96900c83ffb90df4f6c68a26238f0543cba61cd
* pluginlib_touchscreen: Rework API to offer wait-for-button APIs.Thomas Martitz2012-01-27
| | | | | | | | | The old touchscreen_get() needed an external button_get() call. Now two APIs are added that do this call internally. This way they behave similar to get_action. The old API is preserved (but renamed) since it's used in reversi. Change-Id: I24902c64a357f2fdd7d0c2f5371cbfd20f34f1c8
* PLA: Add map for android. Directional keys not available in point mode due toThomas Martitz2012-01-27
| | | | | | | | touchscreen. Fix cowond2 select repeat at the same time. Change-Id: I3ee0c2a3fdc74978c159335949c183d36d5d29af
* Fix flag for the viewport. Text is supposed to be centered.Thomas Martitz2012-01-23
| | | | Change-Id: I8b29787fb99e0469c9e4a0b0ea08e61d3ff92589
* Move supprt-arm.S to separate library.Thomas Martitz2012-01-21
| | | | | | | Core, codecs and plugins link it separately so this gets rid of SOURCES trickery. Don't build it for hosted targets. Change-Id: If15ef90e93cd218a4352ae8e89eea95d3122452f