Old VESA and libvgl stuff

I'm doing a hobby project and running into a wall with emulated or virtualized archival versions of i386. I cannot get libvgl init anyhow.

Emulated means Bochs, pcem, 86box. The latter is especially accented towards precision and it can run DOS SVGA demos meaning the entire hardware emulation is correct. This class of software emulates everything including the hardware using original ROM images.

VM is HyperV but I can also try VMWare if need be. I'm not sure on what's the VESA support on these but I used them anyway for reference.
VGLInit() fails at

Code:
  if (ioctl(0, CONS_MODEINFO, &VGLModeInfo))    /* FBIO_MODEINFO */
    return -1;

Vidcontrol on 4.11 and 5.5 doesn't switch modes. E.g vidcontrol MODE_274 just spits back the usage hints. vidcontrol VESA_800x600 does actually change the mode as I can observe the emulation window size changing for a split second, but then exits back with "cannot activate raster display, inappropriate ioctl() for the device". On 8.2 on HyperV vidcontrol modechange via MODE_ actually works but libvgl doesn't.

I guess what I want to ask is if somebody remembers hardware platform problems for VESA+libvgl for non-newcons i386 FreeBSDs and did anyone run it under VM or emu?
 
The older versions (4.11 and 5.5) didn't have options VESA in GENERIC, you had to compile a custom kernel for it.

Code:
# To include support for VESA video modes
options 	VESA
See LINT
 
Thanks for moving.

Of course, vesa module is in kernel. vidcontrol -i mode shows all those modes. On the other hand libvgl isn't tied to vesa at all.
 
I can't help much on this topic. My 2c: use perror() to get additional information why it fails ( ioctl does set errno ).
 
Back
Top