rnd-20040821-3-src
[rocksndiamonds.git] / src / game_em / global.h
1 #ifndef GLOBAL_H
2 #define GLOBAL_H
3
4 #include "../libgame/libgame.h"
5
6 #define EM_GFX_DIR      "graphics.EM"
7 #define EM_SND_DIR      "sounds.EM"
8 #define EM_LVL_DIR      "levels.EM"
9
10 #define MAXNAME 1024 /* arbitrary maximum length of filenames (cos i am lazy) */
11 extern void snprintf_overflow(char *);
12
13 extern int debug;
14 extern char *progname;
15 extern char *arg_basedir;
16 extern char *arg_display;
17 extern char *arg_geometry;
18 extern int arg_install;
19 extern int arg_silence;
20
21 extern unsigned int frame;
22
23 #define EM_GAME_STATUS_MENU     1
24 #define EM_GAME_STATUS_PLAY     2
25
26 extern int em_game_status;
27
28 extern short ulaw_to_linear[256];
29 extern unsigned char linear_to_ulaw[65536];
30
31 /* all global function prototypes */
32
33 int open_all(void);
34 void close_all(void);
35
36 void readjoy(byte);
37 void input_eventloop(void);
38
39 void blitscreen(void);
40 void game_initscreen(void);
41 void game_blitscore(void);
42 void game_animscreen(void);
43 void title_initscreen(void);
44 void title_blitscore(void);
45 void title_animscreen(void);
46 void title_blitants(unsigned int y);
47 void title_string(unsigned int y, unsigned int left, unsigned int right, char *string);
48
49 void sound_play(void);
50
51 int cave_convert(char *filename);
52
53 void game_init_vars(void);
54 int game_loop(byte);
55
56 void synchro_1(void);
57 void synchro_2(void);
58 void synchro_3(void);
59
60 int clean_emerald(unsigned char *src, unsigned long *length);
61 void convert_emerald(unsigned char *src);
62
63 int sound_thread(void);
64 int read_sample(char *name, short **data, long *length);
65
66 void read_cave_list(void);
67 void free_cave_list(void);
68
69 #endif