Code Monkey home page Code Monkey logo

dxwrapper's Introduction

๐Ÿš€ Support the Project! ๐ŸŒŸ

Your support fuels development of the dd7to9 functionality to enable older games to run smoothly on current platforms. Whether it's a one-time boost via PayPal or ongoing monthly support on Patreon, your contribution ensures continued improvements and commitment to the growth of the project. Please note, your support is invaluable, but it won't influence specific game prioritization. Join us on this journey!

Support via PayPal | Patreon

DxWrapper

Introduction

DxWrapper is a .dll file designed to wrap DirectX files to fix compatibility issues in older games. This project is primarily targeted at fixing issues with running games on Windows 10/11, by simply dropping .dll and .ini files into the game folder. Its secondary purpose is to offer a single tool combining several projects into one.

Features

DxWrapper has many features including:

  • Integration of DDrawCompat
  • Configuring DDrawCompat options to improve compatibility
  • Proxy for DxWnd
  • Conversion of DirectDraw 1-6 to DirectDraw 7
  • Conversion of Direct3D 1-6 to Direct3D 7
  • Conversion of DirectDraw 1-7 (ddraw.dll) to Direct3D 9 (d3d9.dll) using Dd7to9
  • Conversion of Direct3D 1-7 (ddraw.dll) to Direct3D 9 (d3d9.dll) using Dd7to9
  • Conversion of Direct3D 8 (d3d8.dll) to Direct3D 9 (d3d9.dll) using d3d8to9
  • Conversion of DirectInput 1-7 (dinput.dll) to DirectInput 8 (dinput8.dll) using dinputto8
  • Includes LegacyD3DResolutionHack to remove the artificial resolution limit from Direct3D 1-7, which allows DirectDraw games to play at 4K resolution
  • Tweaking of Microsoft DirectSound function calls using DSoundCtrl
  • Can cause DirectDraw 1-7, Direct3D 8 and Direct3D 9 games to run in windowed mode
  • Can limit frame rate of games using or converted to Direct3D 9
  • Can enable or disable vertical sync on games using or converted to Direct3D 9
  • Can set GraphicsHybridAdapter for Direct3D 9 on laptops with multiple graphics cards
  • Can enable Direct3D9On12 for Direct3D 9
  • Can set vertex processing and cache modes to fix performance in some Direct3D 9 games
  • Can remove scanlines from DirectDraw 1-7 games
  • Can disable MaximizedWindowedMode (fullscreen optimizations) for Direct3D 8 and 9 games
  • Can disable High DPI scaling to solve issues with some games
  • Can disable Microsoft Game Explorer (GameUX) to prevent rundll32.exe high CPU
  • Can disable audio pops and clicks caused by games clipping audio while sound is playing
  • ASI loader to load custom libraries with the file extension .asi into game processes using Ultimate ASI Loader
  • Supports being loaded as an ASI plug-in
  • Adding AntiAliasing support into Direct3D 8 or 9 games even if the game does not support it
  • Hot patch memory support (update game memory at run time, can be used to remove CD/DVD checks or resolve graphics or other glitches)
  • Set single CPU affinity (some games have issues with multi-core CPUs)
  • Ability to set all 12 Application Compatibility Toolkit options for DXPrimaryEmulation using SetAppCompatData API
  • Set game window to fullscreen (some games have fullscreen issues)
  • Handling in-game exceptions or crashes
  • Load custom .dll files into games
  • Run custom processes at game start-up

Compatibility List for Games on Windows 10/11

So far I have tested this with hundreds of games (many of which don't otherwise work correctly) to get them running on Windows 10/11. Most games will work, but some still have issues. Check out the Compatible Games wiki and the Dd7to9 Supported Games wiki for a list.

Installation

  1. Download the latest binary release from the repository's Release page and unzip it to a folder.
  2. Determine which stub .dll file is needed for the game. This depends on many factors which will be explained on page created later. Common stub dll's to use are ddraw.dll, d3d8.dll, d3d9.dll, dsound.dll or winmm.dll. You only need to choose one stub file to load dxwrapper into the game.
  3. Copy this .dll file from the 'Stub' folder plus the dxwrapper.dll and dxwrapper.ini files into the game's installation directory, next to the main executable file. For some games the main executable is in a subdirectory (like 'Bin', 'Exe' or 'App') so the files will need to be copied it into that directory. Overwriting of any existing game files is not recommended.
  4. Open up the dxwrapper.ini file in a text editor and enable the settings needed for the game.

Do not attempt to overwrite any .dll in a Windows system directory as it is currently not supported and will not work.

Uninstallation

Delete the DxWrapper .dll and .ini files from the game's directory. You can also delete the log file, if there is one.

Configuration

To configure DxWrapper, edit the .ini file and enable the settings wanted. See the Configuration wiki for more details.

Sample configuration file: dxwrapper.ini.

List of all configuration options: allsettings.ini

Logging

The log file will be created in the same folder where the game executable is located. It will be named 'dxwrapper' with the name of the game executable appended to it. So if you are running the file game.exe then the log file will be called dxwrapper-game.log.

Supported DLLs

DxWrapper can wrap the following dlls:

  • bcrypt.dll
  • cryptbase.dll
  • cryptsp.dll
  • d2d1.dll
  • d3d8.dll
  • d3d9.dll
  • dciman32.dll
  • ddraw.dll
  • dinput.dll
  • dinput8.dll
  • dplayx.dll
  • dsound.dll
  • dwmapi.dll
  • msacm32.dll
  • msvfw32.dll
  • version.dll
  • wininet.dll
  • winmm.dll
  • winmmbase.dll
  • winspool.drv
  • wsock32.dll

License

Copyright (C) 2024 Elisha Riedlinger

This software is provided 'as-is', without any express or implied warranty. In no event will the author(s) be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
  2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
  3. This notice may not be removed or altered from any source distribution.

Credits

DxWrapper uses code from several other projects. So to give credit where credit is due, below is a list of locations that source code was taken from:

  • AppCompatData: Used comments from blitzbasic.com to build the feature to configure the DirectDraw AppCompatData settings.
  • Aqrit's ddwrapper: Includes code to read the ini config file.
  • cnc-ddraw: Includes code to create emulated surface device context.
  • d3d8to9: Includes the full Direct3D 8 to Direct3D 9 code.
  • D3DParseUnknownCommand: Includes code for DirectDraw D3DParseUnknownCommand from source code found in ReactOS.
  • DDrawCompat: Includes the full DDrawCompat v0.2.0b, v0.2.1 and Experimental version.
  • doom3.gpl: Includes code to get video memory.
  • diablo-ddrawwrapper: Includes some code for converting ddraw to Direct3D.
  • DSoundCtrl: Includes the full DirectSoundControl code.
  • DxWnd: Includes code from DxWnd for proxy loading (init.cpp) and exception handling.
  • GetComputerManufacturer: Includes code from rohitab.com to get the computer vendor and model.
  • GetFileVersionInfo : Includes code from stackoverflow.com for getting the version of a PE file.
  • GetPPID: Includes Code taken from mattn GitHub project to get the parent process PID.
  • LegacyD3DResolutionHack: Includes code from LegacyD3DResolutionHack to removes the artificial resolution limit from Direct3D 7 and below.
  • MemoryModule: Includes code for loading libraries from memory.
  • OllyDbg: Includes the full cmdlist.c and disasm.c (disasm.dll) code used for exception handling.
  • PixelShaderPalette: Includes code from ddraw-cnc for a PixelShader that is used to view DirectDraw palette surfaces properly.
  • SilentPatchFarCry: Includes code from SilentPatchFarCry to cache the clip plane in Direct3D 9.
  • Ultimate ASI Loader: Includes code for loading ASI plugins.
  • WineD3D d3d8.dll: Includes functions ValidatePixelShader and ValidateVertexShader.

Development

DxWrapper is written mostly in C++ using Microsoft Visual Studio 2022.

The project requires both the Windows 10 SDK and WDK (needs to have matching SDK and WDK versions installed). The exact version required can be seen in the project properties in Visual Studio.

GitHub Link: https://github.com/elishacloud/dxwrapper

Thanks for stopping by!

dxwrapper's People

Contributors

dkollmann avatar elishacloud avatar gverm avatar matnguyen avatar rebb avatar samsoneyc avatar trass3r avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dxwrapper's Issues

Enabling disable high DPI setting doesn't work

Hello,

I have a game that works when I manually set the disable high dpi setting or set it to Application. To save a few clicks (of going to properties and setting high dpi) I decided to use this. But unfortunately setting it on the .ini doesn't really do the same thing as manually going through properties..

16000 16:27:12.202 Starting DxWrapper v1.0.2383.20 DDrawCompat v0.2.1 DxWnd v2.03.60
16000 16:27:12.204 Windows 10 64-bit (10.0.17763) 
16000 16:27:12.204 Intel(R) UHD Graphics 620
16000 16:27:12.204 Game.exe (PID:18168)
16000 16:27:12.204 Reading config file: dxwrapper.ini
16000 16:27:12.204 Enabling d3d8to9 wrapper
16000 16:27:12.204 Loaded library: kernel32.dll
16000 16:27:12.204 Hooking 'GetModuleFileName' API...
16000 16:27:12.204 Disabling High DPI Scaling...
16000 16:27:12.205 Set exception handler
16000 16:27:12.205 Finished setting exception handler
16000 16:27:12.209 Hooking d3d8.dll APIs...
16000 16:27:12.213 Loaded library: d3d9.dll
16000 16:27:12.227 Enabling D3d8to9 function (220)
16000 16:27:12.988 Enabling D3d8to9 function (220)

This is the compatibility settings I use to make it work. I was hoping that I could use dxwrapper so I don't have to manually set the compatibility setting. Specially when redistributing.

[Diablo] Resolution

Is there any way to force Diablo to run full-screen without changing the monitor's resolution? Every time I launch the game, I end up having to resize my open window in Chrome when I'm done playing.

Blood Omen 2 Fix no longer working

As the subject name states, the Blood Omen 2 fix no longer works, with the log citing numero
us exceptions. Could be compatibility issues with the latest graphics card drivers or even windows updates.

Attached log as reference.
d3d8-bo2.log

CD Check on Diablo isn't disabled by fix

I tried the method provided here and copied ddraw.dll and ddraw.ini of your fix to my D:/GAMES\Diablo game folder, as well as the DIABDAT.MPQ file from the cd. But it still asks for the CD.

I'm using Diablo 1.0 retail CD, Windows 10 64. It works with the iso enabled in Drive E:\

Am I missing something? No compatibility setting changed anything about the CD check.

Hope u can help, as I'm out of ideas...

Cursor randomly flickers onto screen in Shogo

This is an issue that's been known about for awhile but mostly ignored/tolerated, but I was reading into solutions for the problem and really couldn't find any. We think it's caused by dgvoodoo 2 maybe, but it's necessary to use that utility otherwise the game doesn't render or capture correctly.

Bad Mojo Redux

Hello again Elisha,
like discussed here: FunkyFr3sh/cnc-ddraw#16
dxwapper is the only wrapper that does not crash Bad Mojo Redux.
But for the moment, no fullscreen and we have only quicktime sound, no video.
As you know I'm a Linux user, I launch Windows games with Wine.
Actually I'm using Wine 4.15 staging (Lutris version, virtual desktop mode on) on Ubuntu 19.04 with a Nvidia GPU.
I joined you log file for debug.
The idealistic objective will be to play this game FullscreenWindowMode , active vsync on with native gamer desktop resolution, with aspect ratio respected.
I played a lot with dwrapper.ini options without success.
Thank you for your help.

nota:
FullscreenWindowMode = 1 --> I can not see menu
DdrawUseNativeResolution = 1 --> still 640x480 wine window

dxwrapper-badmojo.log

Resolution issue with a obscure game

Hey Elisha. I'm having a problem with a game that I couldn't solve myself for quite a few months, so the only thing I could come up with was to ask for help from the masterminds behind Silent-Hill-2-Enhancements.

I'm not sure if this issue belongs in this specific repository, but I couldn't think of any other appropriate way to contact you.

The issue is the following: back in 2008, a visual novel was released for PC only and it was quite successful. It was a simple game running on a simple visual novel engine. 800x600 was a "common" resolution back then, so that naturally is what the game runs at.

Some time later, the game was vastly improved with a higher resolution of 1280x720, refined visuals, extra content and so on. This new version, however, was only released on consoles. Xbox 360, to be precise.

Turns out this improved Xbox 360 version was made on the exact same engine as the PC version. They basically ported its engine to console and worked from there.

The engine used is very mod friendly and almost everything is programmed using the game's script files instead of being hardcoded in the .exe

Because of that, by modifying the scripts, it is possible to "port" games from one build of this engine to another.
Naturally, people thought: lets port the improved X360 version of the game to PC. And it actually works... sort of. This is where the problem appears: Although games running on this engine are 99% programmed using scripts, the game's resolution is hardcoded in the exe.

Basically, we can port the game to PC using a build of the engine that was compiled for another game, but there is no existing version of this engine that renders a 1280x720 on PC. The highest we can get is 1024x768.

Because of that, only half of the game is displayed, since the game itself is bigger than the window itself.

I have programmed a simple example to illustrate what is happening.

This is my 1280x720 test image:

sWOYFua 1

This is how it looks running on a PC build of the engine that is hardcoded to run at 800x600:

cXfydSY 1

This is how it looks running on a build that is hardcoded to run at 1024x768:

WTm2lOg 1

Here is my question: is it possible to increase the resolution to 1280x720? You, Aero and ThirteenAG are the only people I know that could correctly answer, or perhaps help me to achieve this.

New Worlds

Hello, I've been trying to get Star Trek New Worlds to run, with
DDrawCompat= 1
DSoundCtrl= 1
I do get into the game, however after a few seconds it just freezes.
I'm using compatibility mode for windows 7, 16 bit color mode, disabled optimizations for full screen.
I've added the logfile I got from Process Monitor:
Logfile.zip
I got the feeling I'm missing something really small, since it does start and you can move around for a few seconds.
(Edited with new logfile, previous didn't properly include the whole game session)

StarTrekArmada1 Backgrounds

I Followed the instructions to download the fix for the game, and It ran. It even loads the missions, mostly. The game only loads in the textures for the ships and stations, It has the dilithium moons and asteroid belts. Just missing the space backgrounds and the build zones. They all still exist as certain places cant be utilized for building, so the assets are there, there are just no textures for them. All textures are visible in the cinematic mode, all textures are also visible in the cutscenes. It's not massive, but it is rather annoying, I was wondering what I could do to fix the issue?
img-4969
img-4968
img-4967
img-4966

Call of Duty 4 fails when creating the `D3DFMT_R32F` render target

Hello Elisha!
It's great lucky to find some code of Direct3D API logging but as you told this layer can be used to modify the D3D API calls from game program,so I'm thinking about solving an historical problem that annoying me for years----the Call of Duty 4(iw3 engine) on Intel GMA Gen3(900/950/3100/3150) GPUs.
The problem is the game will failed with
Create2DTexture( $floatz, 640, 480, 0, 114 ) failed: 8876086c = Invalid call
By analyzing the API calls of iw3sp.exe,I found that after the creation of D3D window,the program send such command
IDirect3DDevice9_CreateTexture, IDirect3DDevice9P<11a208a8>, UINT<280>, UINT<1e0>, UINT<1>, DWORD<1>, D3DFORMAT<**D3DFMT_R32F**>, D3DPOOL<D3DPOOL_DEFAULT>, IDirect3DTexture9PP<1d43614>, HANDLEP<0>, Format<72>, D3DFORMAT<**D3DFMT_R32F**>no POW2 texture!!! no POW2 texture!!! , HRESULT<8876086c>
As the code above,the program send rendering command using D3DFMT_R32F format,and according to the header file of swiftshader(https://github.com/bkaradzic/SwiftShader/blob/master/src/D3D9/Direct3D9.cpp)

case D3DRTYPE_SURFACE:
			if(usage & D3DUSAGE_RENDERTARGET)
			{
				switch(checkFormat)
				{
				case D3DFMT_NULL:			if(!Capabilities::Surface::RenderTarget::NULL_)			return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_R8G8B8:			if(!Capabilities::Surface::RenderTarget::R8G8B8)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_R5G6B5:			if(!Capabilities::Surface::RenderTarget::R5G6B5)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_X1R5G5B5:		if(!Capabilities::Surface::RenderTarget::X1R5G5B5)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A1R5G5B5:		if(!Capabilities::Surface::RenderTarget::A1R5G5B5)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A4R4G4B4:		if(!Capabilities::Surface::RenderTarget::A4R4G4B4)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_R3G3B2:			if(!Capabilities::Surface::RenderTarget::R3G3B2)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A8R3G3B2:		if(!Capabilities::Surface::RenderTarget::A8R3G3B2)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_X4R4G4B4:		if(!Capabilities::Surface::RenderTarget::X4R4G4B4)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A8R8G8B8:		if(!Capabilities::Surface::RenderTarget::A8R8G8B8)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_X8R8G8B8:		if(!Capabilities::Surface::RenderTarget::X8R8G8B8)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A8B8G8R8:		if(!Capabilities::Surface::RenderTarget::A8B8G8R8)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_X8B8G8R8:		if(!Capabilities::Surface::RenderTarget::X8B8G8R8)		return NOTAVAILABLE();	else return D3D_OK;
				// Integer HDR formats
				case D3DFMT_G16R16:			if(!Capabilities::Surface::RenderTarget::G16R16)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A2B10G10R10:	if(!Capabilities::Surface::RenderTarget::A2B10G10R10)	return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A2R10G10B10:	if(!Capabilities::Surface::RenderTarget::A2R10G10B10)	return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A16B16G16R16:	if(!Capabilities::Surface::RenderTarget::A16B16G16R16)	return NOTAVAILABLE();	else return D3D_OK;
				// **Floating-point formats**
				case D3DFMT_R16F:			if(!Capabilities::Surface::RenderTarget::R16F)			return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_G16R16F:		if(!Capabilities::Surface::RenderTarget::G16R16F)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A16B16G16R16F:	if(!Capabilities::Surface::RenderTarget::A16B16G16R16F)	return NOTAVAILABLE();	else return D3D_OK;
				case **D3DFMT_R32F**:			if(!Capabilities::Surface::RenderTarget::R32F)			return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_G32R32F:		if(!Capabilities::Surface::RenderTarget::G32R32F)		return NOTAVAILABLE();	else return D3D_OK;
				case D3DFMT_A32B32G32R32F:	if(!Capabilities::Surface::RenderTarget::A32B32G32R32F)	return NOTAVAILABLE();	else return D3D_OK;
				default:
					return NOTAVAILABLE();
				}
			}

The D3DFMT_R32F render target is actually Floating-point render target format,such format is avaliable even on the Geforce FX5200,but nor the Intel.
In the develop guide of GMA900(Same Gen3 core of GMA3100) P16
https://software.intel.com/sites/default/files/m/d/4/1/d/8/Intel_915G_SDG_Feb05.pdf
And the introduction of Intel X3000 Unified gpu architecture P13
https://www.intel.com/Assets/PDF/whitepaper/313343.pdf
Intel said it only supports fix-point render target and do not support the floating-type on Gen3 architecture.
So everything becomes clear,it's here any possible to modify the HRESULT of that call to SUCCESS or much better converting it into equally fix-point type instruction?
Some guys may talk with me that the Intel GMA3100 is completely crap and don't waste time on such rubbish but as you know in the old days of 2007-era even such crappy GPU gives much more pleasure than today's TitanX,but at that time I wasn't know very much about programming and it's quite regretful at that time.It's 10 years later and I'm finally be able to find what is going on with that game.Hope you can give a little advice to solve this problem
Best regards

SetAppCompatData info out of date

According to the source:

* SetAppCompatData code created based on information from here:
* http://www.blitzbasic.com/Community/post.php?topic=99477&post=1202996

website seems to be down, however, and I can't find any proper info on SetAppCompatData anywhere else. Any pointers? I specifically wanted to see if there is any documented way of toggling DXMaximizedWindowedMode.

[The Godfather] VP6 video player crash

Crash happens slightly after video starts playing on vista+ systems. Works on windows xp.

From my observations, something happens with video frames. Debugging shows that this is the last function executed (0x8C7520):

int __thiscall VP6_CODEC_INTERNAL::GetFrameFromList(int this)
{
  int v1; // edx
  bool v2; // zf
  int result; // eax
  int v4; // edx
  int v5; // esi
  int *v6; // edx
  int **v7; // esi
  int v8; // ecx

  v1 = *(_DWORD *)(this + 44);
  if ( v1 == this + 44 )
  {
    sub_957C80("VP6_CODEC_INTERNAL::GetFrameFromList() out of frames did you call CODEC::ReleaseFrame( FRAME *Frame )\n");
    result = 0;
  }
  else
  {
    v2 = v1 == 8;
    result = v1 - 8;
    v4 = *(_DWORD *)v1;
    v5 = *(_DWORD *)(result + 0xC);
    *(_DWORD *)v5 = v4;
    *(_DWORD *)(v4 + 4) = v5;
    *(_DWORD *)(result + 8) = 0xB;
    *(_DWORD *)(result + 12) = 0xB;
    if ( v2 )
      v6 = 0;
    else
      v6 = (int *)(result + 8);
    v7 = *(int ***)(this + 40);
    v8 = this + 36;
    *v7 = v6;
    *(_DWORD *)(v8 + 4) = v6;
    v6[1] = (int)v7;
    *v6 = v8;
    *(_DWORD *)(result + 16) = 1;
  }
  return result;
}

Basically, on windows xp, ( v1 == this + 44 ) never happens and everything goes fine, on win10 for example, first 1 or 2 frames gets processed like usual, then on 3rd frame v1 equals (this + 44) for some reason and it crashes.

Since it works on winxp, I'm not sure what kind of "bug" to look for. To avoid crash you can rename movies folder or write 0x75 at 0x8C7B13. That will skip movies.

I also tried to modify that VP6_CODEC_INTERNAL::GetFrameFromList function, so it always uses first frame pointer, that resulted in black screen appearing instead of video and audio worked fine.

Another way to get black screen with audio is to use shim:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Direct3D\Shims\EnableOverlays]
"Z:\\WFP\\Games\\The Godfather\\godfather.exe"=dword:00000001

That obviously won't work with any kind of windowed mode.

[Silent Hill 2] Porting audio from PS2 build to PC

Hi @elishacloud !

This is a branch/continuation of our discussion found here accompanied with input by @AeroWidescreen:
crosire/d3d8to9#24

While Silent Hill 2 for the PC is being wonderfully fixed by the fine folks over at Widescreen Fix, in addition to your's and Crosire's work with ReShade D3D8to9, there are still a few lingering issues left for the PC version that put it behind its PS2 counterpart. Most notable is the audio/sound issues and lack of soft shadows for the PC iteration.

First, if/when you have a spare 25 minutes I'd strongly recommend watching this video that breaks down the differences between the main releases of SH2 for various platforms:
https://www.youtube.com/watch?v=nna2yt1c9gI

In regards to the audio:
All versions of SH2 except for the PS2 version have compressed the audio files into a lossy format. This is further explained here:
https://www.youtube.com/watch?v=nna2yt1c9gI&t=403

And while this situation is less than ideal the tone and pitches for the audio files have also changed during the conversion. You can hear this in action here:
https://www.youtube.com/watch?v=8E5Nt8ahZRk

So while typically only audiophiles will be able to hear the reduced bitrate of the compressed audio files everyone can pick up on these tone/pitch differences. It's equal parts strange and silly this happened.

The solution-in-theory then is to somehow extract the sound libraries from the PS2 disc and convert/transpose those files to the PC version. In a perfect world the libraries would have the same naming/file structure conventions so it would hopefully be a straight-foward process of replacing the files. But I don't know if that's the case as I have yet to find a definitive piece of software to extract content like this from a PS2 disc.

But ultimately the end goal here would be to find a way to transplant the PS2 game's sound files into the PC game's folder.

From your knowledge and past experiences do you think such as task if feasible?

In regards to the shadows:
Both the PS2 and Xbox versions of the game utilize soft shadows in the game's world whereas the PC version uses simple, hard edge volumes which results in razor-sharp shadow lines. This reduction in shadow quality not only looks less than desirable but also hurts the game's atmosphere.

You can learn more about the PC's shadows vs. consoles here:
https://www.youtube.com/watch?v=nna2yt1c9gI&t=836

And in the same video they discuss more about the soft shadows being used in the PS2/Xbox versions here:
https://www.youtube.com/watch?v=nna2yt1c9gI&t=353

And here:
https://www.youtube.com/watch?v=nna2yt1c9gI&t=701

Do you think implementing soft shadows would ever be feasible for this game and something within your skill set to do? If you think it is, let me know and if you'd be interested in looking into this as I would spread the word around about what you'd be trying to do and get other fans to donate to your cause. This would probably be one of, if not the, hardest mods to do for the game so compensation is absolutely a requirement for such a major task/time commitment.

[Star Trek Armada] Doesn't start

Windows 10, Nvidia GTX 960

I've installed a fresh copy of Armada, to remove every trace of old tools, but your fix doesn't seem to work. It crashes on startup, before even the menu. On the Fleetops forum, you ask for a ddraw-armada.log, but it's not generating one of those at all. The closest thing is draw-splash.log, which generates from running Splash.exe and clicking "play", which I've attached. Running Armada.exe simply shows the orange Armada box for a moment, and then crashes.

ddraw-splash.log

Menu misalignment on G:OC fix

The Gangsters: Organized Crime fix works like a charm at bringing menu text back (at least on the main menu), but the clickable areas of the buttons now appear to be misaligned, e.g. clicking somewhere on the left side of the Tutorial button exits out of the game. I followed the install procedure (extract dsound.dll and .ini into the game folder) and made sure to check the compatibility settings for the game .exe.

Only 1 screen resolution is available in Empire Earth II with dxwrapper.

Hi Elisha. As first, thank you for your work on dxwrapper and contribution to d3d8to9 development.
I'm creator of Unofficial Patch 1.5 for Empire Earth II: https://www.ee2.eu/patch/
I'm using a modified version of crosire's d3d8to9 to fix game problems and support DX9.

I knew that dxwrapper existed for quite a long time, but I never had a chance to test it. Today, I wanted to try something new, especially after seeing:

Adding AntiAliasing support into DirectX 8 or 9 games even if the game does not support it (Windows 10 only)

After starting the game with dxwrapper, I came to an issue where screen resolutions are not displayed on the list:
https://i.imgur.com/diqvAMe.png

(for comparation):
https://i.imgur.com/lZ64jBK.jpg

I tried modifying "dxwrapper.ini" with different settings, but nothing helped to display screen resolutions.

I came to a conclusion that dxwrapper might have too many fixes which are not needed for this game to work on Windows 10. Do you know if I can modify d3d8to9 in any easy way to enable AntiAliasing, or this would rather require to load much more libraries?
Also, do you think AntiAliasing could cause some performance degradation, or it shouldn't matter that much? (This game already is horribly optimized).

Greetings.

EDIT:
Sorry, it seems like DxWnd was the issue. After removing it's .dll file from game folder, dxwrapper starts with all resolutions :)

Windows 7 Support

Hi Elisha,

Do these wrappers work on Windows 7 Ultimate 64bit?

There is a set of dll files in the main Dxwrapper.zip archive but there are also dll files in subfolders of the zip archive (such as v0.2.1, v0.2.0b). Which ones are the latest files?

Thanks.

Laghaim

Think you could make it work with Laghaim? It's a Korean game I think and the most famous western server is http://www.lhgenericname01.lc, it's SUPER laggy in windows 10.

Star Trek Armada (1) not starting

So I followed the tutorial and anstalled Armada from my CD, then installed 1.2 and 1.3 and then put the three files in Armada's root directory (and overwrote the old three).
After it hasn't worked I enabled compatibillity (Windows suggested Windows XP SP2 level), changed to 16 bit color mode and enabled "run as admin".

When I start it the screen changes the resolution a few times between (i guess) 640x480 and back to normal, the little splash image is centered in my screen, the screen turns black for 1/2 second and the program stops.

Is the german version supported by your patch?

BloodRayne 2

Sorry if this is the wrong place to post, but I couldn't find a solution elsewhere yet.

There exists an unofficial "FSAA Patch" that adds new features to the game.

BR2 FSAA Patch 1.666.zip

However with the patch installed it crashes the game on startup. The developer commented that it's a problem with a Windows 10-specific call:

IDirect3D8::CreateDevice(Adapter: 0, DeviceType: 1, hFocusWindow: 2165074, BehaviorFlags: 66|D3DCREATE_FPU_PRESERVE|D3DCREATE_HARDWARE_VERTEXPROCESSING, PresentationParameters: (0x00A013F4BackBufferWidth: 2560, BackBufferHeight: 1440, BackBufferFormat: D3DFMT_X8R8G8B8, BackBufferCount: 1, MultiSampleType: 4, SwapEffect: D3DSWAPEFFECT_DISCARD, hDeviceWindow: 2165074, Windowed: false, EnableAutoDepthStencil: true, AutoDepthStencilFormat: D3DFMT_D24S8, Flags: NONE, FullScreen_RefreshRateInHz: D3DPRESENT_RATE_DEFAULT, FullScreen_PresentationInterval: D3DPRESENT_INTERVAL_IMMEDIATE), ReturnedDeviceInterface: 0x00000001)

I'm on Windows 8 and I also tried the workarounds detailed in that thread (disabling AA color samples/enabling MSAA externally etc.) to no avail. Is there anything I missed or any insight on how to use this patch that you know of? Thanks.

Metal Gear Solid 1 - Bugged FMV

Not sure if this any related the DirectX or something, but the FMV doesnt show up correctly, only sound can be heard. Supposedly it only works on W98.
metal gear solid mgsi exe screenshot 2018 05 18 - 11 23 13 65

AvP2/LithTech Jittery Mouse fix?

Would it be possible to get some fix for dinput.dll to fix the jittery mouse in Aliens Vs. Predator 2, and other LithTech games like No One Lives Forever?

It seem to stem from USB mice with poll rates higher than 125hz, and many mice can't be set that low, making these games unplayable. I've tried DI-Wrapper, but it doesn't fix it, and makes things worse by not allowing you to shoot (clicks don't register).

[Silent Hill 2] Checklist of Remaining/Wishlist Fixes

(Note: This thread was made a few days before the creation of the SH2 Enhancements Repository)

I'm doing a play through of Silent Hill 2 again for the Enhanced Audio project and I was making mental notes of the remaining "wishlist" fixes and wanted to post them for posterity purposes.

Noted areas for improvement:

Discussion thread

  • Integration of soft shadows
  • Shadows do not cast on dynamic (movable) objects (they do on the console versions)
    Discussion thread
  • Fix bugged lighting sources for a few areas in the game
    Video Example 1 | 2 | Discussion thread
  • Increase draw distance for either just Woodside Apt 2F Hallway or whole game FIX IN PROGRESS
    Video example | Solution
  • Fix "Eddie/Laura bowling scene" black fade out regardless if Fix2D or similar is on/off
    GIF example
  • Adjust fixed camera angles in several spots to hide camera clipping through wall FIX IN PROGRESS
    Discussion thread
  • Fix camera stutter in Hospital, 3F, Rm S3 FIX IN PROGRESS
    Video example | Discussion thread
  • Remove one-frame flicker when an in-game cutscene changes to motion blur. (If not possible then have the option to disable the game's motion blur altogether then in the ini file?)
  • Have the game cursor (used for interacting with full screen images) default to center of the screen each time like the console versions. This is due to the cursor being off-screen whenever Fix2D and FullScreenImages are enabled in the Widescreen Fix. FIX IN PROGRESS
    Solution
  • Keep hanging meat always "loaded in" during final Eddie confrontation cutscene.
    Video example | Discussion posts
  • Fix the very silly animation bug for when James gets on the rowboat. FIX IN PROGRESS
    Video example | Solution
  • Implement language subtitle "packs" for the game?
    Discussion post
  • Fix loading zone color values for cemetery area to fix environment Quick Save load bug. FIX IN PROGRESS
    Video example | Solution
  • Fix luminescence of James, dress, and Mannequin in Room 205. A FIX HAS BEEN FOUND
    Discussion Post | Solution

Fixed!:

  • Integration of PS2 quality sound files ("Enhanced Audio" project)
  • Game map & save screen fix: Currently, if you're on the streets of Silent Hill during the day time the pillar boxes are grey, not black. This is true for any area where the game has set the time of day to "day" (and not "night").
    Image example | Discussion post
    There has been breakthrough discoveries in implementing high res, widescreen images for the game so this fix will be redundant if a HD image mod comes to fruition.
  • Game map & save screen fix: Currently, the markings on the maps and save file's floating, enlarged text are always visible and stay above the pillar boxes. They should be behind the pillar boxes.
    Video example
    There has been breakthrough discoveries in implementing high res, widescreen images for the game so this fix will be redundant if a HD image mod comes to fruition.
  • Game map fix: There are no pillar boxes at all whenever James transcribes notes onto his own map. (James transcribes notes onto his own map several times throughout the game.) You can see the game environment instead where the pillar boxes should be.
    Video example
    There has been breakthrough discoveries in implementing high res, widescreen images for the game so this fix will be redundant if a HD image mod comes to fruition.
  • Fix Lying Figure cutscene camera "pop" and looped animation
    Video example | Discussion thread
  • Integration of anti-aliasing (possibly done through SMAA?)
    Alternate solutions have been found for anti-aliasing which have been reflected in the Installation Guide.
  • Integration of WineD3D's fixes without having to use WineD3D (wise to do so?)
    It is no longer necessary to do this.
  • Adjust WSF to accommodate new 16:9 FMVs (currently there are still small pillar boxes when FMVWidescreenEnhancementPackCompatibility is turned on).
    Discussion thread

help with fixing swat 2

I was wondering if you could give some advice with improving Swat 2's fps at higher resolutions.
it seems to be bound to the size of the playable viewport since i can resize to make it smaller to make the game playable again or make it larger to fit a modern resolution but it causes to be unplayable.

I've used dxwrapper,dgvoodoo and many other things

heres a video of it in action https://www.youtube.com/watch?v=j0UYJCSgN9M

Fullscreen is not working?

Hey, thank you for your effort on this project. I'm using the last release

In my Settings.ini is this setted:

[Window]
FullScreen = 1

When it starts it shows me a DxWnd screen for 1 second and then my exe opens windowed.

windowed

The seetings.ini or any .ini is completely ignored.

I can exclude it and my exe continues to load windowed and with DxWnd load screen. Just because of the dxwnd.dll i've put in the folder.

Why it is not considering the settings file?

Update Configuration Wiki

The current configuration wiki provided is not complete and/or outdated. It causes confusion to me and probably many other people. Could you update it at least 1 by 1 when you have free time?

D3D9 reading internal fields of resources?

Notice this is not about dxwrapper at all, more about a weird discovery I just had with a D3D9 wrapper (which might affect yours too).

Take a look at this crash:

image

And this code it crashed at:

image

Why has this never been a problem? Looks like D3D9 reads an internal field of this D3D9 vertex buffer here!

dgVoodoo + DxWnd + dxwrapper

For a game I am trying to fix (Tonic Trouble), in order for it to work perfectly I need to run it with both dgVoodoo (wrapping around ddraw.dll) and DxWnd. On top of this, I would also like to use dxwrapper for it's ability to load ASI/DLL files, which I will be using to further enhance the game. Without dxwrapper, I can use dgVoodoo and DxWnd's proxy DLL to load them both at the same time.

The problem is, when I try and use dxwrapper to load DxWnd rather than DxWnd's proxy DLL, it doesn't work with dgVoodoo and all DxWnd tweaks have no effect. If I remove dgVoodoo it does wrap it, but DxWnd alone has serious graphical issues with this game.

Chaser (CloakNT 1.x) Support

Looks like DXWrapper successfully can wrap Chaser!

18768 22:42:04.701 Starting DxWrapper v1.0.6298.21
18768 22:42:04.701 To Be Filled By O.E.M. To Be Filled By O.E.M. To Be Filled By O.E.M. (Desktop)
18768 22:42:04.701 ASRock B150M-ITX                        (Desktop)
18768 22:42:04.701 NVIDIA GeForce GTX 1050 Ti
18768 22:42:04.705 Windows 10 64-bit (10.0.18970) 
18768 22:42:04.705 "Chaser.exe" (PID:636)
18768 22:42:04.713 Steam game detected!
18768 22:42:04.713 DxWrapper already running!
18768 22:42:04.713 Quiting DxWrapper
18768 22:42:04.713 Unloading DxWnd
18768 22:42:04.713 Unloading libraries...
18768 22:42:04.713 Reseting screen resolution
18768 22:42:04.740 DxWrapper terminated!

compatibility on o2jam

http://o2jam.com.ph

Theres an issue, when i enable ddrawcompat on the ini it works but the website doesnt work ingame
When i disable ddrawcompat everything lags and the web works again
you can try my game, btw im using the ddrawcompat ddraw on the main game

and another issue with ddrawcompat is you cannot use any overlay apps like discord, twitch, fraps, bandicam

Request show FPS

Can you please add the ability to show FPS in the game, like in DxWnd?

RealDllPath not working

I'm trying to get this working with Tonic Trouble and dgVoodoo in the following fashion:

  • The stub DLL is named "ddraw.dll".
  • dgVoodoo's ddraw.dll is named "dg_ddraw.dll".
  • In ddwrapper.ini, RealDllPath is set to dg_ddraw.dll.

However, the ddraw.dll loaded by dxwrapper is the system's "ddraw.dll" and not the "dg_ddraw.dll" I set in the ini. The log shows that the configuration file was loaded correctly.

Help with Sonic Mania Plus

Hi!

I've been trying to integrate WineD3D to Sonic Mania Plus because apparently fixes the random missing background music and the FMV sequence on Intel graphic cards, but if I use WineD3D, it won't work the Sonic Mania Mod Loader (a program wich allow you to use any mod on Sonic Mania). I've tried to use the d3d8.dll file from Silent Hill 2: Enhanced Edition on Sonic Mania Plus and works awesome, but again, the Mod Loader won't work. This Mod Loader generates a d3d9.dll file that allows the program to work correctly.

My question is: Is it possibly to add the fixes from WineD3D or the d3d8.dll file from SH2:ED into the d3d9.dll file generated by Sonic Mania Mod Loader?

This is the original file generated by Sonic Mania Mod Loader: https://www34.zippyshare.com/v/j4hJVIrw/file.html

Unofficial Arcanum Patch

I'm playing Arcanum with the Unofficial Arcanum Patch available here: https://terra-arcanum.com/drog/uap.html

One of the features is the HighRes mod that allows the game to be played in a higher resolution without having to stretch so many things. While I do like this, I would like to have some stretching.

My thinking was I would configure HighRes to install at 1280x720 resolution (which is the default configuration for HighRes) and then have DxWnd stretch it to 1600x900. Unfortunately no matter what I tried, I could not get this to work. The game would launch but it would render in the bottom right corner only. I could get it to behave differently depending on whether or not I used the ddraw.dll from HighRes. I tried using the one that came with the game as well (via GOG, which supposedly has issues), but that would crash instantly when used with HighRes + DxWnd.

I have also set DDrawCompat to 1 in dxwrapper.ini, which seems to be necessary in every case. There are more features from DxWnd I would really like to utilize, such as the ability for the cursor to leave the window without having to alt+tab out.

I would appreciate any guidance you could give me, and it would also be helpful to know whether I should use HighRes's ddraw.dll, GOG's ddraw.dll, or just leave it deleted because dxwrapper.dll is supposedly handling that functionality.

Sorry if this issue is a bit unorganized but my brain is a bit fried after all the hours of tinkering I've been doing on this game. Cheers.

Rayman 2 - started to have blurry and distorted graphics

Rayman 2 started to have blurry and distorted graphics.

On my previous HD 7xxx and 1.8.8.1 drivers it worked.
It helped on FPS dips in comparison to wined3d from Uplay.

Now I have 19.3.4 drivers with RX xxx.

The game started to have blurry and distorted graphics
DX6 in GXSetup set, ddraw, ini, and dxwrapper placed in Rayman 2 folder.
In the second attempt I tried all the files.

What is more interesting, now without any wrapper on DX6, there is also bad graphic bug.
Previously it worked correctly.

On WineD3D provided with Uplay it works fine, but you need to wait ~1 minute on small white screen, untill the game shows up. It wasn't happening before too.

I checked all options in sections:
AppCompatData
Compatibility

to set = 1

but it didn't changed anything.

In the second attempt I tried to set DDrawCompat = 1
but it gives black screen (yes I waited above 1 minute, and nothing).

In the third attempt I copied all the files from stub and root folder, but still the same graphical glitch.

I tried also running Dxwnd in background, later with dxxwnd =1 in config, but still nothing.

Later I added Rayman2.exe to DXWnd according to instruction here:
https://pcgamingwiki.com/wiki/Rayman_2:_The_Great_Escape#Windowed

But still nothing. Also, DX1~6, DX9, Auto, forces Hel, Optimize CPU, DGI, Hybrid tested in DXwnd.

How about adding shader scalers ability?

Adding hardware shaders sclaers ability would be great for this wrapper.

With this you could download any shader scaler - for example a hq2x shader scaler , OR xbrz OR super xbr shader.

You could use any shader scaler you could find on the Internet.

It would breath new life into old low resolution programs.

Colin McRae Rally (1)

I used to be able to run the game on W10 using only this ddraw.dll and nothing else, not even a compatibility mode was required: https://www.speedrun.com/patches/DDRAW_-_fixed_ud62s.zip (comes out it is Nazroul's DDrawCompat), but that didn't work for any of my friends.

For some time applying this same dll now causes texture artifacts in menus and weird transparency problems in game.
Using dxwrapper (without DDrawCompat mode) fixes menus, but introduces back FPS drops to 0-1 in menus, making service areas a huge pain. (Especially when we want to speedrun the game) And there are still problems with transparency.
dgVoodoo seems to be doing the best job right now as it lets me play the game fine, but also causes sudden jumps of camera and randomly crashes when advancing through stages and other.

Is there any chance to get the game running?

Pictures: imgur.com/a/VKr6mLV

Armada 1

Hello.
First of all thanks very much for the DXWrapper for Armada 1 for Windows 10. Great to be able to fire it up again.

However I'm having an issue with the game I'm hoping you can help with. I am completely unable to use any in-game drop down menus. The menu will drop down fine, but flicker then close. This stops me from doing things like changing the resolution so I'm stuck with the 640*480 resolution for now.

The Guild 1 Steamversion

Hey idk if you know the guild 1 its a old game from thq nordic.
The gog version which uses the gildegold.exe works flawless with the ddraw.dll

but the steam version does not.

it uses the Europa1400Gold.exe or 1400Gold_TL.exe
It crops some textures.

[Improvement] RunProcess After the Game Closes

Is it possible to make the wrapper to run a process not only at the start of the game but also after the game closes?

I need this feature to move save game folder at the start of the game and move it back to the previous directory after the game closes (instead of making a looping command that check if the game is still running). Of course this will require extra attention to some people if the game use a launcher that closes after launching the actual game EXE file, but I think it's already handled by IncludeProcess or ExcludeProcess.

Gangster Organized Crime - UnhandledExceptionFilter: exception code=3221225477 flags=0 addr=00000000

Hi,

Sadly, I'm not having the same success as others on this

  1. My GFX - Nvidia Strix GTX980
  2. Editing dsound.ini with DDrawCompat = 0 - Makes the crash go away, but, same as before, no menu text
  3. Editing dsound.ini with DDrawCompat = 1 - Produces this error log:

15748 22:36:24.159 Starting DxWrapper v1.0.2114.20 DDrawCompat v0.2.1 DxWnd v2.03.60
15748 22:36:24.160 Windows 10 64-bit (10.0.15063)
15748 22:36:24.160 gangsters.exe (PID:1552)
15748 22:36:24.160 Reading config file: E:\Games\GoG Games\Gangsters\dsound.ini
15748 22:36:24.162 Disabling High DPI Scaling...
15748 22:36:24.162 Set exception handler
15748 22:36:24.163 Hooking ddraw.dll APIs...
15748 22:36:24.163 Process path: E:\Games\GoG Games\Gangsters\gangsters.exe
15748 22:36:24.163 Loading DDrawCompat from E:\Games\GoG Games\Gangsters\DSOUND.dll
15748 22:36:24.163 Loading dinput.dll
15748 22:36:24.163 Loaded dinput.dll library
15748 22:36:24.163 Loading uxtheme.dll
15748 22:36:24.163 Loaded uxtheme.dll library
15748 22:36:24.163 DDrawCompat loaded successfully
15748 22:36:24.163 Loading dxwnd.dll
15748 22:36:24.165 Loading E:\Games\GoG Games\Gangsters\DSOUND.dll
15748 22:36:24.165 Loaded E:\Games\GoG Games\Gangsters\DSOUND.dll library
13772 22:36:24.177 Starting fullscreen thread...
15748 22:36:25.532 Installing DirectDraw hooks
15748 22:36:25.587 Installing GDI hooks
15748 22:36:25.592 Installing registry hooks
15748 22:36:25.592 Finished installing hooks
15748 22:36:28.731 Loading winmm.dll
15748 22:36:28.731 Loaded winmm.dll library
15748 22:36:28.771 Loading dwmapi.dll
15748 22:36:28.771 Loaded dwmapi.dll library
15748 22:36:33.444 GDI used DC cache size: 1
15748 22:36:33.451 UnhandledExceptionFilter: exception code=3221225477 flags=0 addr=00000000
15748 22:36:33.468 UnhandledExceptionFilter: exception code=3221225477 flags=0 addr=00000000

  1. Running the .exe from the Game directory, as Admin
  2. Compatibility mode - Windows XP (Service pack 2)

Cannot open include file: 'detours.h': No such file or directory

Severity Code Description Project File Line Suppression State
Error C1083 Cannot open include file: 'detours.h': No such file or directory dxwrapper C:\Users\XXX\Downloads\dxwrapper-master\DDrawCompat\Experimental\Common\Hook.cpp 11

Maybe retargeting the solutions is causing this but I can't be blamed for having the latest version of windows sdk and visual studio so.. :(

Windowed Gangsters: Organized Crime?

Thank you for your Windows 10 patch for Gangsters: Organized Crime! But when I try to use DxWnd to play it in windowed mode the game just crashes, is there a configuration which is used to run it in windowed mode?
Thanks

Issues in the latest versions (stub files)

This happens only for now in GTA San Andreas, using an earlier version of the stub file (v1.0.2383.20), but with the latest version of dxwrapper.dll the game works fine, but when using the stub of the latest version the game does not start and does not even create the log files
by the way, im renaming any stub file to vorbisFile.dll, or d3d9.dll

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.