install_allegro(int system_id, int *errno_ptr, int (*atexit_ptr)()); allegro_init(); allegro_exit(); END_OF_MAIN() AL_ID(a,b,c,d) MAKE_VERSION(a, b, c) allegro_message(const char *text_format, ...); set_window_title(const char *name); set_close_button_callback(void (*proc)(void)); desktop_color_depth(); get_desktop_resolution(int *width, int *height); check_cpu(); set_uformat(int type); get_uformat(void); register_uformat(int type, int (*u_getc)(const char *s), int (*u_getx)(char **s), int (*u_setc)(char *s, int c), int (*u_width)(const char *s), int (*u_cwidth)(int c), int (*u_isok)(int c)); set_ucodepage(const unsigned short *table, const unsigned short *extras); need_uconvert(const char *s, int type, int newtype); uconvert_size(const char *s, int type, int newtype); do_uconvert(const char *s, int type, char *buf, int newtype, int size); uconvert(const char *s, int type, char *buf, int newtype, int size); uconvert_ascii(const char *s, char buf[]); uconvert_toascii(const char *s, char buf[]); ugetc(const char *s); ugetx(char **s); usetc(char *s, int c); uwidth(const char *s); ucwidth(int c); uisok(int c); uoffset(const char *s, int index); ugetat(const char *s, int index); usetat(char *s, int index, int c); uinsert(char *s, int index, int c); uremove(char *s, int index); ustrsize(const char *s); ustrsizez(const char *s); uwidth_max(int type); utolower(int c); utoupper(int c); uisspace(int c); uisdigit(int c); ustrdup(const char *src) _ustrdup(const char *src, void* (*malloc_func)(size_t)) ustrcpy(char *dest, const char *src); ustrzcpy(char *dest, int size, const char *src); ustrcat(char *dest, const char *src); ustrzcat(char *dest, int size, const char *src); ustrlen(const char *s); ustrcmp(const char *s1, const char *s2); ustrncpy(char *dest, const char *src, int n); ustrzncpy(char *dest, int size, const char *src, int n); ustrncat(char *dest, const char *src, int n); ustrzncat(char *dest, int size, const char *src, int n); ustrncmp(const char *s1, const char *s2, int n); ustricmp(const char *s1, const char *s2); ustrnicmp(const char *s1, const char *s2, int n); ustrlwr(char *s); ustrupr(char *s); ustrchr(const char *s, int c); ustrrchr(const char *s, int c); ustrstr(const char *s1, const char *s2); ustrpbrk(const char *s, const char *set); ustrtok(char *s, const char *set); ustrtok_r(char *s, const char *set, char **last); uatof(const char *s); ustrtol(const char *s, char **endp, int base); ustrtod(const char *s, char **endp); ustrerror(int err); usprintf(char *buf, const char *format, ...); uszprintf(char *buf, int size, const char *format, ...); uvsprintf(char *buf, const char *format, va_list args); uvszprintf(char *buf, int size, const char *format, va_list args); set_config_file(const char *filename); set_config_data(const char *data, int length); override_config_file(const char *filename); override_config_data(const char *data, int length); push_config_state(); pop_config_state(); flush_config_file(); reload_config_texts(const char *new_language); hook_config_section(const char *section, int (*intgetter)(const char *name, int def), const char *(*stringgetter)(const char *name, const char *def), void (*stringsetter)(const char *name, const char *value)); config_is_hooked(const char *section); get_config_string(const char *section, const char *name, const char *def); get_config_int(const char *section, const char *name, int def); get_config_hex(const char *section, const char *name, int def); get_config_float(const char *section, const char *name, float def); get_config_id(const char *section, const char *name, int def); get_config_argv(const char *section, const char *name, int *argc); get_config_text(const char *msg); set_config_string(const char *section, const char *name, const char *val); set_config_int(const char *section, const char *name, int val); set_config_hex(const char *section, const char *name, int val); set_config_float(const char *section, const char *name, float val); set_config_id(const char *section, const char *name, int val); list_config_entries(const char *section, const char ***names); list_config_sections(const char ***names); free_config_entries(const char ***names); install_mouse(); remove_mouse(); poll_mouse(); mouse_needs_poll(); enable_hardware_cursor(void); disable_hardware_cursor(void); select_mouse_cursor(int cursor); set_mouse_cursor_bitmap(int cursor, BITMAP *bmp); show_mouse(BITMAP *bmp); scare_mouse(); scare_mouse_area(int x, int y, int w, int h); unscare_mouse(); show_os_cursor(int cursor); position_mouse(int x, int y); position_mouse_z(int z); position_mouse_w(int w); set_mouse_range(int x1, int y1, int x2, int y2); set_mouse_speed(int xspeed, int yspeed); set_mouse_sprite(BITMAP *sprite); set_mouse_sprite_focus(int x, int y); get_mouse_mickeys(int *mickeyx, int *mickeyy); install_timer(); remove_timer(); install_int(void (*proc)(), int speed); install_int_ex(void (*proc)(), int speed); LOCK_VARIABLE(variable_name); LOCK_FUNCTION(function_name); END_OF_FUNCTION(function_name); remove_int(void (*proc)()); install_param_int(void (*proc)(void *), void *param, int speed); install_param_int_ex(void (*proc)(void *), void *param, int speed); remove_param_int(void (*proc)(void *), void *param); rest(unsigned int time); rest_callback(long time, void (*callback)()) install_keyboard(); remove_keyboard(); install_keyboard_hooks(int (*keypressed)(), int (*readkey)()); poll_keyboard(); keyboard_needs_poll(); keypressed(); readkey(); ureadkey(int *scancode); scancode_to_ascii(int scancode); scancode_to_name(int scancode); simulate_keypress(int key); simulate_ukeypress(int key, int scancode); set_leds(int leds); set_keyboard_rate(int delay, int repeat); clear_keybuf(); install_joystick(int type); remove_joystick(); poll_joystick(); calibrate_joystick_name(int n); calibrate_joystick(int n); save_joystick_data(const char *filename); load_joystick_data(const char *filename); initialise_joystick(); set_color_depth(int depth); get_color_depth(void); request_refresh_rate(int rate); get_refresh_rate(void); get_gfx_mode_list(int card); destroy_gfx_mode_list(GFX_MODE_LIST *mode_list); set_gfx_mode(int card, int w, int h, int v_w, int v_h); set_display_switch_mode(int mode); set_display_switch_callback(int dir, void (*cb)()); remove_display_switch_callback(void (*cb)()); get_display_switch_mode(); is_windowed_mode(void); enable_triple_buffer(); scroll_screen(int x, int y); request_scroll(int x, int y); poll_scroll(); show_video_bitmap(BITMAP *bitmap); request_video_bitmap(BITMAP *bitmap); vsync(); create_bitmap(int width, int height); create_bitmap_ex(int color_depth, int width, int height); create_sub_bitmap(BITMAP *parent, int x, y, width, height); create_video_bitmap(int width, int height); create_system_bitmap(int width, int height); destroy_bitmap(BITMAP *bitmap); lock_bitmap(BITMAP *bitmap); bitmap_color_depth(BITMAP *bmp); bitmap_mask_color(BITMAP *bmp); is_same_bitmap(BITMAP *bmp1, BITMAP *bmp2); is_planar_bitmap(BITMAP *bmp); is_linear_bitmap(BITMAP *bmp); is_memory_bitmap(BITMAP *bmp); is_screen_bitmap(BITMAP *bmp); is_video_bitmap(BITMAP *bmp); is_system_bitmap(BITMAP *bmp); is_sub_bitmap(BITMAP *bmp); acquire_bitmap(BITMAP *bmp); release_bitmap(BITMAP *bmp); acquire_screen(); release_screen(); set_clip_rect(BITMAP *bitmap, int x1, int y1, int x2, int y2); get_clip_rect(BITMAP *bitmap, int *x1, int *y1, int *x2, int *y2); add_clip_rect(BITMAP *bitmap, int x1, int y1, int x2, int y2); set_clip_state(BITMAP *bitmap, int state) get_clip_state(BITMAP *bitmap) is_inside_bitmap(BITMAP *bmp, int x, int y, int clip); load_bitmap(const char *filename, RGB *pal); load_bmp(const char *filename, RGB *pal); load_bmp_pf(PACKFILE *f, RGB *pal); load_lbm(const char *filename, RGB *pal); load_pcx(const char *filename, RGB *pal); load_pcx_pf(PACKFILE *f, RGB *pal); load_tga(const char *filename, RGB *pal); load_tga_pf(PACKFILE *f, RGB *pal); save_bitmap(const char *filename, BITMAP *bmp, const RGB *pal); save_bmp(const char *filename, BITMAP *bmp, const RGB *pal); save_bmp_pf(PACKFILE *f, BITMAP *bmp, RGB *pal); save_pcx(const char *filename, BITMAP *bmp, const RGB *pal); save_pcx_pf(PACKFILE *f, BITMAP *bmp, RGB *pal); save_tga(const char *filename, BITMAP *bmp, const RGB *pal); save_tga_pf(PACKFILE *f, BITMAP *bmp, RGB *pal); register_bitmap_file_type(const char *ext, BITMAP *(*load)(const char *filename, RGB *pal), int (*save)(const char *filename, BITMAP *bmp, const RGB *pal)); set_color_conversion(int mode); get_color_conversion(); set_color(int index, const RGB *p); _set_color(int index, const RGB *p); set_palette(const PALETTE p); set_palette_range(const PALETTE p, int from, int to, int vsync); get_color(int index, RGB *p); get_palette(PALETTE p); get_palette_range(PALETTE p, int from, int to); fade_interpolate(const PALETTE source, const PALETTE dest, PALETTE output, int pos, int from, int to); fade_from_range(const PALETTE source, const PALETTE dest, int speed, int from, int to); fade_in_range(const PALETTE p, int speed, int from, int to); fade_out_range(int speed, int from, int to); fade_from(const PALETTE source, const PALETTE dest, int speed); fade_in(const PALETTE p, int speed); fade_out(int speed); select_palette(const PALETTE p); unselect_palette(); generate_332_palette(PALETTE pal); generate_optimized_palette(BITMAP *bmp, PALETTE pal, const char rsvd[PAL_SIZE]); makecol8(int r, int g, int b); makecol16(int r, int g, int b); makecol32(int r, int g, int b); makeacol32(int r, int g, int b, int a); makecol(int r, int g, int b); makecol_depth(int color_depth, int r, int g, int b); makeacol(int r, int g, int b, int a); makecol15_dither(int r, int g, int b, int x, int y); getr8(int c); getb8(int c); getg15(int c); getr16(int c); getb16(int c); getg24(int c); getr32(int c); getb32(int c); geta32(int c); getr(int c); getb(int c); getr_depth(int color_depth, int c); getb_depth(int color_depth, int c); clear_bitmap(BITMAP *bitmap); clear_to_color(BITMAP *bitmap, int color); putpixel(BITMAP *bmp, int x, int y, int color); _putpixel(BITMAP *bmp, int x, int y, int color); _putpixel16(BITMAP *bmp, int x, int y, int color); _putpixel32(BITMAP *bmp, int x, int y, int color); getpixel(BITMAP *bmp, int x, int y); _getpixel(BITMAP *bmp, int x, int y); _getpixel16(BITMAP *bmp, int x, int y); _getpixel32(BITMAP *bmp, int x, int y); vline(BITMAP *bmp, int x, int y1, int y2, int color); hline(BITMAP *bmp, int x1, int y, int x2, int color); do_line(BITMAP *bmp, int x1, y1, x2, y2, int d, void (*proc)(BITMAP *bmp, int x, int y, int d)); line(BITMAP *bmp, int x1, int y1, int x2, int y2, int color); fastline(BITMAP *bmp, int x1, int y1, int x2, int y2, int color); triangle(BITMAP *bmp, int x1, y1, x2, y2, x3, y3, int color); polygon(BITMAP *bmp, int vertices, const int *points, int color); rect(BITMAP *bmp, int x1, int y1, int x2, int y2, int color); rectfill(BITMAP *bmp, int x1, int y1, int x2, int y2, int color); do_circle(BITMAP *bmp, int x, int y, int radius, int d, void (*proc)(BITMAP *bmp, int x, int y, int d)); circle(BITMAP *bmp, int x, int y, int radius, int color); circlefill(BITMAP *bmp, int x, int y, int radius, int color); do_ellipse(BITMAP *bmp, int x, int y, int rx, ry, int d, void (*proc)(BITMAP *bmp, int x, int y, int d)); ellipse(BITMAP *bmp, int x, int y, int rx, int ry, int color); ellipsefill(BITMAP *bmp, int x, int y, int rx, int ry, int color); do_arc(BITMAP *bmp, int x, int y, fixed a1, fixed a2, int r, int d, void (*proc)(BITMAP *bmp, int x, int y, int d)); arc(BITMAP *bmp, int x, y, fixed ang1, ang2, int r, int color); calc_spline(const int points[8], int npts, int *x, int *y); spline(BITMAP *bmp, const int points[8], int color); floodfill(BITMAP *bmp, int x, int y, int color); blit(BITMAP *source, BITMAP *dest, int source_x, int source_y, int dest_x, int dest_y, int width, int height); stretch_blit(BITMAP *source, BITMAP *dest, int source_x, source_y, source_width, source_height, int dest_x, dest_y, dest_width, dest_height); masked_blit(BITMAP *source, BITMAP *dest, int source_x, int source_y, int dest_x, int dest_y, int width, int height); masked_stretch_blit(BITMAP *source, BITMAP *dest, int source_x, source_y, source_w, source_h, int dest_x, dest_y, dest_w, dest_h); draw_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y); stretch_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, int w, int h); draw_sprite_v_flip(BITMAP *bmp, BITMAP *sprite, int x, int y); draw_sprite_vh_flip(BITMAP *bmp, BITMAP *sprite, int x, int y); draw_trans_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y); draw_lit_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, int color); draw_gouraud_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, int c1, int c2, int c3, int c4); draw_character_ex(BITMAP *bmp, BITMAP *sprite, int x, int y, color, bg); rotate_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, fixed angle); rotate_sprite_v_flip(BITMAP *bmp, BITMAP *sprite, int x, int y, fixed angle); rotate_scaled_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, fixed angle, fixed scale); rotate_scaled_sprite_v_flip(BITMAP *bmp, BITMAP *sprite, int x, int y, fixed angle, fixed scale); pivot_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, int cx, int cy, fixed angle); pivot_sprite_v_flip(BITMAP *bmp, BITMAP *sprite, int x, int y, int cx, int cy, fixed angle); pivot_scaled_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, int cx, int cy, fixed angle, fixed scale); pivot_scaled_sprite_v_flip(BITMAP *bmp, BITMAP *sprite, int x, int y, int cx, int cy, fixed angle, fixed scale); get_rle_sprite(BITMAP *bitmap); destroy_rle_sprite(RLE_SPRITE *sprite); draw_rle_sprite(BITMAP *bmp, const RLE_SPRITE *sprite, int x, int y); draw_trans_rle_sprite(BITMAP *bmp, const RLE_SPRITE *sprite, int x, int y); draw_lit_rle_sprite(BITMAP *bmp, const RLE_SPRITE *sprite, int x, y, color); get_compiled_sprite(BITMAP *bitmap, int planar); destroy_compiled_sprite(COMPILED_SPRITE *sprite); draw_compiled_sprite(BITMAP *bmp, const COMPILED_SPRITE *sprite, int x, int y); register_font_file_type(const char *ext, FONT *(*load)(const char *filename, RGB *pal, void *param)); load_font(const char *filename, RGB *pal, void *param); destroy_font(FONT *f); make_trans_font(FONT *f); is_trans_font(FONT *f) is_color_font(FONT *f) is_mono_font(FONT *f) font_has_alpha(FONT *f) is_compatible_font(FONT *f1, FONT *f2) get_font_ranges(FONT *f) get_font_range_begin(FONT *f, int range) get_font_range_end(FONT *f, int range) extract_font_range(FONT *f, int begin, int end) transpose_font(FONT *f, int drange) merge_fonts(FONT *f1, FONT *f2) load_dat_font(const char *filename, RGB *pal, void *param) load_bios_font(const char *filename, RGB *pal, void *param) load_grx_font(const char *filename, RGB *pal, void *param) load_grx_or_bios_font(const char *filename, RGB *pal, void *param) load_bitmap_font(const char *filename, RGB *pal, void *param) grab_font_from_bitmap(BITMAP *bmp) load_txt_font(const char *filename, RGB *pal, void *param) text_length(const FONT *f, const char *str); text_height(const FONT *f) textout_ex(BITMAP *bmp, const FONT *f, const char *s, int x, int y, int color, int bg); textout_centre_ex(BITMAP *bmp, const FONT *f, const char *s, int x, y, int color, int bg); textout_right_ex(BITMAP *bmp, const FONT *f, const char *s, int x, int y, int color, int bg); textout_justify_ex(BITMAP *bmp, const FONT *f, const char *s, int x1, int x2, int y, int diff, int color, int bg); textprintf_ex(BITMAP *bmp, const FONT *f, int x, int y, int color, int bg, const char *fmt, ...); textprintf_centre_ex(BITMAP *bmp, const FONT *f, int x, int y, int color, int bg, const char *fmt, ...); textprintf_right_ex(BITMAP *bmp, const FONT *f, int x, y, color, bg, const char *fmt, ...); textprintf_justify_ex(BITMAP *bmp, const FONT *f, int x1, x2, y, diff, color, bg, const char *fmt, ...); polygon3d(BITMAP *bmp, int type, BITMAP *texture, int vc, V3D *vtx[]); triangle3d(BITMAP *bmp, int type, BITMAP *tex, V3D *v1, *v2, *v3); quad3d(BITMAP *bmp, int type, BITMAP *tex, V3D *v1, *v2, *v3, *v4); clip3d_f(int type, float min_z, float max_z, int vc, const V3D_f *vtx[], V3D_f *vout[], V3D_f *vtmp[], int out[]); clip3d(int type, fixed min_z, fixed max_z, int vc, const V3D *vtx[], V3D *vout[], V3D *vtmp[], int out[]); create_zbuffer(BITMAP *bmp); create_sub_zbuffer(ZBUFFER *parent, int x, int y, int width, int height); set_zbuffer(ZBUFFER *zbuf); clear_zbuffer(ZBUFFER *zbuf, float z); destroy_zbuffer(ZBUFFER *zbuf); create_scene(int nedge, int npoly); clear_scene(BITMAP *bmp); destroy_scene(); scene_polygon3d(int type, BITMAP *texture, int vc, V3D *vtx[]); render_scene(); drawing_mode(int mode, BITMAP *pattern, int x_anchor, int y_anchor); xor_mode(int on); solid_mode(); create_trans_table(COLOR_MAP *table, const PALETTE pal, int r, g, b, void (*callback)(int pos)); create_light_table(COLOR_MAP *table, const PALETTE pal, int r, g, b, void (*callback)(int pos)); create_color_table(COLOR_MAP *table, const PALETTE pal, void (*blend)(PALETTE pal, int x, int y, RGB *rgb), void (*callback)(int pos)); create_blender_table(COLOR_MAP *table, const PALETTE pal, void (*callback)(int pos)); set_trans_blender(int r, int g, int b, int a); set_alpha_blender(); set_write_alpha_blender(); set_add_blender(int r, int g, int b, int a); set_burn_blender(int r, int g, int b, int a); set_color_blender(int r, int g, int b, int a); set_difference_blender(int r, int g, int b, int a); set_dissolve_blender(int r, int g, int b, int a); set_dodge_blender(int r, int g, int b, int a); set_hue_blender(int r, int g, int b, int a); set_invert_blender(int r, int g, int b, int a); set_luminance_blender(int r, int g, int b, int a); set_multiply_blender(int r, int g, int b, int a); set_saturation_blender(int r, int g, int b, int a); set_screen_blender(int r, int g, int b, int a); set_blender_mode(BLENDER_FUNC b15, b16, b24, int r, g, b, a); set_blender_mode_ex(BLENDER_FUNC b15, b16, b24, b32, b15x, b16x, b24x, int r, g, b, a); bestfit_color(const PALETTE pal, int r, int g, int b); create_rgb_table(RGB_MAP *table, const PALETTE pal, void (*callback)(int pos)); hsv_to_rgb(float h, float s, float v, int *r, int *g, int *b); bmp_write_line(BITMAP *bmp, int line); bmp_read_line(BITMAP *bmp, int line); bmp_unwrite_line(BITMAP *bmp); play_fli(const char *filename, BITMAP *bmp, int loop, int (*callback)()); play_memory_fli(const void *fli_data, BITMAP *bmp, int loop, int (*callback)()); open_fli(const char *filename); close_fli(); next_fli_frame(int loop); reset_fli_variables(); detect_digi_driver(int driver_id); detect_midi_driver(int driver_id); reserve_voices(int digi_voices, int midi_voices); set_volume_per_voice(int scale); install_sound(int digi, int midi, const char *cfg_path); remove_sound(); set_volume(int digi_volume, int midi_volume); set_hardware_volume(int digi_volume, int midi_volume); get_volume(int *digi_volume, int *midi_volume); get_hardware_volume(int *digi_volume, int *midi_volume); set_mixer_quality(int quality); get_mixer_quality(void); get_mixer_frequency(void); get_mixer_bits(void); get_mixer_channels(void); get_mixer_voices(void); get_mixer_buffer_length(void); load_sample(const char *filename); load_wav(const char *filename); load_wav_pf(PACKFILE *f); load_voc(const char *filename); load_voc_pf(PACKFILE *f); save_sample(const char *filename, SAMPLE *spl); create_sample(int bits, int stereo, int freq, int len); destroy_sample(SAMPLE *spl); lock_sample(SAMPLE *spl); register_sample_file_type(const char *ext, SAMPLE *(*load)(const char *filename), int (*save)(const char *filename, SAMPLE *spl)); play_sample(const SAMPLE *spl, int vol, int pan, int freq, int loop); adjust_sample(const SAMPLE *spl, int vol, int pan, int freq, int loop); stop_sample(const SAMPLE *spl); allocate_voice(const SAMPLE *spl); deallocate_voice(int voice); reallocate_voice(int voice, const SAMPLE *spl); release_voice(int voice); voice_start(int voice); voice_stop(int voice); voice_set_priority(int voice, int priority); voice_check(int voice); voice_get_position(int voice); voice_set_position(int voice, int position); voice_set_playmode(int voice, int playmode); voice_get_volume(int voice); voice_set_volume(int voice, int volume); voice_ramp_volume(int voice, int time, int endvol); voice_stop_volumeramp(int voice); voice_get_frequency(int voice); voice_set_frequency(int voice, int frequency); voice_sweep_frequency(int voice, int time, int endfreq); voice_stop_frequency_sweep(int voice); voice_get_pan(int voice); voice_set_pan(int voice, int pan); voice_sweep_pan(int voice, int time, int endpan); voice_stop_pan_sweep(int voice); voice_set_echo(int voice, int strength, int delay); voice_set_tremolo(int voice, int rate, int depth); voice_set_vibrato(int voice, int rate, int depth); load_midi(const char *filename); destroy_midi(MIDI *midi); lock_midi(MIDI *midi); play_midi(MIDI *midi, int loop); play_looped_midi(MIDI *midi, int loop_start, int loop_end); stop_midi(); midi_pause(); midi_resume(); midi_seek(int target); get_midi_length(MIDI *midi); midi_out(unsigned char *data, int length); load_midi_patches(); load_ibk(char *filename, int drums); play_audio_stream(int len, int bits, int stereo, int freq, int vol, int pan); stop_audio_stream(AUDIOSTREAM *stream); get_audio_stream_buffer(AUDIOSTREAM *stream); free_audio_stream_buffer(AUDIOSTREAM *stream); install_sound_input(int digi, int midi); remove_sound_input(); get_sound_input_cap_bits(); get_sound_input_cap_stereo(); get_sound_input_cap_rate(int bits, int stereo); get_sound_input_cap_parm(int rate, int bits, int stereo); set_sound_input_source(int source); start_sound_input(int rate, int bits, int stereo); stop_sound_input(); read_sound_input(void *buffer); get_executable_name(char *buf, int size); fix_filename_case(char *path); fix_filename_slashes(char *path); canonicalize_filename(char *dest, const char *filename, int size); make_absolute_filename(char *dest, const char *path, const char *filename, int size); make_relative_filename(char *dest, const char *path, const char *filename, int size); is_relative_filename(const char *filename); replace_filename(char *dest, const char *path, const char *filename, int size); replace_extension(char *dest, const char *filename, const char *ext, int size); append_filename(char *dest, const char *path, const char *filename, int size); get_filename(const char *path); get_extension(const char *filename); put_backslash(char *filename); file_exists(const char *filename, int attrib, int *aret); exists(const char *filename); file_size_ex(const char *filename); file_time(const char *filename); delete_file(const char *filename); for_each_file_ex(const char *name, int in_attrib, int out_attrib, int (*callback)(const char *filename, int attrib, void *param), void *param); al_findfirst(const char *pattern, struct al_ffblk *info, int attrib); al_findnext(struct al_ffblk *info); al_findclose(struct al_ffblk *info); al_ffblk_get_size(struct al_ffblk *info); find_allegro_resource(char *dest, const char *resource, const char *ext, const char *datafile, const char *objectname, const char *envvar, const char *subdir, int size); set_allegro_resource_path(int priority, const char *path); packfile_password(const char *password); pack_fopen(const char *filename, const char *mode); pack_fopen_vtable(const PACKFILE_VTABLE *vtable, void *userdata); pack_fclose(PACKFILE *f); pack_fseek(PACKFILE *f, int offset); pack_feof(PACKFILE *f); pack_ferror(PACKFILE *f); pack_getc(PACKFILE *f); pack_ungetc(int c, PACKFILE *f); pack_putc(int c, PACKFILE *f); pack_igetw(PACKFILE *f); pack_iputw(int c, PACKFILE *f); pack_igetl(PACKFILE *f); pack_iputl(long c, PACKFILE *f); pack_mgetw(PACKFILE *f); pack_mputw(int c, PACKFILE *f); pack_mgetl(PACKFILE *f); pack_mputl(long c, PACKFILE *f); pack_fread(void *p, long n, PACKFILE *f); pack_fwrite(const void *p, long n, PACKFILE *f); pack_fgets(char *p, int max, PACKFILE *f); pack_fputs(const char *p, PACKFILE *f); pack_fopen_chunk(PACKFILE *f, int pack); pack_fclose_chunk(PACKFILE *f); create_lzss_pack_data(void); free_lzss_pack_data(LZSS_PACK_DATA *dat); lzss_write(PACKFILE *file, LZSS_PACK_DATA *dat, int size, unsigned char *buf, int last); create_lzss_unpack_data(void); free_lzss_unpack_data(LZSS_UNPACK_DATA *dat); lzss_read(PACKFILE *file, LZSS_UNPACK_DATA *dat, int s, unsigned char *buf); load_datafile(const char *filename); load_datafile_callback(const char *filename, void (*callback)(DATAFILE *d)); unload_datafile(DATAFILE *dat); load_datafile_object(const char *filename, const char *objectname); unload_datafile_object(DATAFILE *dat); find_datafile_object(const DATAFILE *dat, const char *objectname); create_datafile_index(const char *filename); load_datafile_object_indexed(const DATAFILE_INDEX *index, int item) destroy_datafile_index(DATAFILE_INDEX *index) get_datafile_property(const DATAFILE *dat, int type); register_datafile_object(int id, void *(*load)(PACKFILE *f, long size), void (*destroy)(void *data)); fixup_datafile(DATAFILE *data); DAT_ID(a, b, c, d); itofix(int x); fixtoi(fixed x); fixfloor(fixed x); fixceil(fixed x); ftofix(double x); fixtof(fixed x); fixmul(fixed x, fixed y); fixdiv(fixed x, fixed y); fixadd(fixed x, fixed y); fixsub(fixed x, fixed y); fixsin(fixed x); fixcos(fixed x); fixtan(fixed x); fixasin(fixed x); fixacos(fixed x); fixatan(fixed x); fixatan2(fixed y, fixed x); fixsqrt(fixed x); fixhypot(fixed x, fixed y); get_translation_matrix(MATRIX *m, fixed x, fixed y, fixed z); get_scaling_matrix(MATRIX *m, fixed x, fixed y, fixed z); get_x_rotate_matrix(MATRIX *m, fixed r); get_y_rotate_matrix(MATRIX *m, fixed r); get_z_rotate_matrix(MATRIX *m, fixed r); get_rotation_matrix(MATRIX *m, fixed x, fixed y, fixed z); get_align_matrix(MATRIX *m, fixed xfront, yfront, zfront, fixed xup, fixed yup, fixed zup); get_align_matrix_f(MATRIX *m, float xfront, yfront, zfront, float xup, yup, zup); get_vector_rotation_matrix(MATRIX *m, fixed x, y, z, fixed a); get_transformation_matrix(MATRIX *m, fixed scale, fixed xrot, yrot, zrot, x, y, z); get_transformation_matrix_f(MATRIX_f *m, float scale, float xrot, yrot, zrot, x, y, z); get_camera_matrix(MATRIX *m, fixed x, y, z, xfront, yfront, zfront, fixed xup, yup, zup, fov, aspect); get_camera_matrix_f(MATRIX_f *m, float x, y, z, xfront, yfront, zfront, float xup, yup, zup, fov, aspect); qtranslate_matrix(MATRIX *m, fixed x, fixed y, fixed z); qscale_matrix(MATRIX *m, fixed scale); matrix_mul(const MATRIX *m1, const MATRIX *m2, MATRIX *out); vector_length(fixed x, fixed y, fixed z); normalize_vector(fixed *x, fixed *y, fixed *z); dot_product(fixed x1, y1, z1, x2, y2, z2); cross_product(fixed x1, y1, z1, x2, y2, z2, *xout, *yout, *zout); polygon_z_normal(const V3D *v1, const V3D *v2, const V3D *v3); apply_matrix(const MATRIX *m, fixed x, y, z, *xout, *yout, *zout); set_projection_viewport(int x, int y, int w, int h); persp_project(fixed x, fixed y, fixed z, fixed *xout, fixed *yout); get_x_rotate_quat(QUAT *q, float r); get_z_rotate_quat(QUAT *q, float r); get_rotation_quat(QUAT *q, float x, float y, float z); get_vector_rotation_quat(QUAT *q, float x, y, z, float a); quat_to_matrix(const QUAT *q, MATRIX_f *m); matrix_to_quat(const MATRIX_f *m, QUAT *q); quat_mul(const QUAT *p, const QUAT *q, QUAT *out); apply_quat(const QUAT *q, float x, y, z, *xout, *yout, *zout); quat_interpolate(const QUAT *from, const QUAT *to, float t, QUAT *out); quat_slerp(const QUAT *from, const QUAT *to, float t, QUAT *out, int how); d_clear_proc(int msg, DIALOG *d, int c); d_box_proc(int msg, DIALOG *d, int c); d_bitmap_proc(int msg, DIALOG *d, int c); d_text_proc(int msg, DIALOG *d, int c); d_rtext_proc(int msg, DIALOG *d, int c); d_button_proc(int msg, DIALOG *d, int c); d_check_proc(int msg, DIALOG *d, int c); d_radio_proc(int msg, DIALOG *d, int c); d_icon_proc(int msg, DIALOG *d, int c); d_keyboard_proc(int msg, DIALOG *d, int c); d_edit_proc(int msg, DIALOG *d, int c); d_list_proc(int msg, DIALOG *d, int c); d_text_list_proc(int msg, DIALOG *d, int c); d_textbox_proc(int msg, DIALOG *d, int c); d_slider_proc(int msg, DIALOG *d, int c); d_menu_proc(int msg, DIALOG *d, int c); d_yield_proc(int msg, DIALOG *d, int c); gui_textout_ex(BITMAP *bmp, const char *s, int x, y, color, bg, centre); gui_strlen(const char *s); gui_set_screen(BITMAP *bmp); gui_get_screen(void); position_dialog(DIALOG *dialog, int x, int y); centre_dialog(DIALOG *dialog); set_dialog_color(DIALOG *dialog, int fg, int bg); find_dialog_focus(DIALOG *dialog); offer_focus(DIALOG *dialog, int obj, int *focus_obj, int force); object_message(DIALOG *dialog, int msg, int c); dialog_message(DIALOG *dialog, int msg, int c, int *obj); broadcast_dialog_message(int msg, int c); do_dialog(DIALOG *dialog, int focus_obj); popup_dialog(DIALOG *dialog, int focus_obj); init_dialog(DIALOG *dialog, int focus_obj); update_dialog(DIALOG_PLAYER *player); shutdown_dialog(DIALOG_PLAYER *player); do_menu(MENU *menu, int x, int y); init_menu(MENU *menu, int x, int y); update_menu(MENU_PLAYER *player); shutdown_menu(MENU_PLAYER *player); alert(const char *s1, *s2, *s3, const char *b1, *b2, int c1, c2); alert3(const char *s1, *s2, *s3, const char *b1, *b2, *b3, int c1, c2, c3); file_select_ex(const char *message, char *path, const char *ext, int size, int w, int h); gfx_mode_select(int *card, int *w, int *h); gfx_mode_select_ex(int *card, int *w, int *h, int *color_depth); gfx_mode_select_filter(int *card, int *w, int *h, int *color_depth, int (*filter)(int, int, int, int)); win_get_window(void); win_set_window(HWND wnd); win_set_wnd_create_proc(HWND (*proc)(WNDPROC)); win_get_dc(BITMAP *bmp); win_release_dc(BITMAP *bmp, HDC dc); set_gdi_color_format(void); set_palette_to_hdc(HDC dc, PALETTE pal); convert_palette_to_hpalette(PALETTE pal); convert_hpalette_to_palette(HPALETTE hpal, PALETTE pal); convert_bitmap_to_hbitmap(BITMAP *bitmap); convert_hbitmap_to_bitmap(HBITMAP bitmap); draw_to_hdc(HDC dc, BITMAP *bitmap, int x, int y); blit_to_hdc(BITMAP *bitmap, HDC dc, int sx, sy, dx, dy, w, h); stretch_blit_to_hdc(BITMAP *bitmap, HDC dc, int sx, sy, sw, sh, int dx, dy, dw, dh); blit_from_hdc(HDC hdc, BITMAP *bitmap, int sx, sy, dx, dy, w, h); stretch_blit_from_hdc(HDC hcd, BITMAP *bitmap, int sx, sy, sw, sh, int dx, dy, dw, dh); xwin_set_window_name(const char *name, const char *group); qnx_get_window(void); ASSERT(condition); TRACE(char *msg, ...); register_assert_handler(int (*handler)(const char *msg)); register_trace_handler(int (*handler)(const char *msg)); al_assert(const char *file, int line); al_trace(const char *msg, ...);