Index: kernel/arch/ia32/src/boot/vesa_real.inc
===================================================================
--- kernel/arch/ia32/src/boot/vesa_real.inc	(revision adfdbd51f9cd406c1bbdfba5c7e33ab7300f0398)
+++ kernel/arch/ia32/src/boot/vesa_real.inc	(revision c427578bcf728e54b3faa5b793644ab0bd01f2b0)
@@ -154,4 +154,13 @@
 	mov $e_vesa_init - vesa_init, %di
 	push %di
+	/* Write "VBE2" signature to info structure in order to get
+	 * proper mode information. The presence of "VBE2" indicates two
+	 * things:
+	 *  - VBE controller information structure is 512 bytes long
+	 *    instead of 256
+	 *  - The BIOS reports VBE 3.0 information (including non-standard
+	 *    modes in mode list)
+	 */
+	movl $0x32454256, (%di)
 	int $0x10
 	
