A downstream Linux fork of d2x-xl

All other topics around Descent and D2X-XL

Moderators: Frustikus, simX, Aus-RED-5

steel01
Posts: 89
Joined: Mon Jun 02, 2014 11:44 am

Re: A downstream Linux fork of d2x-xl

Postby steel01 » Tue Jul 22, 2014 7:38 pm

The cmake stuff is supposed to copy all that around. It's all set in that .cmake file in the packaging directory. So, what did the last run do? Complete with no error, but no .dmg either?

I'll commit the last fix in a couple.

Steel01
darklord42
Posts: 254
Joined: Sat Nov 17, 2007 3:01 am
Contact:

Re: A downstream Linux fork of d2x-xl

Postby darklord42 » Tue Jul 22, 2014 7:50 pm

It just created the d2x-xl.app Contents and Resources directories and put the d2.icns in it. There is no .dmg file
Macbook Pro 6,2
Mac OS. 10.9.3
2.8 GHz Intel i7
8 GB RAM
GeForce GT 340M 512mb/Intel HD Graphics
Intel HD Audio
steel01
Posts: 89
Joined: Mon Jun 02, 2014 11:44 am

Re: A downstream Linux fork of d2x-xl

Postby steel01 » Tue Jul 22, 2014 8:03 pm

Found another difference between wxlaunchers and my cmakelists. Try it one more time.

Steel01
darklord42
Posts: 254
Joined: Sat Nov 17, 2007 3:01 am
Contact:

Re: A downstream Linux fork of d2x-xl

Postby darklord42 » Tue Jul 22, 2014 8:17 pm

great, that turned the executable into another app bundle called d2x-xl_1.17.61.app which includes the generated info.plist.
Missing the frameworks folder, but we expected that

the icon however went into our first d2x-xl.app though :\

Also the executable in question is not working, but lets focus on one thing at a time. :)
Macbook Pro 6,2
Mac OS. 10.9.3
2.8 GHz Intel i7
8 GB RAM
GeForce GT 340M 512mb/Intel HD Graphics
Intel HD Audio
steel01
Posts: 89
Joined: Mon Jun 02, 2014 11:44 am

Re: A downstream Linux fork of d2x-xl

Postby steel01 » Tue Jul 22, 2014 8:28 pm

Okay, so last commit should get it all in the same directory.

So, how does the generated stuff look? You mentioned some of the info fields. Do they look good or do they need updated?

Steel01
darklord42
Posts: 254
Joined: Sat Nov 17, 2007 3:01 am
Contact:

Re: A downstream Linux fork of d2x-xl

Postby darklord42 » Wed Jul 23, 2014 12:59 am

Somethings would be nice to get in there here is the generated file

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   <key>CFBundleDevelopmentRegion</key>
   <string>English</string>
   <key>CFBundleExecutable</key>
   <string>d2x-xl_1.17.61</string>
   <key>CFBundleGetInfoString</key>
   <string></string>
   <key>CFBundleIconFile</key>
   <string>d2.icns</string>
   <key>CFBundleIdentifier</key>
   <string></string>
   <key>CFBundleInfoDictionaryVersion</key>
   <string>6.0</string>
   <key>CFBundleLongVersionString</key>
   <string></string>
   <key>CFBundleName</key>
   <string></string>
   <key>CFBundlePackageType</key>
   <string>APPL</string>
   <key>CFBundleShortVersionString</key>
   <string>1.17.61</string>
   <key>CFBundleSignature</key>
   <string>????</string>
   <key>CFBundleVersion</key>
   <string></string>
   <key>CSResourcesFileMapped</key>
   <true/>
   <key>LSRequiresCarbon</key>
   <true/>
   <key>NSHumanReadableCopyright</key>
   <string>Copyright d2x-xl authors</string>
</dict>
</plist>


And the one in src

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   <key>CFBundleDevelopmentRegion</key>
   <string>English</string>
   <key>CFBundleDocumentTypes</key>
   <array>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>HAM</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Game Data</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>HOG</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Archive File</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>MN2</string>
            <string>MSN</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Mission File</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>PIG</string>
            <string>POG</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Texture Data</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>PLR</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Player File</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>DEM</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Demo File</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>MVL</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Movie Archive</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
      <dict>
         <key>CFBundleTypeExtensions</key>
         <array>
            <string>SG0</string>
            <string>SG1</string>
            <string>SG2</string>
            <string>SG3</string>
            <string>SG4</string>
            <string>SG5</string>
            <string>SG6</string>
            <string>SG7</string>
            <string>SG8</string>
            <string>SG9</string>
         </array>
         <key>CFBundleTypeIconFile</key>
         <string>d2doc</string>
         <key>CFBundleTypeName</key>
         <string>Descent (D2X-XL) Save Game File</string>
         <key>CFBundleTypeRole</key>
         <string>None</string>
         <key>LSTypeIsPackage</key>
         <false/>
         <key>NSPersistentStoreTypeKey</key>
         <string>Binary</string>
      </dict>
   </array>
   <key>CFBundleExecutable</key>
   <string>d2x-xl</string>
   <key>CFBundleIconFile</key>
   <string>d2</string>
   <key>CFBundleIdentifier</key>
   <string>de.descent2.d2x-xl</string>
   <key>CFBundleInfoDictionaryVersion</key>
   <string>6.0</string>
   <key>CFBundlePackageType</key>
   <string>APPL</string>
   <key>CFBundleShortVersionString</key>
   <string>1.17.57</string>
   <key>CFBundleSignature</key>
   <string>D2XL</string>
   <key>CFBundleVersion</key>
   <string>1A001A</string>
   <key>LSApplicationCategoryType</key>
   <string>public.app-category.action-games</string>
   <key>NSMainNibFile</key>
   <string>MainMenu</string>
   <key>NSPrincipalClass</key>
   <string>NSApplication</string>
</dict>
</plist>
Macbook Pro 6,2
Mac OS. 10.9.3
2.8 GHz Intel i7
8 GB RAM
GeForce GT 340M 512mb/Intel HD Graphics
Intel HD Audio
steel01
Posts: 89
Joined: Mon Jun 02, 2014 11:44 am

Re: A downstream Linux fork of d2x-xl

Postby steel01 » Tue Jun 30, 2015 11:23 pm

Has it really been almost a year since I was actively poking at this? Ouch.

Anyways, I've started working on some of this again. Finally got all the mingw stuff sorted out and compiling correctly. Don't have a Windows box to test on, so I have no idea how well that works. Haven't done much if anything further on OSX, though. It might not even compile anymore.

But I'm posting because of other stuff I'm working on. Namely porting to SDL2. There's two major reasons I'm trying this. 1: Haptic support (force feedback). D2X-XL doesn't have all the code for it anymore, but I found the missing files in a d2x repo on github. From the looks of it, it should be pretty straightforward to re-enabled haptic feedback with SDL2 driving it. (Yes, I spent a premium on an old FFB2 and I want to use it...) 2: Android support. This is much farther fetched, but with the Nvidia Shield devices supporting full OGL, it might not be too far fetched. Especially the console with a wireless keyboard/mouse or whatever joystick on an extension cable. The hardware support is all there.

Now, the code I linked is just what I threw together over the last couple days to get SDL2 running. I haven't gone back and ifdef'ed stuff to support 1.2 and 2.0 in one codebase yet. There's changes that are somewhat hackish and others that were made before I realized what all was going on. And unfortunately, I had to pull one feature: redbook audio from CD. SDL2 removed the CD functionality altogether. I don't know if there's a feasible replacement library for that or not. All that being said, I was just flying around D2:CS L1 with no problems at all (well, except for that blasted screen tearing issue I haven't found a way around yet, but that's my OS and drivers, not the program).

I'll post updates as I get further along.

Steel01
steel01
Posts: 89
Joined: Mon Jun 02, 2014 11:44 am

Re: A downstream Linux fork of d2x-xl

Postby steel01 » Fri Jul 03, 2015 9:19 pm

As of this commit, primary weapons cause haptic feedback. These are based on values from the old D2X code. Base lasers and the Vulcan cannon (only things available on my save for first test) feel right. Gain will need tweaking and the whole section of code re-factored, but hey, it's still basically proof of concept (and very hacked/hardcoded to joystick 0). I'm borrowing code from fs2_opens antipodes branch and it seems to slide in pretty nicely. I may end up pulling their entire file and tweaking XL to use that method.

Steel01
darklord42
Posts: 254
Joined: Sat Nov 17, 2007 3:01 am
Contact:

Re: A downstream Linux fork of d2x-xl

Postby darklord42 » Mon Jul 06, 2015 1:02 pm

Hey steel, I still wish you luck. It really helps with maintainability if the build script is the same as linux (with the few tweaks). So we don't end up again with a osx build that is very much out of date.
Macbook Pro 6,2
Mac OS. 10.9.3
2.8 GHz Intel i7
8 GB RAM
GeForce GT 340M 512mb/Intel HD Graphics
Intel HD Audio
steel01
Posts: 89
Joined: Mon Jun 02, 2014 11:44 am

Re: A downstream Linux fork of d2x-xl

Postby steel01 » Mon Jul 06, 2015 1:36 pm

Hey, you are still around, good. So, let's pick up where we left off. Run a build of my master branch and see what it gets you. Last build iirc built and packaged but didn't run presumably due to upstream problems since resolved. Maybe it'll run by now. The sdl2 branch doesn't have the externals to build yet, so don't bother there unless you want to set those up yourself.

Once osx works from cmake, I'll put together a patch to push upstream. I think the cmakelists is broke there right now due to added files not being added there.

Steel01

Return to “General Discussions”

Who is online

Users browsing this forum: No registered users and 1 guest