Commit graph

87 commits

Author SHA1 Message Date
Rafaël Carré
7014faee69 Remove build conditions inside .c plugin files
Rather use the Makefile to specify which files must be built
Fix color builds with test plugins enabled (test_scanrate gave an empty
.o file)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27886 a1c6a512-1295-4272-9138-f99709370657
2010-08-25 19:00:58 +00:00
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
Rafaël Carré
694bc2a093 minesweeper: bugfixes / code improvements
dont make out of array accesses to the minefield
dont flag positions already known
avoid using the same name for local & global variables
don't use modulo but only 1 conditional add/sub

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26956 a1c6a512-1295-4272-9138-f99709370657
2010-06-19 08:06:31 +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
841cffab5b Packard Bell Vibe 500: More plugin keymaps (second portion).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24634 a1c6a512-1295-4272-9138-f99709370657
2010-02-13 15:46:34 +00:00
Antoine Cellerier
d2e9828a28 Add bitmaps for correct and wrong flags when showing the full board. (Feel free to change the graphics)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24127 a1c6a512-1295-4272-9138-f99709370657
2009-12-30 19:00:33 +00:00
Antoine Cellerier
3358f0e925 Clicking on a discovered tile with its number of adjacent mines already flagged now clicks on all adjacent undiscovered and unflagged tiles.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24126 a1c6a512-1295-4272-9138-f99709370657
2009-12-30 16:15:01 +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
9dc1c1a876 More GoGear SA9200 plugin keymaps, plus a fix on mosaique.
Just pluginlib actions and Doom and I'm DONE!! :)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23912 a1c6a512-1295-4272-9138-f99709370657
2009-12-09 18:20:49 +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
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
Dave Hooper
c41f13f7d8 Initialise minesweeper main menu so that first item is selected on plugin start (previously was uninitialised, for me usually started off with second item selected)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21617 a1c6a512-1295-4272-9138-f99709370657
2009-07-02 23:29:59 +00:00
Karl Kurbjun
4855006aab Add initial plugin keymaps for M:robe 500
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20765 a1c6a512-1295-4272-9138-f99709370657
2009-04-21 04:24:16 +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
Thomas Martitz
15dbde1ab7 Accept the first patch at FS#9953 - Add Playback Control to more plugins, by Joshua Simmons
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20111 a1c6a512-1295-4272-9138-f99709370657
2009-02-26 17:10:27 +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
Maurus Cuelenaere
6471b3c81a Commit FS#9607 by Adam Hogan: fix plugin keymaps for Creative Zen Vision:M
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19363 a1c6a512-1295-4272-9138-f99709370657
2008-12-08 09:51:42 +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
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
Nils Wallménius
01729e7a18 FS#9281 Rename of splash functions.
* Remove gui_splash()
* Rename gui_syncsplash() to splashf() and remove its voice 
capabilities.
* Rename the internal splash() to splash_internal() and introduce an 
externally visible splash() that handles simple splashing  without 
printf functionality e.g. splash(HZ, ID2P(LANG_FOO)); or splash(HZ, 
"foo"); if a LANG_* id is passed it will be voiced.
* Adjust all places that called gui_syncsplash() to use the correct 
variant from above.
* Export both new functions to plugins and adjust places calling 
rb->splash() to use the correct variant so that we now have naming 
consistency between the core and plugins.
* Fix one latent bug that would cause my sim to crash with the above 
changes and correct P2STR and P2ID macros, thanks to pondlife.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18282 a1c6a512-1295-4272-9138-f99709370657
2008-08-15 08:27:39 +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
Maurus Cuelenaere
e1753de41a 1) Implement generic touchscreen detection library for the plugins
2) Adapt minesweeper, pegbox & calculator to it
3) Simplify gui/bitmap/list.c


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17695 a1c6a512-1295-4272-9138-f99709370657
2008-06-06 18:29:46 +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
Jonathan Gordon
5ca1539969 the menu and list now accepts a parent viewport to draw in (and the menu can be told to not show status/button bars). This lays the groundwork to fix colour problems with plugin menus (see star.c for an example.) This hopefully fixes some button bar issues as well as theme problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16812 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 03:35:24 +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
Jonathan Gordon
81ba146706 Accept FS#8341 - rename BUTTON_SCROLL_UP/DOWN to FWD/BACK on the e200 to make it consistant with the ipods. apart from removing a bit of confusion, it fixes the wheel in pictureflow and possibly elsewhere.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16045 a1c6a512-1295-4272-9138-f99709370657
2008-01-10 08:08:31 +00:00
Marianne Arnold
38f953320b Minesweeper for the c200. The slightly smaller tiles made for this will also be used by the small H10 now, thought that was fair and it also complies with the comment about the number of tiles above.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14971 a1c6a512-1295-4272-9138-f99709370657
2007-10-03 17:09:06 +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
Jens Arnold
dfa4e6406d Minesweeper enhancements (FS #7327, FS #7335, some further changes by me): * Make info splash display number of flags and number of mines. * Directions on iPod use Left/Right/Menu/Play now, with Select for flagging and long Select for exploring. Additionally, Scroll Left/Right goes left/right with wrapping to the previos/next line at the edges. * Make info splash work on Iaudios. * Swap main explore and flag buttons on recorder (and av300) to make them consistent with the other tragets and the rest of the minesweeper world. * On irivers, Rec can be used as an alternative for flagging, making one-handed playing easier on H1x0. * Removed unused macros.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13712 a1c6a512-1295-4272-9138-f99709370657
2007-06-25 18:18:07 +00:00
Antoine Cellerier
7428b79de3 * minesweeper.c: Cosmetics.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13546 a1c6a512-1295-4272-9138-f99709370657
2007-06-03 22:00:48 +00:00
Jonathan Gordon
b85817a5ba Update some comments in menu.h to be hopefully more helpful.
Fix all the wrong usage of rb->do_menu() (my fault, sorry)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13439 a1c6a512-1295-4272-9138-f99709370657
2007-05-20 08:26: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
Marcoen Hirschberg
0671cee53a remove useless button defines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13434 a1c6a512-1295-4272-9138-f99709370657
2007-05-19 22:00:49 +00:00
Tom Ross
c7f5cccd3e Adjust plugins to use the new menu API. Int settings still use the old API. Remove a nasty global in Star and add some error checking. Add a work-around for the gigabeat so that Star doesn't crash on target. The transition works fine on the sim and I see nothing obviously wrong with the code but it manages to crash on target everytime.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12946 a1c6a512-1295-4272-9138-f99709370657
2007-03-28 07:33:18 +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
Dave Chapman
d64e626387 Start of work on a port to the Archos 'AV300' (AV320/340/380) - a working UI simulator (but with a dummy background image for now) and the beginnings of the target-specific firmare code. Port is temporarily using a 2bpp LCD buffer format - the AV300 has a 320x240 colour (YCbCr-based) LCD which will need a new framebuffer format and drawing routines, but the LCD is also capable of various paletted bitmap modes, one of which has an identical framebuffer format to the greyscale ipods. Buttons (and hence the button mappings) are identical to the Archos Recorder, with the exception that the PLAY button on the Recorder is replaced by pressing the joystick on the AV300 (which I call BUTTON_SELECT). The initial port will begin by being strictly HWCODEC, but will evolve to be a hybrid SWCODEC/HWCODEC platform - it has a MAS3587F but also a main CPU (54MHz arm7tdmi plus DSP) capable of software decoding of at least some formats.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12008 a1c6a512-1295-4272-9138-f99709370657
2007-01-14 13:48:09 +00:00
Karl Kurbjun
1a9442c001 Hopefully clean up some errors
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11528 a1c6a512-1295-4272-9138-f99709370657
2006-11-15 06:46:35 +00:00