summaryrefslogtreecommitdiffstats
path: root/apps/main.c
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2010-05-15 21:02:47 +0000
committerThomas Martitz <kugel@rockbox.org>2010-05-15 21:02:47 +0000
commit3d0cee8abbaf764958743e8a7851eee94e60a913 (patch)
treea96b1ec825003a71643a7da4707c300f64824f82 /apps/main.c
parentdcf442e61f21fb2aef5ce7de0547f733557b156e (diff)
downloadrockbox-3d0cee8abbaf764958743e8a7851eee94e60a913.tar.gz
rockbox-3d0cee8abbaf764958743e8a7851eee94e60a913.zip
- Move uisimulator/sdl/*.[ch] into the target tree, under firmware/target/hosted/sdl, uisdl.c is split up across button-sdl.c and system-sdl.c.
- Refactor the program startup. main() is now in main.c like on target, and the implicit application thread will now act as our main thread (previously a separate one was created for this in thread initialization). This is part of Rockbox as an application and is the first step to make an application port from the uisimulator. In a further step the sim bits from the sdl build will be separated out. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26065 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/main.c')
-rw-r--r--apps/main.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/apps/main.c b/apps/main.c
index b043dacede..e4b9286b4e 100644
--- a/apps/main.c
+++ b/apps/main.c
@@ -124,8 +124,14 @@ const char appsversion[]=APPSVERSION;
static void init(void);
-#ifdef SIMULATOR
-void app_main(void)
+#ifdef HAVE_SDL
+#if defined(WIN32) && defined(main)
+/* Don't use SDL_main on windows -> no more stdio redirection */
+#undef main
+#endif
+int main(int argc, char *argv[])
+{
+ sys_handle_argv(argc, argv);
#else
/* main(), and various functions called by main() and init() may be
* be INIT_ATTR. These functions must not be called after the final call
@@ -133,8 +139,8 @@ void app_main(void)
* see definition of INIT_ATTR in config.h */
int main(void) INIT_ATTR __attribute__((noreturn));
int main(void)
-#endif
{
+#endif
int i;
CHART(">init");
init();
@@ -313,6 +319,7 @@ static void init_tagcache(void)
static void init(void)
{
+ system_init();
kernel_init();
buffer_init();
enable_irq();