Commit graph

8 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
Thomas Martitz
bedeac440e Fix typo that made alarmclock exit immediately and add scrollwheel actions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26363 a1c6a512-1295-4272-9138-f99709370657
2010-05-28 21:08:52 +00:00
Thomas Martitz
20e9d56ba5 S#10387 - Rework pluginlib actions
It changes pluginlib actions to contain only a single and simple context (and
other one for remote directional buttons),
consisting of 7(9) buttons: up/down/left/right, select OR short select and long
select, exit and cancel (plus 2 for scrollwheel targets).
This ensures contexts don't clash with other contexts and simplifies them, at
the expense of reduced versatility. However, the versatility made it largely unusable
due to the great number of targets.
This should allow for using pluginlib actions safely for the most simple plugins (e.g. almost all demos).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26202 a1c6a512-1295-4272-9138-f99709370657
2010-05-20 17:41:28 +00:00
Rafaël Carré
46a9c5e089 Fix alarmclock plugin time miscalculation
Author: Clément Pit-Claudel (CFP)
Flyspray: FS#11110

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26056 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 15:20:45 +00:00
Kevin Ferrare
c396e4161a Remote support for the alarmclock plugin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24921 a1c6a512-1295-4272-9138-f99709370657
2010-02-26 07:38:18 +00:00
Rafaël Carré
99655d66bd Alarm clock plugin for RTC targets
Author: Clément Pit-Claudel
Flyspray: FS#11056

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24912 a1c6a512-1295-4272-9138-f99709370657
2010-02-25 14:45:06 +00:00