JHRobotics / softgpu

SW and HW accelerated GPU driver for Windows 9x Virtual Machines
MIT License
710 stars 20 forks source link

Hell-Copter rendering issues (black screen behind hud) #102

Closed ChrisS85 closed 1 month ago

ChrisS85 commented 3 months ago

I'm trying to get this game to work. Unfortunately it doesn't support NT-based systems and compatibility modes of newer Windows versions haven't helped me. Didn't have any success with Wine on Linux either (fails to start).

I tried with VirtualBox 7.0 and VMWare Workstation 17.5 on Windows 98 SE, each with SoftGPU installed. Host system is Windows 10 with a Geforce 760 GPU.

The menu works as expected, but in game there is a black screen behind the hud, so all 3-dimensional content is not rendering.

DxDiag tests are working for me without issues.

Let me know if you need further information, or if you have any other idea how to get this game working.

JHRobotics commented 1 month ago

In the newest release (v0.6.2024.40) the Hell-Copter should work!

ChrisS85 commented 1 month ago

Unfortunately it's not fixed yet. Here's a screenshot from the game. The mouse cursor issue occurs when in the pause menu. The cursors are also flickering instead of just beeing drawn over each other. I'm pretty sure it's switching between two different frames. grafik

I downloaded the newest iso file and installed it over the older version on a VMWare VM with Win98. The reported GPU driver version is 4.10.2222.0 according to Sys.Info and 4.2024.0.88 (VMWSMINI:DRV) according to device manager. Since this doesn't match the version from your release I assume I'm looking at versions from another component and it's probably not so helpful...

The GPU is reported as VMWare SVGA-II PCI Adapter, but the manufacturer is named as VirtualBox. I assume they share some code there?

JHRobotics commented 1 month ago

4.2024.0.88 is right - most important is last number, that is number of commits - so it match to driver last release (v1.2024.0.88). First number must by 4, because this indicate Windows 9x driver and not Win 3.x driver. There is also internal API version check, so you don't worry about component mismatch, if it occurs it'll be reported.

Also don't pay attention to manufacturer name, project started as VirtualBox driver, so there is “VirtualBox” as manufacturer and I still not changed it to something relevant.

But back to your problem – I think that game is rendering thru Wine not by native driver (render is pure software using Direct Draw) – exe needs by blacklisted by registry key like this:

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\DDSwitcher]
"HCopter.exe"="system"

This key should be already in your registry so check if game exe is named HCopter.exe (in some games this is different in different versions). If not, add to registry key matching to your exe name. You can also try globally switch all applications to native renderer by set: HKEY_LOCAL_MACHINE\Software\DDSwitcher\global to system (default is wine) On this setup is no hardware 3D available but this is much compatible.

ChrisS85 commented 1 month ago

I got it to work with that, thanks a lot! I'm a bit confused though because it was already set to system. I switched it around one or two times before I noticed an effect.