rockbox/apps/plugins
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
..
beatbox Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
bitmaps Sudoku coloured number display 2010-07-22 08:48:32 +00:00
chessbox Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
clock Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
doom Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
fft Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
fractals Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
frotz Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
goban Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
imageviewer Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
lib Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
lua Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
midi Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
mpegplayer Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
pacbox Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
pdbox Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
pictureflow Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
reversi Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rockboy Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
searchengine Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
shortcuts Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
sudoku Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
text_viewer Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
zxbox Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
alarmclock.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
alpine_cdc.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
battery_bench.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
bench_mem_jpeg.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
bench_scaler.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
blackjack.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
boomshine.lua boomshine: improve collision detection. 2010-03-06 12:20:09 +00:00
bounce.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
brickmania.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
bubbles.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
BUILD_OVERLAY Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
calculator.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
calendar.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
CATEGORIES FS10820 - Shopper, a shopping list plugin by Daniel Rigby. 2010-08-18 09:10:37 +00:00
chessbox.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
chessclock.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
chip8.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
chopper.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
clix.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
codebuster.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
credits.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
credits.pl
crypt_firmware.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
cube.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
demystify.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
dice.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
dict.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
disktidy.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
disktidy.config FS#8637 - new UI for disktidy. 2008-05-18 07:27:10 +00:00
elfdep.pl
euroconverter.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
fire.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
fireworks.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
firmware_flash.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
flipit.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
goban.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
greyscale.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
helloworld.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
helloworld.lua Helloworld.lua: fix file_put_contents depending on a wrong return value of io.write + use a cleaner version of if(file == nil) (thanks to Christophe Gragnic) 2009-07-08 21:05:56 +00:00
invadrox.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
iriver_flash.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
iriverify.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
jackpot.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
jewels.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
keybox.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
lamp.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
logo.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
lrcplayer.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
matrix.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
maze.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
mazezam.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
md5sum.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
metronome.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
minesweeper.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
mosaique.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
mp3_encoder.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
nim.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
oscilloscope.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
pegbox.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
pictureflow.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
pitch_detector.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
plasma.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
plugin.lds Enable IRAM on TCC7801 (Cowon D2) for a 6-12% speedup in codecs that use it, and a small increase in battery life. 2010-05-31 21:00:25 +00:00
plugin_crt0.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
plugins.make Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
pong.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
ppmviewer.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
properties.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
random_folder_advance_config.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
remote_control.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
robotfindskitten.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rockblox.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rockblox1d.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rockbox-fonts.config New plugin theme_remove which offers a way to remove specified theme. 2009-10-12 13:55:59 +00:00
rockbox_flash.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rockboy.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rocklife.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rockpaint.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
search.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
settings_dumper.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
shopper.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
sliding_puzzle.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
snake.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
snake2.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
snake2.levels Removed executable flag 2007-01-09 23:22:14 +00:00
snow.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
sokoban.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
sokoban.levels Some more sokoban changes from Sean Morrisey's FS #6702. (includes moving the default level file back to the previous filename) 2007-06-29 19:52:13 +00:00
solitaire.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
sort.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
SOURCES Enable shopper plugin for charcell too and fix the :$ tag in shopper.c 2010-08-18 09:23:06 +00:00
spacerocks.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
splitedit.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
star.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
starfield.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
stats.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
stopwatch.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
stopwatch.lua Add stopwatch plugin replacement for touchscreen targets 2009-12-16 14:23:13 +00:00
SUBDIRS rockboy: simplify build condition 2010-07-21 06:05:51 +00:00
superdom.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_boost.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_codec.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_core_jpeg.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_disk.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_fps.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_gfx.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_grey.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_greylib_bitmap_scale.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_mem.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_mem_jpeg.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_resize.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_sampr.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_scanrate.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_touchscreen.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_viewports.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
test_viewports.lua Fix some typos 2009-05-25 14:56:59 +00:00
text_editor.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
theme_remove.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
vbrfix.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
video.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
viewers.config FS10820 - Shopper, a shopping list plugin by Daniel Rigby. 2010-08-18 09:10:37 +00:00
vu_meter.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
wav2wv.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
wavplay.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
wavrecord.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
wavview.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
wormlet.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
xobox.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
zxbox.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00