Error DGIV Crashes on WinXP SP3 on Athon XP

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
I currently facing some serious problems with DGIV that I haven't faced before on my times running Orbiter 2006: I just can't run any DGIV missions.

I have installed VC2010 Studio on this machine, so perhaps I can be of some use trying to pinpoint the problem. Orbiter 2010 P1 doesn't have the Debugging information compiled into, however.

At the time of the crash:

The Orbiter.log was:
Code:
[INDENT][FONT="Courier New"]**** Orbiter.log
Build Aug 30 2010 [v.100830]
Timer precision: 2.79365e-007 sec
Found 0 joystick(s)
Module AtlantisConfig.dll .... [Build 100830, API 100830]
Module AtmConfig.dll ......... [Build 100830, API 100830]
Module DGConfigurator.dll .... [Build 100830, API 100830]
Module D3D9Client.dll ........ [Build 150111, API 100830]
Error loading module Modules\Plugin\D3D9Client.dll (code -1073741795)

**** Creating simulation session
Module Sun.dll ............... [Build 100830, API 100830]
VSOP87(E) Sun: Precision 1e-006, Terms 554/6634
Module Mercury.dll ........... [Build 100830, API 100830]
VSOP87(B) Mercury: Precision 1e-005, Terms 167/7123
Module Venus.dll ............. [Build 100830, API 100830]
Module VenusAtm2006.dll ...... [Build 100830, API 100830]
VSOP87(B) Venus: Precision 1e-005, Terms 79/1710
Module Earth.dll ............. [Build 100830, API 100830]
Module EarthAtmJ71G.dll ...... [Build 100830, API 100830]
VSOP87(B) Earth: Precision 1e-008, Terms 2564/2564
Module Moon.dll .............. [Build 100830, API 100830]
ELP82: Precision 1e-005, Terms 116/829
Module Mars.dll .............. [Build 100830, API 100830]
Module MarsAtm2006.dll ....... [Build 100830, API 100830]
VSOP87(B) Mars: Precision 1e-005, Terms 405/6400
Module Phobos.dll ............ [Build ******, API 060425]
Module Deimos.dll ............ [Build ******, API 060425]
Module Galsat.dll ............ [Build 100217, API 100215]
Module Jupiter.dll ........... [Build 100830, API 100830]
VSOP87(B) Jupiter: Precision 1e-006, Terms 1624/3625
Module Io.dll ................ [Build 100217, API 100215]
Module Europa.dll ............ [Build 100217, API 100215]
Module Ganymede.dll .......... [Build 100217, API 100215]
Module Callisto.dll .......... [Build 100217, API 100215]
Module Satsat.dll ............ [Build 100215, API 100212]
Module Saturn.dll ............ [Build 100830, API 100830]
VSOP87(B) Saturn: Precision 1e-006, Terms 2904/6365
Module Mimas.dll ............. [Build 100215, API 100212]
SATSAT Mimas: Terms 113
Module Enceladus.dll ......... [Build 100215, API 100212]
SATSAT Enceladus: Terms 33
Module Tethys.dll ............ [Build 100215, API 100212]
SATSAT Tethys: Terms 101
Module Dione.dll ............. [Build 100215, API 100212]
SATSAT Dione: Terms 59
Module Rhea.dll .............. [Build 100215, API 100212]
SATSAT Rhea: Terms 68
Module Titan.dll ............. [Build 100215, API 100212]
SATSAT Titan: Terms 100
Module Iapetus.dll ........... [Build 100215, API 100212]
SATSAT Iapetus: Terms 605
Module Uranus.dll ............ [Build 100830, API 100830]
VSOP87(B) Uranus: Precision 1e-006, Terms 1827/5269
Module Miranda.dll ........... [Build ******, API 060425]
Module Ariel.dll ............. [Build ******, API 060425]
Module Umbriel.dll ........... [Build ******, API 060425]
Module Titania.dll ........... [Build ******, API 060425]
Module Oberon.dll ............ [Build ******, API 060425]
Module Neptune.dll ........... [Build 100830, API 100830]
VSOP87(B) Neptune: Precision 1e-006, Terms 391/2024
Finished initialising world
Module DeltaGliderIV.dll ..... [Build 140107, API 100830]a
Finished initialising status
Finished initialising camera
Finished setting up render state
[/FONT][/INDENT].
On the VC2010 debugging session, came:

Output:
Code:
[INDENT][FONT="Courier New"]'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Server\orbiter.exe', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\dinput.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\secur32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\user32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\winmm.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.6028_x-ww_61e65202\comctl32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\shlwapi.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\shell32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e6967989\msvcp80.dll', Symbols loaded.
'orbiter.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e6967989\msvcr80.dll', Symbols loaded.
'orbiter.exe': Loaded 'C:\WINDOWS\system32\imm32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\uxtheme.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\hid.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\setupapi.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\wintrust.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\crypt32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\msasn1.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\imagehlp.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\msctf.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\msctfime.ime', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\ole32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\BtMmHook.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\WINDOWS\system32\oleaut32.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Startup\AtlantisConfig.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Startup\AtmConfig.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Startup\DGConfigurator.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\WINDOWS\system32\psapi.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Sun.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Vsop87.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Mercury.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Venus.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Venus\atmosphere\VenusAtm2006.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Earth.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Earth\atmosphere\EarthAtmJ71G.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Moon.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Mars.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Mars\atmosphere\MarsAtm2006.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Phobos.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Deimos.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Jupiter.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Galsat.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Io.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Europa.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Ganymede.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Callisto.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Saturn.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Satsat.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Mimas.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Enceladus.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Tethys.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Dione.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Rhea.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Titan.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Iapetus.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Uranus.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Miranda.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Ariel.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Umbriel.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Titania.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Oberon.dll', Cannot find or open the PDB file
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\Celbody\Neptune.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\Games\Orbiter\Modules\DeltaGliderIV.dll', Binary was not built with debug information.
'orbiter.exe': Loaded 'C:\WINDOWS\system32\version.dll', Symbols loaded (source information stripped).
'orbiter.exe': Loaded 'C:\WINDOWS\system32\apphelp.dll', Symbols loaded (source information stripped).
The thread 'Win32 Thread' (0x25c) has exited with code 0 (0x0).
Unhandled exception at 0x00450f59 in orbiter.exe: 0xC0000005: Access violation reading location 0x00000258.
[/FONT][/INDENT]
And the stackframe of the offendind thread is:
Code:
[INDENT][FONT="Courier New"]Unflagged		2116	0	Worker Thread	Win32 Thread	_KiFastSystemCallRet@0	Normal
 	 	 	 	 	 	ntdll.dll!_KiFastSystemCallRet@0() 	 
 	 	 	 	 	 	ntdll.dll!_ZwRequestWaitReplyPort@12()  + 0xc bytes	 
 	 	 	 	 	 	ntdll.dll!_CsrClientCallServer@16()  + 0x57 bytes	 
 	 	 	 	 	 	kernel32.dll!_ReadConsoleInternal@32()  + 0x1c8 bytes	 
 	 	 	 	 	 	kernel32.dll!_ReadConsoleA@20()  + 0x3b bytes	 
 	 	 	 	 	 	orbiter.exe!00417504() 	 
 	 	 	 	 	 	[Frames below may be incorrect and/or missing, no symbols loaded for orbiter.exe]	 
 	 	 	 	 	 	ntdll.dll!_LdrpCallInitRoutine@16()  + 0x14 bytes	 
 	 	 	 	 	 	ntdll.dll!__LdrpInitialize@12()  + 0x10e bytes	 
 	 	 	 	 	 	ntdll.dll!_ZwTestAlert@0()  + 0xc bytes	 
 	 	 	 	 	 	ntdll.dll!_NtContinue@8()  + 0xc bytes	 
 	 	 	 	 	 	ntdll.dll!_KiUserApcDispatcher@20()  + 0xf bytes	 

Unflagged	>	3640	0	Main Thread	Main Thread	00450f59	Normal
[/FONT][/INDENT]
 
Last edited by a moderator:

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
The vessels or their scenarios aren't causing the problem, but the lack of instructions set in the processor along with D3D9Client which uses these instructions.

Error loading module Modules\Plugin\D3D9Client.dll (code -1073741795)
The error code -1073741795 = 0xC000001D means Invalid Opcode, and it's what is causing the crash.

D3D9Client uses SSE3 or even SSSE3 instructions set, which isn't available in your Athlon XP processor.

Try launching these scenarios using Orbiter with inline graphics.
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
Thank you very much. I'm going back to inline client.

It would help a lot if D3D9Client stated that on the home page (i'll file a bug there), as one would expect that D3D9Client would works on the same machine that Orbiter 2010 P1 does.
 

kuddel

Donator
Donator
Joined
Apr 1, 2008
Messages
2,064
Reaction score
507
Points
113
Thank you very much. I'm going back to inline client.

It would help a lot if D3D9Client stated that on the home page (i'll file a bug there), as one would expect that D3D9Client would works on the same machine that Orbiter 2010 P1 does.
Hello Lisias,


  1. Thanks for the hint. I wasn't aware D3D9Client needs SSE3.
  2. Your're right, we'll put a notice on the documentations.
  3. I've attached a ZIP containing modules build with different compiler-settings (to be placed in the .\Modules\Plugin\ folder):
    D3D9Client-noSSE.dll - with no SSE extensions
    D3D9Client-SSE.dll - with SSE(1) extensions
    D3D9Client-SSE2.dll - with SSE2 extensions
    I have no idea of the performance impact; but since couldn't run it at all, that might not be a problem for you ;)
    You might try one of these.
    Note: Make sure you select the right one in the modules tab (see image)!
/Kuddel
 

Attachments

  • Orbiter Server Launchpad.png
    Orbiter Server Launchpad.png
    87.4 KB · Views: 18
Last edited:

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
I've attached a ZIP containing modules build with different compiler-settings
AFAIR, some external dependency (one of linked libraries) is using SSE(2?) instructions set, so recompiling the module's code alone without use of these instructions, but without recompiling external dependencies won't get rid of all of them (I can search for the post stating it in the D3D9Development thread some time later). However it may postpone the "invalid opcode" exception to some later time, or some specific event, and not already on loading of the scenario.
 

kuddel

Donator
Donator
Joined
Apr 1, 2008
Messages
2,064
Reaction score
507
Points
113
Hi orb,
thanks for the info. I really would like to know what exactly happens here...
The above ZIP was more like a "test-balloon" to see if it helps Lisias.

Can I somehow find out what SSE-Instruction set is needed? Some sort of "dependency-walker" like application maybe? It would help us to state what is really needed (SSE, SSE2, SSE3, SSE4.1, ...)

Thanks in advance,
Kuddel

------ addendum ----
I think I found the start of that discussion in the D3D9Development thread you've mentioned:
http://www.orbiter-forum.com/showthread.php?p=352830&postcount=1380
through
http://www.orbiter-forum.com/showthread.php?p=376926&postcount=1464
 
Last edited:

jarmonik

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 28, 2008
Messages
2,666
Reaction score
795
Points
128
The SSE2 dependency comes from XNA math library (e.g. XMVector3TransformCoord()). There should be no dependencies beyond SSE2 as far as I can tell. Of course, it would be possible to replace the XNA math with regular DirectX math.
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
New DLLs with error while loading

Hello Lisias,


  1. I've attached a ZIP containing modules build with different compiler-settings (to be placed in the .\Modules\Plugin\ folder):
    D3D9Client-noSSE.dll - with no SSE extensions
    D3D9Client-SSE.dll - with SSE(1) extensions
    D3D9Client-SSE2.dll - with SSE2 extensions
    I have no idea of the performance impact; but since couldn't run it at all, that might not be a problem for you ;)
    You might try one of these.
    Note: Make sure you select the right one in the modules tab (see image)!
/Kuddel

Thank you very much for the DLLs. But unfortunately I got stuck on some dependency while DLL loading (see image). The text is in PT_BR, and says something like "Wasn't possible to find the procedure entry point ?GerSurfaceElevation@VESSEL@@QBENXZ" the the Dynamic Link Library Orbiter.exe"

The Orbiter installation is a plain vanilla one (the minimal set available for downloading), nothing else was added.

( Sorry being late - RealLife(tm) is a game that sometimes became incompatible with Orbiter! =P )
 

Attachments

  • Screen Shot 2015-07-03 at 19.16.17.png
    Screen Shot 2015-07-03 at 19.16.17.png
    15.8 KB · Views: 4

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
The SSE2 dependency comes from XNA math library (e.g. XMVector3TransformCoord()). There should be no dependencies beyond SSE2 as far as I can tell. Of course, it would be possible to replace the XNA math with regular DirectX math.

I also detected that the XR Vessel Series from Altea Aerospace also crash with this same problem (illegal instruction exception) (all of them XR1, 2 and 5). Perhaps the same problem?

The Athlon XP processor has support for a dead end technology called 3DNow!, and if I understood correctly, there's some kind of support on XNA for 3DNow!.

But moving to DirectXMath sounds better to me - let DirectX handle this mess. :)
 

jarmonik

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 28, 2008
Messages
2,666
Reaction score
795
Points
128
But moving to DirectXMath sounds better to me - let DirectX handle this mess. :)

The D3D9Client would still require a graphics card that's published in 2005 or later (i.e. DirectX 9.0c). How many Athlon XP systems would have a graphics card that would qualify ?
 

Lisias

Space Traveller Wanna-be
Joined
May 31, 2015
Messages
346
Reaction score
3
Points
18
Website
www.youtube.com
The D3D9Client would still require a graphics card that's published in 2005 or later (i.e. DirectX 9.0c). How many Athlon XP systems would have a graphics card that would qualify ?

I'm currently using an ATI Radeon 3850 HD on AGP bus. It appears to me that this card is not that rare, it sold very well.

But frankly, why bother? Let D3D9 handle it and don't think about it again - unless there's a reason to avoid D3D9 on the code. This makes sense on XR1, 2 and 5 - they are vessels, and since Orbiter_NG is expected to run on videoless appliances, I agree that moving out from XNA can be a bad idea for Altea.

But we are talking about a D3D9 rendering engine! I think it is wiser to use D3D9 libraries to do the job where is possible, instead on relying on yet another library to replicate a D3D9 already provided functionality.

Just my 2 cents, anyway.
 
Top