ALLEGRO_DISPLAY_INTERFACE *_al_sdl_display_driver(void) { if (vt) return vt; vt = al_calloc(1, sizeof *vt); vt->id = AL_ID('S', 'D', 'L', '2'); vt->create_display = sdl_create_display; vt->destroy_display = sdl_destroy_display; vt->set_current_display = sdl_set_current_display; vt->unset_current_display = sdl_unset_current_display; //vt->clear = GL //vt->draw_pixel = GL vt->flip_display = sdl_flip_display; vt->update_display_region = sdl_update_display_region; vt->acknowledge_resize = sdl_acknowledge_resize; vt->resize_display = sdl_resize_display; /*vt->quick_size = sdl_quick_size; vt->get_orientation = sdl_get_orientation;*/ vt->create_bitmap = _al_ogl_create_bitmap; vt->set_target_bitmap = _al_ogl_set_target_bitmap; vt->get_backbuffer = _al_ogl_get_backbuffer; vt->is_compatible_bitmap = sdl_is_compatible_bitmap; /*vt->switch_out = sdl_switch_out; vt->switch_in = sdl_switch_in; vt->draw_memory_bitmap_region = sdl_draw_memory_bitmap_region; vt->wait_for_vsync = sdl_wait_for_vsync;*/ vt->set_mouse_cursor = sdl_set_mouse_cursor; vt->set_system_mouse_cursor = sdl_set_system_mouse_cursor; vt->show_mouse_cursor = sdl_show_mouse_cursor; vt->hide_mouse_cursor = sdl_hide_mouse_cursor; /*vt->set_icons = sdl_set_icons;*/ vt->set_window_position = sdl_set_window_position; vt->get_window_position = sdl_get_window_position; /*vt->set_window_constraints = sdl_set_window_constraints; vt->get_window_constraints = sdl_get_window_constraints; vt->set_display_flag = sdl_set_display_flag;*/ vt->set_window_title = sdl_set_window_title; //vt->flush_vertex_cache = GL //vt->prepare_vertex_cache = GL //vt->update_transformation = GL //vt->set_projection = GL /*vt->shutdown = sdl_shutdown; vt->acknowledge_drawing_halt = sdl_acknowledge_drawing_halt; vt->acknowledge_drawing_resume = sdl_acknowledge_drawing_resume; vt->set_display_option = sdl_set_display_option;*/ //vt->clear_depth_buffer = GL vt->update_render_state = _al_ogl_update_render_state; _al_ogl_add_drawing_functions(vt); return vt; }
int detect_it(char *f) { int sig; PACKFILE *fn = pack_fopen(f, "rb"); if (fn == NULL) return FALSE; sig = pack_mgetl(fn); if (sig != AL_ID('I','M','P','M')) { pack_fclose(fn); return FALSE; } pack_fclose(fn); return TRUE; }
} return names[keycode]; } static void android_get_keyboard_state(ALLEGRO_KEYBOARD_STATE *ret_state) { _al_event_source_lock(&the_keyboard.es); { *ret_state = the_state; } _al_event_source_unlock(&the_keyboard.es); } static ALLEGRO_KEYBOARD_DRIVER android_keyboard_driver = { AL_ID('A','N','D','R'), "", "", "android keyboard", android_init_keyboard, android_exit_keyboard, android_get_keyboard, android_set_keyboard_leds, android_keycode_to_name, android_get_keyboard_state }; ALLEGRO_KEYBOARD_DRIVER *_al_get_android_keyboard_driver(void) { return &android_keyboard_driver; }
(void)keycode; return "none"; } static void iphone_get_keyboard_state(ALLEGRO_KEYBOARD_STATE *ret_state) { memset(ret_state, 0, sizeof *ret_state); } static void iphone_clear_keyboard_state(void) { return; } static ALLEGRO_KEYBOARD_DRIVER iphone_keyboard_driver = { AL_ID('I','P','H','O'), "", "", "iphone keyboard", iphone_init_keyboard, iphone_exit_keyboard, iphone_get_keyboard, iphone_set_keyboard_leds, iphone_keycode_to_name, iphone_get_keyboard_state, iphone_clear_keyboard_state }; ALLEGRO_KEYBOARD_DRIVER *_al_get_iphone_keyboard_driver(void) { return &iphone_keyboard_driver;