softgpu icon indicating copy to clipboard operation
softgpu copied to clipboard

XP support

Open MrPepka opened this issue 1 year ago • 21 comments

Hi Any chance of adding support for Windows XP? Some games written for this system cannot be run on Vista/7/10/11 systems, and at the same time they are too new to run on 95/98/Me systems and in practice they only run on XP or only there they work reasonably well. If the softgpu supported XP it would be perfect

MrPepka avatar Jun 20 '23 00:06 MrPepka

Don't you know Windows XP has guest additions?

ilikecoding-197 avatar Jul 01 '23 00:07 ilikecoding-197

@ilikecoding-197 3D support for Windows XP is little to none in current virtualizers. It only makes sense a request for Windows XP SoftGPU driver would appear as a result.

Cacodemon345 avatar Jul 01 '23 09:07 Cacodemon345

I can't add XP support to this project – NT and Window 95 display driver architecture is completely different (the 9x is backward compatible even with Windows 3.x). But there isn’t much difference between XP and Windows 10 and 11 – there shouldn’t be much work at last for OpenGL, DirectX is bit problematic – you must implement DDI 9 (in newer Windows is emulated by D3D12 which is part of Mesa), or use WineD3D same way as in VirtualBox 5.1 or in SoftGPU :-)

But I’m currently focus on Windows 9x, XP may come later…

JHRobotics avatar Jul 10 '23 08:07 JHRobotics

for XP support, something like this I assume would be out of scope but for anyone stumbling on this it might not be a bad idea to look towards reactOS for inspiration, IIRC they use their own wined3d implementation internally, it won't be a 1:1 by any means, but might be something that could get hobbled together.

EDIT: reactOS could also be a cool target

Quackdoc avatar Jul 10 '23 23:07 Quackdoc

the better target is drivers for new video cards for real XP %)

NS-Clone avatar Jul 11 '23 00:07 NS-Clone

@MrPepka, do you have a list of those games that "cannot be run on Vista/7/10/11 systems, and at the same time they are too new to run on 95/98/Me"? I'm mentioning the same topic at exoscoriae/eXoWin3x/issues/680 - listing potential reasons for support to break, etc.

@CE1CECL, you mention you work on Vista/7 driver, maybe you are interested in XP version as well?

Torinde avatar Aug 14 '23 09:08 Torinde

There is a related patch from http://lonecrusader.x10host.com/rloew/rloew.html

  • WDMEX: Allows Windows 9x to load drivers written for Windows 2000/XP.

Maybe a game, which doesn't work on Vista+ can be made to work on Win9x via XP driver... although somebody has to develop the XP driver first

Torinde avatar Aug 14 '23 11:08 Torinde

@MrPepka, do you have a list of those games that "cannot be run on Vista/7/10/11 systems, and at the same time they are too new to run on 95/98/Me"? I'm mentioning the same topic at exoscoriae/eXoWin3x/issues/680 - listing potential reasons for support to break, etc.

@CE1CECL, you mention you work on Vista/7 driver, maybe you are interested in XP version as well?

Actually, its only a backend, I chose the VMware SVGA because lots of OS's support A driver, even if its not good, macOS, Linux, Windows 95-11, etc... Its not a driver, for the os, its only to bring 3D to QEMU (at the moment, software).

CE1CECL avatar Aug 14 '23 20:08 CE1CECL

In other words, to bring Aero to vista and 7 on QEMU, at the moment it works only with VMware tools (windows, linux is working, without OpenGL using kernel) https://packages.vmware.com/tools/esx/4.0u1/windows/x86_64/ through https://packages.vmware.com/tools/esx/4.1latest/windows/x64

CE1CECL avatar Aug 14 '23 20:08 CE1CECL

@MrPepka, do you have a list of those games that "cannot be run on Vista/7/10/11 systems, and at the same time they are too new to run on 95/98/Me"? I'm mentioning the same topic at exoscoriae/eXoWin3x/issues/680 - listing potential reasons for support to break, etc.

@CE1CECL, you mention you work on Vista/7 driver, maybe you are interested in XP version as well?

I think that there are fewer and fewer such games, but there will still be some exceptions, once Uka from the old-games.ru forum even made a list of such games https://www.old-games.ru/forum/threads/igry-kotorye-idut-na-windows-xp-no-ne-na-bolee-pozdnix-versijax-os.89881/

MrPepka avatar Aug 14 '23 20:08 MrPepka

Virtualbox 6.1-7 would need a display driver.

However, VMWare still supports 3D acceleration under Windows XP. Its D3D9 support seems to be fine; the main issues are with older ones. Basically, what is needed is a "D3D2-7 to 9" wrapper to make it work.

I asked Dege a while back if he's interested in porting dgvoodoo2 to XP, but said it's too much work and there's no time.

elishacloud is currently working on adding D3D support to dxwrapper, but I don't know if it'd be XP compatible.

For D3D8 you can already use d3d8to9.

EDIT:

I haven't properly tested OpenGL games, but it seems support for older versions is patchy.

nglide can be used for Glide games, but that too has issues. Perhaps its devs might be interested in supporting VMWare?

eddmanx avatar Sep 08 '23 12:09 eddmanx

I compared with box9x and boxnt display driver inf files,and tried to add glide and wined3d files to it.However the different between two files are so big.So it's quite a hard work.

wyf180 avatar Oct 23 '23 09:10 wyf180

There is a SoftGPU patch for NT4 (and NT3.51, the first Windows to support 3D/OpenGL). Will such NT4 driver work in XP (or maybe Win2000)?

Torinde avatar Mar 10 '24 06:03 Torinde

Most elements are "available"?

  • VMDisp9x - os2museum has also 2K/XP driver
  • Mesa3D for 9x - main missing piece? (unsupported in official Mesa since 17.1.8.401-1: https://github.com/pal1000/mesa-dist-win/discussions/112#discussioncomment-4603767)
  • WineD3D for 9x - got XP support in 0.5
  • OpenGlide for 9x - does it work under XP? (also related: #23, #25, #34, #46)
  • VMHAL9x - related to VMDisp9x?
  • ICD enabled fork of qemu-3dfx - qemu-3dfx has 2K/XP version

Together with the above NT3.51/4.0 patch it seems SoftGPU may become "universal legacy Windows" 3D package...

Torinde avatar Mar 19 '24 21:03 Torinde

Mesa9x works with XP and later, there was only small bug (also in the lasted release, correct in source now) with system version detection causing softpipe was default renderer instead of much faster llvmpipe.

Only really missing piece is ICD support in XP driver (without it you have to replace opengl32.dll, which leads to unstability).

But after all it is still software acceleration only and a bit slow. I still hope that someone[^1] correct XP driver in VirtualBox to have OpenGL acceleration and after it is relative easy to use WineD3D/Wine9x to do rest of the work.

[^1]: I also hoped, that Oracle development around Windows 7/10/11 driver will be faster, results you can see here https://www.virtualbox.org/ticket/21515#comment:43

JHRobotics avatar Mar 27 '24 14:03 JHRobotics

Doesn't vmware still build support opengl in windows xp? That might work with wined3d/wine9x. (it also has d3d9 support ofc but I mean it for testing wineD3D/Wine9x support)

https://www.vogons.org/viewtopic.php?t=88678

Quackdoc avatar Mar 27 '24 18:03 Quackdoc

Mesa9x works with XP and later, there was only small bug (also in the lasted release, correct in source now) with system version detection causing softpipe was default renderer instead of much faster llvmpipe.

Only really missing piece is ICD support in XP driver (without it you have to replace opengl32.dll, which leads to unstability).

But after all it is still software acceleration only and a bit slow. I still hope that someone1 correct XP driver in VirtualBox to have OpenGL acceleration and after it is relative easy to use WineD3D/Wine9x to do rest of the work.

Footnotes

1. I also hoped, that Oracle development around Windows 7/10/11 driver will be faster, results you can see here https://www.virtualbox.org/ticket/21515#comment:43 [↩](#user-content-fnref-1-bab3dc3243c057c88f874d1baf72b1e3)

Does it work with Vista & 7 either in WDDM or XPDM/XDDM?

CE1CECL avatar Apr 08 '24 13:04 CE1CECL

Virtualbox 6.1-7 would need a display driver.

However, VMWare still supports 3D acceleration under Windows XP. Its D3D9 support seems to be fine; the main issues are with older ones. Basically, what is needed is a "D3D2-7 to 9" wrapper to make it work.

how did you find out?

Burinis avatar May 27 '24 12:05 Burinis

@JHRobotics

I still hope that someone correct XP driver in VirtualBox to have OpenGL acceleration

I thought VirtualBox dropped 3D acceleration for XP/Vista:

  • XP since VirtualBox 6.0.24
  • Vista since VirtualBox 6.1.0_RC1

Does that mean that just the 6.0.24 Guest additions XP driver has to be updated by someone and then installed by users? Or VirtualBox 7 itself has to be modified as well (maintaining that will be problematic)?

Is it possible to add ICD to the os2museum NT3.1-to-7 driver instead?

Torinde avatar Jun 13 '24 08:06 Torinde

I thought VirtualBox dropped 3D acceleration for XP/Vista:

* XP since VirtualBox 6.0.24

3d acceleration crashing on 5.x.x (at least on XP host) i found moar stable version 4.2.0

NS-Clone avatar Jun 14 '24 14:06 NS-Clone

3d acceleration crashing on 5.x.x (at least on XP host)

Versions I mention above are for 3D support in guest.

Torinde avatar Jun 18 '24 09:06 Torinde