vesa/vga doesn't seem to be compiled or provided, making vidcontrol unusable? (needed to sort out console font)
- I need to set a different font style on the console for someone with visual disabilities (different font size/display colour scheme). This should be easy with
- Unfortunately vidcontrol gives blank output, apparently because the drivers it needs don't seem to be either compiled in or provided for manual
kldload@ing, according to @kldstat -v
I'm not sure which exactly are the relevant drivers - I think it's vesa/vga, but maybe in some cases nvidia/i915 or another driver might be needed on-board for configuring /dev/console style.
Can the necessary drivers be added to the build if not there, and anything else
viodcontrol needs, so that this will work in those cases where it's needed.
#4 Updated by Benno Rice over 2 years ago
- Status changed from Not Started to Blocked
- Reason for Blocked set to Waiting for feedback
Actually, another question: Are you booting using BIOS? If your console's using the VGA adapter and it's in text mode then that could be the issue:
freenas# dmesg|grep VT VT(vga): text 80x25 vtvga0: <VT VGA driver> on motherboard freenas# vidcontrol -f terminus-b32 vidcontrol: PIO_VFONT: Operation not supported
If I edit /boot/loader.conf to include:
and then reboot I get the following:
freenas# dmesg|grep VT VT(vga): resolution 640x480 vtvga0: <VT VGA driver> on motherboard freenas# vidcontrol -f vgarom-thin-8x16 freenas#
And it all works as expected. I believe that booting under UEFI rather than under BIOS will get you a similar result.
If this works out then I can discuss with my colleagues if it's worth adding a toggle for this option somewhere.
#5 Updated by Stilez y over 2 years ago
Thanks, I'm still figuring out a few things and can't reboot to test loader values for a while (I'll update if that solves anything). Crossref also feature #30663 (re vga drivers).
1) Relevant output in dmesg
VT(efifb): resolution 800x600 vgapci0: <VGA-compatible display> port 0xc000-0xc07f mem 0xf9000000-0xf9ffffff,0xfa000000-0xfa01ffff irq 18 at device 0.0 on pci8 vgapci0: Boot video device
2) vidcontrol query output empty:
# vidcontrol -i mode < /dev/console mode# flags type size font window linear buffer ------------------------------------------------------------------------------
3) Reading online, I wonder if *NAS changed from sc to vt around v.10? If so, what is a quick way to check available boot console modes/change modes nowadays (any simple command will do, just to check things are in order)? If the commands have changed since 9.x, how do I change console size for the user with a visual disability who needs a different font size?
4) Can console font/size be added as an option in the GUI to make *NAS console more accessible for a user with a visual disability, so they don't need to use console to fix console?
#9 Updated by Alexander Motin over 2 years ago
- Status changed from Unscreened to Screened
- Severity changed from New to Low
According to the provided piece of the dmesg, you have EFI graphical console with 800x600 resolution. IIRC you can not change that resolution from the OS. That is probably why you don't see a list of modes form vidcontrol. On the other side it may be possible to change it from the loader though, at least from bsdloader of 11.2, I've never did that with GRUB used in 11.1. Alternative way would be to use kernel mode setting drivers, which are indeed not included into FreeNAS.
What I'd suppose should work in your case is a font size change. FreeNAS includes fonts for sizes: 8x8, 8x14, 8x16 and 16x32. You may try to load them with `vidcontrol -f` command Benno proposed above. Have you tried to do that?
I haven't tested, but I'd suppose that setting rc.conf variable allscreens_flags="-f vgarom-16x32.fnt" via WebUI should give you quite a large fonts (may be actually too large, since text resolution after that will be only 50x18, less then traditional VGA. Let us know whether it work for you.