Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Dmitry Rud                           2:5020/400     13 Sep 2000  22:14:14
 To : Ilya Naumov
 Subject : Re: VESA text modes & more
 -------------------------------------------------------------------------------- 
 
         Hi!
 
 Ilya Naumov <Ilya.Naumov@p15.f1930.n5020.z2.fidonet.org> writes:
 
 >  DR> Hе знаю как в FreeBSD 4, а в тройке нужно еще 'options "VM86"'...
 > нет такой буквы в 4.x и выше. не путай человека. =)
 
 Я не путаю, я специально про номер версии оговорился ;)
 
 >  DR> Есть тут у меня некий патч от Mike E. Matsnev, который устанавливает
 >  DR> развёртку 98 Hz и, опционально, режим 100х37 символов (патч маленький,
 >  DR> меньше 2К; насколько я помню, он в начале августа по этой эхе
 >  DR> пролетал)...  Hужно?
 > 
 > а чего.. кидай..
 
 >>>> === freebsd-console-vesa-100x37-800x600-100Hz.patch ===
 
 This patch changes the refresh rate of the VESA 800x600x4 mode to 98Hz, should
 hopefully work on all cards with VESA bios. Remember, the 60Hz refresh rate
 no longer works. The second part changes the default width and height of
 the SC_PIXEL_MODE in vidcontrol to 100x37 from 80x25 (dunno why they
 use 80x25 anyway, when the hardware is set to a much better mode, the small
 active rectangle in the middle of the screen looks really ugly).
 
 Mike E. Matsnev
 
 - --- src,orig/sys/i386/isa/vesa.c Sat Jan 29 18:08:40 2000
 +++ src/sys/i386/isa/vesa.c   Thu Mar 16 11:44:31 2000
 @@ -1016,7 +1016,25 @@
    if (!(info.vi_flags & V_INFO_GRAPHICS))
       info.vi_flags &= ~V_INFO_LINEAR;
  
 -  if (vesa_bios_set_mode(mode | ((info.vi_flags & V_INFO_LINEAR) ? 0x4000 :
 0)))
 +  if (mode == M_VESA_800x600) { /* XXX ignores V_INFO_LINEAR */
 +    unsigned char crtc[0x19];
 +    unsigned char reg;
 +    if (vesa_bios_set_mode(mode))
 +      return 1;
 +    for (reg=0;reg<0x19;++reg) {
 +      outb(0x3d4,reg);
 +      crtc[reg]=inb(0x3d5);
 +    }
 +    if (!vesa_bios_set_mode(M_VESA_1024x768)) {
 +      outb(0x3d4,0x11);
 +      outb(0x3d5,crtc[0x11]&0x7f);
 +      for (reg=0;reg<0x19;++reg) {
 +        outb(0x3d4,reg);
 +        outb(0x3d5,crtc[reg]);
 +      }
 +    }
 +  } else
 +    if (vesa_bios_set_mode(mode | ((info.vi_flags & V_INFO_LINEAR) ? 0x4000 :
 0)))
       return 1;
  
    if (adp->va_info.vi_flags & V_INFO_LINEAR)
 
 - --- src,orig/usr.sbin/vidcontrol/vidcontrol.c   Wed Jan 12 15:30:33 2000
 +++ src/usr.sbin/vidcontrol/vidcontrol.c  Thu Mar 16 11:51:48 2000
 @@ -317,8 +317,11 @@
       if (ioctl(0, mode, NULL) < 0)
        warn("cannot set videomode");
       if (mode == SW_VESA_800x600) {
 -      size[0] = 80;  /* columns */
 -      size[1] = 25;  /* rows */
 +      /* changed by Mike */
 +      size[0] = 100;  /* columns */
 +      size[1] = 37;  /* rows */
 +      /*size[0] = 80;*/  /* columns */
 +      /*size[1] = 25;*/  /* rows */
        size[2] = 16;  /* font size */
        if (ioctl(0, KDRASTER, size)) {
           ioerr = errno;
 
 >>>> ========
 
 -- 
   rnd.
 --- ifmail v.2.15dev5
  * Origin: Glaub' an die Macht des Efeuwaldes... (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 VESA text modes & more   Anthon Troshin   10 Sep 2000 23:00:50 
 Re: VESA text modes & more   Boris Aksyonov   11 Sep 2000 01:19:39 
 VESA text modes & more   Ilya Naumov   13 Sep 2000 14:27:06 
 Re: VESA text modes & more   Dmitry Rud   13 Sep 2000 16:53:44 
 VESA text modes & more   Ilya Naumov   13 Sep 2000 17:35:16 
 Re: VESA text modes & more   Dmitry Rud   13 Sep 2000 22:14:14 
 VESA text modes & more   Anthon Troshin   14 Sep 2000 09:57:20 
Архивное /ru.unix.bsd/8974f5a5d285.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional