The forum

Diablo 1

Crashes after animation

Author Replies
Aradan_d Tuesday 11 August 2015 at 19:53
Aradan_dAnonymous

Has anyone managed to play Diablo 1 using PlayonLinux ?

I get an error after the Blizzard animation:

 

[08/11/15 18:48:26] - Running wine-1.7.49 /home/david/tmp/autorun.exe (Working directory : /home/david/tmp)
fixme:ole:RemUnknown_QueryInterface No interface for iid {00000019-0000-0000-c000-000000000046}
fixme:win:EnumDisplayDevicesW ((null),0,0x33f5e8,0x00000000), stub!
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to 8
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to 8
fixme:ddraw:ddraw7_WaitForVerticalBlank iface 0x12dd80, flags 0x1, event (nil) stub!
fixme:d3d:wined3d_get_adapter_raster_status wined3d 0x1315b0, adapter_idx 0, raster_status 0x33fbd8 semi-stub!
wine: Unhandled page fault on read access to 0x01bddac2 at address 0x3c4bf8 (thread 002b), starting debugger...
Unhandled exception: page fault on read access to 0x01bddac2 in 32-bit code (0x003c4bf8).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:003c4bf8 ESP:0033f174 EBP:0033f2b4 EFLAGS:00010206(  R- --  I   - -P- )
 EAX:003b0118 EBX:00000000 ECX:0196008c EDX:0033f2d8
 ESI:01bddac2 EDI:01b0008c
Stack dump:
0x0033f174:  003b0118 0000001f 0033f258 0000005a
0x0033f184:  00000000 0033f1d4 019601a4 7ed3fc90
0x0033f194:  7ed3fc90 019601a4 0196008c 44444353
0x0033f1a4:  44444444 1500b5d0 7bc3f4fd 3d442023
0x0033f1b4:  00000089 1500b5f0 00000000 1500b5d0
0x0033f1c4:  00000002 00000898 00000226 00371630
Backtrace:
=>0 0x003c4bf8 (0x0033f2b4)
0x003c4bf8: movl    0x0(%esi),%eax
Modules:
Module    Address            Debug info    Name (109 modules)
PE      400000-  692000    Deferred        diablo_s
PE     15f0000- 160a000    Deferred        smackw32
PE    10000000-10048000    Deferred        diabloui
PE    15000000-15041000    Deferred        storm
ELF    7a800000-7a92c000    Deferred        opengl32<elf>
  \-PE    7a820000-7a92c000    \               opengl32
ELF    7b800000-7ba68000    Deferred        kernel32<elf>
  \-PE    7b820000-7ba68000    \               kernel32
ELF    7bc00000-7bcec000    Deferred        ntdll<elf>
  \-PE    7bc10000-7bcec000    \               ntdll
ELF    7bf00000-7bf03000    Deferred        <wine-loader>
ELF    7c647000-7c700000    Deferred        winmm<elf>
  \-PE    7c650000-7c700000    \               winmm
ELF    7d00d000-7d03c000    Deferred        libvorbis.so.0
ELF    7d03c000-7d044000    Deferred        libogg.so.0
ELF    7d044000-7d05f000    Deferred        libnsl.so.1
ELF    7d05f000-7d0ee000    Deferred        libvorbisenc.so.2
ELF    7d0ee000-7d171000    Deferred        libflac.so.8
ELF    7d171000-7d18b000    Deferred        libgcc_s.so.1
ELF    7d18b000-7d1a0000    Deferred        libgpg-error.so.0
ELF    7d1a0000-7d250000    Deferred        libgcrypt.so.20
ELF    7d250000-7d27c000    Deferred        liblzma.so.5
ELF    7d27c000-7d2f5000    Deferred        libsndfile.so.1
ELF    7d2f5000-7d383000    Deferred        libsystemd.so.0
ELF    7d383000-7d3d9000    Deferred        libdbus-1.so.3
ELF    7d3d9000-7d461000    Deferred        libpulsecommon-6.0.so
ELF    7d461000-7d4bc000    Deferred        libpulse.so.0
ELF    7d4bc000-7d5c7000    Deferred        libasound.so.2
ELF    7d5cc000-7d5f6000    Deferred        msacm32<elf>
  \-PE    7d5d0000-7d5f6000    \               msacm32
ELF    7d5f6000-7d627000    Deferred        winealsa<elf>
  \-PE    7d600000-7d627000    \               winealsa
ELF    7d627000-7d76a000    Deferred        oleaut32<elf>
  \-PE    7d640000-7d76a000    \               oleaut32
ELF    7d76a000-7d7ef000    Deferred        rpcrt4<elf>
  \-PE    7d780000-7d7ef000    \               rpcrt4
ELF    7d91b000-7da70000    Deferred        wined3d<elf>
  \-PE    7d930000-7da70000    \               wined3d
ELF    7da70000-7dae6000    Deferred        ddraw<elf>
  \-PE    7da80000-7dae6000    \               ddraw
ELF    7daeb000-7daf1000    Deferred        libattr.so.1
ELF    7daf1000-7daf6000    Deferred        libcap.so.2
ELF    7daf6000-7db0f000    Deferred        libresolv.so.2
ELF    7db0f000-7db31000    Deferred        mmdevapi<elf>
  \-PE    7db10000-7db31000    \               mmdevapi
ELF    7db31000-7dc74000    Deferred        ole32<elf>
  \-PE    7db50000-7dc74000    \               ole32
ELF    7dc74000-7dcc1000    Deferred        dsound<elf>
  \-PE    7dc80000-7dcc1000    \               dsound
ELF    7dd1c000-7dd23000    Deferred        libasyncns.so.0
ELF    7dd23000-7dd30000    Deferred        libjson-c.so.2
ELF    7dd52000-7dd8b000    Deferred        uxtheme<elf>
  \-PE    7dd60000-7dd8b000    \               uxtheme
ELF    7de8b000-7de91000    Deferred        libxfixes.so.3
ELF    7de91000-7de9c000    Deferred        libxcursor.so.1
ELF    7de9c000-7deaf000    Deferred        libxi.so.6
ELF    7deaf000-7debc000    Deferred        libxrandr.so.2
ELF    7debc000-7dec8000    Deferred        libxrender.so.1
ELF    7dec8000-7decf000    Deferred        libxxf86vm.so.1
ELF    7decf000-7def5000    Deferred        libxcb.so.1
ELF    7def5000-7e044000    Deferred        libx11.so.6
ELF    7e044000-7e059000    Deferred        libxext.so.6
ELF    7e05b000-7e064000    Deferred        libasound_module_pcm_pulse.so
ELF    7e088000-7e11c000    Deferred        winex11<elf>
  \-PE    7e090000-7e11c000    \               winex11
ELF    7e11c000-7e140000    Deferred        imm32<elf>
  \-PE    7e120000-7e140000    \               imm32
ELF    7e140000-7e169000    Deferred        libexpat.so.1
ELF    7e169000-7e1a5000    Deferred        libfontconfig.so.1
ELF    7e1a5000-7e21a000    Deferred        libpcre.so.1
ELF    7e21a000-7e341000    Deferred        libglib-2.0.so.0
ELF    7e341000-7e3a1000    Deferred        libharfbuzz.so.0
ELF    7e3a1000-7e3e0000    Deferred        libpng16.so.16
ELF    7e41e000-7e425000    Deferred        libxdmcp.so.6
ELF    7e425000-7e43e000    Deferred        libz.so.1
ELF    7e43e000-7e4fe000    Deferred        libfreetype.so.6
ELF    7e52d000-7e5e4000    Deferred        msvcrt<elf>
  \-PE    7e550000-7e5e4000    \               msvcrt
ELF    7e5e4000-7e5fe000    Deferred        crtdll<elf>
  \-PE    7e5f0000-7e5fe000    \               crtdll
ELF    7e5fe000-7e640000    Deferred        winspool<elf>
  \-PE    7e610000-7e640000    \               winspool
ELF    7e640000-7e74b000    Deferred        comctl32<elf>
  \-PE    7e650000-7e74b000    \               comctl32
ELF    7e74b000-7e838000    Deferred        comdlg32<elf>
  \-PE    7e750000-7e838000    \               comdlg32
ELF    7e838000-7e8b3000    Deferred        shlwapi<elf>
  \-PE    7e850000-7e8b3000    \               shlwapi
ELF    7e8b3000-7eafc000    Deferred        shell32<elf>
  \-PE    7e8c0000-7eafc000    \               shell32
ELF    7eafc000-7eb75000    Deferred        advapi32<elf>
  \-PE    7eb10000-7eb75000    \               advapi32
ELF    7eb75000-7ec8e000    Deferred        gdi32<elf>
  \-PE    7eb80000-7ec8e000    \               gdi32
ELF    7ec8e000-7edec000    Deferred        user32<elf>
  \-PE    7eca0000-7edec000    \               user32
ELF    7edec000-7edfa000    Deferred        libnss_files.so.2
ELF    7ef83000-7efd1000    Deferred        libm.so.6
ELF    7efd2000-7efd6000    Deferred        libxau.so.6
ELF    7efd6000-7efe7000    Deferred        libbz2.so.1.0
ELF    7efe7000-7f000000    Deferred        version<elf>
  \-PE    7eff0000-7f000000    \               version
ELF    f7337000-f733c000    Deferred        libdl.so.2
ELF    f733d000-f74f4000    Deferred        libc.so.6
ELF    f74f4000-f7511000    Deferred        libpthread.so.0
ELF    f7517000-f7520000    Deferred        librt.so.1
ELF    f7540000-f76f6000    Dwarf           libwine.so.1
ELF    f76f7000-f771b000    Deferred        ld-linux.so.2
ELF    f771d000-f771e000    Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 autorun.exe
    00000027    1
    00000009    0
0000000e services.exe
    0000001e    0
    0000001d    0
    00000014    0
    00000010    0
    0000000f    0
00000012 winedevice.exe
    0000001c    0
    00000019    0
    00000018    0
    00000013    0
0000001a plugplay.exe
    00000020    0
    0000001f    0
    0000001b    0
00000021 explorer.exe
    00000026    0
    00000025    0
    00000024    0
    00000023    0
    00000022    0
00000028 Diablo_S.exe
    00000029    0
0000002a (D) C:\Program Files\Spawn\Diablo_S.exe
    0000002e   15
    0000002d    0
    0000002c    0
    0000002b    0 <==
System information:
    Wine build: wine-1.7.49
    Platform: i386
    Host system: Linux
    Host version: 4.1.2-2-ARCH

 

I have lso changed to GDI in Display (according to a suggestion in winehq) but it is the same, the game crashes. I think it is something related to DDraw. I would like to make it work since there is a nice MOd http://diablo1.ovh.org/hd/

smiley

 

Edited by Aradan_d

booman Wednesday 19 August 2015 at 0:09
booman

It shouldn't be much different from Diablo 2.... since they are both using the same engine.

Did you install package d3dx9?

Looks like you are using 32-bit Arch Distro, is this correct?
Make sure to set the virtual desktop in Wine to 1024x768 or something smaller.
I have a feeling Diablo only runs at 800x600 resolution and probably uses Direct X 7 or 8


† Booman †
Mint 19 64-bit | Nvidia 415.25 | GeForce GTX 1060
Linux for Beginners | List of Linux Games | My Games
PlayOnLinux Guides | PlayOnLinux Explained
Aradan_d Thursday 20 August 2015 at 22:04
Aradan_dAnonymous

Hi, I'm using 64 bit Arch but using a 32 bit wine for Diablo 1.

I already had the window in 800x600, but it didn't work. I installed Directx9 and dxd39 as you suggested but I get the same error. Strange, since the game is quite old :)

booman Thursday 20 August 2015 at 22:06
booman

Oh, do you have the 32-bit libraries for running 32-bit applications like games?
I'm not sure how to do it in arch, but in Ubuntu and Mint those are required for most games in Wine


† Booman †
Mint 19 64-bit | Nvidia 415.25 | GeForce GTX 1060
Linux for Beginners | List of Linux Games | My Games
PlayOnLinux Guides | PlayOnLinux Explained
Aradan_d Friday 21 August 2015 at 12:35
Aradan_dAnonymous

Yes I do. I can play Battle.net games very well with PoL using the 32 bit version :)  That's why I don't know why Diablo crashes

booman Friday 21 August 2015 at 14:28
booman

Oh, are you playing Diablo 1 through Battle.net or from CD ROM?
I've never used Battle.net and I've noticed a few posts about bugs right now.


† Booman †
Mint 19 64-bit | Nvidia 415.25 | GeForce GTX 1060
Linux for Beginners | List of Linux Games | My Games
PlayOnLinux Guides | PlayOnLinux Explained
Aradan_d Friday 21 August 2015 at 15:05
Aradan_dAnonymous

No, I'm using the Diablo 1 CD directly (this game is too old to be in the battle.net system I guess). In the menu it says that all the requirements are satisfied, but after the Blizzard animation it crashes

booman Friday 21 August 2015 at 15:16
booman

Ok, just making sure.
I think it might be a screen resolution problem, because old games like that want to run in 800x600 or even smaller like 640x480 or even smaller...

Can you launch Diablo with "Debug" instead of "Run"?

Then post the output here.


† Booman †
Mint 19 64-bit | Nvidia 415.25 | GeForce GTX 1060
Linux for Beginners | List of Linux Games | My Games
PlayOnLinux Guides | PlayOnLinux Explained
You are here: Index > PlayOnLinux > Diablo 1