elishacloud / dxwrapper

Fixes compatibility issues with older games running on Windows 10/11 by wrapping DirectX dlls. Also allows loading custom libraries with the file extension .asi into game processes.
zlib License
1.28k stars 91 forks source link

Lego Rock Raiders - Incompatibility / Black screen #258

Open master801 opened 9 months ago

master801 commented 9 months ago

OS: Windows 10 Pro 22H2 (19045.4046) CPU: AMD Ryzen 1600 3.20 GHz RAM: 16GB 2400 MHz GPU: Gigabyte AMD RX 580 GAMING 4G (4GB) - AMD Adrenalin 24.1.1

Lego Rock Raider (SecuROM version) d3drm.dll - 5.1.26000.0 - PCGamingWiki version (game will not load at all with bundled CD DirectX6 D3DRM.DLL - 4.06.02.436)

Problem: When dxwrapper is used to wrap stub ddraw.dll, and when options Compatibility/DDrawCompat and DDrawCompat/ none/DDrawCompat20/DDrawCompat21/DDrawCompat31, are both enabled, the game will show a black screen with audio playing and the game still playable, albeit not visible.

Note: Compatibility options ForceTermination and ResetScreenRes are only enabled because when the game hangs and cannot be exited safely. It needs to be closed via task bar (cannot see Task Manager to end process) and the screen resolution will be stuck in 640x480 (when process is ended in Task Manager, screen resolution does not go back to normal - needs to be reset via Windows' Display Settings).

Game Settings:

Mode Selection

  • Device
    • Direct3D HAL (Microsoft Direct3D Hardware acceleration through Direc....)
  • Screen Modes:
    • Full Screen
    • 640x480 (16 bit)
dxwrapper.ini > ;; Config file for DirectX DLL Wrapper > ;; > ;; For details, see: https://github.com/elishacloud/dxwrapper/wiki/Configuration-%28advanced%29 > ;; > [General] > RealDllPath = AUTO > WrapperMode = AUTO > LoadCustomDllPath = > ExcludeProcess = > IncludeProcess = > RunProcess = > WaitForProcess = 0 > DisableLogging = 0 > > [Plugins] > LoadPlugins = 0 > LoadFromScriptsOnly = 0 > > [Compatibility] > Dd7to9 = 0 > D3d8to9 = 0 > DDrawCompat = 1 > Dinputto8 = 0 > DisableHighDPIScaling = 0 > DisableGameUX = 0 > DxWnd = 0 > EnableDdrawWrapper = 0 > EnableD3d9Wrapper = 0 > EnableDinput8Wrapper = 0 > EnableDsoundWrapper = 0 > ForceTermination = 1 > HandleExceptions = 0 > ResetScreenRes = 1 > SingleProcAffinity = 0 > > [Hooking] > DdrawHookSystem32 = 0 > D3d8HookSystem32 = 0 > D3d9HookSystem32 = 0 > DinputHookSystem32 = 0 > Dinput8HookSystem32 = 0 > DsoundHookSystem32 = 0 > > [DDrawCompat] > DDrawCompat20 = 0 > DDrawCompat21 = 0 > DDrawCompat31 = 1 > DDrawCompatDisableGDIHook = 0 > DDrawCompatNoProcAffinity = 0 > > [ddraw] > ConvertToDirectDraw7 = 0 > ConvertToDirect3D7 = 0 > DdrawOverrideBitMode = 0 > DdrawResolutionHack = 0 > DirectShowEmulation = 0 > > [Dd7to9] > DdrawAutoFrameSkip = 0 > DdrawEmulateSurface = 0 > DdrawFixByteAlignment = 0 > DdrawRemoveScanlines = 0 > DdrawRemoveInterlacing = 0 > DdrawReadFromGDI = 0 > DdrawWriteToGDI = 0 > DdrawEnableMouseHook = 0 > DdrawCreateDeviceEarly = 0 > DdrawDisableDirect3DCaps = 0 > DdrawLimitDisplayModeCount = 0 > DdrawUseNativeResolution = 0 > DdrawClippedWidth = 0 > DdrawClippedHeight = 0 > DdrawOverrideWidth = 0 > DdrawOverrideHeight = 0 > DdrawOverridePrimaryWidth = 0 > DdrawOverridePrimaryHeight = 0 > DdrawOverrideStencilFormat = 0 > DdrawIntegerScalingClamp = 0 > DdrawMaintainAspectRatio = 0 > > [d3d9] > AnisotropicFiltering = 0 > AntiAliasing = 0 > CacheClipPlane = 0 > EnableVSync = 0 > ForceVsyncMode = 0 > OverrideRefreshRate = 0 > LimitPerFrameFPS = 0 > EnableWindowMode = 0 > WindowModeBorder = 0 > SetInitialWindowPosition = 0 > InitialWindowPositionLeft = 0 > InitialWindowPositionTop = 0 > FullscreenWindowMode = 0 > ForceExclusiveFullscreen = 0 > ForceMixedVertexProcessing = 0 > ForceSystemMemVertexCache = 0 > ForceDirect3D9On12 = 0 > GraphicsHybridAdapter = 0 > > [FullScreen] > FullScreen = 0 > ForceWindowResize = 0 > SendAltEnter = 0 > WaitForWindowChanges = 0 > LoopSleepTime = 120 > WindowSleepTime = 500 > SetFullScreenLayer = 0 > SetNamedLayer = > IgnoreWindowName = > > [dinput8] > FilterNonActiveInput = 0 > > [dsound] > Num2DBuffers = 0 > Num3DBuffers = 0 > ForceCertification = 0 > ForceExclusiveMode = 0 > ForceSoftwareMixing = 0 > ForceHardwareMixing = 0 > ForceHQ3DSoftMixing = 0 > ForceNonStaticBuffers = 0 > ForceVoiceManagement = 0 > ForcePrimaryBufferFormat = 0 > PrimaryBufferBits = 16 > PrimaryBufferSamples = 44100 > PrimaryBufferChannels = 2 > AudioClipDetection = 0 > AudioFadeOutDelayMS = 20 > FixSpeakerConfigType = 1 > StoppedDriverWorkaround = 0 > > [AppCompatData] > LockEmulation = 0 > BltEmulation = 0 > ForceLockNoWindow = 0 > ForceBltNoWindow = 0 > LockColorkey = 0 > FullscreenWithDWM = 0 > DisableLockEmulation = 0 > EnableOverlays = 0 > DisableSurfaceLocks = 0 > RedirectPrimarySurfBlts = 0 > StripBorderStyle = 0 > DisableMaxWindowedMode = 0 > > [WriteMemory] > VerificationAddress = 0x00000000 > VerificationBytes = 0x00 > ResetMemoryAfter = 0 > AddressPointer = 0x00000000 > BytesToWrite = 0x00
dxwrapper-legorr.log > 12836 14:39:52.462 Starting DxWrapper v1.1.6900.22 > 12836 14:39:52.462 Running from: C:\Users\Master\Downloads\Rock Raiders - dxwrapper\dxwrapper.dll > 12836 14:39:52.462 Reading config file: C:\Users\Master\Downloads\Rock Raiders - dxwrapper\dxwrapper.ini > 12836 14:39:52.462 Gigabyte Technology Co., Ltd. AB350-Gaming 3 Default string (Desktop) > 12836 14:39:52.462 Gigabyte Technology Co., Ltd. AB350-Gaming 3-CF x.x (Desktop) > 12836 14:39:52.462 Radeon RX 580 Series > 12836 14:39:52.463 Windows 10 Enterprise 64-bit (10.0.19041) > 12836 14:39:52.463 LegoRR.exe (PID:12264) > 12836 14:39:52.468 Environment variable __COMPAT_LAYER = "" > 12836 14:39:52.468 Loading 'ddraw.dll'... > 12836 14:39:52.468 Hooking ddraw.dll APIs... > 12836 14:39:52.468 Enabling DDrawCompat > 12836 14:39:52.468 Process path: C:\Users\Master\Downloads\Rock Raiders - dxwrapper\LegoRR.exe > 12836 14:39:52.468 Loading DDrawCompat dynamically from C:\Users\Master\Downloads\Rock Raiders - dxwrapper\dxwrapper.dll > 12836 14:39:52.471 Loaded library: winmm.dll > 12836 14:39:52.473 Loaded library: uxtheme.dll > 12836 14:39:52.473 DDrawCompat v0.3.1 version loaded successfully > 12836 14:39:52.473 DxWrapper loaded! > 1316 14:39:52.574 Starting fullscreen thread... > 12836 14:39:52.737 Installing display mode hooks > 12836 14:39:52.761 Installing registry hooks > 12836 14:39:52.761 Installing Direct3D driver hooks > 12836 14:39:52.761 Installing Win32 hooks > 12836 14:39:52.766 Hooking user mode display driver: C:\Windows\System32\DriverStore\FileRepository\u0399660.inf_amd64_d7fa3539ce499e50\B399655\aticfx32.dll+0x5da20 > 12836 14:39:52.797 Dynamic vertex buffers are available > 12836 14:39:52.797 Dynamic index buffers are available > 12836 14:39:52.800 Checking source color key support: passed > 12836 14:39:52.802 Incorrect z-buffer bit depth capabilities detected; changed from "16, 32" to "16, 24" > 12836 14:39:52.807 Installing DirectDraw hooks > 12836 14:39:52.808 Installing Direct3D hooks > 12836 14:39:52.816 Installing GDI hooks > 8372 14:39:52.832 Loaded library: dwmapi.dll > 12836 14:39:52.833 Finished installing hooks > 1316 14:40:32.082 Process not exiting, attempting to terminate process... > 1316 14:40:32.082 Reseting screen resolution... > 1316 14:40:33.269 Utils::Fullscreen::CheckForTermination Terminating process!

When Compatibility options Dd7to9 / D3d8to9 / EnableDdrawWrapper / EnableD3d9Wrapper and/or ddraw options ConvertToDirectDraw7 and ConvertToDirect3D7 are enabled, the game will not detect these options properly and will show the error No supported screen modes found.

As a side note, I also tested the game with only DDrawCompat (v0.5.1) and the game worked perfectly fine with Compatibility Mode set to Windows 98 (AVI cutscenes won't play if this isn't enabled), even scaling to fullscreen 1080p.

This is the log file for DDrawCompat 0.5.1:

DDrawCompat-LegoRR.log > 18:34:35.294 Process path: C:\Program Files (x86)\LEGO Media\Games\Rock Raiders\LegoRR.exe > 18:34:35.294 Loading DDrawCompat statically from C:\Program Files (x86)\LEGO Media\Games\Rock Raiders\DDRAW.dll > 18:34:35.294 Environment variable __COMPAT_LAYER = "DWM8And16BitMitigation RunAsAdmin Win98 Installer" > 18:34:35.294 Loading global config file: C:\ProgramData\DDrawCompat\DDrawCompat.ini > 18:34:35.294 File not found, skipping > 18:34:35.294 Loading user config file: C:\Users\Master\AppData\Local\DDrawCompat\DDrawCompat.ini > 18:34:35.294 File not found, skipping > 18:34:35.294 Loading directory config file: C:\Program Files (x86)\LEGO Media\Games\Rock Raiders\DDrawCompat.ini > 18:34:35.294 File not found, skipping > 18:34:35.294 Loading process config file: C:\Program Files (x86)\LEGO Media\Games\Rock Raiders\DDrawCompat-LegoRR.ini > 18:34:35.294 File not found, skipping > 18:34:35.294 Loading overlay config file: C:\Program Files (x86)\LEGO Media\Games\Rock Raiders\DDrawCompatOverlay-LegoRR.ini > 18:34:35.295 File not found, skipping > 18:34:35.295 Final configuration: > 18:34:35.295 [default] AlignSysMemSurfaces = on > 18:34:35.295 [default] AltTabFix = off > 18:34:35.295 [default] AlternatePixelCenter = off > 18:34:35.295 [default] Antialiasing = off > 18:34:35.295 [default] BltFilter = point > 18:34:35.295 [default] ColorKeyMethod = auto > 18:34:35.295 [default] ConfigHotKey = shift+f11 > 18:34:35.295 [default] ConfigRows = allrw, allro > 18:34:35.295 [default] ConfigTransparency = alpha(90) > 18:34:35.295 [default] CpuAffinity = 1 > 18:34:35.295 [default] CpuAffinityRotation = on > 18:34:35.295 [default] CrashDump = off > 18:34:35.295 [default] DepthFormat = app > 18:34:35.295 [default] DesktopColorDepth = initial > 18:34:35.295 [default] DesktopResolution = desktop > 18:34:35.295 [default] DisplayAspectRatio = app > 18:34:35.295 [default] DisplayFilter = bilinear(0) > 18:34:35.295 [default] DisplayRefreshRate = app > 18:34:35.295 [default] DisplayResolution = desktop > 18:34:35.295 [default] DpiAwareness = permonitor > 18:34:35.295 [default] FontAntialiasing = app > 18:34:35.295 [default] ForceD3D9On12 = off > 18:34:35.295 [default] FpsLimiter = off > 18:34:35.295 [default] FullscreenMode = borderless > 18:34:35.295 [default] LogLevel = info > 18:34:35.295 [default] PalettizedTextures = off > 18:34:35.295 [default] RemoveBorders = off > 18:34:35.295 [default] RenderColorDepth = appd8 > 18:34:35.295 [default] ResolutionScale = app(1) > 18:34:35.295 [default] ResolutionScaleFilter = point > 18:34:35.295 [default] SoftwareDevice = rgb > 18:34:35.295 [default] SpriteDetection = off > 18:34:35.295 [default] SpriteFilter = app > 18:34:35.295 [default] SpriteTexCoord = app > 18:34:35.295 [default] StatsAggregateTime = 3 > 18:34:35.295 [default] StatsColumns = label, cur, avg, min, max > 18:34:35.295 [default] StatsHotKey = shift+f12 > 18:34:35.295 [default] StatsPosX = right > 18:34:35.295 [default] StatsPosY = top > 18:34:35.295 [default] StatsRows = label, presentrate, fliprate, blitcount, lockcount, ddiusage > 18:34:35.295 [default] StatsTransparency = alpha(75) > 18:34:35.295 [default] StatsUpdateRate = 5 > 18:34:35.295 [default] SupportedDepthFormats = all > 18:34:35.295 [default] SupportedResolutions = native, 640x480, 800x600, 1024x768 > 18:34:35.295 [default] SupportedTextureFormats = all > 18:34:35.295 [default] TerminateHotKey = ctrl+alt+end > 18:34:35.295 [default] TextureFilter = app > 18:34:35.295 [default] ThreadPriorityBoost = off > 18:34:35.295 [default] VSync = app > 18:34:35.295 [default] VertexBufferMemoryType = sysmem > 18:34:35.295 [default] WinVersionLie = off > 18:34:35.318 Initial DPI awareness: unaware > 18:34:35.319 DPI awareness was successfully changed to "permonitor" via SetProcessDpiAwarenessContext > 18:34:35.319 Primary CPU group number: 0 > 18:34:35.319 Physical to logical CPU core mapping for efficiency class 0: > 18:34:35.319 Physical core #1: 1, 2 > 18:34:35.319 Physical core #2: 3, 4 > 18:34:35.319 Physical core #3: 5, 6 > 18:34:35.319 Physical core #4: 7, 8 > 18:34:35.319 Physical core #5: 9, 10 > 18:34:35.319 Physical core #6: 11, 12 > 18:34:35.319 Current CPU affinity: 1 > 18:34:35.319 Applying configured CPU affinity: 1 > 18:34:35.319 CPU affinity rotation is enabled > 18:34:35.319 DDrawCompat loaded successfully > 18:34:35.645 Installing display mode hooks > 18:34:36.205 Installing registry hooks > 18:34:36.205 Installing Direct3D driver hooks > 18:34:36.211 Hooking user mode display driver: C:\Windows\System32\DriverStore\FileRepository\u0399660.inf_amd64_d7fa3539ce499e50\B399655\aticfx32.dll+0x5da20 > 18:34:36.229 Supported resource formats: > 18:34:36.229 {D3DDDIFMT_X1R5G5B5,0xca701f,0x8a,0x8a,16} > 18:34:36.229 {D3DDDIFMT_A1R5G5B5,0xca701f,0x8a,0x8a,16} > 18:34:36.229 {D3DDDIFMT_A4R4G4B4,0xc2701f,0x8a,0x8a,16} > 18:34:36.229 {D3DDDIFMT_R5G6B5,0xca7c1f,0x8a,0x8a,16} > 18:34:36.229 {D3DDDIFMT_X8R8G8B8,0xdafc1f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_A8R8G8B8,0xdaf11f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_X8B8G8R8,0xdaf11f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_L8,0xc2701f,0x0,0x0,8} > 18:34:36.229 {D3DDDIFMT_P8,0x5000,0x0,0x0,8} > 18:34:36.229 {FOURCC(M2IA),0x4000,0x0,0x0,0} > 18:34:36.229 {D3DDDIFMT_V8U8,0x831007,0x0,0x0,16} > 18:34:36.229 {D3DDDIFMT_X8L8V8U8,0x31007,0x0,0x0,32} > 18:34:36.229 {D3DDDIFMT_Q8W8V8U8,0x83501f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_V16U16,0x831007,0x0,0x0,32} > 18:34:36.229 {D3DDDIFMT_A2W10V10U10,0x31007,0x0,0x0,32} > 18:34:36.229 {D3DDDIFMT_Q16W16V16U16,0x83501f,0x8a,0x8a,64} > 18:34:36.229 {FOURCC(DXT1),0x82e007,0x0,0x0,0} > 18:34:36.229 {FOURCC(DXT2),0x82e007,0x0,0x0,0} > 18:34:36.229 {FOURCC(DXT3),0x82e007,0x0,0x0,0} > 18:34:36.229 {FOURCC(DXT4),0x82e007,0x0,0x0,0} > 18:34:36.229 {FOURCC(DXT5),0x82e007,0x0,0x0,0} > 18:34:36.229 {FOURCC(ATI1),0x821007,0x0,0x0,8} > 18:34:36.229 {FOURCC(ATI2),0x821007,0x0,0x0,8} > 18:34:36.229 {D3DDDIFMT_A4L4,0x827007,0x0,0x0,8} > 18:34:36.229 {D3DDDIFMT_A8L8,0x827007,0x0,0x0,16} > 18:34:36.229 {D3DDDIFMT_A2B10G10R10,0xca701f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_G16R16,0xc2701f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_L16,0xc2701f,0x0,0x0,16} > 18:34:36.229 {D3DDDIFMT_A2R10G10B10,0xca7c1f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_A16B16G16R16F,0xca701f,0x8a,0x8a,64} > 18:34:36.229 {D3DDDIFMT_A16B16G16R16,0xca701f,0x8a,0x8a,64} > 18:34:36.229 {D3DDDIFMT_R16F,0xc2701f,0x8a,0x8a,16} > 18:34:36.229 {D3DDDIFMT_G16R16F,0xc2701f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_R32F,0xc2701f,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_G32R32F,0xc2701f,0x8a,0x8a,64} > 18:34:36.229 {D3DDDIFMT_A32B32G32R32F,0xca701f,0x8a,0x8a,128} > 18:34:36.229 {D3DDDIFMT_R8,0xc2701f,0x8a,0x8a,8} > 18:34:36.229 {D3DDDIFMT_G8R8,0xc2701f,0x8a,0x8a,16} > 18:34:36.229 {FOURCC(RESZ),0xc2701f,0x0,0x0,32} > 18:34:36.229 {D3DDDIFMT_D16_LOCKABLE,0x10c0,0x0,0x0,16} > 18:34:36.229 {D3DDDIFMT_D16,0x10c1,0x8a,0x8a,16} > 18:34:36.229 {D3DDDIFMT_X8D24,0x10c1,0x8a,0x8a,32} > 18:34:36.229 {D3DDDIFMT_D32F_LOCKABLE,0x10c1,0x0,0x0,32} > 18:34:36.229 {D3DDDIFMT_S8D24,0x10c1,0x8a,0x8a,32} > 18:34:36.229 {FOURCC(DF16),0x10c1,0x8a,0x8a,16} > 18:34:36.229 {FOURCC(DS16),0x10c1,0x8a,0x8a,16} > 18:34:36.230 {FOURCC(DF24),0x10c1,0x8a,0x8a,32} > 18:34:36.230 {FOURCC(INTZ),0x10c1,0x0,0x0,32} > 18:34:36.230 {FOURCC(NULL),0xc2701f,0x8a,0x8a,32} > 18:34:36.230 {D3DDDIFMT_A8,0xc2701f,0x0,0x0,8} > 18:34:36.230 {FOURCC(UYVY),0x7000,0x0,0x0,16} > 18:34:36.230 {FOURCC(YUY2),0x7000,0x0,0x0,16} > 18:34:36.230 {FOURCC(NV12),0x7000,0x0,0x0,12} > 18:34:36.230 {FOURCC(NV21),0x7000,0x0,0x0,12} > 18:34:36.230 {FOURCC(YV12),0x7000,0x0,0x0,12} > 18:34:36.230 {FOURCC(AYUV),0x7000,0x0,0x0,32} > 18:34:36.230 {FOURCC(SYV2),0x7000,0x0,0x0,16} > 18:34:36.230 {FOURCC(P010),0x7000,0x0,0x0,24} > 18:34:36.230 {FOURCC(INST),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(GET4),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(R2VB),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(ATIC),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(FLGL),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(GINF),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(CMSL),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(SHDT),0x6000,0x0,0x0,0} > 18:34:36.230 {FOURCC(MMDX),0x6000,0x0,0x0,0} > 18:34:36.230 Supported z-buffer bit depths: 16, 24 > 18:34:36.230 Supported MSAA modes: msaa(7), msaa2x(4), msaa4x(2), msaa8x(2) > 18:34:36.245 Dynamic vertex buffers are available > 18:34:36.245 Dynamic index buffers are available > 18:34:36.409 Installing DirectDraw hooks > 18:34:36.411 Installing Direct3D hooks > 18:34:36.414 Installing GDI hooks > 18:34:36.423 Finished installing hooks > 18:34:37.071 Using resource format: D3DDDIFMT_R5G6B5, render target primary, anymem -> vidmem > 18:34:37.071 Using resource format: D3DDDIFMT_X8D24, depth buffer, vidmem > 18:34:37.071 Using Direct3D device type: IID_IDirect3DHALDevice > 18:34:37.078 Auto-detected ColorKeyMethod: native > 18:34:37.079 Using feature: enumerating hardware texture formats via IDirect3DDevice > 18:34:37.080 Using resource format: D3DDDIFMT_R5G6B5, plain, sysmem > 18:34:37.084 Using feature: enumerating hardware texture formats via IDirect3DDevice2 > 18:35:04.113 Using resource format: D3DDDIFMT_P8, plain, sysmem > 18:35:04.114 Using resource format: D3DDDIFMT_R5G6B5, texture, vidmem

I also tested with DDrawCompat v0.3.1 (since dxwrapper uses this version) and the game also worked pretty much the same as the newer version does, albeit it doesn't scale to 1080p.

Using DDrawCompat in conjunction with dxwrapper's stubs dinput.dll and dsound.dll and options enabled, the game still works as intended.

For whatever reason, dxwrapper's ddraw.dll stub and options for this wrapped dll, completely breaks the game.

elishacloud commented 2 months ago

Can you try with this build? It should work as good or the same as DDrawCompat v0.3.2: dxwrapper.zip

master801 commented 1 month ago

Can you try with this build? It should work as good or the same as DDrawCompat v0.3.2: dxwrapper.zip

That build kinda works.

In fullscreen, the game just sits at a black screen with the audio playing.

In windowed, the game does look fine.

Log for fullscreen mode Note that it does not exit "cleanly" because the game has to be closed manually... > 10144 23:45:34.831 Starting DxWrapper v1.1.7163.22 > 10144 23:45:34.831 Running from: C:\PROGRA\~2\LEGOME\~1\Games\ROCKRA\~1\dxwrapper.dll > 10144 23:45:34.831 Reading config file: C:\PROGRA\~2\LEGOME\~1\Games\ROCKRA\~1\dxwrapper.ini > 10144 23:45:34.832 Gigabyte Technology Co., Ltd. AB350-Gaming 3 Default string (Desktop) > 10144 23:45:34.832 Gigabyte Technology Co., Ltd. AB350-Gaming 3-CF x.x (Desktop) > 10144 23:45:34.832 Radeon RX 580 Series > 10144 23:45:34.833 Windows 10 Enterprise 64-bit (10.0.19041) > 10144 23:45:34.833 LegoRR.exe (PID:7952) > 10144 23:45:34.845 Environment variable __COMPAT_LAYER = "DWM8And16BitMitigation RunAsAdmin 16BitColor Win98 Installer" > 10144 23:45:34.846 Windows is newer than, Windows Vista: 1 Windows 7: 1 Windows 8: 1 > 10144 23:45:34.846 Disabling High DPI Scaling... > 10144 23:45:34.846 Loaded library: user32.dll > 10144 23:45:34.846 Loaded library: shcore.dll > 10144 23:45:34.846 Loading 'ddraw.dll'... > 10144 23:45:34.846 Hooking ddraw.dll APIs... > 10144 23:45:34.846 Enabling DDrawCompat > 10144 23:45:34.846 Process path: C:\Program Files (x86)\LEGO Media\Games\Rock Raiders\LegoRR.exe > 10144 23:45:34.846 Loading DDrawCompat dynamically from C:\PROGRA\~2\LEGOME\~1\Games\ROCKRA\~1\dxwrapper.dll > 10144 23:45:34.846 Loaded library: winmm.dll > 10144 23:45:34.846 Loaded library: uxtheme.dll > 10144 23:45:34.847 DDrawCompat v0.3.1 version loaded successfully > 10144 23:45:34.847 DxWrapper loaded! > 10144 23:45:35.202 Installing display mode hooks > 10144 23:45:35.247 Installing registry hooks > 10144 23:45:35.247 Installing Direct3D driver hooks > 10144 23:45:35.247 Installing Win32 hooks > 10144 23:45:35.314 Hooking user mode display driver: > C:\Windows\System32\DriverStore\FileRepository\u0405470.inf_amd64_2e71ce0e27c179e1\B404884\aticfx32.dll+0x5da20 > 10144 23:45:35.347 Dynamic vertex buffers are available > 10144 23:45:35.347 Dynamic index buffers are available > 10144 23:45:35.348 Checking source color key support: passed > 10144 23:45:35.351 Incorrect z-buffer bit depth capabilities detected; changed from "16, 32" to "16, 24" > 10144 23:45:35.354 Installing DirectDraw hooks > 10144 23:45:35.355 Installing Direct3D hooks > 10144 23:45:35.358 Installing GDI hooks > 10144 23:45:35.362 Finished installing hooks > 7264 23:45:35.363 Loaded library: dwmapi.dll
Log for windowed mode > 9528 23:48:51.556 Starting DxWrapper v1.1.7163.22 > 9528 23:48:51.556 Running from: C:\PROGRA\~2\LEGOME\~1\Games\ROCKRA\~1\dxwrapper.dll > 9528 23:48:51.556 Reading config file: C:\PROGRA\~2\LEGOME\~1\Games\ROCKRA\~1\dxwrapper.ini > 9528 23:48:51.556 Gigabyte Technology Co., Ltd. AB350-Gaming 3 Default string (Desktop) > 9528 23:48:51.556 Gigabyte Technology Co., Ltd. AB350-Gaming 3-CF x.x (Desktop) > 9528 23:48:51.556 Radeon RX 580 Series > 9528 23:48:51.556 Windows 10 Enterprise 64-bit (10.0.19041) > 9528 23:48:51.556 LegoRR.exe (PID:8980) > 9528 23:48:51.572 Environment variable __COMPAT_LAYER = "DWM8And16BitMitigation RunAsAdmin 16BitColor Win98 Installer" > 9528 23:48:51.572 Windows is newer than, Windows Vista: 1 Windows 7: 1 Windows 8: 1 > 9528 23:48:51.572 Disabling High DPI Scaling... > 9528 23:48:51.572 Loaded library: user32.dll > 9528 23:48:51.572 Loaded library: shcore.dll > 9528 23:48:51.572 Loading 'ddraw.dll'... > 9528 23:48:51.572 Hooking ddraw.dll APIs... > 9528 23:48:51.572 Enabling DDrawCompat > 9528 23:48:51.572 Process path: C:\Program Files (x86)\LEGO Media\Games\Rock Raiders\LegoRR.exe > 9528 23:48:51.572 Loading DDrawCompat dynamically from C:\PROGRA\~2\LEGOME\~1\Games\ROCKRA\~1\dxwrapper.dll > 9528 23:48:51.572 Loaded library: winmm.dll > 9528 23:48:51.573 Loaded library: uxtheme.dll > 9528 23:48:51.573 DDrawCompat v0.3.1 version loaded successfully > 9528 23:48:51.573 DxWrapper loaded! > 9528 23:48:51.917 Installing display mode hooks > 9528 23:48:51.961 Installing registry hooks > 9528 23:48:51.961 Installing Direct3D driver hooks > 9528 23:48:51.961 Installing Win32 hooks > 9528 23:48:52.019 Hooking user mode display driver: > C:\Windows\System32\DriverStore\FileRepository\u0405470.inf_amd64_2e71ce0e27c179e1\B404884\aticfx32.dll+0x5da20 > 9528 23:48:52.051 Dynamic vertex buffers are available > 9528 23:48:52.051 Dynamic index buffers are available > 9528 23:48:52.052 Checking source color key support: passed > 9528 23:48:52.054 Incorrect z-buffer bit depth capabilities detected; changed from "16, 32" to "16, 24" > 9528 23:48:52.058 Installing DirectDraw hooks > 9528 23:48:52.058 Installing Direct3D hooks > 9528 23:48:52.061 Installing GDI hooks > 9528 23:48:52.065 Finished installing hooks > 8688 23:48:52.066 Loaded library: dwmapi.dll > 9528 23:49:26.063 Quiting DxWrapper > 9528 23:49:26.063 DDrawCompat detached successfully > 9528 23:49:26.063 Unloading libraries... > 9528 23:49:26.063 DxWrapper terminated!
elishacloud commented 1 month ago

In fullscreen, the game just sits at a black screen with the audio playing.

Yes, this is a bug in dxwrapper. I am looking into the issue. I will try and put a fix in for this soon.

elishacloud commented 1 month ago

In fullscreen, the game just sits at a black screen with the audio playing.

This is the same issue as #301.

elishacloud commented 3 weeks ago

DDrawCompat black screen is fixed with the latest build.