Guide to getting Orbiter working on Linux

philae

New member
Joined
Nov 14, 2012
Messages
3
Reaction score
0
Points
0
After the mearest expression of interest, I've written a short HOW-TO get Orbiter working on Linux :)

http://devio.us/~dv/linux-orbiter.html

It's been over a decade since I've been a Linux newbie, making it difficult to know what people find easy or difficult. Any comments or suggestions on how to improve it are welcome.
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
My only suggestion(s) for now is that the title of the how-to should be changed from "Orbiter Space Flight Simulator on GNU/Linux HOW-TO" to "Orbiter Space Flight Simulator on Debian based GNU/Linux HOW-TO". Not everybody uses Ubuntu or its variations or another Debian Linux, which would use apt for managing packages. What about Red Hat based, Slackware based, or other (for example Gentoo :p) distributions?

And additionally about executing Orbiter, instead of using "autojump" or previously saved command in the history, you can create a menu entry (.desktop file) which will execute the command contained in it (like a shortcut). You can even make your Linux execute orbiter.exe without need for typing "wine" (or "wine64") before the command, by using binfmt_misc module of the kernel, and then you only set the executable flag for orbiter.exe and just click on it in your file manager (it's more generic, as it can be used for any other Windows executable file, and not only for Orbiter).
 

philae

New member
Joined
Nov 14, 2012
Messages
3
Reaction score
0
Points
0
RHEL is mostly on corporate desktops isn't it? You shouldn't be playing Orbiter on there. Fedora is just highly unstable development version of RHEL. Slackware, Gentoo and Arch, etc, users are expected to know how to install Wine on their own :p

I will link to the Wine download page which has instructions for more distributions just in case.

I like to do as little as possible in graphical apps these days. They just change too quickly. Unity and GNOME 3 don't even have desktop icons any more (and neither do many other window managers). Bash on the other is unlikely to ever change so it's worth learning and using.
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
Unity and GNOME 3 don't even have desktop icons any more (and neither do many other window managers). Bash on the other is unlikely to ever change so it's worth learning and using.
But .desktop files are still used in menus and quick launch bars in most window managers, and not only on the desktop, and it was like that since at least 2000, so it isn't changing that quickly, and in bash you can create a script instead of using its history or autojump. (I, for example, use Midnight Commander and just press enter on the highlighted orbiter.exe to launch it. :p) And if you prefer to work in console, because you don't like X at all, you can create a script that will execute xinit specially for the wine/Orbiter.

I still think the title of the guide should be changed. Linux isn't Ubuntu (but it's the other way - Ubuntu is a Debian based Linux), so it's either a guide for Ubuntu / Debian based distributions or for Linux in general.
 

Enjo

Mostly harmless
Addon Developer
Tutorial Publisher
Donator
Joined
Nov 25, 2007
Messages
1,665
Reaction score
13
Points
38
Location
Germany
Website
www.enderspace.de
Preferred Pronouns
Can't you smell my T levels?
Very nice guide.
I have one question to you - have you managed to get the MFD input boxes to work (like select target)?
 
Last edited:

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
I have one question to you - have you managed to get the MFD input boxes to work (like select target)?
They work just fine for me. :shrug: What is the problem with it in your case?
 

Enjo

Mostly harmless
Addon Developer
Tutorial Publisher
Donator
Joined
Nov 25, 2007
Messages
1,665
Reaction score
13
Points
38
Location
Germany
Website
www.enderspace.de
Preferred Pronouns
Can't you smell my T levels?
They just don't display, although react on keyboard entries properly. What versions do you use? I'll give them a try.
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
What versions do you use?
Orbiter 121103 (w/ in-line graphics - I haven't tested graphics clients) / Wine 1.5.18 (but they worked in earlier wine too).
 

Enjo

Mostly harmless
Addon Developer
Tutorial Publisher
Donator
Joined
Nov 25, 2007
Messages
1,665
Reaction score
13
Points
38
Location
Germany
Website
www.enderspace.de
Preferred Pronouns
Can't you smell my T levels?
Alright. For inline it works, but the framerate is so disappointing that I have to use DX9. In the DX9 the boxes don't appear. This means that it's rather a question to Jarmonik.
 

n122vu

Addon Developer
Addon Developer
Donator
Joined
Nov 1, 2007
Messages
3,196
Reaction score
51
Points
73
Location
KDCY
RHEL is mostly on corporate desktops isn't it? You shouldn't be playing Orbiter on there. Fedora is just highly unstable development version of RHEL. Slackware, Gentoo and Arch, etc, users are expected to know how to install Wine on their own :p

FWIW, Fedora is the community-supported and developed 'consumer' desktop version of Red Hat, so to speak. centOS is also community-driven, and based on Red Hat, but is an Enteprise operating system. Both are RPM-based, as are OpenSUSE (via YaST) and Mandriva.

Not that I represent the majority of Linux users, but I currently use UbuntuStudio on my main personal laptop, and centOS 5 on a backup laptop. Guess my point is that providing RPM-based instructions might not be a completely fruitless effort

As far as Orbiter on corporate desktops, well, I won't incriminate myself here, but it does happen... ;)
 

Thunder Chicken

Fine Threads since 2008
Donator
Joined
Mar 22, 2008
Messages
4,367
Reaction score
3,302
Points
138
Location
Massachusetts
A bit of a necropost, but I think this is the appropriate place to post.

I went through the procedure described in http://devio.us/~dv/linux-orbiter.html, only difference was using D3D9 R12 vs R7. It is a clean install of Orbiter 100830 under Wine 1.4.1 on Linux Mint 16 Petra.

Running wine Orbiter_ng.exe, selecting the D3D9 module and applying the other settings, I get an error popup "CKBlit.fx" and a CTD.

I get the following output to the terminal:

Code:
fixme:d3d:check_fbo_compat Format WINED3DFMT_B8G8R8A8_UNORM with rendertarget flag is not supported as FBO color attachment, and no fallback specified.
fixme:d3d:check_fbo_compat Format WINED3DFMT_B8G8R8X8_UNORM with rendertarget flag is not supported as FBO color attachment, and no fallback specified.
fixme:win:EnumDisplayDevicesW ((null),0,0x9fed70,0x00000000), stub!
fixme:d3d:check_fbo_compat Format WINED3DFMT_B8G8R8A8_UNORM with rendertarget flag is not supported as FBO color attachment, and no fallback specified.
fixme:d3d:check_fbo_compat Format WINED3DFMT_B8G8R8X8_UNORM with rendertarget flag is not supported as FBO color attachment, and no fallback specified.
fixme:win:EnumDisplayDevicesW ((null),0,0x9fed10,0x00000000), stub!
fixme:d3d:check_fbo_compat Format WINED3DFMT_B8G8R8A8_UNORM with rendertarget flag is not supported as FBO color attachment, and no fallback specified.
fixme:d3d:check_fbo_compat Format WINED3DFMT_B8G8R8X8_UNORM with rendertarget flag is not supported as FBO color attachment, and no fallback specified.
fixme:win:EnumDisplayDevicesW ((null),0,0x9fe748,0x00000000), stub!
fixme:d3dcompiler:D3DCompile data 0x21db88, data_size 8409, filename "Modules/D3D9Client/CKBlit.fx", defines (nil), include 0x9fe79c, entrypoint (null),
target "__fx_2_0__", sflags 0, eflags 0, shader 0x21d3c0, error_messages 0x9fe9b0 stub!

This is the Orbiter.log:

Code:
**** Orbiter.log
Build Aug 30 2010 [v.100830]
Timer precision: 8.38095e-007 sec
Found 0 joystick(s)
Module AtmConfig.dll ......... [Build 100830, API 100830]
Module DGConfigurator.dll .... [Build 100830, API 100830]
Module AtlantisConfig.dll .... [Build 100830, API 100830]
Module D3D9Client.dll ........ [Build 130712, API 100830]

**** Creating simulation session
D3D9Client: [DirectX 9 Initialized]
D3D9Client: Sytem has XNA math support
.\D3D9Frame.cpp Line:322 Error:-2005530518 pD3D->CheckDeviceFormat(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, D3DFMT_X8R8G8B8, D3DUSAGE_AUTOGENMIPMAP, D3DRTYPE_TEXTURE, D3DFMT_DXT5)
.\D3D9Frame.cpp Line:323 Error:-2005530518 pD3D->CheckDeviceFormat(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, D3DFMT_X8R8G8B8, D3DUSAGE_AUTOGENMIPMAP, D3DRTYPE_TEXTURE, D3DFMT_DXT3)
.\D3D9Frame.cpp Line:324 Error:-2005530518 pD3D->CheckDeviceFormat(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, D3DFMT_X8R8G8B8, D3DUSAGE_AUTOGENMIPMAP, D3DRTYPE_TEXTURE, D3DFMT_DXT1)
D3D9Client:WARNING: [No shadow mapping support]
.\D3D9Frame.cpp Line:443 Error:-2005530518 pD3D->CheckDeviceType(Adapter, D3DDEVTYPE_HAL, D3DFMT_X8R8G8B8, D3DFMT_X8R8G8B8, false)
D3D9Client: [3DDevice Initialized]
.\D3D9Surface.cpp Line:1793 Error:-2005530516 D3DXCreateEffectFromFileA(pDev, name, 0, 0, 0, 0, &FX, &errors)
Effect Error:
 
Last edited:

AssemblyLanguage

Donator
Donator
Joined
Jun 10, 2012
Messages
112
Reaction score
1
Points
0
Inline client frame rate

I have an old XP machine that runs the Orbiter inline client with a 8-12 frame rate. The CPU doesn't support the D3D9 client.

I installed Lubuntu and Wine/Orbiter quickly. Thanks Philae.

I spent hours with the Openchrome driver trying many options to get Xserver running with h/w acceleration. The solution was to upgrade to Lubuntu 14-04. I think the Xlog tells me I have acceleration but the frame rate is 1 fps as opposed to 8-12 fps under XP.

Suggestions? It's OK to tell me to stop beating a dead horse.
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
Post "wine.log" after running Orbiter with this command (e.g. from terminal window), from Orbiter's directory:
Code:
WINEDEBUG=+wgl wine ./orbiter.exe &> wine.log
 

AssemblyLanguage

Donator
Donator
Joined
Jun 10, 2012
Messages
112
Reaction score
1
Points
0
Thanks Orb.

Wine.log (abbreviated):

Code:
fixme:ddraw:DirectDrawEnumerateExA flags 0x00000006 not handled
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaef3c8,0x00000000), stub!
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaeec28,0x00000000), stub!
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaeec28,0x00000000), stub!
fixme:ddraw:ddraw7_Initialize Ignoring guid {aeb2cdd4-6e41-43ea-941c-8361cc760781}.
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaee788,0x00000000), stub!
fixme:ddraw:ddraw7_Initialize Ignoring guid {aeb2cdd4-6e41-43ea-941c-8361cc760781}.
fixme:ddraw:d3d_vertex_buffer7_Optimize iface 0x1090478, device 0x104e9c0, flags 0 stub!
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
.
.
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
.
.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
.
.
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
.
.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
Is there a "GL renderer:" line in the log?
 

AssemblyLanguage

Donator
Donator
Joined
Jun 10, 2012
Messages
112
Reaction score
1
Points
0
Sorry for the previous wine.log post. I paid more attention to the Orbiter video settings. Here is the log for video setting: "Wine D3D7 RGB (Full Screen)

Code:
ixme:ddraw:DirectDrawEnumerateExA flags 0x00000006 not handled
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaef3c8,0x00000000), stub!
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaeec28,0x00000000), stub!
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaeec28,0x00000000), stub!
fixme:ddraw:ddraw7_Initialize Ignoring guid {aeb2cdd4-6e41-43ea-941c-8361cc760781}.
fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)").
fixme:win:EnumDisplayDevicesW ((null),0,0xaee788,0x00000000), stub!
fixme:x11drv:X11DRV_desktop_SetCurrentMode Cannot change screen BPP from 32 to 16
fixme:ddraw:ddraw_surface7_Flip Ignoring flags 0x1.
fixme:ddraw:d3d_vertex_buffer7_Optimize iface 0x21ff90, device 0x21fa78, flags 0 stub!
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
.
.
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
.
.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
.
.
fixme:d3d_surface:surface_convert_format Cannot find a conversion function from format WINED3DFMT_DXT5 to WINED3DFMT_B8G8R8A8_UNORM.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
.
.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:ddraw:ddraw7_FlipToGDISurface iface 0x1e6760 stub!
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
.
.
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
Ah there is "Gallium 0.4 on llvmpipe (LLVM 3.4, 128 bits)" renderer. I didn't notice it in the earlier log. That is a software renderer.

Anyway, by searching a little I found that OpenChrome driver doesn't support hardware 3D acceleration with OpenGL / DRI but only with XvMC, and VIA / Unichrome drivers which could do DRI are either unstable or have outdated support for OpenGL, too.
 
Top