В сообщении от 25 Октябрь 2005 14:09 Mikolaj Golub написал(a):
> >> PA> Думаешь, все 256Mb этой видеопамяти? ;) > MD> Будешь смеяться? А ты включи фрейм-буфер и попробуй поскроль :) Размер > MD> истории будет зависеть от след. параметров: > MD> - кол-во видеопамяти; > MD> - кол-во цветов; > MD> - разрешение. > MD> Теперь давай улыбнемся вместе :) > > Смотрим с интересом в video/console/fbcon.c: > > scrollback_phys_max = p->vrows - vc->vc_rows; > > p->vrows = info->var.yres_virtual/fh; > > Далее в video/vesafb.c: > > vesafb_defined.yres_virtual = vesafb_fix.smem_len / vesafb_fix.line_length; > > И наконец в vesafb_probe(): > > /* Allocate enough memory for double buffering */ > vesafb_fix.smem_len = screen_info.lfb_width * screen_info.lfb_height > * vesafb_defined.bits_per_pixel >> 2; > > /* check that we don't remap more memory than old cards have */ > if (vesafb_fix.smem_len > (screen_info.lfb_size * 65536)) > vesafb_fix.smem_len = screen_info.lfb_size * 65536; > > /* Set video size according to vram boot option */ > if (vram) > vesafb_fix.smem_len = vram * 1024 * 1024; > > vesafb_fix.visual = (vesafb_defined.bits_per_pixel == 8) ? > FB_VISUAL_PSEUDOCOLOR : FB_VISUAL_TRUECOLOR; > > /* limit framebuffer size to 16 MB. Otherwise we'll eat tons of > * kernel address space for nothing if the gfx card has alot of > * memory (>= 128 MB isn't uncommon these days ...) */ > if (vesafb_fix.smem_len > 16 * 1024 * 1024) > vesafb_fix.smem_len = 18 * 1024 * 1024; > > Т.е. для vesafb не более 16MB. Кстати и педаль для размера скроллбуфера > обнаружилась -- загрузочный параметр vram. Во-первых, это искусственное ограничение. Во-вторых, раньше его там не было, а я не смотрю с выходом каждой следующей версии ядра в исходники драйвера VESA. Ну, в-третьих, твоя взяла :) Кстати, а ты не обратил внимание, на последнюю строчку? Не означает ли она, что больше 18 Мб нельзя сделать в принципе? -- Макс -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

