vgabios: Add support for vbe get/set line length function.
[seabios.git] / vgasrc / bochsvga.h
index f0263d71cab86465a7ff9f434af2f5bd6308ee20..b6abf0a1d5f24c433d620ee410324631fb7362e6 100644 (file)
@@ -2,7 +2,7 @@
 #define __BOCHSVGA_H
 
 #include "types.h" // u8
-#include "ioport.h" // outb
+#include "ioport.h" // outw
 
 #define VBE_DISPI_BANK_ADDRESS           0xA0000
 #define VBE_DISPI_BANK_SIZE_KB           64
@@ -52,16 +52,13 @@ static inline void dispi_write(u16 reg, u16 val)
     outw(val, VBE_DISPI_IOPORT_DATA);
 }
 
-int bochsvga_init(u8 bus, u8 devfn);
-int bochsvga_enabled(void);
-u16 bochsvga_total_mem(void);
-int bochsvga_list_modes(u16 seg, u16 ptr);
-struct vbe_modeinfo;
-int bochsvga_mode_info(u16 mode, struct vbe_modeinfo *info);
-void bochsvga_hires_enable(int enable);
-void bochsvga_set_mode(u16 mode, struct vbe_modeinfo *info);
-void bochsvga_clear_scr(void);
-int bochsvga_hires_enabled(void);
-u16 bochsvga_curr_mode(void);
+int bochsvga_init(void);
+void bochsvga_list_modes(u16 seg, u16 *dest, u16 *last);
+struct vgamode_s *bochsvga_find_mode(int mode);
+int bochsvga_get_window(struct vgamode_s *vmode_g, int window);
+int bochsvga_set_window(struct vgamode_s *vmode_g, int window, int val);
+int bochsvga_get_linelength(struct vgamode_s *vmode_g);
+int bochsvga_set_linelength(struct vgamode_s *vmode_g, int val);
+int bochsvga_set_mode(struct vgamode_s *vmode_g, int flags);
 
 #endif // bochsvga.h