Age of Empires II

Questions about Wine on Linux
Locked
PaoloEmilio
Newbie
Newbie
Posts: 1
Joined: Tue Mar 15, 2016 3:46 pm

Age of Empires II

Post by PaoloEmilio »

I have been trying to install Age of Empires II: The Age of Kings (I have the CD) on my Wine software, to no avail. Setup works well and installs the game, but when I try to run it, the game closes, leaving this code.

Code: Select all

Unhandled exception: privileged instruction in 32-bit code (0x0040e413).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:0040e413 ESP:0033fcdc EBP:0033fdd4 EFLAGS:00010202(  R- --  I   - - - )
 EAX:00000067 EBX:7b8b5000 ECX:0033fce0 EDX:00400000
 ESI:001b8107 EDI:0041acd0
Stack dump:
0x0033fcdc:  00411f94 00000000 00400000 00000067
0x0033fcec:  0041acd0 001b8107 7b8b5000 00110000
0x0033fcfc:  7bc3714b 00110014 00000000 00001302
0x0033fd0c:  7bc37239 00000000 00000018 00000065
0x0033fd1c:  00571200 00000000 00400000 00000067
0x0033fd2c:  00571280 00571b50 00000000 4d430001
000c: sel=0067 base=00000000 limit=00000000 32-bit rw-
Backtrace:
=>0 0x0040e413 in empires2 (+0xe413) (0x0033fdd4)
  1 0x0041ae22 in empires2 (+0x1ae21) (0x0033fe60)
  2 0x7b85e5cc call_process_entry+0xb() in kernel32 (0x0033fe78)
  3 0x7b85f653 in kernel32 (+0x4f652) (0x0033feb8)
  4 0x7bc799b0 call_thread_func_wrapper+0xb() in ntdll (0x0033fed8)
  5 0x7bc7c93d call_thread_func+0x7c() in ntdll (0x0033ffa8)
  6 0x7bc7998e RtlRaiseException+0x21() in ntdll (0x0033ffc8)
  7 0x7bc4e8fe call_dll_entry_point+0x7ed() in ntdll (0x0033ffe8)
  8 0xf756950d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
  9 0xf75695cb wine_switch_to_stack+0x2a() in libwine.so.1 (0xff8d4b38)
  10 0x7bc541e2 LdrInitializeThunk+0x3a1() in ntdll (0xff8d4b98)
  11 0x7b865bdd __wine_kernel_init+0xa0c() in kernel32 (0xff8d5cb8)
  12 0x7bc547a3 __wine_process_init+0x192() in ntdll (0xff8d5d48)
  13 0xf7566c70 wine_init+0x30f() in libwine.so.1 (0xff8d5da8)
  14 0x7bf00fdc main+0xfb() in <wine-loader> (0xff8d61f8)
  15 0xf7379a83 __libc_start_main+0xf2() in libc.so.6 (0x00000000)
0x0040e413: outsb	(%esi),%dx
Modules:
Module	Address			Debug info	Name (50 modules)
PE	  400000-  45a000	Export          empires2
PE	10000000-1000c000	Deferred        drvmgt
ELF	7b800000-7ba5b000	Dwarf           kernel32<elf>
  \-PE	7b810000-7ba5b000	\               kernel32
ELF	7bc00000-7bcdb000	Dwarf           ntdll<elf>
  \-PE	7bc10000-7bcdb000	\               ntdll
ELF	7bf00000-7bf04000	Dwarf           <wine-loader>
ELF	7def0000-7df71000	Deferred        rpcrt4<elf>
  \-PE	7df00000-7df71000	\               rpcrt4
ELF	7e068000-7e08d000	Deferred        imm32<elf>
  \-PE	7e070000-7e08d000	\               imm32
ELF	7e0e0000-7e0e6000	Deferred        libxfixes.so.3
ELF	7e0e8000-7e0f3000	Deferred        libxcursor.so.1
ELF	7e0f8000-7e108000	Deferred        libxi.so.6
ELF	7e108000-7e10c000	Deferred        libxcomposite.so.1
ELF	7e110000-7e11b000	Deferred        libxrandr.so.2
ELF	7e120000-7e12b000	Deferred        libxrender.so.1
ELF	7e130000-7e136000	Deferred        libxxf86vm.so.1
ELF	7e138000-7e13c000	Deferred        libxinerama.so.1
ELF	7e140000-7e147000	Deferred        libxdmcp.so.6
ELF	7e148000-7e14c000	Deferred        libxau.so.6
ELF	7e150000-7e172000	Deferred        libxcb.so.1
ELF	7e178000-7e2ac000	Deferred        libx11.so.6
ELF	7e2b0000-7e2c3000	Deferred        libxext.so.6
ELF	7e2f0000-7e382000	Deferred        winex11<elf>
  \-PE	7e300000-7e382000	\               winex11
ELF	7e728000-7e751000	Deferred        libexpat.so.1
ELF	7e758000-7e793000	Deferred        libfontconfig.so.1
ELF	7e7c0000-7e7e8000	Deferred        libpng12.so.0
ELF	7e7e8000-7e802000	Deferred        libz.so.1
ELF	7e808000-7e8a8000	Deferred        libfreetype.so.6
ELF	7e8d0000-7e942000	Deferred        advapi32<elf>
  \-PE	7e8e0000-7e942000	\               advapi32
ELF	7e948000-7ea65000	Deferred        gdi32<elf>
  \-PE	7e950000-7ea65000	\               gdi32
ELF	7ea68000-7ebc2000	Deferred        user32<elf>
  \-PE	7ea80000-7ebc2000	\               user32
ELF	7ef38000-7ef45000	Deferred        libnss_files.so.2
ELF	7ef48000-7ef61000	Deferred        libnsl.so.1
ELF	7ef70000-7ef8a000	Deferred        version<elf>
  \-PE	7ef80000-7ef8a000	\               version
ELF	7ef90000-7efd6000	Deferred        libm.so.6
ELF	7efe0000-7efec000	Deferred        libnss_nis.so.2
ELF	7eff0000-7eff9000	Deferred        libnss_compat.so.2
ELF	f7360000-f750e000	Dwarf           libc.so.6
ELF	f7510000-f7515000	Deferred        libdl.so.2
ELF	f7518000-f7534000	Deferred        libpthread.so.0
ELF	f7560000-f7715000	Dwarf           libwine.so.1
ELF	f7718000-f773a000	Deferred        ld-linux.so.2
ELF	f7741000-f7742000	Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) C:\Program Files (x86)\Microsoft Games\Age of Empires II\Empires2.Exe
	00000009    0 <==
0000000e services.exe
	00000027    0
	0000001f    0
	0000001c    0
	00000016    0
	00000014    0
	00000010    0
	0000000f    0
00000012 winedevice.exe
	00000019    0
	00000018    0
	00000017    0
	00000013    0
0000001a plugplay.exe
	00000020    0
	0000001e    0
	0000001b    0
00000021 explorer.exe
	00000023    0
	00000022    0
System information:
    Wine build: wine-1.6.2
    Platform: i386 (WOW64)
    Host system: Linux
    Host version: 3.13.0-83-lowlatency
Is there any hope to run the game? Do I need to provide additional information? Thanks for any help.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Age of Empires II

Post by Bob Wya »

PaoloEmilio wrote:I have been trying to install Age of Empires II: The Age of Kings (I have the CD) on my Wine software, to no avail. Setup works well and installs the game, but when I try to run it, the game closes, leaving this code.

Code: Select all

...
System information:
    Wine build: wine-1.6.2
...
Is there any hope to run the game? Do I need to provide additional information? Thanks for any help.
You need to start by upgrading to a supported release of Wine. It is OK to run the development release (in fact I generally track the Wine Git tree - using a live build of Wine Staging). You should upgrade to a wine version >=1.8.

Note: Wine Staging is now officially supported. This is a suite of patches, applied on top of 'vanilla Wine' that aims to increase functionality and/ or Windows compatibility further.

You may be being hit by (one of the notorious) CD drm protection schemes...!! See Bug 31279: Age of Empires II SafeDisc v1.x driver crashes in IDT check (INT1/3 hooks) ... Although that is specified as a Mac specific bug...

Please run this ProtectionID tool to determine the exact SafeDisc version (if present) on your CD and paste the output of the tool. Please run this tool in a 32-bit Wineprefix.

Ta
Bob
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Age of Empires II

Post by Bob Wya »

A stack trace is great!! But ideally I'd also need a dump of the console output (in any) up to that point and the original launch instruction to start the game...

Ta,
Bob
DarkPlayer
Level 2
Level 2
Posts: 23
Joined: Sun Mar 13, 2016 11:15 am

Re: Age of Empires II

Post by DarkPlayer »

If you are using the original AOE 2 CD, you need to change the Windows version to 2000 since the Safedisc driver shipped with the game doesn't support more recent Windows versions (see https://bugs.winehq.org/show_bug.cgi?id=21147 or https://bugs.winehq.org/show_bug.cgi?id=34363 for AOE2). You will need to reinstall the software into a 32 bit prefix (WINEARCH=win32) to select Windows 2000 as Windows versions.
Locked