From 0f7351ba6c3a4485d00ec6614f09334fbb50d2f3 Mon Sep 17 00:00:00 2001 From: "giwoong.kim" Date: Tue, 13 Mar 2012 15:45:37 +0900 Subject: [PATCH] [Title] added sdl event queue [Type] [Module] [Priority] [Jira#] [Redmine#] [Problem] [Cause] [Solution] [TestCase] --- tizen/src/emulator.c | 111 +++++++++++++++++++++++++++------------------------ tizen/src/maru_sdl.c | 12 ++++++ vl.c | 4 -- 3 files changed, 70 insertions(+), 57 deletions(-) diff --git a/tizen/src/emulator.c b/tizen/src/emulator.c index 98db5b0..91bc5d2 100644 --- a/tizen/src/emulator.c +++ b/tizen/src/emulator.c @@ -30,6 +30,7 @@ */ +#include #include "maru_common.h" #include "emulator.h" #include "sdb.h" @@ -48,17 +49,18 @@ int _emulator_condition = 0; //TODO: int get_emulator_condition(void) { - return _emulator_condition; + return _emulator_condition; } void set_emulator_condition(int state) { - _emulator_condition = state; + _emulator_condition = state; } void exit_emulator(void) { - + shutdown_skin_server(); + SDL_Quit(); } static void construct_main_window(int skin_argc, char* skin_argv[]) @@ -77,76 +79,79 @@ static void construct_main_window(int skin_argc, char* skin_argv[]) static void parse_options(int argc, char* argv[], int* skin_argc, char*** skin_argv, int* qemu_argc, char*** qemu_argv) { - int i; - int j; + int i; + int j; // FIXME !!! // TODO: - for(i = 1; i < argc; ++i) - { - if(strncmp(argv[i], "--skin-args", 11) == 0) - { - *skin_argv = &(argv[i + 1]); - break; - } - } - for(j = i; j < argc; ++j) - { - if(strncmp(argv[j], "--qemu-args", 11) == 0) - { - *skin_argc = j - i - 1; - - *qemu_argc = argc - j - i + 1; - *qemu_argv = &(argv[j]); - - argv[j] = argv[0]; - - break; - } - } + for(i = 1; i < argc; ++i) + { + if(strncmp(argv[i], "--skin-args", 11) == 0) + { + *skin_argv = &(argv[i + 1]); + break; + } + } + for(j = i; j < argc; ++j) + { + if(strncmp(argv[j], "--qemu-args", 11) == 0) + { + *skin_argc = j - i - 1; + + *qemu_argc = argc - j - i + 1; + *qemu_argv = &(argv[j]); + + argv[j] = argv[0]; + + break; + } + } } int qemu_main(int argc, char** argv, char** envp); int main(int argc, char* argv[]) { - tizen_base_port = get_sdb_base_port(); - - int skin_argc = 0; - char** skin_argv = NULL; + tizen_base_port = get_sdb_base_port(); + + int skin_argc = 0; + char** skin_argv = NULL; - int qemu_argc = 0; - char** qemu_argv = NULL; + int qemu_argc = 0; + char** qemu_argv = NULL; - parse_options(argc, argv, &skin_argc, &skin_argv, &qemu_argc, &qemu_argv); + parse_options(argc, argv, &skin_argc, &skin_argv, &qemu_argc, &qemu_argv); - int i; + int i; /* - printf("%d\n", skin_argc); - for(i = 0; i < skin_argc; ++i) - { - printf("%s\n", skin_argv[i]); - } + printf("%d\n", skin_argc); + for(i = 0; i < skin_argc; ++i) + { + printf("%s\n", skin_argv[i]); + } */ -// printf("%d\n", qemu_argc); - INFO("Start emulator : =====================================\n"); - for(i = 0; i < qemu_argc; ++i) - { - INFO("%s ", qemu_argv[i]); - } - INFO("\n"); - INFO("======================================================\n"); +// printf("%d\n", qemu_argc); + INFO("Start emulator : =====================================\n"); + for(i = 0; i < qemu_argc; ++i) + { + INFO("%s ", qemu_argv[i]); + } + INFO("\n"); + INFO("======================================================\n"); + + construct_main_window(skin_argc, skin_argv); - construct_main_window(skin_argc, skin_argv); + sdb_setup(); - sdb_setup(); + INFO("qemu main start!\n"); + qemu_main(qemu_argc, qemu_argv, NULL); - qemu_main(qemu_argc, qemu_argv, NULL); +// shutdown_guest_server(); -// shutdown_guest_server(); + exit_emulator(); - return 0; + return 0; } diff --git a/tizen/src/maru_sdl.c b/tizen/src/maru_sdl.c index 1f8a8a4..6860c60 100644 --- a/tizen/src/maru_sdl.c +++ b/tizen/src/maru_sdl.c @@ -139,7 +139,19 @@ static void qemu_ds_resize(DisplayState *ds) static void qemu_ds_refresh(DisplayState *ds) { + SDL_Event ev1, *ev = &ev1; + vga_hw_update(); + + while (SDL_PollEvent(ev)) { + switch (ev->type) { + case SDL_KEYDOWN: + case SDL_KEYUP: + break; + default: + break; + } + } } diff --git a/vl.c b/vl.c index 7edd02f..9334818 100644 --- a/vl.c +++ b/vl.c @@ -177,7 +177,6 @@ int qemu_main(int argc, char **argv, char **envp); #ifdef CONFIG_MARU #include "tizen/src/maru_sdl.h" -#include "tizen/src/skin/maruskin_server.h" #endif //#define DEBUG_NET @@ -1420,9 +1419,6 @@ void qemu_system_killed(int signal, pid_t pid) void qemu_system_shutdown_request(void) { -#ifdef CONFIG_MARU - shutdown_skin_server(); -#endif shutdown_requested = 1; qemu_notify_event(); } -- 2.7.4