1
0
Fork 0
forked from len0rd/rockbox
foxbox/apps/plugins/doom
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
..
am_map.c Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
am_map.h
Changelog
d_deh.c Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes). 2010-05-06 21:04:40 +00:00
d_deh.h doom: fix types mismatch spotted by gcc 4.5.1 2010-08-01 16:39:03 +00:00
d_englsh.h
d_event.h Doom plugin: Missed properly making a few 'unsigned' on my second pass. 2010-05-29 08:28:29 +00:00
d_french.h
d_items.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
d_items.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
d_main.c Remove some redundant #include's 2010-06-29 20:13:22 +00:00
d_main.h
d_net.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
d_net.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
d_player.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
d_think.h
d_ticcmd.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
doom.make Rename/change SIMVER to APP_TYPE in the Makefiles. 2010-07-10 13:49:49 +00:00
doomdata.h
doomdef.c Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
doomdef.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
doomstat.c Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
doomstat.h Doom plugin: Missed properly making a few 'unsigned' on my second pass. 2010-05-29 08:28:29 +00:00
doomtype.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
dstrings.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
dstrings.h Dehacked and BEX support for Doom - currently only supports a DEHACKED file in a WAD (not as a standalone file yet). 2006-12-13 04:44:17 +00:00
f_finale.c Dehacked and BEX support for Doom - currently only supports a DEHACKED file in a WAD (not as a standalone file yet). 2006-12-13 04:44:17 +00:00
f_finale.h
f_wipe.c Patch #4864 by Jonathan Gordon: text editor plugin, with some changes by me. 2006-04-03 08:51:08 +00:00
f_wipe.h
g_game.c doom: fix types mismatch spotted by gcc 4.5.1 2010-08-01 16:39:03 +00:00
g_game.h
hu_lib.c
hu_lib.h
hu_stuff.c doom: fix types mismatch spotted by gcc 4.5.1 2010-08-01 16:39:03 +00:00
hu_stuff.h doom: fix types mismatch spotted by gcc 4.5.1 2010-08-01 16:39:03 +00:00
i_sound.c
i_sound.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
i_system.c 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 2009-06-29 14:29:46 +00:00
i_system.h
i_video.c Build doom on clipv2 and clip+ 2010-06-23 18:27:30 +00:00
i_video.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
info.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
info.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
m_argv.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
m_argv.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
m_bbox.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
m_bbox.h
m_cheat.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
m_cheat.h
m_fixed.h
m_menu.c Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
m_menu.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
m_misc.c
m_misc.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
m_random.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
m_random.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
m_swap.h
p_ceilng.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_doors.c Dehacked and BEX support for Doom - currently only supports a DEHACKED file in a WAD (not as a standalone file yet). 2006-12-13 04:44:17 +00:00
p_enemy.c Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
p_enemy.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_floor.c
p_genlin.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_inter.c
p_inter.h
p_lights.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_map.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_map.h
p_maputl.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_maputl.h
p_mobj.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_mobj.h
p_plats.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_pspr.c Dehacked and BEX support for Doom - currently only supports a DEHACKED file in a WAD (not as a standalone file yet). 2006-12-13 04:44:17 +00:00
p_pspr.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
p_saveg.c Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
p_saveg.h
p_setup.c
p_setup.h
p_sight.c
p_spec.c
p_spec.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
p_switch.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_telept.c
p_tick.c
p_tick.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
p_user.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
p_user.h
r_bsp.c Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
r_bsp.h
r_data.c Free more plugin memory 2006-12-13 06:52:10 +00:00
r_data.h
r_defs.h Doom plugin: Missed properly making a few 'unsigned' on my second pass. 2010-05-29 08:28:29 +00:00
r_draw.c Coldfire targets: tiny optimisation. 2010-03-09 23:44:25 +00:00
r_draw.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
r_main.c Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
r_main.h
r_plane.c Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
r_plane.h
r_segs.c Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
r_segs.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
r_sky.c
r_sky.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
r_state.h Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
r_things.c
r_things.h
rockdoom.c Introduce plugin_crt0.c that every plugin links. 2010-08-23 16:56:49 +00:00
rockmacros.h 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
s_sound.c Doom for the Gigabeat and some code reduction 2007-01-17 18:52:24 +00:00
s_sound.h
sounds.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
sounds.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
SOURCES
st_lib.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
st_lib.h
st_stuff.c
st_stuff.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
tables.c
tables.h
v_video.c Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
v_video.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
w_wad.c
w_wad.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
wi_stuff.c Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
wi_stuff.h Doom plugin: In anticipation of moving to the EABI toolchain, because of its assumptions about enums being sized as ints, convert enum typdefs to int or unsigned depending upon whether they have negative values in the enumeration. This should effectively preserve the manner in which it is compiled under the old toolchain and avoids having to closely inspect and possibly change many places in the code. 2010-05-29 08:12:39 +00:00
z_bmalloc.c Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
z_bmalloc.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00
z_zone.c
z_zone.h Patch #2969 - Doom! Currently only working on the H300. 2006-03-28 15:44:01 +00:00