diff options
Diffstat (limited to 'apps/main.c')
-rw-r--r-- | apps/main.c | 13 |
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; | |||
124 | 124 | ||
125 | static void init(void); | 125 | static void init(void); |
126 | 126 | ||
127 | #ifdef SIMULATOR | 127 | #ifdef HAVE_SDL |
128 | void app_main(void) | 128 | #if defined(WIN32) && defined(main) |
129 | /* Don't use SDL_main on windows -> no more stdio redirection */ | ||
130 | #undef main | ||
131 | #endif | ||
132 | int main(int argc, char *argv[]) | ||
133 | { | ||
134 | sys_handle_argv(argc, argv); | ||
129 | #else | 135 | #else |
130 | /* main(), and various functions called by main() and init() may be | 136 | /* main(), and various functions called by main() and init() may be |
131 | * be INIT_ATTR. These functions must not be called after the final call | 137 | * be INIT_ATTR. These functions must not be called after the final call |
@@ -133,8 +139,8 @@ void app_main(void) | |||
133 | * see definition of INIT_ATTR in config.h */ | 139 | * see definition of INIT_ATTR in config.h */ |
134 | int main(void) INIT_ATTR __attribute__((noreturn)); | 140 | int main(void) INIT_ATTR __attribute__((noreturn)); |
135 | int main(void) | 141 | int main(void) |
136 | #endif | ||
137 | { | 142 | { |
143 | #endif | ||
138 | int i; | 144 | int i; |
139 | CHART(">init"); | 145 | CHART(">init"); |
140 | init(); | 146 | init(); |
@@ -313,6 +319,7 @@ static void init_tagcache(void) | |||
313 | 319 | ||
314 | static void init(void) | 320 | static void init(void) |
315 | { | 321 | { |
322 | system_init(); | ||
316 | kernel_init(); | 323 | kernel_init(); |
317 | buffer_init(); | 324 | buffer_init(); |
318 | enable_irq(); | 325 | enable_irq(); |