Diablo Backwards Compatibility Guide
(07-27-2016, 07:16 PM)LennyLen Wrote:
(07-25-2016, 08:30 PM)LavCat Wrote: Nonetheless, the Windows 10 instructions from the guide seem reasonably straightforward. Should this be the first method I should try?

The older the version of Windows, the more chance of success you'll probably have (that being said, I personally have never had a problem getting Diablo running on any version of Windows). But if getting the sound to work on the older sysytems might be a hassle, then by all means try the Win 1 system first. The worst that can happen is that it doesn't work, and you've wasted 10 minutes of time.

(07-25-2016, 08:30 PM)LavCat Wrote: If I did install under NT, are there any issues running Diablo on a dual CPU system?

I can't think of any reason for there to be.

(07-25-2016, 08:30 PM)LavCat Wrote: Edit: does the CD still have to be in the drive to run?

Unless you use some form of no-cd patch, then yes.

Thanks, I'll try Windows 10 after the next time I do a backup and report back.
"I may be old, but I'm not dead."
Reply
Hello, first post here.

I am having trouble finding a "Diablo 1 Hellfire .ISO" file for download. I have been playing "Diablo 1 .ISO" with virtualclonedrive on Windows10 and it works great. Looking to play the expansion - can anyone provide a link for the Hellfire .ISO or provide another means by which I can obtain Hellfire for free?
Reply
(07-30-2016, 01:39 PM)LongNuts Wrote: Hello, first post here.

I am having trouble finding a "Diablo 1 Hellfire .ISO" file for download. I have been playing "Diablo 1 .ISO" with virtualclonedrive on Windows10 and it works great. Looking to play the expansion - can anyone provide a link for the Hellfire .ISO or provide another means by which I can obtain Hellfire for free?

The LL has always been against software piracy.
"What contemptible scoundrel stole the cork from my lunch?"

-W.C. Fields
Reply
Hello. Just registered here to say how fucking awesome you guys are, especially Slayer_X64 for the INSANE amount of effort and time put into troubleshooting all the addressed topics and issues. You fucking rule.

Since I'm already at it, let me also say that I was particularly ecstatic at the part you all talk about installing multiple versions of the game. I wasn't confident such a thing would be easily possible without modifying the actual files, but lo and behold, you guys explained a smart way to do so. (Didn't even know vanilla Diablo could be installed from the disc that comes with v1.08).

Currently I'm going through a lunacy phase of Diablo playthroughs (pretty sure many of you know what that feeling is like), making multiple single and multiplayer characters one by one of every class, attempting to build them in ways customized for each and every specific version of Diablo in mind (Windows and Mac versions alike, and even PS1 eventually, I hope). Everything 100% legit, no altering/modding/hacking or any other sort of external interference to influence the game to behave in any way other than what its original compiled code does on its own. (Meaning I'm fine with glitches, of course. They're a part of the game itself!)

I guess there must be more appropriate threads to discuss the following, but if anyone wishes to play some co-op matches (or even brutally betray me mid-play), hit me up or drop a message here or anywhere else more fitting to join up. Normally I'm around from 10 to 11:30 PM (GMT -3:00) twice a week or so. I'm not completely against it, but I do have a preference for players that don't use mods/hacks/unobtainable items, in order to keep the experience "real". As stated earlier, I'll always be doing things 100% legit on my end as well (again, safe for glitching, although I personally find that legit in my eyes!).

In fact, is there anywhere here for people to just come and say "hey, currently I'm about to log into Battle.net!! Anyone coming?". Though I'm not sure if this game's current spotlight situation can still make that viably work. lol

Also, anyone knows how buggy exactly Hellfire 1.00 Multiplayer is? Considering, say, 2 people using Windows Vista and 7. Too many crashes/desyncs? Considering they disabled it for 1.01, I figure it must have been hell (no pun intended Big Grin).
Reply
Hi,

There is a few people who still play vanilla D1 on Battle.net still. Diablo USA-1 on the west gateway seems to be the most active spot these days. Alot of us DO use some sort of 3rd party software though to mule items, as many of use have high level/end game characters for playing hell/hell or PvP with and muling items the old fashioned way just isnt feasible anymore. But most everyone plays legit with self found gear or occasional trading with people we know and trust. There is some Ironman players left also, if that's your thing.
https://www.youtube.com/user/FireIceTalon


"Your very ideas are but the outgrowth of conditions of your bourgeois production and bourgeois property, just as your jurisprudence is but the will of your class, made into law for all, a will whose essential character and direction are determined by the economic conditions of the existence of your class." - Marx (addressing the bourgeois)
Reply
That's really cool to hear, I'll pop up over that channel on that gateway from time to time, in that case. Smile Also, would "Ironman" players be those who don't use 3rd party software to mule items? That's a cool term for it if so, haha.

By the way, I'm currently playing on version 1.09b, but is it even possible to enter Battle.Net on any version lower than 1.09? (Such as vanilla AKA 1.00.) Doesn't Battle.Net automatically update the game in that case?
Reply
Ironman has nothing to do with using software or not, its just a variant of play where you basically make a new char and go as far as you can without using any town services.
https://www.youtube.com/user/FireIceTalon


"Your very ideas are but the outgrowth of conditions of your bourgeois production and bourgeois property, just as your jurisprudence is but the will of your class, made into law for all, a will whose essential character and direction are determined by the economic conditions of the existence of your class." - Marx (addressing the bourgeois)
Reply
Ah, alright, sorry about the confusion.
Reply
*hoping double-posts are acceptable if days passed and subject changes...*

So, I have come across an issue, which I think relates to this topic.

I installed all (known) fully-released versions of Diablo, including all versions of Diablo Spawn, for Windows, except I have run into a problem with the following patches, which were downloaded from Blizzard's own FTP site (through archive.org/web):
- 1.02 (dtrl102.exe - 341 KB);
- 1.03 (dtrl103.exe - 534 KB);
- 1.04 (dtrl104.exe - 540 KB).

I should perhaps mention I'm using Windows 7 Ultimate 32-Bit. I also am always applying these patches on a fresh, clean install of Vanilla Diablo (AKA Diablo v1.00). The Diablo CD is also always inserted into the computer.

This is what I see when running dtrl102.exe (after the patch file copies itself into the target directory, where Diablo is installed):
[Image: STy0f10.png]
I noticed the file exists in the CD, although the file name is fully in caps. I figure the problem could be related to my Diablo CD being too "modern"? (It's a distribution that, by running SETUP.EXE instead of AUTORUN.EXE, installs Diablo v1.08.)
Could that be the reason? And what could be the solution? To somehow find and download a pre-patched Diablo.exe file with v1.02 installed somewhere online? (That too assuming only the executable file is affected by the patch.)

Finally, this is what I see when running either dtrl103.exe or dtrl104.exe:
[Image: 2W4ThzK.png]
Click on "OK", and the box reappears. Click on "Cancel", and you get "Diablo was not updated.".
Again, I'm not sure whether or not this issue could be related to my Diablo CD being "too new", but I consider the possibility, assuming it can't find the Diablo CD because it can't find THE Diablo CD it is looking for. I'm not sure what other explanation there could be...

Incidentally, those 3 update files are 3 times smaller than all their future counterparts (from version 1.05 up to 1.09b).

Any help, ideas or tips? Anything at all is very much appreciated.
Reply
Just posting a little update: I succeeded in patching with versions 1.03 and 1.04. I was required to make the Drive letter of my CD Drive match with whatever the patch executables were expecting, so for this purpose I temporarily changed the drive letter (which in this case was D), by doing the following, in case this helps anyone else someday:

Right-Click on Computer > Manage > Disk Management > Right-Click on the Drive whose letter needs to be changed > Change Drive Letter and Paths... > Change... > Select the correct letter on the dropdown box to the right (if you don't know the letter, try them all, although I suggest D and up.)

[Image: 4cDidVK.png]

No luck whatsoever with version 1.02, however. I have no idea why it keeps telling me my diabdat.mpq file is not valid. (Nor why that particular patch expected a completely different drive letter, but that shouldn't matter.) I even tried another Diablo CD, the one that comes with the game files both for Mac and Windows (the one which comes pre-patched with v1.04 on Mac and provides separately the v1.04 patch for Windows), but no luck. Same issue.

I pretty much feel I ran out of options. The only thing I can think of right now is booting up a Windows 95 Virtual Machine just to try patching it there.
Reply
OK, I give up.

[Image: KtncPyT.png]

Patch 1.02 is, as far as I know, unusable.

Out of curiosity, is there anywhere the MD5 checksum value of diabdat.mpq?
Reply
Final post: Solution found. Patch 1.02 can only be used if the 1996, first edition Diablo CD is inserted, as opposed to any subsequent release's CD, including the Mac/Windows CD released not too long after.

Interestigly, I noticed folder/file sizes differed for the install (before and after patching) a bit, even for the same versions of Diablo, depending on whether you use as the installation source:
- The original 1996 CD's AUTORUN.EXE (there's no SETUP.EXE);
- The Mac/Windows CD's SETUP.EXE or AUTORUN.EXE, or any subsequent release's AUTORUN.EXE;
- Any subsequent release's SETUP.EXE (that comes pre-patched with v1.08).

Same goes for all the Diablo Spawn (AKA Shareware) installations. The shareware-only releases (i.e.: https://web.archive.org/web/201409080123...ablosw.exe ) seem to install the same that is installed from the 1996 CD's Diablo Spawn.

Just figured I'd share all my experiences, hardships and discoveries in case they are ever useful to any other enthusiast.
Reply
Hello guys, excellent thread!
I have sucessfully instaled Diablo 1 and I want to play it with my friend, he has an low aspect computer, so he can't emulate virtual machine because it expends too much RAM for him and he suffers lag when we try to connect with programs like Hamachi.
We have windows 7 and we want to play through battle.net to better gameplay, so the method 4 isn't an option for us, but without it, when we open the game, the resolution is too big! The resolution is bigger than monitor and cuts off the edges, what can we do to fix it? It's the last problem to us!

http://imgur.com/a/EAx6p

Our video drivers is already up-to-date, doesn't matter the compatibility configuration, we already tried the most combinations. We don't know what to do now. T_T
Sorry any english mistake, it's not my native language!
Reply
(12-25-2016, 02:39 PM)JulianoFdeS Wrote: Hello guys, excellent thread!
I have sucessfully instaled Diablo 1 and I want to play it with my friend, he has an low aspect computer, so he can't emulate virtual machine because it expends too much RAM for him and he suffers lag when we try to connect with programs like Hamachi.

Just a suggestion since your friend has Windows 7. Is he using a Flash Drive (also called Thumb, USB, or Zip drive) for Ready Boost? I have used it successfully to decrease lag, improve performance on older Vista & Win 7 systems.

New flash Drive 4gb

http://www.tomsguide.com/faq/id-1821286/...mance.html

Hope this helps Blush
Reply
Hello.

I understand the first post is from 2011 and the last post is from 2017.

I am not trying to necro-thread this sticky topic, however: I see many suggestions stating to use a virtual CD-ROM drive + Diablo disc image.
I've also seen suggestions for a modified storm.dll (which is where the CD-check is actually called in). Modifying storm.dll will affect the hash check and prevent usage of Battle.net (authentic game server).

I couldn't find any offsets, but I remember having had found it over a decade ago. Recently, I decided I wanted to play around with Diablo again.

Here are the offsets for various patch versions, including a C++ program (source code included) that I wrote to load Diablo without a virtual CD-ROM drive, Diablo image file and allowing you to play on Battle.net.

What you will need is the *.MPQ file (DIABDAT.MPQ; Size on disk: 493 MB (517,505,024 bytes)) on the harddrive somewhere. The registry entry will point to the file; I saw another potential entry method, where it will locally load the *.MPQ and avoid using the registry pointer, but I'll leave that for someone else who is interested in exploiting that.

Patch offsets (Diablo.exe process):
Code:
v1.09:
1501867A: 74 to EB

v1.08:
15017E8A: 74 to EB

v1.07:
1501278C: 74 to EB

v1.00:
1500D516: 74 to EB

Registry entries (x86 and x64 store the HKEY_LOCAL_MACHINE differently; Patch v1.08+ uses HKEY_CURRENT_USER instead of HKEY_LOCAL_MACHINE):
Code:
HKEY_CURRENT_USER/Software/Blizzard Entertainment/Archives/DiabloCD
x86 OS: HKEY_LOCAL_MACHINE/Software/Blizzard Entertainment/Archives/DiabloCD
x64 OS: HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Blizzard Entertainment/Archives/DiabloCD

Blizzard's official "color fix" for Windows 7 (x86 + x64):
Code:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\Diablo109]
"Name"="Diablo.exe"
"ID"=hex:7c,89,fc,3a
"Flags"=hex:00,08,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\Diablo109]
"Name"="Diablo.exe"
"ID"=hex:7c,89,fc,3a
"Flags"=hex:00,08,00,00

If you prefer (for whatever reason) to use a cracked storm.dll copy for v1.09 (cannot play on Battle.net without 'uncracking' storm.dll after loading the game up):
Code:
storm.dll size on disk: 264 KB (270,336 bytes)

Comparing files Storm.dll and STORM.DLL.CRACK
0001867A: 74 EB

My no-patch loader for Diablo v1.09 simply loads the game, waits 1 second, then attempts to 'unload' the fix (allowing you to connect and play on Battle.net):
(The program attempts to read the local path of the DiabloCD (used for the DiabDat.MPQ) from the HKEY_LOCAL_MACHINE entry in the registry)
Code:
#include <windows.h>
#include <iostream>

int main() {

    HKEY hkey;

    RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Blizzard Entertainment\\Archives", NULL, KEY_QUERY_VALUE, &hkey);

    const DWORD SIZE = 1024;
    char szValue[SIZE];
    DWORD dwValue = SIZE;
    DWORD dwType = 0;

    RegQueryValueEx(hkey, "DiabloCD", NULL, &dwType, (LPBYTE)&szValue, &dwValue);

    RegCloseKey(hkey);

    strcat(szValue, "Diablo.exe");

    ShellExecute(NULL, "open", szValue, NULL, NULL, SW_SHOWDEFAULT);

    hwnd hwnd = NULL;

    while (hwnd == NULL) {
        hwnd = FindWindow(0, "DIABLO");
    }

    DWORD proc_id;
    GetWindowThreadProcessId(hwnd, &proc_id);

    HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, proc_id);
    BYTE data[] = { 0xEB };
    DWORD dataSize = sizeof(data);
    WriteProcessMemory(hProcess, (LPVOID)0x1501867A, &data, dataSize, NULL);

    Sleep(1000);

    BYTE data2[] = { 0x74 };
    dataSize = sizeof(data2);
    WriteProcessMemory(hProcess, (LPVOID)0x1501867A, &data2, dataSize, NULL);

    CloseHandle(hProcess);
}

NOTE: You do NOT need a CD / CD-ROM drive / virtual CD-drive to install Diablo.
What you do need is from the Diablo disc:
Code:
(v1.00) AUTORUN.exe 4.22 MB (4,431,872 bytes)
(v1.08) INSTALL.EXE 6.76 MB (7,098,368 bytes)
DIABDAT.MPQ 493 MB (517,505,024 bytes)

Run the "AUTORUN.exe" with the DiabDat.MPQ file in the same directory. Then apply the desired patch manually (Battle.net will not automatically download the patch).

or

Run the "INSTALL.exe" with the DiabDat.MPQ file in the same directory. Then attempt to log on Battle.net and the server will supply the latest patch.

As of the current writing of this post: It would appear that Zamal's site is no longer online.
Their humongous collection of all offsets and data accumulated from Diablo reverse engineering is lost, unless someone has a local copy.

"The Dark Forums" are no longer with us; I have noticed that: Sir Krist is on this forum (however, incredibly inactive).
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)