DEADSOFTWARE

menu: change videomode at runtime
[flatwaifu.git] / src / system.h
index 445de10cf7cbb1a8bc48bff24c0906a9b696f54c..0de8d42ef9e216cb22c6d87f371dd5b5361b49a3 100644 (file)
@@ -3,11 +3,16 @@
 
 #include "glob.h"
 
-#define SYSTEM_USE_OPENGL (1 << 0)
-#define SYSTEM_USE_FULLSCREEN (1 << 1)
+typedef struct videomode_size_t {
+  int w, h, r;
+} videomode_size_t;
+
+typedef struct videomode_t {
+  int n;
+  videomode_size_t *modes;
+} videomode_t;
 
 /* common video subsystem routines */
-int Y_set_videomode (int w, int h, int flags);
 void Y_get_videomode (int *w, int *h);
 int Y_videomode_setted (void);
 void Y_unset_videomode (void);
@@ -15,12 +20,20 @@ void Y_set_fullscreen (int yes);
 int Y_get_fullscreen (void);
 
 /* hardware specific rendering */
+int Y_set_videomode_opengl (int w, int h, int fullscreen);
+const videomode_t *Y_get_videomode_list_opengl (int fullscreen);
 void Y_swap_buffers (void);
 
 /* software specific rendering */
+int Y_set_videomode_software (int w, int h, int fullscreen);
+const videomode_t *Y_get_videomode_list_software (int fullscreen);
 void Y_get_buffer (byte **buf, int *w, int *h, int *pitch);
 void Y_set_vga_palette (byte *vgapal);
 void Y_repaint_rect (int x, int y, int w, int h);
 void Y_repaint (void);
 
-#endif /* SYSTEM_H_INCLUDED */
\ No newline at end of file
+/* input */
+void Y_enable_text_input (void);
+void Y_disable_text_input (void);
+
+#endif /* SYSTEM_H_INCLUDED */