Make non-SDL code indipendent from SDL, fix keyboard issues
[mercenary-reloaded.git] / src / libsdl / sdl.h
index 79a9cba..f44dc22 100644 (file)
@@ -1,6 +1,88 @@
-#include <SDL2/SDL.h>
 
-int init_sdl(const char *progname, int width, int height, int sound_samplerate, int sound_chunk, void (*keyboard)(int down, SDL_Keycode sym), void (*audio)(float *data, int len), int multisampling);
+enum keycode {
+       KEYCODE_UNDEFINED = 0,
+       KEYCODE_LCTRL,
+       KEYCODE_RCTRL,
+       KEYCODE_LSHIFT,
+       KEYCODE_RSHIFT,
+       KEYCODE_PAUSE,
+       KEYCODE_LEFT,
+       KEYCODE_RIGHT,
+       KEYCODE_UP,
+       KEYCODE_DOWN,
+       KEYCODE_END,
+       KEYCODE_a,
+       KEYCODE_b,
+       KEYCODE_c,
+       KEYCODE_d,
+       KEYCODE_e,
+       KEYCODE_f,
+       KEYCODE_g,
+       KEYCODE_h,
+       KEYCODE_i,
+       KEYCODE_j,
+       KEYCODE_k,
+       KEYCODE_l,
+       KEYCODE_m,
+       KEYCODE_n,
+       KEYCODE_o,
+       KEYCODE_p,
+       KEYCODE_q,
+       KEYCODE_r,
+       KEYCODE_s,
+       KEYCODE_t,
+       KEYCODE_u,
+       KEYCODE_v,
+       KEYCODE_w,
+       KEYCODE_x,
+       KEYCODE_y,
+       KEYCODE_z,
+       KEYCODE_0,
+       KEYCODE_1,
+       KEYCODE_2,
+       KEYCODE_3,
+       KEYCODE_4,
+       KEYCODE_5,
+       KEYCODE_6,
+       KEYCODE_7,
+       KEYCODE_8,
+       KEYCODE_9,
+       KEYCODE_KP_0,
+       KEYCODE_KP_1,
+       KEYCODE_KP_2,
+       KEYCODE_KP_3,
+       KEYCODE_KP_4,
+       KEYCODE_KP_5,
+       KEYCODE_KP_6,
+       KEYCODE_KP_7,
+       KEYCODE_KP_8,
+       KEYCODE_KP_9,
+       KEYCODE_KP_DIVIDE,
+       KEYCODE_KP_MULTIPLY,
+       KEYCODE_KP_MINUS,
+       KEYCODE_KP_PLUS,
+       KEYCODE_KP_PERIOD,
+       KEYCODE_F1,
+       KEYCODE_F2,
+       KEYCODE_F3,
+       KEYCODE_F4,
+       KEYCODE_F5,
+       KEYCODE_F6,
+       KEYCODE_F7,
+       KEYCODE_F8,
+       KEYCODE_F9,
+       KEYCODE_F10,
+       KEYCODE_SPACE,
+       KEYCODE_BACKSPACE,
+       KEYCODE_TAB,
+       KEYCODE_KP_ENTER,
+       KEYCODE_RETURN,
+       KEYCODE_ESCAPE,
+       KEYCODE_DELETE,
+       KEYCODE_INSERT,
+};
+
+int init_sdl(const char *progname, int width, int height, int sound_samplerate, int sound_chunk, void (*keyboard)(int down, enum keycode keycode), void (*audio)(float *data, int len), int multisampling);
 int event_sdl(void);
 void swap_sdl(void);
 void exit_sdl(void);