+#include "vgatables.h"
+#include "vbe.h"
+
+struct mode
+{
+ u16 mode;
+ u16 width;
+ u16 height;
+ u8 depth;
+} vbe_modes[] VAR16 = {
+ /* standard modes */
+ { 0x100, 640, 400, 8 },
+ { 0x101, 640, 480, 8 },
+ { 0x102, 800, 600, 4 },
+ { 0x103, 800, 600, 8 },
+ { 0x104, 1024, 768, 4 },
+ { 0x105, 1024, 768, 8 },
+ { 0x106, 1280, 1024, 4 },
+ { 0x107, 1280, 1024, 8 },
+ { 0x10D, 320, 200, 15 },
+ { 0x10E, 320, 200, 16 },
+ { 0x10F, 320, 200, 24 },
+ { 0x110, 640, 480, 15 },
+ { 0x111, 640, 480, 16 },
+ { 0x112, 640, 480, 24 },
+ { 0x113, 800, 600, 15 },
+ { 0x114, 800, 600, 16 },
+ { 0x115, 800, 600, 24 },
+ { 0x116, 1024, 768, 15 },
+ { 0x117, 1024, 768, 16 },
+ { 0x118, 1024, 768, 24 },
+ { 0x119, 1280, 1024, 15 },
+ { 0x11A, 1280, 1024, 16 },
+ { 0x11B, 1280, 1024, 24 },
+ { 0x11C, 1600, 1200, 8 },
+ { 0x11D, 1600, 1200, 15 },
+ { 0x11E, 1600, 1200, 16 },
+ { 0x11F, 1600, 1200, 24 },
+ /* BOCHS modes */
+ { 0x140, 320, 200, 32 },
+ { 0x141, 640, 400, 32 },
+ { 0x142, 640, 480, 32 },
+ { 0x143, 800, 600, 32 },
+ { 0x144, 1024, 768, 32 },
+ { 0x145, 1280, 1024, 32 },
+ { 0x146, 320, 200, 8 },
+ { 0x147, 1600, 1200, 32 },
+ { 0x148, 1152, 864, 8 },
+ { 0x149, 1152, 864, 15 },
+ { 0x14a, 1152, 864, 16 },
+ { 0x14b, 1152, 864, 24 },
+ { 0x14c, 1152, 864, 32 },
+ { 0x178, 1280, 800, 16 },
+ { 0x179, 1280, 800, 24 },
+ { 0x17a, 1280, 800, 32 },
+ { 0x17b, 1280, 960, 16 },
+ { 0x17c, 1280, 960, 24 },
+ { 0x17d, 1280, 960, 32 },
+ { 0x17e, 1440, 900, 16 },
+ { 0x17f, 1440, 900, 24 },
+ { 0x180, 1440, 900, 32 },
+ { 0x181, 1400, 1050, 16 },
+ { 0x182, 1400, 1050, 24 },
+ { 0x183, 1400, 1050, 32 },
+ { 0x184, 1680, 1050, 16 },
+ { 0x185, 1680, 1050, 24 },
+ { 0x186, 1680, 1050, 32 },
+ { 0x187, 1920, 1200, 16 },
+ { 0x188, 1920, 1200, 24 },
+ { 0x189, 1920, 1200, 32 },
+ { 0x18a, 2560, 1600, 16 },
+ { 0x18b, 2560, 1600, 24 },
+ { 0x18c, 2560, 1600, 32 },
+ { 0, },
+};
+
+/* Called only during POST */
+int
+vbe_init(u8 bus, u8 devfn)
+{
+ return -1;
+}
+
+int
+vbe_enabled(void)
+{
+ return 0;
+}
+
+u16
+vbe_total_mem(void)
+{
+ return 0;
+}
+
+int
+vbe_list_modes(u16 seg, u16 ptr)
+{
+ int count = 0;
+ u16 *dest = (u16 *)(u32)ptr;
+
+ SET_FARVAR(seg, dest[count], 0xffff); /* End of list */
+
+ return count;
+}
+
+int
+vbe_mode_info(u16 mode, struct vbe_modeinfo *info)
+{
+ return -1;
+}
+
+void
+vbe_hires_enable(int enable)
+{
+
+}
+
+void
+vbe_set_mode(u16 mode, struct vbe_modeinfo *info)
+{
+
+}
+
+void
+vbe_clear_scr(void)
+{
+
+}
+
+int
+vbe_hires_enabled(void)
+{
+ return 0;
+}
+
+u16
+vbe_curr_mode(void)
+{
+ return 0;
+}
+