OS2 World Community Forum
OS/2, eCS & ArcaOS - Technical => Virtualization => Topic started by: Martin Iturbide on February 07, 2025, 03:48:15 am
-
Hello
Currently my Win-OS2 full screen session (1920x1080) has a "slow-choppy" mouse and you can not move the mouse pointer down from the middle of the screen. (ArcaOS 5.1 BIOS running on a VirtualBox host. )
On the "OS/2, EComStation & ArcaOS Discussion group" facebook page, it was posted something about this new video driver for Windows 3.1:
- https://github.com/PluMGMK/vbesvga.drv?tab=readme-ov-file
It has some instructions on how to install it, but if I follow the procedure and it gives me an error when I load Windows 3.1.
Unsuitable settings for current driver / hardware
Press any key to about booting Windows...
If I only remove from the modified system.ini all the [VBESVGA.DRV] part...
[VBESVGA.DRV]
PMIDcheck=sanity
Width=1920
Height=1080
Depth=16
DoubleBufRefreshRate=75
...Win-OS2 full screen runs with the newer vbesvga.drv and vddvbe.386. But the screen resolution is smaller (1024 × 768), mouse now works fine and I can go to the bottom part of the screen with the pointer.
Do you think this drivers can be useful for our Win-OS2? Can we benefit in some way from this driver? Any other suggestion on how to make this drivers work at 1920x1080?
Regards
-
I would set PMIDCheck = disable and DoubleBufRefreshRate = 0.
In particular for PMIDCheck I doubt that the direct protected mode interface would be properly supported in Virtualbox.
If you disable it, the driver will use real mode int x calls which I would expect to work ok.
For the double buffering, start without and later you could try a sensible refresh rate where for a Virtual machine you might get by with a lower rate.
-
Thanks for the feedback Lars.
I tried:
[VBESVGA.DRV]
PMIDcheck=disable
Width=1920
Height=1080
Depth=16
DoubleBufRefreshRate=0
and I get the same error while loading Win-OS2 Full Screen.
I played with DoubleBufRefreshRate=20 and other and got the same results.
If I set it.
[VBESVGA.DRV]
PMIDcheck=sanity
Width=800
Height=600
Depth=16
DoubleBufRefreshRate=75
It loads in 800x600, 1024 also works.
Regards
-
It might be a virtualbox BIOS emulation issue in that it does not report your desired screen size as being available.
I remember that there was a Virtualbox manager command to add a custom screen size but I forgot what it was.
-
https://superuser.com/questions/443445/how-can-i-get-virtualbox-to-run-at-1366x768
-
Hi
This VM already has "1920x1080" resolution with the vboxmanage command line. The ArcaOS desktop is already on that resolution.
- VBoxManage.exe setextradata "ArcaOS 5.1" "CustomVideoMode1" "1920x1080x32"
Regards
-
Hello
Currently my Win-OS2 full screen session (1920x1080) has a "slow-choppy" mouse and you can not move the mouse pointer down from the middle of the screen. (ArcaOS 5.1 BIOS running on a VirtualBox host. )
On the "OS/2, EComStation & ArcaOS Discussion group" facebook page, it was posted something about this new video driver for Windows 3.1:
- https://github.com/PluMGMK/vbesvga.drv?tab=readme-ov-file
It has some instructions on how to install it, but if I follow the procedure and it gives me an error when I load Windows 3.1.
Unsuitable settings for current driver / hardware
Press any key to about booting Windows...
If I only remove from the modified system.ini all the [VBESVGA.DRV] part...
[VBESVGA.DRV]
PMIDcheck=sanity
Width=1920
Height=1080
Depth=16
DoubleBufRefreshRate=75
...Win-OS2 full screen runs with the newer vbesvga.drv and vddvbe.386. But the screen resolution is smaller (1024 × 768), mouse now works fine and I can go to the bottom part of the screen with the pointer.
Do you think this drivers can be useful for our Win-OS2? Can we benefit in some way from this driver? Any other suggestion on how to make this drivers work at 1920x1080?
Regards
I am not certain but I think what is being overlooked is that the WIN/OS2 driver uses I think a special GRADD driver that deals with the WIN/OS2 screen resolution. I think this bypasses the normal DOS video support. This alternative Windows 3.1 video driver looks nice. However you might be out of luck with this driver as I think (based on the file name) this is a VESA driver. And this alternative Windows 3.1 driver then depends on the VESA bios in the DOS session.
But I could be wrng.
Roderick
-
Hello.
Running this driver at "1024 × 768" in Win-OS/2, I found an extra random problem, when I drag some windows like the Control Panel. Some lines render in the screen and it shows an error.
I contacted the author, just to let him know that there is some kind of interest for Win-OS/2 and let him know that.
- https://github.com/PluMGMK/vbesvga.drv/issues/34
Remember that I just testing this to see if it can be of some use to us. It is just an experiment.
Regards
-
Hello
Currently my Win-OS2 full screen session (1920x1080) has a "slow-choppy" mouse and you can not move the mouse pointer down from the middle of the screen. (ArcaOS 5.1 BIOS running on a VirtualBox host. )
Hello again.
The author of "vbesvga.drv and vddvbe.386" wrote me back since he made some new releases of the driver, so I tried it all over again.
My issues of a Win-OS2 Full Screen session (1920x1080) with "slow-choppy mouse" and "middle screen limitation" are now gone. If someone on ArcaOS 5.1.1 (BIOS) (On VirtualBox host) experience that I would like you to try this driver and provide feedback.
The instruccions that I follow was:
- Download 0.6.0 versions of "vbesvga.drv and vddvbe.386" - https://github.com/PluMGMK/vbesvga.drv/releases
- Follow the install instrucions:
The following changes are needed to your C:\WINDOWS\SYSTEM.INI file:
- In the [boot] section, change the display.drv= line to point to vbesvga.drv. You should specify the full path, or else copy the file to C:\WINDOWS\SYSTEM. (Note that if the path is too long, it can cause the CodeView debugger to crash on startup!)
- In the [386Enh] section, change the display= line to point to vddvbe.386. Again, you should specify the full path, or else copy the file to C:\WINDOWS\SYSTEM.
- Added the following on SYSTEM.INI
[VBESVGA.DRV]
Width=1920
Height=1080
Depth=24
Remember that on SYSTEM.INI the comments the semicolon ( ; ) in case you want to revert things.
Here it is my System.INI
[boot]
useos2shield=1
os2shield=winsheld.exe
shell=progman.exe
mouse.drv=mouse.drv
network.drv=
language.dll=langeng.dll
comm.drv=comm.drv
keyboard.drv=keyboard.drv
system.drv=atmsys.drv
;386grabber=vga.3gr
;286grabber=vgacolor.2gr
drivers=mmsystem.dll
WAVDMAPPS=
atm.system.drv=system.drv
;display.drv=ifgdi2vm.drv
display.drv=vbesvga.drv
sdisplay.drv=isgdi2vm.drv
fonts.fon=vgasys.fon
fixedfon.fon=vgafix.fon
oemfonts.fon=vgaoem.fon
os2user=user.exe
os2gdi.exe=GDI.EXE
os2user.exe=user.exe
[keyboard]
subtype=
type=4
keyboard.dll=kbdla.dll
oemansi.bin=
typeofswitch=2
secondkeyb.dll=kbdusx.dll
[boot.description]
keyboard.typ=Enhanced 101 or 102 key US and Non US keyboards
mouse.drv=Microsoft, or IBM PS/2
network.drv=No Network Installed
language.dll=English (American)
system.drv=MS-DOS System
codepage=437
woafont.fon=English (437)
aspect=100,96,96
display.drv=Full Screen GDI 2 VMAN
sdisplay.drv=Seamless GDI 2 VMAN
[386Enh]
mouse=*vmd
network=*dosnet,*vnetbios
ebios=*ebios
woafont=dosapp.fon
;display=*vddvga
display=vddvbe.386
EGA80WOA.FON=EGA80WOA.FON
EGA40WOA.FON=EGA40WOA.FON
CGA80WOA.FON=CGA80WOA.FON
CGA40WOA.FON=CGA40WOA.FON
keyboard=*vkd
device=vtdapi.386
device=*vpicd
device=*vtd
device=*reboot
device=*vdmad
device=*vsd
device=*v86mmgr
device=*pageswap
device=*dosmgr
device=*vmpoll
device=*wshell
device=*BLOCKDEV
device=*PAGEFILE
device=*vfd
device=*parity
device=*biosxlat
device=*vcd
device=*vmcpd
device=*combuff
device=*cdpscsi
local=CON
FileSysChange=off
PagingFile=D:\WIN386.SWP
MaxPagingFileSize=20480
[standard]
[NonWindowsApp]
localtsrs=dosedit,ced
[mci]
WaveAudio=mciwave.drv
Sequencer=mciseq.drv
CDAudio=mcicda.drv
[drivers]
timer=timer.drv
midimapper=midimap.drv
[Desktop]
IconSpacing=75
[VBESVGA.DRV]
Width=1920
Height=1080
Depth=24
Please let me know any issues or feedback.
Regards
-
Hey Martin!
Wow! It really works! I tried it with my new 2560x1080 monitor in full screen WinOS2 on VirtualBox (which showed the jumpy mouse and can't get to bottom problem) and everything is normal! This thing needs to become part of ArcaOS I think...
Regards,
-
Hi
This thing needs to become part of ArcaOS I think...
I also think the same thing. I'm very happy to finally know that I can use the Win-OS2 full screen sessions :)
Regards
-
Hello
The author just released version 0.6.2.
- https://github.com/PluMGMK/vbesvga.drv/releases
I will check it out.
Regards
-
The author just released version 0.6.2.
- https://github.com/PluMGMK/vbesvga.drv/releases
It also works.
-
Oh, it works here, too!
Edit: Here is DBCS, Korean.
-
One thing I just noticed: on my 2560x1080 monitor the mouse pointer will not go all the way to the right side of the screen - it stops about 150 pixels from the edge. So any maximized window I have to move it to the left to get to the min/max arrows. Anyone else seeing this? I made a comment on the OS/2 thread at the developer's github site...
Regards,
-
Testing on real hardware, it did seem more snappy. Didn't fix my issue of full screen WinOS2 sessions hanging when closed.
-
I just installed these drivers on a bare metal EFI system and they don't seem to work (session doesn't start). Anyone else gotten them to work on EFI?
Regards,
-
Hello
Just in case the author released an updated yesterday, v0.7.2 (2025-06-20).
- https://github.com/PluMGMK/vbesvga.drv/releases
In my ArcaOS 5.1.1. VM (as VirtualBox Guest) it keeps working fine at 1920x1080.
I have pending to try it on EFI and BIOS hardware.
Regards
-
Hello
I just tested it today in my T14s (UEFI).
Win-OS2 runs fine with the default ifgdi2vm.drv, but the mouse clicking is choppy. I have to click two or three times to get it. I can notice the difference with Win-OS2 windowed mode.
The moment that I change:
driver.drv=ifgdi2vm.drv
for
driver.drv=vbesvga.drv
It hangs the desktop when I run Win-OS2 Full screen. I got to use TOP to kill the session. (I guess this is exactly what David reports)
In my case is not working with UEFI.
Regards
-
Thanks Martin. I don't get a hang, it just doesn't even seem to do anything.
One thing I noticed I hadn't before - there are new WinOS2 settings for VEFI. Looks like they are probably mostly DOS oriented, but not clear...
Regards,
-
Thanks Martin. I don't get a hang, it just doesn't even seem to do anything.
One thing I noticed I hadn't before - there are new WinOS2 settings for VEFI. Looks like they are probably mostly DOS oriented, but not clear...
Regards,
These settings do not influence WIN/OS2.
Roderick
-
Hi Roderick,
Would you have any insight into why this driver doesn't work with EFI? I would report to the developer, but don't want to just say 'It doesn't work'...
Regards,
-
One thing I discovered was that the X VESA driver failed on a UEFI install, to quote myself.
So out of curiosity, I tried opening a VESA xsession on a UEFI install. It failed, this seems to be the problem,
...
(EE) VESA(0): V_BIOS address 0x98000 out of range
...
On a BIOS install, it succeeds with,
...
(II) VESA(0): Primary V_BIOS segment is: 0xc000
Developer answered,
BIOS at C000 can only be emulated in VDM. XFree86 definitely uses a
mini-VDM that lacks any functionality. "VGA BIOS" at 9xxx is an emulation
for system boot time and for panorama/gengradd.
So possibly the fact that the VGA BIOS is at a non-standard location on a UEFI install.
I also discovered that the changes that were made to SNAP broke the X VESA driver subtly, namely system hung when returning to the PM from X.
Another interesting discovery when reviewing the X source code was that X actually uses the SNAP code for its mini-VDM.
-
Hi Roderick,
Would you have any insight into why this driver doesn't work with EFI? I would report to the developer, but don't want to just say 'It doesn't work'...
Regards,
I do not know. While I can understand people want to try other Windows 3.1 drivers. My first response is to no try the this VESA based Windows 3.1 driver with UEFI support.
The UEFI support indeed has a very very minimal VESA BIOS. Most of the support for this lives in VEFI.SYS.
I think you can get high resolutions with the Windows 3.1 driver from IBM. This driver best I understand simply does not lean on the VESA BIOS.
Roderick
-
Oh, it works here, too!
Edit: Here is DBCS, Korean.
Are you running a UEFI boot of ArcaOS or in BIOS mode ? When WIN/OS2 did not work, what did not work ?
Thanks.
Roderick
-
(EE) VESA(0): V_BIOS address 0x98000 out of range
If you can somehow patch this driver to bypass this error, you can still try.
But note that boot time VESA support cannot change the mode, so you will have to use the PM resolution.
It`s designed to run Panorama or GenGradd and only contains a small subset of VESA functions, since you can`t even clear the screen in mini-VDM.
Full VESA support is only implemented in VEFI.SYS, for regular VDMs, but WinOS/2 has a lot of its own special support, so who knows how and why it will react to a "regular" VESA driver.
-
Release builds, yay!
Repository: PluMGMK/vbesvga.drv · Tag: v0.7.9 · Commit: a9bb1cf · Released by: PluMGMK
For the first time, I'm shipping non-debug builds of all driver components!
The setup instructions remain the same, but now instead of supplying separate loose files, I've zipped them all up in the vbesvga-release.zip file. Everything in that zip file can be copied to C:\WINDOWS\SYSTEM as part of the installation. For v0.8.0 I'm hoping to have a streamlined setup process too.
The vbesvga-debug.zip file contains two folders: relsyms with symbol files for the release builds, and debug, with debug builds and corresponding symbol files, for use with WDEB386. If you just want to use the driver, you don't need any of these files.
Other changes:
Finally fix display corruption in bluescreens when running under VirtualBox
Proper execution of screen-to-screen blits with pattern ROPs
Add a BounceOnModeset configuration option to allow tuning the behaviour when starting a windowed / background DOS box (see here for more details) – yes, this is a config change, but I didn't want to bump to v0.8.0 until I improve the installation process (so I compromised by going to v0.7.9)
At this point, I'm pretty happy with the driver's stability, since it seems to get through the WinTach, WinBench and WinStone test suites without any crashes or misbehaviour!
—
This release has 4 assets:
vbesvga-debug.zip
vbesvga-release.zip
Source code (zip)
Source code (tar.gz)
Visit the release page to download them.
-
A new release was posted today if you want to give it a try.
https://github.com/PluMGMK/vbesvga.drv/releases/tag/v0.8.1
-
Hello
I just noticed that version 0.8.2 was released on 2025-08-12 (aprox)
https://github.com/PluMGMK/vbesvga.drv/releases
Any brave ones to try it on Win-OS/2 ?
And if you like it leave the "Thumbs up" in github ;D ;D
Regards
-
Hello
Version 0.8.2 worked on my ArcaOS 5.1.1 (BIOS) VM on VirtualBox Host.
I did a manual install according to the instructions changing the SYSTEM.INI on Win-OS/2
[boot]
display.drv=vbesvga.drv
386grabber=vbevmdib.3gr
<... more stuff ...>
[386Enh]
display=vddvbe.386
WindowUpdateTime=15
<... more stuff ...>
[vbesvga.drv]
Width=1920
Height=1080
Depth=24
SwapBuffersInterval=15
fontsize=large
For the moment I'm guessing this is good only for ArcaOS running on CSM or Regular BIOS (non UEFI). Please let me know if I'm wrong.
Regards
-
Martin,
I tried the vbesvga.drv driver on a bare metal machine booting CSM (BIOS). It works in Win-OS/2 full screen and DOS full screen; the mouse pointer seems slightly less jumpy than when running "normal" Win-OS/2 full screen session. Neither the VBESVGA.DRV nor the "normal" driver will run seamless Win-OS/2 or seamless DOS sessions.
-
Hi Doug
It is good that you see at least the mouse improvement in Win-OS/2 full screen session. I don't know if this improves something on the DOS VDM, I don't think so, but I may be wrong.
By any chance did you tried the vio-1.0.wpi patch and try if it works for your windowed sessions?
- https://mantis.arcanoae.com/view.php?id=1193
Does this patch applies today with ArcaOS 5.1.1 ?
Just in case, I have some personal notes and links here:
- https://www.os2world.com/wiki/index.php?title=DOS_and/or_WIN-OS/2_Sessions_Problems_on_ArcaOS
There is also this from Arca Noae:
If you have a need for DOS and/or Win-OS/2 sessions you will need to install ArcaOS in UEFI mode so that the installer will install a compatible VESA emulator. You could disable the CSM (legacy support) in the BIOS settings, or just make sure the system boots the installer in UEFI mode.
Source: https://www.arcanoae.com/wiki/arcaos/known-issues/#doswin
Regards
-
Hi Doug
It is good that you see at least the mouse improvement in Win-OS/2 full screen session. I don't know if this improves something on the DOS VDM, I don't think so, but I may be wrong.
By any chance did you tried the vio-1.0.wpi patch and try if it works for your windowed sessions?
- https://mantis.arcanoae.com/view.php?id=1193
Does this patch applies today with ArcaOS 5.1.1 ?
Just in case, I have some personal notes and links here:
- https://www.os2world.com/wiki/index.php?title=DOS_and/or_WIN-OS/2_Sessions_Problems_on_ArcaOS
There is also this from Arca Noae:
If you have a need for DOS and/or Win-OS/2 sessions you will need to install ArcaOS in UEFI mode so that the installer will install a compatible VESA emulator. You could disable the CSM (legacy support) in the BIOS settings, or just make sure the system boots the installer in UEFI mode.
Source: https://www.arcanoae.com/wiki/arcaos/known-issues/#doswin
Regards
That VIO patch is only for an extremely small subset of Thinkpad systems and in genereal should not be installed on any other systems.
Roderick