Commit graph

68 commits

Author SHA1 Message Date
Thomas Martitz
cae4ae2c71 Second try: Introduce plugin_crt0.c that every plugin links.
It handles exit() properly, calling the handler also when the plugin returns
normally (also make exit() more standard compliant while at it).
It also holds PLUGIN_HEADER, so that it doesn't need to be in each plugin anymore.

To work better together with callbacks passed to rb->default_event_handler_ex() introduce exit_on_usb() which will call the exit handler before showing the usb screen and exit() after it.
In most cases rb->default_event_handler_ex() was passed a callback which was manually called at all other return points. This can now be done via atexit().

In future plugin_crt0.c could also handle clearing bss, initializing iram and more.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27873 a1c6a512-1295-4272-9138-f99709370657
2010-08-24 14:30:46 +00:00
Thomas Martitz
93cb949372 Revert "Introduce plugin_crt0.c that every plugin links."
Too much errors and no time to fix them now.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27863 a1c6a512-1295-4272-9138-f99709370657
2010-08-23 17:12:26 +00:00
Thomas Martitz
abdc5935be Introduce plugin_crt0.c that every plugin links.
It handles exit() properly, calling the handler also when the plugin returns
normally (also it makes exit() more standard compliant while at it).
It also holds PLUGIN_HEADER, so that it doesn't need to be in each plugin anymore.

To work better together with callbacks passed to rb->default_event_handler_ex introduce exit_on_usb() which will call the exit handler before showing the usb screen and exit() after it.
In most cases it was passed a callback which was manually called at all other return points. This can now be done via atexit().

In future plugin_crt0.c could also handle clearing bss, initializing iram and more.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27862 a1c6a512-1295-4272-9138-f99709370657
2010-08-23 16:56:49 +00:00
Nils Wallménius
d15a4f617f Define CONFIG_REMOTE_KEYPAD for iaudio x5/m5 and add a keymap for that remote to the logo plugin. Fixes a warning when building with gcc 4.4.4.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27533 a1c6a512-1295-4272-9138-f99709370657
2010-07-23 20:20:40 +00:00
Marcin Bukat
b09d3aec39 Add MPIO HD200 port - changed files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25724 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 21:40:00 +00:00
Szymon Dziok
05577e48a8 Packard Bell Vibe 500: Start committing plugin keymaps.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24610 a1c6a512-1295-4272-9138-f99709370657
2010-02-11 22:40:17 +00:00
Tomer Shalev
47ddbaa47b Cowon D2: Rename COWOND2_PAD -> COWON_D2_PAD to match macro used in manual, and
to target naming conventions in general


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24010 a1c6a512-1295-4272-9138-f99709370657
2009-12-15 20:51:41 +00:00
Robert Menes
b4a40eb6f3 These are the last plugin keymaps needed for the GoGear SA9200.
Left to add in: a 128x160 backdrop for rockblox to stop errors
when compiling and then to finally enable plugins.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23915 a1c6a512-1295-4272-9138-f99709370657
2009-12-10 01:23:51 +00:00
Maurus Cuelenaere
9680244f4a * Fix plugin keymaps for VX777
* Enable plugins for VX777
 * Fix VX777 simulator

All done by Aaron DeMille.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22576 a1c6a512-1295-4272-9138-f99709370657
2009-08-31 21:11:32 +00:00
Michael Giacomelli
594b6e2b49 Commit FS#10251. Plugins for the YH-820, YH-920, and YH-925 by Jens Erdmann with improvements and bitmap graphics by me.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22149 a1c6a512-1295-4272-9138-f99709370657
2009-08-04 03:08:32 +00:00
Rafaël Carré
5f20e5aefc FS#10256 by Frank Oosterhuis : use HOME button to quit plugins
Also remove a duplicated SANSA_CLIP_PAD in pictureflow

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21115 a1c6a512-1295-4272-9138-f99709370657
2009-05-28 15:57:29 +00:00
Karl Kurbjun
5449b1ed1d M:Robe 500: Start of proper remote support, touchscreen works without remote now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20684 a1c6a512-1295-4272-9138-f99709370657
2009-04-11 07:23:56 +00:00
Thomas Martitz
e6cbad6974 FS#10075 - FUZE: QUIT Plugin by selecting BUTTON_HOME by Johannes Schwarz. Updates the plugin keymap to use Long Home to exit plugins to be more inline with the core keymap.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20680 a1c6a512-1295-4272-9138-f99709370657
2009-04-10 17:28:26 +00:00
Maurus Cuelenaere
fef405c328 Enable plugins on the Onda VX747
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20647 a1c6a512-1295-4272-9138-f99709370657
2009-04-07 23:41:44 +00:00
Mark Arigo
2490262eee Plugins for the Philips HDD1630. The keymaps are largely untested on the device (patches welcome).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19846 a1c6a512-1295-4272-9138-f99709370657
2009-01-24 22:41:55 +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
Michael Giacomelli
6d5823f964 Commit FS#9617 - Keymaps for Plugins fuze by Thomas Martitz.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19673 a1c6a512-1295-4272-9138-f99709370657
2009-01-04 23:33:15 +00:00
Dominik Wenger
90bcf9be5e m200v4: rename Keys, so they match better other targets with similar key-layout. Enable plugins, add keymaps for plugins. More keymap improvements needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19405 a1c6a512-1295-4272-9138-f99709370657
2008-12-12 19:50:49 +00:00
Björn Stenberg
cea285d64e Added keymaps for ZVM to plugins. Enabled zvm plugin building in tools/configure. FS#9605 by Adam Hogan and Robert Menes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19335 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 21:28:56 +00:00
Rafaël Carré
5656f8245f Sansa Clip: build plugins (FS#9578)
Use unmodified C200 keymap when possible, variation of it when not
Use Archos bitmaps when possible

Current problems:
- Pegbox plugin shows display corruption (corruption is different in the simulator)
- Bubbles plugin misses 1 or 2 bottom lines, but if we gain back these lines it occupies a too small area of the screen
- Splitted screen (yellow/blue) is a bit weird in most plugins

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19252 a1c6a512-1295-4272-9138-f99709370657
2008-11-28 00:37:28 +00:00
Björn Stenberg
c6b3d38a15 New makefile solution: A single invocation of 'make' to build the entire tree. Fully controlled dependencies give faster and more correct recompiles.
Many #include lines adjusted to conform to the new standards.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19146 a1c6a512-1295-4272-9138-f99709370657
2008-11-20 11:27:31 +00:00
Björn Stenberg
ac488f8cb7 Makefile overhaul. All generated bitmaps are now explicitly in OBJDIR/bitmaps and OBJDIR/pluginbitmaps, and plugins properly depend on their respective bitmap files. Fixes #6847.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18987 a1c6a512-1295-4272-9138-f99709370657
2008-11-03 14:37:50 +00:00
Vitja Makarov
2f84f699c0 IAUDIO67_PAD: Add keymaps for most of the plugins, they are not all tested yet.
IAUDIO7: Define MODEL_NAME in config


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18730 a1c6a512-1295-4272-9138-f99709370657
2008-10-07 16:38:28 +00:00
Maurus Cuelenaere
1392dc2144 Commit FS#9308: differentiate between TOUCHPAD & TOUCHSCREEN
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18338 a1c6a512-1295-4272-9138-f99709370657
2008-08-23 09:46:38 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Steve Bavin
6526577818 Plugin parameters should be const.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17492 a1c6a512-1295-4272-9138-f99709370657
2008-05-13 09:57:56 +00:00
Rob Purchase
297e0504da FS#8708: D2/m:robe500 touchscreen keymaps by Andreas Mueller.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17261 a1c6a512-1295-4272-9138-f99709370657
2008-04-27 15:30:19 +00:00
Rob Purchase
554d7ed902 D2: Enable plugin building (using initial keymaps from FS#8708 by Andreas Mueller, with some tweaks).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16751 a1c6a512-1295-4272-9138-f99709370657
2008-03-22 22:03:34 +00:00
Jens Arnold
29361abf74 Adapt most single-file plugins to the M3 keypad and screen. It's still preliminary, as many plugins now can't be left without the remote. The plugins need to be converted to use the action API (but not pluginlib actions). Plugins are not enabled yet. * Simplify the bitmap handling in the source of some plugins.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16737 a1c6a512-1295-4272-9138-f99709370657
2008-03-22 10:24:28 +00:00
Robert Kukla
d6c8b57b50 M:Robe 100: add button definition/bitmaps to plugins and enable compilation
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16469 a1c6a512-1295-4272-9138-f99709370657
2008-03-01 22:55:09 +00:00
Will Robertson
8215b34fdb Plugins now enabled and working for the Gigabeat S.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16323 a1c6a512-1295-4272-9138-f99709370657
2008-02-17 12:23:02 +00:00
Jonas Häggqvist
d5f372aa5c Use the .h bitmap headers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16192 a1c6a512-1295-4272-9138-f99709370657
2008-01-31 21:05:32 +00:00
Jonas Häggqvist
2dd3ea0b5d Use the right type for the remote logo. Thanks to amiconn for spotting and explaining on IRC.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16191 a1c6a512-1295-4272-9138-f99709370657
2008-01-31 20:42:28 +00:00
Jonas Häggqvist
4cd37d5ba4 Use nicer logos in the logo plugin, plus use the bitmap build system magic.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16189 a1c6a512-1295-4272-9138-f99709370657
2008-01-31 19:28:51 +00:00
Jonathan Gordon
56ddddc274 make the first bunch of plugins compile for the mrobe. an earlier commit broke the loading though, need to sort that out
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15282 a1c6a512-1295-4272-9138-f99709370657
2007-10-23 15:40:51 +00:00
Marianne Arnold
12ddb8ea0d Enable plugins on the Sansa C200. Large parts taken from patch FS#7749 by Max Kelley with tweaks, bit of cleanup and additional bitmaps by me. Some of the now enabled plugins could still be improved in regard to screen size adaptation or keymaps but this way it can easily be done later and one by one. The rather ugly 'ifndef's I added temporaryly in plugins/SOURCES will also go one by one. Plugin button actions cause some quirks in a few plugins (e.g. 'clock') but since it's not critical , the bitmaps were already done and it makes a good example for discussing plugin button actions, I thought it could go in.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14771 a1c6a512-1295-4272-9138-f99709370657
2007-09-20 10:49:48 +00:00
Jens Arnold
b701322fea Rockbox compiles and boots now on the 2nd gen, but doesn't work properly yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14021 a1c6a512-1295-4272-9138-f99709370657
2007-07-27 09:57:27 +00:00
Marcoen Hirschberg
a7168feeac attempt to make the Gigabeat button mappings in the plugins more logical and in line with the mapping in rockbox itself
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13436 a1c6a512-1295-4272-9138-f99709370657
2007-05-19 23:38:09 +00:00
Jens Arnold
f9b90e9103 Now charcell displays require lcd_update() for updating the main lcd content like bitmap displays.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13050 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 22:55:00 +00:00
Jens Arnold
85a226d4e7 Rename some macros to account for the recently added M5 port. No code changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12809 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 23:02:39 +00:00
Jens Arnold
4d6374c923 Get rid of the 'center' parameter for splashes. There were only 2 of almost 500 splashes which were not centered.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12807 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 21:56:08 +00:00
Barry Wardell
24f4a2a8cf Allow the Sansa e200 UI simulator to be built. Thanks to Andre Smith for the nice image of the Sansa. Lots more to be done including testing and tweaking the keymaps and modifying the plugins for the Sansa's 176x220 LCD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11351 a1c6a512-1295-4272-9138-f99709370657
2006-10-26 13:38:09 +00:00
Daniel Stenberg
1e88be518a Barry Wardell's keymappings for H10
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10446 a1c6a512-1295-4272-9138-f99709370657
2006-08-03 20:17:25 +00:00
Christian Gmeiner
7f9e1eb801 x5: use as default BUTTON_POWER to close a plugin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9294 a1c6a512-1295-4272-9138-f99709370657
2006-03-27 17:34:23 +00:00
Dave Chapman
fb4e384367 More iPod 3G work from Seven Le Mesle
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8835 a1c6a512-1295-4272-9138-f99709370657
2006-02-24 20:54:09 +00:00
Marcoen Hirschberg
338e2bbb0c first gigabeat commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8831 a1c6a512-1295-4272-9138-f99709370657
2006-02-24 15:42:52 +00:00
Linus Nielsen Feltzing
568ac3eb21 Button driver for iAudio X5
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8828 a1c6a512-1295-4272-9138-f99709370657
2006-02-24 15:06:25 +00:00
Daniel Stenberg
acf7d5e89e more iAudio x5 adjustments by Matt v.d. Westhuizen (#1408980)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8386 a1c6a512-1295-4272-9138-f99709370657
2006-01-19 12:44:46 +00:00
Daniel Stenberg
cedba8830f Matt v.d. Westhuizen's iAudio X5 keypad adjustments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8366 a1c6a512-1295-4272-9138-f99709370657
2006-01-18 11:09:06 +00:00
Jens Arnold
a36b1d4083 New plugin loader. Solves the crashes introduced with the .bss changes while keeping the small binary size. The model & api version check is now part of the plugin loader. Codecs are not yet adapted, but the old method still works for them. Simulator plugins are not (yet) version-checked. API version numbering restarted, as this is an all-new system. Uses the target ID from configure, so don't change that too often.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8349 a1c6a512-1295-4272-9138-f99709370657
2006-01-15 18:20:18 +00:00