Diablo Backwards Compatibility Guide
#41
Hi Vagelaras! To download the file, right-click on the link for the 32-Bit file, choose "Save as..." to get the file.

To use the file once downloaded, simply open it like you would a document or program. Windows will ask you to confirm merging the new registry entries, say yes. That should be all you have to do.

I've personally come to prefer the DirectDraw wrapper fix instead, since it works with all versions of Diablo and Hellfire, and even other games. If you can't get the Registry file working, I'd check into that (listed as Method 1 in Slayer's original post).
Reply
#42
Many thanks, the first method worked.
Reply
#43
Updated for compatibility with newer graphics cards.

ToDo:
1) add method 4 to hellfire section (essentially the same method for hellfire as well)
2) test newer graphics card compatibility on windows8 using Method 4 (works perfect on windows 7, but...)
3) test method#4 compatibility on MacOSX and Linux (this is essentially just for running the game in higher resolutions)
4) create an easy to follow compatibility installer of some kind, to make Diablo more accessible to the masses.
5) post all archived mods that I have gathered over the years
6) update links with mirrors, just incase links go dead over time.
Quote:
I can see what you see not
Vision milky, then eyes rot
When you turn they will be gone
Whispering their hidden song
Then you see what cannot be
Shadows move where light should be
Out of darkness, out of mind
Cast down into the halls of the blind
Reply
#44
Hello,

I am having a problem getting it to run. I bought Windows 7 Professional so I could use the XP Mode, installed the game, but I get an error everytime I try to load it:

"Hellfire (or Diablo) was unable to properly initialize your video card using DirectX. Blah, blah blah....

The error encountered while trying to initialize the video card was:
Not implemented
at: dx.cpp line 183"

I installed the 1.09 patch, then installed Hellfire, then installed the Hellfire patch. I then went and installed DirectX 9, then the video card drivers for Windows XP 32 bit. I tried the method in the first post of this thread. Nothing works. Very frustrating, as I have never had any issues playing Diablo on XP machines before. I had an XP machine specifically for playing old games, but it died which is why I had to get Win 7 Pro. Waste of money so far...
Reply
#45
Hi CaptainSassyPants, I think can offer some insight into this. Microsoft's vaunted "Windows XP mode" for Windows 7 is only meant to run programs in a window. As far as I know, anything full screen (like Diablo) or requiring 3D graphics won't work at all. That makes XP Mode virtually useless (no pun intended) for gaming purposes. Disappointing, isn't it?

As someone who plays a lot of older PC games myself, I went through XP Mode like you did, found out it couldn't do what I wanted, and looked for an alternative. The alternative I found was VirtualBox (free!), which probably does exactly what you had hoped XP Mode would do. As long as you have a copy of Windows XP to install, you can get it running in VirtualBox and have an XP that runs in a window on your Windows 7 desktop - or full-screen if you prefer.

VirtualBox impressed me - I was able to get a multiplayer session of Diablo running on real IPX. At the time though I couldn't make full-screen games fill the entire display... hopefully they fixed that by now, as it was years back. Either way, VirtualBox will get you far closer to a real working XP system than XP mode could dream of.

Honestly though? I found out I didn't really need XP or VirtualBox. Almost every single old game I have works fine on Windows 7. Some took a little extra work, but I was surprised overall. As far as compatibility goes, the 'big hole' seems to be early Windows games; DOS games (use DOSBox or source ports) and Windows XP era stuff seem in pretty good shape on Windows 7.

So, depending on the size of your old game library, you may not need XP at all. But if you have a lot of super early Windows games you like, circa Win 3.1 to Win 98, you may need it. There are alternative to VirtualBox out there for running XP, if you don't like it, but many cost money. Good luck.
Reply
#46
(02-12-2014, 02:10 AM)CaptainSassyPants Wrote: Hello,

I am having a problem getting it to run. I bought Windows 7 Professional so I could use the XP Mode, installed the game, but I get an error everytime I try to load it:

"Hellfire (or Diablo) was unable to properly initialize your video card using DirectX. Blah, blah blah....

The error encountered while trying to initialize the video card was:
Not implemented
at: dx.cpp line 183"

I installed the 1.09 patch, then installed Hellfire, then installed the Hellfire patch. I then went and installed DirectX 9, then the video card drivers for Windows XP 32 bit. I tried the method in the first post of this thread. Nothing works. Very frustrating, as I have never had any issues playing Diablo on XP machines before. I had an XP machine specifically for playing old games, but it died which is why I had to get Win 7 Pro. Waste of money so far...
That sounds like some sort of driver issue with your card, or somethig wrong with your directX installation, or at least something went wrong in that respect. You're absolutely sure you tried all of my methods? Including the new one for newer graphics cards? You'll get a whole crap load of weird errors and bugs if you have a newer card unless you use that method.

If you send me your specs, a little bit more information about your errors, and a step by step walk through of where and how exactly you installed diablo, as well as your diablo CD version(1.00 original CD, or 1.08 win/mac hybrid cd) and a step by step instruction set of how you were applying the patches, I'll certainly do my best to try to retrace all your steps and see if i can figure out what went wrong.

But for the most part you shouldnt actually need any compatibility settings on Windows7 except for "Run as administrator".

Im a little bit busy with university at this time, but I'll check back here frequently for the next few days to try to help you where I can.
Quote:
I can see what you see not
Vision milky, then eyes rot
When you turn they will be gone
Whispering their hidden song
Then you see what cannot be
Shadows move where light should be
Out of darkness, out of mind
Cast down into the halls of the blind
Reply
#47
I really should get around to re-writing and re-organizing this guide to both make it easier to understand and read, and also to make some correctons and improvements to the methods listed here already...maybe that's what the next update will be for.

Until then I think I'll record a playthrough on Linux to show off how the compatibility with that works.
Quote:
I can see what you see not
Vision milky, then eyes rot
When you turn they will be gone
Whispering their hidden song
Then you see what cannot be
Shadows move where light should be
Out of darkness, out of mind
Cast down into the halls of the blind
Reply
#48
(02-15-2014, 08:11 AM)Slayer_X64 Wrote: I really should get around to re-writing and re-organizing this guide to both make it easier to understand and read, and also to make some correctons and improvements to the methods listed here already...maybe that's what the next update will be for.

If you Google for "diablo 1 on windows 8", this is the #2 result behind Microsoft's official site. So this guide definitely gets attention!
Quote:Considering the mods here are generally liberals who seem to have a soft spot for fascism and white supremacy (despite them saying otherwise), me being perma-banned at some point is probably not out of the question.
Reply
#49
I cannot for the life of me get Diablo 1 working on my Windows 7 machine.

My PC setup:
Windows 7 Ultimate 64bit
16GB RAM
GTX 670 with very latest WHQL drivers
i7 2600k @4.6ghz
Diablo installed on SSD in Program Files(x86) folder

I tried methods 1-4, but no matter what I try, the game immediately crashes on startup. In Windows Event Viewer I get this: http://pastebin.com/mP4jLvTT

Any help/insight would be greatly appreciated. Willing to try/re-try any method at this point.
Reply
#50
You could always try running an older version of Windows under a VM such as VirtualBox.
"What contemptible scoundrel stole the cork from my lunch?"

-W.C. Fields
Reply
#51
(03-06-2014, 03:19 AM)Krazy Wrote: I cannot for the life of me get Diablo 1 working on my Windows 7 machine.

My PC setup:
Windows 7 Ultimate 64bit
16GB RAM
GTX 670 with very latest WHQL drivers
i7 2600k @4.6ghz
Diablo installed on SSD in Program Files(x86) folder

I tried methods 1-4, but no matter what I try, the game immediately crashes on startup. In Windows Event Viewer I get this: http://pastebin.com/mP4jLvTT

Any help/insight would be greatly appreciated. Willing to try/re-try any method at this point.

Honestly, that sounds like a graphics card issue. Now let me elaborate in that its nothing wrong with your graphics card specifically, its just Diablo is very finicky with alot of newer graphics cards for some reason because of the way it initializes video on startup. Method 4 is the go to fix for this one - though mind you I was only able to test it on AMD cards, as all I have are AMD cards, and it almost always works...I can only imagine a few reasons why it wouldnt be working for you

Well here's what I want you to try:

First of all, make sure that Data Execution Prevention (DEP) is turned off for diablo under your security settings.

Next, make sure you have DirectX9 installed alongside whatever other version of DirectX you're running (probably DirectX11). You can get that pretty easily from microsoft's site.

Next, always make sure to ONLY apply one method at a time.

Re-install diablo. Then download the latest patch from here manually, and patch it before running it. make sure you run the patch as administrator.

Next, apply method4. Completely shut down and re-boot your computer.

Try starting diablo. If that doesnt work, adjust the setting in method4 - try different resolutions, try turning vsync on and off, etc. make sure you go through every possible solution.

If that doesnt work, navigate to your diablo directory, open up notepad, and enter the following into it:

taskkill /f /im explorer.exe
start /affinity 1 Diablo.exe
pause
start explorer.exe

Save the file as "DIABLO.BAT" in your diablo directory.

Try running diablo.

If that doesnt work, restart your computer and try again.

If that doesnt work, disable Aero effects on your desktop and try again.

If that doesnt work, try the windows8 method of just bruteforcing the executable until it works (ie. mashing on it until it finally launches). For some reason, sometimes something as simple as that can work perfectly.

If any of the above works, then you're just going to have to accept the fact that in order to get diablo running, you will have to restart your computer before launching if you have started to get errors.

If that doesnt work, try lowering your CPU clock rate. 4.6GHz is pretty high, and I wonder if you are maybe having stability issues? anything of the like would exxagerate the problems Diablo already has I would think.

Also make sure your antivirus isnt blocking Diablo.

Also make sure you dont have a lot of stuff running in the background either.

If that doesnt work, then reset your clock rate back to 4.6GHz. In this case you're out of luck, and you're gonna have to wait for me to pick up a new graphics card and figure out what's wrong. Or you could just run the game in a virtual machine, like Lenny said, assuming you have a valid copy of windows to make a VM with (though make sure to adjust your resolution to 640x480 before you run the game in a VM - otherwise you'll end up with either a big stretchy distorted window in scaled mode, or a little tiny window in whatever the default mode is. at 640x480 you can at least run your virtual machine fullscreen and get expected behavior)
(03-06-2014, 01:49 PM)LennyLen Wrote: You could always try running an older version of Windows under a VM such as VirtualBox.
Could be done, but it requires a legal copy of an older version of Windows.

If only they made WINE for windows...diablo works great in wine once you apply the ddraw patch. and it at LEAST runs without a patch/fix, as do all the mods (except The Dark Mod - I havent figured out why that doesnt yet. But every other mod works fine.)

With all these new issues coming to light, eventually the only way to play Diablo on newer computers may be to just re-write the game entirely...unless they port WINE to windows, in which case the games lifespan would be greatly extended.

On the bright side aqrit's ddraw wrapper is opensource. Maybe It can be modified somehow to fix the new problem, at least for now...

EDIT: Its a longshot, but maybe DxWnd helps? I havent tested it at all yet, its just been a project i've glimpsed at a few times in the past few years:

http://sourceforge.net/projects/dxwnd/

EDIT#2: well I also found a new ddraw wrapper: https://github.com/jarikomppa/dxwrapper
could be worth trying, seeing as Diablo uses directx7. I'll get to work on the weekend and see if I can get some results.
Quote:
I can see what you see not
Vision milky, then eyes rot
When you turn they will be gone
Whispering their hidden song
Then you see what cannot be
Shadows move where light should be
Out of darkness, out of mind
Cast down into the halls of the blind
Reply
#52
I really do appreciate you taking the time and effort to outline all those possibilities for me. After reading the thread I was slowly coming to the conclusion that it was my GPU and/or drivers being the culprit, especially since this is not the first older game I've had issues with, but didn't want to experiment with downgrading drivers and such because I still play modern games like Battlefield 4 and changing out drivers would just be a hassle.

My CPU has always passed stress tests with flying colors and I regular play demanding games while livestreaming them, so unfortunately CPU stability was not an issue.

I made sure to disable DEP for Diablo as that was one of the first things I thought of, because of how I've locked my system down with EMET. Antivirus is MSE only, I've never found much use for anything stronger than that. Made an exception just to see. This got me hearing sound through what seemed to the be the intro video and I think I got to a main menu behind the black screen but then it crashed T_T

I will keep an eye on this thread daily, and will be more than willing to help you test other possibilities...for science!

In the end, I simply dug out my old XP disc and installed everything in VirtualBox. Honestly, this is probably the easiest and cleanest solution. It has the added benefit of giving Open Broadcaster Software a window to easily grab, which makes streaming the game way easier.

edit: I wonder if it might not be partly because my GPU and/or monitor simply can't display resolutions lower than 800x600. In addition to my very modern GTX 670, I also have quite a nice BenQ XL2420TX. This is probably contributing in some way =/
edit2: I'll be honest, I'm a tad lost with dxwnd, not really sure what settings I need to mess with to make it work with Diablo.
Reply
#53
(03-08-2014, 03:37 AM)Krazy Wrote: I really do appreciate you taking the time and effort to outline all those possibilities for me. After reading the thread I was slowly coming to the conclusion that it was my GPU and/or drivers being the culprit, especially since this is not the first older game I've had issues with, but didn't want to experiment with downgrading drivers and such because I still play modern games like Battlefield 4 and changing out drivers would just be a hassle.

My CPU has always passed stress tests with flying colors and I regular play demanding games while livestreaming them, so unfortunately CPU stability was not an issue.

I made sure to disable DEP for Diablo as that was one of the first things I thought of, because of how I've locked my system down with EMET. Antivirus is MSE only, I've never found much use for anything stronger than that. Made an exception just to see. This got me hearing sound through what seemed to the be the intro video and I think I got to a main menu behind the black screen but then it crashed T_T

I will keep an eye on this thread daily, and will be more than willing to help you test other possibilities...for science!

In the end, I simply dug out my old XP disc and installed everything in VirtualBox. Honestly, this is probably the easiest and cleanest solution. It has the added benefit of giving Open Broadcaster Software a window to easily grab, which makes streaming the game way easier.

edit: I wonder if it might not be partly because my GPU and/or monitor simply can't display resolutions lower than 800x600. In addition to my very modern GTX 670, I also have quite a nice BenQ XL2420TX. This is probably contributing in some way =/
edit2: I'll be honest, I'm a tad lost with dxwnd, not really sure what settings I need to mess with to make it work with Diablo.
Well actually, at least, what the expected behavior of your system would be if you were to run something that was too LOW a resolution, would be one of two things:

1) it would be rendered at the requested resolution and then scaled up and stretched by your gpu to the nearest resolution.

2) it would be rendered at base resolution, but not stretched by your cpu, your monitor would switch to the lowest resolution and you would be playing the game with essentially a big black border on top, bottom, left and right.

I really cant imagine that it would crash because of that. that doesnt sound right.

One question - did you try spamming the executable? on windows 8 sometimes you can make it to the sound and then the game crashes, but if you spam the executable enough you can get lucky and bypass it.

I just wish I could see the situation first hand...I know I could fix it if I could replicate your system. Our system specs are actually pretty much identical minus the graphics card - I've got an AMD card.

Anyways I will continue to devise other methods of compatibility. So if you keep checking back here, I'm sure I'll have something new for you to try.

Out of curiosity, I want you to fiddle around a bit more with Method 4 for me if you can. Perhaps somewhere in there we can change something or do something to make it work somehow...thats how I got it running on AMD cards in the first place.

And yes, in the name of Computer Science! I am actually a first year CS student going to university, and I program my own personal projects on the side. Making a permanent solution to this problem however, is still beyond my programming abilities, which is why Im left using the computer knowledge that I have to try to fix these problems with tools that other people have made so far.

I will eventually write my on fix when I feel compitent enough, Or maybe I'll just re-write the entire game from scratch using SDL, making an exact replica of all the game mechanics, and I'll just make having a copy of the Diablo CD a requirement. But it will take time and knowledge that I just dont have at the moment.

Even so, it i good to have hobbies.
Quote:
I can see what you see not
Vision milky, then eyes rot
When you turn they will be gone
Whispering their hidden song
Then you see what cannot be
Shadows move where light should be
Out of darkness, out of mind
Cast down into the halls of the blind
Reply
#54
Quote:In addition to my very modern GTX 670, I also have quite a nice BenQ XL2420TX. This is probably contributing in some way

It shouldn't be. I have a GTX 680 and a Samsung S27B550 and I have no problems playing Diablo.
"What contemptible scoundrel stole the cork from my lunch?"

-W.C. Fields
Reply
#55
I'm beginning to wonder if it isn't some stupid setting I changed in Windows somewhere. I've been meaning to upgrade to Windows 8 for a while now...maybe it's time?

Anything in particular you can suggest fiddling with in Method 4? Maybe some specific settings in the config file I should try?

edit: Oh my god, I just figured it out.

So I've enabled DEP for every application unless I opt it out, and I also use EMET for further security. I *thought* that adding Diablo to EMET's list and opting it out of DEP in there would be enough, but on a whim, I decided to add an actual exception for it in DEP's own configuration.

Now it works fine with Method 4, even in a window (though the main menu gets messy, any ideas on that? Playing in fullscreen really isn't an option, especially if I want to be streaming this.)
edit2: Ok, the menus seem mostly ok now (not entirely sure what I did) as long as navigate them with arrow keys and such. There does seem to be a little bit of a crashing problem now unfortunately.
Reply
#56
Ah great!!! Im glad you figured it out!!!

Anyways as for the windows8 thing, I would personally say hold off on that until windows7 kicks the can unless you have a WORK related need that requires you to upgrade. Infact upgrading to windows8 for Diablo will have the opposite effect that you desire, since It can barely even run do to a combination of the issue you are already experiencing, driver support, and thhe way the windows8 desktop handles itself.

As for the stability thing, all you can really do in that case is experiment with the resolution settings, fullscreen vs windowed, and vsync until you find a stable combination. also MAKE SURE you run Diablo on a single core only, or it will crash almost instantly. you can do that by taking a command from the batch file i wrote above:

start /affinity 0 Diablo.exe

The issue isnt really dominant in vanilla diablo - rather the game will slowly degrade in stability on multiple cores until eventually faulting itself. But methhod technically applies a high res mod to fix the problem, which for some reason exaggerates the fault problem. This is why it is so important to make sure you run Diablo in a single core.

I believe the game does suffer from some minor stability issues in windowed mode regardless though - but I will test some settings out and tell you how it works. If nothing else, I can work out how to use dxwnd and see if that will work for you.

And yeah streaming Diablo sucks fullscreen. The only program I've ever even managed to record it with on windows was fraps. On linux and mac the issue of recording is easier since WINE doesnt draw diablo directly to the desktop, so normal recording programs can just capture the "window and record that way. But they also have issues of their own to overcome.
Quote:
I can see what you see not
Vision milky, then eyes rot
When you turn they will be gone
Whispering their hidden song
Then you see what cannot be
Shadows move where light should be
Out of darkness, out of mind
Cast down into the halls of the blind
Reply
#57
I have been trying to get Hellfire working for the past few hours on my mac using these instructions... I get as far as the Hellfire installation screen coming up through PlayOnMac but the second I click the install button I get a program error pop-up that says "The program winevdm.exe has encountered a serious problem and needs to close." I feel pretty ignorant right about now haha but the instructions seem so straight forward up to that point that I really don't understand why it won't work...
Reply
#58
(03-10-2014, 02:49 AM)Slayer_X64 Wrote: Ah great!!! Im glad you figured it out!!!

Anyways as for the windows8 thing, I would personally say hold off on that until windows7 kicks the can unless you have a WORK related need that requires you to upgrade. Infact upgrading to windows8 for Diablo will have the opposite effect that you desire, since It can barely even run do to a combination of the issue you are already experiencing, driver support, and thhe way the windows8 desktop handles itself.

As for the stability thing, all you can really do in that case is experiment with the resolution settings, fullscreen vs windowed, and vsync until you find a stable combination. also MAKE SURE you run Diablo on a single core only, or it will crash almost instantly. you can do that by taking a command from the batch file i wrote above:

start /affinity 0 Diablo.exe

The issue isnt really dominant in vanilla diablo - rather the game will slowly degrade in stability on multiple cores until eventually faulting itself. But methhod technically applies a high res mod to fix the problem, which for some reason exaggerates the fault problem. This is why it is so important to make sure you run Diablo in a single core.

I believe the game does suffer from some minor stability issues in windowed mode regardless though - but I will test some settings out and tell you how it works. If nothing else, I can work out how to use dxwnd and see if that will work for you.

And yeah streaming Diablo sucks fullscreen. The only program I've ever even managed to record it with on windows was fraps. On linux and mac the issue of recording is easier since WINE doesnt draw diablo directly to the desktop, so normal recording programs can just capture the "window and record that way. But they also have issues of their own to overcome.

Well, as long as the crashing keeps to a minimum in windowed mode, it'll be alright. If it gets too annoying, I'll just use my capture card and capture the whole monitor while playing in fullscreen, or go back to running the game in an XP VM.

Anyway, again, thanks for all the assistance.
Reply
#59
D1 would crash under 8.1 during the brief stint that I had it on my laptop.

That may have just been the fact that my gfx chipset wasn't properly supported, being an Intel mobile 45.

Hey guys! Been awhile hasn't it? Miss me?
Reply
#60
I have an odd thing to report.

I had Diablo working just fine on my Windows 8 laptop a couple months ago with information from this guide (thanks Slayer!), but suddenly it does not work any more. The laptop sits unused for months at a time, and the only thing I remember changing on it since Diablo would run was installing the update to Windows 8.1.

All of the compat settings match what is suggested here, but Diablo just won't run now. Does anyone else have a similar experience? Can anyone else run D1 on Win 8.1? Or is it just me out of luck now? Thanks.
Reply


Forum Jump:


Users browsing this thread: 12 Guest(s)