From owner-freebsd-questions Sun Nov 19 9:46:51 2000 Delivered-To: freebsd-questions@freebsd.org Received: from hyperbate.francenet.fr (hyperbate.francenet.fr [193.149.97.80]) by hub.freebsd.org (Postfix) with ESMTP id 6F75C37B479 for ; Sun, 19 Nov 2000 09:46:45 -0800 (PST) Received: from notbsdems.nantes.kisoft-services.com (pppA108.francenet.fr [193.149.100.18]) by hyperbate.francenet.fr (8.11.1/8.11.1) with ESMTP id eAJHkgT26562 for ; Sun, 19 Nov 2000 18:46:42 +0100 (MET) Received: by notbsdems.nantes.kisoft-services.com (Postfix, from userid 1001) id 82203E6921; Sun, 19 Nov 2000 18:42:17 +0100 (CET) To: Mailing List FreeBSD Questions Subject: vidcontrol & VESA_1024x768 From: Eric Masson Date: 19 Nov 2000 18:42:16 +0100 Message-ID: <86g0kn505j.fsf@notbsdems.nantes.kisoft-services.com> Lines: 23 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG --=-=-= Hello, I'm currently fighting with vidcontrol to make it support VESA_1024x768. My laptop, IBM TP 390 2626-700 reports the following with `vidcontrol -i mode` : --=-=-= Content-Disposition: attachment; filename=modes Content-Description: Output of vidcontrol -i mode mode# flags type size font window linear buffer ------------------------------------------------------------------------------ 0 (0x000) 0x00000001 T 40x25 8x8 0xb8000 32k 32k 0x00000000 32k 1 (0x001) 0x00000001 T 40x25 8x8 0xb8000 32k 32k 0x00000000 32k 2 (0x002) 0x00000001 T 80x25 8x8 0xb8000 32k 32k 0x00000000 32k 3 (0x003) 0x00000001 T 80x25 8x8 0xb8000 32k 32k 0x00000000 32k 4 (0x004) 0x00000003 G 320x200x2 1 8x8 0xb8000 32k 32k 0x00000000 32k 5 (0x005) 0x00000003 G 320x200x2 1 8x8 0xb8000 32k 32k 0x00000000 32k 6 (0x006) 0x00000003 G 640x200x1 1 8x8 0xb8000 32k 32k 0x00000000 32k 13 (0x00d) 0x00000003 G 320x200x4 4 8x8 0xa0000 64k 64k 0x00000000 256k 14 (0x00e) 0x00000003 G 640x200x4 4 8x8 0xa0000 64k 64k 0x00000000 256k 16 (0x010) 0x00000003 G 640x350x2 2 8x14 0xa0000 64k 64k 0x00000000 128k 18 (0x012) 0x00000003 G 640x350x4 4 8x14 0xa0000 64k 64k 0x00000000 256k 19 (0x013) 0x00000001 T 40x25 8x14 0xb8000 32k 32k 0x00000000 32k 20 (0x014) 0x00000001 T 40x25 8x14 0xb8000 32k 32k 0x00000000 32k 21 (0x015) 0x00000001 T 80x25 8x14 0xb8000 32k 32k 0x00000000 32k 22 (0x016) 0x00000001 T 80x25 8x14 0xb8000 32k 32k 0x00000000 32k 23 (0x017) 0x00000001 T 40x25 8x16 0xb8000 32k 32k 0x00000000 32k 24 (0x018) 0x00000001 T 80x25 8x16 0xb8000 32k 32k 0x00000000 32k 26 (0x01a) 0x00000003 G 640x480x4 4 8x16 0xa0000 64k 64k 0x00000000 256k 27 (0x01b) 0x00000003 G 640x480x4 4 8x16 0xa0000 64k 64k 0x00000000 256k 28 (0x01c) 0x00000003 G 320x200x8 1 8x8 0xa0000 64k 64k 0x00000000 64k 30 (0x01e) 0x00000001 T 80x50 8x8 0xb8000 32k 32k 0x00000000 32k 32 (0x020) 0x00000001 T 80x30 8x16 0xb8000 32k 32k 0x00000000 32k 34 (0x022) 0x00000001 T 80x60 8x8 0xb8000 32k 32k 0x00000000 32k 37 (0x025) 0x00000003 G 320x240x8 4 8x8 0xa0000 64k 64k 0x00000000 256k 112 (0x070) 0x00000000 T 80x43 8x8 0xb8000 32k 32k 0x00000000 32k 113 (0x071) 0x00000001 T 80x43 8x8 0xb8000 32k 32k 0x00000000 32k 256 (0x100) 0x0000000f G 640x400x8 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 257 (0x101) 0x0000000f G 640x480x8 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 258 (0x102) 0x0000000b G 800x600x4 4 8x16 0xa0000 64k 64k 0x00000000 2496k 259 (0x103) 0x0000000f G 800x600x8 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 260 (0x104) 0x0000000b G 1024x768x4 4 8x16 0xa0000 64k 64k 0x00000000 2496k 261 (0x105) 0x0000000f G 1024x768x8 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 263 (0x107) 0x0000000f G 1280x1024x8 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 269 (0x10d) 0x0000000f G 320x200x15 1 8x8 0xa0000 64k 64k 0xfd000000 2496k 270 (0x10e) 0x0000000f G 320x200x16 1 8x8 0xa0000 64k 64k 0xfd000000 2496k 272 (0x110) 0x0000000f G 640x480x15 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 273 (0x111) 0x0000000f G 640x480x16 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 274 (0x112) 0x0000000f G 640x480x24 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 275 (0x113) 0x0000000f G 800x600x15 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 276 (0x114) 0x0000000f G 800x600x16 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 277 (0x115) 0x0000000f G 800x600x24 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 278 (0x116) 0x0000000f G 1024x768x15 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 279 (0x117) 0x0000000f G 1024x768x16 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 280 (0x118) 0x0000000f G 1024x768x24 1 8x16 0xa0000 64k 64k 0xfd000000 2496k 288 (0x120) 0x0000000f G 320x240x8 1 8x8 0xa0000 64k 64k 0xfd000000 2496k 289 (0x121) 0x0000000f G 320x240x16 1 8x8 0xa0000 64k 64k 0xfd000000 2496k 290 (0x122) 0x0000000f G 400x300x8 1 8x8 0xa0000 64k 64k 0xfd000000 2496k 291 (0x123) 0x0000000f G 400x300x16 1 8x8 0xa0000 64k 64k 0xfd000000 2496k 292 (0x124) 0x0000000f G 512x384x8 1 8x8 0xa0000 64k 64k 0xfd000000 2496k 293 (0x125) 0x0000000f G 512x384x16 1 8x8 0xa0000 64k 64k 0xfd000000 2496k --=-=-= I've modified vidcontrol.c to add VESA_1024x768 in the following way --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=vidcontrol.c.diff Content-Description: Patch to vidcontrol.c *** vidcontrol.c.orig Sun Nov 19 16:16:58 2000 --- vidcontrol.c Sun Nov 19 16:19:15 2000 *************** *** 295,300 **** --- 295,301 ---- { "VESA_132x50", SW_VESA_C132x50 }, { "VESA_132x60", SW_VESA_C132x60 }, { "VESA_800x600", SW_VESA_800x600 }, + { "VESA_1024x768", SW_VESA_1024x768 }, { NULL }, }; unsigned long mode = 0; *************** *** 317,324 **** if (ioctl(0, mode, NULL) < 0) warn("cannot set videomode"); if (mode == SW_VESA_800x600) { ! size[0] = 80; /* columns */ ! size[1] = 25; /* rows */ size[2] = 16; /* font size */ if (ioctl(0, KDRASTER, size)) { ioerr = errno; --- 318,338 ---- if (ioctl(0, mode, NULL) < 0) warn("cannot set videomode"); if (mode == SW_VESA_800x600) { ! size[0] = 100; /* columns */ ! size[1] = 37; /* rows */ ! size[2] = 16; /* font size */ ! if (ioctl(0, KDRASTER, size)) { ! ioerr = errno; ! if (cur_mode >= M_VESA_BASE) ! ioctl(0, _IO('V', cur_mode), NULL); ! else ! ioctl(0, _IO('S', cur_mode), NULL); ! warnc(ioerr, "cannot activate raster display"); ! } ! } ! if (mode == SW_VESA_1024x768) { ! size[0] = 128; /* columns */ ! size[1] = 48; /* rows */ size[2] = 16; /* font size */ if (ioctl(0, KDRASTER, size)) { ioerr = errno; --=-=-= When I issue `vidcontrol VESA_1024x768`, the screen goes black (no display at all), I can switch back to normal operation by `vidcontrol VESA_800x600`. Any clues about this ? TIA Eric Masson -- Progress (n) : What led from smart users in front of dumb terminals to dumb users in front of smart terminals. --=-=-=-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message