Commit graph

416 commits

Author SHA1 Message Date
Karl Kurbjun
0131a3873e Pluginlib: Add support for general buttons. Add menu and quit buttons to Reversi. MRobe 500: Modify touch handler to return the previous data always rather than 0 when there is no touch.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22110 a1c6a512-1295-4272-9138-f99709370657
2009-08-02 07:05:30 +00:00
Frank Gevaerts
e409fba7f8 Flyspray: FS#10326
Author: Tomer Shalev

Adds a USB HID sample application, a plugin tha allows to send HID commands while connected in non-storage mode.
This also removes the HID stuff in the debug menu. Testing is now easily doable from the plugin
Also general HID updates


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21953 a1c6a512-1295-4272-9138-f99709370657
2009-07-18 12:58:29 +00:00
Rafaël Carré
bdb5974c0e Revert r21912 : "Storage API : remove undeeded target-specific functions"
After a discussion mixed on mailing list and irc, it was agreed that
more abstraction for plugins is better (so developers don't have to add
a check to HAVE_DISK_STORAGE when writing disk-specific code)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21923 a1c6a512-1295-4272-9138-f99709370657
2009-07-17 16:34:34 +00:00
Rafaël Carré
8eba69f91b Storage API : remove undeeded target-specific functions
storage_sleep, storage_spin, storage_spindown are only defined if #defiend (HAVE_DISK_STORAGE), not for MMC/ATA/SD
remove already unneeded nand_disk_is_active, nand_soft_reset

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21912 a1c6a512-1295-4272-9138-f99709370657
2009-07-17 00:09:14 +00:00
Jens Arnold
27f5cdaad8 Gigabeat S can do dithered YUV blitting too, so put it into the plugin API and enable it in mpegplayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21888 a1c6a512-1295-4272-9138-f99709370657
2009-07-15 22:02:42 +00:00
Nils Wallménius
3d4701a6e4 FS#10080
* Move strncpy() from core to the pluginlib
* Introduce strlcpy() and use that instead in most places (use memcpy in a few) in core and some plugins
* Drop strncpy() from the codec api as no codec used it
* Bump codec and plugin api versions


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21863 a1c6a512-1295-4272-9138-f99709370657
2009-07-14 13:57:45 +00:00
Alexander Levin
cc7c665d9b Improvements to the pitch screen UI (FS#10359 by David Johnston)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21781 a1c6a512-1295-4272-9138-f99709370657
2009-07-11 16:46:19 +00:00
Andrew Mahone
1bc67c81b6 Fix type mismatch warnings and errors exposed when building with EABI toolchain.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21769 a1c6a512-1295-4272-9138-f99709370657
2009-07-11 00:22:26 +00:00
Thomas Martitz
df6f955a82 Add a possibility for plugins to go directly to the WPS after exiting.
It only works for plugins executed via the filebrowser for now. Those
executed from the context menu or a simplelist (such as "Open With...") need additional hacking.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21680 a1c6a512-1295-4272-9138-f99709370657
2009-07-05 22:12:42 +00:00
Jonathan Gordon
f1034e00f6 FS#10406 - split the statusbar setting into one for each display, and allow the bar to be at the top or bottom of the display
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21665 a1c6a512-1295-4272-9138-f99709370657
2009-07-05 18:07:58 +00:00
Frank Gevaerts
d5180f7870 Add "Play Shuffled" menu item to random_folder_advance_config, which adds all configured configured directories to the current playlist in random order.
(FS#10403)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21594 a1c6a512-1295-4272-9138-f99709370657
2009-07-01 16:59:43 +00:00
Rafaël Carré
89ccd5c145 Remove int_prio argument from timer_register, and move the only use for it into alpine_cdc plugin, since this plugin is only built on SH7034
Also remove it from TIMER_START()

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21558 a1c6a512-1295-4272-9138-f99709370657
2009-06-29 14:29:46 +00:00
Rafaël Carré
a98c54f5f1 Do not use lcd_blit_yuv() if MEMORYSIZE <= 2, since mpegplayer won't run anyway (and won't build)
Only affected target: Sansa c200v2

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21453 a1c6a512-1295-4272-9138-f99709370657
2009-06-21 14:09:48 +00:00
Andrew Mahone
c1c3d05961 Fix PF keymap issue caused by conflict between new CONTEXT_PLUGIN and ALLOW_SOFTLOCK, by changing value of ALLOW_SOFTLOCK. Bump min plugin version as value passed to a core function changed, and sort plugin API.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21161 a1c6a512-1295-4272-9138-f99709370657
2009-06-01 21:08:49 +00:00
Thomas Martitz
de2d99a177 A bit more work on playback controlling pictureflow:
*) Fix that the generated playlist can't be resumed after reboot
*) make it work with shuffle

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21151 a1c6a512-1295-4272-9138-f99709370657
2009-05-31 19:19:34 +00:00
Thomas Martitz
46881eef20 Bump plugin api version.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21144 a1c6a512-1295-4272-9138-f99709370657
2009-05-31 14:43:01 +00:00
Thomas Martitz
8b8768bfff Commit the first part of FS#10263: Starting playback from within pictureflow, by creating a playlist from the tracklist and playing it. The database integration part is postponed until it's more featured.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21143 a1c6a512-1295-4272-9138-f99709370657
2009-05-31 14:40:25 +00:00
Thomas Martitz
f0aa8ba95d playlist start can only have 1 return value (0), so make it return nothing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21142 a1c6a512-1295-4272-9138-f99709370657
2009-05-31 14:33:33 +00:00
Andrew Mahone
34589f6ccb Suggested by Thomas Martitz, use tagcache_fill_tags to speed up PictureFlow album art search a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21110 a1c6a512-1295-4272-9138-f99709370657
2009-05-28 04:14:56 +00:00
Maurus Cuelenaere
0f7e4e36ae Lua:
* add action_get_touchscreen_press wrapper
 * fix kbd_input wrapper
 * rework luaL_loadfile
 * add rb.contexts


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21046 a1c6a512-1295-4272-9138-f99709370657
2009-05-22 22:44:34 +00:00
Maurus Cuelenaere
cf87597226 Commit FS#9174: Lua scripting language by Dan Everton
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21020 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 19:01:41 +00:00
Bertrik Sikken
0023943439 Fix duplicate #includes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20977 a1c6a512-1295-4272-9138-f99709370657
2009-05-17 14:50:19 +00:00
Rafaël Carré
b1d03ccee7 FS#10118 & FS#10165 : lcd_blit_yuv() for Sansa Fuze & Sansa e200v2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20919 a1c6a512-1295-4272-9138-f99709370657
2009-05-12 13:22:39 +00:00
Andrew Mahone
e3b1d78dfc Fix test for direct JPEG output, bump plugin API as r20884 changed struct custom_format.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20885 a1c6a512-1295-4272-9138-f99709370657
2009-05-09 10:10:26 +00:00
Andrew Mahone
eef7945a97 Move YUV->RGB in JPEG load from before scaler to after scaler. Required change to struct custom_format, so sorted the plugin API as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20856 a1c6a512-1295-4272-9138-f99709370657
2009-05-06 04:53:56 +00:00
Andrew Mahone
20f76d61ae Make JPEG and BMP scaler optional with HAVE_JPEG and HAVE_BMP_SCALING, both defined for all targets that have HAVE_ALBUMART. Disable JPEG in PictureFlow and pluginlib album art search with 32KiB plugin buffer until PictureFlow
gets overlay support.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20851 a1c6a512-1295-4272-9138-f99709370657
2009-05-04 15:46:41 +00:00
Andrew Mahone
3d4c68bb06 Add read_<image>_fd functions to plugin API, add feature_wrappers.h handling for them, and add read_image.[ch] wrapper for reading image files with automatic type detection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20840 a1c6a512-1295-4272-9138-f99709370657
2009-05-02 03:47:46 +00:00
Andrew Mahone
60d4209383 Add core JPEG reader, adapted from the JPEG plugin's decoder, with some changes to prevent include conflicts between the two decoders.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20836 a1c6a512-1295-4272-9138-f99709370657
2009-05-01 23:24:23 +00:00
Karl Kurbjun
93fccc763b M:Robe 500: More LCD initialization, QVGA (vs. VGA) is now enabled by default for performance, 256 color palette mode added, include some linker cleanups and reorganization. Doom and MPEGPlayer now run reaonably well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20664 a1c6a512-1295-4272-9138-f99709370657
2009-04-09 04:22:14 +00:00
Jonathan Gordon
843c7efaf8 FS9795 - some playback cleanup.
* Use events to notify things when the track has changed instead of the nasty has_track_changed()
* Event for when the mp3entry for the next track is avilable (which allows alot more tags to be static which means less redrawing in the WPS)
* virtually guarentee that the mp3entry sturct returned by audio_current/next_track() is going to be valid for the duration of the current track. The only time it wont be now is during the time between the codec finishing the previous track and the next track actually starting (~2s), but this is not an issue as long as it is called again when the TRACK_CHANGED event happens (or just use the pointer that gives)
It is still possible to confuse the WPS with the next tracks id3 info being displayed but this should fix itself up faster than it used to (and be harder to do)



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20633 a1c6a512-1295-4272-9138-f99709370657
2009-04-06 00:39:43 +00:00
Karl Kurbjun
8580674b10 Add initial support for changing the LCD mode in MPEG player for hardware YUV conversion (256 color palette mode will also be added for doom and rockboy). This fixes the LCD mode/colors when MPEGPlayer exits.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20600 a1c6a512-1295-4272-9138-f99709370657
2009-04-01 05:17:20 +00:00
Thomas Martitz
a56cba52bd Bump plugin api.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20580 a1c6a512-1295-4272-9138-f99709370657
2009-03-30 17:09:06 +00:00
Thomas Martitz
1034dea00e Only export contrast if a target actually features contrast.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20579 a1c6a512-1295-4272-9138-f99709370657
2009-03-30 16:06:02 +00:00
Bertrik Sikken
52d298044f Enable the charging_status function also for targets with target-specific battery charging.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20521 a1c6a512-1295-4272-9138-f99709370657
2009-03-24 21:59:44 +00:00
Nicolas Pennequin
396aeafa6c Correct Björn's name in various file headers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20491 a1c6a512-1295-4272-9138-f99709370657
2009-03-23 17:08:46 +00:00
Thomas Martitz
b7739fbf1c Rework lcd_enabled and lcd_set/call_enable hook
a) lcd_enabled() is now lcd_active(), and is available for HAVE_LCD_SLEEP only targets (e.g. ipod video) too. It was depandent on HAVE_LCD_ENALE only before
b) rename the hook accordingly, and implement the hook for other other targets too (e.g. the clip [the only mono target with lcd_enable/lcd_sleep yet, so the code is still in the lcd driver], ipod, fuze, c200)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20331 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 02:43:47 +00:00
Bertrik Sikken
b24fafbf14 Yet more #include cleanups
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20249 a1c6a512-1295-4272-9138-f99709370657
2009-03-08 20:28:15 +00:00
Andrew Mahone
6f030a01c9 add the needed plugin API exports for pictureflow to hwcodec, use the audio buffer if plugin buffer is too small, build on any target with bitmap + tagcache
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20213 a1c6a512-1295-4272-9138-f99709370657
2009-03-06 01:08:02 +00:00
Tom Ross
5d190bc13c Mac doesn't handle placing variables in specific sections very well. Building the sim on OS X is now possible once again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20124 a1c6a512-1295-4272-9138-f99709370657
2009-02-27 07:30:41 +00:00
Mark Arigo
8e5c4ce097 Philips HDD1630 - add LCD YUV functions so mpegplayer works.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19997 a1c6a512-1295-4272-9138-f99709370657
2009-02-13 04:10:57 +00:00
Thomas Martitz
548109084f Increase codec and plugin API version (due to changes it r19971), and sort the recently added things
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19973 a1c6a512-1295-4272-9138-f99709370657
2009-02-11 16:37:12 +00:00
Michael Sevakis
21f0c9a282 Make basic cache functions into calls, and get rid of CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19971 a1c6a512-1295-4272-9138-f99709370657
2009-02-11 12:55:51 +00:00
Jens Arnold
11ad7b4bc8 Move screendump from apps to firmware, solving two nasty firmware-to-apps calls. This required to move the filename creation functions as well. * Fix bug in the BMP header of Clip screendumps. * Add remote screendump for targets with an LCD remote. * Simplify some ifdefs and rename a macro in the sim.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19967 a1c6a512-1295-4272-9138-f99709370657
2009-02-10 23:43:37 +00:00
Jens Arnold
0d935ce75e Put the display colours for monochrome and greyscale targets into the target config files, and use them both for the simulator UI and screendumps. The Clip now shows the split display properly in screendumps and simulator. A side effect is that screendumps of ordinary monochrome targets are now 4-bit BMP files (saves an alternate code path, and might be more compatible with some gfx programs). * Simplify the simulation of split display, and also simplify greylib simulation. The simulator now always calculates 129 shades (2*128 for a Clip sim), and just uses 2 (or 4) of those for native display simulation. * Centralised the simulator LCD dimension definition.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19950 a1c6a512-1295-4272-9138-f99709370657
2009-02-09 00:32:59 +00:00
Jonathan Gordon
036fb05dfd Accept a quick patch from Alexander Levin to neaten up the #defines and comments from my earlier commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19897 a1c6a512-1295-4272-9138-f99709370657
2009-02-01 13:43:08 +00:00
Jonathan Gordon
80cb3551eb Statusbar handling fixes.
Fixes FS#9845 - %we/%wd wasnt working
WPS no longer resets the viewportmanger more than needed (was doing it twice/draw before)
screens can now enable/disable the statusbar easily ignoring the setting instead of needing special handling (fix for the radio screen coming soon)

minor glitch introduced in this commit... the statusbar in the WPS might disappear for a fraction of a second when it is entered, I need to track this down...


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19894 a1c6a512-1295-4272-9138-f99709370657
2009-02-01 11:34:16 +00:00
Andrew Mahone
499426caf9 remove MEM_FUNCTION_WRAPPERS, and private mem* implementations from plugins, and replace with pluginlib implementations in plugins/lib/gcc-support.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19847 a1c6a512-1295-4272-9138-f99709370657
2009-01-24 22:57:57 +00:00
Andrew Mahone
7215a67e64 albumart search in pluginlib when building without HAVE_ALBUMART (for later use by pictureflow)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19835 a1c6a512-1295-4272-9138-f99709370657
2009-01-24 04:09:29 +00:00
Michael Sevakis
b0befadad1 Include divide-by-zero handling within plugins and codecs for ARM processors.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19834 a1c6a512-1295-4272-9138-f99709370657
2009-01-24 03:47:09 +00:00
Andrew Mahone
23d9812273 loader-initialized global plugin API:
struct plugin_api *rb is declared in PLUGIN_HEADER, and pointed to by
__header.api

the loader uses this pointer to initialize rb before calling entry_point

entry_point is no longer passed a pointer to the plugin API

all plugins, and pluginlib functions, are modified to refer to the
global rb

pluginlib functions which only served to copy the API pointer are
removed

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19776 a1c6a512-1295-4272-9138-f99709370657
2009-01-16 10:34:40 +00:00