In a previous post I listed two bits of code we were looking for: a 64-bit clean port of libxplanemp (which XSB, Pilot’s Edge and X-Ivap use for multiplayer visualization) and a rewritten audio HAL for OS X, since the old one we use is based on technology from 1635.
Well, we don’t need libxplanemp anymore – if you look at github you’ll see we have a 64-bit branch, so that’s taken care of. In fact, the only thing we need is Mac audio.
When we have Mac audio, we can figure out how to run a beta program. If enough time goes by eventually I can code it myself, but code for VATSIM is something I do in my spare time when not working on X-Plane itself and chasing a two-year-old around the house. (His idea of a fun time does involve feeding plastic food to a stuffed dog but does not involve sitting quietly and watching me code. Who knew? 🙂
So if you are the kind of person who knows how to write code for OS X and can hack out a new implementation of the audio interface, you have the power to get things moving in a big way.
When last I checked, VATSIM has a policy that developers need to be registered and sign an NDA to work on VATSIM code. I will not go off into a rant about this policy here*
But there are a few parts of XSB that are open source; if you are a programmer and would like to work on moving XSB (and other plugins) to 64-bit, you can work on these open source problems now, no need to sort out VATSIM stuff.
- Core Audio Support. XSB’s audio comes from implementations of an abstract audio class; fortunately this class is open source. You can download the current audio code here. If you know how to write Core Audio code for OS X and can write a Core Audio back-end for this abstraction, this would be huge in advancing the 64-bit port. (The current SoundManager code, besides being quite embarrassing for everyone involved, is not portable to 64 bits.)
- 64-bit safe libxplaneMP. XSB’s CSL multiplayer code comes from libxplanemp, which Wade has posted to github. If you can port this code to 64-bits, that’s another win in moving the plugin over.
The Problem of Open Source Management
The main problem at hand is that Wade and I are out of time. This unfortunately means that not do we not have time to code, but we also don’t have time to manage other coders. Invariably we will be contacted by more volunteers than we need, some of whom will provide no useful development work.
My hope is that by posting the two tasks above, tasks that can be entirely worked on without XSB itself, without any NDAs, and without repo access, we can let motivated developers get started on real work without us. This way, Wade and I don’t have to be management bottlenecks.
* If you are part of the VATSIM administration and would like to help unjam software development, contact me, and I can tell you what ‘opening’ of the software policy would be directly useful to projects like XSB; we don’t need complete GPL-style communism to get more work done. 😉
X-Plane 10.20 will support both 32 and 64-bit plugins. When will XSquawkBox be available in a 64-bit format?
I don’t know.
XSquawkBox is volunteer freeware software written by two individuals (Wade and myself) who are both pretty much entirely out of time. I simply don’t know when we will have time to update the plugin.
Please do not poke us with either: “please update the plugin – it is really important to me” or “when will it be done”. The first doesn’t change the equation of our lives (we’re not not porting the plugin because we don’t care, we’re not porting it because we do not have time), and the answer to the second is not known.
I will do two things:
- I will keep the blog updated if/when we learn more.
- I will try to post to this blog things that can be done by other volunteers to speed up the process. Unfortunately the skills we need now are very specialized, but it may be that someone out there who has more time and wants to see XSB move forward has that right set of skills.
I am sorry that this is not ideal; if you are an XSquawkBox user then you know that just because you have not paid money for XSquawkBox does not mean you have not invested a lot of time into participating in VATSIM. I do hope we will be able to get the ball rolling sooner, either with help from others or a rare glimpse of free time.