Trouble With 3D Acceleration In Windows XP Guest ("Unable to set graphics mode")
Posted: 24. Jul 2021, 21:50
Hi everyone,
I have a computer game requiring 3D acceleration that I want to run in a Windows XP virtual machine, but I’m having no luck. When I run the program, the screen goes black for a second like it’s about to start running the game, but then I get an error message saying “Unable to set graphics mode”. I don’t know what to do about this. It actually does work fine on the host system (Windows 10), but I’d also like to run it on the virtual machine if possible as well. Here’s what I’ve tried:
On VirtualBox 5.2.14, I’ve installed the VirtualBox Guest Additions, using safe mode to install Direct 3D, and I’ve made sure 3D acceleration and 2D video acceleration are enabled in the VirtualBox display settings of the virtual machine. However, I still get the “Unable to set graphics mode” error each time I try to run the program. For good measure, I’ve tried running it in Normal Startup mode, running it in safe mode, running it while both the host and guest operating systems were set to a low resolution, running it as administrator, and running it under the restrictive display settings under “Properties/Compatibility” (which is obtained by right clicking on the program). I’ve tried selecting both 32-bit and 64-bit Windows XP in VirtualBox when setting up the virtual machine and doing these things under both. (The XP system itself is 32-bit, to be clear.) Nothing has worked. I’ve also tried quite a few combinations of the above, but maybe the answer is a combination I haven’t tried?
I also tried using VirtualBox 6.0.24 – my understanding is that 3D acceleration support for Windows XP was discontinued for 6.1.x but that 6.0.x had various options for graphics controllers, so I figured it was worth a try. However, I made even less progress here – even after installing the Guest Additions with Direct 3D and enabling 3D acceleration, I got an error message saying “Unable to create 3D Scene”. I tried using each graphics controller offered by VirtualBox: VboxVGA, VboxSVGA, and VMSVGA, but got the same error message each time. (In contrast, VirtualBox 5.2.14 only gives this error message when 3D acceleration is disabled.)
Some other information: my host operating system is 64-bit Windows 10, and like I said, the guest operating system is 32-bit Windows XP. I have 243 GB available to the host and 1.95 GB available to the guest. I've also attached VBoxHardening.log.
It may also be worth noting that I was unable to correctly handle the d3d8.dll and d3d9.dll files, and (possibly as a result) the DirectX 7 part of the Direct X diagnostic test failed. Section 12.3.12 of the VirtualBox manual says this probably isn’t an issue for 3D acceleration in Windows XP guests, but I thought it was worth noting in case any of you think this actually is worth looking into further.
Many thanks in advance for your help. I know VirtualBox isn’t exactly designed for computer games, but I know others have been able to have at least some success, so I’m hoping there’s a way forward – at least, I figured it was worth a try. Feel free to tell me if I need to provide even more information.
I have a computer game requiring 3D acceleration that I want to run in a Windows XP virtual machine, but I’m having no luck. When I run the program, the screen goes black for a second like it’s about to start running the game, but then I get an error message saying “Unable to set graphics mode”. I don’t know what to do about this. It actually does work fine on the host system (Windows 10), but I’d also like to run it on the virtual machine if possible as well. Here’s what I’ve tried:
On VirtualBox 5.2.14, I’ve installed the VirtualBox Guest Additions, using safe mode to install Direct 3D, and I’ve made sure 3D acceleration and 2D video acceleration are enabled in the VirtualBox display settings of the virtual machine. However, I still get the “Unable to set graphics mode” error each time I try to run the program. For good measure, I’ve tried running it in Normal Startup mode, running it in safe mode, running it while both the host and guest operating systems were set to a low resolution, running it as administrator, and running it under the restrictive display settings under “Properties/Compatibility” (which is obtained by right clicking on the program). I’ve tried selecting both 32-bit and 64-bit Windows XP in VirtualBox when setting up the virtual machine and doing these things under both. (The XP system itself is 32-bit, to be clear.) Nothing has worked. I’ve also tried quite a few combinations of the above, but maybe the answer is a combination I haven’t tried?
I also tried using VirtualBox 6.0.24 – my understanding is that 3D acceleration support for Windows XP was discontinued for 6.1.x but that 6.0.x had various options for graphics controllers, so I figured it was worth a try. However, I made even less progress here – even after installing the Guest Additions with Direct 3D and enabling 3D acceleration, I got an error message saying “Unable to create 3D Scene”. I tried using each graphics controller offered by VirtualBox: VboxVGA, VboxSVGA, and VMSVGA, but got the same error message each time. (In contrast, VirtualBox 5.2.14 only gives this error message when 3D acceleration is disabled.)
Some other information: my host operating system is 64-bit Windows 10, and like I said, the guest operating system is 32-bit Windows XP. I have 243 GB available to the host and 1.95 GB available to the guest. I've also attached VBoxHardening.log.
It may also be worth noting that I was unable to correctly handle the d3d8.dll and d3d9.dll files, and (possibly as a result) the DirectX 7 part of the Direct X diagnostic test failed. Section 12.3.12 of the VirtualBox manual says this probably isn’t an issue for 3D acceleration in Windows XP guests, but I thought it was worth noting in case any of you think this actually is worth looking into further.
Many thanks in advance for your help. I know VirtualBox isn’t exactly designed for computer games, but I know others have been able to have at least some success, so I’m hoping there’s a way forward – at least, I figured it was worth a try. Feel free to tell me if I need to provide even more information.